digraph process {
  rankdir=LR;
  node [fontname="Arial-Bold"];
node1 [label="1 - Subscription page", shape=ellipse, color=purple, fillcolor=purple, fontcolor=white, style=filled];
node2 [label="{Popup|2}|Drops out", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node1 -> node2 [arrowhead=none];
node2 -> node3 [arrowhead=normal];
node3 [label="3 - Subscription Popup", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node4 [label="{Form|4}|Signup news letter", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node3 -> node4 [arrowhead=none];
node4 -> node5 [arrowhead=normal];
node4 -> node8 [arrowhead=normal];
node5 [label="5 - Signup submitted (output)", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node6 [label="{Output|6}|Thanks for signup", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node5 -> node6 [arrowhead=none];
node6 -> node7 [arrowhead=normal];
node7 [label="7 -   signup submitted", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
node8 [label="8 - Signup submitted (email)", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node9 [label="{Timeout|9}|Signup timeout", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node8 -> node9 [arrowhead=none];
node9 -> node10 [arrowhead=normal];
node10 [label="10 - Popup signup timeout", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node11 [label="{Email|11}|Send Email", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node10 -> node11 [arrowhead=none];
node11 -> node12 [arrowhead=normal];
node12 [label="12 - Popup Email sent", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node13 [label="{Bounce|13}|Email bounced", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node12 -> node13 [arrowhead=none];
node13 -> node14 [arrowhead=normal];
node14 [label="14 - Popup Email bounced", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
node15 [label="{OptedOut|15}|Email  ", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node12 -> node15 [arrowhead=none];
node15 -> node16 [arrowhead=normal];
node16 [label="16 - Popup Email  ", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
node17 [label="{Click|17}|Email   click", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node12 -> node17 [arrowhead=none];
node17 -> node18 [arrowhead=normal];
node17 -> node22 [arrowhead=normal];
node18 [label="18 - Email  ", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node19 [label="{ |19}|  Email", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node18 -> node19 [arrowhead=none];
node19 -> node21 [arrowhead=normal];
node21 [label="21 - Email   done", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
node22 [label="22 - Email output  ", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node23 [label="{Output|23}|Output   Email", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node22 -> node23 [arrowhead=none];
node23 -> node24 [arrowhead=normal];
node24 [label="24 - Email output   done", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
node25 [label="{Click|25}|Email click", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node12 -> node25 [arrowhead=none];
node25 -> node26 [arrowhead=normal];
node26 [label="26 - Popup Email clicked", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node27 [label="{Redirect|27}|Email redirect", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node26 -> node27 [arrowhead=none];
node27 -> node1 [arrowhead=normal];
node20 [label="{ |20}|Honey   subscription", shape=record, color=purple, fillcolor=purple, fontcolor=white, style=filled];
node1 -> node20 [arrowhead=none];
node20 -> node28 [arrowhead=normal];
node28 [label="28 - Limbo subscription", shape=ellipse, color=purple, fillcolor=purple, fontcolor=white, style=filled];
node29 [label="{Impression|29}|Wait success confirmed", shape=record, color=purple, fillcolor=purple, fontcolor=white, style=filled];
node28 -> node29 [arrowhead=none];
node29 -> node30 [arrowhead=normal];
node30 [label="30 - Honey subscription confirmation", shape=ellipse, color=purple, fillcolor=purple, fontcolor=white, style=filled];
node31 [label="{Success|31}|Magazine bought", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node30 -> node31 [arrowhead=none];
node31 -> node32 [arrowhead=normal];
node31 -> node45 [arrowhead=normal];
node32 [label="32 - Magazine bought", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node33 [label="33 - Check 1st Xsell", shape=diamond, color=black, fillcolor=white, fontcolor=black, style=solid];
node32 -> node33 [arrowhead=none];
node33 -> node35 [label = "'HeartAndSoul' in decode_b64(nvl('vmi_cookie_mag_sold',encode_b64([])))", arrowhead=normal];
node33 -> node42 [label = "default", arrowhead=normal];
node35 [label="35 - End 1st Xselling", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node36 [label="36 - Check 2nd Xsell", shape=diamond, color=black, fillcolor=white, fontcolor=black, style=solid];
node35 -> node36 [arrowhead=none];
node36 -> node37 [label = "'Honey' in decode_b64(nvl('vmi_cookie_mag_sold', encode_b64([])))", arrowhead=normal];
node36 -> node39 [label = "!is_defined('xsell_flag')", arrowhead=normal];
node36 -> node37 [label = "default", arrowhead=normal];
node37 [label="37 - End Xselling", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
node39 [label="39 - Wait before sending 2nd Xsell", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node38 [label="{Timeout|38}|2nd Xsell timeout", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node39 -> node38 [arrowhead=none];
node38 -> node40 [arrowhead=normal];
node40 [label="40 - Activate 2nd Xselling", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node41 [label="{NewFlow|41}|Send SEP 2nd Xsell", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node40 -> node41 [arrowhead=none];
node41 -> node37 [arrowhead=normal];
node42 [label="42 - Wait before sending 1st Xsell", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node34 [label="{Timeout|34}|1st Xsell timeout", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node42 -> node34 [arrowhead=none];
node34 -> node43 [arrowhead=normal];
node43 [label="43 - Activate 1st Xselling", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node44 [label="{NewFlow|44}|Send SEP 1st Xsell", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node43 -> node44 [arrowhead=none];
node44 -> node35 [arrowhead=normal];
node45 [label="45 - Bill subcription", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node47 [label="47 - Check if billable", shape=diamond, color=black, fillcolor=white, fontcolor=black, style=solid];
node45 -> node47 [arrowhead=none];
node47 -> node48 [label = "is_defined('vmi_cookie_ref')", arrowhead=normal];
node47 -> node51 [label = "default", arrowhead=normal];
node48 [label="48 - Bill authorized", shape=ellipse, color=black, fillcolor=white, fontcolor=black, style=solid];
node49 [label="{Bill|49}|Bill subscription", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node48 -> node49 [arrowhead=none];
node49 -> node50 [arrowhead=normal];
node50 [label="50 - Subcription", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
node51 [label="51 - Non billable", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
node46 [label="{Timeout|46}|Limbo sub timeout", shape=record, color=black, fillcolor=white, fontcolor=black, style=solid];
node28 -> node46 [arrowhead=none];
node46 -> node52 [arrowhead=normal];
node52 [label="52 - Limbo subscription timeout", shape=ellipse, color=black, fillcolor=black, fontcolor=white, style=filled];
}