# plot() honours direction for every valid value

    "\n    digraph sfm {\n\n      graph [layout = dot, rankdir = LR, center=true, outputorder=\"edgesfirst\", pad=0.1, nodesep=0.5, splines = true, concentrate = false]\n\n      # Shared across all nodes (persists until overridden)\n      node [fontsize=18,fontname=\"stix-two-text\",fontcolor=\"black\"]\n\n      # Define stock nodes\n      node [shape=box,style=filled]\n      \"predator\" [id=\"predator\",fillcolor=\"#83D3D4\",label=<Predator<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Initial value = 10<\/FONT>>, tooltip = \"Stock: Predator\\nName: predator\\nInitial value: 10\\nInflows: Births\\nOutflows: Deaths\"]\n\t\"prey\" [id=\"prey\",fillcolor=\"#83D3D4\",label=<Prey<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Initial value = 50<\/FONT>>, tooltip = \"Stock: Prey\\nName: prey\\nInitial value: 50\\nInflows: Births\\nOutflows: Deaths\"]\n\n      # Define flow nodes (intermediate nodes for flows)\n      node [style = \"\",shape=plaintext, fontsize=16, width=0.6, height=0.3]\n      \"predator_births\" [id=\"predator_births\",label=<Births<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = delta*prey*predator<\/FONT>>, tooltip = \"Flow: Births\\nName: predator_births\\nRate: delta*prey*predator\\nFrom: outside model boundary\\nTo: Predator\"]\n\t\"predator_deaths\" [id=\"predator_deaths\",label=<Deaths<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = gamma*predator<\/FONT>>, tooltip = \"Flow: Deaths\\nName: predator_deaths\\nRate: gamma*predator\\nFrom: Predator\\nTo: outside model boundary\"]\n\t\"prey_births\" [id=\"prey_births\",label=<Births<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = alpha*prey<\/FONT>>, tooltip = \"Flow: Births\\nName: prey_births\\nRate: alpha*prey\\nFrom: outside model boundary\\nTo: Prey\"]\n\t\"prey_deaths\" [id=\"prey_deaths\",label=<Deaths<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = beta*prey*predator<\/FONT>>, tooltip = \"Flow: Deaths\\nName: prey_deaths\\nRate: beta*prey*predator\\nFrom: Prey\\nTo: outside model boundary\"]\n\n      # Define external cloud nodes\n      node [shape=doublecircle, fixedsize=true, width = .25, height = .25, orientation=15]\n      \"Cloud1\" [label=\"\", tooltip = \"Outside model boundary\\nSink of: Deaths\"]\n\t\"Cloud2\" [label=\"\", tooltip = \"Outside model boundary\\nSink of: Deaths\"]\n\t\"Cloud3\" [label=\"\", tooltip = \"Outside model boundary\\nSource of: Births\"]\n\t\"Cloud4\" [label=\"\", tooltip = \"Outside model boundary\\nSource of: Births\"]\n\n      # Define auxiliary nodes\n      \n      \n\n      # Define constant nodes\n      \n      \n\n      # Define flow edges (stock -> flow_node)\n      edge [style = \"\", arrowhead=\"none\", penwidth=1.1, minlen=1, tailport=\"e\", headport=\"w\"]\n      \"Cloud3\" -> \"predator_births\" [color=\"black:#F48153:black\"]\n\t\"predator\" -> \"predator_deaths\" [color=\"black:#F48153:black\"]\n\t\"Cloud4\" -> \"prey_births\" [color=\"black:#F48153:black\"]\n\t\"prey\" -> \"prey_deaths\" [color=\"black:#F48153:black\"]\n\n      # Define flow edges (flow_node -> stock)\n      edge [style = \"\", arrowhead=\"normal\", arrowsize=1.5, penwidth=1.1, minlen=1, tailport=\"e\", headport=\"w\"]\n      \"predator_births\" -> \"predator\" [color=\"black:#F48153:black\"]\n\t\"predator_deaths\" -> \"Cloud1\" [color=\"black:#F48153:black\"]\n\t\"prey_births\" -> \"prey\" [color=\"black:#F48153:black\"]\n\t\"prey_deaths\" -> \"Cloud2\" [color=\"black:#F48153:black\"]\n\n      # Define dependency edges\n      edge [style = \"\", color=\"#999999\", arrowhead=\"open\", arrowsize=0.8, penwidth=1, constraint=false, tailport = \"_\", headport=\"_\"]\n      \"prey\" -> \"predator_births\" [headport = \"n\", tailport = \"n\"]\n\t\"predator\" -> \"predator_births\" [headport = \"s\", tailport = \"s\"]\n\t\"predator\" -> \"predator_deaths\" [headport = \"n\", tailport = \"n\"]\n\t\"prey\" -> \"prey_births\" [headport = \"s\", tailport = \"s\"]\n\t\"prey\" -> \"prey_deaths\" [headport = \"n\", tailport = \"n\"]\n\t\"predator\" -> \"prey_deaths\" [headport = \"s\", tailport = \"s\"]\n\n      \n\n\n      # Rank groupings\n      \n\n    }\n          "

---

    "\n    digraph sfm {\n\n      graph [layout = dot, rankdir = TB, center=true, outputorder=\"edgesfirst\", pad=0.1, nodesep=0.5, splines = true, concentrate = false]\n\n      # Shared across all nodes (persists until overridden)\n      node [fontsize=18,fontname=\"stix-two-text\",fontcolor=\"black\"]\n\n      # Define stock nodes\n      node [shape=box,style=filled]\n      \"predator\" [id=\"predator\",fillcolor=\"#83D3D4\",label=<Predator<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Initial value = 10<\/FONT>>, tooltip = \"Stock: Predator\\nName: predator\\nInitial value: 10\\nInflows: Births\\nOutflows: Deaths\"]\n\t\"prey\" [id=\"prey\",fillcolor=\"#83D3D4\",label=<Prey<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Initial value = 50<\/FONT>>, tooltip = \"Stock: Prey\\nName: prey\\nInitial value: 50\\nInflows: Births\\nOutflows: Deaths\"]\n\n      # Define flow nodes (intermediate nodes for flows)\n      node [style = \"\",shape=plaintext, fontsize=16, width=0.6, height=0.3]\n      \"predator_births\" [id=\"predator_births\",label=<Births<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = delta*prey*predator<\/FONT>>, tooltip = \"Flow: Births\\nName: predator_births\\nRate: delta*prey*predator\\nFrom: outside model boundary\\nTo: Predator\"]\n\t\"predator_deaths\" [id=\"predator_deaths\",label=<Deaths<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = gamma*predator<\/FONT>>, tooltip = \"Flow: Deaths\\nName: predator_deaths\\nRate: gamma*predator\\nFrom: Predator\\nTo: outside model boundary\"]\n\t\"prey_births\" [id=\"prey_births\",label=<Births<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = alpha*prey<\/FONT>>, tooltip = \"Flow: Births\\nName: prey_births\\nRate: alpha*prey\\nFrom: outside model boundary\\nTo: Prey\"]\n\t\"prey_deaths\" [id=\"prey_deaths\",label=<Deaths<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = beta*prey*predator<\/FONT>>, tooltip = \"Flow: Deaths\\nName: prey_deaths\\nRate: beta*prey*predator\\nFrom: Prey\\nTo: outside model boundary\"]\n\n      # Define external cloud nodes\n      node [shape=doublecircle, fixedsize=true, width = .25, height = .25, orientation=15]\n      \"Cloud1\" [label=\"\", tooltip = \"Outside model boundary\\nSink of: Deaths\"]\n\t\"Cloud2\" [label=\"\", tooltip = \"Outside model boundary\\nSink of: Deaths\"]\n\t\"Cloud3\" [label=\"\", tooltip = \"Outside model boundary\\nSource of: Births\"]\n\t\"Cloud4\" [label=\"\", tooltip = \"Outside model boundary\\nSource of: Births\"]\n\n      # Define auxiliary nodes\n      \n      \n\n      # Define constant nodes\n      \n      \n\n      # Define flow edges (stock -> flow_node)\n      edge [style = \"\", arrowhead=\"none\", penwidth=1.1, minlen=1, tailport=\"s\", headport=\"n\"]\n      \"Cloud3\" -> \"predator_births\" [color=\"black:#F48153:black\"]\n\t\"predator\" -> \"predator_deaths\" [color=\"black:#F48153:black\"]\n\t\"Cloud4\" -> \"prey_births\" [color=\"black:#F48153:black\"]\n\t\"prey\" -> \"prey_deaths\" [color=\"black:#F48153:black\"]\n\n      # Define flow edges (flow_node -> stock)\n      edge [style = \"\", arrowhead=\"normal\", arrowsize=1.5, penwidth=1.1, minlen=1, tailport=\"s\", headport=\"n\"]\n      \"predator_births\" -> \"predator\" [color=\"black:#F48153:black\"]\n\t\"predator_deaths\" -> \"Cloud1\" [color=\"black:#F48153:black\"]\n\t\"prey_births\" -> \"prey\" [color=\"black:#F48153:black\"]\n\t\"prey_deaths\" -> \"Cloud2\" [color=\"black:#F48153:black\"]\n\n      # Define dependency edges\n      edge [style = \"\", color=\"#999999\", arrowhead=\"open\", arrowsize=0.8, penwidth=1, constraint=false, tailport = \"_\", headport=\"_\"]\n      \"prey\" -> \"predator_births\" [headport = \"n\", tailport = \"n\"]\n\t\"predator\" -> \"predator_births\" [headport = \"s\", tailport = \"s\"]\n\t\"predator\" -> \"predator_deaths\" [headport = \"n\", tailport = \"n\"]\n\t\"prey\" -> \"prey_births\" [headport = \"s\", tailport = \"s\"]\n\t\"prey\" -> \"prey_deaths\" [headport = \"n\", tailport = \"n\"]\n\t\"predator\" -> \"prey_deaths\" [headport = \"s\", tailport = \"s\"]\n\n      \n\n\n      # Rank groupings\n      \n\n    }\n          "

---

    "\n    digraph sfm {\n\n      graph [layout = dot, rankdir = RL, center=true, outputorder=\"edgesfirst\", pad=0.1, nodesep=0.5, splines = true, concentrate = false]\n\n      # Shared across all nodes (persists until overridden)\n      node [fontsize=18,fontname=\"stix-two-text\",fontcolor=\"black\"]\n\n      # Define stock nodes\n      node [shape=box,style=filled]\n      \"predator\" [id=\"predator\",fillcolor=\"#83D3D4\",label=<Predator<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Initial value = 10<\/FONT>>, tooltip = \"Stock: Predator\\nName: predator\\nInitial value: 10\\nInflows: Births\\nOutflows: Deaths\"]\n\t\"prey\" [id=\"prey\",fillcolor=\"#83D3D4\",label=<Prey<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Initial value = 50<\/FONT>>, tooltip = \"Stock: Prey\\nName: prey\\nInitial value: 50\\nInflows: Births\\nOutflows: Deaths\"]\n\n      # Define flow nodes (intermediate nodes for flows)\n      node [style = \"\",shape=plaintext, fontsize=16, width=0.6, height=0.3]\n      \"predator_births\" [id=\"predator_births\",label=<Births<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = delta*prey*predator<\/FONT>>, tooltip = \"Flow: Births\\nName: predator_births\\nRate: delta*prey*predator\\nFrom: outside model boundary\\nTo: Predator\"]\n\t\"predator_deaths\" [id=\"predator_deaths\",label=<Deaths<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = gamma*predator<\/FONT>>, tooltip = \"Flow: Deaths\\nName: predator_deaths\\nRate: gamma*predator\\nFrom: Predator\\nTo: outside model boundary\"]\n\t\"prey_births\" [id=\"prey_births\",label=<Births<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = alpha*prey<\/FONT>>, tooltip = \"Flow: Births\\nName: prey_births\\nRate: alpha*prey\\nFrom: outside model boundary\\nTo: Prey\"]\n\t\"prey_deaths\" [id=\"prey_deaths\",label=<Deaths<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = beta*prey*predator<\/FONT>>, tooltip = \"Flow: Deaths\\nName: prey_deaths\\nRate: beta*prey*predator\\nFrom: Prey\\nTo: outside model boundary\"]\n\n      # Define external cloud nodes\n      node [shape=doublecircle, fixedsize=true, width = .25, height = .25, orientation=15]\n      \"Cloud1\" [label=\"\", tooltip = \"Outside model boundary\\nSink of: Deaths\"]\n\t\"Cloud2\" [label=\"\", tooltip = \"Outside model boundary\\nSink of: Deaths\"]\n\t\"Cloud3\" [label=\"\", tooltip = \"Outside model boundary\\nSource of: Births\"]\n\t\"Cloud4\" [label=\"\", tooltip = \"Outside model boundary\\nSource of: Births\"]\n\n      # Define auxiliary nodes\n      \n      \n\n      # Define constant nodes\n      \n      \n\n      # Define flow edges (stock -> flow_node)\n      edge [style = \"\", arrowhead=\"none\", penwidth=1.1, minlen=1, tailport=\"w\", headport=\"e\"]\n      \"Cloud3\" -> \"predator_births\" [color=\"black:#F48153:black\"]\n\t\"predator\" -> \"predator_deaths\" [color=\"black:#F48153:black\"]\n\t\"Cloud4\" -> \"prey_births\" [color=\"black:#F48153:black\"]\n\t\"prey\" -> \"prey_deaths\" [color=\"black:#F48153:black\"]\n\n      # Define flow edges (flow_node -> stock)\n      edge [style = \"\", arrowhead=\"normal\", arrowsize=1.5, penwidth=1.1, minlen=1, tailport=\"w\", headport=\"e\"]\n      \"predator_births\" -> \"predator\" [color=\"black:#F48153:black\"]\n\t\"predator_deaths\" -> \"Cloud1\" [color=\"black:#F48153:black\"]\n\t\"prey_births\" -> \"prey\" [color=\"black:#F48153:black\"]\n\t\"prey_deaths\" -> \"Cloud2\" [color=\"black:#F48153:black\"]\n\n      # Define dependency edges\n      edge [style = \"\", color=\"#999999\", arrowhead=\"open\", arrowsize=0.8, penwidth=1, constraint=false, tailport = \"_\", headport=\"_\"]\n      \"prey\" -> \"predator_births\" [headport = \"n\", tailport = \"n\"]\n\t\"predator\" -> \"predator_births\" [headport = \"s\", tailport = \"s\"]\n\t\"predator\" -> \"predator_deaths\" [headport = \"n\", tailport = \"n\"]\n\t\"prey\" -> \"prey_births\" [headport = \"s\", tailport = \"s\"]\n\t\"prey\" -> \"prey_deaths\" [headport = \"n\", tailport = \"n\"]\n\t\"predator\" -> \"prey_deaths\" [headport = \"s\", tailport = \"s\"]\n\n      \n\n\n      # Rank groupings\n      \n\n    }\n          "

---

    "\n    digraph sfm {\n\n      graph [layout = dot, rankdir = BT, center=true, outputorder=\"edgesfirst\", pad=0.1, nodesep=0.5, splines = true, concentrate = false]\n\n      # Shared across all nodes (persists until overridden)\n      node [fontsize=18,fontname=\"stix-two-text\",fontcolor=\"black\"]\n\n      # Define stock nodes\n      node [shape=box,style=filled]\n      \"predator\" [id=\"predator\",fillcolor=\"#83D3D4\",label=<Predator<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Initial value = 10<\/FONT>>, tooltip = \"Stock: Predator\\nName: predator\\nInitial value: 10\\nInflows: Births\\nOutflows: Deaths\"]\n\t\"prey\" [id=\"prey\",fillcolor=\"#83D3D4\",label=<Prey<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Initial value = 50<\/FONT>>, tooltip = \"Stock: Prey\\nName: prey\\nInitial value: 50\\nInflows: Births\\nOutflows: Deaths\"]\n\n      # Define flow nodes (intermediate nodes for flows)\n      node [style = \"\",shape=plaintext, fontsize=16, width=0.6, height=0.3]\n      \"predator_births\" [id=\"predator_births\",label=<Births<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = delta*prey*predator<\/FONT>>, tooltip = \"Flow: Births\\nName: predator_births\\nRate: delta*prey*predator\\nFrom: outside model boundary\\nTo: Predator\"]\n\t\"predator_deaths\" [id=\"predator_deaths\",label=<Deaths<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = gamma*predator<\/FONT>>, tooltip = \"Flow: Deaths\\nName: predator_deaths\\nRate: gamma*predator\\nFrom: Predator\\nTo: outside model boundary\"]\n\t\"prey_births\" [id=\"prey_births\",label=<Births<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = alpha*prey<\/FONT>>, tooltip = \"Flow: Births\\nName: prey_births\\nRate: alpha*prey\\nFrom: outside model boundary\\nTo: Prey\"]\n\t\"prey_deaths\" [id=\"prey_deaths\",label=<Deaths<BR/><FONT POINT-SIZE=\"13\" COLOR=\"black\">Rate = beta*prey*predator<\/FONT>>, tooltip = \"Flow: Deaths\\nName: prey_deaths\\nRate: beta*prey*predator\\nFrom: Prey\\nTo: outside model boundary\"]\n\n      # Define external cloud nodes\n      node [shape=doublecircle, fixedsize=true, width = .25, height = .25, orientation=15]\n      \"Cloud1\" [label=\"\", tooltip = \"Outside model boundary\\nSink of: Deaths\"]\n\t\"Cloud2\" [label=\"\", tooltip = \"Outside model boundary\\nSink of: Deaths\"]\n\t\"Cloud3\" [label=\"\", tooltip = \"Outside model boundary\\nSource of: Births\"]\n\t\"Cloud4\" [label=\"\", tooltip = \"Outside model boundary\\nSource of: Births\"]\n\n      # Define auxiliary nodes\n      \n      \n\n      # Define constant nodes\n      \n      \n\n      # Define flow edges (stock -> flow_node)\n      edge [style = \"\", arrowhead=\"none\", penwidth=1.1, minlen=1, tailport=\"n\", headport=\"s\"]\n      \"Cloud3\" -> \"predator_births\" [color=\"black:#F48153:black\"]\n\t\"predator\" -> \"predator_deaths\" [color=\"black:#F48153:black\"]\n\t\"Cloud4\" -> \"prey_births\" [color=\"black:#F48153:black\"]\n\t\"prey\" -> \"prey_deaths\" [color=\"black:#F48153:black\"]\n\n      # Define flow edges (flow_node -> stock)\n      edge [style = \"\", arrowhead=\"normal\", arrowsize=1.5, penwidth=1.1, minlen=1, tailport=\"n\", headport=\"s\"]\n      \"predator_births\" -> \"predator\" [color=\"black:#F48153:black\"]\n\t\"predator_deaths\" -> \"Cloud1\" [color=\"black:#F48153:black\"]\n\t\"prey_births\" -> \"prey\" [color=\"black:#F48153:black\"]\n\t\"prey_deaths\" -> \"Cloud2\" [color=\"black:#F48153:black\"]\n\n      # Define dependency edges\n      edge [style = \"\", color=\"#999999\", arrowhead=\"open\", arrowsize=0.8, penwidth=1, constraint=false, tailport = \"_\", headport=\"_\"]\n      \"prey\" -> \"predator_births\" [headport = \"n\", tailport = \"n\"]\n\t\"predator\" -> \"predator_births\" [headport = \"s\", tailport = \"s\"]\n\t\"predator\" -> \"predator_deaths\" [headport = \"n\", tailport = \"n\"]\n\t\"prey\" -> \"prey_births\" [headport = \"s\", tailport = \"s\"]\n\t\"prey\" -> \"prey_deaths\" [headport = \"n\", tailport = \"n\"]\n\t\"predator\" -> \"prey_deaths\" [headport = \"s\", tailport = \"s\"]\n\n      \n\n\n      # Rank groupings\n      \n\n    }\n          "

