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

Definition (rev ba6ae0ffdbb4758bb4ee0f91521a0b540892a024)

buildbucket: <
  server: "cr-buildbucket.appspot.com"
  bucket: "luci.webrtc.ci"
  builder: "Mac64 Release"
>

Incoming triggers

Incoming properties

{
  "branch": "refs/heads/master",
  "repository": "https://webrtc.googlesource.com/src",
  "revision": "05f8f1d2731d46708635db16901c5335669c0169"
}

Incoming tags

  • buildset:commit/git/05f8f1d2731d46708635db16901c5335669c0169
  • buildset:commit/gitiles/webrtc.googlesource.com/src/+/05f8f1d2731d46708635db16901c5335669c0169
  • gitiles_ref:refs/heads/master

Debug log (UTC)

[09:09:26.858] New invocation is queued and will start shortly
[09:09:27.969] Starting the invocation (attempt 1)
[09:09:28.031] Preparing PubSub topic for "https://cr-buildbucket.appspot.com"
[09:09:28.031] PubSub topic is "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
[09:09:28.031] Buildbucket request:
{
  "bucket": "luci.webrtc.ci",
  "client_operation_id": "9069866207536749568",
  "parameters_json": "{\"builder_name\":\"Mac64 Release\",\"properties\":{\"$recipe_engine/scheduler\":{\"hostname\":\"luci-scheduler.appspot.com\",\"triggers\":[{\"gitiles\":{\"ref\":\"refs/heads/master\",\"repo\":\"https://webrtc.googlesource.com/src\",\"revision\":\"05f8f1d2731d46708635db16901c5335669c0169\"},\"id\":\"https://webrtc.googlesource.com/src/+/refs/heads/master@05f8f1d2731d46708635db16901c5335669c0169\",\"title\":\"05f8f1d2731d46708635db16901c5335669c0169\",\"url\":\"https://webrtc.googlesource.com/src/+/05f8f1d2731d46708635db16901c5335669c0169\"}]},\"branch\":\"refs/heads/master\",\"repository\":\"https://webrtc.googlesource.com/src\",\"revision\":\"05f8f1d2731d46708635db16901c5335669c0169\"}}",
  "pubsub_callback": {
    "auth_token": "...",
    "topic": "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
  },
  "tags": [
    "builder:Mac64 Release",
    "scheduler_invocation_id:9069866207536749568",
    "scheduler_job_id:webrtc/Mac64 Release",
    "user_agent:luci-scheduler",
    "buildset:commit/git/05f8f1d2731d46708635db16901c5335669c0169",
    "buildset:commit/gitiles/webrtc.googlesource.com/src/+/05f8f1d2731d46708635db16901c5335669c0169",
    "gitiles_ref:refs/heads/master"
  ]
}
[09:09:29.073] Buildbucket response:
{
  "build": {
    "bucket": "luci.webrtc.ci",
    "canary_preference": "PROD",
    "created_by": "project:webrtc",
    "created_ts": "1566464968190241",
    "id": "8904436145473620544",
    "parameters_json": "{\"builder_name\": \"Mac64 Release\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://webrtc.googlesource.com/src\", \"revision\": \"05f8f1d2731d46708635db16901c5335669c0169\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@05f8f1d2731d46708635db16901c5335669c0169\", \"title\": \"05f8f1d2731d46708635db16901c5335669c0169\", \"url\": \"https://webrtc.googlesource.com/src/+/05f8f1d2731d46708635db16901c5335669c0169\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"05f8f1d2731d46708635db16901c5335669c0169\"}}",
    "project": "webrtc",
    "result_details_json": "{\"properties\": {}}",
    "service_account": "webrtc-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
    "status": "SCHEDULED",
    "status_changed_ts": "1566464968873447",
    "tags": [
      "build_address:luci.webrtc.ci/Mac64 Release/22026",
      "builder:Mac64 Release",
      "buildset:commit/git/05f8f1d2731d46708635db16901c5335669c0169",
      "buildset:commit/gitiles/webrtc.googlesource.com/src/+/05f8f1d2731d46708635db16901c5335669c0169",
      "gitiles_ref:refs/heads/master",
      "scheduler_invocation_id:9069866207536749568",
      "scheduler_job_id:webrtc/Mac64 Release",
      "swarming_hostname:chromium-swarm.appspot.com",
      "swarming_tag:log_location:logdog://logs.chromium.org/webrtc/buildbucket/cr-buildbucket.appspot.com/8904436145473620544/+/annotations",
      "swarming_tag:luci_project:webrtc",
      "swarming_tag:recipe_name:webrtc/standalone",
      "swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
      "swarming_task_id:",
      "user_agent:luci-scheduler"
    ],
    "updated_ts": "1566464968873545",
    "url": "https://ci.chromium.org/b/8904436145473620544",
    "utcnow_ts": "1566464969059858"
  }
}
[09:09:29.073] Task URL: https://ci.chromium.org/b/8904436145473620544
[09:09:29.074] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:2:0) after 1m0s
[09:10:29.055] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:2:0)
[09:10:29.055] Timer tick, asking Buildbucket for the build status
[09:10:30.113] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:10:30.113] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:3:0) after 1m0s
[09:11:30.397] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:3:0)
[09:11:30.397] Timer tick, asking Buildbucket for the build status
[09:11:30.559] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:11:30.559] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:4:0) after 1m0s
[09:12:30.740] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:4:0)
[09:12:30.741] Timer tick, asking Buildbucket for the build status
[09:12:31.329] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:12:31.329] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:5:0) after 1m0s
[09:13:31.352] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:5:0)
[09:13:31.352] Timer tick, asking Buildbucket for the build status
[09:13:31.639] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:13:31.639] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:6:0) after 1m0s
[09:14:31.683] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:6:0)
[09:14:31.683] Timer tick, asking Buildbucket for the build status
[09:14:31.923] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:14:31.923] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:7:0) after 1m0s
[09:15:31.948] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:7:0)
[09:15:31.948] Timer tick, asking Buildbucket for the build status
[09:15:32.308] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:15:32.308] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:8:0) after 1m0s
[09:16:32.328] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:8:0)
[09:16:32.328] Timer tick, asking Buildbucket for the build status
[09:16:32.649] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:16:32.649] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:9:0) after 1m0s
[09:17:32.711] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:9:0)
[09:17:32.711] Timer tick, asking Buildbucket for the build status
[09:17:32.888] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:17:32.888] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:10:0) after 1m0s
[09:18:32.973] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:10:0)
[09:18:32.973] Timer tick, asking Buildbucket for the build status
[09:18:33.313] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:18:33.313] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:11:0) after 1m0s
[09:19:33.428] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:11:0)
[09:19:33.428] Timer tick, asking Buildbucket for the build status
[09:19:33.740] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:19:33.740] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:12:0) after 1m0s
[09:20:33.833] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:12:0)
[09:20:33.833] Timer tick, asking Buildbucket for the build status
[09:20:34.023] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:20:34.023] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:13:0) after 1m0s
[09:21:34.044] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:13:0)
[09:21:34.044] Timer tick, asking Buildbucket for the build status
[09:21:34.424] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:21:34.424] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:14:0) after 1m0s
[09:22:34.514] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:14:0)
[09:22:34.514] Timer tick, asking Buildbucket for the build status
[09:22:34.655] Build 8904436145473620544: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[09:22:34.655] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:15:0) after 1m0s
[09:23:33.465] Received PubSub notification, asking Buildbucket for the build status
[09:23:34.281] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:23:34.737] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:15:0)
[09:23:34.737] Timer tick, asking Buildbucket for the build status
[09:23:35.111] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:23:35.112] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:17:0) after 1m0s
[09:24:35.146] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:17:0)
[09:24:35.146] Timer tick, asking Buildbucket for the build status
[09:24:35.341] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:24:35.341] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:18:0) after 1m0s
[09:25:35.336] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:18:0)
[09:25:35.336] Timer tick, asking Buildbucket for the build status
[09:25:35.657] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:25:35.657] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:19:0) after 1m0s
[09:26:35.698] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:19:0)
[09:26:35.698] Timer tick, asking Buildbucket for the build status
[09:26:36.312] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:26:36.312] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:20:0) after 1m0s
[09:27:36.330] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:20:0)
[09:27:36.330] Timer tick, asking Buildbucket for the build status
[09:27:36.510] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:27:36.510] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:21:0) after 1m0s
[09:28:36.616] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:21:0)
[09:28:36.616] Timer tick, asking Buildbucket for the build status
[09:28:36.951] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:28:36.952] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:22:0) after 1m0s
[09:29:37.051] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:22:0)
[09:29:37.051] Timer tick, asking Buildbucket for the build status
[09:29:37.275] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:29:37.275] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:23:0) after 1m0s
[09:30:37.293] Handling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:23:0)
[09:30:37.293] Timer tick, asking Buildbucket for the build status
[09:30:37.527] Build 8904436145473620544: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:30:37.527] Scheduling timer "check-buildbucket-build-status" (webrtc/Mac64 Release:9069866207536749568:24:0) after 1m0s
[09:31:24.221] Received PubSub notification, asking Buildbucket for the build status
[09:31:24.455] Build 8904436145473620544: status "COMPLETED", result "SUCCESS", failure_reason "", cancelation_reason ""
[09:31:24.455] Buildbucket build:
{
  "build": {
    "bucket": "luci.webrtc.ci",
    "canary_preference": "PROD",
    "completed_ts": "1566466282797504",
    "created_by": "project:webrtc",
    "created_ts": "1566464968190241",
    "id": "8904436145473620544",
    "parameters_json": "{\"builder_name\": \"Mac64 Release\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://webrtc.googlesource.com/src\", \"revision\": \"05f8f1d2731d46708635db16901c5335669c0169\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@05f8f1d2731d46708635db16901c5335669c0169\", \"title\": \"05f8f1d2731d46708635db16901c5335669c0169\", \"url\": \"https://webrtc.googlesource.com/src/+/05f8f1d2731d46708635db16901c5335669c0169\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"05f8f1d2731d46708635db16901c5335669c0169\"}}",
    "project": "webrtc",
    "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}, \"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://webrtc.googlesource.com/src\", \"revision\": \"05f8f1d2731d46708635db16901c5335669c0169\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@05f8f1d2731d46708635db16901c5335669c0169\", \"title\": \"05f8f1d2731d46708635db16901c5335669c0169\", \"url\": \"https://webrtc.googlesource.com/src/+/05f8f1d2731d46708635db16901c5335669c0169\"}]}, \"bot_id\": \"vm322-m9\", \"branch\": \"refs/heads/master\", \"buildername\": \"Mac64 Release\", \"buildnumber\": 22026, \"got_clang_revision\": \"365097-f7e52fbd-8\", \"got_revision\": \"05f8f1d2731d46708635db16901c5335669c0169\", \"got_revision_cp\": \"refs/heads/master@{#28936}\", \"isolate_server\": \"https://isolateserver.appspot.com\", \"mastername\": \"client.webrtc\", \"path_config\": \"generic\", \"recipe\": \"webrtc/standalone\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"05f8f1d2731d46708635db16901c5335669c0169\", \"swarm_hashes\": {\"audio_decoder_unittests\": \"cc106ec020a797668d39a5e70c9f6b28f0b81304\", \"common_audio_unittests\": \"ba7c864b3549ea3fd85ef7eacf82e43c3b28161a\", \"common_video_unittests\": \"1321a3b3294978496887ef6206ba873f18b4ef6e\", \"low_bandwidth_audio_test\": \"284a3f7d11fad545cc48a725cf09a71634e2c61a\", \"modules_tests\": \"8de778087b057fa002f1758219475606cbdd1159\", \"modules_unittests\": \"666f2ae84e050837f5b7090ba9e27fc31a531061\", \"peerconnection_unittests\": \"f94ff444bc390739770a3d39797aa03dee4d5504\", \"rtc_media_unittests\": \"5cea7b5204043576975eeea264fcf1e9488a718a\", \"rtc_pc_unittests\": \"81d8c164a9287f21b3aafcc9bdac04012fc329a0\", \"rtc_stats_unittests\": \"95646d607446e5c8f9239f60b2f2cca9b05ac6cc\", \"rtc_unittests\": \"062db59617d7c2056e7f08394cf12d3d52fad2c6\", \"slow_tests\": \"f75f55bb6767771ffe7faab9b72598be435f07ba\", \"system_wrappers_unittests\": \"6759aa371777984e446eaf557b44a0772ba1f6a6\", \"test_support_unittests\": \"9a21118d87f1b942ed1d839fcc2ad7b33c76af30\", \"tools_unittests\": \"5b62e3a18a1e21bb4d88cd0985450237aefa151d\", \"video_capture_tests\": \"921c3eeb759b83ba0ad5ff5354de05c44f023f29\", \"video_engine_tests\": \"62a32af94dfc33dd659e649dea18c8a2ace74360\", \"webrtc_nonparallel_tests\": \"e461408d6b2abcb45bbb41ac168492f43e3c7828\"}}, \"swarming\": {\"bot_dimensions\": {\"caches\": [\"builder_059806cb76369fad874f65dcf15d9fac8b85f8aaa2bcc21181e3047888c9f722_v2\", \"builder_061ad2c84e63fc0fec4b05c132093ef9b6ab75b59928be3b662c8e2e0a6344fd_v2\", \"builder_08dcb1b73883f7e211b0b3bd789c28dc0ecd4dbbececafe484581157878e0b74_v2\", \"builder_159efc1d4e07f83357b1af150b22b5735146a4a38107e0dc728b750b9a5ddd95_v2\", \"builder_2187023a95b72a4c85b14150e8627786d4d0f124144eef86bf927816a2830941_v2\", \"builder_3d12c2f33c8b539e7425f6bc13584a1590c81aeb2114d2a2ac69b6615cd68c43_v2\", \"builder_43f7e9f5ae24b6ee3ca22209fec6b34c1a00e60d041ce7cae040782e455433aa_v2\", \"builder_5be86841ba1a2fffbf39b2203b40a6ecce8d6cb8ff7379bf32e5204ecbef59b2_v2\", \"builder_63601768ebaa6550931251d01f66fd42a511d047ab36f27e7a12ce2bed95fdde_v2\", \"builder_8a2278e97eb38544b82301aee383e0f90c5414a7b11d57b8f9ae783a4faf492d_v2\", \"builder_af73c5fcdc7c8d0d83ff5fdfb91effdc54af69c7f411ef9f3eba46b34978fd88_v2\", \"builder_d425412af15739f7858c3ec48c0cf46fd8a190c41fc9a14b966839c948b4f9be_v2\", \"git\", \"goma_v2\", \"osx_sdk\", \"vpython\"], \"cores\": [\"8\"], \"cpu\": [\"x86\", \"x86-64\", \"x86-64-E5-2697_v2\"], \"gce\": [\"0\"], \"gpu\": [\"none\"], \"id\": [\"vm322-m9\"], \"mac_model\": [\"VMware7,1\"], \"machine_type\": [\"n1-highcpu-8\"], \"os\": [\"Mac\", \"Mac-10.13\", \"Mac-10.13.6\"], \"pool\": [\"luci.webrtc.ci\"], \"python\": [\"2.7.10\"], \"server_version\": [\"4397-8786906\"], \"ssd\": [\"1\"], \"zone\": [\"us\", \"us-atl\", \"us-atl-golo\", \"us-atl-golo-m9\"]}}}",
    "service_account": "webrtc-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
    "started_ts": "1566465812209966",
    "status": "COMPLETED",
    "status_changed_ts": "1566466283713827",
    "tags": [
      "build_address:luci.webrtc.ci/Mac64 Release/22026",
      "builder:Mac64 Release",
      "buildset:commit/git/05f8f1d2731d46708635db16901c5335669c0169",
      "buildset:commit/gitiles/webrtc.googlesource.com/src/+/05f8f1d2731d46708635db16901c5335669c0169",
      "gitiles_ref:refs/heads/master",
      "scheduler_invocation_id:9069866207536749568",
      "scheduler_job_id:webrtc/Mac64 Release",
      "swarming_hostname:chromium-swarm.appspot.com",
      "swarming_tag:log_location:logdog://logs.chromium.org/webrtc/buildbucket/cr-buildbucket.appspot.com/8904436145473620544/+/annotations",
      "swarming_tag:luci_project:webrtc",
      "swarming_tag:os:Mac",
      "swarming_tag:recipe_name:webrtc/standalone",
      "swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
      "swarming_task_id:46d16814a231b310",
      "user_agent:luci-scheduler"
    ],
    "updated_ts": "1566466283740572",
    "url": "https://ci.chromium.org/b/8904436145473620544",
    "utcnow_ts": "1566466284436191"
  }
}
[09:31:24.455] Invocation finished in 21m57.616049382s with status SUCCEEDED