{ "cells": [ { "cell_type": "markdown", "id": "1fbec0db", "metadata": {}, "source": [ "# Dynamics Decomposition\n", "\n", "In this tutorial, we explore the dynamics decomposition functionality\n", "available in BoolForge's modularity development branch.\n", "\n", "## What you will learn\n", "In this tutorial you will:\n", "\n", "- compute the trajectory of a Boolean network\n", "- combine multiple trajectories following the property of equal reachability\n", "\n", "## Setup" ] }, { "cell_type": "code", "execution_count": 1, "id": "95e96094", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:17.924073Z", "iopub.status.busy": "2026-03-29T02:41:17.923747Z", "iopub.status.idle": "2026-03-29T02:41:18.692325Z", "shell.execute_reply": "2026-03-29T02:41:18.692014Z" } }, "outputs": [], "source": [ "import boolforge as bf" ] }, { "cell_type": "markdown", "id": "2fbb59f2", "metadata": {}, "source": [ "## Trajectories\n", "\n", "A trajectory of a Boolean network is the sequence of states assumed by the\n", "network, given an initial state. A trajectory can be thought of as two\n", "consecutive components: a transient (non-periodic) prefix followed by the periodic cycle.\n", "BoolForge compresses trajectories to a minimal representation, consisting\n", "of only the prefix and a single instance of the cycle. Furthermore, all values\n", "are stored in decimal representation.\n", "\n", "For example, the trajectory\n", "$$\n", "T = (00, 01, 11, 00, 01, 01, 11, 00, 01, 01, ...)\n", "$$\n", "has transient prefix 00 followed by periodic cycle $\\{01, 11, 00, 01\\}$.\n", "Because these trajectories may belong to non-autonomous Boolean networks, \n", "the same state may be repeated multiple times within a cycle.\n", "Internally, `BoolForge` stores the trajectory as `([0, 1, 3, 0, 1], 4)`.\n", "The value 4 indicates that the last four entries $1, 3, 0, 1$ describe the cycle \n", "(in decimal representation). The remaining entries describe the transient prefix.\n", "Here, this is just 0 (in decimal representation), corresponding to the binary state 00.\n", "\n", "### Computing trajectories\n", "\n", "To compute a trajectory, you can call the `get_trajectories(...)` method for\n", "any `BooleanNetwork` object. This method assumes the network is non-autonomous,\n", "and thus requires two parameters defining:\n", "\n", "- transient_input_sequence\n", "- periodic_input_sequence\n", "\n", "Both of these parameters are a sequence of sequences of integers. Each sequence\n", "of integers defines the states assumed by a specific input node.\n", "For example, the sequence (1, 1, 0, 1, 0, 1, 0, 1, ...) corresponds to:\n", "\n", "- transient_input_sequence: [[1]]\n", "- periodic_input_sequence: [[1, 0]]\n", "\n", "and the sequence (10, 01, 11, 00, 11, 01, 10, 01, 11, 00, 11, 01, 10, ...)\n", "corresponds to:\n", "\n", "- transient_input_sequence: [[], []]\n", "- periodic_input_sequence: [[1, 0], [0, 1, 1]]\n", "\n", "This is because $x_1$ iterates from the beginning through the 2-cycle (1, 0, 1, 0, 1, 0, ...), \n", "while $x_2$ iterates from the beginning through the 3-cycle (0 , 1, 1, 0, 1, 1, ...).\n", "\n", "As an example, consider a non-autonomous Boolean network with two regulated \n", "nodes A and B and an external input C. Assume the external input exhibits the \n", "pattern (1, 1, 0, 1, 0, 1, 0, ...), i.e., it is 1 and then settles into a 2-cycle:" ] }, { "cell_type": "code", "execution_count": 2, "id": "e7039e3f", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:18.694088Z", "iopub.status.busy": "2026-03-29T02:41:18.693911Z", "iopub.status.idle": "2026-03-29T02:41:18.697015Z", "shell.execute_reply": "2026-03-29T02:41:18.696810Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "T_00: ([0], 1)\n", "T_01: ([1, 2, 1, 0], 1)\n", "T_10: ([2, 1], 2)\n", "T_11: ([3, 3, 3, 1, 2], 2)\n" ] } ], "source": [ "bn = bf.BooleanNetwork.from_string('''\n", " A = B and C\n", " B = A''',\n", " separator='=')\n", "\n", "\n", "non_periodic = [[1]]\n", "periodic = [[1, 0]]\n", "\n", "T = bn.get_trajectories(transient_input_sequence=non_periodic,\n", " periodic_input_sequence=periodic,\n", " merge_trajectories = False)\n", "\n", "print(\"T_00: \", T[0])\n", "print(\"T_01: \", T[1])\n", "print(\"T_10: \", T[2])\n", "print(\"T_11: \", T[3])" ] }, { "cell_type": "markdown", "id": "c4fda3c5", "metadata": {}, "source": [ "Notice that we also pass an additional Boolean parameter. This is because\n", "BoolForge automatically attempts to compress the trajectory representation\n", "into a reduced, graphical format. When the merge_trajectories flag is passed\n", "as True or omitted, `get_trajectories(...)` instead returns a NetworkX graph.\n", "\n", "### Plotting trajectories\n", "BoolForge also provides functionality to plot compressed trajectory graphs:" ] }, { "cell_type": "code", "execution_count": 3, "id": "55524bff", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:18.698202Z", "iopub.status.busy": "2026-03-29T02:41:18.698129Z", "iopub.status.idle": "2026-03-29T02:41:19.005343Z", "shell.execute_reply": "2026-03-29T02:41:19.005127Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAPdCAYAAACXzguGAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAANQVJREFUeJzt3XuQVvV9+PHPcseoCClyUYRYxHqJYDQ4rYzGRCIx2liVOpV6G4ypFzSxKqMdJVWrSalWW60TqhHFGmO1qdekqNWmXiJisF6Cg6aAwq6DN0CUO89vzknZcFkUzX72PM/P12tmZ/c5z/F8v/zhPPve77k01Wq1WgAAAADtrlP7HxIAAAAoiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACBJl6wDAwAfbdGiRfHAAw/EG2+8EbVarV2P3dTUFP369YvDDz88+vfv367HBgC2jugGgIr88Ic/jG9+85vlz717945Ondr3BLR169bFu+++W/58/fXXx1/8xV+06/EBgI/WVGvvP6sDAB/plVdeid133z3Gjx8fV155Zfze7/1eyjhvv/12XHzxxXHDDTfESy+9FHvuuWfKOABA21zTDQAV+MlPfhI9e/aMa6+9Ni24C5/97Gfj6quvju22264cEwDoWKIbACqwYMGC+P3f//3YZptt0sfq0aNH7LbbbvH666+njwUAbEx0A0AFiuutO3fu3GHjFWMVYwIAHUt0AwAAQBLRDQB1ZuXKlTFx4sQYOHBged33AQccEA899NBG+0yfPr28Cdvee+9drmIPGTKksvkCAFsmugGgzpx88snlzc/GjRtX3mitiOriWduPP/546z633357+dWrV68yzgGA+iS6AaCOzJgxI+64447yMWKTJ0+O0047Lf7zP/8zBg8eHBdccEHrfldccUUsXbo0nnjiiRg+fHilcwYAtkx0A0Adueuuu8qV7SK2N7z7eHEq+VNPPdV6B/Jidbtr164VzhQA2BqiGwDqyKxZs2LYsGGx/fbbb7R95MiR5ffnnnuuopkBAJ+E6AaAOtLS0hIDBgzYbPv6bc3NzRXMCgD4pEQ3ANSR5cuXR/fu3TfbXpxivv59AKBxiG4AqCPFI8KKR4ZtasWKFa3vAwCNQ3QDQB0pTiMvTjHf1PptHg8GAI1FdANAHRkxYkTMmTOnfBzYhp5++unW9wGAxiG6AaCOHHvssbF27dqYMmVK67bidPObb745DjjggBg0aFCl8wMAPp4uH3N/ACBREdZjx46NCy+8MBYtWhRDhw6NW265JebNmxc33XRT637PP/983HvvveXPr776aixZsiQuv/zy8vXw4cPjyCOPrOzfAAD8lugGgDpz6623xsUXXxzTpk2Ld999N/bZZ5+4//7746CDDmrd55e//GW5z4bWvz7ppJNENwDUiaZarVarehIA8Glz1llnxRNPPBGzZs3qkPFGjhxZXg++4WnrAEA+13QDAABAEtENABVoamqKdevWddh4xVjFmABAxxLdAFCB/v37lzdHW7VqVfpYa9asiblz55ZjAgAdS3QDQAWKG50Vz+K+7LLLUsN79erVccUVV8Q777wTf/zHf5w2DgDQNjdSA4CKFMF9ySWXRK9evWLw4MHRqVOndj+l/LXXXovFixeX43z3u991ijkAdDDRDQAVeuGFF8rnbbe0tER7fyQXgV2cUl6sqhePHRPcANDxRDcAAAAkcU03AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0A0EAmTJgQ3/rWt6qeBgCwlbps7Y4AQPUWLFgQq1atqnoaAMBWstINAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJumQdGABoPz/+8Y/j2WefjRdffDHWrVsXF1xwQYwYMSKOP/74qqcGAHyIplqtVvuwHQCA6h144IHx5JNPRlNTU/m6+Pjef//945lnnql6agDAh3B6OQA0gPPOO681ttf/vfz888+veFYAwEex0g0ADaA4pXyfffaJl156qXw9bNiwmD17dnTq5O/nAFDPfFIDQAMo4vqyyy5rfV38LLgBoP5Z6QaABlrt7tOnT/l98eLFohsAGoC7lwNAgygiu7hx2tq1awU3ADQIK90AAACQxJ/JAQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugGgjixbtiwmTZoUY8aMiT59+kRTU1NMnTq1zX1nz55d7rftttuW+55wwgnx5ptvdvicAYAt6/Ih7wEAHeytt96KSy+9NHbZZZcYPnx4PPbYY23ut2DBgjjooIOiV69eccUVV5Sx/nd/93fxwgsvxIwZM6Jbt24dPncAYHOiGwDqyIABA6KlpSX69+8fM2fOjC9+8Ytt7leE9vvvvx/PPvtsGeiFkSNHxujRo8uV8dNOO62DZw4AtMXp5QBQR7p3714G90e5++6744gjjmgN7sKhhx4aw4YNizvvvDN5lgDA1hLdANBgFi5cGIsWLYr9999/s/eK1e5Zs2ZVMi8AYHOiGwAaTHH6+fpT0TdVbHvnnXdi5cqVFcwMANiU6AaABrN8+fLWU9E31aNHj432AQCqJboBoMH07Nmz/N7WavaKFSs22gcAqJboBoAGs/608vWnmW+o2FY8s7utVXAAoOOJbgBoMDvttFP07du3fKTYpopndI8YMaKSeQEAmxPdANCAjjnmmLj//vvj9ddfb932yCOPxJw5c2Ls2LGVzg0A+K2mWq1W2+A1AFCx6667LhYvXhzNzc1xww03xNFHHx377rtv+d6ECROiV69eZWwX23bYYYc455xzYtmyZTF58uTYeeed45lnnnF6OQDUCdENAHVmyJAhMX/+/Dbfmzt3bvl+4aWXXopzzz03Hn/88ejWrVt8/etfj6uuuir69evXwTMGALZEdAMAAEAS13QDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0A0ADmTNnTrz88stVTwMA2EpNtVqttrU7AwDV+tM//dNYtWpV/Pu//3vVUwEAtoKVbgBoIKtXry6/AIDGILoBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACBJU61Wq2UdHABoHyeeeGI89NBD8e6775ave/fuHV/60pfiRz/6UdVTAwA+RJcPexMAqA9r1qyJN954o/V18fPq1asrnRMA8NGsdANAA3j55Zdjzz33jA0/tl944YXYe++9K50XAPDhXNMNAA3gD/7gD+K4446Lpqam8uuYY44R3ADQAKx0A0ADrXbvscce5c9WuQGgMYhuAGggBx54YHkt94wZM6qeCgCwFUQ3AAAAJHFNNwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AUGdWrlwZEydOjIEDB0bPnj3jgAMOiIceemijfaZPnx7jx4+PvffeOzp37hxDhgypbL4AwJaJbgCoMyeffHJcffXVMW7cuLj22mvLqD788MPj8ccfb93n9ttvL7969epVxjkAUJ+aarVarepJAAC/MWPGjHJle/LkyXHeeeeV21asWFGuaO+4447x5JNPltuam5ujb9++0bVr1zjiiCPixRdfjHnz5lU8ewBgU1a6AaCO3HXXXeXK9mmnnda6rUePHuWp5E899VS8/vrr5bZidbsIbgCgvoluAKgjs2bNimHDhsX222+/0faRI0eW35977rmKZgYAfBKiGwDqSEtLSwwYMGCz7eu3FaeVAwCNQ3QDQB1Zvnx5dO/efbPtxSnm698HABqH6AaAOlI8Iqx4ZNimipuprX8fAGgcohsA6khxGnlxivmm1m/zeDAAaCyiGwDqyIgRI2LOnDmxdOnSjbY//fTTre8DAI1DdANAHTn22GNj7dq1MWXKlNZtxenmN998c/n87kGDBlU6PwDg4+nyMfcHABIVYT127Ni48MILY9GiRTF06NC45ZZbYt68eXHTTTe17vf888/HvffeW/786quvxpIlS+Lyyy8vXw8fPjyOPPLIyv4NAMBvNdVqtdoGrwGAihU3Tbv44ovjtttui3fffTf22WefuOyyy+Kwww5r3Wfq1KlxyimntPnfn3TSSeX7AED1RDcAAAAkcU03AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwA0kGnTpsXNN99c9TQAgK3UVKvValu7MwBQrT/5kz+JVatWxQMPPFD1VACArWClGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAknTJOjAA0H5aWlpi7ty58fbbb8eaNWviySefjCFDhsTAgQOrnhoA8CGaarVa7cN2AACq94UvfCFmzZq10bY999wzXnrppcrmBAB8NKeXA0ADGDt27GbbjjvuuErmAgBsPSvdANAA3nvvvRg0aFAsWbKkfL3ddtvFa6+9FjvssEPVUwMAPoSVbgBoAEVkT5w4sfX1eeedJ7gBoAFY6QaABlrt7tOnTxQf3W+99ZboBoAG4O7lANBAq91XXnllrF69WnADQIOw0g0AAABJXNMNAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YADgo73xxhtx3333xcKFC6NWq7XrsZuammLgwIFx5JFHxoABA9r12ADA1mmqtfcnPACwVW677bY46aSTyjjecccdo3Pnzu16/LVr18aiRYti3bp1cdNNN8Upp5zSrscHAD6a6AaACjQ3N8egQYPiz//8z+Pv//7vo0+fPinjvPvuu3H++efHD3/4w5g3b17ssssuKeMAAG1zTTcAVKA4pbxTp05xzTXXpAV3oXfv3nH11VdH165d45577kkbBwBom+gGgAoU13AX11kXUZxt++23j5133rkcEwDoWKIbACpQXGfd3tdwf5hirGJMAKBjiW4AAABIIroBoM6sXLkyJk6cWD7uq2fPnnHAAQfEQw89tNl+Tz75ZIwaNSq22Wab6N+/f5x99tmxbNmySuYMALRNdANAnTn55JPLm5+NGzcurr322vLU8MMPPzwef/zx1n2ee+65+MpXvhIffPBBue+pp54aU6ZMibFjx1Y6dwBgY102eQ0AVGjGjBlxxx13xOTJk+O8884rt5144omx9957xwUXXFCubhcuuuii8iZsjz32WHmjtMKQIUPim9/8ZkyfPj2++tWvVvrvAAB+w0o3ANSRu+66q1zZPu2001q39ejRI8aPHx9PPfVUvP7667F06dLydPPiGd/rg3t9nG+77bZx5513VjR7AGBTVroBoI7MmjUrhg0btlFMF0aOHNl6WnnxXO81a9bE/vvvv9E+3bp1ixEjRpTHAADqg5VuAKgjLS0t5fO7N7V+W3Nzc7nPhts23a/YBwCoD6IbAOrI8uXLo3v37pttL04xX/9+8VXY0n7r3wcAqie6AaCOFI8IKx4ZtqkVK1a0vl98Fba03/r3AYDquaYbAOpIcXr4woULN9u+/pTy4tndxTXdG27bdL9iHwCgPljpBoA6UtwIbc6cOeUdyjf09NNPt75fPD6sS5cuMXPmzI32WbVqVXmjtWIfAKA+iG4AqCPHHntsrF27NqZMmdK6rTiN/Oabb44DDjggBg0aFL169YpDDz00brvttnjvvfda95s2bVosW7Ysxo4dW9HsAYBNOb0cAOpIEdZFNF944YWxaNGiGDp0aNxyyy0xb968uOmmm1r3+5u/+Zv4oz/6ozj44IPLZ3ovWLAgrrrqqvjqV78aY8aMqfTfAAD8lpVuAKgzt956a3z7298uV67PPvvsWL16ddx///1x0EEHte7zhS98IR5++OHypmnf+c53ypXx8ePHx1133VXp3AGAjVnpBoA6Uzz2a/LkyeXXhxk1alQ88cQTHTYvAODjs9INAAAASUQ3AFSgqakp1q1b12HjFTdnK8YEADqW6AaAip7HXTxTe8mSJeljFXc0L579XYwJAHQs0Q0AFTjyyCPLG6RNnDixjOIs77//flx00UXlY8e+8Y1vpI0DALStqVar1bbwHgCQpAjtHXbYoTztu7hx2i677BKdO3du1zGKY7/++uuxfPnycozimd5duriHKgB0JJ+8AFCBRx99tIzi4rFfzz//fDQ3N7f7Nd7FNdwDBw4sg7549vczzzwT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AAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YGBjzc3N8bOf/SzefPPNdj92p06dYqeddorDDz88dthhh3Y/PgAA8MmIbugA3//+9+PCCy+Mpqam2H777ctIbk9r166NJUuWRLdu3eLHP/5xHHXUUe16fAAA4JNpqtVqtU/43wJb4YknnohRo0bFBRdcUIZ31kp0sZJ+zjnnxD333BMLFy6Mvn37powDAABsPdd0Q7K77747Bg4cGFdeeWXqqd/FGNdff3256n3//fenjQMAAGw90Q3JXn/99dhrr73a/ZTytuy4447Rr1+/eO2119LHAgAAPprohmTr1q2Lzp07d9h4Xbp0KccEAACqJ7oBAAAgieiGiixbtiwmTZoUY8aMiT59+pR3Np86dWqb+86ePbvcb9ttty33PeGEE1IePQYA1K+VK1fGxIkTy/u49OzZMw444IB46KGHNtpn+vTpMX78+Nh7773LM+2GDBlS2XyB3xDdUJG33norLr300jKohw8fvsX9FixYEAcddFC8+uqrccUVV8R5550XDzzwQIwePTpWrVrVoXMGAKpz8sknx9VXXx3jxo2La6+9tozqww8/PB5//PHWfW6//fbyq1evXmWcA9XznG6oyIABA6KlpSX69+8fM2fOjC9+8Ytt7leE9vvvvx/PPvts7LLLLuW2kSNHltFdrIyfdtppHTxzAKCjzZgxI+64446YPHly+Qf4woknnliuaBePJX3yySdbf2/453/+5+jatWscccQR8eKLL1Y8c8BKN1Ske/fuZXBvzSPHig/N9cFdOPTQQ2PYsGFx5513tvu8XnjhhfI53wDAx1d8hhafpe3trrvuKle2N/xje48ePcpTyZ966qnyaSmFYnW7CG6gfohuqPMP7kWLFsX++++/2XvFavesWbPabaxnnnmmPEVtn332iYsuuqjdjgsAnybFZ2jxWVp8phafre2l+Mwv/uC+/fbbb/b7QOG5555rt7GA9uX0cqhjxenn609F31Sx7Z133ilvqlKsmn9cq1evLq8XL64Du+6668rT1tY/S7z4a/nPf/7zdvgXAMCny/oV5+KGZj/96U/Lm52deeaZMWrUqNh5550/8Sp08TvBln4fKDQ3N/+OMweyiG6oY8uXLy+/txXVxSll6/f5JNH97W9/O/7pn/5po23rn+/96KOPll8AwCezdu3a8vvTTz9dfhXOOOOMuP766z/R8bb0eb/h7wNAfRLdUMeKx4EUitXsTa1YsWKjfT6uyy+/PI455pjyGrHia8NHkBV3Uy8eSwYAfDzTpk2L//mf/ykfBVqr1WLHHXcsP2+PPfbY2HfffT/xcYvP+4zfB4B8ohvq2PpTxtafZr6hYlvxzO5Psspd6N27d3z5y18uv4rTy//t3/4tLr744nj55Zdjzz33jL/8y7/8necPAJ82xdNGiujefffd47LLLoujjz669fKt3/V3grZudLr+dwSPB4P6Jbqhju20007Rt2/f8pFimyquwR4xYkS7jFP8MlD8Bb74xeDBBx+Mz33uc+1yXAD4tPmrv/qrOP7448sbqbVHbK9XfOYXl34tXbp0o5uprT91vb1+JwDan7uXQ50rTkm7//77W2/MUnjkkUdizpw5MXbs2HYdq/jloHg82V577dWuxwWAT4viM7T4LG3P4C4UfxwvrhOfMmVK67bidPObb765vFnboEGD2nU8oP1Y6YYKFad1L168uPWOo/fdd195R/HChAkTolevXuWjR/71X/81DjnkkDjnnHNi2bJlMXny5Pj85z8fp5xySsX/AgCgIxRhXfyx/cILLywfJzp06NC45ZZbYt68eXHTTTe17vf888/HvffeW/786quvxpIlS8r7uKy/Z8uRRx5Z2b8BPq2aasUdHoDUleoPPvigfGzIpoYMGRLz589v87+bO3du+X7hpZdeinPPPbd8vFe3bt3i61//elx11VXRr1+/zf67XXbZpYzxv/7rv0741wAAVSlumlbcf+W2226Ld999t3weeHHd+GGHHda6z9SpU7f4R/mTTjqpfB/oWKIbKozuDKIbAADqh2u6AQAAIInohmTFczrXrVvXYeMVN1kpxgQAAKonuiFZcd31r3/96+iIKzmKm6UUN1dp61pvAACg44luSFbcJbSI7htuuKFchc6+ucqaNWvKR5UAAADVcyM1SFacWn7WWWeV0d23b9/Yeeed2/3ZnUXMF2H/3nvvxT/+4z+W4wEAANUT3dABiv/Nnn766XjggQfizTffbPfjFxFfxPxRRx0Ve+65Z7sfHwAA+GRENwAAACRxTTcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAABEjv8HeXbO2gOjoWEAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "G = bn.get_trajectories(non_periodic, periodic)\n", "bf.plot_trajectory(G, show = True);" ] }, { "cell_type": "markdown", "id": "6716d76f", "metadata": {}, "source": [ "This process can also be performed manually, by calling `compress_trajectories(...)`\n", "on the list output of `get_trajectories(...)`. However, the `compress_trajectories(...)`\n", "function will require the number of non-input nodes in the network. This value\n", "is automatically computed and passed to the function when the merge_trajectories flag is True." ] }, { "cell_type": "code", "execution_count": 4, "id": "00173d46", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.006601Z", "iopub.status.busy": "2026-03-29T02:41:19.006489Z", "iopub.status.idle": "2026-03-29T02:41:19.045057Z", "shell.execute_reply": "2026-03-29T02:41:19.044843Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAPdCAYAAACXzguGAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAANQVJREFUeJzt3XuQVvV9+PHPcseoCClyUYRYxHqJYDQ4rYzGRCIx2liVOpV6G4ypFzSxKqMdJVWrSalWW60TqhHFGmO1qdekqNWmXiJisF6Cg6aAwq6DN0CUO89vzknZcFkUzX72PM/P12tmZ/c5z/F8v/zhPPve77k01Wq1WgAAAADtrlP7HxIAAAAoiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACBJl6wDAwAfbdGiRfHAAw/EG2+8EbVarV2P3dTUFP369YvDDz88+vfv367HBgC2jugGgIr88Ic/jG9+85vlz717945Ondr3BLR169bFu+++W/58/fXXx1/8xV+06/EBgI/WVGvvP6sDAB/plVdeid133z3Gjx8fV155Zfze7/1eyjhvv/12XHzxxXHDDTfESy+9FHvuuWfKOABA21zTDQAV+MlPfhI9e/aMa6+9Ni24C5/97Gfj6quvju22264cEwDoWKIbACqwYMGC+P3f//3YZptt0sfq0aNH7LbbbvH666+njwUAbEx0A0AFiuutO3fu3GHjFWMVYwIAHUt0AwAAQBLRDQB1ZuXKlTFx4sQYOHBged33AQccEA899NBG+0yfPr28Cdvee+9drmIPGTKksvkCAFsmugGgzpx88snlzc/GjRtX3mitiOriWduPP/546z633357+dWrV68yzgGA+iS6AaCOzJgxI+64447yMWKTJ0+O0047Lf7zP/8zBg8eHBdccEHrfldccUUsXbo0nnjiiRg+fHilcwYAtkx0A0Adueuu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mLj//vvj9ddfb932yCOPxJw5c2Ls2LGVzg0A+K2mWq1W2+A1AFCx6667LhYvXhzNzc1xww03xNFHHx377rtv+d6ECROiV69eZWwX23bYYYc455xzYtmyZTF58uTYeeed45lnnnF6OQDUCdENAHVmyJAhMX/+/Dbfmzt3bvl+4aWXXopzzz03Hn/88ejWrVt8/etfj6uuuir69evXwTMGALZEdAMAAEAS13QDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0A0ADmTNnTrz88stVTwMA2EpNtVqttrU7AwDV+tM//dNYtWpV/Pu//3vVUwEAtoKVbgBoIKtXry6/AIDGILoBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACBJU61Wq2UdHABoHyeeeGI89NBD8e6775ave/fuHV/60pfiRz/6UdVTAwA+RJcPexMAqA9r1qyJN954o/V18fPq1asrnRMA8NGsdANAA3j55Zdjzz33jA0/tl944YXYe++9K50XAPDhXNMNAA3gD/7gD+K4446Lpqam8uuYY44R3ADQAKx0A0ADrXbvscce5c9WuQGgMYhuAGggBx54YHkt94wZM6qeCgCwFUQ3AAAAJHFNNwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AUGdWrlwZEydOjIEDB0bPnj3jgAMOiIceemijfaZPnx7jx4+PvffeOzp37hxDhgypbL4AwJaJbgCoMyeffHJcffXVMW7cuLj22mvLqD788MPj8ccfb93n9ttvL7969epVxjkAUJ+aarVarepJAAC/MWPGjHJle/LkyXHeeeeV21asWFGuaO+4447x5JNPltuam5ujb9++0bVr1zjiiCPixRdfjHnz5lU8ewBgU1a6AaCO3HXXXeXK9mmnnda6rUePHuWp5E899VS8/vrr5bZidbsIbgCgvoluAKgjs2bNimHDhsX222+/0faRI0eW35977rmKZgYAfBKiGwDqSEtLSwwYMGCz7eu3FaeVAwCNQ3QDQB1Zvnx5dO/efbPtxSnm698HABqH6AaAOlI8Iqx4ZNimipuprX8fAGgcohsA6khxGnlxivmm1m/zeDAAaCyiGwDqyIgRI2LOnDmxdOnSjbY//fTTre8DAI1DdANAHTn22GNj7dq1MWXKlNZtxenmN998c/n87kGDBlU6PwDg4+nyMfcHABIVYT127Ni48MILY9GiRTF06NC45ZZbYt68eXHTTTe17vf888/HvffeW/786quvxpIlS+Lyyy8vXw8fPjyOPPLIyv4NAMBvNdVqtdoGrwGAihU3Tbv44ovjtttui3fffTf22WefuOyyy+Kwww5r3Wfq1KlxyimntPnfn3TSSeX7AED1RDcAAAAkcU03AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwA0kGnTpsXNN99c9TQAgK3UVKvValu7MwBQrT/5kz+JVatWxQMPPFD1VACArWClGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAknTJOjAA0H5aWlpi7ty58fbbb8eaNWviySefjCFDhsTAgQOrnhoA8CGaarVa7cN2AACq94UvfCFmzZq10bY999wzXnrppcrmBAB8NKeXA0ADGDt27GbbjjvuuErmAgBsPSvdANAA3nvvvRg0aFAsWbKkfL3ddtvFa6+9FjvssEPVUwMAPoSVbgBoAEVkT5w4sfX1eeedJ7gBoAFY6QaABlrt7tOnTxQf3W+99ZboBoAG4O7lANBAq91XXnllrF69WnADQIOw0g0AAABJXNMNAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YADgo73xxhtx3333xcKFC6NWq7XrsZuammLgwIFx5JFHxoABA9r12ADA1mmqtfcnPACwVW677bY46aSTyjjecccdo3Pnzu16/LVr18aiRYti3bp1cdNNN8Upp5zSrscHAD6a6AaACjQ3N8egQYPiz//8z+Pv//7vo0+fPinjvPvuu3H++efHD3/4w5g3b17ssssuKeMAAG1zTTcAVKA4pbxTp05xzTXXpAV3oXfv3nH11VdH165d45577kkbBwBom+gGgAoU13AX11kXUZxt++23j5133rkcEwDoWKIbACpQXGfd3tdwf5hirGJMAKBjiW4AAABIIroBoM6sXLkyJk6cWD7uq2fPnnHAAQfEQw89tNl+Tz75ZIwaNSq22Wab6N+/f5x99tmxbNmySuYMALRNdANAnTn55JPLm5+NGzcurr322vLU8MMPPzwef/zx1n2ee+65+MpXvhIffPBBue+pp54aU6ZMibFjx1Y6dwBgY102eQ0AVGjGjBlxxx13xOTJk+O8884rt5144omx9957xwUXXFCubhcuuuii8iZsjz32WHmjtMKQIUPim9/8ZkyfPj2++tWvVvrvAAB+w0o3ANSRu+66q1zZPu2001q39ejRI8aPHx9PPfVUvP7667F06dLydPPiGd/rg3t9nG+77bZx5513VjR7AGBTVroBoI7MmjUrhg0btlFMF0aOHNl6WnnxXO81a9bE/vvvv9E+3bp1ixEjRpTHAADqg5VuAKgjLS0t5fO7N7V+W3Nzc7nPhts23a/YBwCoD6IbAOrI8uXLo3v37pttL04xX/9+8VXY0n7r3wcAqie6AaCOFI8IKx4ZtqkVK1a0vl98Fba03/r3AYDquaYbAOpIcXr4woULN9u+/pTy4tndxTXdG27bdL9iHwCgPljpBoA6UtwIbc6cOeUdyjf09NNPt75fPD6sS5cuMXPmzI32WbVqVXmjtWIfAKA+iG4AqCPHHntsrF27NqZMmdK6rTiN/Oabb44DDjggBg0aFL169YpDDz00brvttnjvvfda95s2bVosW7Ysxo4dW9HsAYBNOb0cAOpIEdZFNF944YWxaNGiGDp0aNxyyy0xb968uOmmm1r3+5u/+Zv4oz/6ozj44IPLZ3ovWLAgrrrqqvjqV78aY8aMqfTfAAD8lpVuAKgzt956a3z7298uV67PPvvsWL16ddx///1x0EEHte7zhS98IR5++OHypmnf+c53ypXx8ePHx1133VXp3AGAjVnpBoA6Uzz2a/LkyeXXhxk1alQ88cQTHTYvAODjs9INAAAASUQ3AFSgqakp1q1b12HjFTdnK8YEADqW6AaAip7HXTxTe8mSJeljFXc0L579XYwJAHQs0Q0AFTjyyCPLG6RNnDixjOIs77//flx00UXlY8e+8Y1vpI0DALStqVar1bbwHgCQpAjtHXbYoTztu7hx2i677BKdO3du1zGKY7/++uuxfPnycozimd5duriHKgB0JJ+8AFCBRx99tIzi4rFfzz//fDQ3N7f7Nd7FNdwDBw4sg7549vczzzwTf/iHf9iuYwAAH050A0AFigDu379/fPnLX46vfOUrqWOtWbMmunbtGr/85S9FNwB0MNd0A0AFXn311Rg2bFiH3FG8OKW8WO2eN29e+lgAwMZENwBU4JVXXonddtutw8YbMmRIzJ07t8PGAwB+Q3QDQAWKAN511107bLzBgwfHa6+91mHjAQC/IboBoALFo7y23XbbDhuvuHt5cW03ANCxRDcAVKB4Rne3bt2qngYAkEx0A0AHKx4NVjwurLijOADw/zfRDQAdrLhjeXFH8ZUrV3bYmEuXLo1tttmmw8YDAH5DdANABdE9YMCAaGlp6dAbt33uc5/rsPEAgN8Q3QBQgYEDB0Zzc3OHRnfx2DAAoGOJbgCowE477dRhj/BatmxZGfhWugGg44luAKjAvvvuG88880x5Q7VsP//5z8vvBx54YPpYAMDGRDcAVGDUqFGxZMmSeOmll9LHevjhh2PQoEExbNiw9LEAgI2JbgCowMiRI8s7mP/3f/936ji1Wi2mT58ehx56aHkDNwCgY4luAKhA8fiuQw45JH70ox+ljvOLX/yiXE0/5phjUscBANomugGgIqeeemo88cQTMXv27LQxrrnmmthtt93ia1/7WtoYAMCWiW4AqMg3vvGN+OxnPxs/+MEP0h4Tdvfdd8fZZ58dnTr5yAeAKvgEBoCKdO/ePSZMmBA33HBDzJkzp92v5T7ttNNiwIABcfLJJ7frsQGArddUKz6VAYBKLF++PPbaa68YOnRo/Md//Ee73exsypQp8a1vfSt+9rOfxWGHHdYuxwQAPj4r3QBQoZ49e8Y//MM/xEMPPRTXXnttuxyzuCP6ueeeW14zLrgBoFqiGwAqdsQRR8T5558f3/nOd2Lq1Km/07EeffTRGDNmTPlIsuImagBAtbpUPD4AEBHf//73Y/HixTF+/PhYsGBB7L777vHCCy+U13z37dv3I//7lStXlivlkyZNioMOOih+8pOflI8lAwCq5ZpuAKgTa9eujYsvvjj+9m//Nj7zmc/E0qVLy5utFXcfL1bC24rvItSL67aL/664W/mZZ55ZBnyPHj0q+TcAABsT3QBQZ5577rk45JBDyqBer3PnzuVp45dddlncc889ZZA/9dRTMWPGjFi3bl0ceuih5enkxU3ZAID6IboBoA4dffTR5SniGyrC+5JLLimf673tttvGiBEjYvTo0WVwDxkypLK5AgBb5ppuAKhjnTp1iu222y4mTpwYZ511VvlzEd4AQGMQ3QBQh3bcccfo1avXRrENADQep5cDQB1as2ZNea12t27dqp4KAPA7EN0AAACQpFPWgQEAAODTTnQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YAAA4JNbuXJlLF68OGq1Wrsfe/vtt49tttmm3Y8LbE50AwBAHXnttdfinHPOiZ/+9KdleGfo1KlTHHzwwfG9730vRo4cmTIG8BtNtYw/nQEAAB/b+++/H5///OdjzZo1cfbZZ8ewYcPKQG5Pxa//CxcujB/84Afxv//7v/Hss8/G0KFD23UM4LesdAMAQJ144IEHYu7cufGrX/0q9thjj9Sxxo0bF4MGDYpbb701Lr300tSx4NPMjdQAAKBOzJw5M3bdddf04C5st912cdBBB5VjAnlENwAA1IniGu7PfOYzHTZeMVbWdePAb4huAAAASCK6AQCgzi1btiwmTZoUY8aMiT59+kRTU1NMnTp1s/1mzJgRZ5xxRuy3337RtWvXcj+gWqIbAADq3FtvvVXe7Gz27NkxfPjwLe734IMPxo033ljGdnFtOFA90Q0AAHVuwIAB0dLSEvPnz4/Jkydvcb/TTz89lixZUt4cbfTo0R06R6BtHhkGAAB1rnv37tG/f/+P3K9fv34dMh9g61npBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABI4jndAADQAK677rpYvHhxNDc3l6/vu+++WLBgQfnzhAkTolevXjF//vyYNm1auW3mzJnl98svv7z8Pnjw4DjhhBMqmz98WjXVarVa1ZMAAAAizjnnnHj00Ufj+eef3+y9IUOGlFHdlrlz55bvP/bYY3HIIYe0uc/BBx9cvr+hP/uzP4tFixbFI4880k7/AmBTVroBAKABzJs37yP3+dKXvhTW1KC+uKYbAAAAkohuAACoIx25Um1VHPKJbgAAqBM9e/Ysb5bWUTG8ZMmS2GabbTpkLPi0Et0AAFAnRo0aVd6R/Kmnnkofq6WlJf7rv/6rHBPI4+7lAABQJ1auXFlG8CuvvBLjxo2LYcOGRadO7btOVvz6v3DhwviXf/mXaGpqiqeffjoGDhzYrmMAvyW6AQCgjhSnl1966aVxzz33lKvRGb+u9+nTJ772ta/FRRddFLvuumu7Hx/4LdENAAAASVzTDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAA0uIcffjhuueWWqqcBtEF0AwBAg7vjjjvihhtuqHoaQBtENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAA2qubk5Hn744Vi4cGEsWbKk/HnOnDlVTwvYQFOtVqttuAEAAGgMo0ePLkN7Q/369Ys33nijsjkBG7PSDQAADer444/f6HVTU1OMGzeusvkAm7PSDQAADWr16tUxdOjQeO2118rX3bt3j/nz55er3UB9sNINAAANqmvXrvHd73639fWZZ54puKHOWOkGAIAGX+3u3bt3fPDBB9HS0iK6oc50qXoCAADA77baPWXKlJg7d67ghjpkpRsAAACSuKYbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAA6tyyZcti0qRJMWbMmOjTp080NTXF1KlTN9tvxowZccYZZ8R+++0XXbt2LfcDqiW6AQCgzr311ltx6aWXxuzZs2P48OFb3O/BBx+MG2+8sYztXXfdtUPnCLRNdAMAQJ0bMGBAtLS0xPz582Py5Mlb3O/000+PJUuWxMyZM2P06NEdOkegbV22sB0AAKgT3bt3j/79+3/kfv369euQ+QBbz0o3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEASz+kGAIAGcN1118XixYujubm5fH3ffffFggULyp8nTJgQvXr1ivnz58e0adPKbTNnziy/X3755eX3wYMHxwknnFDZ/OHTqqlWq9WqngQAAPDhhgwZUkZ1W+bOnVu+/9hjj8UhhxzS5j4HH3xw+T7QsUQ3AAAAJHFNNwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAADS41atXx4oVK6qeBtAG0Q0AAA3ukksuibFjx1Y9DaANohsAABrcm2++WX4B9Ud0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACRpqtVqtayDAwAAea655pp44IEH4le/+lUsW7YsRo4cGXvuuWdce+21VU8N+D9d1v8AAAA0lmeffTYefvjh1tfFz4sWLap0TsDGnF4OAAAN6qKLLoqmpqaNtk2aNKmy+QCbE90AANCg9thjjzjuuONaw7s4tfyoo46qelrABlzTDQAADWz27NllbBfuvvvuOProo6ueErAB0Q0AAA1uxIgRMX/+/Hj77bejUycns0I9Ed0AANDg1q5dG2vWrInu3btXPRVgE6IbAAAAkjj3BAAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAOrcsmXLYtKkSTFmzJjo06dPNDU1xdSpUzfbb8aMGXHGGWfEfvvtF127di33A6olugEAoM699dZbcemll8bs2bNj+PDhW9zvwQcfjBtvvLGM7V133bVD5wi0TXQDAECdGzBgQLS0tMT8+fNj8uTJW9zv9NNPjyVLlsTMmTNj9OjRHTpHoG1dtrAdAACoE927d4/+/ft/5H79+vXrkPkAW89KNwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEs/pBgCABnDdddfF4sWLo7m5uXx93333xYIFC8qfJ0yYEL169Yr58+fHtGnTym0zZ84sv19++eXl98GDB8cJJ5xQ2fzh06qpVqvVqp4EAADw4YYMGVJGdVvmzp1bvv/YY4/FIYcc0uY+Bx98cPk+0LFENwAAACRxTTcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAA0uF/84hdxzz33VD0NoA1NtVqt1tYbAABAYzj11FPjxRdfLOMbqC9WugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAGhQS5cujeeffz7eeeed+OCDD8qfFy1aVPW0gA001Wq12oYbAACAxnDYYYfF9OnTN9o2cODAWLhwYWVzAjZmpRsAABrUkUceudHrpqamzbYB1bLSDQAADWrFihUxePDg1lPKu3TpEr/+9a9jl112qXpqwP+x0g0AAA2qR48ecfHFF7e+Hj9+vOCGOmOlGwAAGny1u3fv3uX3+fPni26oM12qngAAAPC7rXZ/73vfi1dffVVwQx2y0g0AAABJXNMNAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YGBjzc3N8bOf/SzefPPNdj92p06dYqeddorDDz88dthhh3Y/PgAA8MmIbugA3//+9+PCCy+Mpqam2H777ctIbk9r166NJUuWRLdu3eLHP/5xHHXUUe16fAAA4JNpqtVqtU/43wJb4YknnohRo0bFBRdcUIZ31kp0sZJ+zjnnxD333BMLFy6Mvn37powDAABsPdd0Q7K77747Bg4cGFdeeWXqqd/FGNdff3256n3//fenjQMAAGw90Q3JXn/99dhrr73a/ZTytuy4447Rr1+/eO2119LHAgAAPprohmTr1q2Lzp07d9h4Xbp0KccEAACqJ7oBAAAgieiGiixbtiwmTZoUY8aMiT59+pR3Np86dWqb+86ePbvcb9ttty33PeGEE1IePQYA1K+VK1fGxIkTy/u49OzZMw444IB46KGHNtpn+vTpMX78+Nh7773LM+2GDBlS2XyB3xDdUJG33norLr300jKohw8fvsX9FixYEAcddFC8+uqrccUVV8R5550XDzzwQIwePTpWrVrVoXMGAKpz8sknx9VXXx3jxo2La6+9tozqww8/PB5//PHWfW6//fbyq1evXmWcA9XznG6oyIABA6KlpSX69+8fM2fOjC9+8Ytt7leE9vvvvx/PPvts7LLLLuW2kSNHltFdrIyfdtppHTxzAKCjzZgxI+64446YPHly+Qf4woknnliuaBePJX3yySdbf2/453/+5+jatWscccQR8eKLL1Y8c8BKN1Ske/fuZXBvzSPHig/N9cFdOPTQQ2PYsGFx5513tvu8XnjhhfI53wDAx1d8hhafpe3trrvuKle2N/xje48ePcpTyZ966qnyaSmFYnW7CG6gfohuqPMP7kWLFsX++++/2XvFavesWbPabaxnnnmmPEVtn332iYsuuqjdjgsAnybFZ2jxWVp8phafre2l+Mwv/uC+/fbbb/b7QOG5555rt7GA9uX0cqhjxenn609F31Sx7Z133ilvqlKsmn9cq1evLq8XL64Du+6668rT1tY/S7z4a/nPf/7zdvgXAMCny/oV5+KGZj/96U/Lm52deeaZMWrUqNh5550/8Sp08TvBln4fKDQ3N/+OMweyiG6oY8uXLy+/txXVxSll6/f5JNH97W9/O/7pn/5po23rn+/96KOPll8AwCezdu3a8vvTTz9dfhXOOOOMuP766z/R8bb0eb/h7wNAfRLdUMeKx4EUitXsTa1YsWKjfT6uyy+/PI455pjyGrHia8NHkBV3Uy8eSwYAfDzTpk2L//mf/ykfBVqr1WLHHXcsP2+PPfbY2HfffT/xcYvP+4zfB4B8ohvq2PpTxtafZr6hYlvxzO5Psspd6N27d3z5y18uv4rTy//t3/4tLr744nj55Zdjzz33jL/8y7/8necPAJ82xdNGiujefffd47LLLoujjz669fKt3/V3grZudLr+dwSPB4P6Jbqhju20007Rt2/f8pFimyquwR4xYkS7jFP8MlD8Bb74xeDBBx+Mz33uc+1yXAD4tPmrv/qrOP7448sbqbVHbK9XfOYXl34tXbp0o5uprT91vb1+JwDan7uXQ50rTkm7//77W2/MUnjkkUdizpw5MXbs2HYdq/jloHg82V577dWuxwWAT4viM7T4LG3P4C4UfxwvrhOfMmVK67bidPObb765vFnboEGD2nU8oP1Y6YYKFad1L168uPWOo/fdd195R/HChAkTolevXuWjR/71X/81DjnkkDjnnHNi2bJlMXny5Pj85z8fp5xySsX/AgCgIxRhXfyx/cILLywfJzp06NC45ZZbYt68eXHTTTe17vf888/HvffeW/786quvxpIlS8r7uKy/Z8uRRx5Z2b8BPq2aasUdHoDUleoPPvigfGzIpoYMGRLz589v87+bO3du+X7hpZdeinPPPbd8vFe3bt3i61//elx11VXRr1+/zf67XXbZpYzxv/7rv0741wAAVSlumlbcf+W2226Ld999t3weeHHd+GGHHda6z9SpU7f4R/mTTjqpfB/oWKIbKozuDKIbAADqh2u6AQAAIInohmTFczrXrVvXYeMVN1kpxgQAAKonuiFZcd31r3/96+iIKzmKm6UUN1dp61pvAACg44luSFbcJbSI7htuuKFchc6+ucqaNWvKR5UAAADVcyM1SFacWn7WWWeV0d23b9/Yeeed2/3ZnUXMF2H/3nvvxT/+4z+W4wEAANUT3dABiv/Nnn766XjggQfizTffbPfjFxFfxPxRRx0Ve+65Z7sfHwAA+GRENwAAACRxTTcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAABEjv8HeXbO2gOjoWEAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "trajectories = bn.get_trajectories(transient_input_sequence = non_periodic, \n", " periodic_input_sequence = periodic, \n", " merge_trajectories = False)\n", "G = bf.compress_trajectories(trajectories, 2)\n", "bf.plot_trajectory(G, show = True);" ] }, { "cell_type": "markdown", "id": "2711ed27", "metadata": {}, "source": [ "### Computing the product of trajectories\n", "Computing the product of two trajectories requires that both trajectories have\n", "already been compressed into the reduced, grapical format. Given two\n", "compressed trajectory graphs, we can compute the product by calling\n", "`product_of_trajectories(...)`.\n", "\n", "For example, consider the examples 2.8 and 2.9:" ] }, { "cell_type": "code", "execution_count": 5, "id": "6e2c8749", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.046091Z", "iopub.status.busy": "2026-03-29T02:41:19.046028Z", "iopub.status.idle": "2026-03-29T02:41:19.220990Z", "shell.execute_reply": "2026-03-29T02:41:19.220766Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAPdCAYAAACXzguGAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAANQVJREFUeJzt3XuQVvV9+PHPcseoCClyUYRYxHqJYDQ4rYzGRCIx2liVOpV6G4ypFzSxKqMdJVWrSalWW60TqhHFGmO1qdekqNWmXiJisF6Cg6aAwq6DN0CUO89vzknZcFkUzX72PM/P12tmZ/c5z/F8v/zhPPve77k01Wq1WgAAAADtrlP7HxIAAAAoiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACBJl6wDAwAfbdGiRfHAAw/EG2+8EbVarV2P3dTUFP369YvDDz88+vfv367HBgC2jugGgIr88Ic/jG9+85vlz717945Ondr3BLR169bFu+++W/58/fXXx1/8xV+06/EBgI/WVGvvP6sDAB/plVdeid133z3Gjx8fV155Zfze7/1eyjhvv/12XHzxxXHDDTfESy+9FHvuuWfKOABA21zTDQAV+MlPfhI9e/aMa6+9Ni24C5/97Gfj6quvju22264cEwDoWKIbACqwYMGC+P3f//3YZptt0sfq0aNH7LbbbvH666+njwUAbEx0A0AFiuutO3fu3GHjFWMVYwIAHUt0AwAAQBLRDQB1ZuXKlTFx4sQYOHBged33AQccEA899NBG+0yfPr28Cdvee+9drmIPGTKksvkCAFsmugGgzpx88snlzc/GjRtX3mitiOriWduPP/546z633357+dWrV68yzgGA+iS6AaCOzJgxI+64447yMWKTJ0+O0047Lf7zP/8zBg8eHBdccEHrfldccUUsXbo0nnjiiRg+fHilcwYAtkx0A0Adueuu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mLj//vvj9ddfb932yCOPxJw5c2Ls2LGVzg0A+K2mWq1W2+A1AFCx6667LhYvXhzNzc1xww03xNFHHx377rtv+d6ECROiV69eZWwX23bYYYc455xzYtmyZTF58uTYeeed45lnnnF6OQDUCdENAHVmyJAhMX/+/Dbfmzt3bvl+4aWXXopzzz03Hn/88ejWrVt8/etfj6uuuir69evXwTMGALZEdAMAAEAS13QDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0A0ADmTNnTrz88stVTwMA2EpNtVqttrU7AwDV+tM//dNYtWpV/Pu//3vVUwEAtoKVbgBoIKtXry6/AIDGILoBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACBJU61Wq2UdHABoHyeeeGI89NBD8e6775ave/fuHV/60pfiRz/6UdVTAwA+RJcPexMAqA9r1qyJN954o/V18fPq1asrnRMA8NGsdANAA3j55Zdjzz33jA0/tl944YXYe++9K50XAPDhXNMNAA3gD/7gD+K4446Lpqam8uuYY44R3ADQAKx0A0ADrXbvscce5c9WuQGgMYhuAGggBx54YHkt94wZM6qeCgCwFUQ3AAAAJHFNNwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AUGdWrlwZEydOjIEDB0bPnj3jgAMOiIceemijfaZPnx7jx4+PvffeOzp37hxDhgypbL4AwJaJbgCoMyeffHJcffXVMW7cuLj22mvLqD788MPj8ccfb93n9ttvL7969epVxjkAUJ+aarVarepJAAC/MWPGjHJle/LkyXHeeeeV21asWFGuaO+4447x5JNPltuam5ujb9++0bVr1zjiiCPixRdfjHnz5lU8ewBgU1a6AaCO3HXXXeXK9mmnnda6rUePHuWp5E899VS8/vrr5bZidbsIbgCgvoluAKgjs2bNimHDhsX222+/0faRI0eW35977rmKZgYAfBKiGwDqSEtLSwwYMGCz7eu3FaeVAwCNQ3QDQB1Zvnx5dO/efbPtxSnm698HABqH6AaAOlI8Iqx4ZNimipuprX8fAGgcohsA6khxGnlxivmm1m/zeDAAaCyiGwDqyIgRI2LOnDmxdOnSjbY//fTTre8DAI1DdANAHTn22GNj7dq1MWXKlNZtxenmN998c/n87kGDBlU6PwDg4+nyMfcHABIVYT127Ni48MILY9GiRTF06NC45ZZbYt68eXHTTTe17vf888/HvffeW/786quvxpIlS+Lyyy8vXw8fPjyOPPLIyv4NAMBvNdVqtdoGrwGAihU3Tbv44ovjtttui3fffTf22WefuOyyy+Kwww5r3Wfq1KlxyimntPnfn3TSSeX7AED1RDcAAAAkcU03AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwA0kGnTpsXNN99c9TQAgK3UVKvValu7MwBQrT/5kz+JVatWxQMPPFD1VACArWClGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAknTJOjAA0H5aWlpi7ty58fbbb8eaNWviySefjCFDhsTAgQOrnhoA8CGaarVa7cN2AACq94UvfCFmzZq10bY999wzXnrppcrmBAB8NKeXA0ADGDt27GbbjjvuuErmAgBsPSvdANAA3nvvvRg0aFAsWbKkfL3ddtvFa6+9FjvssEPVUwMAPoSVbgBoAEVkT5w4sfX1eeedJ7gBoAFY6QaABlrt7tOnTxQf3W+99ZboBoAG4O7lANBAq91XXnllrF69WnADQIOw0g0AAABJXNMNAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YADgo73xxhtx3333xcKFC6NWq7XrsZuammLgwIFx5JFHxoABA9r12ADA1mmqtfcnPACwVW677bY46aSTyjjecccdo3Pnzu16/LVr18aiRYti3bp1cdNNN8Upp5zSrscHAD6a6AaACjQ3N8egQYPiz//8z+Pv//7vo0+fPinjvPvuu3H++efHD3/4w5g3b17ssssuKeMAAG1zTTcAVKA4pbxTp05xzTXXpAV3oXfv3nH11VdH165d45577kkbBwBom+gGgAoU13AX11kXUZxt++23j5133rkcEwDoWKIbACpQXGfd3tdwf5hirGJMAKBjiW4AAABIIroBoM6sXLkyJk6cWD7uq2fPnnHAAQfEQw89tNl+Tz75ZIwaNSq22Wab6N+/f5x99tmxbNmySuYMALRNdANAnTn55JPLm5+NGzcurr322vLU8MMPPzwef/zx1n2ee+65+MpXvhIffPBBue+pp54aU6ZMibFjx1Y6dwBgY102eQ0AVGjGjBlxxx13xOTJk+O8884rt5144omx9957xwUXXFCubhcuuuii8iZsjz32WHmjtMKQIUPim9/8ZkyfPj2++tWvVvrvAAB+w0o3ANSRu+66q1zZPu2001q39ejRI8aPHx9PPfVUvP7667F06dLydPPiGd/rg3t9nG+77bZx5513VjR7AGBTVroBoI7MmjUrhg0btlFMF0aOHNl6WnnxXO81a9bE/vvvv9E+3bp1ixEjRpTHAADqg5VuAKgjLS0t5fO7N7V+W3Nzc7nPhts23a/YBwCoD6IbAOrI8uXLo3v37pttL04xX/9+8VXY0n7r3wcAqie6AaCOFI8IKx4ZtqkVK1a0vl98Fba03/r3AYDquaYbAOpIcXr4woULN9u+/pTy4tndxTXdG27bdL9iHwCgPljpBoA6UtwIbc6cOeUdyjf09NNPt75fPD6sS5cuMXPmzI32WbVqVXmjtWIfAKA+iG4AqCPHHntsrF27NqZMmdK6rTiN/Oabb44DDjggBg0aFL169YpDDz00brvttnjvvfda95s2bVosW7Ysxo4dW9HsAYBNOb0cAOpIEdZFNF944YWxaNGiGDp0aNxyyy0xb968uOmmm1r3+5u/+Zv4oz/6ozj44IPLZ3ovWLAgrrrqqvjqV78aY8aMqfTfAAD8lpVuAKgzt956a3z7298uV67PPvvsWL16ddx///1x0EEHte7zhS98IR5++OHypmnf+c53ypXx8ePHx1133VXp3AGAjVnpBoA6Uzz2a/LkyeXXhxk1alQ88cQTHTYvAODjs9INAAAASUQ3AFSgqakp1q1b12HjFTdnK8YEADqW6AaAip7HXTxTe8mSJeljFXc0L579XYwJAHQs0Q0AFTjyyCPLG6RNnDixjOIs77//flx00UXlY8e+8Y1vpI0DALStqVar1bbwHgCQpAjtHXbYoTztu7hx2i677BKdO3du1zGKY7/++uuxfPnycozimd5duriHKgB0JJ+8AFCBRx99tIzi4rFfzz//fDQ3N7f7Nd7FNdwDBw4sg7549vczzzwT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AAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YGBjzc3N8bOf/SzefPPNdj92p06dYqeddorDDz88dthhh3Y/PgAA8MmIbugA3//+9+PCCy+Mpqam2H777ctIbk9r166NJUuWRLdu3eLHP/5xHHXUUe16fAAA4JNpqtVqtU/43wJb4YknnohRo0bFBRdcUIZ31kp0sZJ+zjnnxD333BMLFy6Mvn37powDAABsPdd0Q7K77747Bg4cGFdeeWXqqd/FGNdff3256n3//fenjQMAAGw90Q3JXn/99dhrr73a/ZTytuy4447Rr1+/eO2119LHAgAAPprohmTr1q2Lzp07d9h4Xbp0KccEAACqJ7oBAAAgieiGiixbtiwmTZoUY8aMiT59+pR3Np86dWqb+86ePbvcb9ttty33PeGEE1IePQYA1K+VK1fGxIkTy/u49OzZMw444IB46KGHNtpn+vTpMX78+Nh7773LM+2GDBlS2XyB3xDdUJG33norLr300jKohw8fvsX9FixYEAcddFC8+uqrccUVV8R5550XDzzwQIwePTpWrVrVoXMGAKpz8sknx9VXXx3jxo2La6+9tozqww8/PB5//PHWfW6//fbyq1evXmWcA9XznG6oyIABA6KlpSX69+8fM2fOjC9+8Ytt7leE9vvvvx/PPvts7LLLLuW2kSNHltFdrIyfdtppHTxzAKCjzZgxI+64446YPHly+Qf4woknnliuaBePJX3yySdbf2/453/+5+jatWscccQR8eKLL1Y8c8BKN1Ske/fuZXBvzSPHig/N9cFdOPTQQ2PYsGFx5513tvu8XnjhhfI53wDAx1d8hhafpe3trrvuKle2N/xje48ePcpTyZ966qnyaSmFYnW7CG6gfohuqPMP7kWLFsX++++/2XvFavesWbPabaxnnnmmPEVtn332iYsuuqjdjgsAnybFZ2jxWVp8phafre2l+Mwv/uC+/fbbb/b7QOG5555rt7GA9uX0cqhjxenn609F31Sx7Z133ilvqlKsmn9cq1evLq8XL64Du+6668rT1tY/S7z4a/nPf/7zdvgXAMCny/oV5+KGZj/96U/Lm52deeaZMWrUqNh5550/8Sp08TvBln4fKDQ3N/+OMweyiG6oY8uXLy+/txXVxSll6/f5JNH97W9/O/7pn/5po23rn+/96KOPll8AwCezdu3a8vvTTz9dfhXOOOOMuP766z/R8bb0eb/h7wNAfRLdUMeKx4EUitXsTa1YsWKjfT6uyy+/PI455pjyGrHia8NHkBV3Uy8eSwYAfDzTpk2L//mf/ykfBVqr1WLHHXcsP2+PPfbY2HfffT/xcYvP+4zfB4B8ohvq2PpTxtafZr6hYlvxzO5Psspd6N27d3z5y18uv4rTy//t3/4tLr744nj55Zdjzz33jL/8y7/8necPAJ82xdNGiujefffd47LLLoujjz669fKt3/V3grZudLr+dwSPB4P6Jbqhju20007Rt2/f8pFimyquwR4xYkS7jFP8MlD8Bb74xeDBBx+Mz33uc+1yXAD4tPmrv/qrOP7448sbqbVHbK9XfOYXl34tXbp0o5uprT91vb1+JwDan7uXQ50rTkm7//77W2/MUnjkkUdizpw5MXbs2HYdq/jloHg82V577dWuxwWAT4viM7T4LG3P4C4UfxwvrhOfMmVK67bidPObb765vFnboEGD2nU8oP1Y6YYKFad1L168uPWOo/fdd195R/HChAkTolevXuWjR/71X/81DjnkkDjnnHNi2bJlMXny5Pj85z8fp5xySsX/AgCgIxRhXfyx/cILLywfJzp06NC45ZZbYt68eXHTTTe17vf888/HvffeW/786quvxpIlS8r7uKy/Z8uRRx5Z2b8BPq2aasUdHoDUleoPPvigfGzIpoYMGRLz589v87+bO3du+X7hpZdeinPPPbd8vFe3bt3i61//elx11VXRr1+/zf67XXbZpYzxv/7rv0741wAAVSlumlbcf+W2226Ld999t3weeHHd+GGHHda6z9SpU7f4R/mTTjqpfB/oWKIbKozuDKIbAADqh2u6AQAAIInohmTFczrXrVvXYeMVN1kpxgQAAKonuiFZcd31r3/96+iIKzmKm6UUN1dp61pvAACg44luSFbcJbSI7htuuKFchc6+ucqaNWvKR5UAAADVcyM1SFacWn7WWWeV0d23b9/Yeeed2/3ZnUXMF2H/3nvvxT/+4z+W4wEAANUT3dABiv/Nnn766XjggQfizTffbPfjFxFfxPxRRx0Ve+65Z7sfHwAA+GRENwAAACRxTTcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAABEjv8HeXbO2gOjoWEAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAK/ZJREFUeJzt3QuQVvV5+PFnBQS8QIISQUSIsWSmIWC8wDS1gvVGUdJGQTsqikWZ6og2jiPeKPNXo9MhOnHGTipKxcuoUdSJGmbUKLZBGRHFSywtIQoFoSpVUZSLwP7nd9JdYdllL7xn38v5fGZ2ePfd43t+ZDbPvF/Oec+pq6+vrw8AAACg5PYq/UsCAAAAiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADISde8XhigmtTX18eaNWviiy++KPlrd+nSJQYMGBA9evQo+WsD7Ikvv/wy1q5dG9u2bSv5a/fs2TMOOeSQqKurK/lrA1QT0Q0U3sMPPxwzZsyIZcuW5baPfffdN84666y44447sjeiAOX02Wefxd///d/HE088EZs2bcptP9/+9rfjuuuui8mTJ+e2D4BKJ7qBQnvmmWfi7LPPjnHjxsUtt9wSBxxwQMmPynz11VexcOHC7PXXr18fc+fOLenrA7TXj3/843jttdfi//2//xdHH310dO3ateRnD6V59+CDD8aFF14YvXr1igkTJpR0HwDVoq4+TUWAgjrjjDNixYoV8eqrr8Zee+V7mYs777wzLrnkknj//fejX79+ue4LoCW///3vY8iQIdlZPukMnDylt5l/+Zd/mX3M5je/+U2u+wKoVC6kBhTakiVL4oQTTsg9uJOTTjoptm/fHm+//Xbu+wLY3dxrmEl5S2cOpf007BOgiEQ3UGjp1O/O+oz1Pvvsk/25ZcuWTtkfQEtzb8eZlLc0Y809oMhEN0AzNm/eHNOmTYuDDz44e8M4cuTIeO6553ba5tlnn80uDjR06NDs1MnBgweXbb0ApbBhw4bswpJjxoyJPn36ZEeq58yZs8t2ixYtyj4uc9RRR0W3bt1coRxgN0Q3QDMmTZoUt912W5xzzjlx++23Z1E9duzYWLBgQeM26QJB6at3795ZnANUu3Xr1sUNN9wQS5cujeHDh7e43bx58+Luu+/OYvuwww7r1DUCVBvRDdDMEZx0gaF0tfGZM2fGlClT4oUXXohBgwbFVVdd1bjdzTffnN1256WXXtrtm1OAatG/f//svt0rV67M5l9LLr744uzq5IsXL+6Uz4YDVDPRDdBEuqVXOrKdYrtBjx49slPJ062/Vq1alT2Xjm6n0yoBakX37t3bdHeFgw46qNOuhwFQ7UQ3QBPpKrvpdjrpvrI7GjFiRPbnG2+8UaaVAQBQbUQ3QBPp1Mp0imVTDc+tWbOmDKsCAKAaiW6AJjZu3JidYtlUOsW84ecAANAWohugifQ5xXTLsKY2bdrU+HMAAGgL0Q3QwtV7m2p4zu3BAABoK9EN0MQRRxwRy5Yty24HtqNXXnml8ecAANAWohugifHjx8e2bdti1qxZjc+l083vueeeGDlyZAwcOLCs6wMAoHp0LfcCACpNCusJEybENddcEx9++GEcfvjhce+998aKFSti9uzZjdu99dZb8eSTT2aPly9fHuvXr4+bbrop+3748OExbty4sv0dADrqjjvuiE8//bTxTg1PPfVUrF69Ons8derU6N27d6xcuTLuv//+7LnFixdnfzbMv0GDBsXEiRPLtn6ASiO6AZpx3333xfTp07M3lZ988kkMGzYsnn766TjuuOMat3n99dezbXbU8P35558vuoGq9LOf/SyL6gaPP/549pWce+65WXS/9957Lc6/UaNGiW6AHYhugGak24PNnDkz+2rJpEmTsi+AWpLO6mnN6NGjo76+vlPWA1DtfKYbAAAAciK6AQAAICeiGyi8zjpF0qmYQCUx+wA6h+gGCm3fffeNjz/+uFP29b//+7+N+wQol4YZ1FmzL+3H3AOKTHQDhZausptu+5Vuj9MZV0Tv2bNnHHPMMbnvC6Alf/7nfx5dunTJboWYty+++CLmzp2bXXgNoKhcvRwotMsvvzweffTR7L7aP/7xj+PAAw+Murq6ku5jy5YtsXDhwnjuuedixowZjvgAZdW3b9+49NJL47rrrouXX345jj766OjWrVvJTylPt1v81a9+FR988EHjPb0Biqiu3gdtgIJ755134uc//3nMnz8/NmzYUPLX79q1a3z3u9/N7lub7t9d6qgHaK/09u/OO++Mhx56KJYvXx7btm0r+T722WefOO644+Kyyy6LI488suSvD1AtRDcAAADkxGe6AQAAICeiGwAAAHIiugEAACAnohsAAAByIroBAAAgJ6IbAAAAciK6AQAAICeiGwAAAHIiugEAACAnohugA6644opYunRpuZcB0GnSzEuzD4D2Ed0AHfDzn/88fvvb35Z7GQCdJs28NPsAaB/RDQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAAAAkBPRDQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAAAAkBPRDQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAAAAkBPRDQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAO3wH//xH7Fw4cKor6+PP/zhD9njTZs2lXtZALlJMy7NujTz0uxLj5cuXVruZQFUjbr6ND0BaNXq1atj4MCBuzx//fXXx4033liWNQHkbfr06XHTTTft8vyqVavikEMOKcuaAKqJI90AbTRgwIA46qijYq+9dh6dp59+etnWBJC3pjMuzcA0C9NMBKB1ohugjerq6rKjPdu3b2984zlu3Lj4wQ9+UO6lAeQmzbg06xr+wTHNwDQL00wEoHVOLwdohzQyjznmmHjttdey719//XXRDdS8JUuWxJFHHpk9Tke5X331VdEN0EaOdAN04Gh3MmzYMMENFEKadWnmJY5yA7SP6AZop1NOOSUmTJgQs2bNKvdSADpNmnlp9qUZCEDbOb0cAAAAcuJINwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3QDM2bNgQM2bMiDFjxkSfPn2irq4u5syZs8t2ixYtiksuuSSOOuqo6NatW7Yd7KnNmzfHtGnT4uCDD46ePXvGyJEj47nnnttpm2effTYmT54cQ4cOjS5dusTgwYPLtl6KN/uSpUuXZtvtt99+2bYTJ06Mjz76qNPXDFDpRDdAM9atWxc33HBD9qZy+PDhLW43b968uPvuu7M3pocddlinrpHaNWnSpLjtttvinHPOidtvvz2L6rFjx8aCBQsat3nwwQezr969e2dxDp05+1avXh3HHXdcLF++PG6++ea48sor49e//nWcdNJJsWXLlk5dM0ClE90Azejfv3+sXbs2Vq5cGTNnzmxxu4svvjjWr18fixcvzt5swp5KZ088/PDDccstt2S/e1OmTIkXXnghBg0aFFdddVXjdil0Pvvss3jppZd2G0eQx+xLv39ffPFF9rt52WWXxbXXXhuPPPJIvPnmmy0eGQcoKtEN0Izu3btHv379Wt3uoIMOyk7/hVKZO3dudmQ7xXaDHj16ZKeSL1y4MFatWpU9l45up480QDlm32OPPRannXZaHHrooY3PnXjiiTFkyJAsvgH4mugGgAqyZMmSLFx69eq10/MjRozI/nzjjTfKtDL4o/fffz8+/PDDOProo3f5Wfo9Tb/DAHxNdANABUmn9qZTfJtqeG7NmjVlWBXs/DuatPR7+vHHH2cXAwTgj0Q3AFSQjRs3Zqf4NpVOMW/4OZRTw++g31OAthHdAFBB0jUCmjtKuGnTpsafQzk1/A76PQVoG9ENABV49eimGp5zezDKreG08pZ+T9M9u5s7Cg5QVKIbACrIEUccEcuWLctuB7ajV155pfHnUE4DBgyIvn37ZrdKbO6Wd35HAXYmugGggowfPz62bdsWs2bNanwuncZ7zz33xMiRI2PgwIFlXR8kZ5xxRjz99NONt7BLnn/++ewfjCZMmFDWtQFUmq7lXgBApbrjjjvi008/bbxa9FNPPRWrV6/OHk+dOjV69+4dK1eujPvvvz97ruGoz0033ZT9OWjQoJg4cWLZ1k91SmGdouWaa67Jbst0+OGHx7333hsrVqyI2bNnN2731ltvxZNPPpk9Xr58eaxfv77xd2/48OExbty4sv0dqP3Zd+2118ajjz4axx9/fFx++eWxYcOGmDlzZnz/+9+PCy64oMx/A4DKUldfX19f7kUAVKLBgwdnUd2c9957L/v5iy++mL3pbM6oUaOyn0N7pYtRTZ8+PR544IH45JNPYtiwYXHjjTfGKaec0rjNnDlzWoyb888/P/s55DX7knfeeSeuuOKKWLBgQey9995x6qmnxq233hoHHXRQJ68YoLKJ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whug9ohugConuKG2CG+A2iK6AaqY4IbaJLwBaofoBqhSghtqm/AGqA2iG6AKCW4oBuENUP1EN0CVEdxQLMIboLqJboAqIrihmIQ3QPUS3QBttG7duhg0aFD07t076uvr4/LLL49vfOMbcdddd3XK/gU3FFu5wjvNuDTr0sxLsy/NwDQL00wEoHWiG6CN9ttvv9i4cWN89tln2ffpje/69euzN6B5E9xAucI7zbg069I+kzQD0yxMMxGA1olugDbq0aNHXH/99VFXV5d9n/4cMmRIjB8/Ptf9Cm6gnOGdZlyadTvOvjQL00wEoHV19ek8IQDaJB3dSadVfvTRR9n3v/zlL+PMM8/MbX+CG2jJu+++G6NHj87id/78+TFgwIDc9vXII4/EWWedlT3u27dvrFy5Mnr27Jnb/gBqiSPdAO2Q3mSmIzzJQQcdlOtRbsENVMoR7zTr0sxL0gwU3ABtJ7oB2umiiy6KAw88MK6++urYa698xqjgBiopvNOsSzMvzb40AwFoO6eXA1QYwQ1U8qnmALSPI90AFURwA6U64v3JJ5/EP/zDP7inN0CZOdINUCEEN1CqI97dunWL7t27x9KlS7PPYN94443lXhpAYYlugAoguIFSWbJkSYwcOTK++uqr7Ps0T5YvX954yy8AOpfTywHKTHADpbJly5aYNGlSbN26daej32+//XZZ1wVQZKIboIwEN1BKn3/+eaxfvz7SiYxdunRpfH727NllXRdAkTm9HKBMBDeQh+3bt8eiRYvikUceiQceeCA++uij6NWrVxbjAHQ+0Q1QJukzl2vXrhXcQK4BPm/evOxK5hMnTiz3cgAKSXQDlMkTTzwRRx11VBx66KHlXgoAADkR3QAAAJATF1IDAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhugGZs3rw5pk2bFgcffHD07NkzRo4cGc8999wu27388stx7LHHxj777BP9+vWLyy67LDZs2FCWNQN0xux79tlnY/LkyTF06NDo0qVLDB48uGzrBagGohugGZMmTYrbbrstzjnnnLj99tuzN5Zjx46NBQsWNG7zxhtvxAknnBBffvlltu2FF14Ys2bNigkTJpR17QB5zr4HH3ww++rdu3cW5wDsXl19fX19K9sAFMqiRYuyozszZ86MK6+8Mntu06ZN2VGdb33rW9nR7SS9EU3h/Z//+Z/Rq1ev7Lm77747LrroonjmmWfi5JNPLuvfAyCP2bdmzZro27dvdOvWLU477bT43e9+FytWrCjz6gEqlyPdAE3MnTs3O7ozZcqUxud69OiRnU65cOHCWLVqVXz22WfZKZfnnntuY3An5513Xuy3337xyCOPlGn1APnNviQd3U7BDUDbiG6AJpYsWRJDhgzZKaaTESNGZH+mo9tvv/12bN26NY4++uidttl7773jiCOOyF4DoNZmHwDtJ7oBmli7dm30799/l+cbnkunVqZtdnyu6XZpG4Bam30AtJ/oBmhi48aN0b17912eT6dZNvw8fSUtbdfwc4Bamn0AtJ/oBmgi3SYn3TanqXRBoYafp6+kpe0afg5QS7MPgPbr2oH/BqCmpVMp33///V2ebzilPF1EqE+fPjs913Q7t9EBanH2AdB+jnQDNJEuhLZs2bLsCuU7euWVVxp/nm6h07Vr11i8ePFO22zZsiW72FDaBqDWZh8A7Se6AZoYP358bNu2LWbNmtX4XDrl8p577snuYTtw4MDo3bt3nHjiifHAAw/E559/3rjd/fffHxs2bIgJEyaUafUA+c0+ANrP6eUATaQ3lymar7nmmvjwww/j8MMPj3vvvTdWrFgRs2fPbtzupz/9afzwhz+MUaNGZfe1Xb16ddx6661x8sknx5gxY8r6dwDIa/a99dZb8eSTT2aPly9fHuvXr4+bbrop+3748OExbty4sv0dACpRXX19fX25FwFQadKFg6ZPn54dyf7kk09i2LBhceONN8Ypp5yy03YLFiyIadOmxeuvvx77779/nHnmmXHLLbdkjwFqcfbNmTMnLrjggmb/+/PPPz/7OQBfE90AAACQE5/pBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAKhxDzzwQJx33nnlXgZAIYlugDI68cQT45RTTonf/va3sX379nIvB6hBc+bMyYK7T58+5V4KQCHV1dfX15d7EQBFNWjQoPjv//7v7HHfvn3jzDPPjHPOOSf+7M/+rNxLA2okuP/u7/4uLrroovjFL34Re+3leAtAZxPdAGWU3gRfcskljd/X1dVFGstr1qyJ/v37l3VtQHUT3ACVwfQFKKPx48dn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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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XFyc001xvSNHjkhycrJ4Qb58+Uy/FixY0OmmAO5gAbCOHTtm9e/f3ypVqpRuuXvqp169etZHH33k9CJ0rddff9268sorHe+nSH8SEhKsAQMGWCdOnHB6EbrShg0brA4dOlgFCxZ0vK8i+cmfP7916623Wj///LNjy2758uVWy5Ytrbi4OM8tuzZt2lirV692bNm52eHDh62+fftaJUuWdLyvIv2pUqWKNX78eCstLc3pxehKs2bNsmrVquV4P0X6U6JECevuu++2Dhw44PQiBBwXp/84HfwBp91yyy2SmJgow4YNk+uvv94TFUZddbUqP2vWLFmyZIksWrRIbr31Vqeb5SqTJk2SBx98UHr27CmdO3eWEiVKiFcqVT/88IO8/PLL0rJlS/n000+dbpKr6Pv+uuuuk8KFC8tDDz0kVatWNVUVL6yz//rXv+SNN96QvXv3ys8//ywVK1aMaRs2bNggDRo0kOrVq8sDDzwgFSpU8ESFUau2oWW3b98++eWXX0zb8Z/3VvPmzeXXX3+VoUOHSp06dTzxORba4+Lzzz+X//mf/5Fx48bJiBEjnG6Sq3z44YfSrVs36dSpk9x5550SHx/viXVW9xhcs2aN+Ry74oorZMWKFZ4YpwG7ELoReL/99ptce+21MmfOHOnevbt4jX6wNWrUSCpXriwfffSR081xDR3atF9r164t77//vnjRzJkzpU+fPrJ582YTLPFvunF+//33y5YtW8z73msOHDhgwvYzzzwjf/nLX2L63CNHjpQ333xTtm/f7pkvodLTwF2pUiUTzh555BGnm+MaP/30k9SvX18++eQT6dixo3iRfgm0cOFC2bFjB+EsnVatWpnfX331lSfC9rm++OILadu2rXz//ffSpEkTp5sDOIZRDYH3448/mt+33XabeJEe/9uuXTtZuXKl001xFT3ubd26dZ7tV9WhQwfzW6ve+A99r9eqVcuTgVuVKVPGbHw6sc7qc+reE14M3Kps2bLSuHFjxrtz6BihQVXDjZfHu927d0tSUpLTTXFd3+rnmBcDt2rdurXZK4nPMQQdoRuBFzq5lp6UzKu07V45SVis+KFfQ8GIvs1Il4eX+9XJdZZl50+6PDTYePmkVaH3JX3rr3VWCwN6AkT6FUFH6AYAAAAAwCaEbuA8jh8/LqNHjza7b1900UVm96633nory2l1V2ad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stNlCm9LTk4Oj3cayAhl/qDbIud+jul2i/4AiD62/gGb6AfXudUADWb9+/d3rE2IjqFDh0rx4sUz3Pfcc8851h5ExxVXXCF9+/aV/Pnzm7/1t1Zur7/+eqeb5nq6jDp27Jhh2emy1GUKbzt3bNOxT8dAeJtui5z7ZbFusxC6AXsQugEb9enTRypWrBj++6mnnpLChQs72ibkXenSpeXRRx+VuLg483ft2rVN4ID3jRo1SizLMrdTU1PNrpfIGV1WusyULkNdlvA+Hdt0jFM65unYp2MgvE23RXSbJES3VXSbBYA9CN2AjQoVKhSuduvul1S5/UMrPQUKFAhXgkIBHN5WtWpV6dKli7l94403UuWOQL169aRp06bm9p/+9CezLOF9OraFqt065lHl9g/dJgkdPqPbKrrNAsAecVboK30Atjhz5oxUqFBB7rvvPvnrX//qdHMQRbr77NKlS2X79u2Ebh/Rk381adJEPv74Y7n11ludbo6nLF682HxpsXz5cqlTp47TzUGU6KainhivVatW8vbbbzvdHETRE088IdOmTZPdu3cTugEbEboBAAAAALAJu5cDAAAAAGATQjcAAAAAADYhdAMAAAAAYBNCNwAAAAAANiF0AwAAAABgE0I3AAAAAAA2IXQDAAAAAGATQjcAAAAAADYhdAMAAAAAYBNCNwAAAAAANiF0AwAAAABgE0I3AAAAAAA2IXQDAAAAAGATQjcAAAAAADYhdAMAAAAAYBNCNwAAAAAANiF0AwAAAABgE0I3cB6nT5+Wxx9/XCpUqCBFixaVxo0by+LFizNM88UXX0j//v2lVq1akj9/fqlSpUq28xs7dqx07txZLr30UomLi5Onn346y+nWr18vw4YNk6ZNm0qRIkXMtNu2bYv66wuq48ePy+jRo6Vdu3Zy0UUXmeX71ltvZZouMTFRHnzwQalfv74ULFjQTJedSZMmSffu3eXyyy83091zzz1ZTrdnzx554oknpFWrVlKyZEkz7ddffx3V1xdUdvSrmj59utSsWdOsi1deeaW89tprUVlnv/322yzbp9atW2deR4kSJcxr6d27t+zbty/TdGlpafLCCy/IFVdcYZ63du3aMnv27Gxfc3bvNafGOrVr1y7p0aOHJCQkSHx8vHTp0kW2bNmS7fTwzninDh8+LAMGDJCyZctK8eLFzdj3008/Re31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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n_2_8 = bf.BooleanNetwork([[0,0,0,1], [0,1], [0, 1]], [[1, 2], [0], [2]])\n", "G_2_8 = n_2_8.get_trajectories([[1]], [[1,0]])\n", "\n", "n_2_9 = bf.BooleanNetwork([[0,0,0,1], [1,0], [0, 1]], [[1, 2], [0], [2]])\n", "G_2_9 = n_2_9.get_trajectories([[1]], [[1,0]])\n", "\n", "G = bf.product_of_trajectories(G_2_8, G_2_9)\n", "\n", "bf.plot_trajectory(G_2_8, show = True);\n", "bf.plot_trajectory(G_2_9, show = True);\n", "bf.plot_trajectory(G, show = True);" ] }, { "cell_type": "markdown", "id": "3ef3cfe7", "metadata": {}, "source": [ "## Examples\n", "Everything beyond this point are implementations of all example\n", "from the manuscript ``Dynamics Decomposition of Boolean Networks\" by Veliz-Cuba et al." ] }, { "cell_type": "markdown", "id": "5aae1824", "metadata": {}, "source": [ "### Example 2.8" ] }, { "cell_type": "code", "execution_count": 6, "id": "14fb8b14", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.222118Z", "iopub.status.busy": "2026-03-29T02:41:19.222049Z", "iopub.status.idle": "2026-03-29T02:41:19.288701Z", "shell.execute_reply": "2026-03-29T02:41:19.288488Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAPdCAYAAACXzguGAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAANQVJREFUeJzt3XuQVvV9+PHPcseoCClyUYRYxHqJYDQ4rYzGRCIx2liVOpV6G4ypFzSxKqMdJVWrSalWW60TqhHFGmO1qdekqNWmXiJisF6Cg6aAwq6DN0CUO89vzknZcFkUzX72PM/P12tmZ/c5z/F8v/zhPPve77k01Wq1WgAAAADtrlP7HxIAAAAoiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACBJl6wDAwAfbdGiRfHAAw/EG2+8EbVarV2P3dTUFP369YvDDz88+vfv367HBgC2jugGgIr88Ic/jG9+85vlz717945Ondr3BLR169bFu+++W/58/fXXx1/8xV+06/EBgI/WVGvvP6sDAB/plVdeid133z3Gjx8fV155Zfze7/1eyjhvv/12XHzxxXHDDTfESy+9FHvuuWfKOABA21zTDQAV+MlPfhI9e/aMa6+9Ni24C5/97Gfj6quvju22264cEwDoWKIbACqwYMGC+P3f//3YZptt0sfq0aNH7LbbbvH666+njwUAbEx0A0AFiuutO3fu3GHjFWMVYwIAHUt0AwAAQBLRDQB1ZuXKlTFx4sQYOHBged33AQccEA899NBG+0yfPr28Cdvee+9drmIPGTKksvkCAFsmugGgzpx88snlzc/GjRtX3mitiOriWduPP/546z633357+dWrV68yzgGA+iS6AaCOzJgxI+64447yMWKTJ0+O0047Lf7zP/8zBg8eHBdccEHrfldccUUsXbo0nnjiiRg+fHilcwYAtkx0A0Adueuu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mLj//vvj9ddfb932yCOPxJw5c2Ls2LGVzg0A+K2mWq1W2+A1AFCx6667LhYvXhzNzc1xww03xNFHHx377rtv+d6ECROiV69eZWwX23bYYYc455xzYtmyZTF58uTYeeed45lnnnF6OQDUCdENAHVmyJAhMX/+/Dbfmzt3bvl+4aWXXopzzz03Hn/88ejWrVt8/etfj6uuuir69evXwTMGALZEdAMAAEAS13QDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0A0ADmTNnTrz88stVTwMA2EpNtVqttrU7AwDV+tM//dNYtWpV/Pu//3vVUwEAtoKVbgBoIKtXry6/AIDGILoBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACBJU61Wq2UdHABoHyeeeGI89NBD8e6775ave/fuHV/60pfiRz/6UdVTAwA+RJcPexMAqA9r1qyJN954o/V18fPq1asrnRMA8NGsdANAA3j55Zdjzz33jA0/tl944YXYe++9K50XAPDhXNMNAA3gD/7gD+K4446Lpqam8uuYY44R3ADQAKx0A0ADrXbvscce5c9WuQGgMYhuAGggBx54YHkt94wZM6qeCgCwFUQ3AAAAJHFNNwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AUGdWrlwZEydOjIEDB0bPnj3jgAMOiIceemijfaZPnx7jx4+PvffeOzp37hxDhgypbL4AwJaJbgCoMyeffHJcffXVMW7cuLj22mvLqD788MPj8ccfb93n9ttvL7969epVxjkAUJ+aarVarepJAAC/MWPGjHJle/LkyXHeeeeV21asWFGuaO+4447x5JNPltuam5ujb9++0bVr1zjiiCPixRdfjHnz5lU8ewBgU1a6AaCO3HXXXeXK9mmnnda6rUePHuWp5E899VS8/vrr5bZidbsIbgCgvoluAKgjs2bNimHDhsX222+/0faRI0eW35977rmKZgYAfBKiGwDqSEtLSwwYMGCz7eu3FaeVAwCNQ3QDQB1Zvnx5dO/efbPtxSnm698HABqH6AaAOlI8Iqx4ZNimipuprX8fAGgcohsA6khxGnlxivmm1m/zeDAAaCyiGwDqyIgRI2LOnDmxdOnSjbY//fTTre8DAI1DdANAHTn22GNj7dq1MWXKlNZtxenmN998c/n87kGDBlU6PwDg4+nyMfcHABIVYT127Ni48MILY9GiRTF06NC45ZZbYt68eXHTTTe17vf888/HvffeW/786quvxpIlS+Lyyy8vXw8fPjyOPPLIyv4NAMBvNdVqtdoGrwGAihU3Tbv44ovjtttui3fffTf22WefuOyyy+Kwww5r3Wfq1KlxyimntPnfn3TSSeX7AED1RDcAAAAkcU03AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwA0kGnTpsXNN99c9TQAgK3UVKvValu7MwBQrT/5kz+JVatWxQMPPFD1VACArWClGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAkohuAAAASCK6AQAAIInoBgAAgCSiGwAAAJKIbgAAAEgiugEAACCJ6AYAAIAkohsAAACSiG4AAABIIroBAAAgiegGAACAJKIbAAAAknTJOjAA0H5aWlpi7ty58fbbb8eaNWviySefjCFDhsTAgQOrnhoA8CGaarVa7cN2AACq94UvfCFmzZq10bY999wzXnrppcrmBAB8NKeXA0ADGDt27GbbjjvuuErmAgBsPSvdANAA3nvvvRg0aFAsWbKkfL3ddtvFa6+9FjvssEPVUwMAPoSVbgBoAEVkT5w4sfX1eeedJ7gBoAFY6QaABlrt7tOnTxQf3W+99ZboBoAG4O7lANBAq91XXnllrF69WnADQIOw0g0AAABJXNMNAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YADgo73xxhtx3333xcKFC6NWq7XrsZuammLgwIFx5JFHxoABA9r12ADA1mmqtfcnPACwVW677bY46aSTyjjecccdo3Pnzu16/LVr18aiRYti3bp1cdNNN8Upp5zSrscHAD6a6AaACjQ3N8egQYPiz//8z+Pv//7vo0+fPinjvPvuu3H++efHD3/4w5g3b17ssssuKeMAAG1zTTcAVKA4pbxTp05xzTXXpAV3oXfv3nH11VdH165d45577kkbBwBom+gGgAoU13AX11kXUZxt++23j5133rkcEwDoWKIbACpQXGfd3tdwf5hirGJMAKBjiW4AAABIIroBoM6sXLkyJk6cWD7uq2fPnnHAAQfEQw89tNl+Tz75ZIwaNSq22Wab6N+/f5x99tmxbNmySuYMALRNdANAnTn55JPLm5+NGzcurr322vLU8MMPPzwef/zx1n2ee+65+MpXvhIffPBBue+pp54aU6ZMibFjx1Y6dwBgY102eQ0AVGjGjBlxxx13xOTJk+O8884rt5144omx9957xwUXXFCubhcuuuii8iZsjz32WHmjtMKQIUPim9/8ZkyfPj2++tWvVvrvAAB+w0o3ANSRu+66q1zZPu2001q39ejRI8aPHx9PPfVUvP7667F06dLydPPiGd/rg3t9nG+77bZx5513VjR7AGBTVroBoI7MmjUrhg0btlFMF0aOHNl6WnnxXO81a9bE/vvvv9E+3bp1ixEjRpTHAADqg5VuAKgjLS0t5fO7N7V+W3Nzc7nPhts23a/YBwCoD6IbAOrI8uXLo3v37pttL04xX/9+8VXY0n7r3wcAqie6AaCOFI8IKx4ZtqkVK1a0vl98Fba03/r3AYDquaYbAOpIcXr4woULN9u+/pTy4tndxTXdG27bdL9iHwCgPljpBoA6UtwIbc6cOeUdyjf09NNPt75fPD6sS5cuMXPmzI32WbVqVXmjtWIfAKA+iG4AqCPHHntsrF27NqZMmdK6rTiN/Oabb44DDjggBg0aFL169YpDDz00brvttnjvvfda95s2bVosW7Ysxo4dW9HsAYBNOb0cAOpIEdZFNF944YWxaNGiGDp0aNxyyy0xb968uOmmm1r3+5u/+Zv4oz/6ozj44IPLZ3ovWLAgrrrqqvjqV78aY8aMqfTfAAD8lpVuAKgzt956a3z7298uV67PPvvsWL16ddx///1x0EEHte7zhS98IR5++OHypmnf+c53ypXx8ePHx1133VXp3AGAjVnpBoA6Uzz2a/LkyeXXhxk1alQ88cQTHTYvAODjs9INAAAASUQ3AFSgqakp1q1b12HjFTdnK8YEADqW6AaAip7HXTxTe8mSJeljFXc0L579XYwJAHQs0Q0AFTjyyCPLG6RNnDixjOIs77//flx00UXlY8e+8Y1vpI0DALStqVar1bbwHgCQpAjtHXbYoTztu7hx2i677BKdO3du1zGKY7/++uuxfPnycozimd5duriHKgB0JJ+8AFCBRx99tIzi4rFfzz//fDQ3N7f7Nd7FNdwDBw4sg7549vczzzwT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AAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAk6ZJ1YGBjzc3N8bOf/SzefPPNdj92p06dYqeddorDDz88dthhh3Y/PgAA8MmIbugA3//+9+PCCy+Mpqam2H777ctIbk9r166NJUuWRLdu3eLHP/5xHHXUUe16fAAA4JNpqtVqtU/43wJb4YknnohRo0bFBRdcUIZ31kp0sZJ+zjnnxD333BMLFy6Mvn37powDAABsPdd0Q7K77747Bg4cGFdeeWXqqd/FGNdff3256n3//fenjQMAAGw90Q3JXn/99dhrr73a/ZTytuy4447Rr1+/eO2119LHAgAAPprohmTr1q2Lzp07d9h4Xbp0KccEAACqJ7oBAAAgieiGiixbtiwmTZoUY8aMiT59+pR3Np86dWqb+86ePbvcb9ttty33PeGEE1IePQYA1K+VK1fGxIkTy/u49OzZMw444IB46KGHNtpn+vTpMX78+Nh7773LM+2GDBlS2XyB3xDdUJG33norLr300jKohw8fvsX9FixYEAcddFC8+uqrccUVV8R5550XDzzwQIwePTpWrVrVoXMGAKpz8sknx9VXXx3jxo2La6+9tozqww8/PB5//PHWfW6//fbyq1evXmWcA9XznG6oyIABA6KlpSX69+8fM2fOjC9+8Ytt7leE9vvvvx/PPvts7LLLLuW2kSNHltFdrIyfdtppHTxzAKCjzZgxI+64446YPHly+Qf4woknnliuaBePJX3yySdbf2/453/+5+jatWscccQR8eKLL1Y8c8BKN1Ske/fuZXBvzSPHig/N9cFdOPTQQ2PYsGFx5513tvu8XnjhhfI53wDAx1d8hhafpe3trrvuKle2N/xje48ePcpTyZ966qnyaSmFYnW7CG6gfohuqPMP7kWLFsX++++/2XvFavesWbPabaxnnnmmPEVtn332iYsuuqjdjgsAnybFZ2jxWVp8phafre2l+Mwv/uC+/fbbb/b7QOG5555rt7GA9uX0cqhjxenn609F31Sx7Z133ilvqlKsmn9cq1evLq8XL64Du+6668rT1tY/S7z4a/nPf/7zdvgXAMCny/oV5+KGZj/96U/Lm52deeaZMWrUqNh5550/8Sp08TvBln4fKDQ3N/+OMweyiG6oY8uXLy+/txXVxSll6/f5JNH97W9/O/7pn/5po23rn+/96KOPll8AwCezdu3a8vvTTz9dfhXOOOOMuP766z/R8bb0eb/h7wNAfRLdUMeKx4EUitXsTa1YsWKjfT6uyy+/PI455pjyGrHia8NHkBV3Uy8eSwYAfDzTpk2L//mf/ykfBVqr1WLHHXcsP2+PPfbY2HfffT/xcYvP+4zfB4B8ohvq2PpTxtafZr6hYlvxzO5Psspd6N27d3z5y18uv4rTy//t3/4tLr744nj55Zdjzz33jL/8y7/8necPAJ82xdNGiujefffd47LLLoujjz669fKt3/V3grZudLr+dwSPB4P6Jbqhju20007Rt2/f8pFimyquwR4xYkS7jFP8MlD8Bb74xeDBBx+Mz33uc+1yXAD4tPmrv/qrOP7448sbqbVHbK9XfOYXl34tXbp0o5uprT91vb1+JwDan7uXQ50rTkm7//77W2/MUnjkkUdizpw5MXbs2HYdq/jloHg82V577dWuxwWAT4viM7T4LG3P4C4UfxwvrhOfMmVK67bidPObb765vFnboEGD2nU8oP1Y6YYKFad1L168uPWOo/fdd195R/HChAkTolevXuWjR/71X/81DjnkkDjnnHNi2bJlMXny5Pj85z8fp5xySsX/AgCgIxRhXfyx/cILLywfJzp06NC45ZZbYt68eXHTTTe17vf888/HvffeW/786quvxpIlS8r7uKy/Z8uRRx5Z2b8BPq2aasUdHoDUleoPPvigfGzIpoYMGRLz589v87+bO3du+X7hpZdeinPPPbd8vFe3bt3i61//elx11VXRr1+/zf67XXbZpYzxv/7rv0741wAAVSlumlbcf+W2226Ld999t3weeHHd+GGHHda6z9SpU7f4R/mTTjqpfB/oWKIbKozuDKIbAADqh2u6AQAAIInohmTFczrXrVvXYeMVN1kpxgQAAKonuiFZcd31r3/96+iIKzmKm6UUN1dp61pvAACg44luSFbcJbSI7htuuKFchc6+ucqaNWvKR5UAAADVcyM1SFacWn7WWWeV0d23b9/Yeeed2/3ZnUXMF2H/3nvvxT/+4z+W4wEAANUT3dABiv/Nnn766XjggQfizTffbPfjFxFfxPxRRx0Ve+65Z7sfHwAA+GRENwAAACRxTTcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAAAkEd0AAACQRHQDAABAEtENAAAASUQ3AAAAJBHdAAAAkER0AwAAQBLRDQAAAElENwAAACQR3QAAAJBEdAMAAEAS0Q0AAABJRDcAAABEjv8HeXbO2gOjoWEAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n = bf.BooleanNetwork([[0,0,0,1],[0,1],[0,1]],[[1,2],[0],[2]])\n", "bf.plot_trajectory(n.get_trajectories([[1]],[[1,0]]), show = True);" ] }, { "cell_type": "markdown", "id": "877a4115", "metadata": {}, "source": [ "### Example 2.9" ] }, { "cell_type": "code", "execution_count": 7, "id": "74a35d9f", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.289845Z", "iopub.status.busy": "2026-03-29T02:41:19.289777Z", "iopub.status.idle": "2026-03-29T02:41:19.322089Z", "shell.execute_reply": "2026-03-29T02:41:19.321881Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAK/ZJREFUeJzt3QuQVvV5+PFnBQS8QIISQUSIsWSmIWC8wDS1gvVGUdJGQTsqikWZ6og2jiPeKPNXo9MhOnHGTipKxcuoUdSJGmbUKLZBGRHFSywtIQoFoSpVUZSLwP7nd9JdYdllL7xn38v5fGZ2ePfd43t+ZDbPvF/Oec+pq6+vrw8AAACg5PYq/UsCAAAAiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADISde8XhigmtTX18eaNWviiy++KPlrd+nSJQYMGBA9evQo+WsD7Ikvv/wy1q5dG9u2bSv5a/fs2TMOOeSQqKurK/lrA1QT0Q0U3sMPPxwzZsyIZcuW5baPfffdN84666y44447sjeiAOX02Wefxd///d/HE088EZs2bcptP9/+9rfjuuuui8mTJ+e2D4BKJ7qBQnvmmWfi7LPPjnHjxsUtt9wSBxxwQMmPynz11VexcOHC7PXXr18fc+fOLenrA7TXj3/843jttdfi//2//xdHH310dO3ateRnD6V59+CDD8aFF14YvXr1igkTJpR0HwDVoq4+TUWAgjrjjDNixYoV8eqrr8Zee+V7mYs777wzLrnkknj//fejX79+ue4LoCW///3vY8iQIdlZPukMnDylt5l/+Zd/mX3M5je/+U2u+wKoVC6kBhTakiVL4oQTTsg9uJOTTjoptm/fHm+//Xbu+wLY3dxrmEl5S2cOpf007BOgiEQ3UGjp1O/O+oz1Pvvsk/25ZcuWTtkfQEtzb8eZlLc0Y809oMhEN0AzNm/eHNOmTYuDDz44e8M4cuTIeO6553ba5tlnn80uDjR06NDs1MnBgweXbb0ApbBhw4bswpJjxoyJPn36ZEeq58yZs8t2ixYtyj4uc9RRR0W3bt1coRxgN0Q3QDMmTZoUt912W5xzzjlx++23Z1E9duzYWLBgQeM26QJB6at3795ZnANUu3Xr1sUNN9wQS5cujeHDh7e43bx58+Luu+/OYvuwww7r1DUCVBvRDdDMEZx0gaF0tfGZM2fGlClT4oUXXohBgwbFVVdd1bjdzTffnN1256WXXtrtm1OAatG/f//svt0rV67M5l9LLr744uzq5IsXL+6Uz4YDVDPRDdBEuqVXOrKdYrtBjx49slPJ062/Vq1alT2Xjm6n0yoBakX37t3bdHeFgw46qNOuhwFQ7UQ3QBPpKrvpdjrpvrI7GjFiRPbnG2+8UaaVAQBQbUQ3QBPp1Mp0imVTDc+tWbOmDKsCAKAaiW6AJjZu3JidYtlUOsW84ecAANAWohugifQ5xXTLsKY2bdrU+HMAAGgL0Q3QwtV7m2p4zu3BAABoK9EN0MQRRxwRy5Yty24HtqNXXnml8ecAANAWohugifHjx8e2bdti1qxZjc+l083vueeeGDlyZAwcOLCs6wMAoHp0LfcCACpNCusJEybENddcEx9++GEcfvjhce+998aKFSti9uzZjdu99dZb8eSTT2aPly9fHuvXr4+bbrop+3748OExbty4sv0dADrqjjvuiE8//bTxTg1PPfVUrF69Ons8derU6N27d6xcuTLuv//+7LnFixdnfzbMv0GDBsXEiRPLtn6ASiO6AZpx3333xfTp07M3lZ988kkMGzYsnn766TjuuOMat3n99dezbXbU8P35558vuoGq9LOf/SyL6gaPP/549pWce+65WXS/9957Lc6/UaNGiW6AHYhugGak24PNnDkz+2rJpEmTsi+AWpLO6mnN6NGjo76+vlPWA1DtfKYbAAAAciK6AQAAICeiGyi8zjpF0qmYQCUx+wA6h+gGCm3fffeNjz/+uFP29b//+7+N+wQol4YZ1FmzL+3H3AOKTHQDhZausptu+5Vuj9MZV0Tv2bNnHHPMMbnvC6Alf/7nfx5dunTJboWYty+++CLmzp2bXXgNoKhcvRwotMsvvzweffTR7L7aP/7xj+PAAw+Murq6ku5jy5YtsXDhwnjuuedixowZjvgAZdW3b9+49NJL47rrrouXX345jj766OjWrVvJTylPt1v81a9+FR988EHjPb0Biqiu3gdtgIJ755134uc//3nMnz8/NmzYUPLX79q1a3z3u9/N7lub7t9d6qgHaK/09u/OO++Mhx56KJYvXx7btm0r+T722WefOO644+Kyyy6LI488suSvD1AtRDcAAADkxGe6AQAAICeiGwAAAHIiugEAACAnohsAAAByIroBAAAgJ6IbAAAAciK6AQAAICeiGwAAAHIiugEAACAnohugA6644opYunRpuZcB0GnSzEuzD4D2Ed0AHfDzn/88fvvb35Z7GQCdJs28NPsAaB/RDQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAAAAkBPRDQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAAAAkBPRDQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAAAAkBPRDQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAO3wH//xH7Fw4cKor6+PP/zhD9njTZs2lXtZALlJMy7NujTz0uxLj5cuXVruZQFUjbr6ND0BaNXq1atj4MCBuzx//fXXx4033liWNQHkbfr06XHTTTft8vyqVavikEMOKcuaAKqJI90AbTRgwIA46qijYq+9dh6dp59+etnWBJC3pjMuzcA0C9NMBKB1ohugjerq6rKjPdu3b2984zlu3Lj4wQ9+UO6lAeQmzbg06xr+wTHNwDQL00wEoHVOLwdohzQyjznmmHjttdey719//XXRDdS8JUuWxJFHHpk9Tke5X331VdEN0EaOdAN04Gh3MmzYMMENFEKadWnmJY5yA7SP6AZop1NOOSUmTJgQs2bNKvdSADpNmnlp9qUZCEDbOb0cAAAAcuJINwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3QDM2bNgQM2bMiDFjxkSfPn2irq4u5syZs8t2ixYtiksuuSSOOuqo6NatW7Yd7KnNmzfHtGnT4uCDD46ePXvGyJEj47nnnttpm2effTYmT54cQ4cOjS5dusTgwYPLtl6KN/uSpUuXZtvtt99+2bYTJ06Mjz76qNPXDFDpRDdAM9atWxc33HBD9qZy+PDhLW43b968uPvuu7M3pocddlinrpHaNWnSpLjtttvinHPOidtvvz2L6rFjx8aCBQsat3nwwQezr969e2dxDp05+1avXh3HHXdcLF++PG6++ea48sor49e//nWcdNJJsWXLlk5dM0ClE90Azejfv3+sXbs2Vq5cGTNnzmxxu4svvjjWr18fixcvzt5swp5KZ088/PDDccstt2S/e1OmTIkXXnghBg0aFFdddVXjdil0Pvvss3jppZd2G0eQx+xLv39ffPFF9rt52WWXxbXXXhuPPPJIvPnmmy0eGQcoKtEN0Izu3btHv379Wt3uoIMOyk7/hVKZO3dudmQ7xXaDHj16ZKeSL1y4MFatWpU9l45up480QDlm32OPPRannXZaHHrooY3PnXjiiTFkyJAsvgH4mugGgAqyZMmSLFx69eq10/MjRozI/nzjjTfKtDL4o/fffz8+/PDDOProo3f5Wfo9Tb/DAHxNdANABUmn9qZTfJtqeG7NmjVlWBXs/DuatPR7+vHHH2cXAwTgj0Q3AFSQjRs3Zqf4NpVOMW/4OZRTw++g31OAthHdAFBB0jUCmjtKuGnTpsafQzk1/A76PQVoG9ENABV49eimGp5zezDKreG08pZ+T9M9u5s7Cg5QVKIbACrIEUccEcuWLctuB7ajV155pfHnUE4DBgyIvn37ZrdKbO6Wd35HAXYmugGggowfPz62bdsWs2bNanwuncZ7zz33xMiRI2PgwIFlXR8kZ5xxRjz99NONt7BLnn/++ewfjCZMmFDWtQFUmq7lXgBApbrjjjvi008/bbxa9FNPPRWrV6/OHk+dOjV69+4dK1eujPvvvz97ruGoz0033ZT9OWjQoJg4cWLZ1k91SmGdouWaa67Jbst0+OGHx7333hsrVqyI2bNnN2731ltvxZNPPpk9Xr58eaxfv77xd2/48OExbty4sv0dqP3Zd+2118ajjz4axx9/fFx++eWxYcOGmDlzZnz/+9+PCy64oMx/A4DKUldfX19f7kUAVKLBgwdnUd2c9957L/v5iy++mL3pbM6oUaOyn0N7pYtRTZ8+PR544IH45JNPYtiwYXHjjTfGKaec0rjNnDlzWoyb888/P/s55DX7knfeeSeuuOKKWLBgQey9995x6qmnxq233hoHHXRQJ68YoLKJ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whug9ohugConuKG2CG+A2iK6AaqY4IbaJLwBaofoBqhSghtqm/AGqA2iG6AKCW4oBuENUP1EN0CVEdxQLMIboLqJboAqIrihmIQ3QPUS3QBttG7duhg0aFD07t076uvr4/LLL49vfOMbcdddd3XK/gU3FFu5wjvNuDTr0sxLsy/NwDQL00wEoHWiG6CN9ttvv9i4cWN89tln2ffpje/69euzN6B5E9xAucI7zbg069I+kzQD0yxMMxGA1olugDbq0aNHXH/99VFXV5d9n/4cMmRIjB8/Ptf9Cm6gnOGdZlyadTvOvjQL00wEoHV19ek8IQDaJB3dSadVfvTRR9n3v/zlL+PMM8/MbX+CG2jJu+++G6NHj87id/78+TFgwIDc9vXII4/EWWedlT3u27dvrFy5Mnr27Jnb/gBqiSPdAO2Q3mSmIzzJQQcdlOtRbsENVMoR7zTr0sxL0gwU3ABtJ7oB2umiiy6KAw88MK6++urYa698xqjgBiopvNOsSzMvzb40AwFoO6eXA1QYwQ1U8qnmALSPI90AFURwA6U64v3JJ5/EP/zDP7inN0CZOdINUCEEN1CqI97dunWL7t27x9KlS7PPYN94443lXhpAYYlugAoguIFSWbJkSYwcOTK++uqr7Ps0T5YvX954yy8AOpfTywHKTHADpbJly5aYNGlSbN26daej32+//XZZ1wVQZKIboIwEN1BKn3/+eaxfvz7SiYxdunRpfH727NllXRdAkTm9HKBMBDeQh+3bt8eiRYvikUceiQceeCA++uij6NWrVxbjAHQ+0Q1QJukzl2vXrhXcQK4BPm/evOxK5hMnTiz3cgAKSXQDlMkTTzwRRx11VBx66KHlXgoAADkR3QAAAJATF1IDAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhugGZs3rw5pk2bFgcffHD07NkzRo4cGc8999wu27388stx7LHHxj777BP9+vWLyy67LDZs2FCWNQN0xux79tlnY/LkyTF06NDo0qVLDB48uGzrBagGohugGZMmTYrbbrstzjnnnLj99tuzN5Zjx46NBQsWNG7zxhtvxAknnBBffvlltu2FF14Ys2bNigkTJpR17QB5zr4HH3ww++rdu3cW5wDsXl19fX19K9sAFMqiRYuyozszZ86MK6+8Mntu06ZN2VGdb33rW9nR7SS9EU3h/Z//+Z/Rq1ev7Lm77747LrroonjmmWfi5JNPLuvfAyCP2bdmzZro27dvdOvWLU477bT43e9+FytWrCjz6gEqlyPdAE3MnTs3O7ozZcqUxud69OiRnU65cOHCWLVqVXz22WfZKZfnnntuY3An5513Xuy3337xyCOPlGn1APnNviQd3U7BDUDbiG6AJpYsWRJDhgzZKaaTESNGZH+mo9tvv/12bN26NY4++uidttl7773jiCOOyF4DoNZmHwDtJ7oBmli7dm30799/l+cbnkunVqZtdnyu6XZpG4Bam30AtJ/oBmhi48aN0b17912eT6dZNvw8fSUtbdfwc4Bamn0AtJ/oBmgi3SYn3TanqXRBoYafp6+kpe0afg5QS7MPgPbr2oH/BqCmpVMp33///V2ebzilPF1EqE+fPjs913Q7t9EBanH2AdB+jnQDNJEuhLZs2bLsCuU7euWVVxp/nm6h07Vr11i8ePFO22zZsiW72FDaBqDWZh8A7Se6AZoYP358bNu2LWbNmtX4XDrl8p577snuYTtw4MDo3bt3nHjiifHAAw/E559/3rjd/fffHxs2bIgJEyaUafUA+c0+ANrP6eUATaQ3lymar7nmmvjwww/j8MMPj3vvvTdWrFgRs2fPbtzupz/9afzwhz+MUaNGZfe1Xb16ddx6661x8sknx5gxY8r6dwDIa/a99dZb8eSTT2aPly9fHuvXr4+bbrop+3748OExbty4sv0dACpRXX19fX25FwFQadKFg6ZPn54dyf7kk09i2LBhceONN8Ypp5yy03YLFiyIadOmxeuvvx77779/nHnmmXHLLbdkjwFqcfbNmTMnLrjggmb/+/PPPz/7OQBfE90AAACQE5/pBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAKhxDzzwQJx33nnlXgZAIYlugDI68cQT45RTTonf/va3sX379nIvB6hBc+bMyYK7T58+5V4KQCHV1dfX15d7EQBFNWjQoPjv//7v7HHfvn3jzDPPjHPOOSf+7M/+rNxLA2okuP/u7/4uLrroovjFL34Re+3leAtAZxPdAGWU3gRfcskljd/X1dVFGstr1qyJ/v37l3VtQHUT3ACVwfQFKKPx48dn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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n = bf.BooleanNetwork([[0,0,0,1],[1,0],[0,1]],[[1,2],[0],[2]])\n", "bf.plot_trajectory(n.get_trajectories([[1]], [[1,0]]), show = True);" ] }, { "cell_type": "markdown", "id": "57a7d87a", "metadata": {}, "source": [ "### Example 2.10" ] }, { "cell_type": "code", "execution_count": 8, "id": "93fc3543", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.323165Z", "iopub.status.busy": "2026-03-29T02:41:19.323098Z", "iopub.status.idle": "2026-03-29T02:41:19.345747Z", "shell.execute_reply": "2026-03-29T02:41:19.345507Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAIXRJREFUeJzt3QmMVfXZBvB3YNhcQK2KuOIGrUtFRVChqKlb3dAUbOPSUnGpxlpr3Ftta11LNbG12hituzWUxipII2rrWpYqGOOuVSoILsQFAQEZ5ss5foPsDHD/99zl90smw5x7PO+Z5JjJc5//Paehubm5OQAAAICSa1P6QwIAAAAZoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABJpTHVgAKrLwoULY86cOSU/bkNDQ6yzzjr5d6g0zc3N+XWffS+17Lpv00a/AVDvhG6AOvff//43Lrjgghg9enR8/vnnSWZ06dIlBg4cGL/73e9ik002STIDVsfUqVPjvPPOi1GjRsWsWbOSzOjQoUMccsghceWVV8bOO++cZAYAla+hOcVbuwBUhRkzZsTuu+8ebdu2jdNOOy26d+9e8mauqakpXn311fjTn/4Um222WTz33HPRrl27ks6A1ZGF7F69euVvMmXX/Y477ljy6z5bOTJlypS45ZZb4pNPPomJEyfGlltuWdIZAFQHTTdAHRsxYkRMnz493nrrrdh6662TzjrssMNin332icceeywOPfTQpLNgZUaOHJmv8HjllVfi61//etJZJ510Uv7/1j333JOvKAGg/vigEUAdGz9+fOyxxx7JA3emb9++semmm8bYsWOTz4KVGTduXPTs2TN54M5svPHG0a9fv3wmAPVJ6AaoY/PmzYv111+/LLOyG6mtt956+UwoUnYNZtdiuWT/j7nuAeqX0A3Acj/z+stf/jJfBr7RRhvlgfn2229f7r7ZEt1svyzEZPueeOKJ8eGHHy53X3cwpxau+wkTJsQZZ5wRe+65Z35/glVd1657gPomdAOw3BusXXbZZXmg3m233VZ6B+gBAwbEm2++md+h+dxzz42HHnooDjrooJg/f35ZzxnKdd1nd/rPbpCWhentttuurOcIQPVxIzUAltGtW7f8BmvZ3cafffbZ2GuvvZa7Xxa0Z8+end+RvOVz4X369MlDd9YQnnrqqWU+c0h/3Z9++un5TdE6deoUZ555Zrz++utlP1cAqoemG4DlPl84Cx6r8re//S2OOOKIJW7EduCBB0aPHj1i+PDhic8Sirnuu3btmgduAGgNoRuANfLuu+/GBx98EL17917mtaztnjRpUiHnBQBQSYRuANZItgy3ZUnu0rJtH330kTs2AwB1T+gGYI18/vnni5bkLq1jx45L7AMAUK+EbgDWSMtnWpfXZs+dO3eJfQAA6pXQDcAaaVlW3rLMfHHZtuw5x8trwQEA6onQDcAa2WKLLWKTTTbJH620tAkTJkSvXr0KOS8AgEoidAOwxr773e/GqFGjYsqUKYu2PfbYY/lziwcPHlzouQEAVILGok8AgMp0ww03xCeffBLTpk3Lfx45cmRMnTo1//dPfvKT6NKlS1x88cXx17/+NQ444ID46U9/GrNmzYphw4bFrrvuGj/60Y8K/g0gzXX/v//9L+666658W8tKj8svvzz/vs0228SJJ55Y2PkDUHkampubm4s+CQCKcdxxx8X777+ft9NL6969ex4uluftt9/OX8+89NJLcc4558TTTz8d7du3j8MPPzyuvfba6Nq16zL/3Q477BCDBg2Kq6++OsFvA63z4x//OA/Ly/toRGuu+8cffzx/o2l59ttvv/z1pVeEZHfyHz16dIl+AwCqiaYbgOWaPHlyq/bbeeed4+GHH05+PlAp1/3+++8fOgsAWstnugEAACARoRsAAAASEboBKBtLcqlHrnuA+iZ0A9Sxjh07xqefflq24PHZZ5/lM6FI2TU4c+bMss3LZrnuAeqX0A1Qx/bdd9+YNGlSvPXWW8lnZXc3//DDD6Nfv37JZ8Gqrvs33ngjXnjhheSz3nvvvfzad90D1C+PDAOoYx9//HHsueeeMW/evPy52tnjkNq0Ke37sU1NTfHaa6/Fn//859huu+1i3Lhx0djo4RkUZ/bs2bHXXnvFjBkz4qSTTsofZVfq637hwoX5871vv/32mD9/fjz33HPRrVu3ks4AoDoI3QB17p133olLLrkkRo0aFR999FGSGVnYOProo+OKK66IDTfcMMkMWN0G+he/+EU8+OCD+QqMFLp06RKHHXZY/OpXv4oePXokmQFA5RO6AViinUuh1C0ilJLrHoCUhG4AAABIxFuwAAAAkIjQDQAAAIkI3QAAAJCI0A0AAACJCN0AAACQiNANQFLZs789KINKlV2bqZ5PDwAZoRuApHr16hXDhg0r+jRgubJrM7tGASAVoRuApI466qi45pprYubMmUWfCiwhuyaza3PgwIFFnwoANUzoBiCpCy+8MGbNmhU33HBD0acCS8iuyezazK5RAEilodkH7QBI7Mwzz4y//OUv8fbbb0fnzp2LPh3IW+5tt902jjvuuPjDH/5Q9OkAUMM03QAkp+2m0mi5ASgXTTcAZaHtplJouQEoJ003AGWh7aZSaLkBKCdNNwBlo+2maFpuAMpN0w1A2Wi7KZqWG4By03QDUFbaboqi5QagCJpuAMpK201RtNwAFEHTDUDZabspNy03AEXRdANQdtpuyk3LDUBRNN0AFELbTblouQEokqYbgEJouykXLTcARdJ0A1AYbTepabkBKJqmG4DCaLtJTcsNQNE03QAUSttNKlpuACqBphuAQmm7SUXLDUAl0HQDUDhtN6Wm5QagUmi6ASictptS03IDUCk03QBUBG03paLlBqCSaLoBqAjabkpFyw1AJdF0A1AxtN2sLS03AJVG0w1AxdB2s7a03ABUGk03ABVF282a0nIDUIk03QBUFG03a0rLDUAl0nQDUHG03awuLTcAlUrTDUDF0XazurTcAFQqTTcAFUnbTWtpuQGoZJpuACqStpvW0nIDUMk03QBULG03q6LlBqDSaboBqFjablZFyw1ApdN0A1DRtN2siJYbgGqg6Qagomm7WREtNwDVQNMNQMXTdrM0LTcA1ULTDUDF03azNC03ANVC0w1AVdB200LLDUA10XQDUBW03bTQcgNQTTTdAFQNbTdabgCqjaYbgKqh7UbLDUC10XQDUFW03fVLyw1ANdJ0A1BVtN31S8sNQDXSdANQdbTd9UfLDUC10nQDUHW03fVHyw1AtdJ0A1CVtN31Q8sNQDXTdANQlbTd9UPLDUA103QDULW03bVPyw1AtdN0A1C1tN21T8sNQLXTdANQ1bTdtUvLDUAt0HQDUNW03bVLyw1ALdB0A1D1tN21R8sNQK3QdANQ9bTdtUfLDUCt0HQDUBO03bVDyw1ALdF0A1ATtN21Q8sNQC3RdANQM7Td1U/LDUCt0XQDUDO03dVPyw1ArdF0A1BTtN3VS8sNQC3SdANQU7Td1UvLDUAt0nQDUHO03dVHyw1ArdJ0A1BztN3VR8sNQK3SdANQk7Td1UPLDUAt03QDUJO03dVDyw1ALdN0A1CztN2VT8sNQK3TdANQs7TdlU/LDUCt03QDUNO03ZVLyw1APdB0A1DTtN2VS8sNQD3QdANQ87TdlUfLDUC90HQDUPO03ZVHyw1AvdB0A1AXtN2VQ8sNQD3RdANQF7TdlUPLDUA90XQDUDe03cXTcgNQbzTdANQNbXfxtNwA1BtNNwB1RdtdHC03APVI0w1AXdF2F0fLDUA90nQDUHe03eWn5QagXmm6Aag72u7y03IDUK803QDUJW13+Wi5Aahnmm4A6pK2u3y03ADUM003AHVL252elhuAeqfpBiDqve0WBtPRcgNQ7zTdANQ1bXc6Wm4A0HQDUOd8tjsdLTcAaLoBQNudgJYbAL6k6Qag7mm7S0/LDQBf0nQDgLa7pLTcAPAVTTcAaLtLSssNAF/RdAPA/9N2rz0tNwAsSdMNAP9P2732tNwAsCRNNwAsRtu95rTcALAsTTcALEbbvea03ACwLE03ACxF2736tNwAsHyabgBYirZ79Wm5AWD5NN0AsBza7tbTcgPAimm6AWA5tN2tp+UGgBXTdAPACmi7V03LDQArp+kGgBXQdq+alhsAVk7TDQAroe1eMS03AKyaphsAVkLbvWJabgBYNU03AKyCtntZWm4AaB1NNwCsgrZ7WVpuAGgdTTcAtIK2+ytabgBoPU03ALSCtvsrWm4AaD1NNwC0krZbyw0Aq0vTDQCtpO3WcgPA6tJ0A8BqqOe2W8sNAKtP0w0Aq6Ge224tNwCsPk03AKymemy7tdwAsGY03QCwmuqx7dZyA8Ca0XQDwBqop7Zbyw0Aa07TDQBroJ7abi03AKw5TTcArKF6aLu13ACwdjTdALCG6qHt1nIDwNrRdAPAWqjltlvLDQBrT9MNAGuhlttuLTcArD1NNwCspVpsu7XcAFAamm4AWEu12HZruQGgNDTdAFACtdR2a7kBoHQ03QBQArXUdmu5AaB0NN0AUCK10HZruQGgtDTdAFAitdB2a7kBoLQ03QBQQtXcdmu5AaD0NN0AUELV3HZruQGg9DTdAFBi1dh2a7kBIA1NNwCUWDW23VpuAEhD0w0Add52a7kBIB1NNwDUedut5QaAdDTdAFDHbbeWGwDS0nQDQB233VpuAEhL0w0Addp2a7kBID1NNwDUadut5QaA9DTdAFCHbbeWGwDKQ9MNAHXYdmu5AaA8NN0AUGdtt5YbAMpH0w0AddZ2a7kBoHw03QBQR223lhsAykvTDQB11HZruQGgvDTdAFAnbbeWGwDKT9MNAHXSdmu5AaD8NN0AUAdtt5YbAIqh6QaAAtvuGTNmxF133RULFiwo+ZzsmNmxsxlabgAohqYbAAowdOjQuPfee/N/z507N55++uno169fSWc888wz0b9//+jYsWP+8/HHHx+33HJLSWcAACun6QaAMsre6/71r38d99xzTx62s69MU1NTyWe1HLNlzt13353P9n47AJSP0A0AZTR//vz44x//GPPmzSv77GxmNjs7BwCgPIRuACijDh06xMSJE2PvvfeOhoaGss3NZu2zzz757OwcAIDyELoBoMy23HLLeOqpp+L8889ftG3OnDkln7P4MS+44IJ48skn89kAQPkI3QBQgMbGxrj66qvjzjvvzB8btvnmm5d8RnbM7NjZHcyvuuqqfCYAUF7uXg4AAACJaLoBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEmlMdWAAYOVmz54d11xzTdx///0xbdq0aG5uLunxGxoaYvPNN49jjjkmLrzwwlhnnXVKenwAYNUamkv9Fx4AWKWmpqY46KCDYty4cXHsscdGz549o23btiWf8dprr8Xw4cNj7733jkceeaTkMwCAlRO6AaAATzzxROy///7x0EMPxWGHHZZ01ujRo+Pwww/PZw4YMCDpLABgST7TDQAFePLJJ2OjjTaKQw89NPmsbMaGG26YzwQAykvoBoACzJkzJzbYYINo0yb9n+JsRha6s8+QAwDlJXQDQEGyG50tz7x58+KCCy7Ib4LWqVOn6Nu3b/557KX9+9//jv79++c3SNtss83irLPOilmzZq3WLAAgLaEbACrMkCFD4rrrrovjjz8+rr/++vzmZ9nnvp9++ulF+zz//PPx7W9/O2/Ms31PPvnkuPnmm2Pw4MGFnjsAsCSPDAOACjJhwoS47777YtiwYXHuuefm237wgx/ELrvsEueff37ebmcuvvjifMn4448/Hp07d863de/ePU455ZQYM2ZMHHzwwYX+HgDAlzTdAFBBRowYkTfbp5566qJtHTt2jKFDh8bYsWNjypQpMXPmzHy5+QknnLAocLeE8/XWWy9/RBgAUBk03QBQQSZNmhQ9evRYIkxn+vTps2hZeXbX8wULFkTv3r2X2Kd9+/bRq1ev/BgAQGXQdANABZk+fXp069Ztme0t26ZNm5bvs/i2pffL9gEAKoPQDQAV5PPPP48OHTossz1bYt7yevaVWdF+La8DAMUTugGggmSPCMseGba0uXPnLno9+8qsaL+W1wGA4vlMNwBUkGx5+LvvvrvM9pYl5dmzu7PPdC++ben9sn0AgMqg6QaACpLdCO3111/P71C+uPHjxy96PXt8WGNjYzz77LNL7DN//vz8RmvZPgBAZRC6AaCCDBo0KJqamuLmm29etC1bRn7bbbdF3759Y6uttoouXbrEgQceGHfffXd89tlni/a76667YtasWTF48OCCzh4AWJrl5QBQQbJgnYXmiy66KD744IPYYYcd4o477ojJkyfHrbfeumi/K664Ivbdd9/Yb7/98md6T506Na699to4+OCD49BDDy30dwAAvqLpBoAKc+edd8bZZ5+dN9dnnXVWfPHFFzFq1KgYMGDAon322GOPePTRR/Obpv3sZz/Lm/GhQ4fGiBEjCj13AGBJmm4AqDDZY7+GDRuWf61M//7945lnninbeQEAq0/TDQAAAIkI3QAAAJCI0A0AAACJCN0AUID27dvHnDlzyjYvm5XNBADKS+gGgAJkdx+fPn16vPDCC8lnZTOyWdlMAKC8Gpqbm5vLPBMA6t7cuXNj5513jgULFsQ555wT3/jGN6Jt27YlndHU1BSvvPJKXHfdddHY2BgvvfRSfmd0AKB8hG4AKMg777wTZ5xxRowZMyZ/FncK7dq1i4MPPjhuvPHG2HrrrZPMAABWTOgGgILNnj07ZsyYEaX+k9zQ0BAbb7xxrLvuuiU9LgDQekI3AAAAJOJGagAAAJCI0A0AAACJCN0AAACQiNANAAAAiQjdAAAAkIjQDQAAAIkI3QAAAJCI0A0AAACJCN0AUEXGjx+ffwEA1aGhubm5ueiTAABaZ+DAgfn3Bx54oOhTAQBaobE1OwEAlcF75QBQXSwvBwAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgESEbgAAAEhE6AYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgEQaUx0YACid4cOHx6RJk+KV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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n = bf.BooleanNetwork([[0,0,0,1],[1,0],[0,1]],[[1,2],[0],[2]])\n", "bf.plot_trajectory(n.get_trajectories([[]], [[0]]), show = True);" ] }, { "cell_type": "markdown", "id": "950f6994", "metadata": {}, "source": [ "### Example 3.2" ] }, { "cell_type": "code", "execution_count": 9, "id": "7bf39947", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.346888Z", "iopub.status.busy": "2026-03-29T02:41:19.346826Z", "iopub.status.idle": "2026-03-29T02:41:19.399908Z", "shell.execute_reply": "2026-03-29T02:41:19.399701Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAXRCAYAAACD3P7HAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAipNJREFUeJzs3Qe4XFWhNuB10kMJhB5a6L0F6dIJRUBAehelXAFB9IKAyI9SxQCKIngRLlXASC/SSSBA6AldMJhA6BBaQkLq+Z+1uScmIeXMObNmz97zvs9znpPMmTuzIjc7+5u1vrWampubmwMAAABQdR2q/5IAAABAJHQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACTSKdULQ5EMGzYsvPrqq2HSpEm5jaFDhw5h2WWXDWuuuWZoamrKbRwAQLE1NzeHF198MQwfPjxMmTIlt3F06tQprLbaamH55ZfPbQxQD4RuGtpHH30Uvve974XHHnss1IuVV1453Hbbbdl3AIBKvPbaa2HXXXfNvteLb3/72+GWW24JCy+8cN5DgVw0NcePwqBBbb311uGVV14JF110UfYPQpcuXXIbS5xlHzp0aPjZz34WRo8eHf79739nnxADALT2XmK55ZYL8847b7jgggvCOuusk+u9xIQJE7KJjR//+MfZjPdDDz2U21ggT0I3Deudd94JSy65ZLjmmmvCgQceGOrFU089FTbccMPsH6atttoq7+EAAAUxYMCAbEIh3kusv/76oV5ce+214aCDDgpvv/12WGKJJfIeDtScjdRoWP/617+y7zHg1pP4j2Tsd7/++ut5DwUAKJB47xDvIdZbb71QT1rutVruvaDRCN00rJZN0zp37hzqSdxELS4Fy3NTNwCgeOK9Q7yHqLcNWVvutdzb0KiEbgAAAEhE6IaZGD9+fDjxxBPD4osvHrp3754ti7r//vu/8bzHH388bLrppmGuueYKiy22WDj22GPDmDFjpntO/P1pp50Wdthhh7DAAgtknz5feeWVNfzTAACNrJJ7kXiEanzePPPMkz03drHjaS8zikeR/fa3v82OO+3WrVtYa621wvXXX1+DPw0Uj9ANM3HIIYdku34ecMAB4cILLwwdO3YMO+64Y3j00UenPifuNL7NNtuEsWPHZs897LDDwqWXXhr22muv6V7r448/Dqeffnr2j9jaa6+dw58GAGhkrb0XiRudbb755mHYsGHh7LPPDscff3y46667wrbbbpvtRD6tU045JZugiD/74x//GJZeeumw//77hxtuuKEGfyIoFucRwQzijp/xH4x+/fpl/9hEBx98cFhjjTXCz3/+82x2O/rFL34RevbsGQYOHBh69OiRPbbMMsuEww8/PNx3331hu+22yx7r1atXeO+997KZ8GeeeaaudhMFAMqvtfciMWh/+eWX4dlnn81CdLTBBhtkwTrOjB9xxBFTT4A5//zzw9FHH50duxrFyYctttginHDCCdkERJywAL5mphtmcOONN2b/ULT8wxLFZVOHHnpoGDx4cBg5cmT44osvsuXm8aixlsDdEs7jcqz+/ftPfaxr167ZP3IAAHlo7b3ITTfdFHbeeeepgTvq27dvWGmllaa7t7ntttvCxIkTw1FHHTX1sbhk/cgjj8xmy+P9EvAfQjfMYMiQIdk/LtOG6ZZPeluWlb/44ovZDpwzHsnRpUuXsM4662SvAQBQFHH2+sMPP5zpcWPxHmjae5v467nnnjusuuqq33hey8+B/xC6YQZx+VVchjWjlsfefffd7DnTPjbj8+JzAACKYk73Np988km20WzLcxdddNFvHE027b0S8B9CN8xg3Lhx2TKsGcUl5i0/j1/RrJ7X8nMAgCKY073NtM9pzb0S8B9CN8wgHhHW8knutL766qupP49f0aye1/JzAIAimNO9zbTPac29EvAfQjfMYofPGbU8Fs/ublk+NavnxecAABTFnO5t4pndLbPb8bnvv/9+aG5u/sbzIvdBMD2hG2YQN0J7/fXXsx3Kp/Xkk09O/Xk8PqxTp07ZsRvTimdYxo3W4nMAAIpiiSWWCAsvvPA37m1ajlOd9t4m/nrs2LHZud+zulcC/kPohhnsueeeYfLkyeHSSy+d+lhcQnXFFVeEDTfcMCy11FJhvvnmy47QuPbaa8Po0aOnPu+aa64JY8aMyc6nBAAokj322CPceeed2fGoLR588MFsMmLae5tdd901dO7cOVx88cVTH4uz3n/+85+z8L7JJpvUfOxQzzrlPQCoNzFYx39YTj755OzojBVWWCFcddVVYcSIEeHyyy+f+ryzzjor+0dliy22yM70judSnn/++WG77bYLO+yww3SvedFFF4XPPvts6m6ed9xxR/b86JhjjslCPABAKq25F/nFL34R/v73v4etttoq/OQnP8kmEvr16xfWXHPN8IMf/GDqay255JLhuOOOy34Wz+tef/31w6233hoGDRoU/vrXv4aOHTvm9ueEutQMDer++++PRaTm4cOHf+Nn48aNaz7++OObF1tsseauXbs2r7/++s333HPPN543aNCg5k022aS5W7duzQsvvHDz0Ucf3fzFF19843m9e/fO3mtmXzN7/y5dujRfdNFFVfzTAgBlF+8d4j3EzLT2XuSll15q3m677Zrnmmuu5vnnn7/5gAMOaH7//fe/8XqTJ09uPvvss7PXje+5+uqrN1977bUzfe/4+vF94r0XNCIz3TAT8ciL+Olt/JqdTTfdNDz22GNzfL04Sw4AkJfW3ousvvrq4d57753j8zp06JCtCoxfwOzpdAMAAEAiQjcNb8bjLupBPY4JAKh/9XgPUY9jgloSumlYPXv2zL6/8847oZ7EzdvipiTxPEwAgErubeI9xEcffRTqScu9lnsbGpXQTcOKZ0guuuii4fe//312RFi9fBIcd0CPu37GI8kAAFor3jvErnW8l6iX2eV4jxXvteI919prr533cCAXNlKjYcVge+GFF4b9998/9O7dO2y00UahS5cuuY1n0qRJ4fnnn8/OwozHkS288MK5jQUAKJ5FFlkknHHGGeGUU04Jt9xySxZyO3XK73Z/woQJYfDgweH9998P1113naPEaFhNcQvzvAcBeXr66aezMyVfffXVbElWXuI/RMsuu2x2Rvi2226b2zgAgGK7//77s/O2hw8fnutqvs6dO4dVV101HHDAAdlZ3tCohG4AAABIRKcbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRty9re//S38+c9/znsYAEAJxXuMeK8B5Efohpx98skn4cgjjwz/+Mc/8h4KAFAid911V3aPEe81gPw4MgxyNmXK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VVCWfrceNwBUl9ANAFVS9H63HjcAVJ+PrwGgSore79bjBoDqE7oBoIqK2u/W4waANCwvB4AG73frcQNAOkI3ADRwv1uPGwDS8lE2ADRwv1uPGwDSEroBoEb97rjs/NZbbw2ffPJJbmOK7x3HEBe66XEDQHqWlwNADfrdjz32WNabHjBgQPjVr34VTjvttFzGE9/717/+ddhqq62y5eSbbrqpHjcAJORfWABIKIbZH//4x+GLL77IAndTU1O2uVpeWt47jmX06NHZ2ARuAEjHv7IAkNCDDz4Ydt5552w5dxS/P/vss7mNZ9r3jrPwO+20UzZGACANoRsAElp88cXDCiuskIXtOMsdjRw5MptlrrU42x53KY/iWOKY4tjiGAGANIRuAEho1VVXDa+88kro379/WGmllaY+/sgjj9R8LIMGDZr66ziWOKY4tjhGACANoRsAEoud6b322isLuJdffnlYdNFFQ48ePWo+jvie8b3jGOJY4pj0uQEgLbuXAwAAQCI+3gYAAIBEhG4AAABIROgGAACARIRuAAAASEToBgAAgEQ6pXphAGB677//fnjwwQfD559/nus45ptvvrDNNtuExRZbLNdxAEAjELoBILF4Oudpp50WzjzzzOzXnTt3Dk1NTbmNZeLEidn7//KXvwy//vWvcxsLADQC53QDQGK33XZb2G233cKpp54ajj322LDQQgvlOp6PP/44/OEPfwhnnHFGuPXWW8Ouu+6a63gAoMyEbgBI7IADDggvv/xyGDp0aKgna6+9dlhzzTXDtddem/dQAKC0bKQGAImNGDEirLPOOqHe9OnTJwwfPjzvYQBAqQndAJDYlClTQqdO9beNShxTHBsAkI7QDQAAAIkI3QCQk/Hjx4cTTzwxLL744qF79+5hww03DPfff/83nvf444+HTTfdNMw111zZMV9xM7YxY8a0+fUAgNoRugEgJ4cccki44IILso3WLrzwwtCxY8ew4447hkcffXTqc+Lma/FM7bFjx2bPPeyww8Kll14a9tprrza9HgBQW3YvB4DENt5447D66quHyy67bOpjTz31VDYT3a9fv3D88cdnj3311VdhjTXWCIssskg2ux3F0ByD9z//+c/Qo0eP7LH4Oocffni49957w3bbbVfR600rBvi4q/rgwYNr8r8DADQiM90AkIMbb7wxm4k+4ogjpj7WrVu3cOihh2YheOTIkeGLL77IlocfeOCBUwN3dPDBB4d55pkn9O/fv6LXAwBqT+gGgBwMGTIkrLTSStOF6WiDDTbIvsfZ7RdffDFMmjQprLfeetM9p0uXLtkRZPE1Knk9AKD2hG4AyMF7770XevXq9Y3HWx579913s+dM+9iMz4vPqeT1AIDaE7oBIAfjxo0LXbt2/cbjcUl4y8/jVzSr57X8vLWvBwDUntANADmIR3rFI75mFDc/a/l5/Ipm9byWn7f29QCA2uuUw3sCQMOLy77feeedbzzesqQ8nrW9wAILTPfYjM+Lz6nk9QCA2jPTDQA5iBuhvf7669kO5dN68sknp/48HvfVqVOn8Mwzz0z3nAkTJmQbo8XnVPJ6AEDtCd0AkIM999wzTJ48OVx66aVTH4vLw6+44orsvO2llloqzDfffKFv377h2muvDaNHj576vGuuuSaMGTMm7LXXXhW9HgBQe5aXA0AOYhCOofnkk08OH374YVhhhRXCVVddFUaMGBEuv/zyqc8766yzwiabbBK22GKL7Azut99+O5x//vlhu+22CzvssEPFrwcA1JbQDQA5ufrqq8Opp56azVx/+umnYa211gp33nln2Hzzzac+Z9111w0PPPBAOPHEE8NPf/rTMO+884ZDDz00nHPOOW16PQCgtpqam5uba/yeANBQNt5447D66quHyy67LNSTww47LLz88sth8ODBeQ8FAEpLpxsAAAASEboBILGmpqYwZcqUUG/imOLYAIB0hG4ASGzhhRcOw4cPD/Xm3//+dzY2ACAdoRsAEttpp53CI488Eu65555QL+JYBg0aFHbeeee8hwIApWYjNQBI7Kuvvgrf+973sqC74oorhl69emXLuuO52h06dEi+xDsuI4//3Hfs2DH7/t5774V//etf4Tvf+U64+eabQ7du3ZK+PwA0MqEbAGpgwoQJ4d57782+PvvsszBy5Mhs9nvXXXcN88wzT9L3/uijj8J9992Xneu94IILhvnnnz9sv/322VeXLl2SvjcANDqhGwByEM/dvv7668Nbb72V/L0mTpyYBfvzzz8//PjHP07+fgDAf+h0A0AOhg0bFlZZZZWavFfnzp1D796963IzNwAoO6EbAHIQO9Wx310ryyyzTBgxYkTN3g8A+JrQDQA5eOONN8Lyyy9fs/cTugEgH0I3ANRY3E187Nix2YZmtTL33HOH8ePH1+z9AICvCd0AUGNxY7OWrjUAUG5CNwDkcHxYJHQDQPkJ3QBQYx07dsy+T5o0qWbvGZezd+3atWbvBwB8TegGgBqba665wrzzzhvef//9mr1n3EQtHhsGANSW0A0AOVh88cXDu+++W7P3i2d0L7vssjV7PwDga0I3AOQUut9+++2abdz25ptvCt0AkAOhGwBysNZaa4VnnnmmJu/19NNPZ5u3rb/++jV5PwDgP4RuAMjBpptumi35rsUS8wceeCDMN998Yb311kv+XgDA9IRuAMjBt7/97ez7o48+mvy97r///rD11ltP3TUdAKgdoRsActCrV6+wxhprhBtvvDHp+/zrX/8Kjz32WNhll12Svg8AMHNCNwDk5NBDDw233npr+Oijj5K9xx//+Mew0EILhX333TfZewAAsyZ0A0BODjzwwNDU1BSuuuqqJK//2WefhSuuuCL86Ec/Ct26dUvyHgDA7AndAJCTOAO93377hXPPPTd88sknVX/9E044IQv1Rx11VNVfGwBoHaEbAHJ0zjnnhPHjx4dTTjmlqq977733hssuuyycd955YbHFFqvqawMArdfU3NzcXMHzAYAq+/3vfx9+9rOfZUF52223bffrxaPINttss7DqqquG++67L5vtBgDyIXQDQM4mTZqU7S7+yCOPZGdqb7TRRm1+rWHDhmXHg3Xp0iU8/PDDYYkllqjqWAGAygjdAFAHxo4dG3bYYYfw4osvhr/+9a9hkUUWCW+++WbYbbfdWn2+9j333BN++MMfhh49eoSHHnooLL744snHDQDMnk43ANSBueaaK9xxxx1hww03DDvttFMWtvfcc8+wyiqrhOuvvz5Mnjx5lv+3r7zySjZT/p3vfCd7/sCBAwVuAKgTZroBoI7Ef5bjTHecsZ44ceLUxxdddNHwk5/8JBx++OHZMvQvvvgiDB48ONx///1Zh3vppZcO559/fthjjz10uAGgjgjdAFCHdtxxx3D33Xd/4/EjjjgiXHrppdmvV1555WzjtZav7t275zBSAGB2Os32pwBALjp37px979SpU7a0/Hvf+144+eSTw7rrrhvOOuusMPfccwvZAFAAQjcA1KEYqOMy8bhc/P/9v/8XVltttak/W2ihhXIdGwDQepaXA0Adeu+997IdzZdffvm8hwIAtIPQDQAAAIk4MgwAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgEaEbAAAAEhG6AQAAIBGhGwAAABIRugEAACARoRsAAAASEboBAAAgkU6pXhgAgDSmTJkSnnjiifDyyy+HiRMn5jaOpqamsNhii4Vtt902zDPPPLmNA8quubk5vPTSS+Gpp54K48ePz3UsCyywQOjbt29YaKGFch1HkQjdAAAF8vbbb4ftttsuvPrqq1no7dSpU67hf/LkyaF79+7h6quvDnvuuWduY4GyGj16dNh1113DgAEDst937tw51/A/adKk0LFjx3D22WeHn//857mNpUiEbgCAAtl///3Dl19+GQYOHBg23XTT7OY3zxvwESNGhJNOOinsu+++4Y033gi9e/fObTxQRj/72c/Cs88+G2666aaw0047ha5du+Y6ng8++CD069cvnHjiiWH99dcPW221Va7jKYKm5ni1BACg7r377rthiSWWCNdcc0048MADQz3NxC288MLhN7/5TTjuuOPyHg6URlxJEpdxH3300eHMM88M9SJGyBVXXDGrllxyySV5D6fu2UgNAKAg3nzzzez72muvHerJvPPOG1ZYYYUwfPjwvIcCpfL555+Hzz77LKyzzjqhnsRqS7wO+TvfOkI3AEBBxA51lGePe1bimFrGBzTG3/k4E8+cCd0AAACQiNANAFAC8RihuLHR4osvnu0mvuGGG4b7779/uufcd9994dBDDw1rrLFGtgHbMsssM8vXO+uss8Iuu+wSFl100Wwp6a9+9asa/CmA1hozZkw47bTTwg477JAd4xX/nl555ZXfeF48Zuyoo44K3/rWt7Kdz+PzZufyyy8Pq666aujWrVvW2/7jH/+Y8E/RGIRuAIASOOSQQ8IFF1wQDjjggHDhhRdmoXrHHXcMjz766NTnXHfdddnXfPPNl4Xz2fnlL38Znn766dCnT58ajB6o1McffxxOP/307PjA2e3z8I9//CNcdtllWdhebrnlZvua//M//xMOO+ywsPrqq2dhe+ONNw7HHntsOPfccxP8CRqH0A0AUHBxJuuGG24I55xzTnaUzxFHHBEeeuih7Piuac/RjefqfvHFF+Gxxx6b42ZscYOk9957L1x77bU1+BMAlerVq1f2dzRusBj/3s/KkUcemW3I9swzz2S7jc/KuHHjwimnnJIdS3bjjTeGww8/PFx99dXZB3lnnHFG+PTTTxP9ScpP6AYAKLh4gxxntmPYbhGXhsal5IMHDw4jR47MHouz23F5aWvMbuk5kL94Xvdiiy02x+fFikisnMzJgAEDwqhRo7Kl6NOKx5V9+eWX4a677mrXeBuZ0A0AUHBDhgwJK620UujRo8d0j2+wwQbZ96FDh+Y0MqBI15FovfXWm+7x2AXv0KHD1J9TOaEbAKDg4hLTuNR0Ri2PvfvuuzmMCijadSSumFlkkUWme7xLly5hwQUXdB1pB6EbAKDgYhczLjWdUVxi3vJzgNmJ14kYsGcmXktcR9pO6AYAKLjY14xHhs3oq6++mvpzgNmJ14kJEybM9GfxWuI60nZCNwBASXYxnlHLY3M6HgwgXkcmT54cPvzww+kej0E8brDmOtJ2QjcAQMGts8464fXXX8+OA5vWk08+OfXnALPTcp2IR4tNK/5+ypQpriPtIHQDABTcnnvumc1QXXrppVMfi8vNr7jiirDhhhuGpZZaKtfxAfVv6623DgsssEC45JJLpns8/n6uuebKzu+mbTq18f8OAIA6EYP1XnvtFU4++eRsaegKK6wQrrrqqjBixIhw+eWXT33eCy+8EG6//fbs18OGDQuff/55OPPMM7Pfr7322uG73/3u1Odec8014c033wxjx47Nfv/II49Mfe5BBx0UevfuXeM/JTCjiy66KHz22WdTdxa/4447wttvv539+phjjgnzzTdf9vc4/n2edha75e9y/Hsc/z5HsbN9xhlnZOdyx+vJ9ttvHwYNGhSuvfbacNZZZ2WBnLYRugEASuDqq68Op556anZz/emnn4a11lor3HnnnWHzzTef+pznnnsue860Wn7//e9/f7rQHcP6ww8/PPX3AwYMyL6iTTfdVOiGOnDeeedlobrFzTffnH1FBx54YBa6hw8fPsu/91tsscXU0B0dddRRoXPnzuH888/PPqCLq2R+97vf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wrvuuit8/PHH2ZEJeYnnM2688cZh9913Dz179sxtHAAA1MaUKVOm3ot+9NFHud6LdunSJayzzjph7733Dr169cptHFAEjgyrIHAfeuih4aqrrgrLLLNMWHrppUOHDh1yPZ9x6NChoXfv3mHgwIHZeAAAKG/gPuyww8IVV1yR3f/FrzzvRceNGxeGDBkS5p577vDAAw+EddddN7exQL0Tulvp7rvvDjvuuGMWug866KDQ1NSU95DCG2+8ETbffPPQt2/fbFwAAJTTfffdF7bffvtw+eWXhx/84Ad1cS8aV37G+9AYvB977LG8hwN1S6e7le68886wwgor1E3gjpZffvnwwx/+MNxxxx15DwUAgMT3ossuu2zdBO5ooYUWCj/96U/D448/HkaNGpX3cKBuCd2tFHszcVl5vVzkWsSL76effpotfwcAoJzirHI93ovGMUVCN8ya0N1KcRV+nr2ZWWkZk5YAAEB5uReF4qq/v7kFM378+HDiiSeGxRdfPNtRfMMNNwz333//Nzo4cRO2NdZYI3Ts2HHqJ4Kz2iTjt7/9bTaD3a1bt7DWWmuF66+/vgZ/EgAAimbMmDHhtNNOCzvssENYYIEFspnwK6+8cqbPffXVV7PnzTPPPNlzY20yruac0VlnnRV22WWXsOiii2av96tf/aoGfxIoL6G7nQ455JBwwQUXhAMOOCBceOGFWaiOG649+uijU59z3XXXZV/zzTdfFs5n55RTTslC/Lbbbhv++Mc/ZruS77///uGGG26owZ8GAICiLTs//fTTs0C99tprz/J5b7/9drYB77Bhw8LZZ58djj/++OzosXjPOWHChOme+8tf/jI8/fTToU+fPjX4E0D5Oae7HZ566qksDPfr1y+7cEUHH3xwNqP985//PNtUIooXtr/85S+hc+fOYeeddw4vvfTSTF/vnXfeCeeff344+uijw0UXXZQ9Fo+G2GKLLcIJJ5wQ9tprryzUAwBAFM/Ifu+998Jiiy0WnnnmmbD++uvP9HnxfvTLL78Mzz777NSjZjfYYIMsdMeZ8SOOOGLqc4cPH56tzIyBfuGFF67ZnwXKykx3O9x4441ZCJ72IhWXhMel5IMHDw4jR47MHouz2zFwz8ltt90WJk6cGI466qipj8UlPUceeWT26WR8TQAAaNG1a9cscM/JTTfdlE3+tATuKB73tdJKK4X+/ftP99zZVSGBygnd7TBkyJDsQtWjR4/pHo+fGkZDhw6t+PXiOYerrrrqTF8v/ryt4uYWAwcODLfcckubXwMAgOoZMWJEthoy9rJTiqspP/zww7Deeut942fxPrM995jAnAnd7RCX8sQlPTNqeezdd9+t+PVaNqyoxuu1hO0BAwaEzTbbLGy11VbZLDwAAPm7+uqrsxWTSy21VDj33HOThe94jxnN6r71k08+yTYHBtLQ6W6HcePGZUt6ZhSXmLf8PI/XixfNuIP6ww8/nO18Hj/dbAnyY8eODb/4xS8qGhcAANU3aNCg7B7ts88+CyeddFK2C/mmm24afvSjH2Wboq244opVeZ+We8g53WfO7OdA+wnd7RCPCJvZp4JfffXV1J/n8Xp33313+N73vjfdYy1nJ8bXP+eccyoaFwAA6cX7tAcffDD72mabbcIDDzxQlddtuYes5n0r0HpCdzvE5ThxFnlWS3jmdDzYzF4vLgWPAXnaJeaVvt5uu+2WLROKY4u7oF911VXZURDxDPB4LmPc2RIAgHzF+7Q//elP2X1fvE/bcMMNw09/+tMscM+4Z1B7tCwrb7mnnFZ8LJ7ZbZYb0hG622GdddbJQvIXX3wx3YXxySefnPrzSl/vsssuy85ZXG211dr1ej179sy+/vznP4ezzjorO0v8d7/7XTbOlVdeuaJxAQBQfXEn8TjZsuWWW2Znbcel5SksscQS2dFfM5t4iUfgVnrPClTGRmrtsOeee4bJkyeHSy+9dOpjcdnOFVdckX1SGTfFqMSuu+6aHS128cUXT30sXohjcI4Xy0022aRN41xwwQWz4B2PMHvkkUfa9BoAAFRXPBb25ZdfDg899FCywN1ijz32CHfeeefUI22juIz99ddfD3vttVfS94ZGZ6a7HWKwjhepk08+OTuGYYUVVsiWcsfjHy6//PKpz3vhhRfC7bffnv162LBh4fPPPw9nnnlm9vu4ScZ3v/vd7NdLLrlkOO6440K/fv2y87rXX3/9cOutt2abbPz1r3/NzgRvjxi+4xcAAPmLtb9pVze2Z5l63Iyt5aSbO+64I7z99tvZr4855pgw33zzZRvp/v3vf89Os/nJT36S7ZQe7znXXHPN8IMf/GC617vmmmvCm2++mW3AG8VJm5Z714MOOij07t273WOGRiJ0V+Goh1NPPTW7OH366adhrbXWyj5F3Hzzzac+57nnnsueM62W33//+9+fGrqj3/zmN9my8P/5n/8JV155ZbZr5bXXXhv233//Gv6pAAAoivPOOy8LyS1uvvnm7Cs68MADs9AdV2DGk21+9rOfZTuld+nSJey0007h/PPP/0afO04exee2iHXK+BXFGXmhGyrT1NyyrTWzFWe0Y3f73nvvDfUkBvP46WScGe/UyWcoAABltN9++4WPPvqoajuaV0tckRknm/75z3/aNwhmQacbAAAAEhG6AQAAIBGhu5U6dOgQJk2aFOpNy5imPdcbAIByqfd70Tg+YOb87WilZZddNrz00kvZEWH1ZOjQodlmFu3d2RwAgPq1zDLLZPeicR+fersXjZuy9erVK++hQN0SuivYSC0eC3b00UeHd955Jzs/O0/jxo3LjhGLu0vuvffeuY4FAID096KjRo0KRx11VHYcWN73ojH833PPPeGcc87JdkGPx58BM2f38gpccskl2bmG8SITZ5bzWkYT/5O1LOWJx431798/dOvWLZexAABQG3/5y1/Cj3/84zBhwoRc70Wjlhn39dZbL9x9991hoYUWym0sUO+E7gp99tln4f777w8ff/xxrp8wdu/ePWyyySaOZgAAaLB70XhsWDw+LM970bikvE+fPmHddde1txDMgdANAAAAieh0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACQidAMAAEAiQjcAAAAkInQDAABAIkI3AAAAJCJ0AwAAQCJCNwAAACTSKdULAwDTmzx5cvjnP/8Zvvzyy1zH0a1bt7DKKquELl265DoOAGgEQjcA1MAll1wSfv3rX4cPPvgg1IP5558/HHPMMdmYmpqa8h4OAJSW0A0Aid10003hqKOOCgcffHA45JBDwgILLJBr0B09enS45ZZbwhlnnBHmm2++8N///d+5jQUAyq6pubm5Oe9BAECZ7bTTTuHzzz8PgwYNqqtZ5YMOOig8++yz4ZVXXsl7KABQWjZSA4DEXnrppbDFFlvUVeCOttxyy/Dqq6+GSZMm5T0UACgtoRsAEps4cWK2eVm96dq1a/Zd6AaAdIRuAAAASEToBoCcjBkzJpx22mlhhx12mLq52pVXXvmN5z311FPZRmzf+ta3QufOnWe7TD3ukr7XXnuFpZdeOnte3LgNAMiP0A0AOfn444/D6aefnvWq11577Vk+7x//+Ee47LLLshC93HLLzfY1zz333PDQQw+F1VdfPXTq5JASAMib0A0AOenVq1d47733wptvvhn69es3y+cdeeSR2e7nzzzzTNh2221n+5oPP/xwFubvvvvuqZ1tACA/PgIHgJzEULzYYovN8XmLLrpoq1+zd+/e7RwVAFBNZroBAAAgEaEbAAAAEhG6AQAAIBGdbgCooubm5vDRRx+F4cOHT/2KR4PVs7PPPjustNJKYdlll82+Ys+8QwefywNANQjdANBGkydPDq+99lp47rnnwrPPPpt9Hzp0aPjiiy+mPqdnz55h0qRJoZ7Fs73jjuctunfvHtZaa63sXPB11103+77aaquFLl265DpOACgioRsAWmHKlCnh5ZdfzsL1tAF77Nix2c+XX375LKCefPLJYeWVV546azzffPOFxRdfPNSzkSNHZh8MjBgxIpuZ/9e//hWGDBkSBgwYkAXyOHsfA/eaa645XRBfZ511nAUOAHPgX0oAmIV4fvb9998fHnjggfDggw9ms8FNTU3ZUuwYPHfffffse58+fcL8888fimyeeeYJa6yxRvY1rbg0/vnnn586mz948OBw+eWXZ7P8PXr0CFtuuWV2dnjfvn2zDxvi/z4AwH8I3QDwfz777LNsdrclaMcZ39htXm+99cIRRxwRttlmm7D++uuHeeedt2rvedFFF2Xv++6772a/v+OOO8Lbb7+d/fqYY47JZspj+L/mmmuyx5555pns+5lnnjn1XO6DDjpo6uvF//sYkqOJEyeGF154Yepzd9lll2zZeKVh/Nvf/nb21WLcuHHZTPhDDz2U/W/1s5/9LHuvJZdccmoAj/9bVXK+OACUVVNzXDMGAA0qLq3u379/uPHGG8NTTz2VLSNfYYUVsuAYA+RWW22V9bLbIy4vP/LII8Opp576jZ8ts8wyWaiembjUO/584MCB2ThmZosttsh+3uKQQw4JV1111Uyfe8UVV2Q/b3HttddmgT2G6G7duoW2irPhjzzySPZBRQzhL730Uvb42muvna0G2HfffbPVAQDQiIRuABrO+++/n4XsG264ITz22GOha9euYYcddgg77bRTFrRj0K2m2YXuPFUrdM/ovffey5bj33333eH222/PQnnsf8fwvc8++1T9f18AqGfOAwGgIYwaNSpceuml2bLnJZZYIvz0pz/Nlm7HWeEPPvgg3HrrreHwww8XCKugV69e4cADDwx//etfw4cffph9wLHiiiuGX//619nmchtttFH43e9+F9555528hwoAyQndAJRWXCp+3333hd122y07ezrONseOdgzfMWjfdddd4eCDD87Cd2r1uLCsFmOKx4/tscce2RL+GMCvu+667L/FSSedFJZaaqnsQ5AYymMnHADKSOgGoHTixmS///3vwyqrrBK23377rBsdfx83K4ud40MPPTQssMACNRtP3Hjto48+CvUmjqlz587Z8vpaiJuy7bffftmqghjAY8d8woQJYa+99spWGJx++unZ0n8AKBOdbgBKI+7a/ac//Slb1hxnTvfcc89w9NFHh0022STXo6yOOuqocNttt2Xnei+88MKhHsTzxeOO5HHWOXav8/7vdvHFF2cd8xjC48x4/O+26aabOoIMgMITugEotHhe9E033RT+8Ic/ZJuixb72f/3Xf2X97Bgo60E8emyzzTbLlrvHzdoWXHDB3MJk/Gd/9OjR4Z577snOHY8z//FDiXpZoRA79jGAv/7669nxZj/+8Y+zCkCtZuMBoNqEbgAKG7b/9re/hTPOOCP885//zI7UirOju+66a+jUqVOoN2+88Ua45JJLsnPA427eeYo7lcegHT+ciLuK15v44UTc/TyuWoi7n8cPUk4++eSsFiB8A1A0QjcAhQzbsf/72muvZTPHp512Wlh//fXzHhoJxA9UzjzzzHD99ddnR68J3wAUjY3UAChM2I5d7dVXXz0ccMAB2RFUTz31VLjzzjsF7hKLm+HFrvcrr7wSttxyy3DMMceE5ZdfPpsF/+qrr/IeHgDMkdANQF2LC7LiLOdqq62Wnf0cw/bTTz8d7rjjDmG7gay88srhmmuuycJ3rBIce+yxWfiO/W/HjQFQz4RuAOrWs88+m+1gvf/++4eVVlppatheb7318h4aOYfvV199NWy99dbZRmuxl/7AAw/kPTQAmCmhG4C6E89wjruPx5nsL774Ijz00EPCNtOJH8LE8B0/mIlnrm+77bZh9913z85kB4B6InQDUDfiMuHf/e53WaCKx4D98Y9/DEOGDMmWE8PM9OnTJzzyyCPhuuuuyzr+q666ajj11FPDl19+mffQACBj93IA6sJ9990XjjvuuGxH8niUVdydfKGFFsp7WBRIDNrnnHNOOO+888LCCy8c+vXrF/bZZ5/czkQHgMhMNwC5GjVqVNhvv/3C9ttvnwWl5557LtscS+CmUnPPPXd2vFjcbC1WE+L/X8Vl52+++WbeQwOggQndAOTmtttuy44Au/fee7NjoQYOHBjWXnvtvIdFwS233HLh5ptvDvfcc094/fXXw5prrhkuu+yybCd8AKg1oRuAmvv000/DQQcdFHbbbbewwQYbhJdffjk7e9syYKoprp548cUXw957751tzPed73wnvP3223kPC4AGI3QDUFN33XVXNrsddyO/+uqrs9nuXr165T0sSmq++ebLZrn/8Y9/ZAF8jTXWCFdeeaVZbwBqRugGoCY+++yz8MMf/jDsvPPO2bnKcXY7znab3aYW4iz3Sy+9FHbdddfwgx/8IHz3u98N7777bt7DAqAB2L0cgOSeeeaZsOeee2bLyuORYDH0CNvk5fbbb892yI9H1P31r3/NlqEDQCpmugFIJn6ue8kll4Rvf/vbYdFFFw0vvPBCNtstcJOnXXbZJZv1jvsJxBnw0047LUyePDnvYQFQUkI3AEmMGTMmWz5+1FFHhSOOOCI88sgjoXfv3nkPCzILLrhguPPOO7Pz4M8444wsfH/00Ud5DwuAErK8HICqe/XVV7Pl5PF85LiJ1b777pv3kGCWHnjggbD//vuHLl26hP79+4dNNtkk7yEBUCJmugGoqhtuuCGsv/762dLyp59+WuCm7vXt2zcMGTIkLLPMMmGLLbYIv//97+1uDkDVCN0AVEXsxB533HFhv/32y3aIfuqpp8Kqq66a97CgVZZYYokwYMCAcOyxx4af/vSn2YdF48aNy3tYAJSA5eUAtNuXX36Zhe14FvKFF16Y9bhtlkZR3XjjjeHggw8Oa6+9drbT+cILL5z3kAAoMKEbgHZ57733sjOPX3vttawPGzekgqKL1Yh4pvw888wT7r777rDSSivlPSQACsrycgDa7OWXXw4bbbRRFrwHDRokcFMacV+CJ554InTt2jVsvPHG2f9/A0BbCN0AtMlDDz2Unb89//zzhyeffDKss846eQ8JqmrZZZcNjz32WFhrrbWyzdbiJoEAUCmhG4CKXXXVVWH77bfPZrnjDOCSSy6Z95AgiZ49e4Z777037LPPPtm+Beecc46dzQGoSKfKng5Aozv33HPDSSedFA477LBw8cUXh86dO+c9JEgqnt8dP2habrnlwi9+8YvwzjvvhD/84Q+hQwdzFwDMmdANQKudfvrp4bTTTgunnnpq+PWvf22HchpG/P/1X/3qV9nRYv/1X/8VJkyYEP785z8L3gDMkdANwBzF5bQxaJ911lnhzDPPDKecckreQ4JcHH744dnM9w9+8IMseF9++eWhY8eOeQ8LgDomdAMwx8D985//PJx33nmhX79+4fjjj897SJCr73//+1mtIp7lPXHixGzpeadObqkAmDn/QgAw28B93HHHZf3VCy+8MBx77LF5Dwnqwv7775/NeMfN1eKM93XXXWd/AwBmqqnZFpwAzMSUKVPC0UcfnfVWL7nkkvCjH/0o7yFB3bntttvCXnvtFXbcccfwt7/9LTvXGwCmJXQD8A3xn4YYsv/yl7+Eyy67LPzwhz/Me0hQt/7xj3+E3XffPWy77bbh5ptvNuMNwHRsuQnAN8RjkS699NLwv//7vwI3zEGc5Y4z3vE877jBWlwlAgAthG4ApnPBBReE3/zmN+H8888PhxxySN7DgULYfvvtw7XXXpt1u3/2s59lq0UAILKRGgBTXX311eG///u/w0knnZQFB6D19t577zBq1Khw1FFHhUUWWSRbMQIAQjcAmTvvvDNbSn7YYYeFs88+O+/hQCEdeeSR4aOPPsrOsl9ooYXCEUcckfeQAMiZjdQACI8++mi2CdR3vvOd0L9/f2cOQzvEW6t4vN7FF1+c/X3aY4898h4SADkSugEa3AsvvBA233zzsO6662a7MHfr1i3vIUHhxc3UDjjggGw387vvvjtsvfXWeQ8JgJwI3QAN7L333gvrr79+1j8dOHBg6NGjR95DgtKYMGFC+O53vxueeOKJ7GvVVVfNe0gA5EDoBmhQX331Vdhyyy3DyJEjwzPPPBN69eqV95CgdL744ouwySabhPHjx4ennnoq9OzZM+8hAVBjjgwDaEDx89a4wdPzzz+fnS8scEMacfXI7bffHj755JNsd/NJkyblPSQAakzoBmhA8Qzua665Jvzv//5vWG+99fIeDpTacsstF2688caswhGP5AOgsQjdAA0mbpb285//PDtDeL/99st7ONAQttpqq/CHP/wh+7rsssvyHg4ANaTTDdBAXn311bDRRhtlXe5bbrkldOjgs1eo9Tnel19+eXjooYfCpptumvdwAKgBoRugQcRO6YYbbpgdCfb444+HeeedN+8hQcOZOHFi2G677cLLL78cnn766dC7d++8hwRAYkI3QAOIl/qWo4vijf6yyy6b95CgYY0aNSo7qm/BBRcMjz32WOjSpUveQwIgIesKARrA7373u3DXXXeFq6++WuCGnMWw/fe//z07PeCkk07KezgAJCZ0A5RcPBv4xBNPDCeccELYcccd8x4OEEL41re+Ffr165d9IHbHHXfkPRwAErK8HKDEPvvss9CnT5+w6KKLhkGDBoXOnTvnPSTg/8RbsN122y08+uijYejQoWGppZbKe0gAJCB0A5RUvLzvvffe4f77789u6JdZZpm8hwTMZIPDddZZJ9tQbcCAAaFTp055DwmAKrO8HKCk/vznP4cbb7wx/O///q/ADXVqgQUWCNdff30YPHhw+NWvfpX3cABIwEw3QAnFme14Hvdhhx0WLrrooryHA8zB2WefHX75y1+G++67L/Tt2zfv4QBQRUI3QMmMGzcu63F37949mz2L53ID9W3KlClh++23Dy+++GJ2hnfc4RyAcrC8HKBk/t//+39hxIgR4brrrhO4oSA6dOiQHek3YcKEcMwxx+Q9HACqSOgGKJE4s33++eeH008/Pay66qp5DweoQK9evcIf/vCHrON9yy235D0cAKrE8nKAEi0rj7sg9+zZMzz22GOhY8eOeQ8JaOMxYk8++aRl5gAlYaYboETLyt98881wxRVXCNxQUE1NTdnJA5aZA5SH0A1QApaVQ3lYZg5QLpaXAxScZeVQPpaZA5SHmW6Akiwrv/LKKwVuKAnLzAHKQ+gGKLChQ4eGCy64IFtWvsoqq+Q9HCDRMvN777037+EA0EaWlwMU1JQpU8Jmm20WPv/88zBkyJDQuXPnvIcEVFm8Tdtmm23C22+/HV588cXQtWvXvIcEQIXMdAMU1NVXXx0ef/zx8Kc//UnghhIvM7/ooovC8OHDs80SASgeM90ABfTpp5+GlVdeOWy33Xbh2muvzXs4QGInnHBC9gHbq6++Gnr37p33cACogNANUEBHH310uOaaa8Jrr72W9T6Bchs9enS2b8OGG24Ybr755ryHA0AFLC8HKJhnn302XHLJJdnmaQI3NIZ555032zQxntt9zz335D0cACpgphugYJunbbLJJmHs2LHhueeeC506dcp7SECNxFu2vn37hrfeeiu89NJLNlUDKAgz3QAFcsUVV4Qnn3wy63YK3NB4m6r98Y9/DCNGjAjnnXde3sMBoJXMdAMUxJgxY8IKK6yQzXTZPA0a1/HHHx/+/Oc/h2HDhoXFFlss7+EAMAdmugEKIvY5467lZ511Vt5DAXJ0yimnhC5dumT7OgBQ/4RugAL48MMPQ79+/cIxxxzjuCBocD179gy/+MUvwqWXXhpef/31vIcDwBxYXg5QADFsxyPC3njjjbDgggvmPRwgZ1999VVYaaWVsiPE/v73v+c9HABmw0w3QJ2Lvc3Y3zz55JMFbiDTrVu3cMYZZ4Qbb7wx21wRgPplphugzu2zzz7hscceC//6179C9+7d8x4OUCcmT54c+vTpExZYYIEwYMCAbHdzAOqPmW6AOvb000+H/v37ZxsmCdzAtDp27Bh+85vfhIcffjjcfffdeQ8HgFkw0w1Qp+LleZtttsk2UXv++eezG2yAGa8TW221VRg1alQYOnSo6wRAHTLTDVCnHnrooWzJ6DnnnONGGpipuKT8t7/9bXjppZfC3/72t7yHA8BMmOkGqFNbbrllGDNmTLbEXFcTmJ2ddtopjBgxIrz44ouhQwdzKgD1xFUZoA4NGjQo62n+8pe/FLiBOYrXildeeSXccssteQ8FgBmY6QaoQ9tvv3147733so6mWSugNfr27Zt1u5977jkf1gHUEXdyAHXmqaeeCvfdd182cyVwA60Vrxnxg7q77ror76EAMA0z3QB15rvf/W4YNmxYtjGSDdSA1oq3dJtvvnmYMGFCeOKJJ8x2A9QJUygAdWTIkCHhzjvvDKeccorADVQkhuw42x1XyzzwwAN5DweA/2OmG6CO7Lnnntny0H/+85+hU6dOeQ8HKJh4W7fhhhuGbt26hUceeSTv4QBgphugfsSdh2+66aZw8sknC9xAm2e7Tz311OwEBKEboD6Y6QaoEz/60Y/C7bffnp2126VLl7yHAxRUvLVbY401wiqrrJJ9kAdAvsx0A9SBTz/9NFx99dXhqKOOEriBds92H3PMMeHWW28Nb775Zt7DAWh4QjdAHbj88svD5MmTwxFHHJH3UIASOOigg8K8884bLr744ryHAtDwhG6AnMWwfdFFF4V99903LLLIInkPByiBueeeOxx66KHhsssuC2PHjs17OAANTegGyNkdd9yRLQE99thj8x4KUCJHH310Vl257rrr8h4KQEOzkRpAzrbeeuswfvz48Nhjj+U9FKBkdt111zB8+PDw/PPPZ11vAGrPTDdAjl588cUwYMAAs9xAEnFDtXidcXwYQH7MdAPkKG6cdtddd2XHhHXu3Dnv4QAlE2/zVl999bDqqqs6PgwgJ2a6AXIyatSocO2114YjjzxS4AaScHwYQP6EboCcOCYMqOXxYZdcckneQwFoSEI3QA4mTZoU/vSnP4X99tvPMWFAUvPMM092fNhf/vIXx4cB5EDoBsjpmLC33norW/YJkJrjwwDyYyM1gBxstdVWYeLEieHRRx/NeyhAg9hll12yXvfQoUMdHwZQQ2a6AWos7lQ+cODA8KMf/SjvoQANJF5zXnjhhezMbgBqR+gGqLG//e1voXv37mG33XbLeyhAA9l2223DggsuGK6//vq8hwLQUIRugBqLN7zf/e53s82NAGolHk245557hhtuuCFMmTIl7+EANAyhG6CGXn311WxpZ9y1HKDW4rUnbuL4xBNP5D0UgIYhdAPUeJa7R48eYYcddsh7KEAD2myzzcLiiy9uiTlADQndADUSD4uIN7q777576NatW97DARpQhw4dwj777BP69+8fJk2alPdwABqC0A1QI88++2wYNmyYpeVAruI16MMPP8xOUQAgPaEboEbiLPciiywStt5667yHAjSw9dZbLyy//PKWmAPUiNANUANxp+B4VNhee+0VOnXqlPdwgAbW1NQU9t1333DzzTeH8ePH5z0cgNITugFqYNCgQeGdd96xtByoC/Fa9Nlnn4V7770376EAlJ7QDVAD8VzcpZdeOmy88cZ5DwUgrL766mHNNde0xBygBoRugMQmTpwY/v73v2fLOePOwQD1IF6Tbr/99vDll1/mPRSAUnP3B5DYAw88EEaNGmVpOVB3oXvs2LHhjjvuyHsoAKXW1BwPjgUgmYMPPjg8/fTT4ZVXXsk2MAKoFxtttFFYdNFFw2233Zb3UABKy0w3QELjxo0Lt9xySzbLLXAD9SZem+6+++7w6aef5j0UgNISugESuuuuu8KYMWOyZZwA9SYeYzhp0qTsw0EA0rC8HCChPfbYI4wYMSI8++yzeQ8FYKa23nrr0LFjx3D//ffnPRSAUjLTDZDI559/ns1020ANqGfxGvXQQw+FDz74IO+hAJSS0A2QyD333BPGjx8f9t5777yHAjBLu+++e/Y9Hh8GQPUJ3QCJxKWaq622Wlh66aXzHgrALC244IJhgw02yI43BKD6hG6ABOJ2GTF0b7vttnkPBWCO+vbtGx588MEwZcqUvIcCUDpCN0ACw4YNC2+99VZ2IwtQ7+IHhKNGjQrPP/983kMBKB2hGyCBuEyzU6dOYYsttsh7KABztNFGG4W55prLDuYACQjdAAnEG9d4EzvvvPPmPRSAOerSpUv2IaFeN0D1Cd0AVTZp0qTs+B19bqBIYh1m0KBB4auvvsp7KAClInQDVNmzzz6bndGtzw0USfygMAbuxx9/PO+hAJSK0A2QYGl5XFYej+ABKIo11lgjLLLIInrdAFUmdANUWexEbrXVVtlGagBF0dTUlK3Q0esGqC6hG6CKxowZky3N1OcGiiheu2JF5pNPPsl7KAClIXQDVFHchGjixIn63EAhbbPNNqG5uTkMGDAg76EAlIbQDVBFsQu55JJLhpVXXjnvoQBUbKmllsquX3rdANUjdANUUbxRjcszYzcSoIj0ugGqS+gGqJL3338/vPTSS5aWA4UWPzh84403wvDhw/MeCkApCN0AVdIyMxQ7kQBFteWWW4YOHTqY7QaoEqEboEriDepaa60VFl100byHAtBm8803X9hggw2EboAqEboBqiDu9tvS5wYoungte/DBB8OUKVPyHgpA4QndAFXwz3/+M7z77rv63EApxGvZqFGjwvPPP5/3UAAKT+gGqIKHH344dOrUKWy22WZ5DwWg3TbaaKPQvXv37NoGQPsI3QBV8Oyzz4bVV189zD333HkPBaDdunTpku1R8dxzz+U9FIDCE7oBqiDemK677rp5DwOgauI1TegGaD+hG6CdJkyYEF588UWhGyiVeE179dVXw9ixY/MeCkChCd0A7fTyyy+HiRMnCt1AqcRrWty9/IUXXsh7KACFJnQDtFNcftnU1BTWXnvtvIcCUDVxn4q4QeSQIUPyHgpAoQndAFUI3aussopN1IBS6dq1a1hjjTX0ugHaSegGaCebqAFlZTM1gPYTugHaYdKkSeH5558XuoFS6tOnT7ZRZNwwEoC2EboB2uG1114L48aNE7qBUorX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DVAFW265ZdZ7bLlRBSiyBx54IKy55pph0UUXzXsoAIUndANUQc+ePcO3vvUtoRsovObm5ix09+3bN++hAJSC0A1QJfEGNYbueMMKUFT/+te/wsiRI8O2226b91AASkHoBqiS2H388MMPw0svvZT3UADa7P777w+dO3cOm222Wd5DASgFoRugSr797W+Hbt26ZcsyAYoqXsM23njjMM888+Q9FIBSELoBqiQG7hi89bqBopo0aVIYMGCAPjdAFQndAFUUb1QffvjhMHHixLyHAlCxZ599Nnz++ef63ABVJHQDVLnXPWbMmPDUU0/lPRSANvW5e/ToEdZbb728hwJQGkI3QBWtu+66Yf7559frBgopXru22mqr0KlTp7yHAlAaQjdAFXXs2DG7YdXrBormyy+/DI8//rg+N0CVCd0AVRZvWAcPHpwtMwcoikceeSTbj0KfG6C6hG6ABL3uuAPwoEGD8h4KQEVLy5dccsmw0kor5T0UgFIRugGqLN6wxhtXvW6gSOI1K67UaWpqynsoAKUidANUWbxhjbPdet1AUXzwwQfhhRdesLQcIAGhGyCBOFv0/PPPhw8//DDvoQDMUcuHhPEDQwCqS+gGSGDrrbfOvg8YMCDvoQC0amn5mmuuGRZddNG8hwJQOkI3QAKLL754WG211fS6gbrX3Nw8tc8NQPUJ3QCJbLfdduGuu+4KkydPznsoALMUqzAjR44M22+/fd5DASgloRsgkb333ju899574dFHH817KACzdP3114cFF1xwai0GgOoSugES2WijjULv3r3DDTfckPdQAGa5tDxeo/baa6/QuXPnvIcDUEpCN0DCo8P22WefcOONN4ZJkyblPRyAbxg8eHB46623wr777pv3UABKS+gGSCiG7o8//jg89NBDeQ8FYKZLy5dYYomw2Wab5T0UgNISugES6tOnT1hxxRUtMQfqTlyB079//+zDwQ4d3BICpOIKC5B4iXlctnnzzTeH8ePH5z0cgKkGDhwYPvzwQ0vLgf/f3r1A91z/cRx/75JLrrltLaUZYu4itDWzFAnNbeRSyMEYTcq66V85RdHFDBGJVKSZJbkktOQykS2ETuQWq5hha5tt/c/nc+KUk5B9f5/f9/d9Ps75nU2nk5dpv/1ev8/n8/7AYpRuALCYekGblZUlq1atMh0FAP62tTwoKEiaN29uOgoA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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "T = [\n", " ([1,0],1),\n", " ([4,0],1),\n", " ([0],1),\n", " ([3,5,2],2),\n", " ([6,5,2],2),\n", " ([2,5],2),\n", " ([5,2],2),\n", " ([7],1)\n", "]\n", "G = bf.compress_trajectories(T, 3)\n", "bf.plot_trajectory(G, show = True);" ] }, { "cell_type": "markdown", "id": "c47a179d", "metadata": {}, "source": [ "### Figure 11\n", "This is Figure 11a from the manuscript." ] }, { "cell_type": "code", "execution_count": 10, "id": "2d093a86", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.400999Z", "iopub.status.busy": "2026-03-29T02:41:19.400938Z", "iopub.status.idle": "2026-03-29T02:41:19.431986Z", "shell.execute_reply": "2026-03-29T02:41:19.431761Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAM0hJREFUeJzt3QmUlNWZP/4HAVlUUAiyuADRcYkLmoCMuAckaDI4EyGTCa6j8RzFbeYQOaCOKzhKNGM0iyQGHUyixoxJTFDDGGNgRFyiCSYaYgaJIESJCyIgW/3Pfeff/WO3G+rtqnrr8zmn011vXe97q99K09++93lvq1KpVAoAAACg7HYof5cAAABAInQDAABAToRuAAAAyInQDQAAADkRugEAACAnQjcAAADkROgGAACAnAjdAAAAkBOhGwAAAHIidAMAAEBOhG4AAADIidANAAAAORG6AQAAICdCNwAAAORE6AYAAICcCN0AAACQE6EbAAAAciJ0AwAAQE6EbgAAAMiJ0A0AAAA5EboBAAAgJ0I3AAAA5EToBgAAgJwI3QAAAJAToRsAAAByInQDAABAToRuAAAAyInQDQAAADkRugEAACAnQjcAAADkpE1eHQMALaNUKsXKlSujaNq2bRtt2vhVZWvWrVsXH3zwQRRNu3btYocdzA0BxeBfMgCoUS+88EL827/9W/z85z8vZPBKPvaxj8V5550XF198cbRq1arSw6kav/zlL+P666/PPq9duzaKJgXuo48+OsaNGxfDhg2r9HAAtkurUvrzOABQU/70pz/FgAEDonv37nH22WfHHnvsUbhQumLFinjsscfi+9//fkycODELYETMnj07jj/++DjkkENi1KhR8ZGPfKRQ1z79avr222/Hvffem73W9EelE044odLDAthmQjcA1KArr7wybr/99pg3b17suuuuUWSjR4+OBx54IF5//fVo3bp11LszzzwzZs2aFXPmzMmWYRfVmjVrsj8s9e3bN/7rv/6r0sMB2GaKZQCghmc7ix64k7//+7+PN954I/sDA/937U866aRCB+4k1fN/5jOfiaeeeqrSQwHYLkI3ANSgdOO0Tp06RT3Yeeeds89FvFnctkjfh1122SXqQXqdrjtQ64RuACiQdEO1sWPHRq9evaJDhw4xcODAmD59+ibtnnzyyexGVR07dowePXpkNypbtmzZ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AAAAORG6AQAAICdCNwAAAORE6AYAAICcCN0AAACQE6EbAAAAciJ0AwAAQE6EbgAAAMiJ0A0AAAA5EboBAAAgJ0I3AAAA5EToBgAAgJwI3QAAAJAToRsAAAByInQDAABAToRuAAAAyInQDQAAADkRugEAACAnQjcAAADkROgGAACAnAjdAAAAkBOhGwAAAHIidAMAAEBOhG4AAADIidANAAAAORG6AQAAICdCNwAAAORE6AYAAICcCN0AAACQE6EbAAAAciJ0AwAAQE6EbgAAAMiJ0A0AAAA5EboBAAAgJ0I3AAAA5EToBgAAgJwI3QAAAJAToRsAAAByInQDAABAToRuAAAAyInQDQAAADkRugEAACAnQjcAAADkROgGAACAnAjdAAAAkBOhGwAAAHIidAMAAEBOhG4AAADIidANAAAAORG6AQAAICdCNwAAAORE6AYAAICcCN0AAACQE6EbAAAAciJ0AwAAQE6EbgAAAMiJ0A0AAAA5EboBAAAgJ0I3AAAA5EToBgAAgJwI3QAAAJAToRsAAAByInQDAABAToRuAAAAyInQDQAAADkRugEAACAnQjcAAADkROgGAACAnAjdAAAAkBOhGwAAAHIidAMAAEBOhG4AYKuWLFkSe+21V+yyyy6xbt26uPjii7Ov77jjjkoPjZw988wz0bVr1xgwYED2ePDgwbHbbrvFL3/5y0oPDaBmtKn0AACA6rbzzjvHqlWrYtmyZdnjDz74IPtI4Yti69atW7z77ruxdu3a7PGKFSti5cqVsfvuu1d6aAA1w0w3ALBV7du3jyuvvDJatWqVPU6f999//xgxYkSlh0bO+vTpE2effXa0bt06e5w+jxw5Mj72sY9VemgANaNVqVQqVXoQAEB1S7ObvXv3jjfeeCN7fP/992fhi+J79dVXY5999slKC5Lf/e53QjdAM5jpBgCaPNuddO/ePU499dRKD4kWnO3+h3/4h8aaboEboHnMdAMATZ7t3nvvveOKK67IbqZG/XjxxRfjqKOOiocffjgGDRpU6eEA1BShGwAAAHJieTkAAADkROgGAACAnAjdAAAAkBOhGwAAAHIidAMAAEBOhG4AAADIidANAAAAORG6AQAAICdCNwAAAORE6AYAAICctMmrYwBa1oIFC+L111+PUqkURdKmTZv46Ec/GrvttlulhwIA0GxCN0CNe/nll+OMM86IZ555JooqBe/hw4fHlClTolOnTpUeDgBAk7UqFW1KBKCOvP/++7HvvvtGly5d4sorr4wDDjggWrduHUWyatWqmDVrVlxxxRVx1FFHxc9+9rNKDwkAoMnMdAPUsIcffjgWL14cTzzxROy3335RVJ/4xCeiY8eOce6552ZL6Hv16lXpIQEANIkbqQHUsBdffDF69uxZ6MDd4Pjjj8/q1X//+99XeigAAE0mdAPUsNWrV0e7du2iHrRv377xNQMA1AqhG6CgPvjggxg7dmy2FLtDhw4xcODAmD59+ibtnnzyyTj66KOz5ds9evSIiy++OJYtW7ZBm/T4qquuimHDhmX1461atYq77rprs+d9+umn44ILLsiWhLdt2zZruzV33nlnHHjggVmo/pu/+Zu47bbbtvOVU85r35z+fv7zn8c555wTBx98cHZvgT59+mxxjOvWrYubbrop+vbtm137Qw89NL7//e+X4dXXr1q47hMmTMhuiti9e/fsZ8PVV19dhlcOUN2EboCCOuuss+KWW26JUaNGxa233pr9MnzyySfHzJkzG9u88MILMXjw4Fi+fHnWNtVMT548OUaOHLlBX0uWLIlrr702XnrppejXr99Wzztt2rT49re/nf1Cnbb62po77rgjO+dBBx2Uhe0jjzwyCwA33njjdr76+lbOa9/U/pLvfe972Ufnzp0/tO7+8ssvzwLdiSeemF37vffeO77whS/EvffeW8bvRH2pheueboiYdlo4/PDDy/jKAapcuns5ALVp/PjxpT59+mxyfPbs2WlnitKkSZMaj61YsaK0zz77lI488sjGYyeddFKpZ8+epXfffbfx2Le+9a3sv3300Ucbj61cubK0aNGi7Otnnnkme37KlCmbHdPixYtLy5cvz74ePXp01nZzUpuuXbuWPv3pT29wfNSoUaWddtqp9NZbb21wfOHChVlf06ZN+9DvSz0r97Vvan8N12jVqlXZ1+m69u7de7NjXLBgQalt27bZ+6PBunXrSsccc0xpzz33LK1Zs2a7vw/1phauezJv3rzs85tvvpn1f9VVV233aweodma6AQrogQceyGalzjvvvMZjaQlvWgKatt967bXXYunSpdlS0dNOO22Dva/Tnt8777xz3H///Y3HUt14WobaFGnZaFqK+mEef/zx+Otf/5otRV/f6NGjs63QbA1WHde+Kf01SLOcqaTgw/z4xz/OavPXv/ZpZcT5558fCxYsyPqleNc92drSc4CiEroBCuj555/P7mi+/i/WyRFHHNG4xHTOnDmxZs2a6N+//wZtdtxxxzjssMOyPvIeY7Lx+VMt+A477JD7+Yuq3Ne+Kf1tyxh32mmnrJZ/c3269sW87gD1SugGKKBFixZlW4ltrOFY2us6tVn/2MbtUpu8x5hm0nbfffdNAkDXrl1zP39RlfvaN6W/bRljw420ytVnvauF6w5Qr4RugAJasWLFZrcSa9h2Kz2fPpIttWt4Ps8xpoC9OS1x/qIq97VvSn95jJHiXXeAeiV0AxRQqqlO2/1sbOXKlY3PN9Rdb6ldU+qyt3eMq1at2uxzLXH+oir3tW9Kf3mMkeJdd4B6JXQDFFBaAtqwlHR9DcfSjY8aloluqd2Hbf1TjjGuXbs23njjjQ2OpyCebrCW9/mLqtzXvin9bcsYFy9enG5rX7Y+610tXHeAeiV0AxRQuinS3Llzs7sVr2/27NmNzx988MHRpk2bePbZZzcJvekmSalN3mNMNj5/erxu3brcz19U5b72TelvW8aY9olO+76Xq896VwvXHaBeCd0ABTRixIhsFnny5MmNx9JS0SlTpsTAgQNjr732is6dO8eQIUPinnvuiffee6+x3dSpU2PZsmUxcuTIXMf4yU9+Mrp06RLf+MY3NjieHnfs2DE+/elP53r+oir3tW9Kf811yimnZFtMff3rX288lma9v/nNb8Yee+wRgwYN2sZXX79q4boD1Ks2lR4AAOWXfilOv0CPGzcuW7697777xt133x2vvvpq3HnnnY3tJkyYkAWc4447LtuPN+2RfPPNN8fQoUNj2LBhG/R5++23xzvvvNN41+KHHnooa59cdNFF2S/0yfz587Nf4pOGGbXrr78++9y7d+84/fTTG2tCr7vuumxf7jTWT33qUzFjxowsEKRxpUBO5a99U/tLfvvb38ZPfvKT7OtXXnkl3n333cZr369fv/i7v/u77Os999wzLr300pg0aVK2X/eAAQPiRz/6UXb9v/vd72Z3tad41z1JPxvSz4i00iH51a9+1dg2/WxIPyMACqcEQM0aP358qU+fPpt9bsWKFaUxY8aUevToUWrXrl1pwIABpUceeWSTdjNmzCgNGjSo1L59+1K3bt1Ko0ePLi1dunSTdr17904FuJv9mDdvXmO7xx9/fIvtjjvuuE36nTx5cmn//fcv7bjjjqV99tmn9JWvfKW0bt26TdotXLgw62PatGnb8J2qL+W+9k3tb8qUKVu89meeeeYGbdeuXVuaOHFi9r5K1/6ggw4q3XPPPWX+TtSXWrju6WfAltqmnx0ARdQq/U+lgz8A2+byyy+P733vezFv3rwoujTDnpYeT5s2LU466aRKDwcAoEnUdAMAAEBOhG4AAADIidANUOPqpUqoXl4nAFAsQjdADdtll13irbfeijVr1kTRpTsoN7xmAIBaIXQD1LDBgwdn++3ed999UfRZ7rRfcKdOnaJ///6VHg4AQJPZpxughqUAOmLEiDjzzDOz/W8PPPDAwu1xvGrVqnjyySfjueeei6985SvRvn37Sg8JAKDJbBkGUONWr14d3/rWt+LBBx/MttVat25dFEmbNm3igAMOiNNPPz2GDx9e6eEAADSL0A0AAAA5UdMNAAAAORG6AQAAICdCNwAVceWVV8bVV19t/23I2TPPPBNDhgzJthcEoOUJ3QBURN++feOaa66JMWPGCN6QY+A+8cQTY/ny5dmWewC0PFuGAVAR//zP/xwrVqyICy+8MHv85S9/OVq1alXpYUHhAvfHPvaxeOSRR7KdAABoeX76AlAxo0ePzj4L3pBv4DbLDVA5QjcAFSV4Q3kJ3ADVRegGoOIEbygPgRug+gjdAFQFwRu2j8ANUJ2EbgCqhuBd/c4666y45JJL4vDDD6/0UFiPwA1QvYRuAKqK4F3dpk6dGoMGDRK6q4jADVDdhG4Aqo7gDU0jcANUP6EbgKokeMPWCdwAtUHoBqBqCd6weQI3QO0QugGoaoI3bEjgBqgtQjcAVU/whv8jcAPUHqEbgJogeFPvBG6A2iR0A1AzBG/qlcANULuEbgBqiuBNvRG4AWqb0A1AzRG8qRcCN0DtE7oBqEmCN0UncAMUg9ANQM0SvCkqgRugOIRuAGqa4E3RCNwAxSJ0A1DzBG+KQuAGKB6hG4BCELypdQI3QDEJ3QAUhuBNrRK4AYpL6AagUARvao3ADVBsQjcAhSN4UysEboDiE7oBKCTBm2oncAPUB6EbgMISvKlWAjdA/RC6ASg0wZtqI3AD1BehG4DCE7ypFgI3QP0RugGoC4I3lSZwA9QnoRuAuiF4UykCN0D9EroBqCuCNy1N4Aaob0I3AHVH8KalCNwACN0A1CXBm7wJ3AAkQjcAdUvwJi8CNwANhG4A6prgTbkJ3ACsT+gGoO4J3pSLwA3AxoRuABC8KQOBG4DNEboB4P8neLOtBG4AtkToBoD1CN40l8ANwNYI3QCwEcGbphK4AfgwQjcAbIbgzYcRuAFoCqEbALZA8GZLBG4AmkroBoCtELzZmMANQHMI3QDwIQRvGgjcADSX0A0ATSB4I3ADsC2EbgDYhuBdKpXi5ptvFrzrhMANwLYSugFgG4N3CtxmvItP4AZgewjdANBMlprXD4EbgO0ldAPANhC8i0/gBqAchG4A2EaCd3EJ3ACUi9ANANtB8C4egRuAchK6AWA7Cd7FIXADUG5CNwCUgeBd+wRuAPIgdANAmQjetUvgBiAvQjcAlJHgXXsEbgDyJHQDQJkJ3rVD4AYgb0I3AORA8K5+AjcALUHoBoCcCN7VS+AGoKUI3QCQI8G7+gjcALQkoRsAciZ4Vw+BG4CWJnQDQAsQvCtP4AagEoRuAGghgnflCNwAVIrQDQAtSPBueQI3AJUkdANACxO8W47ADUClCd0AUAGCd/4EbgCqgdANABUieOdH4AagWgjdAFBBgnf5CdwAVBOhGwAqTPAuH4EbgGojdANAFRC8t5/ADUA1EroBoEoI3ttO4AagWgndAFBFBO/mE7gBqGZCNwBUGcG76QRuAKqd0A0AVUjw/nACNwC1QOgGgColeG+ZwA1ArRC6AaCKCd6bErgBqCVCNwBUOcH7/xG4Aag1QjcA1ADBW+AGoDYJ3QBQIyoZvN966614//33o1QqZV+/9tprsccee8QOO+zQIucXuAGoVa1K6V9PAKBmfO1rX8uC97/+67+2SPBetGhR7L333rFmzZoNjl9zzTXxb//2b5E3gRuAWmamGwBqTEvPeHfv3j322WefmDt3bjbT3eDYY4+NvAncANQ6oRsAalBLBu+0hPy6666Lz33uc42PjzrqqDj++OMjTwI3AEUgdANAjWrJ4H3qqafG/vvvH3/4wx9i3bp1ce2110aeBG4AikLoBoAa1lLBe/3Z7n333TfXWW6BG4AiEboBoMa1VPBOs91/+7d/G5dffnnkReAGoGiEbgAogJYI3mm2e9asWZEXgRuAIhK6AaCgwfvGG2/MthXbddddc6/B3hZz5szJxjp58uRYunSpwA1AIdmnGwAKuo/3gQceGC+99FK0b98+3nrrrejQoUNUkwsuuCC+8Y1vxG677RarV6+OQw45ROAGoHCEbgAomLVr18aRRx6ZLddu8MMf/jA++9nPRjWNMe3//de//jV73KZNm3jqqafiE5/4RKWHBgBltUN5uwMAKm3s2LEbBO5U233fffdFNZk5c2Zj4E7WrFkTJ510Urz33nsVHRcAlJvQDQAFc8ABB2SzyA03P0uL2tJM9/Lly6Na3HbbbRs8TjPdRx11VG77jANApVheDgAFtG7duuxO4z/4wQ/iO9/5TjaDXE1LzFPddhrT0KFDY9SoUTF8+PDshm8AUDRCNwAUXArgzz33XPTv379qZpLnzp2b3UCtW7dulR4KAORK6AYAAICcqOkGAACAnAjdAAAAkJM2eXUM0NIWLVoUTzzxRCxbtiyKJt106oQTTlD/CgBQY4RuoOalW1P8y7/8S3z1q1/Nvi6qtPXTuHHj4rrrrquam2EBALB1lpcDNS9th3TrrbfGDTfcEG+++WZ2p+YUvovykV7P4sWL44orrogJEybEAw88UOlvOQAATeTu5UDNS/v8ph9l06dPj6I74ogjYu+99xa8AQBqhJluoObNmzcvPv7xj0c9SK8zvV4AAGqD0A3UvLVr10abNvVxi4r0OtPrBQCgNgjdQGF98MEHMXbs2OjVq1d06NAhBg4cuNkl6E8++WQcffTR0bFjx+jRo0dcfPHFm9wBPT2+6qqrYtiwYdGlS5fsRmZ33XXXFs/90ksvZW133nnnrP3pp5+e1ZtvLNVr33TTTdG3b99o3759HHroofH973+/TN8B6lU53/vN6S+vPgGglgndQGGdddZZccstt8SoUaOyG621bt06Tj755Jg5c2ZjmxdeeCEGDx4cy5cvz9qee+65MXny5Bg5cuQGfS1ZsiSuvfbaLEz369dvq+ddsGBBHHvssfHKK6/ExIkTY8yYMfGzn/0sTjzxxFi1atUGbS+//PIseKTnbrvttqxe+wtf+ELce++9Zf5uUE/K+d5van959QkANS/dSA2glvXt27c0fvz4DY7Nnj073SSyNGnSpMZjK1asKO2zzz6lI488svHYSSedVOrZs2fp3XffbTz2rW99K/tvH3300cZjK1euLC1atCj7+plnnsmenzJlymbHc/7555c6dOhQmj9/fuOx6dOnZ//NHXfc0XhswYIFpbZt25ZGjx7deGzdunWlY445prTnnnuW1qxZs0nfqW2/fv2a9f2hvpT7vd/U/vLqEwBqnZluoJDS3b3TzNl5553XeCwt3z7nnHNi1qxZ8dprr8XSpUuz5aynnXZadOrUqbHdGWeckS0Lv//++xuPtWvXLlsq2xQ//OEP4zOf+Uw2a91gyJAhsd9++23Q549//ONYvXp1XHDBBY3H0rL1888/P5stT+OESr/3m9JfkkefAFAEQjdQSM8//3wWctf/5b9hy62GZbBz5syJNWvWRP/+/Tdos+OOO8Zhhx2W9dFcCxcujDfeeGOTPhvOvX6f6euddtopDjzwwM2OcVvOD+V+7zelvySPPgGgCIRuoJAWLVoUPXv23OR4w7HXX389a7P+sY3bpTbbct6t9fnWW29lN5BqaNu9e/dsdntLY4RKv/eb0l9Du3L3CQBFIHQDhbRixYpsSfjG0hLWhufTR7Kldg3PN/e8W+tz/TZNGSNU+r3f1PdpHn0CQBEI3UAhpS2IGmaU17dy5crG59NHsqV2Dc8397xb63P9Nk0ZI1T6vd/U92kefQJAEQjdQCGlZaoNy13X13As7Q3csJR1S+1Sm20579b6THt2N8zwpbaLFy9Ou0hscYxQ6fd+U/praFfuPgGgCIRuoJDSjZvmzp2b3VF5fbNnz258/uCDD442bdrEs88+u0GbtJd2upFTatNce+yxR3Tr1m2TPpOnn356gz7T12k/47T395bGCJV+7zelvySPPgGgCIRuoJBGjBgRa9eujcmTJzceS8tZp0yZEgMHDoy99torOnfunG3ldc8998R7773X2G7q1KmxbNmyGDly5Dad+9RTT42f/vSnG2x79Nhjj2UhY/0+TznllGjbtm18/etfbzyWZr2/+c1vZuF90KBB23R+6lu53/tN6S/Jo08AKII2lR4AQB7SL+7pl/xx48ZlW3jtu+++cffdd8err74ad955Z2O7CRMmZOH2uOOOy/YMTvtj33zzzTF06NAYNmzYBn3efvvt8c477zTeWfmhhx7K2icXXXRRFjqS8ePHxw9+8IM44YQT4pJLLskCx6RJk+KQQw6Js88+u7G/PffcMy699NLsubRf94ABA+JHP/pRzJgxI7773e9m+xhDpd/7Te0vrz4BoOaVAGpc3759S+PHj9/k+IoVK0pjxowp9ejRo9SuXbvSgAED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dxNf3+zZsxufT9t9tWnTJtuua32rVq3KboyW2jSnv6Q5fQIAtBShG4CyGjFiRKxduzYmT57ceCwt+U77YKf9tvfaa6/o3LlzDBkyJO6555547733GttNnTo1li1bFiNHjmxWf0lz+gQAaCmWlwNQVikIp4A7bty4eOONN2LfffeNu+++O1599dW48847G9tNmDAhBg0aFMcdd1y2B/eCBQvi5ptvjqFDh8awYcOa3V9z+kxuv/32eOeddxrvav7QQw9l7ZOLLrooC/EAANurValUKm13LwCw0Y3LrrzyymzW+e23345DDz00rrvuuvjUpz61QbuZM2fG2LFj49e//nXssssu8bnPfS5uuOGG7Ott6a85ffbp0yfmz5+/2fHPmzcvex4AYHsJ3QAAAJATNd0AAACQE6EbAAAAciJ0AwAAQE6EbgAAAMiJ0A0AAAA5EboBAAAgJ0I3ABWzdu3aWL16dbTE7pXpPGvWrMn9PAAA6xO6AaiYr33ta/HTn/40WrVqlfu5Hn/88fjyl7/cIgEfAKCB0A1ARbz33ntxySWXZJ9bwqpVq2LcuHGxYMGCFjkfAEAidANQEa+88kr2ef/992+R8+2zzz7Z51dffbVFzgcAkAjdAFTEH//4x+zzvvvu2yLn6927d/Z53rx5LXI+AIBE6AagIv73f/83dt111+jatWuLnK9jx47RrVu3mD9/foucDwAgEboBqIhly5ZFp06dWvScKXin2m4AgJYidANQEWkLrx133LHSwwAAyJXQDUDFQnfbtm0rPQwAgFwJ3QBUxA477BBr1qxp0XO+//770a5duxY9JwBQ34RuACqiZ8+esXjx4hYN3EuWLIk+ffq02DkBAIRuACqiV69e8d5772UfLaFhf26hGwBoSUI3ABUL3cmCBQtabIuyROgGAFqS0A1ARRx88MHZ5+eee65Fzjdjxows6O+xxx4tcj4AgEToBqAiunbtGgceeGDMnDmzRc43ffr0GDJkSLRq1apFzgcAkAjdAFTM0Ucf3SKh+80334wXXnghC90AAC1J6AagYk488cT43e9+F3/4wx9yPc/UqVOzPcGHDh2a63kAADYmdANQMcOHD48uXbrEnXfemds51q5dG7fddlv84z/+Y3Tv3j238wAAbI7QDUDFtGvXLs4444y46667YtWqVbmc48c//nG2Xdill16aS/8AAFvTqlQqlbbaAgBy9PLLL8dBBx0U//7v/x5f+tKXytr3+++/H4ceemi2Tdhjjz1W1r4BAJrCTDcAFXXAAQfERRddFNdcc0289tprZe173LhxsWjRorjjjjvK2i8AQFOZ6Qag4pYuXZqF78MOOyx+8pOfRJs2bba7z9TPKaecEv/xH/8Rl1xySVnGCQDQXGa6Aai4Tp06xXe+851sL+0vfvGLsW7duu3q78EHH4wRI0bEZz/72WwWHQCgUoRuAKrCsGHD4j//8z/j7rvvjvPOOy+rx3700UfjjTfeaNadym+//fYYOXJkFrjvvffe2GEH/9QBAJVjeTkAVWXKlClxwQUXxO677x5//vOfo3379jF69Oi47LLLsmObk/4pmzFjRlx88cXxm9/8Jvvvb7311rIsUwcA2B5CNwBV55VXXomzzjor/ud//id73KpVqyxApxnsiRMnZo/TTdcWLFiQ3ZU8LUtP24IdccQR8dWvfjUGDhxY6ZcAAJARugGoSgsXLow999xzk+MHHnhgzJs3L1auXNn4eMiQIdny9PRhOTkAUE2suwOgKqXZ7AatW7fOPj7/+c/Hddddlz23bNmy6Nq16xaXnAMAVAOhG4Cq1FCP3a5du8aa7u7du1d6WAAAzWJ5OQBV6+GHH46Pf/zjwjYAULOEbgAAAMiJu80AAABAToRuAAAAyInQDQAAADkRugEAACAnQjcAAADkROgGAACAnAjdAAAAkBOhGwAAAHIidAMAAEBOhG4AAADIidANAAAAORG6AQAAICdCNwAAAORE6AYAAICcCN0AAACQE6EbAAAAciJ0AwAAQE6EbgAAAMiJ0A0AAAA5EboBAAAgJ0I3AAAA5EToBgAAgMjH/wcx8m6NHDc6fgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "G1 = bf.compress_trajectories([([1,0],1)], 3)\n", "\n", "T = [([0,1],1),([1,3,0,1],1),([2,0,1],1),([3,2,0,1],1)]\n", "G2 = bf.compress_trajectories(T, 2)\n", "\n", "bf.plot_trajectory(bf.product_of_trajectories(G1, G2), show = True);" ] }, { "cell_type": "markdown", "id": "e27308f9", "metadata": {}, "source": [ "This is Figure 11b from the manuscript." ] }, { "cell_type": "code", "execution_count": 11, "id": "e3439936", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.433125Z", "iopub.status.busy": "2026-03-29T02:41:19.433037Z", "iopub.status.idle": "2026-03-29T02:41:19.464641Z", "shell.execute_reply": "2026-03-29T02:41:19.464447Z" } }, "outputs": [ { "data": { "image/png": "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zZpV+vjjj5Pfx+XbekmPy6y55pqlr3/964s9fsghhyRXZH/vvfcWe/yYY44p9e/fv6y/G7Jl9dVXT65Qn8X9OJo2bVqynijuu9/97nfbXPbqq69e5rrIroMPPrg0ePDgxR578sknk3/viy++uPmxuXPntrpq8te+9rXSeuutV/rggw+aH7vqqquS//eBBx6oeH3RG2+80XxXi/g626dPn6VudyXPiybxTgNxOz755JOy/37Ihrgf9OvXr9XjWdiXo6lTpyZv4x0E4vpHjRrV5rIvvfRSssyECRNKRaV0A3RAt27dkkO6lifeF3nfffdNqkaTwYMHhy233DK5Mm2T3/72t8m9WePhtk1iATzuuOOSyvjEE080Px4P6YqHiS3Pww8/HN59993F1tl0ded4//FYKim2LOzHUbyqft7uK0513HHHHUm9O/roo5sfi4dvx0Nl4/72+uuvh9mzZyeH1B566KFh1VVXbV7u8MMPT06XaLkPl7O+JrEIxlMjlqeS5wXFlYV9OVrWoee0ZugGSFm81ctbb70V+vfvv9Tbc02ePLn5z/H38Uqm8dzrJZdren+lmv6fJT9+PIe2c+fO7VonxVPv/RiWJe5T8Yc/LQeQlvtcPBT3+eefT64CvuQ+3LVr17Dddtu12oeXt772bKPnBXnYl6mcoRsgZTNnzkzerrfeeq3eFx977733koucNC3bdFGSJZeL4q1j2vPx40+511577VZfnNdcc812rZPiqfd+DMsS97m29s2mfW55+3DL/bKc9bVnGz0vyMO+TOUM3QApmzt3bvMhvEuKh3i1XCa+LWe5Sj9+HLCXJq63PeukeOq9H8OylLPPLW8fbrlfpvVa7HlBHvZlKmfoBkhZ0/mqTRWwpXnz5i22THxbznKVfvwlryzdcr3tWSfFU+/9GJalnH1ueftwy/0yrddizwvysC9TOUM3QMqaDuFqOhyspfhYvNdx00+h47KzZs2Kl1xutVy0vFt4tPXxFy5cmJyP21IcxOMF1tqzToqn3vsxLEvc59raN5v2ueXtwy33y3LW155t9LwgD/sylTN0A6Rsgw02CGuttVZ4+umnW71v0qRJyUVPmsTfx3tuxvslt/Tkk082v79STf/Pkh8//nnRokXtWifFU+/9GJYl7lNTpkxJrurc1j639dZbJ/d3X3Ifjj+AjBeTWnIfXt762rONnhfkYV+mcoZugBo44IADwj333LPYrTkeeuih5AvhQQcd1PzYsGHDktt1/OxnP2t+LFaRX/ziF8nQM3DgwIo/9h577JFUyJ///OeLPR7/3KNHj/D1r3+93Z8XxVLP/RiW5cADD0yO6BkzZkzzY/GQ2rFjx4YBAwaE3r17h169eiW3uLvpppvChx9+2LzcjTfeGObMmbPYPlzO+irleUFe9mUq16Ud/w8ALVxxxRXh/fffb74C6Lhx45J7rkY//OEPky+Op59+erj99tvDoEGDwgknnJB8Ubz44ovDNttsE4YPH968rg033DCMHDkyeV+8n+uOO+4Y7rrrrvD444+HX/7yl8lVyJtMnz49+QIbNf20+7zzzmu+n/Fhhx3WfL7Wueeem9yXO34h3nvvvZP1xS/W559/fjKQQ6Pvx03b9Kc//Sn5fVzvc88917zs/vvvH7bddtsa/E3RiOLwEF/fTjvttORUms033zxcf/31Ydq0aeGaa65pXi6+5sXhdrfddkvuWxz38UsuuSQMGTIkDB06tOL1RXE/vPvuu5Pfv/LKK+GDDz5o3i/79esX9ttvv4qfFxRXFvblKL5ux9fvePRG9NhjjzUvG1+34+s3LZQAWKYFCxbEE/BK11577VLf36dPn+T9S/s1derU5uVeeOGF0pAhQ0o9evQorbbaaqVDDjmkNGvWrFbrW7hwYemCCy5I1tu1a9dS3759SzfddFOr5R5++OE2P+5uu+3WavkxY8aUPv/5zyfr3GyzzUo//elPS4sWLWq13DHHHFPq379/O/6maHSrr7566aKLLsrsfvzd7363zWXHjh272LJXX3118jj5c/DBB5cGDx7c6vG5c+eWTjrppNK6665b6tatW2nHHXcs3X///a2We/zxx0sDBw4srbTSSqW11lqrNGLEiNLs2bPbvb6477W1X8Z9tj3PiybXX399sp5PPvmkgr8hsiDud/369Vvq+7KwL8fX57aWja/rLb300kvJ4xMmTCgVVaf4n5ZDOACLi4dlxXOnrr322sVqXl4de+yx4ZlnnglPPfVUvTeFKotHNZx66qnh5JNPDnkXC85RRx3V6qJVZN+3vvWt5L7w48ePD3l3ww03hO9+97vJ4cBt3fqRbPrBD34QJkyYkJyDnXcvv/xy+OIXv5h8vl/5yldCETmnGwAAAFJi6AYAAICUGLoByhRvr1WUz7NTp0713gxSEP9di7Qfk09F3I+9JueP/bhYDN0AyxGvKLvmmmuGV199NRRBvGLpOuusU+/NIAVrr722/ZjMi/+ur732WiHO14/P13gthnirMfK3H//tb39LrmSfd6/+4+vOuuuuG4rK0A1QhnibjHghtZdeeinkVfwGNt4q5NFHH13stiDkR7yt1m233RYmTZoU8uyFF15I7kFrP86n+O8ab3f085//PNelMF586uqrr7Yf51T8d4235LrwwgvDggULQl69++67yecYL6S26aabhqJy9XKAMsycOTPsvvvuYcqUKeELX/hCWGWVVXJ1mFT8UjBr1qzw+uuvh3333TfccccdoVu3bvXeLKrs73//e9hrr72Sq9PHe7WuvvrquduPZ8+eHf7yl78kz9OHH3640GUlr+KgHa/8HIfuWAt79+4dOnfunKv9+MMPPwx//vOfwxZbbBEeeeSRsP7669d7s0jh3/mcc84Jo0ePTo6m22STTXK1H0fxqvsvvvhi6NGjR3jggQfCl7/85VBUhm6AMs2ZMyeMGzcuTJw4McybNy9kzccffxz+53/+J2yzzTZhrbXWavX+Xr16hSFDhoQ99tgjuUUa+TR37tzwu9/9Ljz22GPho48+CnnTvXv3MHDgwOSHRz179qz35pCS+O1rfC2+9957wzvvvJO7Q81XWmmlsPPOOyc1NP6Ql3yK+238IWg8yiz+4HvJ/Ti+Rsf3b7nllpn8AWI8LaJv377hgAMOyOT2V5OhG6AgYgGMtf65554Lp5xySjj77LPVbABoMHE8u/7668PIkSOTSvzggw+Grbfeut6bRQfk6xgGANq06qqrhieffDKMGjUqXHzxxWGHHXYITz/9dL03CwD4hzfeeCM5Umf48OFh2LBhyeHZBu7sM3QDFEg81Ouss85Khu2uXbsm51edccYZyXlXAED96vZ1112XHI49efLk5JDzWLvjtTfIPkM3QAFtu+22qjcANGjddtX6fDF0AxSU6g0A9aNuF4ehG6DgVG8AqC11u1gM3QCo3gBQA+p2MRm6AWimelNPM2bMCJdffnnu7rlM47rzzjuT1zyoBXW7uAzdACxG9aZepk6dGo4//vgwfvz4em8KBTBz5sxwyCGHhAkTJtR7U8g5dZtOJT9OBqANn376afjP//zPcO6554Ytt9wy+aahf//+9d4scip+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t7oNtIfSDQBUTVGrdxFrd5Eqt7oNdITSDQCkomjVu2i1uyiVW90GOkrpBgBSUbTqXaTaXYTKrW4D1aJ0AwCpK0r1LkrtznvlVreBalK6AYDUFaV6F6F257lyq9tAGpRuAKCm8l69816781q51W0gLUo3AFBTea/eea7deazc6jaQNqUbAKibvFbvvNbuvFVudRuoBaUbAKibvFbvPNbuPFVudRuoJaUbAGgIeaveeavdeanc6jZQa0o3ANAQ8la981S781C51W2gXpRuAKDh5KV656V2Z71yq9tAPSndAEDDyUv1zkPtznLlVreBRqB0AwANLevVO+u1O6uVW90GGoXSDQA0tKxX7yzX7ixWbnUbaDRKNwCQGVmt3lmt3Vmr3Oo20IiUbgAgM7JavbNYu7NUudVtoJEp3QBAJmWtemetdmelcqvbQKNTugGATMpa9c5S7c5C5Va3gaxQugGAzMtK9c5K7W70yq1uA1midAMAmZeV6p2F2t3IlVvdBrJI6QYAcqXRq3ej1+5GrdzqNpBVSjcAkCuNXr0buXY3YuVWt4GsU7oBgNxq1OrdqLW70Sq3ug3kgdINAORWo1bvRqzdjVS51W0gT5RuAKAQGq16N1rtbpTKrW4DeaN0AwCF0GjVu5FqdyNUbnUbyCulGwAonEap3o1Su+tdudVtIM+UbgCgcBqlejdC7a5n5Va3gSJQugGAQqt39a537a5X5Va3gaJQugGAQqt39a5n7a5H5Va3gaJRugEA6ly961W7a1251W2giJRuAIA6V++WtfvGG29MBtMf/ehHqXysOGT/y7/8S7j33ntrVrnVbaDIlG4AgAao3lOnTg0DBgwIb7/9dvLnPn36JAW62mJhjoN91KVLl/C73/0uDB48OKRF3QaKTukGAKhz9Y4D6RZbbBHefffdUAsrrLBC8nbhwoVhr732CqNHj676x1C3AT5j6AYAWIZtt902PPnkk2HUqFHh4osvDjvssEMyiFfT5ptvHtZZZ52ancu9aNGi5G08h3yllVaqesGPdXvfffcNw4cPD8OGDQsvvvhi2G+//ar6MQCywtANAFDn6h0PX3/++efD1772tebH5s6dG9IQ1xsrdBzw48d99tlnwz777FOVdavbAK0ZugEAGqB6r7HGGsmQeskllyR/njNnTkjDK6+8krw99NBDwzPPPBM+//nPV2W96jbA0rmQGgBAOzz33HPhiCOOSN6ecsop4eyzzw7dunWryrp/+9vfhr/85S/h5JNPDtV21113hb/+9a/h//2//1eV9cVvJWPNHjlyZOjRo0e48sorDdsALRi6AQAydl/vRuHK5ADL5/ByAICM3de73py7DVA+QzcAQMrnet9///3JfbizaPbs2eGWW25pvuK5c7cBKuPwcgCAFM/13nvvvcOgQYPC1ltvnVTheJuuLDn22GOT87SvuOKKsPLKKzt3G6BChm4AgJTO9R49enQyZMc/x2+5xo4dmwzkWRFvY9avX79k2+PnEWv3YYcdFi677DKHkgOUydANAJCSOGDHc52bfO5zn0sOM+/Zs2dodPFbxD322CM89thjzYeWf/GLX0wG8azVeoB68ooJAJCCKVOmhBtuuGGxx955551wwgknhCyIPyx45JFHmgfu6KWXXgq/+tWv6rpdAFmjdAMApODdd99NrmT+5z//Obz22mvJBcjiANulS5fkcPNGt/HGG4fp06cnv1977bXDJptsEjbbbLNw6qmnhm222abemweQGYbuf4hfCOMFT7LwRbASnTp1ChtssEHYfvvtk98DHfPee+8lVySeN29eyJtevXqFAQMGhJVWWqnemwKZt2DBgjBp0qSkbDeJA/fbb78d5s+fH3r37h2y8HoXr1wev4+It0ZrEi+mFl8rsnCIPEAj6BIKbs6cOeFf//Vfwz333BPyrE+fPuH2228PO+64Y703BTJp4cKFYcSIEeGaa65JvpnOq1VWWSVceOGFyecKtM+dd94ZjjnmmMUG7rzp3r17cmX2s88+2w/1AZaj8EN3vA3Go48+mnwjPXjw4OSLSN4GhZdffjmcdtppYciQIclhYquuumq9Nwsy54ILLghXXXVVMpAecMABuXsexYOeZs2aldwS6Ac/+EHYcsstw1577VXvzYLMiec8f+tb30ruYx2/9sYfeufpomPxtSIeNh+vwn7OOeeETTfdNLmaOQBtK/Th5R9//HFYc801w3/8x3+Ek08+OeRZHLbjuVk333xzUvaBysQhdJdddgnXXnttyLP4JaFv377JUTEtr7gMlCeW38svvzz5IVa3bt1CnsUrm8fDzh944IF6bwpAQ8vPj17b4fXXX0/Oy/zyl78c8i7+pH399dcPf/nLX+q9KZA58TzMV155pRCvFfEw0fh5xqsuA5WLz514HZW8D9yR1wqA8hR66G46L7PlxUHyLH6eeT4XFdKsv/FXUV4runbt6rUCOnBaV3wOFYHvKwDKU+ihe3kXWBs1alQYOnRoWGONNZL6c9111y112XjOdFwuXsUzLhvPbYpXJ11aLfvxj3+c3HIjXh142223DbfcckvN1gkU97Xi/PPPD/vvv39YZ511km2M52ICtfPJJ58kFx6LR53F68fEq3+PHz++1XITJ05MTmXp0aNHWHfddcPxxx+fvM60d31prROA8hm62xCvODp69OjkG9p+/fq1udyMGTPCV7/61eTQ03ihpZNOOince++9yQWI4i1BWor36oxfzOL74vleG220UfjOd74Tbr311tTXCRT7teLMM88MTz31VHLYK1B7RxxxRPjJT34SDjnkkHDZZZeFFVZYIeyzzz5hwoQJzcs8++yzYc8990yuOROXPeqoo8KYMWPCQQcd1K71pbVOACpUKrAXXnghXkSuNHHixFbvmzdvXmnmzJnJ75966qlkubFjx7Za7rjjjit17969NH369ObHxo8fnyx/5ZVXNj82Y8aM0oorrlgaMWJE82OLFi0q7brrrqUNN9ywtGDBglTXGfXp06d0xhlnVPz3BEUXn0vx+Xfttddm8rUimjp1avL27bffTt4/atSoNj/fY445ptS/f/+y/m6AxR144IGlvffee7HHnnzyyeR5d/HFFzc/Nnfu3NJmm21W2nnnnZsf+9rXvlZab731Sh988EHzY1dddVXy/z7wwAMVry+tdTY5++yzk9clAJZN6W5DvABKPARreX79618ntwWJJapJvPVYvNLxbbfd1vzYb3/72/Dpp5+G73//+82PxUM8jzvuuKRWPfHEE6muEyjua0UU714A1Mcdd9yRVOOjjz66+bF46siRRx6ZPKfjhV1nz56dHMp96KGHLnZLwsMPPzw5faTlc7qc9UVprBOAyhm6O+CNN94Ib731Vujfv3+r9+20005h8uTJzX+Ov1955ZXDVltt1Wq5pventU6g2K8VQH3F52P8YVjLwbfl8zoeAv78888nFyVb8jkdL8q23XbbtXqdWN76ojTWCUDlDN0dMHPmzOTteuut1+p98bH33nsvuShJ07JNFzBacrnozTffTG2dQLFfK4D6is/Xtp6rTc/r5T2nW35NL2d9TctVe50AVM7Q3QFz585N3i7tXpzxkKyWy8S35S5X7XUCxX6tAOqrnOf18p7TLZ/P1XqdaM86AaicobsD4u00oqXVpHnz5i22THxb7nLVXidQ7NcKoL7KeV4v7znd8vlcrdeJ9qwTgMoZujug6ZCrpsO3WoqPxXvmNv3UOC47a9aseLX4VstF8Z6Yaa0TKPZrBVBf8fna1nO16Xm9vOd0y6/p5ayvablqrxOAyhm6O2CDDTYIa621Vnj66adbvW/SpEnJRUqaxN/He2TGe/m29OSTTza/P611AsV+rQDqKz4fp0yZklxNvK3n9dZbbx26dOnS6jk9f/785CJmS75OLG99URrrBKByhu4OOuCAA8I999yz2K00HnrooeQL10EHHdT82LBhw8KKK64YfvaznzU/FkvWL37xi+Sb54EDB6a6TqC4rxVAfR144IFh4cKFYcyYMc2PxUO5x44dGwYMGBB69+4devXqldzy76abbgoffvhh83I33nhjmDNnzmLP6XLWF6WxTgAq16Ud/09hXHHFFeH9999vvmLnuHHjkvvkRj/84Q+TL2ann356uP3228OgQYPCCSeckHwRu/jii8M222wThg8f3ryuDTfcMIwcOTJ5X7wH74477hjuuuuu8Pjjj4df/vKXyb0xm6SxTqC4rxVN32RPnz49qejRY489Fs4777zk94cddljo06dPTf6uoIji0BoH3NNOOy251d/mm28err/++jBt2rRwzTXXNC93/vnnJz9Y22233ZL7ZcfXkUsuuSQMGTIkDB06tOL1pbVOACpUKrAXXnghnjRZmjhx4lLf36dPn+T9S/s1derUxdYzZMiQUo8ePUqrrbZa6ZBDDinNmjWr1foWLlxYuuCCC5L1du3atdS3b9/STTfd1Oa2VXudcZkzzjijgr8hIFqwYEHyvL/22msz+1qx2267tbmNDz/88GLLHnPMMaX+/fu3428KOPDAA0t77713q8fnzp1bOumkk0rrrrtuqVu3bqUdd9yxdP/997da7vHHHy8NHDiwtNJKK5XWWmut0ogRI0qzZ89u9/rSWmd09tlnlzbccMMy/lYAiq1T/E8oqBdffDE532nixIlh5513Dnm38cYbh0MPPbS5bgHliYdcxvMir7322lYFOY+OPfbY8Mwzz4Snnnqq3psCmRNrcTyU+/777w95N2rUqOR1seUpLgC05pxuAAAASImhGwAAAFJi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AKC+DN0A7TR37tzk8O0lxUPCm94ff0VtLdf0/nLX1/JtOesEAKC+DN0A7RRv6RVv8bWkefPmNb+/6d7ebS3X8t7f5ayv5dty1gkAQH25ejlAO8VDud94441Wjzcd/h3vtR3vjd3ysSWXi8tUsr6m5cpdJwAA9aV0A7RTvGjZlClTkquJt/Tkk082vz/e7qtLly7J7bpamj9/fnJhtLhMJeuLKlknAAD1ZegGaKcDDzwwLFy4MIwZM6b5sXjI99ixY8OAAQNC7969Q69evcLgwYPDTTfdFD788MPm5W688cYwZ86ccNBBB1W0vqiSdQIAUF8OLwdopzgIxwH3tNNOC2+99VbYfPPNw/XXXx+mTZsWrrnmmublzj///DBw4MCw2267JffgnjFjRrjkkkvCkCFDwtChQyteXyXrjK644orw/vvvN1/VfNy4ccny0Q9/+MNkiAcAIB2dSqVSKaV1A+TGKqusEkaPHh1OPPHEVhcuO+uss5Lq/Pe//z1su+224dxzzw177733YstNmDAhnHLKKeF///d/k3UdfPDB4cILL0x+3571VbLOjTfeOEyfPn2pn9fUqVOT97f07W9/O7z77rth/PjxFf89AQCwOEM3QAeG7jwydAMAVI9zugEAACAlhm4AAABIiaEboExFORunKJ8nAEAtGLoByrDyyiuH9957LxRBPJ87fr4AAHScoRugDLvvvnu4/fbbk/tg59mrr74aHnvssTBo0KB6bwoAQC64ejlAGZ555plkEP3c5z4X9t9//7D66quHTp06hbyIXwpef/31cOeddyaf48SJE5O3AAB0jKEboEzPPvtsuPzyy5MS/PHHH1f0/86fPz988MEHYY011ggrrLBCatsYtyv+as/AHLdt6NCh4d///d/Deuutl8r2AQAUjaEboAYuvfTScNppp4WPPvoodO6c3pk9d999dxg2bFh48803Dc4AAA3AOd0ANfDXv/41bL755qkO3NEmm2ySvJ02bVqqHwcAgPIYugFqNHRvscUWqX+cjTfeOHk7derU1D8WAADLZ+gGqIF33nknrLPOOql/nFVWWSV06dIlOX8cAID6M3QD1MCnn34aunbtWpOPlaerqgMAZJ2hGyBnQzcAAI3D0A1QI4sWLarJcL9gwYKw4oorpv6xAABYPkM3QA3E87lnzZqV+seZMWNGiHeC7NOnT+ofCwCA5TN0A9RAvGf2zJkzU/84TVctb7qKOQAA9WXoBqiBDTbYILz++us1uTVZvBf4RhttlPrHAgBg+QzdADWw/fbbh1deeSW8++67qX6cRx99NOywww6hW7duqX4cAADKY+gGqIGvfOUryduJEyemeqG23//+92Hw4MGpfQwAACpj6AaogXiOdTyvO5botEyePDm8/fbbhm4AgAZi6AaogU6dOoVvfOMb4eabb05u6ZWGn/3sZ2HDDTcMu+66ayrrBwCgcoZugBo56qijkiuY33///VVfdyzcv/zlL8OIESPcoxsAoIF0KsUbugJQswuqrbnmmmH8+PFJ/a6Wk08+OVxxxRXJFdLj+gEAaAxKN0ANjR49Ojz00EPhN7/5TdXWOWnSpHDJJZeEM88808ANANBglG6AGttvv/3Cn/70p/DCCy+EVVddtUPrmjNnTthpp53CyiuvHJ544onQpUuXqm0nAAAdp3QD1Nhll10WZs+eHfbff/8wd+7cdq8nrmPo0KFhxowZ4brrrjNwAwA0IEM3QI1tuumm4Z577kkOCz/44IPDO++8kxxu/tFHH5W9jnju9pAhQ5JaHs8P79u3b6rbDABA+xi6Aepgl112CXfeeWd4+OGHw1ZbbRW++c1vho022ig5N3tZw3cs4+edd174whe+EKZPnx7+8Ic/hAEDBtR02wEAKJ9zugHqaNq0acnAPXny5ObHVllllTB8+PBwwQUXJIN1vB3Y888/nxTtOKTPmzcvnHDCCeGss87q8DnhAACky9ANUGd33313GDZsWKvH99xzz+RK51G89/bAgQPD4MGDw7e+9a2wxRZb1GFLAQColKvuANRZy/t1x9+vttpq4Xvf+14455xzwhtvvBHiz0bXX3/95ArlAABki6EboM5ixY7iPbbPOOOMcMwxx4QePXokj22++eZ13joAADrC4eUAdfbpp5+G++67L+y1117NwzYAAPlg6AYAAICUuGUYAAAApMTQDQAAACkxdAMAAEBKDN0AAACQEkM3AAAApMTQDQAAACkxdAMAAEBKDN0AAACQEkM3AAAApMTQDQAAACkxdAMAAEBKDN0AAACQEkM3AAAApMTQDQAAACkxdAMAAEBKDN0AAACQEkM3AAAApMTQDQAAACkxdAMAAEBKDN0AAACQEkM3AAAApMTQDQAAACkxdAMAAEBKDN0AAACQEkM3AAAApMTQDQAAACkxdAMAAEBKDN0AAACQEkM3AAAApMTQDQAAACkxdAMAAEBKDN0AAACQEkM3AAAApMTQDQAAACkxdAMAAEBKDN0AAAAQ0vH/AaaaIZ+F+nilAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "G1 = bf.compress_trajectories([([4,0],1),([0],1)], 3)\n", "\n", "T = [([0,1],1),([1],1),([2,0,1],1),([3,0,1],1)]\n", "G2 = bf.compress_trajectories(T, 2)\n", "\n", "bf.plot_trajectory(bf.product_of_trajectories(G1, G2), show = True);" ] }, { "cell_type": "markdown", "id": "87450abc", "metadata": {}, "source": [ "This is Figure 11c from the manuscript." ] }, { "cell_type": "code", "execution_count": 12, "id": "a84ab68c", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.465685Z", "iopub.status.busy": "2026-03-29T02:41:19.465622Z", "iopub.status.idle": "2026-03-29T02:41:19.504234Z", "shell.execute_reply": "2026-03-29T02:41:19.504021Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAP+NJREFUeJzt3Qu8VFWhP/B1eCOIqCkqJL7LUPEBkt4SLEUTxUqwB5GW5s13D25ekS6aSle9kYqJjwxMU/NRvlJvplRqJmiYF+OqKBBPRUgU5c38P2vd/5w4cA6cA2czM3u+389nOHP2rLP2mpnDmv07a629awqFQiEAAAAAza5F81cJAAAAREI3AAAAZEToBgAAgIwI3QAAAJARoRsAAAAyInQDAABARoRuAAAAyIjQDQAAABkRugEAACAjQjcAAABkROgGAACAjAjdAAAAkBGhGwAAADIidAMAAEBGhG4AAADIiNANAAAAGRG6AQAAICNCNwAAAGRE6AYAAICMCN0AAACQEaEbAAAAMiJ0AwAAQEaEbgAAAMiI0A0AAAAZEboBAAAgI0I3AAAAZEToBgAAgIwI3QAAAJARoRsAAAAyInQDAABARoRuAAAAyEirrCoGIDurV68Os2fPDsuXLw950759+9CtW7dQU1NT6qYAZWbJkiVh/vz5Yc2aNSFPWrRoEXbcccfQqVOnUjcFyIDQDVBBCoVCuOyyy8JPfvKT8Oabb4a86t69e7jwwgvDv/7rv5a6KUAZWLBgQTjjjDPCI488ElasWBHyqFWrVuGoo44KN998c/rDI5AfNYV4BAdARfjP//zPFEbPPvvsMGDAgNChQ4eQJ/EjafHixeGXv/xluOOOO9LtS1/6UqmbBZRQHNU+5JBDwrx581L/t//++6eAmrfZS1OnTg1XXHFFaNOmTXj55ZfTVyAfhG6AChG769133z2NhPz0pz8NeX+uxxxzTBrR+v3vf1/q5gAl9Oyzz4bDDz88/O53vwuf/vSnQ5698MILoVevXuHRRx8Nxx57bKmbAzQTJ1IDqBDvvPNOmDlzZujfv3/Iu7ie++ijjw5/+ctfSt0UoMQmT54cWrZsGfr16xfy7uCDDw7bbrttes5AfgjdABWiuI4xnmisGsTnmde1m0DjrVy5MrRt2zYF72r4g+NWW22l74OcEboBciCexfyCCy4Iu+yySwqrffr0CY8//nidMr/97W/DaaedFvbbb7908Lrbbrs1WN/ll18eBg4cGLp06ZIOAi+++OJ6y73yyivh29/+dpr62a5du1R2xowZ9ZaN67S/8pWvhL333juVq4ZRKyCffV80Z86ccPLJJ4fOnTuns46feOKJ4Y033liv3NixY8PgwYPDrrvumuo89dRTN/NZA5VG6AbIgXgQN3r06DBkyJBwzTXXpAPL4447Ljz99NO1ZYonJttmm23SAeqGjBgxIkyaNCkcdNBBG11ree2114b33nsv7LvvvhssGw88H3jggfDhD384TZ8EqNS+L1667Mgjjwx/+MMfwvDhw8Mll1ySpoT37ds3LFy4sE7ZeHK0J598MvTo0SN3J4ADGkfoBqhwEydODHfddVf44Q9/GK666qp0WZ14gBcvu/W9732vttyoUaPCu+++G5555pnQs2fPDdY5ffr0dKbg22+/fYPl4ohQXGv+P//zP+mgd0Nuu+22dGby2LaNHfgClHPfd/3114fXXnstPPzww2lfccZPHFGPP/ujH/2oTtkYzN9+++10crQ4TR6oPkI3QIW799570+hOPOAsilO943TKOBI9a9astC0G3datWzeqzg1Nv1zbdtttF7beeutGlY0j3C1a+NgBKr/vi/vu3bt3uhV99KMfTWdXv/vuu+uUjX8EiNPKgerl6AegwsUpjfvss09aU7i2Qw89NH198cUXS9QygPz1ffG64S+99FK6tNe64r5ff/31tOQGoEjoBqhwcTrjzjvvvN724ra5c+eWoFUA+ez7Fi1alE7gpt8FGkvoBqhwS5curXedYJxmWXwcIG9K1fcV69XvAo0ldANUuHiZnDjqsq5ly5bVPg6QN6Xq+4r16neBxhK6ASpcnM4Yp1muq7jNmcKBPCpV3xdPIBlHufW7QGMJ3QAV7sADDwyvvvpquiTO2p577rnaxwHyplR9X7wKw/777x+ef/759R6L+95jjz0afVUHoDoI3QAVbtCgQWH16tXhpptuqt0Wpz2OGzcu9OnTJ12qCyBvStn3xX1PmjSpTvB+5ZVX0nXCBw8enNl+gcrUqtQNAGDzxIPLeJB34YUXhrfeeivstdde4dZbbw0zZswIt9xyS225eImbBx98MN2fNm1aWLx4cbjsssvS9z179gwnnHBCbdnbbrstzJw5M3zwwQfp+z/+8Y+1ZYcOHZquOxvFOsaMGZPuP/PMM+nrddddFzp37pxu55xzTm2dsY54ixYsWBDef//92jqPOOKIdAOohL7vrLPOCjfffHMYMGBAGDZsWLoO+OjRo0OXLl3Cd7/73TrtfOihh8Jf//rXdH/lypWpPcU6Bw4cGA444ICMXymg5AoAVIT58+cXYrf94IMPrvfY0qVLC8OGDSvstNNOhbZt2xZ69+5deOyxx+qUGTduXPr5+m6nnHJKnbJ9+/ZtsOyECRNqy02fPr3Bct27d69T58iRIxssGx9b15gxY9JzAarb1VdfXdhqq63qfaxUfV80a9aswqBBgwqdOnUqdOzYsXD88ccXXnvttfXaGPfRUJ2xbevq2rVr4eKLL97EVwsoRzXxn1IHfwA27s033ww77bRTGrFZe2Qmr+KIeRxBKp4NGKhO11xzTRg+fHiaHVMNunXrFr7xjW+EkSNHlropQDOxphsAAAAyInQDAABARoRugApTLauCquV5AhtXTf1BNT1XqBZCN0CF6NChQ/q6aNGiUA3i8+zYsWOpmwGUQd8Xz+1QPKN4nq1atSqdXb3Y3wP5IHQDVIgYQA855JBw++23p2vT5lk8uL7nnntCv379St0UoMT69u2bRn9j35d3v/rVr9IJ4/R9kC/OXg5QQR544IFw0kknhf333z8ce+yxuRsJjh9J77zzTjpD+5w5c8KTTz6ZrsULVLd4jew777wzXdc6Xlu7VatWIU/iH1JffvnlcP/994f+/funPrCmpqbUzQKaidANUGGeeOKJMHbs2DBp0qSwfPnykDft27cPn/zkJ8N5550XevXqVermAGUy7fraa69NM2BmzpwZ1qxZE/KkRYsW6VJhn/vc58J3vvOd0LZt21I3CWhGQjcAAABkxJpuAAAAyIjQDQAAABkRugEAACAjQjcAAABkROgGAACAjAjdAAAAkBGhGwAAADIidAMAAEBGhG4AAADIiNANwAYtXLgwfP3rXw/Lly8vdVMAtphf/vKXYdy4caVuBpADQjcAG/TSSy+lA885c+aUuikAW8x9990X7rzzzlI3A8gBoRsAAAAyInQDAABARoRuAAAAyIjQDQAAABkRugEAACAjQjcAAABkROgGAACAjAjdAAAAkBGhGwAAADIidAMAAEBGhG4AAADIiNANAAAAGRG6AQAAICNCNwAAAGRE6AYAAICMCN0AAACQEaEbAAAAMiJ0AwAAQEaEbgAAAMiI0A0AAAAZEboBAAAgI0I3AAAAZEToBgAAgIwI3QDUa/Xq1WHixInh5ZdfTt//5S9/CZMnTw6FQqHUTQPIzJtvvhmeffbZsHDhwvDOO++k+3Pnzi11s4AKVlNw9ARAPW699dZw6qmnrrd9woQJoV+/fiVpE0DW+vTpk/7guLa99947vPrqqyVrE1DZjHQDUK/PfOYzoW3btnW27bDDDuHjH/94ydoEkLXBgwfX+b6mpiacfPLJJWsPUPmEbgDqteOOO4ZzzjkntGjxz4+K73//+6Fdu3YlbRdAls4888yw7bbb1n7fvn378O1vf7ukbQIqm9ANQIO+973vhZYtW6b72223XfjGN75R6iYBZKpDhw5h+PDhtd/HwL399tuXtE1AZRO6AdjgaPfnPve5dD+OehvlBqpltLt169Zppo9RbmBztdrsGgDItdGjR4f33nsvXHDBBaVuCsAWG+2+8sorU99nlBvYXM5eDgAAABkxvRwAAAAyInQDAABARoRuAAAAyIjQDQAAABkRugEAACAjQjcAAABkROgGAACAjAjdAAAAkBGhGwAAADIidAMAAEBGhG4AAADIiNANAAAAGRG6AQAAICNCNwAAAGRE6AYAAICMCN0AAACQEaEbIAeWLFkSRo4cGY499tiw3XbbhZqamjB+/Ph6y06dOjWV69ixYyo7dOjQsGDBgvXKXX755WHgwIGhS5cuqb6LL7643vpeeeWV8O1vfzscfvjhoV27dqnsjBkzGmzrgw8+GA4++OBUdtddd03tXrVqVciT5cuXhwsuuCDssssuoX379qFPnz7h8ccfr1Pmt7/9bTjttNPCfvvtF1q2bBl22223Butbs2ZNuPLKK8Puu++eXrcDDjgg3HnnneuVmzhxYjjrrLPCIYccElq3bp3ei4aMHTs2DB48OL0Hsdypp566mc8atqxK6fd++ctfhq985Sth7733TuX69eu3mc8cqDRCN0AOvP322+EHP/hBOrDs2bNng+Vmz54djjjiiDBt2rQwatSoMGzYsPCb3/wmHH300WHFihV1yo4YMSJMmjQpHHTQQRvc97PPPhuuvfba8N5774V99913g2UfffTR8NnPfjZ07tw5jBkzJt2/7LLLwrnnnhvyJAbY0aNHhyFDhoRrrrkmherjjjsuPP3007Vl7rjjjnTbZpttUjjfkIsuuiiF+Pg+xdctBuUvf/nL4a677qpT7pFHHgk//elP04H9HnvsscE6r7jiivDkk0+GHj16hFatWm3mM4Ytr1L6vfgHrgceeCB8+MMfDttuu20TnyWQCwUAKt6yZcsK8+bNS/cnTZpUiN37uHHj1it35plnFtq3b1+YOXNm7bbHH388lb/xxhvrlJ0+fXr6umDBgvT4yJEj6933woULC++++266f9VVV6WyxZ9d18c+9rFCz549CytXrqzddtFFFxVqamoKU6dOLeTBc889l16D+FoULV26tLDnnnsWDjvssNptc+bMKaxYsSLdHzBgQKF79+711jd79uxC69atC2effXbttjVr1hQ++clPFrp161ZYtWpV7fb58+cXPvjgg3Q/lt/Qx/yMGTNSPVGHDh0Kp5xyymY9b9jSKqXf+/vf/15YvXp1ut+jR49C3759N/k5A5XJSDdADrRt2zbstNNOGy133333heOPPz6NlBYdddRRYZ999gl33313nbIbmu68tjhVc+utt95oub/97W/pdsYZZ9QZWY3ToQuFQrj33ntDHsTnEUe24/MsitNP41TyODo2a9astC2Obscp4BsTR8hWrlyZXqeiOJJ95plnphG8WGdRnBIbp7M3Rvfu3Tc4/RzKXSX0e1Ec4W7RwiE3VDM9AECVmDNnTnjrrbdCr1691nvs0EMPDZMnT850/8X6191/DJ/dunXLfP9bSnwe8WC+U6dO673G0Ysvvtjk+jp06LDeFNZifXl53SCP/R5AJHQDVIl58+alrzvvvPN6j8VtixYtSicAK9X+586dG/IgPs+GnmPU1OcZ6yue1Kk56oNqUup+DyASugGqxNKlS2unZK4rTn9eu0wp9p/lvrek+Dya8zVu7vqgmpS63wOIhG6AKlFc61vfqM6yZcvqlCnF/rPc95YUn0dzvsbNXR9Uk1L3ewCR0A1QJYrTK4vTLdcWt8UTA9U3GrSl9r+xy2ZVivg8G3qOUVOfZ6xv/vz56WRzzVEfVJNS93sAkdANUCW6du0adthhh/D888+v99jEiRPDgQcemOn+i/Wvu/+4JjmehTvr/W8p8Xm8+uqr4d13362z/bnnnqt9vKn1ffDBB+laxM1RH1STUvd7AJHQDVBFTjrppPDwww/XXrYqeuKJJ1JIHDx4cKb77tGjR/joRz8abrrpprB69era7WPHjk0nCRs0aFDIg/g84vOLz7MoTm0dN25c6NOnT7p8UFOceOKJ6dJi119/fe22OOp9ww03pEBx+OGHN2v7IW9K2e8BRP+8UCoAFe26664L77zzTu3ZrB966KE0ghyde+65YZtttgnDhw8P99xzTzjyyCPD+eefH5YsWRKuuuqqsP/++4evfe1rdeq77bbbwsyZM9Moa/THP/4xXHbZZen+0KFD03Weo8WLF4cxY8ak+88880xtWzp37pxu55xzTm2dcV8DBw4M/fv3D1/84hfDlClTUtnTTz99vUtiVaoYrOOB/IUXXpguVbTXXnuFW2+9NcyYMSPccsstteVeeuml8OCDD6b706ZNS69j8fXt2bNnOOGEE9L9eDm1b33rW+m1i9fr7t27d7j//vvDU089FX7xi1+ka4IXxfcrvm9RcWSvWGd8v+L7VhR/P/7617+m+7He2J5i2fgeHXDAAZm/VlAN/V6sI96iBQsWhPfff7+2ziOOOCLdgJwrAJAL3bt3j4t+671Nnz69ttyUKVMK/fv3L2y11VaFzp07F4YMGVKYP3/+evX17du3wfomTJhQWy7W3VC52KZ1/frXvy4ceOCBhbZt2xa6detWGDFiRGHFihWFPFm6dGlh2LBhhZ122ik9z969excee+yxOmXGjRvX4Ot2yimn1Cm7evXqwqhRo9Lr2aZNm0KPHj0Kt99++3r7je9LQ3XG93NtcR8NlY1tg0pQCf3eyJEjGywbHwPyryb+U+rgDwAAAHlkTTcAAABkROgGAACAjAjdAAAAkBGhGwAAADIidAMAAEBGhG4AAADIiNANAAAAGRG6AQAAICNCNwAAAGRE6AaAKrN8+fKwatWqUjcDAKqC0A0AW8CaNWtCoVAI5WDEiBGhR48eYc6cOaVuCgDkntANABmOKD/00EPh85//fGjdunU4+eSTQzk488wzw9KlS8ORRx4peANAxoRuAGhms2bNCkOHDg3bb799GDhwYPj1r3+dRrr79u0bysEee+wRfv/734dly5YJ3gCQsZpCucx1A4Cc+OUvfxm++MUv1tnWpk2bsGjRotChQ4dQLt54443Qr1+/0K5duzBhwoTQtWvXUjcJAHLHSDcANLM4jfy8886r/b5ly5bhhBNOKKvAHRnxBoDsCd0A0Mzmzp0bHnnkkbD11lun71evXl0267nXJXgDQLaEbgA2KoZGGieG1hhe40nUJk+eHL7//e+HXXfdNQwYMCCUK8Eb1hfPwxBvAJvLmm4ANuhvf/tb6NWrV5g9e3bYbrvtSt2cigjcMbzGEBvDbBQ/amtqakK5s8Yb/un8888P77zzTrj11ltL3RSgwhnpBmCD3nzzzXR5qXjwSdMDd1QJgTsy4g3/NG/evHQD2FxCNwBkGLgrjeANAM1L6AaAzZCnwF0keANA8xG6AWAT5TFwFwneANA8hG4A2AR5DtxFgjcAbD6hGwCaqBoCd5HgDQCbR+gGgCaopsBdJHgDwKYTugGgkaoxcBcJ3gCwaYRuAGiEag7cRYI3ADSd0A0AGyFw/5PgDQBNI3QDwAYI3OsTvAGg8YRuAGiAwN0wwRsAGkfoBoB6CNwbJ3gDwMYJ3QCwDoG78QRvANgwoRsA1iJwN53gDQANE7oB4P8TuDed4A0A9RO6AUDgbhaCNwCsT+gGoOoJ3M1H8AaAuoRuAKqawN38BG8A+CehG4CqJXBnR/AGgP8jdANQlQTu7AneACB0A1CFBO4tR/AGoNoJ3QBUFYF7yxO8AahmQjcAVUPgLh3BG4BqVVMoFAqlbgQA5ef1118PY8aMCTNnzgz3339/GDp0aOjSpUv43ve+F3bYYYdQaQTu8vDGG2+Efv36hXbt2oUJEyaErl27lrpJUMcvfvGL8Oc//zk89thjYfny5eHEE08MPXv2DKeffnqpmwZUKKEbgHr96le/CieddFJo0aJFWLNmTe3X559/PhxyyCGhkgjc5UXwppx96lOfSr+XNTU16ft4qHzwwQeHF154odRNAyqU6eUA1GvgwIFht912SwecUTwA/cQnPiFws9lMNaecXXDBBelr7PuK/V+c4QOwqYRuAOrVqlWrcMkll9QedK5evTpceumloZII3OVL8KZc9e/fP/Tq1av2+3322ScMGjSopG0CKpvp5QA0aNWqVaFbt27hzTffTAehkyZNCpVC4K4MpppTjv77v/87HHvssen+XXfdFb7whS+UuklABTPSDcAGR7vPPvvsdP/CCy8MlULgrhxGvCnX0e54wsiOHTsa5QY2m5FuADYofkz86U9/Cv/yL/8SKoHAXZmMeFNuZs+eHVauXBl23333UjcFqHBCNwC5IXBXNsEbgDwyvRyAXBC4K5+p5gDkkdANQMUTuPND8AYgb4RuACqawJ0/gjcAeSJ0A1CxBO78ErwByAuhG4CKJHDnn+ANQB4I3QBUHIG7egjeAFQ6oRuAiiJwVx/BG4BKJnQDUDEE7uoleANQqYRuACqCwI3gDUAlEroBKHsCN0WCNwCVpqZQKBRK3Qigea1Zsyb87Gc/C/fcc0+YOXNm+j5PWrZsmQ68v/SlL4UhQ4aEmpqaUjeJDAnc1OeNN94I/fr1C+3atQsTJkwIXbt2Da+99lr4yU9+Ev7whz+E999/P+RNfK4f//jHw5lnnhkOOuigUjcHgEYSuiGHvvnNb4abbropfPrTnw4HHHBAaNWqVciTlStXhr/85S/pwPrf//3fww9/+MNSN4mMzJs3L/Tt21fgZqPB+6c//WkYNGhQaNGiRTj++OPDdtttl7s/yL377rvh0UcfDQsWLAiPP/54OPzww0vdJAAaQeiGnJk+fXoKJldffXU4//zzQ55dcskl4dJLLw1vvvlm2H777UvdHJpZ/Hj6r//6rzBmzBiBm40G78WLF4dOnTqFF198Mdf9wQcffBD+5V/+Jey8887hkUceKXVzAGgEa7ohZ+I0yzi6c9ppp4W8O/3008Pq1avTiDf5DN2HHXaYwE2j1nivWLEifO5zn8t14I622mqr8JWvfCU88cQT6f8IAOUvX3NOgfDee++F9u3bh44dO4a822GHHWqfM/kTpwn37t07tG3bttRNoQKC99Zbb13bJ+RdfJ7xjwzx5v8HQPkz0g051NA6xuXLl4cLLrgg7LLLLimY9+nTJ60LXNtvf/vbNEq+3377pROW7bbbbg3u5/LLLw8DBw4MXbp0Sfu8+OKLN3gyrJNPPjl07tw5TQE98cQT07TQ+txyyy1h3333Tes099577zS9uCnPsxo193sbT7535ZVXht133z29D/HcAHfeeWe9ZadOnRqOPfbY9IeeuI526NChac3p5tRZJFDQlD/S1NcnlKrfe+WVV8K3v/3ttO46/r7HsjNmzGiw3gcffDAcfPDBqeyuu+4aRo4cGVatWlVvWX1f6fu+iRMnhrPOOisccsghoXXr1ht9Txr7uQbkk9ANVeTUU08No0ePTmf8vuaaa9LBx3HHHReefvrp2jJ33HFHum2zzTbpIGZDRowYESZNmrTRs+guWbIknX06TgMfPnx4Wos9efLkdIKshQsX1il74403pmnjPXr0SAclcXrxeeedF6644orNfPb51tzv7UUXXZQOZI8++uj0PsQQ8OUvfzncdddddcrNnj07HHHEEWHatGlh1KhRYdiwYeE3v/lN+rk4CrcpdUIe+r1nn302XHvttWkmTgxbGxJPjvbZz342/VEy/t+I9y+77LJw7rnnNvHZVp9S9X1xPX08eV8M2xtb/uJzDYjrgYAcufrqqwsdOnRYb/tzzz0XF/8VrrrqqtptS5cuLey5556Fww47rHbbnDlzCitWrEj3BwwYUOjevXuD+5o+fXr6umDBglT3yJEj6y13xRVXpMcnTpxYu23q1KmFli1bFi688MLabR988EFh++23T/td25AhQ9JzWrRoUZ3tsZ2x3vHjxxeqWXO/t7Nnzy60bt26cPbZZ9duW7NmTeGTn/xkoVu3boVVq1bVbj/zzDML7du3L8ycObN22+OPP57ac+ONN25SnbApunTpUrj00kvLpt9buHBh4d1330334/5j2eLPrutjH/tYoWfPnoWVK1fWbrvooosKNTU1qa9c189//vNU37JlywrVrJR93/z589NnVhTLN3RI3dTPNSCfjHRDlbj33nvTCMAZZ5xRuy1Oc4tT7uKIzKxZs9K2OAoQp8o1xoam6K2777g2N96KPvrRj6ZLmt199911TgIXR77jlL21nX322emau3EElezf2wceeCBdlm3t9yGO5sRrA8eR7Vhn0X333ZcuzxRHg4qOOuqosM8++9R5b5tSJ+Sh34tLLeI6843529/+lm6xjWtf3jH+X4knSovPgfLr++LygjidfWN8rgGR0A1VIk7njkEorqde26GHHpq+xsvsZCGuj3vppZdCr1691nss7vv111+vPRFabGO0btm4Zi6u1yw+TrbvbayvQ4cO602JLdZXfB/iOv233nqrwfd27fersXVCHvq9pmio34tBsVu3bv5vlGHf19Q6I59rUN2EbqgS8+bNS9d1XVdx29y5czPZ76JFi9KJbhqz79jGOGqx44471inXpk2bdBmgrNpY6Zr7vY31FU8StaH6Yrm1t69btvjeN6VOyEO/1xQb+39UDm0sV6Xq+5pap881QOiGKrF06dJ6zwQdp+IVH89qv1Fj9h2/xgOR+sSyWbWx0jX3e9vY+pr63pbi94/qVgm/dxv7f1QObSxXper7mlqnzzVA6IYqEdeeFUcd17Zs2bLax7Pab9SYfcev657xeu2yWbWx0jX3e9vY+pr63pbi94/qVgm/dxv7f1QObSxXper7mlqnzzVA6IYqEafHFacxrq24bWOXUdlU8WRCceSgMfuObVy9enVaJ7y2eMAST0STVRsrXXO/t7G++fPnp5M4bai+4pTLhvZdfO+bUifkod9rio39PyqHNparUvV9Ta3T5xogdEOVOPDAA8Orr74a3n333Trbn3vuudrHsxBPFLP//vuH559/fr3H4r7j9U2LZ/gttmHdsvH7eEK2rNpY6Zr7vY3lP/jggzB16tQN1te1a9ewww471PveTpw4sc5+G1sn5KHfa4qG+r241jeeMbsc2liuStX3NbXOyOcaVDehG6rEoEGD0l/bb7rpptptcRrduHHjQp8+fcKHP/zhTPc9adKkOgcdr7zySnjyySfD4MGDa7d96lOfSqOjY8eOrfPz8futttoqDBgwILM2VrLmfm9PPPHEdHmd66+/vnZbHPm54YYbUtA+/PDDa7efdNJJ4eGHH669NE/0xBNPpAPhtd/bptQJeej3GqtHjx7pEoqxjbGta/d78YRe8TlQfn1fY/lcA6J/XhASyLV4ABJD0IUXXpimue21117h1ltvDTNmzAi33HJLbbl4ea8HH3ww3Z82bVpYvHhxuOyyy9L3PXv2DCeccEJt2dtuuy3MnDkzjQxEf/zjH2vLDh06NHTv3j3dj9cnvfnmm9PBxbBhw9JBzejRo9NZYr/73e/W1hfXtl166aXp+qWxrcccc0x46qmnwu233x4uv/zydOBC9u9tvEzRt771rXDVVVela9bG66vff//96b34xS9+kc7EWzR8+PBwzz33hCOPPDKcf/75YcmSJenn4uyGr33ta7XlmlIn5KHfi3WMGTMm3X/mmWfS1+uuuy507tw53c4555zaOuP/i4EDB4b+/fuHL37xi2HKlCmp7Omnn77e5asoj74v/g7E34Wo+AflYp3xdyD+LkQ+14CkAOTK1VdfXejQoUO9jy1durQwbNiwwk477VRo27ZtoXfv3oXHHnusTplx48bFxWz13k455ZQ6Zfv27dtg2QkTJtQpO2vWrMKgQYMKnTp1KnTs2LFw/PHHF1577bV623nTTTcVPvKRjxTatGlT2HPPPQs//vGPC2vWrFmv3IoVK9K+xo8fX6h2zf3erl69ujBq1KhC9+7d0/vQo0ePwu23317v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320dN5B3RrqBXKuU9d0bWsctcANNGfGupPXd1nED1UDoBnKtEtZ3b2gdt8ANbErwroT13dZxA9XC9HIg1+JB3M033xx23HHHcPLJJ6fwumbNmjBz5syStiuOQC1evDjd/8lPfhLuu+++MG7cOIEbaJap5vGxn/3sZ+Hee+8N119/fdoW+5zY95RS7HtjHxzbHPvkLl26hJtuukngBnJN6Aaqan33OeecE44//vgUbl977bWStWnQoEHpoDgG7vrWcQvcwOYG77XXd8e+JvZ7se8plVdffTW14YQTTkgnebOOG6gWppcDVSOeUO1HP/pRaNGiRRppueOOO8KXvvSlLd6O2O1uvfXW4f3330/f77zzzuH1118P7du3T98L3EBzTTWP/UxcVjN//vz0fceOHdPVHUoxshz73CFDhtT2wf/2b/8Wrrzyyi3eDoAtzUg3UBXGjx8ffvzjH6f78WCvVatW4a9//WvJplcWA3c0b968cOyxx4aVK1cK3ECzjXi/9dZbYZ999qkN3NGSJUvC3//+95K0Mfa5se+NfXA0evTo1DcD5J3QDVSFOK0xHui1bNkyfb9q1ap0YrVSqC/sz5gxI013F7iB5gjeRxxxRLrNnTt3vXKl+oNj7HNj3xvFvnj16tWpbwbIO6EbqAqjRo1K18GOI8pF8dJcpfDYY4/V3t9ll13CjTfemA6UP/vZzwrcwGaJfccDDzwQZs2aFV555ZW0LV6KMC5jKYpXcyiFtfvc2BfHPjn2zQB5J3QDVeOQQw4JDz/8cDrQ23///dOISylOaxGndrZt2zad2Gj69OlhwIAB4ZhjjhG4gc22YsWKcOqpp9aOKEdvv/12eOihh8J1112X+p5STC+PfW0c2Y59b+yDY18c+2SAauBEakDVit1fKU4mVOx2476t4Qaa08KFC1OYjeeOKE7hjuJZzK+55po6/U+19LkApSZ0A5SIwA1kIZ6/YuLEielyXLfffntYsGBBuixXvE43AFue0A1QIn369ElnLhe4gSwD+COPPBL+8Y9/hKFDh5a6OQBVSegGKJFf//rXaRrorrvuWuqmAACQEaEbAAAAMuLs5QAAAJARoRsAAAAyInQDAABARoRuAAAAyIjQDQAAABkRugEAACAjQjcAAABkROgGcmnJkiVh5MiR4dhjjw3bbbddqKmpCePHj6+37NSpU1O5jh07prJDhw4NCxYsWK/c5ZdfHgYOHBi6dOmS6rv44osb3P+cOXPCySefHDp37hw6deoUTjzxxPDGG2+sV27s2LFh8ODBYdddd011nnrqqZv5zIFqVil9X3TLLbeEfffdN7Rr1y7svffeYcyYMZvxzAHKl9AN5NLbb78dfvCDH6SDyp49ezZYbvbs2eGII44I06ZNC6NGjQrDhg0Lv/nNb8LRRx8dVqxYUafsiBEjwqRJk8JBBx200YPeI488MvzhD38Iw4cPD5dcckmYPHly6Nu3b1i4cGGdsldccUV48sknQ48ePUKrVq0281kD1a5S+r4bb7wxnH766anvi2H7sMMOC+edd17qEwHyxhEekEs777xzmDdvXthpp53C888/H3r37l1vuXiw+f7774cXXnghjTZHhx56aDrwjKNDZ5xxRm3Z6dOnh9122y0d1O6www4N7vv6668Pr732Wpg4cWLtfj/zmc+E/fbbL/zoRz9K+yyKB6fFUe442gSQ975v6dKl4aKLLgoDBgwI9957b9r2jW98I6xZsyZceumlad/bbrtts74uAKVkpBvIpbZt26aDzo257777wvHHH1970BkdddRRYZ999gl33313nbLxoLMx4kFkPOBc+2D3ox/9aPj0pz+9Xp3du3dPgRugWvq+CRMmpJHvs846q87Pn3322ekPAXHEHSBPhG6gasW1h2+99Vbo1avXeo/FEZ84LbKp4kjNSy+91GCdr7/+enjvvfc2uc0Ald73Fetft+whhxwSWrRosUn7ByhnQjdQteIUzOJ0zHXFbYsWLQrLly9vUp3Fn2mozmju3Lmb3GaASu/74v5btmwZdtxxxzrl2rRpE7bffnt9JJA7QjdQteK6wuJ0zHXFs+muXaaUdQLkqe+LX2PArk8sq48E8kboBqpW+/bt09f6RnSWLVtWp0wp6wTIU98Xv657hvS1y+ojgbwRuoGqVZzyWJxquba4LV63tr5Rmw0p/kxDdUa77LLLJrcZoNL7vrj/1atXp3Xla4tBPJ5gTR8J5I3QDVStrl27psvfxMvqrCte8ubAAw9scp3xJED7779/vXU+99xzYY899ghbb731JrcZoNL7vmL965aN38cTsm3K/gHKmdANVLWTTjopPPzww2HWrFm125544onw6quvhsGDB29SnYMGDQqTJk2qc0D5yiuvhCeffHKT6wTIS9/3qU99Ko2Mjx07ts7Px++32mqrdP1ugDypKRQKhVI3AiAL1113XXjnnXfSmXDjwdznP//5cNBBB6XHzj333LDNNtukA864rXPnzuH8888PS5YsCVdddVXo1q1bOnhce4rlbbfdFmbOnBk++OCD8MMf/jAceeSR6eAxGjp0aLrmdhQvixPrjF+HDRsWWrduHUaPHp2mU7744otphKnooYceCn/961/T/UsvvTT06NEjtTMaOHBgOOCAA7boawZUvkro+66//vp0Xe4Y1I855pjw1FNPhZ///Ofh8ssvD8OHD9/irxlApmLoBsij7t27xz8q1nubPn16bbkpU6YU+vfvX9hqq60KnTt3LgwZMqQwf/789err27dvg/VNmDChTtlZs2YVBg0aVOjUqVOhY8eOheOPP77w2muvrVfnKaec0mCd48aNy+iVAfKsEvq+6Kabbip85CMfKbRp06aw5557Fn784x8X1qxZk8ErAlBaRroBAAAgI9Z0AwAAQEaEbgAAAMiI0A0AAAAZEboBAAAgI0I3AAAAZEToBgAAgIwI3QAAAJARoRsAAAAyInQDAABARoRuAAAAyIjQDQCQc7fffnv46le/WupmAFQloRughI466qhwzDHHhKeeeiqsWbOm1M0Bcmj8+PEpcG+33XalbgpAVaopFAqFUjcCoFp17949/P3vf0/3d9hhh3DyySeHIUOGhMMOO6zUTQNyEri//vWvh2984xth7NixoUUL4y0AW5rQDVBC8SD4rLPOqv2+pqYmxG557ty5Yeeddy5p24DKJnADlAe9L0AJDRo0KAXtohi4L7roorDTTjuVtF1AZRO4AcqHHhighOKU8r59+9bZtueee9YJ4gBNIXADlJdWpW4AQLX78pe/HH7/+9+H4cOHh7feeiucdtppKXSfeuqppW4aUGEEboDyI3QDlFg8QO7Zs2fo3bt3ml4eA3fcFgneQGMJ3ADlSegGKLGWLVuGQw89NN2PgfuGG25I9wVvoLEEboDyJXQDlJl4sCx4A40lcAOUN6EboAwJ3kBjCNwA5U/oBihTgjewIQI3QGUQugHKmOAN1EfgBqgcQjdAmRO8gbUJ3ACVRegGqACCNxAJ3ACVR+gGqBCCN1Q3gRugMgndABVE8IbqJHADVC6hG6DCCN5QXQRugMomdANUIMEbqoPADVD5hG6ACiV4Q74J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MSJMmjQpHHTQQc387AGAtdUUCoVCnS0AwCabOHFiGtm+6qqrUuiNli1blka0d9xxx/CnP/0pbZs7d27YYYcdQuvWrcPxxx8fpkyZEmbMmLFefXPmzEkj3GeccUa47rrr0rb40d23b98wffr09DMx1EdnnXVWGD9+fPjf//3fFMyj3/3udyl033jjjamOovhzcXT97bffTu0YOXKk0W4AyICRbgBoRvfee28KwWsH3DglPE4lf/bZZ8OsWbPStji6HQP3xjzwwANh5cqVKVAXxengZ555ZhrZjnUW3XfffSnAFwN3dNRRR4V99tkn3H333XXq3dB0dgCg+QjdANCMJk+enEJup06d6mw/9NBD09cXX3yxyfV16NAh7LvvvvXWFx8vjoi/9dZboVevXuvVEcsWywEAW5bQDQDNaN68eWHnnXdeb3txW5xW3tT6iic721B9sdza29ctu2jRonSCNwBgyxK6AaAZLV26NLRt23a97XGKefHxLOorfm3OfQMAm0/oBoBmFC8RVt+IcjyZWvHxLOorfm3OfQMAm0/oBoBmFKdyF6d6r624bWOXB6uvvvnz56czlm+ovuK08ob2Ha/ZXd8oOACQLaEbAJrRgQceGF599dXw7rvv1tn+3HPP1T7e1Po++OCDMHXq1A3W17Vr13Tpr+eff77ey5g1db8AQPMQugGgGQ0aNCisXr063HTTTbXb4pTvcePGpet3f/jDH25SfSeeeGK6tNj1119fuy2Oet9www0paB9++OG120866aTw8MMP116WLHriiSfSHwEGDx682c8NAGi6VpvwMwBAA2KwjgH3wgsvTJfw2muvvcKtt94aZsyYEW655Zbaci+99FJ48MEH0/1p06aFxYsXh8suuyx937Nnz3DCCSek+926dQvf+ta3wlVXXZWu1927d+9w//33h6eeeir84he/SNcELxo+fHi45557wpFHHhnOP//8sGTJkvRz+++/f/ja175Wp5233XZbmDlzZhpFj/74xz/W7n/o0KGhe/fuW+DVAoD8qymsu0gMANgs8cRl3//+98Ptt98e/vGPf4QDDjggXHrppeGYY46pLTN+/Pj1gnDRKaeckh4vWrNmTbjiiivCjTfemNZn77333inUDxkyZL2fffnll8N3vvOd8PTTT4c2bdqEAQMGhB/96EfpsmNr69evX/jDH/5Q7/4nTJiQHgcANp/QDQAAABmxphsAAAAyInQDAABARoRuAAAAyIjQDQAAABkRugEAACAjQjcAAABkROgGAACAjAjdAAAAkBGhGwAAADIidAMAAEBGhG4AAADIiNANAAAAGRG6AQAAICNCNwAAAGRE6AYAAICMCN0AAACQEaEbAAAAMiJ0AwAAQEaEbgAAAMiI0A0AAAAZEboBAAAgI0I3AAAAZEToBgAAgIwI3QAAAJARoRsAAAAyInQDAABARoRuAAAAyIjQDQAAABkRugEAACAjQjcAAABkROgGAACAjAjdAAAAkBGhGwAAADIidAMAAEBGhG4AAADIiNANAAAAGRG6AQAAICNCNwAAAGRE6AYAAICMCN0AAAAQsvH/APTaHKndZRyVAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "G1 = bf.compress_trajectories([([3,5,2],2)], 3)\n", "\n", "T = [\n", " ([0,1,3,0,1],4),\n", " ([1,3,2,0,1,1,3],4),\n", " ([2,0,1,1,3],4),\n", " ([3,2,0,1,3,0,1],4)\n", "]\n", "G2 = bf.compress_trajectories(T, 2)\n", "\n", "bf.plot_trajectory(bf.product_of_trajectories(G1, G2), show = True);" ] }, { "cell_type": "markdown", "id": "e406c07d", "metadata": {}, "source": [ "This is Figure 11d from the manuscript." ] }, { "cell_type": "code", "execution_count": 13, "id": "36c15f9c", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.505326Z", "iopub.status.busy": "2026-03-29T02:41:19.505263Z", "iopub.status.idle": "2026-03-29T02:41:19.540167Z", "shell.execute_reply": "2026-03-29T02:41:19.539950Z" } }, "outputs": [ { "data": { "image/png": "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KqxYsSKZtv7664d//etfoUePHqGcxS8IvvKVr4Tly5cnj/PrENdp6tSppV48AKho65d6AQAgDa699trwzDPPJAH2nXfeCdOmTQuffPJJeOqpp8Kpp54aytmf//znJGRvvPHGYffddw877LBD8kVB//79S71oAFDxVLoBoEjif7GVcvGxSlpWAKgkQjcAAAAUiQupAQAAQJEI3QAAAFAkQjcAAAAUidANAAAARSJ0A0ABLV68OFxwwQVhwIABYZNNNkmuCP6b3/ymznmnT5+ezNe+fftk3uHDh4cFCxasMd8ll1wSBg0aFLbYYoukvZ/97Gf1vv7cuXPD0KFDQ+fOnUPHjh3DMcccE959990657399tvDrrvuGjbYYINknO7rr7++GWsOANRF6AaAAvrwww/DhRdemATqXr161TvfnDlzwkEHHRTefvvtcOmll4ZRo0aFRx99NBx++OFh2bJlteY9//zzw8svvxz23nvvdQb+OLb2s88+G0aPHh1+/vOfh6lTp4Z+/fqFjz76qNa8N998czjttNNCz549k7Ddt2/fcNZZZ4UrrriimVsAAFjV+rUeAQDN0rVr1zBv3ryw5ZZbhldeeSX07t27zvli0P7888/D3/72t7Dtttsm0/r06ZOE7lgZHzFiRM28M2bMCD169EgC/WabbVbva994443hX//6V5gyZUrN6379618Pu+++e7jqqquS14yqq6vDmDFjwsCBA8O9996bTPvud78bVq5cGS666KLktTfeeOOCbhcAyCqVbgAooLZt2yaBe13uu+++cNRRR9UE7uiwww4LO+20U5gwYUKteWPgbogYoGPYXjXo77LLLuHQQw+t1eakSZOSyvcZZ5xR6/dHjhyZfBEQK+4AQGEI3QDQwuJ51x988EHYd99913guVrtjl/DGilXq119/vd4233nnnfDZZ58lj/Ptrz7vPvvsE9Zbb70mvT4AUDehGwBaWOx+nu+Kvro4beHCheGLL75oVJv536mvzej999+vef1WrVqFzTffvNZ8bdq0CV26dKmZDwBoPqEbAFpYPKc63xV9dfFK4qvOU4w2488YsOsS523sawMA9RO6AaCFbbjhhsnPuqrZS5curTVPMdqMP1e/Qvqq8zb2tQGA+gndANDC8t29893MVxWnxTG766pYr03+d+prM9pqq61qXn/FihXJeeWrikE8XmAtPx8A0HxCNwC0sK233joZ+isOKba6ONzXXnvt1eg24wXQ9thjjzrbnDx5cth+++1Dhw4dksf59lefNz6OF2RryusDAHUTugGgBI4//vjwyCOPhNmzZ9dMe+qpp8Jbb70VhgwZ0qQ2Bw8eHF5++eVaYfrNN98MTz/9dK02DznkkKQyftNNN9X6/fh4o402SsbvBgAKoyqXy+UK1BYAEEK44YYbwieffJJcBTwG2eOOOy7svffeyXNnnnlm6NSpUxK247TOnTuHs88+OyxevDiMHTs2dOvWLQnOq3Yvv/POO8OsWbPCkiVLwmWXXRb69++fBOdo+PDhoXv37sn9OCRYbDP+HDVqVGjdunW4+uqrk67kr776alJdz7vxxhuTcbljUD/iiCPC888/H37729+GSy65JIwePbrFtxkApJXQDQAF1qNHjyQk12XGjBnJ89Hf//738MMf/jC88MILydXEY4X5qquuCltssUWt3zn44IPDs88+W2d7kyZNSp7PmzNnTjj33HPDE088kXQVj89dc801Yccdd1zjd2+99dbk9eIybbPNNuEHP/hB8gVAVVVVM7cAAJAndAMAAECROKcbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBoCM+eKLL8Ly5ctLvRgAkAlCNwC0gJUrV4ZcLhfKwfnnnx969uwZ5s6dW+pFAYDUE7oBoIgV5Ycffjgcd9xxoXXr1mHo0KGhHJx++umhuro69O/fX/AGgCITugGgwGbPnh2GDx8eunTpEgYNGhTuv//+pNLdr1+/UA6233778Mwzz4SlS5cK3gBQZFW5cunrBgAp8Yc//CF861vfqjWtTZs2YeHChaFdu3ahXLz77rvh4IMPDhtssEGYNGlS2HrrrUu9SACQOirdAFBgsRv5WWedVfO4VatW4eijjy6rwB2peANA8QndAFBg77//fpg4cWLo0KFD8njFihVlcz736gRvACguoRsACiiG1hhe40XUpk6dGn7605+GbbfdNgwcODCUK8EbAIrHOd0AUODAHcNrDLExzEbxv9qqqqpQ7pzjDQCFp9INAEUM3FElBO5IxRsACk/oBoAiBu5KI3gDQGEJ3QDQDGkK3HmCNwAUjtANAE2UxsCdJ3gDQGEI3QDQBGkO3HmC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v/711PWEiVddnz17drjmmmvC0UcfHV599dUkgANUIhdSAyraWWedFe67774wa9asJJCm2QUXXJB8AP3ggw/CBhtsUOrFAUpY5d56663DN7/5zXDttdeGNItfOnbt2jWcffbZ4ec//3mpFwegSVxIDaho06ZNCwceeGDqA3fUv3//8Nlnn4X33nuv1IsClNBHH30U/v3vfyfHhLSLp9bst99+4Y033ij1ogA0mdANVLQvv/wytG3bNmRBvrod1xnIrvwxICs9XuJ6Ou4BlUzoBlLpiy++COedd15yjne+UvLkk0/WmueJJ54Ip556ath9991Dq1atkqvkru38wiuvvDJst912yQfAPffcM9x9991rzDdlypRwxhlnhH322Se54Nnazi+/6aabwpAhQ8K2226bzHfyySc3c62BrCvVsS+aPn16GDBgQGjfvn3YZJNNkos/LliwYI35LrnkkjBo0KCwxRZbJMe+n/3sZwVYc4DyJXQDqRQD7NVXXx2GDRuWnPMYP1geeeSR4YUXXqiZ56677kpunTp1Sj6grs2YMWOSD7L5C7bFoHzCCSeE3//+97XmmzhxYnI14fhBcvvtt19rm1dccUV4+umnQ8+ePTPRPR5I77Fvzpw54aCDDgpvv/12uPTSS5Mrqz/66KPJ760+nNn5558fXn755bD33nsXeO0BylS8kBpApTrggANyJ554Yq1pkydPjheIzI0dO7ZmWnV1dW6HHXbI9e3bt2ba3Llzc8uWLUvuDxw4MNe9e/c6X2POnDm51q1b50aOHFkzbeXKlbkDDzww161bt9zy5ctrps+fPz+3ZMmS5H6cf22H2ZkzZybtRO3atcuddNJJa13Xl156KWlv2rRpa50PSLd4TIrHgscee6xsjn2nn356bsMNN8zNmjWrZtqTTz6ZLM/NN99cq90ZM2YkPxcsWJA8f8EFF6x1fQcNGpQ76qij1rldAMqVSjeQOvfee29S3RkxYkTNtNgtMnanfOmll5JhaKJY4WnImNdxHPB4PmHsNp4XK9mnn356Ut2JbebF7pKxS2dDdO/ePXXDmwHZPPbFUSSOOuqopBKeF8fW3mmnncKECRNqtbu27uwAaSR0A6kzderU5INex44da03v06dP8jOO99rY9uIYuLvuumud7cXnAbJ67Js7d24ylOG+++67RhtxXsdIIOuEbiB15s2bl4zrurr8tPfff7/R7eUv+FOI9gDSdOyL8606ffV5Fy5cmFzgDSCrhG4gdaqrq+scRiw/vE58vpTtAaTp2Jf/6TgJUDehG0ideE51XVWVpUuX1jxfyvYA0nTsy/90nASom9ANpE7szpjv7riq/LR1DZFTV3vz58+PlyEvSHsAaTr25buV1/facczuuqrgAFkhdAOps9dee4W33norfPrpp7WmT548ueb5xra3ZMmSMH369IK0B5CmY9/WW28dNttss/DKK6+s0caUKVMcI4HME7qB1Bk8eHBYsWJFuOWWW2qmxW6P48aNC/vtt1/YZpttGtXeMccckwyvc+ONN9ZMi5WfX/3qV8mHzf3337+gyw9Qace+448/PjzyyCM1w5JFTz31VPIlwJAhQ5q9bgCVbP1SLwBAocUPl/FD3k9+8pNkGJsdd9wx3HHHHWHmzJnh9ttvr5nv9ddfDw899FBy/+233w6LFi0KF198cfK4V69e4eijj07ud+vWLZxzzjlh7NixyZi1vXv3Dg888EB4/vnnw+9+97tkXNy8WbNmhTvvvDO5n6/65NuM43IPHz68Zt6HH344vPbaa8n92G5cnvy8gwYNCnvuuWfRtxWQHqU89o0ePTrcc889oX///uHss88OixcvTn5vjz32CKecckqt5YzHyHisjFX06Lnnnqt5/XiMjMdKgFTJAVSwAw44IHfiiSeuMb26ujo3atSo3JZbbplr27Ztrnfv3rnHH3+81jzjxo2LJyrWeTvppJNqzbtixYrcpZdemuvevXuuTZs2uZ49e+bGjx+/xutOmjSp3jb79etXa974GvXNG5dtdS+99FLy3LRp05qxxYBKN2fOnORY8Nhjj5XNsS+Kx6avfe1ruY022ijXuXPn3LBhw3Lz589fY754LKzv9eMxdHWDBg3KHXXUUU3YUgDloSr+U+rgD9BUBx54YNh+++2Tak7a/fWvfw19+/YN06ZNCz179iz14gAlMnfu3KQK/dhjj4UBAwaEtIvd3FeuXJn0DgKoRM7pBgAAgCIRugEAAKBIhG6g4mXlLJmsrCfQMFk5JmRlPYH0ErqBitahQ4ewYMGCkAXxasT5dQayq3379snPrBz74no67gGVTOgGKtohhxwSJk2alAx7k2bxIkJxyJ84BFBjx9oF0qVTp05hn332ScbfjkN5pVkc3mzy5Mnh0EMPLfWiADSZq5cDFV8BiVcwnzdvXjjqqKPC1ltvHaqqqkKaVFdXh6effjpMnz493HXXXeGb3/xmqRcJKLGJEyeGY489Nmy33Xbh8MMPD+3atQtp+6LxvffeC48++mjYaaedwjPPPBM6duxY6sUCaBKhG6h4//73v8Mvf/nL8Kc//Sl8/PHHIW3atGkTevXqFU499dSksg8Qvfjii+HWW28Nr7zySli2bFlImy5duoQjjzwyjBw5MmyyySalXhyAJhO6AQAAoEic0w0AAABFInQDAABAkQjdAAApN378+HDiiSeWejEAMknoBiihww47LBxxxBHh+eefT67WC1Bov/nNb5LA7WJkAKXhQmoAJdS9e/dkWJxos802C0OHDg3Dhg0Lffv2LfWiASkJ3P/93/8dvvvd74abbroprLeeegtASxO6AUoofgg+44wzah7HMcbjYfn9998PXbt2LemyAZVN4AYoD46+ACU0ePDgJGjnxcA9ZsyYsOWWW5Z0uYDKJnADlA9HYIASil3K+/XrV2vaDjvsUCuIAzSGwA1QXtYv9QIAZN0JJ5wQnnnmmTB69OjwwQcfhFNPPTUJ3SeffHKpFw2oMAI3QPkRugFKLH5A7tWrV+jdu3fSvTwG7jgtEryBhhK4AcqT0A1QYq1atQp9+vRJ7sfA/atf/Sq5L3gDDSVwA5QvoRugzMQPy4I30FACN0B5E7oBypDgDTSEwA1Q/oRugDIleANrI3ADVAahG6CMCd5AXQRugMohdAOUOcEbWJXADVBZhG6ACiB4A5HADVB5hG6ACiF4Q7YJ3ACVSegGqCCCN2STwA1QuYRugAojeEO2CNwAlU3oBqhAgjdkg8ANUPmEboAKJXhDugncAOkgdANUMMEb0kngBkgPoRugwgnekC4CN0C6CN0AKSB4QzoI3ADpI3QDpITgDZVN4AZIJ6EbIEUEb6hMAjdAegndACkjeENlEbgB0k3oBkghwRsqg8ANkH5CN0BKCd5Q3gRugGwQugFSTPCG8iRwA2SH0A2QcoI3lBeBGyBbhG6ADBC8oTwI3ADZI3QDZITgDaUlcANkk9ANkCGCN5SGwA2QXUI3QMYI3tCyBG6AbBO6ATJI8IaWIXADIHQDZJTgDcUlcAMQCd0AGSZ4Q3EI3ADkCd0AGSd4Q2EJ3ACsSugGQPCGAhG4AVid0A1AQvCG5hG4AaiL0A1ADcEbmkbgBqA+QjcAtQje0DgCNwBrI3QDsAbBGxpG4AZgXYRuAOokeMPaCdwANITQDUC9BG+om8ANQEMJ3QCsleANtQncADSG0A3AOgne8H8EbgAaS+gGoEEEb7JO4AagKYRuABpM8CarBG4AmkroBqBRBG+yRuAGoDmqcrlcrlktALBWK1asCM8991yYNGlSWLx4cUiL+N/Hn//85zBt2rTwox/9KFx22WWhdevWIWtmzZoVHnjggTB79uywcuXKkCYxXG6zzTbh2GOPDd27dw9Z/NsdM2ZMuOKKK8Iee+wRDj300FBVVRXSomPHjuGwww4L+++/vy8SAIpI6AYoourq6iSwPPHEE2HzzTcPXbp0SdWH9vhfyIcffhgWLFgQdtppp/DKK6+EDh06hKwYP358OOmkk5IvG3r06BFatWoV0hY6Z86cGb788stwxx13hO985zshK5YuXRr69OkT3njjjeTvNv79pu1v94MPPggfffRROO6448Lvf//7TH5pBtAShG6AIooVsv/93/8N9913Xxg4cGCqPrTnxf9Gnn766XDUUUclVbOHH344ZEH8sqFr167hhBNOCDfccENqv2z49NNPw5lnnhnuuuuuMH/+/CSAZsE3v/nN8Mc//jG5xfd2Gv92Y8+Me+65J3kP33jjjeF73/teqRcJIJWEboAiit02t9pqq3DvvfeGtIvnvN55553h1ltvzcQ53nFdY5V73rx5YYsttghpFsN2fB/Havfw4cNDFs7hPu2008LRRx8d7r///pB2sdt827Ztw8SJE0u9KACp5AQegCKKgSx2u86CuJ6xe2oM3zG0ZGHfdu7cOfWBO9pyyy1Dp06dknXOykXT4vnOu+yyS8jK324W9i1AqQjdAEUUOxPVdYGieEG1Cy64IAwYMCBssskmSdfVuoLqlClTwhlnnBH22WefJNCuq4vr7bffHnbdddewwQYbhK985Svh+uuvr3O+uXPnhqFDhyahMYaLY445Jrz77rvNajOezxzniRXCLATvSt+38SrcQ4YMCdtuu23y2uvqnRD3b9o7x616lfK4/erav1988UU477zzksr/hhtuGPbbb7/w5JNP1ponXsPh1FNPDbvvvnuy3eL5/mvr4n3llVeG7bbbLtm3e+65Z7j77rvrnHf69OnJ+6p9+/bJeyv2OojXU2hOm1nZtwClJHQDlOh84AsvvDD5EN2rV69654vdPW+77bYkFG2//fZrbfPmm29OAm/Pnj2TQNa3b99w1llnJeeVrx4K+/fvH5599tkwevTo8POf/zxMnTo19OvXL7moUlPaXFUcTiwrwbuS92383Xgufmxz/fWNILr6sGD1iV9OXH311WHYsGHh2muvTQLrkUceGV544YWaeeL57/EWewfEcL428eroMcQffvjhyb6NX4LEc6zjhc1WNWfOnHDQQQeFt99+O1x66aVh1KhR4dFHH01+b9myZU1qE4AWEs/pBqA4unfvnhszZswa05cuXZqbN29ecv/ll1+OJabcuHHj1phv/vz5uSVLliT3R44cmcxXlzhPly5dcgMHDqw1fdiwYbl27drlFi5cWDPtiiuuSNqZMmVKzbTp06fnWrVqlfvJT37SpDajK6+8Mrfxxhsn91esWJH77ne/m6uqqqpzvdLg8ssvT7ZPJe7baObMmbmVK1cm92M7J5100lrXNy5DXOc0ivsnvldHjBiRvHej7bbbLjd69Oha802ePDnZvmPHjq2ZVl1dndthhx1yffv2rZk2d+7c3LJly5L7cb/F40Bd5syZk2vdunWy//PiPjnwwANz3bp1yy1fvrxm+umnn57bcMMNc7NmzaqZ9uSTTybLc/PNNzepzbw4b69evRqxxQBoDJVugBKIFy2K58muSzxfOHZhXZc4BnisZMbuyqsaOXJk+Pzzz5OKWF68qFvv3r2TW148dzVeTGnChAlNanN1sVtuVivelbBvozjudhqvyN3cCvfaxquO2zdWtkeMGFEzLXbfjl3JX3rppWSs9ihWtxsy/NaDDz6YDMe26r6N++T0009PKtuxzbw4AkK8inqsWufF0QLi+dir7tvGtAlAyxC6AVIgdiGO9t1331rT4/nCMUTkn4/ner7++utrzBfFMYnfeeed8NlnnzWqzfpkOXiX+76l8YE7its6htx4rvzq2zd69dVXG/X6sb127dol5+rX1V5+38bz9OOY2vXt21X/FhvaJgAtx0lcACkQrzwcK3Cbb755relt2rRJxlV+//33k8cLFy5MLgQVx5deXX5anHfnnXducJsNCd5RDDdRFoYTK/d9S+MDd35frGv7NkZ+uLnVexys3l7+yuL1vXZ+38deFg1tE4CWI3QDpEB1dXUSwuoSu7/G5/PzRfHDeV3zrTpPQ9tcF8G7/PZt1jUlcOe3XyG3b0Pba+i+jc8XehkBaD6hGyAF4rnBq1/BOG/p0qU15w7nf8aqWF3zrTpPQ9tsCMG7vPZtljU1cOe3XyG3b0Pba+zfrfcAQHlxTjdACsSuoytWrEjO+1xVDGvxIlz5YYvi2L75Lqiry0/Lz9vQNhvKOd7ls2+zqjmBO78vCrl9Y3vz589fY4zsuv4WV52++rz5fd+YNgFoOUI3QArstddeyc9XXnml1vT4OF5gK/98DBl77LHHGvNFkydPTsaL7tChQ6PabAzBuzz2bRY1N3BHcVu/9dZb4dNPP11j++afb2x7S5YsScZ0X1t7W2+9ddhss83q3LdTpkyp9boNbROAliN0A6TAIYccklS7YphYVXy80UYbhYEDB9ZMGzx4cHj55ZdrfYB/8803w9NPPx2GDBnSpDYbQ/Au/b7NmkIE7vz2jb0ObrnllpppsSv3uHHjwn777Re22WabRrV3zDHHJEOL3XjjjTXTYoU6/n3EoL3//vvXTD/++OPDI488UjMsWfTUU08lXwKsum8b0yYALcM53QAlcsMNN4RPPvmk5mrCDz/8cDKObnTmmWeGTp06hVmzZoU777wzmZYPUhdffHHNOMvDhw+vOU/zoosuSsZujh/AjzjiiPD888+H8ePHh0suuSQJbXlx/N5bb701CWujRo1KPqBfffXVyRWPf/SjH9XM15g2Gyvt53iX+77NL9Nrr72W3I/jOsfhxvKvP2jQoLDnnnuGNChU4I5isI774Cc/+UnS3X/HHXcMd9xxR5g5c2a4/fbba+aL2/Khhx5K7r/99tth0aJFNdu2V69e4eijj07ud+vWLZxzzjlh7NixyT6I46s/8MADyf793e9+l1y1Pm/06NHhnnvuCf379w9nn312WLx4cfJ7sXfDKaecUjNfY9oEoIXkACia7t2758aMGVPvc/EwXNdtxowZyTyTJk2qd55+/fqt0eYtt9yS23nnnXNt2rTJ7bDDDrlrrrkmt3LlyjXmmz17dm7w4MG5jh075tq3b5876qijcv/617/qXM6GtnnllVfmNt5440ZtnxUrVuS++93v5qqqqnLjxo3LVZLLL78816VLl4rdtyeddFK9r1/XvojrGte5ksT1iO+tESNGJO+1xthuu+1yo0ePXmN6dXV1btSoUbktt9wy17Zt21zv3r1zjz/++BqvW9+2jdt9VXG5Lr300uQ9E/dtz549c+PHj69zmaZNm5b72te+lttoo41ynTt3zg0bNiw3f/78NeZrTJvRyJEjc7169WrE1gGgMariPy0V8AGypkePHuE73/lOTZUrzWJl7bLLLkvGDG6MeF7y97///XDbbbeFX//61xVT8b7iiiuSdf7www9DFmy66abhxz/+cTjvvPNCFirc8Rz4b3/720lvgrT7wQ9+EF544YXw6quvlnpRAFJJ93IASirtXc2p7C7lANBcQjcAJSd4UygCNwDlRugGoCwI3jSXwA1AORK6AYoofuiPQwxlQVzP5oacSgreWdq3hdq/lRS4s7R/y33fAlQ6oRugiOK4uNOnTw9Z8Pe//z0Zrqi5KiV4x30bhwWbO3ducj/N4jrGdS3E/q2UCnfcp//4xz9CFsT1LNd9C5AGvtYEKKJvfOMb4dFHHw133XVXWL58eUhrlez+++8P9957b7K+hZAP3qeddloSpmKoKjdHHnlkaNOmTTJmchyzOa3+/e9/J+sY1/XrX/96yEqX8vhefuyxx5Lx0ON412m0bNmyZFz3OIZ3of52AViTIcMAivyh9lvf+lYSStu1axc6deoUqqqqQlrE/0I+/fTTsHjx4nDEEUck67nhhhsWrP1yH07sgQceCEOHDk2+eNh8881Dq1atQprE9YpfKMT1mjBhQjj22GNDVs7hjkE7Dhl23333hY022ih07tw5dX+7H3/8caiurg4nnXRSuP3221P3/gUoF0I3QJHFw+zUqVPD008/nYTTSvziIFbq99xzz7D33nuvETzilwkHHXRQ6NOnT1FCSbkH7zhO98MPPxxmz56dLGuaxBC7zTbbhKOPPjoZpztrF01b299u/rnXX389nHDCCUlPgEoTvwQ87LDDwu67756qLxQAyo3QDcBaxf8mRowYkYTeAQMGJN1RW/r8z3IP3mTrKuXxC5b4N/H4448np0DccsstQisA9XJONwBrFcNEDNqPPPJIUtXr2bNnEnxb8jvbSjjHm/QH7viej92wY2U4/i3E6zXEvw2BG4C1EboBaJCBAweGadOmheOOOy6ceuqpyYXE5syZ02KvL3hTysAdq9vxPR/ff/FvIF6tPz4GgHURugFosI033jiMGzeuZFVvwTu7ShW466pux7+BeGE1AGgIoRuAiqp6C97ZU6rArboNQCEI3QBUXNVb8M6OUgRu1W0ACknoBqAiq96Cd/qVInCrbgNQaEI3ABVb9Ra806ulA7fqNgDFInQDUNFVb8E7fVo6cKtuA1BMQjcAFV/1zlLw/uKLL5JbWrVk4FbdBqAlCN0ApKLqnZXgffrppye3NGrJwK26DUBLEboBSE3VOwvB+8MPP0xuadNSgVt1G4CWJnQDkKqqdxaCd9q0VOBW3QagFIRuAFJX9Ra8K0dLBG7VbQBKSegGIJVVb8G7/LVE4FbdBqDUhG4AUlv1FryzG7hVtwEoF0I3AKmuegve2QvcqtsAlBOhG4DUV70F72wEbtVtAMqR0A1AWVW9v/GNbxSl6i14pztwq24DUK6EbgDKRqx6x2BWrKq34J2+wK26DUC5E7oByFTVW/BOT+BW3QagEgjdAGSu6i14V3bgVt0GoJII3QBksuoteFdm4FbdBqDSCN0AZLbqLXhXTuBW3QagUgndAGS66i14l3/gVt0GoJIJ3QCErFe9Be/yDNxxn8Z9q7oNQCUTugGoSIWuegve5RW4476M+zTuW9VtACqZ0A1AxSp01VvwLn3gzle3475U3QYgDYRuACpeIavegnfpArfqNgBpJHQDkAqFrHoL3i0buFW3AUgzoRuAVClU1VvwbpnArboNQNoJ3QCkTqGq3oJ38QK36jYAWSF0A5Bahah6C96FD9yq2wBkidANQKoVouoteBcmcKtuA5BFQjcAmdDcqrfg3bzArboNQFZV5Zo6mCkAVKhYYR0xYkRYvHhxuOaaa8Ipp5wSqqqqGvS7K1euDN///vfDbbfdllRtTz755NASfvnLX4YpU6aEp59+Onl8yCGHhD59+oSRI0eWdeCOHzNiNfvcc88N7du3D7feequwDUCmCN0AZNLHH3+cBME77rgjDBgwIAmD3bp1K9vgfdBBB4Xnn3++1rQDDzwwPPfcc2UbuGN1O/7O448/nmyj+AWHruQAZI3u5QBkUnPO9S5FV/PRo0c3aFo5BG7nbgPAfwjdAGRaU8/1bungfcQRR4R99tmn5nG8H6eVW+B27jYA1CZ0A5B5Ta16t2TwjuecX3zxxTWP4/2GnofeEoFbdRsA6uacbgBo5rneLXWOd/wve/PNN0/uf/DBB0UL3Y0N3M7dBoD6qXQDQDOr3i1V8Y4he/r06cmtHAK36jYArJvQDQAFONe7pYL3pptumtwK5cUXXwyLFi1qdOB27jYANIzQDQAFqnqX4qrmzTFjxoxwwAEHJMORxXHAGxK4VbcBoHGEbgAoYNW7koL3vffemyxvXLcf/OAH4cQTT1xr4FbdBoDGE7oBoMBV70oJ3nfffXdyEbh4i+eIT506taar+apUtwGg6YRuAChw1fvLL78s++Adu5bHkJ0XlzcG6j/+8Y+15lPdBoDmEboBoIBV7zFjxoTtttsuqRiXc/C+9NJLa+536NAh6Vp+3333hf/93/8N559/vuo2ABSI0A0ABap69+3bN1x22WVh7ty54eKLL07mWT14r15JLpXddtst9OnTJwnTH330URKw//KXv4T3338/CeT777+/6jYAFEBVbm0DjwIADRLD9NChQ8OKFSuSx+uvv34ynvaOO+6YPI7nTV9wwQVh++23D6ecckooN2+//XbYddddw/Lly5PHrVq1Cvfcc0/yhQIA0HQq3QBQALFKnA/cUbw/cuTImsex4n3RRReVZeCOzjjjjDWWP64TANA8QjcAFMDLL79c63HsSPbEE08kw3KVu7iMTz755BpXYp8yZUrJlgkA0mL9Ui8AAKTBM888Ez744IMwc+bM5PbPf/4z/PnPfw477LBDKHdxGQ844IBw2GGHhV122SX06NEjuW2++ealXjQAqHjO6QYAAIAi0b0cAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAApo8eLF4YILLggDBgwIm2yySaiqqgq/+c1v6px3+vTpyXzt27dP5h0+fHhYsGDBGvNdcsklYdCgQWGLLbZI2vvZz35W7+vPnTs3DB06NHTu3Dl07NgxHHPMMeHdd99dY76bbropDBkyJGy77bZJmyeffHIz1xwAqIshwwCggD788MNw4YUXJmG2V69eyVBidZkzZ0446KCDQqdOncKll16ahPVf/OIX4Y033kjGx27Tpk3NvOeff37Ycsstw9577x3+9Kc/1fvasY3+/fuHRYsWhdGjR4fWrVuHa665JvTr1y+8+uqroUuXLjXzXnHFFeGzzz4Lffr0CfPmzSvwVgAA8oRuACigrl27JiE2huRXXnkl9O7du875YtD+/PPPw9/+9rckoEcxAB9++OFJZXzEiBE1886YMSMZNzsG+s0226ze177xxhvDv/71ryS051/361//eth9993DVVddlbxm3rPPPltT5Y6VdgCgOHQvB4ACatu2bRK41+W+++4LRx11VE3gjg477LCw0047hQkTJtSaNwbuhrj33nuTsL1q0N9ll13CoYceukab3bt3TwI3AFBcQjcAtLB43vUHH3wQ9t133zWei9XuqVOnNrrNlStXhtdff73eNt95552kOzkA0LKEbgBoYflzqGNX9NXFaQsXLgxffPFFo9rM/059bUbvv/9+k5cZAGgaoRsAWlh1dXVNV/TVbbDBBrXmKWWbAEDzCd0A0MI23HDD5Gdd1eylS5fWmqeUbQIAzSd0A0ALy3f3rmuorjgtjtldV8V6bfK/U1+b0VZbbdXkZQYAmkboBoAWtvXWWydDf8UhxVYXh/vaa6+9Gt3meuutF/bYY48625w8eXLYfvvtQ4cOHZq8zABA0wjdAFACxx9/fHjkkUfC7Nmza6Y99dRT4a233gpDhgxpUpuDBw8OL7/8cq3g/eabb4ann366yW0CAM1Tlcvlcs1sAwBYxQ033BA++eST5GrhN910UzjuuOPC3nvvnTx35plnhk6dOiVhO07r3LlzOPvss8PixYvD2LFjQ7du3ZLgvGr38jvvvDPMmjUrLFmyJFx22WWhf//+4ZBDDkmeGz58eDLmdhSHBIttxp+jRo0KrVu3DldffXVYsWJFePXVV5Pqet7DDz8cXnvtteT+RRddFHr27JksZzRo0KCw5557tug2A4C0EroBoMB69OiRhOS6zJgxI3k++vvf/x5++MMfhhdeeCG0adMmDBw4MFx11VVhiy22qPU7Bx98cHj22WfrbG/SpEnJ83lz5swJ5557bnjiiSeSsbvjc9dcc03Ycccda/3eySefHO6444462xw3blzyPADQfEI3AAAAFIlzugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgCIRugEAAKBIhG4AAAAoEqEbAAAAikToBgAAgFAc/x8H4MQF1sWAbAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "G1 = bf.compress_trajectories([([6,5,2],2),([2,5],2)], 3)\n", "\n", "T = [\n", " ([0,1,3,0,1],4),\n", " ([1,1,3,0],4),\n", " ([2,0,1,1,3],4),\n", " ([3,0,1,1],4)\n", "]\n", "G2 = bf.compress_trajectories(T, 2)\n", "\n", "bf.plot_trajectory(bf.product_of_trajectories(G1, G2), show = True);" ] }, { "cell_type": "markdown", "id": "0e062534", "metadata": {}, "source": [ "This is Figure 11e from the manuscript." ] }, { "cell_type": "code", "execution_count": 14, "id": "ffd2d523", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.541290Z", "iopub.status.busy": "2026-03-29T02:41:19.541227Z", "iopub.status.idle": "2026-03-29T02:41:19.573056Z", "shell.execute_reply": "2026-03-29T02:41:19.572856Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAANupJREFUeJzt3QmUVOWd8OF/g4CoCC6ICrIYdDQiYBQcPYmKe6IBJ0qSE8OgE2XcV4xH9Dsao06UaCbRSDQaMGjMiE7cJ9FRIpp4BIy4MhIiEEEMoBFFQLC7vvPemW5paJZu+nZ1VT3POdjVt26/dS9dNvx471JVKBQKAQAAADS7Ns0/JAAAAJCIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJyIbgAAAMiJ6AYAAICciG4AAADIiegGAACAnIhuAAAAyInoBgAAgJxskdfAAFApli5dGosWLYpCoRDlpKqqKnbaaafo3LlzsTcFAEqW6AaAJpo7d26MGjUqnn766aiuro5y1LZt2zj88MPj9ttvj969exd7cwCg5FQVyu2f5QGgBaxYsSL23nvvaNOmTXz3u9+Nf/iHf8gCtZykf0h4880344YbboiampqYOXNmdOzYsdibBQAlRXQDQBP85je/ia997Wvx2muvxT777BPl7PXXX49+/fpl+3zCCScUe3MAoKS4kBoANMFLL70Uu+yyS9kHd5L2Me1r2mcAoHFENwA0werVq2OrrbaKSpH2ddWqVcXeDAAoOaIbAJrRsmXL4sorr4xjjz02tt9+++wK4BMmTGhw3XSOdFpvm222ydYdMWJELF68eJ31rr322hg6dGh069YtG++qq65qcLx0/vWFF14YBx98cGy55ZbZuulibw35j//4j/j2t78de+yxR7beYYcdtpl7DgA0RHQDQDNasmRJXH311VlQDxgwYL3rzZ8/Pw455JCYPXt2XHfddTF69Oh47LHH4qijjlpnRvmKK66IadOmxX777bfB137++efjJz/5SXz00UfZRd42ZNy4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DQAAADkR3QAAAJAT0Q0AAAA5Ed0AAACQE9ENAAAAORHdAAAAkJMt8hoYAGg+H3/8cSxZsiSWL1+efT5v3rzYcccdY+utty72pgEAG1BVKBQKG1oBACi+Aw44IF588cV6y/bff/+YPn160bYJANg4h5cDQAk4/PDDN2kZANC6mOkGgBKwePHi6NmzZ6xcuTL7fMstt4y//vWv0bVr12JvGgCwAWa6AaAEpLg+99xz6z5PjwU3ALR+ZroBoIRmu3feeefs8bvvviu6AaAEuHo5AJSIFNnnnHNO3WMAoPUz0w0AAAA5cU43AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBOtshrYACoBKtXr44pU6bEnDlzorq6OspJ27Zto0+fPnHIIYdEu3btir05AFCSRDcANNGLL74Yxx13XPztb3/LPm/TprwOIKupqck+duvWLR5//PH4whe+UOxNAoCSU1UoFArF3ggAKMUZ7h49emQzwePGjYsBAwaUZXS//PLLceaZZ2Yz+fPnzzfjDQCNJLoBoAn++7//O4466qj405/+FPvtt1+Us7SP+++/f7bPRxxxRLE3BwBKSnn9kzwAtJC5c+dmH9MMd7kbOHBg9jHNdgMAjSO6AaAJ0kXT0oXGyu2Q8oakfUz7Wm4XigOAllD+f1MAgBa0bNmyuPLKK+PYY4+N7bffPqqqqmLChAkNrjtz5sxsvW222SZbd8SIEbF48eJ11rv22mtj6NCh2QXN0nhXXXXVel9/wYIF8fWvfz26dOkS2267bQwbNizeeuutBte98847Y++9944tt9wy9thjj7j55ps3Y88BgIaIbgBoRkuWLImrr746C+oNHXqeLkqWbsU1e/bsuO6662L06NHx2GOPZeeJr1q1qt66V1xxRUybNm2j546n4B8yZEg888wzMWbMmPje974XL730Uhx66KHx3nvv1Vv3tttui9NOOy322WefLLYPOuigOO+88+L666/fzN8BAGBNbhkGAM1ol112iYULF8bOO+8c06dPj0GDBjW4Xgrtjz/+OLvtWM+ePbNlgwcPzqI7zYyPGjWqbt10LnXv3r2zoO/atet6X/vWW2+NP//5zzF16tS61/3yl78c/fr1ixtvvDF7zWTFihVx+eWXZ7c7u//++7Nlp59+ena18u9///vZa2+33XbN+vsCAJXKTDcANKMOHTpkwb0xDzzwQBx//PF1wZ0ceeSRseeee8Z9991Xb90U3JsiBXSK7TVDf6+99squOL7mmJMnT85mvs8666x6X3/22Wdn/xCQZtwBgOYhugGghaXzrhctWhQHHHDAOs+l2e50SHhjpVnqV155Zb1j/uUvf4mPPvoo+7x2/LXXTbcFSxdNa8rrAwANE90A0MLS4ee1h6KvLS17//3345NPPmnUmLVfs74xk3feeafu9dPVyHfaaad667Vv3z522GGHuvUAgM0nugGghaVzqmsPRV9bupL4muvkMWb6mAK7IWndxr42ALB+ohsAWljHjh2zjw3NZq9cubLeOnmMmT6ufYX0Nddt7GsDAOsnugGghdUe7l17mPma0rJ0z+6GZqw3pPZr1jdmsuuuu9a9fnV1dXZe+ZpSiKcLrNWuBwBsPtENAC2se/fu2a2/0i3F1pZu9zVw4MBGj5kugLbvvvs2OOYLL7wQu+++e3Tq1Cn7vHb8tddNn6cLsjXl9QGAholuACiCE088MR599NF4++2365Y99dRTMWvWrBg+fHiTxjzppJNi2rRp9WL6zTffjKeffrremIcffng2Mz5u3Lh6X58+32qrrbL7dwMAzWOLZhoHAPg/t9xyS3zwwQd1VwF/5JFHYv78+dnjc889Nzp37hxjxoyJSZMmxZAhQ+L888+PZcuWxdixY7PZ6lNPPbXeeBMnTox58+bF8uXLs8+nTJkS11xzTfZ4xIgR0atXr+xxuu/2z3/+8yyaR48eHe3atYubbropunXrFhdffHHdeOmc7e9///vZfblTjB9zzDHx7LPPxt133x3XXnttFuQAQPOoKhQKhWYaCwAqxm233ZZF66effrrOc717984iuSFz5szJnk9ef/31uOiii+K5557LriaeYvnGG2/MInlNhx12WDzzzDMNjjd58uTs+Vop7i+88MJ44oknskPF03M/+tGPom/fvut8bQr09Hppm3bbbbc455xzsn8AqKqqWmfdLbbYIn7605/Gv/7rv27C7w4AUEt0A0AzR3c5Et0A0DTO6QYAAICciG4AAADIiegGgCZK50xXwllaaR/TvjZ0rjcAsGGiGwCaIN1nO8Xomrf8KldpH9O+7rjjjsXeFAAoOaIbAJrgiCOOyK44fvXVV8fq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BhV7cwCgJDmnGwCa6KabboqLL744dtppp/j85z8fbdu2jXJSXV2d3dJq0aJFceONN2b3mgYAGkd0A0ATLFy4MLp37x4XXHBBjB07tuyCe83wvuSSS+Lf//3fY8GCBbHLLrsUe5MAoKQ4pxsAmuC//uu/sgvUXXHFFWUb3Enat7SPaV/TPgMAjSO6AaAJFi9eHJ07d47tt98+yl3ax7SvS5YsKfamAEDJEd0Am+mTTz6JSy+9NHbdddfo2LFjHHjggfHkk0/WW+eJJ56I73znO9GvX79s5rB3797rHS9djOuGG26IPn36xJZbbhn9+/ePe++9d531pk6dGmeddVbsv//+0a5duw3eFmzcuHExfPjw7KJYab1TTjllM/ea2guNrW3ZsmVx5ZVXxrHHHpvFavr9njBhQoNfP3PmzGy9bbbZJlt3xIgRWcyv7dprr42hQ4dGt27dsvGuuuqqBsd7880348ILL4yDDz44e++kdefOnbve7X/44YfjC1/4QrZuem+k7f7000/Xu6/OSCutnxF5vMcAaDzRDbCZUsCmC2qdfPLJ8eMf/zj7C/NXvvKVeO655+rW+dWvfpX9SrOF6S/eG3L55Zdnf0E/6qij4uabb85i6Fvf+lb8+te/rrfe448/HnfccUf2F+Tdd999g2Nef/318fTTT8c+++wTW2zhxhV5SrPBV199dRY7AwYMWO968+fPj0MOOSRmz54d1113XYwePToee+yx7Pu+atWqeuumw7vTVdL322+/Db72888/Hz/5yU/io48+ir333nuD66ZDxU844YTo0qVL9j5Lj6+55po499xzG7nHtNafEXm8xwBognQhNQCa5oUXXkhTf4WxY8fWLVuxYkXhc5/7XOGggw6qW7ZgwYLCqlWrssfHHXdcoVevXg2ON3/+/EK7du0KZ599dt2ympqawpe+9KVCjx49Cp9++mnd8nfffbewfPny7HFaf0M/0ufOnZuNk2y99daFkSNHbtZ+Uyj84Ac/KOywww7rLF+5cmVh4cKF2eNp06Zl35fx48evs96ZZ55Z6NixY2HevHl1y5588sls/dtuu63eunPmzMk+Ll68OHv+yiuvbHCb3nvvvcKHH36YPU7vybRu7deu7fOf/3xhwIABhdWrV9ctu/zyywtVVVWFmTNnrrN+2te0z5TOz4g83mMANJ6ZboDNcP/992ez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MyYmTZoUQ4YMifPPPz+WLVsWY8eOzWarTz311HrjTZw4MebNmxfLly/PPp8yZUpcc8012eMRI0Zk99xOzjrrrPj5z38exx13XIwePTratWsXN910U3Tr1i0uvvjiemOmbXr55Zezx6tXr85uN1Y75tChQ6N///65/z4BQCWoKhQKhWJvBACUmuuvvz6L5CVLlqzzXO/evbNIbsicOXOy55PXX389Lrroonjuueeiffv2WSzfeOONWSSv6bDDDotnnnmmwfEmT56cPV8rxf2FF14YTzzxRHbv7vTcj370o+jbt2+9rzvllFPirrvuanDM8ePHZ8+vaccdd4xLLrkkLr300vX+ngAA6xLdANDM0V2ORDcANI1zugEAACAnohsAAAByIroBAAAgJ6IbAJogXRl8xYoVUQmXRkn7mPY1XewNAGgc0Q0ATbDffvtlt/D64x//GOUu7WPa17TPAEDjuHo5ADRBdXV1dk/tpUuXZlf0To/btm0b5baPr776anal9nRv8fS43PYRAPImugGgiRYuXBijRo2K3/3ud7F69eoo18PojznmmLj99ttjl112KfbmAEDJEd0AsJk++uij+Nvf/hY1NTVRTtq0aRPdunWLTp06FXtTAKBkiW4AAADIiQupAQAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQE5ENwAAAOREdAMAAEBORDcAAADkRHQDAABATkQ3AAAA5ER0AwAAQOTj/wONq9//skDyQQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "G1 = bf.compress_trajectories([([5,2],2)], 3)\n", "\n", "T = [\n", " ([0,1,1,3],4),\n", " ([1,3,0,1],4),\n", " ([2,0,1,3,0,1],4),\n", " ([3,2,0,1,1,3],4)\n", "]\n", "G2 = bf.compress_trajectories(T, 2)\n", "\n", "bf.plot_trajectory(bf.product_of_trajectories(G1, G2), show = True);" ] }, { "cell_type": "markdown", "id": "8831b275", "metadata": {}, "source": [ "This is Figure 11f from the manuscript." ] }, { "cell_type": "code", "execution_count": 15, "id": "8d8dffb7", "metadata": { "execution": { "iopub.execute_input": "2026-03-29T02:41:19.574185Z", "iopub.status.busy": "2026-03-29T02:41:19.574122Z", "iopub.status.idle": "2026-03-29T02:41:19.597860Z", "shell.execute_reply": "2026-03-29T02:41:19.597640Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAJlVJREFUeJzt3XmMVeXBwOF3WFxQxDWgVkVajYqAK1q0IrRSEtcikGprBbeIhTa2NVo1khqln1rrH1qxbmBsaVxq3U01cavaigQUVFzaoHWrFhUERUCYL+fYGQeY5c6de+7ZniehM977cvoe/rhnfnOWt6GxsbExAAAAADXXrfabBAAAACKiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICE9ktowAJTFsmXLwvvvvx/Wrl0biqRbt26hb9++oXfv3mlPBQByS3QDQJXee++9cMYZZ4S//vWvYfXq1aGIevbsGb773e+G66+/Pmy//fZpTwcAcqehsbGxMe1JAEDerFmzJgwaNCgsXbo0nHfeeWHvvfcO3bt3D0XbxxdffDH83//9X+jTp09YsGBB4fYRAJImugGgCo899lgYOXJkeOqpp8IhhxwSiuzpp58Ohx56aLzPhx9+eNrTAYBc8SA1AKjCvHnzQq9evcKwYcNC0UX7GO1rtM8AQOeIbgCoQnQP96abbhoaGhpC0UX7GO3rqlWr0p4KAOSO6AaAGlq+fHmYOnVqGD16dNh6663jYJ05c+YG42bPnh3OOuussP/++8cPK2sv3qdPnx7GjRsXdt5553jchAkT2hy7ZMmS+OFu2223Xdhss83CiBEjwty5c1sde++994b99tsvbLLJJvG2o3l/8cUXVe45ANAa0Q0ANbR48eJw8cUXh4ULF4YhQ4a0Oe7BBx8MN954YxzRAwYMaHebl112WXj00UfDwIEDQ48ebS88Ei1ZduSRR4ZZs2aFyZMnh8svvzx88MEH8X3Yr7/++jpjH3rooXDccceFLbfcMlx99dXx95dcckmYMmVKFXsNALTFkmEAUEPRslrRUmL9+vULc+bMCQceeGCr4yZNmhTOPffc+LLtKJBfe+21Nrf5xBNPNJ/l3nzzzdscd+edd4Znnnkm3HHHHWHs2LHxa+PHjw+77757fBY7ivEmv/jFL8LgwYPDww8/3BzyW2yxRZg2bVr46U9/GvbYY48u/CsAAE2c6QaAGtp4443j4O5I37594+CuxC677FLRveNRdEfbHTNmTPNr0WXmUXjfc889YeXKlfFrL7/8cvwnugy95Znz6HL3aFGTaDsAQG2IbgAoiOjp4tE92t26rXt4Hzp0aPjss8+az6Y3PYX8gAMOWGfcDjvsEL72ta95SjkA1JDoBoCCiC5rjy5vX1/Ta++++27zuJavrz+2aRwA0HWiGwAKYsWKFfHl7euLnk7e9H7Lr22NbXofAOg60Q0ABRHdI95033ZLn3/+efP7Lb+2NbbSe80BgI6JbgAo2JPT19f0WnTPdtO4lq+vP7ZpHADQdaIbAApin332CXPnzo3X627p2WefDb169YqXDmsaF4mWNGspupf77bffbn4fAOg60Q0ABRGtzf3++++Hu+66q/m1xYsXx+t2H3300c33cA8cODBeh/v6668Pa9asaR47ffr0eGmypjW+AYCu+2pxTgCgJq655pqwZMmS5qeA33ffffEZ5MiUKVNCnz59wptvvhluvfXWdc44X3LJJc3rcp900knN24v+/gsvvBB/v3r16jB//vzmscccc0wYPHhw/H0UywcffHCYOHFivA73tttuG6699to4rH/1q1+tM8crrrgi/rujRo0K3//+98OLL74Yz/u0004Le+65Zx3+lQCgHBoaGxsb054EAOTNZZddFodrdCZ5ff3794+jujWLFi2K33/88cfDiBEjWh0zfPjw+P0mEyZMCLfcckurY2fMmBG/3+Tjjz8O55xzTrj77rvjp5AfeOCB4Te/+c0Ga3JHojFRjC9cuDBst9128XYuuuii0LNnzw3GRgEfbffcc89t418EAGiN6AaAGkd3EYluAKiOe7oBAAAgIaIbAAAAEiK6AaBKZbpDq0z7CgC1JLoBoAqbbbZZWL58eVi5cmUoumgfly1bFu8zANA5ohsAqhA9YXzVqlXhtttuC0UX7WO0VNnhhx+e9lQA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NV022HSZeUvRazvssEMKswIgrSenr6/pNccDIEmiGyisaKmXaN3WaGmallatWhWv3x09TA2A4os+7+fOnRuv193Ss88+G3r16hUvHQaQFNENFFafPn3Cd77znfCHP/whLFu2bJ01WJcvX97u+t4AFEe0Nvf7778f7rrrrubXFi9eHK/bffTRR7d6vzdArfSo2ZaA0rnmmmvCkiVLmp/6et9994W33347/n7KlClx9L755ptx5EaazjhfcsklzeurnnTSSc3bi/7+Cy+8EH+/evXqMH/+/OaxxxxzTBg8eHDz2KbXX3rppfhr9P/x1FNPxd9feOGFzeMuvfTSMGzYsDB8+PBwxhlnxPO78sorw6hRo8Lo0aMT/fcBIBvHjSi6Dz744DBx4sTw8ssvh2233TZce+21Yc2aNeFXv/rVOnN88skn4z+R//73v+HTTz9t3uZhhx0W/wHolEaAdpxwwgmNI0aMaPW9XXbZpTH6GGntz6JFi+Ixjz32WJtjhg8fvs72Tj755DbHzpgxY52xbY1r7WPtb3/7W+OwYcMaN9lkk8btttuu8cc//nHjJ5980uo+9ejRo3H69Old+BcDKLfoMzT6LM3aceOjjz5qPPXUUxu32Wabxl69esXbeu655zaY49SpU9vcZvTe+qJjZHSsBGhLQ/Q/nct0oExOPPHE8J///Cc8+uijoQx69uwZrr766nDmmWemPRWAXLruuuvis9bRmecyGDlyZOjXr1+YNWtW2lMBMso93QAAAJAQ0Q0AAAAJEd0ALbjjBoDOcNwAOiK6gXZtsskm6yy3VWSfffZZ/CTbaJ8BqE70GfrFF1/En6llEB0jHTeA9ohuoF3f/OY3w9y5c8Mbb7wRiu4vf/lL/DVaVgaA6jR9ht59992h6KJj47x58+KlKQHa4unlQLs++uijsN9++4W1a9eGU089Ney6666hW7di/b4uOiMT/dB0ww03xE+hvf/++9OeEkCuHXXUUfGqF6effnrYd999Q48ePUKRRMfERYsWhZtuuik+Jka/nN56663TnhaQUaIbqOg3+eeff34co0W91HzHHXcM48ePD5deemnYdNNN054OQK6tWLEiXHDBBeH2228P77zzTiii3r17x79cmDZtWujfv3/a0wEyTHQDFYs+LqJ1V4v2sRGdpYjW5wag9qLjRnRmuEgaGhrCRhttlPY0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+Kx9Z/cVAOiY6AaAGlq8eHG4+OKLw8KFC+OHj7XlwQcfDDfeeGMcswMGDGh3m5dddln8ELOBAweGHj3aXnjk1Vdfjce+8847YdCgQe1uc9asWfGfPn36hB122KGCPQMAqiG6AaCGtt9++/iM85tvvhkvJ9aWSZMmhaVLl4Y5c+aEI444osP7x6OYf+ihh9p9enh01vzDDz8Mr732WvjZz37W7janTZsWL3n29NNPt/vLAQCga6zTDQA1FEVxv379OhwXrX9dqeghZpWILimvlLPbAFAfznQDAABAQkQ3AAAAJER0AwAAQEJENwAAACREdAMAAEBCRDcAAAAkRHQDAABAQqzTDQA1ds0114QlS5aEd999N/7v++67L7z99tvx91OmTAl9+vQJb775Zrj11lvj1+bMmRN/veSSS5rX5T7ppJOatxf9/RdeeCH+fvXq1WH+/PnNY4855pgwePDg5rFNr7/00kvx1+j/46mnnoq/v/DCC5vHRdu499574+//+c9/hqVLlzb/3SFDhoSjjz46sX8fACiThsbGxsa0JwEAeTNp0qTw3HPPNQdzS/3794+jujWLFi2K33/88cfDiBEjWh0zfPjw+P0mEyZMCLfcckurY2fMmBG/36ShoaHNObc85M+cOTNMnDix1XEnn3xy/H5LBxxwQDjwwAPD9OnT29w+ALAh0Q0ANY7uIhLdAFAd93QDAABAQkQ3AAAAJER0AwAAQEJENwBUoWfPnuGzzz4LZRHt60YbbZT2NAAgd0Q3AFRh3333Da+88kp46623QtH9+9//jvc12mcAoHM8vRwAqvDxxx+HPffcM2y11Vbh5z//efjGN74RunUr1u+y165dG6/hfeWVV8b7u3Dhwnh/AYDKiW4AqFIUodHSYU8++eQ6a2AXSbTu92GHHRauu+66sMcee6Q9HQDIHdENAF0UnQVevHhx4cI7Cu5tt93W2W0A6ALRDQAAAAkp1s1nAAAAkCGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICGiGwAAABIiugEAACAhohsAAAASIroBAAAgIaIbAAAAEiK6AQAAICTj/wGy1S2tY4w4fAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "G1 = bf.compress_trajectories([([7],1)], 3)\n", "G2 = bf.compress_trajectories([([0,1,3,2],4),([1,3,2,0],4),([3,2,0,1],4),([2,0,1,3],4)], 2)\n", "bf.plot_trajectory(bf.product_of_trajectories(G1, G2), show = True);" ] } ], "metadata": { "jupytext": { "cell_metadata_filter": "-all", "main_language": "python", "notebook_metadata_filter": "-all" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.3" } }, "nbformat": 4, "nbformat_minor": 5 }