digraph G {
    graph [rankdir=LR, clusterrank="local"];
    subgraph cluster_G {

        graph [style="filled,rounded", fillcolor="#80808018", label=""];
        die [label="die", style="filled", fillcolor="#ffffffb2", fontcolor="#000000", group="0"];
        live [label="live", style="filled", fillcolor="#ffffffb2", fontcolor="#000000", group="1"];
        subgraph cluster_die {

            graph [style="filled,rounded", fillcolor="#80808018", label="die"];
            die__play [label="play", style="filled", fillcolor="#feccccb2", fontcolor="#000000", group="0"];
        }
        subgraph cluster_live {

            graph [style="filled,rounded", fillcolor="#80808018", label="live"];
            live__eat [label="eat", style="filled", fillcolor="#ccfeccb2", fontcolor="#000000", group="1"];
            live__getup [label="getup", style="filled", fillcolor="#ccfeccb2", fontcolor="#000000", group="1"];
            live__test [label="test", style="filled", fillcolor="#ccfeccb2", fontcolor="#000000", group="1"];
        }
    }
        die -> die__play [style="dashed",  color="#838b8b"];
        live -> live__test [style="dashed",  color="#838b8b"];
        live -> live__eat [style="dashed",  color="#838b8b"];
        live -> live__getup [style="dashed",  color="#838b8b"];
        die -> die__play [style="solid",  color="#000000"];
        die -> live__getup [style="solid",  color="#000000"];
        die__play -> live__getup [style="solid",  color="#000000"];
        live__eat -> live__test [style="solid",  color="#000000"];
        live__getup -> live__eat [style="solid",  color="#000000"];
        live -> live__getup [style="solid",  color="#000000"];
    }
