Skip to content

Instantly share code, notes, and snippets.

@golobor
Created December 14, 2018 06:09
Show Gist options
  • Save golobor/17fb28060d87e40570af6784c95a756c to your computer and use it in GitHub Desktop.
Save golobor/17fb28060d87e40570af6784c95a756c to your computer and use it in GitHub Desktop.
Yeast dCohesin Hi-C, fig6
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"metadata": {
"toc": "true"
},
"cell_type": "markdown",
"source": "# Table of Contents\n <p>"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Download Hi-C data, chromosome sizes and centromere positions."
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:07:03.528812Z",
"end_time": "2018-12-14T06:07:06.420596Z"
},
"trusted": true
},
"cell_type": "code",
"source": "%%bash\nmkdir -p /tmp/yeast_cohesin/\nwget ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE87nnn/GSE87311/suppl/GSE87311_matrices.tar.gz -qO /tmp/yeast_cohesin/GSE87311_matrices.tar.gz\ntar -xvzf /tmp/yeast_cohesin/GSE87311_matrices.tar.gz -C /tmp/yeast_cohesin/\n\nwget \\\n https://gist.github.com/golobor/0a53218fc0c3dc49473764907c0a8df5/raw/4a1ec7eaf1f166d601d5db1197db7a75954ad2e8/w303.roman.chrom.sizes \\\n -qO /tmp/yeast_cohesin/w303.roman.chrom.sizes\n \nwget \\\n https://gist.githubusercontent.com/golobor/0a53218fc0c3dc49473764907c0a8df5/raw/ca31a2a1840afd78b54d57b50a808605ccf9787f/w303.centromeres.tsv \\\n -qO /tmp/yeast_cohesin/w303.centromeres.tsv",
"execution_count": 1,
"outputs": [
{
"output_type": "stream",
"text": "./CH-R1.tsv\n./C-R1.tsv\n./G1-R1.tsv\n./G1-R2.tsv\n./MD-R1.tsv\n./MD-R2.tsv\n./MH-R1.tsv\n./MH-R2.tsv\n./M-R1.tsv\n./M-R2.tsv\n",
"name": "stdout"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Reconstruct balanced coolers."
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:07:22.415411Z",
"end_time": "2018-12-14T06:07:36.230073Z"
},
"trusted": true
},
"cell_type": "code",
"source": "%%bash\nparallel -P8 'cooler load -f bg2 /tmp/yeast_cohesin/w303.roman.chrom.sizes:10000 <(sed \"1d\" {}) {.}.cool' ::: /tmp/yeast_cohesin/*.tsv\nparallel -P8 'cooler balance {}' ::: /tmp/yeast_cohesin/*.cool",
"execution_count": 2,
"outputs": [
{
"output_type": "stream",
"text": "INFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmphtup3v_q.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmphtup3v_q.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/C-R1.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/C-R1.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [659152]\nINFO:cooler:current: [659152]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmpxn4movsy.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmpxn4movsy.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/CH-R1.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/CH-R1.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [668195]\nINFO:cooler:current: [668195]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmps1fr0edv.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmps1fr0edv.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/MD-R2.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/MD-R2.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [715412]\nINFO:cooler:current: [715412]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmp0ulpp8c8.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmp0ulpp8c8.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/G1-R2.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/G1-R2.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [727775]\nINFO:cooler:current: [727775]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmp7o1d8pgl.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmp7o1d8pgl.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/G1-R1.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/G1-R1.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [727022]\nINFO:cooler:current: [727022]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmphqm0ik4b.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmphqm0ik4b.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/MH-R2.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/MH-R2.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [728284]\nINFO:cooler:current: [728284]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmp7uzv0g6n.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmp7uzv0g6n.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/MH-R1.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/MH-R1.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [716098]\nINFO:cooler:current: [716098]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmphyft5fq8.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmphyft5fq8.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/MD-R1.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/MD-R1.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [718947]\nINFO:cooler:current: [718947]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nTraceback (most recent call last):\n File \"/home/golobor/miniconda3/bin/cooler\", line 11, in <module>\n sys.exit(cli())\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/click/core.py\", line 764, in __call__\n return self.main(*args, **kwargs)\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/click/core.py\", line 717, in main\n rv = self.invoke(ctx)\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/click/core.py\", line 1137, in invoke\n return _process_result(sub_ctx.command.invoke(sub_ctx))\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/click/core.py\", line 956, in invoke\n return ctx.invoke(self.callback, **ctx.params)\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/click/core.py\", line 555, in invoke\n return callback(*args, **kwargs)\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/cooler/cli/load.py\", line 310, in load\n ensure_sorted=False,\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/cooler/io.py\", line 505, in create_from_unordered\n for i, chunk in enumerate(chunks):\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/pandas/io/parsers.py\", line 1007, in __next__\n return self.get_chunk()\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/pandas/io/parsers.py\", line 1070, in get_chunk\n return self.read(nrows=size)\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/pandas/io/parsers.py\", line 1036, in read\n ret = self._engine.read(nrows)\n File \"/home/golobor/miniconda3/lib/python3.6/site-packages/pandas/io/parsers.py\", line 1848, in read\n data = self._reader.read(nrows)\n File \"pandas/_libs/parsers.pyx\", line 876, in pandas._libs.parsers.TextReader.read\n File \"pandas/_libs/parsers.pyx\", line 903, in pandas._libs.parsers.TextReader._read_low_memory\n File \"pandas/_libs/parsers.pyx\", line 968, in pandas._libs.parsers.TextReader._read_rows\n File \"pandas/_libs/parsers.pyx\", line 1028, in pandas._libs.parsers.TextReader._convert_column_data\npandas.errors.ParserError: Too many columns specified: expected 7 and found 3\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmpl84vswzb.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmpl84vswzb.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/M-R1.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/M-R1.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [726819]\nINFO:cooler:current: [726819]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:fields: {'chrom1': 0, 'start1': 1, 'end1': 2, 'chrom2': 3, 'start2': 4, 'end2': 5, 'count': 6}\nINFO:cooler:dtypes: {'chrom1': <class 'str'>, 'start1': <class 'int'>, 'end1': <class 'int'>, 'chrom2': <class 'str'>, 'start2': <class 'int'>, 'end2': <class 'int'>, 'count': <class 'int'>}\nINFO:cooler:Writing chunk 0: /tmp/tmpym5twkek.multi.cool::0\nINFO:cooler:Creating cooler at \"/tmp/tmpym5twkek.multi.cool::/0\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Merging into /tmp/yeast_cohesin/M-R2.cool\nINFO:cooler:Creating cooler at \"/tmp/yeast_cohesin/M-R2.cool::/\"\nINFO:cooler:Writing chroms\nINFO:cooler:Writing bins\nINFO:cooler:Writing pixels\nINFO:cooler:nnzs: [732799]\nINFO:cooler:current: [732799]\nINFO:cooler:Writing indexes\nINFO:cooler:Writing info\nINFO:cooler:Done\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/G1-R1.cool\"\nINFO:cooler:variance is 1744165351.2891414\nINFO:cooler:variance is 1111417.0144453237\nINFO:cooler:variance is 35294.833182559836\nINFO:cooler:variance is 2528.4852929150816\nINFO:cooler:variance is 308.99017877502746\nINFO:cooler:variance is 49.64011756685967\nINFO:cooler:variance is 8.66779537708166\nINFO:cooler:variance is 1.5467613746233713\nINFO:cooler:variance is 0.27747057671271497\nINFO:cooler:variance is 0.04984175991953176\nINFO:cooler:variance is 0.00895585840607472\nINFO:cooler:variance is 0.0016093825275285173\nINFO:cooler:variance is 0.00028921426940041423\nINFO:cooler:variance is 5.197361817509729e-05\nINFO:cooler:variance is 9.339995564394162e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/G1-R2.cool\"\nINFO:cooler:variance is 4230869580.273767\nINFO:cooler:variance is 4978979.221451424\nINFO:cooler:variance is 223558.530522847\nINFO:cooler:variance is 23889.608462897293\nINFO:cooler:variance is 4685.383729197531\nINFO:cooler:variance is 1200.4029784637137\nINFO:cooler:variance is 328.95277940402\nINFO:cooler:variance is 91.57740166490642\nINFO:cooler:variance is 25.571153709190067\nINFO:cooler:variance is 7.146752608802346\nINFO:cooler:variance is 1.997602146697108\nINFO:cooler:variance is 0.5584033572364334\nINFO:cooler:variance is 0.15609267819688735\nINFO:cooler:variance is 0.04363388458272158\nINFO:cooler:variance is 0.012197279180937345\nINFO:cooler:variance is 0.003409601902312356\nINFO:cooler:variance is 0.0009531114163962914\nINFO:cooler:variance is 0.00026643059557123177\nINFO:cooler:variance is 7.447736650524358e-05\nINFO:cooler:variance is 2.081922911163503e-05\nINFO:cooler:variance is 5.819757895422071e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/MH-R1.cool\"\nINFO:cooler:variance is 597326217.1408662\nINFO:cooler:variance is 772446.405930569\nINFO:cooler:variance is 38976.16220871114\nINFO:cooler:variance is 4568.463192709372\nINFO:cooler:variance is 963.8057803179177\nINFO:cooler:variance is 284.1850492397666\nINFO:cooler:variance is 93.92751853924942\nINFO:cooler:variance is 32.01633717296772\nINFO:cooler:variance is 11.012582486647261\nINFO:cooler:variance is 3.7959861368565506\nINFO:cooler:variance is 1.3096870503894789\nINFO:cooler:variance is 0.4519205740221303\nINFO:cooler:variance is 0.15596385300422858\nINFO:cooler:variance is 0.05382452230315769\nINFO:cooler:variance is 0.018576006845316562\nINFO:cooler:variance is 0.006410913705394857\nINFO:cooler:variance is 0.002212544891678945\nINFO:cooler:variance is 0.0007635936214983588\nINFO:cooler:variance is 0.0002635323551749124\nINFO:cooler:variance is 9.095045205500861e-05\nINFO:cooler:variance is 3.13889118317792e-05\nINFO:cooler:variance is 1.0832966407526397e-05\nINFO:cooler:variance is 3.7386834459630954e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/CH-R1.cool\"\nINFO:cooler:variance is 267958555.46394852\nINFO:cooler:variance is 500353.33887914644\nINFO:cooler:variance is 67100.70818596163\nINFO:cooler:variance is 9093.064789329965\nINFO:cooler:variance is 1663.9703233681191\nINFO:cooler:variance is 349.38486486848143\nINFO:cooler:variance is 95.69432337592185\nINFO:cooler:variance is 32.495179512625526\nINFO:cooler:variance is 12.571713754362873\nINFO:cooler:variance is 5.172730505340602\nINFO:cooler:variance is 2.179293043316918\nINFO:cooler:variance is 0.927394147692084\nINFO:cooler:variance is 0.3958829062305975\nINFO:cooler:variance is 0.16926381039984326\nINFO:cooler:variance is 0.07239295749033697\nINFO:cooler:variance is 0.030971444463754872\nINFO:cooler:variance is 0.013250198450414486\nINFO:cooler:variance is 0.005669141759646022\nINFO:cooler:variance is 0.002425502802072217\nINFO:cooler:variance is 0.0010377615780495497\nINFO:cooler:variance is 0.0004440048201210892\nINFO:cooler:variance is 0.0001899687557314328\nINFO:cooler:variance is 8.127819511841745e-05\nINFO:cooler:variance is 3.4775048004025415e-05\nINFO:cooler:variance is 1.4878538662757085e-05\nINFO:cooler:variance is 6.365808708129425e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/MH-R2.cool\"\nINFO:cooler:variance is 3081648244.340192\nINFO:cooler:variance is 11481677.456979502\nINFO:cooler:variance is 963225.6304835789\nINFO:cooler:variance is 176157.0696908625\nINFO:cooler:variance is 28148.723316578966\nINFO:cooler:variance is 5337.834339301356\nINFO:cooler:variance is 1065.616292206187\nINFO:cooler:variance is 247.31065976181486\nINFO:cooler:variance is 67.31448633754235\nINFO:cooler:variance is 21.3440840960446\nINFO:cooler:variance is 7.518703703652071\nINFO:cooler:variance is 2.811737828750834\nINFO:cooler:variance is 1.083455862886728\nINFO:cooler:variance is 0.42335780231532055\nINFO:cooler:variance is 0.1664839188446319\nINFO:cooler:variance is 0.06565406530954151\nINFO:cooler:variance is 0.025924073727203623\nINFO:cooler:variance is 0.010241987895896238\nINFO:cooler:variance is 0.004047384742519646\nINFO:cooler:variance is 0.0015995983082661136\nINFO:cooler:variance is 0.0006322213025110552\nINFO:cooler:variance is 0.0002498826497241394\nINFO:cooler:variance is 9.876600411691247e-05\nINFO:cooler:variance is 3.903736409923413e-05\nINFO:cooler:variance is 1.5429590785200296e-05\nINFO:cooler:variance is 6.098578371658584e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/C-R1.cool\"\nINFO:cooler:variance is 711871954.3645015\nINFO:cooler:variance is 1459161.7053159755\nINFO:cooler:variance is 236924.3657480177\nINFO:cooler:variance is 53965.72393388258\nINFO:cooler:variance is 14128.491587226024\nINFO:cooler:variance is 4125.348678776856\nINFO:cooler:variance is 1279.3022564204696\nINFO:cooler:variance is 423.0758442907651\nINFO:cooler:variance is 147.64123392067717\nINFO:cooler:variance is 54.56830558080697\nINFO:cooler:variance is 21.35337625394367\nINFO:cooler:variance is 8.841357254129278\nINFO:cooler:variance is 3.856135891112981\nINFO:cooler:variance is 1.7595423695497567\nINFO:cooler:variance is 0.8327335039887422\nINFO:cooler:variance is 0.4054259220900161\nINFO:cooler:variance is 0.2015377059246058\nINFO:cooler:variance is 0.10170842073815022\nINFO:cooler:variance is 0.051872822451809505\nINFO:cooler:variance is 0.026653205699730547\nINFO:cooler:variance is 0.013764755946790915\nINFO:cooler:variance is 0.007133941760320286\nINFO:cooler:variance is 0.003706298874904013\nINFO:cooler:variance is 0.001928786586859142\nINFO:cooler:variance is 0.0010049097756847291\nINFO:cooler:variance is 0.0005239859912025611\nINFO:cooler:variance is 0.00027337012782216815\nINFO:cooler:variance is 0.00014267584956683885\nINFO:cooler:variance is 7.448433148557532e-05\nINFO:cooler:variance is 3.889203689595513e-05\nINFO:cooler:variance is 2.0310109166034333e-05\nINFO:cooler:variance is 1.0607264934528771e-05\nINFO:cooler:variance is 5.5401535021414435e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/MD-R2.cool\"\nINFO:cooler:variance is 4274352778.558883\nINFO:cooler:variance is 39249951.398369886\nINFO:cooler:variance is 8659631.700936316\nINFO:cooler:variance is 3833744.9165182994\nINFO:cooler:variance is 1928339.806798986\nINFO:cooler:variance is 1118587.5308216081\nINFO:cooler:variance is 654626.2161109493\nINFO:cooler:variance is 396178.1266707091\nINFO:cooler:variance is 238837.54813107502\nINFO:cooler:variance is 145519.38451860778\nINFO:cooler:variance is 88446.7476563136\nINFO:cooler:variance is 53975.02790743477\nINFO:cooler:variance is 32901.066680913995\nINFO:cooler:variance is 20088.715542282596\nINFO:cooler:variance is 12259.435308477938\nINFO:cooler:variance is 7486.934141401933\nINFO:cooler:variance is 4571.240594536386\nINFO:cooler:variance is 2791.940483279633\nINFO:cooler:variance is 1705.0167909821132\nINFO:cooler:variance is 1041.3991759028165\nINFO:cooler:variance is 636.0349864738394\nINFO:cooler:variance is 388.48703272176914\nINFO:cooler:variance is 237.2788794442343\nINFO:cooler:variance is 144.9297049116218\nINFO:cooler:variance is 88.52148020344848\nINFO:cooler:variance is 54.06896121927081\nINFO:cooler:variance is 33.02504351577153\nINFO:cooler:variance is 20.171726280210994\nINFO:cooler:variance is 12.320843035997317\nINFO:cooler:variance is 7.525582632915351\nINFO:cooler:variance is 4.596618585234905\nINFO:cooler:variance is 2.8076186741107576\nINFO:cooler:variance is 1.7148927315009677\nINFO:cooler:variance is 1.0474578319517462\nINFO:cooler:variance is 0.6397873432275241\nINFO:cooler:variance is 0.39078256333161066\nINFO:cooler:variance is 0.23869010262082682\nINFO:cooler:variance is 0.1457920701317867\nINFO:cooler:variance is 0.08904985402689256\nINFO:cooler:variance is 0.054391705211468674\nINFO:cooler:variance is 0.03322247824791892\nINFO:cooler:variance is 0.020292309095857313\nINFO:cooler:variance is 0.012394552296593322\nINFO:cooler:variance is 0.007570599555307501\nINFO:cooler:variance is 0.004624126049956237\nINFO:cooler:variance is 0.0028244187554760675\nINFO:cooler:variance is 0.001725156441127701\nINFO:cooler:variance is 0.0010537264983570948\nINFO:cooler:variance is 0.0006436166988864602\nINFO:cooler:variance is 0.00039312142913782415\nINFO:cooler:variance is 0.00024011877716508334\nINFO:cooler:variance is 0.00014666467879254934\nINFO:cooler:variance is 8.958286383447014e-05\nINFO:cooler:variance is 5.47172614844439e-05\nINFO:cooler:variance is 3.3421332504223005e-05\nINFO:cooler:variance is 2.0413767841357224e-05\nINFO:cooler:variance is 1.2468740299638131e-05\nINFO:cooler:variance is 7.61591326547393e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/MD-R1.cool\"\nINFO:cooler:variance is 6329006939.968121\nINFO:cooler:variance is 53135466.28561227\nINFO:cooler:variance is 12330308.945930764\nINFO:cooler:variance is 5629827.376375835\nINFO:cooler:variance is 2944386.9933183035\nINFO:cooler:variance is 1735534.6649825186\nINFO:cooler:variance is 1034206.7466939868\nINFO:cooler:variance is 632173.6090153349\nINFO:cooler:variance is 385769.0171533851\nINFO:cooler:variance is 237158.91879064165\nINFO:cooler:variance is 145628.16595812634\nINFO:cooler:variance is 89652.3359238715\nINFO:cooler:variance is 55167.80219340252\nINFO:cooler:variance is 33979.03044739583\nINFO:cooler:variance is 20925.819477706336\nINFO:cooler:variance is 12891.272059468109\nINFO:cooler:variance is 7941.540326832611\nINFO:cooler:variance is 4892.819312435954\nINFO:cooler:variance is 3014.5551259814833\nINFO:cooler:variance is 1857.368539631661\nINFO:cooler:variance is 1144.4162142773132\nINFO:cooler:variance is 705.130323669654\nINFO:cooler:variance is 434.47392361157347\nINFO:cooler:variance is 267.70389365963143\nINFO:cooler:variance is 164.94989021353757\nINFO:cooler:variance is 101.63563994114624\nINFO:cooler:variance is 62.62450369745843\nINFO:cooler:variance is 38.58690631672258\nINFO:cooler:variance is 23.7759785002539\nINFO:cooler:variance is 14.649911445792407\nINFO:cooler:variance is 9.026790547088547\nINFO:cooler:variance is 5.561993789894777\nINFO:cooler:variance is 3.427115520300467\nINFO:cooler:variance is 2.1116706646462915\nINFO:cooler:variance is 1.3011408804547429\nINFO:cooler:variance is 0.8017185750137623\nINFO:cooler:variance is 0.49399209528113075\nINFO:cooler:variance is 0.3043811336269041\nINFO:cooler:variance is 0.18754942065925143\nINFO:cooler:variance is 0.11556159339994934\nINFO:cooler:variance is 0.07120516223405673\nINFO:cooler:variance is 0.04387421034541502\nINFO:cooler:variance is 0.02703380938723776\nINFO:cooler:variance is 0.016657319014757147\nINFO:cooler:variance is 0.010263678076165916\nINFO:cooler:variance is 0.006324131500038742\nINFO:cooler:variance is 0.003896716409737306\nINFO:cooler:variance is 0.0024010249831182455\nINFO:cooler:variance is 0.0014794305456640013\nINFO:cooler:variance is 0.0009115751237155694\nINFO:cooler:variance is 0.0005616818152314613\nINFO:cooler:variance is 0.0003460893624129662\nINFO:cooler:variance is 0.000213248579549598\nINFO:cooler:variance is 0.00013139657230256706\nINFO:cooler:variance is 8.096213102547217e-05\nINFO:cooler:variance is 4.988613081733258e-05\nINFO:cooler:variance is 3.0738149257016797e-05\nINFO:cooler:variance is 1.8939809503430477e-05\nINFO:cooler:variance is 1.167007104539651e-05\nINFO:cooler:variance is 7.190703682321092e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/M-R1.cool\"\nINFO:cooler:variance is 5083427736.172444\nINFO:cooler:variance is 36376738.789296396\nINFO:cooler:variance is 7871532.29054014\nINFO:cooler:variance is 3175678.2548763296\nINFO:cooler:variance is 1318382.6862784196\nINFO:cooler:variance is 621666.714046184\nINFO:cooler:variance is 291323.0744360956\nINFO:cooler:variance is 141567.31084024804\nINFO:cooler:variance is 68319.94368340804\nINFO:cooler:variance is 33378.73359410185\nINFO:cooler:variance is 16251.028364297781\nINFO:cooler:variance is 7949.417764657719\nINFO:cooler:variance is 3882.6605089730374\nINFO:cooler:variance is 1900.0805540033757\nINFO:cooler:variance is 929.254078200681\nINFO:cooler:variance is 454.8508491170409\nINFO:cooler:variance is 222.57922651226116\nINFO:cooler:variance is 108.96068053157241\nINFO:cooler:variance is 53.333993953898805\nINFO:cooler:variance is 26.11066207161915\nINFO:cooler:variance is 12.782321640925556\nINFO:cooler:variance is 6.25805879104357\nINFO:cooler:variance is 3.063797562011084\nINFO:cooler:variance is 1.5000266954859716\nINFO:cooler:variance is 0.7344019651069523\nINFO:cooler:variance is 0.35956529794984843\nINFO:cooler:variance is 0.1760434904502182\nINFO:cooler:variance is 0.08619194621471847\nINFO:cooler:variance is 0.042200021737959115\nINFO:cooler:variance is 0.020661455856826556\nINFO:cooler:variance is 0.010116001125038642\nINFO:cooler:variance is 0.004952881676983746\nINFO:cooler:variance is 0.0024249730873915046\nINFO:cooler:variance is 0.0011872890601449704\nINFO:cooler:variance is 0.0005813075578883925\nINFO:cooler:variance is 0.00028461367509986855\nINFO:cooler:variance is 0.00013934954207330628\nINFO:cooler:variance is 6.822687444866413e-05\nINFO:cooler:variance is 3.340453307683912e-05\nINFO:cooler:variance is 1.635518308882037e-05\nINFO:cooler:variance is 8.007656144695825e-06\nINFO:cooler:Balancing \"/tmp/yeast_cohesin/M-R2.cool\"\nINFO:cooler:variance is 7900041838.682832\nINFO:cooler:variance is 43523372.25462465\nINFO:cooler:variance is 11249112.640681775\nINFO:cooler:variance is 4761419.962282464\nINFO:cooler:variance is 2132228.5037173773\nINFO:cooler:variance is 1009546.1964564128\nINFO:cooler:variance is 477011.5773597176\nINFO:cooler:variance is 227966.5223527922\nINFO:cooler:variance is 108745.99507540591\nINFO:cooler:variance is 52039.83011527292\nINFO:cooler:variance is 24889.123439677598\nINFO:cooler:variance is 11915.873060079688\nINFO:cooler:variance is 5704.004806625307\nINFO:cooler:variance is 2731.402087864754\nINFO:cooler:variance is 1307.9143772943487\nINFO:cooler:variance is 626.3649164324091\nINFO:cooler:variance is 299.9679090748038\nINFO:cooler:variance is 143.6621730147389\nINFO:cooler:variance is 68.8035814292871\nINFO:cooler:variance is 32.952430324203\nINFO:cooler:variance is 15.782094388058816\nINFO:cooler:variance is 7.5586616289890465\nINFO:cooler:variance is 3.6201419479272143\nINFO:cooler:variance is 1.7338341167983098\nINFO:cooler:variance is 0.8304044974177242\nINFO:cooler:variance is 0.39771535402193103\nINFO:cooler:variance is 0.19048251299824817\nINFO:cooler:variance is 0.09123008591769335\nINFO:cooler:variance is 0.0436939284364959\nINFO:cooler:variance is 0.020926866073987468\nINFO:cooler:variance is 0.010022759551526844\nINFO:cooler:variance is 0.00480032308367395\nINFO:cooler:variance is 0.002299077602193386\nINFO:cooler:variance is 0.0011011254746510855\nINFO:cooler:variance is 0.0005273755507067521\nINFO:cooler:variance is 0.00025258245554249506\nINFO:cooler:variance is 0.00012097242056316397\nINFO:cooler:variance is 5.793880904358813e-05\nINFO:cooler:variance is 2.7749346315735632e-05\nINFO:cooler:variance is 1.329033572769497e-05\nINFO:cooler:variance is 6.365303940897837e-06\n",
"name": "stderr"
}
]
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:07:36.232611Z",
"end_time": "2018-12-14T06:07:36.575457Z"
},
"collapsed": true,
"trusted": true
},
"cell_type": "code",
"source": "import numpy as np\n\nimport pandas as pd\n\nimport matplotlib\nimport matplotlib.gridspec\nimport matplotlib.pyplot as plt\n\n%matplotlib inline",
"execution_count": 3,
"outputs": []
},
{
"metadata": {
"collapsed": true,
"trusted": true,
"ExecuteTime": {
"start_time": "2018-12-14T06:07:36.577118Z",
"end_time": "2018-12-14T06:07:36.579971Z"
}
},
"cell_type": "code",
"source": "plt.rcParams['pdf.fonttype'] = 'truetype'\nplt.rcParams['svg.fonttype'] = 'none' # No text as paths. Assume font installed.\n\nplt.rcParams['font.serif'] = ['Times New Roman']\nplt.rcParams['font.sans-serif'] = ['Arial']\nplt.rcParams['font.family'] = 'sans-serif'\nplt.rcParams['text.usetex'] = False",
"execution_count": 4,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:07:36.581376Z",
"end_time": "2018-12-14T06:07:36.672844Z"
},
"collapsed": true,
"trusted": true
},
"cell_type": "code",
"source": "# add fall colormap\n\ndef listToColormap(colorList, cmapName=None):\n colorList = np.array(colorList)\n if colorList.min() < 0:\n raise ValueError(\"Colors should be 0 to 1, or 0 to 255\")\n if colorList.max() > 1.:\n if colorList.max() > 255:\n raise ValueError(\"Colors should be 0 to 1 or 0 to 255\")\n else:\n colorList = colorList / 255.\n return matplotlib.colors.LinearSegmentedColormap.from_list(cmapName, colorList, 256)\n\nfallList = [\n (255, 255, 255), (255, 255, 204),\n (255, 237, 160), (254, 217, 118),\n (254, 178, 76), (253, 141, 60),\n (252, 78, 42), (227, 26, 28),\n (189, 0, 38), (128, 0, 38), (0, 0, 0)]\n\n\ndef registerList(mylist, name):\n mymap = listToColormap(mylist, name)\n mymapR = listToColormap(mylist[::-1], name + \"_r\")\n mymapR.set_bad('white',1.)\n mymap.set_bad('white',1.)\n matplotlib.cm.register_cmap(name, mymap)\n matplotlib.cm.register_cmap(name + \"_r\", mymapR)\n\nregisterList(fallList, \"fall\")\n\ncoolwarm = matplotlib.cm.coolwarm\ncoolwarm.set_bad('white',1.)\nmatplotlib.cm.register_cmap('coolwarm', coolwarm)",
"execution_count": 5,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:07:50.943651Z",
"end_time": "2018-12-14T06:07:51.612139Z"
},
"collapsed": true,
"trusted": true
},
"cell_type": "code",
"source": "import cooler\n\nimport cooltools\nimport cooltools.snipping\n\nimport bioframe\nimport bioframe.schemas",
"execution_count": 6,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:08:04.914217Z",
"end_time": "2018-12-14T06:08:04.934559Z"
},
"trusted": true,
"collapsed": true
},
"cell_type": "code",
"source": "chromsizes = pd.read_table(\n '/tmp/yeast_cohesin/w303.roman.chrom.sizes',\n header=None,\n names=['chrom', 'length'])\n\ncens = pd.read_table('/tmp/yeast_cohesin/w303.centromeres.tsv')",
"execution_count": 7,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:08:15.676626Z",
"end_time": "2018-12-14T06:08:15.690213Z"
},
"trusted": true
},
"cell_type": "code",
"source": "cens['mid'] = (cens['start'] + cens['end']) / 2\n\ncens = cooltools.snipping.make_bin_aligned_windows(\n 10000,\n cens.chrom.values,\n cens.mid.values,\n 100000\n)",
"execution_count": 9,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:08:18.204341Z",
"end_time": "2018-12-14T06:08:18.271077Z"
},
"trusted": true,
"collapsed": true
},
"cell_type": "code",
"source": "supports = [(chrom[0], 0, chrom[1])\n for _, chrom in chromsizes.iterrows()\n ]\n\ncens = cooltools.snipping.assign_regions(cens, supports)",
"execution_count": 10,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:08:19.821427Z",
"end_time": "2018-12-14T06:08:19.916965Z"
},
"trusted": true,
"collapsed": true
},
"cell_type": "code",
"source": "cens['dummy'] = 1\ncen_pairs = pd.merge(cens, cens, how='outer', on='dummy', suffixes=['1','2'])[\n ['chrom1', 'start1', 'end1', 'region1', 'chrom2', 'start2', 'end2','region2']]\n\ncen_pairs['region'] = list(zip(cen_pairs['region1'].values,\n cen_pairs['region2'].values))",
"execution_count": 11,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:08:22.056935Z",
"end_time": "2018-12-14T06:08:22.071738Z"
},
"collapsed": true,
"trusted": true
},
"cell_type": "code",
"source": "chroms4pileup = [\n 'chrII',\n 'chrIII',\n 'chrV',\n 'chrVII',\n 'chrVIII',\n 'chrIX',\n 'chrX',\n 'chrXI',\n 'chrXIII',\n 'chrXIV',\n 'chrXV',\n 'chrXVI']\n\ntrans_cen_pairs = cen_pairs[\n (cen_pairs.chrom1 != cen_pairs.chrom2)\n & cen_pairs.chrom1.isin(chroms4pileup)\n & cen_pairs.chrom2.isin(chroms4pileup)\n]\ntrans_cen_pairs.reset_index(drop=True, inplace=True)\n\ncis_cen_pairs = cen_pairs[\n (cen_pairs.chrom1 == cen_pairs.chrom2)\n & cen_pairs.chrom1.isin(chroms4pileup)\n & cen_pairs.chrom2.isin(chroms4pileup)\n]\ncis_cen_pairs.reset_index(drop=True, inplace=True)",
"execution_count": 12,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:08:25.576605Z",
"end_time": "2018-12-14T06:08:44.703253Z"
},
"trusted": true
},
"cell_type": "code",
"source": "cis_cen_pileup_dict = {}\ntrans_cen_pileup_dict = {}\n\nimport pathlib\nfor p in pathlib.Path('/tmp/yeast_cohesin/').glob('*.cool'):\n sample = p.name.split('.')[0]\n print(sample, '...')\n c = cooler.Cooler(p.as_posix())\n snipper = cooltools.snipping.CoolerSnipper(c)\n cis_cen_pile = cooltools.snipping.pileup(\n cis_cen_pairs, \n snipper.select, snipper.snip)\n cis_cen_pileup_dict[sample] = np.nanmean(cis_cen_pile, axis=2)\n \n trans_cen_pile = cooltools.snipping.pileup(\n trans_cen_pairs, \n snipper.select, snipper.snip)\n trans_cen_pileup_dict[sample] = np.nanmean(trans_cen_pile, axis=2)",
"execution_count": 13,
"outputs": [
{
"output_type": "stream",
"text": "G1-R1 ...\nG1-R2 ...\nC-R1 ...\nMH-R2 ...\nMD-R2 ...\nM-R2 ...\nCH-R1 ...\nM-R1 ...\nMH-R1 ...\nMD-R1 ...\n",
"name": "stdout"
}
]
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:08:48.023374Z",
"end_time": "2018-12-14T06:08:48.659995Z"
},
"trusted": true
},
"cell_type": "code",
"source": "plt.figure(figsize=(6,9))\n\ngs = matplotlib.gridspec.GridSpec(\n 4, 3,\n height_ratios=[1,1,1,1],\n width_ratios=[1,1,1],\n wspace=0.1,\n hspace=0.1,\n top=0.9,\n bottom=0.05,\n left=0.2,\n right=0.8\n )\n\nvmin = 0\nvmax = 0.003\nfor i, dataset in enumerate(trans_cen_pileup_dict):\n\n plt.subplot(gs[i])\n contact_map = plt.imshow(\n trans_cen_pileup_dict[dataset],\n cmap=plt.cm.get_cmap('fall'),\n interpolation='none',\n vmin=vmin,\n vmax=vmax)\n plt.xticks([])\n plt.yticks([])\n plt.suptitle('Pile ups of CEN-CEN\\ninter-chromosonal contacts, +- 100kb', fontsize=18)\n plt.title(dataset)\n\nplt.subplot(gs[-1])\nticks = np.linspace(vmin, vmax,2)\ncb = plt.colorbar(contact_map, fraction=0.30, ticks=ticks)\nplt.grid(False)\nplt.axis('off')\n\ncb.set_label('Contact probability, $\\cdot 10^{-3}$')\ncb.set_ticklabels(['{:.0f}'.format(i*1000) for i in ticks])",
"execution_count": 14,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x648 with 12 Axes>",
"image/png": "iVBORw0KGgoAAAANSUhEUgAAATcAAAJ5CAYAAADLmHezAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvqOYd8AAAIABJREFUeJzsvXmYJEd17v2ert6nZ+8ZjfbRAkIC\ngZCEuSD7WvL1BWFkFtuArxFI7FyBbcBgwBjMbsCsl9VgY7EvMovZDB9gCcRiEFrRggChBUkz0sxo\n9t67z/dHZqsi3qzKrOqurp4Jvb/nqac7KiIzIyOzTmW8dc4Jc3cIIURq9Cx3B4QQYimQcRNCJImM\nmxAiSWTchBBJIuMmhEgSGTchRJLIuJVgZheamdNr1sz2mNlPzOw8an+Jmd3SrHxfw8z+wsxuNrMJ\nM/tURVszsz83s++Y2VYzmzSzG83szWa2itqe3+C68GtXg/afLzn+LWZ2SZvn9xgz+4qZ3Z7392Yz\ne5+ZbaJ2Z7bQXzezNdT+v82s4Wf0vn5vtULvcnfgIOHFALbn/xuA1QDOBXChmY26+zvyujcBWLEM\n/TvgMLP1AP4NwM0A/grAr0rargTwaQDnAPj/ALwDwD4Avwvg5QAeZ2b/093voU0/DODSJrudavDe\nk8zsbHf/Zjvn0qC/fQA+COBZAP4bwPsB3APgVADPAfBEMzvD3W+hTb8E4Islu95P5YcDeC6ADy2m\nv/dZ3F2vJi8AFwJwAJsb1A0h++DuBjDQZPtLANyy3OexTGP3yHzs/rKFth8DMAvgaQ3qngJgDsAX\ng/fOz/d9fot9mW/vAG4CMNigzS0ALmlxf6/L9/WqBnW/B2ASwBXBe2fm7V/b4v7PDPq7E8BG3Vvt\nvzQtXSDuPg7gqwBWAXjgMnfnQKQ//7u3rJGZnQrg6QA+5u6f4Hp3/xyyp7lzzOyIRfbpqwCOBfCq\nhe7AzA4B8EoAF7v7m7je3S9F9sR6ipn9j4UeJ+erANYge5IVbSLjtjjm8r+9QGs6iJmdZGZfMrNd\nZjZmZj80s0dXHajZvpvofN8xsz82s+vNbNzMrjSzP6XtBszs3Wb2m1wv+q2Zvd/M1rbQl6PN7BNm\nti3X0642s+cE9RcCuDgv/luuH21usrs/z/9+uOSQz0L29HJ7Vd8qeA+AqwH8rZmdsMB9/CmAPpT3\n99UANrn7fy/wGPN8EcDXAZxrZmctcl/3OWTcFkgu9J6JbApyfYvbnAzgxwBOAvBmZE8QfQC+YWZP\n6WD3TgTw7wC+h0yzmgPw72b2F0Gb9yHThz4L4IK8/XMBfK7iHI4BcBmAxwP4CICXIdObPmxmb8ub\n/TOy8wMyI/A0ANua7PI0ANMALm92THe/w913NagaMbPRJq/BBu1nATwf2Zh/sOw8Szgt/9vUcLn7\nNne/u0HVcEl/m2m1LwQwDuCDZtbfpI1oxHLPiw/kF+qa20MBjOavTQD+BzIj4ADeGbS/BIEO0qT8\nawArgvd6AXwfwFYA/SV9ifZVcQwH8KLgvSFkgv4dAHry98YAvI/29QZkhmukpB+fRWYkTg3e60E2\nhZoD8MD8vTPRgi4G4DoAW9q8Luejrkk1e72oQfsz8/I/5+Vzgza3oAXNDdmTlKOJztpkmzNb6O+7\nG7Q/Py+/Mi//fdX9oFf9pV9LW+OKBu9NAngvgFe0soP818Pfz7cZMrOhoPpLAN4J4GEAfri4rgLI\nfuT4wHzB3cfN7IPItJvTkBmw2wE8xcx+BuDL7r7L3V+NbErV7BxqAB4L4Fvufu+YuPucmb0J2a+d\nj0NmsFplFkCtjfYh/4RMj2vEjSXbvQLAEwG8w8y+5o2fCpsxm/9dSJ8/AeDjTepuK9nu7ch+nX+V\nmX3G3W9awLHvc8i4tca5AO7K/58FsAvADe4+0cY+jsv//mX+asRR6Ixxu8nd2RVi3hVjMzLj9n8B\nfB6Z+P0RM/sxMiP7UXff3WS/owBG0Nhw3JD/PbrNvm4FcKKZ9bn7dJvbXu/u32lzG7j7TjN7KbJf\nad+CbKp6L7kR30CbTXnmirI1L29E9rTXDr9ZYH+nzewCZE9r7wPwmHb3cV9Emltr/NDdv5O/Lnb3\nK9s0bED9m/79AP53k9clC+hboyeIRj5e8+1mAcDdv4vMmP4fZFPsByB7evy5mfEHex4r6cf8vdTo\n2GX8CNmX7GnNGpjZE8zsm2Z2Rpv7boq7fxzZeD/HzB5O1UcC2EKvef+0H+V/m/4Saman5z/sPL6D\n/f0esqe+s83sSZ3ab8rIuHWPW/K/M4Gh/E7+TX4ngAFkOlgzZvM2zKYG7x1jZmyI7pf//VX+S+nD\nAaxx98+6+7n5fl6G7IP952jMNmSOpg9oUDf/6+NvS86hEV/K/z6rpM0zATwa5eOzEC5ANq4fQvwl\nsRXFL56/yeu+gUySKOvv05FJEJ3+fL0Umd/buwGs7PC+k0PGrUu4+xYAPwNwvpkdNv9+7u3+UWS/\nVpbJBFsBbKRtTwNwfIO2hwB4ctBuGNk09Ffu/nMA65D9avvKoH9zyKarQF1X4nOYBfCfAB6V+6fN\n79+Q/SrryAT3lnH3q5E9OT7DzApG1cyeBeCPAXzd3a9sZ98tHPsGZHrWKQCOCN6f4C8gd788r7sb\nmXH5w3xqy/19FDKjeQ2A/+hwf7ch0wsPQxYNIUqQ5tZd/grAfwG43Mw+AGAHsmnhwwG80t13lGz7\nGQB/AeA/8x8HDkGm3f0KdYfZeaaR+Zediuyp8JnIPrznAJmhtSzW84LcBeFHANYjczu4C5kW14xX\nAPgDAJeY2XuRTdmemL/3TndvyS2GuACZc+1nzOxpqP9I8L+QGbYb0PhJ6RFmNlOy32+7+10l9UD2\nC/GfAzimjf6+FsCDAPyTmT0B2dPnBIBHILuedwF4cv6FEfJgMzu3ZL8/cvffVBz7I8h+/X1EG/29\nb7LcP9ceyC+UhF81aX8JSlxB8vdOReY2sQvZFO8KAOe1uP8LAPwS2bTo5wCehExgLhwTwBOQuZ3s\nR+Zq8j9pX0PIwohuROZHtR3ZE9TxLfTjeGQuITuQTRUvB/BManMm2guRGkZm/H+a92USmVF7Hcg1\nBa25goSuH+eH5QbHfmxef0kb90Zvvt95N54pAL8B8C4AG5qMRdXr/FbGDsBDkH2B3dJqf++LL8sH\nSySCZZktNrv75mXuihDLijQ3IUSSyLgJIZJExk0IkSTS3IQQSaInNyFEksi4CSGSRMZNCJEklcZt\nMavsmNnKkiDsrmJmr63ICCs6wIE8zmbWs9T9MrNjl3L/S42Z/a6ZzTUaJzPrNbO/z7M3j1m2Atwf\nLqSd1VckO7OkL5Vtymjlye1NAF7U7o7zuMdfQOsLiAMAy5YH/G9kUQVLdYxvAXjNUu1/qTGzo5BF\nnjTL/vJuZOFq3wbwkvy9/2yQraXVdktKpXFz92+7+5cXsO+TkQX4CnEgsA5ZMtCl5FFLvP8lw8we\niSyZwuFN6u+PLPzvze7+PHf/ELIwsVsAvK3ddt1AmpsQByG5XHRJh/b1KgA/QBb832wNjacge6K7\nd+0Jz1aA+1cAj8yf+tppt+S0rbnl5W+a2dlm9jPLVj+6LddaevI2r0WW4RUALqbtjzCzj1t95aQr\nzeypdMwLzewXZnaBme3MX2dX9HOVmb0r78uYmf3czJ7doOnxZvZVM9tnZvfkx1oX7Oe1eb+eaNnK\n53vztDsws/Vm9gEzu8PqK6K/wrLMreH2+yxb5erbZrY/b/+3lvFSM7vVslXrv8nahlWsLJW3MTN7\nTX78CTO7K9/mSGrXan8nzOx+Zva1/Hx3mtnHLEuNHu7vVDP7Qn68aTO728w+bQtYcq+V69Wp/lum\n2dycb/IPFmiCZnZ83vZ2M5vK74mvmtkDqS/9+bF+ZdmKYr80s5ebWc3MNpvZvMPoeRboRGb2+2b2\nfctWO9tn2Wpnf9zueC0xJyNbGewUZFJSI04HcLcXVyCbTzd/WpvtCuSfETezd1PVYZatGDeW33vv\ntUxmKKeF7AeXoJh14g4Ae5Dlwnou6ouSXJC3eTDqi3C8CcAT8vcPy7e9E1mu/hcim5c7gJcFx7gQ\nWbaJuwD8NYC3Alhb0sd+AFcBmEG2dsDzkOXScgB/lbd5bV7ej2x18+ciSzPtyNYQQNBuFlnGi5cD\n+AdkiRjXIsugMYnsRrgAwJfz7T9H208hyxTxQWQprH+at/smspvnRQDeiCyzw8XBtscAuDsf2zcj\nS2l0cb7t24J2r8r7+B5kqYDeiGx90BsA1PI27fR3GtmaCp/Jx+5f8nafD9qdnF+Tq/P+z4/fHJ3D\n/DhvXuT16lj/kaWHelH+3heRpY1fkb+/HVk2j5cDeDayLCuTyDKq9ATH+Ua+/Sfza/pvefmd+b7O\nzcvfz/8/BNl9sw/ApXn/X5Cf9xyA311Mxgtkn7lLOpE9A8HCRM2uH7JchFc02PbkvP1ft9nufMSZ\nW56Vl/852Ga+zfwY/iWy1dTmkH0urPS8FmjcHMAfB+8NIlve7YcNOnYmGa0dAA6lY3wK2SPxxqBd\nO+ly/m/e/i+C9yy/0bYgy7I6f9HeQ9v+FzJjNEAX97XU7i35+0+g99+fv/8Y2v7tQZuT8vf2IEiH\ng+yDMhccu9WVpa4H8DXqx/OQfXCOW2B/30Ht/hOZ0RjOyx9E9sWwjtp9Jt9+XdmHYwHXq9P938zX\nFfUEmw+gbf8xf//UvPyYvPx31O6TyAzh2rzsAC4M6v82f280eG89MqP9l63c28F2faivwDaKbK2N\nH9J7fe3ss8lxGl6/vM8/aND++HBs2mh3fl4+E1k+wBlkadQt2Ga+zQ8B9Abv/wPIBjV6LVRzG0OQ\ncdWz9QRuROOU1wDuXefzCchu4GkL1mxE9m06gCydc8i3WuzPOchSYH8m6JMjWy/z91BfPBlhm5zL\nkN046+l9PvbjkC0Kwz+uvCH/+wR6/0vB/7/M//7Qs2yq89yM7EN9iJWsLIXs6dfyPgDZU8pZZvbX\nlq2ADnf/Z3c/xesrI7XbX05QeRWynGXz43IBshv+nvkG+dRgfi2JEbROK9er0/0v4O5vBXCIu987\nFbNsVbL5TMTz53RO3qf30S5eimwqt6fJIeanZu+zzHsA7r7D3U9w9/c261cTzkA2ZvOvR+av8L2l\n/DWyB5lBacZcm+3m+QNk98ElAJ6R3wfMu9w9TEr6//K/jy05zoIz8e7wYpbRSZQvdzYKYDWym5Jv\nzHlYbLx3YVsrX5FoM7IVn6KBcfdbg+0L+8wZz/9yNltudwyyaWWEu281s10orvp0V9BmJj8+73P+\nQ9SD9laWeimyp7l3A3iXmV0O4CsAPuLu86sztdtfXjR5Mv9by7fzXAN7JTLZ4bh8H/MD284X5WZU\nX6+O9r+EfjN7IzIt6Hhk4za/zfw5bUamI0VGLB/rrWjORcieSp6CbBnFLcimtx9z90sr+sVcjfjL\n/x35378J21R8ThbDXmQJTpmhoL6ddvO8GpnBOxnAKmRrRDCRDujZ6mU7kV2XpizUuLFha4X5G+bf\nkelxjYhSLHuWs3+eI1EXhef5HrLH2lobfWq1Ha8jULXyE6/61Cj9ddk3WssrS7n7NWZ2PwBnI0vD\nfTaA1wN4iZk9In8Sabe/peNiZo9FpovdiWwq/5/I9JVHI1iLoUVauV4d7X/DA2RPU99DNhP5DrK1\nLK5AZrjfHzRt5/66F8+WKnySmZ0M4E+QTW+fAeBZZvZKd39LG/vamfdxvu878/ejpQLzH0qafU4W\nw21o7Eoz7+51R5vt5vkusi/pryLT1p/bYNtGn5seNFnrY55urqGwDdlN1NfgghyFLP32/pLt51ck\nCpm38rche5qIMLPHIMuP/7cL7HPILWiw6pOZbUL2jdPuqk9MSytL5d/MDwGwx92/guyJDWb2ZGQ/\n4z8H2bd5p/v7XmTrNZzu7vdeJ6Nfuluklet1C5Z2vIFsUedJZFrmvU9+ZvZ3Dfr7v81sxN33Be1O\nRTbWb/IGa0fk9/VR7v4DZGnhX5f/svxfyFYaa9m4tUHZ52QxXAHg8Wa2KZgdAMBD87+Xtdlunje6\n+yVm9jkAzzazj7k7r927GcFC35ZFPa0GULo49VL6uYVTLuRz5m8AeKyZPYTavhOZRjXabGdesiJR\nvt9DzOyJtNmLkc3Lty/yXIDsm+UBli0IEjK/4vzXFrNzb31lqRqyX4r45/Kf5H/nx73T/V0P4FYy\nbEcieyIB2vuibOV6dbr/0f2Ysx7ZdDM0bKtRj2KYP6dv5NtFLjnIfhh5CupT0zna/98B+K6Z3esY\n65mLxO2oeOpYKBWfk8Uwv27rC+ffyPXJZyL7AeGONtsxL0H25f4hy1aEC2GXrvlVx8qDC1r49eQS\nVCx60qTd2cg+kBch/1UM2eP+DgC7kbk6PA/ZTewAPhRseyFyjbmVF7L5/DXIvoXfme/3K/l+n+Hl\nvwJF75e0W4ds2jyJzLBcAOALedsvNNtf8H70S1qTY8+Pzx5kPyK8ENlje/RrIDJR3ZF9ITwPmVG4\nAfmTX4f6y3377Px1Qvaz/ZuQaYjj+fsPLdvfAq5Xp/s/jMygXJX3fy3qv8h+HtkH6O+RPTHOn9MT\n8217kK3INYfMzeR5qLsRvS445lZkT3nPQaYfz7vP3ITsafQ5qP+6/Opgu0cgd09p9Z5fqlfZ9UPm\n/jKHbMr+XGThbJMAHtluOzT2pnhp/t4rqM12ZIYsdN/6XOW5LKFx60M2TRpD5iYymL9/PDI/s235\nTXQdsg9nbaHGLfgwfACZK8H8ikxPWsCHoOziHoJsabWtyH4lvD6/ILUWjlNp3ILxqVpZqicfs58j\n8wHaheyp7rQO9pfHZS2yD/b8+N6IzM/xkXm7v6kav3auV6f7n7/3imBcz0TmwvRPyKa448iM0EeQ\nyQCzAN4bbDuE7Av51rwv1yEzuKEv3Hn5+UwAeFr+3iOR/fJ+d/7+Nci+tEKXhwtbGbNuvMquH7If\n3f4Rme66H1m41lkLaYfGxq0XwLX59TkmaPOH+RiOI3vqfQNacHtRJl4hDgDM7CpkvntblrsvqaDY\nUiGWGcuyZaxE4D4kFo+MmxDLzwYAj/ei76hYBJqWCiGSRE9uQogkkXETQiSJjJsQIklk3IQQSSLj\nJoRIEhk3IUSSyLgJIZJExk0IkSQybkKIJJFxE0IkiYybECJJZNyEEEki4yaESBIZNyFEksi4CSGS\nRMZNCJEkMm5CiCSRcRNCJImMmxAiSWTchBBJIuMmhEgSGTchRJIkZ9zM7Jlm9hMzu97MbjKzb5vZ\nw6nNo/IVvsv242b2czO7ysyuNLMbzewyMzud2q0xs2v4/ZTp1hibWY+Zvc3MrsvbfdHMNizluR2I\nmFnNzF5iZj/Lx+p6M3urmQ00aHu+me3O211lZleb2c1m9nEzG6S2ldfooMbdk3kBeDOAHwA4Onjv\nDwBsA3AUgCEAbwSwE8C1FftyAKP03ksB/Dgo/xGAGwFMAjh9uc8/tTEG8GwA3wUwkJffBuDjyz0G\nyzDmHwZwEYDVeXkFgC8D+ESDtucD+Bq9NwjgZwCel5dbvkYH8yuZJzczOwTAiwA8yd1vnX/f3f8L\nwEuQ3RCPzv+et4D99yL78N4TvP1XAM4FsGXhPT94WIYxvg7Ay9x9Mi//DMDRCz6BgxAz2wzgqQCe\n5e67AcDd9wN4PjID1wrrAaxGfVwXfI0OJnqXuwMd5BEAbnD3gqFx90/k/94A4MtmdmaL+7zYzBzA\nKIAJAF8D8Ixgv2cDgJktotsHFV0dY3f/8XwjM1sL4DUAPrTg3h+cnAbgOnffE77p7lsBfKHJNr+X\nTzcHkRm2XwJ4u7tflG/7ZbR3jQ5KknlyA2DIpjlZwWxloDv82szevIB9nuXuDwZwDoBhABe7+90d\n6u/ByLKMsZkdB+D7yKbD71949w9K5tD+5/RSdz8FwEkA3ovMwF3U6Y4d6KRk3H4C4AFmth4A3H2v\nu5+SX+RPAljVbEMze33wIX0917v7FQBeDODCfJpwX6XrY2xmZwH4MYCPufvzPReN7kP8BMCJZrYy\nfNPMDjezr+c/wsyPa/SjlrvPufvrAdwC4MKu9fgAIRnj5u53AngPgIvM7Kj5983saABnAJgt2fY1\n8x9Sd39NkzafAfBTAO/qbM8PHro9xmZ2KoAvAXi6u7+9c2dy8JCP+acAfNTMVgFA/vcDAHa4+wnB\nuP6syW5eAOBRZvb47vT6wCAlzQ3u/iozeyqAT5vZCmQi6k4An0VnpjMvBHCNmT3a3b/Vgf0ddHRz\njJH9SGEA3mJmb8nrb3b3J3bgOAcTFwB4NYAfmdkMgAFkPyb8Qysbu/tNZvZWAO8ys2+5+8TSdfXA\nwe57T/lCiPsCyUxLhRAiRMZNCJEkMm5CiCSRcRNCJImMmxAiSbrmCjK6esA3bxqpv9FDdpXL7fyK\ny9sWwqGo3FMrrwcd2+fKy3NUjtpWnEdV6FZQf8sdu7F953jTDUbXDMZjzPsuO1ahirflah7zWkV9\nUHZyhyuMX8V4F4a0bIwrzoO4/Lq7t7t7aeaR0XUjvvnIdc2Pz+ceVleG6vG9Sh/Rwr1bVuZxm6Iy\n38dN3RQb7y+ivRDEy6++tXKcF0vXjNvmTSO47EOPrr8xvCJuMDwcl6en4zIbsJCBwbjc20dlqu9f\nGZdrlDlmdjIuz5Bb0NTeuDwx1rxvs7PlZe4733DBuTzsSZ9sfhzkY/yRx9bfGKR91/iDUFLH4831\nfUNxeYDGtI+ub2/QfnpfXDdJ4zlD4zlN14PHsOzLpeo8uPkD33VraQMAm49ch8u+9fKgP9S/vpG4\nHBrzHro3yVgZf0kMrI3Lg+vjco2OhTXB/zTOE7fHZR7nqT0ow/lzEMJGlw08Nx99ZuU4LxZNS4UQ\nSSLjJoRIku6FX/X0xFNRni7s3x+XC9NS1k6C7cfo8XqAppk8BWZ66Vj8+D1B06ZJqt9L9SHc76op\nFY/L1FTztoxZPBXdR/3i6Xo4Bebp2hzpSHweQyQjzNDUbLBkqja5O64brxjfSdpXQSuivvYF51k4\nL9qW75WW8HgqylNNnqZOBCkAecpK0zlOsWgF/Zfunz6+94OP9BxNMyd3Uj/jcfZJaj9HnwvWj0P9\nsJdkCpaCeEy6gJ7chBBJIuMmhEgSGTchRJJ0WXMLdBrW2Kr8f6ammtdV6VbjY+X1bONZY+PtWcti\nQr2Q3TGYKdIiWBcL+9qKz1yoMfG+ZkhDmZ0p318I61qsiXKZmQ3qJ+ja8/juJxcG1imrKNMSa3TL\nt7tvINN7Q+2M9aRZuld7g/uedSx2KxqI8336zDgduj9uzxoeQo2WNbP4XH2CtE+n+4HPg7XFkDna\ndoquIbtbdQE9uQkhkkTGTQiRJDJuQogk6Z7m5h7rMlUazWSsNZRqI6zHsaY2Qfvi9iOsg5CGsoe0\niTHSjLhvoX7I++oj3YL9xZjwXNpdQpD9wVhjGx8PmrI/VYlPEwBjXzTW87i8anX9fx5P1tzG4+vl\nUzS+NerLAOlQ4fWo0jwrwrEa4oj1q9CPDYg1NiDWrtjHj5mmseiL9+Ur4utiHOZUC/zNJnbE2+69\ng45F9/HeuD2Gab2fQlxrQD/5khqZlopwrKVAT25CiCSRcRNCJEl3V78Kp1gczsNTxYowJZ8M2k9Q\n2wkKM+mnzAtlbiUAsJMe5yep/ThN7zgqaqg+rDZI3x+F82pvOliKIZ5mVUy5oqnoGLuJeGm54JRS\no+n3cDzlsYn6NNZ3UZhP4frR+PZyeqx4TLgvFnod8Hize8xCMIvdItgdg10wwqkohyVt3xKXC1lj\nyl0onKQHC6bEzuFWY9viMrs0sUvVcIWsEYZcsZvIMkxDmeXvgRBCLAEybkKIJJFxE0IkyfKtON/m\nnLyge+0IXBFYH2KNhsJjvEZuDGvo5/edVM+62AzrYtxZD/6tcKkYJr2mEC4UlCvlN4t1Te43E/aN\nx3Ava3CkeY7F+ovxmPfRmO8KyvvjffsOurZ9NEYraExWkQ41RdpQLegbuxyx6w275rRK6BbBLhIc\nUhXCGtvuXVHRd3HYEo3Fju1x/dp1UdEPD853751x3bXXxtvy/UHjaKN0rJWr4/KaIOtvjdxxWFtk\nt6QuoCc3IUSSyLgJIZJExk0IkSTdTXkUrvTEqcHZx4Z90dgXKtCIIj2nEXtp20nSFg6P9QH/LYVr\nMX2UCnoD6Q2Dzf3LrK/cZ6u4WlN4iaqWAUSs0fG+WWMJ9b+CXxtpbFtIh5wmv7ftdL34WKsDbeuu\nius1TKm36frYAN22Q2VhQXRtWNNckN+bRatUcWpwTlsUhVSRH1tBY7szLvs4fS5W0eemP/bJtMB3\nzX+9Nd7XFrqvWc9bTWOxqmLsQt2cNTbye7MB0uu6gJ7chBBJIuMmhEgSGTchRJJ0T3Mzi/UNjplj\nramQtoji5NivKmQLaTo7Y1+nubtjfajnpljHmN0f6yK1o2nZMpCGt4nOJewb6RqFFeYHad+8DGHk\n51alufXEK8GzTxf5fIVpi9gjjv3YWGObuzb25RrbHu97Yle8fU9vve8zpJ8Oj8bazuCa+LbsPYTG\nl4eh4OcYbN9P27JuxNejFXp6o5Xgefk9Tg0epS3i+57uj4LGdmUch7vvtnjf234T38ubz7jr3v/3\n3BrrpFP74nEfPTG+1/x3SBejVFPG6aP6g/OqWtqvn3TILqAnNyFEksi4CSGSRMZNCJEkXYwttXge\nztoSp5rm1OCUky2KF2U/NtLYxn8d7+u318c6xdSMUTm2+cceH2t4a46J9QW/X6xt2UxdN7Fe6jf7\nXfXSJegnnSz0F7KKlNhWAwZW1sszpD1ynGWYCpzysXGsKPuxscZ2643xNfjhnlhbugl1De4wxGNw\nxpZYnzvuuLgva4+g8ziKxojvjVBrZI1tZGVcLiyN1wI9NWBwfb1MS+bx8nucGjxqy7Gi5MfGGts3\nfhKfz/MRx6oe9+V67rjtiK/Zv+CoqPzwdfG4jqyJ+20jpKOt2hiXRw6tt2U/tpo0NyGEWBJk3IQQ\nSSLjJoRIki7GltaA/pUl9WRnKbaU1z2IcrJRrCj7sbHGdtLOWys6G/PTXx8blR8wEu9veAdpWYcG\neiL7Bq0k7YF90Tg3WKhTtuSB21RcAAAgAElEQVTnFh67IoYz1NxozQPOx8axouzHxhrbBfhl+bED\n3jJx/6i8muJY13I87gCtiTFMMZFhjrZVpAWx9sNL0rVEDagFWl0fL8cX63jh8nu85gHnY+NYUfZj\nY41tN+LrcAVofYqAR9E1uf3OI6JyQX1cQ30bXBMVI51tcEPclvO71RagbS4SPbkJIZJExk0IkSQy\nbkKIJOmun1st0GV6SadiOzvC9USw7gHnY+NYUfZja5dd4/Ew9fTG+hPnc7MwDxavkcB+bYWYPNLg\nIs2t4rvIeuL9sQ/XLI1poEeF64oCDXLkUa6vMFYUiP3Y2uVbiHWmP6vRGPDaryOcd2x18/Ig1fVV\nxEC2RA1AoD9xfjnyL0Otfkyj6xuteYA4HxsQx4oCsR8bUK6xVbHp92NNzU4gP7bDYi3UVh4Z1w8f\nVv+/hzU1LmsNBSGE6AgybkKIJOnitNTjkKkZSls9QcuhTXHaoh1UDtL1UFpwTlnE4VTt0tdT7gYx\nSK4o2FOfltgAnRe7vAxx6mf6CX0udHuoWqpvFpgO0lRPxlMYTJC7x556ve+i6Q0tv8epwTltEYdU\ntcOpiKeO07M0xd1NfeEp8wiNcZRai9Nfk6sNL73YEnMAgnGeo7Gbo/5O1O9dn6TUXbz8HqUG57RF\nHFK1GLb9OF5WcOMfxn2zw+Mpsfc3d3HB4Gi88x5yj7GFTP8Xh57chBBJIuMmhEgSGTchRJJ0T3Pz\nuVhnY42NUx7tifUin6xYOi6A04JzyiIOp2JXD9bYHnhCrKGMcFpx1twmAz1qhvQXTjs0RjoYMxuc\n99xs83ZAtjziZDCu4xVjHJZJQ/Md5doOpwbntEUcUhW6e7DGdg7pYKtW0hjxaU/TsoP7OF1TcN59\n5DbCK8wtJOWRTwETt9fLrKNRCiTfe0e9MLYtrrv22rhMy+9xanBOW8QhVWV8CvE1mablNf0HlH5p\nzS+ioh0bXxefq19zm6YlCnlc+5TySAghOoKMmxAiSWTchBBJ0l3NbSrQQibJz43CTgpa1Dj5Ps0E\nuhinxCGRhtOCc8oiDqdiPzbW2HoPI82NNCAEacZ9nFI3GflEcRpsTkMewulyCswBM4GOwmO8n3SR\n8UDfmaDx7aOQteG4n7z8HqcG57RFYUgV+7GxxraSx5dhvXWSNK5ASyosR1dIO15+qIY4jfMsha5N\nkH/hdHAv833O50JL/fHye5wanNMWhSFV7MfGGtthjyABcnP8ObE+Mg8T7Jt6z73/ek/cdnEBj51B\nT25CiCSRcRNCJImMmxAiSbqnuc3NARPBnH/v3uZtAWCWnJtYbgom9ZxyCKSR8dJ7nBacty/EinKZ\nNDbbSBpRf/CdMRtrKj5Fx2YdbZxiTSMZpCq2dA6YDjSZSYrBpDH1qaBMS/nZilibckor1XtIfM68\n/F4hNXiYtohjRSvc93ASCWOUZhw9pPCE6djnKnRK9v1rhblZYKqunfok6ahO+uXeIC6a+zNF9xKl\nlvLfiXUxXn6PJcMwbRHHihb82Fhj20RLVk7H52E8VlOBljgXpz/3GbqPB9ei2+jJTQiRJDJuQogk\nkXETQiRJF/O5VcAxl7yM3RB1NczDNcjL4ZF+NEM6x6Gx71CUFhyI8rEBKPhRgffXT98R4VJzVGf9\nFOvI5z1IabDDJQ1L4mkBZJJcqKtV+cWFPlWsW62KNTXjVNrsyHQUpQZnXSxMDc752NhPkM+T98X3\nAo9/CMf2sm7ESysuBM7fNkv3z3AQVzlMGtso6WB8L07F956N0P3By+8FqcE5H1shVpT82Aoa22GH\nx9tznG74GR0gnzlOic/5G7uAntyEEEki4yaESBIZNyFEknQxttRjPYg1Ho4BpDUUjJZ387Lc9xSf\nZ72k2fCxaPm9wroHpNtwvCj7soUaUOHYNRpyXlNhhnykOBayFI/9qCo0Ohuo6zuFluR/hSHqR+Gc\n43obLll+j9Y84HxsBY2T7xXW2MinzgYDvbCffBB7qV/sT9kSc/BQQ+J7sYeOEear4/UhVpJWRde7\nEBu7ipbfG1wTFcPl9wprHhzLazvEOljBj401Nr4XayUxwDwGlXHRnUdPbkKIJJFxE0IkiYybECJJ\nuuvnFuobVVoHz/e5feBjYxzHyGtVco60lZTPvbdCByNfNM7JVogXDX3ZWGPj9VjZz4r7EsaHtrvG\nJo8h6x7BmBrLJzXShhjuJ58HHzvU3Ej3itY8QJyPLWtQnh0s0th4/+xvxde2LU2zWQfayF7Wy35q\nsWZW6G8/jevIoXFz9i8bPizoFunUc3RNg3xsAOJY0WwHcZk1tv4VzdvyeVgHxrlN9OQmhEgSGTch\nRJJ0b1pqFk8XC6lfKqZr5NZgoftGwa2EHv2rplA8VRiidC2c8px/rufpXjiN5WkQH3u4IvwndAXg\n8yxg8fEKP92XuMTwtJ/Dwnhqzy4WvO9VNF0aDMosG9AUtuD+wPcKh1RxX8IpEe+rI1js3sH3D0//\nwukbu0jUaFx7qb+078I0dHBDXO4JPheDo/G2tPwepwbntEWFkComnIr20X1ckFDkCiKEEB1Bxk0I\nkSQybkKIJOmuK0ioTbEWxWExhW15CbRA8+B9DccpjQo/p/dwiiSqZx2EYf2JU4OHmh+HU7H+x/BP\n6tG5VWhuhnhcWKtit5SoXzT+rA1W6XcjK+NyP7nb9AVjwuPP0k6VewaHCXHf+X4oqytrW0ao67FO\nNkVLKFow7uwiwduyJsf1NS7zvRpq0RxOReFYtGUhNXjBjYZTHgX1VW5KvG0X0JObECJJZNyEEEki\n4yaESJLu+rmF2sgUpQ2q0kIKoSCBLsNaEms2VToGl+c4vQ/1lSE3p+jcuC+83B77YS1UA2rEAPl/\nsS9bmbbF4VOsaxV81WiRuX7SPcMxZn2Gt+X16qpSg7dzXjy+rJ8uhFm6phymxNpVCPlIFvzYWLvk\nco0HK9if8TWibRlefo9Tg7M/ZxRSRXX8mVOacSGE6AwybkKIJJFxE0IkiZWm6+7kgcy2Abi1KwdL\nl6PdfUOzSo1xRygdY0Dj3CEqx3mxdM24CSFEN9G0VAiRJDJuQogkkXETQiSJjJsQIklk3IQQSSLj\nJoRIEhk3IUSSyLgJIZJExk0IkSQybkKIJJFxE0IkiYybECJJZNyEEEki4yaESBIZNyFEksi4CSGS\nRMZNCJEkMm5CiCSRcRNCJImMmxAiSWTchBBJIuMmhEgSGTchRJLIuAkhkkTGTQiRJDJuQogkkXET\nQiSJjJsQIklk3IQQSSLjJoRIEhk3IUSSyLgJIZJExk0IkSQybkKIJJFxE0IkiYybECJJZNyEEEki\n4yaESBIZNyFEksi4CSGSRMZNCJEkMm5CiCSRcRNCJEkSxs3MNpuZm9n3GtRdmNeNzv+l+vPN7GtN\n9nu+me02s6vy19VmdrOZfdzMBvM2x5vZt/P6683sb5bmLJeXFsf4dDObDcbrGjP7kZk9uWS/GuMm\ntHpfN6hzM/t5Pl5XmtmNZnaZmZ2e1/eY2dvM7Lq83RfNbEM3zqmbJGHcciYAnGBmR8+/YWYrAJyx\nyP1e6u6n5K+HADgRwEkAzsvrLwTwOXc/BcAjADzPzP5gkcc8UGlljMeD8XowgP8D4M1m9qcl+9UY\nN2eh9/VZ+Xg+1N1PAPA5AO/N654J4DQAp7r7yQB+DeAdne/68pKScZtFdgGfGrz3JwD+o8PHWQ9g\nNYB78vK/Avg0ALj7bmQ3ytGNNz3oaXuM3f1WAK8B8LI2jnNfHmNm0fe1mfUCOAr18bwOwMvcfTIv\n/wwpjqe7H/QvAJsB7EP2bXRD8P53ADwIgAMYzf/+HMBVwes2AF9rst/zAezO2/0CwDYAPwTwvCbt\nzwawC8Chyz0myzTGpwPY12DbBwLYrzFemvu6wXbz9/k1AO4E8BsA/w/AxgZt1wK4FsALl/t8O/1K\n6ckN7n45gFkzO83MjgSw0t2vpWbzj+uneDbNeU3Fbi/N252E7LF+PYCLuJGZPR3AJwH8mbtvWfTJ\nHKC0OMaFzQCMldRrjEtY4Jif5ZkscA6AYQAXu/vdYQMzOw7A9wH8AMD7l6Dry0rvcndgCfgEgHOR\nPQF8op0NzeyqoPjssM7d5wC83sweiUwDely+jQF4O4A/A/CH7h7uI1XaHeOHIXuS0BgvnGZjPj9e\nAPAVd4++rN39CjN7MYALzexKd78FAMzsLGTT3be5+9uXvPfLwXI/OnbihfzxPf//cAC3A7gawDqv\nP6bPT0tHadvzUT4t/Rq9dxwykffxefmfAFwGYMNyj8MBMMaFaSmA+yPTyB6rMV6a+7rBdo3u828D\n+FL+/6nIpvZnL/c5LuUruSc3d7/DzG4AsNvd76ncoP3932RmbwXwLjO7HMBLkOl2384eMAAA73H3\nf+v0sQ8UKsZ4KHg6m0NmpF7p7l9vY//3+TFmOnBfvxDANWb2aGTjaQDeYmZvyetvdvcndqi7BwSW\nW3IhhEiKpH5QEEKIeWTchBBJIuMmhEgSGTchRJLIuAkhkqRrriCjawZ986aR+hv8K239J/7GcH1P\nUO6pUVsqc31PP7UnG+9zcXluhuqpPDfbvDxH+6qi5NfrW7buw/ZdE00HanTtkG8+fHXzffEYhvVc\nx2NSKFeMsdGt1ROUncdrmvpVMp5A8fqAzrPsvCrG5PJrt25399IMGaNrh33z4auaH4Mp6w943Kuu\nQxv3Op9rYZxpHHncC7citw/Pi5+TeGMe5y2V47xYumbcNm8awWX/ek79jWka6L6+8h30Uv3gYP3/\n4RGqWxOXB9ZGRVtxKB17ZVye3huXJ2O3Ip/YGdePk9vR2O76/xMTcd0s3UDMLBnO4KZ52DO/Urrp\n5sNX47KLzm1+LB7jqcn6/wODcV1tgLYdjssDq6OiDfCYr4vLg+vr/0/vi+v23x4VnesndsXlGR7T\nybgcGkM2uvyBpg9lz/3fcisq2Hz4Klz2xfPqbxQ+2ER4TG7L49xD16hvKC7zuPevovrgXp8Zj7sx\ndlfcdpoi4njc+UuFxz38kufz4HHuiU1Nz3GvqxznxaJpqRAiSWTchBBJ0r3wK/d4KjpOj8RjFfoQ\nT6nG9tf/378/rhvlqQedZj9NY3mqMLU7KhamoWPb4/IempbeE9TP0XnN0HScz7PGfQ30wapoEvd4\nKjpJ04gpmr6F14Nlghpdn0HaF01ZnKYhRtOQaNoyvSfedopkgKm4HpO7qczTUprKh1LAAE2X+klv\nXQhm8T0zPdm8LRBfE5YK+mlbvv485aZ71als4TjzOBbK9LmZoHHuoc/FRDzNjdvSNemncWe9rwvo\nyU0IkSQybkKIJJFxE0IkSfc0N7NYN2ONrUY/2U9NxWXWKkI9oMqthDQ3718RV9PP784/kbM2MU4a\nEWt+oebDOhmfJ/eVNbp24DEu09i4b1zHLiwM++/1xq4krFNaLahn7Yddabh+L5X52GW+hDzePL5c\n3wn4XuWxDeF7h/szQpos6738fBL4vfk035fkUjNF9znr4FV+kuFnsGocWffuAnpyE0IkiYybECJJ\nZNyEEEmyfGnGef5OGptPk44ywzpLoAf0xdsWIv1YDxiIw62c9QD2q9pHOscOKpMm5PsDjaXGvYl9\nsqxMxwCAwaHmdYx7rLOVaWxA7LfE+2b9hX3L2F+Mt2e/pkCTc9Z+eHz3saZJYUEc2sM+VaHmxZom\nt12I5uYe96FKY4s02LnytjyOXL+CfDR7KDQwDDfj+3iMyqyr7qF6Hqsea17P48j+ehyX2gX05CaE\nSBIZNyFEknTXFSTM7MHTBX6052nobnJrmAmmWL3x47Lvix/ljUOe+NGfElhgN633e/tt8f53UxjK\nftp/OKUeofMcoMf3GQodWk3ZNcLQoqrwK7M4uwdPacqmQDT180lyxdlH59xLYT/surOOMlKEhUma\ndt5JWUHG6ViT8b1hwxX3ztBw8zpmIS4KHH5VdYxCiqaAQogcjSNP98bIvWOIxnJDcKy95GKzk8ok\nPfgUfW4G6DM3SBlKQirD2rr/HKUnNyFEksi4CSGSRMZNCJEk3dPceizOnsvaQcGVgFMFxeXI3eIO\n0i1WUzjVtljDMdLM7NA4VMjvJm1iy36q58yvcRGr6sNacEshraoYHkQ7WxVkXq1yBbGeOLUQpy3i\nn/4DzaWgsd1D5zjOqdXpegzQsYZi9w47Yke97T3kCvJb0o0Yzm69nrIGj5B7TTiG7M7AWi9n6m0J\ni8eZ0xZxSFWodZLG5jup7WSF9lwjt5gaaZ+76/eys056D2fSRSm+htJYlYVj8b3J49rbgVRTbaIn\nNyFEksi4CSGSRMZNCJEkXdTcavEqVWW6BFAIqWJftkhn20nbbinXxHwj+WBtpr78lrSJ20i7YI1t\nhPSF+wUplTj8istDw+Xl0G+tFc0tXKWKU4Mzof7D+gxpbL6DxpTHnMu8StxJwRhvpX3x+I7QbTka\n62TGvoNcDnW1EVrZjFIz8WpSLWEWr1LFoUaso4bXjf3YWGMjH01nrXMftadx98ODcd5LbXfQsTfG\neqStovNYwanDSlLic6p+XsWLx70L6MlNCJEkMm5CiCSRcRNCJEkXY0tr8UrwvPwe+R+xfxjHi0a+\nbKSx7f5FrKGNbY+33boz9rlZu2JbVJ6YLrf5Gw+Ne7diY7y/gRMCzW0wHmIbIe1hFWk+QxS/NxwE\nvlb5ZFkt1pB4xXD2oQvjAdn/jv0MWVO7Ix7zu34ap8u5bWs8Jv29zX3ZRgbjfo4eEZ/n6lNpVXVO\nh8V9D7XdwTilfHQPAsWV0lvBeuKV4Hn5PU4NHurJrMeRH1tBY7s2HrfxX8f65JYb42NPBvfuyGC8\nr1Wb4s/Y6uNifdePie89W8fpochchJ/ZAdKKKZU/eqm+C+jJTQiRJDJuQogkkXETQiRJd/3cBtbW\ny5xHi8ukTXBOtihelCQY1tguviOe7z8dv6QNGnd5nrfh/lH5jLFYI3roprh95C+0imLqRjfGZfbD\nGt4QlweDMWPfIaanBhuoa0rOecTY1yjwv+J8bIVYUdLcWGP79q2xXnM+jzHJUiGv2x+P7zkT8bEe\ncnTJ0ngAbIRSb68MxnQoTtZnQ+vjtn00/q3A2ib7ePHye2FqcI6p5lhR8mNjje3an8XX9O8m4/1d\njHoM7+/uXhvVveau+N46mdK5b1jHy0zGxUKa8RWBrsYaW198TWwh/oSLRE9uQogkkXETQiSJjJsQ\nIkm6qLn1w1YcWi/3x3Ny5zk7Lb/HcZVhTjaOFWU/toLG1iZ/S9u/YyrWiE7juNf1df3JNh0a140e\nEZeHR6Oi9dN59wc+Xj0Vl8t6gYG6xmTU3ifivHXR8nu05gHnY+NYUfZjK2hsbfAPtO0m0uAesDv2\n1xpcTTom+wqOBGM6GOtO4fgAWKCfWw0WXBdnzY2fGcLl93jNA8rHxtom+7GVaWzMDxBf7ychPvY3\nbz86Km+gcUZfif8gAAwH406amg3SOPeWrL+wROjJTQiRJDJuQogkkXETQiRJF2NLe2KfItIpjHy4\nnP3eaAofrnvA+dg4VrTKj61dKDoRvYdQXqwjA3+iUdLcVsS+RjZIflc18kXrC7RIq4gt7ekFwv2R\nnmS878DvjdPph2seAJSPDQ1iRUv82NqF1ZmBB5HP1OGxTokNR8XllYfV2w6TE2Ifxan2ktbbCuSz\naazb0XXyMCZ4A61LsJvW7zg8HudJinMu09iq2I1YUxufomebtRTfvZ7iQTceFpdXHFJvO0z+m+Tn\npthSIYToEDJuQogk6d601OeA6WAqMxWH7/g0zR0n43rs3hK3D5ffo7TgVSmLFsseKs/cFc/J+rbW\npw62gh7PaQrj9P1ScAWJGnM8DNfPAtNBOM809XQqLvtEsMTeZDzNLCy/x6nBl5DCBIZTae+M7w3b\nRC4uYToing5VTe1bwR2YCVxneFynebm+oL9742UjC8vvUWpwTlvEIVXs7tEOnGqKU0n5vvia2x5a\n8jJIae8U2mcHwHPT8vdACCGWABk3IUSSyLgJIZKke5rb3AwwWZ+zF0KBpkin2EfhP7ffFpe3BO15\naTiCUxZxOFUVZyF213iIxY4Ts7RiWt+OQANcdRdVUloZ0tGcUlZbGCI1R+ExzNw0sP/2+r6myF1j\nnDSTcIzvvD2u+y1tS2PMeg2nLeKQqjKegEOi8qH98b4nKaX54B2UJqifjnVkvb3PUbqkAdLrFpKK\nZ24aPhZcV9LcMEF65VhwzJ10De6h5Rdp+T1ODc5pizikit09Qv6dPgeb1pDOzcsG7iaddeudTfcN\njz8TTstKGoVbdgM9uQkhkkTGTQiRJDJuQogk6aKf20yss3Eq5nHSeHbE9b471nz87kAPIPcvXnqP\n04JzyiIOp2I/NtbYNq6mlNxzcQoe3xH0bT1pDwN03saLGJIGNxNsz/oR47Pw0M+NtSAuB2mmfbxc\nt8RIfKvw8nucGpzTFoUhVezHxhrbsUfG+xpYW56WyGcppGl/oMeOcFpv8jOsWi6x4QHngNAvk/Xi\nKdKyJoJrOE51HPe2Me4fL7/HqcE5bVEYUsW6KGtsq46gcR2tSGPPS0POBvufoftnmtJtle95SdCT\nmxAiSWTchBBJIuMmhEiSLvq5zcZ+Vhyntp90i72kD+0nvSmc/o/EusmKjbEGxkvvcVpwTlnEsaLs\nx8Ya2+DRJSmUd8X78qHYR8v6SfeYIT+l1YGPnZMfEjM3G/tYcXxuYUyDvkzSvjmMlfSY1afGqYN4\n+T1ODR6lLaJYUfZjK2hsh3OqJvpOHqcx2xuc94qKlEazFTpmIziGd4LGmXW1PfV6n6pYpnAVaVXH\nxPcWL79XSA0epi2iWNGCHxtrbOspfXs/6ZHkyxad5wj56xVS4nf/OUpPbkKIJJFxE0IkiYybECJJ\nuqu5hTF295C/10Q8Z3fW2Fg/CLWJ+8W6ysAJcZl1jHDpPYDSgiPOxwZQrCjIj60BFvqE8fJoU7Hu\n4ffExzLO2Rb6wc1WaG4+B4R+cZOkg7CfUnAsG6Y07+spP9cI6TN8PQhefi9MDc752AqxogxrbGto\n3yuob6GOyToRj2+V72AjHNn9PA8tO1k4ZtAfGyANdg31h87F1pH+yMNO91eYGpzzsRViRRnW2Fay\nBkflWtB+hsaxj7TAGboXu4Ce3IQQSSLjJoRIEhk3IUSSdFFzm4t1tTnWQqhco5hL0nyiWm47SKe1\nijSaTbTcHi2/V1j3gHOyUbwo+7JFOsgw9YVO0wZJU5km7WIqcLLjMSrgQJgPbpZ0D9bcQm2K9bwR\n2pY1N9LBbITHjPKkBcvvFdY8oHxsHCvKfmwFjW2A/ODC8+TzYqfFBUHa5gTFVXK8cE9QHiS9l68p\nb1uj+6eH6odp3IPl9wprHnA+toIGy1ohaWw8zlbybMRaZsHvbenRk5sQIklk3IQQSSLjJoRIku5O\nhKP8TzQnr3FeLdJ8Bqg+1HxIc7MR0gZGN1L5iLi8IvZz45xfvO4B52TjeNHIl41lMvbZYt1jkPoe\nanBVmpt77H81UeFbFF6PoThvmHG/eO0H1npW0nqrI6NUX9eConVFgWjNA4DysQFxrCgQa4VAuZbI\ncFssQINzB7xkPQv2eyvrT5XGxuPOsbLDpG2uCNaj6CusABvDeiTHxPJnkjU27lsI36sLieFdJHpy\nE0IkiYybECJJuv/77Dz8OM5TP67nVEDhIzNNqQpuCCM0ZRqOp0w2GC/d52zzy0KiUExbFIZUFVw9\neFrEUxieGkT7rpiWmgFh2uwBOjZPM8Ix5ykKT6V4DAdpejS0jurXxl0bDvJO9cbXq7D8HqcG56lY\nYcpTEpbG7gxMraK+EdYTSxc9NP3ncQ7L3B++/jz1G6B7u5/GgpYmtOG6BOO9JHHwuHFqcE5bxNJR\nGXy/cPr2Qjr9pUdPbkKIJJFxE0IkiYybECJJuri0n8fhQPyTN4djsRaxmhbgC7Ur1tyGyNVgOHb1\nsH7Sj2qDpfU+y6liSDcjPTBKW8ThVOzqwRpbL/28Huk3FbqFe6wPsr7DY1zmosA/87N+MxhfDxuK\ndUsMkAbXF6QlN9JjBsjVg11xGNZAOaSq4O5RwkJSHoHHuaK/fK+HsDbVw+mbSGPri11wbJDHuV5v\n9Ozig6SpTXNoF7uhcPgejVWo4fF58DXka9YF9OQmhEgSGTchRJLIuAkhkqS7fm6hD0+V/xGlhimk\n7wl92TgVy3C5zxX642Xp0Fe+/JuR1uCcMnk16U2hT88U6UGswbFeUwhDawOz8jQ0Zf5XxvoL62Lk\nO1gIUWMdk+p7m4+x0b6dj82hO5U6WTDm7MdWSMVTEkLUFIv1Kd4nj2Wk0dL16aX+sbZJPoE8Vuil\nz0lv85Ar64/1uqLXJPWN73PW5MLrwn5sBd9QLe0nhBAdQcZNCJEkMm5CiCQxr0xd3aEDmW0DcGtX\nDpYuR7v7hmaVGuOOUDrGgMa5Q1SO82LpmnETQohuommpECJJZNyEEEki4yaESBIZNyFEksi4CSGS\nRMZNCJEkMm5CiCSRcRNCJImMmxAiSWTchBBJIuMmhEgSGTchRJLIuAkhkkTGTQiRJDJuQogkkXET\nQiSJjJsQIklk3IQQSSLjJoRIEhk3IUSSyLgJIZJExk0IkSQybkKIJJFxE0IkiYybECJJZNyEEEki\n4yaESBIZNyFEksi4CSGSRMZNCJEkMm5CiCSRcRNCJImMmxAiSWTchBBJIuMmhEgSGTchRJLIuAkh\nkkTGTQiRJDJuQogkkXETQiSJjJsQIklk3IQQSSLjJoRIEhk3IUSSJGPczKxmZi8xs5+Z2VVmdr2Z\nvdXMBszsfDP7WoNtLjGzP2uyv0vM7OZ8X1eZ2c/N7Jdm9nRqZ2b2MTN76VKd24GImW02Mzez7zWo\nuzCvG21Q5/lYXmVmV5rZjWZ2mZmdTu3WmNk1/H7KtDqmjca22T0e1O0O7uWr83v742Y2SG0fZWZX\ndfbMlodkjBuADwJ4BBIKfPYAACAASURBVID/5e6nAHgYgBMA/Msi9vkydz8lf50M4C8AfMTMVgKA\nmZ0I4LsAGhrI+wATAE4ws6Pn3zCzFQDOqNjurHxMH+ruJwD4HID3Bvv4IwA/QXb97mssdEyruDS4\nlx8C4EQAJwE4Lz/GkJm9Edm16F3ksQ4IkjBuZrYZwFMBPMvddwOAu+8H8HwAX+7goY4FsB/AZF5+\nATLjeVEHj3EwMYvsw/DU4L0/AfAfre7AzHoBHAXgnuDtvwJwLoAtHejjwcaix7RF1gNYjfq4PxrA\nCuTGLgWSMG4ATgNwnbvvCd90963u/oW8+HvBY/lV+aN31ZTnn/K2t5rZXQCeiOzJcCrf/wvd/dOd\nPpmDjI8DeFpQPg/AhRXbXJxPOe8E8Mv8vWfMV7r72e5+WUd7eXDRypheTPfy6yv2OX///8LMtgH4\nPIC3u/tFAODuX3b3FwPYU7qXg4gkHj8BzKHaUF/q7ueEb5jZJRXbvMzd/93MNgD4BoDb3f3KhXcz\nPdz9cjObNbPTANwNYKW7X2tmZZud5e7bzexUZON6sbvf3Y3+Hgy0OKZnufv2+YKZnY9yeeRSdz/H\nzHoA/D0yiSXpGUcqT24/AXDivBY2j5kdbmZfBzBUtrGZPS74FvwG17v7NgBPAfACM/uTTnY8ET6B\nbBr5tPz/eV4fjGvhycLdrwDwYgAX5tKCqNNsTCuhGUo0O3H3OXd/PYBbUP2EfVCTxJObu99pZp8C\n8FEze5a77zGzVQA+AGAHgPGK7b8C4CsVbX5jZm8C8B4z+1au6YmMTyL7gtkB4Kzg/deETxeNcPfP\nmNkzAbwL2bRfZDQb00ryH9Tuxcwe1KDZCwBcZ2aPd/dO63kHBKk8uQHABQCuB/CjXIP4SV5+dgeP\n8XZkhvLvO7jPgx53vwPADQB+5e73VLVvwAsB/JGZPbqzPTt46cCYVu3/JgBvBfAudgdJBXP35e6D\nEEJ0nJSe3IQQ4l5k3IQQSSLjJoRIEhk3IUSSyLgJIZKka35uo2uHfPOhgY9tD9tV+tXWquxu4K3N\n3vBGp9XD5T5qT2XMxsW5KSrPUHk6Lke/QFf9Gl3qyR+Nwy2378T2e/Y33WB03QrffMSa5ofmLcN+\nFiIKeEy5TNfHahXloD3/Qu80nk7j73MopfQXf+53+baX//yO7e6+oexwo2sGffOmkfobfC/PlfS3\nVmteBzQYZ2pfuJe5HLTnceP7lsd5jsvcHs3ha1AeoYLLb9hWOc6LpWvGbfOhK3HZp59cf2NoOG4w\nSwPZR0EFZR+uXnLTGVwbNx1cF9evOCIu9x4Sl31XXN53W1w9uTOu339XXA6N3cxEXMcPyzU2tHSe\ntYF7/33YOe9DGZuPWIPLvvqCoB90s/bQByXsJxt8bsv1ffH1s/5VcX3/amofGAMek8kdUdGn9sX1\nM2NxufChpS+XqGN0i/P40rY9R73i1uY7y9i8aQSXffRx9TcGBuIGk5NxOezv6rXN6wCgn/bVvzIu\nD8dZpGxoY1w/EIw7jZuPb4vbTu2NyxN03++Nrwtm6DMajuU0XYPe8nHvOe2DleO8WDQtFUIkiYyb\nECJJuhdb2tMTT0X5MXaSpiqzNKWaIt0rfOyt0WnQlMnp8dv66PG7RlOB6Tjri49TeOQYPd6P0zR1\nd7D/PprO8eM6T0NYv6kF48QaCeMoTkVDeDpYpmVxWx4jms45fU8ai1vhtHY6nnb6BI3fLE3rpsfL\n60v1P7pvGJYFWqGnJ56KjtG0eYanaMExtlPyE5ZneF/r++PyNE01e+Kxs/B8WD4ZpyiuaQqPHtsd\nl/fRtHWOtdLg/uHz2E/SQpXWuAToyU0IkSQybkKIJJFxE0IkSRfzuXns7sEaG/9Ev5/0gMHB5vU8\nnx8mTY11qGH6+XyWNB3WItjVYIoyMY+TThKeJ58Xa26ssbHLxf5ABynT04DMhyt04Si4oRChb1JV\n24IvH2fJifUdR6znWaCLObt28LELmhu7grBLQonm1ksuRbztQpibi909WGNrR28q0+cAYAe5GW2g\n+4fdoIKxK7jU8H09QffxHtLc+DPIfR0Ijj1Hx+LPxNr16DZ6chNCJImMmxAiSWTchBBJ0j3NzXri\nkCr2Y+P5Pc/ZWQ+YCrSFWdJ3VozEbWdJK2BNro/bk28Uh1fdtTUu74375tN1XcdWUxjSGJ3nCIXX\nrF4Tl0M/uKp4W/dYG2M/trKYTtZT2K+QdaN+jv/k2ML41vLQT461IPa/miHNbYrK7DvIfo5hbHBV\nXPFCCceWdTIeq8H6fe/byfesr9wPz/hzMkA+lxSm6BOhPyF9hjicij5zvo188KY4fC/Wjy08T9bQ\n+8k/j69hF9CTmxAiSWTchBBJ0t2l/UK3CJ72sKsHTUN9F01l9gXTqDEKBRq7Pj7sMUfG9UNxlhAb\niKeCvu+38bHuuj2u/9Udcf04uResCaZgQ3SePA3lKQyPC0/ByjArn3axy0U4FeXpD4fHcbkQDkfu\nNENUDqfAUzQ130tTtYmKUDy+V3gKFEwDi1Nzula10iVtG1Orxdk9OKSKiKaiU9Sf/SUZTQD4bDzd\nN57+cXqldcH5cVjg1jvjfe+jazRGY8PT0lXxOPt4vS8F+YXva566dwE9uQkhkkTGTQiRJDJuQogk\n6aLmZpQ9lw7NriD80/E+0iZ2Ba4gN9K206TXPSDW63oeQRodh0jdfkNcf/lNcflKckvZTLpNqMFx\nmpjxWOcoaBWHHBqXK9I1U+P2wq9C3Yw1NXa9IdccnyE9hvpp5DaANYHOSdfWd1EYENNL6ZRWUHod\nTrcThrTVSI+rUduFLkpelu6H3WpCdw/S2Hw7XaPdpHutJO1qgMq76X7aUHcV8T30udget/Vd8XWw\nXg4FjIuFe3Fl6HbC7lYr4jJnK+4CenITQiSJjJsQIklk3IQQSdLF8CuL07NwyAz5xXBIVcGXLdDZ\n/I5Yt9h/d+yDNbIz3nZu9tdRuYdW3vIbYn+g6a/G4Vdj2+P9rRoj/emYQIPZQH5KfXTeK2nVKCZc\nVYpXpGLYz60iNXg05qyZsMa2j/zapun6kCY6tzdub2sC/Ye3neaUVOQTNcyp2al+hOpD36+q8CvW\n5FrBLA6L49Tg7fh0sca2j8q3kE7G268k/8+T6+Puv6Q04XeXh3r5MN1fx9IKZ2tJc+sLno3Y95Bh\nXbIL6MlNCJEkMm5CiCSRcRNCJEkXNbfeeCV4Wn6P0xBx2iKOFw192Vhj23lb7L9zzZWxVrD24lhT\nO/70OBXMb6+OdY5btsd6wuhIrHwcPxhrfit+J4hV7afvj/Ub4vIAaRVDtCL5yKb6/1XpeqwnHteq\n1OBh2iKKFS34sZFO5neRznR1rO/svSHWgqbH6tsPrIq1nRWHU7+Oist2IumSa8p97CJ9h9Nwc5l1\nyVawWrwSPC+/R6nBw7RFHCta8GMjjW3PdfE4TuyKr+m+vfG5D32lvuzk3rF430OUpmr1YXG/V51I\nvml9NK50L9ua4D7nmGkuD5A/ZxfQk5sQIklk3IQQSSLjJoRIku5pbj29sMF6fKFPkQ8OL1tHqcEL\nOdmCeFH2Y2ON7UUzcb6tK3ZTLON3m/a6If+1/35RmTUkrK5rGXbEprhulGJHh2MNzgZJcwuXqatK\nM241WOAX54XvLsrvFcZVcj421rE4tpc0tju/G6cK/9KWWFN9A26+9/834Zio7sz18b6OOyPWpXwt\naY0b41he4+URQx2tl3y1+imlfC+VW6GnFxgerZc5nTcvvxekBi/kY6NYUfZjY43tRzfH5/50xD6b\nY8GSisN0/d+O46Py/5yMtemhdbHu2t9H48r+h2uCe3WE0uPzfdxPel4X0JObECJJZNyEEEki4yaE\nSJIuam59wIoj7i1aHy2vN7yRynE9r3sQ5mTjWFH2YytobItkqD/2+eo9+5CobA8OtI1Nsc5ha2O9\nrpDDn/2uQs2oyifLakB/3Z/IEOtmDorpDJffozUPOB8bx4qyHxtrbH+NXzbt5vOo7g077h+Vn/bT\n+HodcT/WzUj74bjF0KdqgPyt+qjcuwAtqKcXNlS/X72HtEz2pQuX3+M1DygfG8eKsh9bmcbGcN0F\nNO7/uise9+N4B4fQuB95VFy/KtAdWTtmv7aFrFWxSPTkJoRIEhk3IUSSyLgJIZKki7GlfUBvoE2x\nfjRL2kNf7H9UWFs08MPifGwcK9quH1sVD3tM3Hd7xAPiBkefVq9jLXGQYks5XrSH/IWiS1Rxuawn\nHjfat5GfnIfXgNfzXENru66J8/GHsaJA7MfWLq8mLegJ45vjBqvovKlvGBmNy4P1MbQB8rcivzf0\nLkAL6qlFup7V6BrO0hoRE0H9unicwzUPAET52IA4VhQo19jaZTOV+44jjW2UY3rpXl5R/zyHPqwA\niuO8kBjeRaInNyFEksi4CSGSpItL+80CHrh3TJN7xjQtQzZLKXj2/TauD5bf47TgnLKo09xwcRxu\nc9IfxUv/2XD9kdw3xmFlRlMW8LSpv8RdAxSixrjHy/lNx24FPkNhQlNB/VTF0oqU8ohDzjikit09\nyngDYpeEof6K6zdGqbU5/Cks8/SI4TTkreBzQDiWk7EriE+V9G+c2tLye5wanNMWcUjVYqaphYUf\nd1Mq/23x8o42SlPowOWFl8cs3Of9Fen0lwA9uQkhkkTGTQiRJDJuQogk6Z7mNjcF7Lvt3qKP0/yd\nU2Lvj1M1467bo6JfXte5eOk9Tgveab63O07PfOyn7ojKg0HeGnswaSqHnxDvrC8eh0LKo9Cdg3UM\nxmeAybobjE9QWNAMqSzjQZqivaQF7WJNNNb7ODU4py3ikKrQ3YM1tj9dG5/XIfen6zdNKZD2xWNq\n98QprcIlEAtL4VF6e5tZgD47NwMfD1w0xuN0TwX9eG/gmrQ11oexnY5PKfM5NTinLeKQqjJ43NfQ\nvn0f6cO7aCnALfF9Hi1hSDojh0sW7r0uoCc3IUSSyLgJIZJExk0IkSRd1Nxm4KE/0FgcVoIp0nju\n2hoV/VfxfN+vrPvgjG2P9Tpeeo/TgnPKIg6nYj821thO6aNl7uYotVDoqzR8W1RnnPJmDYWVDa+P\n68Ml5FiXZHw29rFijY7LM0F5okIT4RTTtPwepwbntEVhSBX7sbHGNnQMhUTx8necAp3TjIfnyb59\nHIJWlbq9ET4LhGnyWWOboHt5f73e98Xn7rvKdVRefo9Tg3Paos1hN2hfrLEdvi7e19wMhetRmivs\nisfS+rfUC+spBI7HlZcR6AJ6chNCJImMmxAiSWTchBBJ0kXNbTr2XaMYO4yTNrJ3N9VTSp7NdV1m\n1Vg8nz9+MFYbOA6ykBacUhZxrCj7sbHGNngk+WUNBccjRyu/O/bJC+NQAQB9NA494b4q4gg55nGa\nfKg4BjOMH50lTaSXl3WLbxU7MY4V5OX3ODV4IW1R1C8aJNLYbFWsO1mN+sZ6YXj9eclCp2MtRHOb\nmwUmgjjpMbpX98Rl3xb44Y1RyiMaZx+Oz33ViXEadF5+j1ODR2mLOFaU/NhYY6sdXZH+aZKX3wzK\ne2mpzl7SaOXnJoQQnUHGTQiRJDJuQogk6Z7m5h77ae2mpf0oVbhPc9prSlMcanDHxPrOit+hVN2r\nSbN5cByfF6YFB4o62CDrZpRzK9LYAFioP/XF3x82QkvJ7afcX6xVRAduwVco1OXYr41TifcFxxqM\ndUNbQZoZL6e3hvqyMdZrCsvvhanBKR8bx4qyH1tBY1tN8beDJbHE7BPH5Tkak1aYm4njRffR/bCf\nc+PNNv4fKD5eHMsabNzffrqfCsvvBanBC/nYKFa04MdG2Mp+eoP8OcfreqbNkA8mfZ4LfnBdQE9u\nQogkkXETQiSJjJsQIkm6uIYC5ffvI02GdZbVq+P6IdIH5gIhbAOJYv2kcx2xKa7fFGtuvPxeYd0D\nysnG8aKFpGGBLmIr6DynSZsYYEGPfNlCnYx9tBjWNdmHi8u14PL3k74yRNrPCN0qfL04vrOwfaC5\nkL9dMR9blR/bYHl5oESDYy3IynWnhjiAmWA/c3RdWH/qCcZqVbmOZWtJE+xnf0OK/zzyqLg+WH6v\nsOYB52OjWNGCHxvrk3T/WXhefL0Z9qPsAnpyE0IkiYybECJJZNyEEEnSRc0NiGxpLx2ay2Okc42s\njMuhj00fbbt+Q1wePTQq2to4vxsG4/a85iKve8A52QrxoqEvG2ts/eSvt57ytw2MxOVQg2MNpArj\nPGhUDtdBHaS4Qta9OA8dayw1Oq8B0kwHA99DjnHtoX6xf95gRVwia2yhtmh0b/CxFkp4LVgnpf5Y\nLVjTYZzOZSVpsuwXSfn+sIZ8/FaR/9iKIG66l8aFfCijfGxAQRcL/dgA0tgAeKA1FvIUVmlwXUBP\nbkKIJJFxE0IkSRenpQbUgsdinp7xNIinoTUKcQpdRVbG6XcK05RhmqbWeApGU4MBevSn5fc4NXgh\nbVEYUsWuHjwNZTcH/sk8HKcqVxAYTcPIzaGXzztoy1OrWn/ztkCDKQ+NwUB8/SwcU2pbOCtODc5p\ni6qm5zwVLdu23ak+kF2HUG7gKdgchdRN1q9xwcWJZQt2a+HPwQhNU+netsF6mJvzudHye4WQKEpb\nVAipovOMpqL8+aXPa2Ua+yVAT25CiCSRcRNCJImMmxAiSbrrChJqADxHZ91rNWkLU6QfHRK7d0QM\nxZqZDZKGxm4LPXQsWvqPty8sv8epwcOf3AtuAuTqwRrbIOk3VanFQwzlGhKnPArHnOtqw83bAgXN\nzfrpvPpIK2JNLmpLdRwmVkgNTufIIVWhu0dhGUAO+1vA97tZ7LrEaas4ZX4Y2sZa1DClwGJYc6N7\n0djlJhjngkvT0Lq4LZ87p9vicWVCDY7Pi1mItrlI9OQmhEgSGTchRJLIuAkhkqR7mpv1xFpXjXxo\n9tPyaOwHV5YiqZ/83EYoxRGHHRX0H07nwyE7dOx+0kHKQnpYy2INjc+T66NQogrdglMe1UpSljPs\n+8c6F/u9sW7ZS5pbL2lJoY8d+czZTOzH5lWpmjg1eFnaooJfG+t5bWiazfbLetNa0mTDJRRZ1xqg\ncWSfOdbU+mlc+bqF14U/F7y83txseT37wZWlLWI/toIuqpRHQgjREWTchBBJIuMmhEgS88p4xQ4d\nyGwbgFu7crB0OdrdNzSr1Bh3hNIxBjTOHaJynBdL14ybEEJ0E01LhRBJIuMmhEgSGTchRJLIuAkh\nkkTGTQiRJDJuQogkkXETQiSJjJsQIklk3IQQSSLjJoRIEhk3IUSSyLgJIZJExk0IkSQybkKIJJFx\nE0IkiYybECJJZNyEEEki4yaESBIZNyFEksi4CSGSRMZNCJEkMm5CiCSRcRNCJImMmxAiSWTchBBJ\nIuMmhEgSGTchRJLIuAkhkkTGTQiRJDJuQogkkXETQiSJjJsQoiOYWc3MPmpmPzSz75vZccvZHxk3\nIUSn+GMAcPczALwGwDuXszO9y3lwIUQ6uPuXzexrefFoAHctZ39k3IQQHcPdZ8zsYwCeCODPlrMv\n5u7LeXwhxAGGmZUZhesATATlD7v7hxvsYxOAnwA4yd33d7iLLaEnNyFERA+AQdQa1o1hdsLdT29U\nZ2ZPA3CEu/8jgDEAcwBml6qfVci4CSEiemAYbm7cyjb9IoB/M7PvA+gD8CJ3nyjbYCmRcRNCRPQA\nTY1bGfn088kd79ACkXETQkSUPbkdTMi4CSEiZNyEEEmy0GnpgYaMmxAiQk9uQogkWeonNzN7PoDT\nAHwXwLkAvu7uH+z0cZKILTWzzWbmZva9BnUX5nWnm9msmV2Vv64xsx+ZWdNfd8zsfDPbHWxztZnd\nbGYfN7NBavsoM7tqKc5PiG4y/+TW6NUh/gDAcwG80N3PAfCQTu04JKUntwkAJ5jZ0e5+KwCY2QoA\nZwRtxt39lPmCmR0N4LtmNuvuX2iy30vzCzC/zSCAHwA4D8A/m9kQgFcBeAGAOzp6RkIsA12Ylu5w\ndzezt+blyaU4SBJPbjmzAD4H4KnBe38C4D+abZAbwdcAeFkbx1kPYDWAe/LyowGsQGbshDjomZ+W\nLuGT23sAwN2/mpe/2Kkdh6Rk3ADg4wCeFpTPA3BhxTZXAzi5pP738inpL8xsG4DPA3i7u18EZJkQ\n3P3FAPYsvNtCHDgs9bTU3X8BAGY2mpcLclInSMq4ufvlAGbN7DQzOxLASne/tmozZHFwzbg0n8qe\nBOC9yJ7cLupIh4U4AOkBMISehq8O89FO7zAkJc1tnk8g+wVmW/5/FQ8D8HMAoB8Enh02cvc5AK83\ns0ciexp8XCc6K8SBhiELDO3SoZaMFI3bJ5GlWtkB4KyyhmZ2fwCvBvDXABD+2JDXP6jBZi8AcJ2Z\nPd7dm+p5QhysdNG4LWm+teSMm7vfYWY3ANjt7vdQ9VDwdDaH7BfWV7r719vY/035rzzvMrNvLWfW\nAyGWglSe3JSsUggRcZQN+stxdMO6F+KXlzfL59YuZvagFjTxBZPck5sQYnF068ltKQ0bIOMmhCC6\nZdzM7AEAHg/gcGT6250AvuLuN3Ri/0m5ggghFk8PMuPW6NUpzOzlAD6LzJb+FMBl+f+fMbP/v727\nj5HrvOo4/j0zu+td27vOi+2ESAmhhIqCRKQAaSGEglDfghCWEELqH9A0L02RKlpa0SRQoIiSoiiV\nQCpC5a1vEgp/9EUJpIGmpBG0Ra1JVUgVCrbimCgvdepsvPbau949/HFn2XvOzO54d+59LE9/H2nk\nvXtnnjszTo6f59zzPM+dTVxDPTcR6VMgMNwC/LC7L9d/aWYfotqE5oOjXkA9NxEJ1oalbfbcqKoV\nrhjw++/pnRtZsZ7b3otn/Oor5tZ/ke/S5pvC+SaupSd0anHZUoy2NE2kk/5aOul8fr6n73Z1OZ1P\nm2Ssnk3n628+fZDV1Hb+XJt46pl5jh1fbPX2uUihnNs7qRat+G/gaO93VwHXAO9o4gLFgtvVV8zx\n1fvfvP6Lsylg5P/JV1IAmdoRj3fUVhya3B3PTV8Um965P7W1Jx3H57OyGI9PxsU+fClNI11M5XQr\nS7Wf04IHZ1JZXHfIfL1aEP/xX/r45s8VaUCJ4Obun+sV0V9PdUPBgP8Fvuqeew/bo5ybiAQFS0FW\nga/0Xd/sZnf/m1HbV85NRAIDujb4Ucj7m2ikXM/NPQ5FT6fhWc5FZXmYulQb7u1K51LOzFNOru/v\nqDMVj5dPxNcvvpiuHc9zKg1Lt/I5d6Th9mY5uJwLFGmBAd3OBjOXGto/3sy+scnlL2viGhqWikhk\n7Qc3qgD2BuB4/9X5UhMXUHATkWDTnltzHgR2u3vfviNm9mgTF1BwE5HEWw9u7n7LJufevNG5rSgX\n3IyYT8q5p066t7GUSig2yzctLcXj3anMJNW1eTfm2GxiZ3x+yrn15dhOvxSP59NxaGt543OD7Ezv\nJeQLVeIm7TODbuFbjWZ2FXDUG1ymSHdLRSRYG5YOerRyvWoHuX8D9g977lZoWCoi0WY3FFrg7otU\n064apeAmIkGhGwqtK1jnRn+tWl3OseX6sJxzq+eyhk1hmkp1bHkuajfWmvmZ+Xj+pWfj8cmT8Xg+\n3c3O+cPNrj2ZasHzd2T1z33h/wcnF4bSObc2qOcmIoEVHpa2RcFNRAIrUApSQsFSEIsre+ThVx52\nbjYMBXwhlX/UnYnDSDu5EM/vjXsw9/015lU+nn8uPv9EGpaeTp9len2YbDvSV5xXNxlmemb95zyk\nFWnDee65mdnfUq0Qcq+7v7DddtRzE5HAgM7Eea2pfCdwjBELO9UVEJHIjM7E4Ec7l7MHzeyAWbVq\nrLs/7+4r7n522Gs3o+AmIpFRNLgB7wF+EjhoZn9sZj/QRKPlhqWdTlw9N5d+ZMNybC+ul4r4Ygzw\n1ol/Cd5N06dmj8Xnf19c0siPpdKOozFn5wvpH5S00JXtX/+cPhO/YkuL/vZNQ8tlK/WpYltYklxk\nu8zKDkvd/Ungt8zsXuBPgP80s8eAu9z9a9ttVz03EYkK99zM7E1mdj/weeDrwJXAW4C/GqVd3VAQ\nkeA83FB4APg5d/8igJnd4+53mdlIK/IquIlIZEZnsv3gZma3ALcCJ4F7rEq7dIApqiHpp0Zpv2Cd\nWyfuUpWXBs/LFg2ZUhXybC/E1/qx1NZ8ypGtxhoevzbVrT0dd79afjpOBZucTe9tf6pdm6tNqZpN\nObQ8NSsvcTQ5E4+nat9Z3oJQpAVVzq1IxuqTwCPA3cAHer9bBbZd21annpuIRIVuKLj7GeAp4PY2\n2ldwE5GoUHAzs1vd/S/N7B7SRCF3v3vU9hXcRCQwa7Wmre7p3p9Ppt83MverYM6tG3eCz3NH89Lg\nWZ4vWqtlyzm2M4djzuzIN2JN3dPHY45s5oFY97bq8S9272x8b3v3xve+77qUn6jn9KZSnmznrni8\nazYeT8/F4x171n/uKOcmZRQKbj9rZj+TfmdccMFNRC4IBYt4c49tjYKbiLTAgAKlIMDkgJybem4i\n0hIzmCxSCnK09+dGPbiRFJxbOontXN/cxvPaZDmflOZY5jXZwnzRVMeWc2yfTjm23+Zb8VpDdtH+\n+fm4Kc9dp2JebNf+WAe3qzbX1HanOraLL4nHO/fF43qODbCpWp7S9G+RFFCo5+buD/f+/BiAmV3q\n7i9u/qpzp7mlIhIZVc9t0KONy5ndZGaHgX8ys28NuMmwLeoKiEhULue25veAV7v7t83scuAzwGtG\nbVTBTUQis9LB7YS7fxvA3Z8zs5PDXnAuCubcujC1nk/KX513h2y/l/Y9CGuypbmiuY6tL8e2RX+f\nprrduBwXZbs2rzdfX8Ntd6pj23N5OLSZvfH81NzGxx39WyQFGFiBGwpm9ke9HyfM7EHgX4DrgSGL\nPZ4b/d8iIlG5Yel/1f5c6yF8lmpVkJEpuIlIZAYFVgWp3SW9A/hNqnjUAZaBvxi1fd0tFZForec2\n6NGOW4HXAg9RJ6TP5wAACPtJREFUrcD7RBONlp1bWq/Z6qQ6tolUD9aNebNcslzf9yCvx5bnig6r\nY9uqyXQ886o4X9SurtWuXfH98dzclenFuc7t4nhc/560npuUsFYKUs4xd3/WzGbd/VEz+4MmGtWw\nVESi8qUg82Z2AHAzexuwb9gLzoWGpSIS2QZD0naHpUeAO4FXAm9votFyPTdfhZXaUkTLabu9dOxn\n5uP5xe/E8/Xt99Ky4HnJoqb17c73TJx+Zd9Zf+92WRwie1pG3NLwu2/oOVEb8uZlokTaYEC3XL/H\n3U8Aj/emX727qXbVcxORfl0b/GhBbfrV5zX9SkTaY0CnaM5N069EpIT2emkbuMCnX60uw8ln/v/Q\nF9PKJkspB/dSXFac55+Lx0fXl0DKW+/lZcHzkkV5OtUwr05ZtlSswcm0teDskfXPYjOH4pOX4swS\nX0nbEM7E78HqSyCtDlmKXaQJhXJumn4lImUZpXpu9elXlwJd4Es0tG+pbiiISB/r2sBHk9z9Y70p\nWIvAHcANVGUgWmZcRFpgxXNu7wKuc/cFM5sFvgB8YtRGC9a5reBLL68f5xzb6Zfi8cmYU/QT6Xhh\nfWnxydlYG5a33svLgucli/J0qlzHlnNs1+6PdXXTF6WpY/X3uRjzZJY+F3Nx+XQmpuPr68uve8Pz\nyEQGKVznBqy6+wJUNW9mdnrYC86Fem4i0q9sz+2Qmd0HPAb8NHBoyPPPiXJuIhKt3VAoVMQLvBU4\nDLyu9+dtTTSqnpuIJMVzbje6+4ebbrRgndvZOD/0VJwrynzKuc0fj8enU76p/uXvj/Mz910XO6R5\n6728LHhesijPFc11bDnHNnlZXr6p9t6W0nzQUynHtpA+d15efaWWs1uNWxiKtMKAbtHltd4P/HPT\njarnJiKRWeng5mb2aap6t1UAd7971EYV3EQkKR7c/pqqgHcfVQFvI8vfKLiJSGRAt2hoOAF8CDgO\nzAK/3kSjBevcHOrzKM8OmSfZSbmn6fgvie2v1YPNpUq1tNXfrpwcnYkfOywLTlyPDeJc0UFCjg3g\noloOcGbIV7ycvoc8f3S5Vhen9dykiOI9t/cB17v7C2Z2GfAA8I+jNqqem4hE5XNuL7r7CwDu/ryZ\nvTzsBedCwU1EovJ3S182s4eBLwI/CuxcWzFklBsLCm4ikljpnNtnaz8/s+GztqjgJ3BYqS3TdDpN\nH8u5p8R2xLfq9VzWbNqgeirl53anuZ+7Z+Nx3n4v7XuQ12TL80X7atlq783Se+mrY8vOpO9lqta2\ncm5SQuFh6drmzE1Tz01E+pUdlrZCwU1EIis+LG2FJs6LSLQ2LB30aOVy9jvp+J4m2i04t3Q15pNW\nh+SPcm5qKs4ftfqia7kmbmecK8rFl8TjPZfHtuauDMd5b9G870Hfmmx5vmh4cnpveVeh/N7TteLz\nG1mgVGS4AsNSM7uFakPmV5nZTWtXplpi8a5R27/w+54i0iwz6BTJuX0SeAS4G/hDqiKUVbSHgoi0\nw6AzMfjRIHc/4+5PUc0tPeDuR4APAj/URPvlem759vKOHRs/F2AyL/6d1Ie1O1Opx65U6rEzTa+a\n2RvPz6Tz3fje+rbfy0uD52WLNitrycPQiYnNz4fEbtE1tuS7mRW9W/qnwFt6P78P+CjVirwj0bBU\nRKJyw9I1Z939mwDuftjMtCqIiLTBwIqGhiO96VZfptqUuZFZCsq5iUi/Tnfwox03U91EeFPvzzua\naPT89dws5Y9y3mxlyDZ2U7UpV7l0Yzpu5ceOPem1+XzavC/nG2bSkkdp+72+co/6skV5OlVfqUd6\nbV9bmnIlhZlhZYelv0a1htsEcBPwDuCVozaqnpuIJL1h6aBHO24DXgs8RHVj4ZtNNKrgJiL9yg5L\nj7n7s8Csuz8KXDLk+edENxREJLHSpSDzZnaAaqOYt1HtpTCyssEt55fqcq4p3w2eTnm1bi3nNrU7\nnks5Npu6KJ7PObdOWjJpIk7fstSe53/BVjZZGnwqfY48/SpPUM45tjFYnUEuMEbpUpBbgWuAO4H3\n0NANBQ1LRSQpnnP7DXd/3N2fdfd3A29solENS0UkKVPEu8HE+Q4whSbOi0jjrFjOrT5x/gO93zU2\ncb5YcDv4xPPHOj9475FS1xtT33u+34B8l2h4kvwg7n4GeAq4vY32iwU3d2/kDoiItK3s3VIz+1Wq\nYeiO6uK4u79i1HY1LBWRyKxIz63mvcAvAEebbFTBTUT6la1zO+zu/9N0owpuIpIUXxXklJk9BHyd\n3lr6o2zGvEbBTUSi8uu5/QNwKdX+CY6WGReRdhQv4l2kmpVwA/B2GtoJST03EelXtuf2LuA6d18w\ns1ngC8AnRm1UwU1EkuI5t1V3XwBw9xNmdnrYC86FgpuIROVzbofM7D7gMaqNYQ410ahybiLSz7qD\nH+14K3AYeB1VYLutiUYV3EQkKXdDwcxuB3D3DwP3Uw1RN9kb89wpuIlIYlQZq0GPBq9i9vvA66lW\nAYFqhsLrzex3m2hfwU1EkjLBjWq3q19291MAvd3nf4VqKtbIdENBRAYoEhoW3D3UtLn7spmd2OgF\nW6Gem4gkxXpui2YWVv/oHauIV0TasBbcWvde4DNm9gjV3dKrgDdQ7WM6MvXcRCQp03Nz9yeAG4HH\ngV3AvwM3uPvjTbSvnpuIJMV6brj7PPDxNtpWcBORAS780KBhqYgk2xuWmlnHzP7czL5sZo+a2TWt\nv9VNXPjhWUQatu1h6QFg2t1/wsxeA9wH/GKT72wrFNxEJNl2cPsp4HMA7v4VM/uxJt/VVim4iUiy\n7eA2B8zXjlfMbMLdzzbytrZIwU1EgoMHDz5s1t27welpM/ta7fgj7v6R3s8vA7O1c53zFdhAwU1E\nEnd/4zZf+q9U80L/rpdz+4/m3tXWWZraJSKyLWbWAf4M+BGqse3N7v7keXs/Cm4iMo5U5yYiY0nB\nTUTGkoKbiIwlBTcRGUsKbiIylhTcRGQsKbiJyFhScBORsaTgJiJjScFNRMaSgpuIjCUFNxEZSwpu\nIjKWFNxEZCwpuInIWFJwE5GxpOAmImNJwU1ExpKCm4iMpf8D5nCh0bRKLBcAAAAASUVORK5CYII=\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:08:55.727417Z",
"end_time": "2018-12-14T06:08:55.735922Z"
},
"trusted": true,
"collapsed": true
},
"cell_type": "code",
"source": "def plot_pileup_ratios(pileup_dict, use_log2=False, hm_kwargs={}):\n\n plt.figure(figsize=(5,4))\n\n gs = matplotlib.gridspec.GridSpec(\n 1, 3,\n width_ratios=[1,1,0.2],\n #height_ratios=[1,1,1,1],\n # wspace=0.1,\n # hspace=0.1,\n # top=0.9,\n # bottom=0.05,\n # left=0.2,\n right=0.8\n )\n\n vmin=hm_kwargs.get('vmin',-1.5)\n vmax=hm_kwargs.get('vmax',1.5)\n for i, dataset_pair in enumerate([\n ('MD-R1', 'M-R1'), ('MH-R1', 'M-R1'),\n \n ]):\n\n if dataset_pair[0] is None:\n continue\n\n subplotnum = i//2*3 + i%2\n plt.subplot(gs[subplotnum])\n ratio_hm = pileup_dict[dataset_pair[0]]/pileup_dict[dataset_pair[1]]\n print('max log2', np.log2(np.max(ratio_hm[np.isfinite(ratio_hm)])),\n 'min log2', np.log2(np.min(ratio_hm[np.isfinite(ratio_hm)])))\n log_ratio_hm = np.log2(ratio_hm) if use_log2 else np.log10(ratio_hm)\n\n heatplot = plt.imshow(\n log_ratio_hm,\n cmap=plt.cm.get_cmap('coolwarm'),\n interpolation='none',\n vmin=vmin,\n vmax=vmax)\n plt.title('{} / {}'.format(dataset_pair[0],dataset_pair[1]))\n plt.xticks([])\n plt.yticks([])\n\n plt.subplot(gs[2])\n cb = plt.colorbar(heatplot, fraction=0.30, ticks=[vmin, 0, vmax])\n plt.grid(False)\n plt.axis('off')\n\n cb.set_label(('log2' if use_log2 else 'log10') + ' ratio')\n \n",
"execution_count": 15,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:09:02.217067Z",
"end_time": "2018-12-14T06:09:02.429187Z"
},
"trusted": true
},
"cell_type": "code",
"source": "plot_pileup_ratios(\n trans_cen_pileup_dict,\n use_log2=True,\n hm_kwargs = dict(vmin=-0.75, vmax=0.75))\nplt.suptitle(\n 'Log10 pileup ratios of CEN-CEN\\ninter-chromosonal contacts, +- 100kb',\n fontsize=18)",
"execution_count": 16,
"outputs": [
{
"output_type": "stream",
"text": "max log2 0.4125310632545681 min log2 -0.3636235837555075\nmax log2 0.527657236420213 min log2 -0.04290538770434014\n",
"name": "stdout"
},
{
"output_type": "execute_result",
"execution_count": 16,
"data": {
"text/plain": "Text(0.5, 0.98, 'Log10 pileup ratios of CEN-CEN\\ninter-chromosonal contacts, +- 100kb')"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 360x288 with 4 Axes>",
"image/png": "iVBORw0KGgoAAAANSUhEUgAAATwAAAEUCAYAAAC2+opdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvqOYd8AAAIABJREFUeJztnXmYJEWVwH+vqrune+6LG5zhkENF\nEdhVkFVQccEDcNdjV0VR5PDEAxUvxBN1RVQ8UGEFxAsPVFBQEEdkWORGrhk5HO4Z5p7umemr6u0f\nEcVkRkRVV1d3T/dMvt/31dedkRGZkRlZryLee/meqCqGYRhFoDTeHTAMw9hcmMAzDKMwmMAzDKMw\nmMAzDKMwmMAzDKMwmMAzDKMwbFaBJyIXiIiKyPzNed5EP94oIkl/HBGZKiJni8gjIrJeRK4Rkf1H\n8dxnZO9BuL21ISKl7LWJyKH+eo8bt07VQURmichv/LivFpHnDlF/voicJSKLRGSjiKwSkStE5CWJ\nukv8dTf6vC+oPyAiz65z7uN8m0OHcX3b+uftThHpEZF1IvIXEXltou6CJvr7tUT9l9c594QY97bx\nPPl4ICL7Ad9uUOWnwMuArwMPAe8GFojI/qp6/yh04VfA/cDyUTjWhEZEpgNXA78HzvDF9wLHAteP\nU7ca8XHgKOBsYBHwj3oVReQo4GKgH/gBcB+wHfA24GoROVlVvxs0WwG8v8H5bw6224BzReQFOkKH\nWRE5CPfsTQMuBL4FzADeAFwiImeq6scSTY9tcNh7E2XfFJFnqurGkfR3zFDVzfYBLgAUmL85z5s5\n/9HAWt8HTew/3O87IVO2LbAK+NEY9emM8bwnY3y/5/trO2O8+9Jkf/8IrGyi3t7ARuAmYGawb7Iv\nrwDPzZQvAZYMoy9Las8pcGJi/3F+36FNHGsb4EngQWCXYF8ZuMwf66hM+YLUd6TBORZk+vuFxP5D\n/b7jxnOMC6PDE5HvAr/G/RL/sU61/8I9yBfWClT1SeAS4BgR6RzrfhrjSgfQ3US9LwPtwOtVdU12\nh6puAN6DUxedMML+3Ao8BnxRRLYZwXE+iRN6x6nqI9kdqloB3oET0CeP4BwAjwK3AaeKyD4jPNaY\nMGEFnojsKyK/FpE1Xj9yg4gck6j3PK9n6xaRx7yO4vSEjm4f4HTgYOCJOqc9ELhTVfuD8ltxv9x1\nB9HrJ+8XkYNE5Gbf50UicnJQb0idndclneOvp09E7hWRU0REhjpOHR3hoIjs5fUsG7x+6BMiUq7X\nh0zbXhF5tYgs9ff4eL9vfxH5pYgs87qmJ0XkxyKys99/KPBPf6hP1fqU0uWISFlEPiQii/31Pi4i\n3xGRuUF/XiQi1/pnokdEForIqxpdQ6bt8SJyu7+e5SLyo8w9mu+flxcB83z/LqhznJnAvwNXq+qD\nqTqqegPwTOBdzfStAd3A+4BZwFdaOYCIlIDXAotV9dpUHVV9FHgW0NS9bEBNaJaB74zwWGPChBR4\nIvIvwA3A84CzgI/hfn0vFZF3ZeodAPwZt3T6DPB94BT/CXmpqn42Icyy7IT7RQ2pCcinDdH1OcCV\nuFnkh4DHge+IyEeHaPcUIjIFuBanO7kQ98DfBXwN+GazxwkPi9OlbQQ+DNwCfJbGuswa7cB5OL3W\nV4DrRGRf4DpgD+BM3Bf7CtwM+Ye+3b1s0ldd6q+nnt7yp7hZ012+zS+AtwMLvYBBRPYCfuev5WPA\nR4ApwG9E5JCGFy/yP/4aVuDG5TyceuNGL/SW+/4t8nWOBUL9W419cc/iDY3Oqar3qF/LZSiJyNw6\nn9l1jvML3L19s4i8qNE567ATsH0T/V3kZ3s5GvR3bvYHOHOcG4HvAS8Skbe00N+xZXOun2lSh4cb\nnG5g50xZJ+6LugGY68v+BKwGtsnUey7ul6au/qHWj0R5H3Bxovylvt9vaOLavpYpKwN/8X2e5cvO\nyN6DOtt9wL7B8b/g6z0n1S5Tr97xLwUkU+9ioArs0+Caam3PCMq/A6wHZgflP/H1Z/vt+WF7Al0O\ncER433z5a335l/z2h/323EydOcBi4D0NrmEff52/Cq7/eb78Z5myBQyhZ8v066RhPvtL2KTjSn3W\nJOov8P/v5p+he4B2X3YcTejwgH/x9c4cZn8XDNFfJaO/zN47YCawFKc3rD33uXEfr8+Em+GJyHa4\nh/GH6qbaAKhqL/A/QBdwuIjMwt3EH6rq8ky926ivoxvy9LhBqUe1iWOcmelLBWft7cIJzWb4T9xM\n54nsrylO/wjwyiaPE/JF9U+e56u4623meH8Itt+JE6iragXiLLK9fnPqMPp1lP97ZrZQVX+OE2Y1\nNUbtWfimn9mjqitVdS9VPafB8V+Fu87c9avq33DPyStFZDjeCrVZUEN1QB2W4Qxjqc/R9RqpWzp/\nASe8PzTMc46kv1C/v4cDPakG6vSap+L0hl9q8bxjwkR0S5nv/y5O7KuZwefhfvVKuOVjyCLczGG4\n9OCEU0itbCiF9ipVXRaU1fo3v8k+7O7PV2/5N9Syuh73BNvD6deT2Q1VVRGZ45fqz8b1eR5OsMDw\nVCW74mY34X0DN95H+v9/DrwaeD3wehF5AufucqGq/nWI40P95+nfgbm4GUkz1Opt22T9LL2qenUL\n7cAt+d8IfEJEfhLuFJEZxM/uKkbWX1rtr6peLCJvBd4uIj9o5RhjwYSb4bHpS5Oi1t9+nG4J3PIv\npDdR1gwPAzskynf0f1P6vSwp/WDtlzXSj9ShjNOP1ftV/XoT7VMMjKBfuToi8grcLPQ1uJnXN4HD\nCGZpTTLUePcDqOqAqr4WJ2DPwI3VW4FrReS0ERwf0uNWj9twutDnN6okIpeLyNnDOG5D1Ome34kT\naild7tdxuubs52BVfRy3PB6qv+eLyP/K6HoivBP33J3LBJlcTUSBt8T/3Tuxby//9xGcTxHAnol6\nT2/x3LcCz04scZ6LE6J3DdF+OxEJl3O1vqRmoimWANNU9ersB6e/nInTncEmITQpaL99nePuNsJ+\nZTnHt9tHVY9T1bNU9S+4mdJwWQLM9KqMkL1wY42IPE1EDlHVO1X106r6fNyssmYganR8qP88rcfp\ngZtCnUPtlcBhIrJrqo64N3NeQXzPR4Sq/hmne305TvWR5cvEP453+H2XAnvVM+74e38scIBXHY1W\nfxf7fj2btCFxszPhBJ6qLsV5nL+p5uIAICIdwAdwM7qr1PnHXQ/8t9fn1ertyqZl0HD5JU7/dFzm\neNsArwN+oaqDQ7QXMq4IXnC+D+fs/Kcm+/Bb4Dl+FpXlE7hl3bP8dm2psl/mfNNwX4YU7wm2PwgM\n+vMNlznAQ6paE76IyC7Af/jN2g9GTSg3es4u839zlmxxLkh7AZf7oo8BfxKRnWp1vI73URrPUmvH\n/0jWquiF0uHA7wLdZjN8EjdDvtgvJbP9nokzYFVxerfR5oPAGgLdqzqr8NXBpybIvwisA87Lfqd8\nfztxlvV2nOV+tPk8bnLSqu55VBmvaebnRSSlD7tEVa8B3gtcA9wkIt/G6c7eBBwAvFc3OXueirMO\n3SQi5+JmO++l8TKmLqr6OxH5M/AtEdkNt4R9tz/eZ5o8zOne1eFunKA8GDhenUNqM5yJ+/X+lb+m\nu4FDcL/AV/gPOCPGN3BK/Hm4H4ITqaNIBo7zX87rcPrNVwGfUdWHmuxXlitwerRzcW8V7IZzsp3i\n90/zf1fivvhHichDOEtpyO+B3wCn+C/jNbhZ+ztwX5TaMvlbwJtxS9jv4mZlL8YtpU+v11FVvVtE\nvoF7Lq4SkV/j1Bbv8cdotBxudMzjgfOBxd5n7wGcvvB4nLL+/d4wkmWKiLypwaGXqepVQ5z7Sa87\nbdrPzbd5LW6md7fv7924+/Bm3Pidrc4FJscQ/e1R1V832I+q9npXsisa1dtsbE6TMJtcN+p93pep\nuz/u130t7kt8HXB04piHAf+HW3I+hnsf8mKcgrhhP+rsm4F7mFbgfhWvBvYbxrW9ALgTp+e5BXh1\nUO8MGril+LLtcH5gj/vr+gdO4E4OjnUozoWnFzfTOR2n1E8d/4jMfbqHzOtzDa4p6psvn4XzZXsC\n5y6xGOejd7Cv/8FM3dNwgm+D7++hBO4JuNnFJ3DL0z7cMvYcYreXg3EW4yf9dfwd/4M0xHUITp90\npz/+UpyP47yg3gKG9/rXAf5Ze8D3ZyVuRvnCRN0lDO3msSCov6DOeUt+3Id0Swna7YnTpy3247EO\nt/JIfa8WNNHfJUH9uvcOtzoZd7cU8Z3ZIhGR7dUtgcPyy3D+aq1aNFvpywXAW1S1pdnlWCEiZwCf\nAnZV1SXj2xvDGF8mnA5vmPxNRK7MFngF7GHAjePTJcMwJioTwlQ8An4IfFxEfox7xWwmTo9VAj49\nnh0zDGPisaULvNNx3usn4DzVNwILgdeo6p3j2THDMCYeW7QOzzAMYzhs6To8wzCMpjGBZxhGYTCB\nZxhGYRhS4ImLkruklYOLyDQZWWjqUUO28uxgE4WJfJ8lyKA2RucY1fdnNzcicoiIVFP3SUTaxEXK\nflBc5Oy/iUgU9qyZetJE1rVm6gyXZmZ4n8e9DzosfMyyRbhQ14Yxrvh4fTeQeU96DM7xBxq85jbR\nEZGn4aJP13Oe/xrufdurcO+1A1whIi9osd5mZ0iBp6pX6RDvy9VhXzaFVTKM8WY2LvrvWPKyMT7+\nmCEiB+NePdypzv49ca/nfUFVT1LVc3GvCS7BRUQZVr3xwnR4hrEF4lVNC0bpWB/HvaveC/ysTrXX\n42Z+TwUtUBcq63zgYD87HE69cWHYOjy/faWIHCEuO1eviDzsdTclX+cMXHJigD8H7XcWkYvEZY7q\nFZHbROSNwTkvEJfx653iMsCvFpGGEYxFZLqInO37skFcdvW3J6ruISKXict6tcqfa3bmOI0ydc0R\nkW/Lpmxii0XkNMlk//Lte0TkGSJylbgs9o+JyIfFcaqIPCQu6/uVoa5EROaJyA8z9+cOETkhqCPi\nMrMt9nWW+Ta7BPWa7W+viDxdXNDKbn+/LxSROcHxGmYqGw7NjNdo9V/qZFDz+/bwdR8VkX7/TFwm\nIs8M+tLhz3WfuIx0/xCRj4jLuFbLegbwFsnonWQEmdY2I/viAojuh1NDpTgQeFIzaRc8t/q/Bwyz\nXoT/jqiIfC3YtaOIXOqfk2XiMvpNb3RBdWkiwsIC4qgIj+EiLXwF9yrXAlwkhHf6Os/GRftQnA7w\nGF++o2/7OC6m2Ltx63wFPpQ5xwW4aA7LcIEDv4RPBlKnjx3A7bj4bt8GTsKFHFJcOCnYFPljPfBj\n3+8LfdmvM8c6AxdfbSUuM9ancHHZZuGiTPThHo534kI0KflEMGfgIuguxf3KnYx7r1dxgSMX4XSi\nn8NFg/1zpu2uuEgg63Cx1N6De2VOgS9n6n3c9/HruHBEn8OF0LoXKOumiCbN9ncAF23lJ/7enefr\nXZKpt68fkzt8/2v3rxpcQ+0+zx/heI1a/3HRZ97ny36FCzU2xZevwIWh+gguU9o3/TnvB0qZ8/ze\nt7/Yj+kP/PZX/bHe5Lev9f9vh3tueoC/+v6/y193FThkJFE/cN+5ZDSVFo7VMdT44WJU3ppou6+v\nf8ow6x1HJtoL7jlW4LuZNrU6tXv4HlxGtCrue9EwSk7yWlsUeAq8KlPWiYufvzDR2UMDQbYS2CE4\nx49w0+ltM/WaDiWDi52mZLKK4abV1+JCGJUzA/n1oO01OAE1KRjwM4J6X/TlxwTl3/LlRwbtv5Kp\n8wxfto58hrVa5rDauX+KE2T7Z+qUcCGHqsAzfdk9wOVBP07CfZl2b7G/ZwX1rsAJksl+u9lMZbXj\nNRJ4zYzXaPd/fjiuOCGnwN5B2zN9+f5++0i//bGg3sU44VjLzKXABZn9LWVaq3PP2nERpWufhf6T\nLWsfrgBInCc5fr7P1yXq75G9N8Ood5zfPhSXq2QQuIh8ZrlanYVAW6b8UwQyqNlPqzq8DbgcocBT\nGcUWUz+8eC0h8DG4h3pA8hm5foUL3nl40CzMllWPV+KS3jyV3ETdnTkW+Dfy2cbCBCg34R6mOUF5\neO6jgHs1NuDUosSGScIvzfz/D/93oWYyrOGWWYILDV/GhQX/g6rWpv+oahU3SxY2Zfh6FBdi/BTx\nodFV9buqup+qPtBify8Jtm/HvWtduy+jmamsmfEa7f5HqOqXgO1U9allnIh0sSmCcu2aXun7FOaS\nOBW3DFxX5xStZlpL8QLcPat9DvafbNlYWkFLNJfRr9l6NV6Mew4WAG/1z0HI2ZqPNv4N/zeMCj4k\nrQYPWOm/iFn6aJwKbi4uuOYxxA9rjVCh+VS2LC8QQp++fv8FnA88EN4szUTzlU3RvXMZuHABB8At\ns5Ln9uyKW5LmUNWlIrIGl18hy7JMnUF//vCY2RDoc3FfsKGytYH7ol2GM/+fLSK34EK1f183xQcc\nbn/DLGm15Ehl3240M5XNZ+jxGtX+N6BDRD6H0y3tgbtvtTa1a5qP00vlBJu/142ynbWaaS3FHeQn\nBGf5vx/M1hniezISumkuo1+z9Wp8EicE9wWmk84vktMrqupqEVlN85kAn6JVgddMftaQ2kP0C+pn\ndX8wu6H5TOi7sEnxXOMvuClxeRh9arZemCehqexaGVL5Lxr98jWdXUtV/y4iT2dTqPYjcBGRPyAi\nB/kZy3D72/C+iMux8Ruc/vUa3JLxZlyaw482aJqimfEa1f4nT+BmXbVE6VcD/4tTru+OWzrXGM7z\n9RSqOgC8VkT2xeX7OBKXae14Efmoqn5xGMda7ftY6/tqX55Lo+iNMfW+JyPhYdJuPWFGv2br1fgT\n7of7Mpyu/sRE29T3pkTzmQCfYnOGh1qOe7DaE4P0NFxI9/Wphp6lxEve2q/Bw7hZRw4RORL4L5wu\nZaQsIZH5SkS2x/0yPTLC4y/HXX/DbG3+F/w5wDpV/S0+CY+IvA7nUnAC7ld/tPtby1R2oOaT97yx\nfpO6NDNeSxjb+w0usXsfTjf61AxRRD6W6O/hIjJVVXsy9fbH3evPq2qY97f2XD9NVa/DhZf/tGzK\n2/EhnJ5ytGn0PRkJtwJHSxxl/Ln+703DrFfjc6q6QER+hsthe6GqLgzqzMfl4ACeSqw1Axdaf1iM\npR9eLmOVX4P/HniFiDwnqPtVnM6rbpo/Ve3VOCvTLX7373F6sFcHzd6PW+evGOG1gPsF2ltcNq0s\ntSQwlzMC/Gz2CuBl/osEOBcUNinXf4ebbfwZ96uYpZYwpnbfR7u/zWYqa4Zmxmu0+5/KoDYHt1TN\nCrsZbHobo3ZNv/ftcu5BOOPL69m0rK0Gx28101rLDPE9GQm1BEzvrhV4fefbcEaKx4ZZL+QDuB/8\nc0WkPdgXuped6v8O/4WIJqw2C2giWUei3hG4L+nP8dY43FJhJS4xzxdwlsXLfL1zM20voE6SnTp9\n7MIldOnDCc+TcDMfxSlCob71KVfeoN5s3JK7Dyds3olL66jAL+sdL1Oes+DVOXft/qzDGSrejZvy\n56yQOMW94n4kTsIJinvxM8RR6m/Yt5/WxgnnQvB5nE5yoy9/bqPjtTBeo93/yTghc7vv/yw2WYIv\nwX2pPoGbWdau6dW+bQn4I06gnef7W3Np+nTmnEtxs8ETcPromivPA7hZ6wlssmp/MtPuILyrTLPP\n/Fh9Go0fzhWnilvun4h7Va8Pl/B7WPVIe3Gc6stOC+qswAm3rCvZz1q6viZuwAJaE3jtuCXWBpzL\nSqcv3wPnB7fcP1h3476w5UzbCxiGwMt8Qb7NpkxatwCvbeGL0WjAtwO+7x/sWvavU4O+1zvPkAIv\nc39+yqZMX7cAbwvalfw9uxPno7QGN/s7YBT7G96XpjKVNbp/wxmv0e6/LwszqHXilrWP4J7FB/z5\n9sIJx3MybbtwP9IP+b7cjRPCWV+9t/jr6QWO9WVDZlpjkxtWw3u2OT6Nxg9n2DsTp8ddj3sV7bBW\n6pEWeG24ZPcbcMajWp2X+nu4ETc7/iwtuuBYxGPDmACIyO0438InxrsvWzP2Lq1hjDPioohMI+PK\nZIwNJvAMY/zZBpcMuxV3L2MY2JLWMIzCYDM8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8\nwzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAK\ngwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8\nwzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAKgwk8wzAK\ngwk8wzAKw7gKPBGZLyIqIn9J7LvA75vr61VE5Hb/+buIXC8ir2tw7ONEZG2mzR0i8k8RuUhEOoO6\nLxOR24fo6ytF5H8S5SoiS0REgvIz/L4D6xxviYgs9n27TUTuEZG7ROSIoN4kEblKRF7TqH/jQbPj\n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\n3pBw5A50eLIx4WQ8ZWpURhBBpe/++6IqYSpFiCMVp6IAhU7FQKSzq4a6zkREl7FEFSoDW3/IY5vh\nGYYB2AzPMIyC4HR4JvAMwygEStUEnmEYRUAVKqEecStkTATebfc9tGLykW9/aCyObTTNvFYb3vbw\n0hXTTj7Txm98aXn8WkFVzWjRKqoam/CMLQYbvwKiUClAYlpb0hqGgZoOzzCMwmA6PMMwioKqUrUl\nrWEYRUBVGUzkDN7aMIFnGIYL8W5LWsMwioCio2KlFZEu4GJgW6AbeIuqLs/sPwI4rbYJHAI8C+gC\nLgNqLzF/R1V/NuIOBbT+hrlhGFsPqlQHK9GnBd4B3Kmq/wZcBHwifxq9UlUPVdVDgcuBL6nqvcD+\nwFdr+8ZC2IEJPMMwwGctq0SfFjgEuNL/fwXw0lQlEdkZOBb4tC86AHiFiFwrIueLSBwCaRQQ3cxh\naAzDmHiIyJVAHP8KOoFsbK7vqer3fJvjgfcH9ZcB71bVe0WkBDysqjsHdRCRr+Jmgj/w228F/q6q\nt4jIx4FZqnrqiC8sPK8JPMMwRgsR+RXwRVW9UURmAAtV9VlBnRKwCHiOqm70ZTNVdY3//xnAOar6\nktHuny1pDcMYTRYCL/f/Hwn8NVHnWcCimrDz/EFE/tX//xLglrHonFlpDcMYTb4DXCgi1wH9wBsA\nROTLwC9U9UZgL+DBoN07gG+KSD+wFDhxLDpnS1rDMAqDLWkNwygMJvAMwygMJvAMwygMJvAMwygM\nJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAM\nwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygM\nJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAM\nwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygM\nJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAM\nwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygM\nJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygMJvAMwygM/w+jm5Fr6Cq73gAAAABJ\nRU5ErkJggg==\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2018-12-14T06:09:13.483763Z",
"end_time": "2018-12-14T06:09:13.678584Z"
},
"trusted": true
},
"cell_type": "code",
"source": "plot_pileup_ratios(\n cis_cen_pileup_dict,\n use_log2=True,\n hm_kwargs = dict(vmin=-1.5, vmax=1.5))\n_=plt.suptitle(\n 'Log10 pileup ratios of CEN-CEN\\nintra-chromosonal contacts, +- 100kb',\n fontsize=18)",
"execution_count": 18,
"outputs": [
{
"output_type": "stream",
"text": "max log2 0.32974894863073045 min log2 -1.0054390761896974\nmax log2 0.13405035416437222 min log2 -1.4635680412255627\n",
"name": "stdout"
},
{
"output_type": "stream",
"text": "/home/golobor/miniconda3/lib/python3.6/site-packages/ipykernel_launcher.py:29: RuntimeWarning: invalid value encountered in true_divide\n",
"name": "stderr"
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 360x288 with 4 Axes>",
"image/png": "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\n36aLCyay51Z/YN7vpfhPUpn8+PkvwMEisganc3oe7oLqQ4FZNP/6nIa7eeeIyLd9Gf+J+4Id7HV6\nY72eelSqc0Xku7jh88txL/cvVXU8ovt8Ejc0XyIip+CGFG/waV+v9w7ERXP6jIicj9NLdeOGVutx\nQ6uJqG/RiFdFKNJe413/VCSui3Ah/84Dfo8b3h+CM+PIXtMFuKVEJ3r7t+twyvwDcRHE6vqsR4G9\nxdklXkLBiF0i8mKcDvP87MejGaq69wivf0yo6q3i4oQcIy6U5s24NtyKzJK2ovkS5S8Xkc/ietMf\nJd+r/XdxUct+h5s0OZCNkfKaVrrV1PASCkS5SeRrxw2T1uPMRGbQIOoUTk/wM9wXey1Ot/Np3IOs\nwBsL1HM+zmaqHpHpBuDNmf2LSU9x59Ib5fP7NgO+j/tS16NIHY23LWtxnpyZQKO8OKX2OWyMGHUD\n7oXPHlfB9XJuwdkArcb16nYdx/qG96VQxKtm928k7TXe9fdpYSSuGbiX6X7cxNLd/nzb4npWp2SO\n7cLZHt7r63IbbgY5awv3bn89fcABPq1lxC42mkg1vWeT8WvWfrhJtxNwUdl6caZa+4wmH2lTsTbc\nu78eN7FTz/MKfw834Hq9n6eA2Yt54jWMaYCI3ISz3XtoqutSFmxtqWFMMeK8ZcwiYz5kjB0TboYx\n9WyCC4w8JhMrI48NSw3DKCXWczMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMM\no5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SY\ncDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMM\no5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5SYcDMMo5RM\nqXATkUUioiLyx8S+M/y+hT5fTURu8r+/i8g1IvKWJmUfJCJPZI65WUTuEZGzRGRGkPdVInJTi7ru\nKyL/k0hXEVkmIhKkL/b7dmtQ3jIRWerr9jcRuV1EbhWR1wT5OkXkUhF5U7P6TQVF289vP/l/Js9B\nIvKbBmVb+xljYjr03PqAbUVkq3qCiPQAewb5Nqjqzv63E/B24Esi8sYmZf8pc8zzge2B5wLv9ufp\n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\n3ETkm8CrgZsaZNkFeLWqPtZg/7hgPTfDMHz0q1r0GyXXAO9P7RCRCrAN8D0RuVpEDh7tSVoxISsU\nDMN4aiEiFwMLE7tmAFl/U99T1e/5Y94LfDjI/x5VvU5E9gYOV9W3BeeZBRwFfB2oAlcAB6vq38fl\nQrLnMuFmGMZ400S4VYFuVV3rt78K3KKqPxrvOtiw1DCMyeQ5wFUiUhWRdmAv4MaJOJFNKBiGMeGI\nyEeAu1T1AhH5MXAtMAicpaq3Tcg5bVhqGEYZsWGpYRilxISbYRilxISbYRilxISbYRilxISbYRil\nxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISb\nYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRil\nxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISb\nYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRil\nxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISb\nYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRil\nxISbYRilxISbYRilxISbYRilxISbYRilxISbYRilxISbYRil5P8D0NSdsnU+5twAAAAASUVORK5C\nYII=\n"
},
"metadata": {}
}
]
}
],
"metadata": {
"kernelspec": {
"name": "python3",
"display_name": "Python 3",
"language": "python"
},
"language_info": {
"name": "python",
"version": "3.6.6",
"mimetype": "text/x-python",
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"pygments_lexer": "ipython3",
"nbconvert_exporter": "python",
"file_extension": ".py"
},
"nav_menu": {},
"toc": {
"threshold": 6,
"number_sections": true,
"toc_cell": true,
"toc_window_display": true,
"toc_section_display": "block",
"sideBar": true,
"navigate_menu": true
},
"gist": {
"id": "",
"data": {
"description": "Yeast dCohesin Hi-C, fig6",
"public": true
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment