From 0169630a98e9f163df1c51ab39ca181aaff5bfe2 Mon Sep 17 00:00:00 2001
From: rch <rostislav.chudoba@rwth-aachen.de>
Date: Mon, 15 Jun 2020 22:53:02 +0200
Subject: [PATCH] seminar work model example

---
 bmcs_course/3_1_PO_LF_LM_EL_FE_CB-Copy1.ipynb | 4007 +++++++++++++++
 bmcs_course/3_1_PO_LF_LM_EL_FE_CB.ipynb       |   91 +-
 bmcs_course/5_3_BS_DP_A.ipynb                 |    7 -
 bmcs_course/7_1_PO_LF_LM_EL_FE_Energy.ipynb   | 4513 +++++++++++++++++
 bmcs_course/PullOut-InteractiveApp.ipynb      |  618 +++
 bmcs_course/SeminarWorkHowTo.ipynb            | 4489 ++++++++++++++++
 environment.yml                               |    1 +
 index.ipynb                                   |    3 +
 8 files changed, 13672 insertions(+), 57 deletions(-)
 create mode 100644 bmcs_course/3_1_PO_LF_LM_EL_FE_CB-Copy1.ipynb
 create mode 100644 bmcs_course/7_1_PO_LF_LM_EL_FE_Energy.ipynb
 create mode 100644 bmcs_course/PullOut-InteractiveApp.ipynb
 create mode 100644 bmcs_course/SeminarWorkHowTo.ipynb

diff --git a/bmcs_course/3_1_PO_LF_LM_EL_FE_CB-Copy1.ipynb b/bmcs_course/3_1_PO_LF_LM_EL_FE_CB-Copy1.ipynb
new file mode 100644
index 0000000..41a5b66
--- /dev/null
+++ b/bmcs_course/3_1_PO_LF_LM_EL_FE_CB-Copy1.ipynb
@@ -0,0 +1,4007 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "# Example 3.1: Softening and Hardening versus Pull-Out \n",
+    "# PO-LF-LM-EL-SH\n",
+    "\n",
+    "@author: rosoba"
+   ]
+  },
+  {
+   "attachments": {
+    "image.png": {
+     "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYEAAABnCAYAAADmM/4PAAAABHNCSVQICAgIfAhkiAAAH+JJREFUeF7tnQm0VdMfx7cpKtMKUSHzSqUkylT9F1ZFk1qtZkMStaRoVBSeUCpllSkJTUSqpcJKxiYKGSpSCqEkQxkS0v99trWv8847595z7z3n3HPv+f3WOuu9e4Y9fPc5+7d/495nbzEpIUFAEBAEBIFYIrBvLHstnRYEBAFBQBDQCAgTkBdBEBAEBIEYIyBMIMaDL10XBAQBQUCYgLwDgoAgIAjEGIH9Y9x36boPCOzcuVPNnj1bl3TMMceoH3/8Uf3555+qcuXKqnHjxj7UIEVEEYE33nhDffHFF+rwww9XZcqUUdu2bZMxj+JAeWiTSAIeQJJb3BEoV66c+t///qcWLFigLr30Uj0h8PvMM890f0iu5D0CNWvWVFu3blWtW7dWEyZMUPXq1ZMxz9NRFUkgTwcuKs3ef//91ZFHHqnmz5+vTjjhBNW2bduoNE3aESACjPnPP/+sa2jXrp2qXr16gLVJ0UEiIJJAkOjGpOzVq1erP/74Q9WuXTsmPZZugsAHH3yggRCpL7/fB2EC+T1+kWi9TAaRGIbQG/Hhhx9qm0C1atVCr1sq9A8BYQL+YRnbkjASQtgChOKBwKeffqptAn369FEHHXRQPDpdoL0UJlCgAxtmt1gRQqIWCBP13NZlpL+rr746tw2R2rNGQJhA1hDGu4Bff/1VbdiwQUsBqAbcaMaMGapBgwZul+V8niEAE8ARgCMZbd++XfXu3Vv16tVLj//ff/+d7Ha5lgMEhAnkAPRCqnLJkiX6w7799tsdu2VURZ06dVIwDKHCQGDhwoWqUaNGjp35+uuv1bfffquvdezYUcePFBUVqVGjRim8yYSihYAwgWiNR961hkme1aCTPYAAIqQEO7E6JMhMKD8RYExRATqNOT169tln9cQPcS+xJBUqVFDnnntufna4wFstbLnABzjo7qEWcHMNnThxourQoUOiCUgM6JArVaqkMCw2adJE9ejRI+gmSvk+IzBt2jT1zz//ONqAiB347LPP1L777qvGjRunYwlefvllrSoU+4HPA+FXcewnICQIZIpA8Ypvb7EqqNTjixcv3lscRbp3z549iWvcu2nTJv2b88XRpnvHjh1b6lk5EV0EGLdTTjllb7FH0N5du3aVaChjXhxJvHfq1KmJ88VSooxxdIdTt0wkAb+4aYzKYXU3adIknTsG90D+3nHHHRoBcgetX79erwa7d++uV4SGuNcYEjl/2WWX6Xu6dOmio46Foo3ACy+8oLAFINERGzBixIhEg9euXavee+89rfq5/PLLo90RaV0JBIQJyAuRNgKI9v3799fPkTcmUzJGQjEWZopguM+1bNlScWQz5uG2WGrzgoAYhr2gJPf4ggDZRU2+GQp87bXX1KBBg5K6lvpSsRQiCAgCrgiIJOAKjVzwGwGiS+fOnatVSKiN2rRpI6oDv0GOUHmoj6pWraqdAFAXSZK5CA2OpSn7YBiIZtOi3yomNNF/Rn+cCq2FeOZYbS3o6PHAad68eaF1Nef9Ibbl4IMPTrQD+xd4FxvHc942vxog6iCPSD755JMl7sQ/PlmErMdi5TZBIG0E8MMnIMsQRvqzzz477XLkgdQIjB49usRNzAOFxADonDCB1O+BvoMVgCGzq5JbsIzHIuU2QSAjBEjbzWqU45FHHtEeVyY4K6MC5SFPCMAACjHWQWwCnob/v5t4EfjoCvFlSBMKuT2HCMAA8NIhGE8YQLADwQLQMADj4hxsjeGWLkwgDbyTpUhIoxi5VRDIGoHJkyfrxGzCALKGMmUBMAATB5Py5jy8QQzDLoNm8qWby7wI2ADEEOwCmJwODYE5c+boRGwtWrQIrc64VsTkj9RvlQDwbiukPEhiE3B5u63+7EgA5MgRBuAClpwOBQFUQBiBMQqfc845odQZ10qMCghJy64CIt6FsSgU8qwOIlzcpIdN1vnifDGh+gMzGEzObHTuJxlOjwRgDMBiCPYTYSkrHQSMDQBvFdxBeT/tk1M65cm97gjAAAwTQBIo9O/esyRQsWJFxYq4a9eu2kjCC2gO8r48//zz+hq6yjBp+PDhasGCBYHkqhcbQJgjKXUlQwAJQIzAyRDy75oxAvtXYrRL8iwJsHWg2VD6uuuuK8UdSQbWt29fBbMIi9599101ffp0XR0RqNagjmzbYNxAxQsoWyTl+WwQMCogFlxiBM4GSW/Pxo0BgIpnSYCbmRihiy66SP+1EhGMqGWOP/54+6VAfhM1iYrqrrvu0uV7UVV5bYjppzAAr4jJfUEhwKTEd9W0adOgqpByixHABmhUP3FTs3mWBHhT2E3IviJBP2le0K1bt4a2Wlm2bJnC/mBSEFsNudm+1YWuA8wWH3k+PASuvfba8CqLcU14/hWyG2iyofUsCTDBc3Tu3DlRHlvHPfPMM4nfrFjCcp1atGiRlkhQUSGFoA4SEgQEAUFAEEgPAc+SgFGRoHdHRDUh61YmgP9sGPTiiy9qmwSTP3VWrlzZV3VQGH2QOgQBQUAQiAICaTGBRo0aqVtuuUXvL4oL1YoVK0JPpkRWvyVLlqh77rkngV+VKlUUm5oLCQKCgCAgCKSHgGcmgD2gfv36unRW4CeddFKJeAAkg9WrVztuPp1ek5LfzXaEZL+26u927NghTCA5bHJVEBAEBAFHBDwxATPB9+zZs0QhbApiaMqUKeq0005zrMSvk3gD1ahRQ1144YUlikQy8NMw7Fd7pRxBQBAQBKKOgCcmwAofNUzjxo1L9Me4g/7+++8KI/E111wTWH8J1cYuYVUDmcqwEbz11luB1S0FCwKCgCAQJgKo27NxVSX3GXElXvY88cQEyJtDgW7BKhMnTtTumpkSUb81a9ZMmpuHrersTMjUV65cOfXDDz9kWr3n57CJCAkCuUYA+5dsIpPrUQiufvaLGDdunD4yJRjIbbfdpuyb4jiVl5QJ4BKKmmXWrFmaAcCdrPTRRx+p2bNnq9dff12tWbNGu5CyyQV7iR566KH698aNGxURxkT3IjHwTFFRkSpTpowuClUTAV+s9D///HNta7ASz2OApkOonKyEdLJ9+3b12WefaZsAEsuxxx6ruR9h9iNHjlS33nqrjiSmDALKevXqpf+yyTnnYUD0ES+jVBHHJjCtRCPkhyAQMgIzZ87U3xYLJ6FoIsC8xH4P77//vtq5c6dWYZP5FcKmylxIKnA8G+1000036ewL2RDzGQsFdqFr165d0qKSMoG3335bT5Bt27bVhRg3UWuJuGoSWcsEytGwYUOFZDBjxgzdWbyJRowYoQExZaC+MRk5AWbVqlWKc4gwdibA5A1nhAlYt9SjLCZzgsaQEDhgNDAGYhUIsrn77rv1PUOGDNGiFZkXqZf+AP55552nunTpovtIX3kWot2outhGrlatWpqhQTAYIUEg1wgcdthhuW6C1J8CAYJYhw0bpo4++mh1ySWX6MWmlaZNm6YdbRYvXpxQ++B1yYKZeccP+yq5ppjrWJQnWzAkZQKZpE5mAqUT/IXgSNY9OVHd2I24NLJfv356QrYTHXEjgEoFlsl3ZLiwaYuJaUASgUtbjc0MxldffaXtHEgUcHIY4E8//aQZAS6p1FuhQgW3psl5QUAQiDkCaD2QCAYNGlQKCVbpLGrHjBmjxo8fr6+jcSER5/r160vdn+kJFugsdr/88kvX+SopE8i0YjPhmuftv+3lIgE0adLE1eZgvz+d34YZpfsMkgMHXBzCJfXKK6/UEsM777yjhg4dqg488EDVqVMnLf2IlJAOwnKvIFD4CGBLRTVN8k07GdX6EUcckbiE3ZNJ26TCsT+TyW8Wt2g4UH8bjY69HN+ZAKtoDkP23/YG8BsmgK7eT6JeOm9UPKz4IfMbFRNk/nqtG1UTR58+fdT333+vPv74Y/XKK69oacEQ6qPTTz89YRvxWnZc79u1a5cqW7as5+6ne7/nguVGQcBHBGACuLQ7EZPyGWecofr375+4vHTpUjV16tRStzNnYXslNQ6LTpOpmbkLm8P555+vnyGPG0zHmrqH36jscaMPhQmgPmGlTOPWrl2rG83kC9cDEIzBHIhB3GtUM5monUohZTtBaotRo0bp+qkP28ETTzyRqBf7Ab8xJmea7+ioo45yzKgKQ6D/iHZW5oBxvWrVqurkk09WPBt32rRpk/aAQBWYTvZZxvSpp55SV111VdwhlP5HGAFUyHaPRlTh2EtRFRH3ZJxRUBsx2dtjoOgeqXmQELBpMm8a++rcuXO1CskwAeY85l7OW6lbt27qoYceckXKV0mASR0jrJXsnbrvvvtcG+PnBXvMApZ4K/kteVjLRhIwEoP1PAZw4hkwEu3evVs1b95cG4cyZUJ+4pWLsnBfQ82WLkM85JBDtGEfJj9gwIBcNF3qFASSIsBCBY/J3377Ta1cuVLfi8YDGyWqb1btVoIJOHknwhiwX1IeC+lWrVolHuO31VWYOQ3vTDuhqt6yZYv9dOK3r0zAtRa5oBGoU6eOPlAlISXh2vrNN9+oBx54IIEQL0Lt2rUL3g8cry+M6+kyAAPUxRdfrCU5ROgLLrhA3jBBIFIIoGFg4mbXw1TOKzSc+cApsAsmQLZkvCchNu8yhCrI6krKwuiss84qhQNMwO6MY71JmEApyMI5gWeRkwTwyy+/qM2bN4fTiBzWghrIiLWZNAOD/2OPPaZtScIEMkFQngkSAVRBGHi9MADaQZyUE5kAXWKk0KqYoFwm9eXLl5dQH7GotKufKBPHHBOX5VTHv36cTlfkXE4QQNWBy2wh07x587QhOFsX2/Llyyu8K1CzCQkCUUIAJoBrplfC2GucVpyeISAX25kh4gzwXrSqkNwCCLHJJvM4EibghHjMz2HMRgTFE8G+Wc/8+fOzRufpp59OBMg4FTZw4EC9ujf5oLChYD9xmuyxQ6EbFRIEooQAWZfTWczhGIFdwI2QFKyuptgbrO6lPOdkU+A8tohKlSq5FZ3eHsOupciFgkIA74XnnntOB8fhfWAIz6/Bgwdn1VcMZXhm4SVlJxgO9hGivfFwgBlQX7NmzfSqCmO/cfU1z1IOHhNCgkBUEMAdk2BTr6og2s0ETiAttgQnqlu3buJb5B5ilEizgzcQizZcTd3yt2GXsAbs2ssXm4AdkZj/5uXlheHFQsdonXRxQXMyPKUDGYbwPXv2OKqCXn31VW00h4jz2G+//XTkOcZ00n/gVWEPPMSYZk8nkk575F5BwC8EyF9mDLiPP/64Lha1EH76XqhFixbac9C6W6N5jjgBFmd8g9gJsKkRvMpvvBHxsnOSBGgT0juMwI2ECbghE9PzJriElw4yek1cWgmK69ixY1bIGPUSKxk7MckbYtJHx3niiSfqU0gDTsSLH0YGWae65ZwgYEUAvT7+/JkSKk8YARO8PWMzZZNYzkosyFItymBKuJg6GYxNWWITyHTECvQ5VhWstklshThrIh6RCiCiHLMhjLluZBL1cZ1gO8ieUND+LJJKOtHG9ufltyAQFQRIUcNCiPQRfhGRyXzLdgnaWr4wAb/QLrByyI9EBljjWoYeH8Jga9Qv2AjQ3X/33Xc6Nwlpa1EnMTEjBiO+klrDSmaFQ+qHZIReFXWQYToEu9iN1DyPR4V91ZSsXLkmCEQVAVbsqG6IofFDxQkzQbpItfdEzpkAHUa3hd7MfrRs2dLTeE2ePFmnmgZAIvHQk+FChWjmB5ieGlFAN+GJwORq9b9/6aWXdHQzgSfo7iF09Uz8ZCjEm4h0tWCOVw+h7ORPshuSCQ5j0raPCwbjO++8U0/01E8d5EE3wWSItVZJwcCN2kiYQAG9fDHvCit24meMbSFTODAeY1dLtZcA5efcJnD99ddrYyA+r0ziMAJj4HCKoLODgnWczmLMRF+NV4vRy5FSgAmC/QyEvCPA6h+vG5LjMdETlUsQGysKJusDDjhAF4Zen80xjF6SSZrfMASICRy9vp14Me0Bcbh5Tp8+Xd188806/xTucNQJIU0QDekk0rLp0KmnnmqvQn4LAnmLABIB+wpkQyzIku0hYC07p5IA4gougUzaTP54giC+GInAKQWrHRgmeFadMAOYQNOmTRO3EJFL4jih9BFgL2cCVDAQ//XXX3p1QsAJgV6MkSHc2qyTc7KgFPMMTADpwUowEnaBQw2FEfree+/VNgl20UIVZTUaW5/DVkFiLSFBQBDIDIGcSgJWdQ96ZLuKwEuXSBvAxENiOmteDZ5ldenkj27KJZKOAymEQ+g/BEyeIysmxn0zW5wIXMHgi58zGVUhjLv2rKA33HBD0qqQVJBGjAdR0pvloiAgCDgikFMmYG0RK81MdLtm5fnmm2/q7dwMESXHBN+6dWvHjnPSqJswYnKvExHJx8F19NXZpjpwqiNfz4E5OUxQ4yEdYAsgBoAU2iR4M3pNfuP6Zs1fgtqHjIes/jMhVEQEkzllTcykPHlGEIgrApFhAqiFnLZh8zIwTETonq3uhOiVoWSGEeMTn6wOvFQ4YALt27fXemrqQVWFugljqZPPe7IyC+Vao0aNFIch0kxwGEKv6abbJOQd/FH/gGG6RAZREsjJjm7pIif3CwIlEYgEE2CDBSZZN59wdMJ4+xAV52QsRu1jfxavFZiKWyi11xfB7D+MzQEvJgyjpFOA6aC+Yg9ieyoDymaDadQeGEfN4bXOuNyHLYg8QuCUzqYyBIcRxCYMIC5vSn73E29F5ih29rLvrxKFnkWCCeDWiXHRLfqN6xgI8U5x2owedQ7+5IRbo1LCZ53oumRRcpmCT7ATBxNQMv9bfOdxXyRNAi+A3V+e+lEtde7cWRvE40jgSJ6gdAkpokGDBuk+JvcLAjlBgAUumg4OPH9wve7QoYNiR0UvjhRBNzoSTACDLp4gboAQA8BBOLUTMcn26NFDc1mkhqKiIqfbQj2HJMAhJAgIAoKAQQCNAjEwHNjFWNSiscilY0okmIAXn1YiUd2AMmlbiS/AvTQoSrZPZ1B1SrmCgB0BdpRC0sRWJRQsAkGmKScgE8cGgl1xpMB+yfzlNs8F1dNIMAEvncPzxMnIS9oCDMPp6JS91Od0D2onIUEg1whgE0G9yOJHKFgE9u7dm7QCL4tON89DUzAR8kTkc0AwAdTExh7plB00aaPSvJgXTIDNFjDw2rdII9gMTo3/OnlqrJ4paeIgtwsCgoAgkDYC9qBHpwJ27NjhdNr1HEyDBScOJzCAoI3JecEEsBU42QsINvOaX8gVcY8XjjvuOI93ym2CgCAQFwQ2bdqUsqt4NZIXKxXhHIMHEYtap/3HUz2f6fW8YAKZds7P50iGxu4+QRABVuh5yYFECoS4egsFgW0hlrlu3TqdS4n9qIWCRcDLJJ9NC5j48RZC1d2mTZuMAmazqZ9nhQl4RJD8RBx+EnEGqLSIRGZ7uGrVqvlZfGTLIsaCnD8NGzb03Ebuh1HyscSdSeJ3ngsDoufBKqAbWcX7TTDwVq1a6XcZVY9TYkS/60xWnjCBZOgEeI04BqJliXr1mu0vwOaEVjSMD2mHvD/pEC7EDz/8sE4UaLLEpvO83CsI5BoBVDy4gxIfECUSJhDiaJDjmzw7TGQEi7jFPYTYpNCruv/++7UXhJONJ1VjRo0apXr37q0zxWaSZypV+XJdEAgCAd5Xdg0L2sCbaduFCWSKXBrPLVq0SPt0s+JHAiBqMI4EBkRae0kR7oQPYnPfvn01hk6bcTs9I+cEgVwjEKaRN5O+ChPIBDUPz5DFdNasWdrNi1VAELpFD82I1C2k+0afnQ2xeRBBNtgIUBEJ5RcC5Aljjwr04dWrV8+vxhdoa4UJBDCwRAGS74jValxX/XZYmbgJcPIjFTc5mxYuXChMwA5yHvzGCQJ3SQ4kQjYPsm4ElQddKLgm+soEiNzlSEVMBE77xaZ6zut1Jl907mESyeLIdMr2ikxSRDIXCtEXJBvUMXgxGcLGQToP+2Y+Tv0mp5PbNpDYSJAQkJr4n/TT1InLLOVbN7ynbCYPmECcCPyNCowASQ6njLpRx8QaXEUfbrzxRjVy5EjtHhlFwm+/0Gmf4rDo5HHRaSBAlBtiOomRcIGyZvFkJYhnCKmDu3fvrhPCBUGswtmRirz/bH0YJDHhM/HDAHD7IhlU0HUG2R+nstmXgX4yOTdr1kxvC2lSdOClg3rGOpZM5ExYRHdb1TXkXaIcKxMx9Q0fPlzr+YmOJEW02WgeRtCtWze9A5k1nwrvGAkDyRYbR8pnF1HSv6Aa5VthL+qw8+TE8X1J1WdfJQF8lzGCsHk8ufedxDws5KlyaaRqtNt1Jh8YECtIxM4gJ+QNGzaoK664Qo0fP9514xS3dubTeRg7K3EOqGLFionmk7vGvlJiMmcj+k8++USv7o0Xz7Zt2xw9ehgzPIVMfhSYTZUqVfQqF2mOScI+USBFsqeDUP4hQGxIXJl3VEfLVyZAJ03WPTcPEFaHfOhBECqCsWPHqp49e2q1lN+bjrDKxdjLxIVKa8GCBb7ouIPAwq8yzf4NfLiEsxsbB/jCCK1ub/zmwB7Cpj7WXE87d+4sNZnTRiZ/k/MJxs37g8QBUZdTgi6xs5QeXaQj3n8YJJIUUlqug5BKt1LORBEB35kAK0d2+bL6caMPNhuwMBnYdwHzAxiiSdmUxtSLisavICwkF/z7mfhY+YZtb/ADn0zLgJEysaOSQZQ3RIxDjRo1SuilsREY/O0ZX4nyZXKyk5VRwzwgvKmSEcw4rlt6OuGCxw0qNZIoMvGzSIGxmt9Oz8g5QcAg4DsTQIds3fWJD58J1DCBZLtxZTosqH+WLVumevXqpYtADUTm0WwIaYWUDmvXrtUrWCb+TAKcsmlDVJ5dsWKFjvI1K3AmYXZJ6tq1q2aMYISaCGkBhoEaCEnQKg0y2bPSdyIWBqxg2ZgeNZDVr5pxtafroM64joUTfthksJGYlT/pR8ARaQCblZAgkAwB3/c1RE+MARjjDweifdDiOytU6+qRCQkddKaEFwYJ41i90gc+pjhPOjByq2THit/s4YD6BqaLgRhDH3/By64OhJE62YLA2aiDli5dqp8z7wtlO40j5fit6sv0XYnCcytXriwlXeOoMH36dE/eelHog7Qhdwj4KgmwCsSlD90xHzOrcSYM+4RguksEKQwD1Q2RoJkS4q9Vd8yEzerSTujzWeFT38CBA+2XtS4bSQY1EobNoJlXqQZE9AR6/wkTJuhVPl5e6J6Z7GEETNRGAkvWfAKDRo8eXeIWJAPGv0mTJtqG0L59ey1hoNoz74XTHsTov932o07WhkK8xrtPQj4mfSsZF2ywhDlHlZAieYd4F3jPWFDwG+keCTCMzaKiik1Y7fKVCaAnZvXMh2u8PWAEVuMhAwxTYDLBk4fVH7rLTIgXhVwyTPqoIAzt3r1bfxhWQrUzYMAArdueMmVKqepY/bNaZeUvVBIBJnxUekw4jCsMlIOx5CP1YoDEIQA1Eu+Dkaowrm/ZskWXy8oeOwJeSOi4mbjcdlRC8otj3iWn9xLsIHvcjcm06iRJOZWTi3OkU2HyRxLk3ahdu7b+RlEH1qlTRw0dOlQNGTIkF02LVZ2+MgHETyYM68eLd4n5zUAzmcAEMBaXL19ee5CgPsiE0EFjY7A/j3+5Xf+8ceNGPcnzcdjvp+44GXszwRp1kD1pm5uE51Z+8+bNFR++FWveDaudCF12shTTLB7YX9feFrc6C/18quDMoDzxssWVcSReaP369booFhJ8szAA3gHcy2WnwGxR9va8bzYBViS8kHBzK1kZAuoYdgJDp8sqkvvxJsr0RUWUdJrQsQlYPw5UC6gyTH2pPhxv0MldVgQYUyQ6mDvSlBPGSIgwgWyId6hfv37ZFCHPRgAB7ExTp05NSJG8N7wzLCJh8HPmzHF0KY5A0wuuCb4xASZzyClADLUNHz8r9Fq1amlOz0Cjc2d1blcnoNoh8jcZ4fVgjUi23ou6gdWiIURlVA+mPtH1J0M2s2uMI3p9bEAwAaeUBow5LrYwg0wYPyo7bE5IFEL/IgDuECtrK/HNQU7jUOLGHP3ge7SqiUkfgQrIPhfkqHmxqjZrdRCTO6tsY/TjIzX6eV5MdPO4/q1atUrnkTcvppUJWBFnhYAuEF0mOWnshiHqwzD54IMPqkcffbTEblzUjYoIgzPGw0mTJumVBUZjKxOI1QhHrLMsElAjwSzScRdG0kCqHDZsWMR6lNvmoD5hUYO0a92Zzkhi6arsctEbtAg4ZGAPMMQijwWDLNiCH5GsmQAGPbg3E64T4Wlj3DetHjxO93IOG8HmzZv1S0GuGTsxEcAcOOyGQ55lZVRUVJR4LKorIXu/4vTbyb6Qqv+Mq1n1pro3TteZJOvXr68XYlYmYOJboooZWoHBgwerxYsXaxUiVK9ePf0X54ExY8bo/EJCwSOQNRPgxQtib1wYgFPEb7INGjKZXIKHWGoQBIJFABdd7DFGTYZUsGbNGjVv3rxgK86idLPDHtoCpDzmEBNRjicfNgGhcBDYr1h/e0c4Vf1XC6t8XgLcNdFd1q1bt1QTli9f7ni+1I0eTiBu8pGwwuBFI/pVSBDIVwRwqmCFb6RcYjDKli2rZs6cqfCCwz5HDi1UoVEl1FR896h9cQ0mtmjdunU6Sy3uwfa4h6j2oxDa5Wsqab8AwSjMij8f9Jl+9VnKEQS8IoDNDdVqVFU9Xvsh90UDgazVQUF0wxpbEET5UqYgIAgIAoLAvwj45iLqJ6B2g6+fZUtZgoAgIAgIAv8hEEkmIAMkCAgCgoAgEA4CwgTCwVlqEQQEAUEgkggIE4jksEijBAFBQBAIBwFhAuHgLLUIAoKAIBBJBIQJRHJYpFGCgCAgCISDgDCBcHCWWgQBQUAQiCQCwgQiOSzSKEFAEBAEwkFAmEA4OEstgoAgIAhEEoH/A+y5WMhnsPX1AAAAAElFTkSuQmCC"
+    }
+   },
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "## Idealization of the pull-out problem\n",
+    "The one-dimensional idealization of the pull-out looks as follows\n",
+    "\n",
+    "![image.png](attachment:image.png)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Model parameters"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "The parameters and variables involved in the are grouped according geometry, material behavior, measured response, internal state and subsidiary integration parameters that will be resolved during the model derivation. In this classification we also associate the mathematical symbols with the Python variable name introduced in the next cell."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Geometrical variables:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `A_f` | $A_\\mathrm{f}$ |  Cross section area modulus of the reinforcement |\n",
+    "| `A_m` | $A_\\mathrm{m}$ |  Cross section area modulus of the matrix |\n",
+    "| `p_b` | $p_\\mathrm{b}$ |  Perimeter of the reinforcement                  |\n",
+    "| `L_b` | $L_\\mathrm{b}$ |  Length of the bond zone of the pulled-out bar   |\n",
+    "| `x`   | $x$            |  Longitudinal coordinate |\n",
+    "\n",
+    "**Material parameters:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `E_f`     | $E_\\mathrm{f}$ |  Young's modulus of the reinforcement |\n",
+    "| `E_m`     | $E_\\mathrm{m}$ |  Young's modulus of the matrix        |\n",
+    "| `MATS`    | $\\tau(s)$      |  Multi-linear bond-slip model         |\n",
+    "\n",
+    "(`MATS` is used to denote \"Material Time Stepper\" -- equivalent to user-subroutine in Abaqus, or user material in ATENA) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Control parameter:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `P` | $P$ | Pullout force |\n",
+    "| `w` | $w$ | pullout control  displacement\n",
+    "\n",
+    "**State parameter:**\n",
+    "\n",
+    "There are no state parameters included. \n",
+    "\n",
+    " - What is the consequence? The material has no memory.\n",
+    " - What happens upon unloading?"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Let's import the packages:**"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "%matplotlib notebook\n",
+    "import sympy as sp # symbolic algebra package\n",
+    "import numpy as np # numerical package\n",
+    "import matplotlib.pyplot as plt # plotting package\n",
+    "sp.init_printing() # enable nice formating of the derived expressions\n",
+    "import ipywidgets as ipw"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Construct a tri-nonlinear bond-slip law  \n",
+    "To indicate how the below examples are implemented let us define a a piece-wise linear function with three branches constituting the bond-slip behavior. It can be used to exemplify how to implement material models in standard non-linear finite-element codes for structural analysis. In codes like `ANSYS, Abaques, ATENA, Diana`, the spatial integration of the stresses and stiffnesses is based on the so called **predictor**, **corrector** scheme."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "This simply means that the material model must provide two functions\n",
+    " 1. the stress evaluation for a given strain increment\n",
+    " 2. the derivative of stress with respect to the strain increment, i.e. the material stiffness.\n",
+    "In our case of a bond-slip law, we need to provide two functions\n",
+    "\\begin{align}\n",
+    " \\tau(s) \\\\\n",
+    " \\frac{\\mathrm{d} \\tau}{ \\mathrm{d} s}\n",
+    "\\end{align}."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "The tri-linear function can be readily constructed using the already known `Piecewise` function provied in `sympy`"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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\n",
+      "text/latex": [
+       "$\\displaystyle \\begin{cases} \\frac{s \\tau_{1}}{s_{1}} & \\text{for}\\: s \\leq s_{1} \\\\\\tau_{1} + \\frac{\\left(s - s_{1}\\right) \\left(- \\tau_{1} + \\tau_{2}\\right)}{- s_{1} + s_{2}} & \\text{for}\\: s \\leq s_{2} \\\\\\tau_{2} & \\text{otherwise} \\end{cases}$"
+      ],
+      "text/plain": [
+       "⎧          s⋅τ₁                      \n",
+       "⎪          ────            for s ≤ s₁\n",
+       "⎪           s₁                       \n",
+       "⎪                                    \n",
+       "⎨     (s - s₁)⋅(-τ₁ + τ₂)            \n",
+       "⎪τ₁ + ───────────────────  for s ≤ s₂\n",
+       "⎪           -s₁ + s₂                 \n",
+       "⎪                                    \n",
+       "⎩           τ₂             otherwise "
+      ]
+     },
+     "execution_count": 2,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "s = sp.symbols('s')\n",
+    "tau_1, s_1, tau_2, s_2 = sp.symbols(r'tau_1, s_1, tau_2, s_2')\n",
+    "tau_s = sp.Piecewise(\n",
+    "    (tau_1 / s_1 * s, s <= s_1),\n",
+    "    (tau_1 + (tau_2-tau_1) / (s_2-s_1) * (s - s_1), s <= s_2),\n",
+    "    (tau_2, True)\n",
+    ")\n",
+    "tau_s"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "The derivative is obtained as"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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\n",
+      "text/latex": [
+       "$\\displaystyle \\begin{cases} \\frac{\\tau_{1}}{s_{1}} & \\text{for}\\: s \\leq s_{1} \\\\\\frac{- \\tau_{1} + \\tau_{2}}{- s_{1} + s_{2}} & \\text{for}\\: s \\leq s_{2} \\\\0 & \\text{otherwise} \\end{cases}$"
+      ],
+      "text/plain": [
+       "⎧   τ₁               \n",
+       "⎪   ──     for s ≤ s₁\n",
+       "⎪   s₁               \n",
+       "⎪                    \n",
+       "⎨-τ₁ + τ₂            \n",
+       "⎪────────  for s ≤ s₂\n",
+       "⎪-s₁ + s₂            \n",
+       "⎪                    \n",
+       "⎩   0      otherwise "
+      ]
+     },
+     "execution_count": 3,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "d_tau_s = sp.diff(tau_s, s)\n",
+    "d_tau_s"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "Vectorized evaluation of these two functions that can run over large arrays of data can obtained using the `sympy.lambdify` method."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "get_tau_s = sp.lambdify((s, tau_1, tau_2, s_1, s_2), tau_s, 'numpy')\n",
+    "get_d_tau_s = sp.lambdify((s, tau_1, tau_2, s_1, s_2), d_tau_s, 'numpy')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "This function provides a sufficient range of qualitative shapes to demonstrate and discuss the effect of softening and hardening behavior of the interface material. Let us setup a figure `fig` with two axes `ax1` and `ax2` to verify if the defined function is implemented correctly"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {
+    "hide_input": true
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<style>\n",
+       ".output_wrapper button.btn.btn-default,\n",
+       ".output_wrapper .ui-dialog-titlebar {\n",
+       "  display: none;\n",
+       "}\n",
+       "</style>\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "%%html\n",
+    "<style>\n",
+    ".output_wrapper button.btn.btn-default,\n",
+    ".output_wrapper .ui-dialog-titlebar {\n",
+    "  display: none;\n",
+    "}\n",
+    "</style>"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {
+    "scrolled": false,
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,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Eh08ePCcjztw4IAqVaqkv/3tbzGq7OLdcMMNsixLTz31lCPXM71W4Sgdts42XRIAAHABwtYoi+YnW8/n9DX//Oc/O3ZN043vynmzQprajLZdjdUCnMu8TQf00Ltf24auv+o5XQNnb1ZeQZHpMlFenX3kwOD7pf7XMRjeGB81iepvDdN9zM9+9jMlJyeH9djk5GRdddVVUa7IOQ0aNJBlWerQoYMj1zO9VuEoGbau+todxz4AAACzCFujLDMzM2pntp7P888/L8uydMMNNzh2TdON75RBH4U0tUPadzZWC3A+fn9AE1fs1m97Z9mGrre/kaXxy3bJ74/sqA8AwIUx3cdUqlRJ1113XViPve6663TJJZdEuSJnLFiwINjvfvnll45c0/RahaNU2Donx3RJAADABQhbo2zXrl3B5jMnJ8f2Mfn5+apYsaIsy9KoUaMcu3enTp1kWZauvfZax65puvEd3atXSFM7sqtz4TQQLacKi5T+9RY16jXdNnR94J05mrvxgOkyAaDcM93H1KtXTwkJCVq9evU5H7d69Wr5fD5dc010j1VwQl5enn7961/LsizdeOON5zw2qyQ3H10VjownO4WGrbNzTJcEAABcgLA1BpKSkmRZlnr16mX785ycnGAgu23bNsfu+8ADD8iyLN13332OXdP0X1KG/js1pKn98n2+IAveceRkgd6Ysk4/7zLFNnRtmbFQ3+45arpMACi3TPcxHTt2lM/nU/369TVv3jzbx8ybN08NGjRQQkKCOnbsGOMKIxMIBPT3v/89GIyuXbs2oud7P2wN/WTritnZpksCAAAuQNgaAy+99JIsy1JSUpLtua3NmjWTZVm67bbbHLvn0qVLVaFCBVmWpbfeesux65r+S0pGu7SQpnbRjMnGagEu1O7DJ9XhsxW6unPpwPXqzpP0wpgV2n34pOkyAaDcMd3HHDlyRA0aNJDP51NCQoIaN26sNm3aKC0tTSkpKbr11luVkJAgn8+nBg0a6MiRI8ZqDUf79u1lWZYSExM1ZcoUR69teq3CUfKTrStyskyXBAAAXICwNQb279+vatWqybIsPf7448rNzZUk+f1+9evXL/ip1uzs0H8NHzt2rJKSkpSUlKSdO3eG/GzcuHFKS0vThg0bQn49EAho/PjxqlmzpizL0tVXX63jx4879lpMN77pT7wc0tQeOch/vYZ3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\" width=\"799.75\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fig, (ax1, ax2) = plt.subplots(1,2, figsize=(8,3), tight_layout=True)\n",
+    "s_range = np.linspace(0, 3, 1050)\n",
+    "for tau_2 in [0, 0.5, 1, 1.5, 2]:\n",
+    "    ax1.plot(s_range, get_tau_s(s_range, 1, tau_2, 0.1, 2));\n",
+    "    ax2.plot(s_range, get_d_tau_s(s_range, 1, tau_2, 0.1, 2));\n",
+    "ax1.set_xlabel(r'$s$ [mm]'); ax1.set_ylabel(r'$\\tau$ [MPa]');\n",
+    "ax2.set_xlabel(r'$s$ [mm]'); ax2.set_ylabel(r'$\\mathrm{d}\\tau/\\mathrm{d}s$ [MPa/mm]');"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Numerical model of pull-out provided in BMCS Tool Suite \n",
+    "The presented function is the simplest model provided in a general-purpose nonlinear finite-element simulator `BMCS-Tool-Suite`. This code can be installed in your anaconda environment by issuing the installation command\n",
+    "\n",
+    "`pip install --upgrade bmcs`\n",
+    "\n",
+    "After the installation it should be possible to import the `PullOutModel` by issuing"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {
+    "hide_input": false,
+    "slideshow": {
+     "slide_type": "skip"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "if False: # this is the developer shortcut, ignore this\n",
+    "    import sys\n",
+    "    import os.path as op \n",
+    "    hdir = op.expanduser('~')\n",
+    "    sys.path.insert(0,op.join(hdir,'git','bmcs'))"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{k_max} & k_{\\max} = 5 & \\textrm{[-]} & \\textrm{maximum number of iterations}  \\\\\n",
+       "                \\textrm{tolerance} & \\epsilon = 0.0001 & \\textrm{[-]} & \\textrm{required accuracy}  \\\\\n",
+       "                \\textrm{n_e_x} & n_\\mathrm{E} = 60 & \\textrm{[-]} & \\textrm{number of finite elements along the embedded length}  \\\\\n",
+       "                \\textrm{mats_eval_type} & \\textrm{multilinear} & & \\textrm{material model type}  \\\\\n",
+       "                \\textrm{control_variable} & \\textrm{u} & & \\textrm{displacement or force control: [u|f]}  \\\\\n",
+       "                \\textrm{w_max} & w_{\\max} = 1.0 & \\textrm{[mm]} & \\textrm{maximum pullout slip}  \\\\\n",
+       "                \\textrm{fixed_boundary} & \\textrm{non-loaded end (matrix)} & & \\textrm{which side of the specimen is fixed [non-loaded end [matrix], loaded end [matrix], non-loaded end [reinf]]}  \\\\\n",
+       "                \\hline\n",
+       "        \\textbf{loading_scenario} & \\textrm{LoadingScenario} & & \\textrm{object defining the loading scenario} \\\\\n",
+       "            \\textbf{cross_section} & \\textrm{CrossSection} & & \\textrm{cross section parameters} \\\\\n",
+       "            \\textbf{geometry} & \\textrm{Geometry} & & \\textrm{geometry parameters of the boundary value problem} \\\\\n",
+       "            \\textbf{mats_eval} & \\textrm{MATSBondSlipMultiLinear} & & \\textrm{material model of the interface} \\\\\n",
+       "            \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.PullOutModel at 0x7f483ba68a10>"
+      ]
+     },
+     "execution_count": 8,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "from bmcs.pullout.pullout_sim import PullOutModel\n",
+    "po = PullOutModel(n_e_x=60, k_max=5, w_max=1.0)\n",
+    "po"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{A_m} & A_\\mathrm{m} = 1.0 & \\textrm{[$\\mathrm{mm}^2$]} & \\textrm{matrix area}  \\\\\n",
+       "                \\textrm{A_f} & A_\\mathrm{f} = 1.0 & \\textrm{[$\\mathrm{mm}^2$]} & \\textrm{reinforcement area}  \\\\\n",
+       "                \\textrm{P_b} & p_\\mathrm{b} = 1.0 & \\textrm{[$\\mathrm{mm}$]} & \\textrm{perimeter of the bond interface}  \\\\\n",
+       "                \\hline\n",
+       "        \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.CrossSection at 0x7f4839cdd710>"
+      ]
+     },
+     "execution_count": 9,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "po.sim.tline.step = 0.05\n",
+    "po.fixed_boundary = 'loaded end (matrix)'\n",
+    "po.loading_scenario.trait_set(loading_type='cyclic',\n",
+    "                              amplitude_type='constant',\n",
+    "                              loading_range='non-symmetric'\n",
+    "                              )\n",
+    "po.loading_scenario.trait_set(number_of_cycles=1,\n",
+    "                              unloading_ratio=0.98,\n",
+    "                              )\n",
+    "po.geometry.trait_set(L_x=1.0)\n",
+    "po.cross_section.trait_set(A_f=1, P_b=1, A_m=1)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## What is inside the bond-slip law?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 14,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{E_m} & E_\\mathrm{m} = 1.0 & \\textrm{[MPa]} & \\textrm{E-modulus of the matrix}  \\\\\n",
+       "                \\textrm{E_f} & E_\\mathrm{f} = 1.0 & \\textrm{[MPa]} & \\textrm{E-modulus of the reinforcement}  \\\\\n",
+       "                \\textrm{s_data} & s =  & \\textrm{[mm]} & \\textrm{slip values}  \\\\\n",
+       "                \\textrm{tau_data} & \\tau =  & \\textrm{[MPa]} & \\textrm{shear stress values}  \\\\\n",
+       "                \\hline\n",
+       "        \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<ibvpy.mats.mats1D5.vmats1D5_bondslip1D.MATSBondSlipMultiLinear at 0x7f4839c26470>"
+      ]
+     },
+     "execution_count": 14,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "po.mats_eval_type = 'multilinear'\n",
+    "po.mats_eval.trait_set(E_m=1, E_f=1)\n",
+    "po.mats_eval.bs_law.xdata = [0,1,2]\n",
+    "po.mats_eval.bs_law.ydata= [0,1,2]\n",
+    "po.mats_eval.bs_law.replot()\n",
+    "po.mats_eval"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Run the simulation\n",
+    "The model object `po` contains the non-linear threaded simulator `sim` as its attribute. To be sure that the state arrays and history variables are zeroed and reset run the methods `stop` first. After that, the simulation can be started."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 15,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "po.sim.stop()\n",
+    "po.sim.run()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "Construct a figure to show the currently defined material model `mats` in graphic form. The data points of the bond slip law can be dfined as follows."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 22,
+   "metadata": {
+    "hide_input": false,
+    "scrolled": false,
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,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\" width=\"499.9666666666667\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fig, ax = plt.subplots(1,1,figsize=(5,2))\n",
+    "po.mats_eval.bs_law.trait_set(\n",
+    "    xdata=[0, 1, 2.0, 4.0],\n",
+    "    ydata=[0., 1, 1, 0]\n",
+    ")\n",
+    "ax.clear()\n",
+    "po.mats_eval.bs_law.plot(ax, color='green')\n",
+    "\n",
+    "# po.mats_eval.bs_law.plot(ax)\n",
+    "# def update_bond_slip(s2, s3, tau2, tau3):\n",
+    "#     po.mats_eval.bs_law.trait_set(\n",
+    "#         xdata=[0, s2, s3],\n",
+    "#         ydata=[0., tau2, tau3]\n",
+    "#     )\n",
+    "#     ax.clear()\n",
+    "#     po.mats_eval.bs_law.plot(ax, color='green')\n",
+    "#     ax.set_ylabel(r'$\\tau$ [MPa]')\n",
+    "#     ax.set_xlabel(r'$s$ [mm]')\n",
+    "# bs_sliders = dict(s2=ipw.FloatSlider(value=1e-6, min=1e-6, max=1, step=0.3),\n",
+    "#              s3=ipw.FloatSlider(value=2.0, min=1, max=3, step=0.3),\n",
+    "#              tau2=ipw.FloatSlider(value=1, min=0, max=3, step=0.3),\n",
+    "#              tau3=ipw.FloatSlider(value=1, min=0, max=3, step=0.3))\n",
+    "# ipw.interact(update_bond_slip, **bs_sliders);"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 23,
+   "metadata": {
+    "hide_input": false
+   },
+   "outputs": [],
+   "source": [
+    "po.sim.stop()\n",
+    "po.sim.run()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 24,
+   "metadata": {
+    "hide_input": true,
+    "scrolled": false,
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,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yZNNHhcWFmZS2FTc82XlypViLoOZqVOnwtPT0/hnsYVN/fr1rb6HDfDnfWxCQ0NNvjHq7bffRp8+fUTdvwZgYUNEpljYEBERERGpVMW3RDVr1gxfffUVdu3ahZdfftns40mnT5+Gs7MzXnjhBXzzzTdITEzEk08+CS8vL8m+JWr58uXGAmjPnj1YunQpPD090bNnT5MVQJGRkXB3d8eXX36JPXv2ICoqCn5+fiaFTWlpKRo1aoTQ0FAcPHgQ+fn5JvdgedBHH32E6OhobNmyBTk5OUhMTISvry9effVV42Os+Zaop556Clu3bhX9LVEV+vXrB0EQTEqrTZs2QRAEUfevAVjYEJEpFjZERERERCpVcW+a7OxsdOzYETqdDq1atTL7aBIA6PV6PP7446hfvz6CgoJw9OhRSb/WGwDWrFmDdu3awdXVFb6+voiOjjb7Ou4bN25g0KBBeOihh/Dwww9j6tSpWLlypUlhAwBpaWlo37496tevb7GYqJCRkYHw8HA88sgj0Ol08PPzw4QJE0xeV2xh89Zbb2HZsmXw8/ODTqdDcHCw8eNNNakoOxISEozbKlYKibl/DcDChohMsbAhIiIiIlKpqm4mTNarXF4pQRAEzJ49G8XFxWbf1KSU4uJi7Nu3j4UNkQJY2BARERERqRQLG+nYS2FTEb1er+ixAMC1a9dMjomFDZFtsbAhIiIiIlIpFjbSsYfC5sFv4BJzzxu5FRcXmxzT7du3lT4kIk1hYUNEREREREREZGdY2BARERERERER2RkWNkREREREREREdoaFDRERERERERGRnWFhQ0RERERERERkZ1jYEBERERERERHZGRY2RERERERERER2hoUNEREREREREZGdYWFDRERERERERGRnWNgQEREREREREdkZFjZERERERERERHaGhQ0RERERERERkZ1hYUNEREREREREZGdY2BARERERERER2RkWNkREREREREREdoaFDRERERERERGRnWFhI5M7d+4gJycHp0+fRkFBAcMwDMNoIqdPn0ZOTg7u3Lmj9FBs965du4YlS5Zgz549yMnJYRiGYRhNZM+ePViyZAmuXbum9FBs91jYyCQnJweCIDAMwzCMJpOTk6P0UGz3lixZovj7xDAMwzBKZcmSJUoPxXaPhY1MTp8+DUEon7Aq/X87GYZhGMZWqfgfFqdPn1Z6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gU34ILCxCRpWgNowfYPoXE1C/QscAhtERHSDBDbho0kGNhUVFbrxxhuVkJCgVq1a6fLLL9eePXtOedyePXtkWZaf8fHxQV8DDSuAP0zfIDpTk1D/AofABhER3SCBTfhocoFNVVWVBg4cqOTkZOXn5+uNN95Qnz59lJycrK+++qreY2sCm9zcXG3evNlneXl50NdBwwoQOEzfIIZXk1D/AofABhER3SCBTfhocoHNa6+9JsuytG3bNt/a3r17FR0drYULF9Z7bE1gs3z58pCvg4YVIDhCnb5h0gax4ZqE+hc4BDaIiOgGCWzCR5MLbG666SZ169bNb/2iiy7SRRddVO+xBDYAziPQ6ZvCQj4qhdhQTeKW+rd7925lZWWpVatWSkhI0Lhx43To0KFTHldWVlbnx6d79+4d9DUQ2CAiohsksAkfTS6wSUtL0xVXXOG3fuedd6pjx471HlsT2LRr107NmjVTQkKCrrvuOv39738P+jrc0rACuIG6pm/+8hc+KoVoSpO4of5VVlYqMTFRffv2VXFxsfLz85WUlKT09HRVVVXVe2xNYPPcc8/V+vj0jh07gr4OAhtERHSDBDbho8kFNt27d1d2drbfek5Ojrxeb73H/uMf/9DkyZNVWFioDRs26KmnnlLHjh115plnqqKi4qTHHT58WLt3765lzV9CJzesAG6mspIbFSOa0iRuCGwWLFggr9erffv2+dY2bdoky7JUVFRU77E1gc3vfve7kK+DwAYREd0ggU34cHxgU1lZqZ07d57SgwcPSpK6deumm266ye99HnzwwVMGNnWxY8cORUdHKycn56SvycnJqXM82ukNK4DbCeVmxUzfIP5Xk7ghsBk6dKhGjBjht56SkqKJEyfWeyyBDSIiRpoENuHD8YFNQUHBScOQH1oTqITykaiT0atXL/3kJz856deZsAEIHyd+XIrHhCMGr0ncENh06NBB06ZN81vPyspSenp6vcfWBDYdOnRQVFSUOnTooFtuuUVffvll0NdBYIOIiG6QwCZ8OD6wCZbs7Gx1797db3348OEaNmxYg97zvPPOU2ZmZlDHuKFhBWiq8JhwxOA0iRvqX0xMTJ2Ts9nZ2erRo0e9x3744YeaMWOGiouLVVZWprlz56pNmzY677zz9PXXX5/0uLp+uLNy5UoCG0REdLwENuGjyQU2NRM55eXlvrXP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\" width=\"999.9333333333334\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "933e9f5e486e443e9482615f782d4540",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "interactive(children=(FloatSlider(value=0.0, description='t', max=1.0), Output()), _dom_classes=('widget-inter…"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "19e950e7c98446c7b4518671336b3ece",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "interactive(children=(FloatSlider(value=1.0, description='w_max', max=3.0, min=0.1), FloatSlider(value=1.0, de…"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fix, ((ax_geo, ax_Pw),\n",
+    "      (ax_eps, ax_s))= plt.subplots(2,2,figsize=(10,6),\n",
+    "                                   tight_layout=True)\n",
+    "po.plot_geo(ax_geo, 0)\n",
+    "po.hist.plot_Pw(ax_Pw, 0)\n",
+    "po.plot_eps_p(ax_eps, 0)\n",
+    "po.plot_sig_p(ax_eps, 0)\n",
+    "po.plot_s(ax_s, 0)\n",
+    "po.mats_eval.bs_law.plot(ax_s)\n",
+    "ax_sf = ax_s.twinx()\n",
+    "po.plot_sf(ax_sf, 0)\n",
+    "\n",
+    "def update_state(t):\n",
+    "    ax_geo.clear()\n",
+    "    po.plot_geo(ax_geo,t)\n",
+    "    ax_Pw.clear()\n",
+    "    po.hist.plot_Pw(ax_Pw,t)\n",
+    "    ax_eps.clear()\n",
+    "    po.plot_eps_p(ax_eps, t)\n",
+    "    ax_s.clear()\n",
+    "    po.plot_s(ax_s, t)\n",
+    "    ax_sf.clear()\n",
+    "    po.plot_sf(ax_sf, t)\n",
+    "\n",
+    "def update_material(w_max, L_b, A_f, A_m, E_f, E_m):\n",
+    "    po.w_max = w_max\n",
+    "    po.geometry.L_x = L_b\n",
+    "    po.cross_section.A_f = A_f\n",
+    "    po.cross_section.A_m = A_m\n",
+    "    po.mats_eval.E_f = E_f\n",
+    "    po.mats_eval.E_m = E_m\n",
+    "    po.sim.stop()\n",
+    "    po.sim.run()\n",
+    "    update_state(t_slider.value)\n",
+    "\n",
+    "t_slider = ipw.FloatSlider(value=0, min=0, max=1, step=0.1)\n",
+    "ipw.interact(update_state, t = t_slider);\n",
+    "m_sliders = dict(w_max=ipw.FloatSlider(value=1, min=0.1, max=3, step=0.1),\n",
+    "                 L_b = ipw.FloatSlider(value=1, min=0.5, max=8, step=0.1),\n",
+    "                 A_m = ipw.FloatSlider(value=1, min=0.5, max=100, step=10),\n",
+    "                 A_f = ipw.FloatSlider(value=1, min=0.5, max=10, step=1),\n",
+    "                 E_m = ipw.FloatSlider(value=1, min=0.5, max=30000, step=3000),\n",
+    "                 E_f = ipw.FloatSlider(value=1, min=0.5, max=300000, step=30000))\n",
+    "ipw.interact(update_material, **m_sliders );"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "# Tasks::\n",
+    " - Identify a bond slip law that leads to a constant pullout force just avoiding a rupture of an CFRP sheet with a strength of 2 GPa. I should pull-out without breaking the sheet. In such a way we can achieve zip-fastener mechanism tuned for a particular force level. Where could such a mechanism could be applied?\n",
+    " - Reproduce the RILEM pull-out test by identifying the bond-slip that can reproduce the for 16mm diameter bar. \n",
+    " - Compare the obtained bond-slip with the suggestion provided by the Model Code 2010."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## RILEM test parameters\n",
+    "Let us consider the case of the RILEM pullout test with the boundary condition with the following material parameters \n",
+    "\\begin{align}\n",
+    "d &= 16\\;\\mathrm{mm} \\\\\n",
+    "E_\\mathrm{f} &= 210\\;\\mathrm{GPa} \\\\\n",
+    "E_\\mathrm{m} &= 28\\;\\mathrm{GPa} \\\\\n",
+    "A_\\mathrm{f} &= \\pi (\\frac{d}{2})^2 \\;\\mathrm{mm}^2 \\\\\n",
+    "A_\\mathrm{m} &= (10d)^2 \\;\\mathrm{mm}^2 \\\\\n",
+    "p &= \\pi d\n",
+    "\\end{align}"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 45,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "d = 16.0 # [mm]\n",
+    "E_f = 210000 # [MPa]\n",
+    "E_m = 28000 # [MPa]"
+   ]
+  },
+  {
+   "attachments": {
+    "image.png": {
+     "image/png": "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"
+    }
+   },
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "![image.png](attachment:image.png)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 46,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "po_rilem = PullOutModel(mats_eval_type='multilinear',\n",
+    "                        n_e_x=50, k_max=200, w_max=0.1)\n",
+    "po_rilem.sim.tline.step = 0.005\n",
+    "po_rilem.mats_eval.s_tau_table = [[0, 0.0001, 0.1],\n",
+    "                                  [0, 3.0, 8.0]]\n",
+    "po_rilem.sim.run() "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 47,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,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\" width=\"400\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fix, ax = plt.subplots(1,1, figsize=(4,3),tight_layout=True)\n",
+    "po_rilem.hist.plot_Pw(ax, 0)"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.7.6"
+  },
+  "toc": {
+   "base_numbering": 1,
+   "nav_menu": {},
+   "number_sections": true,
+   "sideBar": true,
+   "skip_h1_title": true,
+   "title_cell": "Table of Contents",
+   "title_sidebar": "Contents",
+   "toc_cell": false,
+   "toc_position": {
+    "height": "calc(100% - 180px)",
+    "left": "10px",
+    "top": "150px",
+    "width": "203.5px"
+   },
+   "toc_section_display": true,
+   "toc_window_display": false
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/bmcs_course/3_1_PO_LF_LM_EL_FE_CB.ipynb b/bmcs_course/3_1_PO_LF_LM_EL_FE_CB.ipynb
index 627e8f7..41a5b66 100644
--- a/bmcs_course/3_1_PO_LF_LM_EL_FE_CB.ipynb
+++ b/bmcs_course/3_1_PO_LF_LM_EL_FE_CB.ipynb
@@ -188,7 +188,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "iVBORw0KGgoAAAANSUhEUgAAASIAAABXCAYAAACgJkhwAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAWe0lEQVR4Ae2dTbIcNRLHnx1eT3hMcADMDcA+gc0NwG8xa+AGEF7BzoFvAN5PhIEbACewzZzAzAEIzLuB5/+TlRqVWqqPrqru6n6pCLU+Skql/lWZlUpVVd94+/btxZjw7bfffq9295R+PKa9t3EEHAFHYCwCt4YaSvHcVZtfFO8oPhhq78cdAUfAEZiKQK8iikrotYheKX6s8h9TB/D2joAj4AgMIdBURFI6t9UZS4jw2RQlpLbfqc9foefFxR8q/0xeqVlXpGX4RMd/LSu97Ag4AuePQFMRaerPFFEYv05REGqLEvqFPoofKU85KCKlXyt+ovhG8ZmOf6Z0J6j+J1V+rhRLzIMj4AicOQJVRSQFgDX0aZw7ymNKQPl8FGlg4QRlQ1nxSyMUj1sxpKqj76Xiw84BLzgCG0VA1yzXKtf1C0Wsem60HiYicLPR/nGsvxKwvzfatKo5KVgyWDV/K+LkvhCdZN0oz8nboctYiig+LCYPjsCmEdC1yo0zWO9KuZ4fxmt703yPYU7z+ErxdZzjmC6z2lQtIlE0i2SSz0ZMY0WhTMwK4iRR91QxDxx/lVd43hE4QQS46b7U9c5NFlm5cYJzSCxrHqyEMEKQ2e9V/jAdXDnTUkTmTJ66S4Y/KPf7YNnUlBmKjueSPDgCp4wA1v5UGdncfKVwkHdWIsjld4dUQAZGSxGhGQm28/WuNPzLZHjo8Z5SaPyk/M4SDDKteo55cAQcgfURkAyigDAeSJ+onHy464/eHaGliLqtRpY0Edsd6+2hdgcz+XoZ8YOOwB4I6PrFN4TQYkFcqExCGgRZqS1x7Eb+ng6HneTYjn5JASiPVXVfkfpRj8poDPob/SvlWSJWb/o61glqB//0x6L7WuXaqqXTZ2xhX75ujR3gEO0iQJyMoKlV5uSNUm6H4M/HcARAQNckAv+lUgSZcrIklEfI8Y2yg5aWbcpzLbOb/FQRwecBYTZzuCnT7oniV4pc/z8oNoP64V/l8ZageJTyvB+vXiU+Wp1jWw6jgEYprhatsl70RvGldkERKk07jFtTRABDLJ3b5Zy97AhsFQGU0M8SsqSEIqO4LV6pnufrTAHQ5qHKpkAGnd1qy00ahWY0IA/tcjzqawGlxXiMy8PGWFOzwxi+1AYFZHNlHikspog0yLi3Z9PQ0zKiP3iSplH01o7AsghEQUPAXpSUdYzdZKovFXMlkuc5PhTe0EC0sKZ+VMQPO3pppbbc5LHKvlCKYmTFgX9orkIa5EtjMFcsSaw+YgpLKiJXFAlWz1xTBOwu3yfUWAV5CAKcV/TlURiKLGmwglAmX6iMlZWWOX397Zjas/z7QSlb9b8pfamUHbOxlpWRCqn6zeJrMUXU4coLjsD1RMCE+HbP9K2NNelTWtYmpBJ2FB3LMqyYYAUpj18JBXJXsaQd+vX9RFosJbFQsK6ggYWE9TIqqO1svm6OGskbOQKOwCACUXhRLDvWiY6ZJYQPad9AX3a7UhDd4E9VOlkJJSLKqD9WFQ7vJ4ooNpzrneVT3r7Iz+bLFVGBqBcdgQkIYPmU1g/f7HokITbFY+R4idx2zKyu1t+O1VKWcR0lp3GwiFimLRJED18WY+BUxp9TzqM2zmy+btS+0KjBzfH8b+X/VRvZ6xyB64qAZIKlCJYJ/hUCyySWNWHbPR5HOWAdEVA4yams41gaHDeLg/68UtH7qEqka2NCG7rpMzvKHyVM5SvOv/MKyZAi4lmD2VvpopE/fHV04I5ytnxQR8ARCAjUFNHqS7OohFhvotDQ/PYcQTotOsbdAu3uwRFwBM4fgR1Zv3WAObPG3Pk+EeNK+XDsUtFMVKo9OAKOwAoIxJv9byK9owh6huOVk9E7aD10kHeWtLYkZZcPJ/cLpU8PoYiwgFia2W4Bj7RfKcIYE8Q5Zuteqj04Ao7ACghIzpC7o/0Lj8ZnZ29nRcRUV12amYJRilblgUecca50QN6DI+AIJASGFNH7qeV+GSyh3Axkmy88iLUfOe/lCDgC54jA0NLsz5mTZj046vtEM8fx7o6AI3DCCAwpollT03Ks97mIWcS9syPgCJwNAkNLs1UnKkXFbhpPhuJN57Hyo/qPND58bDKA1RjGtjyHMfxPbTMWl6l0vf1hEVjVIhqaii6isGumdrMfmhwaa+i4eEERspTcamC7845i08d2AnNYA9tBXNYY1Gkui8BRLaJlp7I/NQkwjxZs+mP+4pFlLruPVavtFOaw/xlq9xzCpd3Tj2wJgWuviHQhs+ThtZNZby8f6KRisbET2Qlbn4P4s2fIOnwvWKjisiB9J7UyAtdeEQlf/sfp+co4L0JeAs0DaSxFSqto63PIH+FYBIucSA8ueTPPbxiBo/qINoILDvPqI+yqx/qwf0pY5GXdBWiiNB8q5h9Yb85hKsbiDyXHd41LZQcpPgjf9FHRYJ+w0Jg1XPZhx/scAYEhRcQd+GxDFIDq/HQMJcTLunwwiuUb5VmPI4yhqTYsY/iHhhb2LCEvFfNPTqi4WGCZw/doePj0mfjI/zAzDTKCz9R2RKZ3TI1l7yRCijzfySmX0h1cRozpTTaEwI4i0gnO74Tlyd4Q64uwwlxbc+SCx9JgWYEVUBVI1U8JTZqZsGHt9AUUFDxZ6JuDtRmVMlfF9C5QnHun7wQ+O/1ahTFjqi87muGDYHF8LLbyv/FKXFpDev0GEdhRROLxOikiTgkXcC30vayLsuAuPhTY5crp99EMjzKo/dCzVFgqd4qB8zHSIdGaxGfOa+y7s2RVfS+fOo5Fl19D8INfi/+8ygMfxuLj7Yl35eF3Z0zV5fPlxlHSh24NF+pXDZFnzusLRZaunS8orjr4GRGvKSIDkrfiW9bCuUDAxXu7nIzmjTJg/sEKUopwUWffB8ZCmuQrGaIpemMDQpmfl+ocIKYxJ/OZMcHcS+WRHa5nNeaO5ag6lrh2XdU7vqutjqm++RvjKKt8/kavxMXqV0vF10cizrXxgeI9RSy3h4qTrg3121zQHHjQGAW72GdA+iZZU0R2R8b5t8kgkOCRu+zcByFbd1f8QblAIexzL66laGIN5ILYmoOazQoI/KGfreodU+ebmwY7hDWlVuIya/IjOyOo/NUzVh3Xx0n/pVaGL/LV+ZSryquGjiISI0HANSI7RHOFfFXGlyDOBaR4oYhvJC0RRJtl19Iv6y5FE+uAu3AI8K14oVjOwZrsnYrm73t33rNja0zmJ5J8gP6B8vm5spE6uFjlyunBrbA15iM8UeJcn9wIsOpK/9saw3ZodhQRTMSjuTXQ6XCGBe76nIC0I6YTkfJLzXdBmihI7sR52JlDfnCf/DEuxtaYqkcJcW1+zlxUrr2OU8OF5h4aCAhHFBC4kvJfZuV11ei5fHVSRGKCizloRuUn3QnVnvUkJjMXTC0s8hH+GuG5deKdv3hhF2Zx5TOFN/GAvwGFGC4OeFLs8KRyMJlLuqo/2Bw01iCfJX8LlPFVgQv/bEpgOZo2C1q4hJYr/EQMEFrO14XKJKRBkJUiB8iDPYP2nvLhURCltKNfUgDKM5/7itTjk8mX3qraDWpDf6OPhcgScZTcqh3nkP5YdMjmXLeDyLwL+/IV/sUjdg7OKeXzB+WMfjONfTn+XBFAmOCTmFcSgA/Aqm0AQGltjR/ajvlR/6V8RGE40eMCwOc0ae5jeF2qjXjj4sYSqN61tjwH8Qa2g8K1D1ai24vLPjTH9tHYYYmsNK0glOcap54dtDRn5bnZoYySy0N5+/96jqEMKPOMVO91qOMoZp41C4pHKf1xp1SvDR1LIbaljAIapbhS54GM6A3ypTboB84ZNxbwgY+rW/pBqFFCHys/iTG1B3Q+fp3u3Mrjq+jQie0MJBjYVBB/PLT4qeJqArPAhLEGkhVQ0tvyHMRbEsiS7wXKvbgsQH8qCZQQf+Fczplz9yqeJ5MP2jxUncnGoLNbbZGf8kl6aJfjqaoaUFqMx7gor6tqq4mVY/hSG5QQTvDAq1Kw4mP+H9/45ptv0E5oMhhqOQJ1aDiIMIrpsdJ0h8h7qR7LY7Q3Xu1hnD5lgOc7ijXwAbc6fk5EbexPJPNqz58JAjq/g0I9d6oao2MRqcz1jyyxvEo3ZxtHdVxzLKPDDUUpbUddrxkNrn0sJ+T1R8X0x43Kjw4a2xQ4fOIfgt7eQf0H+VKb1xogWYoqG14fYhGx68KOA6D8l7xiTcDHMHmpRmjcRYL4CCesJKb62Usz0Vj9Qi359vLZI2DWfp9QI3x5eJMXhvK6bpFXXBvIBsrkC5Wx6Ce5O9Se5R8PlCJLvyl9qZSl/16yr35j+QIjG8NwuntLlRcZETQWimTf7TsmNWiNqI0HR+AcETABwzpoBWtjx00YrdxMJae2LMOKCQ5m1eFWQYHs5VZQP2ixlGTlgXUFf1hItnxUsT+o7Si+1K7UK6aUX960ISIDaFkmxA7apBCZoe/oCUwawBs7AhtHIF77KJYd60THTOjCcm7PqdAXd0UKohuc30pLBZfajMmoP1YVK6Mniig2HOs1t0iN3L58MZfgrE6KKFI3bz3mngFXG7hWhzU0C4waUa9bFwGd5zmCsS5z26eO5VNaPw9U96giP89Uj38o3yqv9e+bNcu4jpITPSyiqgujj1DrmOjxahNj4NBmB2+MHpjMl+iihFB+QZGGpZkxpUrWeQCFJuQ5iCnLLMyuyZaU+ng4LgKlIB2XmxMYXTLCUiRtpKiMO4NlDT4XBBnLItzp43TAmLItp5CvsPpQyk0femzisEzqCygHdndpc6UIXZzdQ/1oPymIJkbFWPmfxJdo49u6rZR+IXQUUazjDglQWDijQ050dCdvuBcCwhoh+Ct2XuVCLBk7xpglD1spC4teIY3Hk5CVfOs4Cim3jMom1XKkm55DqjY6QuUUvtQW3fKh0oBPLL+pKaKXNhcaKU4GzPpX0qXuvkvyVGFzu1U6Hyih8JSu8pjNlDt3RNVzM+GBN+6as0PfmJGHyzgI/GDO+xJ9NurnRyBeK1yvOMPN0EEhfVZTRPlFtIji0KCYnpiiaEMc2ggKD0Lupd3VbxEBEw+nGBD26gfbhAvHUArgvGRojqlBcGwGv0Ucf86u65I8O60CAZ0f5JkHCKfI9ZKfAbGxO35J8XW1o4ioVLQpoEBmB9FDuTVN1dkDnCABYYKyQDkPBS6EXPGCI3cVO5n45sJxtWPHEh+F3W1U/H9QPX3Kc8qNgWfI8oC/wjYuqG+OqWN3so6c55J+dtizx0RA55TrBP/VUYLG/2dr4B1F1Gro9csioJMy2U+gPiiY5gfbhjhU/x3no+pY5nV2YnI6Q2PqeH5ho1xzizon5XlHoInAzeYRP7BFBLCEcrOabdO1/WWjxpRCgi92WptKTcc8OAJVBNwiqsKy2UqWcnx3555SBJ8tY5Zja4bBMaMS4jmZWe8qrjkJp71tBFwRbfv8dLiTwHd2xzoHVyoMjRmVEFbT57CgMs7rMb6vlTh2sqeIgC/NTvGsNXiWAmA3jSdtcRijEKpO60b3fatxdPOAGm+EEw8xpobxcE4IuEV0RmdTiifsmmlKUx6LmLWbqTHLFxnPCFGfyqEQcIvoUEhvdBwpEt/l2ui5uU5suSK6Tmfb5+oIbBSB1tKMh9n+obj21vBGYXG2HAFH4JAItBQRzkfCfxTX3h4OA/mPI+AIXF8EfGl2fc+9z9wR2AwCrog2cyqcEUfg+iLQWppdX0R85o7AgRDQjiVfNeC1mLuKfK1w8w+Cikd45dkxPvSWvxitqv2DW0T7Y+c9HYHRCEhoH5aNVYf/lSfSEW7iKQReLSIu+vyYW0SncOqdx5NGQAoHweXLBzu70DrGZ3fSxwi3PtGoPBf/K64hi+j9rQPj/DkCJ4DAoxPg8agsDllEfx6VOx/cEThxBGRB8O4dfyqxmD/lmJBoPiwhsfAuonW0CDtDimjUIGKIFy1xugUGK51wbE15/6lCwqscgW0hoGua653r3v7I4D3lw/fE4VTHeR7PPhzH999RSATa7HxJQXUIub00fF/56ueUYzsc2ziN8dXQDxnjjxTwRfE1BOqeKPIKD7SoZ3lISl+Oc8wc5NYHv1X4xxHR4oue8HMV27G0ZA7QgH/ohaC2ON6phyZf7QSbS9Xb/C+UD3yqfofvG2/f7v4FvDpY5aACUVsmQHiuCMOUAYB8CGoDQNTDXAJAdanNu5b+6wicBgK6dhE8BDX9lzucq55vdqNo0o1Xef5BmV2x6gvGsQ/dw18SkVEdckI//vEivQ+oPMKOMuCv4YP8xDp4+SCr40sIPyrCDwqEMn9swF8eIYeUk3xndcwn+bKUp3/nDxFUhyJBpoMiUgo9eO98FE/l14rBqa20l++bIrB3EHFOBlqbCfEJUwDj/4pCnnKMKCG+g8yEYBaNyYe0PTgCp4oAgs9fNSclESeChcEnWJCNKYEP3qXlW0YXAc6DjZtu4mprisPeiKA9fGGFwSMO8RuKgT5lHcOiuVQMIdZRXypLk+vYMiRv8oLy94iigULKg1mA1PXyfSvvNTWvgTHjiCGoDPgJoFhNYutkq8JieqX2fLi9PJHWxlNHYJMIxOsci+VFyaCOIbhUI+RJNqgYCC05SMIdx6XMzT5XOpBGGZWy1zc+SgLLLcigUmQUucRoCEF1KEEsot6gdlh7b9Tob/JK6YMCDFahUvRCL9+zFJGIlwHwW4xz4gxsAyyvK2l52RHYKgJctwS7jt+Vur9TLSIEeSjYuDUfU7KmMiJNmigMRfjHAsKKu68yK5vHip8qYjGxTOPYmIAv6LEiygtlhlXIMhD6g3wvrYjQqsmBpXwIYqZ8+MlO0ktr46kjcEII2A2Vu3wrWJud45KHrxSTD2mnQbvCaJpgt1u+O9KnKGmBDwmlgyVkDncUGsoDRTQqqD/8vFGalJbyWGy4Y1iSDfJ9c9RIIxpFZjDz+sxBo4TGRPsOAWXtPXUENoNAvMa5djvOWRjUMbvJIoAWaHvHCkrLG3N2qJ2N4yLUrDw6QcdYrrF7PSWwPEOJPFM0xfNceXxL0Mp9PCo2AzQ6S0X1R6FB03RCL9+LKSINiDVkmk/ZehCDKCHMwn3uCHWiXusIHB6BBxryka5jUzzGAUL9VPXmQKYeyx9hXSKw4uDb5MhbHpCrfHl2W2ViM4gGRgMym3y1Wd2l8n3yXNJmSVfWUTYcevlubd+zbQhwtsZTtj+ICbQn23VNBaNjaE22HTH9PDgCJ42ArmNkhOXIVZwIgsc2tglfrA6WkllICDdLFnaUUWL4VUypYEGwTIIuMoK/BdrcuJPLQ3nGQeHhA0JWeX6J/5Nnd4w+8ERKgBfGM4snVNqP6rF86JeUWK2O9qqv8cu7cvcUsQ7hBd7gGasPX1bCQvkm3y1FhMOZiQDAjvmp+slBdKCXnF+xzLpyzFJu8njewRFwBE4HgVsNVtHeKA7i7CBlgybFdERrm/ZH4yctP3sQJ+AIOAIni0DVImI2Uhg8eYkpxUOIyWzj2NSQ0ep0Vf3ib/F2BvCCI+AInAQCLYsI5lmrYsWw3pyriP4pGh4cAUfAEagicLNaq0pZKzidbftt6rZgi6zXOwKOgCOwg0BzaWYtpZB4wQ0fz+wlmtH01BFwBByBHIGmRWSNpIh4dBvriC1AlmoeHAFHwBFYFIFBRcRoUkD4iRbZxl+UeyfmCDgCZ4HA/wBmWOsFkqX5uwAAAABJRU5ErkJggg==\n",
+      "image/png": "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\n",
       "text/latex": [
        "$\\displaystyle \\begin{cases} \\frac{s \\tau_{1}}{s_{1}} & \\text{for}\\: s \\leq s_{1} \\\\\\tau_{1} + \\frac{\\left(s - s_{1}\\right) \\left(- \\tau_{1} + \\tau_{2}\\right)}{- s_{1} + s_{2}} & \\text{for}\\: s \\leq s_{2} \\\\\\tau_{2} & \\text{otherwise} \\end{cases}$"
       ],
@@ -242,7 +242,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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\n",
+      "image/png": "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\n",
       "text/latex": [
        "$\\displaystyle \\begin{cases} \\frac{\\tau_{1}}{s_{1}} & \\text{for}\\: s \\leq s_{1} \\\\\\frac{- \\tau_{1} + \\tau_{2}}{- s_{1} + s_{2}} & \\text{for}\\: s \\leq s_{2} \\\\0 & \\text{otherwise} \\end{cases}$"
       ],
@@ -908,7 +908,7 @@
        "};\n",
        "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
        "\n",
-       "mpl.extensions = [\"eps\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\"];\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
        "\n",
        "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
        "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
@@ -1129,7 +1129,7 @@
     {
      "data": {
       "text/html": [
-       "<img src=\"data:image/png;base64,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\" width=\"800\">"
+       "<img src=\"data:image/png;base64,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Eh08ePCcjztw4IAqVaqkv/3tbzGq7OLdcMMNsixLTz31lCPXM71W4Sgdts42XRIAAHABwtYoi+YnW8/n9DX//Oc/O3ZN043vynmzQprajLZdjdUCnMu8TQf00Ltf24auv+o5XQNnb1ZeQZHpMlFenX3kwOD7pf7XMRjeGB81iepvDdN9zM9+9jMlJyeH9djk5GRdddVVUa7IOQ0aNJBlWerQoYMj1zO9VuEoGbau+todxz4AAACzCFujLDMzM2pntp7P888/L8uydMMNNzh2TdON75RBH4U0tUPadzZWC3A+fn9AE1fs1m97Z9mGrre/kaXxy3bJ74/sqA8AwIUx3cdUqlRJ1113XViPve6663TJJZdEuSJnLFiwINjvfvnll45c0/RahaNU2Donx3RJAADABQhbo2zXrl3B5jMnJ8f2Mfn5+apYsaIsy9KoUaMcu3enTp1kWZauvfZax65puvEd3atXSFM7sqtz4TQQLacKi5T+9RY16jXdNnR94J05mrvxgOkyAaDcM93H1KtXTwkJCVq9evU5H7d69Wr5fD5dc010j1VwQl5enn7961/LsizdeOON5zw2qyQ3H10VjownO4WGrbNzTJcEAABcgLA1BpKSkmRZlnr16mX785ycnGAgu23bNsfu+8ADD8iyLN13332OXdP0X1KG/js1pKn98n2+IAveceRkgd6Ysk4/7zLFNnRtmbFQ3+45arpMACi3TPcxHTt2lM/nU/369TVv3jzbx8ybN08NGjRQQkKCOnbsGOMKIxMIBPT3v/89GIyuXbs2oud7P2wN/WTritnZpksCAAAuQNgaAy+99JIsy1JSUpLtua3NmjWTZVm67bbbHLvn0qVLVaFCBVmWpbfeesux65r+S0pGu7SQpnbRjMnGagEu1O7DJ9XhsxW6unPpwPXqzpP0wpgV2n34pOkyAaDcMd3HHDlyRA0aNJDP51NCQoIaN26sNm3aKC0tTSkpKbr11luVkJAgn8+nBg0a6MiRI8ZqDUf79u1lWZYSExM1ZcoUR69teq3CUfKTrStyskyXBAAAXICwNQb279+vatWqybIsPf7448rNzZUk+f1+9evXL/ip1uzs0H8NHzt2rJKSkpSUlKSdO3eG/GzcuHFKS0vThg0bQn49EAho/PjxqlmzpizL0tVXX63jx4879lpMN77pT7wc0tQeOch/vYZ3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\" width=\"799.75\">"
       ],
       "text/plain": [
        "<IPython.core.display.HTML object>"
@@ -1214,7 +1214,7 @@
        "        "
       ],
       "text/plain": [
-       "<bmcs.pullout.pullout_sim.PullOutModel at 0x7f486ea28540>"
+       "<bmcs.pullout.pullout_sim.PullOutModel at 0x7f483ba68a10>"
       ]
      },
      "execution_count": 8,
@@ -1251,7 +1251,7 @@
        "        "
       ],
       "text/plain": [
-       "<bmcs.pullout.pullout_sim.CrossSection at 0x7f486e688950>"
+       "<bmcs.pullout.pullout_sim.CrossSection at 0x7f4839cdd710>"
       ]
      },
      "execution_count": 9,
@@ -1286,7 +1286,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 10,
+   "execution_count": 14,
    "metadata": {
     "slideshow": {
      "slide_type": "fragment"
@@ -1308,10 +1308,10 @@
        "        "
       ],
       "text/plain": [
-       "<ibvpy.mats.mats1D5.vmats1D5_bondslip1D.MATSBondSlipMultiLinear at 0x7f486e78d810>"
+       "<ibvpy.mats.mats1D5.vmats1D5_bondslip1D.MATSBondSlipMultiLinear at 0x7f4839c26470>"
       ]
      },
-     "execution_count": 10,
+     "execution_count": 14,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1319,6 +1319,8 @@
    "source": [
     "po.mats_eval_type = 'multilinear'\n",
     "po.mats_eval.trait_set(E_m=1, E_f=1)\n",
+    "po.mats_eval.bs_law.xdata = [0,1,2]\n",
+    "po.mats_eval.bs_law.ydata= [0,1,2]\n",
     "po.mats_eval.bs_law.replot()\n",
     "po.mats_eval"
    ]
@@ -1337,7 +1339,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 11,
+   "execution_count": 15,
    "metadata": {
     "slideshow": {
      "slide_type": "fragment"
@@ -1362,9 +1364,9 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": 22,
    "metadata": {
-    "hide_input": true,
+    "hide_input": false,
     "scrolled": false,
     "slideshow": {
      "slide_type": "fragment"
@@ -1930,7 +1932,7 @@
        "};\n",
        "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
        "\n",
-       "mpl.extensions = [\"eps\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\"];\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
        "\n",
        "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
        "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
@@ -2151,7 +2153,7 @@
     {
      "data": {
       "text/html": [
-       "<img src=\"data:image/png;base64,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\" width=\"500\">"
+       "<img src=\"data:image/png;base64,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\" width=\"499.9666666666667\">"
       ],
       "text/plain": [
        "<IPython.core.display.HTML object>"
@@ -2159,48 +2161,37 @@
      },
      "metadata": {},
      "output_type": "display_data"
-    },
-    {
-     "data": {
-      "application/vnd.jupyter.widget-view+json": {
-       "model_id": "476c2489f43b4f0eadea4af92a0cd3c1",
-       "version_major": 2,
-       "version_minor": 0
-      },
-      "text/plain": [
-       "interactive(children=(FloatSlider(value=1e-06, description='s2', max=1.0, min=1e-06, step=0.3), FloatSlider(va…"
-      ]
-     },
-     "metadata": {},
-     "output_type": "display_data"
     }
    ],
    "source": [
     "fig, ax = plt.subplots(1,1,figsize=(5,2))\n",
     "po.mats_eval.bs_law.trait_set(\n",
-    "    xdata=[0, 1e-6, 2.0],\n",
-    "    ydata=[0., 1, 1]\n",
+    "    xdata=[0, 1, 2.0, 4.0],\n",
+    "    ydata=[0., 1, 1, 0]\n",
     ")\n",
-    "po.mats_eval.bs_law.plot(ax)\n",
-    "def update_bond_slip(s2, s3, tau2, tau3):\n",
-    "    po.mats_eval.bs_law.trait_set(\n",
-    "        xdata=[0, s2, s3],\n",
-    "        ydata=[0., tau2, tau3]\n",
-    "    )\n",
-    "    ax.clear()\n",
-    "    po.mats_eval.bs_law.plot(ax, color='green')\n",
-    "    ax.set_ylabel(r'$\\tau$ [MPa]')\n",
-    "    ax.set_xlabel(r'$s$ [mm]')\n",
-    "bs_sliders = dict(s2=ipw.FloatSlider(value=1e-6, min=1e-6, max=1, step=0.3),\n",
-    "             s3=ipw.FloatSlider(value=2.0, min=1, max=3, step=0.3),\n",
-    "             tau2=ipw.FloatSlider(value=1, min=0, max=3, step=0.3),\n",
-    "             tau3=ipw.FloatSlider(value=1, min=0, max=3, step=0.3))\n",
-    "ipw.interact(update_bond_slip, **bs_sliders);"
+    "ax.clear()\n",
+    "po.mats_eval.bs_law.plot(ax, color='green')\n",
+    "\n",
+    "# po.mats_eval.bs_law.plot(ax)\n",
+    "# def update_bond_slip(s2, s3, tau2, tau3):\n",
+    "#     po.mats_eval.bs_law.trait_set(\n",
+    "#         xdata=[0, s2, s3],\n",
+    "#         ydata=[0., tau2, tau3]\n",
+    "#     )\n",
+    "#     ax.clear()\n",
+    "#     po.mats_eval.bs_law.plot(ax, color='green')\n",
+    "#     ax.set_ylabel(r'$\\tau$ [MPa]')\n",
+    "#     ax.set_xlabel(r'$s$ [mm]')\n",
+    "# bs_sliders = dict(s2=ipw.FloatSlider(value=1e-6, min=1e-6, max=1, step=0.3),\n",
+    "#              s3=ipw.FloatSlider(value=2.0, min=1, max=3, step=0.3),\n",
+    "#              tau2=ipw.FloatSlider(value=1, min=0, max=3, step=0.3),\n",
+    "#              tau3=ipw.FloatSlider(value=1, min=0, max=3, step=0.3))\n",
+    "# ipw.interact(update_bond_slip, **bs_sliders);"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 13,
+   "execution_count": 23,
    "metadata": {
     "hide_input": false
    },
@@ -2212,7 +2203,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 44,
+   "execution_count": 24,
    "metadata": {
     "hide_input": true,
     "scrolled": false,
@@ -3001,7 +2992,7 @@
     {
      "data": {
       "text/html": [
-       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAJYCAYAAADxHswlAAAgAElEQVR4nOzde3hU9YE+8MkdGREqVbQuEg1yKfq4pi22qwW29qnWumvbdWl30V/arVVgW8HiWnZrF1uJtdvqwj6NdHIBcyNckkACCQm33ENIgNwgkQTIDRKSQO63STLz/v44yZkMuc2cOWfmzMn7eZ732XJm5pxvjizf75szc0YHIiIiIiIiInI5nasHQEREREREREQs6ERERERERESqwIJOREREREREpAIs6EREREREREQqwIJOREREREREpAIs6EREREREREQqwIJOREREREREpAIs6EREREREREQqwIJOREREREREpAIs6EREREREREQqwIJOREREREREpAIs6EREREREREQqwIJOREREREREpAIs6AoxmUxoaGhAR0cHOjs7GYZhmBmejo4ONDQ0wGQyuXqKcinOjwzDMMyd4RxpwYKukIaGBuh0OoZhGIaxSkNDg6unKJfi/MgwDMNMlpk+RwIs6Irp6OgQ/5K5+jdSDMMwjOszWkw7OjpcPUW5FOdHhmEY5s5wjrRgQVdIZ2cndDodOjs7XT0UIiJSAc4LAp4HIiK6E+cGCxZ0hfAvGRERjcV5QcDzQEREd+LcYMGCrhD+JSMiorE4Lwh4HoiI6E6cGyxY0BXCv2RERDQW5wUBzwMREd2Jc4OF5gt6VlYWXnrpJTz44IPQ6XQ4dOjQtK/JzMxEYGAg/Pz88Mgjj2DXrl12H5d/yYiIaCw1zguumCPVeB6IiMi1ODdYaL6gp6am4je/+Q0SEhJsWnxcu3YNs2fPxqZNm1BRUYGwsDD4+PggPj7eruPyLxkREY2lxnnBFXOkGs8DERG5FucGC80X9LFsWXy8++67WLZsmdW2N998E1//+tftOhb/khER0VhqnxecNUeq/TwQEZHzcW6wYEG/wze/+U289dZbVtsSExPh7e2NwcFBm4/Fv2RERDSW2ucFZ82Raj8PpFFmAMMAhgAMAjCOZABA/0j6APSOpG9k28DI8wZHXjsMwDQSmtTQ0BB6enrQ0dGB27dvo7W1FTdv3kRjYyMaGhpQV1eHa9eu4cqVK7h8+TIqKytx8eJFlJaWori4GOfPn0dhYSHOnDmDvLw85OTkICcnB7m5ucjNzUVeXp6Y/Px85Ofn48yZM1YpKChAQUEBzp49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\" width=\"1000\">"
+       "<img src=\"data:image/png;base64,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yZNNHhcWFmZS2FTc82XlypViLoOZqVOnwtPT0/hnsYVN/fr1rb6HDfDnfWxCQ0NNvjHq7bffRp8+fUTdvwZgYUNEpljYEBERERGpVMW3RDVr1gxfffUVdu3ahZdfftns40mnT5+Gs7MzXnjhBXzzzTdITEzEk08+CS8vL8m+JWr58uXGAmjPnj1YunQpPD090bNnT5MVQJGRkXB3d8eXX36JPXv2ICoqCn5+fiaFTWlpKRo1aoTQ0FAcPHgQ+fn5JvdgedBHH32E6OhobNmyBTk5OUhMTISvry9effVV42Os+Zaop556Clu3bhX9LVEV+vXrB0EQTEqrTZs2QRAEUfevAVjYEJEpFjZERERERCpVcW+a7OxsdOzYETqdDq1atTL7aBIA6PV6PP7446hfvz6CgoJw9OhRSb/WGwDWrFmDdu3awdXVFb6+voiOjjb7Ou4bN25g0KBBeOihh/Dwww9j6tSpWLlypUlhAwBpaWlo37496tevb7GYqJCRkYHw8HA88sgj0Ol08PPzw4QJE0xeV2xh89Zbb2HZsmXw8/ODTqdDcHCw8eNNNakoOxISEozbKlYKibl/DcDChohMsbAhIiIiIlKpqm4mTNarXF4pQRAEzJ49G8XFxWbf1KSU4uJi7Nu3j4UNkQJY2BARERERqRQLG+nYS2FTEb1er+ixAMC1a9dMjomFDZFtsbAhIiIiIlIpFjbSsYfC5sFv4BJzzxu5FRcXmxzT7du3lT4kIk1hYUNEREREREREZGdY2BARERERERER2RkWNkREREREREREdoaFDRERERERERGRnWFhQ0RERERERERkZ1jYEBERERERERHZGRY2RERERERERER2hoUNEREREREREZGdYWFDRERERERERGRnWNgQEREREREREdkZFjZERERERERERHaGhQ0RERERERERkZ1hYUNEREREREREZGdY2BARERERERER2RkWNkREREREREREdoaFDRERERERERGRnWFhI5M7d+4gJycHp0+fRkFBAcMwDMNoIqdPn0ZOTg7u3Lmj9FBs965du4YlS5Zgz549yMnJYRiGYRhNZM+ePViyZAmuXbum9FBs91jYyCQnJweCIDAMwzCMJpOTk6P0UGz3lixZovj7xDAMwzBKZcmSJUoPxXaPhY1MTp8+DUEon7Aq/X87GYZhGMZWqfgfFqdPn1Z6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gU34ILCxCRpWgNowfYPoXE1C/QscAhtERHSDBDbho0kGNhUVFbrxxhuVkJCgVq1a6fLLL9eePXtOedyePXtkWZaf8fHxQV8DDSuAP0zfIDpTk1D/AofABhER3SCBTfhocoFNVVWVBg4cqOTkZOXn5+uNN95Qnz59lJycrK+++qreY2sCm9zcXG3evNlneXl50NdBwwoQOEzfIIZXk1D/AofABhER3SCBTfhocoHNa6+9JsuytG3bNt/a3r17FR0drYULF9Z7bE1gs3z58pCvg4YVIDhCnb5h0gax4ZqE+hc4BDaIiOgGCWzCR5MLbG666SZ169bNb/2iiy7SRRddVO+xBDYAziPQ6ZvCQj4qhdhQTeKW+rd7925lZWWpVatWSkhI0Lhx43To0KFTHldWVlbnx6d79+4d9DUQ2CAiohsksAkfTS6wSUtL0xVXXOG3fuedd6pjx471HlsT2LRr107NmjVTQkKCrrvuOv39738P+jrc0rACuIG6pm/+8hc+KoVoSpO4of5VVlYqMTFRffv2VXFxsfLz85WUlKT09HRVVVXVe2xNYPPcc8/V+vj0jh07gr4OAhtERHSDBDbho8kFNt27d1d2drbfek5Ojrxeb73H/uMf/9DkyZNVWFioDRs26KmnnlLHjh115plnqqKi4qTHHT58WLt3765lzV9CJzesAG6mspIbFSOa0iRuCGwWLFggr9erffv2+dY2bdoky7JUVFRU77E1gc3vfve7kK+DwAYREd0ggU34cHxgU1lZqZ07d57SgwcPSpK6deumm266ye99HnzwwVMGNnWxY8cORUdHKycn56SvycnJqXM82ukNK4DbCeVmxUzfIP5Xk7ghsBk6dKhGjBjht56SkqKJEyfWeyyBDSIiRpoENuHD8YFNQUHBScOQH1oTqITykaiT0atXL/3kJz856deZsAEIHyd+XIrHhCMGr0ncENh06NBB06ZN81vPyspSenp6vcfWBDYdOnRQVFSUOnTooFtuuUVffvll0NdBYIOIiG6QwCZ8OD6wCZbs7Gx1797db3348OEaNmxYg97zvPPOU2ZmZlDHuKFhBWiq8JhwxOA0iRvqX0xMTJ2Ts9nZ2erRo0e9x3744YeaMWOGiouLVVZWprlz56pNmzY677zz9PXXX5/0uLp+uLNy5UoCG0REdLwENuGjyQU2NRM55eXlvrXP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\" width=\"999.9333333333334\">"
       ],
       "text/plain": [
        "<IPython.core.display.HTML object>"
@@ -3013,7 +3004,7 @@
     {
      "data": {
       "application/vnd.jupyter.widget-view+json": {
-       "model_id": "5afd8c96f04545eb9aee9f608bd2ad22",
+       "model_id": "933e9f5e486e443e9482615f782d4540",
        "version_major": 2,
        "version_minor": 0
       },
@@ -3027,7 +3018,7 @@
     {
      "data": {
       "application/vnd.jupyter.widget-view+json": {
-       "model_id": "f17652ac8f3e4cdba2728be43ab10c53",
+       "model_id": "19e950e7c98446c7b4518671336b3ece",
        "version_major": 2,
        "version_minor": 0
       },
diff --git a/bmcs_course/5_3_BS_DP_A.ipynb b/bmcs_course/5_3_BS_DP_A.ipynb
index 1c4ee91..29c2021 100644
--- a/bmcs_course/5_3_BS_DP_A.ipynb
+++ b/bmcs_course/5_3_BS_DP_A.ipynb
@@ -15,13 +15,6 @@
     "to describe the material behavior, once it crosses the elastic limit."
    ]
   },
-  {
-   "cell_type": "code",
-   "execution_count": null,
-   "metadata": {},
-   "outputs": [],
-   "source": []
-  },
   {
    "cell_type": "markdown",
    "metadata": {
diff --git a/bmcs_course/7_1_PO_LF_LM_EL_FE_Energy.ipynb b/bmcs_course/7_1_PO_LF_LM_EL_FE_Energy.ipynb
new file mode 100644
index 0000000..6cdcb04
--- /dev/null
+++ b/bmcs_course/7_1_PO_LF_LM_EL_FE_Energy.ipynb
@@ -0,0 +1,4513 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "# Example 7.1: Fitting a test response and energy dissipation \n",
+    "# PO-LF-LM-EL-SH\n",
+    "\n",
+    "@author: rosoba"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 38,
+   "metadata": {
+    "hide_input": true
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<style>\n",
+       ".output_wrapper button.btn.btn-default,\n",
+       ".output_wrapper .ui-dialog-titlebar {\n",
+       "  display: none;\n",
+       "}\n",
+       "</style>\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "%%html\n",
+    "<style>\n",
+    ".output_wrapper button.btn.btn-default,\n",
+    ".output_wrapper .ui-dialog-titlebar {\n",
+    "  display: none;\n",
+    "}\n",
+    "</style>"
+   ]
+  },
+  {
+   "attachments": {
+    "image.png": {
+     "image/png": "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"
+    }
+   },
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "## Idealization of the pull-out problem\n",
+    "The one-dimensional idealization of the pull-out looks as follows\n",
+    "\n",
+    "![image.png](attachment:image.png)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Model parameters"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "The parameters and variables involved in the are grouped according geometry, material behavior, measured response, internal state and subsidiary integration parameters that will be resolved during the model derivation. In this classification we also associate the mathematical symbols with the Python variable name introduced in the next cell."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Geometrical variables:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `A_f` | $A_\\mathrm{f}$ |  Cross section area modulus of the reinforcement |\n",
+    "| `A_m` | $A_\\mathrm{m}$ |  Cross section area modulus of the matrix |\n",
+    "| `p_b` | $p_\\mathrm{b}$ |  Perimeter of the reinforcement                  |\n",
+    "| `L_b` | $L_\\mathrm{b}$ |  Length of the bond zone of the pulled-out bar   |\n",
+    "| `x`   | $x$            |  Longitudinal coordinate |\n",
+    "\n",
+    "**Material parameters:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `E_f`     | $E_\\mathrm{f}$ |  Young's modulus of the reinforcement |\n",
+    "| `E_m`     | $E_\\mathrm{m}$ |  Young's modulus of the matrix        |\n",
+    "| `MATS`    | $\\tau(s)$      |  Multi-linear bond-slip model         |\n",
+    "\n",
+    "(`MATS` is used to denote \"Material Time Stepper\" -- equivalent to user-subroutine in Abaqus, or user material in ATENA) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Control parameter:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `P` | $P$ | Pullout force |\n",
+    "| `w` | $w$ | pullout control  displacement\n",
+    "\n",
+    "**State parameter:**\n",
+    "\n",
+    "There are no state parameters included. \n",
+    "\n",
+    " - What is the consequence? The material has no memory.\n",
+    " - What happens upon unloading?"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Let's import the packages:**"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 39,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "%matplotlib notebook\n",
+    "import sympy as sp # symbolic algebra package\n",
+    "import numpy as np # numerical package\n",
+    "import matplotlib.pyplot as plt # plotting package\n",
+    "sp.init_printing() # enable nice formating of the derived expressions\n",
+    "import ipywidgets as ipw"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Numerical model of pull-out provided in BMCS Tool Suite \n",
+    "The presented function is the simplest model provided in a general-purpose nonlinear finite-element simulator `BMCS-Tool-Suite`. This code can be installed in your anaconda environment by issuing the installation command\n",
+    "\n",
+    "`pip install --upgrade bmcs`\n",
+    "\n",
+    "After the installation it should be possible to import the `PullOutModel` by issuing"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 40,
+   "metadata": {
+    "scrolled": true,
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{k_max} & k_{\\max} = 5 & \\textrm{[-]} & \\textrm{maximum number of iterations}  \\\\\n",
+       "                \\textrm{tolerance} & \\epsilon = 0.0001 & \\textrm{[-]} & \\textrm{required accuracy}  \\\\\n",
+       "                \\textrm{n_e_x} & n_\\mathrm{E} = 60 & \\textrm{[-]} & \\textrm{number of finite elements along the embedded length}  \\\\\n",
+       "                \\textrm{mats_eval_type} & \\textrm{multilinear} & & \\textrm{material model type}  \\\\\n",
+       "                \\textrm{control_variable} & \\textrm{u} & & \\textrm{displacement or force control: [u|f]}  \\\\\n",
+       "                \\textrm{w_max} & w_{\\max} = 1.0 & \\textrm{[mm]} & \\textrm{maximum pullout slip}  \\\\\n",
+       "                \\textrm{fixed_boundary} & \\textrm{non-loaded end (matrix)} & & \\textrm{which side of the specimen is fixed [non-loaded end [matrix], loaded end [matrix], non-loaded end [reinf]]}  \\\\\n",
+       "                \\hline\n",
+       "        \\textbf{loading_scenario} & \\textrm{LoadingScenario} & & \\textrm{object defining the loading scenario} \\\\\n",
+       "            \\textbf{cross_section} & \\textrm{CrossSection} & & \\textrm{cross section parameters} \\\\\n",
+       "            \\textbf{geometry} & \\textrm{Geometry} & & \\textrm{geometry parameters of the boundary value problem} \\\\\n",
+       "            \\textbf{mats_eval} & \\textrm{MATSBondSlipMultiLinear} & & \\textrm{material model of the interface} \\\\\n",
+       "            \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.PullOutModel at 0x7fed81126470>"
+      ]
+     },
+     "execution_count": 40,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "from bmcs.pullout.pullout_sim import PullOutModel\n",
+    "po = PullOutModel(n_e_x=60, k_max=5, w_max=1.0)\n",
+    "po"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 41,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{A_m} & A_\\mathrm{m} = 1.0 & \\textrm{[$\\mathrm{mm}^2$]} & \\textrm{matrix area}  \\\\\n",
+       "                \\textrm{A_f} & A_\\mathrm{f} = 1.0 & \\textrm{[$\\mathrm{mm}^2$]} & \\textrm{reinforcement area}  \\\\\n",
+       "                \\textrm{P_b} & p_\\mathrm{b} = 1.0 & \\textrm{[$\\mathrm{mm}$]} & \\textrm{perimeter of the bond interface}  \\\\\n",
+       "                \\hline\n",
+       "        \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.CrossSection at 0x7fed813c6bf0>"
+      ]
+     },
+     "execution_count": 41,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "po.sim.tline.step = 0.05\n",
+    "po.fixed_boundary = 'loaded end (matrix)'\n",
+    "po.loading_scenario.trait_set(loading_type='cyclic',\n",
+    "                              amplitude_type='constant',\n",
+    "                              loading_range='non-symmetric'\n",
+    "                              )\n",
+    "po.loading_scenario.trait_set(number_of_cycles=1,\n",
+    "                              unloading_ratio=0.98,\n",
+    "                              )\n",
+    "po.geometry.trait_set(L_x=1.0)\n",
+    "po.cross_section.trait_set(A_f=1, P_b=1, A_m=1)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Define the bond-slip law"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "Construct a figure to show the currently defined material model `mats` in graphic form. The data points of the bond slip law can be dfined as follows."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 46,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,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\" width=\"1065.75\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "po.mats_eval_type = 'multilinear'\n",
+    "po.mats_eval.trait_set(E_m=1, E_f=1)\n",
+    "po.mats_eval.bs_law.trait_set(\n",
+    "    xdata=[0, 0.1, 0.5, 1],\n",
+    "    ydata=[0., 1, 0.2, 0]\n",
+    ")\n",
+    "po.mats_eval.bs_law.replot()\n",
+    "fix, ax = plt.subplots(1,1, figsize=(8,3),tight_layout=True)\n",
+    "po.mats_eval.bs_law.plot(ax, color='green')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Run the simulation\n",
+    "The model object `po` contains the non-linear threaded simulator `sim` as its attribute. To be sure that the state arrays and history variables are zeroed and reset run the methods `stop` first. After that, the simulation can be started."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 56,
+   "metadata": {
+    "hide_input": false,
+    "scrolled": false,
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABvEAAAQpCAYAAAD4XCEbAAAgAElEQVR4nOzdeXhU5aE/8HcmiWQH3HCJRFttEXGjV1AvGKVotcS211q3PjZ6awu/i3pbq8X6VAGjtQjUGriW7MQQQkjYCcgShhQIQgQSlkQSsgwQCBCyANmT+f7+GDkyzoTMTM6Zd+bM9/M83+dpZznzksN7XpxvzjkCRERERERERERERD5EEBER+QPZCy4RERERERERERGRK2R/p0pEROQRshdcIiIiIiIiIiIiIlfI/k6ViIjII2QvuERERERERERERESukP2dKhERkUfIXnCJiIiIiIiIiIiIXCH7O1UiIiKPkL3gEhEREREREREREblC9neqREREHiF7wSUiIiIiIiIiIiJyhezvVImIiDxC9oJLRERERERERERE5ArZ36kSERF5hOwFl4iIiIiIiIiIiMgVsr9TJSIi8gjZCy4RERERERERERGRK2R/p0pEROQRshdcIiIiIiIiIiIiIlfI/k6ViIjII2QvuERERERERERERESukP2dKhERkUfIXnCJiIiIiIiIiIiIXCH7O1UiIiKPkL3gEhEREREREREREblC9neqREREHiF7wSUiIiIiIiIiIiJyhezvVImIiDxC9oJLRERERERERERE5ArZ36kSERF5hOwFl4iIiIiIiIiIiMgVsr9TJSIi8gjZCy4RERERERERERGRK2R/p0pEROQRshdcIiIiIiIiIiIiIlfI/k6ViIjII2QvuKSO2tpaJCQkYO3atSgsLGQYhuk3a9euRUJCAmpra2Ufwoik4NrJMIyr4dpJ/o5rJ8MwrkbLtVP2d6pEREQeofoKSlIkJCRACMEwDONyEhISZB/CSOeWLVuGsWPHIjQ0FEOGDEFsbCxKS0td2sb+/fvxwgsv4Prrr0dQUBCGDRuGxx57DF999ZXb4+LayTCMu+HaSf6KayfDMO5Gi7VTEBER+QPVV1CSYu3atco/imT/lhXDML6Ri1/CrF27VvYhjHQsJSUFQgiMGjUKCQkJmD17NoYPH47w8HCUlJQ4tY2lS5ciKCgId999Nz788EOkpaXh448/xvPPP481a9a4PTaunQzDuBquneTvuHYyDONqtFw7JX6dSkRE5Dmqr6AkRWFhIYQQKCwslD0UIvIRPG6Q1hobGxEZGYmoqCi0tLQoj5vN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3nvP77Err7xSqampfsGr9/3/7Gc/U3V1tW/7ihUrZGZKSkrStGnT/F5n0KBBMjNt2LChxrEZIR4AhGXNmjW+z4S7/fbbfX/o8q9//cu3T20hXseOHXXMMcfotttu05gxY3T33XcrOTlZeXl5GjFihE444QQNGzZML7zwgs4///yAP0KRpE8//VRHHXWUjjnmGP3+97/3/cFMTk6OjjvuOH311VdB3wMhHuorluunAAC4xu2GCwAAgOC8odcTTzwR8NjSpUtlZrrnnnt822Id4n3//fcyM1166aUBj5WXlysjI0OdOnUKeD/RDPEuuugiZWVladGiRXXu5zTEe/nllwNe4+WXX5aZaeTIkUHH1b17d5144om+/z/11FN1yy236KmnnlJGRoYOHjwoSbr00kt11FFH+QVmtQklxFu/fr3f9h07dsjMdP755wc8Z9SoUTIzffrpp75t3vf/1ltvBeyfmZmpNm3aBGz3BoVz5sypcWxGiAcAYQsWYtUW4tXU07x/fNGmTRvt3LnTt72iokLHHntsQM/o3r272rVr53ebakn68ssv1aJFC/3mN78JOn5CPNRXDJdPAQBwj9sNFwAAAMF5Q6/D/7Lea9euXTIzXX755b5t0QjxKioq9O233/rV3r17JUkffPCBzEz33XdfjV+zS5cuSktLC3g/0QzxPvjgA7Vu3dq3GHnNNddozJgx2rVrV53vM9gYVq1aFfC1Vq1aJTPTwIEDg45ryJAhMjN9+eWX2rJli28R9cMPP5SZadGiRdq3b5/S0tL061//OqT3GkqId+TnJkqHQrSbbropYLv3+Bx+daf3/W/cuLHGr9+rV6+A7d6F1ZdeeqnGsRkhHgCErb4hXl1/fPHII48EPHbllVcqJyfH9/+fffaZzEyDBw9WWVlZQF166aU1fo0jEeKhvmK0dAoAgLvcbrgAAAAIzhuqvPbaawGPeUO8w2/FeMstt9Qa4vXs2bNeIZ53DIeX9xaZ77//vsxM999/f41f88gQ76WXXqo1xHv00UcjEuJJh64CfO2113Tfffepa9euMjMdffTRKi4urvV91vb1vNsO/zw9r5UrV9b4OXI1mT9/vsxMY8eO9f2bfvvtt6qurlarVq302GOPacGCBb59QhFKiFcTqyVEqylkresY1Pb1gy2s1vb1AQChq2+IV9cfX0ycODHgsSP7yauvvlrj5/EdXsnJyUHHX1d/OfKPh77//vtax0yIl3iiuFwKAEDD4XbDBQAAQHBOb6c5ePBgmZnf5+d5HX/88fUK8bZu3aoFCxb4lfcz4Oq6nWZFRYVatGihM844w7dtzpw5MjPNnj07YP9+/foFLOYNHTo0rL/SP/LrHh4cxfp2mvv27VPz5s3161//WjfeeKM6d+7se+xXv/qVzj33XN/Vel988UVI74sQDwASV31DPKfn7SP7yfTp02VmuuuuuwJ+Pji8gqmrv9gRoeCRP6sEGzPiWyzWTQEAcJ3bDRcAAADBeUOVNm3a+AVzVVVV6tOnT0DgMn78eJmZXnnlFb/X8V4BF+nPxJOkXr16KSkpScuWLfPbPnz4cJmZ/vSnP/m2bdiwQWamO+64w2/fzz//XM2bNw9YzBs5cqTMTB9//HHI46npr/W3bt0qM1Pfvn1925yGeF27dlVFRYVve0VFhbp27ark5OQabzVZk4svvlhHHXWUWrdurd/97ne+7S+++KJSUlL0k5/8pMaFytoQ4gFA4nr33XddCfG8V6GHcivputTVX44MBJcuXepozIhvMVs8BQDATW43XAAAAATnDVXOPvtsnXjiiRo+fLieffZZ5eXl1fi5Znv37tWxxx6rFi1a6LHHHtOYMWN0yy236LjjjlPHjh2jEuKtWrVKmZmZSk9P14MPPqjRo0frhhtukJmpU6dOvs/P8+rTp4+SkpL029/+VuPGjdPDDz+sVq1aqUePHgGLee+9957MTBdffLEmT56sV155RR988EGd48nJyVGfPn30+OOPa+LEiXrmmWd02mmnycw0c+bMOt9nXSHe2WefrS5duugvf/mL/vKXv6hLly4yMz322GMh/1s9+eSTvqsK5s2b59u+fv163/Zbb7015NcjxAOAxPXxxx/XeTV4tEI8j8ejM888U82bN9eaNWtq/Nrbtm0LOn4+Ew/1Fau1UwAAXOV2wwUAAEBw3lDl7bff1hNPPKEOHTooNTXVF+hVVlYGPGflypW66KKLlJaWpqysLF111VVav359jYFdJEI8SSouLta1116ro48+Wk2bNlVubq5+97vfadeuXQH7lpWV6aabblJ2draaN2+uc845R//5z39qXcwbOXKkTjrpJDVt2jSk8Ofpp59W7969deyxx6pp06Zq3bq1Lr/8cs2fPz/o+6wrxFu7dq0G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oh2b8QDsom603dVXX62FCxeqpKTE7a5IkioqKtS5c2f1799flZWV1vGysjL5fD6NGDHCOlZdXa0dO3bowIEDAa9RWFgY9LOWkrRw4UIZY1RUVNTo+zcX4tXW1io1NVU+n0/79u2zjldWVqp///5KTU1VbW2tdXznzp2KjY3VsGHDdPLkSev4e++9J4/HoxtvvLHpv5BmMH+MbG+++WabAry6dt555+ndd99t9v2uvPJK65wdO/a7Hk7RCPEAAAhLjo+gcAWLKQB2UTcQ7diMB2AXdSMy1f1sZlpampYsWaKCggIrONu6dav1vI0bN8oYo6ysrIDza2trlZGRIWOMpk6dqqKiImVnZys2NlYZGRkBIZsklZSUKD8/X/n5+Zo4caKMMZo4caJ1rH7AuW7dOsXGxio1NVULFy7UkiVLlJaWptjYWK1bty7o89Rd3XTZZZdp6dKleuCBB9SzZ0/17t07IAhsDeaPkat+gDd69JX64x/f1GuvvdWitnjxcnXq1Mk6Py4uTg8//LBOnTrV4Pv5/X51795dxhj17t1HlZV+18MpGiEeAABhyfERFK5gMQXALuoGoh2b8QDsom44a+vWrVqzZo3WrFmj999/v9H7xoXCmjVrlJ6eLq/Xq65du2rs2LHatm1bwHMaC/Ek6ejRo8rJyVFKSori4+OVkpKinJwcHT16NOi5dVffNdYauirv9ddf16hRo+Tz+eTz+TRq1Ci9/vrrDX4Wv9+vpUuXasiQIUpMTFTPnj01efLkZn8WtCWYP0amt956KyjA+/zzGtvhzrZtn+ib30wP+P/zmDFj9Omnnwa95+7du63nXH31ONeDKRohHgAAYcvxERSuYDEFwC7qBqIdm/EA7KJuOGPDhg0677zzFBMTE9DOO+88bdiwwe3uoQnMHyNPcIB3RasCvLp26NBXmj37p/J4PNZr9uzZUy+++GLA+z7zzDPW4/fck+d6MEUjxAMAIGw5PoLCFSymANhF3UC0YzMegF3UjbZ79913lZiYqKSkJE2fPl2LFi3SokWLNH36dHm9XiUlJWnLli1udxONYP4YWd566y116dIlIMD75z+rHQl61q3bqL59+wVclXfbbbepurpakjR79mzr+HPP/cH1YIpGiAcAQNhyfASFK1hMAbCLuoFox2Y8ALuoG203btw49erVSx9//HHQY7t27VKvXr00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0EcffcQQD4A15A24kY61kyEeALds5Y10zMFITam2fhw8eLAzxHv//b9bH34QRDoEQzwAAHzmeQVNAa+//rqMMbrkkksavP30009Xfn5+k+eJfXTNU089lXDbu+++K2OMSktL445v2LBBWVlZuu+++yS5+8vZmKqqKq1fvz4uYg2FVNlMAbAv1ZowsCsda+fVV1/NEA+AK7E199VXX52QU6qqqtrsv5vqORjpI5XWjzt37lRGRoaMMRow4KvWBx8EkS7BEA8AAJ95XkF9dN111zU7Hn30UedxL774oowxGjduXIPnLSoqUigUavK/f+WVVzb6/RObN2+WMUbf+973nGN1dXU67bTTNHToUNXX10tq2SY49lE3DUUqbKYAJIdUasLAO9TOxGCIB6C5YkO8hqKsrKzJxwc1ByN9pNL68Ve/+pXz+3nNNVOtDz4IIl2CIR4AAD7zvIL6yDSygW4orrrqKudxtv6S9Y477lB2drbeffdd5xjvxANgSyo1YeAdaifvxAPQcq19J15QczDSRyqtH2NDa2OMfve756wPPggiXYIhHgAAPvO8gqYAG98psX37duXk5OjKK6/U+++/78QLL7wgY4wuuugivf/++9q5c2eLnlMqbaYAJAfyBtxIx9rJd+IBcCtI34nX1jkYqSlV1o/19fXq1auXjDHKycnRjh2fWx98EES6BEM8AAB85nkFTREFBQXKzc3V/v374467+cvSdevWyRijK664IuG22Md2VVZWSpLeeuutZv3F7TXXXNOi55MqmykAyYO8AbfSrXYyxAPgls28kW45GKkpVdaP7733nvP/0W984xzrQw+CSKdgiAcAgM88r6Ap4sYbb5QxRvPnz487XlpaKmOMnn/++bjj1dXV2rhxo7744gvnWF1dnaLRqCKRiD744APneE1NjXr16qVoNKq6ujpJ0t69e7Vq1aqEuPfee2WM0bBhw7Rq1Spt2LChRc8nVTZTAJIHeQNupVvtZIgHwC2beSPdcjBSU6qsH3/60586Q7zbb59vfehBEOkUDPEAAPCZ5xU0RdTU1OjEE09UKBRSaWmpKioqNH78eBljNGbMmIT7FxcXyxijrVu3xh1fs2aNQqGQotGo5s+fr0WLFqmwsFChUEhr1qxp8jq8+k6JVNlMAUge5A24lW61kyEeALds5o10y8FITamyfjz//POdId4r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8wcAtC1qJ7UTAADAFj/7pwAAWGO74ALJItYcGzx4sPr27atbbrlFCxYs0FlnndVgQ++tt95Sfn6+wuGwrrvuOi1evFhjxoyRMUYDBgzQZ599lnDuM888U8cff7xuvfVWLV68WCUlJTLG6K677oo79xtvvKHc3Fzl5eVp2rRpuueee/Ttb39b0WhUnTt3blUjcsWKFQqFQiosLNRtt92m+++/X5MmTVJWVpaKi4t18OBB576xRuSZZ56pb3zjG1qwYIHmzZunfv36yRijP/7xj3Hnvueee2SM0QknnKDbb79d8+bN02mnnabTTz89rhG5efNmLViwQMYYXXjhhVqxYoUTMdFoVMcdd5y6du2qiRMn6r777tONN96oSCSiY445Rvv27WvWvwEAoO1QO6mdAAAAtvjZPwUAwBrbBRdIFrFmYY8ePbR7927neF1dnc4//3wZY/TCCy84x4uKipSRkaGXXnop7jw333xzwkddxc7dv39/7d+/3zl+6NAhnXTSSerRo0fcOWLnfvXVV+OO//CHP5QxpsWNyI8//li5ubk699xzdejQobj7rly5UsYYPfzww86xWCPyiiuuiLvv1q1b1a5dO1122WXOsU8++USRSETRaFQ1NTXO8QMHDiQ0ImPnOPzYl0WjURlj9NBDD8Udf+SRR2SM0dKlS5v1bwAAaDvUTmonAACALf51TwEAsMh2wQWSRaxZeOuttybc9vLLL8sYoylTpkiSduzYIWOMzj777IT71tbWKhKJqLCwMOHcS5YsSbh/rLkY++v42Lm/+c1vJtz3o48+alUjMvbX/o899ph27twZFzt27FBubm5cczHWiNy0aVPCuU855RQNHjzY+TnWyJw7d27CfX/xi1+0qBHZrVu3hOM7d+6UMUbXX399M/4FAABtidpJ7QQAALDFn84pAACW2S64QLKINQt/85vfJNz2ySefyBijc889V5L0yiuvyBija665psFzDRw4UOFwOOHczz33XMJ9y8rKZIxRVVWVJOkPf/iDjDH60Y9+1OC5O3To0OJG5A9+8INGv08nFsOHD3fuH2tEfvljwmKKi4vVp08f5+c77rhDxhj99re/TbjvW2+91aJG5NChQxt9XhMnTmzi2QMA2hq1k9oJAABgS9t1SwEASCK2Cy6QLGLNwoYaabFG5HnnnSep6WZhY43IysrKhPvGGpFb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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4iX4Br88tlq/Jf1UAAAAASUVORK5CYII=\" width=\"1332.75\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "d6c93d21dcf5451cb14996022bae7a59",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "interactive(children=(FloatSlider(value=0.0, description='t', max=1.0), Output()), _dom_classes=('widget-inter…"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "a82cbaf97dba4466b8caab0fb6bd71b9",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "interactive(children=(FloatText(value=1.0, description='w_max'), FloatText(value=10.0, description='L_b'), Flo…"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fix, ((ax_geo, ax_Pw, ax_G),\n",
+    "      (ax_eps, ax_s, ax_dG))= plt.subplots(2,3,figsize=(10,6),\n",
+    "                                   tight_layout=True)\n",
+    "\n",
+    "po.sim.stop()\n",
+    "po.sim.run()\n",
+    "\n",
+    "po.plot_geo(ax_geo, 0)\n",
+    "po.hist.plot_Pw(ax_Pw, 0)\n",
+    "po.plot_eps_p(ax_eps, 0)\n",
+    "po.plot_sig_p(ax_eps, 0)\n",
+    "po.plot_s(ax_s, 0)\n",
+    "po.mats_eval.bs_law.plot(ax_s)\n",
+    "ax_sf = ax_s.twinx()\n",
+    "po.plot_sf(ax_sf, 0)\n",
+    "\n",
+    "def update_state(t):\n",
+    "    ax_geo.clear()\n",
+    "    po.plot_geo(ax_geo,t)\n",
+    "    ax_Pw.clear()\n",
+    "    po.hist.plot_Pw(ax_Pw,t)\n",
+    "    ax_eps.clear()\n",
+    "    po.plot_eps_p(ax_eps, t)\n",
+    "    ax_s.clear()\n",
+    "    po.plot_s(ax_s, t)\n",
+    "    ax_sf.clear()\n",
+    "    po.plot_sf(ax_sf, t)\n",
+    "    ax_G.clear()\n",
+    "    po.hist.plot_G_t(ax_G,0.9)\n",
+    "    ax_dG.clear()\n",
+    "    po.hist.plot_dG_t(ax_dG,1)\n",
+    "\n",
+    "def update_material(w_max, L_b, A_f, A_m, E_f, E_m, k_max, step):\n",
+    "    po.w_max = w_max\n",
+    "    po.geometry.L_x = L_b\n",
+    "    po.cross_section.A_f = A_f\n",
+    "    po.cross_section.A_m = A_m\n",
+    "    po.mats_eval.E_f = E_f\n",
+    "    po.mats_eval.E_m = E_m\n",
+    "    po.k_max = k_max\n",
+    "    po.sim.tloop.k_max = k_max\n",
+    "    po.sim.tline.step = step\n",
+    "    po.sim.stop()\n",
+    "    po.sim.run()\n",
+    "    update_state(t_slider.value)\n",
+    "\n",
+    "t_slider = ipw.FloatSlider(value=0, min=0, max=1, step=0.1)\n",
+    "m_sliders = dict(w_max=ipw.FloatText(value=1),\n",
+    "                 L_b = ipw.FloatText(value=10),\n",
+    "                 A_m = ipw.FloatText(value=1),\n",
+    "                 A_f = ipw.FloatText(value=1),\n",
+    "                 E_m = ipw.FloatText(value=1),\n",
+    "                 E_f = ipw.FloatText(value=1),\n",
+    "                 k_max = ipw.IntSlider(value=100, min=10, max=1000, step=20, continuous_update=False), \n",
+    "                 step = ipw.FloatSlider(value=0.05, min=0.001, max=0.2, step=0.005, continuous_update=False))\n",
+    "ipw.interact(update_state, t=t_slider);\n",
+    "ipw.interact(update_material, **m_sliders );"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "# Rendering individual outputs"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 57,
+   "metadata": {
+    "scrolled": false
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABY0AAAIUCAYAAABW/wNFAAAgAElEQVR4nOzdeVBd93n/8XOJ/LMtybKbdNqkVexmmslkUUaJs7hubCeWs7VWJ22cpk0yLek0k7hNk3baTCeN2/GaJq7t1pWTmYp9EZvYhNh3XSSBEBKLECBACK4QAsQudi73vn9/HAlL5iIkOHAuh89r5jueuYd77nO1PNd89OX5GoiIiIiIiIiIBAlDRETsZ/eHgYiIiIiIiIjIdXbnJCIiYig0FhEREREREZHgYXdOIiIihkJjEREREREREQkeduckIiJiKDQWERERERERkeBhd04iIiKGQmMRERERERERCR525yQiImIoNBYRERERERGR4GF3TiIiIoZCYxEREREREREJHnbnJCIiYig0FhEREREREZHgYXdOIiIihkJjEREREREREQkeduckIiJiKDQWERERERERkeBhd04iIiKGQmMRERERERERCR525yQiImIoNBYRERERERGR4GF3TiIiIoZCYxEREREREREJHnbnJCIiYig0FhEREREREZHgYXdOIiIihkJjEREREREREQkeduckIiJiKDQWERERERERkeBhd04iIiKGQmMRERERERERCR525yQiImIoNBYRERERERGR4GF3TiIiIoZC47XU1dXFvn37yMnJwe12a2lpaWlpaWlpaWlpaWk5buXk5LBv3z66uros+V7a7pxEREQMZ4TG6enpPPLII2zdupUHHniAvXv30tDQcEf3OHPmDN/+9rd53/vex1133cVv//Zv8+Uvf5lTp06tuK59+/ZhGIaWlpaWlpaWlpaWlpaWluPXvn37Vvz9840MERGxnyUd3UYREREYhsGuXbvYt28fr732Gg8++CDbt2+nvr7+tu5x8OBB7rrrLnbv3s3Pf/5zoqKi+K//+i++9a1vkZ2dveLacnJyFj447f6XXy0tLS0tLS0tLS0tLS2ttVjXN0zl5OSs+PvnG9kck4iIiGFs7NB4eHiYHTt2sHPnTsbGxhYe93g8bNu2jccff3zZe7S1tXHvvffy7W9/m/n5eUvrc7vdGIaB2+229L4iIiIiIiIiwcLq733tzklERMTY2KFxdHQ0hmHwwgsvLLoWGhqKYRh0dnbe8h7f//732bJlC1euXAFgcnKS2dlZS+pTaCwiIiIiIiJOp9BYRMSBLOno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609o3LdvX912222Ki4vTc889p3bt2qldu3ZauXKl2rZtq6eeekozZszQvffeK2OMHn/8cZ8/k759++r666/XP//5T02ZMkVdunRR8+bNtWrVKp133nl69NFHNX36dP3hD3+Q0+nUr371qyrr9nXvAgBghYZNRQAAPtn9YQAAQLCrDFk7d+6snJwcd39ZWZmGDBkiY4w++OADd78doXFMTIwcDoc2b97s0T9x4kSvULU2oXFVfTW5+uqr9bOf/azG/WobGvfu3VtFRUXu/qKiIvXu3VthYWE6dOhQtefKzc2V0+nUI4884u574okn1KVLFw0aNMgjYP373/8uY4w+/fTTGq/Bn9D44Ycf9uhftmyZjDEKCwvT1q1bPbbdfvvtatGihUfQX3n9t956q8rLy939n376qYwxcjgcWrhwocc4o0ePljFG+/fv91mbITQGAARIQ+ciAAAf7P4wAAAg2FWGrM8//7zXti1btsgYoyeeeMLd19Ch8bfffitjjG6++WavbYWFhYqIiFDPnj29rieQofFNN92kNm3aaNOmTdXuV9vQeP78+V5jzJ8/X8YYTZ06tca6rr32Wl1yyfPlBF0AAAmVSURBVCXuP//0pz/VyJEj9eKLLyoiIkJnz56VJN18883q0KGDR0BbFX9C43379nn05+TkyBijX/ziF17HTJs2TcYYff755+6+yutft26d1/5RUVHq3LmzV39lML1q1SqftRlCYwBAgDR0LgIA8MHuDwMAAIJdZcj61ltveW3Ly8uTMUa33Xabuy8QoXFRUZGOHj3q0U6dOiVJ2r59u4wxevLJJ32e86qrrlJ4eLjX9QQyNN6+fbsuuOAC9xPad911l6ZPn668vLxqr7OmGnbt2uV1rl27dskYo1GjRtVY17hx42SM0aFDh/T111+7g+iPP/5Yxhht2rRJxcXFCg8P129/+1u/rtWf0PiH772WXKHt73//e6/+yv8/5z69Xnn9Bw8e9Hn+AQMGePVv3LhRxhjNmTPHZ22G0BgAECANmYkAAKpg94cBAADBrjLEe/vtt722VYbG577aYOTIkVWGxv37969TaFxZw7mt8pUTH330kYwx+p//+R+f5/xhaDxnzpwqQ+P/9//+nyWhseR6yvntt9/Wk08+qd69e8sYox/96EdKT0+v8jqrOl9l37nvQ660c+dOn+8B9mX9+vUy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\" width=\"1065.75\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fix, ax = plt.subplots(1,1, figsize=(8,3),tight_layout=True)\n",
+    "po.hist.plot_Pw(ax,1)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "All plot functions accept the scalar parameter between the start and end state in the range (0,1)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 58,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,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41OmTFGXLl1CuQTPIhIAQMNw+lrHwToZ+8F//vMfffzxx7bnPv30U91+++0aNmyYXnvttZDN7TWNNRIAgCclJ9s39PfekyxLv3j4jEA0HnR/K1swJhrXrGfPnhoyZIgkae/evfL5fIFI/M033yg+Pl5z5swJ+TqcrSQAAGNMaKPxm2++qWbNmgX+hKVv37624xdccIGuu+66UC7Bs4jGABBax4bjph6Nb775ZtsevW/fPp1yyiny+XyB6x+fjG8VeUFjjQQA4El9+lRs5q1aSZYlWZaueKBtIBoPHdeJaFwHkZGR+s1vfiNJKikp1pteTQAAIABJREFUkc/n01tvvRU4Pn36dJ1zzjkhX4ezlQQAYIwJbTSWpD/96U966KGHNGPGDJWUlASe37Nnj6677jq9/vrroV6CJxGNASC0iMYVzjjjDD3yyCOBx/Pnz5fP59O6deu0e/du9ejRQ9dee23I5veSxhoJAMCT4uMrNvP4eMmyVPbXD3ThPb5ANB45+WyicR20bt1a8+fPlyQdOnRIPp9Py5cvDxzPyck5KZeYdLaSAACMMaGPxqgfojEAhBbRuEJMTIxyc3MDj3/xi18oMTEx8HjWrFnq1KlTyOb3ksYaCQDAc44ckSIjKzbzxETJslTy57dtN8EblX4B0bgOEhISNGnSpMDjrl27Ki0tLfD4rrvuUufOnUO+DmcrCQDAGONMNN64caNee+01ffPNN05M7wlEYwAILaJxhdatW+u5554LPD7ttNM0duzYwONFixYpIiIiZPN7SWONBADgOfv3269nfPnlkmXps/UrbNH4oZkDicZ1cN9996lHjx6Bxw8//LDCwsJ022236Ze//KXCwsJ07733hnwdzlYSAIAxJrTR+Mknn9TVV19te+5nP/tZ4BrHXbp00ZdffhnKJXgW0RgAQquqm+EdO2JipIkTm0Y07t27t4YOHSrp6GWl/H6/1qxZEzg+Y8YMdezYMWTze0ljjQQA4Dmff27fyH/+c8my9NfV823R+JGsFKJxHWzbtk25ubk6ePCgJOngwYMaPnx44N/w1157rb7++uuQr8PZSgIAMMaENhpfcMEF+tWvfhV4/NZbb8nn82nEiBF67LHHFBUVpQcffDCUS/AsojEAhNbx0biqERPTNKJxdna2fD6fzj33XLVp00adOnXSd999FzienJysQYMGhWx+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55xztHnzZtfLceq5556TmWnRokW+/ZbgF6XB/z3dddddYY89+eSTMjPfJ78SyYoVK1S3bl0NGjQo7LErr7xSSUlJ+uijjxyszA0+yYT9YT5XHvN5N+ZzZMznyJjN4ZjP8aumuwgAIALXwwDVi3smVk5xcbHMTOeee27CX5D+9NNPatSokc477zx9+umnvs3M1LlzZ3366af673//63qpNe6mm26SmWncuHFhj73yyisyM91www0OVuZe3759ZWbyPC/ssdmzZ8vM9OijjzpYmRvcMxH7w3yuHObzbsznijGfI2M2h2M+x6+arSIAgIhcDwNUr+CnK4YNGxb2WPDbgT/77DMHK4sdY8aMkZnp/PPP19atW10vx7kNGzb47ntX0XbJJZe4XmqNmzFjhsxMAwcODHssGHnuvfdeBytz7ze/+Y3MTO+8807YY8FPxhUVFTlYmRv7uyi97rrrZGZatmxZ2GN8O3tiYD7vH/PZj/lcMeZzZMzmcMzn+BXdCgIAqBTXwwDVa/369apfv75atGihsrKy0P41a9YoIyNDXbp0cbg690aOHCkzU25ubsRPFCSibdu2afbs2RE3M4KxaVEAAA6oSURBVFO7du00e/ZsvfXWW66XWuPKysp06KGHqlGjRlq/fn1o/7Zt23TKKadUeGGWCG6//XaZmfr16+fbX15erl//+tcyM7355puOVlfz9ndRumjRoohfzjR37tyEjRuJhvm8b8zncMznijGfI2M2h2M+x6+aLyMAgDCuhwGqX/ATFu3bt9eECRNUVFSk7OxsZWRk6P3333e9PGcmTpwoM1OTJk305JNPaubMmWEb/CzB75koSc8884wCgYBat26t0aNHa9y4cerYsaPMTPn5+a6X58znn3+uRo0aycx0wQUXaMKECSouLtbpp58uM9Nll13meolRN2PGDA0fPlzDhw/XUUcdFfois+C2t+Cvuebm5mrq1Km6++67lZaWpuOOO84XEVF7MZ8jYz4fOOYz8zkSZvMuzOfaoebLCAAgjOthgOiYPXu2OnfurLS0NGVlZalHjx5asWKF62U5Ffz1331t8DMuSiVJCxcuVLdu3VS/fn3VrVtXJ598siZNmqTy8nLXS3NqzZo1uuGGG5Sdna2UlBSlpaXp5JNPVlFRkbZv3+56eVEX/PRSZd9Ptm3bppEjR+qYY45RamqqmjZt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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPHE062AkV2X8TAAAAABJRU5ErkJggg==\" width=\"1065.75\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "image/png": "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\n",
+      "text/latex": [
+       "$\\displaystyle \\left( -1.3877794425259357e-16, \\  0.9646870597257053\\right)$"
+      ],
+      "text/plain": [
+       "(-1.3877794425259357e-16, 0.9646870597257053)"
+      ]
+     },
+     "execution_count": 58,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "fix, (ax1, ax2) = plt.subplots(1,2, figsize=(8,3),tight_layout=True)\n",
+    "po.plot_eps_p(ax1, 0.2)\n",
+    "po.plot_s(ax2, 0.2)\n",
+    "ax22 = ax2.twinx()\n",
+    "po.plot_sf(ax22, 0.2)\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "To use the plots of the simulations in documents, the diagrams of the above simulation\n",
+    "are replotted here with the goal to show the code snippets producing individual diagrams."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 28,
+   "metadata": {
+    "scrolled": false,
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABY0AAAIUCAYAAABW/wNFAAAgAElEQVR4nOzde1gU9f4H8M8uyG0Br3lJAk09mpF5KS95wbyUKf46nrK0MrObelLrmEbH8hZZxyOmR8srYoZmZqapdcpUsjxaeTK1AvMGqJmnEBTDUGHfvz+KyXVZWXaH+Q7D+/U87+fJ2dnZ78zal523w6yAiIiIiIiIiMgkhIiI1FP9w4CIiIiIiIiIqITqnoSIiISlMRERERERERGZh+qehIiIhKUxEREREREREZmH6p6EiIiEpTERERERERERmYfqnoSIiISlMRERERERERGZh+qehIiIhKUxEREREREREZmH6p6EiIiEpTERERERERERmYfqnoSIiISlMRERERERERGZh+qehIiIhKUxEREREREREZmH6p6EiIiEpTERERERERERmYfqnoSIiISlMRERERERERGZh+qehIiIhKUxEREREREREZmH6p6EiIiEpTERERERERERmYfqnoSIiISlMRERERERERGZh+qehIiIhKUxEREREREREZmH6p6EiIiEpTERERERERERmYfqnoSIiISlMRERERERERGZh+qehIiIhKWxWWRlZWHOnDnYuHEjtm3bxjAMwzCVNhs3bsScOXOQlZWl+serqfFnP8MwDGOV6P2zX3VPQkREwtLYLObMmQMRYRiGYRjLZM6cOap/vJoaf/YzDMMwVoteP/uFiIjU02VGJ79t3LhR+yGr+l+JGYZhGMaflJShGzduVP3j1dT4s59hGIaxSvT+2a+2JSEiIhFhaWwW27Ztg4hg27ZtqodCRETkF/5M8w6PExERWYXeP9PUtiRERCQiLI3NgieORERkFfyZ5h0eJyIisgqWxkREFqTLjE5+44kjERFZBX+meYfHiYiIrIKlMRGRBekyo5PfeOJIRERWwZ9p3uFxIiIiq2BpTERkQbrM6OQ3njgSEZFV8Gead3iciIjIKlgaExFZkC4zOvmNJ45ERGQV/JnmHR4nIiKyCpbGREQWpMuMTn4rzw/Z8+fP48SJEzhw4AC+//57xkQ5cOAAsrOzkZeXB6fTacDfHCIi82EZ6h0eJyKyIp6rWCMHDhzAiRMncP78ea/ed5bGREQWpMuMrtiaNWvQoUMHhIWFoUaNGoiPj8fevXu9eu7+/fsxbtw49OzZE7Vq1YKIYOjQ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AgKQmprqcb1169Zh/fr1Lss+++wziAiWLFnitn5ZpfHp06cREhKCESNG+DRulsYevPGGVhgX1qmDTzdsUP53lGEYlsYq8DgRmdf333+vlcYDB97nsTRu0+YmiAjsdjuKi4tVD5tIGZbGREQWpMuMTn5jaezZvHnzICIYN25cuZ/7xBNPQERw8uRJl+Xy+0nA5Vm6dKnLer169ULNmjV9OglgaVyKkyeBWrW00njftGnK/34yDPNbWBobj8eJyLy2b9+ufT7861+f8lga9+hxm7Zebm6u6mETKcPSmIjIgnSZ0clvLI096969O0QEhw4dKvdzW7ZsiUaNGrktT01NRYsWLVCnTh2kpqZqOXz4sMt6kyZNgojgq6++KvdrszQuxcCBWmF8skcP5X83GYb5IyyNjcfjRGRea9eu1crgSZOmeSyN77prkLaeL59ViayCpTERkQXpMqOT31gae1a7dm1ERESU+tjPP//sktOnT2uPFRcXw263o1evXqU+t6zbUwC/lcsigtdff73c42ZpfJl339UK4/PVq2P72rXK/24yDPNHWBobj8eJyLwWLVqklcFz5izyWBo/9tgT2npffPGF6mETKcPSmIjIgnSZ0clvLI09CwwMRMOGDd2WX7x40e32EnFxcdrjP/30E0QE9957b6nb9aY0/uCDDyAi+Oc//1nucbM0vkRuLlC/vlYaf/f888r/XjIM4xqWxsbjcSIyr2nTpmmfL998c63H0viZZyZq6/373/9WPWwiZVgaExFZkC4zOvmNpbFnnq40djqd+Pjjj7WIh9L4nnvuKXW73pTG77//PkQEM2bMKPe4WRpfYtgwrTD+uVMnpG3dqvzvJcMwrmFpbDweJyLzeuqpp7QyeNOm7R5L43/8Y7a23vLly1UPm0gZlsZERBaky4xOfmNp7FnJPY0PHjx4xfXkstK4uLgYAQEB6NmzZ6nre1Mav/HGGxARLFu2rLzDZmlcYtMmrTC+6HBgx9tvK/87yTCMe1gaG4/Hici87r//fq0M/uqr7z2WxgsXvnHJbSzmqB42kTIsjYmILEiXGZ38xtLYs3nz5kFE8PTTT19xPbmsNAaAG264AdHR0aWu37179zJL44kTf/uVw927d5dnyABYGgMAzp4FYmK00nj/2LHK/z4yDFN6KlNpvGbNGnTo0AFhYWGoUaMG4uPjsXfvXq+f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L+s6oNqsW/fP187kyetzD/yUKrV6QmhcTXM/oneGxps3b47f//738b3vfS+GDRvWaVA8bNjwaGw8OW677e7YsGFz7sGeUpWqCy/8efv3/W233Zb3yxNKIjQGqEJlOaPn5LTTTouUUtx1111b7bv22msjpRQ33nhjl49vbW2N+vr6GD16dKf7DzzwwKivr4/W1taIiHjooYcipRTTpk3b6mvff//9qKmpicMPPzzTsZRzyL753IZobvxDfGvs/TG85s0uQ+J+6f346rD/F7/45rJYtfjpaP2oteQ/G3qLjz6K6N9/y2tp2LAP4phj1inVo+uHP/wgFi8uz+ujUmFoNc39iPL26Q9/+EOcddZZha7vfOc7sfPOO3caFA8ZMiSmTWuMm2/+n3jzzQ9zD/OU6o76z//8r/bXwGGHHZb7a1T1zvrkP6JmJTQGqEJlOaPn5Igjtnx4xBNPPLHVvjvvvDNSSnH55Zd3+fg33ngjUkoxadKkTvcfd9xxkVKKN998MyIibr755kgpxbnnntvp148YMSL22muvba57zZo1sXz58g7V1NRUtiH7yKInugyK/1e/1fGjve+NOy/6U7zz13dK/rOgN/vc57q+vYtSPbFOP708r41KhcY9de5HVH72X3nllZHS1mFskau+vj6OO+7bccMNv4k33ngv3nknlOpV9d//fUPur0OlHn744ZJnUITQGKAqleWMnpOvfOUrkVKK1atXb7XvnnvuiZRSzJ49u8vHv/jii5FS6vIeiG33MVy3bl1ERFx//fWRUooLL7yw068fO3ZsfOYzn9nmumfNmtXl0C7HkP1o80cxoub1SCliaHorjvm3B2Le9OWx5r51JT838E8XX5x/yKdUOavooXFPnfsRlZ/9PSU0rquri2OPPTYWL14cmzZtKvm4oSdbv359l7dpUaq7SmgMQJfKckbPSU99x1Gl320UEbH4/zwQ91/zWGx+b3NZng/o3FNPRTz4oFLVUc8/X57XhXcab63Ss//VV1+NBx98sND18MMPx8aNG0s+VqgmGzduzP21qXp3leu8LDQGqEJlOaPnpBz3Nhw4cGAh7m3YGz8MB4DqVOR7Ghdl7keY/QBUD6ExQBUqyxk9J9ddd12klOLiiy/eal/bp6g/v423TR188MGRUv6fou7CEYBqUamZVk1zP8LsB6B6CI0BqlBZzug52bBhQwwePDjGjBkTb7/9dvv2tWvXRn19fRx00EHt2zZt2hRPPvlkvPLKKx2eY/78+ZFSihkzZnTYfvnll0dKKZqbmztsP/HEEyOlFEuWLOmw/cgjj4za2tp46qmnMh2LC0cAqkWlZlo1zf0Isx+A6iE0BqhCZTmj56jt11EnTpwYV155ZcyZMyfGjx8f9fX1sWLFivava3tHUGNjY4fHt7S0RENDQ6SU4qSTTorm5uaYMWNG1NbWRkNDQ7S0tHT4+rVr18bIkSNj4MCBMXPmzJg/f377PRbPP//8zMfhwhGAalHJmVYtcz/C7AegegiNAapQWc7oOVu8eHFMmjQp6urqYujQoTF16tRYuXJlh6/p6uIxYssHUJxzzjkxbty46Nu3b4wbNy7OOeecLj8U4Pnnn48TTjghdtppp+jfv3/stddecc0117TfAzELF44AVItKz7RqmPsRZj8A1UNoDFCFynJGp2QuHAGoFmba9tEnAKqF0BigCpXljE7JXDgCUC3MtO2jTwBUC6ExQBUqyxmdkrlwBKBamGnbR58AqBZCY4AqVJYzOiVz4QhAtTDTto8+AVAthMYAVagsZ3RK5sIRgGphpm0ffQKgWgiNAapQWc7olMyFIwDVwkzbPvoEQLUQGgNUobKc0SnZ0qVLI6UUTU1NsXz5cqWUUqrHVlNTU6SUYunSpXmP10Iz+5VSSlVLlXv255uSAJBSEhoXRduQVUoppaqljXWxGAAAFIJJREFUmpqa8h6vhWb2K6WUqrYq1+xPAOSvLGd0SrZmzZpoamqKpUuXlvVfer17Sf/0rueU3ulftfRu6dKl0dTUFGvWrMl7vBaa2V+c0jv907ueV3pXrP6Ve/bnk44A0EFZzugUzvLl7pNYCv3LTu+y07vS6F92elcd/D1mp3el0b/s9C47vStN0fuXTzoCQAd5DwMqo+g/BBSd/mWnd9npXWn0Lzu9qw7+HrPTu9LoX3Z6l53elabo/csnHQGgg7yHAZVR9B8Cik7/stO77PSuNPqXnd5VB3+P2eldafQvO73LTu9KU/T+5ZOOANBB3sOAyij6DwFFp3/Z6V12elca/ctO76qDv8fs9K40+ped3mWnd6Upev/ySUcA6CDvYUBlrFmzJmbNmuVDiDLSv+z0Lju9K43+Zad31cHfY3Z6Vxr9y07vstO70hS9f3nnJAAkoTEAAABQHHnnJAAkoTEAAABQHHnnJAAkoTEAAABQHHnnJAAkoTEAAABQHHnnJAAkoTEAAABQHHnnJAAkoTEAAABQHHnnJAAkoTEAAABQHHnnJAAkoXFPs2TJkth///1j4MCBseOOO8YRRxwRq1at2u7Hb9q0Kc4777wYP3589OvXL8aPHx/nnXdebNq0qYKrLoZSenf77bfH97///dhzzz1j0KBBsfPOO8cBBxwQCxYsiM2bN1d45cVQ6vfexz366KOxww47REopFi5cWN6FFlA5evfYY4/FtGnTYtddd42+ffvGyJEj47DDDotHHnmkQqsuhlJ7t2rVqjj++ONj/Pjx0b9//xg7dmwcffTRcf/991dw1cVwySWXxLe+9a2YMGFC1NTURNaR35vnRlGY/dmZ/dmZ+6Ux+7Mz+7Optrmfb0oCQEpJaNyTNDc3R0opJk6cGE1NTXHZZZfFuHHjYtCgQbFy5cptPr6lpSWmTJkSKaWYPn16zJ8/P84888yora2NQw45JFpaWrrhKPJRau9GjhwZu+22W5x11lkxb968mDNnTuy3336RUoqpU6dGa2trNxxFfkrt38dt3rw59tlnnxg0aFCvuHgsR+9uuumm6Nu3b+y9997x7//+73HdddfFL37xi/j2t78dd9xxR4WPID+l9u7hhx+O/v37x8iRI+PCCy+M5ubmuOCCC2KXXXaJPn36xG9/+9tuOIr8pJRixx13jC9/+csxatSoTBePvXluFIXZn53Zn525XxqzPzuzP7tqm/vdmYkA0IVuO+tTkg0bNsSQIUNizJgx8fbbb7dvX7t2bdTX10dDQ8M2n2PBggWRUooZM2Z02D5nzpxIKcWCBQvKvu4iKEfv7r777q0uDltaWuKggw6KlFLceeedZV93UZSjfx93ySWXxODBg2P27NlVf/FYjt4988wzUVdXF9OmTavqcOeTytG7E088MVJKsWLFig7bH3nkkUgpxdFHH132dRfJc8891/7fbReA/6reOjeKwuzPzuzPztwvjdmfndlfmmqb+92diwDQiW4761OShQsXRkopLrrooq32NTY2RkopXnjhhU99jrYfHtasWdNh+7vvvht1dXUxZcqUMq64OMrRu6788pe/jJRSXHLJJSWusrjK2b+nn346BgwYEE1NTe3PW80Xj+Xo3SmnnBI77LBDvP766xGx5VcGP/jgg0ost1DK0bsjjjgiUkrx17/+tcP21157LVJKMW3atHIuudCyXjz21rlRFGZ/dmZ/duZ+acz+7Mz+8qmGuV/pHASA7dBtZ31Kctppp0VKKe66666t9l177bWRUoobb7yxy8e3trZGfX19jB49utP9Bx54YNTX11flr1qW2rtPc+6551b1O7Uiyte/1tbWaGhoiP333z8++uijXnHxWI7ejR49OiZOnBhLly6Nz3/+85FSipqamthnn31i6dKllVp67srRu7lz50ZKKQ499NB48MEH46WXXooHHnggvvrVr8aOO+4Yjz76aKWWXzhZLh5789woCrM/O7M/O3O/NGZ/dmZ/+VTD3O+OLASAbeiWMz4la/tX8yeeeGKrfXfeeWeklOLyyy/v8vFvvPFGpJRi0qRJne4/7rjjIqUUb775ZtnWXBSl9q4r69ati6FDh8awYcOqsm9tytW/uXPnRt++feOxxx6LiOgVF4+l9u6tt96KlFIMHz48dthhhzj11FNjyZIl0dTUFKNGjYqampq4+eabK3kIuSnH911LS0ucd9557ffRbKs999wznnzyyUotvZCyXDz25rlRFGZ/dmZ/duZ+acz+7Mz+8qmGuV+5BASA7dYtZ3xK9pWvfCVSSrF69eqt9t1zzz2RUorZs2d3+fgXX3wxUkpd3gts+vTpkVKKdevWlW3NRVFq7zqzcePG2GeffaKmpiZuueWWci21kMrRv7Vr18bgwYPj/PPPb9/WGy4eS+3dunXr2i92zj777A77nnzyydhhhx1i7NixVfkuwXK9bufOnRuTJ0+OSy+9NG677bZoamqK3XbbLXbdddf2IKM3yHLx2JvnRlGY/dmZ/dmZ+6Ux+7Mz+8unGuZ+ZVMQALZLt5zxKZl3G2VX7ncbbdy4MRoaGqKmpiauuuqqci61kMrRv2984xsxYcKEeO+999q39YaLx3K9brt6joMPPjhSSlX5zplyfN+dd955UVtbG6tWreqw/eWXX44hQ4bEF7/4xbKuuciq4R1HvZHZn53Zn525XxqzPzuzv3yqYe5XMgMBYDt1yxmfkpXjvoYDBw4szD2qulM572v497//Pb70pS9FTU1NXH311eVeaiGV2r9bbrklUkpx7bXXxrPPPttel156aaSU4tJLL41nn3023nnnnUoeRi7KdT/SlFL87W9/22r/8ccfHymluP/++8u6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\" width=\"1065.75\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fix, (ax1, ax2) = plt.subplots(1,2, figsize=(8,3),tight_layout=True)\n",
+    "po.hist.plot_G_t(ax1,0.9)\n",
+    "po.hist.plot_dG_t(ax2,1)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.7.6"
+  },
+  "toc": {
+   "base_numbering": 1,
+   "nav_menu": {},
+   "number_sections": true,
+   "sideBar": true,
+   "skip_h1_title": true,
+   "title_cell": "Table of Contents",
+   "title_sidebar": "Contents",
+   "toc_cell": false,
+   "toc_position": {
+    "height": "calc(100% - 180px)",
+    "left": "10px",
+    "top": "150px",
+    "width": "203.5px"
+   },
+   "toc_section_display": true,
+   "toc_window_display": false
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/bmcs_course/PullOut-InteractiveApp.ipynb b/bmcs_course/PullOut-InteractiveApp.ipynb
new file mode 100644
index 0000000..a651a73
--- /dev/null
+++ b/bmcs_course/PullOut-InteractiveApp.ipynb
@@ -0,0 +1,618 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "# Seminar work\n",
+    "# Adjust to the material parameters in the PO-LF-LM-EL-SH app\n",
+    "\n",
+    "\n",
+    "@author: rosoba"
+   ]
+  },
+  {
+   "attachments": {
+    "image.png": {
+     "image/png": "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"
+    }
+   },
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "## Idealization of the pull-out problem\n",
+    "The one-dimensional idealization of the pull-out looks as follows\n",
+    "\n",
+    "![image.png](attachment:image.png)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Model parameters"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "The parameters and variables involved in the are grouped according geometry, material behavior, measured response, internal state and subsidiary integration parameters that will be resolved during the model derivation. In this classification we also associate the mathematical symbols with the Python variable name introduced in the next cell."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Geometrical variables:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `A_f` | $A_\\mathrm{f}$ |  Cross section area modulus of the reinforcement |\n",
+    "| `A_m` | $A_\\mathrm{m}$ |  Cross section area modulus of the matrix |\n",
+    "| `p_b` | $p_\\mathrm{b}$ |  Perimeter of the reinforcement                  |\n",
+    "| `L_b` | $L_\\mathrm{b}$ |  Length of the bond zone of the pulled-out bar   |\n",
+    "| `x`   | $x$            |  Longitudinal coordinate |\n",
+    "\n",
+    "**Material parameters:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `E_f`     | $E_\\mathrm{f}$ |  Young's modulus of the reinforcement |\n",
+    "| `E_m`     | $E_\\mathrm{m}$ |  Young's modulus of the matrix        |\n",
+    "| `MATS`    | $\\tau(s)$      |  Multi-linear bond-slip model         |\n",
+    "\n",
+    "(`MATS` is used to denote \"Material Time Stepper\" -- equivalent to user-subroutine in Abaqus, or user material in ATENA) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Control parameter:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `P` | $P$ | Pullout force |\n",
+    "| `w` | $w$ | pullout control  displacement\n",
+    "\n",
+    "**State parameter:**\n",
+    "\n",
+    "There are no state parameters included. \n",
+    "\n",
+    " - What is the consequence? The material has no memory.\n",
+    " - What happens upon unloading?"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Let's import the packages:**"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "%matplotlib widget\n",
+    "import numpy as np # numerical package\n",
+    "import matplotlib.pyplot as plt # plotting package\n",
+    "import ipywidgets as ipw"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Numerical model of pull-out provided in BMCS Tool Suite \n",
+    "The presented function is the simplest model provided in a general-purpose nonlinear finite-element simulator `BMCS-Tool-Suite`. This code can be installed in your anaconda environment by issuing the installation command\n",
+    "\n",
+    "`pip install --upgrade bmcs`\n",
+    "\n",
+    "After the installation it should be possible to import the `PullOutModel` by issuing"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "A_f = 0.5**2 * np.pi\n",
+    "A_m = 10 * 10.\n",
+    "P_b = np.pi * 1.0\n",
+    "E_f = 280000.\n",
+    "E_m = 28000.\n",
+    "L_b = 200.\n",
+    "s_data = '0, 0.06, 0.3, 1, 2'\n",
+    "tau_data = '0., 1, 0.0, 0.0, 0.0'"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {
+    "scrolled": true,
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{k_max} & k_{\\max} = 200 & \\textrm{[-]} & \\textrm{maximum number of iterations}  \\\\\n",
+       "                \\textrm{tolerance} & \\epsilon = 0.0001 & \\textrm{[-]} & \\textrm{required accuracy}  \\\\\n",
+       "                \\textrm{n_e_x} & n_\\mathrm{E} = 60 & \\textrm{[-]} & \\textrm{number of finite elements along the embedded length}  \\\\\n",
+       "                \\textrm{mats_eval_type} & \\textrm{multilinear} & & \\textrm{material model type}  \\\\\n",
+       "                \\textrm{control_variable} & \\textrm{u} & & \\textrm{displacement or force control: [u|f]}  \\\\\n",
+       "                \\textrm{w_max} & w_{\\max} = 1.0 & \\textrm{[mm]} & \\textrm{maximum pullout slip}  \\\\\n",
+       "                \\textrm{fixed_boundary} & \\textrm{non-loaded end (matrix)} & & \\textrm{which side of the specimen is fixed [non-loaded end [matrix], loaded end [matrix], non-loaded end [reinf]]}  \\\\\n",
+       "                \\hline\n",
+       "        \\textbf{loading_scenario} & \\textrm{LoadingScenario} & & \\textrm{object defining the loading scenario} \\\\\n",
+       "            \\textbf{cross_section} & \\textrm{CrossSection} & & \\textrm{cross section parameters} \\\\\n",
+       "            \\textbf{geometry} & \\textrm{Geometry} & & \\textrm{geometry parameters of the boundary value problem} \\\\\n",
+       "            \\textbf{mats_eval} & \\textrm{MATSBondSlipMultiLinear} & & \\textrm{material model of the interface} \\\\\n",
+       "            \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.PullOutModel at 0x7f06ad382410>"
+      ]
+     },
+     "execution_count": 3,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "from bmcs.pullout.pullout_sim import PullOutModel\n",
+    "po = PullOutModel(n_e_x=60, k_max=200, w_max=1.0)\n",
+    "po"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{A_m} & A_\\mathrm{m} = 100.0 & \\textrm{[$\\mathrm{mm}^2$]} & \\textrm{matrix area}  \\\\\n",
+       "                \\textrm{A_f} & A_\\mathrm{f} = 0.7853981633974483 & \\textrm{[$\\mathrm{mm}^2$]} & \\textrm{reinforcement area}  \\\\\n",
+       "                \\textrm{P_b} & p_\\mathrm{b} = 3.141592653589793 & \\textrm{[$\\mathrm{mm}$]} & \\textrm{perimeter of the bond interface}  \\\\\n",
+       "                \\hline\n",
+       "        \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.CrossSection at 0x7f06aa128a10>"
+      ]
+     },
+     "execution_count": 4,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "po.sim.tline.step = 0.05\n",
+    "po.sim.tloop.k_max = 200\n",
+    "po.fixed_boundary = 'non-loaded end (matrix)'\n",
+    "po.loading_scenario.trait_set(loading_type='cyclic',\n",
+    "                              amplitude_type='constant',\n",
+    "                              loading_range='non-symmetric'\n",
+    "                              )\n",
+    "po.loading_scenario.trait_set(number_of_cycles=1,\n",
+    "                              unloading_ratio=0.98,\n",
+    "                              )\n",
+    "po.geometry.trait_set(L_x=1.0)\n",
+    "po.cross_section.trait_set(A_f=A_f, P_b=P_b, A_m=A_m)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Run the simulation\n",
+    "The model object `po` contains the non-linear threaded simulator `sim` as its attribute. To be sure that the state arrays and history variables are zeroed and reset run the methods `stop` first. After that, the simulation can be started."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {
+    "hide_input": false,
+    "scrolled": false,
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "3c268ef872a14dcba43a0643b66360a6",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Canvas(toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Back', 'Back to previous …"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "bf4f6101ae42472c83991baf3e934221",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Canvas(toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Back', 'Back to previous …"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "8e7306d6d31149f29c0a04477ab09ee8",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Canvas(toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Back', 'Back to previous …"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "1aa172122d114d6799470f45fc76b468",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "VBox(children=(Tab(children=(HBox(children=(VBox(children=(Button(description='Run simulation', icon='check', …"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fig1, (ax_geo, ax_bs) = plt.subplots(2,1, figsize=(4,5), \n",
+    "                                   tight_layout=True)\n",
+    "fig2, ((ax_Pw, ax_s),\n",
+    "      (ax_eps, ax_sig))= plt.subplots(2,2,figsize=(10,6),\n",
+    "                                   tight_layout=True)\n",
+    "fig3, (ax_G, ax_dG) = plt.subplots(1,2, figsize=(10,4), \n",
+    "                                   tight_layout=True)\n",
+    "ax_sf = ax_s.twinx()\n",
+    "\n",
+    "fig1.canvas.header_visible = False\n",
+    "fig2.canvas.header_visible = False\n",
+    "fig3.canvas.header_visible = False\n",
+    "fig2.canvas.layout.min_height = '400px'\n",
+    "\n",
+    "po.sim.stop()\n",
+    "po.sim.run()\n",
+    "\n",
+    "def update_bs_law(change):\n",
+    "    s = slip_values.value\n",
+    "    tau = tau_values.value\n",
+    "    ax_bs.clear()\n",
+    "    po.mats_eval.s_data = s\n",
+    "    po.mats_eval.tau_data = tau\n",
+    "    po.mats_eval.update_bs_law = True\n",
+    "    po.mats_eval.bs_law.replot()\n",
+    "    po.mats_eval.bs_law.plot(ax_bs, color='green')\n",
+    "    fig1.canvas.draw()\n",
+    "    fig1.canvas.flush_events()\n",
+    "\n",
+    "slip_values = ipw.Text(\n",
+    "    value=s_data,\n",
+    "    placeholder='Type something',\n",
+    "    description='slip values',\n",
+    "    disabled=False\n",
+    ")\n",
+    "\n",
+    "tau_values = ipw.Text(\n",
+    "    value=tau_data,\n",
+    "    placeholder='Type something',\n",
+    "    description='tau values:',\n",
+    "    disabled=False\n",
+    ")\n",
+    "\n",
+    "update_bs_button = ipw.Button(\n",
+    "    description='Update bond-slip',\n",
+    "    disabled=False,\n",
+    "    button_style='', # 'success', 'info', 'warning', 'danger' or ''\n",
+    "    tooltip='Update bond-slip law',\n",
+    "    icon='check'\n",
+    ")\n",
+    "\n",
+    "update_bs_button.on_click(update_bs_law)\n",
+    "bs_input = ipw.VBox([update_bs_button, slip_values, tau_values])\n",
+    "\n",
+    "update_bs_law(True)\n",
+    "\n",
+    "def clear_plots():\n",
+    "    print('cleared plots')\n",
+    "    ax_geo.clear()\n",
+    "    ax_Pw.clear()\n",
+    "    ax_eps.clear()\n",
+    "    ax_sig.clear()\n",
+    "    ax_s.clear()\n",
+    "    ax_sf.clear()\n",
+    "    ax_G.clear()\n",
+    "    ax_dG.clear()\n",
+    "\n",
+    "def plot_state(t):\n",
+    "    clear_plots()\n",
+    "    po.plot_geo(ax_geo,t)\n",
+    "    po.hist.plot_Pw(ax_Pw,t)\n",
+    "    po.plot_eps_p(ax_eps, t)\n",
+    "    po.plot_sig_p(ax_sig, t)\n",
+    "    po.plot_s(ax_s, t)\n",
+    "    po.plot_sf(ax_sf, t)\n",
+    "    po.hist.plot_G_t(ax_G,0.9)\n",
+    "    po.hist.plot_dG_t(ax_dG,1)\n",
+    "    fig2.canvas.draw()\n",
+    "    fig2.canvas.flush_events()\n",
+    "\n",
+    "def update_material(w_max, support_at, L_b, P_b, A_f, A_m, E_f, E_m, k_max, step):\n",
+    "    print('updating material')\n",
+    "    po.w_max = w_max\n",
+    "    po.geometry.L_x = L_b\n",
+    "    po.cross_section.A_f = A_f\n",
+    "    po.cross_section.P_b = P_b\n",
+    "    po.cross_section.A_m = A_m\n",
+    "    po.mats_eval.E_f = E_f\n",
+    "    po.mats_eval.E_m = E_m\n",
+    "    po.k_max = k_max\n",
+    "    po.sim.tloop.k_max = k_max\n",
+    "    po.sim.tline.step = step\n",
+    "\n",
+    "@run_output.capture(clear_output=True)\n",
+    "def run_sim(run_state):\n",
+    "    print('running simulation')\n",
+    "    po.sim.stop()\n",
+    "    po.sim.run()\n",
+    "    print('simulation finished')\n",
+    "    plot_state(t_slider.value)\n",
+    "    tab.selected_index = 1\n",
+    "\n",
+    "support_dd = ipw.Dropdown(\n",
+    "    options=[('non-loaded end (matrix)'), ('loaded end (matrix)')],\n",
+    "    value='loaded end (matrix)',\n",
+    "    description='support at:',\n",
+    "    disabled=False,\n",
+    ")\n",
+    "\n",
+    "t_slider = ipw.FloatSlider(description='history slider', \n",
+    "                           value=0, min=0, max=1, step=0.1, continuous_update=False)\n",
+    "m_sliders = dict(w_max=ipw.FloatText(description='w_max', value=1),\n",
+    "                 support_at = support_dd,\n",
+    "                 L_b = ipw.FloatText(description='L_b', value=L_b),\n",
+    "                 P_b = ipw.FloatText(description='P_b', value=P_b),\n",
+    "                 A_m = ipw.FloatText(description='A_m', value=A_m),\n",
+    "                 A_f = ipw.FloatText(description='A_f', value=A_f),\n",
+    "                 E_m = ipw.FloatText(description='E_m', value=E_m),\n",
+    "                 E_f = ipw.FloatText(description='E_f', value=E_f),\n",
+    "                 k_max = ipw.IntSlider(description='iter n', value=300, min=10, max=1000, step=20, continuous_update=False), \n",
+    "                 step = ipw.FloatSlider(description='step size',value=0.05, min=0.001, max=0.2, step=0.005, continuous_update=False))\n",
+    "\n",
+    "run_button = ipw.Button(\n",
+    "    description='Run simulation',\n",
+    "    disabled=False,\n",
+    "    button_style='', # 'success', 'info', 'warning', 'danger' or ''\n",
+    "    tooltip='Start the simulation',\n",
+    "    icon='check'\n",
+    ")\n",
+    "\n",
+    "run_button.on_click(run_sim)\n",
+    "out1 = ipw.interactive_output(plot_state, {'t':t_slider});\n",
+    "out2 = ipw.interactive_output(update_material, m_sliders );\n",
+    "out_area = ipw.HBox([out1, out2, run_output])\n",
+    "s_list = [ val for val in m_sliders.values() ]\n",
+    "\n",
+    "\n",
+    "# Layout\n",
+    "input_param_area = ipw.VBox(s_list)\n",
+    "input_area = ipw.VBox([run_button, input_param_area, bs_input])\n",
+    "plot_area1 = ipw.HBox([input_area, fig1.canvas])\n",
+    "plot_area2 = ipw.VBox([fig2.canvas, t_slider])\n",
+    "plot_area3 = ipw.VBox([fig3.canvas, t_slider])\n",
+    "tab = ipw.Tab()\n",
+    "tab.children = [plot_area1, plot_area2,plot_area3]\n",
+    "tab.set_title(0,'Input')\n",
+    "tab.set_title(1,'Plot response')\n",
+    "tab.set_title(2,'Plot energy')\n",
+    "app_area = ipw.VBox([tab, out_area])\n",
+    "display(app_area)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "# Rendering individual outputs"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "scrolled": false
+   },
+   "outputs": [],
+   "source": [
+    "fix, ax = plt.subplots(1,1, figsize=(8,3),tight_layout=True)\n",
+    "po.hist.plot_Pw(ax,1)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "All plot functions accept the scalar parameter between the start and end state in the range (0,1)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "fix, (ax1, ax2) = plt.subplots(1,2, figsize=(8,3),tight_layout=True)\n",
+    "po.plot_eps_p(ax1, 0.2)\n",
+    "po.plot_s(ax2, 0.2)\n",
+    "ax22 = ax2.twinx()\n",
+    "po.plot_sf(ax22, 0.2)\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "hide_input": false
+   },
+   "source": [
+    "To use the plots of the simulations in documents, the diagrams of the above simulation\n",
+    "are replotted here with the goal to show the code snippets producing individual diagrams."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {
+    "scrolled": false,
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "fix, (ax1, ax2) = plt.subplots(1,2, figsize=(8,3),tight_layout=True)\n",
+    "po.hist.plot_G_t(ax1,0.9)\n",
+    "po.hist.plot_dG_t(ax2,1)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.7.6"
+  },
+  "toc": {
+   "base_numbering": 1,
+   "nav_menu": {},
+   "number_sections": true,
+   "sideBar": true,
+   "skip_h1_title": true,
+   "title_cell": "Table of Contents",
+   "title_sidebar": "Contents",
+   "toc_cell": false,
+   "toc_position": {
+    "height": "calc(100% - 180px)",
+    "left": "10px",
+    "top": "150px",
+    "width": "203.5px"
+   },
+   "toc_section_display": true,
+   "toc_window_display": false
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/bmcs_course/SeminarWorkHowTo.ipynb b/bmcs_course/SeminarWorkHowTo.ipynb
new file mode 100644
index 0000000..68a2bf4
--- /dev/null
+++ b/bmcs_course/SeminarWorkHowTo.ipynb
@@ -0,0 +1,4489 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "# Seminar work - how to adapt the PO-LF-LM-EL-SH\n",
+    "\n",
+    "@author: rosoba\n",
+    "\n",
+    "This notebook is an adapted version of the notebook [3_1_PO_LF_LM_EL_FE_CB.ipynb](3_1_PO_LF_LM_EL_FE_CB.ipynb) and is prepared for adjustments needed to simulate the pull-out tests with parameters relevant for tasks specified within the seminar work."
+   ]
+  },
+  {
+   "attachments": {
+    "image.png": {
+     "image/png": "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"
+    }
+   },
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "## Idealization of the pull-out problem\n",
+    "The one-dimensional idealization of the pull-out looks as follows\n",
+    "\n",
+    "![image.png](attachment:image.png)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Model parameters"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "source": [
+    "The parameters and variables involved in the are grouped according geometry, material behavior, measured response, internal state and subsidiary integration parameters that will be resolved during the model derivation. In this classification we also associate the mathematical symbols with the Python variable name introduced in the next cell."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Geometrical variables:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `A_f` | $A_\\mathrm{f}$ |  Cross section area modulus of the reinforcement |\n",
+    "| `A_m` | $A_\\mathrm{m}$ |  Cross section area modulus of the matrix |\n",
+    "| `p_b` | $p_\\mathrm{b}$ |  Perimeter of the reinforcement                  |\n",
+    "| `L_b` | $L_\\mathrm{b}$ |  Length of the bond zone of the pulled-out bar   |\n",
+    "| `x`   | $x$            |  Longitudinal coordinate |\n",
+    "\n",
+    "**Material parameters:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `E_f`     | $E_\\mathrm{f}$ |  Young's modulus of the reinforcement |\n",
+    "| `E_m`     | $E_\\mathrm{m}$ |  Young's modulus of the matrix        |\n",
+    "| `MATS`    | $\\tau(s)$      |  Multi-linear bond-slip model         |\n",
+    "\n",
+    "(`MATS` is used to denote \"Material Time Stepper\" -- equivalent to user-subroutine in Abaqus, or user material in ATENA) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Control parameter:**\n",
+    "\n",
+    "| Python | Parameter | Description | \n",
+    "| :- | :-: | :- |\n",
+    "| `P` | $P$ | Pullout force |\n",
+    "| `w` | $w$ | pullout control  displacement\n",
+    "\n",
+    "**State parameter:**\n",
+    "\n",
+    "There are no state parameters included. \n",
+    "\n",
+    " - What is the consequence? The material has no memory.\n",
+    " - What happens upon unloading?"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "**Let's import the packages:**"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 49,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "%matplotlib notebook\n",
+    "import numpy as np # numerical package\n",
+    "import matplotlib.pyplot as plt # plotting package"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Numerical model of pull-out provided in BMCS Tool Suite \n",
+    "The presented function is the simplest model provided in a general-purpose nonlinear finite-element simulator `BMCS-Tool-Suite`. This code can be installed in your anaconda environment by issuing the installation command\n",
+    "\n",
+    "`pip install --upgrade bmcs`\n",
+    "\n",
+    "After the installation it should be possible to import the `PullOutModel` by issuing"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 50,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "from bmcs.api import PullOutModel "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Example test parameters\n",
+    "Let us consider the case of the RILEM pullout test with the boundary condition with the following material parameters \n",
+    "\\begin{align}\n",
+    "d &= 16\\;\\mathrm{mm} \\\\\n",
+    "E_\\mathrm{f} &= 210\\;\\mathrm{GPa} \\\\\n",
+    "E_\\mathrm{m} &= 28\\;\\mathrm{GPa} \\\\\n",
+    "A_\\mathrm{f} &= \\pi (\\frac{d}{2})^2 \\;\\mathrm{mm}^2 \\\\\n",
+    "A_\\mathrm{m} &= (10d)^2 \\;\\mathrm{mm}^2 \\\\\n",
+    "p &= \\pi d\n",
+    "\\end{align}"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 62,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{A_m} & A_\\mathrm{m} = 25600.0 & \\textrm{[$\\mathrm{mm}^2$]} & \\textrm{matrix area}  \\\\\n",
+       "                \\textrm{A_f} & A_\\mathrm{f} = 201.06192982974676 & \\textrm{[$\\mathrm{mm}^2$]} & \\textrm{reinforcement area}  \\\\\n",
+       "                \\textrm{P_b} & p_\\mathrm{b} = 44.0 & \\textrm{[$\\mathrm{mm}$]} & \\textrm{perimeter of the bond interface}  \\\\\n",
+       "                \\hline\n",
+       "        \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.CrossSection at 0x7f7bfb21d170>"
+      ]
+     },
+     "execution_count": 62,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "po = PullOutModel(mats_eval_type='multilinear',\n",
+    "                        n_e_x=50, k_max=200, w_max=0.1)\n",
+    "d = 16.0 # [mm]\n",
+    "E_f = 210000 # [MPa]\n",
+    "E_m = 28000 # [MPa]\n",
+    "P_b = 44 # [mm]\n",
+    "A_f = np.pi*(d/2)**2\n",
+    "A_m = (10*d)**2\n",
+    "po.cross_section.trait_set(A_f=A_f, A_m=A_m, P_b=P_b)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 63,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{L_x} & L = 80.0 & \\textrm{[$\\mathrm{mm}$]} & \\textrm{embedded length}  \\\\\n",
+       "                \\hline\n",
+       "        \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.Geometry at 0x7f7bfb21d0b0>"
+      ]
+     },
+     "execution_count": 63,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "po.geometry.trait_set(L_x=5*d)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Adapt the bond-slip law"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 64,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "po.mats_eval.s_tau_table = [[0, 0.0001, 0.01, 0.1],\n",
+    "                            [0, 3.0, 3.0, 8.0]]"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 65,
+   "metadata": {
+    "scrolled": true
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAlgAAADwCAYAAADcthp2AAAgAElEQVR4nO3deVRV5f4/8EcFBHGexSwrkVLTuqZS3nIkadJMK63MNDXLq1aW3tLkOACK8zzPICoOB6cUZFDEIcUhcdbQHBInZJ7P+/fHd8EvLmw8yD7nbPbzfq31rHXXXofHvZ/7qc+7cw4fBYiIiIhIVcLWN0BERESkNwxYRERERCpjwCIiIiJSGQMWERERkcoYsIiIiIhUxoBFREREpDIGLCIiIiKVMWARERERqYwBi4iIiEhlDFhEREREKmPAIiIiIlIZAxYRERGRyhiwiIiIiFTGgEVERESkMgYsIiIiIpUxYBERERGpjAGLiIiISGUMWEREREQqY8AiIiIiUhkDFhEREZHKGLCIiIiIVMaARURERKQyBiwiIiIilTFgEREREamMAYuIiIhIZQxYRERERCpjwCIiIiJSGQOWmRISEmA0GhETE4PY2FguLi4uLi4uM1dMTAyMRiMSEhJs3c6thgHLTEajEUIILi4uLi4uridcRqPR1u3cahiwzBQTE5NfHLb+LwEuLi4uLq6ytPLepIiJibF1O7caXQesEydOoEePHmjQoAGcnJzg5uaGCRMmIDU1tcR7xcbGQgiB2NhYC9wpERGRfsnYQ3UbsM6ePQtHR0e0atUKGzduRFhYGLy8vFChQgV07969xPvJWBxERERqkLGH6jZgjR07FkIIXLlypcD1IUOGQAiBhw8flmg/GYuDiIhIDTL2UN0GLIPBACEE7t27V+D66NGjUb58eaSkpJRoPxmLg4iISA0y9lDdBqy4uDhUr14dvXv3xtWrV5GUlIQdO3agWrVqGD58eIn3k7E4iIhIPmlZaThx+4Sqe8rYQ3UbsADg/PnzeOGFFwr8iuiIESNgMpmK/bn4+HjF34CQqTiIiEj/TCYTzsSfwYxDM/DWurfgONkRVXyqICsnS7U/gwFLR+Li4tCkSRO0b98emzdvxv79++Hn54eqVati4MCBxf6sl5eX4gwPmYqDiIj06X7qfQSeCcSXxi/hMsMFwiAKrf3X9qv25zFg6cgnn3yCunXrFvqu1cqVKyGEQGRkpOLP8h0sIiLSk6ycLBy4dgBjw8aizdI2KGcoV2SoembWMxiyfQg2n92MxIxE1f58BiwdcXNzQ8eOHQtdP3PmDIQQmD9/fon2k7E4iIio7Lry4AoW/r4QPQJ7oIpPlSIDVSXvSng34F3MPTIXF+9ffOxXaJ6UjD1UtwGrU6dOqFOnDpKTkwtcX7p06RON65exOIiIqOxIykiC8bwR3+78Fs/Peb7IQCUMAq8sfgVjQscg/M9wZGRnWOXeZOyhug1YwcHBKFeuHNzd3fMHjXp7e6Ny5cpo1qwZMjMzS7SfjMVBRETalWvKxbFbxzB5/2S8uepN2E20KzJQ1ZtWD/229sO60+twJ/mOTe5Vxh6q24AFAOHh4XjrrbdQv359ODk5oWnTphg1ahTu379f4r1kLA4iItKWW0m3sOrkKvTZ3Ae1ptYqMlA5THJA5zWdMfXgVJz8+yRyTbm2vm0pe6iuA5aaZCwOIiKyrbSsNIRcCcGovaPQYmELxY/93Oa5YcTuEdh1aRdSMks2SNsaZOyhDFhmkrE4iIjIukwmE2LjYzHj0Ax0W9cNjpMdiwxU1adUR+9NvbH0+FJcS7hm69t+LBl7KAOWmWQsDiIisrz7qfex4cwGDDAOQMMZDYsMVOUnlMdry1+DIcKAQ38dQnZutq1vu0Rk7KEMWGaSsTiIiEh9WTlZiLoehXFh44qdSfX0rKcxePtgbD67GQ/THtr6tktFxh7KgGUmGYuDiIjUcfXhVSw6tggfbPgAVX2rKs6keifgHcw5MgcX7l2w2EwqW5CxhzJgmUnG4iAioieTlJGE4AvBGLZrGJrMbaL45fSXF7+M0SGjEfZnmNVmUtmCjD2UActMMhYHERGZJ9eUi+O3jsP7gHexM6nqTquLz7d+jrWn1uLv5L9tfdtWI2MPZcAyk4zFQUREym4l3cLqk6vRd3Nf1ParXWSgsp9oj06rO2FK1BTNzKSyBRl7KAOWmWQsDiIi+v/Ss9MRciUEP+79ES8tfKnYmVTDdw/Hzos7kZyZ/PiNJSBjD2XAMpOMxUFEJDOTyYSzd89i5qGZ8PT3hNNkpyIDVTXfaui1sReWHF+CuIQ4W9+2JsnYQxmwzCRjcRARyeZB2gNsjN2IgcaBeGrmU4ozqdyXu8MrwgvRf0WXuZlUtiBjD2XAMpOMxUFEpHfZudmIuh6FX8N/RdtlbRVnUjWa2QiDggch6GwQHqQ9sPVtlzky9lAGLDPJWBxERHr058M/sejYIvTc0FNxJpXTZCe87f82Zh+ejfP3zutqJpUtyNhDGbDMJGNxEBHpQXJmMrZf2I5hu4bBda6r4pfTWy1qhdEho7Hv6j5dz6SyBRl7KAOWmWQsDiKisijXlIuY2zHwOeCDDqs6wH6ifZGBqo5fHXy25TPpZlLZgow9lAHLTDIWBxFRWXE76TbWnFqDT7d8ijp+dRRnUnVc3RG+Ub44cfuEtDOpbEHGHsqAZSYZi4OISKvSs9MRejUUP4X8hJaLWip+7Nd0XlP8Z9d/sOPiDs6ksiEZeygDlplkLA4iIq0wmUw4d/ccZh2e9diZVB9u/BCLjy3mTCoNkbGHMmCZScbiICKypQdpD7ApdhO+Cv4KjWY2UpxJ1W5ZO4wPH4+D1w9yJpVGydhDGbDMJGNxEBFZU3ZuNg5eP4jx4ePRblk7lJ9QvshQ9dTMp/BV8FfYFLuJM6nKCBl7KAOWmWQsDiIiS4tLiMPiY4vx4cYPUc23WrEzqWYdnoVzd89xJlUZJGMPZcAyk4zFQUSktuTMZOy4uAP/2fUfNJ3XVPHL6S0XtcRPIT8h9Goo0rPTbX3bVEoy9lAGLDPJWBxERKWVa8rFidsn4Bvli46rOyrOpKrtVxufbvkUa06twe2k27a+bVKZjD2UActMMhYHEdGT+Dv5b6w9tRafbfkMdafVLTJQ2U20Q4dVHeBzwAcxt2M4k0rnZOyhDFhmkrE4iIjMkZGdgX1X9+GnkJ/QalErxY/9XOe6YtiuYdh+YTuSMpJsfdtkRTL2UAYsM8lYHERERTGZTDh/7zxmH56NdwLeQSXvSkUGqqq+VdFzQ08sOrYIfz7809a3TTYkYw9lwDKTjMVBRJTnYdpDBJ0NwqDgQXh61tNFBqpyhnJou6wtfg3/FQevH0RWTpatb5s0QsYeyoBlJhmLg4jklZ2bjei/ouEV4QX35e6KM6kazmiIgcaB2Bi7kTOpSJGMPZQBy0wyFgcRyeVawjUsOb4EvTb2QvUp1RVnUnn6e2LmoZk4e/csZ1KRWWTsoQxYZpKxOIhI31IyU7Dz4k4M3z282JlULy18CT/u/REhV0I4k4qeiIw9VPcBKyoqCm+//TaqV68OR0dHNGnSBBMnTizxPjIWBxHpS95MqilRU9BpdadiZ1L13dwXq0+uxq2kW7a+bdIBGXuorgNWQEAAypcvjz59+mD79u0IDw/HsmXLMGHChBLvJWNxEFHZdyf5DtaeWovPt37+2JlU3ge8cfzWcc6kItXJ2EN1G7Bu3rwJZ2dnfPPNN6rsJ2NxEFHZk5GdgbA/wzA6ZDReXvyy4sd+TeY2wbBdwxB8IZgzqcjiZOyhug1YBoMBQghcu3ZNlf1kLA4i0j6TyYQL9y5gzpE5xc6kquJTBR9s+ACLji3C1YdXbX3bJBkZe6huA1bnzp1Rs2ZN7NmzB61atUKFChVQp04dfP3110hMTCzxfjIWBxFpU95MqsHbBxc7k6rN0jYYFzYOUdejOJOKbErGHqrbgOXm5gZHR0dUqVIFPj4+iIiIgJ+fH5ycnNC+fftif7U4Pj4esbGxBZbRaJSuOIhIG7Jzs3Hor0PwivDCa8tfK3Ym1QDjAGw4swH3U+/b+raJ8jFg6YirqyuEEPD19S1wffbs2RBCIDQ0VPFnvby8IIQocslUHERkO9cfXcfS40uLnUnlONkR3dZ1w4xDMxAbH8uZVKRZDFg64u7uDiEETpw4UeD6xYsXIYTA1KlTFX+W72ARkbWlZKZg16VdGLF7BNzmuSl+Ob3FwhYYtXcU9l7Zi7SsNFvfNpFZGLB0ZMiQIUUGrAsXLkAIgWnTppVoPxmLg4gsx2Qy4eTfJzH14FR0XtMZDpMcigxUtabWQp/NfbDq5CrOpKIyS8YeqtuAtXfvXggh4O3tXeD6zJkzIYRAVFRUifaTsTiISF13ku9g3el16Le1H+pNq6c4k+rNVW9i8v7JOHbrGGdSkS7I2EN1G7AA4P3330fFihUxadIkhIaGwtfXF46OjnjvvfdKvJeMxUFEpZOZk4nwP8MxJnRMsTOpnp/zPL7d+S2M541IzCj5bzkTaZ2MPVTXASstLQ1jxoxBo0aNYGdnh6effho///wzMjIySryXjMVBRCWTN5Nq7pG5eDfgXTh7OyvOpOoR2AMLf1+IKw+u2Pq2iSxOxh6q64ClJhmLg4geLyE9AZvPbsaQ7UPwzKxnFGdSvbr0VYwNG4sD1w5wJhVJR8YeyoBlJhmLg4gKy8nNweEbh2GIMOD1Fa+jwoQKRYYqlxkuGGAcgMAzgbiXes/Wt01kUzL2UAYsM8lYHET0f/569BeWxSxD7029i51J9da6tzDj0AyciT/DmVRE/yBjD2XAMpOMxUEkq5TMFOy+tBsjfxuJF+a/oPjl9OYLmuOHPT9wJhXRY8jYQxmwzCRjcRDJwmQy4dTfp+B30A9d1nRRnElVc2pNfBL0CVaeWImbiTdtfdtEZYaMPZQBy0wyFgeRnsWnxMP/tD/6be2H+tPrK86kemPlG5i0fxJ+v/k7cnJzbH3bRGWSjD2UActMMhYHkZ5k5mQiIi4C/w39L/615F+KH/s9N+c5fLPzG2w7v40zqYhUImMPZcAyk4zFQVSWmUwmXLx/EfOOzsN7699TnElV2acyugd2x4LfF3AmFZGFyNhDGbDMJGNxEJU1j9IfYcu5Lfh6x9doPLtxsTOpftn3C/Zf24/MnExb3zaR7snYQxmwzCRjcRBpXU5uDo7cOIIJkRPQfkV7xZlUDaY3wJfGL7H+j/W4m3LX1rdNJB0ZeygDlplkLA4iLfrr0V9YHrMcH236CDWm1CgyUFWcVBEeaz0wPXo6/rjzB2dSEdmYjD2UActMMhYHkRakZqVi96Xd+O637/Di/BcVv5zebEEzfL/ne+y5vAepWam2vm0i+gcZeygDlplkLA4iWzCZTDh95zT8Dvqh69quqDipouJMqo+DPsaKEytwI/GGrW+biIohYw9lwDKTjMVBZC13U+4i4I8AfLHtC8WZVBUmVMC/V/4bEyMn4ujNo5xJRVSGyNhDGbDMJGNxEFlKZk4mIuMi8fO+n4udSfXs7GcxdMdQbDu/DY/SH9n6tonoCcnYQxmwzCRjcRCpxWQy4dL9S5h/dD7eX/8+KvtUVpxJ9f769zH/6Hxcun+JX04n0gkZeygDlplkLA6i0niU/ghbz23F0B1D8ezsZxXfpWq9pDV+3vczIuMiOZOKSKdk7KEMWGaSsTiISiInNwdHbx7FxMiJxc6kqj+9Pvpv64+APwI4k4pIEjL2UAYsM8lYHESPcyPxBlacWIGPgz5Gzak1FWdSdV3bFdOip+H0ndP82I9IQjL2UAYsM8lYHET/KzUrFb9d/g3f7/kezRY0U/zY78X5L+K7377Db5d/40wqIpKyhzJgmUnG4iAymUz4484fmBY9DR5rPRRnUtWYUgMfB32M5THL8dejv2x920SkMTL2UAYsM8lYHCSne6n3sP6P9ei/rT8aTG+gOJOq/Yr2mBA5AUduHOFMKiIqlow9lAHLTDIWB8khbybVL/t+QeslrVHOUK7IUNV4dmN8veNrbD23FQnpCba+bSIqQ2TsoQxYZpKxOEi/Lj+4jPlH56N7YHfFmVTO3s54b/17mHd0HmdSEVGpyNhDGbDMJGNxkH4kZiRi2/ltGLpjKJ6b85zil9P/teRf+G/ofxERF8GZVESkGhl7KAOWmWQsDiq7cnJz8PvN3zFp/yT8e+W/i51J9cW2L+B/2h/xKfG2vm0i0ikZeygDlplkLA4qW24m3sTKEyvxSdAnqDW1VpGBymGSA7qs6QK/g3449fcpfuxHRFYhYw9lwDKTjMVB2paWlYY9l/fghz0/oPmC5sXOpBr520jsvrQbKZkptr5tIpKQjD2UActMMhYHaYvJZMKZ+DOYHj39sTOpPtr0EZbFLMP1R9dtfdtERFL2UAYsM8lYHGR791LvIfBMIL40fgmXGS5FBqryE8rj9RWvY0LkBBy+cZgzqYhIc2TsoVIFrGXLlkEIAWdn5xL/rIzFQdaXlZOF/df2Y2zYWLy69FXFmVTPzHoGQ7YPwZZzWziTiog0T8YeKk3AunnzJqpVqwYXFxcGLNKUKw+uYMHvC9AjsAeq+FQpMlBV8q6EdwPexdwjc3Hx/kV+OZ2IyhQZe6g0Aeu9997D+++/j/79+zNgkU0lZiTCeN6Ib3Z+g+fnPK/45fRXFr+CMaFjEP5nODKyM2x920RET0zGHipFwFq3bh2qVKmCGzduMGCR1eWacnHs1jFM3j8Zb6x8A3YT7YoMVPWm1UO/rf2w7vQ63Em+Y+vbJiJSjYw9VPcBKz4+HrVq1cKCBQsAgAGLrCJvJlWfzX2KnUnVeU1nTD04FSf/PolcU66tb5uIyCJk7KG6D1i9evXC66+/nv+dFXMCVnx8PGJjYwsso9EoXXGQ+dKy0rD3yl78sOcHtFjYQvFjvxfmv4ARu0dg16VdnElFRNJgwNKZzZs3w8HBAWfPns2/Zk7A8vLyghCiyCVTcZAyk8mE2PhYzDg0A2+tewuOkx2LDFTVp1RH7029sfT4UlxLuGbr2yYisgkGLB1JTk5GvXr1MGrUKCQkJOSvvn37wtnZGQkJCUhJKfodBL6DRUW5n3ofG85swADjADSc0VBxJtVry1+DIcKAQ38dQnZutq1vm4jI5hiwdCQuLk7xXai81aNHD7P3k7E4ZJeVk4UD1w5gXNg4tFnaRnEm1dOznsbg7YOx+exmPEx7aOvbJiLSHBl7qG4DVnp6OiIiIgqtbt26wdHREREREThz5ozZ+8lYHDK6+vAqFv6+EB9s+ABVfasqzqR6J+AdzDkyBxfuXeBMKiKix5Cxh+o2YCnhbxHSPyVlJCH4QjC+3fltsTOpXl78MsaEjkHYn2GcSUVEVEIy9lAGLDPJWBx6lDeTyvuAN95c9abiTKq60+ri862fY93pdfg7+W9b3zYRUZkmYw+VLmA9KRmLQy9uJd3CqpOr0HdzX9T2q11koLKfaI9OqzthStQUzqQiIlKZjD2UActMMhZHWZWenY6QKyEYtXcUXlr4kuLHfm7z3DB893DsvLiTM6mIiCxIxh7KgGUmGYujrDCZTDh79yxmHpqJbuu6Kc6kquZbDb029sKS40sQlxBn69smIpKGjD2UActMMhaHluXNpBpoHIinZj6lOJPKfbk7vCK8OJOKiMiGZOyhDFhmkrE4tCQrJwtR16MwLmwc2i5rqziTqtHMRhgUPAhBZ4M4k4qISCNk7KEMWGaSsThs7c+Hf2LRsUVmzaSafXg2zt87z5lUREQaJGMPZcAyk4zFYW1JGUnYfmE7hu0ahiZzmyh+Ob3VolYYHTIa+67u40wqIqIyQMYeyoBlJhmLw9JyTbk4fus4fA74oMOqDrCfaF9koKrjVwefbfkMa0+t5UwqIqIySMYeyoBlJhmLwxJuJ93G6pOr8emWT1HHr06xM6l8o3xx4vYJzqQiIirjZOyhDFhmkrE41JCenY7Qq6H4ce+Pxc6kajqvKYbvHo4dF3cgOTPZ1rdNREQqkrGHMmCZScbieBJ5M6lmHZ4FT39POE12UpxJ9eHGDzmTiohIAjL2UAYsM8lYHOZ6kPYAG2M34qvgr4qdSdVuWTuMDx+P6L+iOZOKiEgiMvZQBiwzyVgcSrJzs3Hw+kH8Gv4r2i1rh/ITyhcZqp6a+RS+Cv4Km2I34UHaA1vfNhER2YiMPZQBy0yWKo6M7AwkZSRpfl19eBWLjy1Gzw09FWdSOU12wtv+b2PW4Vk4d/ccZ1IREREABiwqhiWKI/BMoOLfm1dWVstFLfFTyE8IvRqK9Ox01c6GiIj0gwGLFFmiOHoE9rB5QCrpquNXB59u+RRrTq3B7aTbqp0FERHpFwMWKbJEcbwb8C6EQaDhjIaYHj1d02ve0XmIuR3DmVRERFRiDFikyBLF8bb/2xAGgVeXvqrankRERFrDgEWKLFEcnv6eEAaBtsvaqrYnERGR1jBgkSJLFMdb696CMAi4L3dXbU8iIiKtYcAiRZYojq5ru0IYBF5b/ppqexIREWkNAxYpskRxdFnTBcIg0H5Fe9X2JCIi0hoGLFJkieLotLoThEHgjZVvqLYnERGR1jBgkSJLFEeHVR0gDAJvrnpTtT2JiIi0hgGLFFmiON5Y+QaEQaDj6o6q7UlERKQ1DFikyBLF8e+V/4YwCHRe01m1PYmIiLSGAYsUWaI4Xl/xOoRBoOvarqrtSUREpDUMWKTIEsXhvtwdwiDgsdZDtT2JiIi0hgGLFFmiONotawdhEOi2rptqexIREWkNAxYpskRxtFnaBsIg8Lb/26rtSUREpDUMWDoSFhaGAQMGwM3NDZUqVYKLiwu6d++O48ePP9F+liiO1ktaQxgE3gl4R7U9iYiItIYBS0d69+6NTp06YeHChYiMjERQUBDc3d1hZ2eHsLCwEu9nieJ4ZfErEAaB99a/p9qeREREWsOApSPx8fGFriUnJ6NevXro0qVLifezRHG8vPhlCINA98Duqu1JRESkNQxYEujUqROaNm1a4p+zRHG0XNQSwiDwwYYPVNuTiIhIaxiwdO7Ro0eoVq0aevbsWeKftURxtFjYAsIg0HNDye+HiIiorGDA0rnPPvsMdnZ2j/2ie3x8PGJjYwsso9GoenE0X9AcwiDQa2Mv1fYkIiLSGgYsHRs3bhyEEJg3b95jX+vl5QUhRJFLzeJ4cf6LEAaBjzZ9pNqeREREWsOApVMGgwFCCHh7e5v1emu9g+U2zw3CIPBx0Meq7UlERKQ1DFg6lBeuDAZDqfaxRHG4znWFMAj02dxHtT2JiIi0hgFLZyZOnAghBMaNG1fqvSxRHE3mNoEwCHy65VPV9iQiItIaBiwdmT59OoQQ8PT0xOHDhwutkrJEcTw35zkIg8DnWz9XbU8iIiKtYcDSkQ4dOih+UV2Ikj+2JYqj8ezGEAaBflv7qbYnERGR1jBgkSJLFMczs56BMAj039ZftT2JiIi0hgGLFFmiOBrNbARhEBhgHKDankRERFrDgEWKLFEcDWc0hDAIDDQOVG1PIiIirWHAIkWWKI4G0xtAGAQGBQ9SbU8iIiKtYcAiRZYojvrT60MYBIZsH6LankRERFrDgEWKLFEcdafVhTAIDN0xVLU9iYiItIYBixRZojhq+9WGMAh8s/Mb1fYkIiLSGgYsUmSJ4qg1tRaEQWDYrmGq7UlERKQ1DFikyBLFUWNKDQiDwPDdw1Xbk4iISGsYsEiRJYqjmm81CIPAiN0jVNuTiIhIaxiwSJEliqOKTxUIg8B3v32n2p5ERERaw4BFiixRHJV9KkMYBH7Y84NqexIREWkNAxYpskRxVPKuBGEQ+HHvj6rtSUREpDUMWKTIEsXhONkRwiDwU8hPqu1JRESkNQxYpMgSxVFxUkUIg8CY0DGq7UlERKQ1DFikyBLFYT/RHsIg8PO+n1Xbk4iISGsYsEiRJYqjwoQKEAaBX/b9otqeREREWsOARYosURzlDOUgDALjwsapticREZHWMGCRIksUhzAICIPA+PDxqu1JRESkNQxYpEjt4jCZTPkByxBhUGVPIiIiLWLAIkVqF0dObk5+wJoQOUGVPYmIiLSIAYsUqV0c2bnZ+QFr0v5JquxJRESkRQxYpEjt4sjMycwPWN4HvFXZk4iISIsYsEiR2sWRnp2eH7B8DviosicREZEWMWCRIrWLIy0rLT9gTYmaosqeREREWsSARYrULo6UzJT8gOV30E+VPYmIiLSIAYsUqV0cSRlJ+QFrevR0VfYkIiLSIgYsUqR2cTxKf5QfsGYcmqHKnkRERFrEgEWK1C6OhPSE/IA16/AsVfYkIiLSIgYsUqR2cTxIe5AfsOYcmaPKnkRERFrEgKUzycnJGDlyJBo0aICKFSuiVatWCAwMfKK91C6Oe6n38gPW3CNzVdmTiIhIixiwdMbDwwPVq1fH4sWLER4ejkGDBkEIgYCAgBLvpXZx3E25mx+w5h+dr8qeREREWsSApSO7du2CEALr168vcN3DwwMuLi7Iyckp0X5qF8ed5Dv5AWvh7wtV2ZOIiEiLGLB0ZNCgQahcuTKys7MLXF+/fj2EEIiOji7RfmoXx+2k2/kBa/GxxarsSUREpEUMWDri7u6ONm3aFLqe93/ykiVLSrSf2sVxM/FmfsBacrxk90JERFSWMGDpiKurK7p161bo+u3btyGEgI+P8t//Fx8fj9jY2ALLaDSqWhw3Em/kB6xlMctU2ZOIiEiLGLB0xNXVFZ6enoWu5wUsX19fxZ/18vKCEKLIpVZxXH90PT9grTixQpU9iYiItIgBS0dK8xGhNd7BSsxIxIxDMzA9ejr+uPOHKnsSERFpEQOWjgwePLjIL7kHBgZq4kvuREREspCxh+o2YO3evRtCCGzYsKHAdU9PT02MaSAiIpKFjD1UtwEL+L+ZVzVq1MDSpUsRHh6OwYMHQwgBf3//Eu8lY3EQERGpQcYequuAlZycjBEjRqB+/fpwcHBAy5YtNfNX5RAREclCxh6q64ClJhmLg4iISA0y9lAGLDPJWBxERERqkLGHMmCZKSYmBkIIGI3GQiMcuLi4uLi4uJRX3qijmJgYW7dzq2vqbfMAAAl8SURBVGHAMlNecXBxcXFxcXE92TIajbZu51bDgGWmhIQEGI1GxMTEqJ7o+a6Y+v+VxDPleWp18Ux5nlpfljjTmJgYGI1GJCQk2LqdWw0Dlg3Fxsr3mbSl8UzVxfNUH89UXTxP9fFM1cGAZUMsYvXxTNXF81Qfz1RdPE/18UzVwYBlQyxi9fFM1cXzVB/PVF08T/XxTNXBgGVDLGL18UzVxfNUH89UXTxP9fFM1cGAZUPx8fHw8vJCfHy8rW9FN3im6uJ5qo9nqi6ep/p4pupgwCIiIiJSGQMWERERkcoYsIiIiIhUxoBFREREpDIGrFJKTk7GyJEj0aBBA1SsWBGtWrVCYGCgWT8bHx+P/v37o1atWnBycoK7uzv27dtX5GtDQ0Ph7u4OJycn1KpVC/3799flFxAtfZ6JiYmYPHkyOnTogHr16sHZ2RktWrTAlClTkJ6ebolHsjlr1WietLQ0uLq6QgiBadOmqfEImmKt80xJScGvv/4KV1dXODg4oGbNmujYsSMuXbqk5uNogjXONCMjA35+fmjevDkqVaqEunXrwtPTE9HR0Wo/js096XneuHEDI0eOxJtvvolq1apBCIFVq1Ypvl6WvvSkGLBKycPDA9WrV8fixYsRHh6OQYMGQQiBgICAYn8uIyMDLVq0wFNPPQV/f3+EhISgR48esLOzQ2RkZIHXRkZGws7ODj169EBISAj8/f3RsGFDtGjRAhkZGZZ8PKuz9HmeOXMGtWvXxvfff4/g4GCEhYXBYDDA0dERXbp0gclksvQjWp01avSfRo0aBRcXF90GLGucZ3JyMl599VW4uLhg7ty5iIyMRHBwMMaMGYNTp05Z8vFswhpn2q9fP5QvXx5jx45FWFgYgoKC0Lp1a9jZ2eHo0aOWfDyre9LzjIiIQO3atdG1a1f07du32IAlU196UgxYpbBr1y4IIbB+/foC1z08PODi4oKcnBzFn12wYAGEEDh06FD+tezsbDRr1gxt27Yt8No2bdqgWbNmyM7Ozr8WHR0NIQQWLlyo0tPYnjXOMyUlBSkpKYV+ftq0aRBCICoqSoUn0Q5r1Wieo0ePwsHBAUFBQboMWNY6z5EjR8LZ2RlXr15V9wE0yBpnmpGRgQoVKuDzzz8v8PO3b9+GEAIjRoxQ6WlsrzTnmZubm/+/jx07VmzAkqUvlQYDVikMGjQIlStXLlBgALB+/XoIIYp967lr165wc3MrdN3HxwdCCNy8eRMAcPPmTQgh4OvrW+i1TZs2hYeHRymfQjuscZ5K9u/fX+S/lMo6a55pZmYmmjdvju+//x5xcXG6DFjWOM/U1FQ4Ozvjyy+/VPfmNcoaZ5qVlQV7e3sMGzaswOtSUlJQvnx5jB49WoUn0YbSnOc/FRewZOpLpcGAVQru7u5o06ZNoet5U3CXLFmi+LP169fHRx99VOj6zp07IYTA3r17AQB79uyBEAK7du0q9NrevXujQYMGpXgCbbHGeSrx8vKCEAKnT58u+Y1rmDXPdOzYsWjcuDFSUlJ0G7CscZ4HDhyAEALe3t4YOnQoqlevDnt7e7Ru3Ro7d+5U72E0wlo1OnLkSFSuXBnbtm1DYmIi4uLi0LdvX9SoUQOXL19W52E0oDTn+U/FBSyZ+lJpMGCVgqurK7p161boet7bzj4+Poo/a29vj6+//rrQ9UOHDhV4JyUgIABCCBw+fLjQa4cMGQIHB4dSPIG2WOM8i3L69Gk4OTmhZ8+eT3bjGmatMz158iTs7e2xZ88eANBtwLLGeQYGBkIIgapVq6J9+/bYvn07du7ciU6dOqFcuXL5Z6wX1qpRk8mE8ePHo3z58hBCQAiBp59+GidPnlTnQTSiNOf5T8UFLJn6UmkwYJWCq6srPD09C13PK+Si3j7NY29vj6FDhxa6nvcvhrzf+Mgr5CNHjhR67ZAhQ1CxYsVSPIG2WOM8/1dcXBwaNWqEpk2b4sGDB09+8xpljTPNzs7GK6+8UuD7LXoOWNb6Z7527dpISkrKf11qaipcXFzQvn17FZ5EO6z1z/2kSZNQqVIlTJw4EREREQgODoaHhwdq166NEydOqPMwGlCa8/wncwKWDH2pNBiwSoEfEarL2h8RXrt2DY0bN8azzz6LGzdulO7mNcoaZzpt2jRUq1YNly9fRkJCAhISEnD69GkIITBp0iQkJCQU+8XassSa/8x379690Gv79u0LJyenUjyB9ljjTM+dO4dy5coVCvxZWVlo0qQJOnbsWMqn0A5+RKgdDFilMHjw4CK/TJj3Fn9xXyb08PDACy+8UOi6r68vhBC4desWgP//ZcIpU6YUeq2bm5uuvkxojfPMkxeunnnmGVy7dk2dB9Aga5xp//798z9yUVp6+RjGGueZ905DUQGrT58+cHZ2LuVTaIs1zjRvr6LGi/Tq1Qu1a9cu5VNoR2nO85/M+ZK7DH2pNBiwSmH37t0QQmDDhg0Frnt6ej7212EXLlxY6C3W7OxsNG/eHO3atSvw2rZt26JFixYF9jt8+DCEEFi0aJFKT2N71jrP69evo3HjxmjUqJHufw3eGmd6/vx5REREFFh5/zIfOnQoIiIikJycrP7D2YC1avS1115DrVq1kJiYmH8tNTUVDRo0QJcuXVR6Gm2wxpnm/Zbw/waCjIwMPPvss3j55ZdVehrbK815/tPjxjTI0pdKgwGrlDw8PFCjRg0sXboU4eHhGDx4MIQQ8Pf3z3/NwIEDUaFChQLvlGRkZKB58+Zo1KgRAgICEBoaip49exY5IC8iIgJ2dnbo2bMnQkNDERAQgEaNGulyoJulzzM+Ph7PPfccKlasCH9/fxw+fLjA0uNHhdao0f+l1+9gAdY5z+joaDg4OMDd3R3btm2D0WjEG2+8AXt7+wIzn/TC0meam5uLNm3awNHREePHj8e+ffuwZcsWdOzYEUIIrFu3zqrPa2lPep4AEBQUhKCgIEydOhVCCAwbNiz/2j/J1JeeFANWKSUnJ2PEiBGoX78+HBwc0LJly0JfqM77CCUuLq7A9Tt37uCLL75AzZo14ejoCHd3d4SGhhb554SEhMDd3R2Ojo6oWbMmvvjiC13+lQSWPs+IiIhiP8ry8vKy8BNan7Vq9J/0HLCsdZ5RUVHo0KEDKlWqhEqVKqFz5866/GtdAOuc6aNHjzB27Fi8+OKL+X9VTseOHbF7925LPppNlOY8i/v34/+SpS89KQYsIiIiIpUxYBERERGpjAGLiIiISGX/DzpuBiM0wRFuAAAAAElFTkSuQmCC\" width=\"500\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fig, ax = plt.subplots(1,1,figsize=(5,2))\n",
+    "po.mats_eval.bs_law.plot(ax, color='green')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Load specification"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 76,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{loading_type} & option = monotonic & \\textrm{[-]} & \\textrm{possible values: [monotonic, cyclic]}  \\\\\n",
+       "                \\textrm{number_of_cycles} & n_\\mathrm{cycles} = 1 & \\textrm{[-]} & \\textrm{for cyclic loading}  \\\\\n",
+       "                \\textrm{maximum_loading} & \\phi_{\\max} = 1.0 & \\textrm{[-]} & \\textrm{load factor at maximum load level}  \\\\\n",
+       "                \\textrm{unloading_ratio} & \\phi_{\\mathrm{unload}} = 0.98 & \\textrm{[-]} & \\textrm{fraction of maximum load at lowest load level}  \\\\\n",
+       "                \\textrm{number_of_increments} & n_{\\mathrm{incr}} = 20 & \\textrm{[-]} & \\textrm{number of values within a monotonic load branch}  \\\\\n",
+       "                \\textrm{amplitude_type} & option = constant & \\textrm{[-]} & \\textrm{possible values: [increasing, constant]}  \\\\\n",
+       "                \\textrm{loading_range} & option = non-symmetric & \\textrm{[-]} & \\textrm{possible values: [non-symmetric, symmetric]}  \\\\\n",
+       "                \\hline\n",
+       "        \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.time_functions.loading_scenario.LoadingScenario at 0x7f7bfbf046b0>"
+      ]
+     },
+     "execution_count": 76,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "po.sim.tline.step = 0.05\n",
+    "po.fixed_boundary = 'loaded end (matrix)'\n",
+    "po.loading_scenario.trait_set(loading_type='monotonic',\n",
+    "                              amplitude_type='constant',\n",
+    "                              loading_range='non-symmetric'\n",
+    "                              )\n",
+    "po.loading_scenario.trait_set(number_of_cycles=1,\n",
+    "                              unloading_ratio=0.98,\n",
+    "                              )"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 77,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/latex": [
+       "\n",
+       "        \\begin{array}{lrrl}\\hline\n",
+       "        \\textrm{k_max} & k_{\\max} = 200 & \\textrm{[-]} & \\textrm{maximum number of iterations}  \\\\\n",
+       "                \\textrm{tolerance} & \\epsilon = 0.0001 & \\textrm{[-]} & \\textrm{required accuracy}  \\\\\n",
+       "                \\textrm{n_e_x} & n_\\mathrm{E} = 50 & \\textrm{[-]} & \\textrm{number of finite elements along the embedded length}  \\\\\n",
+       "                \\textrm{mats_eval_type} & \\textrm{multilinear} & & \\textrm{material model type}  \\\\\n",
+       "                \\textrm{control_variable} & \\textrm{u} & & \\textrm{displacement or force control: [u|f]}  \\\\\n",
+       "                \\textrm{w_max} & w_{\\max} = 0.1 & \\textrm{[mm]} & \\textrm{maximum pullout slip}  \\\\\n",
+       "                \\textrm{fixed_boundary} & \\textrm{loaded end (matrix)} & & \\textrm{which side of the specimen is fixed [non-loaded end [matrix], loaded end [matrix], non-loaded end [reinf]]}  \\\\\n",
+       "                \\hline\n",
+       "        \\textbf{loading_scenario} & \\textrm{LoadingScenario} & & \\textrm{object defining the loading scenario} \\\\\n",
+       "            \\textbf{cross_section} & \\textrm{CrossSection} & & \\textrm{cross section parameters} \\\\\n",
+       "            \\textbf{geometry} & \\textrm{Geometry} & & \\textrm{geometry parameters of the boundary value problem} \\\\\n",
+       "            \\textbf{mats_eval} & \\textrm{MATSBondSlipMultiLinear} & & \\textrm{material model of the interface} \\\\\n",
+       "            \\hline\n",
+       "        \\end{array}\n",
+       "        "
+      ],
+      "text/plain": [
+       "<bmcs.pullout.pullout_sim.PullOutModel at 0x7f7bfbf04e90>"
+      ]
+     },
+     "execution_count": 77,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "po"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {
+    "slideshow": {
+     "slide_type": "slide"
+    }
+   },
+   "source": [
+    "## Run the simulation\n",
+    "The model object `po` contains the non-linear threaded simulator `sim` as its attribute. To be sure that the state arrays and history variables are zeroed and reset run the methods `stop` first. After that, the simulation can be started."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 71,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "#po.sim.stop()\n",
+    "po.sim.run()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Postprocessing"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Pull-out curve"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 72,
+   "metadata": {
+    "slideshow": {
+     "slide_type": "fragment"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAgAElEQVR4nOzdeVhU570H8HfGYRhUtFWiRtyoFYxAmptWQ22jtW55msXQqtEukrYBzW1zb9ubGjVJIX1UEsw10V6JsopsIqK4oMgoiwuIQogIoiiKQbYgoiICzvK9f5zOxPEc4AwMzJyZ3+d53qfl8M457yRv/Hq298dACCGEkAHHrD0AQgghxBFRABNCCCFWQAFMCCGEWAEFMCGEEGIFFMCEEEKIFVAAE0IIIVZAAUwIIYRYAQUwIYQQYgUUwIQQQogVUAATQgghVkABTAghhFgBBTAhhBBiBRTAhBBCiBVQABNCCCFWQAFMCCGEWAEFMCGEEGIFFMA2rKWlBenp6SguLkZZWRk1atSoUevnVlxcjPT0dLS0tPT7n/GSCOATJ07g97//Pby8vDB48GCMHTsWr732GoqKikz6BQQEgDHGa15eXoL73bp1K7y8vKBUKjFp0iSEhITg0aNHvH6NjY0ICAjAyJEj4eLiAj8/Pxw/flxwn2q1Gn5+fnBxccHIkSMREBCAxsbGXn3v9PR0we9DjRo1atT6t6Wnp/fqz21zSCKAFy9ejDlz5iA8PBy5ublITU2Fn58fFAoFTpw4YewXEBAAFxcXFBQUmLSvvvqKt8/169dDJpNh7dq1yMnJQVhYGJRKJQIDA036dXR0wMfHB+PGjUNCQgKysrKwaNEiKBQK5ObmmvTNzc2FQqHAokWLkJWVhYSEBLi7u8PHxwcdHR1mf+/i4mLjRLD23wqpUaNGzRGa4cSnuLjY7D+zzSWJABY6g2xtbcXo0aMxd+5c47aAgAAMGTKkx/3dvn0bKpUKQUFBJts3bNgAmUyG8vJy47Zt27aBMYb8/HzjNo1Gg2nTpmHGjBkmn58+fTqmTZsGjUZj3HbmzBkwxhAeHt7zF31CWVkZGGMoKysz+7OEEELMN5B/7koigLsyZ84ceHp6Gn8WG8AJCQlgjKGgoMBke11dHRhj2LBhg3HbvHnzBC9hb9y4EYwx3Lp1CwBw69YtMMYQGhrK6+vp6Yn58+eL/l4GFMCEEDKwKIBFuHv3LoYPHw5/f3/jtoCAAMjlcowePRpyuRzu7u7405/+hObmZpPPrlmzBowxPHjwgLdfNzc3LF++3PjzmDFjsGTJEl6/w4cPgzGGY8eOAQAyMzPBGENGRgav7+LFi/H000+b/R0pgAkhZGBRAIvwm9/8BgqFwuRBrM2bN2Pz5s3IyspCVlYW3n//fQwePBhTp05Fa2ursV9gYCCcnZ0F9+vp6YkFCxYYf3ZycsLKlSt5/fLz88EYQ1JSEgAgMTFR8KwaAIKCgqBUKrv9Po2NjV3ei6AAJoSQgUEB3IMPPvgAjDH861//6rHv3r17wRjD5s2bjdsCAwOhUqkE+3t6emLhwoXGn52cnLBq1SpeP0MAJycnA/g2gM+ePcvrGxQU1GXgGwQHB3f5NB4FMCGEDAwK4G6EhITw7tN2R6fTYciQIVi6dKlxm+ESdFtbG6+/tS5B0xkwIYRYHwVwFwzhGxISIvozOp0OgwcPxrJly4zbujpbra+v54X7/PnzMXXqVN5+Q0NDwRhDbW0tgG8fwvr44495fb28vOghLEIIkQAKYAH//Oc/wRjDBx98YNbnUlJSwBjD559/btzW3NwMlUrFu7QcGhrKew0pPDycF9YajQbe3t544YUXTD4/Y8YM+Pj4QKvVGrcVFBSAMYYvvvjCrHEDFMCEEDLQKICf8Omnn4Ixhpdeeom3yIbhoafq6mrMnDkTW7duxZEjR3D06FGsWbMGKpUK3t7evCeeDQtxrFu3Drm5udi0aROcnZ0FF+Lw9vbG+PHjkZiYCLVaDX9/f8GFOHJycqBQKODv7w+1Wo3ExESMHz++1wtxUAATQohltLW14dy5c9DpdN32owB+wuzZs7tdMgwA7ty5A39/f0yaNAkuLi5QKpWYMmUKVq9ejbt37wrud8uWLfD09IRSqcSECRMQHBwsuBRlQ0MDVqxYgREjRkClUsHPzw9qtVpwn1lZWfDz84NKpcKIESOwYsWKXi9FSQFMiJ3TA7gMQNNTR9JbHR0dKCwsRHR0NHbs2GFyhVMIBTABQAFMiF27C+AggB0AinroS8ym0WhQUlKC2NhY7Nixw9ji4+NNVit8EgUwAUABTIhd0gH4CkAUuPA9DYB/4Y30kk6nQ1lZGXbt2mUSvIamVqvx8OHDLj9PAUwAUAATYneaAewDF7y7AdRbdzj2RK/Xo7KyEklJSYLBe+TIETQ1NfW4HwpgAoACmBC7oQNwHkAkgAgAZ0H3fS3oxo0bSE1NFQze9PR01NXVid4XBTABQAFMiF1oBLAH3FlvKoBvrDsce1JbW4v9+/cLBm9qaiqqq6vN3icFMAFAAUyIpGkAFIA7440EUAzuTJj0WVNTEzIyMgSDNzk5GVevXoVer+/VvimACQAKYEIkqw5AMriz3v0A7lh3OPaipaUFarVaMHjj4+NRXl7e43u+PaEAJgAogAmRnE4Ap8AFbzSAC+De9SV90trairy8PERERPCCNzY2FiUlJd2+WmQOCmACgAKYEEn5GkAiuPA9BOCedYdjD9rb25Gfn4/IyEhe8EZHR6OwsLBXqwx2hwKYAKAAJkQS2gFkgwveGACXQGe9fdTZ2YmioiLExMTwgjcyMhKnT58WrGZnCRTABAAFMCE2rwrALnDhexRAq3WHI3VarRYXLlxAXFyc4H3e7Oxs3LvXv5cWKIAJAApgQmxWG4AscMG7E0CldYcjdTqdDhUVFUhISBAM3szMTDQ3Nw/IWCiACQAKYEJs0hUAseDCVw2g61UNSQ/0ej2qqqqQkpIiGLyHDh1CQ0PDgI6JApgAoAAmxKa0AsgAF7zxAG5YdTSSV1NTg7S0NMHgTUtLQ01NjVXGRQFMAFAAE2IT9ADKwD1gtQNADgDLPnjrUBobG3Ho0CHB4E1JSUFVVZVVx0cBTABQABNidXcBHAAXvIkArHNSZheam5uRmZkpGLyJiYm4fPlynxfRsAQKYAKAApgQq6GSgRZz7949ZGdnCwZvXFwcSktLodVqrT1MIwpgAoACmBCraAaQBioZ2EdtbW04deqU4CIaMTExKCoqwqNHtve3GgpgAoACmJABpQWVDLSAjo4OFBYWIjo6mhe8UVFRKCgoQHt7u7WH2SUKYAKAApiQAfNkycCe67aTJ2g0GpSUlCA2NpYXvBEREcjLy0Nrq+2vVEIBTABQABPS76hkYJ/pdDqUlZUhPj5e8D6vWq1GS0uLtYcpGgUwAUABTEi/qgWVDOwDvV6PyspKJCUlCQZvRkYGmpqkdymBApgAoAAmpF90AjgJKhnYB9XV1UhNTRUM3vT0dNTV1Vl7iL1GAUwAUAATYnE3ASSASgb2Um1tLdLT0wWDNzU1FdXV1dYeYp9RABMAFMCEWAyVDOyTpqYmZGRkCAZvcnIyrl69Cr3ePv6BUgATABTAhFjEkyUDH1h3OFLS0tICtVotGLzx8fEoLy+3idWrLIkCmACgACakT9oAHAMXvHEArlp3OFLS2tqK3NxcRERE8II3NjYWJSUl0Gjs8yVpCmACgAKYkF6jkoG90t7ejvz8fERFRfGCNzo6GoWFhejosO9KFBTABAAFMCFmo5KBvdLZ2YmioiLExMTwgjcyMhKnTp1CW1ubtYc5ICiACQAKYEJEM5QMjAYXvrmgkoEiaLValJaWIi4uTvA+b3Z2Nu7dc6xHxSmACQAKYEJEoZKBZtPpdKioqEBiYqJg8GZmZqK5udnaw7QKCmACgAKYkG7pAJTg25KBZ0AlA3ug1+tRVVWFlJQUweA9ePAgGhoarD1Mq6IAJgAogAnp0m1QyUAz1dTUIC0tTTB409LSUFNDlw4ACmDybxTAhDzhyZKBhaCSgT1obGzEoUOHBIN39+7dqKqqsptFNCyBApgAoAAmxASVDDRLc3MzMjMzBYM3ISEBFRUVdreIhiVQABMAFMCEAODOcPPBBS+VDOzRvXv3kJ2dLRi8cXFxKC0thVartfYwbRYFMAFAAUwIlQwUr62tDadOnUJkZCQveGNiYlBUVITOzk5rD9PmUQATABTAxIE9WTKwFFQ8oQsdHR0oLCxEdHQ0L3ijoqKQn5+P9vZ2aw9TMiiACQAKYOKgqGSgKBqNBiUlJYiNjeUFb0REBPLy8tDa2mrtYUoOBTABQAFMHEw7gBOgkoE90Ol0KCsrQ3x8vOB9XrVajZaWFmsPU7IogJ9w4sQJ/P73v4eXlxcGDx6MsWPH4rXXXkNRURGvb3FxMebOnYshQ4Zg+PDh8Pf3R1VVleB+t27dCi8vLyiVSkyaNAkhISF49Ij/Jn9jYyMCAgIwcuRIuLi4wM/PD8ePHxfcp1qthp+fH1xcXDBy5EgEBASgsbGxV9+bApg4jCpwFYuoZGCX9Ho9KisrkZSUJBi8GRkZaGqiR8P7igL4CYsXL8acOXMQHh6O3NxcpKamws/PDwqFAidOnDD2q6iogKurK1588UVkZGQgLS0N3t7eGDt2LL755huTfa5fvx4ymQxr165FTk4OwsLCoFQqERgYaNKvo6MDPj4+GDduHBISEpCVlYVFixZBoVAgNzfXpG9ubi4UCgUWLVqErKwsJCQkwN3dHT4+Pr2qIEIBTOwelQwUpbq6GqmpqYLBm56ejrq6OmsP0W5QAD9B6AyytbUVo0ePxty5c43blixZAjc3N5PFw6urq+Hk5ITVq1cbt92+fRsqlQpBQUEm+9ywYQNkMhnKy8uN27Zt2wbGGPLz843bNBoNpk2bhhkzZph8fvr06Zg2bZpJncwzZ86AMYbw8HCzvzcFMLFrl0ElA3tQW1uL/fv3CwZvamoqqqurrT1Eu0MBLNKcOXPg6ekJgAtFFxcXrFy5ktdvwYIFmDJlivHnhIQEMMZQUFBg0q+urg6MMWzYsMG4bd68efDy8uLtc+PGjWCM4datWwCAW7dugTGG0NBQXl9PT0/Mnz/f7O9HAUzs0n1QycAeNDU1ISMjQzB4k5KSUFlZSatX9RMKYBHu3r1rvMcLAJcvXwZjDNu2beP1fffddyGTyYyP4q9ZswaMMTx4wL/R5ObmhuXLlxt/HjNmDJYsWcLrd/jwYTDGcOzYMQBAZmYmGGPIyMjg9V28eDGefvpps78jBTCxK1QysEctLS1Qq9WCwRsfH4/y8nJavaqfUQCL8Jvf/AYKhcL4IJbhUm9ycjKvr+Fs1XCfJDAwEM7OzoL79fT0xIIFC4w/Ozk5CZ5V5+fngzGGpKQkAEBiYqLgWTUABAUFQalUdvt9GhsbUVZWZtLS09MpgIl9aAGVDOxGa2sr8vLyEBERwQve2NhYlJSUmNzaIv2HArgHH3zwARhj+Ne//mXcZgjg3bt38/obAri+niuZEhgYCJVKJbhvT09PLFy40Pizk5MTVq1axetnCGBD4BsC+OzZs7y+QUFBXQa+QXBwMBhjgo0CmEgWlQzsVnt7O/Lz8xEVFcUL3ujoaBQWFvbqAU7SexTA3QgJCeHdpwV6dwm6ra2N19dal6DpDJjYHSoZ2KXOzk4UFRUhJiaGF7yRkZE4deqU4J9PpP9RAHfBEL4hISG83xkewhI6W124cKHJQ1hdna3W19fzwn3+/PmYOnUqb5+hoaFgjKG2thbAtw9hffzxx7y+Xl5e9BAWcRxUMrBLWq0WpaWliIuLE7zPm52dbfIWBxl4kgvg4uLiXjVz1if95z//CcYYPvjggy77LF26FKNGjcL9+/eN227evAmlUon33nvPuK25uRkqlYoX1qGhobzXkMLDw3lhrdFo4O3tjRdeeMHk8zNmzICPj49JpZGCggIwxvDFF1+I/q4GFMBEch4vGbgXVDLw33Q6HSoqKpCYmCgYvJmZmWhubrb2MAkkGMAymQxyudzsVlxcLGr/n376KRhjeOmll1BQUMBrBhUVFRg6dChmzZqFI0eOYN++ffDx8el2IY5169YhNzcXmzZtgrOzs+BCHN7e3hg/fjwSExOhVqvh7+8vuBBHTk4OFAoF/P39oVarkZiYiPHjx9NCHMT+aQAUgDvjpZKBRnq9HlVVVUhJSREM3oMHD6KhocHawySPkWQAf/jhh9i5c6eoFh0dbVYAz549u8sHlBgz/QpFRUWYO3cuBg8ejGHDhuH111/HtWvXBPe7ZcsWeHp6QqlUYsKECQgODhZcirKhoQErVqzAiBEjoFKp4OfnB7VaLbjPrKws+Pn5QaVSYcSIEVixYgUtRUnsG5UMFFRTU4O0tDTB4E1LS0NNDT0KboskGcCFhYWi+2u1WshkMtEB7KgogIlNo5KBghobG3Ho0CHB4N29ezeqqqpoEQ0bJrkATk9Px927d83+DD1s0D0KYGKzqGQgT3NzMzIzMwWDNyEhARUVFbSIhgRILoBJ/6AAJjbn8ZKBsQAqrDoam3D//n1kZ2cLBm9cXBwuXLhg8mAmsW0UwAQABTCxMVQy0ERbWxtOnz6NyMhIXvDGxMSgqKgInZ2d1h4mMZPkAjgtLc2sRsShACY2gUoGmujs7ERhYSGio6N5wRsVFYX8/HyzXrEktkVyAWx4DUkmk3XZDK8eDRo0yBKHdAgUwMTqHi8ZeBwOXTJQo9GgpKQEsbGxvOCNiIhAXl4eWltbrT1M0keSC+Dc3NxuW2ZmJn7xi19AJpPBycnJEod0CBTAxGqoZKCRTqdDeXk54uPjBe/zqtVqtLS0WHuYxEIkF8Dd2blzJyZOnAiZTIbXX38dFRX01IZYFMBkwFHJQCO9Xo+rV68iOTlZMHgzMjLQ1ERLfdkbuwjgjIwM+Pr6QiaT4ac//SnOnDnTX4eyWxTAZEBRyUCj6upqpKamCgZvenq6sbQpsT+SDuDCwkLMnj0bcrkc3t7eOHDggKUP4TAogMmAoJKBRnV1dUhPTxcM3tTUVFRXV1t7iKSfSTKAKysrsXjxYshkMowbNw5RUVH00nkfUQCTfvd4ycAUOGzJwKamJmRkZAgGb1JSEiorK2n1KgchuQB+++23oVQq8d3vfheffPIJFZC2EApg0m+ESgY64FoRLS0tUKvVgsEbHx+P8vJyOpFwMJILYMNrRj/5yU/w6quvdttee+01SxzSIVAAk35BJQPR2tqKvLw8RERE8II3NjYWJSUl0GioiLEjklwAT5w4EZMmTRLVPDw8LHFIh0ABTCxKAyAfXPA6aMnA9vZ2FBQUICoqihe80dHRKCwspCt4Dk5yAUz6BwUwsRgHLxn46NEjFBUVISYmhhe8kZGROHXqFNra2qw9TGIDKIAJAApgYgEOXjJQq9WitLQUcXFxgvd5s7OzqSobMUEBTABQAJM+cuCSgTqdDhUVFUhMTBQM3szMTDQ3N1t7mMQGSS6AfX19cfHiRdH9dTodfH19cenSJUsc3m5RAJNecfCSgVVVVUhJSREM3oMHD6KhocHaQyQ2THIBLJPJcO7cOdH9tVotZDIZiouLLXF4u0UBTMzmwCUDa2pqkJaWJhi8aWlpqKlx4KW9iGiSDOCxY8fCw8NDdJPL5RTAPaAAJqI5cMnAxsZGHDp0SDB4d+/ejaqqKlpEg4gmuQB+8803e9Vu3rxpicPbLQpgIoqDlgxsbm5GZmamYPAmJCSgoqKCFtEgZpNcAJP+QQFMuuWgJQPv37+P7OxsweCNi4tDaWkptFoHXNaLWAQFMAFAAUy6IFQysNOqIxoQbW1tOH36NCIjI3nBGxMTg6KiInR2OsA/CNKvKIAJAApgIuDxkoFJcIiSgZ2dnSgsLER0dDQveKOiopCfn4/29nZrD5PYCQpgAoACmDzGAUsGajQalJSUIDY2lhe8ERERyMvLQ2trq7WHSewMBTABQAFM/s3BSgbqdDqUl5cjPj5e8D6vWq1GS0uLtYdJ7BQFMAFAAezwHKxkoF6vx9WrV5GcnCwYvBkZGWhqcsDSTWRASTaAtVot6uvrqZqIhVAAOzAHKxlYXV2N1NRUweDdv38/amtrrT1E4iAkF8B6vR5r1qzB0KFDIZfLoVQqsWzZMty/f98Su3dYFMAO6MmSgV/CrksG1tXVIT09XTB49+zZgxs3blh7iMTBSC6AP//8c8hkMkyePBlLly7F888/D5lMhhUrVlhi9w6LAtjBOFDJwKamJmRkZAgGb1JSEiorK2n1KmIVkgvgH/zgB3j55Zeh0WiM29asWQNnZ2d6PaAPKIAdhAOVDLx79y7UarVg8O7atQtlZWW0ehWxKskFsIuLCw4dOmSyra6uDjKZjCoe9QEFsANwkJKBDx48QF5eHiIiInjBGxsbi5KSEpO/wBNiLZILYJlMhsLCQpNthopHX375pSUO4ZAogO2Yg5QMbG9vR0FBAaKionjBGx0djcLCQnpok9gUSQbwk+UIKYD7jgLYTl2D3ZcMfPToEYqKihATE8ML3sjISJw6dQptbW3WHiYhPJIM4O9///vw9fU1aTKZDFOmTDHZ9uyzz1rikA6BAtjOOEDJQK1Wi9LSUsTFxQne583Ozsa9e3Z6nZ3YBckF8OzZs/Gzn/1MdCPiUADbETsvGajT6XD58mUkJiYKBm9mZiaam5utPUxCeiS5ACb9gwLYDjhAycCqqiqkpKQIBu/BgwfR0NBg7SESIhoFMAFAASxpegAXYdclA2tqapCWliYYvGlpaaipcYBSTcTuUAATABTAkmXnJQMbGxtx6NAhweDdvXs3qqqqaBENIlkUwALu37+Pv//975g/fz7c3NzAGENwcDCvX0BAABhjvObl5SW4361bt8LLywtKpRKTJk1CSEgIHj3i13lrbGxEQEAARo4cCRcXF/j5+eH48eOC+1Sr1fDz84OLiwtGjhyJgIAANDY2mv2dKYAlxs5LBjY3N+PYsWOCwZuQkICKigpaRINIHgWwgBs3bmD48OGYNWsW3nrrrW4D2MXFBQUFBSbtq6++4vVdv349ZDIZ1q5di5ycHISFhUGpVCIwMNCkX0dHB3x8fDBu3DgkJCQgKysLixYtgkKhQG5urknf3NxcKBQKLFq0CFlZWUhISIC7uzt8fHzMft+RAlhC7Lhk4P3795GdnS0YvHFxcSgtLYVWa8dlmohDoQAWoNfrjZe1mpqaug3gIUOG9Li/27dvQ6VSISgoyGT7hg0bIJPJUF5ebty2bds2MMaQn59v3KbRaDBt2jTMmDHD5PPTp0/HtGnTTFb1OXPmDBhjCA8PF/VdDSiAJUAL4BzssmRgW1sbTp8+jcjISF7wxsTEoKioCJ2ddnZjmzg8CuAeWCKAExISwBhDQUGByfa6ujowxrBhwwbjtnnz5glewt64cSMYY7h16xYA4NatW2CMITQ0lNfX09MT8+fP73Fcj6MAtnGN4M527axkYGdnJ86dO4fo6GjBRTTy8/NpjXdit+wigCsqKrB9+3asX78e9fXc9bja2lo8fNj3FyB7CmC5XI7Ro0dDLpfD3d0df/rTn3jvIK5ZswaMMTx4wF+GyM3NDcuXLzf+PGbMGCxZsoTX7/Dhw2CM4dixYwCAzMxMMMaQkZHB67t48WI8/fTTZn1PCmAbZaclAzUaDUpKSrBz505e8EZERCA3Nxetra3WHiYh/UrSAazVavGHP/wBcrkcMpkMcrkcxcXFAIBXXnkFH374YZ+P0V0Ab968GZs3b0ZWVhaysrLw/vvvY/DgwZg6darJHx6BgYFwdnYW3L+npycWLFhg/NnJyQkrV67k9cvPzwdjDElJSQCAxMREwbNqAAgKCoJSqezyOzU2NqKsrMykpaenUwD3lwYAYQDeArDs3/8b9u/t3bHhkoENDQ0ICwvDW2+9hWXLluGtt95CWFhYj+/h6nQ6lJeXIz4+XvA+r1qtRktLywB9C0KsS9IB/NFHH0GlUuF///d/UV5eDplMZgzgbdu2Yfr06X0+RncBLGTv3r1gjGHz5s3GbYGBgVCpVIL9PT09sXDhQuPPTk5OWLVqFa+fIYCTk5MBfBvAZ8+e5fUNCgrqMvABIDg4WPDpbQpgCysEF7gKcLP/yab49+8Ln/hcJ4A8fFsy8CJspmRgYWEhli1bBoVCITh/FAoFli1bxiuYotfrcfXqVSQnJwsGb0ZGBpqa7OS6OiEiSTqAPTw8jPdPDQUZDAF85MgRuLm59fkY5gawTqfDkCFDsHTpUuM2wyVooQXhrXEJms6AB0A4ADmEg/fJJv93f8CmSwaGh4dDLpd3+Ze3x5tcLjc+CHjz5k2kpqYKBu/+/ftRW1tr5W9GiHVIOoCVSiWys7MB8AM4Ozu727NAsXoTwIMHD8ayZcuM27o6W62vr+c9hDV//nxMnTqVt9/Q0FAwxox/WBkewvr44495fb28vOghLGsKBzfbZRAXwIZ+f4HNlgwMDw8HYwwymUxUABv6rVq1SjB49+zZgxs3blj7axFiVZIO4HHjxiEqKgoAP4C/+OILTJ48uc/HMDeAU1JSwBjD559/btzW3NwMlUrFu7QcGhrKew3J8Afd42Gt0Wjg7e2NF154weTzM2bMgI+Pj8l7kQUFBWCM4YsvvjDna1IAW0ohuDNaseH7ZBBvgc2VDCwsLDQ+ZyEmfJ8M4jVr1hiDNykpCZWVlbR6FSGQeAAHBQXBw8MDt27dMqkJfPfuXTzzzDP4y1/+0ut9HzlyBKmpqYiJiQFjDEuWLEFqaipSU1PR1taG6upqzJw5E1u3bsWRI0dw9OhRrFmzBiqVCt7e3rwnng0Lcaxbtw65ubnYtGkTnJ2dBRfi8Pb2xvjx45GYmAi1Wg1/f3/BhThycnKgUCjg7+8PtVqNxMREjB8/nhbisKZlMD94H2/L+bu0tmXLlpkdvI+36dOnY9euXSgrK6PVqwh5jKQDuKGhAePHj8ewYcOwaNEiyOVyvPTSSxg3bhw8PDz6VJJs4sSJXf6BcuPGDdy5cwf+/v6YNGkSXFxcoFQqMWXKFKxevRp3794V3OeWLVvg6ekJpRZO9V4AACAASURBVFKJCRMmIDg4WHApyoaGBqxYsQIjRoyASqWCn58f1Gq14D6zsrLg5+cHlUqFESNGYMWKFbQUpbXUo+sHrsQ2BXp+OnoA1dfXd/nAldimUCiM768TQr4l6QAGuLBauXIlxo0bBycnJzz99NMIDAw0vg9MxKEAtoAw9C18DS1soAfetbCwsD6Fr6GFhdnQlyLERkg+gIllUABbwFuwTAAHPrlj6zGshd7X9uStFkKIxAP40aNHgqtLAcCDBw8EL+8SYRTAFtDX+7+GtuzJHVtPX+//GtrjbwUQQjiSDuCAgIAu/8P+9a9/jT/+8Y+WPqTdogC2ADoDpjNgQswg6QCeMGGCcWnGJyUnJ2PSpEmWPqTdogC2ADu8B/zee+/RPWBC+omkA9jZ2Rk5OTmCv8vJyely+UfCRwFsAXb0FHRNTQ3S0tIQFhYmevWr7p6C7mmNaEIckaQDePTo0YiMjBT8XWRkJJ566ilLH9JuUQBbQAOAmehbAFv5PeDGxkYcOnTIZNWq6dOn9ymAH19qlRDyLUkH8LJly/C9732P975vc3MzJk+ejDfeeMPSh7RbFMB9oAFwBtwykuvArWhl7kpYMnAraD1ZmGGANDc349ixY4LLRn700UeQyWRmr4RlqFD2ZGEGQghH0gFcUVEBV1dXjBgxAm+//TbWr1+PVatWYeTIkRg2bBguX75s6UPaLQrgXroFIAlc+KYDaEHv14I2b/VQi7h//z6ys7MFgzcuLg4XLlyAVqvt9VrQ5i6JSogjkXQAA8CFCxfw85//HAqFAjKZDAqFAnPnzsWFCxf643B2iwLYTD2VDPwC5lVDGuCcamtrw+nTpxEZGckL3piYGBQVFaGzs9PkM1988YVZ1ZAofAnpnmQDuL29HTt27MClS5cAAA8fPkRtbS3a29steRiHQQFshmoA8eDC9zCA+130KwR3T7e7esDLMaCXnTs7O3Hu3DlER0fzgjcyMhL5+fnd/jdUWFiI5cuXd1sPePny5XTZmRARJBvAAPcU9JMFCkjvUACL0A7gBMwvGdgA7tWiQHCLbAT+++cBfDBYo9GgpKQEO3fu5AVvREQEcnNz0draKnp/DQ0NCAsLQ2BgIJYtW4bAwECEhYXR086EmEHSAfzMM89g9+7dlt6tQ6IA7sE1AHHgwjcTQJt1hyOWTqdDeXk54uPjBe/zqtVqtLS0WHuYhDgkSQfw9u3b8dxzz+HevXuW3rXDoQDuQhu4wN0BLoCvWXc4Yun1ely9ehXJycmCwZuRkYGmpiZrD5MQhybpAH7nnXcwbtw4fPe738WvfvUr/PnPf8Y777xjbP/1X/9l6UPaLQpgARXgLjXvAHfpWSKPF9y8eROpqamCwbt//37U1tZae4iEEEg8gA3vJnbV5HK5pQ9ptyiAH3Mf3MNVO8A9bFVt3eGIVVdXh/T0dMHg3bNnD27cuGHtIRJCHiPpACaWQwEM7jWii+BeK9oB7jWjzm4/YROamppw5MgRweBNSkpCZWUl9Hp9zzsihAwoCmACgAIYLeAW0tgBbmGNW9Ydjhh3796FWq0WDN5du3ahrKwMOp3O2sMkhHTBLgL4+PHjWLt2LYKCgrBu3TqcOHGivw5ltxw2gHUASgBEgQvfM+CWlrRhDx48QF5eHiIiInjBGxsbiy+//BIajY1/CUKItAO4s7MTr7zyCuRyOWQyGZycnIz3fl999VU8evTI0oe0Ww4ZwLcBpIEL3hTYRBWi7rS3t6OgoABRUVG84I2OjkZhYSE6OjqsPUxCiEiSDuD3338fTk5OCAsLwzfffAMA+Oabb7Bp0yYolUp88MEHlj6k3XKoANYCOAcgEkDEv/+/1qoj6tajR49QXFyMmJgYwdWrTp06hbY2ibyYTAgxknQAf+9730NwcLDg74KDg+Hh4WHpQ9othwngBnBnuzsA7AVgw6/CarValJaWIi4uTvA+74kTJ+gdeEIkTNIBrFQqcfz4ccHfHT9+HEql0tKHtFt2H8CPlwyMBHff10afT9LpdLh8+TISExMFg/fo0aO8EpyEEOmRdAC7u7vjs88+E/zdZ599Bnd3d0sf0m7ZdQALlQy0UVVVVUhJSREM3oMHD6K+vt7aQySEWIikA/jtt9+Gq6sr0tLSTLanp6dj+PDh+M///E9LH9Ju2WUA91Qy0IbU1NQgLS1NMHjT0tLw9ddfW3uIhBALk3QA37lzB88++yzkcjlcXV0xZcoUDBs2DHK5HD/4wQ9okXkz2F0Aiy0ZaGWNjY04dOiQYPDu3r0bVVVVtIgGIXZK0gEMAB0dHdi+fTveeOMNzJs3D2+88QYiIiLodQwz2U0A97Zk4ABrbGzEsWPHBIM3ISEBFRUVtIgGIXZOcgHs7++Pq1evAgDy8vLMqmFKuib5ANaAu8T8eMnAB1YdEY9Wq0VlZSX27dsnGLxxcXG4cOECtFobfieKEGIxkgtgmUyGwsJCAIBcLjf+f9I3kg1gDYALAHaBC95dsLmSgW1tbTh//jx27dolGLwxMTE4f/48OjslsPA0IcRiJBfAo0aNQnJyMgAujM+dO2eJ3To8yQVwJ7hXiQxnvPHgzoBtaAXGhoYGHD9+HJGRkYLBGxsbi4KCArS3S6TOISHEoiQXwG+88QZUKhW8vb0hk8nw/e9/H76+voLt2WeftcQhHYJkArgDQBGAneCCNxFAOWxmJSutVosrV650+UTzjh07kJKSgvLycloqlRAHJ7kAvnPnDv7yl79g/vz5kMvleP755/Gzn/2sy0bEsfkAbge3ZGQsuOBNBveAlY08p/TgwQOcO3euy1WrduzYgczMTNy6JYEyS4SQASG5AH7c4/eDSd/YbAA/BHAW39boTQFQCZsJ3vr6eqjVasHKRI9fZqYlIwkhT5J0AFdXV9NlPAuxuQBuA7d0pCF4U8E9XGXlV2I1Gg3q6+tx4cKFbi8z79mzB5cuXaKygISQLkk6gInlWD2AtQAawT1IdRzf1udNA3AdVglenU6H27dvo6KiAnl5edi7d2+XZ7o7duxAREQEjh07htra2oEfLCFEciiACQArBPA9AFfBneXuB1cgYcdjLR3AzYEZinFI9+7h2rVryM/Px4EDBxAdHd1l2D7edu7cibNnz+L+fRtdbosQYpMogAmAfp4IneAKIhQDOIpvXx0ytJ3/3l4MoAbck879rL29HTdv3sT58+dx5MiRbh+eEmrR0dE4ePAgKioq6DIzIaRXKIAJAAtPhIcALgHIxbe1dw0tEsA+AKfBnQFb4dmkoqKiLt/N7erSclpaGk6ePInLly+jubmZ1mcmhPQZBTABYMGJoAP3ipAhcJPA3dMtBdAAq76vq9PpkJ2d3WPgJicn48SJE7h48SIaGhroDJcQ0i8kHcAeHh746quvBH938eJFeHh49Gq/9+/fx9///nfMnz8fbm5uYIwhODhYsG9xcTHmzp2LIUOGYPjw4fD390dVVZVg361bt8LLywtKpRKTJk1CSEiI4FPcjY2NCAgIwMiRI+Hi4gI/Pz8cP35ccJ9qtRp+fn5wcXHByJEjERAQgMbGRrO/s8UmQgW44M0HdyZsIzo7OwWrDu3atQuZmZkoLi5GTU0NFfEghAwYSQdwd+8Bnz9/HnK5vFf7vXHjBoYPH45Zs2bhrbfe6jKAKyoq4OrqihdffBEZGRlIS0uDt7c3xo4di2+++cak7/r16yGTybB27Vrk5OQgLCwMSqUSgYGBJv06Ojrg4+ODcePGISEhAVlZWVi0aBEUCgVyc3NN+ubm5kKhUGDRokXIyspCQkIC3N3d4ePjY3aQWGQi6MCd8e4Ed9/XRrS2tmLPnj28wgdU3J4QYk2SD+Cu1oJOSUnB8OHDe7VfvV5vvMfX1NTUZQAvWbIEbm5uJossVFdXw8nJCatXrzZuu337NlQqFYKCgkw+v2HDBshkMpSXlxu3bdu2DYwx5OfnG7dpNBpMmzYNM2bMMPn89OnTMW3aNJNLpGfOnAFjDOHh4WZ9Z4tMhCvgzn6Le78LS2tqakJ8fDyvzi4tjEEIsTbJBfDOnTsxZ84czJkzBzKZDD/84Q+NPxua4ZLsSy+91OfjdRXAGo0GLi4uWLlyJe8zCxYswJQpU4w/JyQkgDGGgoICk351dXVgjGHDhg3GbfPmzYOXlxdvnxs3bgRjzLiU4a1bt8AYQ2hoKK+vp6cn5s+fb9b37PNEMNz7jYXNnP1+/fXXiImJMQnfAwcOUPEDQohNkFwAh4eHw8fHBz4+PpDL5Zg8ebLxZ0P74Q9/iDfffBM3b/b9RdKuAvjy5ctgjGHbtm28z7z77ruQyWTGP+jXrFkDxhgePOAXqHVzc8Py5cuNP48ZMwZLlizh9Tt8+DAYYzh27BgAIDMzE4wxZGRk8PouXrwYTz/9tFnfs88ToRLc2W9R7z5uaRUVFbxFM9RqNdXaJYTYDMkF8OMmTZrU5UNYltJVABsu9RpKIz7OcLZaV1cHAAgMDISzs7Pg/j09PbFgwQLjz05OToJn1fn5+WCMISkpCQCQmJgoeFYNAEFBQVAqlV1+p8bGRpSVlZm09PT03k8EPYDd4M5+beAZpvPnz/MetiooKKBXhwghNkXSATwQegrg3bt38z5jCGDDQz6BgYFQqVSC+/f09MTChQuNPzs5OWHVqlW8foYANgS+IYDPnj3L6xsUFNRl4ANAcHAwGGOCrVcT4Sq4s9/z5n/UkoReM4qIiLCd9a0JIeQxkg7gmzdv9tj6ypKXoNva2nh9rXEJ2qJnwHpwi23EwKpnv0KvGUVHR+PGjRvWGxQhhHRD0gEsk8kgl8u7bX3V00NYQmerCxcuNHkIq6uz1fr6et5DWPPnz8fUqVN5+wwNDQVjzLjQv+EhrI8//pjX18vLa+AewqoCd/ZrxaqQXb1m1Jv3oQkhZKBIOoBjY2Oxc+dOk/bpp59i1qxZ+N73voeYmJg+H6O715CWLl2KUaNGmSzCf/PmTSiVSrz33nvGbc3NzVCpVLywDg0N5b2GFB4ezgtrjUYDb29vvPDCCyafnzFjBnx8fEweLCooKABjDF988YVZ37NXE0EPYA+4koFWerD49u3b9JoRIUSSJB3A3Vm8eDE++uijXn/+yJEjSE1NRUxMDBhjWLJkCVJTU5Gammq8lFxRUYGhQ4di1qxZOHLkCPbt2wcfH59uF+JYt24dcnNzsWnTJjg7OwsuxOHt7Y3x48cjMTERarUa/v7+ggtx5OTkQKFQwN/fH2q1GomJiRg/fvzALcRxHdzZL/829ICoqamh14wIIZJltwF8+PBhjB8/vtefnzhxYpcPKj1+X7GoqAhz587F4MGDMWzYMLz++uu4du2a4D63bNkCT09PKJVKTJgwAcHBwYJLUTY0NGDFihUYMWIEVCoV/Pz8oFarBfeZlZUFPz8/qFQqjBgxAitWrBiYpSj1AFLBnf1aYclJes2IECJ1dhvA6enpcHV1HchDSprZE+EGuLNf/ltQ/a6oqIheMyKESJ7dBfCjR49QVFSEH/zgB/jpT386EIe0C2ZPhH0AogDwH+zuV9evX6fXjAghdkHSAdzdU9AjR45EUZGNLMskAWZPhCgAR/p1SDwajQaJiYn0mhEhxC5IOoCDg4MREhJi0j7++GPs3r3b5Mlk0jOzJ8IOAFn9OiSeJy89X7lyZWAHQAghFiTpACaWY9ZE0IEL4BP9Papv3b9/H1FRUcbwTU9Pp3u+hBBJs5sAvnLlCvLz81FZWdmfh7FbZk2ER+ACOLenjpZz7Ngxk7PfpqamgTs4IYT0A8kH8J49ezBhwgST+78TJkxAampqfxzObpk1EdrBBfCp/h4Vp6amxiR88/LyBubAhBDSjyQdwBkZGZDL5fD19UVYWBgSEhLwySefwNfXF4MGDcKRIwP8lJCEmTURHoAL4DP9PSquwEJKSooxfGNjY2mhDUKIXZB0AM+cORMvvfQSdDqdyXa9Xo+FCxdi5syZlj6k3TJrItzDgK2AVVpaanL2e/Hixf4/KCGEDABJB/DgwYNx8OBBwd8dOHAAQ4YMsfQh7ZZZE+EOBqT84MOHDxEbG2sM39TUVN5ftgghRKokHcCurq7Yu3ev4O/27t1LK2GZwayJ0AQugL/s3zHl5uaanP0aKkERQog9kHQA//znP8eMGTPw8KHpYsQdHR3w8/PDvHnzLH1Iu2XWRGgEF8AX+m88jY2NvHWeCSHEnkg6gE+dOgWlUokxY8bgnXfewYYNG/DnP/8ZY8eOhbOzM86cGYCnhOyEWROhDlwA99Oc0ev12Ldvn8mKV62trf1zMEIIsRJJBzDAXab08/ODXC6HTCbDoEGDMHPmTHpVxUxmTYQacAFc0T9juXz5ssnZb3Fxcf8ciBBCrEjyAWzQ1taGW7duGWv1EvOYNRGqwQVwP6wE2dnZibi4OGP4JiUlUYlBQohdspsAJn1j1kSoAhfAwmWP+yQ/P9/k7JeKLRBC7JXdBLBOp4OHhweVpuslsyZCJbgAvmHZMdy5cwcRERHG8M3IyLDsAQghxIbYTQBrtVrIZDK6X9hLZk2ECnAB/LVlx3D48GFj+EZGRqKlpcWyByCEEBtCAUwAmDkRysEFsAVfy71+/brJpeeCggLL7ZwQQmwQBTABYOZEKAUXwA2WObZGo0FiYqIxfHft2oXOzk7L7JwQQmyU3QSwXq9HSEgI6uvr+/MwdsusiVACLoAtVBGwqKjI5Oz3ypV+eLyaEEJsjN0EMOkbsyZCEbgAbu77ce/fv4+oqChj+O7fvx96vb7vOyaEEBtHAUwAmDkRCsEF8N2+HzcrK8vk7Pebb77p+04JIUQCJBfAMpkMcrlcVBs0aJAlDukQzJoI+eACuI+rQ966dcskfGn1MkKII5FcAAcHByMkJER0I+KYNRFOgQvghz117JpOp0NKSooxfGNjY9He3t77HRJCiMRILoBJ/zBrIuSBC+A+PKhcWlpqcvZ78eLF3u+MEEIkiAKYADBzImSDC+BeLtH88OFDxMbGGsN3z5490Ol0vdsZIYRIlOQCOC8vz6xGxDFrIqjBBXAvH1bOzc01OfutrbXgih6EECIRkgtgsQ9hGfoRccyaCJkAInt3nMbGRpPwVavVvdsRIYRInOQCODc316xGxDFrImQAiOndcTIyMozhGx0djdbWPj5KTQghEiW5ACb9w6yJcAjATvOPodVqTRbdOH/+vPk7IYQQO0EBTACYOREOAogz/xh1dXUml5+bmiy0liUhhEiQpAP497//fbftD3/4g6UPabfMmggHAOwy/xjFxcUm7/3SkpOEEEcm6QCeOHEiJk2aZNJcXV0hk8nw3e9+Fx4eHpY+pN0yayKkA4g3/xiHDh0yBvDRo0fN3wEhhNgRSQdwV06cOAEvLy+UlpYO1CElz6yJsB9Aonn71+l0iI6ONgbwhQsXejVOQgixF3YZwADwr3/9C3PmzBnIQ0qaWRMhDUCSeftvaGigoguEEPIYuw3gEydOYMiQIQN5SEkzayLsBZBs3v5LSkqM4RsTE0MrXxFCHJ7dBvA//vEPTJw4cSAPKWlmTYRUALvN2//j7/9mZGT0aoyEEGJPJB3AH330Ea+tW7cOr7zyCgYNGoQ1a9ZY+pB2y6yJsAdAivh963Q6xMTEGAO4pKSk1+MkhBB7IekAlslkvKZSqTB16lRs2LABjx49svQh7ZZZEyEFXAiL9OTykw0NDb0eJyGE2AtJB7C15eTkgDEm2AoKCkz6FhcXY+7cuRgyZAiGDx8Of39/VFVVCe5369at8PLyglKpxKRJkxASEiL4l4nGxkYEBARg5MiRcHFxgZ+fH44fP96r72LWRNgN7jK0SF999ZXJ8pN0/5cQQiiA+8QQwBs3bkRBQYFJe3yN44qKCri6uuLFF19ERkYG0tLS4O3tjbFjx/KeBl6/fj1kMhnWrl2LnJwchIWFQalUIjAw0KRfR0cHfHx8MG7cOCQkJCArKwuLFi2CQqHo1RrYZk2EZHBPQot09OhRYwAfPnzY7LERQog9knwAa7VaJCUlITAwEL/85S8RGBiIpKQkaDSa/jicCUMAp6Z2fzq4ZMkSuLm54d69e8Zt1dXVcHJywurVq43bbt++DZVKhaCgIJPPb9iwATKZDOXl5cZt27ZtA2MM+fn5xm0ajQbTpk3DjBkzzP4uZk2ERAD7xO1Xr9eb1P4tLi42e2yEEGKPJB3ATU1N+OEPfwiZTAYnJyeMGTMGTk5OkMlkeP755/t9rWExAazRaODi4oKVK1fyfrdgwQJMmTLF+HNCQoLg5eu6ujowxrBhwwbjtnnz5sHLy4u3z40bN4Ixhlu3bpn1XcyaCAngFuMQoampyeT+b11dnVnjIoQQeyXpAP7tb3+LoUOHIikpCVqtFgB3RpyYmAhXV1f89re/tfQhTRgCeNSoURg0aBBcXV2xYMECnDp1ytjn8uXLYIxh27ZtvM+/++67kMlkaG9vBwCsWbMGjDE8ePCA19fNzQ3Lly83/jxmzBgsWbKE1+/w4cNgjOHYsWNmfRezJkI8uOUoRSgtLTWGb1RUlPHfEyGEODpJB/Dw4cPx+eefC/7us88+w/Dhwy19SBNffvkl/vu//xv79+/HyZMnERMTg2eeeQaDBg1CZmYmAODMmTNgjCE5mb9yheFs1XBWGBgYCGdnZ8FjeXp6YsGCBcafnZycBM+q8/PzwRhDUlLXS1U1NjairKzMpKWnp4ufCLvAFWQQ4dixY8YAPnjwoLgPEUKIA5B0AA8bNgxqtVrwd2q1GsOGDbP0IXvU0tKCcePG4dlnnwXwbQDv3s1fucIQwPX19QC4AFapVIL79fT0xMKFC40/Ozk5YdWqVbx+hgAWCnyD4ODgLp/eFjUR4sCVJOyBXq/Hzp07qf4vIYQIkHQA//KXv8R7770n+LvVq1fjtddes/QhRVm1ahUYY3j48GGvLkG3tbXx+lryEnSfz4B3AjjUc7fm5maT+7/m3pcmhBB7JukALikpgYeHB9599118+eWXqKurw5dffon/+Z//gYeHB0pKStDc3GxsA2XlypVgjKG9vd34EJbQ2erChQtNHsJKTEwEYwxnz5416VdfX897CGv+/PmYOnUqb5+hoaFgjKG2ttasMZs1EWIBiFhNsqyszBi+kZGRA/JkOiGESIWkA/jxFbDkcrmxCW2Ty+WWPrygO3fuwN3dHc8995xx29KlSzFq1Cjcv3/fuO3mzZtQKpUmZ/DNzc1QqVS8sA4NDeW9hhQeHs4La41GA29vb7zwwgtmj9usiRAN4EjP3dRqtTGA09NFPrVFiITodDrU1dXhxo0bqKqqokYN169fR01NDe7duwe9Xt/t/JF0AAcHByMkJER0s7Tly5fjvffeQ2pqKnJychAREQEvLy8oFAqTe9MVFRUYOnQoZs2ahSNHjmDfvn3w8fHpdiGOdevWITc3F5s2bYKzs7PgQhze3t4YP348EhMToVar4e/vPzALcUQBONpzt127dhkDuLCw0OwxEWLLdDodbty4gUuXLuHKlSu4du2a1f/wp2bddu3aNVRWVuLSpUu4dOkSqquru73yJ+kAtrbQ0FA899xzGD58OAYNGoSnnnoK/v7+OHfuHK9vUVER5s6di8GDB2PYsGF4/fXXce3aNcH9btmyBZ6enlAqlZgwYQKCg4MFl6JsaGjAihUrMGLECKhUKvj5+XX5UFpPzJoIkQAyu+/S0tJicv+3pqamV+MixFbV1dXh0qVLaGho6PFMhzgWjUaD2tpaXLp0qdva5xTABICZEyECQA+vGZeXlxvDNyIiggpjELtz48YNXLlyhcKXCNLr9bhy5QquX7/eZR8KYALAzImwA0BW912OHz9uDOD9+0Uum0WIhBguORLSFcNtia5QABMAZkwEPbgA7uFKd3x8vDGAn3yqmxB7YLjvR0hXepojFMAEgBkTQQcugE903eXevXsm939v3rxpyaESYhMogElPKICJKKInghZcAGd33aWiosIkgDs7Oy05VEJsAgUw6QkFMBFF9ETQgAvgnK67ZGdnG8M3Lc2MwsGESIi9B3BsbKzJMrWDBg2Cu7s73nzzTd6qdnFxcXBzczNZ60BKZs+eDW9v7277fPDBB/iP//gP6HQ60fulACaiiJ4IneACuJtXjRMTE40B/Hi9YkLsiaMEcGxsLAoKCpCdnY2QkBA4OzvDw8PDWLWtra0N7u7u2LRpk5VH3HtiAvju3bv4zne+g5iYGNH7pQAmooieCB3gAjhP+Nf37983ufx848YNC4+UENvgKAH8ZBGVDz/8EIwxJCQkAOBW5VOpVGhpabHGMC1CTAADwJ///Gd4enqKfvWMApiIInoitIML4JPCv75y5YpJABsKTRBibxw1gDMyMkzWpvf19eUVhlm8eDGmTZtmsu2VV14BYwx79uwxbisuLgZjrNtSpU1NTRg3bhx+/OMfm6wnUF5ejsGDB1uk7rvYAC4sLARjDCdOdPMU6mMogIkooifCQ3ABfEr417m5ucbwTU1NtfQwCbEZXf3hqtVqcefOHZtqWq3W7O/XVQBv2bIFjDFERESgpqYGjDGEh4eb9Nm+fbtJrXONRgNXV1e4uLiYLKv7ySefQKFQmNw7njhxIiZOnGiyv9OnT0OhUOCvf/0rAO6y97Rp0zB16lTjpXCAWx5Uo9H02J785yE2gLVaLYYOHYq//e1vPfYFKICJSKInQhu4AD4j/Ovk5GRjAJ8+fdrSwyTEZnT1h+udO3dMrgLZQrtz547Z388QwGfPnoVGo0FraysOHz6Mp556Cq6urmhoaEBKSopgBbdr166BMYZdu3YB4AKUMYbVq1fDw8PD2G/+/PmYOXOmyWcnT56MyZMn88bzySefgDGG/fv3IyAgAC4uLigtLTXp012t88fbkwEvNoAB4Cc/+YnogjcUwEQU0RPhAbgAFni26sGDByb/0dvz5TlCHCWA7HNe+wAAH0NJREFUn2y+vr7Gv1x/9tlnYIwJLrc4adIkrFixAgAXjL6+vigtLQVjDNeuXUNHRwdcXFzwj3/8Q9R49Ho9Xn75ZahUKjDGEBUVxetTW1uL8+fP99ieDG5zAtjf3x/jxo0T1ZcCmIgieiK0ggvgAv6vrl69avIf/cOHD/tjqITYBEcJ4F27duH8+fMoKSkxXlI22Lhxo8ml5sf98Y9/hLu7OwDurNFw2Xb06NHYvn07Tpw4AcYYTp7s4oESAampqWCMYcyYMYLrC/T3JWiAq4I3cuRIUX0pgIkooifCPXABLLC65MmTJ43/waekpPTHMAmxGY56D/hxERERXf65kZSUBMYYCgsLoVAocPQoV8N0+fLl+NWvfoW1a9di6NChogu11NXVYdSoUXjuuefg5OSEd955h9dnIC5BL1y4EF5eXqL6UgATUURPhLvgAligvG9KSooxgM35Wy0hUuSoT0E/7uTJk2CM4cCBA7zfNTY2QiaTYcGCBVAqlWhrawMAREdHY8SIEfjRj36EX/ziF6LGotVqMXv2bIwePRr19fX49NNPwRjjLfQzEJegp0yZAn9/f1F9KYCJKKInQgu4AH6i5HFbW5vJJa+rV6/211AJsQkUwEBnZydcXFywdu1awd/7+vqCMYY5c+YYt928edN4Jrp582beZ4Segn7//fchl8tx/Phx47ZXX30V3/nOd7ot9yfW7NmzMX78eKSmpvJabu63qw7dvn0bjDFs3bpV1H4pgIkooifCHXAB/MR/k1VVVSYBbPjbLiH2igKY87vf/Y73zq/BX//6V5N3hg2mTJkCxhjvTBQA3Nzc4OfnZ/w5KysLcrkcwcHBJv2am5sxYcIETJ8+vc/rzc+ePbvLy9WzZ8829ouOjoaTkxMaGhpE7ZcCmIgieiI0gwvgYtPNp06dMoZvcnJyfw2TEJth7wEs1vnz5wVfReqN8vJyMMZw+PBhC4zM8n7605/i17/+tej+FMBEFNET4Ta4AP7SdPOePXuMAZyX18U6lYTYEQrgby1duhQvv/xyn/fzf//3f/jxj39sgRFZXl5eHpydnc36d04BTEQRPRGawAVwybeb2tvbTS4/V1ZW9udQCbEJFMDfqqmpQUhIiGSrIYmxb98+s9/uoAAmooieCI3gAvirbzddv37dJIBbW1v7c6iE2AQKYNITCmAiiuiJ0AAugC98u+nMmTPG8E1KSurPYRJiMyiASU8ogIkooidCPbgAfuzhxb179xoDOCcnpx9HSYjtoAAmPaEAJqKIngh14AL4IvdjR0eHyeXny5cv9/dQCbEJFMCkJxTARBTRE6EWXACXcz9WV1ebBPC9e/f6e6iE2AQKYNITCmAiiuiJcAtcAF/ifiwoKDCGb0JCQn8PkxCbQQFMekIBTEQRPRFqwAVwBffjvn37jAF84sSJ/h4mITaDApj0hAKYiCJ6ItwEF8CXuXVgIyIijAF86dKlgRgqITaBApj0hAKYiCJ6IlSDC+ArwNdff21y/7elpWUghkqITbD3ADasBW1ogwYNgru7O958803cunXLpG9cXBzc3NwkvRBHcXEx5s6diyFDhmD48OHw9/fn/fu9cuUKnJycUFxc3MVeTFEAE1FET4Qb4AK4EigsLDSG765duwZglITYDkcJ4NjYWBQUFCA7OxshISFwdnaGh4cHHjx4AICrhObu7o5NmzZZecS9V1FRAVdXV7z44ovIyMhAWloavL29MXbsWHzzzTcmfd98803MmjVL1H4pgIkooifCdXABfBXYv3+/MYDVavVADJMQm+EoAfxkNaQPP/wQjDHjQ5fh4eFQqVSSvgK2ZMkSuLm5mbzFUV1dDScnJ6xevdqkb1FRERhjOHPmTI/7pQAmooieCFUAdgCaKxpERkYaA7i8vHxAxkmIrXDUAM7IyDApMejr64slS5aY9Fm8eDGvROErr7wCxhj27Nlj3FZcXAzGGA4ePNjlOJqamjBu3Dj8+Mc/xqNHj4zby8vLMXjwYPz2t7/t9XcEAI1GAxcXF6xcuZL3uwULFmDKlCm87c888wx+97vf9bhvCmAiiuiJcA3ADqA+v97k/u+dO3cGZJyE2ApHDeAtW7aAMYaIiAjU1NSAMYbw8HCTPtu3bwdjDHV1dQC4kHN1dYWLiwsCAwON/T755BMoFAqTe8cTJ07ExIkTTfZ3+vRpKBQK/PWvfwXAXfaeNm0apk6darwUDgA6nQ4ajabHptVqjZ+5fPkyGGPYtm0b75/Bu+++C5lMhvb2dpPtb7/9Ntzc3KDX67v9Z0gBTEQRPRGuAtgBXDhwwRi+cXFxPU5EQuxNt3+4ZgLYYwMts/ffzxDAZ8+ehUajQWtrKw4fPoynnnoKrq6uaGhoQEpKimAt4GvXroExZnw25PTp02CMYfXq1fDw8DD2mz9/PmbOnGny2cmTJ2Py5Mm88XzyySdgjGH//v0ICAiAi4sLSktLTfoEBwebPDjWVXs84M+cOQPGmGAd840bN5r8RcIgMjISjDFUVFR0+8+QApiIInoiXAGwA8iKzDIG8LFjxwZkjITYEkcJ4Cebr68vTp8+DQD47LPPwBjD9evXeZ+fNGkSVqxYAYALRl9fX5SWloIxhmvXrqGjowMuLi74xz/+IWo8er0eL7/8MlQqFRhjiIqK4vWpra3F+fPne2yPB7chgHfv3s3bnyGA6+vrTbYfOHAAjDEcP3682zFTABNRRE+Ey4A2XIukj5OMAXzx4sWBGSQhNsRRLkHv2rUL58+fR0lJCe9MsKszRAD44x//CHd3dwDAT37yE/ztb38DAIwePRrbt2/HiRMnwBjDyZMnRY8pNTUVjDGMGTMGnZ2dvN8P1CXoY8eOgTGGQ4cOdTteCmAiiuiJUAG0fNKChNAEYwDfvn17YAZJiA1xlAB+8h7w4yIiIrr8cyMpKQmMMRQWFkKhUODo0aMAgOXLl+NXv/oV1q5di6FDh5o8WNWduro6jBo1Cs899xycnJzwzjvv8Pr05hK04SGsVatW8fa3cOFCwYewkpOTwRhDQUFBt2OmACaiiJ4Il4DqddVI+JgL4NjYWLr/SxwSBTBw8uRJMMZw4MAB3u8aGxshk8mwYMECKJVKtLW1AQCio6MxYsQI/OhHP8IvfvELUWPRarWYPXs2Ro8ejfr6enz66adgjCEtLc2kX28uQQPA0qVLMWrUKJOHwW7evAmlUon33nuPN54NGzZALpf3+PApBTARRfREKAcu/OkC4j+Jx44dO5CZ2YebTIRIGAUwtxyti4sL1q5dK/h7X19fMMYwZ84c47abN28az0Q3b97M+4zQU9Dvv/8+5HK5yT3XV199Fd/5zncE7z+bq6KiAkOHDsWsWbNw5MgR7Nu3Dz4+PoILcRiO/fzzz/e4XwpgO9ba+v/t3X1UVGUeB/AHhIFhRlRgDTBCOqGuUOYSOGxnxZdG6MXSrd0Tx1V0V1p3a2E521q7arRhmpK7RVnSadctwZel1qGII6CAssqmodIaZprYQT1SuURgoSN+9485d3auM4wDM3PnOn0/59xz4um5d+7z43K/3tfpQX5+PmJiYhASEoJJkyY5vJPPFa5uCJdbL6NpfhPeXPsmSktL0draOqTPI7reMYAt5s+fb/fMr6SgoED2zLAkMTERQgi7I1EAiIqKgsFgsP5cW1uLwMBAFBYWyvqdP38eN910E1JTUx1eDx6sDz74ADNnzkRYWBjCw8MxZ84cnDhxwq5fT08PwsLCsG7dumsukwHsx4xGI0aOHIkNGzagvr4eixcvhhAC5eXlg16WqxvCFw1fYPe83dYAdvSvQ6LvAn8PYFcdOHDA4aNIQ/HRRx9BCIGqqioPrJl3vP7669DpdC69+4AB7Kekt9Fs3rxZ1m40GhEbGyu7y88Vrm4IbVvbLAFc/Cb+9re/ob+/f9DrTuQPGMD/99Of/hT33nuv28t5+eWXkZ6e7oE18g6z2YzExESsXLnSpf4MYD+1ePFi6PV6mM1mWbt056Er7ym15eqGsOelPdg9bzfeKH4D1dXVg15vIn/BAP6/jo4OPP3009f1tyG54uTJk/jTn/5k91jSQBjAfspgMCA1NdWuXfqFlpaWDmp5rmwI/f392F643RLAz7+BQ4cODXq9ifwFA5iuhQHspxITE5GZmWnXfvbsWQghsGrVqgHn7ezsxJEjR2STyWS65obQ2dmJt5a9hd3zduPv6/6Oc+fOeWQsRNcjBjBdCwPYTyUmJiIrK8uuXQrg1atXDzivs4fVnW0Ihw8fxlvL30Lj/EZsenETr//Sd9qnn37q8C5ZIsmJEycYwP7InVPQQz0C7ujowK5du1BWVqbquxSJlNDe3o5jx47xRTTk0JUrV3Ds2DGnzykzgK9Tubm5Dm/Ckl6R5q2bsCSuvj6OyF+dPXsWbW1tOHfuHEOYZMxmM86cOYO2tjanj2oygK9T1dXVDr/BIysry6uPIRGRRX9/P9rb29HW1oZjx45ZTzdy+u5OJ06cwCeffIK2tja0tbXh1KlTdgdJthjA1zGj0YhRo0bhtddeQ319PXJzcyGEQFlZ2aCXxQAmGrz+/n6cPXsW7e3tPt/5c1LHdPLkSXR0dKC7u/uaZ0YYwNexnp4e5OXlITo6GhqNBrfddpvXX0VJRESewQAmAAxgIiKlMYAJAAOYiEhpDGACwAAmIlIaA5gAMICJiJTGACYADGAiIqUxgAkAA5iISGkMYAIAtLS0QAgBk8lk95pKTpw4ceLk+Ul6BXBLS4vX9/EMYBWTNgROnDhx4qTsZDKZvL6PZwCrWFdXF0wmE1paWlz6F9t3/UiZdWAdWAfWwd06tLS0wGQyoaury+v7eAawHzhyhNeKAdZBwjpYsA4WrIOFGuvAAPYDatywfIF1sGAdLFgHC9bBQo11YAD7ATVuWL7AOliwDhasgwXrYKHGOjCA/YAaNyxfYB0sWAcL1sGCdbBQYx0YwH6gs7MThYWF6Ozs9PWq+BTrYME6WLAOFqyDhRrrwAAmIiLyAQYwERGRDzCAiYiIfIABTERE5AMMYJXo6elBfn4+YmJiEBISgkmTJmHLli0uzdvZ2YmcnBxERkZCq9XCYDBg586dDvvW1dXBYDBAq9UiMjISOTk5qropwdt16O7uxsqVK5GRkYEbbrgBOp0OycnJeO655/Dtt996Y0hDotT2IPnmm2+QmJgIIQSKi4s9MQSPUKoOvb29WLFiBRITE6HRaBAREYFp06bhk08+8eRwhkyJOvT19WHt2rVISkpCWFgYRo8ejaysLOzdu9fTwxmyodaho6MD+fn5mDp1KkaMGAEhBDZu3Dhgf6X2kwxglTAajRg5ciQ2bNiA+vp6LF68GEIIlJeXO52vr68PycnJuPHGG1FWVoba2lo88MADCAoKQmNjo6xvY2MjgoKC8MADD6C2thZlZWUYM2YMkpOT0dfX583huczbdfjPf/6DqKgoFBQUoLKyErt27cLTTz+N0NBQzJw5E1euXPH2EF2ixPZg63e/+x1iY2NVF8BK1KGnpwd33HEHYmNjUVJSgsbGRlRWVuKJJ57A4cOHvTk8lylRh/nz5yMwMBDLli3Drl27UFFRgZSUFAQFBeH999/35vBcNtQ6NDQ0ICoqCnfddReys7OdBrCS+0kGsAq89957EEJg8+bNsnaj0YjY2Fhcvnx5wHnXr18PIQT27dtnbTObzZg4cSLS0tJkfVNTUzFx4kSYzWZr2969eyGEwCuvvOKh0QydEnXo7e1Fb2+v3fzFxcUQQqCpqckDI3GPUtuD5P3334dGo0FFRYWqAlipOuTn50On0+HTTz/17AA8RIk69PX1YdiwYfjZz34mm//s2bMQQiAvL89Doxk6d+rQ399v/e8DBw44DWAl95MMYBVYvHgx9Hq97BcOAJs3b4YQwukpoLvuugvjx4+3a1+1ahWEEDh9+jQA4PTp0xBCYPXq1XZ9x40bB6PR6OYo3KdEHQaye/duh3/cvqBkHS5evIikpCQUFBSgvb1dVQGsRB0uXLgAnU6HhQsXenblPUiJOly6dAnBwcF49NFHZf16e3sRGBiIpUuXemAk7nGnDracBbDS+0kGsAoYDAakpqbatUtvbiktLR1w3ujoaPzkJz+xa6+qqoIQAjU1NQCAHTt2QAiB9957z67vQw89hJiYGDdG4BlK1GEghYWFEEKgtbV18CvuYUrWYdmyZRg7dix6e3tVF8BK1GHPnj0QQuDZZ5/FkiVLMHLkSAQHByMlJQVVVVWeG4wblNoe8vPzodfrsX37dnR3d6O9vR3Z2dkYNWoUjh8/7pnBuMGdOthyFsBK7ycZwCqQmJiIzMxMu3bp9M+qVasGnDc4OBi//OUv7dr37dsnO6IrLy+HEALNzc12fR955BFoNBo3RuAZStTBkdbWVmi1WsydO3doK+5hStXh0KFDCA4Oxo4dOwBAdQGsRB22bNkCIQTCw8Nx55134p133kFVVRWmT5+OgIAAa218Sant4cqVK3jqqacQGBho/U7cm266CYcOHfLMQNzkTh1sOQtgpfeTDGAVSExMRFZWll27tGE5Oh0iCQ4OxpIlS+zapT8w6Q5BacP697//bdf3kUceQUhIiBsj8Awl6nC19vZ2xMXFYdy4cTh//vzQV96DlKiD2WzG5MmTZdf81BjASv1dREVF4euvv7b2u3DhAmJjY3HnnXd6YCTuUervoqioCGFhYXjmmWfQ0NCAyspKGI1GREVF4eDBg54ZjBvcqYMtVwJYqf0kA1gFeAraQulT0KdOncLYsWORkJCAjo4O91beg5SoQ3FxMUaMGIHjx4+jq6sLXV1daG1thRACRUVF6OrqcnpTixKU/Lu4//777fpmZ2dDq9W6MQLPUKIObW1tCAgIsPvH16VLl3DLLbdg2rRpbo7CfTwFTV6Rm5vr8OYC6fSYs5sLjEYjJkyYYNe+evVqCCFw5swZAP+/ueC5556z6zt+/HhV3ISlRB0kUvjGx8fj1KlTnhmAhyhRh5ycHOtpxoEmX596VKIO0tGTowB++OGHodPp3ByF+5Sog7QsR4+qPfjgg4iKinJzFO5zpw62XLkJS6n9JANYBaqrqyGEwNatW2XtWVlZ17y9/pVXXrE7ZWI2m5GUlIQpU6bI+qalpSE5OVm2vObmZggh8Oqrr3poNEOnVB0+++wzjB07FnFxcap89ESJOhw9ehQNDQ2ySdqRLVmyBA0NDejp6fH84AZBqe0hPT0dkZGR6O7utrZduHABMTExmDlzpodGM3RK1EF6CuDq4Onr60NCQgJuv/12D41m6Nypg61rPYak5H6SAawSRqMRo0aNwmuvvYb6+nrk5uZCCIGysjJrn5///OcYNmyY7Iitr68PSUlJiIuLQ3l5Oerq6jB37lyHD9o3NDQgKCgIc+fORV1dHcrLyxEXF6e6F3F4sw6dnZ24+eabERISgrKyMjQ3N8smtZyKVmJ7uJrargEDytRh79690Gg0MBgM2L59O0wmE370ox8hODhY9vysL3m7Dv39/UhNTUVoaCieeuop7Ny5E2+//TamTZsGIQQ2bdqk6HgHMtQ6AEBFRQUqKiqwZs0aCCHw6KOPWttsKbmfZACrRE9PD/Ly8hAdHQ2NRoPbbrvN7sYh6bRhe3u7rP3cuXNYsGABIiIiEBoaCoPBgLq6OoefU1tbC4PBgNDQUERERGDBggWqexWlN+vQ0NDg9LRrYWGhl0foGqW2B1tqDGCl6tDU1ISMjAyEhYUhLCwMM2bMUN0rGL1dh6+++grLli3D97//feurKKdNm4bq6mpvDm1Q3KmDs7/7qym1n2QAExER+QADmIiIyAcYwERERD7AACYiIvIBBjAREZEPMICJiIh8gAFMRETkAwxgIiIiH2AAExER+QADmIiIyAcYwEReJr3+sqGhwdpWWFjo8BV4Slm/fv2AL6MfCuk1lrbL3Lhxo8NXAqqBtL7SdPX7gH1t0qRJ1nW79957fb065CUMYCIvU2MAJyUlISMjw2PLcxTAn3/+OZqbm1XzRR+2pPVdvnw5mpubcf78eV+vksyHH36I5uZmREdHM4D9GAOYyMu+qwGsZtfL+sbHxzOA/RgDmMiGFIwHDx7E3LlzMXz4cISHh2PevHn4/PPPZX0H+vak+Ph45OTkWH/2RAA3NTVhxowZ0Ov10Gq1SE9PR1VVlcN1v9rVp4Lj4+Ptvg0mPj7e6ef/4x//QFpaGsLDw6HVapGQkIBFixZZ/7+rp6AzMjKQlJSEPXv2YMqUKQgNDUVsbCyWL19+ze9zffzxxxEeHi7r99hjj0EIgbVr11rbvvzySwQEBKCkpGTAZTkLYKmOra2teOihhxAeHo5Ro0ahoKAAZrMZH3/8MTIzM6HX6xEfH481a9bI5pd+3+Xl5Vi6dCmio6Oh0+lw33334dy5c/j666+Rm5uLyMhIREZGYuHChQN+9zID2L8xgIlsSDvf+Ph4/P73v0dNTQ3+/Oc/Q6fTYfLkybh06ZK1r1IB3NjYiODgYKSkpGDbtm0wmUyYNWsWAgICZF9O7moAHzx4EDfffDMmT55s/R7kgwcPDvj5+/btQ0BAAB5++GFUV1ejvr4eGzduxPz58619BhPAkZGRiI2NRUlJCWpqapCXl2f9flZnduzYASGE7Dt6J0yYAK1WC6PRaG3btm0bhBBoa2sbcFmuBPD48eNRVFSEuro6LF26FEIIPPbYY5gwYQJKSkpQV1eHRYsWQQiBt99+2zq/9PuOj4/HwoULsWPHDmzYsAF6vR7Tp0+H0WjE448/jtraWqxZswbDhg3Db37zG4fryQD2bwxgIhvSzregoEDWXl5ebvfF30oFsMFgwOjRo2VHSZcvX0ZycjJuvPFGXLlyxekyHQXhYE5BP//88xBC4Kuvvhqwz2ACWAiByspK2fy5ubkIDAzEZ599NuBnXLhwARqNBs888wwA4PTp0xBC4IknnoBWq7Vea87NzUVsbKzTMbkSwOvWrZO133777RBC4J///Ke1zWw243vf+x5+/OMfW9uk3/fs2bNl8//2t7+FEAJ5eXmy9jlz5iAiIsLhejKA/RsDmMiGtPP94IMPZO1msxlBQUH4xS9+YW3zZAD39/fDbDZbJ+k0a29vLwICAvDrX//a7nPWrFkDIQSOHj3qcJkSdwN49+7dEEJg1qxZ2LZtG06fPm3XZzABPHz4cLv5pRpt2rTJ6bpkZGRg6tSp1uWPHDkSX375JYYNG4adO3cCABISErBgwQKny3ElgI8dOyZrz87ORkBAAL799ltZe3p6OlJSUuzGUlpaKutXWloKIQRqampk7X/4wx8ghHB4GpoB7N8YwEQ2pJ2vo5C54YYbMGfOHOvPngxg6eerr8l2dHRACIGioiK7z9m0aROEEPjXv/7lcJkSdwMYAEwmE2bMmIGQkBAIIZCUlITNmzdb//9gAviWW26xW/7Ro0chhMALL7zgdD2Kioqg0WjQ29uLefPmWY8809LS8OSTT+LkyZMQQuDNN990uhxXAviLL76Qtefk5ECn09n1l65rS6Tf99WPNkn1OHDggEufBzCA/R0DmMjGYI6AQ0JC8OSTT9otQ6/XDzqAz5w5gwMHDlinDz/8EIDlCDgwMNDpEfDHH38MAFi9ejWEEHaP/RQXF7sdwJK+vj40NjYiMzNTdj1WqSPgffv2QQiB6upqREdH49VXXwVgOYpMSUmxHmWeOXPG6XIYwKQGDGAiG9e6BmwbEOPHj8c999wj67dr1y4IITx6DTg9PR3R0dH45ptvrG39/f249dZbZdeAt2zZAiEE9u/fL5t/6tSpdkH4gx/8AGlpaS59viOHDx+GEALr168HoMw1YMBy7Ts8PByzZs2CEAInTpwAYKl7YGAgZs6ciYkTJ15z/RnApAYMYCIbV98FXVtbi7/85S/Q6/WYNGkSLl68aO27cuVKBAQEYMWKFdi5cydKSkowbtw4jBgxwit3QU+ZMgUVFRWorKxEZmam3V3Q3d3diIiIwK233ort27fj3XffxYMPPoiEhAS7IMzJyUFISAi2bt2K/fv3W4+4HVmxYgUWLVqEsrIyNDY2wmQyYfr06QgODsaRI0cADO0u6Jdeegk1NTXIz8+HEAK/+tWvXKrH7NmzIYRAQkKCta2vrw9ardbhTU6OMIBJDRjARDaknWFLSwtmz54NvV6P4cOHIzs7G52dnbK+Fy9exNKlSxEXFwetVouMjAwcPnzYq88B63Q6aLVaGAwGvPvuu3b99u/fjx/+8IfQ6XQYM2YMCgsL8frrr9sF4alTpzBr1iwMHz5cds3ZkaqqKtx9990YM2YMNBoNRo8ejXvuuQdNTU3WPoN9DrixsRF33HEHQkJCEBMTgz/+8Y8wm80u1eLFF1+EEAK5ubmydqPRCCEE3nnnnWsugwFMasAAJrLhbGdI7rs6rHxFCuC//vWvMJvN1tP4anH58mWYzWYGsJ9jABPZYAB7l9oCWJr4ZQzkCwxgIhsMYO9SSwBfvHhRdtf5f//7X1+vksxHH31kXbfjx4/7enXISxjAREREPsAAJiIi8gEGMBERkQ8wgImIiHyAAUxEROQDDGAiIiIfYAATERH5AAOYiIjIBxjAREREPsAAJiIi8gEGMBERkQ8wgImIiHyAAUxEROQDDGAiIiIfYAATERH5AAOYiIjIBxjAREREPsAAJiIi8oH/AfRln1tk0aZyAAAAAElFTkSuQmCC\" width=\"400\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fix, ax = plt.subplots(1,1, figsize=(4,3),tight_layout=True)\n",
+    "po.hist.plot_Pw(ax, 0.4)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Fiber and matrix stress at time $t$"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 73,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,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\" width=\"800\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fig, (ax1, ax2) = plt.subplots(1,2, figsize=(8,3),tight_layout=True)\n",
+    "po.plot_eps_p(ax1, 0.6) # last argument between 0 and 1 defines the selected state during the simulation\n",
+    "po.plot_sig_p(ax2, 0.6);"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Slip and shear flow "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 74,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,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\" width=\"800\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fix, (ax3, ax4) = plt.subplots(1,2, figsize=(8,3),tight_layout=True)\n",
+    "po.plot_s(ax3, 0.6)\n",
+    "po.plot_sf(ax4, 0.6);"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Energy dissipation"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 75,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "application/javascript": [
+       "/* Put everything inside the global mpl namespace */\n",
+       "window.mpl = {};\n",
+       "\n",
+       "\n",
+       "mpl.get_websocket_type = function() {\n",
+       "    if (typeof(WebSocket) !== 'undefined') {\n",
+       "        return WebSocket;\n",
+       "    } else if (typeof(MozWebSocket) !== 'undefined') {\n",
+       "        return MozWebSocket;\n",
+       "    } else {\n",
+       "        alert('Your browser does not have WebSocket support. ' +\n",
+       "              'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
+       "              'Firefox 4 and 5 are also supported but you ' +\n",
+       "              'have to enable WebSockets in about:config.');\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
+       "    this.id = figure_id;\n",
+       "\n",
+       "    this.ws = websocket;\n",
+       "\n",
+       "    this.supports_binary = (this.ws.binaryType != undefined);\n",
+       "\n",
+       "    if (!this.supports_binary) {\n",
+       "        var warnings = document.getElementById(\"mpl-warnings\");\n",
+       "        if (warnings) {\n",
+       "            warnings.style.display = 'block';\n",
+       "            warnings.textContent = (\n",
+       "                \"This browser does not support binary websocket messages. \" +\n",
+       "                    \"Performance may be slow.\");\n",
+       "        }\n",
+       "    }\n",
+       "\n",
+       "    this.imageObj = new Image();\n",
+       "\n",
+       "    this.context = undefined;\n",
+       "    this.message = undefined;\n",
+       "    this.canvas = undefined;\n",
+       "    this.rubberband_canvas = undefined;\n",
+       "    this.rubberband_context = undefined;\n",
+       "    this.format_dropdown = undefined;\n",
+       "\n",
+       "    this.image_mode = 'full';\n",
+       "\n",
+       "    this.root = $('<div/>');\n",
+       "    this._root_extra_style(this.root)\n",
+       "    this.root.attr('style', 'display: inline-block');\n",
+       "\n",
+       "    $(parent_element).append(this.root);\n",
+       "\n",
+       "    this._init_header(this);\n",
+       "    this._init_canvas(this);\n",
+       "    this._init_toolbar(this);\n",
+       "\n",
+       "    var fig = this;\n",
+       "\n",
+       "    this.waiting = false;\n",
+       "\n",
+       "    this.ws.onopen =  function () {\n",
+       "            fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
+       "            fig.send_message(\"send_image_mode\", {});\n",
+       "            if (mpl.ratio != 1) {\n",
+       "                fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
+       "            }\n",
+       "            fig.send_message(\"refresh\", {});\n",
+       "        }\n",
+       "\n",
+       "    this.imageObj.onload = function() {\n",
+       "            if (fig.image_mode == 'full') {\n",
+       "                // Full images could contain transparency (where diff images\n",
+       "                // almost always do), so we need to clear the canvas so that\n",
+       "                // there is no ghosting.\n",
+       "                fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
+       "            }\n",
+       "            fig.context.drawImage(fig.imageObj, 0, 0);\n",
+       "        };\n",
+       "\n",
+       "    this.imageObj.onunload = function() {\n",
+       "        fig.ws.close();\n",
+       "    }\n",
+       "\n",
+       "    this.ws.onmessage = this._make_on_message_function(this);\n",
+       "\n",
+       "    this.ondownload = ondownload;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_header = function() {\n",
+       "    var titlebar = $(\n",
+       "        '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
+       "        'ui-helper-clearfix\"/>');\n",
+       "    var titletext = $(\n",
+       "        '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
+       "        'text-align: center; padding: 3px;\"/>');\n",
+       "    titlebar.append(titletext)\n",
+       "    this.root.append(titlebar);\n",
+       "    this.header = titletext[0];\n",
+       "}\n",
+       "\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_canvas = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var canvas_div = $('<div/>');\n",
+       "\n",
+       "    canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
+       "\n",
+       "    function canvas_keyboard_event(event) {\n",
+       "        return fig.key_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    canvas_div.keydown('key_press', canvas_keyboard_event);\n",
+       "    canvas_div.keyup('key_release', canvas_keyboard_event);\n",
+       "    this.canvas_div = canvas_div\n",
+       "    this._canvas_extra_style(canvas_div)\n",
+       "    this.root.append(canvas_div);\n",
+       "\n",
+       "    var canvas = $('<canvas/>');\n",
+       "    canvas.addClass('mpl-canvas');\n",
+       "    canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
+       "\n",
+       "    this.canvas = canvas[0];\n",
+       "    this.context = canvas[0].getContext(\"2d\");\n",
+       "\n",
+       "    var backingStore = this.context.backingStorePixelRatio ||\n",
+       "\tthis.context.webkitBackingStorePixelRatio ||\n",
+       "\tthis.context.mozBackingStorePixelRatio ||\n",
+       "\tthis.context.msBackingStorePixelRatio ||\n",
+       "\tthis.context.oBackingStorePixelRatio ||\n",
+       "\tthis.context.backingStorePixelRatio || 1;\n",
+       "\n",
+       "    mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
+       "\n",
+       "    var rubberband = $('<canvas/>');\n",
+       "    rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
+       "\n",
+       "    var pass_mouse_events = true;\n",
+       "\n",
+       "    canvas_div.resizable({\n",
+       "        start: function(event, ui) {\n",
+       "            pass_mouse_events = false;\n",
+       "        },\n",
+       "        resize: function(event, ui) {\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "        stop: function(event, ui) {\n",
+       "            pass_mouse_events = true;\n",
+       "            fig.request_resize(ui.size.width, ui.size.height);\n",
+       "        },\n",
+       "    });\n",
+       "\n",
+       "    function mouse_event_fn(event) {\n",
+       "        if (pass_mouse_events)\n",
+       "            return fig.mouse_event(event, event['data']);\n",
+       "    }\n",
+       "\n",
+       "    rubberband.mousedown('button_press', mouse_event_fn);\n",
+       "    rubberband.mouseup('button_release', mouse_event_fn);\n",
+       "    // Throttle sequential mouse events to 1 every 20ms.\n",
+       "    rubberband.mousemove('motion_notify', mouse_event_fn);\n",
+       "\n",
+       "    rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
+       "    rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
+       "\n",
+       "    canvas_div.on(\"wheel\", function (event) {\n",
+       "        event = event.originalEvent;\n",
+       "        event['data'] = 'scroll'\n",
+       "        if (event.deltaY < 0) {\n",
+       "            event.step = 1;\n",
+       "        } else {\n",
+       "            event.step = -1;\n",
+       "        }\n",
+       "        mouse_event_fn(event);\n",
+       "    });\n",
+       "\n",
+       "    canvas_div.append(canvas);\n",
+       "    canvas_div.append(rubberband);\n",
+       "\n",
+       "    this.rubberband = rubberband;\n",
+       "    this.rubberband_canvas = rubberband[0];\n",
+       "    this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
+       "    this.rubberband_context.strokeStyle = \"#000000\";\n",
+       "\n",
+       "    this._resize_canvas = function(width, height) {\n",
+       "        // Keep the size of the canvas, canvas container, and rubber band\n",
+       "        // canvas in synch.\n",
+       "        canvas_div.css('width', width)\n",
+       "        canvas_div.css('height', height)\n",
+       "\n",
+       "        canvas.attr('width', width * mpl.ratio);\n",
+       "        canvas.attr('height', height * mpl.ratio);\n",
+       "        canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
+       "\n",
+       "        rubberband.attr('width', width);\n",
+       "        rubberband.attr('height', height);\n",
+       "    }\n",
+       "\n",
+       "    // Set the figure to an initial 600x600px, this will subsequently be updated\n",
+       "    // upon first draw.\n",
+       "    this._resize_canvas(600, 600);\n",
+       "\n",
+       "    // Disable right mouse context menu.\n",
+       "    $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
+       "        return false;\n",
+       "    });\n",
+       "\n",
+       "    function set_focus () {\n",
+       "        canvas.focus();\n",
+       "        canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    window.setTimeout(set_focus, 100);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items) {\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) {\n",
+       "            // put a spacer in here.\n",
+       "            continue;\n",
+       "        }\n",
+       "        var button = $('<button/>');\n",
+       "        button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
+       "                        'ui-button-icon-only');\n",
+       "        button.attr('role', 'button');\n",
+       "        button.attr('aria-disabled', 'false');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "\n",
+       "        var icon_img = $('<span/>');\n",
+       "        icon_img.addClass('ui-button-icon-primary ui-icon');\n",
+       "        icon_img.addClass(image);\n",
+       "        icon_img.addClass('ui-corner-all');\n",
+       "\n",
+       "        var tooltip_span = $('<span/>');\n",
+       "        tooltip_span.addClass('ui-button-text');\n",
+       "        tooltip_span.html(tooltip);\n",
+       "\n",
+       "        button.append(icon_img);\n",
+       "        button.append(tooltip_span);\n",
+       "\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    var fmt_picker_span = $('<span/>');\n",
+       "\n",
+       "    var fmt_picker = $('<select/>');\n",
+       "    fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
+       "    fmt_picker_span.append(fmt_picker);\n",
+       "    nav_element.append(fmt_picker_span);\n",
+       "    this.format_dropdown = fmt_picker[0];\n",
+       "\n",
+       "    for (var ind in mpl.extensions) {\n",
+       "        var fmt = mpl.extensions[ind];\n",
+       "        var option = $(\n",
+       "            '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
+       "        fmt_picker.append(option);\n",
+       "    }\n",
+       "\n",
+       "    // Add hover states to the ui-buttons\n",
+       "    $( \".ui-button\" ).hover(\n",
+       "        function() { $(this).addClass(\"ui-state-hover\");},\n",
+       "        function() { $(this).removeClass(\"ui-state-hover\");}\n",
+       "    );\n",
+       "\n",
+       "    var status_bar = $('<span class=\"mpl-message\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
+       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
+       "    // which will in turn request a refresh of the image.\n",
+       "    this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_message = function(type, properties) {\n",
+       "    properties['type'] = type;\n",
+       "    properties['figure_id'] = this.id;\n",
+       "    this.ws.send(JSON.stringify(properties));\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.send_draw_message = function() {\n",
+       "    if (!this.waiting) {\n",
+       "        this.waiting = true;\n",
+       "        this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    var format_dropdown = fig.format_dropdown;\n",
+       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
+       "    fig.ondownload(fig, format);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
+       "    var size = msg['size'];\n",
+       "    if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
+       "        fig._resize_canvas(size[0], size[1]);\n",
+       "        fig.send_message(\"refresh\", {});\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
+       "    var x0 = msg['x0'] / mpl.ratio;\n",
+       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
+       "    var x1 = msg['x1'] / mpl.ratio;\n",
+       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
+       "    x0 = Math.floor(x0) + 0.5;\n",
+       "    y0 = Math.floor(y0) + 0.5;\n",
+       "    x1 = Math.floor(x1) + 0.5;\n",
+       "    y1 = Math.floor(y1) + 0.5;\n",
+       "    var min_x = Math.min(x0, x1);\n",
+       "    var min_y = Math.min(y0, y1);\n",
+       "    var width = Math.abs(x1 - x0);\n",
+       "    var height = Math.abs(y1 - y0);\n",
+       "\n",
+       "    fig.rubberband_context.clearRect(\n",
+       "        0, 0, fig.canvas.width / mpl.ratio, fig.canvas.height / mpl.ratio);\n",
+       "\n",
+       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
+       "    // Updates the figure title.\n",
+       "    fig.header.textContent = msg['label'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
+       "    var cursor = msg['cursor'];\n",
+       "    switch(cursor)\n",
+       "    {\n",
+       "    case 0:\n",
+       "        cursor = 'pointer';\n",
+       "        break;\n",
+       "    case 1:\n",
+       "        cursor = 'default';\n",
+       "        break;\n",
+       "    case 2:\n",
+       "        cursor = 'crosshair';\n",
+       "        break;\n",
+       "    case 3:\n",
+       "        cursor = 'move';\n",
+       "        break;\n",
+       "    }\n",
+       "    fig.rubberband_canvas.style.cursor = cursor;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_message = function(fig, msg) {\n",
+       "    fig.message.textContent = msg['message'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
+       "    // Request the server to send over a new figure.\n",
+       "    fig.send_draw_message();\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
+       "    fig.image_mode = msg['mode'];\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Called whenever the canvas gets updated.\n",
+       "    this.send_message(\"ack\", {});\n",
+       "}\n",
+       "\n",
+       "// A function to construct a web socket function for onmessage handling.\n",
+       "// Called in the figure constructor.\n",
+       "mpl.figure.prototype._make_on_message_function = function(fig) {\n",
+       "    return function socket_on_message(evt) {\n",
+       "        if (evt.data instanceof Blob) {\n",
+       "            /* FIXME: We get \"Resource interpreted as Image but\n",
+       "             * transferred with MIME type text/plain:\" errors on\n",
+       "             * Chrome.  But how to set the MIME type?  It doesn't seem\n",
+       "             * to be part of the websocket stream */\n",
+       "            evt.data.type = \"image/png\";\n",
+       "\n",
+       "            /* Free the memory for the previous frames */\n",
+       "            if (fig.imageObj.src) {\n",
+       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
+       "                    fig.imageObj.src);\n",
+       "            }\n",
+       "\n",
+       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
+       "                evt.data);\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "        else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
+       "            fig.imageObj.src = evt.data;\n",
+       "            fig.updated_canvas_event();\n",
+       "            fig.waiting = false;\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        var msg = JSON.parse(evt.data);\n",
+       "        var msg_type = msg['type'];\n",
+       "\n",
+       "        // Call the  \"handle_{type}\" callback, which takes\n",
+       "        // the figure and JSON message as its only arguments.\n",
+       "        try {\n",
+       "            var callback = fig[\"handle_\" + msg_type];\n",
+       "        } catch (e) {\n",
+       "            console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
+       "            return;\n",
+       "        }\n",
+       "\n",
+       "        if (callback) {\n",
+       "            try {\n",
+       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
+       "                callback(fig, msg);\n",
+       "            } catch (e) {\n",
+       "                console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
+       "            }\n",
+       "        }\n",
+       "    };\n",
+       "}\n",
+       "\n",
+       "// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
+       "mpl.findpos = function(e) {\n",
+       "    //this section is from http://www.quirksmode.org/js/events_properties.html\n",
+       "    var targ;\n",
+       "    if (!e)\n",
+       "        e = window.event;\n",
+       "    if (e.target)\n",
+       "        targ = e.target;\n",
+       "    else if (e.srcElement)\n",
+       "        targ = e.srcElement;\n",
+       "    if (targ.nodeType == 3) // defeat Safari bug\n",
+       "        targ = targ.parentNode;\n",
+       "\n",
+       "    // jQuery normalizes the pageX and pageY\n",
+       "    // pageX,Y are the mouse positions relative to the document\n",
+       "    // offset() returns the position of the element relative to the document\n",
+       "    var x = e.pageX - $(targ).offset().left;\n",
+       "    var y = e.pageY - $(targ).offset().top;\n",
+       "\n",
+       "    return {\"x\": x, \"y\": y};\n",
+       "};\n",
+       "\n",
+       "/*\n",
+       " * return a copy of an object with only non-object keys\n",
+       " * we need this to avoid circular references\n",
+       " * http://stackoverflow.com/a/24161582/3208463\n",
+       " */\n",
+       "function simpleKeys (original) {\n",
+       "  return Object.keys(original).reduce(function (obj, key) {\n",
+       "    if (typeof original[key] !== 'object')\n",
+       "        obj[key] = original[key]\n",
+       "    return obj;\n",
+       "  }, {});\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.mouse_event = function(event, name) {\n",
+       "    var canvas_pos = mpl.findpos(event)\n",
+       "\n",
+       "    if (name === 'button_press')\n",
+       "    {\n",
+       "        this.canvas.focus();\n",
+       "        this.canvas_div.focus();\n",
+       "    }\n",
+       "\n",
+       "    var x = canvas_pos.x * mpl.ratio;\n",
+       "    var y = canvas_pos.y * mpl.ratio;\n",
+       "\n",
+       "    this.send_message(name, {x: x, y: y, button: event.button,\n",
+       "                             step: event.step,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "\n",
+       "    /* This prevents the web browser from automatically changing to\n",
+       "     * the text insertion cursor when the button is pressed.  We want\n",
+       "     * to control all of the cursor setting manually through the\n",
+       "     * 'cursor' event from matplotlib */\n",
+       "    event.preventDefault();\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    // Handle any extra behaviour associated with a key event\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.key_event = function(event, name) {\n",
+       "\n",
+       "    // Prevent repeat events\n",
+       "    if (name == 'key_press')\n",
+       "    {\n",
+       "        if (event.which === this._key)\n",
+       "            return;\n",
+       "        else\n",
+       "            this._key = event.which;\n",
+       "    }\n",
+       "    if (name == 'key_release')\n",
+       "        this._key = null;\n",
+       "\n",
+       "    var value = '';\n",
+       "    if (event.ctrlKey && event.which != 17)\n",
+       "        value += \"ctrl+\";\n",
+       "    if (event.altKey && event.which != 18)\n",
+       "        value += \"alt+\";\n",
+       "    if (event.shiftKey && event.which != 16)\n",
+       "        value += \"shift+\";\n",
+       "\n",
+       "    value += 'k';\n",
+       "    value += event.which.toString();\n",
+       "\n",
+       "    this._key_event_extra(event, name);\n",
+       "\n",
+       "    this.send_message(name, {key: value,\n",
+       "                             guiEvent: simpleKeys(event)});\n",
+       "    return false;\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
+       "    if (name == 'download') {\n",
+       "        this.handle_save(this, null);\n",
+       "    } else {\n",
+       "        this.send_message(\"toolbar_button\", {name: name});\n",
+       "    }\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
+       "    this.message.textContent = tooltip;\n",
+       "};\n",
+       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
+       "\n",
+       "mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
+       "\n",
+       "mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
+       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
+       "    // object with the appropriate methods. Currently this is a non binary\n",
+       "    // socket, so there is still some room for performance tuning.\n",
+       "    var ws = {};\n",
+       "\n",
+       "    ws.close = function() {\n",
+       "        comm.close()\n",
+       "    };\n",
+       "    ws.send = function(m) {\n",
+       "        //console.log('sending', m);\n",
+       "        comm.send(m);\n",
+       "    };\n",
+       "    // Register the callback with on_msg.\n",
+       "    comm.on_msg(function(msg) {\n",
+       "        //console.log('receiving', msg['content']['data'], msg);\n",
+       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
+       "        ws.onmessage(msg['content']['data'])\n",
+       "    });\n",
+       "    return ws;\n",
+       "}\n",
+       "\n",
+       "mpl.mpl_figure_comm = function(comm, msg) {\n",
+       "    // This is the function which gets called when the mpl process\n",
+       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
+       "\n",
+       "    var id = msg.content.data.id;\n",
+       "    // Get hold of the div created by the display call when the Comm\n",
+       "    // socket was opened in Python.\n",
+       "    var element = $(\"#\" + id);\n",
+       "    var ws_proxy = comm_websocket_adapter(comm)\n",
+       "\n",
+       "    function ondownload(figure, format) {\n",
+       "        window.open(figure.imageObj.src);\n",
+       "    }\n",
+       "\n",
+       "    var fig = new mpl.figure(id, ws_proxy,\n",
+       "                           ondownload,\n",
+       "                           element.get(0));\n",
+       "\n",
+       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
+       "    // web socket which is closed, not our websocket->open comm proxy.\n",
+       "    ws_proxy.onopen();\n",
+       "\n",
+       "    fig.parent_element = element.get(0);\n",
+       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
+       "    if (!fig.cell_info) {\n",
+       "        console.error(\"Failed to find cell for figure\", id, fig);\n",
+       "        return;\n",
+       "    }\n",
+       "\n",
+       "    var output_index = fig.cell_info[2]\n",
+       "    var cell = fig.cell_info[0];\n",
+       "\n",
+       "};\n",
+       "\n",
+       "mpl.figure.prototype.handle_close = function(fig, msg) {\n",
+       "    var width = fig.canvas.width/mpl.ratio\n",
+       "    fig.root.unbind('remove')\n",
+       "\n",
+       "    // Update the output cell to use the data from the current canvas.\n",
+       "    fig.push_to_output();\n",
+       "    var dataURL = fig.canvas.toDataURL();\n",
+       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
+       "    // the notebook keyboard shortcuts fail.\n",
+       "    IPython.keyboard_manager.enable()\n",
+       "    $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
+       "    fig.close_ws(fig, msg);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.close_ws = function(fig, msg){\n",
+       "    fig.send_message('closing', msg);\n",
+       "    // fig.ws.close()\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
+       "    // Turn the data on the canvas into data in the output cell.\n",
+       "    var width = this.canvas.width/mpl.ratio\n",
+       "    var dataURL = this.canvas.toDataURL();\n",
+       "    this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.updated_canvas_event = function() {\n",
+       "    // Tell IPython that the notebook contents must change.\n",
+       "    IPython.notebook.set_dirty(true);\n",
+       "    this.send_message(\"ack\", {});\n",
+       "    var fig = this;\n",
+       "    // Wait a second, then push the new image to the DOM so\n",
+       "    // that it is saved nicely (might be nice to debounce this).\n",
+       "    setTimeout(function () { fig.push_to_output() }, 1000);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._init_toolbar = function() {\n",
+       "    var fig = this;\n",
+       "\n",
+       "    var nav_element = $('<div/>');\n",
+       "    nav_element.attr('style', 'width: 100%');\n",
+       "    this.root.append(nav_element);\n",
+       "\n",
+       "    // Define a callback function for later on.\n",
+       "    function toolbar_event(event) {\n",
+       "        return fig.toolbar_button_onclick(event['data']);\n",
+       "    }\n",
+       "    function toolbar_mouse_event(event) {\n",
+       "        return fig.toolbar_button_onmouseover(event['data']);\n",
+       "    }\n",
+       "\n",
+       "    for(var toolbar_ind in mpl.toolbar_items){\n",
+       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
+       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
+       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
+       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
+       "\n",
+       "        if (!name) { continue; };\n",
+       "\n",
+       "        var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
+       "        button.click(method_name, toolbar_event);\n",
+       "        button.mouseover(tooltip, toolbar_mouse_event);\n",
+       "        nav_element.append(button);\n",
+       "    }\n",
+       "\n",
+       "    // Add the status bar.\n",
+       "    var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
+       "    nav_element.append(status_bar);\n",
+       "    this.message = status_bar[0];\n",
+       "\n",
+       "    // Add the close button to the window.\n",
+       "    var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
+       "    var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
+       "    button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
+       "    button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
+       "    buttongrp.append(button);\n",
+       "    var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
+       "    titlebar.prepend(buttongrp);\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._root_extra_style = function(el){\n",
+       "    var fig = this\n",
+       "    el.on(\"remove\", function(){\n",
+       "\tfig.close_ws(fig, {});\n",
+       "    });\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._canvas_extra_style = function(el){\n",
+       "    // this is important to make the div 'focusable\n",
+       "    el.attr('tabindex', 0)\n",
+       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
+       "    // off when our div gets focus\n",
+       "\n",
+       "    // location in version 3\n",
+       "    if (IPython.notebook.keyboard_manager) {\n",
+       "        IPython.notebook.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "    else {\n",
+       "        // location in version 2\n",
+       "        IPython.keyboard_manager.register_events(el);\n",
+       "    }\n",
+       "\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype._key_event_extra = function(event, name) {\n",
+       "    var manager = IPython.notebook.keyboard_manager;\n",
+       "    if (!manager)\n",
+       "        manager = IPython.keyboard_manager;\n",
+       "\n",
+       "    // Check for shift+enter\n",
+       "    if (event.shiftKey && event.which == 13) {\n",
+       "        this.canvas_div.blur();\n",
+       "        // select the cell after this one\n",
+       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
+       "        IPython.notebook.select(index + 1);\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "mpl.figure.prototype.handle_save = function(fig, msg) {\n",
+       "    fig.ondownload(fig, null);\n",
+       "}\n",
+       "\n",
+       "\n",
+       "mpl.find_output_cell = function(html_output) {\n",
+       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
+       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
+       "    // IPython event is triggered only after the cells have been serialised, which for\n",
+       "    // our purposes (turning an active figure into a static one), is too late.\n",
+       "    var cells = IPython.notebook.get_cells();\n",
+       "    var ncells = cells.length;\n",
+       "    for (var i=0; i<ncells; i++) {\n",
+       "        var cell = cells[i];\n",
+       "        if (cell.cell_type === 'code'){\n",
+       "            for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
+       "                var data = cell.output_area.outputs[j];\n",
+       "                if (data.data) {\n",
+       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
+       "                    data = data.data;\n",
+       "                }\n",
+       "                if (data['text/html'] == html_output) {\n",
+       "                    return [cell, data, j];\n",
+       "                }\n",
+       "            }\n",
+       "        }\n",
+       "    }\n",
+       "}\n",
+       "\n",
+       "// Register the function which deals with the matplotlib target/channel.\n",
+       "// The kernel may be null if the page has been refreshed.\n",
+       "if (IPython.notebook.kernel != null) {\n",
+       "    IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
+       "}\n"
+      ],
+      "text/plain": [
+       "<IPython.core.display.Javascript object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA8AAAAFoCAYAAACYBpIxAAAgAElEQVR4nOzde1xUdfoH8O8Mw3ATFcRLeENL0PCemqumu6nYtrVFq6b9Ki8raltpmfc0LG+l6aabaW6rXVQsvKAmJiKgpnjDzBQvkWCKIqKIeAEG5vP7wzg6Dpc5MHDmzPm8X6/nD88czjk8U/PMhzlzjgARERERERGRBgilD4CIiIiIiIioOjAAExERERERkSYwABMREREREZEmMAATERERERGRJjAAExERERERkSYwABMREREREZEmMAATERERERGRJjAAExERERERkSYwABMREREREZEmMAATERERERGRJjAAExERERERkSYwABMREREREZEmMAATERERERGRJjAAExERERERkSYwABMREREREZEmMAATERERERGRJjAAKyA7OxtRUVFISkrC8ePHWSwWi6WxSkpKQlRUFLKzs5UeSarAuclisVjaLnvOTQZgBURFRUEIwWKxWCyNV1RUlNIjSRU4N1ksFoslhH3mJgOwApKSkqQnUOm/prBYLBar+qs40CUlJSk9klSBc5PFYrG0XfacmwzACjh+/DiEEDh+/LjSh0JERArgHJCH/SIi0jZ7zgEGYAVwkBMRaRvngDzsFxGRtjEAqxwHORGRtnEOyMN+ERFpGwOwynGQExFpG+eAPOwXEZG2MQCrHAc5EZG2cQ7Iw34REWkbA7DK2fIEms1m5ObmIj09HWfPnsVvv/3GquI6e/YsMjMzYTKZqvG/BiLSIgY6eWzpl8lkQmZmJmemAxbnKxFVFgOwypX3BJrNZmRkZCA5ORnJycn49ddfFR9eWqjTp08jOTkZaWlpMJvN1fxfBRFpiSMF4Bs3bmDChAno27cv/Pz8IIRAeHh4iesmJSWhd+/e8PLyQq1atRAaGorffvutxHUXL16MoKAgGI1GBAQEYMaMGSgoKKjQMdoyN1NTU5GcnIzTp08rPk9YnK9EZF8MwCpX3hOYm5srDYr8/PxqPjrtMpvNSE9PR3JyMnJycpQ+HCJyYo4UgFNTU1GrVi307NkTI0aMKDUAnzx5Et7e3njiiSewdetWrF+/HsHBwfD390dmZqbFurNmzYJOp8OUKVMQHx+PefPmwWg0IiwsrELHWF6/cnJykJycjPT0dAYsB8T5SkSVxQCscuU9gcVDguG3+plM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\" width=\"800\">"
+      ],
+      "text/plain": [
+       "<IPython.core.display.HTML object>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "fix, (ax5, ax6) = plt.subplots(1,2, figsize=(8,3),tight_layout=True)\n",
+    "po.hist.plot_G_t(ax5, 1)\n",
+    "po.hist.plot_dG_t(ax6, 1);"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.7.6"
+  },
+  "toc": {
+   "base_numbering": 1,
+   "nav_menu": {},
+   "number_sections": true,
+   "sideBar": true,
+   "skip_h1_title": true,
+   "title_cell": "Table of Contents",
+   "title_sidebar": "Contents",
+   "toc_cell": false,
+   "toc_position": {
+    "height": "calc(100% - 180px)",
+    "left": "10px",
+    "top": "150px",
+    "width": "203.5px"
+   },
+   "toc_section_display": true,
+   "toc_window_display": false
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/environment.yml b/environment.yml
index dde1760..4d87599 100644
--- a/environment.yml
+++ b/environment.yml
@@ -15,6 +15,7 @@ dependencies:
 - traitsui
 - pyqt
 - pyface
+- ipyml
 - mayavi
 - pip
 - pip:
diff --git a/index.ipynb b/index.ipynb
index 9d55001..f62bd42 100644
--- a/index.ipynb
+++ b/index.ipynb
@@ -9,6 +9,9 @@
     "\n",
     "@author: rosoba\n",
     "\n",
+    "## Seminar work\n",
+    " - [J0000 - How to set the pullout model parameters](bmcs_course/SeminarWorkHowTo.ipynb)\n",
+    "\n",
     "## Rule of mixtures for elastic composites\n",
     " - [J0101 - Elastic mixture rule](bmcs_course/1_1_elastic_stiffness_of_the_composite.ipynb)\n",
     " \n",
-- 
GitLab