%%{init: {'themeVariables': { 'fontSize': '12px'}}}%%
graph TD
    classDef path fill:#eee,stroke:#000,color:#000
    classDef plan fill:#fff,stroke-width:1px,color:#000
    classDef itemplan fill:#fff,stroke-width:2px,color:#000
    classDef unbatchedplan fill:#dff,stroke-width:1px,color:#000
    classDef sideeffectplan fill:#fcc,stroke-width:2px,color:#000
    classDef bucket fill:#f6f6f6,color:#000,stroke-width:2px,text-align:left


    %% plan dependencies
    __Value2["__Value[2∈0]<br />ᐸcontextᐳ"]:::plan
    __Value4["__Value[4∈0]<br />ᐸrootValueᐳ"]:::plan
    Connection18{{"Connection[18∈0]<br />ᐸ14ᐳ"}}:::plan
    Object17{{"Object[17∈1]<br />ᐸ{pgSettings,withPgClient}ᐳ"}}:::plan
    Access15{{"Access[15∈1]<br />ᐸ2.pgSettingsᐳ"}}:::plan
    Access16{{"Access[16∈1]<br />ᐸ2.withPgClientᐳ"}}:::plan
    Access15 & Access16 --> Object17
    PgSelect19[["PgSelect[19∈1]<br />ᐸpersonᐳ"]]:::plan
    Object17 & Connection18 --> PgSelect19
    __Value2 --> Access15
    __Value2 --> Access16
    __Item20[/"__Item[20∈2]<br />ᐸ19ᐳ"\]:::itemplan
    PgSelect19 ==> __Item20
    PgSelectSingle21{{"PgSelectSingle[21∈2]<br />ᐸpersonᐳ"}}:::plan
    __Item20 --> PgSelectSingle21
    PgClassExpression22{{"PgClassExpression[22∈3]<br />ᐸ__person__.”id”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression22
    PgClassExpression23{{"PgClassExpression[23∈3]<br />ᐸ__person__.”first_name”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression23
    PgClassExpression24{{"PgClassExpression[24∈3]<br />ᐸ__person__.”last_name”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression24
    PgClassExpression25{{"PgClassExpression[25∈3]<br />ᐸ__person__...no_create”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression25
    PgClassExpression26{{"PgClassExpression[26∈3]<br />ᐸ__person__...no_update”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression26
    PgClassExpression27{{"PgClassExpression[27∈3]<br />ᐸ__person__..._no_order”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression27
    PgClassExpression28{{"PgClassExpression[28∈3]<br />ᐸ__person__...no_filter”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression28
    PgClassExpression29{{"PgClassExpression[29∈3]<br />ᐸ__person__...te_update”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression29
    PgClassExpression30{{"PgClassExpression[30∈3]<br />ᐸ__person__...er_filter”ᐳ"}}:::plan
    PgSelectSingle21 --> PgClassExpression30

    %% define steps

    subgraph "Buckets for queries/v4/d.order"
    Bucket0("Bucket 0 (root)"):::bucket
    classDef bucket0 stroke:#696969
    class Bucket0,__Value2,__Value4,Connection18 bucket0
    Bucket1("Bucket 1 (nullableBoundary)<br />Deps: 2, 18<br /><br />ROOT Connectionᐸ14ᐳ[18]<br />1: <br />ᐳ: Access[15], Access[16], Object[17]<br />2: PgSelect[19]"):::bucket
    classDef bucket1 stroke:#00bfff
    class Bucket1,Access15,Access16,Object17,PgSelect19 bucket1
    Bucket2("Bucket 2 (listItem)<br /><br />ROOT __Item{2}ᐸ19ᐳ[20]"):::bucket
    classDef bucket2 stroke:#7f007f
    class Bucket2,__Item20,PgSelectSingle21 bucket2
    Bucket3("Bucket 3 (nullableBoundary)<br />Deps: 21<br /><br />ROOT PgSelectSingle{2}ᐸpersonᐳ[21]"):::bucket
    classDef bucket3 stroke:#ffa500
    class Bucket3,PgClassExpression22,PgClassExpression23,PgClassExpression24,PgClassExpression25,PgClassExpression26,PgClassExpression27,PgClassExpression28,PgClassExpression29,PgClassExpression30 bucket3
    Bucket0 --> Bucket1
    Bucket1 --> Bucket2
    Bucket2 --> Bucket3
    classDef unary fill:#fafffa,borderWidth:8px
    class __Value2,__Value4,Connection18,Object17,PgSelect19,Access15,Access16 unary
    end
