[08:46:11.124] New invocation is queued and will start shortly
[08:46:13.129] Starting the invocation (attempt 1)
[08:46:13.177] Preparing PubSub topic for "https://cr-buildbucket.appspot.com"
[08:46:13.177] PubSub topic is "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
[08:46:13.177] Buildbucket request:
{
"bucket": "luci.dart.ci.sandbox",
"client_operation_id": "9049030368805078448",
"parameters_json": "{\"builder_name\":\"flutter-frontend\",\"properties\":{\"$recipe_engine/scheduler\":{\"hostname\":\"luci-scheduler.appspot.com\",\"triggers\":[{\"gitiles\":{\"ref\":\"refs/heads/master\",\"repo\":\"https://dart.googlesource.com/sdk\",\"revision\":\"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"},\"id\":\"https://dart.googlesource.com/sdk/+/refs/heads/master@0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\",\"title\":\"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\",\"url\":\"https://dart.googlesource.com/sdk/+/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}]},\"branch\":\"refs/heads/master\",\"repository\":\"https://dart.googlesource.com/sdk\",\"revision\":\"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}}",
"pubsub_callback": {
"auth_token": "...",
"topic": "projects/luci-scheduler/topics/scheduler.buildbucket.cr-buildbucket~appspot.gserviceaccount.com"
},
"tags": [
"builder:flutter-frontend",
"scheduler_invocation_id:9049030368805078448",
"scheduler_job_id:dart/flutter-frontend",
"user_agent:luci-scheduler",
"buildset:commit/git/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc",
"buildset:commit/gitiles/dart.googlesource.com/sdk/+/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc",
"gitiles_ref:refs/heads/master"
]
}
[08:46:14.223] Buildbucket response:
{
"build": {
"bucket": "luci.dart.ci.sandbox",
"canary_preference": "PROD",
"created_by": "project:dart",
"created_ts": "1586335573286219",
"id": "8883600305864594560",
"parameters_json": "{\"builder_name\": \"flutter-frontend\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://dart.googlesource.com/sdk\", \"revision\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\", \"title\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\", \"url\": \"https://dart.googlesource.com/sdk/+/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://dart.googlesource.com/sdk\", \"revision\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}}",
"project": "dart",
"result_details_json": "{\"properties\": {}}",
"service_account": "dart-luci-try-builder@dart-ci.iam.gserviceaccount.com",
"status": "SCHEDULED",
"status_changed_ts": "1586335574054260",
"tags": [
"build_address:luci.dart.ci.sandbox/flutter-frontend/4693",
"builder:flutter-frontend",
"buildset:commit/git/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc",
"buildset:commit/gitiles/dart.googlesource.com/sdk/+/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc",
"gitiles_ref:refs/heads/master",
"scheduler_invocation_id:9049030368805078448",
"scheduler_job_id:dart/flutter-frontend",
"swarming_hostname:chromium-swarm.appspot.com",
"swarming_tag:log_location:logdog://logs.chromium.org/dart/buildbucket/cr-buildbucket.appspot.com/8883600305864594560/+/annotations",
"swarming_tag:luci_project:dart",
"swarming_tag:recipe_name:dart/neo",
"swarming_tag:recipe_package:dart/recipe_bundles/dart.googlesource.com/recipes",
"swarming_task_id:",
"user_agent:luci-scheduler"
],
"updated_ts": "1586335574054421",
"url": "https://ci.chromium.org/b/8883600305864594560",
"utcnow_ts": "1586335574214441"
}
}
[08:46:14.223] Task URL: https://ci.chromium.org/b/8883600305864594560
[08:46:14.223] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:2:0) after 1m0s
[08:46:36.889] Received PubSub notification, asking Buildbucket for the build status
[08:46:36.978] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:47:14.324] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:2:0)
[08:47:14.324] Timer tick, asking Buildbucket for the build status
[08:47:14.561] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:47:14.561] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:4:0) after 1m0s
[08:48:14.585] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:4:0)
[08:48:14.585] Timer tick, asking Buildbucket for the build status
[08:48:14.791] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:48:14.791] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:5:0) after 1m0s
[08:49:14.829] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:5:0)
[08:49:14.829] Timer tick, asking Buildbucket for the build status
[08:49:14.968] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:49:14.968] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:6:0) after 1m0s
[08:50:15.078] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:6:0)
[08:50:15.078] Timer tick, asking Buildbucket for the build status
[08:50:15.282] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:50:15.282] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:7:0) after 1m0s
[08:51:15.510] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:7:0)
[08:51:15.510] Timer tick, asking Buildbucket for the build status
[08:51:15.650] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:51:15.650] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:8:0) after 1m0s
[08:52:15.793] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:8:0)
[08:52:15.793] Timer tick, asking Buildbucket for the build status
[08:52:16.173] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:52:16.173] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:9:0) after 1m0s
[08:53:16.228] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:9:0)
[08:53:16.228] Timer tick, asking Buildbucket for the build status
[08:53:16.753] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:53:16.753] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:10:0) after 1m0s
[08:54:16.809] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:10:0)
[08:54:16.809] Timer tick, asking Buildbucket for the build status
[08:54:17.151] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:54:17.151] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:11:0) after 1m0s
[08:55:17.212] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:11:0)
[08:55:17.212] Timer tick, asking Buildbucket for the build status
[08:55:17.331] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:55:17.331] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:12:0) after 1m0s
[08:56:17.379] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:12:0)
[08:56:17.379] Timer tick, asking Buildbucket for the build status
[08:56:17.768] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:56:17.768] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:13:0) after 1m0s
[08:57:17.804] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:13:0)
[08:57:17.804] Timer tick, asking Buildbucket for the build status
[08:57:18.014] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:57:18.014] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:14:0) after 1m0s
[08:58:18.041] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:14:0)
[08:58:18.041] Timer tick, asking Buildbucket for the build status
[08:58:18.202] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:58:18.202] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:15:0) after 1m0s
[08:59:18.445] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:15:0)
[08:59:18.445] Timer tick, asking Buildbucket for the build status
[08:59:19.024] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[08:59:19.024] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:16:0) after 1m0s
[09:00:19.072] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:16:0)
[09:00:19.072] Timer tick, asking Buildbucket for the build status
[09:00:19.286] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:00:19.286] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:17:0) after 1m0s
[09:01:19.363] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:17:0)
[09:01:19.363] Timer tick, asking Buildbucket for the build status
[09:01:19.514] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:01:19.514] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:18:0) after 1m0s
[09:02:19.563] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:18:0)
[09:02:19.563] Timer tick, asking Buildbucket for the build status
[09:02:19.775] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:02:19.775] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:19:0) after 1m0s
[09:03:19.879] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:19:0)
[09:03:19.879] Timer tick, asking Buildbucket for the build status
[09:03:20.054] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:03:20.054] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:20:0) after 1m0s
[09:04:20.104] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:20:0)
[09:04:20.104] Timer tick, asking Buildbucket for the build status
[09:04:20.473] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:04:20.473] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:21:0) after 1m0s
[09:05:20.502] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:21:0)
[09:05:20.502] Timer tick, asking Buildbucket for the build status
[09:05:20.976] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:05:20.976] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:22:0) after 1m0s
[09:06:21.013] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:22:0)
[09:06:21.013] Timer tick, asking Buildbucket for the build status
[09:06:21.228] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:06:21.228] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:23:0) after 1m0s
[09:07:21.303] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:23:0)
[09:07:21.303] Timer tick, asking Buildbucket for the build status
[09:07:21.453] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:07:21.453] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:24:0) after 1m0s
[09:08:21.475] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:24:0)
[09:08:21.475] Timer tick, asking Buildbucket for the build status
[09:08:21.610] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:08:21.610] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:25:0) after 1m0s
[09:09:21.629] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:25:0)
[09:09:21.629] Timer tick, asking Buildbucket for the build status
[09:09:21.943] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:09:21.943] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:26:0) after 1m0s
[09:10:21.989] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:26:0)
[09:10:21.990] Timer tick, asking Buildbucket for the build status
[09:10:22.131] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:10:22.132] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:27:0) after 1m0s
[09:11:22.157] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:27:0)
[09:11:22.157] Timer tick, asking Buildbucket for the build status
[09:11:22.319] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:11:22.319] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:28:0) after 1m0s
[09:12:22.377] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:28:0)
[09:12:22.377] Timer tick, asking Buildbucket for the build status
[09:12:22.570] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:12:22.570] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:29:0) after 1m0s
[09:13:22.554] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:29:0)
[09:13:22.554] Timer tick, asking Buildbucket for the build status
[09:13:23.006] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:13:23.006] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:30:0) after 1m0s
[09:14:23.007] Handling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:30:0)
[09:14:23.007] Timer tick, asking Buildbucket for the build status
[09:14:23.581] Build 8883600305864594560: status "STARTED", result "", failure_reason "", cancelation_reason ""
[09:14:23.581] Scheduling timer "check-buildbucket-build-status" (dart/flutter-frontend:9049030368805078448:31:0) after 1m0s
[09:14:24.658] Received PubSub notification, asking Buildbucket for the build status
[09:14:24.918] Build 8883600305864594560: status "COMPLETED", result "SUCCESS", failure_reason "", cancelation_reason ""
[09:14:24.918] Buildbucket build:
{
"build": {
"bucket": "luci.dart.ci.sandbox",
"canary_preference": "PROD",
"completed_ts": "1586337263759096",
"created_by": "project:dart",
"created_ts": "1586335573286219",
"id": "8883600305864594560",
"parameters_json": "{\"builder_name\": \"flutter-frontend\", \"properties\": {\"$recipe_engine/scheduler\": {\"hostname\": \"luci-scheduler.appspot.com\", \"triggers\": [{\"gitiles\": {\"ref\": \"refs/heads/master\", \"repo\": \"https://dart.googlesource.com/sdk\", \"revision\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\", \"title\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\", \"url\": \"https://dart.googlesource.com/sdk/+/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}]}, \"branch\": \"refs/heads/master\", \"repository\": \"https://dart.googlesource.com/sdk\", \"revision\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}}",
"project": "dart",
"result": "SUCCESS",
"result_details_json": "{\"properties\": {\"$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://dart.googlesource.com/sdk\", \"revision\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}, \"id\": \"https://dart.googlesource.com/sdk/+/refs/heads/master@0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\", \"title\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\", \"url\": \"https://dart.googlesource.com/sdk/+/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}]}, \"$recipe_engine/swarming\": {\"server\": \"https://chromium-swarm.appspot.com\"}, \"bot_id\": \"luci-dart-try-xenial-93-yrrm\", \"branch\": \"refs/heads/master\", \"buildername\": \"flutter-frontend\", \"buildnumber\": 4693, \"clobber\": \"true\", \"got_revision\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\", \"path_config\": \"generic\", \"recipe\": \"dart/neo\", \"repository\": \"https://dart.googlesource.com/sdk\", \"revision\": \"0d16ff6d86ae20d209d3495ea7ca256b5a734ffc\"}, \"swarming\": {\"bot_dimensions\": {\"caches\": [\"builder_2a98a8b518ca4a18ae82ffedef2eea93c4a884abc1d231637aa846a898cf2599_v2\", \"builder_566a6f0a99c10205b7d3c33a6844f14906531bdda599a81dad3fa78a5d1c1401_v2\", \"builder_9391408b922dd62e7eca12d0b2e539e8aae051931e76b277257714a0a08bd4d1_v2\", \"builder_b0f70dc86e1d0a6e3ffcc95c8ea25406997bbb2d50b410328d5542c81c91a3c4_v2\", \"builder_c89b685ed9f2f88994f1e8b2dff54e34b1580d85e7a146d8428b56812ea00d39_v2\", \"builder_cdfb7e4c0be45bc1d321702c4190674b9bda32c6c4e50f46ac29be7962cacf17_v2\", \"builder_fba3098cd6ebf0fa9b6ceb9261e967d3a5465901e964d3b2e6a6d01431eb4310_v2\", \"git\", \"goma_v2\", \"vpython\"], \"cores\": [\"8\"], \"cpu\": [\"x86\", \"x86-64\", \"x86-64-Broadwell_GCE\", \"x86-64-avx2\"], \"gce\": [\"1\"], \"gcp\": [\"dart-ci\"], \"gpu\": [\"none\"], \"host_class\": [\"default\"], \"id\": [\"luci-dart-try-xenial-93-yrrm\"], \"image\": [\"dart-xenial-20022300-4c0e34b5b5e\"], \"inside_docker\": [\"0\"], \"kvm\": [\"1\"], \"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\": [\"4949-7e00c46\"], \"ssd\": [\"0\"], \"zone\": [\"us\", \"us-central\", \"us-central1\", \"us-central1-b\"]}}}",
"service_account": "dart-luci-try-builder@dart-ci.iam.gserviceaccount.com",
"started_ts": "1586335595867384",
"status": "COMPLETED",
"status_changed_ts": "1586337264165258",
"tags": [
"build_address:luci.dart.ci.sandbox/flutter-frontend/4693",
"builder:flutter-frontend",
"buildset:commit/git/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc",
"buildset:commit/gitiles/dart.googlesource.com/sdk/+/0d16ff6d86ae20d209d3495ea7ca256b5a734ffc",
"gitiles_ref:refs/heads/master",
"scheduler_invocation_id:9049030368805078448",
"scheduler_job_id:dart/flutter-frontend",
"swarming_hostname:chromium-swarm.appspot.com",
"swarming_tag:log_location:logdog://logs.chromium.org/dart/buildbucket/cr-buildbucket.appspot.com/8883600305864594560/+/annotations",
"swarming_tag:luci_project:dart",
"swarming_tag:os:Linux",
"swarming_tag:recipe_name:dart/neo",
"swarming_tag:recipe_package:dart/recipe_bundles/dart.googlesource.com/recipes",
"swarming_task_id:4b71c97129b0aa10",
"user_agent:luci-scheduler"
],
"updated_ts": "1586337264178654",
"url": "https://ci.chromium.org/b/8883600305864594560",
"utcnow_ts": "1586337264898870"
}
}
[09:14:24.918] Invocation finished in 28m13.820121986s with status SUCCEEDED