%%{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


    %% define steps
    __Value3["__Value[3∈0]<br />ᐸcontextᐳ"]:::plan
    __Value5["__Value[5∈0]<br />ᐸrootValueᐳ"]:::plan
    __InputStaticLeaf7{{"__InputStaticLeaf[7∈0]"}}:::plan
    Access31{{"Access[31∈1]<br />ᐸ3.pgSettingsᐳ"}}:::plan
    Access32{{"Access[32∈1]<br />ᐸ3.withPgClientᐳ"}}:::plan
    Object33{{"Object[33∈1]<br />ᐸ{pgSettings,withPgClient}ᐳ"}}:::plan
    Connection34{{"Connection[34∈0]<br />ᐸ30ᐳ"}}:::plan
    PgSelect35[["PgSelect[35∈1]<br />ᐸpersonᐳ"]]:::plan
    __Item36[/"__Item[36∈2]<br />ᐸ35ᐳ"\]:::itemplan
    PgSelectSingle37{{"PgSelectSingle[37∈2]<br />ᐸpersonᐳ"}}:::plan
    PgClassExpression38{{"PgClassExpression[38∈3]<br />ᐸ__person__.”id”ᐳ"}}:::plan
    PgClassExpression39{{"PgClassExpression[39∈3]<br />ᐸ__person__...full_name”ᐳ"}}:::plan
    PgClassExpression40{{"PgClassExpression[40∈3]<br />ᐸ__person__.”aliases”ᐳ"}}:::plan
    __Item41[/"__Item[41∈4]<br />ᐸ40ᐳ"\]:::itemplan

    %% plan dependencies
    __Value3 --> Access31
    __Value3 --> Access32
    Access31 & Access32 --> Object33
    __InputStaticLeaf7 --> Connection34
    Object33 & Connection34 --> PgSelect35
    PgSelect35 ==> __Item36
    __Item36 --> PgSelectSingle37
    PgSelectSingle37 --> PgClassExpression38
    PgSelectSingle37 --> PgClassExpression39
    PgSelectSingle37 --> PgClassExpression40
    PgClassExpression40 ==> __Item41

    subgraph "Buckets for queries/v4/empty-array"
    Bucket0("Bucket 0 (root)<br />1: __InputStaticLeaf[7]<br />2: Connection[34]"):::bucket
    classDef bucket0 stroke:#696969
    class Bucket0,__Value3,__Value5,__InputStaticLeaf7,Connection34 bucket0
    Bucket1("Bucket 1 (nullableBoundary)<br />Deps: 3, 34<br /><br />ROOT Connectionᐸ30ᐳ[34]<br />1: Access[31], Access[32]<br />2: Object[33]<br />3: PgSelect[35]"):::bucket
    classDef bucket1 stroke:#00bfff
    class Bucket1,Access31,Access32,Object33,PgSelect35 bucket1
    Bucket2("Bucket 2 (listItem)<br />ROOT __Item{2}ᐸ35ᐳ[36]"):::bucket
    classDef bucket2 stroke:#7f007f
    class Bucket2,__Item36,PgSelectSingle37 bucket2
    Bucket3("Bucket 3 (nullableBoundary)<br />Deps: 37<br /><br />ROOT PgSelectSingle{2}ᐸpersonᐳ[37]"):::bucket
    classDef bucket3 stroke:#ffa500
    class Bucket3,PgClassExpression38,PgClassExpression39,PgClassExpression40 bucket3
    Bucket4("Bucket 4 (listItem)<br />ROOT __Item{4}ᐸ40ᐳ[41]"):::bucket
    classDef bucket4 stroke:#0000ff
    class Bucket4,__Item41 bucket4
    Bucket0 --> Bucket1
    Bucket1 --> Bucket2
    Bucket2 --> Bucket3
    Bucket3 --> Bucket4
    end
