diff --git a/provingground/testtracker/external-display.json b/provingground/testtracker/external-display.json
new file mode 100644
index 0000000..61ac435
--- /dev/null
+++ b/provingground/testtracker/external-display.json
@@ -0,0 +1,832 @@
+{
+  "children": [
+    {
+      "children": [
+        {
+          "id": "a2b4ea66-8611-4245-a76f-eb3250fe3358",
+          "li_attr": {
+            "author": "allendam",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\nExternal Displays to Cover:  \\nHD Monitors /TVs (1920x1080)\\nLow resolution Monitors/TVs  (&lt; 1920x1080)\\nHigh resolution Monitors/TVs ( &gt; 1920x1080 Including 4k)\\nUDL (USB Connected) display.\\n\\n\\nApplicable External display ports: \\nType C Display port -  Cover TypeC -&gt; (TypeC/HDMI/DP/DVI/VGA)\\nHDMI  Display port -  Cover HDMI -&gt; (HDMI/DP/DVI/VGA)\\nDP Display  port -  Cover DP -&gt; (HDMI/DP/DVI/VGA)\\nUSB A(2.0/3.0)  for UDL\\n\\nNote for Boxes : \\nUse two monitors for boxes. One is treated as a primary display and the second one  is treated as an extended display.\\nFor CHROMEBOX type\\nClose lid/ Open lid should be skipped.\\nOne external display should be plugged in advance to act as onboard screen\\n\\n\\n*Basic test applies to FSI  and Sanity testing.\\n*Advanced test applies to Full-regression and Full-release testing.\\n*Suspend: Open crosh(Ctrl +Alt + t) - &gt;  run command 'shell' -&gt; run 'powerd_dbus_suspend'.\\n*Resume: Press any key / Mouse click / Press power button for 1second.\\n*Display-Related Persistent Notifications are removed M79. \\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n*Test all available ports and including adapters/docks\\n\\n\\nProcedure:\\n\\n-----------Sanity/FSI--------------------\\nBasic Testing :     \\n1. Boot and sign-in - Plug - Unplug \\n-- [Plug] Display should extend to the last connected monitor/TV.\\n-- [Unplug] External monitor/TV should be disconnected.\\n\\n2. Plug - Suspend - Resume - Unplug\\n--  [Plug] Display should extend to the last connected monitor/TV.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] The device resumes and external monitor comes up in extended mode.\\n-- [Unplug] External monitor/TV should be disconnected.\\n\\n3. Boot and ising in  - Plug - Close lid - Open lid\\n-- [Plug] External display should be in extended mode.\\n-- [Close lid] Onboard screen should switch to external display.\\n-- [Open lid] Primary screen should switch back to internal display and external display should become extended display. \\n\\n 4. Switch between mirrored &amp; extended modes (use keys or settings)\\n     Key combination: Ctrl + F4\\n     Settings flag: Settings -&gt; Displays -&gt; Mirro Internal Display (Enable/Disable)\\n-- User should be able to switch between mirror and extended modes using keys and and settings flag.\\n \\n5. Switch between primary &amp; extended.(use keys or settings)\\n    Key combination: Alt+ F4\\n    Settings flag: Settings -&gt; Displays -&gt; Extended display -&gt; Screen  (change as Primary Display)\\n--External display should become primary and onboard should be changed as extended display.\\n\\n\\n--------- FullRelease/FullRegression-----------------\\n                                                                        \\nAdvanced Testing: \\n6. Boot and sign in - Plug - Suspend - Resume\\n-- [Plug] External display should be in extended mode.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] Both primary and extended monitors should work properly.\\n\\n7. Unplug - Suspend - Plug - Resume\\n-- [Unplug] External display should be disconnected.\\n-- [Plug] Should not change anything in suspend state.\\n-- [Resume] Device display should  become primary  and external display should become extended.\\n\\n8. Suspend - Unplug - Resume - Plug\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Unplug] Unplug should not change anything in suspend state.\\n-- [Resume] Device should display external monitor disconnected.\\n-- [Plug] External display should become extended.\\n\\n9. Power off - Plug - Boot and sign in - Close lid - Unplug - Open lid -Plug.\\n-- [Boot and sing in ] External display should become extended soon after boot and during sign-in.\\n-- [Close lid] Primary screen switch to external display.\\n-- [Unplug] Device should enter into suspend state.\\n   (It may take some time up to 30 seconds)\\n-- [Open lid] Device should resume back.\\n-- [Plug] Display should extend to the last connected monitor/TV.\\n\\n10. Plug - lock - Unplug -  Plug - login.\\n-- [Plug] External display should become extended.\\n -- [Lock] Primary display should display lock screen and external display should display extended screen.\\n--[Unplug] External display should be disconnected. \\n-- [Plug] External display should become extended.\\n\\n11. Unified mode: Enable Unified desktop mode flag from about:flags\\nConnect multiple external displays to the device.\\n-- All monitors should act as single monitor.\\n-- [Plug/Unplug] Automatically resizes the unified display size.\\n\\n  \"",
+            "goal": "Test single external display in extended mode  for chromeOS clamshell mode devices and Boxes.",
+            "md5": "72cf9c4620611f4a101e7dc8825c5157",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Not Automatable",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FSI,FullRelease,Display,External_Display,ForPartners,ARC++_Platform,Kernelnext-Dev,arcvm_teamfood,LaCrOS,NeedFramework",
+            "tc_num": "1.1.1",
+            "title": "Single External Display Extended Mode (Clamshell & Boxes)",
+            "topology": null,
+            "uuid": "ade002e8-3915-4f2c-9785-6647b228c72c"
+          },
+          "pk": 2929336,
+          "text": "Single External Display Extended Mode (Clamshell & Boxes)",
+          "type": "testcases"
+        },
+        {
+          "id": "77b38e51-5a5f-4b58-91af-87e39660502c",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n\\nProcedure:\\n\\n-----------Sanity/FSI--------------------\\n\\nBasic Testing :     \\n1. Boot up and Sign-in\\n\\n-- [Plug] Display should extend to the last connected monitor/TV.\\n-- [Unplug] External monitor/TV should be disconnected.\\n\\n2. Plug - Suspend - Resume - Unplug\\n\\n-- [Plug] Display should extend to the last connected monitor/TV.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] The device resumes and external monitor comes up in extended mode.\\n-- [Unplug] External monitor/TV should be disconnected.\\n\\n3. Plug - Close lid - Open lid\\n\\n-- [Plug] External display should be in extended mode.\\n-- [Close lid] Onboard screen should switch to external display.\\n-- [Open lid] Primary screen should switch back to internal display and external display should become extended display. \\n\\n 4. Switch between mirror modes (use keys or settings)\\n     Key combination: Ctrl + F4\\n     Settings flag: Settings - Displays - Mirror- Internal Display (Enable/Disable)\\n-- User should be able to switch between mirror and extended modes using keys and and settings flag.\\n \\n5. Switch between primary and extended.(use keys or settings)\\n    Key combination: Alt+ F4\\n    Settings flag: Settings -Displays - Extended display Screen  (change as Primary Display)\\n--External display should become primary and onboard should be changed as extended display.\\n\\n\\n--------- FullRelease -----------------\\n                                                                        \\nAdvanced Testing: \\n6. Boot and sign in - Plug - Suspend - Resume\\n\\n-- [Plug] External display should be in extended mode.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] Both primary and extended monitors should work properly.\\n\\n\\n7. Unplug - Suspend - Plug - Resume\\n\\n-- [Unplug] External display should be disconnected.\\n-- [Plug] Should not change anything in suspend state.\\n-- [Resume] Device display should  become primary  and external display should become extended.\\n\\n\\n8. Suspend - Unplug - Resume - Plug\\n\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Unplug] Unplug should not change anything in suspend state.\\n-- [Resume] Device should display external monitor disconnected.\\n-- [Plug] External display should become extended.\\n\\n\\n9. Power off - Plug - Boot and sign in - Close lid - Unplug - Open lid -Plug.\\n\\n-- [Boot and sing in ] External display should become extended soon after boot and during sign-in.\\n-- [Close lid] Primary screen switch to external display.\\n-- [Unplug] Device should enter into suspend state.\\n   (It may take some time up to 30 seconds)\\n-- [Open lid] Device should resume back.\\n-- [Plug] Display should extend to the last connected monitor/TV.\\n\\n\\n10. Plug - lock - Unplug -  Plug - login.\\n\\n-- [Plug] External display should become extended.\\n-- [Lock] Primary display should display lock screen and external display should display extended screen.\\n-- [Unplug] External display should be disconnected. \\n-- [Plug] External display should become extended.\\n\\n\\n11. Unified mode: Enable Unified desktop mode flag from about:flags\\nConnect multiple external displays to the device.\\n\\n-- All monitors should act as single monitor.\\n-- [Plug/Unplug] Automatically resizes the unified display size.\\n\\n  \"",
+            "goal": "Test single external display in extended mode  for chromeOS clamshell mode devices",
+            "md5": "b33027502f9f4610199f26d568af3e00",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.2",
+            "title": "Copy of Single External Display Extended Mode (Clamshell)",
+            "topology": null,
+            "uuid": "a196bedf-f5b8-4bf3-b0bb-77694ddd3f2d"
+          },
+          "pk": 3093002,
+          "text": "Copy of Single External Display Extended Mode (Clamshell)",
+          "type": "testcases"
+        },
+        {
+          "id": "aa0b85c0-3e0e-419c-9481-3671d2414681",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\nNote for Boxes : \\n*Use two monitors for boxes. One is treated as a primary display and the second one  is treated as an extended display.\\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n\\n\\nProcedure:\\n\\n-----------Sanity/FSI--------------------\\nBasic Testing :     \\n\\n1. Boot and sign-in \\n\\n-- [Plug] Display should extend to the last connected monitor/TV.\\n-- [Unplug] External monitor/TV should be disconnected.\\n\\n\\n2. Plug - Suspend - Resume - Unplug\\n\\n--  [Plug] Display should extend to the last connected monitor/TV.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] The device resumes and external monitor comes up.\\n-- [Unplug] External monitor/TV should be disconnected\\n\\n\\n--------- FullRelease-----------------\\n                                                                        \\nAdvanced Testing: \\n6. Boot and sign in \\n\\n-- [Plug] External display should be come up.\\n-- [Suspend] The display should be suspended and the monitor goes blank.\\n-- [Resume] Display monitors should work properly.\\n\\n\\n7. Unplug - Suspend - Plug - Resume\\n\\n-- [Unplug] External display should be disconnected.\\n-- [Plug] Should not change anything in suspend state.\\n-- [Resume] Device display should  become primary  and external display should become extended.\\n\\n\\n8. Suspend - Unplug - Resume - Plug\\n\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Unplug] Unplug should not change anything in suspend state.\\n-- [Resume] Device should display external monitor disconnected.\\n-- [Plug] External display should become extended.\\n\\n\\n9. Power off - Plug - Boot and sign in.\\n\\n-- [Boot and sing in ] External display should become extended soon after boot and during sign-in.\\n\\n\\n10. Plug - lock - Unplug -  Plug - login.\\n-- [Plug] External display should become extended.\\n -- [Lock] Primary display should display lock screen and external display should display extended screen.\\n--[Unplug] External display should be disconnected. \\n-- [Plug] External display should become extended.\\n\\n11. Unified mode: Enable Unified desktop mode flag from about:flags\\nConnect multiple external displays to the device.\\n-- All monitors should act as single monitor.\\n-- [Plug/Unplug] Automatically resizes the unified display size.\\n\\n  \"",
+            "goal": "Test single external display in extended mode  for chromeOS devices Chromebox.",
+            "md5": "562670632c76c383eb46cc2c6d8166d0",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.3",
+            "title": "Copy of Single External Display Extended Mode (Boxes)",
+            "topology": null,
+            "uuid": "c2cf642f-9e33-4f04-b6bd-a2266f1ecd3d"
+          },
+          "pk": 3093003,
+          "text": "Copy of Single External Display Extended Mode (Boxes)",
+          "type": "testcases"
+        },
+        {
+          "id": "4406c68b-8808-471e-be9c-6f5ba20159cd",
+          "li_attr": {
+            "author": "sontis",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\n\\nExternal Displays to Cover:  \\nHD Monitors /TVs (1920x1080)\\nLow resolution Monitors/TVs  (&lt; 1920x1080)\\nHigh resolution Monitors/TVs ( &gt; 1920x1080 Including 4k)\\nUDL (USB Connected) display.\\n\\n\\nApplicable External display ports: \\nType C Display port -  Cover TypeC -&gt; (TypeC/HDMI/DP/DVI/VGA)\\nHDMI  Display port -  Cover HDMI -&gt; (HDMI/DP/DVI/VGA)\\nDP Display  port -  Cover DP -&gt; (HDMI/DP/DVI/VGA)\\nUSB A(2.0/3.0)  for UDL\\n\\nNote for Boxes : \\nUse two monitors for boxes. One is treated as a primary display and the second one  is treated as an extended display.\\nFor CHROMEBOX type\\nClose lid/ Open lid should be skipped.\\nOne external display should be plugged in advance to act as onboard screen\\n\\n\\n*Advanced test applies to Full-regression and Full-release testing.\\n*Suspend: Open crosh(Ctrl +Alt + t) - &gt;  run command 'shell' -&gt; run 'powerd_dbus_suspend'.\\n*Resume: Press any key / Mouse click / Press power button for 1second.\\n*Display-Related Persistent Notifications are removed M79. \\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n*Please do this testing after entering into mirror mode.\\n*Test all available ports and including adapters/docks\\n*Please Skip this test for FSI/Sanity.\\n\\n\\nProcedure:\\n-----------------FullRegrssion/FullRelease------------------------\\nAdvanced Test: \\n1. Plug - Boot and sign in- Close lid- Unplug - Open lid -  Plug.\\n--[Close lid] External display should enter into docked mode.(All the open windows should switch to external display.)\\n-- [Unplug] Device should enter into suspend state.( It may take up to 30 seconds to suspend.)\\n--[Open lid]  Open lid should resume the device back.\\n-- [Plug] External monitor should come up with mirror mode.\\n\\n2. Plug - Suspend - Resume\\n-- [Plug] External monitor should come up with mirror mode.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] Device should wake up in mirror mode.\\n\\n3. Unplug - Suspend - Plug - Resume\\n--[Unplug] External display should be disconnected.\\n--[Plug] Plug should not change anything in suspend state.\\n-- [Resume] Device should wake up in mirror mode.\\n\\n4. Suspend - Unplug - Resume - Plug\\n--[Suspend] The device should be suspended and the monitor goes blank.\\n--[Unplug] Unplugging should not change anything in suspend state.\\n--[Resume] External display should be disconnected.\\n--[Plug] Device and external display should be in mirror mode.\\n\\n 5. Plug - lock - Unplug -  Plug - login.\\n--[Plug] Device and external display should be in mirror mode.\\n--[Lock] Lock screen should be displayed on both displays.\\n--[Unplug]  External display should be disconnected.\\n--[Plug]  Lock screen should be displayed on both displays.\\n--[Login] Device and external display should be in mirror mode and work properly.\\n\\n\\n  \"",
+            "goal": "Test single external display in mirror mode  for chromeOS clamshell mode devices and Boxes.",
+            "md5": "e8029a7a21f169bb6a22e464a10dbcec",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FullRelease,Display,External_Display,ForPartners,ARC++_Platform,arcvm_teamfood,LaCrOS,NeedFramework",
+            "tc_num": "1.1.4",
+            "title": "Single External Display Mirror mode (Clamshell & Boxes)",
+            "topology": null,
+            "uuid": "357e8a26-6414-4237-8d05-166f80af2b49"
+          },
+          "pk": 2929337,
+          "text": "Single External Display Mirror mode (Clamshell & Boxes)",
+          "type": "testcases"
+        },
+        {
+          "id": "1e92c2a0-c095-46fe-b0e9-d381580fb2f5",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n\\n\\nProcedure:\\n-----------------FullRelease------------------------\\n\\nAdvanced Test: \\n\\n1. Plug - Boot and sign in- Close lid- Unplug - Open lid -  Plug.\\n\\n--[Close lid] External display should enter into docked mode.(All the open windows should switch to external display.)\\n-- [Unplug] Device should enter into suspend state.( It may take up to 30 seconds to suspend.)\\n-- [Open lid]  Open lid should resume the device back.\\n-- [Plug] External monitor should come up with mirror mode.\\n\\n\\n2. Plug - Suspend - Resume\\n \\n-- [Plug] External monitor should come up with mirror mode.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] Device should wake up in mirror mode.\\n\\n\\n3. Unplug - Suspend - Plug - Resume\\n\\n-- [Unplug] External display should be disconnected.\\n-- [Plug] Plug should not change anything in suspend state.\\n-- [Resume] Device should wake up in mirror mode.\\n\\n\\n4. Suspend - Unplug - Resume - Plug\\n\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Unplug] Unplugging should not change anything in suspend state.\\n-- [Resume] External display should be disconnected.\\n-- [Plug] Device and external display should be in mirror mode.\\n\\n\\n 5. Plug - lock - Unplug -  Plug - login.\\n\\n-- [Plug] Device and external display should be in mirror mode.\\n-- [Lock] Lock screen should be displayed on both displays.\\n-- [Unplug]  External display should be disconnected.\\n--[Plug]  Lock screen should be displayed on both displays.\\n--[Login] Device and external display should be in mirror mode and work properly.\\n\\n\\n  \"",
+            "goal": "Test single external display in mirror mode  for chromeOS clamshell mode devices.",
+            "md5": "aaa3d880362ed2baeaa248671db1739a",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.5",
+            "title": "Copy of Single External Display Mirror mode (Clamshell)",
+            "topology": null,
+            "uuid": "9105a763-d6e8-4d10-aefd-d3e385b91f01"
+          },
+          "pk": 3090832,
+          "text": "Copy of Single External Display Mirror mode (Clamshell)",
+          "type": "testcases"
+        },
+        {
+          "id": "223109f5-3a10-46da-a6e9-a70dabdf0720",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\nNote for Boxes : \\nUse two monitors for boxes. One is treated as a primary display and the second one  is treated as an extended display.\\nFor CHROMEBOX type\\nClose lid/ Open lid should be skipped.\\nOne external display should be plugged in advance to act as onboard screen\\n\\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n\\nProcedure:\\n-----------------FullRelease------------------------\\n\\nAdvanced Test: \\n\\n1. Plug - Boot and sign in- Close lid- Unplug - Open lid -  Plug.\\n\\n-- [Close lid] External display should enter into docked mode.(All the open windows should switch to external display.)\\n-- [Unplug] Device should enter into suspend state.( It may take up to 30 seconds to suspend.)\\n-- [Open lid]  Open lid should resume the device back.\\n-- [Plug] External monitor should come up with mirror mode.\\n\\n\\n2. Plug - Suspend - Resume\\n\\n-- [Plug] External monitor should come up with mirror mode.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] Device should wake up in mirror mode.\\n\\n\\n3. Unplug - Suspend - Plug - Resume\\n\\n-- [Unplug] External display should be disconnected.\\n-- [Plug] Plug should not change anything in suspend state.\\n-- [Resume] Device should wake up in mirror mode.\\n\\n\\n4. Suspend - Unplug - Resume - Plug\\n\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Unplug] Unplugging should not change anything in suspend state.\\n-- [Resume] External display should be disconnected.\\n-- [Plug] Device and external display should be in mirror mode.\\n\\n\\n 5. Plug - lock - Unplug -  Plug - login.\\n\\n-- [Plug] Device and external display should be in mirror mode.\\n-- [Lock] Lock screen should be displayed on both displays.\\n-- [Unplug]  External display should be disconnected.\\n-- [Plug]  Lock screen should be displayed on both displays.\\n-- [Login] Device and external display should be in mirror mode and work properly.\\n\\n\\n  \"",
+            "goal": "Test single external display in mirror mode  for chromeOS Boxes.",
+            "md5": "d8389cfc45ff8482247877a635fdb670",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.6",
+            "title": "Copy of Single External Display Mirror mode (Boxes)",
+            "topology": null,
+            "uuid": "98714b5d-e884-4a6f-a478-a22d85fbb21e"
+          },
+          "pk": 3090833,
+          "text": "Copy of Single External Display Mirror mode (Boxes)",
+          "type": "testcases"
+        },
+        {
+          "id": "d1ec54f2-c104-498e-83b8-4d2a1a46b340",
+          "li_attr": {
+            "author": "allendam",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\nExternal Displays to Cover:  \\nHD Monitors /TVs (1920x1080)\\nLow resolution Monitors/TVs  (&lt; 1920x1080)\\nHigh resolution Monitors/TVs ( &gt; 1920x1080 Including 4k)\\nUDL (USB Connected) display.\\n\\n\\nApplicable External display ports: \\nType C Display port -  Cover TypeC -&gt; (TypeC/HDMI/DP/DVI/VGA)\\nHDMI  Display port -  Cover HDMI -&gt; (HDMI/DP/DVI/VGA)\\nDP Display  port -  Cover DP -&gt; (HDMI/DP/DVI/VGA)\\nUSB A(2.0/3.0)  \\n\\n*Basic test applies to FSI  and Sanity testing.\\n*Advanced test applies to Full-regression and Full-release testing.\\n*Suspend: Open crosh(Ctrl +Alt + t) - &gt;  run command 'shell' -&gt; run 'sudo powerd_dbus_suspend'.\\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n\\n*Test device types: Convertibles, Detachables and Slates/Tablets.\\n*For tablet mode by default external display enters into mirror mode.\\n*Test all available ports and including adapters/docks\\n\\n\\nProcedure:\\n--------------FSI/Sanity------------------\\nBasic Testing:  \\n1. Boot and sign in - Plug - Unplug - REM Sleep (only for Slate/Tablet) - Plug - Resume.\\n--[Plug] External display should come up with mirror mode.\\n--[Unplug] External display should be disconnected.\\n--[REM Sleep]  Device should enter into REM Sleep mode with short press of power button.\\n--[Plug] Plug should not change anything in REM Sleep mode.\\n--[Resume] Both device and external display should come up with mirror mode.\\n                        \\n                       \\n---------------FullRelease/FullRegression------------------\\n                                                                        \\nAdvanced Testing:\\n2. Plug - Boot and sign in - Suspend - Resume\\n--[Boot and sign in] Both device and external display should be in mirror mode.\\n--[Suspend] The device should be suspended and the monitor goes blank.\\n--[Resume] Both device and external display should come up in mirror mode.\\n\\n3. Unplug - Suspend - Plug - Resume\\n--[Unplug] External display should be disconnected.\\n--[Suspend Device should enter into suspend state.\\n--[Plug] External display should not change anything in suspend state.\\n--[Resume] Both device and external display should come up in mirror mode.\\n\\n4. Suspend - Unplug - Resume - Plug\\n--[Suspend] Device should enter into suspend state.\\n--[Unplug] Unplug external display should not change anything in suspend state.\\n--[Resume] External display should be disconnected.\\n---[Plug] Both device and external display should enter into mirror mode.\\n\\n 5. Plug - lock - Unplug -  Plug - Login.\\n--[Plug] Both device and external display should be in mirror mode.\\n--[Lock] Lock screen should be displayed on both displays.\\n--[Unplug] External display should be disconnected.\\n--[Plug] Lock screen should be displayed on both displays.\\n--[Login] Chrome OS should work properly.\\n\\n6. Change orientation of the device.\\n--[Orientation] External display should follow the device display orientation.\\n\\n7. Switch between Mirror and Extended mode ( use keyboard or Setting/Device/Displays)\\n  Key combination: Ctrl + F4 (Use USB keyboard)\\n  Settings/Device/Displays (Mirror mode) (Enable/Disable)\\n-- User should be able to switch between mirror and extended modes \\n(Keep the device in extended mode and perform step 7)\\n\\n8. Switch between primary and extended mode. (use keyboard or Setting/Device/Displays)\\n Key combination: Alt+ F4 (Use USB keyboard)\\n Settings/Device/Displays (Extended mode) (change as Primary Display)\\n-- Now external display should be changed as primary and primary should be changed as extended display.\\n\\n9. Switch between tablet mode &amp; clamshell mode\\n(Only for convertibles &amp; detachables.)\\n-- Clamshell mode default mode is extended mode.\\n-- Tablet mode default mode is mirror mode.\\n-- Switching between tablet mode &amp; clamshell should switch the display  between mirror \\n  \"",
+            "goal": "Test external display in tablet mode for Convertibles, Detachables and Slates/Tablets.",
+            "md5": "50ef774e6c18eebb0aa40517b8935323",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Not Automatable",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FSI,FullRelease,Platform,Display,External_Display,ForPartners,ARC++_Platform,arcvm_teamfood,NeedFramework",
+            "tc_num": "1.1.7",
+            "title": "External Display Tablet Mode",
+            "topology": null,
+            "uuid": "82684ab5-5e94-4ce4-81f7-a4a1adc91bed"
+          },
+          "pk": 3618113,
+          "text": "External Display Tablet Mode",
+          "type": "testcases"
+        },
+        {
+          "id": "a38c437e-5e7e-43cf-a6f0-fcaa28e7aee1",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\nNotifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n\\n*Test device types: Convertibles, Detachables and Slates/Tablets.\\n*For tablet mode by default external display enters into mirror mode.\\n*Test all available ports and including adapters/docks\\n\\n\\nProcedure:\\n-----------Sanity/FSI--------------------\\n\\nBasic Testing:  \\n\\n1. Boot and sign in - Plug - Unplug - REM Sleep (only for Slate/Tablet) - Plug - Resume.\\n-- [Plug] External display should come up with mirror mode.\\n-- [Unplug] External display should be disconnected.\\n-- [REM Sleep]  Device should enter into REM Sleep mode with short press of power button.\\n-- [Plug] Plug should not change anything in REM Sleep mode.\\n-- [Resume] Both device and external display should come up with mirror mode.\\n                        \\n                       \\n---------------FullRelease------------------\\n                                                                        \\nAdvanced Testing:\\n\\n2. Plug - Boot and sign in - Suspend - Resume\\n\\n-- [Boot and sign in] Both device and external display should be in mirror mode.\\n-- [Suspend] The device should be suspended and the monitor goes blank.\\n-- [Resume] Both device and external display should come up in mirror mode.\\n\\n\\n3. Unplug - Suspend - Plug - Resume\\n\\n-- [Unplug] External display should be disconnected.\\n-- [Suspend Device should enter into suspend state.\\n-- [Plug] External display should not change anything in suspend state.\\n-- [Resume] Both device and external display should come up in mirror mode.\\n\\n\\n4. Suspend - Unplug - Resume - Plug\\n\\n-- [Suspend] Device should enter into suspend state.\\n-- [Unplug] Unplug external display should not change anything in suspend state.\\n-- [Resume] External display should be disconnected.\\n---[Plug] Both device and external display should enter into mirror mode.\\n\\n\\n 5. Plug - lock - Unplug -  Plug - Login.\\n\\n-- [Plug] Both device and external display should be in mirror mode.\\n-- [Lock] Lock screen should be displayed on both displays.\\n-- [Unplug] External display should be disconnected.\\n-- [Plug] Lock screen should be displayed on both displays.\\n-- [Login] ChromeOS should work properly.\\n\\n\\n6. Change orientation of the device.\\n\\n--[Orientation] External display should follow the device display orientation.\\n\\n\\n7. Switch between mirror &amp; extended ( use keys or settings UI)\\n\\n--  Key combination: Ctrl + F4 (Use USB keyboard)\\n--  Settings flag: Settings -&gt; Displays -&gt; Mirro Internal Display (Enable/Disable)\\n--  User should be able to switch between mirror and extended modes \\n-- (Keep the device in extended mode and perform step 7)\\n\\n\\n8. Switch between primary &amp; extended. (use keys or settings)\\n\\n-- Key combination: Alt+ F4 (Use USB keyboard)\\n-- Settings flag: Settings -&gt; Displays -&gt; Extended display -&gt; Screen  (change as Primary Display)\\n-- Now external display should be changed as primary and primary should be changed as extended display.\\n\\n\\n9. Switch between tablet mode &amp; clamshell mode\\n\\n-- (Only for convertibles &amp; detachables.)\\n-- Clamshell mode default mode is extended mode.\\n-- Tablet mode default mode is mirror mode.\\n-- Switching between tablet mode &amp; clamshell should switch the display  between mirror \\n  \"",
+            "goal": "Test external display in tablet mode for Convertibles, Detachables and Slates/Tablets.",
+            "md5": "245690a649e56bdfc081c54b3286b479",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.8",
+            "title": "Copy of External Display Tablet Mode",
+            "topology": null,
+            "uuid": "e703e902-5f0c-4942-8a92-a8f2a37be3d3"
+          },
+          "pk": 3093004,
+          "text": "Copy of External Display Tablet Mode",
+          "type": "testcases"
+        },
+        {
+          "id": "9cc1cd89-e6d2-4ca0-807d-d8938ad50ddd",
+          "li_attr": {
+            "author": "sontis",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\nExternal Displays to Cover:  \\nHD Monitors /TVs (1920x1080)\\nLow resolution Monitors/TVs  (&lt; 1920x1080)\\nHigh resolution Monitors/TVs ( &gt; 1920x1080 Including 4k)\\nUDL (USB Connected) display.\\n\\n\\nApplicable External display ports: \\nType C Display port -  Cover TypeC -&gt; (TypeC/HDMI/DP/DVI/VGA)\\nHDMI  Display port -  Cover HDMI -&gt; (HDMI/DP/DVI/VGA)\\nDP Display  port -  Cover DP -&gt; (HDMI/DP/DVI/VGA)\\nUSB A(2.0/3.0)  for UDL\\n\\n*Basic test applies to FSI  and Sanity testing.\\n*Advanced test applies to Full-regression and Full-release testing.\\n*Suspend: Open crosh(Ctrl +Alt + t) - &gt;  run command 'shell' -&gt; run 'powerd_dbus_suspend'.\\n*Resume: Press any key / Mouse click / Press power button for 1second.\\n*Display-Related Persistent Notifications are removed M79. \\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n\\n*M1 - External Display1\\n*M2 - External Display2\\n*Test all available ports and including adapters/docks\\n\\n\\n\\nProcedure:\\n\\n------------------FSI/Sanity-------------------------\\nBasic Testing:\\n1. Plug M1 &amp; M2 - Boot  and sign in - Close lid - Open lid.\\n-- [Boot and sign in] Both M1 &amp; M2 should act as  extended displays.\\n-- [Close lid] One monitor(M1/M2) should act as primary and other monitor(M1/M2) as extended.\\n--[Open lid] Both M1 &amp; M2 should act as  extended displays.\\n\\n2. UnplugM1 - PlugM1\\n--[Unplug M1] M1 display should be disconnected.\\n--[Plug M1] M1 should come up in extended mode.\\n\\n3. UnplugM2 - PlugM2\\n--[Unplug M2] M2 display should be disconnected.\\n--[Plug M2] M2 should come up in extended mode. \\n\\n\\n---------------------FullRelese/FullRegression-----------------                                                                                                                        \\nAdvanced Testing:\\n4. Plug M1 &amp; M2 - Suspend - Resume\\n--[Plug] Both M1 &amp; M2 should act as  extended displays.\\n--[Suspend] The device should be suspended and the monitores(M1&amp;M2) go blank.\\n--[Resume] Both M1 &amp; M2 should come up as extended displays.\\n\\n5. Unplug M1 - Suspend - Plug M1 - Resume \\n--[Unplug] Monitor M1 should be disconnected and only M2 Should display in extended mode.\\n--[Suspend] The device should be suspended and the M2 monitor goes blank.\\n--[Plug] Plugin should not change anything in suspend state.\\n--[Resume]  Both M1 &amp; M2 should come up as extended displays.\\n\\n 6. Suspend - Unplug M2 - Resume  - Plug M2\\n--[Suspend] The device should be suspended and the monitores(M1&amp;M2) go blank.\\n--[Unplug] Unplugin should not change anything in suspend state.\\n--[Resume] Monitor M2 should be disconnected and only M1 monitor  should display in\\n extended mode.\\n--[Plug] Both M1 &amp; M2 should act as  extended displays.\\n\\n7. Plug M1 & M2 - Lock - Unplug  M1 &   M2 -  Plug M1 &  M2- Unlock.\\n--[Plug]  Both M1 &amp; M2 should come up as extended displays.\\n--[Lock] Primary display should display lock screen and external displays(M1 &amp;M2) should display extended screen.\\n--[Unplug] External displays(M1&amp;M2) should be disconnected.\\n--[Plug] Primary display should display lock screen and external displays(M1 &amp;M2) should come up with extended screens.\\n--[Unlock] ChromeOS should work properly.\\n\\n\\n8. Switch between mirror &amp; extended ( Settings UI &amp; Key press)\\n    Key combination: Ctrl + F4\\n    Settings flag: Settings -&gt; Displays -&gt; Mirro Internal Display (Enable/Disable)\\n-- User should be able to switch between mirror and extended modes using keys and and settings flag.\\n\\n9. Switch between primary &amp; extended. (settings UI &amp; key press)\\n     Key combination: Alt+ F4\\n    (Currently Primary display switches between internal and one first extended monitor. crbug.com/867966)\\n    Settings flag: Settings -&gt; Displays -&gt; Extended display (M1/M2) -&gt; Screen  (change as Primary Display)\\n-- Now external display(M1/M2) should be changed as primary and primary should be changed as extended display.\\n  \"",
+            "goal": "Test dual external display for clamshell mode devices.",
+            "md5": "4ac365760a2761acf6c6a13da4c32811",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Not Automatable",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FSI,FullRelease,Display,External_Display,ForPartners,Dual_Display,ARC++_Platform,arcvm_teamfood,NeedFramework",
+            "tc_num": "1.1.9",
+            "title": "Dual External Monitors (Clamshell mode)",
+            "topology": null,
+            "uuid": "385745be-8bf5-4af4-8e87-7ca8f4465872"
+          },
+          "pk": 2929339,
+          "text": "Dual External Monitors (Clamshell mode)",
+          "type": "testcases"
+        },
+        {
+          "id": "26efbd9a-b61a-4873-9c3c-6b4c5d4e401f",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n\\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n\\n*M1 - External Display1\\n*M2 - External Display2\\n*Test all available ports and including adapters/docks\\n\\n\\n\\nProcedure:\\n\\n------------------FSI/Sanity-------------------------\\n\\nBasic Testing:\\n\\n1. Plug M1 &amp; M2 - Boot  and sign in - Close lid - Open lid.\\n\\n-- [Boot and sign in] Both M1 &amp; M2 should act as  extended displays.\\n-- [Close lid] One monitor(M1/M2) should act as primary and other monitor(M1/M2) as extended.\\n-- [Open lid] Both M1 &amp; M2 should act as  extended displays.\\n\\n\\n2. UnplugM1 - PlugM1\\n\\n- -[Unplug M1] M1 display should be disconnected.\\n-- [Plug M1] M1 should come up in extended mode.\\n\\n3. UnplugM2 - PlugM2\\n\\n-- [Unplug M2] M2 display should be disconnected.\\n-- [Plug M2] M2 should come up in extended mode. \\n\\n\\n\\n---------------------FullRelese-----------------      \\n                                                                                                                  \\nAdvanced Testing:\\n\\n4. Plug M1 &amp; M2 - Suspend - Resume\\n\\n-- [Plug] Both M1 &amp; M2 should act as  extended displays.\\n-- [Suspend] The device should be suspended and the monitores(M1&amp;M2) go blank.\\n-- [Resume] Both M1 &amp; M2 should come up as extended displays.\\n\\n\\n5. Unplug M1 - Suspend - Plug M1 - Resume \\n\\n-- [Unplug] Monitor M1 should be disconnected and only M2 Should display in extended mode.\\n-- [Suspend] The device should be suspended and the M2 monitor goes blank.\\n-- [Plug] Plugin should not change anything in suspend state.\\n-- [Resume]  Both M1 &amp; M2 should come up as extended displays\\n\\n\\n 6. Suspend - Unplug M2 - Resume  - Plug M2\\n\\n-- [Suspend] The device should be suspended and the monitores(M1&amp;M2) go blank.\\n-- [Unplug] Unplugin should not change anything in suspend state.\\n-- [Resume] Monitor M2 should be disconnected and only M1 monitor  should display in\\n   extended mode.\\n-- [Plug] Both M1 &amp; M2 should act as  extended displays.\\n\\n\\n7. Plug M1 & M2 - Lock - Unplug  M1 &   M2 -  Plug M1 &  M2- Unlock.\\n\\n-- [Plug]  Both M1 &amp; M2 should come up as extended displays.\\n-- [Lock] Primary display should display lock screen and external displays(M1 &amp;M2) should display extended screen.\\n-- [Unplug] External displays(M1&amp;M2) should be disconnected.\\n-- [Plug] Primary display should display lock screen and external displays(M1 &amp;M2) should come up with extended screens.\\n-- [Unlock] ChromeOS should work properly.\\n\\n\\n8. Switch between mirror &amp; extended ( Settings UI &amp; Key press)\\n\\n    Key combination: Ctrl + F4\\n    Settings flag: Settings -&gt; Displays -&gt; Mirro Internal Display (Enable/Disable)\\n-- User should be able to switch between mirror and extended modes using keys and and settings flag.\\n\\n\\n9. Switch between primary &amp; extended. (settings UI &amp; key press)\\n\\n     Key combination: Alt+ F4\\n    (Currently Primary display switches between internal and one first extended monitor. crbug.com/867966)\\n    Settings flag: Settings -&gt; Displays -&gt; Extended display (M1/M2) -&gt; Screen  (change as Primary Display)\\n-- Now external display(M1/M2) should be changed as primary and primary should be changed as extended display.\\n  \"",
+            "goal": "Test dual external display for clamshell mode devices.",
+            "md5": "5ca298c8c00d6531915b869db572ccfb",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.10",
+            "title": "Copy of Dual External Monitors (Clamshell)",
+            "topology": null,
+            "uuid": "29f66555-067a-4e7f-964c-58327d218ef8"
+          },
+          "pk": 3090944,
+          "text": "Copy of Dual External Monitors (Clamshell)",
+          "type": "testcases"
+        },
+        {
+          "id": "509879f2-e77e-4939-abb9-554890817db7",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Pre-Condition:\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n*Notifications are displayed for plug, unplug and mode change only until M78 (crbug.com/1008696)\\n\\n*M1 - External Display1\\n*M2 - External Display2\\n*Test all available ports and including adapters/docks\\n\\n\\n\\nProcedure:\\n\\n------------------FSI/Sanity-------------------------\\n\\nBasic Testing:\\n\\n1. Plug M1 &amp; M2 - Boot  and sign in \\n-- [Boot and sign in] One monitor(M1/M2) should act as primary and other monitor(M1/M2) as extended.\\n\\n\\n2. UnplugM1 - PlugM1\\n\\n-- [Unplug M1] M1 display should be disconnected.\\n-- [Plug M1] M1 should come up in extended mode.\\n\\n\\n3. UnplugM2 - PlugM2\\n\\n-- [Unplug M2] M2 display should be disconnected.\\n-- [Plug M2] M2 should come up in extended mode. \\n\\n\\n\\n---------------------FullRelease-----------------\\n                                                                                                                        \\nAdvanced Testing:\\n\\n4. Plug M1 &amp; M2 - Suspend - Resume\\n\\n-- [Plug] Both M1 &amp; M2 should act as  extended displays.\\n-- [Suspend] The device should be suspended and the monitores(M1&amp;M2) go blank.\\n-- [Resume] Both M1 &amp; M2 should come up as extended displays.\\n\\n\\n5. Unplug M1 - Suspend - Plug M1 - Resume \\n\\n-- [Unplug] Monitor M1 should be disconnected and only M2 Should display in extended mode.\\n-- [Suspend] The device should be suspended and the M2 monitor goes blank.\\n-- [Plug] Plugin should not change anything in suspend state.\\n-- [Resume]  Both M1 &amp; M2 should come up as extended displays.\\n\\n\\n 6. Suspend - Unplug M2 - Resume  - Plug M2\\n\\n-- [Suspend] The device should be suspended and the monitores(M1&amp;M2) go blank.\\n-- [Unplug] Unplugin should not change anything in suspend state.\\n-- [Resume] Monitor M2 should be disconnected and only M1 monitor  should display in\\n   extended mode.\\n-- [Plug] Both M1 &amp; M2 should act as  extended displays.\\n\\n\\n7. Plug M1 & M2 - Lock - Unplug  M1 &   M2 -  Plug M1 &  M2- Unlock.\\n\\n-- [Plug]  Both M1 &amp; M2 should come up as extended displays.\\n-- [Lock] Primary display should display lock screen and external displays(M1 &amp;M2) should display extended screen.\\n-- [Unplug] External displays(M1&amp;M2) should be disconnected.\\n-- [Plug] Primary display should display lock screen and external displays(M1 &amp;M2) should come up with extended screens.\\n-- [Unlock] ChromeOS should work properly.\\n\\n\\n8. Switch between mirror &amp; extended ( Settings UI &amp; Key press)\\n\\n\\n    Key combination: Ctrl + F4\\n    Settings flag: Settings -&gt; Displays -&gt; Mirro Internal Display (Enable/Disable)\\n-- User should be able to switch between mirror and extended modes using keys and and settings flag.\\n\\n\\n9. Switch between primary &amp; extended. (settings UI &amp; key press)\\n\\n     Key combination: Alt+ F4\\n    (Currently Primary display switches between internal and one first extended monitor. crbug.com/867966)\\n    Settings flag: Settings -&gt; Displays -&gt; Extended display (M1/M2) -&gt; Screen  (change as Primary Display)\\n-- Now external display(M1/M2) should be changed as primary and primary should be changed as extended display.\\n  \\n\"",
+            "goal": "Test dual external display for clamshell mode devices.",
+            "md5": "4b68dc28c92d565c842f795230d6b747",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.11",
+            "title": "Copy of Dual External Monitors (Boxes)",
+            "topology": null,
+            "uuid": "7840fb88-acfb-4df7-9f79-216ba28f4fb4"
+          },
+          "pk": 3090945,
+          "text": "Copy of Dual External Monitors (Boxes)",
+          "type": "testcases"
+        },
+        {
+          "id": "139c9d3f-6f8b-4bb7-8a46-a6c2eb8c448e",
+          "li_attr": {
+            "author": "sontis",
+            "chapter_id": 309818,
+            "description": "\"Objective\\nVerify the ability to have a single app span multiple displays\\n\\nRelated bugs:\\nhttps://bugs.chromium.org/p/chromium/issues/detail?id=511477\\nhttps://bugs.chromium.org/p/chromium/issues/detail?id=520128\\n\\nExternal monitors supported:\\n- Any monitor via HDMI/DP/DVI/VGA port  \\n- USB display  \\n\\nPrecondition\\nUnified Desktop is enabled from chrome://flags.\\n\\nProcedure\\n1. Sign in and launch a browser in maximized window. \\n\\n2. Connect to any external monitor. \\n__ Verify the single browser page spans over internal and external display.\\n__ No flickering, no crash.\\n\\n3. Turn off and on \\\"Allow windows to span displays\\\" at chrome://settings/display. \\n__ Verified Unified Desktop option can be turned off and on. \\n\\n4. Arrange monitor order at chrome://settings/display by dragging display box to different position. \\n__ Verify monitor order is correct as arranged. \\n__ No flickering, no cras.\\n\\n5. Change Resolution at chrome://settings/display.  \\n__ No flickering, no crash. \\n\\n6. Enter to dock mode by close/open lid. \\n__ No flickering, no crash. \\n\\n7. Suspend and resume the device by running 'powerd_dbus_suspend\\\".\\n__ No flickering, no crash. \\n\\n8. Press Ctr-F4 to switch to mirror mode, and back to Unified view. \\n__ Verify mirror mode works.\\n__ No flickering, no crash.\\n\\n9. Add one more external display (2+ monitors) and repeat 3-8. \\n\\n10. Repeat 3-8 in Tablet mode. \\n\\n11. Repeat 3-8 against any ARC++ app which allows full screen. \\n  \"",
+            "goal": "Verify the ability to have a single app span multiple displays",
+            "md5": "64dd01179efa2771b52414957450f050",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FullRegression,Platform,Display,Dual_Display,OS-Chrome",
+            "tc_num": "1.1.12",
+            "title": "Unified Desktop",
+            "topology": null,
+            "uuid": "32ddce63-a8fc-4ede-b99d-6ebcbbb6655a"
+          },
+          "pk": 2929333,
+          "text": "Unified Desktop",
+          "type": "testcases"
+        },
+        {
+          "id": "5f76efdb-536f-46cb-a292-017320a7b0d8",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Objective\\nVerify the ability to have a single app span multiple displays\\n\\nRelated bugs:\\nhttps://bugs.chromium.org/p/chromium/issues/detail?id=511477\\nhttps://bugs.chromium.org/p/chromium/issues/detail?id=520128\\n\\nPrecondition\\nUnified Desktop is enabled from chrome://flags.\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\nProcedure\\n1. Sign in and launch a browser in maximized window. \\n\\n2. Connect to any external monitor. \\n-- Verify the single browser page spans over internal and external display.\\n-- No flickering, no crash.\\n\\n3. Turn off and on \\\"Allow windows to span displays\\\" at chrome://settings/display. \\n-- Verified Unified Desktop option can be turned off and on. \\n\\n4. Arrange monitor order at chrome://settings/display by dragging display box to different position. \\n-- Verify monitor order is correct as arranged. \\n-- No flickering, no cras.\\n\\n5. Change Resolution at chrome://settings/display.  \\n-- No flickering, no crash. \\n\\n6. Enter to dock mode by close/open lid. \\n-- No flickering, no crash. \\n\\n7. Suspend and resume the device by running 'powerd_dbus_suspend\\\".\\n-- No flickering, no crash. \\n\\n8. Press Ctr-F4 to switch to mirror mode, and back to Unified view. \\n-- Verify mirror mode works.\\n-- No flickering, no crash.\\n\\nRepeat tests below with (Dual monitor, Tablet, ARC++)\\n\\n9. Add one more external display (2+ monitors) and repeat 3-8. \\n\\n10. Repeat 3-8 in Tablet mode. \\n\\n11. Repeat 3-8 against any ARC++ app which allows full screen. \\n  \"",
+            "goal": "Verify the ability to have a single app with Single and multiple displays",
+            "md5": "5fe18f4598f5340a4f3634876c9ed986",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.13",
+            "title": "Copy of Unified Desktop",
+            "topology": null,
+            "uuid": "6195b8f3-fc96-43d3-a241-a20c4944992b"
+          },
+          "pk": 3093005,
+          "text": "Copy of Unified Desktop",
+          "type": "testcases"
+        },
+        {
+          "id": "0552bcd0-b162-4fe5-9fc4-909d5048d168",
+          "li_attr": {
+            "author": "sontis",
+            "chapter_id": 309818,
+            "description": "\"Introduced with crbug.com/790723\\n\\nPer Test review bug crbug.com/794413 instructions:\\n - Changing display size should keep things sharp. No picture quality deterioration.\\n - At any given display size none of the bugs mentioned in this umbrella bug should be noticed: crbug.com/731293\\n - The system should be usable to the extent that the user can change the display size. It should not become so zoomed in that the user cannot select options, or so small that the user is unable to see any option.\\n - The display should not go blank or dark at any display size setting.\\n - The display size setting for a given display should persist across system shutdown.    -- https://bugs.chromium.org/p/chromium/issues/detail?id=794413#c9\\n - When the resolution of a display is changed, the display size that the user had selected in the past for this new resolution should be loaded. \\n - The display size corresponding to each resolution should persist across system restart. \\n - Everything should work as expected at any display size. That is mouse clicks, display rotation, overscan setting, touch calibration etc.\\n - The keyboard shortcut of (CTRL, SHIFT, +/-) should change the display size of the display which houses the mouse pointer currently.\\n - The resolution picked before updating from M-1 should be the same as the resolution shown in the \\\"looks like\\\" section of the display settings after updated to M (milestone). This should be true for all resolutions on the device.  This should be true for internal displays, external displays, 4k displays.\\n\\n\\n\\nPre-Condition:\\n    - External Display (HD, 4K, 8K)\\n    - CrOS DUT running R67 or later\\n    - Have the chromeos device on previous milestone, connect to specific external display and set specific resolution. Note this resolution down.\\n\\n\\nProcedure:\\n\\n 1)  Connect an external display to the DUT.\\n 1.a)  Autoupdate to the current milestone and confirm same resolution('Looks like') is present for this specific display.\\n\\n - Display Size/Resolution should not be changed.\\n\\n 2)  From Settings &gt; Display, change the display size by dragging the slider.  Start with the slider all the way left (tiny) and progress towards the right (huge)\\n\\n    - Changing display size should keep things sharp. No picture quality deterioration.  No pixel gaps between the UI and the display edges.\\n    - The system should be usable to the extent that the user can change the display size.  It should not become so zoomed in that the user cannot select options, or so small that the user is unable to see any option.\\n    - The display should not go blank or dark at any display size setting.\\n    - Everything should work as expected at any display size. That is mouse clicks, display rotation, overscan setting, touch calibration etc.\\n\\n 3)  Use the keyboard shortcut of (CTRL, SHIFT, +/-) to increase or decrease the display size.  Now change the external display's resolution.  Once changed, switch the resolution back to default (100%).\\n  \\n    - The display size should increase and decrease when the keyboard shortcut is used.\\n\\n 4)  With the external display still plugged in, restart the DUT.  Repeat Step #2.\\n\\n    - Display Size/Resolution should not be changed.\\n\\n 5)  Unplug and Replug the external display.  Repeat Step #2.\\n\\n    - Display Size/Resolution should not be changed.\\n      \\n 6)  Convert the device into Tablet Mode and repeat the above steps in tablet mode.\\n\\n 7) Switch to different display(HD, 4K, 8K) and repeat the steps 1 - 5\\n  \"",
+            "goal": "Display Size and Display resolution settings",
+            "md5": "6d754f7e314b7b554f1b0aa6ff4f1524",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FullRegression,Platform,Display,oregano,OS-Chrome,LaCrOS",
+            "tc_num": "1.1.14",
+            "title": "Display Size and Display resolution settings",
+            "topology": null,
+            "uuid": "5b06af24-7c1d-42de-96a4-3f7708c03bb9"
+          },
+          "pk": 2929334,
+          "text": "Display Size and Display resolution settings",
+          "type": "testcases"
+        },
+        {
+          "id": "c367ff80-9353-4b96-9494-6a36866281b7",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Introduced with crbug.com/790723\\n\\nPer Test review bug crbug.com/794413 instructions:\\n - Changing display size should keep things sharp. No picture quality deterioration.\\n - At any given display size none of the bugs mentioned in this umbrella bug should be noticed: crbug.com/731293\\n - The system should be usable to the extent that the user can change the display size. It should not become so zoomed in that the user cannot select options, or so small that the user is unable to see any option.\\n - The display should not go blank or dark at any display size setting.\\n - The display size setting for a given display should persist across system shutdown.    -- https://bugs.chromium.org/p/chromium/issues/detail?id=794413#c9\\n - When the resolution of a display is changed, the display size that the user had selected in the past for this new resolution should be loaded. \\n - The display size corresponding to each resolution should persist across system restart. \\n - Everything should work as expected at any display size. That is mouse clicks, display rotation, overscan setting, touch calibration etc.\\n - The keyboard shortcut of (CTRL, SHIFT, +/-) should change the display size of the display which houses the mouse pointer currently.\\n - The resolution picked before updating from M-1 should be the same as the resolution shown in the \\\"looks like\\\" section of the display settings after updated to M (milestone). This should be true for all resolutions on the device.  This should be true for internal displays, external displays, 4k displays.\\n\\n\\nPre-Condition:\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n\\nProcedure:\\n\\n 1)  Connect an external display to the DUT.\\n 1.a)  Autoupdate to the current milestone and confirm same resolution('Looks like') is present for this specific display.\\n\\n\\n - Display Size/Resolution should not be changed.\\n\\n 2)  From Settings &gt; Display, change the display size by dragging the slider.  Start with the slider all the way left (tiny) and progress towards the right (huge)\\n\\n    - Changing display size should keep things sharp. No picture quality deterioration.  No pixel gaps between the UI and the display edges.\\n    - The system should be usable to the extent that the user can change the display size.  It should not become so zoomed in that the user cannot select options, or so small that the user is unable to see any option.\\n    - The display should not go blank or dark at any display size setting.\\n    - Everything should work as expected at any display size. That is mouse clicks, display rotation, overscan setting, touch calibration etc.\\n\\n\\n 3)  Use the keyboard shortcut of (CTRL, SHIFT, +/-) to increase or decrease the display size.  Now change the external display's resolution.  Once changed, switch the resolution back to default (100%).\\n  \\n    - The display size should increase and decrease when the keyboard shortcut is used.\\n\\n\\n 4)  With the external display still plugged in, restart the DUT.  Repeat Step #2.\\n\\n    - Display Size/Resolution should not be changed.\\n\\n\\n 5)  Unplug and Replug the external display.  Repeat Step #2.\\n\\n    - Display Size/Resolution should not be changed.\\n\\n      \\n 6)  Convert the device into Tablet Mode and repeat the above steps in tablet mode.\\n\\n\\n 7) Switch to different display(HD, 4K, 8K) and repeat the steps 1 - 5\\n  \"",
+            "goal": "Display Size and Display resolution settings",
+            "md5": "065ebfa7a0b56ae2f6adb001376178f9",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.15",
+            "title": "Copy of Display Size and Display resolution settings",
+            "topology": null,
+            "uuid": "aa552dc7-2b4e-4d9a-a66f-684519231f32"
+          },
+          "pk": 3093006,
+          "text": "Copy of Display Size and Display resolution settings",
+          "type": "testcases"
+        },
+        {
+          "id": "14a99ea9-de44-416c-aec7-e41ea6bea455",
+          "li_attr": {
+            "author": "sontis",
+            "chapter_id": 309818,
+            "description": "\"Description:\\nIntroduced with M80 and crbug.com/1004198 \\n\\nPre-Condition:\\nHave USB peripherals available, like:\\n- External Display(USB-C adapter might be needed)\\n- Wired or Wireless Mouse\\n- ChromeOS tablets, detachables, and convertibles(slate or convertible with screen > 180deg). *Devices running M80 or later\\n\\nNote: \\nAuto-rotate is 'ON' by default (if not set to 'OFF' previously)  in Tablet mode\\n\\nProcedure:\\n1. Plug in an external USB mouse and Confirm: \\n___ Device screen orientation does not change (stays same as before)\\n___ Device changes to Clamshell UI mode (you can see minimize, maximize and close button on the browser)\\n___ Auto-rotate is still 'ON' from Uber tray \\n___ Screen image keeps vertical top-bottom position either when device is kept in tent mode OR rotated  by 90, 180, 270, or 360 deg\\n___ No crashes or issues should be seen\\n\\n2. Plug in an External Monitor and Mouse and Confirm:\\n___ External display should present in Extended Mode\\n___ Internal screen image stays as is - vertical top-bottom orientation\\n___ No crashes or issues should be seen\\n  \"",
+            "goal": "Auto-rotation is enabled (tablets, detachables, and convertibles) when in tablet or tent mode with external USB input devices connected.",
+            "md5": "b0d02714345ce3baa4a9c8e2bd5babb6",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FullRegression,Display,OS-Chrome,MileStone:M-80,flt-launch:1004198,component:UI>Shell>TabletMode",
+            "tc_num": "1.1.16",
+            "title": "Enable auto-rorate for non-clamshell devices with external inputs connected",
+            "topology": null,
+            "uuid": "a3143508-45a3-4d65-9681-352948373620"
+          },
+          "pk": 2929335,
+          "text": "Enable auto-rorate for non-clamshell devices with external inputs connected",
+          "type": "testcases"
+        },
+        {
+          "id": "988cb078-ff5c-4194-b672-24d601011ae8",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309818,
+            "description": "\"Description:\\nIntroduced with M80 and crbug.com/1004198 \\n\\nPre-Condition:\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\nHave USB peripherals available, like:\\n- External Display(USB-C adapter might be needed)\\n- Wired or Wireless Mouse\\n- ChromeOS tablets, detachables, and convertibles(slate or convertible with screen > 180deg). *Devices running M80 or later\\n\\nNote: \\nAuto-rotate is 'ON' by default (if not set to 'OFF' previously)  in Tablet mode\\n\\nProcedure:\\n\\n1. Plug in an external USB mouse and Confirm: \\n-- Device screen orientation does not change (stays same as before)\\n-- Device changes to Clamshell UI mode (you can see minimize, maximize and close button on the browser)\\n-- Auto-rotate is still 'ON' from Uber tray \\n-- Screen image keeps vertical top-bottom position either when device is kept in tent mode OR rotated  by 90, 180, 270, or 360 deg\\n-- No crashes or issues should be seen\\n\\n2. Plug in an External Monitor and Mouse and Confirm:\\n-- External display should present in Extended Mode\\n-- Internal screen image stays as is - vertical top-bottom orientation\\n-- No crashes or issues should be seen\\n  \"",
+            "goal": "Auto-rotation is enabled (tablets, detachables, and convertibles) when in tablet or tent mode with external USB input devices connected.",
+            "md5": "89cc8d862d11a662e06ff355f5de2f06",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.1.17",
+            "title": "Copy of Enable auto-rorate for non-clamshell devices with external inputs connected",
+            "topology": null,
+            "uuid": "125eda68-ee18-41bf-9c75-37757bb50c36"
+          },
+          "pk": 3093007,
+          "text": "Copy of Enable auto-rorate for non-clamshell devices with external inputs connected",
+          "type": "testcases"
+        }
+      ],
+      "id": "492376d5-5733-4aa8-a0fa-c802b021eeda-External Display",
+      "li_attr": {
+        "chap_num": "1.1",
+        "description": "\"Testing ChromeOS devices external display functionality.\"",
+        "md5": "edd6b7cb8b49c9617c297e6117e4b692",
+        "rel": "testsuites",
+        "tags": "",
+        "title": "External Display",
+        "uuid": "492376d5-5733-4aa8-a0fa-c802b021eeda"
+      },
+      "pk": 309818,
+      "text": "External Display",
+      "type": "testsuites"
+    },
+    {
+      "children": [
+        {
+          "id": "3bc7fbe6-6ac5-43d3-8fec-d42145dd6b08",
+          "li_attr": {
+            "author": "nobody",
+            "chapter_id": 309845,
+            "description": "\"Pre-condition:\\n1. ChromeOS device with build >= M66\\n2. External displays\\n\\n\\nProcedure:\\nSign in to the device and enable \\u201cpersistent window bounds in multi-displays scenario\\u201d.\\nConnect external display to device.\\n__ Now State:\\nInternal display (Primary)\\nExternal display (Extended)\\n\\n3) Open(and drag if needed) two chrome windows/ App windows.\\n__Now State:\\nInternal display (Primary) : Internal.window\\nExternal display (Extended): Monitor. window\\n__ Make note of window bounds on External display.\\n\\n4) Unplug and re-plug External display.\\n__ External display window should switch between internal and external displays using previous window bounds\\n\\n5) Change External display as primary display using Alt+ F4 / Display settings.\\n__Now State:\\nExternal display (Primary): Internal.window\\nInternal display (Extending) : Monitor.window\\n__ Make note of window bounds on External display.\\n\\n6) Unplug and replug External display.\\n__ External display window should switch between internal and external displays using previous window bounds.\\n\\n7) Switch to mirror mode and then exit mirror mode.\\n__ External display window should switch between internal and external displays using previous window bounds.\\n\\n\\n\\n\\nNote:\\nKnown Issues: crbug.com/821611 , crbug.com/821614\"",
+            "goal": "Test persistent settings of window bound placement across displays in one use session.",
+            "md5": "ab73bfd4ffde4fca7f5d49687b55869a",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FullRegression,Display,External_Display,Dual_Display,DisplayAll,OS-Chrome",
+            "tc_num": "1.2.1",
+            "title": "Windows Persistent settings for single external display",
+            "topology": null,
+            "uuid": "ca75ec4a-94d0-49a5-8074-da902262bab7"
+          },
+          "pk": 2929424,
+          "text": "Windows Persistent settings for single external display",
+          "type": "testcases"
+        },
+        {
+          "id": "eb45e1e6-5532-4833-8d2b-183659dfdb19",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309845,
+            "description": "\"Pre-condition:\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n\\nProcedure:\\n\\nSign in to the device and enable \\u201cpersistent window bounds in multi-displays scenario\\u201d.\\nConnect external display to device.\\n\\n-- Now State:\\nInternal display (Primary)\\nExternal display (Extended)\\n\\n\\n1) Open(and drag if needed) two chrome windows/ App windows.\\n\\n-- Now State:\\nInternal display (Primary) : Internal.window\\nExternal display (Extended): Monitor. window\\n-- Make note of window bounds on External display.\\n\\n\\n2) Unplug and re-plug External display.\\n-- External display window should switch between internal and external displays using previous window bounds\\n\\n\\n3) Change External display as primary display using Alt+ F4 / Display settings.\\n\\n-- Now State:\\nExternal display (Primary): Internal.window\\nInternal display (Extending) : Monitor.window\\n-- Make note of window bounds on External display.\\n\\n\\n4) Unplug and replug External display.\\n-- External display window should switch between internal and external displays using previous window bounds.\\n\\n\\n5) Switch to mirror mode and then exit mirror mode.\\n-- External display window should switch between internal and external displays using previous window bounds.\\n\\n\\nNote:\\nKnown Issues: crbug.com/821611 , crbug.com/821614\"",
+            "goal": "Test persistent settings of window bound placement across displays in one use session.",
+            "md5": "f35e9d2e55413a1bbd3a675f0c5b9ec0",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.2.2",
+            "title": "Copy of Windows Persistent settings for single external display",
+            "topology": null,
+            "uuid": "27158cd3-0eee-42c8-88ec-f668875010f1"
+          },
+          "pk": 3093008,
+          "text": "Copy of Windows Persistent settings for single external display",
+          "type": "testcases"
+        },
+        {
+          "id": "aaf01d37-e76d-4a7b-b315-0c0e5af9f346",
+          "li_attr": {
+            "author": "nobody",
+            "chapter_id": 309845,
+            "description": "\"Pre-condition:\\n1. ChromeOS device with build >= M66\\n2. External displays\\n\\n\\nProcedure:\\nSign in to the device and enable \\u201cpersistent window bounds in multi-displays scenario\\u201d.\\nConnect two external displays (M1-connected first and M2-connected second) to device.\\n__ Now State:\\nInternal display (Primary)\\nM1 display (Extended)\\nM2 display (Extended)\\n3) Open(and drag if needed) three chrome windows/ App windows.\\n__Now State:\\nInternal display (Primary) : Internal.window\\nM1 display (Extended): M1. window\\nM2 display (Extended): M2. window\\n__ Make note of window bounds on external monitors.\\n\\n4) Unplug M1 monitor.\\n__ M1.window should switch to primary display (Internal).\\n\\n5) Re-plug M1 monitor.\\n__ M1.window should switch to the M1 monitor using previous window bounds. (It should switch to the exact earlier position on M1 monitor)\\n\\n6) Repeat step 4 and 5 for M2 monitor.\\n__M2.window should switch to the exact earlier position after Re-plug.\\n\\n7) Repeat step 4 and 5 for M1 and M2 monitors simultaneously.\\n__M1.widow and M2.window should switch to the exact earlier positions after Re-plug.\\n\\n8) Change M1 monitor as primary display using Alt+ F4 / Display settings.\\n\\n\\n__Now State:\\nM1 display (Primary): Internal.window\\nM2 display (Extended): M2.window\\nInternal display (Extending) : M1.window\\n__ Make note of window bounds on external monitors.\\n\\n9) Unplug M2 monitor.\\n__ M2.window should switch to Primary display(M1 monitor).\\n\\n10) Replug M2 Monitor.\\n__ M2.window should switch to M2 monitor using exact previous window bounds.\\n\\n11) Repeat step 8,9 and 10 by changing M2 monitor as primary display.\\n__ M1.window should switch between M1 and M2 by using exact previous window bounds.\\n\\n12) Switch to mirror mode and then exit mirror mode\\n__ M1.window and M2.window should switch to the exact previous window bounds after exiting mirror mode.\\n\\n\\nNote:\\nKnown Issues: crbug.com/821611 , crbug.com/821614\"",
+            "goal": "Test persistent settings of window bound placement across displays in one use session.",
+            "md5": "e96f36817eb1cb57df4acfa9feeaafbb",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FullRegression,Display,External_Display,Dual_Display,DisplayAll,OS-Chrome",
+            "tc_num": "1.2.3",
+            "title": "Windows Persistent settings for dual external display",
+            "topology": null,
+            "uuid": "19db2f26-95eb-42fa-a6ea-0815f51cfbbb"
+          },
+          "pk": 2929425,
+          "text": "Windows Persistent settings for dual external display",
+          "type": "testcases"
+        },
+        {
+          "id": "f0f67b25-19b8-488b-9eef-ae2793cb668e",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309845,
+            "description": "\"Pre-condition:\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n\\nProcedure:\\n\\nSign in to the device and enable \\u201cpersistent window bounds in multi-displays scenario\\u201d.\\nConnect two external displays (M1-connected first and M2-connected second) to device.\\n\\n-- Now State:\\nInternal display (Primary)\\nM1 display (Extended)\\nM2 display (Extended)\\n\\n\\n1) Open(and drag if needed) three chrome windows/ App windows.\\n\\n-- Now State:\\nInternal display (Primary) : Internal.window\\nM1 display (Extended): M1. window\\nM2 display (Extended): M2. window\\n\\n-- Make note of window bounds on external monitors.\\n\\n\\n2) Unplug M1 monitor.\\n-- M1.window should switch to primary display (Internal).\\n\\n3) Re-plug M1 monitor.\\n-- M1.window should switch to the M1 monitor using previous window bounds. (It should switch to the exact earlier position on M1 monitor)\\n\\n\\n4) Repeat step 4 and 5 for M2 monitor.\\n-- M2.window should switch to the exact earlier position after Re-plug.\\n\\n\\n5) Repeat step 4 and 5 for M1 and M2 monitors simultaneously.\\n-- M1.widow and M2.window should switch to the exact earlier positions after Re-plug.\\n\\n\\n6) Change M1 monitor as primary display using Alt+ F4 / Display settings.\\n\\n-- Now State:\\nM1 display (Primary): Internal.window\\nM2 display (Extended): M2.window\\nInternal display (Extending) : M1.window\\n-- Make note of window bounds on external monitors.\\n\\n\\n7) Unplug M2 monitor.\\n-- M2.window should switch to Primary display(M1 monitor).\\n\\n8) Replug M2 Monitor.\\n-- M2.window should switch to M2 monitor using exact previous window bounds.\\n\\n9) Repeat step 8,9 and 10 by changing M2 monitor as primary display.\\n-- M1.window should switch between M1 and M2 by using exact previous window bounds.\\n\\n10) Switch to mirror mode and then exit mirror mode\\n-- M1.window and M2.window should switch to the exact previous window bounds after exiting mirror mode.\\n\\n\\nNote:\\nKnown Issues: crbug.com/821611 , crbug.com/821614\"",
+            "goal": "Test persistent settings of window bound placement across displays in one use session.",
+            "md5": "8a150f23e6cf66d08fb5f92d609a8e42",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.2.4",
+            "title": "Copy of Windows Persistent settings for dual external display",
+            "topology": null,
+            "uuid": "b8bb5d2a-e209-4a25-ad9d-a878b7fb739c"
+          },
+          "pk": 3093009,
+          "text": "Copy of Windows Persistent settings for dual external display",
+          "type": "testcases"
+        }
+      ],
+      "id": "eae6fea4-d5f2-4496-b685-721a128e0d56-Windows Persistent settings",
+      "li_attr": {
+        "chap_num": "1.2",
+        "description": "\"\"",
+        "md5": "be9e2df733ef1f5fd69a3e80992bb4b3",
+        "rel": "testsuites",
+        "tags": "",
+        "title": "Windows Persistent settings",
+        "uuid": "eae6fea4-d5f2-4496-b685-721a128e0d56"
+      },
+      "pk": 309845,
+      "text": "Windows Persistent settings",
+      "type": "testsuites"
+    },
+    {
+      "children": [
+        {
+          "id": "27a7841e-a7c8-422d-b4b1-d7af0cbd643e",
+          "li_attr": {
+            "author": "sontis",
+            "chapter_id": 309846,
+            "description": "\"Type-C connectors: \\n- Type-C - Type-A \\n- Type-C - to - HDMI adapter \\n- Type-C - to - DP \\n- Type-C - to - Type-C\\n\\nDisplays: TVs, Monitors - 1080, 4K\\n\\n\\nPrecondition\\n\\nBoot and sign-in as user \\n\\n\\nProcedure\\n\\n1) Use 1080 monitors. Insert first TypeC on A port, then insert second TypeC on B port. Observe and\\n a) Confirm both external displays show intended view\\n\\n1.1) Remove connector from A(while both plugged). Observe and\\n a) Confirm display on B is showing intended view\\n\\n1.2) Remove connector from B(while both plugged). Observe and\\n a) Confirm display on A is showing intended view\\n\\n2) Execute 1) (and sub-points) with 4K monitors\\n\\n3) Execute 1) (and sub-points) with 4K on A and 1080 on B monitors\\n\\n4) Execute 1) (and sub-points) with 1080 on A and 4K on B monitors\\n\\n5) Repeat 1) - 4) for other TypeC connectors(per monitor side port)  \"",
+            "goal": "Dual Display usage",
+            "md5": "6f75cbaa2212cd0bdcbe7344ec23023b",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FullRegression,Display,External_Display,ForPartners,TheRest,USB_TypeC,Type-C peripheral,Samus,Type-C,OS-Chrome,kernelnext",
+            "tc_num": "1.3.1",
+            "title": "Multi-port Type-C External Display testing",
+            "topology": null,
+            "uuid": "b6b24920-f1b6-4c5b-97b4-8b6011d3fdca"
+          },
+          "pk": 2929430,
+          "text": "Multi-port Type-C External Display testing",
+          "type": "testcases"
+        },
+        {
+          "id": "c384cbbf-b066-437b-b254-74fc38228b07",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309846,
+            "description": "\"Precondition\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\nBoot and sign-in as user \\n\\n\\nProcedure\\n\\n1) Use 1080 monitors. Insert first Type-C on A port, then insert second Type-C on B port. Observe and\\n a) Confirm both external displays show intended view\\n\\n1.1) Remove connector from A(while both plugged). Observe and\\n a) Confirm display on B is showing intended view\\n\\n1.2) Remove connector from B(while both plugged). Observe and\\n a) Confirm display on A is showing intended view\\n\\n2) Execute 1) (and sub-points) with 4K monitors\\n\\n3) Execute 1) (and sub-points) with 4K on A and 1080 on B monitors\\n\\n4) Execute 1) (and sub-points) with 1080 on A and 4K on B monitors\\n\\n5) Repeat 1) - 4) for other Type-C connectors(per monitor side port)  \"",
+            "goal": "Dual Display usage",
+            "md5": "936a964749c8931f78cf6212f38f84e6",
+            "priority": 1,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.3.2",
+            "title": "Copy of Multi-port Type-C External Display testing",
+            "topology": null,
+            "uuid": "5d03b141-a376-4254-8c1c-25a46e58cddb"
+          },
+          "pk": 3093010,
+          "text": "Copy of Multi-port Type-C External Display testing",
+          "type": "testcases"
+        },
+        {
+          "id": "81092553-8bda-4bec-9d15-d7bf9ab4a838",
+          "li_attr": {
+            "author": "sontis",
+            "chapter_id": 309846,
+            "description": "\"Precondition\\n1) Chromeos Device with USB type-c support (ex: Samus)\\n2) Multiport typeC adapter (i.e. Apple dongle).\\n3) Cables to connect external display ( ex: HDMI to HDMI)\\n4) USB Peripherals (USB stick, USB mouse, USB keyboard, USB webcam, USB head set)\\n\\nTesting scenarios:\\n1. Hotplug the [non-powered] dongle alone\\n2. Power up the dongle\\n3. Hotplug peripheral(s) - one by one, or in combination - while dongle is plugged to chromeos device\\n4. Unplug and plug back the dongle while all peripherals are plugged to the dongle\\n4. Unplug, flip, and plug back the dongle while all peripherals are plugged to the dongle\\n5. Reboot the chromeos device with peripherals connected to the powered dongle.\\n6. Remove power from dongle and reboot chromeos device\\n7. Power up, Power down, and Power up again the dongle while all ports are busy with ExtDisplay and HID(kb, or mouse)\\n8. SUSPEND/RESUME \\n8.1. Plug &gt; Suspend &gt; Resume.\\n8.2. Plug &gt; Suspend &gt; Unplug &gt; Resume &gt; Plug\\n8.3. Unplug &gt; Suspend &gt; Plug &gt; Resume\\n\\nProcedure \\nNote: Cover all testing scenarios for the following conditions.\\n\\n1)  Use the multi-port dongle(i.e. Apple adapter whith HDMI and USB-A ports)  and with power source(high- and low- voltage adapter)\\n -- User should able to charge the chromeos device using the powered dongle \\n -- charging(high or low voltage) icon present(max 3 seconds to appear) when charging, and disappear(max 3 seconds) when power is disconnected(normal/discharging icon present instead).\\n -- 'power_supply_info' output should be relevant.\\n -- Peripherals should be functioning as expected in both powered and non-powered dongle screnario.\\n\\n3) Check the peripherals discovery/mount/unmount times.\\n-- Mount/Unmount should not take longer than acceptable time.\\n\\n9) Convert the device into Tablet Mode and repeat the above steps in tablet mode.\\n    Note: Onboard physical keyboard and Trackpad does not work in tablet mode.  \"",
+            "goal": "USB Type-C multi-port dongle should work properly.",
+            "md5": "4b179d6365ec9c4e44a1fdf7d9e9555c",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FSI,FullRegression,Audio,Display,ForPartners,TheRest,USB_TypeC,Type-C peripheral,Type-C,OS-Chrome",
+            "tc_num": "1.3.3",
+            "title": "USB Type-C multi-port dongle testing.",
+            "topology": null,
+            "uuid": "b7e9a131-2a58-4653-a2df-0a0e2de64264"
+          },
+          "pk": 2929431,
+          "text": "USB Type-C multi-port dongle testing.",
+          "type": "testcases"
+        },
+        {
+          "id": "9ed277ad-fb91-459f-94d1-eafdeab91266",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309846,
+            "description": "\"Precondition\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n\\nTesting scenarios:\\n\\n1. Hot-plug the [non-powered] dongle alone\\n2. Power up the dongle\\n3. Hot-plug peripheral(s) - one by one, or in combination - while dongle is plugged to Chrome-OS device\\n4. Unplug and plug back the dongle while all peripherals are plugged to the dongle\\n4. Unplug, flip, and plug back the dongle while all peripherals are plugged to the dongle\\n5. Reboot the  Chrome-OS device with peripherals connected to the powered dongle.\\n6. Remove power from dongle and reboot Chrome-OS device\\n7. Power up, Power down, and Power up again the dongle while all ports are busy with Ext-Display and HID(keyboard, or mouse)\\n8. SUSPEND/RESUME \\n8.1. Plug &gt; Suspend &gt; Resume.\\n8.2. Plug &gt; Suspend &gt; Unplug &gt; Resume &gt; Plug\\n8.3. Unplug &gt; Suspend &gt; Plug &gt; Resume\\n\\nProcedure \\nNote: Cover all testing scenarios for the following conditions.\\n\\n1)  Use the multi-port dongle(i.e. Apple adapter with HDMI and USB-A ports)  and with power source(high- and low- voltage adapter)\\n -- User should able to charge the Chrome-OS device using the powered dongle \\n -- charging(high or low voltage) icon present(max 3 seconds to appear) when charging, and disappear(max 3 seconds) when power is disconnected(normal/discharging icon present instead).\\n -- 'power_supply_info' output should be relevant.\\n -- Peripherals should be functioning as expected in both powered and non-powered dongle scenario.\\n\\n3) Check the peripherals discovery/mount/unmounted times.\\n-- Mount/Unmounted should not take longer than acceptable time.\\n\\n9) Convert the device into Tablet Mode and repeat the above steps in tablet mode.\\n    Note: Onboard physical keyboard and Track-pad does not work in tablet mode.  \"",
+            "goal": "USB Type-C multi-port dongle should work properly.",
+            "md5": "69eb26607d22b4d4eb6518395bb4e251",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.3.4",
+            "title": "Copy of USB Type-C multi-port dongle testing.",
+            "topology": null,
+            "uuid": "b1dc5967-d740-4c8c-ac11-093ae36ce99e"
+          },
+          "pk": 3093011,
+          "text": "Copy of USB Type-C multi-port dongle testing.",
+          "type": "testcases"
+        },
+        {
+          "id": "17066081-aeea-4f8b-8371-44bdf11e9557",
+          "li_attr": {
+            "author": "sontis",
+            "chapter_id": 309846,
+            "description": "\"Precondition\\n1) Chromeos Device with USB type-c support (ex: Samus)\\n2) USB Type-C multi-port docking station(i.e. HP Elite).\\n3) Cables to connect external display ( ex: HDMI to HDMI, DP to DP...)\\n4) All USB Peripherals (USB stick, USB mouse, USB keyboard, USB webcam, USB head set..)\\n5) Ethernet connection.\\n6) 3.5mm head set.\\n\\nTesting scenarios:\\n1. Boot the device with dock connected\\n2. Hotplug the dock alone\\n3. Hotplug the dock while all peripherals are plugged to the dock\\n4. Hotplug peripheral(s) - one by one, or in combination - while docking station is plugged to chromeos device\\n5. Docking station only - Power up, Power down, and Up again the dock while all ports are busy with ExtDisplay and HID(kb, or mouse)\\n6. SUSPEND/RESUME \\n6.1. Plug &gt; Suspend &gt; Resume.\\n6.2. Plug &gt; Suspend &gt; Unplug &gt; Resume &gt; Plug\\n6.3. Unplug &gt; Suspend &gt; Plug &gt; Resume\\n\\nProcedure \\nNote: Cover all testing scenarios for the following steps.\\n\\n1)  Use the multi-port docking station with peripheral ports used/plugged, with power source\\n -- User should able to charge the chromeos device using powered dock station - charging icon present, 'power_supply_info' output.\\n -- Peripherals should be functioning as expected\\n\\n2) Confirm the docking station(i.e. HP Elite) as a power input. Use 'power_supply_info' to confirm power source.\\n -- User should able to charge the chromeos device using dock station.\\n\\n3) Check the Docking station mount/unmount times on USB storage.\\n-- Mount/Unmount should not take longer than acceptable time.\\n\\n4) Use the docking station to connect the external display.\\n-- User should able to use all the display ports from docking station successfully.\\n\\n5) Check Ethernet port on docking station.\\n-- Ethernet port should work and connect successfully.\\n\\n6) Check all USB (2.0 and 3.0) ports available on docking station.\\n-- All the ports should work properly for the tested peripherals.\\n\\n7) Check 3.5mm port.\\n-- 3.5mm port should work properly with the audio peripheral. \\n[In most cases audio jack is presented as USB audio on chromeos device audio settings/uber menu]\\n\\n8) Make sure you covered all the available ports on docking station.\\n\\n9) Convert the device into Tablet Mode and repeat the above steps in tablet mode.\\n    Note: Onboard physical keyboard and trackpad does not work in tablet mode.  \"",
+            "goal": "USB Type-C Multi-Port adapter and Docking station should work properly.",
+            "md5": "6f287da01c8f065471d1af7a941c786f",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "NA",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "FSI,FullRegression,Audio,Display,ForPartners,TheRest,DockingStation,USB_TypeC,Type-C peripheral,Type-C,OS-Chrome",
+            "tc_num": "1.3.5",
+            "title": "USB Type-C Docking station testing.",
+            "topology": null,
+            "uuid": "d22e3b91-e2f0-4478-b621-04476f7bb2e0"
+          },
+          "pk": 2929432,
+          "text": "USB Type-C Docking station testing.",
+          "type": "testcases"
+        },
+        {
+          "id": "6c0926e9-b582-4ff1-ba36-47eea48ac366",
+          "li_attr": {
+            "author": "allen",
+            "chapter_id": 309846,
+            "description": "\"Precondition\\n\\nExternal Displays to Cover:  see link below\\n- https://docs.google.com/spreadsheets/d/1lfUltAdHsupkMe9EnFpeCQlr-hWdAKs88aeYuraS-OE/edit#gid=1149518558\\n\\n\\n\\nTesting scenarios:\\n1. Boot the device with dock connected\\n2. Hot-plug the dock alone\\n3. Hot-plug the dock while all peripherals are plugged to the dock\\n4. Hot-plug peripheral(s) - one by one, or in combination - while docking station is plugged to Chrome-OS device\\n5. Docking station only - Power up, Power down, and Up again the dock while all ports are busy with Ext-Display and HID (keyboard, or mouse)\\n6. SUSPEND/RESUME \\n6.1. Plug &gt; Suspend &gt; Resume.\\n6.2. Plug &gt; Suspend &gt; Unplug &gt; Resume &gt; Plug\\n6.3. Unplug &gt; Suspend &gt; Plug &gt; Resume\\n\\nProcedure \\nNote: Cover all testing scenarios for the following steps.\\n\\n1)  Use the multi-port docking station with peripheral ports used/plugged, with power source\\n -- User should able to charge the Chrome-OS device using powered dock station - charging icon present, 'power_supply_info' output.\\n -- Peripherals should be functioning as expected\\n\\n2) Confirm the docking station(i.e. HP Elite) as a power input. Use 'power_supply_info' to confirm power source.\\n -- User should able to charge the Chrome-OS device using dock station.\\n\\n3) Check the Docking station mount/unmounted times on USB storage.\\n-- Mount/Unmounted should not take longer than acceptable time.\\n\\n4) Use the docking station to connect the external display.\\n-- User should able to use all the display ports from docking station successfully.\\n\\n5) Check Ethernet port on docking station.\\n-- Ethernet port should work and connect successfully.\\n\\n6) Check all USB (2.0 and 3.0) ports available on docking station.\\n-- All the ports should work properly for the tested peripherals.\\n\\n7) Check 3.5mm port.\\n-- 3.5mm port should work properly with the audio peripheral. \\n[In most cases audio jack is presented as USB audio on Chrome-OS device audio settings/uber menu]\\n\\n8) Make sure you covered all the available ports on docking station.\\n\\n9) Convert the device into Tablet Mode and repeat the above steps in tablet mode.\\n    Note: Onboard physical keyboard and track-pad does not work in tablet mode.  \"",
+            "goal": "USB Type-C Multi-Port adapter and Docking station should work properly.",
+            "md5": "7f792c8de2ef0df68fc7a4ef6607a39e",
+            "priority": 0,
+            "rel": "testcases",
+            "requirement": "",
+            "script": [],
+            "script_name": "",
+            "script_owner": null,
+            "script_param": null,
+            "script_status": "Needs Evaluation",
+            "script_target": null,
+            "script_type": "Angel",
+            "tags": "Test",
+            "tc_num": "1.3.6",
+            "title": "Copy of USB Type-C Docking station testing.",
+            "topology": null,
+            "uuid": "060d08af-758e-4cff-82d3-8d8f7b9c2a63"
+          },
+          "pk": 3093012,
+          "text": "Copy of USB Type-C Docking station testing.",
+          "type": "testcases"
+        }
+      ],
+      "id": "b7926f8e-1459-4a8a-a650-449283a0b137-Type-C  External Display tests",
+      "li_attr": {
+        "chap_num": "1.3",
+        "description": "\"Audio, external webcam, storage & external monitor peripherals work when connecting via Type-C adapter to DUT(Device Under Test) \"",
+        "md5": "1636e26fa6f2ff9f4419419ca9958d0f",
+        "rel": "testsuites",
+        "tags": "Type-C peripheral",
+        "title": "Type-C  External Display tests",
+        "uuid": "b7926f8e-1459-4a8a-a650-449283a0b137"
+      },
+      "pk": 309846,
+      "text": "Type-C  External Display tests",
+      "type": "testsuites"
+    }
+  ],
+  "id": 36101,
+  "li_attr": {
+    "author": "sontis",
+    "automated": 0,
+    "create_date": "2020-06-10 17:16:13",
+    "docnum": 36101,
+    "group": "Default",
+    "introduction": "\"\"",
+    "manual": 27,
+    "read_group": "",
+    "rel": "testplan",
+    "revision": "16",
+    "status": "Draft",
+    "team_id": 3,
+    "title": "chromeos-test@ [ExternalDisplay]",
+    "total": 27,
+    "write_group": ""
+  },
+  "pk": 36101,
+  "text": "chromeos-test@ [ExternalDisplay]",
+  "type": "testplan"
+}
diff --git a/provingground/testtracker/readme.md b/provingground/testtracker/readme.md
new file mode 100644
index 0000000..38c47d8
--- /dev/null
+++ b/provingground/testtracker/readme.md
@@ -0,0 +1,13 @@
+# Testtracker test case repository
+
+This directory contains test plans from testtracker. This project
+is currently in a pilot phase and if it proves useful, we will
+roll this guidance out more broadly to other teams.
+
+## Resources
+
+* The Google Spreadsheets extension we used to make this
+  possible is located at [go/tt-editor](http://go/tt-editor).
+* More documentation can be [found here in company docs](
+https://g3doc.corp.google.com/company/teams/chrome/ops/chromeos\
+/engprod/video/tt-to-repo.md).
