[15:27:08.967] New invocation is queued and will start shortly
[15:27:10.070] Starting the invocation (attempt 1)
[15:27:10.132] Preparing PubSub topic for "https://cr-buildbucket.appspot.com"
[15:27:10.132] PubSub topic is "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
[15:27:10.132] Buildbucket request:
{
"bucket": "luci.webrtc.ci",
"client_operation_id": "9027533661281460240",
"parameters_json": "{\"builder_name\":\"Linux MSan\",\"properties\":{\"$recipe_engine/scheduler\":{\"hostname\":\"luci-scheduler.appspot.com\",\"triggers\":[{\"gitiles\":{\"ref\":\"refs/heads/master\",\"repo\":\"https://webrtc.googlesource.com/src\",\"revision\":\"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"},\"id\":\"https://webrtc.googlesource.com/src/+/refs/heads/master@58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\",\"title\":\"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\",\"url\":\"https://webrtc.googlesource.com/src/+/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}]},\"branch\":\"refs/heads/master\",\"repository\":\"https://webrtc.googlesource.com/src\",\"revision\":\"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}}",
"pubsub_callback": {
"auth_token": "...",
"topic": "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
},
"tags": [
"builder:Linux MSan",
"scheduler_invocation_id:9027533661281460240",
"scheduler_job_id:webrtc/Linux MSan",
"user_agent:luci-scheduler",
"buildset:commit/git/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c",
"buildset:commit/gitiles/webrtc.googlesource.com/src/+/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c",
"gitiles_ref:refs/heads/master"
]
}
[15:27:12.427] Buildbucket response:
{
"build": {
"bucket": "luci.webrtc.ci",
"canary_preference": "PROD",
"created_by": "project:webrtc",
"created_ts": "1606836430477436",
"id": "8862103599034626256",
"parameters_json": "{\"builder_name\": \"Linux MSan\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://webrtc.googlesource.com/src\", \"revision\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\", \"title\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\", \"url\": \"https://webrtc.googlesource.com/src/+/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}}",
"project": "webrtc",
"result_details_json": "{\"properties\": {}}",
"service_account": "webrtc-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
"status": "SCHEDULED",
"status_changed_ts": "1606836432004107",
"tags": [
"build_address:luci.webrtc.ci/Linux MSan/23509",
"builder:Linux MSan",
"buildset:commit/git/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c",
"buildset:commit/gitiles/webrtc.googlesource.com/src/+/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c",
"gitiles_ref:refs/heads/master",
"scheduler_invocation_id:9027533661281460240",
"scheduler_job_id:webrtc/Linux MSan",
"swarming_hostname:chromium-swarm.appspot.com",
"swarming_tag:log_location:logdog://logs.chromium.org/webrtc/buildbucket/cr-buildbucket.appspot.com/8862103599034626256/+/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": "1606836432004372",
"url": "https://ci.chromium.org/b/8862103599034626256",
"utcnow_ts": "1606836432400669"
}
}
[15:27:12.427] Task URL: https://ci.chromium.org/b/8862103599034626256
[15:27:12.427] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:2:0) after 1m0s
[15:28:12.441] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:2:0)
[15:28:12.442] Timer tick, asking Buildbucket for the build status
[15:28:12.607] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:28:12.607] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:3:0) after 1m0s
[15:29:12.721] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:3:0)
[15:29:12.721] Timer tick, asking Buildbucket for the build status
[15:29:12.897] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:29:12.897] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:4:0) after 1m0s
[15:30:12.970] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:4:0)
[15:30:12.970] Timer tick, asking Buildbucket for the build status
[15:30:13.069] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:30:13.069] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:5:0) after 1m0s
[15:31:13.134] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:5:0)
[15:31:13.134] Timer tick, asking Buildbucket for the build status
[15:31:13.229] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:31:13.229] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:6:0) after 1m0s
[15:32:13.379] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:6:0)
[15:32:13.379] Timer tick, asking Buildbucket for the build status
[15:32:13.512] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:32:13.512] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:7:0) after 1m0s
[15:33:13.529] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:7:0)
[15:33:13.529] Timer tick, asking Buildbucket for the build status
[15:33:13.654] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:33:13.654] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:8:0) after 1m0s
[15:34:13.683] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:8:0)
[15:34:13.683] Timer tick, asking Buildbucket for the build status
[15:34:13.906] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:34:13.906] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:9:0) after 1m0s
[15:35:13.994] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:9:0)
[15:35:13.994] Timer tick, asking Buildbucket for the build status
[15:35:14.321] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:35:14.321] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:10:0) after 1m0s
[15:36:14.428] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:10:0)
[15:36:14.428] Timer tick, asking Buildbucket for the build status
[15:36:14.611] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:36:14.611] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:11:0) after 1m0s
[15:37:14.639] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:11:0)
[15:37:14.639] Timer tick, asking Buildbucket for the build status
[15:37:14.789] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:37:14.789] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:12:0) after 1m0s
[15:38:14.874] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:12:0)
[15:38:14.874] Timer tick, asking Buildbucket for the build status
[15:38:14.964] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:38:14.964] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:13:0) after 1m0s
[15:39:14.959] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:13:0)
[15:39:14.959] Timer tick, asking Buildbucket for the build status
[15:39:15.066] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:39:15.066] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:14:0) after 1m0s
[15:40:15.125] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:14:0)
[15:40:15.125] Timer tick, asking Buildbucket for the build status
[15:40:15.203] Build 8862103599034626256: status "SCHEDULED", result "", failure_reason "", cancelation_reason ""
[15:40:15.203] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:15:0) after 1m0s
[15:41:15.156] Received PubSub notification, asking Buildbucket for the build status
[15:41:15.315] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:41:16.234] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:15:0)
[15:41:16.234] Timer tick, asking Buildbucket for the build status
[15:41:16.392] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:41:16.392] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:17:0) after 1m0s
[15:42:16.423] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:17:0)
[15:42:16.423] Timer tick, asking Buildbucket for the build status
[15:42:18.037] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:42:18.037] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:18:0) after 1m0s
[15:43:18.045] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:18:0)
[15:43:18.045] Timer tick, asking Buildbucket for the build status
[15:43:18.202] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:43:18.202] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:19:0) after 1m0s
[15:44:18.299] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:19:0)
[15:44:18.299] Timer tick, asking Buildbucket for the build status
[15:44:18.536] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:44:18.536] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:20:0) after 1m0s
[15:45:18.585] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:20:0)
[15:45:18.585] Timer tick, asking Buildbucket for the build status
[15:45:18.911] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:45:18.911] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:21:0) after 1m0s
[15:46:18.923] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:21:0)
[15:46:18.923] Timer tick, asking Buildbucket for the build status
[15:46:19.005] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:46:19.005] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:22:0) after 1m0s
[15:47:19.008] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:22:0)
[15:47:19.008] Timer tick, asking Buildbucket for the build status
[15:47:19.150] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:47:19.150] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:23:0) after 1m0s
[15:48:19.201] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:23:0)
[15:48:19.201] Timer tick, asking Buildbucket for the build status
[15:48:19.421] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:48:19.421] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:24:0) after 1m0s
[15:49:19.475] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:24:0)
[15:49:19.475] Timer tick, asking Buildbucket for the build status
[15:49:20.046] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:49:20.046] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:25:0) after 1m0s
[15:50:20.136] Handling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:25:0)
[15:50:20.136] Timer tick, asking Buildbucket for the build status
[15:50:20.526] Build 8862103599034626256: status "STARTED", result "", failure_reason "", cancelation_reason ""
[15:50:20.526] Scheduling timer "check-buildbucket-build-status" (webrtc/Linux MSan:9027533661281460240:26:0) after 1m0s
[15:50:40.318] Received PubSub notification, asking Buildbucket for the build status
[15:50:40.384] Build 8862103599034626256: status "COMPLETED", result "SUCCESS", failure_reason "", cancelation_reason ""
[15:50:40.385] Buildbucket build:
{
"build": {
"bucket": "luci.webrtc.ci",
"canary_preference": "PROD",
"completed_ts": "1606837838895435",
"created_by": "project:webrtc",
"created_ts": "1606836430477436",
"id": "8862103599034626256",
"parameters_json": "{\"builder_name\": \"Linux MSan\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://webrtc.googlesource.com/src\", \"revision\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\", \"title\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\", \"url\": \"https://webrtc.googlesource.com/src/+/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}}",
"project": "webrtc",
"result": "SUCCESS",
"result_details_json": "{\"properties\": {\"$build/goma\": {\"server_host\": \"goma.chromium.org\", \"use_luci_auth\": true}, \"$recipe_engine/isolated\": {\"server\": \"https://isolateserver.appspot.com\"}, \"$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\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}, \"id\": \"https://webrtc.googlesource.com/src/+/refs/heads/master@58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\", \"title\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\", \"url\": \"https://webrtc.googlesource.com/src/+/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\"}]}, \"bot_id\": \"luci-webrtc-ci-xenial-0-la8j\", \"branch\": \"refs/heads/master\", \"builder_group\": \"client.webrtc\", \"buildername\": \"Linux MSan\", \"buildnumber\": 23509, \"clang_revision\": \"llvmorg-12-init-12923-g6ee22ca6-1\", \"got_revision\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\", \"got_revision_cp\": \"refs/heads/master@{#32732}\", \"isolate_server\": \"https://isolateserver.appspot.com\", \"path_config\": \"generic\", \"recipe\": \"webrtc/standalone\", \"repository\": \"https://webrtc.googlesource.com/src\", \"revision\": \"58678a0eb7a35d2b7f75770d1d04fdd0684ab55c\", \"swarm_hashes\": {\"audio_decoder_unittests\": \"1f067e4bccf309a251bd62f415cc3b24b2d17728\", \"common_audio_unittests\": \"46c6f92c12fb0f9baa36e333525a863844923ad4\", \"common_video_unittests\": \"52f39162fbcbbb7a55c12e4d2da48f0e15c72734\", \"low_bandwidth_audio_test\": \"d712ebdf7b0ec17b2a120942641405283781d256\", \"modules_tests\": \"0556ec05de384d9b49c0393cccc56e655609d4cd\", \"modules_unittests\": \"94ca00883ecb7a900caa07c7e696ed0b32824d2b\", \"peerconnection_unittests\": \"4f51eb4bea9c9b212d103012cf674c310d447023\", \"rtc_media_unittests\": \"376562d6f02b288fa97cf5e079f0ad786c4d66d0\", \"rtc_pc_unittests\": \"5716c68a30683ea574f15b163f7886001e5c3847\", \"rtc_stats_unittests\": \"efe7c2897d16d8058054d9a7fa7e97f3bccb2bfb\", \"rtc_unittests\": \"33d019c7ec799ee3c9c3dcbb6e68950562b6ec1a\", \"slow_tests\": \"c6e987ae8f56d438fea830b0aa97a754c43aa345\", \"system_wrappers_unittests\": \"aa1ff9c13f7816967da34346b973d9572407e20d\", \"test_support_unittests\": \"057f8b69a6af1f555f9dc6b4dfb412943c7a6346\", \"tools_unittests\": \"b1b9cbcf4f47e16eadcf7a806d97c14091935d18\", \"video_engine_tests\": \"909c9a70f8c9d3d5abc7ee1d454016ac1977b212\", \"voip_unittests\": \"aef1361ee6b8964b47a165523325e6869af9a1d8\", \"webrtc_nonparallel_tests\": \"6e9cdeb4cbeae90cf9f957deaa51f6e443a22126\"}}, \"swarming\": {\"bot_dimensions\": {\"caches\": [\"builder_59a5368743e72312f218d070f96b6b81e1ec9c9e3b8bb189152c56cc8ec74c28_v2\", \"builder_5a4e8638b91acb66c3ac6cbd7815a7f9c99553eb1e8d9fd19cfe7b821cf72739_v2\", \"builder_678846aac254eab443b5ec61b02b8fa10d353066310df1873b58fcea7626587d_v2\", \"builder_9e79062e5d3768761821c29cf99044627265ebba18113d0281c5efcb6dd834e3_v2\", \"builder_ee30cfe615ad79242c90cf868fc3e32771e3342e63241239745f710a5c60d840_v2\", \"builder_ee80cf8bba7c81fee9e980afd619ea0acf20624840b3b5e7cf3f2ef0d6b70dc4_v2\", \"git\", \"goma_v2\", \"vpython\"], \"cores\": [\"8\"], \"cpu\": [\"x86\", \"x86-64\", \"x86-64-Haswell_GCE\", \"x86-64-avx2\"], \"gce\": [\"1\"], \"gcp\": [\"webrtc-ci\"], \"gpu\": [\"none\"], \"id\": [\"luci-webrtc-ci-xenial-0-la8j\"], \"image\": [\"chrome-xenial-20112900-2f7c54bbcac\"], \"inside_docker\": [\"0\"], \"kvm\": [\"1\"], \"locale\": [\"en_US.UTF-8\"], \"machine_type\": [\"e2-standard-8\"], \"os\": [\"Linux\", \"Ubuntu\", \"Ubuntu-16\", \"Ubuntu-16.04\", \"Ubuntu-16.04.6\"], \"pool\": [\"luci.webrtc.ci\"], \"python\": [\"2.7.12\"], \"server_version\": [\"5640-d0eb544\"], \"ssd\": [\"0\"], \"zone\": [\"us\", \"us-central\", \"us-central1\", \"us-central1-b\"]}}}",
"service_account": "webrtc-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
"started_ts": "1606837271794005",
"status": "COMPLETED",
"status_changed_ts": "1606837840048395",
"tags": [
"build_address:luci.webrtc.ci/Linux MSan/23509",
"builder:Linux MSan",
"buildset:commit/git/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c",
"buildset:commit/gitiles/webrtc.googlesource.com/src/+/58678a0eb7a35d2b7f75770d1d04fdd0684ab55c",
"gitiles_ref:refs/heads/master",
"scheduler_invocation_id:9027533661281460240",
"scheduler_job_id:webrtc/Linux MSan",
"swarming_hostname:chromium-swarm.appspot.com",
"swarming_tag:log_location:logdog://logs.chromium.org/webrtc/buildbucket/cr-buildbucket.appspot.com/8862103599034626256/+/annotations",
"swarming_tag:luci_project:webrtc",
"swarming_tag:os:Linux",
"swarming_tag:recipe_name:webrtc/standalone",
"swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
"swarming_task_id:5037bbb61b436f10",
"user_agent:luci-scheduler"
],
"updated_ts": "1606837840060917",
"url": "https://ci.chromium.org/b/8862103599034626256",
"utcnow_ts": "1606837840374507"
}
}
[15:50:40.385] Invocation finished in 23m31.434567548s with status SUCCEEDED