[19:53:14.720] New invocation is queued and will start shortly
[19:53:16.344] Starting the invocation (attempt 1)
[19:53:16.374] Preparing PubSub topic for "https://cr-buildbucket.appspot.com"
[19:53:16.374] PubSub topic is "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
[19:53:16.374] Buildbucket request:
{
"bucket": "luci.chromium.ci",
"client_operation_id": "9049350788877424928",
"parameters_json": "{\"builder_name\":\"Deterministic Linux (dbg)\",\"properties\":{\"branch\":\"refs/heads/master\",\"repository\":\"https://chromium.googlesource.com/chromium/src\",\"revision\":\"b0062cc72129e7e83542a8988f733c156d312258\"}}",
"pubsub_callback": {
"auth_token": "...",
"topic": "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
},
"tags": [
"builder:Deterministic Linux (dbg)",
"scheduler_invocation_id:9049350788877424928",
"scheduler_job_id:chromium/Deterministic Linux (dbg)",
"user_agent:luci-scheduler",
"buildset:commit/git/b0062cc72129e7e83542a8988f733c156d312258",
"buildset:commit/gitiles/chromium.googlesource.com/chromium/src/+/b0062cc72129e7e83542a8988f733c156d312258",
"gitiles_ref:refs/heads/master"
]
}
[19:53:18.763] Buildbucket response:
{
"build": {
"bucket": "luci.chromium.ci",
"canary_preference": "PROD",
"created_by": "project:chromium",
"created_ts": "1586029996548927",
"id": "8883920726297816352",
"parameters_json": "{\"builder_name\": \"Deterministic Linux (dbg)\", \"properties\": {\"branch\": \"refs/heads/master\", \"repository\": \"https://chromium.googlesource.com/chromium/src\", \"revision\": \"b0062cc72129e7e83542a8988f733c156d312258\"}}",
"project": "chromium",
"result_details_json": "{\"properties\": {}}",
"service_account": "chromium-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
"status": "SCHEDULED",
"status_changed_ts": "1586029998334035",
"tags": [
"build_address:luci.chromium.ci/Deterministic Linux (dbg)/16098",
"builder:Deterministic Linux (dbg)",
"buildset:commit/git/b0062cc72129e7e83542a8988f733c156d312258",
"buildset:commit/gitiles/chromium.googlesource.com/chromium/src/+/b0062cc72129e7e83542a8988f733c156d312258",
"gitiles_ref:refs/heads/master",
"scheduler_invocation_id:9049350788877424928",
"scheduler_job_id:chromium/Deterministic Linux (dbg)",
"swarming_hostname:chromium-swarm.appspot.com",
"swarming_tag:log_location:logdog://logs.chromium.org/chromium/buildbucket/cr-buildbucket.appspot.com/8883920726297816352/+/annotations",
"swarming_tag:luci_project:chromium",
"swarming_tag:recipe_name:swarming/deterministic_build",
"swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
"swarming_task_id:",
"user_agent:luci-scheduler"
],
"updated_ts": "1586029998334182",
"url": "https://ci.chromium.org/b/8883920726297816352",
"utcnow_ts": "1586029998742379"
}
}
[19:53:18.763] Task URL: https://ci.chromium.org/b/8883920726297816352
[19:53:18.763] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:2:0) after 1m0s
[19:54:23.045] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:2:0)
[19:54:23.045] Timer tick, asking Buildbucket for the build status
[19:54:23.210] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[19:54:23.210] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:3:0) after 1m0s
[19:54:25.999] Received PubSub notification, asking Buildbucket for the build status
[19:54:26.081] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[19:55:23.243] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:3:0)
[19:55:23.243] Timer tick, asking Buildbucket for the build status
[19:55:23.567] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[19:55:23.567] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:5:0) after 1m0s
[19:56:23.665] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:5:0)
[19:56:23.665] Timer tick, asking Buildbucket for the build status
[19:56:23.807] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[19:56:23.807] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:6:0) after 1m0s
[19:57:23.841] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:6:0)
[19:57:23.841] Timer tick, asking Buildbucket for the build status
[19:57:23.948] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[19:57:23.948] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:7:0) after 1m0s
[19:58:23.967] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:7:0)
[19:58:23.967] Timer tick, asking Buildbucket for the build status
[19:58:24.259] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[19:58:24.259] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:8:0) after 1m0s
[19:59:24.265] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:8:0)
[19:59:24.265] Timer tick, asking Buildbucket for the build status
[19:59:24.376] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[19:59:24.376] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:9:0) after 1m0s
[20:00:24.437] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:9:0)
[20:00:24.437] Timer tick, asking Buildbucket for the build status
[20:00:24.557] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:00:24.557] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:10:0) after 1m0s
[20:01:24.583] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:10:0)
[20:01:24.583] Timer tick, asking Buildbucket for the build status
[20:01:25.136] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:01:25.136] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:11:0) after 1m0s
[20:02:25.184] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:11:0)
[20:02:25.184] Timer tick, asking Buildbucket for the build status
[20:02:25.368] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:02:25.368] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:12:0) after 1m0s
[20:03:25.396] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:12:0)
[20:03:25.396] Timer tick, asking Buildbucket for the build status
[20:03:25.557] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:03:25.557] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:13:0) after 1m0s
[20:04:25.576] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:13:0)
[20:04:25.576] Timer tick, asking Buildbucket for the build status
[20:04:25.842] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:04:25.842] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:14:0) after 1m0s
[20:05:25.863] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:14:0)
[20:05:25.863] Timer tick, asking Buildbucket for the build status
[20:05:26.273] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:05:26.273] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:15:0) after 1m0s
[20:06:26.389] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:15:0)
[20:06:26.389] Timer tick, asking Buildbucket for the build status
[20:06:26.517] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:06:26.517] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:16:0) after 1m0s
[20:07:26.536] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:16:0)
[20:07:26.536] Timer tick, asking Buildbucket for the build status
[20:07:27.077] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:07:27.077] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:17:0) after 1m0s
[20:08:27.072] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:17:0)
[20:08:27.072] Timer tick, asking Buildbucket for the build status
[20:08:27.548] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:08:27.548] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:18:0) after 1m0s
[20:09:27.565] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:18:0)
[20:09:27.566] Timer tick, asking Buildbucket for the build status
[20:09:27.700] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:09:27.700] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:19:0) after 1m0s
[20:10:27.766] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:19:0)
[20:10:27.766] Timer tick, asking Buildbucket for the build status
[20:10:27.968] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:10:27.968] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:20:0) after 1m0s
[20:11:27.989] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:20:0)
[20:11:27.989] Timer tick, asking Buildbucket for the build status
[20:11:28.113] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:11:28.113] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:21:0) after 1m0s
[20:12:28.091] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:21:0)
[20:12:28.091] Timer tick, asking Buildbucket for the build status
[20:12:28.214] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:12:28.214] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:22:0) after 1m0s
[20:13:28.232] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:22:0)
[20:13:28.232] Timer tick, asking Buildbucket for the build status
[20:13:28.415] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:13:28.415] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:23:0) after 1m0s
[20:14:28.453] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:23:0)
[20:14:28.453] Timer tick, asking Buildbucket for the build status
[20:14:28.625] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:14:28.625] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:24:0) after 1m0s
[20:15:28.643] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:24:0)
[20:15:28.643] Timer tick, asking Buildbucket for the build status
[20:15:29.153] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:15:29.153] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:25:0) after 1m0s
[20:16:29.206] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:25:0)
[20:16:29.206] Timer tick, asking Buildbucket for the build status
[20:16:29.321] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:16:29.321] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:26:0) after 1m0s
[20:17:29.395] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:26:0)
[20:17:29.395] Timer tick, asking Buildbucket for the build status
[20:17:29.547] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:17:29.547] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:27:0) after 1m0s
[20:18:29.530] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:27:0)
[20:18:29.530] Timer tick, asking Buildbucket for the build status
[20:18:29.705] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:18:29.705] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:28:0) after 1m0s
[20:19:29.724] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:28:0)
[20:19:29.724] Timer tick, asking Buildbucket for the build status
[20:19:29.820] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:19:29.820] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:29:0) after 1m0s
[20:20:29.851] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:29:0)
[20:20:29.851] Timer tick, asking Buildbucket for the build status
[20:20:30.052] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:20:30.052] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:30:0) after 1m0s
[20:21:30.078] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:30:0)
[20:21:30.078] Timer tick, asking Buildbucket for the build status
[20:21:30.200] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:21:30.200] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:31:0) after 1m0s
[20:22:35.267] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:31:0)
[20:22:35.267] Timer tick, asking Buildbucket for the build status
[20:22:35.772] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:22:35.772] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:32:0) after 1m0s
[20:23:35.835] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:32:0)
[20:23:35.835] Timer tick, asking Buildbucket for the build status
[20:23:35.926] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:23:35.926] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:33:0) after 1m0s
[20:24:36.062] Handling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:33:0)
[20:24:36.062] Timer tick, asking Buildbucket for the build status
[20:24:36.159] Build 8883920726297816352: status "STARTED", result "", failure_reason "", cancelation_reason ""
[20:24:36.159] Scheduling timer "check-buildbucket-build-status" (chromium/Deterministic Linux (dbg):9049350788877424928:34:0) after 1m0s
[20:25:13.078] Received PubSub notification, asking Buildbucket for the build status
[20:25:13.145] Build 8883920726297816352: status "COMPLETED", result "SUCCESS", failure_reason "", cancelation_reason ""
[20:25:13.145] Buildbucket build:
{
"build": {
"bucket": "luci.chromium.ci",
"canary_preference": "PROD",
"completed_ts": "1586031912217300",
"created_by": "project:chromium",
"created_ts": "1586029996548927",
"id": "8883920726297816352",
"parameters_json": "{\"builder_name\": \"Deterministic Linux (dbg)\", \"properties\": {\"branch\": \"refs/heads/master\", \"repository\": \"https://chromium.googlesource.com/chromium/src\", \"revision\": \"b0062cc72129e7e83542a8988f733c156d312258\"}}",
"project": "chromium",
"result": "SUCCESS",
"result_details_json": "{\"properties\": {\"$build/goma\": {\"enable_ats\": true, \"jobs\": 500.0, \"rpc_extra_params\": \"?prod\", \"server_host\": \"goma.chromium.org\"}, \"$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\": \"luci-chromium-ci-xenial-32-4-6snd\", \"branch\": \"refs/heads/master\", \"buildername\": \"Deterministic Linux (dbg)\", \"buildnumber\": 16098, \"got_angle_revision\": \"1c95795f1fb368de0c21df819f5ca6e5e2c9c0dc\", \"got_dawn_revision\": \"c00163ba0925a7de0936a0b0c8385e1986ae5a4c\", \"got_nacl_revision\": \"ebf11aaad97fde7f91b1c72e0dddaf1653d41f77\", \"got_revision\": \"b0062cc72129e7e83542a8988f733c156d312258\", \"got_revision_cp\": \"refs/heads/master@{#756528}\", \"got_swarming_client_revision\": \"cc958279ffd6853e0a1b227a7e957ca334fe56af\", \"got_swiftshader_revision\": \"ad6d1b30e0f1b5d28e91da61dadfa31d94ddffe6\", \"got_v8_revision\": \"1668abddd8147c49c8f2f90b78dc2701f3794a30\", \"got_v8_revision_cp\": \"refs/heads/8.3.110@{#1}\", \"got_webrtc_revision\": \"2e3e36312b10b8711c467e7bdc4582c01914e4d0\", \"got_webrtc_revision_cp\": \"refs/heads/master@{#31001}\", \"mastername\": \"chromium.linux\", \"path_config\": \"generic\", \"recipe\": \"swarming/deterministic_build\", \"repository\": \"https://chromium.googlesource.com/chromium/src\", \"revision\": \"b0062cc72129e7e83542a8988f733c156d312258\"}, \"swarming\": {\"bot_dimensions\": {\"builderless\": [\"1\"], \"caches\": [\"builder_17d4e9c3562fe440e7ef7dabcb522d5a89809ef05519650a163dd2bc405c0258_v2\", \"builder_39819929c28edbb94cfd890831720319bcf41d58e7ee63cb8a54e18e1fdfd830_v2\", \"builder_940b8dd4638ac05ec7d44839e381a2baf02720b3eac518443ac04ffe6b1809c0_v2\", \"builder_d3d2610b5230a0e8818d022113159013c6345fba0843daf9ae715f6a2f1da36d_v2\", \"git\", \"goma_v2\", \"vpython\"], \"cores\": [\"32\"], \"cpu\": [\"x86\", \"x86-64\", \"x86-64-Broadwell_GCE\", \"x86-64-avx2\"], \"gce\": [\"1\"], \"gcp\": [\"google.com:chromecompute\"], \"gpu\": [\"none\"], \"id\": [\"luci-chromium-ci-xenial-32-4-6snd\"], \"image\": [\"chrome-xenial-20032900-6802ab9ce34\"], \"inside_docker\": [\"0\"], \"kvm\": [\"1\"], \"locale\": [\"en_US.UTF-8\"], \"machine_type\": [\"n1-standard-32\"], \"os\": [\"Linux\", \"Ubuntu\", \"Ubuntu-16.04\"], \"pool\": [\"luci.chromium.ci\"], \"python\": [\"2.7.12\"], \"server_version\": [\"4926-84b94b1\"], \"ssd\": [\"0\"], \"zone\": [\"us\", \"us-west\", \"us-west1\", \"us-west1-c\"]}}}",
"service_account": "chromium-ci-builder@chops-service-accounts.iam.gserviceaccount.com",
"started_ts": "1586030059194755",
"status": "COMPLETED",
"status_changed_ts": "1586031912773433",
"tags": [
"build_address:luci.chromium.ci/Deterministic Linux (dbg)/16098",
"builder:Deterministic Linux (dbg)",
"buildset:commit/git/b0062cc72129e7e83542a8988f733c156d312258",
"buildset:commit/gitiles/chromium.googlesource.com/chromium/src/+/b0062cc72129e7e83542a8988f733c156d312258",
"gitiles_ref:refs/heads/master",
"scheduler_invocation_id:9049350788877424928",
"scheduler_job_id:chromium/Deterministic Linux (dbg)",
"swarming_hostname:chromium-swarm.appspot.com",
"swarming_tag:log_location:logdog://logs.chromium.org/chromium/buildbucket/cr-buildbucket.appspot.com/8883920726297816352/+/annotations",
"swarming_tag:luci_project:chromium",
"swarming_tag:os:Linux",
"swarming_tag:recipe_name:swarming/deterministic_build",
"swarming_tag:recipe_package:infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
"swarming_task_id:4b5f92bb06871c10",
"user_agent:luci-scheduler"
],
"updated_ts": "1586031912779691",
"url": "https://ci.chromium.org/b/8883920726297816352",
"utcnow_ts": "1586031913136494"
}
}
[20:25:13.145] Invocation finished in 31m58.440745731s with status SUCCEEDED