{
  "linux/amd64": {
    "SLSA": {
      "buildDefinition": {
        "buildType": "https://github.com/moby/buildkit/blob/master/docs/attestations/slsa-definitions.md",
        "externalParameters": {
          "configSource": {
            "path": "Dockerfile"
          },
          "request": {
            "args": {
              "build-arg:COMPILE_LICENSING": "true",
              "label:org.dfire.candidate.tag": "testing-64588ab76c26-41813823404-1",
              "label:org.dfire.ci.run": "https://github.com/DFIRe-Development/dfire/actions/runs/41813823404",
              "label:org.opencontainers.image.revision": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
              "label:org.opencontainers.image.source": "https://github.com/DFIRe-Development/dfire",
              "label:org.opencontainers.image.version": "1.15.1",
              "target": "production"
            },
            "compatibilityVersion": 30,
            "frontend": "dockerfile.v0",
            "locals": [
              {
                "name": "context"
              },
              {
                "name": "dockerfile"
              }
            ],
            "root": {
              "configSource": {
                "path": "Dockerfile"
              },
              "request": {
                "args": {
                  "build-arg:COMPILE_LICENSING": "true",
                  "label:org.dfire.candidate.tag": "testing-64588ab76c26-41813823404-1",
                  "label:org.dfire.ci.run": "https://github.com/DFIRe-Development/dfire/actions/runs/41813823404",
                  "label:org.opencontainers.image.revision": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
                  "label:org.opencontainers.image.source": "https://github.com/DFIRe-Development/dfire",
                  "label:org.opencontainers.image.version": "1.15.1",
                  "target": "production",
                  "vcs:localdir:context": ".",
                  "vcs:localdir:dockerfile": "docker/backend",
                  "vcs:revision": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
                  "vcs:source": "https://github.com/DFIRe-Development/dfire"
                }
              }
            }
          }
        },
        "internalParameters": {
          "buildConfig": {
            "digestMapping": {
              "sha256:05bd871f21f14e26129c6ef5c9beda2f62141af400cd8ab813c9ed56ef50a98f": "step9",
              "sha256:062c79e8a56d63a25a183e00871765be21755c95cae18526990bd52f1e5b521b": "step21",
              "sha256:1c709bce739ff3785cd1d875d07ab4fd9a286ee3bc1d5db8e1fd7f1116bfde9d": "step0",
              "sha256:28d4231a4cd03211ad67a4900a8a883f695dfeb8030ebbeb690bb228cc49d091": "step15",
              "sha256:293d2e9ae0d1138aec1a7e2e5c21c8a6e0fc1bb5cd7179cc84b1620da1de0b01": "step18",
              "sha256:4df8fedfb16fc8cbb91d891c432205348ae30887b6bb25f7eda129c7e8a23271": "step8",
              "sha256:5a9db0f2d14b8e86f1b351c88a2ead5971277009e89aade9df4e944e1032b8b3": "step4",
              "sha256:62f4965ed98f6efd7df12c108a7acb5e87e319ed29034e069ec5d17e588c6f80": "step20",
              "sha256:6b2aeda1ab22a7db62777e3235302a155921022a34ab145ba5065b1edec3d11d": "step13",
              "sha256:71744e949122195eec2a2d0d41c83aa6e175d2b8a55d79d02f1c8d2d798ba56c": "step10",
              "sha256:757e4a8e3837c8e25c8746844a445383a10d1eadd75b22deead5697fc7a98e1a": "step1",
              "sha256:7e6818f7860ebe90fab4604531c626a2452371401bab2092964103f7da1da79f": "step2",
              "sha256:88ae5842501033f8c501119c568bad484d922874aa903b78bff14bb7b2407022": "step17",
              "sha256:98ce533e3703d5d34a8e8ed50ee087cda169d8c24131bf3c7fa522f31b76a52e": "step11",
              "sha256:aa9a16ff5a88326640adf9fde78e25d1bc94a6dac02b6f315b4ed9d2327eda7f": "step3",
              "sha256:c54ce0ca9bef15d4108cdd9ac48fb21c19f16a6e56db34302e3f2fabc45b574b": "step6",
              "sha256:d5e93064ecd721e64e60107a54afbc9c4850b30aa1130e83a540a146b401717c": "step19",
              "sha256:db8496fc6bfa25ea3419ba11e7eceaf265d03c4d09ea1a004c7af0afd86791bd": "step7",
              "sha256:ec55582cc94c748d5adb534fe963870edc87de26bc6864607cfc9e0219d54eb6": "step12",
              "sha256:edbd2ff20996e057421ef4989d3f97baebbc1941da6f31d98dac6ff0859020ab": "step16",
              "sha256:f00cf8ae91ec336b2c998456f544995948a7b828c040067218266de3bcff316e": "step5",
              "sha256:fa449298ac84b7ade4b4602b1d4bffc19761c436b5b524484685c25735faf23e": "step14"
            },
            "llbDefinition": [
              {
                "id": "step0",
                "op": {
                  "Op": {
                    "source": {
                      "identifier": "docker-image://docker.io/library/python:3.14-slim@sha256:cad9a2c871761c413caa6fdd6441c783451e740a48aaeba60ae62a8b53525ef6"
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step1",
                "inputs": [
                  "step0:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "mkdir": {
                              "makeParents": true,
                              "mode": 493,
                              "path": "/app",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": -1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step2",
                "inputs": [
                  "step1:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "apt-get update && apt-get install -y --no-install-recommends     libpq5     libmagic1     libpango-1.0-0     libpangoft2-1.0-0     libharfbuzz-subset0     curl     gnupg     && curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc        | gpg --dearmor -o /usr/share/keyrings/pgdg.gpg     && echo \"deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt trixie-pgdg main\"        > /etc/apt/sources.list.d/pgdg.list     && apt-get update     && apt-get install -y --no-install-recommends        postgresql-client-16        postgresql-client-17        postgresql-client-18     && rm -rf /var/lib/apt/lists/*"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step3",
                "inputs": [
                  "step1:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "apt-get update && apt-get install -y --no-install-recommends     libpq-dev     gcc     libc-dev     libmagic1     libpango-1.0-0     libpangoft2-1.0-0     libharfbuzz-subset0     curl     gnupg     && curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc        | gpg --dearmor -o /usr/share/keyrings/pgdg.gpg     && echo \"deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt trixie-pgdg main\"        > /etc/apt/sources.list.d/pgdg.list     && apt-get update     && apt-get install -y --no-install-recommends        postgresql-client-16        postgresql-client-17        postgresql-client-18     && rm -rf /var/lib/apt/lists/*"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step4",
                "op": {
                  "Op": {
                    "source": {
                      "attrs": {
                        "local.excludepatterns": "[\"dfire_gui/coverage\",\"dfire_gui/dist\",\"dfire_gui/node_modules\",\"dfire_gui/playwright-report\",\"dfire_gui/test-results\"]",
                        "local.followpaths": "[\"dfire_api\",\"dfire_api/requirements.txt\",\"dfire_gui/package-lock.json\",\"docker/backend/entrypoint.sh\",\"docker/backend/prune_site_packages.py\",\"docker/backend/start-server.sh\"]",
                        "local.sharedkeyhint": "context"
                      },
                      "identifier": "local://context"
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step5",
                "inputs": [
                  "step3:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/app/",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/dfire_api/requirements.txt",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step6",
                "inputs": [
                  "step5:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/tmp/prune_site_packages.py",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/docker/backend/prune_site_packages.py",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step7",
                "inputs": [
                  "step6:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "pip install --require-hashes --no-deps --ignore-requires-python -r requirements.txt     && python /tmp/prune_site_packages.py"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        },
                        {
                          "cacheOpt": {
                            "ID": "//root/.cache/pip",
                            "sharing": 2
                          },
                          "dest": "/root/.cache/pip",
                          "input": -1,
                          "mountType": 3,
                          "output": -1
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step8",
                "inputs": [
                  "step7:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "cp -a $(python -c \"import site; print(site.getsitepackages()[0])\") /site-packages"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step9",
                "inputs": [
                  "step8:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/app/",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/dfire_api",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step10",
                "inputs": [
                  "step9:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/app/package-lock-gui.json",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/dfire_gui/package-lock.json",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step11",
                "inputs": [
                  "step10:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "if [ \"$COMPILE_LICENSING\" = \"true\" ]; then         set -eux;         pip install \"cython>=3.0\" setuptools;         python cython_build.py build_ext --inplace;         rm -f core/licensing/offline.py core/licensing/offline.c               core/licensing/services.py core/licensing/services.c               core/licensing/middleware.py core/licensing/middleware.c               core/licensing/system_id.py core/licensing/system_id.c;         rm -rf build;         pip uninstall -y cython setuptools;         echo \"Compiled licensing modules:\"; ls -1 core/licensing/*.so;     fi"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1",
                          "COMPILE_LICENSING=true"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        },
                        {
                          "cacheOpt": {
                            "ID": "//root/.cache/pip",
                            "sharing": 2
                          },
                          "dest": "/root/.cache/pip",
                          "input": -1,
                          "mountType": 3,
                          "output": -1
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step12",
                "inputs": [
                  "step11:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "SECRET_KEY=build-time-secret-for-collectstatic     CREDENTIAL_ENCRYPTION_KEY=build-time-key-for-collectstatic     DEBUG=false     python manage.py collectstatic --noinput"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1",
                          "COMPILE_LICENSING=true"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step13",
                "inputs": [
                  "step2:0",
                  "step12:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "cp -a /tmp/site-packages/* $(python -c \"import site; print(site.getsitepackages()[0])\")/"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        },
                        {
                          "dest": "/tmp/site-packages",
                          "input": 1,
                          "output": -1,
                          "readonly": true,
                          "selector": "/site-packages"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step14",
                "inputs": [
                  "step13:0",
                  "step12:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/usr/local/bin",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/usr/local/bin",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step15",
                "inputs": [
                  "step14:0",
                  "step12:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/app",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/app",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step16",
                "inputs": [
                  "step15:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/entrypoint.sh",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/docker/backend/entrypoint.sh",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step17",
                "inputs": [
                  "step16:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/start-server.sh",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/docker/backend/start-server.sh",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step18",
                "inputs": [
                  "step17:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "chmod +x /entrypoint.sh /start-server.sh"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step19",
                "inputs": [
                  "step18:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "useradd --create-home --shell /bin/bash dfire     && chown -R dfire:dfire /app"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step20",
                "inputs": [
                  "step19:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "mkdir -p /app/media /app/staticfiles     && chown -R dfire:dfire /app/media /app/staticfiles     && chmod 750 /app/media     && chmod 755 /app/staticfiles"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "amd64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step21",
                "inputs": [
                  "step20:0"
                ],
                "op": {
                  "Op": {}
                }
              }
            ]
          },
          "builderPlatform": "linux/amd64",
          "dockerfileVersion": "1.28.0",
          "github_actor": "AnttiKurittu",
          "github_actor_id": "16835129",
          "github_event_name": "workflow_dispatch",
          "github_event_payload": {
            "inputs": {
              "build_backend": "true",
              "build_frontend": "true"
            },
            "organization": {
              "avatar_url": "https://avatars.githubusercontent.com/u/298633087?v=4",
              "description": "DFIRe Development",
              "events_url": "https://api.github.com/orgs/DFIRe-Development/events",
              "hooks_url": "https://api.github.com/orgs/DFIRe-Development/hooks",
              "id": 298633087,
              "issues_url": "https://api.github.com/orgs/DFIRe-Development/issues",
              "login": "DFIRe-Development",
              "members_url": "https://api.github.com/orgs/DFIRe-Development/members{/member}",
              "node_id": "O_kgDOEczHfw",
              "public_members_url": "https://api.github.com/orgs/DFIRe-Development/public_members{/member}",
              "repos_url": "https://api.github.com/orgs/DFIRe-Development/repos",
              "url": "https://api.github.com/orgs/DFIRe-Development"
            },
            "ref": "refs/heads/release/next",
            "repository": {
              "allow_forking": false,
              "archive_url": "https://api.github.com/repos/DFIRe-Development/dfire/{archive_format}{/ref}",
              "archived": false,
              "assignees_url": "https://api.github.com/repos/DFIRe-Development/dfire/assignees{/user}",
              "blobs_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/blobs{/sha}",
              "branches_url": "https://api.github.com/repos/DFIRe-Development/dfire/branches{/branch}",
              "clone_url": "https://github.com/DFIRe-Development/dfire.git",
              "collaborators_url": "https://api.github.com/repos/DFIRe-Development/dfire/collaborators{/collaborator}",
              "comments_url": "https://api.github.com/repos/DFIRe-Development/dfire/comments{/number}",
              "commits_url": "https://api.github.com/repos/DFIRe-Development/dfire/commits{/sha}",
              "compare_url": "https://api.github.com/repos/DFIRe-Development/dfire/compare/{base}...{head}",
              "contents_url": "https://api.github.com/repos/DFIRe-Development/dfire/contents/{+path}",
              "contributors_url": "https://api.github.com/repos/DFIRe-Development/dfire/contributors",
              "created_at": "2025-12-30T14:17:36Z",
              "custom_properties": {},
              "default_branch": "main",
              "deployments_url": "https://api.github.com/repos/DFIRe-Development/dfire/deployments",
              "description": "DFIRe case management application",
              "disabled": false,
              "downloads_url": "https://api.github.com/repos/DFIRe-Development/dfire/downloads",
              "events_url": "https://api.github.com/repos/DFIRe-Development/dfire/events",
              "fork": false,
              "forks": 0,
              "forks_count": 0,
              "forks_url": "https://api.github.com/repos/DFIRe-Development/dfire/forks",
              "full_name": "DFIRe-Development/dfire",
              "git_commits_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/commits{/sha}",
              "git_refs_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/refs{/sha}",
              "git_tags_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/tags{/sha}",
              "git_url": "git://github.com/DFIRe-Development/dfire.git",
              "has_discussions": false,
              "has_downloads": false,
              "has_issues": true,
              "has_pages": false,
              "has_projects": true,
              "has_pull_requests": true,
              "has_wiki": false,
              "homepage": "",
              "hooks_url": "https://api.github.com/repos/DFIRe-Development/dfire/hooks",
              "html_url": "https://github.com/DFIRe-Development/dfire",
              "id": 1125321212,
              "is_template": false,
              "issue_comment_url": "https://api.github.com/repos/DFIRe-Development/dfire/issues/comments{/number}",
              "issue_events_url": "https://api.github.com/repos/DFIRe-Development/dfire/issues/events{/number}",
              "issues_url": "https://api.github.com/repos/DFIRe-Development/dfire/issues{/number}",
              "keys_url": "https://api.github.com/repos/DFIRe-Development/dfire/keys{/key_id}",
              "labels_url": "https://api.github.com/repos/DFIRe-Development/dfire/labels{/name}",
              "language": "Python",
              "languages_url": "https://api.github.com/repos/DFIRe-Development/dfire/languages",
              "license": {
                "key": "other",
                "name": "Other",
                "node_id": "MDc6TGljZW5zZTA=",
                "spdx_id": "NOASSERTION",
                "url": null
              },
              "merges_url": "https://api.github.com/repos/DFIRe-Development/dfire/merges",
              "milestones_url": "https://api.github.com/repos/DFIRe-Development/dfire/milestones{/number}",
              "mirror_url": null,
              "name": "dfire",
              "node_id": "R_kgDOQxMJ_A",
              "notifications_url": "https://api.github.com/repos/DFIRe-Development/dfire/notifications{?since,all,participating}",
              "open_issues": 134,
              "open_issues_count": 134,
              "owner": {
                "avatar_url": "https://avatars.githubusercontent.com/u/298633087?v=4",
                "events_url": "https://api.github.com/users/DFIRe-Development/events{/privacy}",
                "followers_url": "https://api.github.com/users/DFIRe-Development/followers",
                "following_url": "https://api.github.com/users/DFIRe-Development/following{/other_user}",
                "gists_url": "https://api.github.com/users/DFIRe-Development/gists{/gist_id}",
                "gravatar_id": "",
                "html_url": "https://github.com/DFIRe-Development",
                "id": 298633087,
                "login": "DFIRe-Development",
                "node_id": "O_kgDOEczHfw",
                "organizations_url": "https://api.github.com/users/DFIRe-Development/orgs",
                "received_events_url": "https://api.github.com/users/DFIRe-Development/received_events",
                "repos_url": "https://api.github.com/users/DFIRe-Development/repos",
                "site_admin": false,
                "starred_url": "https://api.github.com/users/DFIRe-Development/starred{/owner}{/repo}",
                "subscriptions_url": "https://api.github.com/users/DFIRe-Development/subscriptions",
                "type": "Organization",
                "url": "https://api.github.com/users/DFIRe-Development",
                "user_view_type": "public"
              },
              "private": true,
              "pull_request_creation_policy": "all",
              "pulls_url": "https://api.github.com/repos/DFIRe-Development/dfire/pulls{/number}",
              "pushed_at": "2026-11-04T10:10:33Z",
              "releases_url": "https://api.github.com/repos/DFIRe-Development/dfire/releases{/id}",
              "size": 141331,
              "ssh_url": "git@github.com:DFIRe-Development/dfire.git",
              "stargazers_count": 1,
              "stargazers_url": "https://api.github.com/repos/DFIRe-Development/dfire/stargazers",
              "statuses_url": "https://api.github.com/repos/DFIRe-Development/dfire/statuses/{sha}",
              "subscribers_url": "https://api.github.com/repos/DFIRe-Development/dfire/subscribers",
              "subscription_url": "https://api.github.com/repos/DFIRe-Development/dfire/subscription",
              "svn_url": "https://github.com/DFIRe-Development/dfire",
              "tags_url": "https://api.github.com/repos/DFIRe-Development/dfire/tags",
              "teams_url": "https://api.github.com/repos/DFIRe-Development/dfire/teams",
              "topics": [],
              "trees_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/trees{/sha}",
              "updated_at": "2026-11-01T12:29:52Z",
              "url": "https://api.github.com/repos/DFIRe-Development/dfire",
              "visibility": "private",
              "watchers": 1,
              "watchers_count": 1,
              "web_commit_signoff_required": false
            },
            "sender": {
              "avatar_url": "https://avatars.githubusercontent.com/u/16835129?v=4",
              "events_url": "https://api.github.com/users/AnttiKurittu/events{/privacy}",
              "followers_url": "https://api.github.com/users/AnttiKurittu/followers",
              "following_url": "https://api.github.com/users/AnttiKurittu/following{/other_user}",
              "gists_url": "https://api.github.com/users/AnttiKurittu/gists{/gist_id}",
              "gravatar_id": "",
              "html_url": "https://github.com/AnttiKurittu",
              "id": 16835129,
              "login": "AnttiKurittu",
              "node_id": "MDQ6VXNlcjE2ODM1MTI5",
              "organizations_url": "https://api.github.com/users/AnttiKurittu/orgs",
              "received_events_url": "https://api.github.com/users/AnttiKurittu/received_events",
              "repos_url": "https://api.github.com/users/AnttiKurittu/repos",
              "site_admin": false,
              "starred_url": "https://api.github.com/users/AnttiKurittu/starred{/owner}{/repo}",
              "subscriptions_url": "https://api.github.com/users/AnttiKurittu/subscriptions",
              "type": "User",
              "url": "https://api.github.com/users/AnttiKurittu",
              "user_view_type": "public"
            },
            "workflow": ".github/workflows/build-testing.yml"
          },
          "github_job": "build_backend",
          "github_ref": "refs/heads/release/next",
          "github_ref_name": "release/next",
          "github_ref_protected": "true",
          "github_ref_type": "branch",
          "github_repository": "DFIRe-Development/dfire",
          "github_repository_id": "1125321212",
          "github_repository_owner": "DFIRe-Development",
          "github_repository_owner_id": "298633087",
          "github_run_attempt": "1",
          "github_run_id": "41813823404",
          "github_run_number": "262",
          "github_runner_arch": "X64",
          "github_runner_environment": "self-hosted",
          "github_runner_image_os": "ubuntu24",
          "github_runner_image_version": "dev",
          "github_runner_name": "avrea-exe-01a1a6281a447454b4971d7cd403e915",
          "github_runner_os": "Linux",
          "github_runner_tracking_id": "github_18658057-a356-4032-9df1-6a7522cc8f23",
          "github_server_url": "https://github.com",
          "github_triggering_actor": "AnttiKurittu",
          "github_workflow": "Build Candidate Images",
          "github_workflow_ref": "DFIRe-Development/dfire/.github/workflows/build-testing.yml@refs/heads/release/next",
          "github_workflow_sha": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
          "targetPlatform": "linux/amd64"
        },
        "resolvedDependencies": [
          {
            "digest": {
              "sha256": "873a7458c3c8ac8e32c7b796c10e1600b07b963d2aa000a72a2d97aaaa2d6315"
            },
            "uri": "pkg:docker/docker/buildkit-syft-scanner@stable-1?platform=linux%2Famd64"
          },
          {
            "digest": {
              "sha256": "cad9a2c871761c413caa6fdd6441c783451e740a48aaeba60ae62a8b53525ef6"
            },
            "uri": "pkg:docker/python@3.14-slim?digest=sha256:cad9a2c871761c413caa6fdd6441c783451e740a48aaeba60ae62a8b53525ef6&platform=linux%2Famd64"
          }
        ]
      },
      "runDetails": {
        "builder": {
          "id": "https://github.com/DFIRe-Development/dfire/actions/runs/41813823404/attempts/1"
        },
        "metadata": {
          "buildkit_completeness": {
            "request": true,
            "resolvedDependencies": false
          },
          "buildkit_metadata": {
            "layers": {
              "step13:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  },
                  {
                    "digest": "sha256:421f06bd3301460db32f0893c4b4d9a21dd2ff496509001678441c9e61d8da69",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 166916436
                  }
                ]
              ],
              "step14:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  },
                  {
                    "digest": "sha256:421f06bd3301460db32f0893c4b4d9a21dd2ff496509001678441c9e61d8da69",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 166916436
                  },
                  {
                    "digest": "sha256:14b7f10b7292858b13dc293302fc396f322b68b4084bbd16cd631323cca3fcca",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11471280
                  }
                ]
              ],
              "step15:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  },
                  {
                    "digest": "sha256:421f06bd3301460db32f0893c4b4d9a21dd2ff496509001678441c9e61d8da69",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 166916436
                  },
                  {
                    "digest": "sha256:14b7f10b7292858b13dc293302fc396f322b68b4084bbd16cd631323cca3fcca",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11471280
                  },
                  {
                    "digest": "sha256:20db038ea6c5acc4464da318b820820a9c64a44262fdda5833a64337352d140f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8375009
                  }
                ]
              ],
              "step16:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  },
                  {
                    "digest": "sha256:421f06bd3301460db32f0893c4b4d9a21dd2ff496509001678441c9e61d8da69",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 166916436
                  },
                  {
                    "digest": "sha256:14b7f10b7292858b13dc293302fc396f322b68b4084bbd16cd631323cca3fcca",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11471280
                  },
                  {
                    "digest": "sha256:20db038ea6c5acc4464da318b820820a9c64a44262fdda5833a64337352d140f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8375009
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  }
                ]
              ],
              "step17:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  },
                  {
                    "digest": "sha256:421f06bd3301460db32f0893c4b4d9a21dd2ff496509001678441c9e61d8da69",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 166916436
                  },
                  {
                    "digest": "sha256:14b7f10b7292858b13dc293302fc396f322b68b4084bbd16cd631323cca3fcca",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11471280
                  },
                  {
                    "digest": "sha256:20db038ea6c5acc4464da318b820820a9c64a44262fdda5833a64337352d140f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8375009
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  },
                  {
                    "digest": "sha256:d377b6a20cad6e7ce83c99a34860796daf222ecb52cf09803d33d81aadb8ea95",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 2352
                  }
                ]
              ],
              "step18:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  },
                  {
                    "digest": "sha256:421f06bd3301460db32f0893c4b4d9a21dd2ff496509001678441c9e61d8da69",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 166916436
                  },
                  {
                    "digest": "sha256:14b7f10b7292858b13dc293302fc396f322b68b4084bbd16cd631323cca3fcca",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11471280
                  },
                  {
                    "digest": "sha256:20db038ea6c5acc4464da318b820820a9c64a44262fdda5833a64337352d140f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8375009
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  },
                  {
                    "digest": "sha256:d377b6a20cad6e7ce83c99a34860796daf222ecb52cf09803d33d81aadb8ea95",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 2352
                  },
                  {
                    "digest": "sha256:97bf6b0c2a3bfbcb8dc6ce9bd9c4b4af5e07b0b3a259347f8a0674680b9ae782",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 6915
                  }
                ]
              ],
              "step19:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  },
                  {
                    "digest": "sha256:421f06bd3301460db32f0893c4b4d9a21dd2ff496509001678441c9e61d8da69",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 166916436
                  },
                  {
                    "digest": "sha256:14b7f10b7292858b13dc293302fc396f322b68b4084bbd16cd631323cca3fcca",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11471280
                  },
                  {
                    "digest": "sha256:20db038ea6c5acc4464da318b820820a9c64a44262fdda5833a64337352d140f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8375009
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  },
                  {
                    "digest": "sha256:d377b6a20cad6e7ce83c99a34860796daf222ecb52cf09803d33d81aadb8ea95",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 2352
                  },
                  {
                    "digest": "sha256:97bf6b0c2a3bfbcb8dc6ce9bd9c4b4af5e07b0b3a259347f8a0674680b9ae782",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 6915
                  },
                  {
                    "digest": "sha256:05166d36745100f0b94ce54380930cbb00f7cab38b235b116a96e3c63776c7c3",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8379559
                  }
                ]
              ],
              "step1:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  }
                ]
              ],
              "step20:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  },
                  {
                    "digest": "sha256:421f06bd3301460db32f0893c4b4d9a21dd2ff496509001678441c9e61d8da69",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 166916436
                  },
                  {
                    "digest": "sha256:14b7f10b7292858b13dc293302fc396f322b68b4084bbd16cd631323cca3fcca",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11471280
                  },
                  {
                    "digest": "sha256:20db038ea6c5acc4464da318b820820a9c64a44262fdda5833a64337352d140f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8375009
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  },
                  {
                    "digest": "sha256:d377b6a20cad6e7ce83c99a34860796daf222ecb52cf09803d33d81aadb8ea95",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 2352
                  },
                  {
                    "digest": "sha256:97bf6b0c2a3bfbcb8dc6ce9bd9c4b4af5e07b0b3a259347f8a0674680b9ae782",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 6915
                  },
                  {
                    "digest": "sha256:05166d36745100f0b94ce54380930cbb00f7cab38b235b116a96e3c63776c7c3",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8379559
                  },
                  {
                    "digest": "sha256:490c1c76cc5c36b1676d08e93da2d90be6ebb0cbd21ea655adc064c693af1da5",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 122
                  }
                ]
              ],
              "step2:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:76d78a354ff27173d256f86c3f66f7387eece78824dc9ce5e7405f9cfa8202a1",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36939622
                  }
                ]
              ],
              "step3:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:0029c4e508376889200b392fc8944db9e140731ded1de0bfa5071172d6355a7c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 123811779
                  }
                ]
              ],
              "step5:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:0029c4e508376889200b392fc8944db9e140731ded1de0bfa5071172d6355a7c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 123811779
                  },
                  {
                    "digest": "sha256:992d328426ccc79fee47d28b72bda36882275bbec08ba573f9ae4717c6cb445f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 105160
                  }
                ]
              ],
              "step6:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:0029c4e508376889200b392fc8944db9e140731ded1de0bfa5071172d6355a7c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 123811779
                  },
                  {
                    "digest": "sha256:992d328426ccc79fee47d28b72bda36882275bbec08ba573f9ae4717c6cb445f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 105160
                  },
                  {
                    "digest": "sha256:2037303521964390ac2974d987cbfb81dc1cfc967d1e966250df999db801c115",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 839
                  }
                ]
              ],
              "step7:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:0029c4e508376889200b392fc8944db9e140731ded1de0bfa5071172d6355a7c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 123811779
                  },
                  {
                    "digest": "sha256:992d328426ccc79fee47d28b72bda36882275bbec08ba573f9ae4717c6cb445f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 105160
                  },
                  {
                    "digest": "sha256:2037303521964390ac2974d987cbfb81dc1cfc967d1e966250df999db801c115",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 839
                  },
                  {
                    "digest": "sha256:db05c189f896fadb26d83f2cd52b94be53079786c886a78a7a26d7b9526b12d5",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 178415098
                  }
                ]
              ],
              "step8:0": [
                [
                  {
                    "digest": "sha256:6310eb16bf4251731feab01e8f633bf5e2d75a657ccad97f420b1f83cce457be",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 29792658
                  },
                  {
                    "digest": "sha256:d4a378e57055fa2c97715602c4073a0d034e89b0dc29ef17bcc30f9692233049",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4265334
                  },
                  {
                    "digest": "sha256:6bd54ebeb5af95e8f880bffc616ee55c0f3eb181b194388a2c9fd92be54a5048",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12364134
                  },
                  {
                    "digest": "sha256:3d2c3ff37d4c435d5db82ae37f1d8be56f8feb24320349f5c8c62df7624a5ee2",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:0029c4e508376889200b392fc8944db9e140731ded1de0bfa5071172d6355a7c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 123811779
                  },
                  {
                    "digest": "sha256:992d328426ccc79fee47d28b72bda36882275bbec08ba573f9ae4717c6cb445f",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 105160
                  },
                  {
                    "digest": "sha256:2037303521964390ac2974d987cbfb81dc1cfc967d1e966250df999db801c115",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 839
                  },
                  {
                    "digest": "sha256:db05c189f896fadb26d83f2cd52b94be53079786c886a78a7a26d7b9526b12d5",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 178415098
                  },
                  {
                    "digest": "sha256:b4ff2632a769279b3f6945c7daa829dc5d11c7d446f07a486b9e428c2148feeb",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 168576514
                  }
                ]
              ]
            },
            "source": {
              "infos": [
                {
                  "data": "IyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQojIERGaXJlIEJhY2tlbmQgRG9ja2VyZmlsZQojIE11bHRpLXN0YWdlIGJ1aWxkIGZvciBkZXZlbG9wbWVudCBhbmQgcHJvZHVjdGlvbgojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiMgU1RBR0UgMTogQmFzZSBQeXRob24gaW1hZ2Ugd2l0aCBzeXN0ZW0gZGVwZW5kZW5jaWVzCiMgQmFzZSBpbWFnZSBwaW5uZWQgdG8gZGlnZXN0IGZvciBzdXBwbHkgY2hhaW4gc2VjdXJpdHkuCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KRlJPTSBweXRob246My4xNC1zbGltQHNoYTI1NjpjYWQ5YTJjODcxNzYxYzQxM2NhYTZmZGQ2NDQxYzc4MzQ1MWU3NDBhNDhhYWViYTYwYWU2MmE4YjUzNTI1ZWY2IEFTIGJhc2UKCkVOViBQWVRIT05ET05UV1JJVEVCWVRFQ09ERT0xIFwKICAgIFBZVEhPTlVOQlVGRkVSRUQ9MSBcCiAgICBQSVBfTk9fQ0FDSEVfRElSPTEgXAogICAgUElQX0RJU0FCTEVfUElQX1ZFUlNJT05fQ0hFQ0s9MQoKV09SS0RJUiAvYXBwCgojIEluc3RhbGwgc3lzdGVtIGRlcGVuZGVuY2llcyByZXF1aXJlZCBmb3I6CiMgLSBwc3ljb3BnMjogbGlicHEtZGV2LCBnY2MKIyAtIHB5dGhvbi1tYWdpYzogbGlibWFnaWMxCiMgLSBwZ19kdW1wL3BnX3Jlc3RvcmU6IHBvc3RncmVzcWwtY2xpZW50LXsxNiwxNywxOH0gZnJvbSBQR0RHCiMgLSBXZWFzeVByaW50IChjYXNlIHJlcG9ydCBQREYpOiBsaWJwYW5nby0xLjAtMCwgbGlicGFuZ29mdDItMS4wLTAsCiMgICBsaWJoYXJmYnV6ei1zdWJzZXQwLiBFdmVyeSBwYWNrYWdlIHRoZXNlIHB1bGwgaW4gaXMgbGlzdGVkIHdpdGggaXRzCiMgICBsaWNlbnNlIGluIHNjcmlwdHMvbGljZW5zZS1pbnZlbnRvcnkuanNvbiAobGljZW5zZSBnYXRlLCBjaGVjay1kZWJpYW4pLgojCiMgV2UgaW5zdGFsbCBtdWx0aXBsZSBwb3N0Z3Jlc3FsLWNsaWVudCB2ZXJzaW9ucyBiZWNhdXNlIHBnX2R1bXAgbXVzdCBiZQojID49IHRoZSBzZXJ2ZXIncyBtYWpvciB2ZXJzaW9uLiBCYWNrdXBTZXJ2aWNlIGF1dG8tZGV0ZWN0cyB0aGUgc2VydmVyCiMgdmVyc2lvbiBhbmQgc2VsZWN0cyB0aGUgbWF0Y2hpbmcgY2xpZW50IGJpbmFyeSBhdCBydW50aW1lLgojIEVhY2ggdmVyc2lvbiBpbnN0YWxscyB1bmRlciAvdXNyL2xpYi9wb3N0Z3Jlc3FsL3t2ZXJ9L2Jpbi8uClJVTiBhcHQtZ2V0IHVwZGF0ZSAmJiBhcHQtZ2V0IGluc3RhbGwgLXkgLS1uby1pbnN0YWxsLXJlY29tbWVuZHMgXAogICAgbGlicHEtZGV2IFwKICAgIGdjYyBcCiAgICBsaWJjLWRldiBcCiAgICBsaWJtYWdpYzEgXAogICAgbGlicGFuZ28tMS4wLTAgXAogICAgbGlicGFuZ29mdDItMS4wLTAgXAogICAgbGliaGFyZmJ1enotc3Vic2V0MCBcCiAgICBjdXJsIFwKICAgIGdudXBnIFwKICAgICYmIGN1cmwgLWZzU0wgaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvbWVkaWEva2V5cy9BQ0NDNENGOC5hc2MgXAogICAgICAgfCBncGcgLS1kZWFybW9yIC1vIC91c3Ivc2hhcmUva2V5cmluZ3MvcGdkZy5ncGcgXAogICAgJiYgZWNobyAiZGViIFtzaWduZWQtYnk9L3Vzci9zaGFyZS9rZXlyaW5ncy9wZ2RnLmdwZ10gaHR0cDovL2FwdC5wb3N0Z3Jlc3FsLm9yZy9wdWIvcmVwb3MvYXB0IHRyaXhpZS1wZ2RnIG1haW4iIFwKICAgICAgID4gL2V0Yy9hcHQvc291cmNlcy5saXN0LmQvcGdkZy5saXN0IFwKICAgICYmIGFwdC1nZXQgdXBkYXRlIFwKICAgICYmIGFwdC1nZXQgaW5zdGFsbCAteSAtLW5vLWluc3RhbGwtcmVjb21tZW5kcyBcCiAgICAgICBwb3N0Z3Jlc3FsLWNsaWVudC0xNiBcCiAgICAgICBwb3N0Z3Jlc3FsLWNsaWVudC0xNyBcCiAgICAgICBwb3N0Z3Jlc3FsLWNsaWVudC0xOCBcCiAgICAmJiBybSAtcmYgL3Zhci9saWIvYXB0L2xpc3RzLyoKCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIyBTVEFHRSAyOiBEZXZlbG9wbWVudCBpbWFnZQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkZST00gYmFzZSBBUyBkZXZlbG9wbWVudAoKIyBDb3B5IGFuZCBpbnN0YWxsIHJlcXVpcmVtZW50cywgdGhlbiByZW1vdmUgdGhlIHBhY2thZ2UgZGF0YSBERklSZSBtYXkgbm90CiMgcmVkaXN0cmlidXRlIChzZWUgcHJ1bmVfc2l0ZV9wYWNrYWdlcy5weSkuCkNPUFkgZGZpcmVfYXBpL3JlcXVpcmVtZW50cy50eHQgLgpDT1BZIGRvY2tlci9iYWNrZW5kL3BydW5lX3NpdGVfcGFja2FnZXMucHkgL3RtcC9wcnVuZV9zaXRlX3BhY2thZ2VzLnB5ClJVTiAtLW1vdW50PXR5cGU9Y2FjaGUsdGFyZ2V0PS9yb290Ly5jYWNoZS9waXAsc2hhcmluZz1sb2NrZWQgXAogICAgcGlwIGluc3RhbGwgLS1yZXF1aXJlLWhhc2hlcyAtLW5vLWRlcHMgLS1pZ25vcmUtcmVxdWlyZXMtcHl0aG9uIC1yIHJlcXVpcmVtZW50cy50eHQgXAogICAgJiYgcHl0aG9uIC90bXAvcHJ1bmVfc2l0ZV9wYWNrYWdlcy5weQoKIyBJbnN0YWxsIHV2IGZvciBhZC1ob2MgbG9ja2ZpbGUgcmVnZW5lcmF0aW9uIGluc2lkZSB0aGUgZGV2IGNvbnRhaW5lci4KIyBMb2NrZmlsZSBnZW5lcmF0aW9uIG5lZWRzIGB1diBwaXAgY29tcGlsZSAtLW92ZXJyaWRlYCBiZWNhdXNlIHNvbWUKIyB1cHN0cmVhbSBwYWNrYWdlcyBvdmVyLXBpbiB0cmFuc2l0aXZlIGRlcHMgdGlnaHRlciB0aGFuIHRoZWlyIGFjdHVhbAojIGNvZGUgcmVxdWlyZXM7IHNlZSByZXF1aXJlbWVudHMtb3ZlcnJpZGVzLnR4dCArIENMQVVERS5tZC4gdXYgaXMKIyBkZXYtb25seSDigJQgcHJvZHVjdGlvbiBzdGFnZXMgbmV2ZXIgcmUtcmVzb2x2ZSwgdGhleSBpbnN0YWxsIGZyb20KIyB0aGUgYWxyZWFkeS1nZW5lcmF0ZWQgbG9ja2ZpbGUuClJVTiAtLW1vdW50PXR5cGU9Y2FjaGUsdGFyZ2V0PS9yb290Ly5jYWNoZS9waXAsc2hhcmluZz1sb2NrZWQgXAogICAgcGlwIGluc3RhbGwgdXYKCiMgQ29weSBlbnRyeXBvaW50IHNjcmlwdCAocnVucyBtaWdyYXRpb25zLCBzZXRzIHVwIHNjaGVkdWxlcywgY3JlYXRlcyBzdXBlcnVzZXIpCkNPUFkgZG9ja2VyL2JhY2tlbmQvZW50cnlwb2ludC5zaCAvZW50cnlwb2ludC5zaApSVU4gY2htb2QgK3ggL2VudHJ5cG9pbnQuc2gKCiMgRGV2ZWxvcG1lbnQgZG9lc24ndCBjb3B5IGNvZGUgLSB1c2VzIHZvbHVtZSBtb3VudCBmb3IgaG90LXJlbG9hZAojIFdvcmtpbmcgZGlyZWN0b3J5IGlzIC9hcHAsIGNvZGUgbW91bnRlZCBhdCAvYXBwCiMgZGVmYXVsdHMuanNvbiBpcyBpbmNsdWRlZCBpbiBkZmlyZV9hcGkvIGFuZCBtb3VudGVkIGF0IC9hcHAvCgpFWFBPU0UgODAwMCA4MDAxCgojIENvcHkgc3RhcnQtc2VydmVyIHNjcmlwdCAocnVucyBEYXBobmUgKyBndW5pY29ybiBzaWRlIGJ5IHNpZGUpCkNPUFkgZG9ja2VyL2JhY2tlbmQvc3RhcnQtc2VydmVyLnNoIC9zdGFydC1zZXJ2ZXIuc2gKUlVOIGNobW9kICt4IC9zdGFydC1zZXJ2ZXIuc2gKCiMgVXNlIGVudHJ5cG9pbnQgdG8gcnVuIG1pZ3JhdGlvbnMgYmVmb3JlIHN0YXJ0aW5nIHNlcnZlcgpFTlRSWVBPSU5UIFsiL2VudHJ5cG9pbnQuc2giXQpDTUQgWyIvc3RhcnQtc2VydmVyLnNoIl0KCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIyBTVEFHRSAzOiBQcm9kdWN0aW9uIGJ1aWxkZXIKIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpGUk9NIGJhc2UgQVMgYnVpbGRlcgoKQ09QWSBkZmlyZV9hcGkvcmVxdWlyZW1lbnRzLnR4dCAuCkNPUFkgZG9ja2VyL2JhY2tlbmQvcHJ1bmVfc2l0ZV9wYWNrYWdlcy5weSAvdG1wL3BydW5lX3NpdGVfcGFja2FnZXMucHkKUlVOIC0tbW91bnQ9dHlwZT1jYWNoZSx0YXJnZXQ9L3Jvb3QvLmNhY2hlL3BpcCxzaGFyaW5nPWxvY2tlZCBcCiAgICBwaXAgaW5zdGFsbCAtLXJlcXVpcmUtaGFzaGVzIC0tbm8tZGVwcyAtLWlnbm9yZS1yZXF1aXJlcy1weXRob24gLXIgcmVxdWlyZW1lbnRzLnR4dCBcCiAgICAmJiBweXRob24gL3RtcC9wcnVuZV9zaXRlX3BhY2thZ2VzLnB5CgojIFNuYXBzaG90IHRoZSBzaXRlLXBhY2thZ2VzIHBhdGggdG8gYSB2ZXJzaW9uLWFnbm9zdGljIGxvY2F0aW9uIHNvIHRoZQojIHByb2R1Y3Rpb24gc3RhZ2UgY2FuIENPUFkgaXQgd2l0aG91dCBoYXJkY29kaW5nIHRoZSBQeXRob24gdmVyc2lvbi4KUlVOIGNwIC1hICQocHl0aG9uIC1jICJpbXBvcnQgc2l0ZTsgcHJpbnQoc2l0ZS5nZXRzaXRlcGFja2FnZXMoKVswXSkiKSAvc2l0ZS1wYWNrYWdlcwoKIyBDb3B5IGFwcGxpY2F0aW9uIGNvZGUKQ09QWSBkZmlyZV9hcGkvIC4KCiMgQ29weSBmcm9udGVuZCBwYWNrYWdlLWxvY2suanNvbiBmb3IgU0JPTSB2aWV3ZXIKQ09QWSBkZmlyZV9ndWkvcGFja2FnZS1sb2NrLmpzb24gL2FwcC9wYWNrYWdlLWxvY2stZ3VpLmpzb24KCiMgT3B0aW9uYWxseSBjb21waWxlIHRoZSBsaWNlbnNpbmcgZW5mb3JjZW1lbnQvdmFsaWRhdGlvbiBtb2R1bGVzIHRvIG5hdGl2ZQojIC5zbyBleHRlbnNpb25zIGZvciB0YW1wZXItcmVzaXN0YW5jZSAoZGVmZW5zZS1pbi1kZXB0aCwgTk9UIGEgc2VjdXJpdHkKIyBib3VuZGFyeSDigJQgc2VlIGRmaXJlX2FwaS9jeXRob25fYnVpbGQucHkpLiBPZmYgYnkgZGVmYXVsdDsgdGhlIGRldiBpbWFnZSBhbmQKIyBhIGRlZmF1bHQgcHJvZHVjdGlvbiBidWlsZCBrZWVwIGVkaXRhYmxlIFB5dGhvbiBzb3VyY2UuIEVuYWJsZSB3aXRoOgojICAgZG9ja2VyIGJ1aWxkIC0tYnVpbGQtYXJnIENPTVBJTEVfTElDRU5TSU5HPXRydWUgLi4uCiMgZ2NjL2xpYmMtZGV2IGNvbWUgZnJvbSB0aGUgYmFzZSBzdGFnZTsgdGhlIHNsaW0gYmFzZSBzaGlwcyBQeXRob24gaGVhZGVycy4KQVJHIENPTVBJTEVfTElDRU5TSU5HPWZhbHNlClJVTiAtLW1vdW50PXR5cGU9Y2FjaGUsdGFyZ2V0PS9yb290Ly5jYWNoZS9waXAsc2hhcmluZz1sb2NrZWQgXAogICAgaWYgWyAiJENPTVBJTEVfTElDRU5TSU5HIiA9ICJ0cnVlIiBdOyB0aGVuIFwKICAgICAgICBzZXQgLWV1eDsgXAogICAgICAgICMgc2V0dXB0b29scyBpcyBub3QgYnVuZGxlZCBpbiB0aGUgc2xpbSBiYXNlOyBjeXRob25fYnVpbGQucHkgbmVlZHMgaXQuCiAgICAgICAgcGlwIGluc3RhbGwgImN5dGhvbj49My4wIiBzZXR1cHRvb2xzOyBcCiAgICAgICAgcHl0aG9uIGN5dGhvbl9idWlsZC5weSBidWlsZF9leHQgLS1pbnBsYWNlOyBcCiAgICAgICAgIyBTdHJpcCB0aGUgc291cmNlICsgQyBpbnRlcm1lZGlhdGVzIGZvciBldmVyeSBjb21waWxlZCBtb2R1bGUgc28gb25seQogICAgICAgICMgdGhlIC5zbyBzaGlwcy4gS2VlcCB0aGlzIGxpc3QgaW4gc3luYyB3aXRoIGN5dGhvbl9idWlsZC5weTpNT0RVTEVTLgogICAgICAgIHJtIC1mIGNvcmUvbGljZW5zaW5nL29mZmxpbmUucHkgY29yZS9saWNlbnNpbmcvb2ZmbGluZS5jIFwKICAgICAgICAgICAgICBjb3JlL2xpY2Vuc2luZy9zZXJ2aWNlcy5weSBjb3JlL2xpY2Vuc2luZy9zZXJ2aWNlcy5jIFwKICAgICAgICAgICAgICBjb3JlL2xpY2Vuc2luZy9taWRkbGV3YXJlLnB5IGNvcmUvbGljZW5zaW5nL21pZGRsZXdhcmUuYyBcCiAgICAgICAgICAgICAgY29yZS9saWNlbnNpbmcvc3lzdGVtX2lkLnB5IGNvcmUvbGljZW5zaW5nL3N5c3RlbV9pZC5jOyBcCiAgICAgICAgcm0gLXJmIGJ1aWxkOyBcCiAgICAgICAgcGlwIHVuaW5zdGFsbCAteSBjeXRob24gc2V0dXB0b29sczsgXAogICAgICAgIGVjaG8gIkNvbXBpbGVkIGxpY2Vuc2luZyBtb2R1bGVzOiI7IGxzIC0xIGNvcmUvbGljZW5zaW5nLyouc287IFwKICAgIGZpCgojIENvbGxlY3Qgc3RhdGljIGZpbGVzIChyZXF1aXJlcyBTVEFUSUNfUk9PVCBpbiBzZXR0aW5ncykKIyBVc2luZyBhIGR1bW15IFNFQ1JFVF9LRVkgZm9yIGNvbGxlY3RzdGF0aWMgb25seQpSVU4gU0VDUkVUX0tFWT1idWlsZC10aW1lLXNlY3JldC1mb3ItY29sbGVjdHN0YXRpYyBcCiAgICBDUkVERU5USUFMX0VOQ1JZUFRJT05fS0VZPWJ1aWxkLXRpbWUta2V5LWZvci1jb2xsZWN0c3RhdGljIFwKICAgIERFQlVHPWZhbHNlIFwKICAgIHB5dGhvbiBtYW5hZ2UucHkgY29sbGVjdHN0YXRpYyAtLW5vaW5wdXQKCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIyBTVEFHRSA0OiBQcm9kdWN0aW9uIHJ1bnRpbWUKIyBCYXNlIGltYWdlIHBpbm5lZCB0byBkaWdlc3QgZm9yIHN1cHBseSBjaGFpbiBzZWN1cml0eSAobXVzdCBtYXRjaCBiYXNlIHN0YWdlKS4KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpGUk9NIHB5dGhvbjozLjE0LXNsaW1Ac2hhMjU2OmNhZDlhMmM4NzE3NjFjNDEzY2FhNmZkZDY0NDFjNzgzNDUxZTc0MGE0OGFhZWJhNjBhZTYyYThiNTM1MjVlZjYgQVMgcHJvZHVjdGlvbgoKRU5WIFBZVEhPTkRPTlRXUklURUJZVEVDT0RFPTEgXAogICAgUFlUSE9OVU5CVUZGRVJFRD0xCgpXT1JLRElSIC9hcHAKCiMgSW5zdGFsbCBydW50aW1lIGRlcGVuZGVuY2llcyBvbmx5IChubyBidWlsZCB0b29scykKIyBjdXJsIGlzIG5lZWRlZCBmb3IgY29udGFpbmVyIGhlYWx0aCBjaGVja3MKIyBwb3N0Z3Jlc3FsLWNsaWVudC17MTYsMTcsMTh9IGZvciBiYWNrdXAvcmVzdG9yZSAoc2VlIGJhc2Ugc3RhZ2UgY29tbWVudCkKIyBQYW5nbyBhbmQgSGFyZkJ1enogZm9yIFdlYXN5UHJpbnQgKHNlZSBiYXNlIHN0YWdlIGNvbW1lbnQpClJVTiBhcHQtZ2V0IHVwZGF0ZSAmJiBhcHQtZ2V0IGluc3RhbGwgLXkgLS1uby1pbnN0YWxsLXJlY29tbWVuZHMgXAogICAgbGlicHE1IFwKICAgIGxpYm1hZ2ljMSBcCiAgICBsaWJwYW5nby0xLjAtMCBcCiAgICBsaWJwYW5nb2Z0Mi0xLjAtMCBcCiAgICBsaWJoYXJmYnV6ei1zdWJzZXQwIFwKICAgIGN1cmwgXAogICAgZ251cGcgXAogICAgJiYgY3VybCAtZnNTTCBodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZWRpYS9rZXlzL0FDQ0M0Q0Y4LmFzYyBcCiAgICAgICB8IGdwZyAtLWRlYXJtb3IgLW8gL3Vzci9zaGFyZS9rZXlyaW5ncy9wZ2RnLmdwZyBcCiAgICAmJiBlY2hvICJkZWIgW3NpZ25lZC1ieT0vdXNyL3NoYXJlL2tleXJpbmdzL3BnZGcuZ3BnXSBodHRwOi8vYXB0LnBvc3RncmVzcWwub3JnL3B1Yi9yZXBvcy9hcHQgdHJpeGllLXBnZGcgbWFpbiIgXAogICAgICAgPiAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC9wZ2RnLmxpc3QgXAogICAgJiYgYXB0LWdldCB1cGRhdGUgXAogICAgJiYgYXB0LWdldCBpbnN0YWxsIC15IC0tbm8taW5zdGFsbC1yZWNvbW1lbmRzIFwKICAgICAgIHBvc3RncmVzcWwtY2xpZW50LTE2IFwKICAgICAgIHBvc3RncmVzcWwtY2xpZW50LTE3IFwKICAgICAgIHBvc3RncmVzcWwtY2xpZW50LTE4IFwKICAgICYmIHJtIC1yZiAvdmFyL2xpYi9hcHQvbGlzdHMvKgoKIyBDb3B5IGluc3RhbGxlZCBQeXRob24gcGFja2FnZXMgZnJvbSBidWlsZGVyIGludG8gdGhlIHJ1bnRpbWUncyBzaXRlLXBhY2thZ2VzLgojIFVzZXMgYSBzaGVsbCB0byByZXNvbHZlIHRoZSB2ZXJzaW9uLXNwZWNpZmljIHBhdGggZHluYW1pY2FsbHksIGF2b2lkaW5nCiMgaGFyZGNvZGVkIFB5dGhvbiB2ZXJzaW9uIHN0cmluZ3MgdGhhdCBicmVhayBvbiBiYXNlIGltYWdlIHVwZ3JhZGVzLgpSVU4gLS1tb3VudD1mcm9tPWJ1aWxkZXIsc291cmNlPS9zaXRlLXBhY2thZ2VzLHRhcmdldD0vdG1wL3NpdGUtcGFja2FnZXMgXAogICAgY3AgLWEgL3RtcC9zaXRlLXBhY2thZ2VzLyogJChweXRob24gLWMgImltcG9ydCBzaXRlOyBwcmludChzaXRlLmdldHNpdGVwYWNrYWdlcygpWzBdKSIpLwpDT1BZIC0tZnJvbT1idWlsZGVyIC91c3IvbG9jYWwvYmluIC91c3IvbG9jYWwvYmluCgojIENvcHkgYXBwbGljYXRpb24gY29kZQpDT1BZIC0tZnJvbT1idWlsZGVyIC9hcHAgL2FwcAoKIyBDb3B5IGVudHJ5cG9pbnQgYW5kIHN0YXJ0LXNlcnZlciBzY3JpcHRzCkNPUFkgZG9ja2VyL2JhY2tlbmQvZW50cnlwb2ludC5zaCAvZW50cnlwb2ludC5zaApDT1BZIGRvY2tlci9iYWNrZW5kL3N0YXJ0LXNlcnZlci5zaCAvc3RhcnQtc2VydmVyLnNoClJVTiBjaG1vZCAreCAvZW50cnlwb2ludC5zaCAvc3RhcnQtc2VydmVyLnNoCgojIGRlZmF1bHRzLmpzb24gaXMgYWxyZWFkeSBpbmNsdWRlZCBpbiAvYXBwIGZyb20gdGhlIGJ1aWxkZXIgc3RhZ2UgKHBhcnQgb2YgZGZpcmVfYXBpLykKCiMgQ3JlYXRlIG5vbi1yb290IHVzZXIgZm9yIHNlY3VyaXR5ClJVTiB1c2VyYWRkIC0tY3JlYXRlLWhvbWUgLS1zaGVsbCAvYmluL2Jhc2ggZGZpcmUgXAogICAgJiYgY2hvd24gLVIgZGZpcmU6ZGZpcmUgL2FwcAoKIyBDcmVhdGUgZGlyZWN0b3JpZXMgZm9yIG1lZGlhIGFuZCBlbnN1cmUgcHJvcGVyIHBlcm1pc3Npb25zClJVTiBta2RpciAtcCAvYXBwL21lZGlhIC9hcHAvc3RhdGljZmlsZXMgXAogICAgJiYgY2hvd24gLVIgZGZpcmU6ZGZpcmUgL2FwcC9tZWRpYSAvYXBwL3N0YXRpY2ZpbGVzIFwKICAgICYmIGNobW9kIDc1MCAvYXBwL21lZGlhIFwKICAgICYmIGNobW9kIDc1NSAvYXBwL3N0YXRpY2ZpbGVzCgpVU0VSIGRmaXJlCgpFWFBPU0UgODAwMCA4MDAxCgpFTlRSWVBPSU5UIFsiL2VudHJ5cG9pbnQuc2giXQpDTUQgWyIvc3RhcnQtc2VydmVyLnNoIl0K",
                  "digestMapping": {
                    "sha256:562d64bb0350c04e6383ecd64a04aba9106f63574f952e7d30783ab24cc7536d": "step0",
                    "sha256:6e9406a5b7b7a44f75380a3ef830112528b8ac397c4ea9e149aec56cfd5c82b0": "step1"
                  },
                  "filename": "Dockerfile",
                  "language": "Dockerfile",
                  "llbDefinition": [
                    {
                      "id": "step0",
                      "op": {
                        "Op": {
                          "source": {
                            "attrs": {
                              "local.differ": "none",
                              "local.followpaths": "[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]",
                              "local.sharedkeyhint": "dockerfile"
                            },
                            "identifier": "local://dockerfile"
                          }
                        },
                        "constraints": {}
                      }
                    },
                    {
                      "id": "step1",
                      "inputs": [
                        "step0:0"
                      ],
                      "op": {
                        "Op": {}
                      }
                    }
                  ]
                }
              ],
              "locations": {
                "step0": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 148
                          },
                          "start": {
                            "line": 148
                          }
                        }
                      ]
                    },
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 10
                          },
                          "start": {
                            "line": 10
                          }
                        }
                      ]
                    }
                  ]
                },
                "step1": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 153
                          },
                          "start": {
                            "line": 153
                          }
                        }
                      ]
                    },
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 17
                          },
                          "start": {
                            "line": 17
                          }
                        }
                      ]
                    }
                  ]
                },
                "step10": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 111
                          },
                          "start": {
                            "line": 111
                          }
                        }
                      ]
                    }
                  ]
                },
                "step11": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 120
                          },
                          "start": {
                            "line": 120
                          }
                        },
                        {
                          "end": {
                            "line": 121
                          },
                          "start": {
                            "line": 121
                          }
                        },
                        {
                          "end": {
                            "line": 122
                          },
                          "start": {
                            "line": 122
                          }
                        },
                        {
                          "end": {
                            "line": 123
                          },
                          "start": {
                            "line": 123
                          }
                        },
                        {
                          "end": {
                            "line": 124
                          },
                          "start": {
                            "line": 124
                          }
                        },
                        {
                          "end": {
                            "line": 125
                          },
                          "start": {
                            "line": 125
                          }
                        },
                        {
                          "end": {
                            "line": 126
                          },
                          "start": {
                            "line": 126
                          }
                        },
                        {
                          "end": {
                            "line": 127
                          },
                          "start": {
                            "line": 127
                          }
                        },
                        {
                          "end": {
                            "line": 128
                          },
                          "start": {
                            "line": 128
                          }
                        },
                        {
                          "end": {
                            "line": 129
                          },
                          "start": {
                            "line": 129
                          }
                        },
                        {
                          "end": {
                            "line": 130
                          },
                          "start": {
                            "line": 130
                          }
                        },
                        {
                          "end": {
                            "line": 131
                          },
                          "start": {
                            "line": 131
                          }
                        },
                        {
                          "end": {
                            "line": 132
                          },
                          "start": {
                            "line": 132
                          }
                        },
                        {
                          "end": {
                            "line": 133
                          },
                          "start": {
                            "line": 133
                          }
                        },
                        {
                          "end": {
                            "line": 134
                          },
                          "start": {
                            "line": 134
                          }
                        },
                        {
                          "end": {
                            "line": 135
                          },
                          "start": {
                            "line": 135
                          }
                        }
                      ]
                    }
                  ]
                },
                "step12": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 139
                          },
                          "start": {
                            "line": 139
                          }
                        },
                        {
                          "end": {
                            "line": 140
                          },
                          "start": {
                            "line": 140
                          }
                        },
                        {
                          "end": {
                            "line": 141
                          },
                          "start": {
                            "line": 141
                          }
                        },
                        {
                          "end": {
                            "line": 142
                          },
                          "start": {
                            "line": 142
                          }
                        }
                      ]
                    }
                  ]
                },
                "step13": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 181
                          },
                          "start": {
                            "line": 181
                          }
                        },
                        {
                          "end": {
                            "line": 182
                          },
                          "start": {
                            "line": 182
                          }
                        }
                      ]
                    }
                  ]
                },
                "step14": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 183
                          },
                          "start": {
                            "line": 183
                          }
                        }
                      ]
                    }
                  ]
                },
                "step15": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 186
                          },
                          "start": {
                            "line": 186
                          }
                        }
                      ]
                    }
                  ]
                },
                "step16": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 189
                          },
                          "start": {
                            "line": 189
                          }
                        }
                      ]
                    }
                  ]
                },
                "step17": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 190
                          },
                          "start": {
                            "line": 190
                          }
                        }
                      ]
                    }
                  ]
                },
                "step18": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 191
                          },
                          "start": {
                            "line": 191
                          }
                        }
                      ]
                    }
                  ]
                },
                "step19": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 196
                          },
                          "start": {
                            "line": 196
                          }
                        },
                        {
                          "end": {
                            "line": 197
                          },
                          "start": {
                            "line": 197
                          }
                        }
                      ]
                    }
                  ]
                },
                "step2": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 159
                          },
                          "start": {
                            "line": 159
                          }
                        },
                        {
                          "end": {
                            "line": 160
                          },
                          "start": {
                            "line": 160
                          }
                        },
                        {
                          "end": {
                            "line": 161
                          },
                          "start": {
                            "line": 161
                          }
                        },
                        {
                          "end": {
                            "line": 162
                          },
                          "start": {
                            "line": 162
                          }
                        },
                        {
                          "end": {
                            "line": 163
                          },
                          "start": {
                            "line": 163
                          }
                        },
                        {
                          "end": {
                            "line": 164
                          },
                          "start": {
                            "line": 164
                          }
                        },
                        {
                          "end": {
                            "line": 165
                          },
                          "start": {
                            "line": 165
                          }
                        },
                        {
                          "end": {
                            "line": 166
                          },
                          "start": {
                            "line": 166
                          }
                        },
                        {
                          "end": {
                            "line": 167
                          },
                          "start": {
                            "line": 167
                          }
                        },
                        {
                          "end": {
                            "line": 168
                          },
                          "start": {
                            "line": 168
                          }
                        },
                        {
                          "end": {
                            "line": 169
                          },
                          "start": {
                            "line": 169
                          }
                        },
                        {
                          "end": {
                            "line": 170
                          },
                          "start": {
                            "line": 170
                          }
                        },
                        {
                          "end": {
                            "line": 171
                          },
                          "start": {
                            "line": 171
                          }
                        },
                        {
                          "end": {
                            "line": 172
                          },
                          "start": {
                            "line": 172
                          }
                        },
                        {
                          "end": {
                            "line": 173
                          },
                          "start": {
                            "line": 173
                          }
                        },
                        {
                          "end": {
                            "line": 174
                          },
                          "start": {
                            "line": 174
                          }
                        },
                        {
                          "end": {
                            "line": 175
                          },
                          "start": {
                            "line": 175
                          }
                        },
                        {
                          "end": {
                            "line": 176
                          },
                          "start": {
                            "line": 176
                          }
                        }
                      ]
                    }
                  ]
                },
                "step20": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 200
                          },
                          "start": {
                            "line": 200
                          }
                        },
                        {
                          "end": {
                            "line": 201
                          },
                          "start": {
                            "line": 201
                          }
                        },
                        {
                          "end": {
                            "line": 202
                          },
                          "start": {
                            "line": 202
                          }
                        },
                        {
                          "end": {
                            "line": 203
                          },
                          "start": {
                            "line": 203
                          }
                        }
                      ]
                    }
                  ]
                },
                "step3": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 31
                          },
                          "start": {
                            "line": 31
                          }
                        },
                        {
                          "end": {
                            "line": 32
                          },
                          "start": {
                            "line": 32
                          }
                        },
                        {
                          "end": {
                            "line": 33
                          },
                          "start": {
                            "line": 33
                          }
                        },
                        {
                          "end": {
                            "line": 34
                          },
                          "start": {
                            "line": 34
                          }
                        },
                        {
                          "end": {
                            "line": 35
                          },
                          "start": {
                            "line": 35
                          }
                        },
                        {
                          "end": {
                            "line": 36
                          },
                          "start": {
                            "line": 36
                          }
                        },
                        {
                          "end": {
                            "line": 37
                          },
                          "start": {
                            "line": 37
                          }
                        },
                        {
                          "end": {
                            "line": 38
                          },
                          "start": {
                            "line": 38
                          }
                        },
                        {
                          "end": {
                            "line": 39
                          },
                          "start": {
                            "line": 39
                          }
                        },
                        {
                          "end": {
                            "line": 40
                          },
                          "start": {
                            "line": 40
                          }
                        },
                        {
                          "end": {
                            "line": 41
                          },
                          "start": {
                            "line": 41
                          }
                        },
                        {
                          "end": {
                            "line": 42
                          },
                          "start": {
                            "line": 42
                          }
                        },
                        {
                          "end": {
                            "line": 43
                          },
                          "start": {
                            "line": 43
                          }
                        },
                        {
                          "end": {
                            "line": 44
                          },
                          "start": {
                            "line": 44
                          }
                        },
                        {
                          "end": {
                            "line": 45
                          },
                          "start": {
                            "line": 45
                          }
                        },
                        {
                          "end": {
                            "line": 46
                          },
                          "start": {
                            "line": 46
                          }
                        },
                        {
                          "end": {
                            "line": 47
                          },
                          "start": {
                            "line": 47
                          }
                        },
                        {
                          "end": {
                            "line": 48
                          },
                          "start": {
                            "line": 48
                          }
                        },
                        {
                          "end": {
                            "line": 49
                          },
                          "start": {
                            "line": 49
                          }
                        },
                        {
                          "end": {
                            "line": 50
                          },
                          "start": {
                            "line": 50
                          }
                        }
                      ]
                    }
                  ]
                },
                "step4": {},
                "step5": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 97
                          },
                          "start": {
                            "line": 97
                          }
                        }
                      ]
                    }
                  ]
                },
                "step6": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 98
                          },
                          "start": {
                            "line": 98
                          }
                        }
                      ]
                    }
                  ]
                },
                "step7": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 99
                          },
                          "start": {
                            "line": 99
                          }
                        },
                        {
                          "end": {
                            "line": 100
                          },
                          "start": {
                            "line": 100
                          }
                        },
                        {
                          "end": {
                            "line": 101
                          },
                          "start": {
                            "line": 101
                          }
                        }
                      ]
                    }
                  ]
                },
                "step8": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 105
                          },
                          "start": {
                            "line": 105
                          }
                        }
                      ]
                    }
                  ]
                },
                "step9": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 108
                          },
                          "start": {
                            "line": 108
                          }
                        }
                      ]
                    }
                  ]
                }
              }
            },
            "vcs": {
              "localdir:context": ".",
              "localdir:dockerfile": "docker/backend",
              "revision": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
              "source": "https://github.com/DFIRe-Development/dfire"
            }
          },
          "finishedOn": "2026-11-04T10:47:43.907760079Z",
          "invocationId": "lvq4bs6y82fojayupmpn6b9us",
          "startedOn": "2026-11-04T10:43:47.1452221Z"
        }
      }
    }
  },
  "linux/arm64": {
    "SLSA": {
      "buildDefinition": {
        "buildType": "https://github.com/moby/buildkit/blob/master/docs/attestations/slsa-definitions.md",
        "externalParameters": {
          "configSource": {
            "path": "Dockerfile"
          },
          "request": {
            "args": {
              "build-arg:COMPILE_LICENSING": "true",
              "label:org.dfire.candidate.tag": "testing-64588ab76c26-41813823404-1",
              "label:org.dfire.ci.run": "https://github.com/DFIRe-Development/dfire/actions/runs/41813823404",
              "label:org.opencontainers.image.revision": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
              "label:org.opencontainers.image.source": "https://github.com/DFIRe-Development/dfire",
              "label:org.opencontainers.image.version": "1.15.1",
              "target": "production"
            },
            "compatibilityVersion": 30,
            "frontend": "dockerfile.v0",
            "locals": [
              {
                "name": "context"
              },
              {
                "name": "dockerfile"
              }
            ],
            "root": {
              "configSource": {
                "path": "Dockerfile"
              },
              "request": {
                "args": {
                  "build-arg:COMPILE_LICENSING": "true",
                  "label:org.dfire.candidate.tag": "testing-64588ab76c26-41813823404-1",
                  "label:org.dfire.ci.run": "https://github.com/DFIRe-Development/dfire/actions/runs/41813823404",
                  "label:org.opencontainers.image.revision": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
                  "label:org.opencontainers.image.source": "https://github.com/DFIRe-Development/dfire",
                  "label:org.opencontainers.image.version": "1.15.1",
                  "target": "production",
                  "vcs:localdir:context": ".",
                  "vcs:localdir:dockerfile": "docker/backend",
                  "vcs:revision": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
                  "vcs:source": "https://github.com/DFIRe-Development/dfire"
                }
              }
            }
          }
        },
        "internalParameters": {
          "buildConfig": {
            "digestMapping": {
              "sha256:066d76e1549c494db5e69cec580935dc118f5fe852325fc8285da696b371ddf7": "step3",
              "sha256:0866dafd6f70769228afd36dcaa7d6e1ca50ac9a70f34a3748fd88255e59ad86": "step1",
              "sha256:1047373ea704fe9ede4f01f88b9d392e9c2fd43769910d32cfbcafb637b13e3a": "step16",
              "sha256:1cbc68ab729a67dffe9f7648ba959a9c10cd661b0a27c535ecc3cbddf8b9173f": "step18",
              "sha256:374532dd29cd061710539fdf01e5f8257470b77715864b7873d92631d39c529b": "step13",
              "sha256:3b98ac8783f9ad825c7a1d3f20dbf805fd95bae0d6093b1bff04b9af5958f244": "step14",
              "sha256:3fef925245a5e1ccb0b6cc1a3f74f1ad734a6383cba3415f5050e2735e608246": "step19",
              "sha256:5a9db0f2d14b8e86f1b351c88a2ead5971277009e89aade9df4e944e1032b8b3": "step4",
              "sha256:62c36c81a9821c13df28cafd17aa7debc10adf37b6d582af10f5e44e3342a78b": "step15",
              "sha256:6aeda9dfa78e4fbf779e81012b8e56097ec9bf3ab5274abdc259e75bf098f0d3": "step2",
              "sha256:7dfa25fd18c486e7c4f5b887debfd9d1568599a2481fb826def6022160676065": "step9",
              "sha256:96e9341f90273dad0dcf964d59e7eac574bfbaee47bc24b1f2888aebb555507f": "step12",
              "sha256:9e8e60b10723abff55eaac20fc48738fe3a0d540932db3f09cb9a55d47ccd276": "step8",
              "sha256:b83b0069ce8571b77742e7e4be943428bab8f3809b668239f787c86663c75511": "step10",
              "sha256:bab2533ccfab62f1dbe7dd11aa49e41891a8ac9d26a5490f60f77d48b5997ff6": "step7",
              "sha256:bce34258ebf41653467d4e7c5f612798a7659807778eb562b5fcb80ed0e3f70b": "step11",
              "sha256:c43b7c21950245e7602a67eab6dbb47dd4edb48c8262ae66dac47d23ba96db8d": "step21",
              "sha256:c9b428ac325ae57dd94bcf799b85b54be6c31ecaeb24f170f97e476832c745ee": "step0",
              "sha256:cb67cb30b49893b59e3cf7c189521da5e678245dc3404fabaa9e043728279551": "step17",
              "sha256:cdbaf9851f7e12fb891f6ac499cb45683ccf482ee4e0e679fa4e06f2ca280094": "step5",
              "sha256:d89911f7938a0c5e054b0c19f2dad1dcf291362a4748b5b22fd90d2c909d6a4f": "step6",
              "sha256:ea0a277d2b0cb7492c2bd468ec7f949903246a982c22284946679dd835e79fed": "step20"
            },
            "llbDefinition": [
              {
                "id": "step0",
                "op": {
                  "Op": {
                    "source": {
                      "identifier": "docker-image://docker.io/library/python:3.14-slim@sha256:cad9a2c871761c413caa6fdd6441c783451e740a48aaeba60ae62a8b53525ef6"
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step1",
                "inputs": [
                  "step0:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "mkdir": {
                              "makeParents": true,
                              "mode": 493,
                              "path": "/app",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": -1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step2",
                "inputs": [
                  "step1:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "apt-get update && apt-get install -y --no-install-recommends     libpq5     libmagic1     libpango-1.0-0     libpangoft2-1.0-0     libharfbuzz-subset0     curl     gnupg     && curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc        | gpg --dearmor -o /usr/share/keyrings/pgdg.gpg     && echo \"deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt trixie-pgdg main\"        > /etc/apt/sources.list.d/pgdg.list     && apt-get update     && apt-get install -y --no-install-recommends        postgresql-client-16        postgresql-client-17        postgresql-client-18     && rm -rf /var/lib/apt/lists/*"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step3",
                "inputs": [
                  "step1:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "apt-get update && apt-get install -y --no-install-recommends     libpq-dev     gcc     libc-dev     libmagic1     libpango-1.0-0     libpangoft2-1.0-0     libharfbuzz-subset0     curl     gnupg     && curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc        | gpg --dearmor -o /usr/share/keyrings/pgdg.gpg     && echo \"deb [signed-by=/usr/share/keyrings/pgdg.gpg] http://apt.postgresql.org/pub/repos/apt trixie-pgdg main\"        > /etc/apt/sources.list.d/pgdg.list     && apt-get update     && apt-get install -y --no-install-recommends        postgresql-client-16        postgresql-client-17        postgresql-client-18     && rm -rf /var/lib/apt/lists/*"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step4",
                "op": {
                  "Op": {
                    "source": {
                      "attrs": {
                        "local.excludepatterns": "[\"dfire_gui/coverage\",\"dfire_gui/dist\",\"dfire_gui/node_modules\",\"dfire_gui/playwright-report\",\"dfire_gui/test-results\"]",
                        "local.followpaths": "[\"dfire_api\",\"dfire_api/requirements.txt\",\"dfire_gui/package-lock.json\",\"docker/backend/entrypoint.sh\",\"docker/backend/prune_site_packages.py\",\"docker/backend/start-server.sh\"]",
                        "local.sharedkeyhint": "context"
                      },
                      "identifier": "local://context"
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step5",
                "inputs": [
                  "step3:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/app/",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/dfire_api/requirements.txt",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step6",
                "inputs": [
                  "step5:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/tmp/prune_site_packages.py",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/docker/backend/prune_site_packages.py",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step7",
                "inputs": [
                  "step6:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "pip install --require-hashes --no-deps --ignore-requires-python -r requirements.txt     && python /tmp/prune_site_packages.py"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        },
                        {
                          "cacheOpt": {
                            "ID": "//root/.cache/pip",
                            "sharing": 2
                          },
                          "dest": "/root/.cache/pip",
                          "input": -1,
                          "mountType": 3,
                          "output": -1
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step8",
                "inputs": [
                  "step7:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "cp -a $(python -c \"import site; print(site.getsitepackages()[0])\") /site-packages"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step9",
                "inputs": [
                  "step8:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/app/",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/dfire_api",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step10",
                "inputs": [
                  "step9:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/app/package-lock-gui.json",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/dfire_gui/package-lock.json",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step11",
                "inputs": [
                  "step10:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "if [ \"$COMPILE_LICENSING\" = \"true\" ]; then         set -eux;         pip install \"cython>=3.0\" setuptools;         python cython_build.py build_ext --inplace;         rm -f core/licensing/offline.py core/licensing/offline.c               core/licensing/services.py core/licensing/services.c               core/licensing/middleware.py core/licensing/middleware.c               core/licensing/system_id.py core/licensing/system_id.c;         rm -rf build;         pip uninstall -y cython setuptools;         echo \"Compiled licensing modules:\"; ls -1 core/licensing/*.so;     fi"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1",
                          "COMPILE_LICENSING=true"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        },
                        {
                          "cacheOpt": {
                            "ID": "//root/.cache/pip",
                            "sharing": 2
                          },
                          "dest": "/root/.cache/pip",
                          "input": -1,
                          "mountType": 3,
                          "output": -1
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step12",
                "inputs": [
                  "step11:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "SECRET_KEY=build-time-secret-for-collectstatic     CREDENTIAL_ENCRYPTION_KEY=build-time-key-for-collectstatic     DEBUG=false     python manage.py collectstatic --noinput"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1",
                          "PIP_NO_CACHE_DIR=1",
                          "PIP_DISABLE_PIP_VERSION_CHECK=1",
                          "COMPILE_LICENSING=true"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step13",
                "inputs": [
                  "step2:0",
                  "step12:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "cp -a /tmp/site-packages/* $(python -c \"import site; print(site.getsitepackages()[0])\")/"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        },
                        {
                          "dest": "/tmp/site-packages",
                          "input": 1,
                          "output": -1,
                          "readonly": true,
                          "selector": "/site-packages"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step14",
                "inputs": [
                  "step13:0",
                  "step12:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/usr/local/bin",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/usr/local/bin",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step15",
                "inputs": [
                  "step14:0",
                  "step12:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/app",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/app",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step16",
                "inputs": [
                  "step15:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/entrypoint.sh",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/docker/backend/entrypoint.sh",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step17",
                "inputs": [
                  "step16:0",
                  "step4:0"
                ],
                "op": {
                  "Op": {
                    "file": {
                      "actions": [
                        {
                          "Action": {
                            "copy": {
                              "allowEmptyWildcard": true,
                              "allowWildcard": true,
                              "createDestPath": true,
                              "dest": "/start-server.sh",
                              "dirCopyContents": true,
                              "followSymlink": true,
                              "mode": -1,
                              "src": "/docker/backend/start-server.sh",
                              "timestamp": -1
                            }
                          },
                          "input": 0,
                          "output": 0,
                          "secondaryInput": 1
                        }
                      ]
                    }
                  },
                  "constraints": {}
                }
              },
              {
                "id": "step18",
                "inputs": [
                  "step17:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "chmod +x /entrypoint.sh /start-server.sh"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step19",
                "inputs": [
                  "step18:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "useradd --create-home --shell /bin/bash dfire     && chown -R dfire:dfire /app"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step20",
                "inputs": [
                  "step19:0"
                ],
                "op": {
                  "Op": {
                    "exec": {
                      "meta": {
                        "args": [
                          "/bin/sh",
                          "-c",
                          "mkdir -p /app/media /app/staticfiles     && chown -R dfire:dfire /app/media /app/staticfiles     && chmod 750 /app/media     && chmod 755 /app/staticfiles"
                        ],
                        "cwd": "/app",
                        "env": [
                          "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                          "PYTHON_VERSION=3.14.7",
                          "PYTHON_SHA256=3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81",
                          "PYTHONDONTWRITEBYTECODE=1",
                          "PYTHONUNBUFFERED=1"
                        ],
                        "removeMountStubsRecursive": true
                      },
                      "mounts": [
                        {
                          "dest": "/"
                        }
                      ]
                    }
                  },
                  "constraints": {},
                  "platform": {
                    "Architecture": "arm64",
                    "OS": "linux"
                  }
                }
              },
              {
                "id": "step21",
                "inputs": [
                  "step20:0"
                ],
                "op": {
                  "Op": {}
                }
              }
            ]
          },
          "builderPlatform": "linux/amd64",
          "dockerfileVersion": "1.28.0",
          "github_actor": "AnttiKurittu",
          "github_actor_id": "16835129",
          "github_event_name": "workflow_dispatch",
          "github_event_payload": {
            "inputs": {
              "build_backend": "true",
              "build_frontend": "true"
            },
            "organization": {
              "avatar_url": "https://avatars.githubusercontent.com/u/298633087?v=4",
              "description": "DFIRe Development",
              "events_url": "https://api.github.com/orgs/DFIRe-Development/events",
              "hooks_url": "https://api.github.com/orgs/DFIRe-Development/hooks",
              "id": 298633087,
              "issues_url": "https://api.github.com/orgs/DFIRe-Development/issues",
              "login": "DFIRe-Development",
              "members_url": "https://api.github.com/orgs/DFIRe-Development/members{/member}",
              "node_id": "O_kgDOEczHfw",
              "public_members_url": "https://api.github.com/orgs/DFIRe-Development/public_members{/member}",
              "repos_url": "https://api.github.com/orgs/DFIRe-Development/repos",
              "url": "https://api.github.com/orgs/DFIRe-Development"
            },
            "ref": "refs/heads/release/next",
            "repository": {
              "allow_forking": false,
              "archive_url": "https://api.github.com/repos/DFIRe-Development/dfire/{archive_format}{/ref}",
              "archived": false,
              "assignees_url": "https://api.github.com/repos/DFIRe-Development/dfire/assignees{/user}",
              "blobs_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/blobs{/sha}",
              "branches_url": "https://api.github.com/repos/DFIRe-Development/dfire/branches{/branch}",
              "clone_url": "https://github.com/DFIRe-Development/dfire.git",
              "collaborators_url": "https://api.github.com/repos/DFIRe-Development/dfire/collaborators{/collaborator}",
              "comments_url": "https://api.github.com/repos/DFIRe-Development/dfire/comments{/number}",
              "commits_url": "https://api.github.com/repos/DFIRe-Development/dfire/commits{/sha}",
              "compare_url": "https://api.github.com/repos/DFIRe-Development/dfire/compare/{base}...{head}",
              "contents_url": "https://api.github.com/repos/DFIRe-Development/dfire/contents/{+path}",
              "contributors_url": "https://api.github.com/repos/DFIRe-Development/dfire/contributors",
              "created_at": "2025-12-30T14:17:36Z",
              "custom_properties": {},
              "default_branch": "main",
              "deployments_url": "https://api.github.com/repos/DFIRe-Development/dfire/deployments",
              "description": "DFIRe case management application",
              "disabled": false,
              "downloads_url": "https://api.github.com/repos/DFIRe-Development/dfire/downloads",
              "events_url": "https://api.github.com/repos/DFIRe-Development/dfire/events",
              "fork": false,
              "forks": 0,
              "forks_count": 0,
              "forks_url": "https://api.github.com/repos/DFIRe-Development/dfire/forks",
              "full_name": "DFIRe-Development/dfire",
              "git_commits_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/commits{/sha}",
              "git_refs_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/refs{/sha}",
              "git_tags_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/tags{/sha}",
              "git_url": "git://github.com/DFIRe-Development/dfire.git",
              "has_discussions": false,
              "has_downloads": false,
              "has_issues": true,
              "has_pages": false,
              "has_projects": true,
              "has_pull_requests": true,
              "has_wiki": false,
              "homepage": "",
              "hooks_url": "https://api.github.com/repos/DFIRe-Development/dfire/hooks",
              "html_url": "https://github.com/DFIRe-Development/dfire",
              "id": 1125321212,
              "is_template": false,
              "issue_comment_url": "https://api.github.com/repos/DFIRe-Development/dfire/issues/comments{/number}",
              "issue_events_url": "https://api.github.com/repos/DFIRe-Development/dfire/issues/events{/number}",
              "issues_url": "https://api.github.com/repos/DFIRe-Development/dfire/issues{/number}",
              "keys_url": "https://api.github.com/repos/DFIRe-Development/dfire/keys{/key_id}",
              "labels_url": "https://api.github.com/repos/DFIRe-Development/dfire/labels{/name}",
              "language": "Python",
              "languages_url": "https://api.github.com/repos/DFIRe-Development/dfire/languages",
              "license": {
                "key": "other",
                "name": "Other",
                "node_id": "MDc6TGljZW5zZTA=",
                "spdx_id": "NOASSERTION",
                "url": null
              },
              "merges_url": "https://api.github.com/repos/DFIRe-Development/dfire/merges",
              "milestones_url": "https://api.github.com/repos/DFIRe-Development/dfire/milestones{/number}",
              "mirror_url": null,
              "name": "dfire",
              "node_id": "R_kgDOQxMJ_A",
              "notifications_url": "https://api.github.com/repos/DFIRe-Development/dfire/notifications{?since,all,participating}",
              "open_issues": 134,
              "open_issues_count": 134,
              "owner": {
                "avatar_url": "https://avatars.githubusercontent.com/u/298633087?v=4",
                "events_url": "https://api.github.com/users/DFIRe-Development/events{/privacy}",
                "followers_url": "https://api.github.com/users/DFIRe-Development/followers",
                "following_url": "https://api.github.com/users/DFIRe-Development/following{/other_user}",
                "gists_url": "https://api.github.com/users/DFIRe-Development/gists{/gist_id}",
                "gravatar_id": "",
                "html_url": "https://github.com/DFIRe-Development",
                "id": 298633087,
                "login": "DFIRe-Development",
                "node_id": "O_kgDOEczHfw",
                "organizations_url": "https://api.github.com/users/DFIRe-Development/orgs",
                "received_events_url": "https://api.github.com/users/DFIRe-Development/received_events",
                "repos_url": "https://api.github.com/users/DFIRe-Development/repos",
                "site_admin": false,
                "starred_url": "https://api.github.com/users/DFIRe-Development/starred{/owner}{/repo}",
                "subscriptions_url": "https://api.github.com/users/DFIRe-Development/subscriptions",
                "type": "Organization",
                "url": "https://api.github.com/users/DFIRe-Development",
                "user_view_type": "public"
              },
              "private": true,
              "pull_request_creation_policy": "all",
              "pulls_url": "https://api.github.com/repos/DFIRe-Development/dfire/pulls{/number}",
              "pushed_at": "2026-11-04T10:10:33Z",
              "releases_url": "https://api.github.com/repos/DFIRe-Development/dfire/releases{/id}",
              "size": 141331,
              "ssh_url": "git@github.com:DFIRe-Development/dfire.git",
              "stargazers_count": 1,
              "stargazers_url": "https://api.github.com/repos/DFIRe-Development/dfire/stargazers",
              "statuses_url": "https://api.github.com/repos/DFIRe-Development/dfire/statuses/{sha}",
              "subscribers_url": "https://api.github.com/repos/DFIRe-Development/dfire/subscribers",
              "subscription_url": "https://api.github.com/repos/DFIRe-Development/dfire/subscription",
              "svn_url": "https://github.com/DFIRe-Development/dfire",
              "tags_url": "https://api.github.com/repos/DFIRe-Development/dfire/tags",
              "teams_url": "https://api.github.com/repos/DFIRe-Development/dfire/teams",
              "topics": [],
              "trees_url": "https://api.github.com/repos/DFIRe-Development/dfire/git/trees{/sha}",
              "updated_at": "2026-11-01T12:29:52Z",
              "url": "https://api.github.com/repos/DFIRe-Development/dfire",
              "visibility": "private",
              "watchers": 1,
              "watchers_count": 1,
              "web_commit_signoff_required": false
            },
            "sender": {
              "avatar_url": "https://avatars.githubusercontent.com/u/16835129?v=4",
              "events_url": "https://api.github.com/users/AnttiKurittu/events{/privacy}",
              "followers_url": "https://api.github.com/users/AnttiKurittu/followers",
              "following_url": "https://api.github.com/users/AnttiKurittu/following{/other_user}",
              "gists_url": "https://api.github.com/users/AnttiKurittu/gists{/gist_id}",
              "gravatar_id": "",
              "html_url": "https://github.com/AnttiKurittu",
              "id": 16835129,
              "login": "AnttiKurittu",
              "node_id": "MDQ6VXNlcjE2ODM1MTI5",
              "organizations_url": "https://api.github.com/users/AnttiKurittu/orgs",
              "received_events_url": "https://api.github.com/users/AnttiKurittu/received_events",
              "repos_url": "https://api.github.com/users/AnttiKurittu/repos",
              "site_admin": false,
              "starred_url": "https://api.github.com/users/AnttiKurittu/starred{/owner}{/repo}",
              "subscriptions_url": "https://api.github.com/users/AnttiKurittu/subscriptions",
              "type": "User",
              "url": "https://api.github.com/users/AnttiKurittu",
              "user_view_type": "public"
            },
            "workflow": ".github/workflows/build-testing.yml"
          },
          "github_job": "build_backend",
          "github_ref": "refs/heads/release/next",
          "github_ref_name": "release/next",
          "github_ref_protected": "true",
          "github_ref_type": "branch",
          "github_repository": "DFIRe-Development/dfire",
          "github_repository_id": "1125321212",
          "github_repository_owner": "DFIRe-Development",
          "github_repository_owner_id": "298633087",
          "github_run_attempt": "1",
          "github_run_id": "41813823404",
          "github_run_number": "262",
          "github_runner_arch": "X64",
          "github_runner_environment": "self-hosted",
          "github_runner_image_os": "ubuntu24",
          "github_runner_image_version": "dev",
          "github_runner_name": "avrea-exe-01a1a6281a447454b4971d7cd403e915",
          "github_runner_os": "Linux",
          "github_runner_tracking_id": "github_18658057-a356-4032-9df1-6a7522cc8f23",
          "github_server_url": "https://github.com",
          "github_triggering_actor": "AnttiKurittu",
          "github_workflow": "Build Candidate Images",
          "github_workflow_ref": "DFIRe-Development/dfire/.github/workflows/build-testing.yml@refs/heads/release/next",
          "github_workflow_sha": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
          "targetPlatform": "linux/arm64"
        },
        "resolvedDependencies": [
          {
            "digest": {
              "sha256": "873a7458c3c8ac8e32c7b796c10e1600b07b963d2aa000a72a2d97aaaa2d6315"
            },
            "uri": "pkg:docker/docker/buildkit-syft-scanner@stable-1?platform=linux%2Famd64"
          },
          {
            "digest": {
              "sha256": "cad9a2c871761c413caa6fdd6441c783451e740a48aaeba60ae62a8b53525ef6"
            },
            "uri": "pkg:docker/python@3.14-slim?digest=sha256:cad9a2c871761c413caa6fdd6441c783451e740a48aaeba60ae62a8b53525ef6&platform=linux%2Farm64"
          }
        ]
      },
      "runDetails": {
        "builder": {
          "id": "https://github.com/DFIRe-Development/dfire/actions/runs/41813823404/attempts/1"
        },
        "metadata": {
          "buildkit_completeness": {
            "request": true,
            "resolvedDependencies": false
          },
          "buildkit_metadata": {
            "layers": {
              "step13:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  },
                  {
                    "digest": "sha256:1a820922bbed8aada176dc5e0f7dc7c9d7d4198d97fab8a9e464cdfe71c9618c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 165427889
                  }
                ]
              ],
              "step14:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  },
                  {
                    "digest": "sha256:1a820922bbed8aada176dc5e0f7dc7c9d7d4198d97fab8a9e464cdfe71c9618c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 165427889
                  },
                  {
                    "digest": "sha256:f79dc1892eecd423d9b4b66af5161d962555644f32c9239729285c533d2969cc",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11026992
                  }
                ]
              ],
              "step15:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  },
                  {
                    "digest": "sha256:1a820922bbed8aada176dc5e0f7dc7c9d7d4198d97fab8a9e464cdfe71c9618c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 165427889
                  },
                  {
                    "digest": "sha256:f79dc1892eecd423d9b4b66af5161d962555644f32c9239729285c533d2969cc",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11026992
                  },
                  {
                    "digest": "sha256:ab626f7200f2886d6a12e66a739d8bcce101ce20c7fd6fc75bdceb300d0ed9cf",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8324498
                  }
                ]
              ],
              "step16:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  },
                  {
                    "digest": "sha256:1a820922bbed8aada176dc5e0f7dc7c9d7d4198d97fab8a9e464cdfe71c9618c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 165427889
                  },
                  {
                    "digest": "sha256:f79dc1892eecd423d9b4b66af5161d962555644f32c9239729285c533d2969cc",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11026992
                  },
                  {
                    "digest": "sha256:ab626f7200f2886d6a12e66a739d8bcce101ce20c7fd6fc75bdceb300d0ed9cf",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8324498
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  }
                ]
              ],
              "step17:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  },
                  {
                    "digest": "sha256:1a820922bbed8aada176dc5e0f7dc7c9d7d4198d97fab8a9e464cdfe71c9618c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 165427889
                  },
                  {
                    "digest": "sha256:f79dc1892eecd423d9b4b66af5161d962555644f32c9239729285c533d2969cc",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11026992
                  },
                  {
                    "digest": "sha256:ab626f7200f2886d6a12e66a739d8bcce101ce20c7fd6fc75bdceb300d0ed9cf",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8324498
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  },
                  {
                    "digest": "sha256:d377b6a20cad6e7ce83c99a34860796daf222ecb52cf09803d33d81aadb8ea95",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 2352
                  }
                ]
              ],
              "step18:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  },
                  {
                    "digest": "sha256:1a820922bbed8aada176dc5e0f7dc7c9d7d4198d97fab8a9e464cdfe71c9618c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 165427889
                  },
                  {
                    "digest": "sha256:f79dc1892eecd423d9b4b66af5161d962555644f32c9239729285c533d2969cc",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11026992
                  },
                  {
                    "digest": "sha256:ab626f7200f2886d6a12e66a739d8bcce101ce20c7fd6fc75bdceb300d0ed9cf",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8324498
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  },
                  {
                    "digest": "sha256:d377b6a20cad6e7ce83c99a34860796daf222ecb52cf09803d33d81aadb8ea95",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 2352
                  },
                  {
                    "digest": "sha256:97bf6b0c2a3bfbcb8dc6ce9bd9c4b4af5e07b0b3a259347f8a0674680b9ae782",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 6915
                  }
                ]
              ],
              "step19:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  },
                  {
                    "digest": "sha256:1a820922bbed8aada176dc5e0f7dc7c9d7d4198d97fab8a9e464cdfe71c9618c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 165427889
                  },
                  {
                    "digest": "sha256:f79dc1892eecd423d9b4b66af5161d962555644f32c9239729285c533d2969cc",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11026992
                  },
                  {
                    "digest": "sha256:ab626f7200f2886d6a12e66a739d8bcce101ce20c7fd6fc75bdceb300d0ed9cf",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8324498
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  },
                  {
                    "digest": "sha256:d377b6a20cad6e7ce83c99a34860796daf222ecb52cf09803d33d81aadb8ea95",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 2352
                  },
                  {
                    "digest": "sha256:97bf6b0c2a3bfbcb8dc6ce9bd9c4b4af5e07b0b3a259347f8a0674680b9ae782",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 6915
                  },
                  {
                    "digest": "sha256:cb581ef18da2e05bdb5b8921f8409ab49c6a6610ba9ad143d9e388a86dcbbbfa",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8329212
                  }
                ]
              ],
              "step1:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  }
                ]
              ],
              "step20:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  },
                  {
                    "digest": "sha256:1a820922bbed8aada176dc5e0f7dc7c9d7d4198d97fab8a9e464cdfe71c9618c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 165427889
                  },
                  {
                    "digest": "sha256:f79dc1892eecd423d9b4b66af5161d962555644f32c9239729285c533d2969cc",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 11026992
                  },
                  {
                    "digest": "sha256:ab626f7200f2886d6a12e66a739d8bcce101ce20c7fd6fc75bdceb300d0ed9cf",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8324498
                  },
                  {
                    "digest": "sha256:77a89aa5958517478ebc99c830421beb9c7c957963cbe58a53060a7c61ae5b96",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4914
                  },
                  {
                    "digest": "sha256:d377b6a20cad6e7ce83c99a34860796daf222ecb52cf09803d33d81aadb8ea95",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 2352
                  },
                  {
                    "digest": "sha256:97bf6b0c2a3bfbcb8dc6ce9bd9c4b4af5e07b0b3a259347f8a0674680b9ae782",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 6915
                  },
                  {
                    "digest": "sha256:cb581ef18da2e05bdb5b8921f8409ab49c6a6610ba9ad143d9e388a86dcbbbfa",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 8329212
                  },
                  {
                    "digest": "sha256:03bfdcea489f74749af27671ac1d2667ca81d020c9d65ef1e6fe9997d17986de",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 122
                  }
                ]
              ],
              "step2:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:d3bccb6286f8b519854a6603b8173947259983b503cb9ca18584808b0071d428",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 36709755
                  }
                ]
              ],
              "step3:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:32ded3a27883b9b547b2b3a81f193f6500c6f4d78d018648ed162422d24bac32",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 118833368
                  }
                ]
              ],
              "step5:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:32ded3a27883b9b547b2b3a81f193f6500c6f4d78d018648ed162422d24bac32",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 118833368
                  },
                  {
                    "digest": "sha256:00b72477f3d66dfde41200091e43679663f80180310478825b1b62dc662d5309",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 105160
                  }
                ]
              ],
              "step6:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:32ded3a27883b9b547b2b3a81f193f6500c6f4d78d018648ed162422d24bac32",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 118833368
                  },
                  {
                    "digest": "sha256:00b72477f3d66dfde41200091e43679663f80180310478825b1b62dc662d5309",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 105160
                  },
                  {
                    "digest": "sha256:89261ab7e1775bb22594211882691736aa7c66d50d8df3be05cc2ac0659590c8",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 840
                  }
                ]
              ],
              "step7:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:32ded3a27883b9b547b2b3a81f193f6500c6f4d78d018648ed162422d24bac32",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 118833368
                  },
                  {
                    "digest": "sha256:00b72477f3d66dfde41200091e43679663f80180310478825b1b62dc662d5309",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 105160
                  },
                  {
                    "digest": "sha256:89261ab7e1775bb22594211882691736aa7c66d50d8df3be05cc2ac0659590c8",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 840
                  },
                  {
                    "digest": "sha256:9a3fefa99a7028e6683eb79911784bf33f9f810f6f4bfe6bcc58615f0ea1429e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 176448115
                  }
                ]
              ],
              "step8:0": [
                [
                  {
                    "digest": "sha256:bf7af0229701decd1b9f42143504fc8f69e5664c37e57001d198e731e4f86c2e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 30159582
                  },
                  {
                    "digest": "sha256:8b7daa2a21064e506832f135e69b267479622f67beb1897f2df220ad8eef9272",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 4605839
                  },
                  {
                    "digest": "sha256:251a1a59bad4d421f8ce86b036c9cec99a71dfd906fd7b14e2243becfc21aa5c",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 12273673
                  },
                  {
                    "digest": "sha256:6481b8613ac8f6ab3e8cd0c701bf2c6ff555589a47799c9a3e3b856e9be2bb99",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 249
                  },
                  {
                    "digest": "sha256:1ec499d798b8c37adca791fc5bd85c5a5eabeb1f4b47b98507743d35492764ee",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 93
                  },
                  {
                    "digest": "sha256:32ded3a27883b9b547b2b3a81f193f6500c6f4d78d018648ed162422d24bac32",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 118833368
                  },
                  {
                    "digest": "sha256:00b72477f3d66dfde41200091e43679663f80180310478825b1b62dc662d5309",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 105160
                  },
                  {
                    "digest": "sha256:89261ab7e1775bb22594211882691736aa7c66d50d8df3be05cc2ac0659590c8",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 840
                  },
                  {
                    "digest": "sha256:9a3fefa99a7028e6683eb79911784bf33f9f810f6f4bfe6bcc58615f0ea1429e",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 176448115
                  },
                  {
                    "digest": "sha256:b72469844f02cd560ac93f75979baedebcf90df02fac757056a362fbbc3d07fd",
                    "mediaType": "application/vnd.oci.image.layer.v1.tar+gzip",
                    "size": 167087525
                  }
                ]
              ]
            },
            "source": {
              "infos": [
                {
                  "data": "IyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQojIERGaXJlIEJhY2tlbmQgRG9ja2VyZmlsZQojIE11bHRpLXN0YWdlIGJ1aWxkIGZvciBkZXZlbG9wbWVudCBhbmQgcHJvZHVjdGlvbgojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiMgU1RBR0UgMTogQmFzZSBQeXRob24gaW1hZ2Ugd2l0aCBzeXN0ZW0gZGVwZW5kZW5jaWVzCiMgQmFzZSBpbWFnZSBwaW5uZWQgdG8gZGlnZXN0IGZvciBzdXBwbHkgY2hhaW4gc2VjdXJpdHkuCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KRlJPTSBweXRob246My4xNC1zbGltQHNoYTI1NjpjYWQ5YTJjODcxNzYxYzQxM2NhYTZmZGQ2NDQxYzc4MzQ1MWU3NDBhNDhhYWViYTYwYWU2MmE4YjUzNTI1ZWY2IEFTIGJhc2UKCkVOViBQWVRIT05ET05UV1JJVEVCWVRFQ09ERT0xIFwKICAgIFBZVEhPTlVOQlVGRkVSRUQ9MSBcCiAgICBQSVBfTk9fQ0FDSEVfRElSPTEgXAogICAgUElQX0RJU0FCTEVfUElQX1ZFUlNJT05fQ0hFQ0s9MQoKV09SS0RJUiAvYXBwCgojIEluc3RhbGwgc3lzdGVtIGRlcGVuZGVuY2llcyByZXF1aXJlZCBmb3I6CiMgLSBwc3ljb3BnMjogbGlicHEtZGV2LCBnY2MKIyAtIHB5dGhvbi1tYWdpYzogbGlibWFnaWMxCiMgLSBwZ19kdW1wL3BnX3Jlc3RvcmU6IHBvc3RncmVzcWwtY2xpZW50LXsxNiwxNywxOH0gZnJvbSBQR0RHCiMgLSBXZWFzeVByaW50IChjYXNlIHJlcG9ydCBQREYpOiBsaWJwYW5nby0xLjAtMCwgbGlicGFuZ29mdDItMS4wLTAsCiMgICBsaWJoYXJmYnV6ei1zdWJzZXQwLiBFdmVyeSBwYWNrYWdlIHRoZXNlIHB1bGwgaW4gaXMgbGlzdGVkIHdpdGggaXRzCiMgICBsaWNlbnNlIGluIHNjcmlwdHMvbGljZW5zZS1pbnZlbnRvcnkuanNvbiAobGljZW5zZSBnYXRlLCBjaGVjay1kZWJpYW4pLgojCiMgV2UgaW5zdGFsbCBtdWx0aXBsZSBwb3N0Z3Jlc3FsLWNsaWVudCB2ZXJzaW9ucyBiZWNhdXNlIHBnX2R1bXAgbXVzdCBiZQojID49IHRoZSBzZXJ2ZXIncyBtYWpvciB2ZXJzaW9uLiBCYWNrdXBTZXJ2aWNlIGF1dG8tZGV0ZWN0cyB0aGUgc2VydmVyCiMgdmVyc2lvbiBhbmQgc2VsZWN0cyB0aGUgbWF0Y2hpbmcgY2xpZW50IGJpbmFyeSBhdCBydW50aW1lLgojIEVhY2ggdmVyc2lvbiBpbnN0YWxscyB1bmRlciAvdXNyL2xpYi9wb3N0Z3Jlc3FsL3t2ZXJ9L2Jpbi8uClJVTiBhcHQtZ2V0IHVwZGF0ZSAmJiBhcHQtZ2V0IGluc3RhbGwgLXkgLS1uby1pbnN0YWxsLXJlY29tbWVuZHMgXAogICAgbGlicHEtZGV2IFwKICAgIGdjYyBcCiAgICBsaWJjLWRldiBcCiAgICBsaWJtYWdpYzEgXAogICAgbGlicGFuZ28tMS4wLTAgXAogICAgbGlicGFuZ29mdDItMS4wLTAgXAogICAgbGliaGFyZmJ1enotc3Vic2V0MCBcCiAgICBjdXJsIFwKICAgIGdudXBnIFwKICAgICYmIGN1cmwgLWZzU0wgaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvbWVkaWEva2V5cy9BQ0NDNENGOC5hc2MgXAogICAgICAgfCBncGcgLS1kZWFybW9yIC1vIC91c3Ivc2hhcmUva2V5cmluZ3MvcGdkZy5ncGcgXAogICAgJiYgZWNobyAiZGViIFtzaWduZWQtYnk9L3Vzci9zaGFyZS9rZXlyaW5ncy9wZ2RnLmdwZ10gaHR0cDovL2FwdC5wb3N0Z3Jlc3FsLm9yZy9wdWIvcmVwb3MvYXB0IHRyaXhpZS1wZ2RnIG1haW4iIFwKICAgICAgID4gL2V0Yy9hcHQvc291cmNlcy5saXN0LmQvcGdkZy5saXN0IFwKICAgICYmIGFwdC1nZXQgdXBkYXRlIFwKICAgICYmIGFwdC1nZXQgaW5zdGFsbCAteSAtLW5vLWluc3RhbGwtcmVjb21tZW5kcyBcCiAgICAgICBwb3N0Z3Jlc3FsLWNsaWVudC0xNiBcCiAgICAgICBwb3N0Z3Jlc3FsLWNsaWVudC0xNyBcCiAgICAgICBwb3N0Z3Jlc3FsLWNsaWVudC0xOCBcCiAgICAmJiBybSAtcmYgL3Zhci9saWIvYXB0L2xpc3RzLyoKCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIyBTVEFHRSAyOiBEZXZlbG9wbWVudCBpbWFnZQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkZST00gYmFzZSBBUyBkZXZlbG9wbWVudAoKIyBDb3B5IGFuZCBpbnN0YWxsIHJlcXVpcmVtZW50cywgdGhlbiByZW1vdmUgdGhlIHBhY2thZ2UgZGF0YSBERklSZSBtYXkgbm90CiMgcmVkaXN0cmlidXRlIChzZWUgcHJ1bmVfc2l0ZV9wYWNrYWdlcy5weSkuCkNPUFkgZGZpcmVfYXBpL3JlcXVpcmVtZW50cy50eHQgLgpDT1BZIGRvY2tlci9iYWNrZW5kL3BydW5lX3NpdGVfcGFja2FnZXMucHkgL3RtcC9wcnVuZV9zaXRlX3BhY2thZ2VzLnB5ClJVTiAtLW1vdW50PXR5cGU9Y2FjaGUsdGFyZ2V0PS9yb290Ly5jYWNoZS9waXAsc2hhcmluZz1sb2NrZWQgXAogICAgcGlwIGluc3RhbGwgLS1yZXF1aXJlLWhhc2hlcyAtLW5vLWRlcHMgLS1pZ25vcmUtcmVxdWlyZXMtcHl0aG9uIC1yIHJlcXVpcmVtZW50cy50eHQgXAogICAgJiYgcHl0aG9uIC90bXAvcHJ1bmVfc2l0ZV9wYWNrYWdlcy5weQoKIyBJbnN0YWxsIHV2IGZvciBhZC1ob2MgbG9ja2ZpbGUgcmVnZW5lcmF0aW9uIGluc2lkZSB0aGUgZGV2IGNvbnRhaW5lci4KIyBMb2NrZmlsZSBnZW5lcmF0aW9uIG5lZWRzIGB1diBwaXAgY29tcGlsZSAtLW92ZXJyaWRlYCBiZWNhdXNlIHNvbWUKIyB1cHN0cmVhbSBwYWNrYWdlcyBvdmVyLXBpbiB0cmFuc2l0aXZlIGRlcHMgdGlnaHRlciB0aGFuIHRoZWlyIGFjdHVhbAojIGNvZGUgcmVxdWlyZXM7IHNlZSByZXF1aXJlbWVudHMtb3ZlcnJpZGVzLnR4dCArIENMQVVERS5tZC4gdXYgaXMKIyBkZXYtb25seSDigJQgcHJvZHVjdGlvbiBzdGFnZXMgbmV2ZXIgcmUtcmVzb2x2ZSwgdGhleSBpbnN0YWxsIGZyb20KIyB0aGUgYWxyZWFkeS1nZW5lcmF0ZWQgbG9ja2ZpbGUuClJVTiAtLW1vdW50PXR5cGU9Y2FjaGUsdGFyZ2V0PS9yb290Ly5jYWNoZS9waXAsc2hhcmluZz1sb2NrZWQgXAogICAgcGlwIGluc3RhbGwgdXYKCiMgQ29weSBlbnRyeXBvaW50IHNjcmlwdCAocnVucyBtaWdyYXRpb25zLCBzZXRzIHVwIHNjaGVkdWxlcywgY3JlYXRlcyBzdXBlcnVzZXIpCkNPUFkgZG9ja2VyL2JhY2tlbmQvZW50cnlwb2ludC5zaCAvZW50cnlwb2ludC5zaApSVU4gY2htb2QgK3ggL2VudHJ5cG9pbnQuc2gKCiMgRGV2ZWxvcG1lbnQgZG9lc24ndCBjb3B5IGNvZGUgLSB1c2VzIHZvbHVtZSBtb3VudCBmb3IgaG90LXJlbG9hZAojIFdvcmtpbmcgZGlyZWN0b3J5IGlzIC9hcHAsIGNvZGUgbW91bnRlZCBhdCAvYXBwCiMgZGVmYXVsdHMuanNvbiBpcyBpbmNsdWRlZCBpbiBkZmlyZV9hcGkvIGFuZCBtb3VudGVkIGF0IC9hcHAvCgpFWFBPU0UgODAwMCA4MDAxCgojIENvcHkgc3RhcnQtc2VydmVyIHNjcmlwdCAocnVucyBEYXBobmUgKyBndW5pY29ybiBzaWRlIGJ5IHNpZGUpCkNPUFkgZG9ja2VyL2JhY2tlbmQvc3RhcnQtc2VydmVyLnNoIC9zdGFydC1zZXJ2ZXIuc2gKUlVOIGNobW9kICt4IC9zdGFydC1zZXJ2ZXIuc2gKCiMgVXNlIGVudHJ5cG9pbnQgdG8gcnVuIG1pZ3JhdGlvbnMgYmVmb3JlIHN0YXJ0aW5nIHNlcnZlcgpFTlRSWVBPSU5UIFsiL2VudHJ5cG9pbnQuc2giXQpDTUQgWyIvc3RhcnQtc2VydmVyLnNoIl0KCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIyBTVEFHRSAzOiBQcm9kdWN0aW9uIGJ1aWxkZXIKIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpGUk9NIGJhc2UgQVMgYnVpbGRlcgoKQ09QWSBkZmlyZV9hcGkvcmVxdWlyZW1lbnRzLnR4dCAuCkNPUFkgZG9ja2VyL2JhY2tlbmQvcHJ1bmVfc2l0ZV9wYWNrYWdlcy5weSAvdG1wL3BydW5lX3NpdGVfcGFja2FnZXMucHkKUlVOIC0tbW91bnQ9dHlwZT1jYWNoZSx0YXJnZXQ9L3Jvb3QvLmNhY2hlL3BpcCxzaGFyaW5nPWxvY2tlZCBcCiAgICBwaXAgaW5zdGFsbCAtLXJlcXVpcmUtaGFzaGVzIC0tbm8tZGVwcyAtLWlnbm9yZS1yZXF1aXJlcy1weXRob24gLXIgcmVxdWlyZW1lbnRzLnR4dCBcCiAgICAmJiBweXRob24gL3RtcC9wcnVuZV9zaXRlX3BhY2thZ2VzLnB5CgojIFNuYXBzaG90IHRoZSBzaXRlLXBhY2thZ2VzIHBhdGggdG8gYSB2ZXJzaW9uLWFnbm9zdGljIGxvY2F0aW9uIHNvIHRoZQojIHByb2R1Y3Rpb24gc3RhZ2UgY2FuIENPUFkgaXQgd2l0aG91dCBoYXJkY29kaW5nIHRoZSBQeXRob24gdmVyc2lvbi4KUlVOIGNwIC1hICQocHl0aG9uIC1jICJpbXBvcnQgc2l0ZTsgcHJpbnQoc2l0ZS5nZXRzaXRlcGFja2FnZXMoKVswXSkiKSAvc2l0ZS1wYWNrYWdlcwoKIyBDb3B5IGFwcGxpY2F0aW9uIGNvZGUKQ09QWSBkZmlyZV9hcGkvIC4KCiMgQ29weSBmcm9udGVuZCBwYWNrYWdlLWxvY2suanNvbiBmb3IgU0JPTSB2aWV3ZXIKQ09QWSBkZmlyZV9ndWkvcGFja2FnZS1sb2NrLmpzb24gL2FwcC9wYWNrYWdlLWxvY2stZ3VpLmpzb24KCiMgT3B0aW9uYWxseSBjb21waWxlIHRoZSBsaWNlbnNpbmcgZW5mb3JjZW1lbnQvdmFsaWRhdGlvbiBtb2R1bGVzIHRvIG5hdGl2ZQojIC5zbyBleHRlbnNpb25zIGZvciB0YW1wZXItcmVzaXN0YW5jZSAoZGVmZW5zZS1pbi1kZXB0aCwgTk9UIGEgc2VjdXJpdHkKIyBib3VuZGFyeSDigJQgc2VlIGRmaXJlX2FwaS9jeXRob25fYnVpbGQucHkpLiBPZmYgYnkgZGVmYXVsdDsgdGhlIGRldiBpbWFnZSBhbmQKIyBhIGRlZmF1bHQgcHJvZHVjdGlvbiBidWlsZCBrZWVwIGVkaXRhYmxlIFB5dGhvbiBzb3VyY2UuIEVuYWJsZSB3aXRoOgojICAgZG9ja2VyIGJ1aWxkIC0tYnVpbGQtYXJnIENPTVBJTEVfTElDRU5TSU5HPXRydWUgLi4uCiMgZ2NjL2xpYmMtZGV2IGNvbWUgZnJvbSB0aGUgYmFzZSBzdGFnZTsgdGhlIHNsaW0gYmFzZSBzaGlwcyBQeXRob24gaGVhZGVycy4KQVJHIENPTVBJTEVfTElDRU5TSU5HPWZhbHNlClJVTiAtLW1vdW50PXR5cGU9Y2FjaGUsdGFyZ2V0PS9yb290Ly5jYWNoZS9waXAsc2hhcmluZz1sb2NrZWQgXAogICAgaWYgWyAiJENPTVBJTEVfTElDRU5TSU5HIiA9ICJ0cnVlIiBdOyB0aGVuIFwKICAgICAgICBzZXQgLWV1eDsgXAogICAgICAgICMgc2V0dXB0b29scyBpcyBub3QgYnVuZGxlZCBpbiB0aGUgc2xpbSBiYXNlOyBjeXRob25fYnVpbGQucHkgbmVlZHMgaXQuCiAgICAgICAgcGlwIGluc3RhbGwgImN5dGhvbj49My4wIiBzZXR1cHRvb2xzOyBcCiAgICAgICAgcHl0aG9uIGN5dGhvbl9idWlsZC5weSBidWlsZF9leHQgLS1pbnBsYWNlOyBcCiAgICAgICAgIyBTdHJpcCB0aGUgc291cmNlICsgQyBpbnRlcm1lZGlhdGVzIGZvciBldmVyeSBjb21waWxlZCBtb2R1bGUgc28gb25seQogICAgICAgICMgdGhlIC5zbyBzaGlwcy4gS2VlcCB0aGlzIGxpc3QgaW4gc3luYyB3aXRoIGN5dGhvbl9idWlsZC5weTpNT0RVTEVTLgogICAgICAgIHJtIC1mIGNvcmUvbGljZW5zaW5nL29mZmxpbmUucHkgY29yZS9saWNlbnNpbmcvb2ZmbGluZS5jIFwKICAgICAgICAgICAgICBjb3JlL2xpY2Vuc2luZy9zZXJ2aWNlcy5weSBjb3JlL2xpY2Vuc2luZy9zZXJ2aWNlcy5jIFwKICAgICAgICAgICAgICBjb3JlL2xpY2Vuc2luZy9taWRkbGV3YXJlLnB5IGNvcmUvbGljZW5zaW5nL21pZGRsZXdhcmUuYyBcCiAgICAgICAgICAgICAgY29yZS9saWNlbnNpbmcvc3lzdGVtX2lkLnB5IGNvcmUvbGljZW5zaW5nL3N5c3RlbV9pZC5jOyBcCiAgICAgICAgcm0gLXJmIGJ1aWxkOyBcCiAgICAgICAgcGlwIHVuaW5zdGFsbCAteSBjeXRob24gc2V0dXB0b29sczsgXAogICAgICAgIGVjaG8gIkNvbXBpbGVkIGxpY2Vuc2luZyBtb2R1bGVzOiI7IGxzIC0xIGNvcmUvbGljZW5zaW5nLyouc287IFwKICAgIGZpCgojIENvbGxlY3Qgc3RhdGljIGZpbGVzIChyZXF1aXJlcyBTVEFUSUNfUk9PVCBpbiBzZXR0aW5ncykKIyBVc2luZyBhIGR1bW15IFNFQ1JFVF9LRVkgZm9yIGNvbGxlY3RzdGF0aWMgb25seQpSVU4gU0VDUkVUX0tFWT1idWlsZC10aW1lLXNlY3JldC1mb3ItY29sbGVjdHN0YXRpYyBcCiAgICBDUkVERU5USUFMX0VOQ1JZUFRJT05fS0VZPWJ1aWxkLXRpbWUta2V5LWZvci1jb2xsZWN0c3RhdGljIFwKICAgIERFQlVHPWZhbHNlIFwKICAgIHB5dGhvbiBtYW5hZ2UucHkgY29sbGVjdHN0YXRpYyAtLW5vaW5wdXQKCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIyBTVEFHRSA0OiBQcm9kdWN0aW9uIHJ1bnRpbWUKIyBCYXNlIGltYWdlIHBpbm5lZCB0byBkaWdlc3QgZm9yIHN1cHBseSBjaGFpbiBzZWN1cml0eSAobXVzdCBtYXRjaCBiYXNlIHN0YWdlKS4KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpGUk9NIHB5dGhvbjozLjE0LXNsaW1Ac2hhMjU2OmNhZDlhMmM4NzE3NjFjNDEzY2FhNmZkZDY0NDFjNzgzNDUxZTc0MGE0OGFhZWJhNjBhZTYyYThiNTM1MjVlZjYgQVMgcHJvZHVjdGlvbgoKRU5WIFBZVEhPTkRPTlRXUklURUJZVEVDT0RFPTEgXAogICAgUFlUSE9OVU5CVUZGRVJFRD0xCgpXT1JLRElSIC9hcHAKCiMgSW5zdGFsbCBydW50aW1lIGRlcGVuZGVuY2llcyBvbmx5IChubyBidWlsZCB0b29scykKIyBjdXJsIGlzIG5lZWRlZCBmb3IgY29udGFpbmVyIGhlYWx0aCBjaGVja3MKIyBwb3N0Z3Jlc3FsLWNsaWVudC17MTYsMTcsMTh9IGZvciBiYWNrdXAvcmVzdG9yZSAoc2VlIGJhc2Ugc3RhZ2UgY29tbWVudCkKIyBQYW5nbyBhbmQgSGFyZkJ1enogZm9yIFdlYXN5UHJpbnQgKHNlZSBiYXNlIHN0YWdlIGNvbW1lbnQpClJVTiBhcHQtZ2V0IHVwZGF0ZSAmJiBhcHQtZ2V0IGluc3RhbGwgLXkgLS1uby1pbnN0YWxsLXJlY29tbWVuZHMgXAogICAgbGlicHE1IFwKICAgIGxpYm1hZ2ljMSBcCiAgICBsaWJwYW5nby0xLjAtMCBcCiAgICBsaWJwYW5nb2Z0Mi0xLjAtMCBcCiAgICBsaWJoYXJmYnV6ei1zdWJzZXQwIFwKICAgIGN1cmwgXAogICAgZ251cGcgXAogICAgJiYgY3VybCAtZnNTTCBodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZWRpYS9rZXlzL0FDQ0M0Q0Y4LmFzYyBcCiAgICAgICB8IGdwZyAtLWRlYXJtb3IgLW8gL3Vzci9zaGFyZS9rZXlyaW5ncy9wZ2RnLmdwZyBcCiAgICAmJiBlY2hvICJkZWIgW3NpZ25lZC1ieT0vdXNyL3NoYXJlL2tleXJpbmdzL3BnZGcuZ3BnXSBodHRwOi8vYXB0LnBvc3RncmVzcWwub3JnL3B1Yi9yZXBvcy9hcHQgdHJpeGllLXBnZGcgbWFpbiIgXAogICAgICAgPiAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC9wZ2RnLmxpc3QgXAogICAgJiYgYXB0LWdldCB1cGRhdGUgXAogICAgJiYgYXB0LWdldCBpbnN0YWxsIC15IC0tbm8taW5zdGFsbC1yZWNvbW1lbmRzIFwKICAgICAgIHBvc3RncmVzcWwtY2xpZW50LTE2IFwKICAgICAgIHBvc3RncmVzcWwtY2xpZW50LTE3IFwKICAgICAgIHBvc3RncmVzcWwtY2xpZW50LTE4IFwKICAgICYmIHJtIC1yZiAvdmFyL2xpYi9hcHQvbGlzdHMvKgoKIyBDb3B5IGluc3RhbGxlZCBQeXRob24gcGFja2FnZXMgZnJvbSBidWlsZGVyIGludG8gdGhlIHJ1bnRpbWUncyBzaXRlLXBhY2thZ2VzLgojIFVzZXMgYSBzaGVsbCB0byByZXNvbHZlIHRoZSB2ZXJzaW9uLXNwZWNpZmljIHBhdGggZHluYW1pY2FsbHksIGF2b2lkaW5nCiMgaGFyZGNvZGVkIFB5dGhvbiB2ZXJzaW9uIHN0cmluZ3MgdGhhdCBicmVhayBvbiBiYXNlIGltYWdlIHVwZ3JhZGVzLgpSVU4gLS1tb3VudD1mcm9tPWJ1aWxkZXIsc291cmNlPS9zaXRlLXBhY2thZ2VzLHRhcmdldD0vdG1wL3NpdGUtcGFja2FnZXMgXAogICAgY3AgLWEgL3RtcC9zaXRlLXBhY2thZ2VzLyogJChweXRob24gLWMgImltcG9ydCBzaXRlOyBwcmludChzaXRlLmdldHNpdGVwYWNrYWdlcygpWzBdKSIpLwpDT1BZIC0tZnJvbT1idWlsZGVyIC91c3IvbG9jYWwvYmluIC91c3IvbG9jYWwvYmluCgojIENvcHkgYXBwbGljYXRpb24gY29kZQpDT1BZIC0tZnJvbT1idWlsZGVyIC9hcHAgL2FwcAoKIyBDb3B5IGVudHJ5cG9pbnQgYW5kIHN0YXJ0LXNlcnZlciBzY3JpcHRzCkNPUFkgZG9ja2VyL2JhY2tlbmQvZW50cnlwb2ludC5zaCAvZW50cnlwb2ludC5zaApDT1BZIGRvY2tlci9iYWNrZW5kL3N0YXJ0LXNlcnZlci5zaCAvc3RhcnQtc2VydmVyLnNoClJVTiBjaG1vZCAreCAvZW50cnlwb2ludC5zaCAvc3RhcnQtc2VydmVyLnNoCgojIGRlZmF1bHRzLmpzb24gaXMgYWxyZWFkeSBpbmNsdWRlZCBpbiAvYXBwIGZyb20gdGhlIGJ1aWxkZXIgc3RhZ2UgKHBhcnQgb2YgZGZpcmVfYXBpLykKCiMgQ3JlYXRlIG5vbi1yb290IHVzZXIgZm9yIHNlY3VyaXR5ClJVTiB1c2VyYWRkIC0tY3JlYXRlLWhvbWUgLS1zaGVsbCAvYmluL2Jhc2ggZGZpcmUgXAogICAgJiYgY2hvd24gLVIgZGZpcmU6ZGZpcmUgL2FwcAoKIyBDcmVhdGUgZGlyZWN0b3JpZXMgZm9yIG1lZGlhIGFuZCBlbnN1cmUgcHJvcGVyIHBlcm1pc3Npb25zClJVTiBta2RpciAtcCAvYXBwL21lZGlhIC9hcHAvc3RhdGljZmlsZXMgXAogICAgJiYgY2hvd24gLVIgZGZpcmU6ZGZpcmUgL2FwcC9tZWRpYSAvYXBwL3N0YXRpY2ZpbGVzIFwKICAgICYmIGNobW9kIDc1MCAvYXBwL21lZGlhIFwKICAgICYmIGNobW9kIDc1NSAvYXBwL3N0YXRpY2ZpbGVzCgpVU0VSIGRmaXJlCgpFWFBPU0UgODAwMCA4MDAxCgpFTlRSWVBPSU5UIFsiL2VudHJ5cG9pbnQuc2giXQpDTUQgWyIvc3RhcnQtc2VydmVyLnNoIl0K",
                  "digestMapping": {
                    "sha256:562d64bb0350c04e6383ecd64a04aba9106f63574f952e7d30783ab24cc7536d": "step0",
                    "sha256:6e9406a5b7b7a44f75380a3ef830112528b8ac397c4ea9e149aec56cfd5c82b0": "step1"
                  },
                  "filename": "Dockerfile",
                  "language": "Dockerfile",
                  "llbDefinition": [
                    {
                      "id": "step0",
                      "op": {
                        "Op": {
                          "source": {
                            "attrs": {
                              "local.differ": "none",
                              "local.followpaths": "[\"Dockerfile\",\"Dockerfile.dockerignore\",\"dockerfile\"]",
                              "local.sharedkeyhint": "dockerfile"
                            },
                            "identifier": "local://dockerfile"
                          }
                        },
                        "constraints": {}
                      }
                    },
                    {
                      "id": "step1",
                      "inputs": [
                        "step0:0"
                      ],
                      "op": {
                        "Op": {}
                      }
                    }
                  ]
                }
              ],
              "locations": {
                "step0": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 148
                          },
                          "start": {
                            "line": 148
                          }
                        }
                      ]
                    },
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 10
                          },
                          "start": {
                            "line": 10
                          }
                        }
                      ]
                    }
                  ]
                },
                "step1": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 153
                          },
                          "start": {
                            "line": 153
                          }
                        }
                      ]
                    },
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 17
                          },
                          "start": {
                            "line": 17
                          }
                        }
                      ]
                    }
                  ]
                },
                "step10": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 111
                          },
                          "start": {
                            "line": 111
                          }
                        }
                      ]
                    }
                  ]
                },
                "step11": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 120
                          },
                          "start": {
                            "line": 120
                          }
                        },
                        {
                          "end": {
                            "line": 121
                          },
                          "start": {
                            "line": 121
                          }
                        },
                        {
                          "end": {
                            "line": 122
                          },
                          "start": {
                            "line": 122
                          }
                        },
                        {
                          "end": {
                            "line": 123
                          },
                          "start": {
                            "line": 123
                          }
                        },
                        {
                          "end": {
                            "line": 124
                          },
                          "start": {
                            "line": 124
                          }
                        },
                        {
                          "end": {
                            "line": 125
                          },
                          "start": {
                            "line": 125
                          }
                        },
                        {
                          "end": {
                            "line": 126
                          },
                          "start": {
                            "line": 126
                          }
                        },
                        {
                          "end": {
                            "line": 127
                          },
                          "start": {
                            "line": 127
                          }
                        },
                        {
                          "end": {
                            "line": 128
                          },
                          "start": {
                            "line": 128
                          }
                        },
                        {
                          "end": {
                            "line": 129
                          },
                          "start": {
                            "line": 129
                          }
                        },
                        {
                          "end": {
                            "line": 130
                          },
                          "start": {
                            "line": 130
                          }
                        },
                        {
                          "end": {
                            "line": 131
                          },
                          "start": {
                            "line": 131
                          }
                        },
                        {
                          "end": {
                            "line": 132
                          },
                          "start": {
                            "line": 132
                          }
                        },
                        {
                          "end": {
                            "line": 133
                          },
                          "start": {
                            "line": 133
                          }
                        },
                        {
                          "end": {
                            "line": 134
                          },
                          "start": {
                            "line": 134
                          }
                        },
                        {
                          "end": {
                            "line": 135
                          },
                          "start": {
                            "line": 135
                          }
                        }
                      ]
                    }
                  ]
                },
                "step12": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 139
                          },
                          "start": {
                            "line": 139
                          }
                        },
                        {
                          "end": {
                            "line": 140
                          },
                          "start": {
                            "line": 140
                          }
                        },
                        {
                          "end": {
                            "line": 141
                          },
                          "start": {
                            "line": 141
                          }
                        },
                        {
                          "end": {
                            "line": 142
                          },
                          "start": {
                            "line": 142
                          }
                        }
                      ]
                    }
                  ]
                },
                "step13": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 181
                          },
                          "start": {
                            "line": 181
                          }
                        },
                        {
                          "end": {
                            "line": 182
                          },
                          "start": {
                            "line": 182
                          }
                        }
                      ]
                    }
                  ]
                },
                "step14": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 183
                          },
                          "start": {
                            "line": 183
                          }
                        }
                      ]
                    }
                  ]
                },
                "step15": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 186
                          },
                          "start": {
                            "line": 186
                          }
                        }
                      ]
                    }
                  ]
                },
                "step16": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 189
                          },
                          "start": {
                            "line": 189
                          }
                        }
                      ]
                    }
                  ]
                },
                "step17": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 190
                          },
                          "start": {
                            "line": 190
                          }
                        }
                      ]
                    }
                  ]
                },
                "step18": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 191
                          },
                          "start": {
                            "line": 191
                          }
                        }
                      ]
                    }
                  ]
                },
                "step19": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 196
                          },
                          "start": {
                            "line": 196
                          }
                        },
                        {
                          "end": {
                            "line": 197
                          },
                          "start": {
                            "line": 197
                          }
                        }
                      ]
                    }
                  ]
                },
                "step2": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 159
                          },
                          "start": {
                            "line": 159
                          }
                        },
                        {
                          "end": {
                            "line": 160
                          },
                          "start": {
                            "line": 160
                          }
                        },
                        {
                          "end": {
                            "line": 161
                          },
                          "start": {
                            "line": 161
                          }
                        },
                        {
                          "end": {
                            "line": 162
                          },
                          "start": {
                            "line": 162
                          }
                        },
                        {
                          "end": {
                            "line": 163
                          },
                          "start": {
                            "line": 163
                          }
                        },
                        {
                          "end": {
                            "line": 164
                          },
                          "start": {
                            "line": 164
                          }
                        },
                        {
                          "end": {
                            "line": 165
                          },
                          "start": {
                            "line": 165
                          }
                        },
                        {
                          "end": {
                            "line": 166
                          },
                          "start": {
                            "line": 166
                          }
                        },
                        {
                          "end": {
                            "line": 167
                          },
                          "start": {
                            "line": 167
                          }
                        },
                        {
                          "end": {
                            "line": 168
                          },
                          "start": {
                            "line": 168
                          }
                        },
                        {
                          "end": {
                            "line": 169
                          },
                          "start": {
                            "line": 169
                          }
                        },
                        {
                          "end": {
                            "line": 170
                          },
                          "start": {
                            "line": 170
                          }
                        },
                        {
                          "end": {
                            "line": 171
                          },
                          "start": {
                            "line": 171
                          }
                        },
                        {
                          "end": {
                            "line": 172
                          },
                          "start": {
                            "line": 172
                          }
                        },
                        {
                          "end": {
                            "line": 173
                          },
                          "start": {
                            "line": 173
                          }
                        },
                        {
                          "end": {
                            "line": 174
                          },
                          "start": {
                            "line": 174
                          }
                        },
                        {
                          "end": {
                            "line": 175
                          },
                          "start": {
                            "line": 175
                          }
                        },
                        {
                          "end": {
                            "line": 176
                          },
                          "start": {
                            "line": 176
                          }
                        }
                      ]
                    }
                  ]
                },
                "step20": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 200
                          },
                          "start": {
                            "line": 200
                          }
                        },
                        {
                          "end": {
                            "line": 201
                          },
                          "start": {
                            "line": 201
                          }
                        },
                        {
                          "end": {
                            "line": 202
                          },
                          "start": {
                            "line": 202
                          }
                        },
                        {
                          "end": {
                            "line": 203
                          },
                          "start": {
                            "line": 203
                          }
                        }
                      ]
                    }
                  ]
                },
                "step3": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 31
                          },
                          "start": {
                            "line": 31
                          }
                        },
                        {
                          "end": {
                            "line": 32
                          },
                          "start": {
                            "line": 32
                          }
                        },
                        {
                          "end": {
                            "line": 33
                          },
                          "start": {
                            "line": 33
                          }
                        },
                        {
                          "end": {
                            "line": 34
                          },
                          "start": {
                            "line": 34
                          }
                        },
                        {
                          "end": {
                            "line": 35
                          },
                          "start": {
                            "line": 35
                          }
                        },
                        {
                          "end": {
                            "line": 36
                          },
                          "start": {
                            "line": 36
                          }
                        },
                        {
                          "end": {
                            "line": 37
                          },
                          "start": {
                            "line": 37
                          }
                        },
                        {
                          "end": {
                            "line": 38
                          },
                          "start": {
                            "line": 38
                          }
                        },
                        {
                          "end": {
                            "line": 39
                          },
                          "start": {
                            "line": 39
                          }
                        },
                        {
                          "end": {
                            "line": 40
                          },
                          "start": {
                            "line": 40
                          }
                        },
                        {
                          "end": {
                            "line": 41
                          },
                          "start": {
                            "line": 41
                          }
                        },
                        {
                          "end": {
                            "line": 42
                          },
                          "start": {
                            "line": 42
                          }
                        },
                        {
                          "end": {
                            "line": 43
                          },
                          "start": {
                            "line": 43
                          }
                        },
                        {
                          "end": {
                            "line": 44
                          },
                          "start": {
                            "line": 44
                          }
                        },
                        {
                          "end": {
                            "line": 45
                          },
                          "start": {
                            "line": 45
                          }
                        },
                        {
                          "end": {
                            "line": 46
                          },
                          "start": {
                            "line": 46
                          }
                        },
                        {
                          "end": {
                            "line": 47
                          },
                          "start": {
                            "line": 47
                          }
                        },
                        {
                          "end": {
                            "line": 48
                          },
                          "start": {
                            "line": 48
                          }
                        },
                        {
                          "end": {
                            "line": 49
                          },
                          "start": {
                            "line": 49
                          }
                        },
                        {
                          "end": {
                            "line": 50
                          },
                          "start": {
                            "line": 50
                          }
                        }
                      ]
                    }
                  ]
                },
                "step4": {},
                "step5": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 97
                          },
                          "start": {
                            "line": 97
                          }
                        }
                      ]
                    }
                  ]
                },
                "step6": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 98
                          },
                          "start": {
                            "line": 98
                          }
                        }
                      ]
                    }
                  ]
                },
                "step7": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 99
                          },
                          "start": {
                            "line": 99
                          }
                        },
                        {
                          "end": {
                            "line": 100
                          },
                          "start": {
                            "line": 100
                          }
                        },
                        {
                          "end": {
                            "line": 101
                          },
                          "start": {
                            "line": 101
                          }
                        }
                      ]
                    }
                  ]
                },
                "step8": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 105
                          },
                          "start": {
                            "line": 105
                          }
                        }
                      ]
                    }
                  ]
                },
                "step9": {
                  "locations": [
                    {
                      "ranges": [
                        {
                          "end": {
                            "line": 108
                          },
                          "start": {
                            "line": 108
                          }
                        }
                      ]
                    }
                  ]
                }
              }
            },
            "vcs": {
              "localdir:context": ".",
              "localdir:dockerfile": "docker/backend",
              "revision": "64588ab76c269c1d9b5ce637dc7ffd1e18931c9a",
              "source": "https://github.com/DFIRe-Development/dfire"
            }
          },
          "finishedOn": "2026-11-04T10:47:43.907760079Z",
          "invocationId": "lvq4bs6y82fojayupmpn6b9us",
          "startedOn": "2026-11-04T10:43:47.1452221Z"
        }
      }
    }
  }
}
