Status: SUCCEEDED
Triggered by: -
Duration: 33 minutes
Actions:

Definition (rev 5822d577ae05bb12d06aefc38a093a4b83390e31)

buildbucket: <
  server: "cr-buildbucket.appspot.com"
  bucket: "luci.dart.ci.sandbox"
  builder: "pkg-linux-release"
>

Incoming triggers

Incoming properties

{
  "branch": "refs/heads/master",
  "repository": "https://dart.googlesource.com/sdk/",
  "revision": "318967456c74044caee54b39831b2937196be215"
}

Incoming tags

  • buildset:commit/git/318967456c74044caee54b39831b2937196be215
  • buildset:commit/gitiles/dart.googlesource.com/sdk/+/318967456c74044caee54b39831b2937196be215
  • gitiles_ref:refs/heads/master

Debug log (UTC)

[06:08:07.514] New invocation is queued and will start shortly
[06:08:08.996] Starting the invocation (attempt 1)
[06:08:09.037] Preparing PubSub topic for "https://cr-buildbucket.appspot.com"
[06:08:09.037] PubSub topic is "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
[06:08:09.037] Buildbucket request:
{
  "bucket": "luci.dart.ci.sandbox",
  "client_operation_id": "9081927011895070064",
  "parameters_json": "{\"builder_name\":\"pkg-linux-release\",\"properties\":{\"branch\":\"refs/heads/master\",\"repository\":\"https://dart.googlesource.com/sdk/\",\"revision\":\"318967456c74044caee54b39831b2937196be215\"}}",
  "pubsub_callback": {
    "auth_token": "...",
    "topic": "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
  },
  "tags": [
    "builder:pkg-linux-release",
    "scheduler_invocation_id:9081927011895070064",
    "scheduler_job_id:dart/pkg-linux-release",
    "user_agent:luci-scheduler",
    "buildset:commit/git/318967456c74044caee54b39831b2937196be215",
    "buildset:commit/gitiles/dart.googlesource.com/sdk/+/318967456c74044caee54b39831b2937196be215",
    "gitiles_ref:refs/heads/master"
  ]
}
[06:08:09.739] Buildbucket response:
{
  "build": {
    "bucket": "luci.dart.ci.sandbox",
    "canary_preference": "AUTO",
    "created_by": "project:dart",
    "created_ts": "1554962889166923",
    "id": "8916496949487644656",
    "parameters_json": "{\"builder_name\": \"pkg-linux-release\", \"properties\": {\"branch\": \"refs/heads/master\", \"repository\": \"https://dart.googlesource.com/sdk/\", \"revision\": \"318967456c74044caee54b39831b2937196be215\"}}",
    "project": "dart",
    "result_details_json": "{\"properties\": {}}",
    "service_account": "dart-luci-try-builder@dart-ci.iam.gserviceaccount.com",
    "status": "SCHEDULED",
    "status_changed_ts": "1554962889529486",
    "tags": [
      "build_address:luci.dart.ci.sandbox/pkg-linux-release/5209",
      "builder:pkg-linux-release",
      "buildset:commit/git/318967456c74044caee54b39831b2937196be215",
      "buildset:commit/gitiles/dart.googlesource.com/sdk/+/318967456c74044caee54b39831b2937196be215",
      "gitiles_ref:refs/heads/master",
      "scheduler_invocation_id:9081927011895070064",
      "scheduler_job_id:dart/pkg-linux-release",
      "swarming_hostname:chromium-swarm.appspot.com",
      "swarming_tag:log_location:logdog://logs.chromium.org/dart/buildbucket/cr-buildbucket.appspot.com/8916496949487644656/+/annotations",
      "swarming_tag:luci_project:dart",
      "swarming_tag:recipe_name:dart/neo",
      "swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
      "swarming_task_id:",
      "user_agent:luci-scheduler"
    ],
    "updated_ts": "1554962889529608",
    "url": "https://ci.chromium.org/b/8916496949487644656",
    "utcnow_ts": "1554962889731023"
  }
}
[06:08:09.739] Task URL: https://ci.chromium.org/b/8916496949487644656
[06:08:09.739] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:2:0) after 1m0s
[06:08:53.243] Received PubSub notification, asking Buildbucket for the build status
[06:08:53.766] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:09:09.770] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:2:0)
[06:09:09.770] Timer tick, asking Buildbucket for the build status
[06:09:10.094] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:09:10.094] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:4:0) after 1m0s
[06:10:10.112] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:4:0)
[06:10:10.112] Timer tick, asking Buildbucket for the build status
[06:10:10.262] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:10:10.262] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:5:0) after 1m0s
[06:11:10.277] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:5:0)
[06:11:10.277] Timer tick, asking Buildbucket for the build status
[06:11:10.530] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:11:10.530] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:6:0) after 1m0s
[06:12:10.563] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:6:0)
[06:12:10.563] Timer tick, asking Buildbucket for the build status
[06:12:11.209] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:12:11.209] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:7:0) after 1m0s
[06:13:11.209] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:7:0)
[06:13:11.209] Timer tick, asking Buildbucket for the build status
[06:13:11.361] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:13:11.361] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:8:0) after 1m0s
[06:14:11.377] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:8:0)
[06:14:11.377] Timer tick, asking Buildbucket for the build status
[06:14:11.574] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:14:11.574] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:9:0) after 1m0s
[06:15:11.574] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:9:0)
[06:15:11.574] Timer tick, asking Buildbucket for the build status
[06:15:11.760] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:15:11.760] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:10:0) after 1m0s
[06:16:11.772] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:10:0)
[06:16:11.772] Timer tick, asking Buildbucket for the build status
[06:16:12.163] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:16:12.163] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:11:0) after 1m0s
[06:17:12.263] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:11:0)
[06:17:12.263] Timer tick, asking Buildbucket for the build status
[06:17:12.810] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:17:12.810] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:12:0) after 1m0s
[06:18:12.869] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:12:0)
[06:18:12.869] Timer tick, asking Buildbucket for the build status
[06:18:12.989] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:18:12.989] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:13:0) after 1m0s
[06:19:12.967] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:13:0)
[06:19:12.967] Timer tick, asking Buildbucket for the build status
[06:19:13.079] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:19:13.079] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:14:0) after 1m0s
[06:20:13.051] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:14:0)
[06:20:13.051] Timer tick, asking Buildbucket for the build status
[06:20:13.124] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:20:13.124] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:15:0) after 1m0s
[06:21:13.153] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:15:0)
[06:21:13.153] Timer tick, asking Buildbucket for the build status
[06:21:13.247] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:21:13.247] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:16:0) after 1m0s
[06:22:13.262] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:16:0)
[06:22:13.262] Timer tick, asking Buildbucket for the build status
[06:22:13.341] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:22:13.341] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:17:0) after 1m0s
[06:23:13.314] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:17:0)
[06:23:13.314] Timer tick, asking Buildbucket for the build status
[06:23:13.449] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:23:13.449] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:18:0) after 1m0s
[06:24:13.468] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:18:0)
[06:24:13.468] Timer tick, asking Buildbucket for the build status
[06:24:13.652] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:24:13.652] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:19:0) after 1m0s
[06:25:13.655] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:19:0)
[06:25:13.655] Timer tick, asking Buildbucket for the build status
[06:25:13.757] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:25:13.757] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:20:0) after 1m0s
[06:26:13.734] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:20:0)
[06:26:13.734] Timer tick, asking Buildbucket for the build status
[06:26:13.992] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:26:13.992] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:21:0) after 1m0s
[06:27:14.008] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:21:0)
[06:27:14.008] Timer tick, asking Buildbucket for the build status
[06:27:14.281] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:27:14.281] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:22:0) after 1m0s
[06:28:14.268] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:22:0)
[06:28:14.268] Timer tick, asking Buildbucket for the build status
[06:28:14.670] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:28:14.670] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:23:0) after 1m0s
[06:29:14.690] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:23:0)
[06:29:14.690] Timer tick, asking Buildbucket for the build status
[06:29:14.990] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:29:14.990] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:24:0) after 1m0s
[06:30:14.973] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:24:0)
[06:30:14.973] Timer tick, asking Buildbucket for the build status
[06:30:15.479] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:30:15.479] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:25:0) after 1m0s
[06:31:15.495] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:25:0)
[06:31:15.495] Timer tick, asking Buildbucket for the build status
[06:31:16.007] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:31:16.007] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:26:0) after 1m0s
[06:32:16.032] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:26:0)
[06:32:16.032] Timer tick, asking Buildbucket for the build status
[06:32:16.359] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:32:16.359] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:27:0) after 1m0s
[06:33:16.380] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:27:0)
[06:33:16.380] Timer tick, asking Buildbucket for the build status
[06:33:16.456] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:33:16.456] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:28:0) after 1m0s
[06:34:16.437] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:28:0)
[06:34:16.437] Timer tick, asking Buildbucket for the build status
[06:34:16.536] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:34:16.536] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:29:0) after 1m0s
[06:35:16.535] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:29:0)
[06:35:16.535] Timer tick, asking Buildbucket for the build status
[06:35:16.710] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:35:16.710] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:30:0) after 1m0s
[06:36:16.729] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:30:0)
[06:36:16.729] Timer tick, asking Buildbucket for the build status
[06:36:16.802] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:36:16.802] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:31:0) after 1m0s
[06:37:16.821] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:31:0)
[06:37:16.821] Timer tick, asking Buildbucket for the build status
[06:37:16.911] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:37:16.911] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:32:0) after 1m0s
[06:38:16.974] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:32:0)
[06:38:16.974] Timer tick, asking Buildbucket for the build status
[06:38:17.174] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:38:17.174] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:33:0) after 1m0s
[06:39:17.216] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:33:0)
[06:39:17.216] Timer tick, asking Buildbucket for the build status
[06:39:17.870] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:39:17.870] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:34:0) after 1m0s
[06:40:17.871] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:34:0)
[06:40:17.871] Timer tick, asking Buildbucket for the build status
[06:40:18.449] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:40:18.450] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:35:0) after 1m0s
[06:41:18.469] Handling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:35:0)
[06:41:18.469] Timer tick, asking Buildbucket for the build status
[06:41:18.690] Build 8916496949487644656: status "STARTED", result "", failure_reason "", cancelation_reason ""
[06:41:18.690] Scheduling timer "check-buildbucket-build-status" (dart/pkg-linux-release:9081927011895070064:36:0) after 1m0s
[06:41:58.844] Received PubSub notification, asking Buildbucket for the build status
[06:41:58.920] Build 8916496949487644656: status "COMPLETED", result "SUCCESS", failure_reason "", cancelation_reason ""
[06:41:58.920] Buildbucket build:
{
  "build": {
    "bucket": "luci.dart.ci.sandbox",
    "canary_preference": "AUTO",
    "completed_ts": "1554964918195089",
    "created_by": "project:dart",
    "created_ts": "1554962889166923",
    "id": "8916496949487644656",
    "parameters_json": "{\"builder_name\": \"pkg-linux-release\", \"properties\": {\"branch\": \"refs/heads/master\", \"repository\": \"https://dart.googlesource.com/sdk/\", \"revision\": \"318967456c74044caee54b39831b2937196be215\"}}",
    "project": "dart",
    "result": "SUCCESS",
    "result_details_json": "{\"properties\": {\"$recipe_engine/path\": {\"cache_dir\": \"/b/s/w/ir/cache\", \"temp_dir\": \"/b/s/w/ir/tmp/rt\"}, \"$recipe_engine/runtime\": {\"is_experimental\": false, \"is_luci\": true}, \"bot_id\": \"xenial-dart-6468a1b8-us-central1-b-r3jr\", \"branch\": \"refs/heads/master\", \"buildername\": \"pkg-linux-release\", \"buildnumber\": 5209, \"clobber\": \"true\", \"got_revision\": \"318967456c74044caee54b39831b2937196be215\", \"mastername\": \"client.dart\", \"new_workflow_enabled\": true, \"path_config\": \"generic\", \"recipe\": \"dart/neo\", \"repository\": \"https://dart.googlesource.com/sdk/\", \"revision\": \"318967456c74044caee54b39831b2937196be215\"}, \"swarming\": {\"bot_dimensions\": {\"caches\": [\"builder_2568cb5c143ed8cc40564df1a833ae4c1992befd94d0645f49c1ad521b08aa15_v2\", \"builder_51b593ded8badb9f1a3c8ac8207abb3ced1333a97ea732bca9bc14b93e1e73ed_v2\", \"builder_7ac26ffb2555723738bb40d39fe5d89f2f2f3a436d29e8fb3937519466e06fbe_v2\", \"builder_b076a5b5387968aada53d33ff1c7f4b89b6a73c49ce0ebd5ac6a7185fd3656ba_v2\", \"builder_d12c26ea02592d766fa897b3a9f1968750a07bd9a90f9cf17f0bdf313cb29dcb_v2\", \"builder_eadaed4e072922579bbc382e02ce3ffed88c3fbc638ee1ab1ac2701f283e9a6a_v2\", \"git\", \"goma_v2\", \"swarming_module_cache_vpython\", \"vpython\"], \"cores\": [\"8\"], \"cpu\": [\"x86\", \"x86-64\", \"x86-64-Haswell_GCE\", \"x86-64-avx2\"], \"gce\": [\"1\"], \"gpu\": [\"none\"], \"id\": [\"xenial-dart-6468a1b8-us-central1-b-r3jr\"], \"image\": [\"chrome-xenial-18041000-0b3ff326a44\"], \"inside_docker\": [\"0\"], \"kvm\": [\"0\"], \"locale\": [\"en_US.UTF-8\"], \"machine_type\": [\"n1-standard-8\"], \"os\": [\"Linux\", \"Ubuntu\", \"Ubuntu-16.04\"], \"pool\": [\"dart.tests\", \"luci.dart.try\"], \"python\": [\"2.7.12\"], \"server_version\": [\"4243-f38882f\"], \"zone\": [\"us\", \"us-central\", \"us-central1\", \"us-central1-b\"]}}}",
    "service_account": "dart-luci-try-builder@dart-ci.iam.gserviceaccount.com",
    "started_ts": "1554962932248211",
    "status": "COMPLETED",
    "status_changed_ts": "1554964918574157",
    "tags": [
      "build_address:luci.dart.ci.sandbox/pkg-linux-release/5209",
      "builder:pkg-linux-release",
      "buildset:commit/git/318967456c74044caee54b39831b2937196be215",
      "buildset:commit/gitiles/dart.googlesource.com/sdk/+/318967456c74044caee54b39831b2937196be215",
      "gitiles_ref:refs/heads/master",
      "scheduler_invocation_id:9081927011895070064",
      "scheduler_job_id:dart/pkg-linux-release",
      "swarming_hostname:chromium-swarm.appspot.com",
      "swarming_tag:log_location:logdog://logs.chromium.org/dart/buildbucket/cr-buildbucket.appspot.com/8916496949487644656/+/annotations",
      "swarming_tag:luci_project:dart",
      "swarming_tag:os:Linux",
      "swarming_tag:recipe_name:dart/neo",
      "swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
      "swarming_task_id:4423d4445907bc10",
      "user_agent:luci-scheduler"
    ],
    "updated_ts": "1554964918578015",
    "url": "https://ci.chromium.org/b/8916496949487644656",
    "utcnow_ts": "1554964918911197"
  }
}
[06:41:58.920] Invocation finished in 33m51.432438534s with status SUCCEEDED