-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add a notebook that shows a basic binaural synthesis #24
Conversation
Before this change, the level of a single source in a mixed synthesis would change depending on the others level.
This section caused the build to fail, so I commented it out for now.
Please refer to nbsphinx's docs section on how to use interactive widgets in nbsphinx. |
On the issue, that the tests are failing on CircleCI: pytest --nbmake docs/gallery/interactive/*.ipynb locally and check what is causing the issue. On my machine it seems that the interpreter is "stuck" somewhere and does not continue, maybe pausing and waiting for user interaction or similar. |
The nbmake issue seems to be unrelated to, but caused by something else... |
Please merge the most recent state of the main branch for a workaround to the issue. |
The problem is the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the effort! Great example!
Co-authored-by: sikersten <70263411+sikersten@users.noreply.github.com>
Thanks for the review! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have a couple minor comments (haven't really focussed on the text)
I'd very much suggest making this notebook statically rendered to circumvent having commented out code in the example gallery. This feels rather unfinished and counterintuitive for people who are novice with pyfar or python in general.
"metadata": {}, | ||
"source": [ | ||
"Here we are loading the included HRIR dataset from the FABIAN dummy head by [Brinkmann _et al._](https://depositonce.tu-berlin.de/items/3b423df7-a764-4ce1-9065-4e6034bba759).\n", | ||
"`pyfar` includes a [method to load specific HRIRs from the dataset](https://pyfar.readthedocs.io/en/stable/modules/pyfar.signals.files.html#pyfar.signals.files.head_related_impulse_responses) but the example shown here is the general approach for loading a SOFA file.\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"`pyfar` includes a [method to load specific HRIRs from the dataset](https://pyfar.readthedocs.io/en/stable/modules/pyfar.signals.files.html#pyfar.signals.files.head_related_impulse_responses) but the example shown here is the general approach for loading a SOFA file.\n", | |
"pyfar includes a [method to load specific HRIRs from the dataset](https://pyfar.readthedocs.io/en/stable/modules/pyfar.signals.files.html#pyfar.signals.files.head_related_impulse_responses).\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the sentence does not make sense without this. Or should we then add the suggestion by sikersten?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, see my comment on Simons review comment ;)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I shouldn't work after hours 😅🤦
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"sources.show()" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The output of this is heavily distorted. I can with no good conscience agree that one can well make out that it is the horizontal and vertical planes. It does look like they are not orthogonal, but rotated.
Please add
"sources.show()" | |
"ax = sources.show()", | |
"ax.set_box_aspect([", | |
"np.ptp(coordinates.x),", | |
"np.ptp(coordinates.y),", | |
"np.ptp(coordinates.z)])" |
or use the scatter plot implemented in spharpy
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for pointing this out .. due to pyfar/pyfar#555 this does not work yet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nevermind.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can also use
import matplotlib.pyplot as plt
ax = plt.gca()
as workaround
"\n", | ||
"index, _ = sources.find_nearest(desired_direction)\n", | ||
"\n", | ||
"sources.show(index)" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same comment as above
"sources.show(index)" | |
"ax = sources.show(index)", | |
"ax.set_box_aspect([", | |
"np.ptp(coordinates.x),", | |
"np.ptp(coordinates.y),", | |
"np.ptp(coordinates.z)])" |
requirements.txt
Outdated
ipympl No newline at end of file | ||
ipympl |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there something missing here? Looks like a falsely managed merge conflict?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep
"source": [ | ||
"from IPython.display import Audio\n", | ||
"\n", | ||
"castanets = pf.signals.files.castanets()\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it just me, or are these not 100% anechoic? I feel like there's a reflection in there.
I've implemented a hot fix for the scaling of the scatter plot within pyfar, so we can get rid of the manual axis scaling in the future. |
`ax.set_in_layout(False)` was added since a this warning was raised: > UserWarning: constrained_layout not applied because axes sizes collapsed to zero. Try making figure larger or axes decorations smaller
Thanks for the reviews. I think I got most things now. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, the interactive example is great!
Just some minor propositions and typos.
"Humans can localize the distance and angular position of sound sources by extracting and interpreting acoustic cues from the acoustic pressure signals arriving at the left and right ear.\n", | ||
"This is possible because incoming sound is altered depending on its direction of incidence due to reflections, diffraction, and resonances caused by the outer ear (pinna), head, and torso.\n", | ||
"The ear signals are termed _binaural_ signals.\n", | ||
"If binaural signals perfectly reproduced at the ears of a listener, for example via headphone playback, this will evoke an auditory illusion of a virtual sound source that can be placed at an arbitrary position in space.\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If binaural signals perfectly reproduced at the ears of a listener, for example via headphone playback, this will evoke an auditory illusion of a virtual sound source that can be placed at an arbitrary position in space.
Something went wrong with this sentence
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's okay. What would be your suggested change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"If binaural signals are perfectly reproduced"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah yes, fixed this in my latest commit. Thank you for the clarification.
"This is possible because incoming sound is altered depending on its direction of incidence due to reflections, diffraction, and resonances caused by the outer ear (pinna), head, and torso.\n", | ||
"The ear signals are termed _binaural_ signals.\n", | ||
"If binaural signals perfectly reproduced at the ears of a listener, for example via headphone playback, this will evoke an auditory illusion of a virtual sound source that can be placed at an arbitrary position in space.\n", | ||
"Such a reproduction of binaural signals is termed _binaural synthesis_, and the examples below show how this can be realized with a special filters and anechoic audio content.\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Such a reproduction of binaural signals is termed _binaural synthesis_, and the examples below show how this can be realized with a special filters and anechoic audio content.\n", | |
"Such a reproduction of binaural signals is termed _binaural synthesis_, and the examples below show how this can be realized with special filters and anechoic audio content.\n", |
}, | ||
{ | ||
"data": { | ||
"image/png": "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Lu0naMxAi3ZxkdnQQgghhGgjnSpvvnHjRq688srA87lz5wJw6qmncu+991JQUBAIHAF69uzJk08+yRNPPMG7775Lamoqd955Z7ssmwOh6yzqLcksSrAohBBCiDbSqYLF0aNHs3LlykZfv/feexs85+23327FVjWdrgYvyt38Lf8C3dASLAohhBCilXWqbujOLmTMYku6of3bBno8LW2SEEIIIcR+SbDYhkK2+6tuSWZRtvsTQgghmiMjIwNFUVizZk2Tz3n99deJj49vtTZ1dBIstqHQ7f5aPmYRj0dWrBdCCCF8Lr744sCSMWazmX79+vGvf/2LmpraHdR69+5NdnY2w4cPj/i1p0+fHtE6O4pONWax01Mjk1kkqDsbTYMutL6XEEII0RJTp07ltddew+1288cff3DRRRehKApz5swBvGsMpqWltXMrI8vlcmGxWFqtfskstqHgzGKL1lkMzlDKuEUhhBAiwGq1kpaWRu/evZk+fTpTpkzhu+++C7zeUDf0559/zqBBg7DZbBx//PG88cYbKIpCSUlJSN3ffvsthxxyCNHR0UydOpXs7GzAO8H2jTfe4LPPPgtkNhctWtRg+zweDw899BD9+vXDbrdz2GGH8eGHHwZe1zSNyy67LPD6kCFDeOqpp0Lq8GcxZ8+eTY8ePRgyZEjLPrQDkJRUGwqeDd2ibujgWdCaCrTeXxNCCCGErust+n+rJRSbvdk7s2zYsIGlS5fSt2/fRsvs2rWLc845h//7v//j8ssvZ/Xq1dxyyy31ylVVVfHYY4/x5ptvYjAYuOCCC7jllluYP38+t9xyC5s2baKsrIzXXnsNgMTExAav99BDD/HWW28xb948Bg0axC+//MIFF1xASkoKEydOxOPx0KtXLz744AOSkpJYunQpV1xxBd27d+fcc88N1PPDDz8QGxsbEgi3FgkW25AeoW5oySwKIYRoS3pNNdtOHNUu1x60cBWK3dHk8l9++SXR0dGoqorT6cRgMPDss882Wv7FF19kyJAhPProowAMGTKEDRs2MHv27JBybrebefPmMWDAAACuvfZa/vOf/wAQHR2N3W7H6XTut4vb6XTy4IMP8v333wfWfO7fvz+LFy/mxRdfZOLEiZjNZu67777AOf369eO3337j/fffDwkWo6KiePnll1u1+9lPgsU2FKlu6NAxi2rj5YQQQoiDzPHHH88LL7xAZWUlc+fOxWQycfbZZzdafsuWLRx11FEhx8aMGVOvnMPhCASKAN27dycvLy+stm3fvp2qqipOOOGEkOMul4sjjjgi8Py5557j1VdfZc+ePVRXV+NyuTj88MNDzhkxYkSbBIogwWLbisBsaF3TIGgGtK5JZlEIIUTrUmx2Bi1c1W7XDkdUVBQDBw4E4NVXX+Wwww7jlVde4bLLLmtRO8xmc2i7FCXsFUkqKioA+Oqrr+jZs2fIa1arFYB3332XW265hccff5xx48YRExPDo48+yrJly0LKR0VFhfsWmk2CxTYUiXUW623xJ2stCiGEaGWKooTVFdxRGAwGbr/9dm666SbOP/987Pb6geeQIUP4+uuvQ46tWLEi7GtZLBa0A+ysNmzYMKxWK3v27GHixIkNllmyZAnjx4/n6quvDhzbsWNH2O2JJJkN3YYisoNL0LhHb50SLAohhBCN+etf/4rRaOS5555r8PV//vOfbN68mVtvvZWtW7fy/vvv8/rrrwOENbEmPT2ddevWsWXLFgoKCnC73fXKxMTEcMstt3DjjTfyxhtvsGPHDlatWsUzzzzDG2+8AcCgQYNYuXIl3377LVu3buWuu+5qVvAaSRIstqHQ2dDNzSzWGaMomUUhhBCiUSaTiWuvvZZHHnmEysrKeq/369ePDz/8kI8//piRI0fywgsvcMcddwC1XcNN8Y9//IMhQ4YwevRoUlJSWLJkSYPl7r//fu666y4eeughDjnkEKZOncpXX31Fv379AG/wetZZZzFjxgzGjh1LYWFhSJaxPSi6bAGyXxUVFUyaNIkffviBuLi4FtWVcdlZOLduDDwf/NMGlDAX1FaLi9hx+vjA837vfYelR+8WtaszUFWVBQsWMG3aNEyyCHm7kfvQMch96Bi66n2oqalh165d9OvXD5vN1t7NOSBd1yktLSUuLq7ZS+zUNXv2bObNm0dmZmZE6msP+7uP/thm0aJFREdHH7CurvPT3QkEz4YG74xoY3RMeJVoddLaqsyGFkIIIVri+eef56ijjiIpKYklS5bw6KOPcu2117Z3szoMCRbbUt3xhjVVEGawWHeMoqyzKIQQQrTMtm3beOCBBygqKqJPnz7cfPPN3Hbbbe3drA5DgsU2VC+z2IxJLnXrkHUWhRBCiJaZO3cuc+fObe9mdFgywaUNNdQNHbY6waFkFoUQQgjRmiRYbEN6nW7o5qy1WC+zKLOhhRBCCNGKJFhsQ/5gUfGtAq83J1isO2ZRlWBRCCFE5Hmk56pTi+RiNzJmsS35soKGmDi0ooJmdUNLZlEIIURrslgsGAwGsrKySElJwWKxRGxJmtag6zoul4uampoO3c62pOs6+fn5KIpSb5vC5pBgsQ35M4vG6BhvsNicXVxkzKIQQohWZDAY6NevH9nZ2WRlZbV3cw5I13Wqq6ux2+0SLAZRFIVevXphNBpbXJcEi21ID2QWY73PI5FZlNnQQgghIsxisdCnTx9UVT3gfsftTVVVfv31V4499tgutTh6S5nN5ogEiiDBYpvRNQ18WUBjjHcnGE8ztvyTdRaFEEK0BX8XZiS6MVuTqqqoqorNZpNgsZXIBJc2EpwRNPgW4m5WN3SdGdV08L/4hBBCCNG5SbDYVoK26QtkFiOwdE7dTKMQQgghRCRJsNhGdHdtsOjPLDZrzGLd4FC6oYUQQgjRiiRYbCOBjKCiYIiKBpqXWaw3G1omuAghhBCiFUmw2Eb8waJiMmGw2YHmbfdXLziUzKIQQgghWpEEi20ksNWfyRwIFoO7obXSYko+fRetvPQA9ciYRSGEEEK0nWYFi+Xl5Xz66ac8++yzlJZ6g5vNmzeTl5cX0cZ1JbWZRTMGRxQQ2g1d/MGb5D5+LyWfvbf/iuounSPBohBCCCFaUdgLEm3bto2rr76a6OhosrKymD59OnFxcfz444/k5OTwn//8pzXa2fn594U2mVAa6IbWykq830tL9luNXnfpHNnuTwghhBCtKOzM4ty5czn11FP55JNPsFqtgeMTJkxg9erVEW1cV+IP8hRzw93Q/tfrBYN165HMohBCCCHaUNjB4p9//snZZ59d73hqaiqFhYURaVRXFOiGNpow2H2ZxaBuaH/QF7zEzv7qCZDMohBCCCFaUdjBosVioaKiot7x3bt3k5CQEJFGdUWBIM9kQrE5gDo7uPhfP0Bmsf7SOTIbWgghhBCtJ+xg8bjjjuPll19G9WfKFIWcnByeeeYZJk+eHPEGdhX+jKFiNgcyi3rQ3tD+YLJe5rBuPXVfl3UWhRBCCNGKwg4Wb7zxRqqqqjjhhBNwOp1cccUVTJ8+naioKK6++urWaGPXoPm7oYPGLLrdtUGibzvAA3ZD1x2zKOssCiGEEKIVhT0bOjo6mueff541a9awbds2qqqqGDp0KGPHjm2N9nUZgcxiUDc0eGdEG6NjgjKLB+iGljGLQgghhGhDYQeLfocffjiHH354BJvStQXPhlYsltrjbpf3QRODxbqvy2xoIYQQQrSmJgWL7777bpMrPO+885rdmK4seLs/RVHAaAJNrTdWMdxu6LqLdAshhBBCRFKTgsW333475HlxcTE1NTXExMQA3h1dbDYbiYmJrR4svv/++7z55psUFhYyaNAgZs2axfDhwxss+8UXX3DfffeFHLNYLCxdurRV29iQ4O3+wBs06poaCA79ez4fsBu63mxoCRaFEEII0XqaFCx+/vnngcfffPMNH3zwAXfddRfp6ekAZGRkMHv2bM4666xWaaTfwoULmTt3LrfddhvDhw/nnXfe4brrruOjjz4iMTGxwXOioqL46KOPAs8VRWnVNjYmOLMI3u5o3VkTWCqn6ZlFGbMohBBCiLYT9pjFF154gTlz5gQCRYD09HRuuukmbr31VqZNmxbJ9oWYP38+06dP5/TTTwfgtttuY/HixXz++edcfPHFDZ6jKArJycktvraqqoHlgppDczm9D4xGbz1G70evOp0YVDVkB5f9XcfjCg0mtRa2q7NQVRVN0w6K99qRyX3oGOQ+dAxyHzoGuQ/h08LslQw7WCwoKGjwIpqmteoOLm63m82bN3PJJZcEjhkMBsaMGcO6desaPa+6uppTTz0VXdcZMmQI11xzDQMGDAj7+t9//z0Oh+PABRsRv24dqUB2fgGrFyygv6phAhb/vAjn5m30KSrCBpQWFbJ+wYJG6+m2O4O4oOc7t21j+X7KdxWapvHHH38AYDQa27k1By+5Dx2D3IeOQe5DxyD3IXxOpzOs8mEHi2PGjOHBBx/krrvuYujQoQBs2rSJhx9+mDFjxoRbXZOVlJSgaVq97ubExEQyMjIaPKdv377cddddDBo0iIqKCt566y0uvfRS3n//fbp16xbW9adMmUJcXNyBCzaipDyXwh+gR+/eHDFtGrvfeAK1sozxR4/FNnQEe95/ETcQY7fvNzubu/oXKtYDigK6Tr/0vhzVitncjsL/F+PUqVMxmZo9iV+0kNyHjkHuQ8cg96FjkPsQvsrKSh5++OEmlw/7U7377ru55557uPDCCwM3RdM0jj76aO66665wq2tVI0eOZOTIkYHnhx12GOeccw4ff/wxV111VVh1mUymFv0QKr7Fsw1mCyaTCcU30cWo6956/WMRVXW/11F0bz2K2YLucmLwn38QMBqNLb4PouXkPnQMch86BrkPHYPch/CEm4EN+1NNSEjg6aefZvfu3YGMXnp6On379g23qrDEx8djNBopKioKOV5UVERSUlKT6jCZTAwZMoTMzMzWaOJ+BW/3BwSCxcDs5zC3+1MsVnSXU2ZDCyGEEKJVhb3dn1/fvn2ZOHEiEydObPVAEcBsNjN06FCWL18eOObxeFixYkVI9nB/NE1j+/btEZnwErbAdn++2dC+v35qt/vzBn0Hmg3tX1dRsVi9z2W7PyGEEEK0orAzi3XXLazrnnvuaXZjDmTmzJnce++9DBs2jEMPPZS3336b6upqTjvtNMDbRZ6amsq1114LwH//+19GjBhBr169qKio4H//+x85OTlMnz691drYmLqZReoGi4Hvrv3X48tEGqwWNECXpXOEEEII0YrCDhbLy8tDnquqyo4dOygvL+eoo46KWMMacuKJJ1JcXMy8efMoLCxk8ODBPPPMM4Fu6JycHAyG2mRpWVkZDzzwAIWFhcTGxjJ06FBeeeUV+vfv36rtbEhgu7+gRbm9x33dzppv6ZwDrbMY1A0NgCrBohBCCCFaT9jB4mOPPVbvmMfj4aGHHqJXr14RadT+zJgxgxkzZjT42ksvvRTy/Oabb+bmm29u9TY1Rb1FuX1BY91Fuevu0FJPnW5oySwKIYQQojU1e8xiSCUGAzNnzqy3LaCoVW+7P9/Yxdpt/mp3cNF1vfF6/GMfzRbvAZngIoQQQohWFJFgEWDv3r1hrwh+MGlouz+o7XYOZBZ1fb8BYCBYtHiDRcksCiGEEKI1hd0N/cQTT4Q813WdgoIClixZwimnnBKxhnU5dYLF4Akuuq6HdD/rmlpbrrF6ZDa0EEIIIdpA2MHili1bQp4bDAbi4+O54YYbAns2i/r2O8GlTiZRd7vBamu4Hl9Zg3/M4oHGOAohhBBCtEDYweKLL77YGu3o8mq7of1jFn0TXDR3vYBvfzOi682G1iSzKIQQQojWE/aYxSuvvLLe8jkAFRUVXHnllRFpVFcUyCya62cW6+7aEpgM0xAZsyiEEEKINhR2sPjHH3/gbiDz5XK5WL16dUQa1RUFsoXGOmMW3e7A8jkB+wkWA5lFqz+zGH6wWPzB/9g76wo8TmfY5wohhBDi4NLkbuht27YFHu/cuZPCwsLAc03T+O2330hNTY1s67oSrZHZ0A1lFvfXDV13zGIzMovFH76JOyuTms3rcRw2OuzzhRBCCHHwaHKweP7556MoCoqicNVVV9V73Wq1MmvWrIg2riupu92ff51FtPC6oQPd2ZbmZxY9NdXeunzfhRBCCCEa0+Rg8fPPP0fXdc444wzeeOMNEhISAq+ZzWYSEhIwGo2t0siuoP4OLkFjFsOY4FK7g4tvzGIzgkV/kCjd0EIIIYQ4kCYHi927dwdgxYoVrdaYrqzebGiTvxu6/pjFupnGButp5jqLuq7jcdZ4H7skWBRCCCHE/jUpWPz555+ZMGECJpOJn3/+eb9lJ06cGJGGdTV1t/sLWZS77jqL++uGrrPdX9iZRdUdyE7qvqBRCCGEEKIxTQoWb7nlFr799lsSExO55ZZbGi2nKArLly+PWOO6ktpFuet2Q7vDmuBSu3SOP7MYXrDoqakNED1BmUWtsgJjVHRYdQkhhBCi62tSsBjc9Szd0M3USDc0Ya6z6C9rCIxZDLMb2lkd9NgbOFat+4PM6/9O0kVXkXzJtWHVJ4QQQoiuLex1FkXzNJ5ZVBtYZ7HhMYu6xxMYo+hfZ7Gx7f7cuVnkPf0Qrqy9IceDM4u6b4KLc+ufoGnUbFwfeM25eyfVG2TdTCGEEOJg16TM4rvvvtvkCs8777xmN6Yrqz8bunaCS/1uaFfDlQQFhgea4FL6xQcUf/AGmEykXl27pFFD3dD+Y57qysBre2+5HDU/jwGf/oopvnbmuxBCCCEOLk0KFt9+++0mVaYoigSLjQgEi+aGJrg0rRs6eDKLP1hsLLOolZcB4CkrDa2jgW5o3R8s+tdf1HXU3GzQdbTCPAkWhRBCiINYk4LFzz//vLXb0eXVnQ29/0W5G+mGDjruH7PYWGbRHwgGZwuDj3sf+zKLgaCxuraMrntfqwo9XwghhBAHlxaNWdR1Hd0XVIgD8I9ZNNYZs+h2h3QvB441pMFu6IZnQ/uzhJ7KijrHg7qh/UFiILCsCvkOEiwKIYQQB7smL8od7NNPP+Xtt98mMzMTgN69e3P++eczffr0SLaty9B1vf52f/vbG7qxbmh/OUWpDTYbWWcxEABWNSGz6A8sq/3fJVgUQgghhFfYweK8efOYP38+M2bMYMSIEQCsX7+eJ554gpycHK688sqIN7LTCx5r2KQJLvsfs6iYTGDcf7DoaSRY9ATtB627QjOLeo03SNQlWBRCCCGET9jB4ocffsgdd9zB1KlTA8cmTpzIwIEDefTRRyVYbEDwJJTA+oqBYK8ZYxaNJhSDbwRBY2MWaxoLFoO7oUMzi7rbja66QzOL1RIsCiGEEAezsMcsqqrKsGHD6h0/5JBD0MLdeu4gEZIpDCzK7YvTG1xncf9jFkMziw0Hlp5GgsWQ2dC+pXP83dHg7YoO7YaufSyEEEKIg0/YweLJJ5/Mhx9+WO/4J598wrRp0yLSqK4mOFPY0KLc9ZbOaawb2r/8jtF44MyiLyj0VDU+wSUwrjEogPTU1A0WJbMohBBCHMyaNcHls88+4/fffw+MWdywYQM5OTmccsopPPHEE4FyN910U2Ra2dn5M4VBQV5ggou7gTGLja6z6O+GNoPR6DvW2Gzomtr63S4Us297wKAxi/5uaD04gKyuDMkmSrAohBBCHNzCDhZ37NjB0KFDAdi717uVXHx8PPHx8ezYsSNQTlGUCDWx89PrLJsDeAM+fAFgnYCv0b2hA93QRhRfsFj33EAdwdnCqkqMcd5g0eNsILMYHEBWV4cGlBIsCiGEEAe1sIPFF198sTXa0aXV272F4G5od73g8MDd0CYw+DKLjXRDh0xkqarEGOfdhSUkixgYsxhUtqY6ZFJLewSLHo+OS/NgMxvb/NpCCCGECNWiRblF09TdFzrkcTjrLPqziMFjFhuY4KLremgAGBTwhYxPrLODC3jXWGyLMYu6rlOzfXOD7/Wfb61nyF0/sTmnooEzhRBCCNGWws4sOp1O3nvvPVauXElxcTGeOpmt+fPnR6xxXUUgIDI2lFlsIFhsbAcXf3e2yRyYDY1vF53gbn9/xtBPq6wN+PQGJriEjllsm2CxbOEX5DzwL5Iuvprky64PHP9pSwGfrskB4IVFu3nqvENb5fpCCCGEaJqwg8X777+f33//nb/85S8ceuihMjaxKdTQ3VsgNFist91fY+ss+hflNhpRjEFJYU2DoKxl8JhD8E5a8QtdlNuJrmkhwaW3Gzp4zGLrZPdcu73jW53bNweOaR6dez7bGnj+8aps7jt9MPEOc73zhRBCCNE2wg4Wf/31V5566ikOP/zwVmhO1xTY6i8ooMPkm50cvIOLyewNLA+03V/QOovgDSKD6w4erwih2cHg7mkArbwstGx1VYt3cNFKi8l7dg5x06bjGHV0g2W278olEdixZTdpHh2jQeHtZfvYlFNBvN1ESoyVbXmVvLsiiysn9g27DUIIIYSIjLDHLKamphIVFdUabemy9jdm0dsN7Q0ODTa791hj3dCBzGLQDi4AnjqzqZ2hmcWQMYt1so6espLQ5/UW5Q4/WCz/9QfKvvmU/P8+2WiZHbtzATCW5HP9uxt4/qddOOfMYs7WF7nlhH6BAPH9nzbi8ehht0EIIYQQkRF2sHjDDTfwzDPPkJ2d3Rrt6ZL0wJI39buhCcosGmw2b/lGt/sLylAaamcK111rMbzMYmnoNeqOWayuQtfDC9a0wnwAnFs3NjiB5c+sclxl3oxmgrucj1bs5YmPV3Ns4WomlP7JBQNNnDUqjfOKlvDCDzey8MU3wrq+EEIIISIn7G7oYcOG4XQ6OeOMM7DZbJhMoVX8+OOPEWtcVxHIFDY0GxrQ3S7vMX9msSmzoY1By8p4mh4s1n1NKy2pc25V6H7QHg96TTWK3dFgmxqiFhV42+ty4dyxBduQ4SGvz1+2j8M1b4bTiE6yVkl/U9A1c/cR3as3pxszAVj/3S+8bz+cyTFNbkKDdF1HKy7ElJgcOFY4/2WMMbHEn35uyyoXQgghuqiwg8U77riD/Px8rr76apKSkmSCSxPsb51FqJ2NXNsN7dp/PSZTYAcXAF0LnZGuu+oEhJW1k1TqZRbrdkPXmeAC3mDT0IxgEaB643psQ4ZT/PF83Ht3E3Plv/hgZRbHaLXX+O6iflhK8ihY6X3uzsqEI49mgKcIN9DdWcQj6/JYarUwelwlQ3vENbktwUq/eJ/cR++h26z7iD99Bu68HArmPQYGA7FTTsHgkOEVQgghRF1hB4tr167ltddeY/Dgwa3Rnq5pPzu4QO04wgNlFgM7uBjN3iBdUUDX68+m3l9msW6wWDezWBU6wSVwflJKw21qqJnFhYHHNRvXok46ibynHwRNY0X/SZRUq8R5atsRXVWCOz8n8NydlYmu66j79gAw2lHJgGQHOwqqOOOFVbxz+ShG9Y1D13Ve/GUPn6zO5rjBSUw/PI1h3aMb/QOm8rdfAKhe+4c3WNy32/cGPTh3bcd+6GFNfo9CCCHEwSLsYDE9PR2n03nggiJAD14f0Sd09rI3WAxkFhsds1i73R/gnRGtuuvt4lJvEosvWNR1PbCsjiEqGk9lBZ66YxZrQie4BJ/fVMGZxZpN66n4eWFgcs6CpVuAnsTptcGiWpCLOzcr8NydtRetuDAQtCoFOXzyz8M47ekl7C53M+3pZZxzZHdKqtws3Oi91qo9ZTz5/S6O7BPHlZP6cuqIVErfeRlPeRnJV96MoijUbNsEgCvL273tzt4XuKZzx+YGg0Vd1yl8/Tms6QOJOX5qWJ+DEEII0RWEHSxed911zJ07l6uvvpqBAwfWG7MYHR0dscZ1FQ12QxuNYDB4xwQ663ZDNzZm0RdE+jKUisGADg3Mhg7NHvrXWdRdLm8mEjDGxuOprEArCw0WvWMWfUGaxYLucuGpqqRm60bynppN8uX/h+OIMQBUrfsDRVGwjxgVUkdwZtG1ZyclX7wfeJ6blUd0t56YXbUBrVqQh5oTFCxmZ+Lau6e2QtVNgrOEfx3uZvvaHPZu3cXOH9LYEtUbqy2Ga45PJ3NHJkN+eI0PKo/jH3tKmZimMPuLJwCIOeFUzCndUH0BqTt7L5VOFVf23sAlnDu21P24Aahes4LCV59FsdqIGntss7qqPU4nBqvV+9mUl7H78rOxpA+g15x5gDcgRVND/pgQQgghOopmBYsAV199dchx/y4iy5cvj0zLGvH+++/z5ptvUlhYyKBBg5g1axbDhw9vtPz333/PCy+8QHZ2Nr179+a6667jmGOOadU2+rlz9lG57NfAtnpKncBaMZm8wZi/G9ruDRYbW2exthvaV49v3GL92dC+QMzXTR3ILAYtqWOIjYPsvfW7oSsrA8GmMTEZNScLT1UlFUsXUb3uD4o/no/jiDFo5aXsvfES0HX6v/89puRu3vOdTjwV5YFreMpKcW7dGKg/Tq3iqjEpsLT2mmpBXkhm0bVvT20XsY87ex8xlcWc/eMTgYC3xmRDmfs+Iw8fSM5jb1JasJxRMW4uTvoH2qZVgXOr16xASx9Q+zEW5nPY7Qu5Y99qxvuOObd7g0Xnru2UfP4eyZdeizEmjur1q3yfXQ0VSxcRO+UUwlE4/78UzHucng8/T/SEyVQs+Ql3ViburEycu3di7dufgpfmUvz+6/R+8nXsI0ahFheRddf1RB19HEkXXOFt186t1GxaT+zU6aGTm1qZ7vGELtMkhBDioBP2/wLz5s1j3rx5vPDCCyFf8+bN4+abb26NNgYsXLiQuXPn8o9//IO33nqLwYMHc91111FUVNRg+bVr13LHHXdwxhlnMH/+fCZNmsQtt9zC9u3bI9amypW/sePM49h329U4d9buPqIWFbDnmpnkPnYvBf71Bo11YnPf88AEF+sBMot11msMBA2NLJ1jjEvwvuyb4BKYCW0yBzJk/gkuisW7SHhwVtDkG6foqa5ELfCui+jcsgHwdi/rLhe6203pgk8D52gl3vMVs5moI8fVew8pSjWXHREfckzNzw3pEvaUlVKzeUNomZx92HIyQdcxRMdiTEjCptbQ/fcv8NRUU/79VwB0y9rEl1cdzlhXbbCZv/x3arZsDKkvoSqfqNLcwPOa7VvQdZ28px+k5MM3KXr7FQCq168OlCn/6Zt676euqtXLAwGmOz+XwlefBaD4o7cAqPxtUUh9WmUFxR++ie5yUfi/F71l33+d6rUrKXztObTKCnSPh313XEfOw3eQ/9ycwPl6A0MQGuLcsYXs+/9Fyafv1n4mL81l14WnUrnyN+/7/HMNe667kKL3Xge8Y1v3zvonO8+dgmvPzsB5rr27Q37edI+n3hjbprQpHP7PwM/jrMHjqp0Eput6vT+YhBBCRE7YmcUjjzwy5HllZSXffvstn376KZs3b2bGjBkRa1xd8+fPZ/r06Zx++ukA3HbbbSxevJjPP/+ciy++uF75d999l3HjxvH3v/8dgKuuuoply5bx/vvvc/vtt4d17TX/uACLI5rqxO5UdEsnb/hx2IpyOOL1f2Ny1VCx+EfKl/xEzohJ7Bl3JkMWzCM+zztpwz9OcHuRi09+3EVRlZvcMif/8CjYgcLicmKARRkVHAFUVjvZkVdJ/xQHq/aU8sBX21i/r5yL83bwV+D3PeVs+HIbZ6hgBV5atAtLuoFyp8b6vWUc8ft2pgJl1liiKCJzXyGz5v3BYcZi/gq4jBYyi1V6AxkZ2aQCpaZoYl1FVOXnYwY8ioH15SYGAY9+so5J+TvphTfDN+72rzgj71fO9H02O957h397jqakRiV+3xZuAfIN0by+N5qLfGXKjXZitGqO624iSquhdlQjuPbswlPhXXfR4IjCU1VJ1Upf6tGXHXXn7MOa580+xkw8kehjJrPvtqsp+eJ9zD374PEFxLqzhr5FOznTnheov2jlcspdOsEDJMZFVzGI2i54vaqCLz9fzMBVyzAAWxcs5D8xU7j0jxX454GXLl2Eujef2LJcSj+aT/mGtVCUx7L0Y5mbOo2rypdwwur3vLOrb3+cfT99T4xvK8XKP36nYM8+Sn/7JfAX2q4vPmdDpYXuvp+Pyt9/pmbrRko+e8/bJpeTil++w5XYDfdeb/Bb/MH/yDPGEFeaTdU3n2BKScN4/Km4rVGweQ1aXhaqW0NVDOhpvbFYLRiXLkTRPZQt/JztJW50l4vYN72BaebNl1My5kTiVnyHQVOpXrOC5dvyiMrcQurGJQD8es1VPDD+Ni7Y+SnHbP6GqLhe3F8Qh7GkkCk/PoNJdfHO8TdT3G0Ax63/lLGrP2ZXjxH8OHga+1IH47CaMFWWoufsRa+qoNwai2q00KdiL70qsnDbY6hMSKNXwQ5GZvyGontYMvgkMtMO4cR1HzAwax1l0cns7D+W+PI8eu9Zg8dgJPPQiVR1S6fP2u+Iyd1F3qHHsmXyxSTu+IN+Sz5EVwzsHj6Zwp5DiC/Yg72yhLLuAyntOQhLcS7RObtwmawUxfWgNCqJGqMNt8eDtawIU3UZFeZoyiwxJJTn0qNoNyZdpSoqAQOQXLKXqJoyipL7Upzcl5SCDHrs+xODolMVnYzHbMXqLMekuXFFxeO2x2CtKcdWVYZuNKHaozGgY3ZWYvBoaPYYPHYHJpcTo7sGj9mKZrWDomBwu1A8GrrBgK4YwGDAo0NVfh6/LF+JooDi0b0Zd1/WXTcaQTF4zzF4h7zoiv+xEV1RUDwe0D2g6yh60wN83T+BrCnLrzayWEb9U5u2qkZbL89/oCVmdV2nMDeH79Zubt7KIHUu0Pz317wzW/R5tvHN2N+90HWd/Pw8vlm1MWIrtDT77YW5LnGLr9dMzsY2/2hE2MGi36pVq/jss8/48ccfSUlJ4fjjj+fWW29tbnUH5Ha72bx5M5dcckngmMFgYMyYMaxbt67Bc9atW8fMmTNDjo0bN45FixaFff3YrG04FGCHN9PU/6sXcSsmTB4nK2MHU250cHzxGrqv+4nu634CoMJo45neZ3Ljng+xedysyqriwS+3Beq8QDNgB9Qq7xjB9YUqRwAVFTVMfngJydFmCipqb2hJuTczuL3QydM/7mKKL1h8c+kedq6pnRTTp8jbDbypysJowOCsYtHWQvZW7eWvQJnHyM4Sb7DoH7OYjYNYijCr3uCmWjGzo1JhEFBSXAZF+YH6E3O3k5JXm52NK81h96+LWR07iPEl3gC5wBjNMmNPLgI8KHybPIZzcn/m0GgVd2mx90SDETxaYCyhITYOc690nBvX4tqzCwDroENwbt2Ia18mllxv9tE8YDDWoyZgSuuJmrPPO9MavJlaTaV86U+w05tJ9KCQ4C6ncrU38PEHrdcO0tGXeTPSxdZ4Epwl7Hn1BQb7xn8mF2aw44efcLirqDZYKDDH0duZzys33svp+UuJ0aqx+N7/sZsXMHTHUlLcvuDT4yF/9iwcureuAnMsye4y3r/2Fv5SXUmp0YHD4yQ2L4Oqj70ZzBqD2fszcs1lJNXUBrE//vct9uhRTAVyzfF0c5dgfvc5/FOQ1Lxs1Pf+GyivAGbfF3trf9a223swsDoL+6sPofv+Y95m78mg6n0k/L4AgK2Ongyu2ke/b18FwKUYcRos9CrZzb9+uo/+1d6F+HuW7uW0t27Crjkx4Q0yLvzmfpbHHcKE4jUADMpcxaDM2qEA4Tptzdshz2MrCjh83VeB50bNTf8134aU6bbhF7pt+CXk2KG/zm92Gzq6Xu3dAAFA//ZugABgUHs3oJOp0gGaPsckrGCxoKCAL7/8ks8++4zKykqmTJmCy+Xiscceo3//1v0nU1JSgqZpJCYmhhxPTEwkIyOjwXMKCwsbLF9YWNhg+f158/ALiUMlubKAwflb6FO6B7OusTu+L58cfSkuk5V1pZOZuOMnRmatAeD9Iy+kuNsw/pcWx7RNX5E94HDGpWpEmXXiLWD+0wgqROneLrUBySbIBisqJkWnoMKNgs6ENA+Te2n0WeaCfdA3Fqb0UjGvV0CFsSkqfYwlOHQ3sd0SGFVWAzmgR0VDOcTpTi4Z6sac6ZsJbTGTHGOCEkjyeMczOuKiIGgStG6x0ivRAoVwfFIV3bJKAq9dEbuLvpneTFd2XE+6l+7j2polLB2bzqE7SmAbJCdHcebEnuxhLGp8EuNjHbAQ8nduZ/svP9MTcMUnYgkKQqts0bgwEBv0uWcndCORjeRt2oDBl6ldVVBCzcKFJAw5nJScfeg11egoFB11HEm//0jhx29jdLtRHdE4E1OJ2ruTKI83CP4j6VAm5a2kfMlConUdj9mM3r8/bFrF5KLVBPtXgTc4cXbvTUFif3qv/46ZOT8AsC66Hwv6TqaXzc3ZGz4kxekN8J7rdQbDK3YxscT7B8yf3UdQnNqXY9Z+yV+KvfVv73EoCWoF/bM3keYqRlUMzEk/j3t2vklSjTeQfrfb8ZyX+xND8jfS3+D9Z/rxmAsZufN3JmSvYGNUX57vdTqJajlTCv/AqMD6mP5kOtKwWwzEGdzEl+cTU13KsqQRbI7rz01b/sex+d42/J5yOM8P/zsnZy7ihL2/sCT9ONYMnchxG79h0tbvAPhy9PlYbWZO+fXVQKD46/Cp9MlYQ98K773YkX4EUTVlpOXs4PjiNegoLB0xjYTqYgbvWoHJN85WR6EqKh7NZsdSXYHR7aQioRulCd0xOqtxlBZQGZXAnoGjsLidDFv7PdEVRezqPYLlI08iprSA3vs2UWGL5c+eh2F2VjFq51Jiq0tY1/1wdsf1ZtrmrxlQtIMKSxQ/DTkRp9nOqD3Lia0uJS82jUpLND1L9pBWmkWpPZ7cuB6YPSrJFXlE1ZRj8njbWm1x4LRGYXNWYnNVUWWLoSCxJy6TFXtNOYpHpyg2lWprFCnF+0gqzaEwphu7uw3CabQSU1WCwaNRbXHgVow4nBXYXdVUme1UWKNRPB5s7mo8KFSb7Wgo2N3VWFQnToMFp9GC2aNiU71/HKpGEx4MKOgouo6CB4PHQ43LjcVq9WYbFe8fRv4MncFXxoAHg65j0DXfdw8G3YOi63gUBV1R0PFNlGtJRkbXm5gbbFjrr9bb3FzmgWt1OZ1YrZYm1aijtMWbjbjmNrmt3qqOjtPpxGq1orTnB9yCS7d1q52aBo1M7GxIk4PFG2+8kVWrVnHMMcdw8803M27cOIxGIx999FGzGtrZ3HHflcTF1S4G7dy+mZo/15D+l1OYHB28tciluHOz0Z3VzO7jD6BPAK5lUp06d//yBGpVCRaPN3t4+rEjKFy/gGgTbH1gEmsyy+gWY6V/ircjtLBsCyWr4LjD+nHWdSeSsXgOWk0ZD543mtx7b0YrKyH9gx8pKPmV8i0w5ZhDKf1wFWbVyeyLT6B69TKyF0Fat0T6Dk2nPHMVFl8m8ZDhg6jIrv3BSUhOoNeRQynZtpSj0xyUB2UuR5buxlVdDkYTR943m6wbLmZo1gZOOudoyj7bTdES6DdsKGPPOxnOOxmAil++I3fhhyTbLPQbPJh8IK7/IGoqywMTapIGD8HSbzDFG2uDtkP/ej7Zy34iujgf3TeDeuLMizA4otAmjGf3b9+ju5w4jhxL32tvYc/vP2L0devGjRqDpf9giv/nnXVsTE7lnPOnUvDkSmKy96AD1p59GTRpMoWbVvn/y8Q+5hiqly+me5F3Rnb68X9hxOSTybzUG0SZ+g1myqMvc2aS9w8RteBiit9+GfvhR3HV0PEUlVRgfvFOtK1/MnXOQyhmM3v+9mXgPZ182d/wVFeRP+dOAGKOmczd11yD56ZfMWRloDliOPzmW6h+Phd7xkaMHjfm3uk8ev8VwBW49+0hLq4b3YucJDjM9E6wYTEdePixx3Uc+Y/dg15dxd9uf5iZdgdwIgBjfGV0/UQqfvgaY2wcs8Z4J4IV/leh9KP5JP3zZi447a98++UXxFcWYO2dzoDjTsDjcpI/506qli8h5eZ7+Pukk7x1ud14nNWgeTDYHYFxsU2hq7ehFRcyICWNKY2W8k6ymxxo+xU4t/6JpVc6h0U1/hdzY5N2/GNADRZr7TFNDV0ftYNQVZVvvvmGqVOn1luRQrQduQ8dg9yH8FVWVvL8X/7S5PJN/lSXLl3KjBkzOOecc+jTp0+zGtcS8fHxGI3GepNZioqKSEpKavCcpKSksMrvj8lkCvkhNA0dTtTQhmdhm3r2blKdgdnRvjEOpijvpBNdVYmxWzl2cOhC2AZfOYPZjMlkwmAyoQEGTUPN8XbR6oX54BsnZ05ODZxrVF0YfGMUDDYHRt8yPX7mhNDPxGCPwuQLgt17M0Jec/nWK7QOGEz0qLFY+g7AtXsHrnV/4PF1MZuTUkI+L4uvfk95KYpvKR9TbBym5FTcvsW3Ld17Ye1V+7NlSk7FMWCI9335xiSae/bBEusN2k2JScSfdT7F771O4oxLsPXphym1O2qeNwvmGHkk1kHDAsGibfAwbL36euvzLQ9k6dEL++BhtZ9TYjIpl13PnuWLA8eiDhuNY9BQYqacgntfJj0ffBZT0GdrSutB95vuBiAeoEcc+pOvgqYF7rHt0MOo+XMtGE3EHH0ceDTyH78PVDeJp59Ln57xlF1xPdn33kTaRVcybNwAivedSd5T3u70uGlnYvYtvWROH4ADSEsIc5kqk4medz92wGIJU88Ied7tqlmkXv5/KGYLqqpisNpImv6P2vtrMtHzvrn1gzCTCeyhP2fhtNXcPfyOVvOhhzfver5rNulYB2E0Guv9XhJtT+5DxyD3ITzGMFfVaPJs6JdffpmqqiouvPBCLrroIt577z1KSkrCbV+zmc1mhg4dGrI0j8fjYcWKFYwcObLBc0aOHMmKFStCji1btowRI0a0alubqu66egabbyqF6vauvVdHvcW9Dd6b7Qnazk8rK6ld+iYmLrC8jlZZGbT4tw3Fagup2z9zOtAWuz0wY9qV4Z0Na+7R27s2pI/tkJEoioLNt5i1c9tmtCJvF78xaP9lb/3x3naUlqD5l9aJjqkTdPX0XsPH3LMPxqQUlKBMj2XgISH1plw1iwGfLSF63EQURcExamzgNfuIUd6Ftn2ZIdugYSH1A5i798LqC0gBoscfj23ocIxBwbN/se4e9zxO35feD2lzYxRFCVkqKXbKqQA4Ro3FGBWNMSaOtH/PJumy64nyZfBi/3IyAxesIOFvlwIQ85eTvdk4k5nYqdMPeM3WpJgPnBWUJXaEEKJravJv9xEjRnDnnXfyzTffcNZZZ7Fw4UKmTp2KrussW7aMysrwdvlojpkzZ/Lpp5/y5ZdfsmvXLh566CGqq6s57bTTALj77rt59tlnA+XPO+88li5dyltvvUVGRgYvvvgiGzdu5Nxzz231tjZFvXUXbUEBnOom77lHAkuZQNB6ir4A0L90TkiwWFoSWCLHYLdjsHsDPk9V7fqJitUW0tUGYHA4QgJIg90RCBb9M5UtvdOx9K1dr9B+iDfotg3yBnA12zehFnvnOZsSQzOVxth4b/vKS/GUe+szRseGBF7mtB4hwZylV18URcHcvWfgmHVgbWAH3gDFlFA7LtVx5NHe4xYL1sGHYrA7cBw22tvew47EnNYjZGyWuXsvTAlJmFK860RGHzMZxWAgauyx3jb0G+QNulsofvrf6DbrPtL+9Z/AsbiTTif54qtDgixjdExgNp8pIYneT71Bn6ffwOxrnxBCCNHWws7X2u12zjjjDM444wwyMjL47LPPeP3113n22WcZM2YMc+fObY12AnDiiSdSXFzMvHnzKCwsZPDgwTzzzDOBbuWcnBwMQf/xHnbYYcyePZvnn3+e5557jt69e/PYY48xcODAVmtjOOplFoOCNdfePRS/+yoYjSScfYF3Ae866yzWZhbLA+dppcW1i3xbbd6laCrK8FRVhmwrqFhDg0XFasdgd6D5A8qgYNHPlNwNY0ISrl3eWba2Yd6MrtUXLDq3bQoEp8aE0MyiwRcs4vEEFuA2REWHBovdemBKTg3sHGPu6e2SNqf1xLXbm920DArNLNYVPcGbGbQffhQG3xi5tDvn4Ny+maijJnjfR2r3wAxsf1dn2m0PUrN1E1HjJgIQd+o5lH33BbEnnrbf6zWVYjIRf3r4y0rZhx8RkesLIYQQzdWizv309HT+7//+j2uvvZZff/2Vzz77LFLtatSMGTMaXcvxpZdeqndsypQpTJnS+BD59lQvs2h3BB6rhb51AjUNtagAc2paYDHkwIB7X2CsVTTcDW2w2jD4Bvp7g8XazGLdbmiDzYbBbkcr8T1vKFhMScUYn0jZN5+i2B1YfBN4rAOHetuclxOYxFA3s2iwWFDsDvTqKty+vZkNMbEhkx7MaT1QDAbM3Xvh2r2zNlgMGrvmv1ZjjDFx9P3vhyHHzCndQjJz5u49g4JFb9Yy6qgJgWASwHHYaAZ/v6b+QupCCCHEQSYig4yMRiOTJk1q1axil1QnWDRYrYEuUrWwdtlqNd+700hgpwz/3tC+756qoGCxpLi2u9lmx+Bw+MpUBrb7M9jsgb2K/RSrHcVWG6wa7HYUe91gsRtR4yah2B3ETp4W6AY3RkUHAjvdt7NG3cwi1HZF+4NFY1TtmEXF7ghkHxMv+CfRx0wm+mhvV7A/WFQd0fXGQjZHyLjI/UyiUEzmiC3wKoQQQnRWkjZpR3UzixjN3u5mtxstaP1B/1Z7uhbaDa0YvbG+fy9m8GYWA2MWbbbacYeVFUGZRWsjmcXgYDGqwW5oS49eDPp6WaAL3M86cGhgVjNGI8bY+uP8jLHxqLlZgb2qgye4WPsNCgRmcVPPIC5oRq51kDebWN27f0SCN4svWDTExGEMWfZICCGEEHVJsNiOFGPomEXFZAKTGdxu1KLahcMDmUWnd0kcxVxnNnRQZtFTVhLIICrW2hnNnuraCS4Gmz1khrG3rA1D0HI6DXdDd/O1M7Td4J3kUvHzQgCM8YkNzoz1z4gOXCM6BtvgYfR85EUsfRtf1N0xejw9nv4fv2zf1WiZcJh9SxuZe8geGEIIIcSBSLDYjuqNWTSZUMxm9GrQioK6oQu84xfdvrUUzd26e8sHZkPXzkRXS4pDM4uNzYau0w1tsNlQgtbEa2yCS2OsQRNPTI10Ffu7oQPPfVm9aN+kksYoioJ9xCg8e3P3W66poscfT+zUM4g5flpE6hNCCCG6MgkW21EgQ+h/bjSimLwTPtSi+mMW3Vl7gaAxd77sXd3Z0CFBYcgEl+DZ0KHd0P7Z0H4Gmz0kWFTMZozxoWsxBgsOFo0JDS96Xj+zGNtgudZmcETR/Y457XJtIYQQorORVXTbU90xiyZzINuo1hmzqJWXBtY7NKd5Z/AqgQW3a7uh/YEl+GZDOxrOLCqWBsYsBk9wcTi8S8/4upxNyan7HS9oSk4NLOxddya0X91xjMboMHcgEUIIIUSbk2CxHdXdc9bfDQ0EdkIBcOfn1s4gTkyuzQA2sCi37sseQu06i/4ytd3TDc+GNthDxywCgdnU++uCBm9XsXWwN7vY0ExoCFprEcBgqDfbWgghhBAdjwSL7ajuRBHFZAoc03x7LIM3W+ja5w0WgydlKP4JLkGzoQOvWSwoRmNIZjGwWLfNVm+Ci3fMYvBsaH+w6D3f1IQdRKKPnQJGY2DHlLqCxywaomJkWRohhBCiE5Axi+2o3gQXo6n2WNDe0HpNNc5tmwAwdw/a29hYfzZ0oC6rN0tocNSOWQxerLv+mMXQ2dD+rF84wWLCmecTd/JZITvRBAsesyhL1gghhBCdgwSL7amhMYvm+svSAFSv+wOoXSMQajOL/oWwgxl8+0z7gzI1P7d2ncY63dCKxYJiMIR2Q9v8waYvWDxAN3TgvEYCRaiTWZRgUQghhOgUpBu6HTXUDU3d/aJ9s5lrNq0D6qwNaGz89vkzh/YRR4DJjCtjO+5s79I7BltoZjGQhQwaQ+gfq2jp4d2ZxTpgcNPfWCOCM4sSLAohhBCdgwSL7SikG1pRUAyGeplFa39vkKa7vVv9BW9VV3eCTDB/hs8Yl0D0hEneg77tAhVraGbRn4VUbPUnuKTedDe9n3sbx+jx4by1BoV0Q0dJsCiEEEJ0BhIstqPgYDGwhV9wAGkyY+nTL+Sc4GCROrukKBZL7WNbbeYwbtqZIeUMNps3g+mbYOLPMtbdwQW8+z47Ro6KyGQUQ1RMoM2SWRRCCCE6BwkW21FIN7TvcfAxY2xcyMQSxWwO7KUMtWMWA1Wkdg88NlhrA7+osceGLJStWG0oilIvSPR3PWM0oZhrA89IUQwGjDHehbj934UQQgjRsUmw2J6CM4u+LuXgIM0YExosmrv3Ct1z2RgaLJq79aitLyizqJjMxJ54WuC5v4va3xWt+L/7FuUO3skl0vxrLfrHYgohhBCiY5NgsR0Fjzms7Yauk1kMmoUc0gVN/cyiOa02WAzuUgaInertilaCls0JZBZ9WUhL73SMcQnYR45q3htqAv+4xfba6k8IIYQQ4ZGlc9pR8GSWhsYsGmLrZxZDmOp0Q3er7Yauu46ibeAQ0u58BIPdEdgm0L8wtxK0zE7/jxY1unxPJJjTelKzYQ3m1LRWu4YQQgghIkeCxXYUOpnF3w0dlFmMqZtZDA0W62UWg7qhG1rvMO6k00PP9wWLIRNb6mwDGGkpV80iaswxRB8zuVWvI4QQQojIkGCxHQV3OQe6pOt0QxvjE1DMZnS3u143dN3Z0MHd0MFjFhtjqNMd3RbMqWn1ZmcLIYQQouOSMYvtqaExi8GZxdh4FEXBkj4IFAXrwKEhpyvGut3QwZnF0DGLDfFPbKk7vlEIIYQQwk8yi+0opBva2PCYRYCec15Azc8N2erPWyAoWDSaMCWl1NbdQTOLQgghhOhcJFhsRw0vyh06ZhHAnNINc0r9vZmDM4sGuwODzY5isaK7nIFdWfZ7/cBsaAkWhRBCCNEw6YZuR6Gzoc31jhl9mcVGhQSL3q5k/9I0Shjd0E3JQgohhBDi4CTBYjsKmeDSyDqL+z0/aIKLf19nY1wC0LRsYcykqVj6DSLq6OOa3mghhBBCHFSkG7o9HWBRbv9uJ0053+DbfcU6eBjO7Zux9O1/wMvHHDeFmOOmhNFgIYQQQhxsJLPYjkInuPgWyjbXH7PY6PlBmUV/N3TarP/Q/+OfsQ05NIItFUIIIcTBSoLFdhQywcXoCxL9mUWD4cD7J9eZ4OKvs6HJMEIIIYQQzSHBYjva33Z/xpjYkMxhg+cHBYuKrJUohBBCiFYgwWJ7MgbtwVxnUe4DjleEkHUW/d3QQgghhBCRJMFiO9rfOosHGq8IdcYs+ia4CCGEEEJEkgSL7aihYNE+YhSWPv2IPeGUA1cQPJtauqGFEEII0Qpk6Zx2FDrBxfvY3K07/eYvaNr5xvqzoYUQQgghIkkyi+0oZOkcU/hxuxK8zqJduqGFEEIIEXkSLLYnkyXwMDjwa7KQHVwkWBRCCCFE5Emw2I4aGrMYFpkNLYQQQohWJsFiOwoNFs37KdnI+cGLcssEFyGEEEK0AgkW21HLxyzW38FFCCGEECKSJFhsT8aWdkMHjVmUYFEIIYQQraDTLJ1TWlrKo48+yq+//oqiKEyePJlbbrkFh6PxIOmKK65g1apVIcfOOussbr/99tZubpMoiuINGDW1WRNcQmZDSze0EEIIIVpBpwkW77rrLgoKCnjuuedQVZX77ruP2bNnM3v27P2ed+aZZ/LPf/4z8Nxms7V2U8OimM3omhqSZWyykB1cJFgUQgghROR1im7oXbt2sXTpUu68806GDx/O4YcfzqxZs1i4cCH5+fn7Pddms5GcnBz4io6ObqNWN03tNn8tG7Mo3dBCCCGEaA2dIrO4bt06YmJiGDZsWODYmDFjMBgMbNiwgeOPP77RcxcsWMDXX39NUlISxx13HJdffnmzsouqqqKqarPav1++jKJuMIRdvxb02GM2t077OghVVdE0rUu/x85A7kPHIPehY5D70DHIfQifpmkHLhSkUwSLhYWFJCQkhBwzmUzExsZSWFjY6HlTp06le/fupKSksG3bNp555hl2797No48+GnYbvv/++/2Oj2yu/qqGCfhz82ZKFzRtmz8/++7t9PY9XrjoFwjKNHY1mqbxxx9/AGDswu+zo5P70DHIfegY5D50DHIfwud0OsMq367B4jPPPMMbb7yx3zIffvhhs+s/66yzAo8HDhxIcnIyV111FXv37qVXr15h1TVlyhTi4uKa3ZbG7H7jCdTKMoYfdjix06aFdW71uj/Ieu9FMJuZduqpEW9bR+L/i3Hq1KmYmjNzXESE3IeOQe5DxyD3oWOQ+xC+yspKHn744SaXb9dP9YILLuC0007bb5mePXuSlJREcXFxyHFVVSkrKyMpKanJ1xs+fDgAmZmZYQeLJpOpVX4I/YtxGy3WsOs3mb3nGmyOg+IfiNFobLX7IJpO7kPHIPehY5D70DHIfQhPuBnYdv1UExIS6nUvN2TkyJGUl5ezadMmDjnkEABWrlyJx+MJBIBNsWXLFgCSk5Ob1+BW4A8WFVP4qXPF4t1b2hAVFdE2CSGEEEL4dYrZ0P369WP8+PE88MADbNiwgTVr1vDII49w4oknkpKSAkBeXh5nn302GzZsAGDv3r28/PLLbNq0iaysLH7++WfuueceRo0axaBBg9rz7YQIzIZuxtI51oGHEHfKOSRffE2kmyWEEEIIAXSSCS4A999/P4888ghXX311YFHuWbNmBV5XVZXdu3dTU1MDeLuNly9fzjvvvEN1dTXdunVj8uTJXHbZZe31Fhqk+LqSaebe0Gn/fiDCLRJCCCGEqNVpgsW4uLj9LsDdo0cPVq5cGXielpbGSy+91BZNa5HYk05H93iwjxjV3k0RQgghhKin0wSLXVXCOX8n4Zy/t3czhBBCCCEa1CnGLAohhBBCiPYhwaIQQgghhGiUBItCCCGEEKJREiwKIYQQQohGSbAohBBCCCEaJbOhD0DXdcC7j6JsUN5+NE3D6XTKfWhnch86BrkPHYPch45B7kP4KisrgdoY50AUvaklD1K5ubmccsop7d0MIYQQQoiI+uqrr+jWrdsBy0mweAAej4f8/HwcDgeKorR3c4QQQgghWkTXdaqqqkhJScFgOPCIRAkWhRBCCCFEo2SCixBCCCGEaJQEi0IIIYQQolESLAohhBBCiEZJsCiEEEIIIRolwaIQQgghhGiUBItCCCGEEKJREiwKIYQQQohGSbAohBBCCCEaJcGiEEIIIYRoVJcPFt9//31OO+00xo8fz0UXXcSGDRv2W/7777/n7LPPZvz48cyYMYPFixeHvK7rOvPmzeOkk05iwoQJXH311ezZsyekTGlpKXfeeScTJ05k0qRJ/Oc//6Gqqiri760zaY/78Morr3DppZcyYcIEJk2aFOm31Cm19X3IysriP//5D6effjoTJkzgjDPO4MUXX8TtdrfK++ss2uPfw4033sgpp5zC+PHjOemkk7jrrrvIz8+P+HvrbNrjXvi5XC7OP/98Ro8ezZYtWyL2njqj9rgPp512GqNHjw75ev311yP91roGvQv79ttv9aOPPlr/7LPP9B07dugPPPCAPmnSJL2wsLDB8mvWrNHHjBmjv/HGG/rOnTv1559/Xh87dqy+bdu2QJnXXntNnzhxov7TTz/pW7du1W+88Ub99NNP12tqagJlrrvuOv1vf/ubvn79en316tX69OnT9dtvv73V329H1V73Yd68efpbb72lP/HEE/rEiRNb+212eO1xH5YsWaLfe++9+m+//aZnZmbqixYt0k844QR97ty5bfGWO6T2+vfw1ltv6evWrdOzsrL0NWvW6Jdccol+ySWXtPr77cja6174Pfroo/p1112nH3nkkfrmzZtb7X12dO11H0499VT9v//9r56fnx/4qqqqavX32xl16WDx73//u/7www8Hnmuapk+dOlV/7bXXGiz/73//W/+///u/kGMXXXSRPnv2bF3Xdd3j8egn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", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe add an indication for 0° azimuth in the plots for orientation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sikersten and I came to the conclusion that we want the code to be as simple as possible. I feel like adding an indication for that would go against this. But it might also help with the context.
"source": [ | ||
"In the plot, the selected direction is marked with a red dot.\n", | ||
"\n", | ||
"With an HRIR selected, we can plot it in the time and frequency domain." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"With an HRIR selected, we can plot it in the time and frequency domain." | |
"With an HRIR selected, we can plot it in the time and frequency domain. As expected, time differences and frequency dependent level differences can be seen in the plots" |
"The binaural synthesis is done by convolving a mono, anechoic signal with an HRIR.\n", | ||
"The following code shows how to do this with pyfar.\n", | ||
"\n", | ||
"First,the audio signal is loaded and plotted in the time domain.\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"First,the audio signal is loaded and plotted in the time domain.\n", | |
"First, the audio signal is loaded and plotted in the time domain.\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would have a few suggestions to slightly shorten the code. Otherwise approved :)
Regarding the plots with the source positions, sikersten and I decided to remove the styling and rather wait for the fix in pyfar. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! Minor comments left:
- pyplot and sofar imports are obsolete
- Formulation "level diffrences can be seen in the the plots." could be shortened to "are visible."
binaural_audio = pf.dsp.normalize(binaural_audio)
is obsolete
Open questions: