%%{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
    Object14{{"Object[14∈0] ➊<br />ᐸ{pgSettings,withPgClient}ᐳ"}}:::plan
    Access12{{"Access[12∈0] ➊<br />ᐸ2.pgSettingsᐳ"}}:::plan
    Access13{{"Access[13∈0] ➊<br />ᐸ2.withPgClientᐳ"}}:::plan
    Access12 & Access13 --> Object14
    __Value2["__Value[2∈0] ➊<br />ᐸcontextᐳ"]:::plan
    __Value2 --> Access12
    __Value2 --> Access13
    Lambda160{{"Lambda[160∈0] ➊<br />ᐸcalculateLimitAndOffsetSQLᐳ"}}:::plan
    Constant176{{"Constant[176∈0] ➊<br />ᐸ§{ cursorLower: null, cursorUpper: null, first: null, last: ᐳ"}}:::plan
    Constant176 --> Lambda160
    __Value4["__Value[4∈0] ➊<br />ᐸrootValueᐳ"]:::plan
    Connection15{{"Connection[15∈0] ➊<br />ᐸ11ᐳ"}}:::plan
    Constant30{{"Constant[30∈0] ➊<br />ᐸfalseᐳ"}}:::plan
    Connection52{{"Connection[52∈0] ➊<br />ᐸ50ᐳ"}}:::plan
    Connection89{{"Connection[89∈0] ➊<br />ᐸ87ᐳ"}}:::plan
    Connection126{{"Connection[126∈0] ➊<br />ᐸ124ᐳ"}}:::plan
    Constant175{{"Constant[175∈0] ➊<br />ᐸ'192.168.0.0'ᐳ"}}:::plan
    Constant177{{"Constant[177∈0] ➊<br />ᐸ'192.168.0.0/16'ᐳ"}}:::plan
    Constant178{{"Constant[178∈0] ➊<br />ᐸ'08:00:2b:01:02:03'ᐳ"}}:::plan
    Constant179{{"Constant[179∈0] ➊<br />ᐸ'08:00:2b:01:02:03:04:05'ᐳ"}}:::plan
    PgSelect16[["PgSelect[16∈1] ➊<br />ᐸnetworkᐳ"]]:::plan
    Object14 & Constant175 & Connection15 & Lambda160 --> PgSelect16
    PgSelect31[["PgSelect[31∈1] ➊<br />ᐸnetwork(aggregate)ᐳ"]]:::plan
    Object14 & Constant175 & Connection15 & Lambda160 --> PgSelect31
    PgPageInfo17{{"PgPageInfo[17∈1] ➊"}}:::plan
    Connection15 --> PgPageInfo17
    First19{{"First[19∈1] ➊"}}:::plan
    PgSelect16 --> First19
    PgSelectSingle20{{"PgSelectSingle[20∈1] ➊<br />ᐸnetworkᐳ"}}:::plan
    First19 --> PgSelectSingle20
    PgCursor21{{"PgCursor[21∈1] ➊"}}:::plan
    List23{{"List[23∈1] ➊<br />ᐸ22ᐳ"}}:::plan
    List23 --> PgCursor21
    PgClassExpression22{{"PgClassExpression[22∈1] ➊<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle20 --> PgClassExpression22
    PgClassExpression22 --> List23
    Last25{{"Last[25∈1] ➊"}}:::plan
    PgSelect16 --> Last25
    PgSelectSingle26{{"PgSelectSingle[26∈1] ➊<br />ᐸnetworkᐳ"}}:::plan
    Last25 --> PgSelectSingle26
    PgCursor27{{"PgCursor[27∈1] ➊"}}:::plan
    List29{{"List[29∈1] ➊<br />ᐸ28ᐳ"}}:::plan
    List29 --> PgCursor27
    PgClassExpression28{{"PgClassExpression[28∈1] ➊<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle26 --> PgClassExpression28
    PgClassExpression28 --> List29
    First32{{"First[32∈1] ➊"}}:::plan
    PgSelect31 --> First32
    PgSelectSingle33{{"PgSelectSingle[33∈1] ➊<br />ᐸnetworkᐳ"}}:::plan
    First32 --> PgSelectSingle33
    PgClassExpression34{{"PgClassExpression[34∈1] ➊<br />ᐸcount(*)ᐳ"}}:::plan
    PgSelectSingle33 --> PgClassExpression34
    __Item36[/"__Item[36∈2]<br />ᐸ16ᐳ"\]:::itemplan
    PgSelect16 ==> __Item36
    PgSelectSingle37{{"PgSelectSingle[37∈2]<br />ᐸnetworkᐳ"}}:::plan
    __Item36 --> PgSelectSingle37
    PgCursor38{{"PgCursor[38∈3]"}}:::plan
    List40{{"List[40∈3]<br />ᐸ39ᐳ"}}:::plan
    List40 --> PgCursor38
    PgClassExpression39{{"PgClassExpression[39∈3]<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle37 --> PgClassExpression39
    PgClassExpression39 --> List40
    PgClassExpression42{{"PgClassExpression[42∈3]<br />ᐸ__network__.”inet”ᐳ"}}:::plan
    PgSelectSingle37 --> PgClassExpression42
    PgClassExpression43{{"PgClassExpression[43∈3]<br />ᐸ__network__.”cidr”ᐳ"}}:::plan
    PgSelectSingle37 --> PgClassExpression43
    PgClassExpression44{{"PgClassExpression[44∈3]<br />ᐸ__network__.”macaddr”ᐳ"}}:::plan
    PgSelectSingle37 --> PgClassExpression44
    PgClassExpression45{{"PgClassExpression[45∈3]<br />ᐸ__network__.”macaddr8”ᐳ"}}:::plan
    PgSelectSingle37 --> PgClassExpression45
    PgSelect53[["PgSelect[53∈4] ➊<br />ᐸnetworkᐳ"]]:::plan
    Object14 & Constant177 & Connection52 & Lambda160 --> PgSelect53
    PgSelect68[["PgSelect[68∈4] ➊<br />ᐸnetwork(aggregate)ᐳ"]]:::plan
    Object14 & Constant177 & Connection52 & Lambda160 --> PgSelect68
    PgPageInfo54{{"PgPageInfo[54∈4] ➊"}}:::plan
    Connection52 --> PgPageInfo54
    First56{{"First[56∈4] ➊"}}:::plan
    PgSelect53 --> First56
    PgSelectSingle57{{"PgSelectSingle[57∈4] ➊<br />ᐸnetworkᐳ"}}:::plan
    First56 --> PgSelectSingle57
    PgCursor58{{"PgCursor[58∈4] ➊"}}:::plan
    List60{{"List[60∈4] ➊<br />ᐸ59ᐳ"}}:::plan
    List60 --> PgCursor58
    PgClassExpression59{{"PgClassExpression[59∈4] ➊<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle57 --> PgClassExpression59
    PgClassExpression59 --> List60
    Last62{{"Last[62∈4] ➊"}}:::plan
    PgSelect53 --> Last62
    PgSelectSingle63{{"PgSelectSingle[63∈4] ➊<br />ᐸnetworkᐳ"}}:::plan
    Last62 --> PgSelectSingle63
    PgCursor64{{"PgCursor[64∈4] ➊"}}:::plan
    List66{{"List[66∈4] ➊<br />ᐸ65ᐳ"}}:::plan
    List66 --> PgCursor64
    PgClassExpression65{{"PgClassExpression[65∈4] ➊<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle63 --> PgClassExpression65
    PgClassExpression65 --> List66
    First69{{"First[69∈4] ➊"}}:::plan
    PgSelect68 --> First69
    PgSelectSingle70{{"PgSelectSingle[70∈4] ➊<br />ᐸnetworkᐳ"}}:::plan
    First69 --> PgSelectSingle70
    PgClassExpression71{{"PgClassExpression[71∈4] ➊<br />ᐸcount(*)ᐳ"}}:::plan
    PgSelectSingle70 --> PgClassExpression71
    __Item73[/"__Item[73∈5]<br />ᐸ53ᐳ"\]:::itemplan
    PgSelect53 ==> __Item73
    PgSelectSingle74{{"PgSelectSingle[74∈5]<br />ᐸnetworkᐳ"}}:::plan
    __Item73 --> PgSelectSingle74
    PgCursor75{{"PgCursor[75∈6]"}}:::plan
    List77{{"List[77∈6]<br />ᐸ76ᐳ"}}:::plan
    List77 --> PgCursor75
    PgClassExpression76{{"PgClassExpression[76∈6]<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle74 --> PgClassExpression76
    PgClassExpression76 --> List77
    PgClassExpression79{{"PgClassExpression[79∈6]<br />ᐸ__network__.”inet”ᐳ"}}:::plan
    PgSelectSingle74 --> PgClassExpression79
    PgClassExpression80{{"PgClassExpression[80∈6]<br />ᐸ__network__.”cidr”ᐳ"}}:::plan
    PgSelectSingle74 --> PgClassExpression80
    PgClassExpression81{{"PgClassExpression[81∈6]<br />ᐸ__network__.”macaddr”ᐳ"}}:::plan
    PgSelectSingle74 --> PgClassExpression81
    PgClassExpression82{{"PgClassExpression[82∈6]<br />ᐸ__network__.”macaddr8”ᐳ"}}:::plan
    PgSelectSingle74 --> PgClassExpression82
    PgSelect90[["PgSelect[90∈7] ➊<br />ᐸnetworkᐳ"]]:::plan
    Object14 & Constant178 & Connection89 & Lambda160 --> PgSelect90
    PgSelect105[["PgSelect[105∈7] ➊<br />ᐸnetwork(aggregate)ᐳ"]]:::plan
    Object14 & Constant178 & Connection89 & Lambda160 --> PgSelect105
    PgPageInfo91{{"PgPageInfo[91∈7] ➊"}}:::plan
    Connection89 --> PgPageInfo91
    First93{{"First[93∈7] ➊"}}:::plan
    PgSelect90 --> First93
    PgSelectSingle94{{"PgSelectSingle[94∈7] ➊<br />ᐸnetworkᐳ"}}:::plan
    First93 --> PgSelectSingle94
    PgCursor95{{"PgCursor[95∈7] ➊"}}:::plan
    List97{{"List[97∈7] ➊<br />ᐸ96ᐳ"}}:::plan
    List97 --> PgCursor95
    PgClassExpression96{{"PgClassExpression[96∈7] ➊<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle94 --> PgClassExpression96
    PgClassExpression96 --> List97
    Last99{{"Last[99∈7] ➊"}}:::plan
    PgSelect90 --> Last99
    PgSelectSingle100{{"PgSelectSingle[100∈7] ➊<br />ᐸnetworkᐳ"}}:::plan
    Last99 --> PgSelectSingle100
    PgCursor101{{"PgCursor[101∈7] ➊"}}:::plan
    List103{{"List[103∈7] ➊<br />ᐸ102ᐳ"}}:::plan
    List103 --> PgCursor101
    PgClassExpression102{{"PgClassExpression[102∈7] ➊<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle100 --> PgClassExpression102
    PgClassExpression102 --> List103
    First106{{"First[106∈7] ➊"}}:::plan
    PgSelect105 --> First106
    PgSelectSingle107{{"PgSelectSingle[107∈7] ➊<br />ᐸnetworkᐳ"}}:::plan
    First106 --> PgSelectSingle107
    PgClassExpression108{{"PgClassExpression[108∈7] ➊<br />ᐸcount(*)ᐳ"}}:::plan
    PgSelectSingle107 --> PgClassExpression108
    __Item110[/"__Item[110∈8]<br />ᐸ90ᐳ"\]:::itemplan
    PgSelect90 ==> __Item110
    PgSelectSingle111{{"PgSelectSingle[111∈8]<br />ᐸnetworkᐳ"}}:::plan
    __Item110 --> PgSelectSingle111
    PgCursor112{{"PgCursor[112∈9]"}}:::plan
    List114{{"List[114∈9]<br />ᐸ113ᐳ"}}:::plan
    List114 --> PgCursor112
    PgClassExpression113{{"PgClassExpression[113∈9]<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle111 --> PgClassExpression113
    PgClassExpression113 --> List114
    PgClassExpression116{{"PgClassExpression[116∈9]<br />ᐸ__network__.”inet”ᐳ"}}:::plan
    PgSelectSingle111 --> PgClassExpression116
    PgClassExpression117{{"PgClassExpression[117∈9]<br />ᐸ__network__.”cidr”ᐳ"}}:::plan
    PgSelectSingle111 --> PgClassExpression117
    PgClassExpression118{{"PgClassExpression[118∈9]<br />ᐸ__network__.”macaddr”ᐳ"}}:::plan
    PgSelectSingle111 --> PgClassExpression118
    PgClassExpression119{{"PgClassExpression[119∈9]<br />ᐸ__network__.”macaddr8”ᐳ"}}:::plan
    PgSelectSingle111 --> PgClassExpression119
    PgSelect127[["PgSelect[127∈10] ➊<br />ᐸnetworkᐳ"]]:::plan
    Object14 & Constant179 & Connection126 & Lambda160 --> PgSelect127
    PgSelect142[["PgSelect[142∈10] ➊<br />ᐸnetwork(aggregate)ᐳ"]]:::plan
    Object14 & Constant179 & Connection126 & Lambda160 --> PgSelect142
    PgPageInfo128{{"PgPageInfo[128∈10] ➊"}}:::plan
    Connection126 --> PgPageInfo128
    First130{{"First[130∈10] ➊"}}:::plan
    PgSelect127 --> First130
    PgSelectSingle131{{"PgSelectSingle[131∈10] ➊<br />ᐸnetworkᐳ"}}:::plan
    First130 --> PgSelectSingle131
    PgCursor132{{"PgCursor[132∈10] ➊"}}:::plan
    List134{{"List[134∈10] ➊<br />ᐸ133ᐳ"}}:::plan
    List134 --> PgCursor132
    PgClassExpression133{{"PgClassExpression[133∈10] ➊<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle131 --> PgClassExpression133
    PgClassExpression133 --> List134
    Last136{{"Last[136∈10] ➊"}}:::plan
    PgSelect127 --> Last136
    PgSelectSingle137{{"PgSelectSingle[137∈10] ➊<br />ᐸnetworkᐳ"}}:::plan
    Last136 --> PgSelectSingle137
    PgCursor138{{"PgCursor[138∈10] ➊"}}:::plan
    List140{{"List[140∈10] ➊<br />ᐸ139ᐳ"}}:::plan
    List140 --> PgCursor138
    PgClassExpression139{{"PgClassExpression[139∈10] ➊<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle137 --> PgClassExpression139
    PgClassExpression139 --> List140
    First143{{"First[143∈10] ➊"}}:::plan
    PgSelect142 --> First143
    PgSelectSingle144{{"PgSelectSingle[144∈10] ➊<br />ᐸnetworkᐳ"}}:::plan
    First143 --> PgSelectSingle144
    PgClassExpression145{{"PgClassExpression[145∈10] ➊<br />ᐸcount(*)ᐳ"}}:::plan
    PgSelectSingle144 --> PgClassExpression145
    __Item147[/"__Item[147∈11]<br />ᐸ127ᐳ"\]:::itemplan
    PgSelect127 ==> __Item147
    PgSelectSingle148{{"PgSelectSingle[148∈11]<br />ᐸnetworkᐳ"}}:::plan
    __Item147 --> PgSelectSingle148
    PgCursor149{{"PgCursor[149∈12]"}}:::plan
    List151{{"List[151∈12]<br />ᐸ150ᐳ"}}:::plan
    List151 --> PgCursor149
    PgClassExpression150{{"PgClassExpression[150∈12]<br />ᐸ__network__.”id”ᐳ"}}:::plan
    PgSelectSingle148 --> PgClassExpression150
    PgClassExpression150 --> List151
    PgClassExpression153{{"PgClassExpression[153∈12]<br />ᐸ__network__.”inet”ᐳ"}}:::plan
    PgSelectSingle148 --> PgClassExpression153
    PgClassExpression154{{"PgClassExpression[154∈12]<br />ᐸ__network__.”cidr”ᐳ"}}:::plan
    PgSelectSingle148 --> PgClassExpression154
    PgClassExpression155{{"PgClassExpression[155∈12]<br />ᐸ__network__.”macaddr”ᐳ"}}:::plan
    PgSelectSingle148 --> PgClassExpression155
    PgClassExpression156{{"PgClassExpression[156∈12]<br />ᐸ__network__.”macaddr8”ᐳ"}}:::plan
    PgSelectSingle148 --> PgClassExpression156

    %% define steps

    subgraph "Buckets for queries/v4/pg11.network_types"
    Bucket0("Bucket 0 (root)"):::bucket
    classDef bucket0 stroke:#696969
    class Bucket0,__Value2,__Value4,Access12,Access13,Object14,Connection15,Constant30,Connection52,Connection89,Connection126,Lambda160,Constant175,Constant176,Constant177,Constant178,Constant179 bucket0
    Bucket1("Bucket 1 (nullableBoundary)<br />Deps: 14, 175, 15, 160, 30<br /><br />ROOT Connectionᐸ11ᐳ[15]"):::bucket
    classDef bucket1 stroke:#00bfff
    class Bucket1,PgSelect16,PgPageInfo17,First19,PgSelectSingle20,PgCursor21,PgClassExpression22,List23,Last25,PgSelectSingle26,PgCursor27,PgClassExpression28,List29,PgSelect31,First32,PgSelectSingle33,PgClassExpression34 bucket1
    Bucket2("Bucket 2 (listItem)<br /><br />ROOT __Item{2}ᐸ16ᐳ[36]"):::bucket
    classDef bucket2 stroke:#7f007f
    class Bucket2,__Item36,PgSelectSingle37 bucket2
    Bucket3("Bucket 3 (nullableBoundary)<br />Deps: 37<br /><br />ROOT PgSelectSingle{2}ᐸnetworkᐳ[37]"):::bucket
    classDef bucket3 stroke:#ffa500
    class Bucket3,PgCursor38,PgClassExpression39,List40,PgClassExpression42,PgClassExpression43,PgClassExpression44,PgClassExpression45 bucket3
    Bucket4("Bucket 4 (nullableBoundary)<br />Deps: 14, 177, 52, 160, 30<br /><br />ROOT Connectionᐸ50ᐳ[52]"):::bucket
    classDef bucket4 stroke:#0000ff
    class Bucket4,PgSelect53,PgPageInfo54,First56,PgSelectSingle57,PgCursor58,PgClassExpression59,List60,Last62,PgSelectSingle63,PgCursor64,PgClassExpression65,List66,PgSelect68,First69,PgSelectSingle70,PgClassExpression71 bucket4
    Bucket5("Bucket 5 (listItem)<br /><br />ROOT __Item{5}ᐸ53ᐳ[73]"):::bucket
    classDef bucket5 stroke:#7fff00
    class Bucket5,__Item73,PgSelectSingle74 bucket5
    Bucket6("Bucket 6 (nullableBoundary)<br />Deps: 74<br /><br />ROOT PgSelectSingle{5}ᐸnetworkᐳ[74]"):::bucket
    classDef bucket6 stroke:#ff1493
    class Bucket6,PgCursor75,PgClassExpression76,List77,PgClassExpression79,PgClassExpression80,PgClassExpression81,PgClassExpression82 bucket6
    Bucket7("Bucket 7 (nullableBoundary)<br />Deps: 14, 178, 89, 160, 30<br /><br />ROOT Connectionᐸ87ᐳ[89]"):::bucket
    classDef bucket7 stroke:#808000
    class Bucket7,PgSelect90,PgPageInfo91,First93,PgSelectSingle94,PgCursor95,PgClassExpression96,List97,Last99,PgSelectSingle100,PgCursor101,PgClassExpression102,List103,PgSelect105,First106,PgSelectSingle107,PgClassExpression108 bucket7
    Bucket8("Bucket 8 (listItem)<br /><br />ROOT __Item{8}ᐸ90ᐳ[110]"):::bucket
    classDef bucket8 stroke:#dda0dd
    class Bucket8,__Item110,PgSelectSingle111 bucket8
    Bucket9("Bucket 9 (nullableBoundary)<br />Deps: 111<br /><br />ROOT PgSelectSingle{8}ᐸnetworkᐳ[111]"):::bucket
    classDef bucket9 stroke:#ff0000
    class Bucket9,PgCursor112,PgClassExpression113,List114,PgClassExpression116,PgClassExpression117,PgClassExpression118,PgClassExpression119 bucket9
    Bucket10("Bucket 10 (nullableBoundary)<br />Deps: 14, 179, 126, 160, 30<br /><br />ROOT Connectionᐸ124ᐳ[126]"):::bucket
    classDef bucket10 stroke:#ffff00
    class Bucket10,PgSelect127,PgPageInfo128,First130,PgSelectSingle131,PgCursor132,PgClassExpression133,List134,Last136,PgSelectSingle137,PgCursor138,PgClassExpression139,List140,PgSelect142,First143,PgSelectSingle144,PgClassExpression145 bucket10
    Bucket11("Bucket 11 (listItem)<br /><br />ROOT __Item{11}ᐸ127ᐳ[147]"):::bucket
    classDef bucket11 stroke:#00ffff
    class Bucket11,__Item147,PgSelectSingle148 bucket11
    Bucket12("Bucket 12 (nullableBoundary)<br />Deps: 148<br /><br />ROOT PgSelectSingle{11}ᐸnetworkᐳ[148]"):::bucket
    classDef bucket12 stroke:#4169e1
    class Bucket12,PgCursor149,PgClassExpression150,List151,PgClassExpression153,PgClassExpression154,PgClassExpression155,PgClassExpression156 bucket12
    Bucket0 --> Bucket1 & Bucket4 & Bucket7 & Bucket10
    Bucket1 --> Bucket2
    Bucket2 --> Bucket3
    Bucket4 --> Bucket5
    Bucket5 --> Bucket6
    Bucket7 --> Bucket8
    Bucket8 --> Bucket9
    Bucket10 --> Bucket11
    Bucket11 --> Bucket12
    end
