Skip to content

Instantly share code, notes, and snippets.

@JoelJaeschke
Created May 3, 2024 21:06
Show Gist options
  • Save JoelJaeschke/5951314b62e112b0ccbe98fe75b8b997 to your computer and use it in GitHub Desktop.
Save JoelJaeschke/5951314b62e112b0ccbe98fe75b8b997 to your computer and use it in GitHub Desktop.
This gist presents some experiments how one could deal with the Artificial Information issue in https://github.com/observingClouds/xbitinfo
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "9c5c435c-91d2-436b-9a53-d0c5c679a1f5",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/joel/.micromamba/envs/xbitinfo/lib/python3.12/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
" from .autonotebook import tqdm as notebook_tqdm\n"
]
}
],
"source": [
"import xbitinfo as xb\n",
"import xarray as xr\n",
"import xskillscore as xs\n",
"import numpy as np\n",
"\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "faf4e5e6-cd79-49c4-a03b-a8ed80bc0418",
"metadata": {},
"outputs": [],
"source": [
"def quantize(data, bits, signed=False):\n",
" _bits = np.uint64(bits)\n",
" min_val = np.min(data).astype(np.float64)\n",
" max_val = np.max(data).astype(np.float64)\n",
" max_bit_val = np.float64(2**_bits - 1)\n",
" scale = max_bit_val / (max_val - min_val)\n",
" if signed:\n",
" zeropoint = -np.round(scale * min_val) - 2**(_bits - 1)\n",
" else:\n",
" zeropoint = -np.round(scale * min_val)\n",
"\n",
" target_dtype = np.dtype(f\"i{int(_bits / 8)}\") if signed else np.dtype(f\"u{int(_bits / 8)}\")\n",
" return np.round(scale * data + zeropoint).astype(target_dtype), scale, zeropoint\n",
"\n",
"def dequantize(quantized, scale, zeropoint, target_dtype=np.float64):\n",
" return ((quantized - zeropoint) / scale).astype(target_dtype)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "1857b056-ea01-4ad7-8731-131a1729db51",
"metadata": {},
"outputs": [],
"source": [
"def plot_mantissa_importances(bit_info, var, dim, bit_filter=\"m\"):\n",
" fig, ax = plt.subplots(1,1, figsize=(12, 6))\n",
" bit_type = [coord for coord in bit_info[var].coords if coord.startswith(\"bit\") and coord != \"dim\"][0]\n",
" var_importance = bit_info[var].where(bit_info[bit_type].str.startswith(bit_filter), drop=True)\n",
" var_importance.sel(dim=dim).plot(ax=ax, marker=\"o\")\n",
" plt.xticks(rotation=90)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "c4fb1b70-cd1c-495f-bc76-f1531ba0cdf3",
"metadata": {},
"outputs": [],
"source": [
"def clear_nth_bit(data, bit):\n",
" assert data.dtype.name.startswith(\"uint\") or data.dtype.name.startswith(\"int\"), \"Can only clear integer arrays\"\n",
" if isinstance(bit, int):\n",
" return np.bitwise_and(data, np.bitwise_not(data.dtype.type(2**(bit - 1))))\n",
" elif isinstance(bit, list):\n",
" _tmp = data.copy()\n",
" for _bit in bit:\n",
" _tmp = np.bitwise_and(_tmp, np.bitwise_not(data.dtype.type(2**(_bit - 1))))\n",
" return _tmp\n",
" else:\n",
" raise RuntimeError(\"Can only process int or list of ints for bits to clear\")"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "3fd6dfeb-ed25-4df9-bd21-f2bdaf71f7c4",
"metadata": {},
"outputs": [],
"source": [
"NBITS = 8"
]
},
{
"cell_type": "markdown",
"id": "41e073e0-ad45-4278-9d84-b77756708ae2",
"metadata": {},
"source": [
"### Load data\n",
"We use RASM data, as that is sample data included in the `xarray` demo datasets and actually provides `float64` values for its data instead of being the quantized version provided in many of the reanalysis samples."
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "4861d2f7-7c14-473a-96e2-e12f7c3917cb",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
"<defs>\n",
"<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
"<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"</symbol>\n",
"<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
"<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"</symbol>\n",
"</defs>\n",
"</svg>\n",
"<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
" *\n",
" */\n",
"\n",
":root {\n",
" --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
" --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
" --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
" --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
" --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
" --xr-background-color: var(--jp-layout-color0, white);\n",
" --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
" --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
"}\n",
"\n",
"html[theme=dark],\n",
"body[data-theme=dark],\n",
"body.vscode-dark {\n",
" --xr-font-color0: rgba(255, 255, 255, 1);\n",
" --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
" --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
" --xr-border-color: #1F1F1F;\n",
" --xr-disabled-color: #515151;\n",
" --xr-background-color: #111111;\n",
" --xr-background-color-row-even: #111111;\n",
" --xr-background-color-row-odd: #313131;\n",
"}\n",
"\n",
".xr-wrap {\n",
" display: block !important;\n",
" min-width: 300px;\n",
" max-width: 700px;\n",
"}\n",
"\n",
".xr-text-repr-fallback {\n",
" /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
" display: none;\n",
"}\n",
"\n",
".xr-header {\n",
" padding-top: 6px;\n",
" padding-bottom: 6px;\n",
" margin-bottom: 4px;\n",
" border-bottom: solid 1px var(--xr-border-color);\n",
"}\n",
"\n",
".xr-header > div,\n",
".xr-header > ul {\n",
" display: inline;\n",
" margin-top: 0;\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-obj-type,\n",
".xr-array-name {\n",
" margin-left: 2px;\n",
" margin-right: 10px;\n",
"}\n",
"\n",
".xr-obj-type {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-sections {\n",
" padding-left: 0 !important;\n",
" display: grid;\n",
" grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
"}\n",
"\n",
".xr-section-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-section-item input {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-item input + label {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label {\n",
" cursor: pointer;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label:hover {\n",
" color: var(--xr-font-color0);\n",
"}\n",
"\n",
".xr-section-summary {\n",
" grid-column: 1;\n",
" color: var(--xr-font-color2);\n",
" font-weight: 500;\n",
"}\n",
"\n",
".xr-section-summary > span {\n",
" display: inline-block;\n",
" padding-left: 0.5em;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-summary-in + label:before {\n",
" display: inline-block;\n",
" content: '►';\n",
" font-size: 11px;\n",
" width: 15px;\n",
" text-align: center;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label:before {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label:before {\n",
" content: '▼';\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label > span {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-summary,\n",
".xr-section-inline-details {\n",
" padding-top: 4px;\n",
" padding-bottom: 4px;\n",
"}\n",
"\n",
".xr-section-inline-details {\n",
" grid-column: 2 / -1;\n",
"}\n",
"\n",
".xr-section-details {\n",
" display: none;\n",
" grid-column: 1 / -1;\n",
" margin-bottom: 5px;\n",
"}\n",
"\n",
".xr-section-summary-in:checked ~ .xr-section-details {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-array-wrap {\n",
" grid-column: 1 / -1;\n",
" display: grid;\n",
" grid-template-columns: 20px auto;\n",
"}\n",
"\n",
".xr-array-wrap > label {\n",
" grid-column: 1;\n",
" vertical-align: top;\n",
"}\n",
"\n",
".xr-preview {\n",
" color: var(--xr-font-color3);\n",
"}\n",
"\n",
".xr-array-preview,\n",
".xr-array-data {\n",
" padding: 0 5px !important;\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-array-data,\n",
".xr-array-in:checked ~ .xr-array-preview {\n",
" display: none;\n",
"}\n",
"\n",
".xr-array-in:checked ~ .xr-array-data,\n",
".xr-array-preview {\n",
" display: inline-block;\n",
"}\n",
"\n",
".xr-dim-list {\n",
" display: inline-block !important;\n",
" list-style: none;\n",
" padding: 0 !important;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list li {\n",
" display: inline-block;\n",
" padding: 0;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list:before {\n",
" content: '(';\n",
"}\n",
"\n",
".xr-dim-list:after {\n",
" content: ')';\n",
"}\n",
"\n",
".xr-dim-list li:not(:last-child):after {\n",
" content: ',';\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-has-index {\n",
" font-weight: bold;\n",
"}\n",
"\n",
".xr-var-list,\n",
".xr-var-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-var-item > div,\n",
".xr-var-item label,\n",
".xr-var-item > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-even);\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-var-item > .xr-var-name:hover span {\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-var-list > li:nth-child(odd) > div,\n",
".xr-var-list > li:nth-child(odd) > label,\n",
".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-odd);\n",
"}\n",
"\n",
".xr-var-name {\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-var-dims {\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-var-dtype {\n",
" grid-column: 3;\n",
" text-align: right;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-preview {\n",
" grid-column: 4;\n",
"}\n",
"\n",
".xr-index-preview {\n",
" grid-column: 2 / 5;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-name,\n",
".xr-var-dims,\n",
".xr-var-dtype,\n",
".xr-preview,\n",
".xr-attrs dt {\n",
" white-space: nowrap;\n",
" overflow: hidden;\n",
" text-overflow: ellipsis;\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-var-name:hover,\n",
".xr-var-dims:hover,\n",
".xr-var-dtype:hover,\n",
".xr-attrs dt:hover {\n",
" overflow: visible;\n",
" width: auto;\n",
" z-index: 1;\n",
"}\n",
"\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" display: none;\n",
" background-color: var(--xr-background-color) !important;\n",
" padding-bottom: 5px !important;\n",
"}\n",
"\n",
".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
".xr-var-data-in:checked ~ .xr-var-data,\n",
".xr-index-data-in:checked ~ .xr-index-data {\n",
" display: block;\n",
"}\n",
"\n",
".xr-var-data > table {\n",
" float: right;\n",
"}\n",
"\n",
".xr-var-name span,\n",
".xr-var-data,\n",
".xr-index-name div,\n",
".xr-index-data,\n",
".xr-attrs {\n",
" padding-left: 25px !important;\n",
"}\n",
"\n",
".xr-attrs,\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" grid-column: 1 / -1;\n",
"}\n",
"\n",
"dl.xr-attrs {\n",
" padding: 0;\n",
" margin: 0;\n",
" display: grid;\n",
" grid-template-columns: 125px auto;\n",
"}\n",
"\n",
".xr-attrs dt,\n",
".xr-attrs dd {\n",
" padding: 0;\n",
" margin: 0;\n",
" float: left;\n",
" padding-right: 10px;\n",
" width: auto;\n",
"}\n",
"\n",
".xr-attrs dt {\n",
" font-weight: normal;\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-attrs dt:hover span {\n",
" display: inline-block;\n",
" background: var(--xr-background-color);\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-attrs dd {\n",
" grid-column: 2;\n",
" white-space: pre-wrap;\n",
" word-break: break-all;\n",
"}\n",
"\n",
".xr-icon-database,\n",
".xr-icon-file-text2,\n",
".xr-no-icon {\n",
" display: inline-block;\n",
" vertical-align: middle;\n",
" width: 1em;\n",
" height: 1.5em !important;\n",
" stroke-width: 0;\n",
" stroke: currentColor;\n",
" fill: currentColor;\n",
"}\n",
"</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 17MB\n",
"Dimensions: (time: 36, y: 205, x: 275)\n",
"Coordinates:\n",
" * time (time) object 288B 1980-09-16 12:00:00 ... 1983-08-17 00:00:00\n",
" xc (y, x) float64 451kB ...\n",
" yc (y, x) float64 451kB ...\n",
"Dimensions without coordinates: y, x\n",
"Data variables:\n",
" Tair (time, y, x) float64 16MB ...\n",
"Attributes:\n",
" title: /workspace/jhamman/processed/R1002RBRxaaa01a/l...\n",
" institution: U.W.\n",
" source: RACM R1002RBRxaaa01a\n",
" output_frequency: daily\n",
" output_mode: averaged\n",
" convention: CF-1.4\n",
" references: Based on the initial model of Liang et al., 19...\n",
" comment: Output from the Variable Infiltration Capacity...\n",
" nco_openmp_thread_number: 1\n",
" NCO: netCDF Operators version 4.7.9 (Homepage = htt...\n",
" history: Fri Aug 7 17:57:38 2020: ncatted -a bounds,,d...</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-cea7108a-0dbb-445c-b907-8d0a3a98762f' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-cea7108a-0dbb-445c-b907-8d0a3a98762f' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>time</span>: 36</li><li><span>y</span>: 205</li><li><span>x</span>: 275</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-165c6e41-7ec7-4be2-9464-f18a1d01c8ed' class='xr-section-summary-in' type='checkbox' checked><label for='section-165c6e41-7ec7-4be2-9464-f18a1d01c8ed' class='xr-section-summary' >Coordinates: <span>(3)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>time</span></div><div class='xr-var-dims'>(time)</div><div class='xr-var-dtype'>object</div><div class='xr-var-preview xr-preview'>1980-09-16 12:00:00 ... 1983-08-...</div><input id='attrs-3c47fb69-02c7-48c8-804f-e48f92d52984' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-3c47fb69-02c7-48c8-804f-e48f92d52984' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-d8ab7939-fbeb-420e-914e-b64b24ff20fc' class='xr-var-data-in' type='checkbox'><label for='data-d8ab7939-fbeb-420e-914e-b64b24ff20fc' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>time</dd><dt><span>type_preferred :</span></dt><dd>int</dd></dl></div><div class='xr-var-data'><pre>array([cftime.DatetimeNoLeap(1980, 9, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1980, 10, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1980, 11, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1980, 12, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 1, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 2, 15, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 3, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 4, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 5, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 6, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 7, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 8, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 9, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 10, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 11, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1981, 12, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 1, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 2, 15, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 3, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 4, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 5, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 6, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 7, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 8, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 9, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 10, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 11, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1982, 12, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1983, 1, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1983, 2, 15, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1983, 3, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1983, 4, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1983, 5, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1983, 6, 16, 12, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1983, 7, 17, 0, 0, 0, 0, has_year_zero=True),\n",
" cftime.DatetimeNoLeap(1983, 8, 17, 0, 0, 0, 0, has_year_zero=True)],\n",
" dtype=object)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>xc</span></div><div class='xr-var-dims'>(y, x)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>...</div><input id='attrs-25baa784-3fbf-4e26-abab-aa1c273627f2' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-25baa784-3fbf-4e26-abab-aa1c273627f2' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-1af8f177-53a3-4d10-ac78-91dbe043d8e5' class='xr-var-data-in' type='checkbox'><label for='data-1af8f177-53a3-4d10-ac78-91dbe043d8e5' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>longitude of grid cell center</dd><dt><span>units :</span></dt><dd>degrees_east</dd></dl></div><div class='xr-var-data'><pre>[56375 values with dtype=float64]</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>yc</span></div><div class='xr-var-dims'>(y, x)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>...</div><input id='attrs-13a81d17-991d-463a-862e-f6fe1da184c0' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-13a81d17-991d-463a-862e-f6fe1da184c0' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-89d05cfc-7c0f-447c-94c6-8e193ae13873' class='xr-var-data-in' type='checkbox'><label for='data-89d05cfc-7c0f-447c-94c6-8e193ae13873' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>long_name :</span></dt><dd>latitude of grid cell center</dd><dt><span>units :</span></dt><dd>degrees_north</dd></dl></div><div class='xr-var-data'><pre>[56375 values with dtype=float64]</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-2a2e71f4-77a3-4a39-b838-cabb1057c3cf' class='xr-section-summary-in' type='checkbox' checked><label for='section-2a2e71f4-77a3-4a39-b838-cabb1057c3cf' class='xr-section-summary' >Data variables: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>Tair</span></div><div class='xr-var-dims'>(time, y, x)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>...</div><input id='attrs-b027daae-4122-41a9-a26a-cd435b9f1c6e' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-b027daae-4122-41a9-a26a-cd435b9f1c6e' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-28ecf93c-7c98-4c69-b89e-e5a131b39edc' class='xr-var-data-in' type='checkbox'><label for='data-28ecf93c-7c98-4c69-b89e-e5a131b39edc' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>units :</span></dt><dd>C</dd><dt><span>long_name :</span></dt><dd>Surface air temperature</dd><dt><span>type_preferred :</span></dt><dd>double</dd><dt><span>time_rep :</span></dt><dd>instantaneous</dd></dl></div><div class='xr-var-data'><pre>[2029500 values with dtype=float64]</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-7bd59c79-4ba2-4a0e-bf0c-58b4feed1405' class='xr-section-summary-in' type='checkbox' ><label for='section-7bd59c79-4ba2-4a0e-bf0c-58b4feed1405' class='xr-section-summary' >Indexes: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>time</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-f0e8f7a8-7e26-44bb-8057-662bcb2cddcd' class='xr-index-data-in' type='checkbox'/><label for='index-f0e8f7a8-7e26-44bb-8057-662bcb2cddcd' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(CFTimeIndex([1980-09-16 12:00:00, 1980-10-17 00:00:00, 1980-11-16 12:00:00,\n",
" 1980-12-17 00:00:00, 1981-01-17 00:00:00, 1981-02-15 12:00:00,\n",
" 1981-03-17 00:00:00, 1981-04-16 12:00:00, 1981-05-17 00:00:00,\n",
" 1981-06-16 12:00:00, 1981-07-17 00:00:00, 1981-08-17 00:00:00,\n",
" 1981-09-16 12:00:00, 1981-10-17 00:00:00, 1981-11-16 12:00:00,\n",
" 1981-12-17 00:00:00, 1982-01-17 00:00:00, 1982-02-15 12:00:00,\n",
" 1982-03-17 00:00:00, 1982-04-16 12:00:00, 1982-05-17 00:00:00,\n",
" 1982-06-16 12:00:00, 1982-07-17 00:00:00, 1982-08-17 00:00:00,\n",
" 1982-09-16 12:00:00, 1982-10-17 00:00:00, 1982-11-16 12:00:00,\n",
" 1982-12-17 00:00:00, 1983-01-17 00:00:00, 1983-02-15 12:00:00,\n",
" 1983-03-17 00:00:00, 1983-04-16 12:00:00, 1983-05-17 00:00:00,\n",
" 1983-06-16 12:00:00, 1983-07-17 00:00:00, 1983-08-17 00:00:00],\n",
" dtype=&#x27;object&#x27;, length=36, calendar=&#x27;noleap&#x27;, freq=None))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-619f8abb-c7d0-4c78-b689-d514bcf34a5f' class='xr-section-summary-in' type='checkbox' ><label for='section-619f8abb-c7d0-4c78-b689-d514bcf34a5f' class='xr-section-summary' >Attributes: <span>(11)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'><dt><span>title :</span></dt><dd>/workspace/jhamman/processed/R1002RBRxaaa01a/lnd/temp/R1002RBRxaaa01a.vic.ha.1979-09-01.nc</dd><dt><span>institution :</span></dt><dd>U.W.</dd><dt><span>source :</span></dt><dd>RACM R1002RBRxaaa01a</dd><dt><span>output_frequency :</span></dt><dd>daily</dd><dt><span>output_mode :</span></dt><dd>averaged</dd><dt><span>convention :</span></dt><dd>CF-1.4</dd><dt><span>references :</span></dt><dd>Based on the initial model of Liang et al., 1994, JGR, 99, 14,415- 14,429.</dd><dt><span>comment :</span></dt><dd>Output from the Variable Infiltration Capacity (VIC) model.</dd><dt><span>nco_openmp_thread_number :</span></dt><dd>1</dd><dt><span>NCO :</span></dt><dd>netCDF Operators version 4.7.9 (Homepage = http://nco.sf.net, Code = http://github.com/nco/nco)</dd><dt><span>history :</span></dt><dd>Fri Aug 7 17:57:38 2020: ncatted -a bounds,,d,, rasm.nc\n",
"Tue Dec 27 14:15:22 2016: ncatted -a dimensions,,d,, rasm.nc rasm.nc\n",
"Tue Dec 27 13:38:40 2016: ncks -3 rasm.nc rasm.nc\n",
"history deleted for brevity</dd></dl></div></li></ul></div></div>"
],
"text/plain": [
"<xarray.Dataset> Size: 17MB\n",
"Dimensions: (time: 36, y: 205, x: 275)\n",
"Coordinates:\n",
" * time (time) object 288B 1980-09-16 12:00:00 ... 1983-08-17 00:00:00\n",
" xc (y, x) float64 451kB ...\n",
" yc (y, x) float64 451kB ...\n",
"Dimensions without coordinates: y, x\n",
"Data variables:\n",
" Tair (time, y, x) float64 16MB ...\n",
"Attributes:\n",
" title: /workspace/jhamman/processed/R1002RBRxaaa01a/l...\n",
" institution: U.W.\n",
" source: RACM R1002RBRxaaa01a\n",
" output_frequency: daily\n",
" output_mode: averaged\n",
" convention: CF-1.4\n",
" references: Based on the initial model of Liang et al., 19...\n",
" comment: Output from the Variable Infiltration Capacity...\n",
" nco_openmp_thread_number: 1\n",
" NCO: netCDF Operators version 4.7.9 (Homepage = htt...\n",
" history: Fri Aug 7 17:57:38 2020: ncatted -a bounds,,d..."
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Use RASM data as it comes in native float64 without quantization apparently\n",
"# Check whether this is really true\n",
"ds = xr.tutorial.open_dataset(\"rasm\")\n",
"ds"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "e9ea039e-0dc8-4664-844e-81b1e4ef77da",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Processing var: Tair for dim: y: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.25it/s]\n",
"Processing var: Tair for dim: x: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.69it/s]\n"
]
},
{
"data": {
"text/html": [
"<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
"<defs>\n",
"<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
"<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"</symbol>\n",
"<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
"<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"</symbol>\n",
"</defs>\n",
"</svg>\n",
"<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
" *\n",
" */\n",
"\n",
":root {\n",
" --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
" --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
" --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
" --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
" --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
" --xr-background-color: var(--jp-layout-color0, white);\n",
" --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
" --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
"}\n",
"\n",
"html[theme=dark],\n",
"body[data-theme=dark],\n",
"body.vscode-dark {\n",
" --xr-font-color0: rgba(255, 255, 255, 1);\n",
" --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
" --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
" --xr-border-color: #1F1F1F;\n",
" --xr-disabled-color: #515151;\n",
" --xr-background-color: #111111;\n",
" --xr-background-color-row-even: #111111;\n",
" --xr-background-color-row-odd: #313131;\n",
"}\n",
"\n",
".xr-wrap {\n",
" display: block !important;\n",
" min-width: 300px;\n",
" max-width: 700px;\n",
"}\n",
"\n",
".xr-text-repr-fallback {\n",
" /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
" display: none;\n",
"}\n",
"\n",
".xr-header {\n",
" padding-top: 6px;\n",
" padding-bottom: 6px;\n",
" margin-bottom: 4px;\n",
" border-bottom: solid 1px var(--xr-border-color);\n",
"}\n",
"\n",
".xr-header > div,\n",
".xr-header > ul {\n",
" display: inline;\n",
" margin-top: 0;\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-obj-type,\n",
".xr-array-name {\n",
" margin-left: 2px;\n",
" margin-right: 10px;\n",
"}\n",
"\n",
".xr-obj-type {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-sections {\n",
" padding-left: 0 !important;\n",
" display: grid;\n",
" grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
"}\n",
"\n",
".xr-section-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-section-item input {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-item input + label {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label {\n",
" cursor: pointer;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label:hover {\n",
" color: var(--xr-font-color0);\n",
"}\n",
"\n",
".xr-section-summary {\n",
" grid-column: 1;\n",
" color: var(--xr-font-color2);\n",
" font-weight: 500;\n",
"}\n",
"\n",
".xr-section-summary > span {\n",
" display: inline-block;\n",
" padding-left: 0.5em;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-summary-in + label:before {\n",
" display: inline-block;\n",
" content: '►';\n",
" font-size: 11px;\n",
" width: 15px;\n",
" text-align: center;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label:before {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label:before {\n",
" content: '▼';\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label > span {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-summary,\n",
".xr-section-inline-details {\n",
" padding-top: 4px;\n",
" padding-bottom: 4px;\n",
"}\n",
"\n",
".xr-section-inline-details {\n",
" grid-column: 2 / -1;\n",
"}\n",
"\n",
".xr-section-details {\n",
" display: none;\n",
" grid-column: 1 / -1;\n",
" margin-bottom: 5px;\n",
"}\n",
"\n",
".xr-section-summary-in:checked ~ .xr-section-details {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-array-wrap {\n",
" grid-column: 1 / -1;\n",
" display: grid;\n",
" grid-template-columns: 20px auto;\n",
"}\n",
"\n",
".xr-array-wrap > label {\n",
" grid-column: 1;\n",
" vertical-align: top;\n",
"}\n",
"\n",
".xr-preview {\n",
" color: var(--xr-font-color3);\n",
"}\n",
"\n",
".xr-array-preview,\n",
".xr-array-data {\n",
" padding: 0 5px !important;\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-array-data,\n",
".xr-array-in:checked ~ .xr-array-preview {\n",
" display: none;\n",
"}\n",
"\n",
".xr-array-in:checked ~ .xr-array-data,\n",
".xr-array-preview {\n",
" display: inline-block;\n",
"}\n",
"\n",
".xr-dim-list {\n",
" display: inline-block !important;\n",
" list-style: none;\n",
" padding: 0 !important;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list li {\n",
" display: inline-block;\n",
" padding: 0;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list:before {\n",
" content: '(';\n",
"}\n",
"\n",
".xr-dim-list:after {\n",
" content: ')';\n",
"}\n",
"\n",
".xr-dim-list li:not(:last-child):after {\n",
" content: ',';\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-has-index {\n",
" font-weight: bold;\n",
"}\n",
"\n",
".xr-var-list,\n",
".xr-var-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-var-item > div,\n",
".xr-var-item label,\n",
".xr-var-item > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-even);\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-var-item > .xr-var-name:hover span {\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-var-list > li:nth-child(odd) > div,\n",
".xr-var-list > li:nth-child(odd) > label,\n",
".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-odd);\n",
"}\n",
"\n",
".xr-var-name {\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-var-dims {\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-var-dtype {\n",
" grid-column: 3;\n",
" text-align: right;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-preview {\n",
" grid-column: 4;\n",
"}\n",
"\n",
".xr-index-preview {\n",
" grid-column: 2 / 5;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-name,\n",
".xr-var-dims,\n",
".xr-var-dtype,\n",
".xr-preview,\n",
".xr-attrs dt {\n",
" white-space: nowrap;\n",
" overflow: hidden;\n",
" text-overflow: ellipsis;\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-var-name:hover,\n",
".xr-var-dims:hover,\n",
".xr-var-dtype:hover,\n",
".xr-attrs dt:hover {\n",
" overflow: visible;\n",
" width: auto;\n",
" z-index: 1;\n",
"}\n",
"\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" display: none;\n",
" background-color: var(--xr-background-color) !important;\n",
" padding-bottom: 5px !important;\n",
"}\n",
"\n",
".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
".xr-var-data-in:checked ~ .xr-var-data,\n",
".xr-index-data-in:checked ~ .xr-index-data {\n",
" display: block;\n",
"}\n",
"\n",
".xr-var-data > table {\n",
" float: right;\n",
"}\n",
"\n",
".xr-var-name span,\n",
".xr-var-data,\n",
".xr-index-name div,\n",
".xr-index-data,\n",
".xr-attrs {\n",
" padding-left: 25px !important;\n",
"}\n",
"\n",
".xr-attrs,\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" grid-column: 1 / -1;\n",
"}\n",
"\n",
"dl.xr-attrs {\n",
" padding: 0;\n",
" margin: 0;\n",
" display: grid;\n",
" grid-template-columns: 125px auto;\n",
"}\n",
"\n",
".xr-attrs dt,\n",
".xr-attrs dd {\n",
" padding: 0;\n",
" margin: 0;\n",
" float: left;\n",
" padding-right: 10px;\n",
" width: auto;\n",
"}\n",
"\n",
".xr-attrs dt {\n",
" font-weight: normal;\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-attrs dt:hover span {\n",
" display: inline-block;\n",
" background: var(--xr-background-color);\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-attrs dd {\n",
" grid-column: 2;\n",
" white-space: pre-wrap;\n",
" word-break: break-all;\n",
"}\n",
"\n",
".xr-icon-database,\n",
".xr-icon-file-text2,\n",
".xr-no-icon {\n",
" display: inline-block;\n",
" vertical-align: middle;\n",
" width: 1em;\n",
" height: 1.5em !important;\n",
" stroke-width: 0;\n",
" stroke: currentColor;\n",
" fill: currentColor;\n",
"}\n",
"</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) &lt;U1 8B &#x27;x&#x27; &#x27;y&#x27;\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B 3 2</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-3d75e7b3-5dd2-4414-a7e1-f22480b345e4' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-3d75e7b3-5dd2-4414-a7e1-f22480b345e4' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>dim</span>: 2</li><li><span class='xr-has-index'>inflevel</span>: 1</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-af8e9546-f797-4ec3-9f58-1cbbb579d71c' class='xr-section-summary-in' type='checkbox' checked><label for='section-af8e9546-f797-4ec3-9f58-1cbbb579d71c' class='xr-section-summary' >Coordinates: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>dim</span></div><div class='xr-var-dims'>(dim)</div><div class='xr-var-dtype'>&lt;U1</div><div class='xr-var-preview xr-preview'>&#x27;x&#x27; &#x27;y&#x27;</div><input id='attrs-40a9d14b-36d7-4e78-8ae0-94976096190d' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-40a9d14b-36d7-4e78-8ae0-94976096190d' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-41a44342-64fd-4723-8e66-3a2306a75fe4' class='xr-var-data-in' type='checkbox'><label for='data-41a44342-64fd-4723-8e66-3a2306a75fe4' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>description :</span></dt><dd>dimension of the source dataset along which the bitwise information has been analysed.</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;&lt;U1&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>inflevel</span></div><div class='xr-var-dims'>(inflevel)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>0.99</div><input id='attrs-3209a129-c315-4f40-8d0c-5a82ef54e39e' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-3209a129-c315-4f40-8d0c-5a82ef54e39e' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-ad767a90-a9f0-409a-bab4-b8354014d301' class='xr-var-data-in' type='checkbox'><label for='data-ad767a90-a9f0-409a-bab4-b8354014d301' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([0.99])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-7944d71f-b28f-4e34-a5fd-9392250c7ee3' class='xr-section-summary-in' type='checkbox' checked><label for='section-7944d71f-b28f-4e34-a5fd-9392250c7ee3' class='xr-section-summary' >Data variables: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>Tair</span></div><div class='xr-var-dims'>(dim, inflevel)</div><div class='xr-var-dtype'>int64</div><div class='xr-var-preview xr-preview'>3 2</div><input id='attrs-b20630ec-13d2-4d24-b27e-5721e49ac645' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-b20630ec-13d2-4d24-b27e-5721e49ac645' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-0f37b878-10b1-4ce7-82ce-0e386d7437cf' class='xr-var-data-in' type='checkbox'><label for='data-0f37b878-10b1-4ce7-82ce-0e386d7437cf' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([[3],\n",
" [2]])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-9fa52e0c-8b04-4a83-b427-63e383268a21' class='xr-section-summary-in' type='checkbox' ><label for='section-9fa52e0c-8b04-4a83-b427-63e383268a21' class='xr-section-summary' >Indexes: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>dim</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-d04c69de-460c-44cf-977d-d5047ad22299' class='xr-index-data-in' type='checkbox'/><label for='index-d04c69de-460c-44cf-977d-d5047ad22299' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;object&#x27;, name=&#x27;dim&#x27;))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>inflevel</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-5d278efb-40a3-4984-a0d8-da7dacaec481' class='xr-index-data-in' type='checkbox'/><label for='index-5d278efb-40a3-4984-a0d8-da7dacaec481' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([0.99], dtype=&#x27;float64&#x27;, name=&#x27;inflevel&#x27;))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-e245ae81-8efe-4c01-af46-b2522f7b5392' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-e245ae81-8efe-4c01-af46-b2522f7b5392' class='xr-section-summary' title='Expand/collapse section'>Attributes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'></dl></div></li></ul></div></div>"
],
"text/plain": [
"<xarray.Dataset> Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) <U1 8B 'x' 'y'\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B 3 2"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"info_per_bit = xb.get_bitinformation(ds.isel(time=slice(0, 10)), dim=[\"y\", \"x\"], implementation=\"python\")\n",
"keepbits = xb.get_keepbits(info_per_bit, inf_level=0.99)\n",
"keepbits"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "6b3a3f7e-87f1-4093-af40-7b0bc8b656b8",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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w2H+8pe/eO7Pysqq9Y/ixhtvNN26dTOPPfaYGT16tDnvvPNMz549zerVq83KlStNz549zR//+Mca2/j5i8KJReiJ/9a0/f79+40xxjz11FMmLi7OPPzww+aTTz4xjz/+uHE6nebxxx+vMUNqaqrnhX3ChAnmjDPOMAcPHjTGGJOdnW1+9atfmd/+9rfVbm9Zlhk3bpyJiooyzZo1MzfeeKPZsGFDjY/5c2eddZb57W9/a7766iszbdo006NHD3PhhRea4uJiU1JSYi699FJzxhlnVLv97bffbrp3725ee+01s3TpUjNixAhz//33m61bt5q7777bOBwO895779WY4Z577jGJiYnmr3/9q9mwYYPZt2+f2bt3r9mwYYP561//apxOp/nzn//s0379XEZGhrEsq9r7X3jhBWO328348ePNaaedZqKjo83zzz/vud+b4/Kuu+4yycnJZsaMGaZHjx7muuuuM2lpaeb55583ixYtMm3btjX3339/tds3a9asyptlWcbpdHp+rsmJx+V//vMfY7fbzU033WReeOEFc+uttxqHw2FefPHFardv166d2bhxozHGmKuuusr069fPfPHFF6agoMBkZGSYIUOGmKlTp9aYwbIsc8oppxjLsky3bt3MQw895Mnkrd/85jdm1KhR5s033zQTJkwww4cPN6NHjzZ79uwx+/btM2PHjjXnn39+tds/+OCDJjU11cybN8889dRTpnv37uaee+4x7777rpk8ebKJjY01n3/+eY0ZGvq4rO2YNIbjslwwHJf1PSaN4bgsV99j0pj6H5f1PSaN4bgsx3v4T8LhuAyG93BjOC5DCYV8COnXr1+Nt27dutV4UPbo0cO88MILnp/XrFljWrdube6++25jjHcHdVpamlm+fLkxxpi9e/cay7IqnPl9++23TdeuXWts46STTjLjx483y5cvNx999JH56KOPzIoVK4zdbjcLFizwLKuOZVmeF7ZBgwaZuXPnVrj/mWeeMb17964xQ3R0tNm+fbsxxpi2bduaTz/9tML9X331lWnZsmWtGQ4ePGgeeughc8oppxibzWb69+9vnnzySZOTk1Pj4xtT9qZT/mXCsWPHjN1ur5Bj06ZNpkWLFtVu36ZNG7Ny5UrPz3v27DHx8fGeHgL33HOPGTp0aI0Z2rZta1599dVq73/llVdMmzZtamzjggsu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+aXWr1+vK664osr7t2zZon//+9+aNWtWtW0cPnxYNptNSUlJVd7/7rvvKiYmRqNHj/Y6V3Fxse644w6tWLFCr7zyijp06OD1tlV56623FBkZqbFjx9a6bk5Ojt5//33t2LFDbrdbqampGj58uDp37lzjds8995wuuugin6bwqMqRI0f0zTffqGvXroqPj1dhYaFefPFFHTt2TGeeeaa6du1a4/ZffvmllixZoqKiIo0dO1Znnnmmzxny8/P1/PPPa926dcrKypIkpaSkaOjQobr44ouVmJhY4/ZFRUVyuVyKjY31+bEl6eOPP9aaNWs0c+bMKu//6KOP9Nxzz2nBggXVtvHtt98qMjKy2mPnxRdfVEREhCZMmOBVpuzsbF199dVasWKF1q1bV+vvQSqbYuVE8fHxatGihefnRYsWSZKmTJlSYztbt27VW2+9pe3bt1c4Js8444xapxScM2eO/vCHP9T5d1Fux44d+uKLLzRw4EClp6dr//79euKJJ3Ts2DGNHz9eY8aMqXH7d999V88//7znuLz66qs992VnZ0tSheemKvU5Lut7TEoclz8X6OOyvsekxHEp+f+YlHw/Lv11TEoclxLv4dUJxeOyId/D//a3v6mgoIDj8jhvjstQQCEfogoLC/Xll1/qwIEDcrvdnuWWZemcc86p8/aSdO6559YrQ2O2QYaat/f2eAAAAAAQQgLbIQB18e6775pWrVpV6mJe27Rt/to+WNp49913TcuWLf2S4cTuVIF4LuuzH0uXLq13huoUFxebH374oV5tlJSU1KuN+m4fLhmC4Xfhjzb8kQEIJllZWfU6puu7PRmCq41gyDB79mzPlLqBaiMYMvijDTL4r40DBw6Y4uLiemWobxv+yBBMKORDUMeOHc31119vsrKyArJ9sLRBBv9lqE5GRka9vwyobxtkCJ4M/mjD2+2feOIJc/rpp5sLL7zQfPjhhxXuO3jwoOnQoUODbh8sbZAheDLk5eWZSy65xLRr185MmTLFFBUVmeuvv97zpenIkSNNbm5ug21PhuBqIxgy5ObmVrrl5OSYyMhI8+mnn3qW1aS+bQRDhnDZj2DI4I82/v73v3umQna73ebee+81SUlJxmazmdjYWDN9+nTjcrlqzFDfNvyRIRRQyIeghIQEzyiYgdg+WNogg/8yVCeUCj8yhEYb3mz/6KOPmtjYWHPDDTeYSy+91DgcDvOXv/zFc39t08bUd/tgaYMMwZPBGGNuvPFG061bN/PYY4+Z0aNHm/POO8/07NnTrF692qxcudL07NnT/PGPf2yw7ckQXG0EQ4byQXp/fjtx4Lbajuv6thEMGcJlP4Ihg7/2o3zQvqeeesrExcWZhx9+2HzyySfm8ccfN06n0zz++OO1ZqhPG/7IEAoo5EPQFVdcUeOUDA29fbC0QYb6b9+vX78ab926dav1Bb++bZAheDIEy3706NHDvPDCC56f16xZY1q3bu2ZP7e2oqu+2wdLG2QIngzGlE3hunz5cmOMMXv37jWWZZk33njDc//bb79tunbt2mDbkyG42giGDCeddJIZP368Wb58ufnoo4/MRx99ZFasWGHsdrtZsGCBZ1lN6ttGMGQIl/0Ihgz+aOPE0fcHDRpk5s6dW+H+Z555xvTu3bvGDPVtwx8ZQgGD3YWgY8eO6cILL1SrVq3Uq1cvRUZGVrj/5ptvbtDtg6UNMtR/++joaF100UXVjhSbmZmpZ555Ri6Xq8HaIEPwZAiW/YiNjdWWLVvUvn17z7LNmzfr9NNP1xVXXKFbbrlFbdq0qbaN+m4fLG2QIXgySGXH9rZt25SWliZJiouL04YNG9SlSxdJZaNe9+jRQ0ePHm2Q7ckQXG0EQ4bDhw9r6tSpys3N1b/+9S+ddNJJkqTIyEht3LhRPXr0qPax/dVGMGQIl/0Ihgz+aMNms2n//v1q1aqVWrVqpQ8//FC9e/f23L99+3b16dNH+fn5DdaGPzKEhEB/kwDfPfPMM8Zut5v4+HiTnp5u2rdv77l5c51gfbcPljbIUP/tBwwYYJ588slq79+wYUOtZ6nq2wYZgieDP9rwR4a0tDSzcuXKSss3b95skpOTzeTJk2tso77bB0sbZAieDMYY06ZNG7N+/XrPz5MmTaow5/OmTZtMs2bNGmx7MgRXG8GQodyTTz5p2rRpY1588UVjjDERERFezZ3uzzaCIYM/2iBD/duwLMssWrTIvP766yYtLc2sW7euwv2bNm0yiYmJDdqGPzKEAgr5EJScnGzuvffeOg/SUN/tg6UNMtR/+2nTpplp06ZVe/93331nRo8e3aBtkCF4MvijDX9kmDRpUrVtbNq0yTPTRENtHyxtkCF4MhhjzLhx48xTTz1V7f0LFiwww4YNa7DtyRBcbQRDhhNt3rzZ9OnTx0yaNKlORZs/2giGDP5ogwz1a+PnMyjde++9Fe5/5plnTL9+/Rq0DX9kCAUU8iGoWbNm9RrcrL7bB0sbZPBfBiCYbNy40fzzn/+s9v7Nmzeb2bNnN9j2wdIGGYIngzHGZGdnmx9//LHa+9955x2zYsWKBtueDMHVRjBk+LmioiIzffp007dvX7N9+3avt/NnG8GQwR9tkMG/bZzozTffNEuXLg1oG/7IEAy4Rj4ETZ8+Xa1atdIf//jHgGwfLG2QwX8ZJKmwsFBffvmlDhw4ILfb7VluWZbOOeecRmmDDMGTIdj3Q5LOPffcBt8+WNogQ/Bk8EcbZAieDP5ogwzBk8EfbZDBf22ES4ZgFRHoAPCdy+XSAw88oPfee0+9e/euNLjZ3LlzG3T7YGmDDP7LsHTpUk2ZMkWHDh2qdJ9lWTUOAOWvNsgQPBn80QYZ/NcGGYIngz/aIEPwZPBHG2QIngz+aIMM/mtj6dKlmjx5srKzs+uVoT5t+CNDMOOMfAgaM2ZMtfdZlqXly5c36PbB0gYZ/JehU6dOGjt2rP70pz8pOTm51vUbog0yBE8Gf7RBBv+1QYbgyeCPNsgQPBn80QYZgieDP9ogg//aCJcMQS2wPfsBBIOEhIR6X2df3zbIEDwZ/NEGGfzXBhmCJ4M/2iBD8GTwRxtkCJ4M/miDDP5rI1wyBDNboL9IABB4v/3tb/XRRx8FtA0yBE8Gf7RBBv+1QYbgyeCPNsgQPBn80QYZgieDP9ogg//aCJcMwYyu9QB07NgxXXjhhWrVqpV69epV6Tr7m2++ucHbIEPwZAiX/QiGDOGyH2QIr/0gQ3jtBxnCaz+CIUO47Ic/MgQzCnkAevbZZ3XdddcpJiZGLVq0kGVZnvssy9L27dsbvA0yBE+GcNmPYMgQLvtBhvDaDzKE136QIbz2IxgyhMt++CNDUAtsz34AwSA5Odnce++9xuVyBawNMgRPBn+0QQb/tUGG4MngjzbIEDwZ/NEGGYIngz/aIIP/2giXDMGMQh6AadasWb0HA6lvG2QIngz+aIMM/muDDMGTwR9tkCF4MvijDTIETwZ/tEEG/7URLhmCGYPdAdBll12mJUuWBLQNMgRPBn+0QQb/tUGG4MngjzbIEDwZ/NEGGYIngz/aIIP/2giXDMEsItABAASey+XSAw88oPfee0+9e/euNBjI3LlzG7wNMgRPhnDZj2DIEC77QYbw2g8yhNd+kCG89iMYMoTLfvgjQzBjsDsAGjNmTLX3WZal5cuXN3gbZAieDP5ogwz+a4MMwZPBH22QIXgy+KMNMgRPBn+0QQb/tREuGYIZhTwAAAAAACGEa+QBAAAAAAghFPIAAAAAAIQQCnkAAAAAAEIIhTwAAAAAACGEQh4AgDAzevRo3XLLLdXe3759e82bN6/Wdp5++mmlpaXJZrNp3rx5mj17tvr27eu3nAAAoG4o5AEAaGI+//xzXXPNNZ6fLcvSa6+9VmGdvLw83Xjjjbr99tu1d+/eCuv7U01fDqxdu1a/+MUvFBcXp6SkJI0ePVoFBQWV1isqKlLfvn1lWZYyMjIaJCcAAMGEQh4AgCamVatWio2NrXGdXbt2qaSkROPHj1dqamqt6/vb2rVrNW7cOJ111ln67LPP9Pnnn+vGG2+UzVb5o8ttt92mNm3aNGo+AAACiUIeAIAwVFpaqhtvvFFJSUlq0aKF7rrrLhljJFXsWt++fXtJ0gUXXCDLstS+fXstXLhQvXr1kiSdfPLJsixLO3furPQYbrdb99xzj9q2bSuHw6G+fftq6dKlFda5/fbb1aVLF8XGxurkk0/W3XffrZKSEknSwoULNWfOHG3cuFGWZcmyLC1cuFCSNH36dN1888264447dMopp6hz58767W9/K4fDUaH9d999V++//74eeughPz1zAAAEPwp5AADC0HPPPaeIiAh9+umneuyxx/TII4/o2WefrbTe559/LklasGCBMjMz9fnnn2vixIn64IMPJEmfffaZMjMzlZaWVmnbRx99VA8//LAeeughffnllxo7dqzOPfdcbdu2zbNOQkKCFi5cqC1btujRRx/VM888o0ceeUSSNHHiRN1666065ZRTlJmZqczMTE2cOFEHDhzQp59+qtatW2vYsGFKTk7WqFGjtHr16gqPv3//fl199dX617/+1eg9BgAACCQKeQAAwlBaWpoeeeQRde3aVZdccoluuukmTwF9olatWkmSkpKSlJKSolatWikmJkYtWrTw3J+SkiK73V5p24ceeki33367LrroInXt2lX333+/+vbtW2EgvbvuukvDhg1T+/btdc455+jWW2/Vyy+/LEmKiYlRfHy8IiIilJKSopSUFMXExGj79u2Syq6fv/rqq7V06VL1799fp59+uudLAmOMLr/8cl133XUaOHCgX587AACCHYU8AABhaMiQIbIsy/Pz0KFDtW3bNrlcLr+0n5eXp3379mn48OEVlg8fPlxbt271/Pyf//xHp512mlJSUhQfH6+7775bu3btqrFtt9stSbr22mt1xRVXqF+/fp4vJf75z39Kkh5//HHl5eVp5syZftkfAABCCYU8AACosxO/LJDKzpSXL1u3bp0uuuginX322Xrrrbe0YcMG3XnnnSouLq6xzdTUVElSjx49Kizv3r2750uA5cuXa926dXI4HIqIiFCnTp0kSQMHDtRll13ml30DACBYRQQ6AAAA8L9169ZV+rlz585VdpGPjIz0+Ux9YmKi2rRpo9WrV2vkyJGe5WvWrNHgwYMlSZ988onS09N15513eu7/4YcfKrQTFRVV6bHbt2+vNm3a6Jtvvqmw/Ntvv9XZZ58tSXrsscf0f//3f5779u3bp7Fjx2rJkiU69dRTfdoXAABCDYU8AABhaPfu3ZoxY4auvfZaffHFF3r88cf18MMPV7lu+/bt9eGHH2r48OFyOBxq1qyZV4/xhz/8QbNmzVLHjh3Vt29fLViwQBkZGXrhhRckSZ06ddKuXbv00ksvadCgQXr77bf16quvVnrsHTt2KCMjQ23btlVCQoIcDoen7T59+qhv37567rnn9PXXX+s///mPJKldu3YV2omPj5ckdezYUW3btvXpuQIAINRQyAMAEIamTJmigoICDR48WHa7XTfddJOuueaaKtd9+OGHNWPGDD3zzDM66aSTqpxqrio333yz8vLydOutt+rAgQPq0aOH3njjDXXu3FmSdN5552n69Om68cYbVVRUpPHjx+vuu+/W7NmzPW385je/0SuvvKIxY8YoJydHCxYs0OWXX65bbrlFhYWFmj59ug4fPqw+ffpo2bJl6tixY32fGgAAQp5lyieVBQAAAAAAQY/B7gAAAAAACCEU8gAAAAAAhBAKeQAAAAAAQgiFPAAAAAAAIYRCHgAAAACAEEIhDwAAAABACKGQBwAAAAAghFDIAwAAAAAQQijkAQAAAAAIIRTyAAAAAACEEAp5AAAAAABCyP8D0ish6ICIwPwAAAAASUVORK5CYII=",
"text/plain": [
"<Figure size 1200x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot_mantissa_importances(info_per_bit, \"Tair\", \"x\", bit_filter=\"m\")"
]
},
{
"cell_type": "markdown",
"id": "95576c67-40a8-4a5e-a936-9e90330e359e",
"metadata": {},
"source": [
"The three leading mantissa bits appear to hold most of the information with the fourth one already being below the threshold when considering the tail, which acts as a residual limit.\n",
"\n",
"At native `float64` accuracy, the algorithm works as expected."
]
},
{
"cell_type": "markdown",
"id": "9017876d-f631-44de-a818-686c3edae520",
"metadata": {},
"source": [
"### Effect of quantization on the importances of bits\n",
"Now, lets quantize and then dequantize the data to simulate the truncation/compression done for many datasets and see the effect this has on the bit importances. While `int8` is forced here, the same works with 16 bits."
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "78456a66-3fba-4955-b442-5c736a5e4a6a",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/joel/.micromamba/envs/xbitinfo/lib/python3.12/site-packages/xarray/core/duck_array_ops.py:215: RuntimeWarning: invalid value encountered in cast\n",
" return data.astype(dtype, **kwargs)\n"
]
}
],
"source": [
"_quantized, scale, zp = quantize(ds.Tair, NBITS, signed=True)\n",
"_dequantized = dequantize(_quantized, scale, zp)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "12c018ac-8a28-4a38-b3f0-18a99318b5bc",
"metadata": {},
"outputs": [],
"source": [
"quantized = xr.DataArray(\n",
" data=_quantized,\n",
" dims=[\"time\", \"y\", \"x\"],\n",
" coords=dict(\n",
" time=ds.time,\n",
" )\n",
").to_dataset(name=\"Tair\")"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "3d4a60d0-77d2-4edc-bb67-3bcdea3dd95a",
"metadata": {},
"outputs": [],
"source": [
"dequantized = xr.DataArray(\n",
" data=_dequantized,\n",
" dims=[\"time\", \"y\", \"x\"],\n",
" coords=dict(\n",
" time=ds.time,\n",
" )\n",
").to_dataset(name=\"Tair\")"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "0b2ee124-ee8d-421a-b31d-e09256c731b9",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Processing var: Tair for dim: y: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.66it/s]\n",
"Processing var: Tair for dim: x: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.63it/s]\n"
]
},
{
"data": {
"text/html": [
"<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
"<defs>\n",
"<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
"<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"</symbol>\n",
"<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
"<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"</symbol>\n",
"</defs>\n",
"</svg>\n",
"<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
" *\n",
" */\n",
"\n",
":root {\n",
" --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
" --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
" --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
" --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
" --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
" --xr-background-color: var(--jp-layout-color0, white);\n",
" --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
" --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
"}\n",
"\n",
"html[theme=dark],\n",
"body[data-theme=dark],\n",
"body.vscode-dark {\n",
" --xr-font-color0: rgba(255, 255, 255, 1);\n",
" --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
" --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
" --xr-border-color: #1F1F1F;\n",
" --xr-disabled-color: #515151;\n",
" --xr-background-color: #111111;\n",
" --xr-background-color-row-even: #111111;\n",
" --xr-background-color-row-odd: #313131;\n",
"}\n",
"\n",
".xr-wrap {\n",
" display: block !important;\n",
" min-width: 300px;\n",
" max-width: 700px;\n",
"}\n",
"\n",
".xr-text-repr-fallback {\n",
" /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
" display: none;\n",
"}\n",
"\n",
".xr-header {\n",
" padding-top: 6px;\n",
" padding-bottom: 6px;\n",
" margin-bottom: 4px;\n",
" border-bottom: solid 1px var(--xr-border-color);\n",
"}\n",
"\n",
".xr-header > div,\n",
".xr-header > ul {\n",
" display: inline;\n",
" margin-top: 0;\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-obj-type,\n",
".xr-array-name {\n",
" margin-left: 2px;\n",
" margin-right: 10px;\n",
"}\n",
"\n",
".xr-obj-type {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-sections {\n",
" padding-left: 0 !important;\n",
" display: grid;\n",
" grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
"}\n",
"\n",
".xr-section-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-section-item input {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-item input + label {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label {\n",
" cursor: pointer;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label:hover {\n",
" color: var(--xr-font-color0);\n",
"}\n",
"\n",
".xr-section-summary {\n",
" grid-column: 1;\n",
" color: var(--xr-font-color2);\n",
" font-weight: 500;\n",
"}\n",
"\n",
".xr-section-summary > span {\n",
" display: inline-block;\n",
" padding-left: 0.5em;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-summary-in + label:before {\n",
" display: inline-block;\n",
" content: '►';\n",
" font-size: 11px;\n",
" width: 15px;\n",
" text-align: center;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label:before {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label:before {\n",
" content: '▼';\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label > span {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-summary,\n",
".xr-section-inline-details {\n",
" padding-top: 4px;\n",
" padding-bottom: 4px;\n",
"}\n",
"\n",
".xr-section-inline-details {\n",
" grid-column: 2 / -1;\n",
"}\n",
"\n",
".xr-section-details {\n",
" display: none;\n",
" grid-column: 1 / -1;\n",
" margin-bottom: 5px;\n",
"}\n",
"\n",
".xr-section-summary-in:checked ~ .xr-section-details {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-array-wrap {\n",
" grid-column: 1 / -1;\n",
" display: grid;\n",
" grid-template-columns: 20px auto;\n",
"}\n",
"\n",
".xr-array-wrap > label {\n",
" grid-column: 1;\n",
" vertical-align: top;\n",
"}\n",
"\n",
".xr-preview {\n",
" color: var(--xr-font-color3);\n",
"}\n",
"\n",
".xr-array-preview,\n",
".xr-array-data {\n",
" padding: 0 5px !important;\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-array-data,\n",
".xr-array-in:checked ~ .xr-array-preview {\n",
" display: none;\n",
"}\n",
"\n",
".xr-array-in:checked ~ .xr-array-data,\n",
".xr-array-preview {\n",
" display: inline-block;\n",
"}\n",
"\n",
".xr-dim-list {\n",
" display: inline-block !important;\n",
" list-style: none;\n",
" padding: 0 !important;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list li {\n",
" display: inline-block;\n",
" padding: 0;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list:before {\n",
" content: '(';\n",
"}\n",
"\n",
".xr-dim-list:after {\n",
" content: ')';\n",
"}\n",
"\n",
".xr-dim-list li:not(:last-child):after {\n",
" content: ',';\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-has-index {\n",
" font-weight: bold;\n",
"}\n",
"\n",
".xr-var-list,\n",
".xr-var-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-var-item > div,\n",
".xr-var-item label,\n",
".xr-var-item > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-even);\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-var-item > .xr-var-name:hover span {\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-var-list > li:nth-child(odd) > div,\n",
".xr-var-list > li:nth-child(odd) > label,\n",
".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-odd);\n",
"}\n",
"\n",
".xr-var-name {\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-var-dims {\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-var-dtype {\n",
" grid-column: 3;\n",
" text-align: right;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-preview {\n",
" grid-column: 4;\n",
"}\n",
"\n",
".xr-index-preview {\n",
" grid-column: 2 / 5;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-name,\n",
".xr-var-dims,\n",
".xr-var-dtype,\n",
".xr-preview,\n",
".xr-attrs dt {\n",
" white-space: nowrap;\n",
" overflow: hidden;\n",
" text-overflow: ellipsis;\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-var-name:hover,\n",
".xr-var-dims:hover,\n",
".xr-var-dtype:hover,\n",
".xr-attrs dt:hover {\n",
" overflow: visible;\n",
" width: auto;\n",
" z-index: 1;\n",
"}\n",
"\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" display: none;\n",
" background-color: var(--xr-background-color) !important;\n",
" padding-bottom: 5px !important;\n",
"}\n",
"\n",
".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
".xr-var-data-in:checked ~ .xr-var-data,\n",
".xr-index-data-in:checked ~ .xr-index-data {\n",
" display: block;\n",
"}\n",
"\n",
".xr-var-data > table {\n",
" float: right;\n",
"}\n",
"\n",
".xr-var-name span,\n",
".xr-var-data,\n",
".xr-index-name div,\n",
".xr-index-data,\n",
".xr-attrs {\n",
" padding-left: 25px !important;\n",
"}\n",
"\n",
".xr-attrs,\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" grid-column: 1 / -1;\n",
"}\n",
"\n",
"dl.xr-attrs {\n",
" padding: 0;\n",
" margin: 0;\n",
" display: grid;\n",
" grid-template-columns: 125px auto;\n",
"}\n",
"\n",
".xr-attrs dt,\n",
".xr-attrs dd {\n",
" padding: 0;\n",
" margin: 0;\n",
" float: left;\n",
" padding-right: 10px;\n",
" width: auto;\n",
"}\n",
"\n",
".xr-attrs dt {\n",
" font-weight: normal;\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-attrs dt:hover span {\n",
" display: inline-block;\n",
" background: var(--xr-background-color);\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-attrs dd {\n",
" grid-column: 2;\n",
" white-space: pre-wrap;\n",
" word-break: break-all;\n",
"}\n",
"\n",
".xr-icon-database,\n",
".xr-icon-file-text2,\n",
".xr-no-icon {\n",
" display: inline-block;\n",
" vertical-align: middle;\n",
" width: 1em;\n",
" height: 1.5em !important;\n",
" stroke-width: 0;\n",
" stroke: currentColor;\n",
" fill: currentColor;\n",
"}\n",
"</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) &lt;U1 8B &#x27;x&#x27; &#x27;y&#x27;\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B -11 -11</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-a525f95e-6290-43e3-b382-927ebea6a9fc' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-a525f95e-6290-43e3-b382-927ebea6a9fc' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>dim</span>: 2</li><li><span class='xr-has-index'>inflevel</span>: 1</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-dd895fe0-a61d-4f7e-8eff-d186eed8f080' class='xr-section-summary-in' type='checkbox' checked><label for='section-dd895fe0-a61d-4f7e-8eff-d186eed8f080' class='xr-section-summary' >Coordinates: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>dim</span></div><div class='xr-var-dims'>(dim)</div><div class='xr-var-dtype'>&lt;U1</div><div class='xr-var-preview xr-preview'>&#x27;x&#x27; &#x27;y&#x27;</div><input id='attrs-ed0d2a73-ebd4-4bba-b31b-d77e93c1a944' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-ed0d2a73-ebd4-4bba-b31b-d77e93c1a944' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-ee487525-9b60-42d1-a517-2abc3d5dafcd' class='xr-var-data-in' type='checkbox'><label for='data-ee487525-9b60-42d1-a517-2abc3d5dafcd' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>description :</span></dt><dd>dimension of the source dataset along which the bitwise information has been analysed.</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;&lt;U1&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>inflevel</span></div><div class='xr-var-dims'>(inflevel)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>0.99</div><input id='attrs-fd0eaa43-03b3-4a3a-b032-e73862237fdd' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-fd0eaa43-03b3-4a3a-b032-e73862237fdd' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-c2f7c2b2-3600-4cae-9ba4-dd75a50fa1e8' class='xr-var-data-in' type='checkbox'><label for='data-c2f7c2b2-3600-4cae-9ba4-dd75a50fa1e8' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([0.99])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-bdd8289d-4700-4bcf-9200-7319433d6bde' class='xr-section-summary-in' type='checkbox' checked><label for='section-bdd8289d-4700-4bcf-9200-7319433d6bde' class='xr-section-summary' >Data variables: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>Tair</span></div><div class='xr-var-dims'>(dim, inflevel)</div><div class='xr-var-dtype'>int64</div><div class='xr-var-preview xr-preview'>-11 -11</div><input id='attrs-926da38d-ee4c-4a7e-a972-221e4d18bc7f' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-926da38d-ee4c-4a7e-a972-221e4d18bc7f' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-ce0ed38d-ba6b-4303-a0b0-07c0280a28b6' class='xr-var-data-in' type='checkbox'><label for='data-ce0ed38d-ba6b-4303-a0b0-07c0280a28b6' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([[-11],\n",
" [-11]])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-fb9a91c4-2678-4bfd-a7e8-ecba408a0841' class='xr-section-summary-in' type='checkbox' ><label for='section-fb9a91c4-2678-4bfd-a7e8-ecba408a0841' class='xr-section-summary' >Indexes: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>dim</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-618d7fac-189e-4e34-b7ed-36f215da71cf' class='xr-index-data-in' type='checkbox'/><label for='index-618d7fac-189e-4e34-b7ed-36f215da71cf' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;object&#x27;, name=&#x27;dim&#x27;))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>inflevel</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-978431d5-041f-4e0c-b8ae-18897022601e' class='xr-index-data-in' type='checkbox'/><label for='index-978431d5-041f-4e0c-b8ae-18897022601e' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([0.99], dtype=&#x27;float64&#x27;, name=&#x27;inflevel&#x27;))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-23314401-a6a3-4601-b710-e97bfcf14a38' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-23314401-a6a3-4601-b710-e97bfcf14a38' class='xr-section-summary' title='Expand/collapse section'>Attributes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'></dl></div></li></ul></div></div>"
],
"text/plain": [
"<xarray.Dataset> Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) <U1 8B 'x' 'y'\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B -11 -11"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"info_per_bit_dequan = xb.get_bitinformation(dequantized.isel(time=slice(0, 10)), dim=[\"y\", \"x\"], implementation=\"python\")\n",
"keepbits_dequan = xb.get_keepbits(info_per_bit_dequan, inf_level=0.99)\n",
"keepbits_dequan"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "628cff3e-9b20-405e-a877-5ec98b2528df",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Processing var: Tair for dim: y: 100%|████████████████████████████████| 1/1 [00:00<00:00, 4.20it/s]\n",
"Processing var: Tair for dim: x: 100%|████████████████████████████████| 1/1 [00:00<00:00, 4.47it/s]\n"
]
},
{
"data": {
"text/html": [
"<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
"<defs>\n",
"<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
"<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"</symbol>\n",
"<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
"<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"</symbol>\n",
"</defs>\n",
"</svg>\n",
"<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
" *\n",
" */\n",
"\n",
":root {\n",
" --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
" --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
" --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
" --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
" --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
" --xr-background-color: var(--jp-layout-color0, white);\n",
" --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
" --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
"}\n",
"\n",
"html[theme=dark],\n",
"body[data-theme=dark],\n",
"body.vscode-dark {\n",
" --xr-font-color0: rgba(255, 255, 255, 1);\n",
" --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
" --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
" --xr-border-color: #1F1F1F;\n",
" --xr-disabled-color: #515151;\n",
" --xr-background-color: #111111;\n",
" --xr-background-color-row-even: #111111;\n",
" --xr-background-color-row-odd: #313131;\n",
"}\n",
"\n",
".xr-wrap {\n",
" display: block !important;\n",
" min-width: 300px;\n",
" max-width: 700px;\n",
"}\n",
"\n",
".xr-text-repr-fallback {\n",
" /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
" display: none;\n",
"}\n",
"\n",
".xr-header {\n",
" padding-top: 6px;\n",
" padding-bottom: 6px;\n",
" margin-bottom: 4px;\n",
" border-bottom: solid 1px var(--xr-border-color);\n",
"}\n",
"\n",
".xr-header > div,\n",
".xr-header > ul {\n",
" display: inline;\n",
" margin-top: 0;\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-obj-type,\n",
".xr-array-name {\n",
" margin-left: 2px;\n",
" margin-right: 10px;\n",
"}\n",
"\n",
".xr-obj-type {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-sections {\n",
" padding-left: 0 !important;\n",
" display: grid;\n",
" grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
"}\n",
"\n",
".xr-section-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-section-item input {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-item input + label {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label {\n",
" cursor: pointer;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label:hover {\n",
" color: var(--xr-font-color0);\n",
"}\n",
"\n",
".xr-section-summary {\n",
" grid-column: 1;\n",
" color: var(--xr-font-color2);\n",
" font-weight: 500;\n",
"}\n",
"\n",
".xr-section-summary > span {\n",
" display: inline-block;\n",
" padding-left: 0.5em;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-summary-in + label:before {\n",
" display: inline-block;\n",
" content: '►';\n",
" font-size: 11px;\n",
" width: 15px;\n",
" text-align: center;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label:before {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label:before {\n",
" content: '▼';\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label > span {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-summary,\n",
".xr-section-inline-details {\n",
" padding-top: 4px;\n",
" padding-bottom: 4px;\n",
"}\n",
"\n",
".xr-section-inline-details {\n",
" grid-column: 2 / -1;\n",
"}\n",
"\n",
".xr-section-details {\n",
" display: none;\n",
" grid-column: 1 / -1;\n",
" margin-bottom: 5px;\n",
"}\n",
"\n",
".xr-section-summary-in:checked ~ .xr-section-details {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-array-wrap {\n",
" grid-column: 1 / -1;\n",
" display: grid;\n",
" grid-template-columns: 20px auto;\n",
"}\n",
"\n",
".xr-array-wrap > label {\n",
" grid-column: 1;\n",
" vertical-align: top;\n",
"}\n",
"\n",
".xr-preview {\n",
" color: var(--xr-font-color3);\n",
"}\n",
"\n",
".xr-array-preview,\n",
".xr-array-data {\n",
" padding: 0 5px !important;\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-array-data,\n",
".xr-array-in:checked ~ .xr-array-preview {\n",
" display: none;\n",
"}\n",
"\n",
".xr-array-in:checked ~ .xr-array-data,\n",
".xr-array-preview {\n",
" display: inline-block;\n",
"}\n",
"\n",
".xr-dim-list {\n",
" display: inline-block !important;\n",
" list-style: none;\n",
" padding: 0 !important;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list li {\n",
" display: inline-block;\n",
" padding: 0;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list:before {\n",
" content: '(';\n",
"}\n",
"\n",
".xr-dim-list:after {\n",
" content: ')';\n",
"}\n",
"\n",
".xr-dim-list li:not(:last-child):after {\n",
" content: ',';\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-has-index {\n",
" font-weight: bold;\n",
"}\n",
"\n",
".xr-var-list,\n",
".xr-var-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-var-item > div,\n",
".xr-var-item label,\n",
".xr-var-item > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-even);\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-var-item > .xr-var-name:hover span {\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-var-list > li:nth-child(odd) > div,\n",
".xr-var-list > li:nth-child(odd) > label,\n",
".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-odd);\n",
"}\n",
"\n",
".xr-var-name {\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-var-dims {\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-var-dtype {\n",
" grid-column: 3;\n",
" text-align: right;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-preview {\n",
" grid-column: 4;\n",
"}\n",
"\n",
".xr-index-preview {\n",
" grid-column: 2 / 5;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-name,\n",
".xr-var-dims,\n",
".xr-var-dtype,\n",
".xr-preview,\n",
".xr-attrs dt {\n",
" white-space: nowrap;\n",
" overflow: hidden;\n",
" text-overflow: ellipsis;\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-var-name:hover,\n",
".xr-var-dims:hover,\n",
".xr-var-dtype:hover,\n",
".xr-attrs dt:hover {\n",
" overflow: visible;\n",
" width: auto;\n",
" z-index: 1;\n",
"}\n",
"\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" display: none;\n",
" background-color: var(--xr-background-color) !important;\n",
" padding-bottom: 5px !important;\n",
"}\n",
"\n",
".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
".xr-var-data-in:checked ~ .xr-var-data,\n",
".xr-index-data-in:checked ~ .xr-index-data {\n",
" display: block;\n",
"}\n",
"\n",
".xr-var-data > table {\n",
" float: right;\n",
"}\n",
"\n",
".xr-var-name span,\n",
".xr-var-data,\n",
".xr-index-name div,\n",
".xr-index-data,\n",
".xr-attrs {\n",
" padding-left: 25px !important;\n",
"}\n",
"\n",
".xr-attrs,\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" grid-column: 1 / -1;\n",
"}\n",
"\n",
"dl.xr-attrs {\n",
" padding: 0;\n",
" margin: 0;\n",
" display: grid;\n",
" grid-template-columns: 125px auto;\n",
"}\n",
"\n",
".xr-attrs dt,\n",
".xr-attrs dd {\n",
" padding: 0;\n",
" margin: 0;\n",
" float: left;\n",
" padding-right: 10px;\n",
" width: auto;\n",
"}\n",
"\n",
".xr-attrs dt {\n",
" font-weight: normal;\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-attrs dt:hover span {\n",
" display: inline-block;\n",
" background: var(--xr-background-color);\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-attrs dd {\n",
" grid-column: 2;\n",
" white-space: pre-wrap;\n",
" word-break: break-all;\n",
"}\n",
"\n",
".xr-icon-database,\n",
".xr-icon-file-text2,\n",
".xr-no-icon {\n",
" display: inline-block;\n",
" vertical-align: middle;\n",
" width: 1em;\n",
" height: 1.5em !important;\n",
" stroke-width: 0;\n",
" stroke: currentColor;\n",
" fill: currentColor;\n",
"}\n",
"</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 0B\n",
"Dimensions: ()\n",
"Data variables:\n",
" *empty*</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-437ea337-ca72-46b6-b01a-423823808851' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-437ea337-ca72-46b6-b01a-423823808851' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-e19e3957-fd8a-49c4-8357-a92f68280b8f' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-e19e3957-fd8a-49c4-8357-a92f68280b8f' class='xr-section-summary' title='Expand/collapse section'>Coordinates: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'></ul></div></li><li class='xr-section-item'><input id='section-f61dfd94-564e-4809-a20d-17247dea0fd2' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-f61dfd94-564e-4809-a20d-17247dea0fd2' class='xr-section-summary' title='Expand/collapse section'>Data variables: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'></ul></div></li><li class='xr-section-item'><input id='section-3bb11fbb-ea4d-47c9-a981-0c42a7465d1c' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-3bb11fbb-ea4d-47c9-a981-0c42a7465d1c' class='xr-section-summary' title='Expand/collapse section'>Indexes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'></ul></div></li><li class='xr-section-item'><input id='section-d6eea686-755e-4c77-81e2-e9efd337f376' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-d6eea686-755e-4c77-81e2-e9efd337f376' class='xr-section-summary' title='Expand/collapse section'>Attributes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'></dl></div></li></ul></div></div>"
],
"text/plain": [
"<xarray.Dataset> Size: 0B\n",
"Dimensions: ()\n",
"Data variables:\n",
" *empty*"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"info_per_bit_quan = xb.get_bitinformation(quantized.isel(time=slice(0, 10)), dim=[\"y\", \"x\"], implementation=\"python\")\n",
"keepbits_quan = xb.get_keepbits(info_per_bit_quan, inf_level=0.99)\n",
"keepbits_quan"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "779001a9-a55d-439c-b0b2-3c16866e427f",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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uUazZs0qmuF11VVXmRkTbsRisSg5OVmhoaHq1q2bRo4cqccee6zo9VmzZunNN9/U9u3bTUwJd+Hj46Ndu3YpOjpaUVFR+vTTT9WtW7ei13fu3Kk+ffro2LFjJqaEOzn73xiLxaK5c+dq9uzZ2r17t2JiYnTfffdp1KhRCgwMNDvmRfMwOwBO27Vrl2699dbzTmlPSkrSr7/+WsWp4M7i4+PVs2fPou979OihVatWqW/fviooKOBfnlFCSkqKmjdvLkmKjIyUj4+PWrZsWfR627ZtlZiYaFY8uKEdO3bo3nvv1Ysvvqj//ve/atCggSTJMAx169ZNbdq0MTkh3JFhGJJO/57q27dvsdeuvvrqYqUdtdsll1yijRs3Kjo6Wv7+/iUen8nMzOTxCJQqJCREjz/+uB5//HH99NNPmjVrlp566ik98cQTuummmzRv3jyzI14USrqbaNeunbp3764HH3yw1Ne3bdum9957r4pTwZ2FhIQoMTFRTZo0KTrWtm1brVq1SldffTXPcKGEevXq6dixY4qKipIkDRkyREFBQUWvnzp1St7e3ialgzsKDg7WZ599phkzZqhbt2569dVXNXLkSLNjwc0tX75cgYGB8vHxUU5OTrHXcnJyimZlAI899pieeOIJhYWF6ZlnntH48eP15ptvqnXr1tq7d68mTJigG2+80eyYcCNn/xHwXD169FCPHj00bdo0ffjhh/rPf/5jQrKKRUl3E1dccYX27t173tf9/f115ZVXVmEiuLsrrrhCn376qXr16lXseJs2bfTdd9+pT58+JiWDu+rQoYM2bdpU9HjNggULir2+adMmtW7d2oxocHMPPvigrrrqKo0aNUpffvml2XHg5kaPHl305++++07du3cv+v6nn35Ss2bNzIgFN3TXXXcpLS1NgwYNktPplN1uV79+/SSdfrRmyJAheuONN0xOCXdS1pPavr6+uvfee3XvvfdWYaLKwTPpQDW1Y8cObdmyRXfffXepr+/atUsff/yxnn/++SpOBneVlpYmi8VSbPT8XF9//bV8fHzUu3fvKs2F6iM/P19PP/20vv/+ey1evJhdR+Cyr776Sp6enrruuuvMjgI3cvLkSX3zzTeKj4+Xw+FQRESELr/8crVo0cLsaHAzc+fO1a233lrjZ/5R0t1Qbm6uduzYoZSUlGLP4RiGUbTAE3Cu890z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",
"text/plain": [
"<Figure size 1200x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot_mantissa_importances(info_per_bit_quan, \"Tair\", \"x\", bit_filter=\"m\")"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "f6c199b4-4696-4935-9869-60867e315c8c",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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PS8ppDPxEgbyREREREREFJYs7XYAQFZCNGblJwf4NMphaT0RERERERGFJZPNGcjH6NQBPomyGMgTERERERFRWDLbOgAABm14FaMzkCciIiIiIqKwZLK6MvJaZuSJiIiIiIiIgp7J6srI65iRJyIiIiIiIgp6JldpPTPyRERERERERCHA7CqtZ0aeiIiIiIiIKASY5GF3zMgTERERERERBT2zvH6OGXkiIiIiIiKioCcPu+P6OSIiIiIiIqLg15mRZ2k9ERERERERUdBjRp6IiIiIiIgohHD9HBEREREREVEI4fo5IiIiIiIiohAhimLn+jn2yBMREREREREFN2uHAw7R+f/skSciIiIiIiIKctKgOwCIjmJGnoiIiIiIiCioyavntGqoVEKAT6MsBvJEREREREQUdlqt0sT68CqrBxjIExERERERURgyh+mgO4CBPBEREREREYUhk1UqrWdGnoiIiIiIiCjoSRn5WGbkiYiIiIiIiIIfM/JEREREREREIYQ98kREREREREQhxGRjRp6IiIiIiIgoZJhc6+cMWmbkiYiIiIiIiIKe3COvY0aeiIiIiIiIKOjJPfLMyBMREREREREFP6lH3sCMPBEREREREVHwM8s98gzkiYiIiIiIiIKeyVVaH8P1c0RERERERETBzyyV1jMjT0RERERERBT8Wl2l9TEcdkdEREREREQU/MxWDrsjIiIiIiIiChlyjzwz8kRERERERETBTRRFuUc+lhl5IiIiIiIiouBm7XDA7hABADEM5ImIiIiIiIiCm5SNB4DoKJbWExEREREREQU1k2tifXSUGmqVEODTKI+BPBEREREREYUVadCdQRd+2XggCAL55557Dnl5edDr9Zg6dSq2bNnS7323bt2KOXPmIDk5GdHR0RgzZgyefvrpXvd7++23UVBQAJ1Oh4KCArz77ru+/BaIiIiIiIgoiJhcq+ditOHXHw8EOJBfv3497rvvPjzyyCPYvXs3zjnnHFxyySUoLy/v8/4GgwG/+MUv8NVXX+HAgQP49a9/jV//+td44YUX5Pts27YNixYtwk033YQ9e/bgpptuwrXXXovvvvvOX98WERERERERBZA5jFfPAYAgiqIYqC8+Y8YMTJkyBWvWrJFvGzt2LK688kqsWrXKrce4+uqrYTAY8M9//hMAsGjRIjQ3N+O///2vfJ/58+cjMTER69atc+sxm5ubYTQa0dTUhPj4eA++IyIiIiIiIgq0jfuqcOdrOzEtJxH/vmt2oI/jFk/i0IBl5G02G3bu3Il58+Z1u33evHn45ptv3HqM3bt345tvvsF5550n37Zt27Zej3nxxRcP+JhWqxXNzc3dPoiIiIiIiCg0yRn5MFw9BwQwkK+rq4Pdbkd6enq329PT01FVVTXg7x0+fDh0Oh2mTZuGe+65B7fddpv8uaqqKo8fc9WqVTAajfJHdna2F98RERERERERBQOTa/2cIUxL6wM+7E4Quq8CEEWx1209bdmyBd9//z2ef/55rF69ulfJvKePuXz5cjQ1NckfJ06c8PC7ICIiIiIiomBhtko98uGZkQ/Yd5WSkgK1Wt0rU15TU9Mro95TXl4eAGD8+PGorq7GY489hsWLFwMAMjIyPH5MnU4HnU7nzbdBREREREREQUbaI8/1cwrTarWYOnUqNm/e3O32zZs3Y/Zs94cRiKIIq9Uq/3rWrFm9HvPjjz/26DGJiIiIiIgodEml9czI+8CyZctw0003Ydq0aZg1axZeeOEFlJeX48477wTgLHmvqKjAq6++CgD461//ihEjRmDMmDEAnHvl//SnP+GXv/yl/JhLly7FueeeiyeeeAILFy7E+++/j08++QRbt271/zdIREREREREficNuwvXHvmABvKLFi1CfX09Hn/8cVRWVqKwsBAfffQRcnJyAACVlZXddso7HA4sX74cpaWl0Gg0yM/Px+9//3v8/Oc/l+8ze/ZsvPnmm/j1r3+NRx99FPn5+Vi/fj1mzJjh9++PiIiIiIiI/M9kdQ27C9Op9QHdIx+suEeeiIiIiIgodN32yg58cqAGT1wzHovOGhHo47glJPbIExEREREREfmClJEP1x55BvJEREREREQUVuQeeU6tJyIiIiIiIgp+rWG+R56BPBEREREREYUVs2v9nIGBPBEREREREVHwM0kZeZbWExEREREREQU3URTljHxsmK6fYyBPREREREREYcNmd6DD4dyyHqNlRp6IiIiIiIgoqJldq+cADrsjIiIiIiIiCnom1+o5fZQKapUQ4NP4BgN5IiIiIiIiChsma3hPrAcYyBMREREREVEYkTLy4TqxHmAgT0RERERERGHEzIw8ERERERERUeiQM/JhOrEeYCBPREREREREYcTsCuQNYbpDHmAgT0RERERERGGEw+6IiIiIiIiIQoiZw+6IiIiIiIiIQkcrM/JEREREREREocNsZUaeiIiIiIiIKGSYbMzIExEREREREYUMM9fPEREREREREYUOaWp9LNfPEREREREREQW/zqn1DOSJiIiIiIiIgl5njzxL64mIiIiIiIiCnkmaWs9hd0RERERERETBT1o/Z+D6OSIiIiIiIqLgJ5XWMyNPREREREREFAKkYXfMyBMREREREREFOVuHA+12EQBg4NR6IiIiIiIiouAmZeMBICaKGXkiIiIiIiKioCb1x+s0KmjU4Rvuhu93RkRERERERBHFJE+sD9+yeoCBPBEREREREYWJzh3y4VtWDzCQJyIiIiIiojBhdpXWG8J49RzAQJ6IiIiIiIjChJyRD+PVcwADeSIiIiIiIgoTUkY+lj3yRERERERERMHPZGOPPBEREREREVHIMFvZI09EREREREQUMlrZI09EREREREQUOsyu0npm5ImIiIiIiIhCgMk17C6GgTwRERERERFR8DO7SusNLK0nIiIiIiIiCn5SRt7A9XNEREREREREwc/M9XNEREREREREocPE9XNEREREREREocPE9XNEREREREREocNsi4yMfHh/d0QUcuwOEdtLG1DTYkFanB7T85KgVgmBPhYRERERhQCTLTKm1jOQD2EMeCjcbNxXiZUbilHZZJFvyzTqsWJBAeYXZgbwZEREREQUCszWyNgjH97fXRhjwEPhZuO+Stz12i6IPW6varLgrtd2Yc2NU/izTURERET9snU4YLM7AHD9HAUhKeDpGsQDnQHPxn2VAToZkXfsDhErNxT3CuIByLet3FAMu6OvexARERERAW2u/niA6+coyDDgoXC0vbSh14WprkQAlU0WbC9t8N+hiIiIiCikSP3xWo0KUerwDnXD+7sLQwx4KBzVtPT/M+3N/YiIiIgo8kir5wxhno0HGMiHHAY8FI7S4vSK3o+IiIiIIo/JFhmD7gAG8iGHAQ+Fo+l5Scg06tHfzgUBzmGO0/OS/HksIiIiIgohZmtkrJ4DGMiHHAY8FI7UKgErFhT0OftB+llfsaCA6xWJiIiIqF/MyFPQkgIeAP0G8wx4KBTNL8zEwklZvW7PMOq5eo6IiIiIBmV2DbuLDfPVcwAD+ZA0vzATa26cggxj9/L5WJ2GAQ+FtPIGMwBg4URnQK8S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p2NE58RGxWLHeiKipokz8kRERERukpGdiz/N34rTlWa72/NKyvGn+VuRkZ3bqHhqx/o4LqsnImpKWMgTERERuYHZIpi0ZBdqW0Rvu23Skl2NWmZvK+RbxXBGnoioKWEhT0REROQGGw8WIbek7i71AiC3pBwbDxbVG8tsEaw7UIjtR4sBAGkxnJEnImpKWMgTERERuUFDt5pb9etJnK6orvN4RnYuLntzBUbPXo+8UmvH+mf/s6PRy/KJiMh7KSJyaW1SfVhpaSkiIiJQUlKC8PBwT6dDREREPmDdgUKMnr2+Qfc1GhR0bh6BP6RF4Q9pUeidGoWIYH/1GvsLP7wpNf/98O6ejW6YR0RE+tCYOpSFfC1YyBMREZHWzBbBZW+uQF5Jea3XyQNAsL8RUSH+OFZsP3uvKECH+DAcLjqDMxc0ylPvAyAhIgirnxsCo0Gp9T5ERKRfjalDuf0cERERkRsYDQpeuT4df5q/FQpgV8zbyu53bu+GEZ0Tcaz4LDYeLMSGnCJsPFiEnILT2J1X5jD++dfY928d7aJnQUREesBCnoiIiMhNRnROxId398SkJbvsGt8lXLCPfPPIYNzUIxk39UgGAOSXlmPmyv2Yt/ZwvY/R0GvxiYjIe7GQJyIiInKjEZ0TMSw9ARsPFiG/rBxxYUHomxblcDl8XHgQhndKbFAhHxcWpGW6RESkQyzkiYiIiNzMaFAavfy9b1oUEiOC6rzG3naNfN+0KE1yJCIi/eL2c0RERERewHaNPXDumnob2++vXJ/ORndERE0AC3kiIiIiL2G7xj4hwn75fEJEELeeIyJqQri0noiIiMiLXMo19kRE5FtYyBMRERF5mUu5xp6IiHwHl9YTEREREREReREW8kRERERERERehIU8ERERERERkRdhIU9ERERERETkRVjIExEREREREXkRFvJEREREREREXoSFPBEREREREZEXYSFPRERERERE5EVYyBMRERERERF5ERbyRERERERERF6EhTwRERERERGRF2EhT0RERERERORFWMgTEREREREReRE/TyegRyICACgtLfVwJkRERERERNQU2OpPWz3qCAv5WpSVlQEAUlJSPJwJERERERERNSVlZWWIiIhweB9FGlLuNzEWiwXHjx9HWFgYFEXxdDoOlZaWIiUlBUePHkV4eLjbz2cO+orBHPSTgxYxmIN2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5+eHhIQEJCQkIDg4GDk5OQCs188/9NBDyMjIQM+ePTF06FD1SwIRwX333Ydx48ahd+/emv7bERER6R0LeSIiIh/Ur18/KIqi/t6/f3/s27cPZrNZk/ilpaU4fvw4Bg4caHf7wIEDsXv3bvX3L7/8EpdddhkSEhIQGhqKl19+GUeOHHEY22KxAAAeeeQR3H///ejRo4f6pcScOXMAADNmzEBpaSmef/55TZ4PERGRN2EhT0RERJfs/C8LAOtMue229evX44477sA111yDb775Btu2bcOLL76IyspKhzETExMBAOnp6Xa3d+zYUf0SYMWKFVi/fj0CAwPh5+eHNm3aAAB69+6Ne++9V5PnRkREpFd+nk6AiIiItLd+/fqLfm/btm2tS+T9/f0bPVMfHh6OpKQkrF69GldccYV6+9q1a9G3b18AwJo1a9CyZUu8+OKL6vHDhw/bxQkICLjosVNTU5GUlIS9e/fa3f7rr7/immuuAQBMnz4df/vb39Rjx48fx/Dhw7Fo0SL84Q9/aNRzISIi8jYs5ImIiHzQ0aNH8dRTT+GRRx7B1q1bMWPGDEydOrXW+6ampmL58uUYOHAgAgMD0axZswY9xjPPPINXXnkFrVu3Rvfu3TF37lxkZWVhwYIFAIA2bdrgyJEj+OKLL9CnTx98++23+O9//3vRYx88eBBZWVlITk5GWFgYAgMD1djdunVD9+7d8emnn2LPnj348ssvAQAtWrSwixMaGgoAaN26NZKTkxv1b0VERORtWMgTERH5oDFjxuDs2bPo27cvjEYjHn/8cTz88MO13nfq1Kl46qmnMHv2bDRv3rzWreZqM2HCBJSWluLpp59Gfn4+0tPT8fXXX6Nt27YAgBtuuAETJ07E+PHjUVFRgZEjR+Lll1/Gq6++qsa4+eab8dVXX2Hw4MEoLi7G3Llzcd999+HJJ59EeXk5Jk6ciKKiInTr1g0//PADWrdu7ew/DRERkddTxLapLBERERERERHpHpvdEREREREREXkRFvJEREREREREXoSFPBEREREREZEXYSFPRERERERE5EVYyBMRERERERF5ERbyRERERERERF6EhTwRERERERGRF2EhT0RERERERORFWMgTEREREREReREW8kRERERERERehIU8ERERERERkRf5f/i9XgsQi5/OAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 1200x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot_mantissa_importances(info_per_bit_dequan, \"Tair\", \"x\", bit_filter=\"m\")"
]
},
{
"cell_type": "markdown",
"id": "773fbfe6-ccbe-4499-b019-1759232ccc97",
"metadata": {},
"source": [
"As can be seen, after quantization and dequantization, the mantissa importances from above are totally destroyed and a lot of noise is introduced in the data.\n",
"Even if this is quite an extreme example case, as the quantization goes from `float64` to `int8`, it should in theory be sufficient to accomodate most of the information of the original maps, considering that 3 mantissa bits appear to be enough for storing the information at native accuracy."
]
},
{
"cell_type": "markdown",
"id": "8642dde0-ff6f-4158-b4aa-37de7f8c89c7",
"metadata": {},
"source": [
"### Removing bits of the quantized data\n",
"In order to test whether bits can be removed in the quantized data to counter the generation of artificial information in the dequantized data, this is tested for 1, 2 and 3 bits."
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "c2c9b1eb-9446-465a-b475-f9fcd1017565",
"metadata": {},
"outputs": [],
"source": [
"dequantized_trunc1 = xr.DataArray(\n",
" data=dequantize(clear_nth_bit(_quantized, [1]), scale, zp),\n",
" dims=[\"time\", \"y\", \"x\"],\n",
" coords=dict(\n",
" time=ds.time,\n",
" )\n",
").to_dataset(name=\"Tair\")\n",
"\n",
"dequantized_trunc2 = xr.DataArray(\n",
" data=dequantize(clear_nth_bit(_quantized, [1, 2]), scale, zp),\n",
" dims=[\"time\", \"y\", \"x\"],\n",
" coords=dict(\n",
" time=ds.time,\n",
" )\n",
").to_dataset(name=\"Tair\")\n",
"\n",
"dequantized_trunc3 = xr.DataArray(\n",
" data=dequantize(clear_nth_bit(_quantized, [1, 2, 3]), scale, zp),\n",
" dims=[\"time\", \"y\", \"x\"],\n",
" coords=dict(\n",
" time=ds.time,\n",
" )\n",
").to_dataset(name=\"Tair\")"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "c2d79805-6dc9-4a4a-9e7e-f671ec2f4c13",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Processing var: Tair for dim: y: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.49it/s]\n",
"Processing var: Tair for dim: x: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.68it/s]\n"
]
},
{
"data": {
"text/html": [
"<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
"<defs>\n",
"<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
"<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"</symbol>\n",
"<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
"<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"</symbol>\n",
"</defs>\n",
"</svg>\n",
"<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
" *\n",
" */\n",
"\n",
":root {\n",
" --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
" --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
" --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
" --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
" --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
" --xr-background-color: var(--jp-layout-color0, white);\n",
" --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
" --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
"}\n",
"\n",
"html[theme=dark],\n",
"body[data-theme=dark],\n",
"body.vscode-dark {\n",
" --xr-font-color0: rgba(255, 255, 255, 1);\n",
" --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
" --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
" --xr-border-color: #1F1F1F;\n",
" --xr-disabled-color: #515151;\n",
" --xr-background-color: #111111;\n",
" --xr-background-color-row-even: #111111;\n",
" --xr-background-color-row-odd: #313131;\n",
"}\n",
"\n",
".xr-wrap {\n",
" display: block !important;\n",
" min-width: 300px;\n",
" max-width: 700px;\n",
"}\n",
"\n",
".xr-text-repr-fallback {\n",
" /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
" display: none;\n",
"}\n",
"\n",
".xr-header {\n",
" padding-top: 6px;\n",
" padding-bottom: 6px;\n",
" margin-bottom: 4px;\n",
" border-bottom: solid 1px var(--xr-border-color);\n",
"}\n",
"\n",
".xr-header > div,\n",
".xr-header > ul {\n",
" display: inline;\n",
" margin-top: 0;\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-obj-type,\n",
".xr-array-name {\n",
" margin-left: 2px;\n",
" margin-right: 10px;\n",
"}\n",
"\n",
".xr-obj-type {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-sections {\n",
" padding-left: 0 !important;\n",
" display: grid;\n",
" grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
"}\n",
"\n",
".xr-section-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-section-item input {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-item input + label {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label {\n",
" cursor: pointer;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label:hover {\n",
" color: var(--xr-font-color0);\n",
"}\n",
"\n",
".xr-section-summary {\n",
" grid-column: 1;\n",
" color: var(--xr-font-color2);\n",
" font-weight: 500;\n",
"}\n",
"\n",
".xr-section-summary > span {\n",
" display: inline-block;\n",
" padding-left: 0.5em;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-summary-in + label:before {\n",
" display: inline-block;\n",
" content: '►';\n",
" font-size: 11px;\n",
" width: 15px;\n",
" text-align: center;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label:before {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label:before {\n",
" content: '▼';\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label > span {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-summary,\n",
".xr-section-inline-details {\n",
" padding-top: 4px;\n",
" padding-bottom: 4px;\n",
"}\n",
"\n",
".xr-section-inline-details {\n",
" grid-column: 2 / -1;\n",
"}\n",
"\n",
".xr-section-details {\n",
" display: none;\n",
" grid-column: 1 / -1;\n",
" margin-bottom: 5px;\n",
"}\n",
"\n",
".xr-section-summary-in:checked ~ .xr-section-details {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-array-wrap {\n",
" grid-column: 1 / -1;\n",
" display: grid;\n",
" grid-template-columns: 20px auto;\n",
"}\n",
"\n",
".xr-array-wrap > label {\n",
" grid-column: 1;\n",
" vertical-align: top;\n",
"}\n",
"\n",
".xr-preview {\n",
" color: var(--xr-font-color3);\n",
"}\n",
"\n",
".xr-array-preview,\n",
".xr-array-data {\n",
" padding: 0 5px !important;\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-array-data,\n",
".xr-array-in:checked ~ .xr-array-preview {\n",
" display: none;\n",
"}\n",
"\n",
".xr-array-in:checked ~ .xr-array-data,\n",
".xr-array-preview {\n",
" display: inline-block;\n",
"}\n",
"\n",
".xr-dim-list {\n",
" display: inline-block !important;\n",
" list-style: none;\n",
" padding: 0 !important;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list li {\n",
" display: inline-block;\n",
" padding: 0;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list:before {\n",
" content: '(';\n",
"}\n",
"\n",
".xr-dim-list:after {\n",
" content: ')';\n",
"}\n",
"\n",
".xr-dim-list li:not(:last-child):after {\n",
" content: ',';\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-has-index {\n",
" font-weight: bold;\n",
"}\n",
"\n",
".xr-var-list,\n",
".xr-var-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-var-item > div,\n",
".xr-var-item label,\n",
".xr-var-item > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-even);\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-var-item > .xr-var-name:hover span {\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-var-list > li:nth-child(odd) > div,\n",
".xr-var-list > li:nth-child(odd) > label,\n",
".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-odd);\n",
"}\n",
"\n",
".xr-var-name {\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-var-dims {\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-var-dtype {\n",
" grid-column: 3;\n",
" text-align: right;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-preview {\n",
" grid-column: 4;\n",
"}\n",
"\n",
".xr-index-preview {\n",
" grid-column: 2 / 5;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-name,\n",
".xr-var-dims,\n",
".xr-var-dtype,\n",
".xr-preview,\n",
".xr-attrs dt {\n",
" white-space: nowrap;\n",
" overflow: hidden;\n",
" text-overflow: ellipsis;\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-var-name:hover,\n",
".xr-var-dims:hover,\n",
".xr-var-dtype:hover,\n",
".xr-attrs dt:hover {\n",
" overflow: visible;\n",
" width: auto;\n",
" z-index: 1;\n",
"}\n",
"\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" display: none;\n",
" background-color: var(--xr-background-color) !important;\n",
" padding-bottom: 5px !important;\n",
"}\n",
"\n",
".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
".xr-var-data-in:checked ~ .xr-var-data,\n",
".xr-index-data-in:checked ~ .xr-index-data {\n",
" display: block;\n",
"}\n",
"\n",
".xr-var-data > table {\n",
" float: right;\n",
"}\n",
"\n",
".xr-var-name span,\n",
".xr-var-data,\n",
".xr-index-name div,\n",
".xr-index-data,\n",
".xr-attrs {\n",
" padding-left: 25px !important;\n",
"}\n",
"\n",
".xr-attrs,\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" grid-column: 1 / -1;\n",
"}\n",
"\n",
"dl.xr-attrs {\n",
" padding: 0;\n",
" margin: 0;\n",
" display: grid;\n",
" grid-template-columns: 125px auto;\n",
"}\n",
"\n",
".xr-attrs dt,\n",
".xr-attrs dd {\n",
" padding: 0;\n",
" margin: 0;\n",
" float: left;\n",
" padding-right: 10px;\n",
" width: auto;\n",
"}\n",
"\n",
".xr-attrs dt {\n",
" font-weight: normal;\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-attrs dt:hover span {\n",
" display: inline-block;\n",
" background: var(--xr-background-color);\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-attrs dd {\n",
" grid-column: 2;\n",
" white-space: pre-wrap;\n",
" word-break: break-all;\n",
"}\n",
"\n",
".xr-icon-database,\n",
".xr-icon-file-text2,\n",
".xr-no-icon {\n",
" display: inline-block;\n",
" vertical-align: middle;\n",
" width: 1em;\n",
" height: 1.5em !important;\n",
" stroke-width: 0;\n",
" stroke: currentColor;\n",
" fill: currentColor;\n",
"}\n",
"</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) &lt;U1 8B &#x27;x&#x27; &#x27;y&#x27;\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B -11 -11</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-bada3ee5-5ab7-40ea-a421-bfa618432834' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-bada3ee5-5ab7-40ea-a421-bfa618432834' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>dim</span>: 2</li><li><span class='xr-has-index'>inflevel</span>: 1</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-176bd52c-4666-4298-af7a-7dd1ee8ad0a7' class='xr-section-summary-in' type='checkbox' checked><label for='section-176bd52c-4666-4298-af7a-7dd1ee8ad0a7' class='xr-section-summary' >Coordinates: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>dim</span></div><div class='xr-var-dims'>(dim)</div><div class='xr-var-dtype'>&lt;U1</div><div class='xr-var-preview xr-preview'>&#x27;x&#x27; &#x27;y&#x27;</div><input id='attrs-81a17c88-8676-4258-a9d6-44cc2abfc0d1' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-81a17c88-8676-4258-a9d6-44cc2abfc0d1' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-f54bcf3e-2495-445b-90d2-c422bc45c7a3' class='xr-var-data-in' type='checkbox'><label for='data-f54bcf3e-2495-445b-90d2-c422bc45c7a3' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>description :</span></dt><dd>dimension of the source dataset along which the bitwise information has been analysed.</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;&lt;U1&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>inflevel</span></div><div class='xr-var-dims'>(inflevel)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>0.99</div><input id='attrs-6be75db8-7af8-435b-a520-fa2dc5bd5dfd' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-6be75db8-7af8-435b-a520-fa2dc5bd5dfd' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-0a59976a-2b85-42bf-a136-eafede1b16da' class='xr-var-data-in' type='checkbox'><label for='data-0a59976a-2b85-42bf-a136-eafede1b16da' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([0.99])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-7ad2fc50-052a-4f6b-a2a4-3fbcbd4dd946' class='xr-section-summary-in' type='checkbox' checked><label for='section-7ad2fc50-052a-4f6b-a2a4-3fbcbd4dd946' class='xr-section-summary' >Data variables: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>Tair</span></div><div class='xr-var-dims'>(dim, inflevel)</div><div class='xr-var-dtype'>int64</div><div class='xr-var-preview xr-preview'>-11 -11</div><input id='attrs-33e5fddd-bec2-4471-9aa1-9bd321f86602' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-33e5fddd-bec2-4471-9aa1-9bd321f86602' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-3bde7819-573a-4051-918c-28666e955cdd' class='xr-var-data-in' type='checkbox'><label for='data-3bde7819-573a-4051-918c-28666e955cdd' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([[-11],\n",
" [-11]])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-f8092332-8abe-4b11-b471-48f1445d7f5b' class='xr-section-summary-in' type='checkbox' ><label for='section-f8092332-8abe-4b11-b471-48f1445d7f5b' class='xr-section-summary' >Indexes: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>dim</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-1cc599db-c7b7-4bde-89cb-4b2f70dff394' class='xr-index-data-in' type='checkbox'/><label for='index-1cc599db-c7b7-4bde-89cb-4b2f70dff394' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;object&#x27;, name=&#x27;dim&#x27;))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>inflevel</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-a69a437e-4d30-40fd-b9a8-a0e5d2d73c82' class='xr-index-data-in' type='checkbox'/><label for='index-a69a437e-4d30-40fd-b9a8-a0e5d2d73c82' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([0.99], dtype=&#x27;float64&#x27;, name=&#x27;inflevel&#x27;))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-ef1d7932-4dab-4314-9e72-6ba4bf9f5cbf' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-ef1d7932-4dab-4314-9e72-6ba4bf9f5cbf' class='xr-section-summary' title='Expand/collapse section'>Attributes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'></dl></div></li></ul></div></div>"
],
"text/plain": [
"<xarray.Dataset> Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) <U1 8B 'x' 'y'\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B -11 -11"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"info_per_bit_dequan_trunc1 = xb.get_bitinformation(dequantized_trunc1.isel(time=slice(0, 10)), dim=[\"y\", \"x\"], implementation=\"python\")\n",
"keepbits_dequan_trunc1 = xb.get_keepbits(info_per_bit_dequan_trunc1, inf_level=0.99)\n",
"keepbits_dequan_trunc1"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "dcd9a110-ea54-49c5-b83d-17b7719fcbb6",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA/IAAAIyCAYAAABo/fE4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAADJlklEQVR4nOzdeXhTZfYH8O9N0jZdU7qvlELLUgoUylZWNxBURB1HRMVRcd9wm1FGHUTnJ+oo4orbjMjgAC4o4sKigFABQWiBUpZSCt3SvU3XdEnu74/0pi3dkjZpln4/z9PnmSY3N29Hmt5zz3nPEURRFEFEREREREREDkFm6wUQERERERERkekYyBMRERERERE5EAbyRERERERERA6EgTwRERERERGRA2EgT0RERERERORAGMgTERERERERORAG8kREREREREQOhIE8ERERERERkQNhIE9ERERERETkQBjIExER9RMvvPACBEFo89igQYNwxx132GZBRERE1CMKWy+AiIiIbOebb76Bj4+PrZdBREREZmAgT0RE1I+NHTvW1ksgIiIiM7G0noiIyAn98MMPSEhIgJubG6Kjo/H66693eNzFpfW7d++GIAj43//+h6effhqhoaHw8vLCvHnzUFhYiKqqKtx7770ICAhAQEAA7rzzTlRXV/fRTwWUlJQgMjISU6ZMQWNjo/Hx9PR0eHp6YtGiRX22FiIiIlthRp6IiMjJ/PLLL5g/fz6SkpKwYcMG6HQ6vPbaaygsLDT5HH//+99x6aWXYs2aNTh//jyeeuopLFy4EAqFAmPGjMH69euRkpKCv//97/D29sbbb7/d5fn0ej30en237ysIAuRyeafPBwQEYMOGDbjkkkvw9NNPY+XKlaitrcWf//xnDBw4EB988IHJPyMREZGjYiBPRETkZJ599lkEBwdjx44dUCqVAIArr7wSgwYNMvkco0ePxqeffmr8/tSpU1i1ahUeffRR/Otf/wIAzJo1C/v378fnn3/ebSD/4osvYvny5d2+b1RUFM6fP9/lMVOnTsX//d//4emnn8aMGTPw7bffIisrC7///js8PT27/+GIiIgcHAN5IiIiJ1JTU4NDhw7hwQcfNAbxAODt7Y158+bhs88+M+k811xzTZvvR4wYAQC4+uqr2z3+7bfforq6Gl5eXp2e79577213zo64ubmZtL6//vWv2LNnDxYuXAitVotPPvkEo0aNMum1REREjo6BPBERkRMpLy+HXq9HSEhIu+c6eqwzfn5+bb53dXXt8nGtVttlIB8SEoKgoKBu3/fi8XhdHXfHHXfghx9+QEhICPfGExFRv8Jmd0RERE5kwIABEAQBBQUF7Z7r6LG+8uKLL8LFxaXbryFDhph0PrVajYceeggJCQkoLS3FU089ZeWfgIiIyH4wI09EROREPD09MXHiRGzatAn/+te/jOX1VVVV2LJli83WZcnSep1Oh4ULF0IQBPz000/4/PPP8dRTT+GSSy7BDTfcYInlEhER2TUG8kRERE7mpZdewpw5czBr1iw8+eST0Ol0ePXVV+Hp6YmysjKbrCksLAxhYWEWOdeyZcuwd+9ebN++HSEhIXjyySfx66+/YvHixRg7diyio6Mt8j5ERET2iqX1RERETmbWrFn49ttvUVlZiQULFuCJJ57An/70J9x11122Xlqv7dixAytWrMDzzz+Pyy+/3Pj4mjVr4OPjgwULFqChocGGKyQiIrI+QRRF0daLICIiIiIiIiLTMCNPRERERERE5EAYyBMRERERERE5EAbyRERERERERA6EgTwRERERERGRA2EgT0RERERERORAOEe+A3q9Hvn5+fD29oYgCLZeDhERERERETk5URRRVVWFsLAwyGRd59wZyHcgPz8fkZGRtl4GERERERER9TM5OTmIiIjo8hgG8h3w9vYGYPg/0MfHx8arISIiIiIiImdXWVmJyMhIYzzaFQbyHZDK6X18fBjIExERERERUZ8xZXs3m90RERERERERORAG8kREREREREQOhIE8ERERERERkQNhIE9ERERERETkQBjIExERERERETkQBvJEREREREREDoSBPBEREREREZEDYSBPRERERERE5EAYyBMRERERERE5EAbyRERERERERA7E5oH8+++/j+joaCiVSiQmJmLv3r0mve63336DQqFAQkJCm8fXrFkDQRDafWm1WiusnoiIiIiIiKhv2TSQ37hxIx577DE8++yzSElJwfTp0zF37lxkZ2d3+TqNRoPbb78dl19+eYfP+/j4QK1Wt/lSKpXW+BGIiIiIiIiI+pRNA/mVK1di8eLFuPvuuzFixAisWrUKkZGRWL16dZevu++++3DLLbcgKSmpw+cFQUBISEibLyIiIiIiIiJnYLNAvqGhAYcPH8bs2bPbPD579mzs27ev09d9+umnyMzMxLJlyzo9prq6GlFRUYiIiMA111yDlJSULtdSX1+PysrKNl9ERERERETk2HR6EfszS7E5NQ/7M0uh04u2XpJFKGz1xiUlJdDpdAgODm7zeHBwMAoKCjp8TUZGBp555hns3bsXCkXHSx8+fDjWrFmDUaNGobKyEm+99RamTp2Ko0ePIjY2tsPXrFixAsuXL+/dD0RERERERER2Y2uaGsu3pEOtaemXFqpSYtm8OMyJD7XhynrP5s3uBEFo870oiu0eAwCdTodbbrkFy5cvx9ChQzs93+TJk3HbbbdhzJgxmD59Or744gsMHToU77zzTqevWbp0KTQajfErJyen5z8QERERERER2dTWNDUeWHekTRAPAAUaLR5YdwRb09Q2Wpll2CwjHxAQALlc3i77XlRU1C5LDwBVVVX4448/kJKSgocffhgAoNfrIYoiFAoFtm/fjssuu6zd62QyGSZMmICMjIxO1+Lm5gY3N7de/kRERERERERkazq9iOVb0tFREb0IQACwfEs6ZsWFQC5rn0R2BDbLyLu6uiIxMRE7duxo8/iOHTswZcqUdsf7+Pjg+PHjSE1NNX7df//9GDZsGFJTUzFp0qQO30cURaSmpiI01LFLJ4iIiIiIiKh7B7PK2mXiWxMBqDVaHMwq67tFWZjNMvIA8MQTT2DRokUYP348kpKS8NFHHyE7Oxv3338/AEPJe15eHtauXQuZTIb4+Pg2rw8KCoJSqWzz+PLlyzF58mTExsaisrISb7/9NlJTU/Hee+/16c9GREREREREfa+oqvMgvifH2SObBvILFixAaWkpXnzxRajVasTHx+PHH39EVFQUAECtVnc7U/5iFRUVuPfee1FQUACVSoWxY8diz549mDhxojV+BCIiIiIiIrIjQd5Kix5njwRRFJ2j/74FVVZWQqVSQaPRwMfHx9bLISIiIiIiIhPp9CKmvboTBRpth/vkBQAhKiWSn77MrvbImxOH2rxrPREREREREZGlyGUCls2L6/A5KWxfNi/OroJ4czGQJyIiIiIiIqcyJz4Uq28bBw9XeZvHQ1RKrL5tnMPPkbfpHnkiIiIiIiIia5gTH4ov/8jBL6eK8efxEbhhbAQmRvs5dCZewkCeiIiIiIiInFJehaEz/dWjQpE0xN/Gq7EcltYTERERERGR0xFFETlltQCASD8PG6/GshjIExERERERkdMpr21ETYMOABDu627j1VgWA3kiIiIiIiJyOlI2PsjbDUoXeTdHOxYG8kREREREROR0csqds6weYCBPRERERERETiinrA4AEDnAucrqAQbyRERERERE5ISYkSciIiIiIiJyIMaO9QMYyBMRERERERHZvbxyQ2l9hB9L64mIiIiIiIjsml4vIrdc2iPPjDwRERERERGRXSuqqkeDTg+5TECoSmnr5VgcA3kiIiIiIiJyKlKju1CVEgq584W9zvcTERERERERUb/mzI3uAAbyRERERERE5GSMM+SdsNEdwECeiIiIiIiInIxxhjwz8kRERERERET2z1ha78dAnoiIiIiIiMjuGUfPsbSeiIiIiIiIyL416vRQa5x3hjzAQJ6IiIiIiIiciLpCC70IuClkCPR2s/VyrIKBPBERERERETkNqdFd+AB3CIJg49VYBwN5IiIiIiIichrOPkMeYCBPRERERERETsQ4es5JG90BDOSJiIiIiIjIieSUOXejO4CBPBERERERETmRlow8A3kiIiIiIiIiu2ecIc+MPBEREREREZF90zbqUFxVD4B75ImIiIiIiIjsXm5zWb23mwIqdxcbr8Z6GMgTERERERGRU5Aa3TnzDHmAgTwRERERERE5if7Q6A5gIE9EREREREROIqesOZB34kZ3AAN5IiIiIiIichLGGfJO3OgOYCBPRERERERETsJYWs+MPBEREREREZH9M86Q5x55IiIiIiIiIvtWqW2Epq4RABAxgKX1RERERERERHZNanTn7+kKTzeFjVdjXQzkiYiIiIiIyOFJje6cPRsPMJAnIiIiIiIiJ5Db3Oguwsn3xwMM5ImIiIiIiMgJ9JcZ8gADeSIiIiIiInICOeX9Y4Y8wECeiIiIiIiInAAz8kREREREREQOQhTFfjNDHrCDQP79999HdHQ0lEolEhMTsXfvXpNe99tvv0GhUCAhIaHdc19//TXi4uLg5uaGuLg4fPPNNxZeNREREREREdmL0poG1DXqIAhAmK/S1suxOpsG8hs3bsRjjz2GZ599FikpKZg+fTrmzp2L7OzsLl+n0Whw++234/LLL2/33P79+7FgwQIsWrQIR48exaJFi3DTTTfh999/t9aPQURERERERDYkldWH+CjhppDbeDXWJ4iiKNrq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vCNPRFSfsJAnIiIi0rjY0AZ4olssAOCvG3+CySQAgJyCqwA4tJ6IqL5hIU9ERETkBibc0xKBvl5INxbh05QcAEBOAfeQJyKqj1jIExEREbmBhg18MK5PCwDAu1t+ws7jeZah9ZHBvq5MjYiInIyFPBEREZGbeLpnHBr6e8NYVIKnVh7EbyPs8dCSvdicZnRtckRE5DQs5ImIiIjcxM7jefj1alml188VFeOPa35gMU9EVE+wkCciIiJyA+UmwcwNx6o89tuNeczccAzl5tv0RETksVjIExEREbmBA1kXYSwstnlcABgLi3Eg66LzkiIiIpdgIU9ERETkBvIu2S7ib+c8IiJyXyzkiYiIiNxAk8CarUxf0/OIiMh9sZAnIiIicgNd4xshMtgXio3jCiq2oesa38iZaRERkQuwkCciIiJyA3qdghlDEwGgUjFvfj5jaCL0OlulPhEReQoW8kRERERuYnBSJJY80RERwdbD5yOCfbHkiY4YnBTposyIiMiZvFydABERERHV3OCkSAxIjMCBrIvIu1SMJoEVw+l5J56IqP5gIU9ERETkZvQ6Bd0TQl2dBhERuQiH1hMRERERERG5ERbyRERERERERG6EhTwRERERERGRG2EhT0RERERERORGXF7IL168GPHx8fD19UWnTp3w7bff2j3/m2++QadOneDr64vmzZtj6dKlVsdXrVoFRVEqPYqLi+vyMoiIiIiIiIicwqWF/Pr16zFp0iRMmzYNKSkp6NWrF+69915kZ2dXeX5WVhbuu+8+9OrVCykpKXjttdcwYcIE/Pvf/7Y6LygoCEaj0erh6+tbZUwiIiIiIiIid6KIiLjqze+66y507NgRS5YssbzWpk0bDB8+HG+++Wal81955RV8/vnnSE9Pt7w2duxYHD58GHv37gVQcUd+0qRJKCgoqHEeJSUlKCkpsTwvKipCTEwMCgsLERQUdBtXRkRERERERFRzRUVFCA4OrlEd6rI78qWlpTh06BAGDhxo9frAgQOxZ8+eKtvs3bu30vmDBg3C999/j7KyMstrly9fRmxsLKKjo/H73/8eKSkpdnN58803ERwcbHnExMTc5lURERERERER1S2XFfIXLlxAeXk5wsPDrV4PDw9Hbm5ulW1yc3OrPP/69eu4cOECAKB169ZYtWoVPv/8c/zzn/+Er68vevbsiYyMDJu5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HlofFxcHAHjggQegKAri4uKwatUqtG3bFgDQvHlzKIqCkydPVnoPk8mEWbNmITo6GgaDAR06dMDmzZutznnllVdwxx13wN/fH82bN8frr7+OsrIyAMCqVaswc+ZMHD58GIqiQFEUrFq1CgAwefJkTJgwAa+++iruvPNOtGzZEg899BAMBoNV/E2bNuGrr77Cu+++q9KfHBERkfaxkCciIvJAH3zwAby8vLB//34sXLgQ8+bNw/Llyyudd/DgQQDAypUrYTQacfDgQYwYMQJff/01AODAgQMwGo2IiYmp1HbBggWYM2cO3n33XRw5cgSDBg3C/fffj4yMDMs5gYGBWLVqFY4dO4YFCxZg2bJlmDdvHgBgxIgReOmll3DnnXfCaDTCaDRixIgRyMvLw/79+9GkSRP06NED4eHhuPvuu7F7926r9z937hyeffZZ/OMf/3D6iAEiIiJXYiFPRETkgWJiYjBv3jy0atUKjz/+OF588UVLAX2zsLAwAEBISAgiIiIQFhYGPz8/hIaGWo5HRERAr9dXavvuu+/ilVdewaOPPopWrVrhrbfeQocOHawW0ps+fTp69OiBuLg4DB06FC+99BI++ugjAICfnx8CAgLg5eWFiIgIREREwM/PD5mZmQAq5s8/++yz2Lx5Mzp27Ih+/fpZviQQETz11FMYO3YsOnfurOqfHRERkdaxkCciIvJA3bp1g6Iolufdu3dHRkYGysvLVYlfVFSEs2fPomfPnlav9+zZE+np6ZbnH3/8MX73u98hIiICAQEBeP3115GdnW03tslkAgA8//zzePrpp5GcnGz5UmLFihUAgEWLFqGoqAhTp05V5XqIiIjcCQt5IiIium03f1kAVNwpN7+2b98+PProo7j33nvxxRdfICUlBdOmTUNpaandmJGRkQCAxMREq9fbtGlj+RJg+/bt2LdvHwwGA7y8vNCiRQsAQOfOnfHkk0+qcm1ERERa5eXqBIiIiEh9+/btq/S8ZcuWVQ6R9/b2rvWd+qCgIERFRWH37t3o3bu35fU9e/aga9euAIDvvvsOsbGxmDZtmuX4qVOnrOL4+PhUeu+4uDhERUXh+PHjVq///PPPuPfeewEACxcuxF/+8hfLsbNnz2LQoEFYv3497rrrrlpdCxERkbthIU9EROSBTp8+jSlTpuD555/HDz/8gEWLFmHOnDlVnhsXF4dt27ahZ8+eMBgMaNiwYY3e4+WXX8aMGTOQkJCADh06YOXKlUhNTcXatWsBAC1atEB2djY+/PBDdOnSBV9++SU+/fTTSu+dlZWF1NRUREdHIzAwEAaDwRK7ffv26NChAz744AP89NNP+PjjjwEAzZo1s4oTEBAAAEhISEB0dHSt/qyIiIjcDQt5IiIiDzR69Ghcu3YNXbt2hV6vx4svvojnnnuuynPnzJmDKVOmYNmyZWjatGmVW81VZcKECSgqKsJLL72EvLw8JCYm4vPPP0fLli0BAMOGDcPkyZMxfvx4lJSUYMiQIXj99dfxxhtvWGI8+OCD+OSTT9C3b18UFBRg5cqVeOqppzBp0iQUFxdj8uTJuHjxItq3b4+tW7ciISHB0T8aIiIit6eIeVNZIiIiIiIiItI8LnZHRERERERE5EZYyBMRERERERG5ERbyRERERERERG6EhTwRERERERGRG2EhT0RERERERORGWMgTERERERERuREW8kRERERERERuhIU8ERERERERkRthIU9ERERERETkRljIExEREREREbkRFvJEREREREREbuT/AbDYFcm7UZZaAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 1200x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot_mantissa_importances(info_per_bit_dequan_trunc1, \"Tair\", \"x\", bit_filter=\"m\")"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "896dc048-3b94-4c1e-b73c-c3b31c049575",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Truncation MAE: 1 bit => 0.206 °C, 2 bit => 0.514 °C, 3 bit => 1.162 °C\n"
]
}
],
"source": [
"mae_trunc1 = xs.mae(ds.Tair, dequantized_trunc1.Tair, dim=[\"time\", \"y\", \"x\"], skipna=True)\n",
"mae_trunc2 = xs.mae(ds.Tair, dequantized_trunc2.Tair, dim=[\"time\", \"y\", \"x\"], skipna=True)\n",
"mae_trunc3 = xs.mae(ds.Tair, dequantized_trunc3.Tair, dim=[\"time\", \"y\", \"x\"], skipna=True)\n",
"\n",
"print(f\"Truncation MAE: 1 bit => {mae_trunc1:.3f} °C, 2 bit => {mae_trunc2:.3f} °C, 3 bit => {mae_trunc3:.3f} °C\")"
]
},
{
"cell_type": "markdown",
"id": "e4228bb1-2d92-43df-8259-b014a80bd0b8",
"metadata": {},
"source": [
"While the leading mantissa bits remain identical, the only change from removing bits in the quantized data appears in the tail mantissa bits. The spurious information is therefore not removed."
]
},
{
"cell_type": "markdown",
"id": "ee41652b-88be-4a50-9358-fef49ebe0bed",
"metadata": {},
"source": [
"### Adding uniform noise\n",
"[GitHub - #209](https://github.com/observingClouds/xbitinfo/issues/209#issuecomment-1942187714) suggest to just add random uniform noise to the data in order to clear the artificial information."
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "f0f9e12a-da78-4ed6-857c-00da2416d980",
"metadata": {},
"outputs": [],
"source": [
"sig_fig = -2\n",
"a = 0.5 * 10**sig_fig\n",
"noise = np.random.uniform(-a, a, size=_dequantized.shape)\n",
"\n",
"dequantized_noise = xr.DataArray(\n",
" data=_dequantized + noise,\n",
" dims=[\"time\", \"y\", \"x\"],\n",
" coords=dict(\n",
" time=ds.time,\n",
" )\n",
").to_dataset(name=\"Tair\")"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "f71defc2-c44e-457c-9522-0972c4ff03d9",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Processing var: Tair for dim: y: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.56it/s]\n",
"Processing var: Tair for dim: x: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.58it/s]\n"
]
},
{
"data": {
"text/html": [
"<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
"<defs>\n",
"<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
"<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"</symbol>\n",
"<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
"<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"</symbol>\n",
"</defs>\n",
"</svg>\n",
"<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
" *\n",
" */\n",
"\n",
":root {\n",
" --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
" --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
" --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
" --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
" --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
" --xr-background-color: var(--jp-layout-color0, white);\n",
" --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
" --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
"}\n",
"\n",
"html[theme=dark],\n",
"body[data-theme=dark],\n",
"body.vscode-dark {\n",
" --xr-font-color0: rgba(255, 255, 255, 1);\n",
" --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
" --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
" --xr-border-color: #1F1F1F;\n",
" --xr-disabled-color: #515151;\n",
" --xr-background-color: #111111;\n",
" --xr-background-color-row-even: #111111;\n",
" --xr-background-color-row-odd: #313131;\n",
"}\n",
"\n",
".xr-wrap {\n",
" display: block !important;\n",
" min-width: 300px;\n",
" max-width: 700px;\n",
"}\n",
"\n",
".xr-text-repr-fallback {\n",
" /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
" display: none;\n",
"}\n",
"\n",
".xr-header {\n",
" padding-top: 6px;\n",
" padding-bottom: 6px;\n",
" margin-bottom: 4px;\n",
" border-bottom: solid 1px var(--xr-border-color);\n",
"}\n",
"\n",
".xr-header > div,\n",
".xr-header > ul {\n",
" display: inline;\n",
" margin-top: 0;\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-obj-type,\n",
".xr-array-name {\n",
" margin-left: 2px;\n",
" margin-right: 10px;\n",
"}\n",
"\n",
".xr-obj-type {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-sections {\n",
" padding-left: 0 !important;\n",
" display: grid;\n",
" grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
"}\n",
"\n",
".xr-section-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-section-item input {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-item input + label {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label {\n",
" cursor: pointer;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label:hover {\n",
" color: var(--xr-font-color0);\n",
"}\n",
"\n",
".xr-section-summary {\n",
" grid-column: 1;\n",
" color: var(--xr-font-color2);\n",
" font-weight: 500;\n",
"}\n",
"\n",
".xr-section-summary > span {\n",
" display: inline-block;\n",
" padding-left: 0.5em;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-summary-in + label:before {\n",
" display: inline-block;\n",
" content: '►';\n",
" font-size: 11px;\n",
" width: 15px;\n",
" text-align: center;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label:before {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label:before {\n",
" content: '▼';\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label > span {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-summary,\n",
".xr-section-inline-details {\n",
" padding-top: 4px;\n",
" padding-bottom: 4px;\n",
"}\n",
"\n",
".xr-section-inline-details {\n",
" grid-column: 2 / -1;\n",
"}\n",
"\n",
".xr-section-details {\n",
" display: none;\n",
" grid-column: 1 / -1;\n",
" margin-bottom: 5px;\n",
"}\n",
"\n",
".xr-section-summary-in:checked ~ .xr-section-details {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-array-wrap {\n",
" grid-column: 1 / -1;\n",
" display: grid;\n",
" grid-template-columns: 20px auto;\n",
"}\n",
"\n",
".xr-array-wrap > label {\n",
" grid-column: 1;\n",
" vertical-align: top;\n",
"}\n",
"\n",
".xr-preview {\n",
" color: var(--xr-font-color3);\n",
"}\n",
"\n",
".xr-array-preview,\n",
".xr-array-data {\n",
" padding: 0 5px !important;\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-array-data,\n",
".xr-array-in:checked ~ .xr-array-preview {\n",
" display: none;\n",
"}\n",
"\n",
".xr-array-in:checked ~ .xr-array-data,\n",
".xr-array-preview {\n",
" display: inline-block;\n",
"}\n",
"\n",
".xr-dim-list {\n",
" display: inline-block !important;\n",
" list-style: none;\n",
" padding: 0 !important;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list li {\n",
" display: inline-block;\n",
" padding: 0;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list:before {\n",
" content: '(';\n",
"}\n",
"\n",
".xr-dim-list:after {\n",
" content: ')';\n",
"}\n",
"\n",
".xr-dim-list li:not(:last-child):after {\n",
" content: ',';\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-has-index {\n",
" font-weight: bold;\n",
"}\n",
"\n",
".xr-var-list,\n",
".xr-var-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-var-item > div,\n",
".xr-var-item label,\n",
".xr-var-item > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-even);\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-var-item > .xr-var-name:hover span {\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-var-list > li:nth-child(odd) > div,\n",
".xr-var-list > li:nth-child(odd) > label,\n",
".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-odd);\n",
"}\n",
"\n",
".xr-var-name {\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-var-dims {\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-var-dtype {\n",
" grid-column: 3;\n",
" text-align: right;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-preview {\n",
" grid-column: 4;\n",
"}\n",
"\n",
".xr-index-preview {\n",
" grid-column: 2 / 5;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-name,\n",
".xr-var-dims,\n",
".xr-var-dtype,\n",
".xr-preview,\n",
".xr-attrs dt {\n",
" white-space: nowrap;\n",
" overflow: hidden;\n",
" text-overflow: ellipsis;\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-var-name:hover,\n",
".xr-var-dims:hover,\n",
".xr-var-dtype:hover,\n",
".xr-attrs dt:hover {\n",
" overflow: visible;\n",
" width: auto;\n",
" z-index: 1;\n",
"}\n",
"\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" display: none;\n",
" background-color: var(--xr-background-color) !important;\n",
" padding-bottom: 5px !important;\n",
"}\n",
"\n",
".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
".xr-var-data-in:checked ~ .xr-var-data,\n",
".xr-index-data-in:checked ~ .xr-index-data {\n",
" display: block;\n",
"}\n",
"\n",
".xr-var-data > table {\n",
" float: right;\n",
"}\n",
"\n",
".xr-var-name span,\n",
".xr-var-data,\n",
".xr-index-name div,\n",
".xr-index-data,\n",
".xr-attrs {\n",
" padding-left: 25px !important;\n",
"}\n",
"\n",
".xr-attrs,\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" grid-column: 1 / -1;\n",
"}\n",
"\n",
"dl.xr-attrs {\n",
" padding: 0;\n",
" margin: 0;\n",
" display: grid;\n",
" grid-template-columns: 125px auto;\n",
"}\n",
"\n",
".xr-attrs dt,\n",
".xr-attrs dd {\n",
" padding: 0;\n",
" margin: 0;\n",
" float: left;\n",
" padding-right: 10px;\n",
" width: auto;\n",
"}\n",
"\n",
".xr-attrs dt {\n",
" font-weight: normal;\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-attrs dt:hover span {\n",
" display: inline-block;\n",
" background: var(--xr-background-color);\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-attrs dd {\n",
" grid-column: 2;\n",
" white-space: pre-wrap;\n",
" word-break: break-all;\n",
"}\n",
"\n",
".xr-icon-database,\n",
".xr-icon-file-text2,\n",
".xr-no-icon {\n",
" display: inline-block;\n",
" vertical-align: middle;\n",
" width: 1em;\n",
" height: 1.5em !important;\n",
" stroke-width: 0;\n",
" stroke: currentColor;\n",
" fill: currentColor;\n",
"}\n",
"</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) &lt;U1 8B &#x27;x&#x27; &#x27;y&#x27;\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B 7 7</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-fab9d3ee-d07d-4d57-96e1-d1a9b01dd1f6' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-fab9d3ee-d07d-4d57-96e1-d1a9b01dd1f6' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>dim</span>: 2</li><li><span class='xr-has-index'>inflevel</span>: 1</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-35943e59-20cb-440e-8b0e-2856ab64b125' class='xr-section-summary-in' type='checkbox' checked><label for='section-35943e59-20cb-440e-8b0e-2856ab64b125' class='xr-section-summary' >Coordinates: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>dim</span></div><div class='xr-var-dims'>(dim)</div><div class='xr-var-dtype'>&lt;U1</div><div class='xr-var-preview xr-preview'>&#x27;x&#x27; &#x27;y&#x27;</div><input id='attrs-f7f17c47-4d4b-4368-8169-cc6b9b4c3f25' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-f7f17c47-4d4b-4368-8169-cc6b9b4c3f25' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-e09b9840-97d0-43c1-80c3-caee56ff57e4' class='xr-var-data-in' type='checkbox'><label for='data-e09b9840-97d0-43c1-80c3-caee56ff57e4' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>description :</span></dt><dd>dimension of the source dataset along which the bitwise information has been analysed.</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;&lt;U1&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>inflevel</span></div><div class='xr-var-dims'>(inflevel)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>0.99</div><input id='attrs-ef9101c9-7d77-419d-87c3-7a2ff38d6d14' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-ef9101c9-7d77-419d-87c3-7a2ff38d6d14' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-b420e15b-dc4e-4eac-acb2-0b8edc631c57' class='xr-var-data-in' type='checkbox'><label for='data-b420e15b-dc4e-4eac-acb2-0b8edc631c57' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([0.99])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-5eb543f0-5ef6-4e3a-a33f-b315e0d7b20e' class='xr-section-summary-in' type='checkbox' checked><label for='section-5eb543f0-5ef6-4e3a-a33f-b315e0d7b20e' class='xr-section-summary' >Data variables: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>Tair</span></div><div class='xr-var-dims'>(dim, inflevel)</div><div class='xr-var-dtype'>int64</div><div class='xr-var-preview xr-preview'>7 7</div><input id='attrs-7fbdcf43-62ce-43c6-8fe3-e7da419f7ee0' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-7fbdcf43-62ce-43c6-8fe3-e7da419f7ee0' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-222c2f01-5e9d-40b5-bd05-dd59a893ec85' class='xr-var-data-in' type='checkbox'><label for='data-222c2f01-5e9d-40b5-bd05-dd59a893ec85' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([[7],\n",
" [7]])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-882f4746-229d-488b-8da5-b6f24098273d' class='xr-section-summary-in' type='checkbox' ><label for='section-882f4746-229d-488b-8da5-b6f24098273d' class='xr-section-summary' >Indexes: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>dim</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-a90c43d7-1dd3-4f2f-b116-a8ea7b152a49' class='xr-index-data-in' type='checkbox'/><label for='index-a90c43d7-1dd3-4f2f-b116-a8ea7b152a49' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;object&#x27;, name=&#x27;dim&#x27;))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>inflevel</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-d3d36fa4-b754-4104-8e30-2686717585f8' class='xr-index-data-in' type='checkbox'/><label for='index-d3d36fa4-b754-4104-8e30-2686717585f8' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([0.99], dtype=&#x27;float64&#x27;, name=&#x27;inflevel&#x27;))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-7960b56f-8cf7-402d-9d94-cd224dc34cf4' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-7960b56f-8cf7-402d-9d94-cd224dc34cf4' class='xr-section-summary' title='Expand/collapse section'>Attributes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'></dl></div></li></ul></div></div>"
],
"text/plain": [
"<xarray.Dataset> Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) <U1 8B 'x' 'y'\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B 7 7"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"info_per_bit_dequan_noise = xb.get_bitinformation(dequantized_noise.isel(time=slice(0, 10)), dim=[\"y\", \"x\"], implementation=\"python\")\n",
"keepbits_dequan_noise = xb.get_keepbits(info_per_bit_dequan_noise, inf_level=0.99)\n",
"keepbits_dequan_noise"
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "f892f233-9bd6-4373-9366-01cfd3e7b15f",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA/IAAAIyCAYAAABo/fE4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAByxElEQVR4nO3deXhU5fnG8ftMVgJZCJCNhCSCChEhgCJLQVBZFBGXCqJCVdTiBoKtFhER+rPUBUStS9UKWhXRum8gCoIIiEKislRRAmFJCFsWlgRI3t8fkCkh20wyk1ny/VzXXGXO8sx94Jj0mXPO+1rGGCMAAAAAAOATbJ4OAAAAAAAAHEcjDwAAAACAD6GRBwAAAADAh9DIAwAAAADgQ2jkAQAAAADwITTyAAAAAAD4EBp5AAAAAAB8CI08AAAAAAA+hEYeAAAAAAAfQiMPAEAj8dBDD8myrArLUlJSdMMNN3gmEAAAqJNATwcAAACe89577ykiIsLTMQAAgBNo5AEAaMS6dOni6QgAAMBJ3FoPAIAf+uSTT5Senq6QkBClpqbq8ccfr3K7U2+t/+qrr2RZlt544w3dd999io+PV7NmzTR06FDt2rVLRUVFuvXWW9WyZUu1bNlSN954ow4cONBARyXt2bNHSUlJ6tWrl44ePWpfvmHDBjVt2lSjRo1qsCwAAHgKV+QBAPAzX375pYYNG6aePXvqzTffVGlpqR599FHt2rXL4Rr333+/+vfvr7lz52rLli3605/+pJEjRyowMFCdO3fWvHnzlJGRofvvv1/h4eF66qmnaqxXVlamsrKyWj/XsiwFBARUu75ly5Z688031a9fP913332aNWuWDh06pKuvvlpt2rTR888/7/AxAgDgq2jkAQDwM5MnT1ZsbKwWLVqk0NBQSdKgQYOUkpLicI1OnTppzpw59vf//e9/NXv2bI0bN06PPfaYJGnAgAFauXKlXn/99Vob+enTp2vatGm1fm5ycrK2bNlS4za9e/fWww8/rPvuu099+/bV+++/r6ysLH377bdq2rRp7QcHAICPo5EHAMCPHDx4UN99951uv/12exMvSeHh4Ro6dKheeeUVh+pceumlFd536NBBkjRkyJBKy99//30dOHBAzZo1q7berbfeWqlmVUJCQhzK9+c//1nLli3TyJEjVVxcrJdeeklnn322Q/sCAODraOQBAPAj+/fvV1lZmeLi4iqtq2pZdaKjoyu8Dw4OrnF5cXFxjY18XFycYmJiav3cU6fHq2m7G264QZ988oni4uJ4Nh4A0Kgw2B0AAH6kefPmsixLubm5ldZVtayhTJ8+XUFBQbW+2rZt61C9nJwc3XHHHUpPT9fevXv1pz/9yc1HAACA9+CKPAAAfqRp06bq3r273n33XT322GP22+uLior00UcfeSyXK2+tLy0t1ciRI2VZlj777DO9/vrr+tOf/qR+/frpyiuvdEVcAAC8Go08AAB+5q9//asGDx6sAQMG6J577lFpaakeeeQRNW3aVPv27fNIpoSEBCUkJLik1tSpU/X111/r888/V1xcnO655x4tXbpUY8aMUZcuXZSamuqSzwEAwFtxaz0AAH5mwIABev/991VYWKgRI0Zo4sSJuuqqq3TTTTd5Olq9LVq0SDNmzNCUKVN04YUX2pfPnTtXERERGjFihI4cOeLBhAAAuJ9ljDGeDgEAAAAAABzDFXkAAAAAAHwIjTwAAAAAAD6ERh4AAAAAAB9CIw8AAAAAgA+hkQcAAAAAwIcwj3wVysrKtHPnToWHh8uyLE/HAQAAAAD4OWOMioqKlJCQIJut5mvuNPJV2Llzp5KSkjwdAwAAAADQyGzbtk2JiYk1bkMjX4Xw8HBJx/8CIyIiPJwGAAAAAODvCgsLlZSUZO9Ha0IjX4Xy2+kjIiJo5AEAAAAADcaRx7sZ7A4AAAAAAB9CIw8AAAAAgA+hkQcAAAAAwIfQyAMAAAAA4ENo5AEAAAAA8CE08gAAAAAA+BAaeQAAAAAAfAiNPAAAAAAAPoRGHgAAAAAAH0IjDwAAAACAD6GRBwAAAADAh9DIAwAAAADgQ2jkAQAAAADwIYGeDoC6Ky0zWp21T3lFxYoJD1X31GgF2CxPxwIAAAAAuBGNvI9asC5H0z7aoJyCYvuy+MhQTR2apsEd4z2YDAAAAADgTtxa74MWrMvRba+trdDES1JuQbFue22tFqzL8VAyAAAAAIC70cj7mNIyo2kfbZCpYl35smkfbVBpWVVbAAAAAAB8HY28j1mdta/SlfiTGUk5BcVanbWv4UIBAAAAABoMjbyPySuqvomvy3YAAAAAAN9CI+9jYsJDXbodAAAAAMC30Mj7mO6p0YqPDFV1k8xZOj56fffU6IaMBQAAAABoIDTyPibAZmnq0DRJqtTMl7+fOjSN+eQBAAAAwE/RyPugwR3j9dz1XRUXWfH2+fDQQD13fVfmkQcAAAAAP+bxRv7ZZ59VamqqQkND1a1bN3399dfVbvvuu+9qwIABatWqlSIiItSzZ08tXLiwwjZz586VZVmVXsXF/jX42+CO8Vp+3wWad0sPXd0tUZIU3TRYA9PiPJwMAAAAAOBOHm3k58+fr7vvvluTJ09WRkaG+vTpo4svvljZ2dlVbr9s2TINGDBAn376qdasWaP+/ftr6NChysjIqLBdRESEcnJyKrxCQ/1v8LcAm6WebVvoocvOUnhooLbsPaSlv+z2dCwAAAAAgBtZxhjjqQ8/77zz1LVrVz333HP2ZR06dNDll1+uGTNmOFTjrLPO0ogRI/Tggw9KOn5F/u6771Z+fr7DOUpKSlRSUmJ/X1hYqKSkJBUUFCgiIsLhOp70fx9v0EvLs9Tn9Jb695jzPB0HAAAAAOCEwsJCRUZGOtSHeuyK/JEjR7RmzRoNHDiwwvKBAwdqxYoVDtUoKytTUVGRoqMrjtB+4MABJScnKzExUZdeemmlK/anmjFjhiIjI+2vpKQk5w7GC4zumSLLkr7etEe/5hV5Og4AAAAAwE081sjv2bNHpaWlio2NrbA8NjZWubm5DtWYOXOmDh48qOHDh9uXtW/fXnPnztWHH36oefPmKTQ0VL1799amTZuqrTNp0iQVFBTYX9u2bavbQXlQmxZhuqjD8b/LuSu2eDYMAAAAAMBtPD7YnWVVnCbNGFNpWVXmzZunhx56SPPnz1dMTIx9eY8ePXT99derc+fO6tOnj9566y2dccYZevrpp6utFRISooiIiAovX3Rj7xRJ0jtrdqjg0FHPhgEAAAAAuIXHGvmWLVsqICCg0tX3vLy8SlfpTzV//nyNGTNGb731li666KIat7XZbDr33HNrvCLvL3qe1kJnxobr8NFSzf++6gEDAQAAAAC+zWONfHBwsLp166ZFixZVWL5o0SL16tWr2v3mzZunG264QW+88YaGDBlS6+cYY5SZman4eP+fW92yLPtV+VdWbFVpmcfGMQQAAAAAuIlHb62fOHGiXnrpJb388svauHGjJkyYoOzsbI0dO1bS8WfXR48ebd9+3rx5Gj16tGbOnKkePXooNzdXubm5KigosG8zbdo0LVy4UJs3b1ZmZqbGjBmjzMxMe01/d3mX1ooKC9KO/MNatGGXp+MAAAAAAFzMo438iBEjNHv2bE2fPl3p6elatmyZPv30UyUnJ0uScnJyKswp/89//lPHjh3THXfcofj4ePtr/Pjx9m3y8/N16623qkOHDho4cKB27NihZcuWqXv37g1+fJ4QGhSgkd3bSJLmfJPl4TQAAAAAAFfz6Dzy3sqZ+fu80c78w+rz6BKVlhl9Oq6P0hJ87xgAAAAAoDHxiXnk4T4JUU00uGOcJGnuCq7KAwAAAIA/oZH3Uzf2SpEkvZ+5U/sOHvFsGAAAAACAy9DI+6luyc11dutIHTlWpnmrmYoOAAAAAPwFjbyfOnkqun+v3KqjpWWeDQQAAAAAcAkaeT82pFO8WjYLUW5hsRasy/V0HAAAAACAC9DI+7GQwABddx5T0QEAAACAP6GR93PX9WijoABLa7Pz9cO2fE/HAQAAAADUE428n4sJD9WlnRIkSXNXbPFsGAAAAABAvdHINwI3nJiK7uMfdyqvsNizYQAAAAAA9UIj3wh0TopS1zZROlpq9Nq3TEUHAAAAAL6MRr6RuLF3qiTpjW+3quRYqYfTAAAAAADqika+kRjcMU5xEaHac+CIPv4hx9NxAAAAAAB1RCPfSAQF2DSqZ7Kk44PeGWM8nAgAAAAAUBc08o3IyO5tFBJo0087CrRm635PxwEAAAAA1AGNfCMS3TRYl6e3liTN+WaLZ8MAAAAAAOqERr6RuaF3iiRpwfpc7cw/7NkwAAAAAACn0cg3Mh3iI9TjtGiVlhn9e9VWT8cBAAAAADiJRr4RKp+Kbt7qbB0+wlR0AAAAAOBLAj0dAA3vog6xSmzeRNv3H9asRT+rY+tIxYSHqntqtAJslqfjAQAAAABqQCPfCAXYLJ2XGq3t+3foxa+z7MvjI0M1dWiaBneM92A6AAAAAEBNuLW+EVqwLkfvrt1RaXluQbFue22tFqzL8UAqAAAAAIAjaOQbmdIyo2kfbZCpYl35smkfbVBpWVVbAAAAAAA8jUa+kVmdtU85BcXVrjeScgqKtTprX8OFAgAAAAA4jEa+kckrqr6Jr8t2AAAAAICGRSPfyMSEh7p0OwAAAABAw6KRb2S6p0YrPjJU1U0yZ+n46PXdU6MbMhYAAAAAwEE08o1MgM3S1KFpklSpmS9/P3VoGvPJAwAAAICXopFvhAZ3jNdz13dVXGTF2+fjIkP13PVdmUceAAAAALxYoKcDwDMGd4zXgLQ4ffLTTo2bl6kAm7T0z/0VHMh3OwAAAADgzejaGrEAm6VLz05QcKBNpWXSrkJGqgcAAAAAb0cj38jZbJbaRIdJkrbsPejhNAAAAACA2tDIQyktTjTye2jkAQAAAMDb0chDKS2aSpK27D3k4SQAAAAAgNrQyEPJLY838lu5tR4AAAAAvB6NPJR64op8FrfWAwAAAIDXo5GHkk88I79t32GVlhkPpwEAAAAA1IRGHkqIaqLgAJuOlJZpZ/5hT8cBAAAAANSARh4KsFlKim4iSdrKgHcAAAAA4NVo5CHp5JHreU4eAAAAALwZjTwkSSknRq5nLnkAAAAA8G408pAkpZwY8I655AEAAADAu9HIQ5KUzK31AAAAAOATaOQhSUo9cWt99t5DTEEHAAAAAF6MRh6SpPjIUAUFWDpSWqbcwmJPxwEAAAAAVINGHpKkwACbkqJPPCfPgHcAAAAA4LVo5GHHFHQAAAAA4P1o5GFnb+S5Ig8AAAAAXotGHnYpLZmCDgAAAAC8HY087MqnoNvKrfUAAAAA4LVo5GGXam/kD6mMKegAAAAAwCvRyMMuISpUgTZLJceYgg4AAAAAvBWNPOwCA2xqwxR0AAAAAODVaORRQXILBrwDAAAAAG9GI48KGPAOAAAAALwbjTwqSG15vJHP4tZ6AAAAAPBKNPKooPzW+q3cWg8AAAAAXolGHhWUX5HfsvcgU9ABAAAAgBeikUcFraOa2Keg21XEFHQAAAAA4G1o5FFBYIBNic2bSJK27OH2egAAAADwNjTyqCTlpNvrAQAAAADehUYelaS0oJEHAAAAAG9FI49KUk6MXL+FKegAAAAAwOvQyKOS5BO31jMFHQAAAAB4Hxp5VHLyrfXGMAUdAAAAAHgTGnlUkti8iQJsloqPlmlXYYmn4wAAAAAATkIjj0qCTp6CjgHvAAAAAMCr0MijSvbb6xnwDgAAAAC8Co08qmQfuZ4B7wAAAADAq9DIo0rJLcpHrueKPAAAAAB4Exp5VCn1xBR0WdxaDwAAAABehUYeVUo+cWv91r2HmIIOAAAAALyIxxv5Z599VqmpqQoNDVW3bt309ddfV7vtu+++qwEDBqhVq1aKiIhQz549tXDhwkrbvfPOO0pLS1NISIjS0tL03nvvufMQ/FJi8zAF2CwdPlqqvCKmoAMAAAAAb+HRRn7+/Pm6++67NXnyZGVkZKhPnz66+OKLlZ2dXeX2y5Yt04ABA/Tpp59qzZo16t+/v4YOHaqMjAz7NitXrtSIESM0atQo/fDDDxo1apSGDx+ub7/9tqEOyy8EB9rUOurEFHTcXg8AAAAAXsMyHrxv+rzzzlPXrl313HPP2Zd16NBBl19+uWbMmOFQjbPOOksjRozQgw8+KEkaMWKECgsL9dlnn9m3GTx4sJo3b6558+Y5VLOwsFCRkZEqKChQRESEE0fkX0b961t9vWmPHr2qk4afm+TpOAAAAADgt5zpQz12Rf7IkSNas2aNBg4cWGH5wIEDtWLFCodqlJWVqaioSNHR0fZlK1eurFRz0KBBNdYsKSlRYWFhhRdOGvCOkesBAAAAwGt4rJHfs2ePSktLFRsbW2F5bGyscnNzHaoxc+ZMHTx4UMOHD7cvy83NdbrmjBkzFBkZaX8lJXH1WWIKOgAAAADwRh4f7M6yrArvjTGVllVl3rx5euihhzR//nzFxMTUq+akSZNUUFBgf23bts2JI/BfqS2Pj1yfteeQh5MAAAAAAMoFeuqDW7ZsqYCAgEpXyvPy8ipdUT/V/PnzNWbMGL399tu66KKLKqyLi4tzumZISIhCQkKcPAL/d/IVeUe/YAEAAAAAuJfHrsgHBwerW7duWrRoUYXlixYtUq9evardb968ebrhhhv0xhtvaMiQIZXW9+zZs1LNzz//vMaaqFpS8zDZLOnQkVLtPsAUdAAAAADgDTx2RV6SJk6cqFGjRumcc85Rz5499cILLyg7O1tjx46VdPyW9x07dujVV1+VdLyJHz16tJ588kn16NHDfuW9SZMmioyMlCSNHz9effv21SOPPKJhw4bpgw8+0BdffKHly5d75iB9WHCgTa2bN9G2fYe1Zc8hxYSHejoSAAAAADR6Hn1GfsSIEZo9e7amT5+u9PR0LVu2TJ9++qmSk5MlSTk5ORXmlP/nP/+pY8eO6Y477lB8fLz9NX78ePs2vXr10ptvvqk5c+aoU6dOmjt3rubPn6/zzjuvwY/PH6ScuL1+CwPeAQAAAIBX8Og88t6KeeT/Z8r76/TvVVt1e7+2undwe0/HAQAAAAC/5BPzyMM3JLc4PnL91r2MXA8AAAAA3oBGHjXi1noAAAAA8C408qhRSssTjfye41PQAQAAAAA8i0YeNUqKbiKbJR08Uqo9B454Og4AAAAANHo08qhRSGCAEqKaSOL2egAAAADwBjTyqJX9Ofk9NPIAAAAA4Gk08qgVI9cDAAAAgPegkUetUk8MeJfFrfUAAAAA4HE08qhV8olb67fSyAMAAACAx9HIo1apLY/fWr9lzyGmoAMAAAAAD6ORR60Sm4fJsqQDJce09yBT0AEAAACAJ9HIo1ahQQFKiDw+BR231wMAAACAZ9HIwyEpJ26vz9rDyPUAAAAA4Ek08nAIA94BAAAAgHegkYdDUk808ll7aOQBAAAAwJNo5OGQ5BbHb63fupdb6wEAAADAk2jk4ZCUlsevyG/Ze5Ap6AAAAADAg2jk4ZA20cenoCsqPqZ9TEEHAAAAAB5DIw+HhAYFKD4iVJK0hdvrAQAAAMBjaOThMPvt9Qx4BwAAAAAeQyMPhzEFHQAAAAB4Ho08HJba8vjI9dxaDwAAAACeE+jIRtHR0U4VtSxLa9euVXJycp1CwTuVX5HfwhV5AAAAAPAYhxr5/Px8zZ49W5GRkbVua4zR7bffrtLS0nqHg3dJOdHIZ+05PgWdZVkeTgQAAAAAjY9DjbwkXXPNNYqJiXFo27vuuqvOgeC9klscv7W+qPiY9h86quimwR5OBAAAAACNj0ONfFlZmVNFi4qK6hQG3i00KEDxkaHKKSjWlr0HaeQBAAAAwAMY7A5OSWHkegAAAADwKJc18vv379err77qqnLwUiknRq7P2sPI9QAAAADgCS5r5LOzs3XjjTe6qhy8FHPJAwAAAIBnOTzYXWFhYY3reS6+cSi/tX7LHhp5AAAAAPAEhxv5qKioGqcbYzqyxqH81vote7m1HgAAAAA8weFGPjw8XJMnT9Z5551X5fpNmzbpj3/8o8uCwTslRx+/Il9w+KjyDx1RVBgj1wMAAABAQ3K4ke/atask6fzzz69yfVRUlIwxrkkFr9UkOEBxEaHKLSxW1p6D6tKGRh4AAAAAGpLDg91de+21Cg0NrXZ9XFycpk6d6pJQ8G7JLY7fXr+V2+sBAAAAoME5fEX+lltuqXF9bGwsjXwjkdqyqb7N2qcsBrwDAAAAgAbnsunn0HgwBR0AAAAAeI5DjfxTTz2l4uJih4s+//zzTEfnx1IZuR4AAAAAPMahRn7ChAlONeb33nuvdu/eXedQ8G7lV+S3cEUeAAAAABqcQ8/IG2N04YUXKjDQsUfqDx8+XK9Q8G7lg93lH2IKOgAAAABoaA515s4OYjds2DBFR0fXKRC8X1hwoGIjQrSrsERb9h5SOo08AAAAADQYtzTy8H/JLZpqV2GJtu49qPSkKE/HAQAAAIBGg1HrUSep5c/J72HAOwAAAABoSDTyqJNk+8j1DHgHAAAAAA2JRh51ksLI9QAAAADgETTyqBN7I7+HRh4AAAAAGhKNPOqkfAq6/YeOquDQUQ+nAQAAAIDGw7GJ4U9SWlqquXPn6ssvv1ReXp7KysoqrF+8eLHLwsF7NQ0JVEx4iPKKSrR130F1CovydCQAAAAAaBScbuTHjx+vuXPnasiQIerYsaMsy3JHLviAlBZNlVdUoqw9B9UpMcrTcQAAAACgUXC6kX/zzTf11ltv6ZJLLnFHHviQ5BZhWr1ln7buZQo6AAAAAGgoTj8jHxwcrHbt2rkjC3xMSksGvAMAAACAhuZ0I3/PPffoySeflDHGHXngQ5iCDgAAAAAantO31i9fvlxLlizRZ599prPOOktBQUEV1r/77rsuCwfvltLy+Mj13FoPAAAAAA3H6UY+KipKV1xxhTuywMckn7giv/fgEb35XbaSo5uqe2q0AmwMgAgAAAAA7uJ0Iz9nzhx35IAPWr5pt2yWVGakv7zzkyQpPjJUU4emaXDHeA+nAwAAAAD/5PQz8uV2796t5cuX65tvvtHu3btdmQk+YMG6HN322lqVnTJUQm5BsW57ba0WrMvxTDAAAAAA8HNON/IHDx7UTTfdpPj4ePXt21d9+vRRQkKCxowZo0OHeFa6MSgtM5r20QZVNdxh+bJpH21Q6aldPgAAAACg3pxu5CdOnKilS5fqo48+Un5+vvLz8/XBBx9o6dKluueee9yREV5mddY+5RQUV7veSMopKNbqrH0NFwoAAAAAGgmnn5F/55139J///Ef9+vWzL7vkkkvUpEkTDR8+XM8995wr88EL5RVV38TXZTsAAAAAgOOcviJ/6NAhxcbGVloeExPDrfWNREx4qEu3AwAAAAA4zulGvmfPnpo6daqKi/93tfXw4cOaNm2aevbs6dJw8E7dU6MVHxmq6iaZs3R89PruqdENGQsAAAAAGgWnb61/8sknNXjwYCUmJqpz586yLEuZmZkKDQ3VwoUL3ZERXibAZmnq0DTd9tpaWVKFQe/Km/upQ9OYTx4AAAAA3MAyxjg9tPjhw4f12muv6b///a+MMUpLS9N1112nJk2auCNjgyssLFRkZKQKCgoUERHh6Thea8G6HE37aEOFge+YRx4AAAAAnOdMH1qnRt7f0cg7rrTM6OXlWXr4041q2SxY395/EVfiAQAAAMBJzvShDt1a/+GHH+riiy9WUFCQPvzwwxq3veyyyxxPCp8XYLN0Tfck/e2zjdpz4Ij2HTyiVuEhno4FAAAAAH7LoUb+8ssvV25urmJiYnT55ZdXu51lWSotLXVVNviI8NAgnR7TTL/sOqDMbfkakFZ5VgMAAAAAgGs4NGp9WVmZYmJi7H+u7kUT33h1SWouScrctt/DSQAAAADAvzk9/dyrr76qkpKSSsuPHDmiV1991SWh4HvS20RJkjKy8z2aAwAAAAD8ndON/I033qiCgoJKy4uKinTjjTe6JBR8T3pSlCTpx+0FKi1j/EQAAAAAcBenG3ljjCyr8qjk27dvV2RkpEtCwfecERuusOAAHSg5pl/zDng6DgAAAAD4LYcGu5OkLl26yLIsWZalCy+8UIGB/9u1tLRUWVlZGjx4sFtCwvsF2Cx1SozUqs37lLltv86MC/d0JAAAAADwSw438uWj1WdmZmrQoEFq1qyZfV1wcLBSUlJ01VVXuTwgfEeXNs21avM+ZWTna8S5bTwdBwAAAAD8ksON/NSpUyVJKSkpGjFihEJDQ90WCr6p/Dn5zG35Hs0BAAAAAP7M6Wfk//CHP7i0iX/22WeVmpqq0NBQdevWTV9//XW12+bk5Ojaa6/VmWeeKZvNprvvvrvSNnPnzrU/AnDyq7i42GWZUbUuJxr5X3YV6UDJMc+GAQAAAAA/5XQjX1paqscff1zdu3dXXFycoqOjK7ycMX/+fN19992aPHmyMjIy1KdPH1188cXKzs6ucvuSkhK1atVKkydPVufOnautGxERoZycnAov7iBwv5iIULWOaqIyI/24Pd/TcQAAAADALzndyE+bNk2zZs3S8OHDVVBQoIkTJ+rKK6+UzWbTQw895FStWbNmacyYMbr55pvVoUMHzZ49W0lJSXruueeq3D4lJUVPPvmkRo8eXeMI+ZZlKS4ursKrJiUlJSosLKzwQt1wez0AAAAAuJfTjfzrr7+uF198UX/6058UGBiokSNH6qWXXtKDDz6oVatWOVznyJEjWrNmjQYOHFhh+cCBA7VixQpnY1Vw4MABJScnKzExUZdeeqkyMjJq3H7GjBmKjIy0v5KSkur1+Y1ZlzZRkqSM7HyP5gAAAAAAf+V0I5+bm6uzzz5bktSsWTMVFBRIki699FJ98sknDtfZs2ePSktLFRsbW2F5bGyscnNznY1l1759e82dO1cffvih5s2bp9DQUPXu3VubNm2qdp9JkyapoKDA/tq2bVudP7+xO/mKvDHGs2EAAAAAwA85PGp9ucTEROXk5KhNmzZq166dPv/8c3Xt2lXfffedQkJCnA5gWVaF98aYSsuc0aNHD/Xo0cP+vnfv3uratauefvppPfXUU1XuExISUqfsqKxj60gF2iztLirRzoJitY5q4ulIAAAAAOBXnL4if8UVV+jLL7+UJI0fP15TpkzR6aefrtGjR+umm25yuE7Lli0VEBBQ6ep7Xl5epav09WGz2XTuuefWeEUerhMaFKAO8RGSpIzs/R5OAwAAAAD+x+kr8n//+9/tf/7973+vxMRErVixQu3atdNll13mcJ3g4GB169ZNixYt0hVXXGFfvmjRIg0bNszZWNUyxigzM9P+OADcLz0pSj/tKFBmdr4u7ZTg6TgAAAAA4FecbuRPdeqt7M6YOHGiRo0apXPOOUc9e/bUCy+8oOzsbI0dO1bS8WfXd+zYoVdffdW+T2ZmpqTjA9rt3r1bmZmZCg4OVlpamqTjo+r36NFDp59+ugoLC/XUU08pMzNTzzzzTP0OFA7r0iZK/161VRmMXA8AAAAALlenRn7Hjh365ptvlJeXp7Kysgrrxo0b53CdESNGaO/evZo+fbpycnLUsWNHffrpp0pOTpYk5eTkVJpTvkuXLvY/r1mzRm+88YaSk5O1ZcsWSVJ+fr5uvfVW5ebmKjIyUl26dNGyZcvUvXv3uhwq6qB8wLt1Owp05FiZggOdfoIDAAAAAFANyzg5tPicOXM0duxYBQcHq0WLFhUGprMsS5s3b3Z5yIZWWFioyMhIFRQUKCIiwtNxfI4xRunTF6ng8FF9eGdvdUqM8nQkAAAAAPBqzvShTl8qffDBB/Xggw+qoKBAW7ZsUVZWlv3lD0086s+yrArT0AEAAAAAXMfpRv7QoUO65pprZLNxuzSqZ2/ks/M9mgMAAAAA/I3T3fiYMWP09ttvuyML/EiXNlGSxIB3AAAAAOBiTg92N2PGDF166aVasGCBzj77bAUFBVVYP2vWLJeFg+8qvyKfteeg9h88ouZNgz0bCAAAAAD8hNON/N/+9jctXLhQZ555piRVGuwOkKSosGCd1rKpNu85qMzt+ep/ZoynIwEAAACAX3C6kZ81a5Zefvll3XDDDW6IA3+SnhR1vJHPppEHAAAAAFdx+hn5kJAQ9e7d2x1Z4GfSTzwnz8j1AAAAAOA6Tjfy48eP19NPP+2OLPAzXZKaSzreyBtjPJwGAAAAAPyD07fWr169WosXL9bHH3+ss846q9Jgd++++67LwsG3tY8PV0igTQWHjyprz0Gd1qqZpyMBAAAAgM9zupGPiorSlVde6Y4s8DNBATad3TpS32/dr4zsfBp5AAAAAHABpxr5Y8eOqV+/fho0aJDi4uLclQl+JD0pSt9v3a/Mbfm6qluip+MAAAAAgM9z6hn5wMBA3XbbbSopKXFXHvgZBrwDAAAAANdyerC78847TxkZGe7IAj/Upc3xAe825hSq+Giph9MAAAAAgO9z+hn522+/Xffcc4+2b9+ubt26qWnTphXWd+rUyWXh4PsSIkPVKjxEu4tKtG5Hgc5JifZ0JAAAAADwaU438iNGjJAkjRs3zr7MsiwZY2RZlkpLueqK/7EsS12SovT5hl3KyM6nkQcAAACAenK6kc/KynJHDvix9DbHG3mekwcAAACA+nO6kU9OTnZHDvix9KQoSVJG9n7PBgEAAAAAP+B0Iy9Jv/32m2bPnq2NGzfKsix16NBB48ePV9u2bV2dD36gU2KUbJa0s6BYeYXFiokI9XQkAAAAAPBZTo9av3DhQqWlpWn16tXq1KmTOnbsqG+//VZnnXWWFi1a5I6M8HHNQgJ1Rmy4JCmD2+sBAAAAoF6cviL/l7/8RRMmTNDf//73Ssvvu+8+DRgwwGXh4D+6tInSf3OLlJGdr0FnxXk6DgAAAAD4LKevyG/cuFFjxoyptPymm27Shg0bXBIK/qf8OfnMbTwnDwAAAAD14XQj36pVK2VmZlZanpmZqZiYGFdkgh9KT2ouSfpxe4FKy4yH0wAAAACA73L61vpbbrlFt956qzZv3qxevXrJsiwtX75cjzzyiO655x53ZIQfaBfTTM1CAnWg5Jh+2VWkDvERno4EAAAAAD7J6UZ+ypQpCg8P18yZMzVp0iRJUkJCgh566CGNGzfO5QHhHwJsljolRmrFb3uVuS2fRh4AAAAA6sihW+s//PBDHT16VJJkWZYmTJig7du3q6CgQAUFBdq+fbvGjx8vy7LcGha+rUubKEnMJw8AAAAA9eFQI3/FFVcoPz9fkhQQEKC8vDxJUnh4uMLDw90WDv6l/Dn5TKagAwAAAIA6c6iRb9WqlVatWiVJMsZw5R11Uj5y/aa8AyoqPurZMAAAAADgoxxq5MeOHathw4YpICBAlmUpLi5OAQEBVb6A6rQKD1Fi8yYy5vjo9QAAAAAA5zk02N1DDz2ka665Rr/++qsuu+wyzZkzR1FRUW6OBn+UnhSl7fsPKyN7v3q3a+npOAAAAADgcxwetb59+/Zq3769pk6dqquvvlphYWHuzAU/1aVNc338Yw7PyQMAAABAHTk9/dzUqVPdkQONRPlz8pnb8hlvAQAAAADqwKFn5E+2a9cujRo1SgkJCQoMDOQZeTjlrIQIBQVY2nPgiLbvP+zpOAAAAADgc5y+In/DDTcoOztbU6ZMUXx8PFdU4ZTQoAClxUfoh+0FytiWr6RoHtEAAAAAAGc43cgvX75cX3/9tdLT090QB41BelLU8UY+e78u65zg6TgAAAAA4FOcvrU+KSlJxhh3ZEEj0aVNc0liwDsAAAAAqAOnG/nZs2frL3/5i7Zs2eKGOGgMyge8W7+zUCXHSj0bBgAAAAB8jNO31o8YMUKHDh1S27ZtFRYWpqCgoArr9+3b57Jw8E/JLcLUPCxI+w8d1cacIntjDwAAAACondON/OzZs90QA42JZVlKT4rSkp93KzN7P408AAAAADjB6Ub+D3/4gztyoJFJT2quJT/vVsa2fN3g6TAAAAAA4EMcauQLCwsVERFh/3NNyrcDatKlTZQkBrwDAAAAAGc51Mg3b95cOTk5iomJUVRUVJVzxxtjZFmWSksZvAy163zidvqtew9p74EStWgW4tlAAAAAAOAjHGrkFy9erOjoaEnSkiVL3BoIjUNkkyC1bdVUv+0+qB+25+uC9rGejgQAAAAAPsGhRv7888+v8s9AfaQnNddvuw8qM5tGHgAAAAAc5fQ88oCrlD8nn8Fz8gAAAADgMBp5eEz5tHOZ2/JVVmY8GwYAAAAAfASNPDymfVy4QoNsKio+ps17Dng6DgAAAAD4BBp5eExggE1nJ0RKkl5enqWVv+1VKVfmAQAAAKBGdWrkjx07pi+++EL//Oc/VVRUJEnauXOnDhzgqioct2BdjjbkFEqS3li9TSNfXKXfPbJYC9bleDgZAAAAAHgvpxv5rVu36uyzz9awYcN0xx13aPfu3ZKkRx99VH/6059cHhD+acG6HN322lodPFJaYXluQbFue20tzTwAAAAAVMPpRn78+PE655xztH//fjVp0sS+/IorrtCXX37p0nDwT6VlRtM+2qCqbqIvXzbtow3cZg8AAAAAVXBoHvmTLV++XN98842Cg4MrLE9OTtaOHTtcFgz+a3XWPuUUFFe73kjKKSjW6qx96tm2RcMFAwAAAAAf4PQV+bKyMpWWllZavn37doWHh7skFPxbXlH1TXxdtgMAAACAxsTpRn7AgAGaPXu2/b1lWTpw4ICmTp2qSy65xJXZ4KdiwkNduh0AAAAANCZO31r/xBNPqH///kpLS1NxcbGuvfZabdq0SS1bttS8efPckRF+pntqtOIjQ5VbUFzlc/KWpLjIUHVPjW7oaAAAAADg9Zxu5BMSEpSZmak333xTa9asUVlZmcaMGaPrrruuwuB3QHUCbJamDk3Tba+tlSVVauaNpKlD0xRgszyQDgAAAAC8m2WMYWjwUxQWFioyMlIFBQWKiIjwdBy/tWBdjqZ9tKHSwHfhoYFaNelCNQ1x+nsmAAAAAPBJzvShTj8j/8orr+iTTz6xv7/33nsVFRWlXr16aevWrc6nRaM1uGO8lt93gebd0kNPXpOuf9/UXW2im6io+JheWLbZ0/EAAAAAwCs53cj/7W9/s99Cv3LlSv3jH//Qo48+qpYtW2rChAkuDwj/FmCz1LNtCw1Lb60+Z7TSfYM7SJJe/Hqz8goZtR4AAAAATuV0I79t2za1a9dOkvT+++/r97//vW699VbNmDFDX3/9tcsDonG55Ow4pSdF6dCRUj3xxSZPxwEAAAAAr+N0I9+sWTPt3btXkvT555/roosukiSFhobq8OHDrk2HRseyLE0ecvyq/PzvsrVpV5GHEwEAAACAd6nTPPI333yzbr75Zv3yyy8aMmSIJGn9+vVKSUlxdT40QuemRGtgWqzKjPT3z/7r6TgAAAAA4FWcbuSfeeYZ9ezZU7t379Y777yjFi1aSJLWrFmjkSNHujwgGqf7Lm6vAJulL/+bp5W/7fV0HAAAAADwGkw/VwWmn/MOU95fp3+v2qpOiZF6//besjGvPAAAAAA/5Uwf6tBE3T/++KM6duwom82mH3/8scZtO3Xq5HhSoAbjLzpd767drh+3F+ijH3dqWHprT0cCAAAAAI9z6Iq8zWZTbm6uYmJiZLPZZFmWTt6t/L1lWSotLXVr4IbAFXnv8fSXmzRz0S9KbN5EX95zvkICAzwdCQAAAABczuVX5LOystSqVSv7n4GGcnOf0/Tat1u1ff9hvbpiq27pe5qnIwEAAACAR/GMfBW4Iu9d3vpum+5950dFhAZq2b39FRUW7OlIAAAAAOBSzvShTo9an5CQoGuvvVYvvPCCfv755zqHBBx1VbdEtY8LV2HxMT2z5FdPxwEAAAAAj3K6kZ85c6YiIiI0a9YsdejQQfHx8brmmmv0/PPPa+PGje7IiEYuwGbpLxe3lyS9smKrtu075OFEAAAAAOA59bq1fteuXVqyZIk+/vhjzZ8/X2VlZQx2B7cwxuj6f32rb37dq8s6J+ipkV08HQkAAAAAXMblg92d6sCBA1q+fLmWLl2qr776ShkZGTr77LN1/vnn1ykwUBvLsjTp4g4a+o/l+vCHnbq5T6o6JUZ5OhYAAAAANDinb60/77zz1KpVK02ZMkXHjh3T/fffr9zcXK1du1ZPPPGE0wGeffZZpaamKjQ0VN26ddPXX39d7bY5OTm69tprdeaZZ8pms+nuu++ucrt33nlHaWlpCgkJUVpamt577z2nc8H7dGwdqStOzCX/8CcbxTiNAAAAABojpxv5TZs2KSwsTKeddppOO+00tWvXTlFRUXX68Pnz5+vuu+/W5MmTlZGRoT59+ujiiy9WdnZ2lduXlJSoVatWmjx5sjp37lzlNitXrtSIESM0atQo/fDDDxo1apSGDx+ub7/9tk4Z4V3uGXSmggNt+jZrnxb/N8/TcQAAAACgwdXpGfkff/xRX331lZYuXaqvv/5aNptN559/vvr376+xY8c6XOe8885T165d9dxzz9mXdejQQZdffrlmzJhR4779+vVTenq6Zs+eXWH5iBEjVFhYqM8++8y+bPDgwWrevLnmzZvnUC6ekfduMz7bqH8u3ax2Mc20YHwfBQY4/X0UAAAAAHgVt04/J0mdOnXSuHHj9M477+izzz7TxRdfrHfffVd33HGHwzWOHDmiNWvWaODAgRWWDxw4UCtWrKhLLEnHr8ifWnPQoEE11iwpKVFhYWGFF7zX7f3aqXlYkH7NO6C3vt/u6TgAAAAA0KCcbuQzMjL0xBNPaNiwYYqOjlaPHj30008/afz48frwww8drrNnzx6VlpYqNja2wvLY2Fjl5uY6G8suNzfX6ZozZsxQZGSk/ZWUlFTnz4f7RTYJ0l0XnC5JmrXoFx0sOebhRAAAAADQcJwetf7cc89Vly5ddP755+uWW25R375963X7uWVZFd4bYyotc3fNSZMmaeLEifb3hYWFNPNe7voeyXpl5RZt3XtIzy/9Tb3atlReUbFiwkPVPTVaAbb6nUMAAAAA4K2cbuT37dvnkufGW7ZsqYCAgEpXyvPy8ipdUXdGXFyc0zVDQkIUEhJS589EwwsOtOneQe11xxtr9Y/Fv+rpxb/a18VHhmrq0DQN7hjvwYQAAAAA4B5O31qfnp6uvXv3Vlqen5+v0047zeE6wcHB6tatmxYtWlRh+aJFi9SrVy9nY9n17NmzUs3PP/+8XjXhncovup86WmNuQbFue22tFqzLafBMAAAAAOBuTl+R37Jli0pLSystLykp0Y4dO5yqNXHiRI0aNUrnnHOOevbsqRdeeEHZ2dn2ke8nTZqkHTt26NVXX7Xvk5mZKUk6cOCAdu/erczMTAUHBystLU2SNH78ePXt21ePPPKIhg0bpg8++EBffPGFli9f7uyhwouVlhlN/3hDleuMJEvStI82aEBaHLfZAwAAAPArDjfyJw9kt3DhQkVGRtrfl5aW6ssvv1RKSopTHz5ixAjt3btX06dPV05Ojjp27KhPP/1UycnJkqScnJxKc8p36dLF/uc1a9bojTfeUHJysrZs2SJJ6tWrl95880098MADmjJlitq2bav58+frvPPOcyobvNvqrH3KKSiudr2RlFNQrNVZ+9SzbYuGCwYAAAAAbubwPPI22/G78C3L0qm7BAUFKSUlRTNnztSll17q+pQNjHnkvd8HmTs0/s3MWrd78pp0DUtv7f5AAAAAAFAPzvShDl+RLysrkySlpqbqu+++U8uWLeuXEqiHmPBQl24HAAAAAL7C6Wfks7Ky3JEDcEr31GjFR4Yqt6C40mB30vFn5OMij09FBwAAAAD+xKFG/qmnntKtt96q0NBQPfXUUzVuO27cOJcEA2oSYLM0dWiabnttrSxVHrlekqYOTWOgOwAAAAB+x6Fn5FNTU/X999+rRYsWSk1Nrb6YZWnz5s0uDegJPCPvOxasy9G0jzZUGPjOsqQnR6TrMp6NBwAAAOAjXP6M/Mm303NrPbzJ4I7xGpAWp9VZ+5RbcFgPf7JRew4e0cEjladIdKfSMqPVWfuUV1SsmPDjt/RzNwAAAAAAd3D6GfmTlV/MtywaFnhOgM2yTzG39+AR/d8nG/XS15s14pwk2Rqgma7qroD4yFBNHZqmwR3j3f75AAAAABoXW112+te//qWOHTsqNDRUoaGh6tixo1566SVXZwOcNuLcJIWHBOq33Qe19Jfdbv+8BetydNtrayvNaZ9bUKzbXlurBety3J4BAAAAQOPidCM/ZcoUjR8/XkOHDtXbb7+tt99+W0OHDtWECRP0wAMPuCMj4LDw0CBd0z1JkvTi1+4dr6G0zGjaRxuqHGivfNm0jzaotKzWYSgAAAAAwGEODXZ3spYtW+rpp5/WyJEjKyyfN2+e7rrrLu3Zs8elAT2Bwe582478w+r76BKVlhl9Mu53Oish0i2fs/K3vRr54qpat5t3Sw/7rf8AAAAAUBVn+lCnr8iXlpbqnHPOqbS8W7duOnbsmLPlAJdrHdVEl5x9/Nn0fy133+CMeUXFtW/kxHYAAAAA4AinG/nrr79ezz33XKXlL7zwgq677jqXhALqa8zvjk+T+NEPO7Wr0D2NdEx4qEu3AwAAAABHODRq/cSJE+1/tixLL730kj7//HP16NFDkrRq1Spt27ZNo0ePdk9KwEnpSVE6N6W5vtuyX6+s2KJ7B7d3+Wd0T41WXESocqv5osCSFBd5fCo6AAAAAHAVhxr5jIyMCu+7desmSfrtt98kSa1atVKrVq20fv16F8cD6u7mPqfpuy1r9Pq32brzgnYKC67XbIuVBNgs/a5dC/1n7Y5K68onvZs6NI355AEAAAC4lEOdzZIlS9ydA3C5izrEKrlFmLbuPaT/rNmu0T1TXFp/V2GxFqzfJUmKbBKkgsNH7evimEceAAAAgJvUaR55wBcE2Cz7s/IvL89y+TRwD3+yUQdKjik9KUrfT75I4y5oJ0k6M7aZlt93AU08AAAAALegkYdf+323REU2CdKWvYf0xcZdLqu74tc9+vCHnbJZ0v9d3lFBgTb1ax8jSSoqPsbt9AAAAADchkYefi0sOFDXnddGkvSvr10zFd2RY2V68MPj40Fc3yNZHVsfn6c+MaqJJCm3sFhHS8tc8lkAAAAAcCoaefi9P/RKUVCApdVb9umHbfn1rvfyN1n6Ne+AWjQN1j0Dz7Qvb9ksRMGBNpUZKbeAueMBAAAAuIdTjfzRo0d14403avPmze7KA7hcbESohnZKkCS9tLx+V+V35h/Wk19skiRNuqSDIpsE2dfZbJZan7gqv33/4Xp9DgAAAABUx6lGPigoSO+99567sgBuM6bP8UHvPv0pRzvy695k/98nG3T4aKnOTWmuq7q2rrS+vJGvz2cAAAAAQE2cvrX+iiuu0Pvvv++GKID7nJUQqV5tW6i0zGjuN3W7Kr/sl9369KdcBdgsTR/WUZZVeUC7/12RP1SvvAAAAABQHYfmkT9Zu3bt9Ne//lUrVqxQt27d1LRp0wrrx40b57JwgCvd0uc0rfhtr95cvU3jLjxd4aFBte90QsmxUk09McDdH3qmqEN8RJXbJTY/cUWeW+sBAAAAuInTjfxLL72kqKgorVmzRmvWrKmwzrIsGnl4rfPPaKW2rZrqt90HNf+7bbq5z2kO7/viss3K2nNQMeEhmjDg9Gq3a92cW+sBAAAAuJfTjXxWlmum8AIams1maczvTtP97/2kOd9s0Q29UhQYUPvTJdv2HdI/lvwqSZo8pEONV/J5Rh4AAACAuzH9HBqVK7u2VnTTYO3IP6yF63c5tM/0jzeo+GiZep7WQpd1Tqhx2/Ir8jvzD6uszNQ7LwAAAACcyqEr8hMnTtRf//pXNW3aVBMnTqxx21mzZrkkGOAOoUEBur5Hsp76cpNe/HqzLjk7rspB68ot/u8uLdqwS4E2S9OHnVXjtpIUFxGqAJulo6VGeUUliosMdfUhAAAAAGjkHGrkMzIydPToUfufq1NbkwN4g1E9kvX80t+UuS1fa7P3q1tydJXbFR/93wB3Y/qk6vTY8FprBwbYFBcRqh35h7Uj/xCNPAAAAACXc6iRX7JkSZV/BnxRq/AQXZHeWvO/36YXl2Wp26iqG/nnvvpN2/YdVnxkqMZdUP0Ad6dq3byJduQf1vb9h9Ut2VWpAQAAAOA4npFHozSmT6okaeGGXG3de7DS+q17D+q5pb9JkqZcmqamIY6PC5lon0ueAe8AAAAAuJ7To9ZL0nfffae3335b2dnZOnLkSIV17777rkuCAe50Rmy4zj+jlZb+sltzvtmihy47y77OGKOpH67XkWNl6nN6S13cMc6p2olMQQcAAADAjZy+Iv/mm2+qd+/e2rBhg9577z0dPXpUGzZs0OLFixUZGemOjIBb3Hziqvxb329TwaGj9uWfb9ilr37ereAAm6ZdVvsAd6eyzyXPFXkAAAAAbuB0I/+3v/1NTzzxhD7++GMFBwfrySef1MaNGzV8+HC1adPGHRkBt/hdu5ZqHxeuQ0dK9fcFG/VB5g599XOepp0Y4O7WvqfptFbNnK7bOipMElfkAQAAALiH07fW//bbbxoyZIgkKSQkRAcPHpRlWZowYYIuuOACTZs2zeUhAXewLEvdU6P139wizVu9TfNWb7Oviw4L1h3929WpbvkV+e37D8kYw2wOAAAAAFzK6Svy0dHRKioqkiS1bt1a69atkyTl5+fr0KFDrk0HuNGCdTn698qtVa7bd+iIlv6SV6e6CVHHp5wrPlqmfQeP1LI1AAAAADjH4Ub+pptuUlFRkfr06aNFixZJkoYPH67x48frlltu0ciRI3XhhRe6LSjgSqVlRtM+2iBTzXpL0rSPNqi0rLotqhcSGKCY8BBJ3F4PAAAAwPUcbuRfeeUVHT58WP/4xz90zTXXSJImTZqkP/3pT9q1a5euvPJK/etf/3JbUMCVVmftU05BcbXrjaScgmKtztpXp/oMeAcAAADAXRx+Rt6Y41cmo6Oj7ctsNpvuvfde3Xvvva5PBrhRXlH1TXxdtjtV66gmysjOZy55AAAAAC7n1DPyDNoFfxETHurS7U6V2JyR6wEAAAC4h1Oj1p9xxhm1NvP79tXtVmSgIXVPjVZ8ZKhyC4qrfE7ekhQXGaruqdFVrK3d/0aup5EHAAAA4FpONfLTpk1TZGSku7IADSbAZmnq0DTd9tpaWVKFZr78q6qpQ9MUYKvbXSiJUSeekeeKPAAAAAAXc6qRv+aaaxQTE+OuLECDGtwxXs9d31XTPtpQYeC7uMhQTR2apsEd4+tc++S55AEAAADAlRxu5Hk+Hv5ocMd4DUiL0+qsfcorKlZM+PHb6et6Jb5c6xNX5IuKj6mw+KgiQoNcERcAAAAAnB+1HvA3ATZLPdu2cGnNpiGBah4WpP2HjmrH/sOKiKeRBwAAAOAaDo9aX1ZWxm31gBOYSx4AAACAOzg1/RwAxyVGHZ+CjufkAQAAALgSjTzgJvYr8oxcDwAAAMCFaOQBN2nNFHQAAAAA3IBGHnATnpEHAAAA4A408oCbJNrnkqeRBwAAAOA6NPKAm5QPdrf34BEdPlLq4TQAAAAA/AWNPOAmEU0C1SwkUBLPyQMAAABwHRp5wE0sy2LAOwAAAAAuRyMPuNH/npNnLnkAAAAArkEjD7gRI9cDAAAAcDUaecCNuLUeAAAAgKvRyANuxBV5AAAAAK5GIw+4UWLz41PQMZc8AAAAAFehkQfcqPzW+l1FxTpyrMzDaQAAAAD4Axp5wI1aNgtWSKBNxki5BcWejgMAAADAD9DIA2508lzy2/OZgg4AAABA/dHIA27W2j6XPM/JAwAAAKg/GnnAzRIZuR4AAACAC9HIA27GXPIAAAAAXIlGHnCz/91azzPyAAAAAOqPRh5ws/K55LkiDwAAAMAVaOQBNyu/tT4nv1ilZcbDaQAAAAD4Ohp5wM1iI0IVaLN0rMwor4i55AEAAADUD4084GYBNktxkaGSmIIOAAAAQP3RyAMNgCnoAAAAALgKjTzQAFpHMeAdAAAAANegkQcawP+moKORBwAAAFA/Hm/kn332WaWmpio0NFTdunXT119/XeP2S5cuVbdu3RQaGqrTTjtNzz//fIX1c+fOlWVZlV7FxQwyBs9JjGIueQAAAACu4dFGfv78+br77rs1efJkZWRkqE+fPrr44ouVnZ1d5fZZWVm65JJL1KdPH2VkZOj+++/XuHHj9M4771TYLiIiQjk5ORVeoaGhDXFIQJXsz8hzaz0AAACAegr05IfPmjVLY8aM0c033yxJmj17thYuXKjnnntOM2bMqLT9888/rzZt2mj27NmSpA4dOuj777/X448/rquuusq+nWVZiouLa5BjABxRfmv9zvzDMsbIsiwPJwIAAADgqzx2Rf7IkSNas2aNBg4cWGH5wIEDtWLFiir3WblyZaXtBw0apO+//15Hjx61Lztw4ICSk5OVmJioSy+9VBkZGTVmKSkpUWFhYYUX4ErxkU1kWVLx0TLtPXjE03EAAAAA+DCPNfJ79uxRaWmpYmNjKyyPjY1Vbm5ulfvk5uZWuf2xY8e0Z88eSVL79u01d+5cffjhh5o3b55CQ0PVu3dvbdq0qdosM2bMUGRkpP2VlJRUz6MDKgoOtCkmPEQSA94BAAAAqB+PD3Z36i3Gtd12XNX2Jy/v0aOHrr/+enXu3Fl9+vTRW2+9pTPOOENPP/10tTUnTZqkgoIC+2vbtm11PRygWonNT0xBRyMPAAAAoB489ox8y5YtFRAQUOnqe15eXqWr7uXi4uKq3D4wMFAtWrSoch+bzaZzzz23xivyISEhCgkJcfIIAOe0jmqiNVv3a0c+I9cDAAAAqDuPXZEPDg5Wt27dtGjRogrLFy1apF69elW5T8+ePStt//nnn+ucc85RUFBQlfsYY5SZman4+HjXBAfqqHzAO67IAwAAAKgPj95aP3HiRL300kt6+eWXtXHjRk2YMEHZ2dkaO3aspOO3vI8ePdq+/dixY7V161ZNnDhRGzdu1Msvv6x//etf+tOf/mTfZtq0aVq4cKE2b96szMxMjRkzRpmZmfaagKe0ts8lTyMPAAAAoO48Ov3ciBEjtHfvXk2fPl05OTnq2LGjPv30UyUnJ0uScnJyKswpn5qaqk8//VQTJkzQM888o4SEBD311FMVpp7Lz8/XrbfeqtzcXEVGRqpLly5atmyZunfv3uDHB5yMueQBAAAAuIJlykeLg11hYaEiIyNVUFCgiIgIT8eBn/g1r0gXzVqm8JBA/TRtkKfjAAAAAPAizvShHh+1HmgsEk7cWl9UckwFh496OA0AAAAAX0UjDzSQsOBAtWgaLEnavp+R6wEAAADUDY080IAYuR4AAABAfdHIAw2ofOR6BrwDAAAAUFc08kADsjfyXJEHAAAAUEc08kADKp+CjrnkAQAAANQVjTzQgFo3D5PErfUAAAAA6o5GHmhAPCMPAAAAoL5o5IEGVD5q/b6DR3ToyDEPpwEAAADgi2jkgQYU2SRI4aGBkhjwDgAAAEDd0MgDDaz89vrt3F4PAAAAoA5o5IEGVj5yPVfkAQAAANQFjTzQwBjwDgAAAEB90MgDDSzxxBR0zCUPAAAAoC5o5IEG1tp+a/0hDycBAAAA4Ito5IEGxq31AAAAAOqDRh5oYOVX5POKSlRyrNTDaQAAAAD4Ghp5oIG1aBqs0CCbjJFy8os9HQcAAACAj6GRBxqYZVncXg8AAACgzmjkAQ9ofWLkeuaSBwAAAOAsGnnAA8qvyG/nijwAAAAAJ9HIAx6QeGLAu+1MQQcAAADASTTygAck2ueS54o8AAAAAOfQyAMewGB3AAAAAOqKRh7wgPK55HMLinWstMzDaQAAAAD4Ehp5wANiwkMVFGDpWJnRrqIST8cBAAAA4ENo5AEPCLBZio/kOXkAAAAAzqORBzzkf8/JM3I9AAAAAMfRyAMe0pqR6wEAAADUAY084CH/m0ueRh4AAACA42jkAQ9hCjoAAAAAdUEjD3gIt9YDAAAAqAsaecBDEqPCJB2/Im+M8XAaAAAAAL6CRh7wkLjIUNksqeRYmXYfYC55AAAAAI6hkQc8JDjQptiIUEncXg8AAADAcTTygAcx4B0AAAAAZ9HIAx7EgHcAAAAAnEUjD3gQc8kDAAAAcBaNPOBBrU8auR4AAAAAHEEjD3gQt9YDAAAAcBaNPOBB5bfWM5c8AAAAAEfRyAMeVD5q/YGSYyo4fNTDaQAAAAD4Ahp5wINCgwLUslmwJAa8AwAAAOAYGnnAw5hLHgAAAIAzaOQBD0tsfmLkeq7IAwAAAHAAjTzgYa2ZSx4AAACAE2jkAQ/73631hzycBAAAAIAvoJEHPIxn5AEAAAA4g0Ye8LDE6BONPLfWAwAAAHAAjTzgYeVX5PcfOqqDJcc8nAYAAACAt6ORBzwsPDRIEaGBkri9HgAAAEDtaOQBL9CaKegAAAAAOIhGHvACieVT0HFFHgAAAEAtaOQBL1D+nPz2/UxBBwAAAKBmNPKAFyi/Is+t9QAAAABqQyMPeAHmkgcAAADgKBp5wAskMtgdAAAAAAfRyANeoPWJW+vzikpUfLTUw2kAAAAAeDMaecALNA8LUmjg8f8cX1u1VSt/26vSMuPhVAAAAAC8UaCnAwCQFq7P1dETjfv/fbJRkhQfGaqpQ9M0uGO8J6MBAAAA8DJckQc8bMG6HN322tpKV+BzC4p122trtWBdjoeSAQAAAPBGNPKAB5WWGU37aIOquom+fNm0jzZwmz0AAAAAOxp5wINWZ+1TTkFxteuNpJyCYq3O2ldrrdIyo5W/7dUHmTt4xh4AAADwYzwjD3hQXlH1TfzJJr37o64+J0kXtI9R+7hwWZZVYf2CdTma9tGGCl8K8Iw9AAAA4J8sYwyX7U5RWFioyMhIFRQUKCIiwtNx4MdW/rZXI19c5dQ+8ZGhuqB9jC7sEKNebVvqq5/zdNtrayvdnl/e6j93fVeaeQAAAMDLOdOH0shXgUYeDaW0zOh3jyxWbkFxlc/JW5JahYdo3IWn66uf87T81z0qPlpmXx8SaEmyVHKsrIq9j+8fFxmq5fddoACbVeU2AAAAADzPmT6UW+sBDwqwWZo6NE23vbZWllShmS9vu6cPO0uDO8br+h7JKj5aqpWb92rxxjwt/m+eduQfPmWvik5+xr5n2xbuOxAAAAAADYbB7gAPG9wxXs9d31VxkaEVlsdFhla6LT40KED9z4zRXy/vqOX39dd9g8906DMcfRYfAAAAgPfjijzgBQZ3jNeAtDitztqnvKJixYSHqntqdI23w1uWpfSk5g7V/2l7gQamxalJcICrIgMAAADwEJ6RrwLPyMNX1PaM/ckiQgM14twkje6ZoqToMLflcebLCAAAAADHMdhdPdHIw5csWJej215bK6nqZ+yv6tpaq7fsV/a+Q8eXW9KF7WP0h14p+l27lhWmsqtPI+6qKfDq+2WAK75M8IYaZPCv4yCDfx0HGfzrOMjgX8fhDRn85TjI0PBo5OuJRh6+prYmurTM6Kuf8zR3xRZ9vWmPfZu2rZrqD71SdGXXRC3ftLvOjXj5lwn1nQKvvl8GuOLLBG+oQQb/Og4y+NdxkMG/joMM/nUc3pDBX46DDJ7hU438s88+q8cee0w5OTk666yzNHv2bPXp06fa7ZcuXaqJEydq/fr1SkhI0L333quxY8dW2Oadd97RlClT9Ntvv6lt27Z6+OGHdcUVVziciUYevsjRbxt/zTugf6/cov+s2a6DR0olSaGBNhVXMYWdI414+e39J/+APLWGI1Pg1ffLAFd8meANNcjguhpk8J4MrqhBBu/J4IoaZPCeDK6oQQbX1SCD92TwBGf6UI+OWj9//nzdfffdmjx5sjIyMtSnTx9dfPHFys7OrnL7rKwsXXLJJerTp48yMjJ0//33a9y4cXrnnXfs26xcuVIjRozQqFGj9MMPP2jUqFEaPny4vv3224Y6LMAjAmyWerZtoWHprdWzbYtqm+Z2Mc00bVhHrbr/Qj00NE2pLcKqbOKl47fqG0kT5v+gifMzNf7NDN3x+lrd+ur3GjP3O41+ebUu+8fyapv48ho5BcV68IOf9Nb327Rowy59t2Wffs0r0p4DJTpWWqbSMqNpH22o8jn/8mXTPtqg0rKqv3es7/7eUoMMrqtBBu/J4IoaZPCeDK6oQQbvyeCKGmRwXQ0yeE8GX+DRK/LnnXeeunbtqueee86+rEOHDrr88ss1Y8aMStvfd999+vDDD7Vx40b7srFjx+qHH37QypUrJUkjRoxQYWGhPvvsM/s2gwcPVvPmzTVv3rwqc5SUlKikpMT+vrCwUElJSVyRR6Ow4tc9uvYlz37R1STIpsNHq/4y4WQXtI9RbESoyh/rt3T8mf/cgmJ9sTGv1v0HnRWr+MgmVa7LKTishet31V4jLbbSVIHlcguKtXBD3Ws4vL8rjqOaGvXd31tqkMF7MriiBhm8J4MrajS6n7f1zeCKvwdv+Pf0hgxuPKecquEPf5d+8t/GvFt6qGfbFrVu11B84tb6I0eOKCwsTG+//XaF297Hjx+vzMxMLV26tNI+ffv2VZcuXfTkk0/al7333nsaPny4Dh06pKCgILVp00YTJkzQhAkT7Ns88cQTmj17trZu3VplloceekjTpk2rtJxGHo3BB5k7NP7NzFq3u6xzgjolRirQZikwwKagAEuBNpuy9hzQP5b8Vuv+vdu2UFCgTfsPHVX+oSPaf/CICouPueAIAAAAAOc9eU26hqW39nQMO2caeY/NI79nzx6VlpYqNja2wvLY2Fjl5uZWuU9ubm6V2x87dkx79uxRfHx8tdtUV1OSJk2apIkTJ9rfl1+RBxqDmPCqv8k81cjubar8xrK0zOidtTuqnQKv/Bn5V8ecV+l2/9Iyo4LDR7Xk5zzd89YPtWa4uluikqLDZIxkTnyaMdK2/Yf07todte5/eXqCEptXPfXe9v2H9H7mzlprXNGlYo2Tj2j7/kN6N6P2Gld2qTqHo/ufmuHUGu/Vo0Z99/eWGr6UwRXnZXU16npen1qjof4uvfk4Gts55Q3HUd3PyvIa/Lz1jhq+nKG+v8NP/f89/KzzvQyO/v9gb+SxRr7cyVNfSZIxptKy2rY/dbmzNUNCQhQSEuJwZsCfdE+NVnxkaK2NePfU6Cr3D7BZmjo0Tbe9tlaWqp4Cb+rQtCqf2Q+wWYpuGqzL01vr8YU/15rh71d1qrJOaZnRyt/21rr/zOHp1Y4dUFpm9G3WvlprPH51zTVWbq69xmPV1HB0/9oyrKpHjfru7y01fCmDK87L6mq46rxuqL9Lbz6OxnZOecNxVPezsrwGP2+9o4Y/ZajPOeVMDn7WeU+G6v7/rS/w2GB3LVu2VEBAQKUr5Xl5eZWuqJeLi4urcvvAwEC1aNGixm2qqwk0duWNuFTxm+mT31fXiJcb3DFez13ftdJzSnGRoQ6NCFrfDK44Bm+oQQb/Og4y+NdxkMG/joMM/nUc3pDBX46DDL7DY418cHCwunXrpkWLFlVYvmjRIvXq1avKfXr27Flp+88//1znnHOOgoKCatymupoA6t+Il9dYft8FmndLDz15Tbrm3dJDy++7wOFpPeqbwVXH4OkaZPCv4yCDfx0HGfzrOMjgX8fhDRn85TjI4Bs8Omr9/PnzNWrUKD3//PPq2bOnXnjhBb344otav369kpOTNWnSJO3YsUOvvvqqpOPTz3Xs2FF//OMfdcstt2jlypUaO3as5s2bp6uuukqStGLFCvXt21cPP/ywhg0bpg8++EAPPPCAli9frvPOO8+hXMwjj8bK0bnovTmDK47BG2qQwb+Ogwz+dRxk8K/jIIN/HYc3ZPCX4yBDw/OJUevLPfvss3r00UeVk5Ojjh076oknnlDfvn0lSTfccIO2bNmir776yr790qVLNWHCBK1fv14JCQm67777NHbs2Ao1//Of/+iBBx7Q5s2b1bZtWz388MO68sorHc5EIw8AAAAAaEg+1ch7Ixp5AAAAAEBDcqYP9dgz8gAAAAAAwHk08gAAAAAA+BAaeQAAAAAAfAiNPAAAAAAAPoRGHgAAAAAAH0IjDwAAAACAD6GRBwAAAADAh9DIAwAAAADgQ2jkAQAAAADwITTyAAAAAAD4EBp5AAAAAAB8CI08AAAAAAA+JNDTAbyRMUaSVFhY6OEkAAAAAIDGoLz/LO9Ha0IjX4WioiJJUlJSkoeTAAAAAAAak6KiIkVGRta4jWUcafcbmbKyMu3cuVPh4eGyLMvTcWpUWFiopKQkbdu2TREREQ2+Pxm8qwYZvCeDK2qQwXU1yOA9GVxRgwzek8EVNcjgPRlcUYMMrqtBBu/J0FCMMSoqKlJCQoJstpqfgueKfBVsNpsSExM9HcMpERER9Top67s/GbyrBhm8J4MrapDBdTXI4D0ZXFGDDN6TwRU1yOA9GVxRgwyuq0EG78nQEGq7El+Owe4AAAAAAPAhNPIAAAAAAPgQGnkfFxISoqlTpyokJMQj+5PBu2qQwXsyuKIGGVxXgwzek8EVNcjgPRlcUYMM3pPBFTXI4LoaZPCeDN6Iwe4AAAAAAPAhXJEHAAAAAMCH0MgDAAAAAOBDaOQBAAAAAPAhNPIAAAAAAPgQGnkAAAAAAHwIjTwAAAAAAD6ERh4AAAAAAB8S6OkAcJ1jx45p586datOmTYN/9q5du1RSUlKvz542bZruuOMOtWzZsk777969W1FRUQoKCnJ632PHjmnJkiXKzs5WcnKy+vfvr4CAgGq337NnT51znqy0tNT+mTabTSUlJfrggw9UVlam/v37KzY2ttYaBw8e1Jo1a5STk6OAgAClpqaqa9eusizLqSxbt25Vbm6uLMtSbGyskpOT63pYXsMYI2OMbLa6fWc5d+5cXXHFFYqMjHRxMsds2rTJfn60a9euQT+7tLS0wn8Dq1evVllZmbp06aKQkBCHamRnZ9vPy5SUlDr9N8N5WVljPS9dcU5KnJdVqe85KXFelvPUeelv56TEeVkfnJeNhIHfyMzMNDabrcZtnnnmGXPhhReaq6++2nz55ZcV1u3evdukpqbWuH9hYaG57rrrTJs2bczo0aNNSUmJuf32241lWcZms5m+ffuagoKCGmsUFBRUeuXn55ugoCDz7bff2pdV55///KcpLi42xhhTVlZmHn74YRMVFWVsNpsJCwszEyZMMKWlpTVmuOuuu8zHH39sjDFm27Ztpn379iYgIMDExsaagIAAc/bZZ5vt27dXu7/NZjMXXHCBef311+1ZnJWZmWni4uKMzWYznTp1Mtu2bTMdO3Y0TZs2Nc2aNTPNmzc3q1evrnb/0tJS8+c//9mEhYUZm81mbDabsSzLWJZlkpOTzYcffuhQjlmzZpnExMQK+9tsNpOYmGieeOKJOh3bqcdZ23n58ccfmzFjxpg///nPZuPGjRXW7du3z/Tv37/G/Y8ePWomT55s+vbtax588EFjjDGPPvqoCQsLM8HBwfZz1VlBQUFmw4YNDm27cOFCc/ToUfv7119/3XTu3NmEhYWZtm3bmieffLLG/WfMmGH/b3Lfvn3mwgsvrPDvMXjwYLN///4aazRr1szcdNNN5ptvvnEoc1WysrJM165dTUBAgLnkkktMQUGBueiii+xZTjvtNPPzzz/XWOOZZ54xbdq0sZ+X5a/evXub77//3qEc7jwvHTknjeG8NMY7zktXnJPGcF4a475z0hjHz8v6npPGcF6ejN/hNfOl89Jbfocbw3npK2jk/UhtJ/WTTz5pwsLCzB133GGuv/56ExISYv72t7/Z1+fm5tb6H8Wdd95p2rdvb5566inTr18/M2zYMNOxY0ezfPlys2zZMtOxY0dz//3311jj1B8KJzehJ/9vTfvv2rXLGGPM888/b5o2bWpmzpxpvvnmG/P000+byMhI8/TTT9eYIT4+3v6Dffjw4eaiiy4yu3fvNsYYs3fvXnPppZea3//+99Xub1mWGTx4sAkODjbNmzc3d955p8nIyKjxM081cOBA8/vf/9789NNPZvz48SYtLc1cffXV5siRI+bo0aPm+uuvNxdddFG1+993332mQ4cO5v333zcLFiwwffr0MY888ojZuHGjmTJligkJCTELFy6sMcP06dNNRESE+fvf/24yMjLMzp07zY4dO0xGRob5+9//biIjI81f//pXp47rVJmZmcayrGrXv/766yYgIMAMGTLE/O53vzOhoaHmtddes6935Lx84IEHTGxsrJk4caJJS0szY8eONUlJSea1114zr776qklMTDSPPPJItfs3b968ypdlWSYyMtL+viYnn5f/+c9/TEBAgLnrrrvM66+/bu655x4TEhJi3njjjWr3b9Omjfnhhx+MMcbcfPPNpkuXLmbt2rXm8OHDJjMz0/To0cOMGTOmxgyWZZmzzjrLWJZl2rdvbx5//HF7JkddddVV5vzzzzcfffSRGT58uOndu7fp16+f2b59u9m5c6cZNGiQufzyy6vd/7HHHjPx8fFm9uzZ5vnnnzcdOnQw06dPN5999pkZNWqUCQsLM999912NGdx9XtZ2ThrDeVnOG87L+p6TxnBelqvvOWlM/c/L+p6TxnBeluN3+P/4w3npDb/DjeG89CU08j6kS5cuNb7at29f40mZlpZmXn/9dfv7FStWmJiYGDNlyhRjjGMndVJSklm8eLExxpgdO3YYy7IqXPn95JNPzJlnnlljjdatW5shQ4aYxYsXm6+++sp89dVXZsmSJSYgIMDMmTPHvqw6lmXZf7Cde+65ZtasWRXWv/jii6ZTp041ZggNDTWbN282xhiTmJhovv322wrrf/rpJ9OyZctaM+zevds8/vjj5qyzzjI2m8107drVPPvssyY/P7/Gzzfm+C+d8i8TDh06ZAICAirkWLdunWnRokW1+yckJJhly5bZ32/fvt00a9bMfofA9OnTTc+ePWvMkJiYaN57771q17/77rsmISGhxhpXXHFFja8LLrigxvOqS5cu5qmnnrK/f/vtt02zZs3MSy+9ZIxx7Lw87bTTzEcffWSMMWbTpk3GZrOZN998077+rbfeMh07dqx2/2bNmpkhQ4aYuXPn2l9z5swxAQEB5uGHH7Yvq8nJ52Xv3r3tVxXKPfbYY+bcc8+tdv+QkBCzZcsWY4wxKSkpZunSpRXWf//99yY+Pt6hDJmZmebOO+800dHRJjg42Fx55ZXm008/NWVlZTXub4wxrVq1sn8plZ+fbyzLMl9//bV9/Zo1a0xsbGy1+6ekpJhPP/3U/v7nn382LVq0sF/pGDdunBkwYECNGep7Xtb3nDSG87KcN5yX9T0ny7NzXtb/nDSm/udlfc9JYzgvy/E7/H/84bz0ht/h5dk5L30DjbwPCQkJMX/4wx/MQw89VOXrj3/8Y40nZZMmTUxWVlaFZevWrTOxsbHmL3/5i0MndUhIiMnOzra/DwsLq3CLzpYtW0xYWFiNNfbu3Wsuv/xy079//wq3rwcGBpr169fXuK8xx3/Q5eXlGWOMadmypf3bz3K//fabadasWY01OnXqZP8l0aFDB7No0aIK61esWGGio6NrzHDqt6QrVqwwN910kwkPDzdhYWFm1KhRNWaIiooyv/zyizHGmCNHjpiAgACzZs0a+/qNGzfW+O1xeHi4+e233+zvS0tLTWBgoMnJyTHGGLN+/fpa/y2aNGlS4y1n69atM02aNKmxRmBgoLn44ovNDTfcUOXrsssuq/G8atq0qf1LlXJLliwx4eHh5rnnnnPovAwNDa1wXoaGhla4jWrz5s0mPDy82v03bdpkzj33XDN69GhTVFRU4dgcOSeNqXhOxMTEVPi3NOb4L8LIyMhq9z/jjDPsj3ukpqZWurUuIyPDREREOJzBGGNKSkrMG2+8YS688EL7LW3lX9xVJzw83P7vUX5OZWZm2tdv2rSpxr/LsLCwCj9nysrKTGBgoNm5c6cx5vi36LX991nf87K+56QxnJflvOG8rO85aQznZbn6npPG1P+8rO85aQznZTl+h/+PP5yX3vA73BjOS19CI+9DunXrZp599tlq12dkZNR4UiYlJVW4gltu/fr1JjY21owaNarWkzohIaHCD7eRI0dW+KGzbt26Wm/1LPfss8+ahIQE+61KzvywffXVV80HH3xgkpKSzKpVqyqsX7duXa2/wOfMmWMSExPNkiVLzKuvvmo6dOhgvvjiC7Njxw6zePFic/bZZ5ubb7652v1PvgXrVAcOHDAvvfSS6dWrV40ZLrzwQjNmzBizfft2M23aNNOuXTtz44032tfffvvtpk+fPtXu36tXL/N///d/9vfz5s0zUVFR9vc//fRTrf8W559/vrnuuusqPBdW7ujRo+baa681559/fo01zj77bPs3nFWp7byMj483K1eurLT8q6++Ms2aNTOTJ0+u9byMjY01P/74o/19r169KnxJtHHjxlrPiaNHj5p7773XtG3b1ixfvtwY43zDtGTJEvPDDz+Y5OTkSredbdy4scZffI899pjp0KGD2bRpk5k5c6bp2bOn+fXXX40xx/9PTL9+/Wp83MOYms/LrKws88ADD5ikpKQaa/To0cM88MADxhhjXn75ZfsXfeWmT59uunXrVu3+6enp5oUXXrC///LLL01YWJj9SsJ///vfWv9PRH3Py/qek8ZwXpbzhvOyvuekMZyX5VxxThpTv/OyvuekMZyX5fgdXpGvn5fe8DvcGM5LX0Ij70PGjx9vxo8fX+36X3/91fTr16/a9SNHjqx2/3Xr1plWrVrVelIPHjzYPP/889WunzNnTq0N7MnWr19vOnfubEaOHOnUD9uTXw8//HCF9S+++KLp0qVLrXVmzpxpwsLCTJMmTUxwcHCFZ/Uvv/zyCt/oVpXB2eeWTrV69WoTHR1tbDabiYmJMevXrzfdu3c3cXFxJiEhwTRp0sR88cUX1e7/xRdfmJCQENO9e3fTt29fExgYWGEAkccee8xccMEFNWb48ccfTVxcnGnevLm5/PLLzR//+EczduxYc/nll5vo6GgTHx9v1q1bV2ONG264wdx+++3Vrt+wYYNJSUmpdv2wYcMq3cJWbsmSJaZp06a1npf9+/ev8Za5t956q9ZfXOW+/PJL06ZNGzNp0iQTFBTkVMN08qAus2fPrrD+jTfeMGlpaTXWuOuuu0xQUJBp3769CQ0NNTabzX5unnPOOfa7LWrKUNt5WduteQsWLDChoaEmODjYNGnSxCxbtsycccYZ5txzzzU9evQwAQEBZv78+dXuP3/+fBMUFGSGDx9uRo8ebZo1a1bh/0Q8//zztT7yUd/zsr7npDGclyfz9HlZ33PSGM7Lcq48J42p23npinPSGM5LY/gdXh1fPS+94Xe4MZyXvsQyxhhPj5yPhvHjjz9qzZo1uvHGG6tcv2HDBr399tuaOnVqtTX27dsnm82mqKioKtd/9tlnatKkifr16+dwriNHjugvf/mLlixZonfffVepqakO71uVjz/+WEFBQRo0aFCt2+bn5+vzzz9X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AAAAwIfQyAMAAAAA4ENo5AEAAAAA8CE08gAAAAAA+BAaeQAA/Ey/fv109913V7s+JSVFs2fPrrXOCy+8oKSkJNlsNs2ePVsPPfSQ0tPTXZYTAADUDY08AACNzHfffadbb73V/t6yLL3//vsVtiksLNSdd96p++67Tzt27KiwvSvV9OXAypUrdcEFF6hp06aKiopSv379dPjw4UrblZSUKD09XZZlKTMz0y05AQDwJjTyAAA0Mq1atVJYWFiN22RnZ+vo0aMaMmSI4uPja93e1VauXKnBgwdr4MCBWr16tb777jvdeeedstkq/1+Xe++9VwkJCQ2aDwAAT6KRBwDADx07dkx33nmnoqKi1KJFCz3wwAMyxkiqeGt9SkqKJOmKK66QZVlKSUnR3LlzdfbZZ0uSTjvtNFmWpS1btlT6jLKyMk2fPl2JiYkKCQlRenq6FixYUGGb++67T2eccYbCwsJ02mmnacqUKTp69Kgkae7cuZo2bZp++OEHWZYly7I0d+5cSdKECRM0btw4/eUvf9FZZ52l008/Xb///e8VEhJSof5nn32mzz//XI8//riL/uYAAPB+NPIAAPihV155RYGBgfr222/11FNP6YknntBLL71UabvvvvtOkjRnzhzl5OTou+++04gRI/TFF19IklavXq2cnBwlJSVV2vfJJ5/UzJkz9fjjj+vHH3/UoEGDdNlll2nTpk32bcLDwzV37lxt2LBBTz75pF588UU98cQTkqQRI0bonnvu0VlnnaWcnBzl5ORoxIgRysvL07fffquYmBj16tVLsbGxOv/887V8+fIKn79r1y7dcsst+ve//93gdwwAAOBJNPIAAPihpKQkPfHEEzrzzDN13XXX6a677rI30Cdr1aqVJCkqKkpxcXFq1aqVmjRpohYtWtjXx8XFKSAgoNK+jz/+uO677z5dc801OvPMM/XII48oPT29wkB6DzzwgHr16qWUlBQNHTpU99xzj9566y1JUpMmTdSsWTMFBgYqLi5OcXFxatKkiTZv3izp+PPzt9xyixYsWKCuXbvqwgsvtH9JYIzRDTfcoLFjx+qcc85x6d8dAADejkYeAAA/1KNHD1mWZX/fs2dPbdq0SaWlpS6pX1hYqJ07d6p3794Vlvfu3VsbN260v//Pf/6j3/3ud4qLi1OzZs00ZcoUZWdn11i7rKxMkvTHP/5RN954o7p06WL/UuLll1+WJD399NMqLCzUpEmTXHI8AAD4Ehp5AABQZyd/WSAdv1JevmzVqlW65pprdPHFF+vjjz9WRkaGJk+erCNHjtRYMz4+XpKUlpZWYXmHDh3sXwIsXrxYq1atUkhIiAIDA9WuXTtJ0jnnnKM//OEPLjk2AAC8VaCnAwAAANdbtWpVpfenn356lbfIBwUFOX2lPiIiQgkJCVq+fLn69u1rX75ixQp1795dkvTNN98oOTlZkydPtq/funVrhTrBwcGVPjslJUUJCQn6+eefKyz/5ZdfdPHFF0uSnnrqKf3f//2ffd3OnTs1aNAgzZ8/X+edd55TxwIAgK+hkQcAwA9t27ZNEydO1B//+EetXbtWTz/9tGbOnFnltikpKfryyy/Vu3dvhYSEqHnz5g59xp///GdNnTpVbdu2VXp6uubMmaPMzEy9/vrrkqR27dopOztbb775ps4991x98skneu+99yp9dlZWljIzM5WYmKjw8HCFhITYa3fu3Fnp6el65ZVX9N///lf/+c9/JElt2rSpUKdZs2aSpLZt2yoxMdGpvysAAHwNjTwAAH5o9OjROnz4sLp3766AgADddddduvXWW6vcdubMmZo4caJefPFFtW7dusqp5qoybtw4FRYW6p577lFeXp7S0tL04Ycf6vTTT5ckDRs2TBMmTNCdd96pkpISDRkyRFOmTNFDDz1kr3HVVVfp3XffVf/+/ZWfn685c+bohhtu0N13363i4mJNmDBB+/btU+fOnbVo0SK1bdu2vn81AAD4PMuUTyoLAAAAAAC8HoPdAQAAAADgQ2jkAQAAAADwITTyAAAAAAD4EBp5AAAAAAB8CI08AAAAAAA+hEYeAAAAAAAfQiMPAAAAAIAPoZEHAAAAAMCH0MgDAAAAAOBDaOQBAAAAAPAhNPIAAAAAAPiQ/wcGNhejSzOpRAAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 1200x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot_mantissa_importances(info_per_bit_dequan_noise, \"Tair\", \"x\", bit_filter=\"m\")"
]
},
{
"cell_type": "markdown",
"id": "e9e588a6-2f75-40b0-8223-9a4115a35e69",
"metadata": {},
"source": [
"While the idea works and the mantissa bits containing noise get zeroed reliably, this does not yield a method for deriving how many significant digits to actually drop.\n",
"\n",
"However, so far the noise magnitude was set to be an empirical constant. Considering that we know the scaling factor (presumably from metadata of the respective file or because we did the compression ourselves), we can use this information to add noise of similar magnitude as the smallest change we can store with the number of bits and the range of the data.\n",
"Considering we have a scaling factor $s$, data with a range of $r=max(data) - min(data)$ and store the quantized information using $n$ bits, the smallest change we can model is $s^{-1}$.\n",
"For the case illustrated so far, this essentially turns into\n",
"$$\n",
"s = \\frac{2^{n} - 1}{r} = \\frac{255}{83.72399933} = 3.04572168,\n",
"$$\n",
"meaning that the smallest change we can store is $0.32832941$.\n",
"When noise is added that is a magnitude smaller than this threshold, no real information should get lost, but we should get an accurate quantification of the essential bits."
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "050d7fae-65f4-4835-a474-ccb922b6a378",
"metadata": {},
"outputs": [],
"source": [
"a_scale = (1.0 / scale) * 10**-1\n",
"noise_scale = np.random.uniform(-a_scale, a_scale, size=_dequantized.shape)\n",
"\n",
"dequantized_noise_scale = xr.DataArray(\n",
" data=_dequantized + noise_scale,\n",
" dims=[\"time\", \"y\", \"x\"],\n",
" coords=dict(\n",
" time=ds.time,\n",
" )\n",
").to_dataset(name=\"Tair\")"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "4be9d92e-3fbb-474d-837c-5f669bc181e5",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Processing var: Tair for dim: y: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.55it/s]\n",
"Processing var: Tair for dim: x: 100%|████████████████████████████████| 1/1 [00:00<00:00, 1.49it/s]\n"
]
},
{
"data": {
"text/html": [
"<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
"<defs>\n",
"<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
"<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
"</symbol>\n",
"<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
"<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
"<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
"</symbol>\n",
"</defs>\n",
"</svg>\n",
"<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
" *\n",
" */\n",
"\n",
":root {\n",
" --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
" --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
" --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
" --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
" --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
" --xr-background-color: var(--jp-layout-color0, white);\n",
" --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
" --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
"}\n",
"\n",
"html[theme=dark],\n",
"body[data-theme=dark],\n",
"body.vscode-dark {\n",
" --xr-font-color0: rgba(255, 255, 255, 1);\n",
" --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
" --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
" --xr-border-color: #1F1F1F;\n",
" --xr-disabled-color: #515151;\n",
" --xr-background-color: #111111;\n",
" --xr-background-color-row-even: #111111;\n",
" --xr-background-color-row-odd: #313131;\n",
"}\n",
"\n",
".xr-wrap {\n",
" display: block !important;\n",
" min-width: 300px;\n",
" max-width: 700px;\n",
"}\n",
"\n",
".xr-text-repr-fallback {\n",
" /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
" display: none;\n",
"}\n",
"\n",
".xr-header {\n",
" padding-top: 6px;\n",
" padding-bottom: 6px;\n",
" margin-bottom: 4px;\n",
" border-bottom: solid 1px var(--xr-border-color);\n",
"}\n",
"\n",
".xr-header > div,\n",
".xr-header > ul {\n",
" display: inline;\n",
" margin-top: 0;\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-obj-type,\n",
".xr-array-name {\n",
" margin-left: 2px;\n",
" margin-right: 10px;\n",
"}\n",
"\n",
".xr-obj-type {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-sections {\n",
" padding-left: 0 !important;\n",
" display: grid;\n",
" grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
"}\n",
"\n",
".xr-section-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-section-item input {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-item input + label {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label {\n",
" cursor: pointer;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-item input:enabled + label:hover {\n",
" color: var(--xr-font-color0);\n",
"}\n",
"\n",
".xr-section-summary {\n",
" grid-column: 1;\n",
" color: var(--xr-font-color2);\n",
" font-weight: 500;\n",
"}\n",
"\n",
".xr-section-summary > span {\n",
" display: inline-block;\n",
" padding-left: 0.5em;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label {\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-section-summary-in + label:before {\n",
" display: inline-block;\n",
" content: '►';\n",
" font-size: 11px;\n",
" width: 15px;\n",
" text-align: center;\n",
"}\n",
"\n",
".xr-section-summary-in:disabled + label:before {\n",
" color: var(--xr-disabled-color);\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label:before {\n",
" content: '▼';\n",
"}\n",
"\n",
".xr-section-summary-in:checked + label > span {\n",
" display: none;\n",
"}\n",
"\n",
".xr-section-summary,\n",
".xr-section-inline-details {\n",
" padding-top: 4px;\n",
" padding-bottom: 4px;\n",
"}\n",
"\n",
".xr-section-inline-details {\n",
" grid-column: 2 / -1;\n",
"}\n",
"\n",
".xr-section-details {\n",
" display: none;\n",
" grid-column: 1 / -1;\n",
" margin-bottom: 5px;\n",
"}\n",
"\n",
".xr-section-summary-in:checked ~ .xr-section-details {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-array-wrap {\n",
" grid-column: 1 / -1;\n",
" display: grid;\n",
" grid-template-columns: 20px auto;\n",
"}\n",
"\n",
".xr-array-wrap > label {\n",
" grid-column: 1;\n",
" vertical-align: top;\n",
"}\n",
"\n",
".xr-preview {\n",
" color: var(--xr-font-color3);\n",
"}\n",
"\n",
".xr-array-preview,\n",
".xr-array-data {\n",
" padding: 0 5px !important;\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-array-data,\n",
".xr-array-in:checked ~ .xr-array-preview {\n",
" display: none;\n",
"}\n",
"\n",
".xr-array-in:checked ~ .xr-array-data,\n",
".xr-array-preview {\n",
" display: inline-block;\n",
"}\n",
"\n",
".xr-dim-list {\n",
" display: inline-block !important;\n",
" list-style: none;\n",
" padding: 0 !important;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list li {\n",
" display: inline-block;\n",
" padding: 0;\n",
" margin: 0;\n",
"}\n",
"\n",
".xr-dim-list:before {\n",
" content: '(';\n",
"}\n",
"\n",
".xr-dim-list:after {\n",
" content: ')';\n",
"}\n",
"\n",
".xr-dim-list li:not(:last-child):after {\n",
" content: ',';\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-has-index {\n",
" font-weight: bold;\n",
"}\n",
"\n",
".xr-var-list,\n",
".xr-var-item {\n",
" display: contents;\n",
"}\n",
"\n",
".xr-var-item > div,\n",
".xr-var-item label,\n",
".xr-var-item > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-even);\n",
" margin-bottom: 0;\n",
"}\n",
"\n",
".xr-var-item > .xr-var-name:hover span {\n",
" padding-right: 5px;\n",
"}\n",
"\n",
".xr-var-list > li:nth-child(odd) > div,\n",
".xr-var-list > li:nth-child(odd) > label,\n",
".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
" background-color: var(--xr-background-color-row-odd);\n",
"}\n",
"\n",
".xr-var-name {\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-var-dims {\n",
" grid-column: 2;\n",
"}\n",
"\n",
".xr-var-dtype {\n",
" grid-column: 3;\n",
" text-align: right;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-preview {\n",
" grid-column: 4;\n",
"}\n",
"\n",
".xr-index-preview {\n",
" grid-column: 2 / 5;\n",
" color: var(--xr-font-color2);\n",
"}\n",
"\n",
".xr-var-name,\n",
".xr-var-dims,\n",
".xr-var-dtype,\n",
".xr-preview,\n",
".xr-attrs dt {\n",
" white-space: nowrap;\n",
" overflow: hidden;\n",
" text-overflow: ellipsis;\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-var-name:hover,\n",
".xr-var-dims:hover,\n",
".xr-var-dtype:hover,\n",
".xr-attrs dt:hover {\n",
" overflow: visible;\n",
" width: auto;\n",
" z-index: 1;\n",
"}\n",
"\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" display: none;\n",
" background-color: var(--xr-background-color) !important;\n",
" padding-bottom: 5px !important;\n",
"}\n",
"\n",
".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
".xr-var-data-in:checked ~ .xr-var-data,\n",
".xr-index-data-in:checked ~ .xr-index-data {\n",
" display: block;\n",
"}\n",
"\n",
".xr-var-data > table {\n",
" float: right;\n",
"}\n",
"\n",
".xr-var-name span,\n",
".xr-var-data,\n",
".xr-index-name div,\n",
".xr-index-data,\n",
".xr-attrs {\n",
" padding-left: 25px !important;\n",
"}\n",
"\n",
".xr-attrs,\n",
".xr-var-attrs,\n",
".xr-var-data,\n",
".xr-index-data {\n",
" grid-column: 1 / -1;\n",
"}\n",
"\n",
"dl.xr-attrs {\n",
" padding: 0;\n",
" margin: 0;\n",
" display: grid;\n",
" grid-template-columns: 125px auto;\n",
"}\n",
"\n",
".xr-attrs dt,\n",
".xr-attrs dd {\n",
" padding: 0;\n",
" margin: 0;\n",
" float: left;\n",
" padding-right: 10px;\n",
" width: auto;\n",
"}\n",
"\n",
".xr-attrs dt {\n",
" font-weight: normal;\n",
" grid-column: 1;\n",
"}\n",
"\n",
".xr-attrs dt:hover span {\n",
" display: inline-block;\n",
" background: var(--xr-background-color);\n",
" padding-right: 10px;\n",
"}\n",
"\n",
".xr-attrs dd {\n",
" grid-column: 2;\n",
" white-space: pre-wrap;\n",
" word-break: break-all;\n",
"}\n",
"\n",
".xr-icon-database,\n",
".xr-icon-file-text2,\n",
".xr-no-icon {\n",
" display: inline-block;\n",
" vertical-align: middle;\n",
" width: 1em;\n",
" height: 1.5em !important;\n",
" stroke-width: 0;\n",
" stroke: currentColor;\n",
" fill: currentColor;\n",
"}\n",
"</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt; Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) &lt;U1 8B &#x27;x&#x27; &#x27;y&#x27;\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B 4 3</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-9ae38c6b-1f94-46da-aac7-26ac80ffcaf5' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-9ae38c6b-1f94-46da-aac7-26ac80ffcaf5' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span class='xr-has-index'>dim</span>: 2</li><li><span class='xr-has-index'>inflevel</span>: 1</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-5166d859-4a99-4d39-b050-58726288ea3d' class='xr-section-summary-in' type='checkbox' checked><label for='section-5166d859-4a99-4d39-b050-58726288ea3d' class='xr-section-summary' >Coordinates: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>dim</span></div><div class='xr-var-dims'>(dim)</div><div class='xr-var-dtype'>&lt;U1</div><div class='xr-var-preview xr-preview'>&#x27;x&#x27; &#x27;y&#x27;</div><input id='attrs-0b80e016-db58-4725-907a-542d994954d0' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-0b80e016-db58-4725-907a-542d994954d0' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-46e85a9a-45b9-4e94-a8e3-3b1f5df5070e' class='xr-var-data-in' type='checkbox'><label for='data-46e85a9a-45b9-4e94-a8e3-3b1f5df5070e' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'><dt><span>description :</span></dt><dd>dimension of the source dataset along which the bitwise information has been analysed.</dd></dl></div><div class='xr-var-data'><pre>array([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;&lt;U1&#x27;)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>inflevel</span></div><div class='xr-var-dims'>(inflevel)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>0.99</div><input id='attrs-ddc18834-501b-43ce-915c-4fea9d37cf47' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-ddc18834-501b-43ce-915c-4fea9d37cf47' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-cf5579b9-6e34-464e-9517-0956703f1c8c' class='xr-var-data-in' type='checkbox'><label for='data-cf5579b9-6e34-464e-9517-0956703f1c8c' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([0.99])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-76191824-4880-49b7-ac80-841435e37535' class='xr-section-summary-in' type='checkbox' checked><label for='section-76191824-4880-49b7-ac80-841435e37535' class='xr-section-summary' >Data variables: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span>Tair</span></div><div class='xr-var-dims'>(dim, inflevel)</div><div class='xr-var-dtype'>int64</div><div class='xr-var-preview xr-preview'>4 3</div><input id='attrs-f849cd08-2c7a-4a6f-a3bc-b76be749d800' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-f849cd08-2c7a-4a6f-a3bc-b76be749d800' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-d4088487-5a5f-4c6d-a7d7-73e96cb63472' class='xr-var-data-in' type='checkbox'><label for='data-d4088487-5a5f-4c6d-a7d7-73e96cb63472' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([[4],\n",
" [3]])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-b7fc0eaf-d78f-472e-b40f-9d0be115b984' class='xr-section-summary-in' type='checkbox' ><label for='section-b7fc0eaf-d78f-472e-b40f-9d0be115b984' class='xr-section-summary' >Indexes: <span>(2)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>dim</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-e2f739ab-9f17-410d-a78e-ef06885bbe74' class='xr-index-data-in' type='checkbox'/><label for='index-e2f739ab-9f17-410d-a78e-ef06885bbe74' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([&#x27;x&#x27;, &#x27;y&#x27;], dtype=&#x27;object&#x27;, name=&#x27;dim&#x27;))</pre></div></li><li class='xr-var-item'><div class='xr-index-name'><div>inflevel</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-40702886-c0d9-410e-93bd-ee1d3b4426a0' class='xr-index-data-in' type='checkbox'/><label for='index-40702886-c0d9-410e-93bd-ee1d3b4426a0' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Index([0.99], dtype=&#x27;float64&#x27;, name=&#x27;inflevel&#x27;))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-cb7458da-0919-4f8d-8487-8d6df6dd6fbf' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-cb7458da-0919-4f8d-8487-8d6df6dd6fbf' class='xr-section-summary' title='Expand/collapse section'>Attributes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'></dl></div></li></ul></div></div>"
],
"text/plain": [
"<xarray.Dataset> Size: 32B\n",
"Dimensions: (dim: 2, inflevel: 1)\n",
"Coordinates:\n",
" * dim (dim) <U1 8B 'x' 'y'\n",
" * inflevel (inflevel) float64 8B 0.99\n",
"Data variables:\n",
" Tair (dim, inflevel) int64 16B 4 3"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"info_per_bit_dequan_noise_scale = xb.get_bitinformation(dequantized_noise_scale.isel(time=slice(0, 10)), dim=[\"y\", \"x\"], implementation=\"python\")\n",
"keepbits_dequan_noise_scale = xb.get_keepbits(info_per_bit_dequan_noise_scale, inf_level=0.99)\n",
"keepbits_dequan_noise_scale"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "f0f09723-4b0e-4a66-a54b-794f827f7e11",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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U2pqarnjqampys3NdamNadOm6fjx4xo8eLDzWMuWLbVgwQK9//77WrRokaKiotSzZ09t27atynbGjx+v/Px859eePXtq9lAAAAAAAHiZz1et//WKfMYYl1bpW7RokSZPnqylS5eqYcOGzuPdunVTt27dnJ979uypTp066fnnn9esWbMqbSsyMlKRkZE1fAIAAAAAAOqOzwr5Bg0aKDQ0tMLo+4EDByqM0v/a4sWLNXLkSL399tu67LLLqr02JCREF110UbUj8gAAAAAABAqfvVofERGhzp07a8WKFeWOr1ixQj169KjyvkWLFum2227Tm2++qYEDB57x+xhjlJ2drfT09FpnBgAAAADA13z6av24ceM0bNgwXXjhherevbtefvll7d69W6NGjZJ0au76vn37tHDhQkmnivjhw4dr5syZ6tatm3M0Pzo6WomJiZKkKVOmqFu3bjrvvPNUUFCgWbNmKTs7Wy+++KJvHhIAAAAAAA/yaSE/ZMgQHT58WE888YRycnLUtm1bffzxx2rSpIkkKScnp9ye8i+99JJOnjype++9V/fee6/z+K233qoFCxZIkvLy8nTnnXcqNzdXiYmJ6tixo7788kt16dKlTp8NAAAAAABv8Ok+8v7Knf37AAAAAACorYDYRx4AAAAAALiPQh4AAAAAgADi833kUXM2u9G3O4/oQGGxGsZHqUuzegoNsXwdCwAAAADgRRTyAWrZphxN+WCLcvKLncfSE6M06erWGtCWrfYAAAAAIFjxan0AWrYpR3e//n25Il6ScvOLdffr32vZphwfJQMAAAAAeBuFfICx2Y2mfLBFlW014Dg25YMtstnZjAAAAAAAghGFfID5dueRCiPxpzOScvKL9e3OI3UXCgAAAABQZyjkA8yBwqqL+JpcBwAAAAAILBTyAaZhfJRHrwMAAAAABBYK+QDTpVk9pSdGqapN5iydWr2+S7N6dRkLAAAAAFBHKOQDTGiIpUlXt5akCsW84/Okq1uznzwAAAAABCkK+QA0oG265tzSSWmJ5V+fT0uM0pxbOrGPPAAAAAAEsTBfB0DNDGibrn6t0zT/653680dblRgdrq8e6quwUH42AwAAAADBjKovgIWGWLqlWxNFhIUo/0SZdh0u8nUkAAAAAICXUcgHuKjwUHVqnCRJWrfjsG/DAAAAAAC8jkI+CHRv3kCStJ5C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Cy64wOzdu7fK+0NCQswll1xi3njjDWcWd2VnZ5u0tDQTEhJi2rVrZ/bs2WPatm1rYmNjTVxcnElOTjbffvttlffbbDbzxz/+0cTExJiQkBATEhJiLMsylmWZJk2amPfff9+lHNOnTzeNGjUqd39ISIhp1KiRee6552r0bL9+zjP1yw8//NCMHDnS/PGPfzRbt24td+7IkSOmb9++1d5fVlZmJkyYYHr37m0ef/xxY4wxTz/9tImJiTERERHOvuqu8PBws2XLFpeuXb58uSkrK3N+fuONN0z79u1NTEyMadGihZk5c2a190+dOtX53+SRI0fMpZdeWu7PY8CAAebo0aPVthEXF2duv/128/XXX7uUuTI7d+40nTp1MqGhoebKK680+fn55rLLLnNmad68ufnPf/5TbRsvvviiady4sbNfOr569uxp/vnPf7qUw5v90pU+aQz90hj/6Jee6JPG0C+N8V6fNMb1flnbPmkM/fJ0/BtevUDql/7yb7gx9MtAQSEfRM7UqWfOnGliYmLMvffea2655RYTGRlp/vKXvzjP5+bmnvE/ivvuu8+0bNnSzJo1y/Tp08dce+21pm3btmbNmjXmyy+/NG3btjWPPvpotW38+i+F04vQ0/+3uvt/+uknY4wxc+fONbGxsWbatGnm66+/Ns8//7xJTEw0zz//fLUZ0tPTnX+xDx482Fx22WXm4MGDxhhjDh8+bK666irz+9//vsr7LcsyAwYMMBERESY5Odncd999Jisrq9rv+WuXX365+f3vf2/+9a9/mTFjxpjWrVubG264wZSWlpqysjJzyy23mMsuu6zK+x9++GHTqlUr895775lly5aZXr16maeeesps3brVTJw40URGRprly5dXm+GJJ54wCQkJ5q9//avJysoy+/fvN/v27TNZWVnmr3/9q0lMTDR/+tOf3HquX8vOzjaWZVV5/o033jChoaFm4MCB5re//a2Jiooyr7/+uvO8K/3yscceM6mpqWbcuHGmdevWZtSoUSYzM9O8/vrrZuHChaZRo0bmqaeeqvL+5OTkSr8syzKJiYnOz9U5vV/+4x//MKGhoeb+++83b7zxhnnwwQdNZGSkefPNN6u8v3Hjxmbjxo3GGGP+8Ic/mI4dO5rvv//enDhxwmRnZ5tu3bqZkSNHVpvBsizTpk0bY1mWadmypXn22WedmVx1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",
"text/plain": [
"<Figure size 1200x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plot_mantissa_importances(info_per_bit_dequan_noise_scale, \"Tair\", \"y\", bit_filter=\"m\")"
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "b767c439-f99b-4379-a82b-6cef6e91b936",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Baseline MAE=0.082; after adding noise, MAE=0.083\n"
]
}
],
"source": [
"mae_dequantized_baseline = xs.mae(ds.Tair, dequantized.Tair, dim=[\"time\", \"y\", \"x\"], skipna=True)\n",
"mae_noise_scale = xs.mae(ds.Tair, dequantized_noise_scale.Tair, dim=[\"time\", \"y\", \"x\"], skipna=True)\n",
"\n",
"print(f\"Baseline MAE={mae_dequantized_baseline.item():.3f}; after adding noise, MAE={mae_noise_scale:.3f}\")"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.3"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment