)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1001810,"name":"Daniel Anselmi","email":"danselmi@gmx.ch","username":"danselmi"},"change_message_id":"1e0238d3ea72d07d66979dee607ad40e3943e514","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"5d2c0543_8272694e","updated":"2026-09-04 08:27:22.000000000","message":"Not really a required feature or fix.\nBut for debugging the configuration it makes sense to be able see what has been created / connected.\nThis patch only makes this information accessible.","commit_id":"1111cc0ac9c7af91d9c206a663d68b7242a578e8"}],"doc/openocd.texi":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b35b508c5ff0d5ef0e6148039b7ad2b031f63032","unresolved":true,"context_lines":[{"line_number":12974,"context_line":""},{"line_number":12975,"context_line":"@end deffn"},{"line_number":12976,"context_line":""},{"line_number":12977,"context_line":"@deffn {Command} {ipdbg list-hubs}"},{"line_number":12978,"context_line":"List the known IPDBG hubs with their name."},{"line_number":12979,"context_line":"@end deffn"},{"line_number":12980,"context_line":""}],"source_content_type":"text/x-texinfo","patch_set":4,"id":"38410fee_a1137967","line":12977,"updated":"2026-09-04 09:43:37.000000000","message":"what about `ipdbg names` to align it with other frameworks in OpenOCD?","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8482b38886a495dcc0d6a9ba7b1f284714a7ed73","unresolved":false,"context_lines":[{"line_number":12974,"context_line":""},{"line_number":12975,"context_line":"@end deffn"},{"line_number":12976,"context_line":""},{"line_number":12977,"context_line":"@deffn {Command} {ipdbg list-hubs}"},{"line_number":12978,"context_line":"List the known IPDBG hubs with their name."},{"line_number":12979,"context_line":"@end deffn"},{"line_number":12980,"context_line":""}],"source_content_type":"text/x-texinfo","patch_set":4,"id":"09247410_05919065","line":12977,"in_reply_to":"38410fee_a1137967","updated":"2026-09-06 16:29:57.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1001810,"name":"Daniel Anselmi","email":"danselmi@gmx.ch","username":"danselmi"},"change_message_id":"65f0fe96e8359d63b2a4ed4b1563cd25bb67bc3e","unresolved":false,"context_lines":[{"line_number":12974,"context_line":""},{"line_number":12975,"context_line":"@end deffn"},{"line_number":12976,"context_line":""},{"line_number":12977,"context_line":"@deffn {Command} {ipdbg list-hubs}"},{"line_number":12978,"context_line":"List the known IPDBG hubs with their name."},{"line_number":12979,"context_line":"@end deffn"},{"line_number":12980,"context_line":""}],"source_content_type":"text/x-texinfo","patch_set":4,"id":"3d3567db_b5dcc112","line":12977,"in_reply_to":"38410fee_a1137967","updated":"2026-09-28 19:46:53.000000000","message":"Hope I understoodnd that right.\nIt\u0027s now \u0027ipdbg names\u0027 instead of \u0027ipdbg list-hubs\u0027.","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b35b508c5ff0d5ef0e6148039b7ad2b031f63032","unresolved":true,"context_lines":[{"line_number":12979,"context_line":"@end deffn"},{"line_number":12980,"context_line":""},{"line_number":12981,"context_line":""},{"line_number":12982,"context_line":"@deffn {Command} {ipdbg list-services}"},{"line_number":12983,"context_line":"List the active services with their tcp port numbers and hub-names."},{"line_number":12984,"context_line":"@end deffn"},{"line_number":12985,"context_line":""}],"source_content_type":"text/x-texinfo","patch_set":4,"id":"69f5e69c_bea0fc5f","line":12982,"updated":"2026-09-04 09:43:37.000000000","message":"we already have a command `services` to list GDB, TCL and Telnet services.\nFor consistency, I would prefer using `ipdbg services` here. What do you think about it?\nI also start thinking that ipdbg is not well integrated with the servers/services of OpenOCD. Maybe this should be taken in consideration for a future rework.","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8482b38886a495dcc0d6a9ba7b1f284714a7ed73","unresolved":false,"context_lines":[{"line_number":12979,"context_line":"@end deffn"},{"line_number":12980,"context_line":""},{"line_number":12981,"context_line":""},{"line_number":12982,"context_line":"@deffn {Command} {ipdbg list-services}"},{"line_number":12983,"context_line":"List the active services with their tcp port numbers and hub-names."},{"line_number":12984,"context_line":"@end deffn"},{"line_number":12985,"context_line":""}],"source_content_type":"text/x-texinfo","patch_set":4,"id":"a7a8dcb1_53816b03","line":12982,"in_reply_to":"69f5e69c_bea0fc5f","updated":"2026-09-06 16:29:57.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1001810,"name":"Daniel Anselmi","email":"danselmi@gmx.ch","username":"danselmi"},"change_message_id":"65f0fe96e8359d63b2a4ed4b1563cd25bb67bc3e","unresolved":false,"context_lines":[{"line_number":12979,"context_line":"@end deffn"},{"line_number":12980,"context_line":""},{"line_number":12981,"context_line":""},{"line_number":12982,"context_line":"@deffn {Command} {ipdbg list-services}"},{"line_number":12983,"context_line":"List the active services with their tcp port numbers and hub-names."},{"line_number":12984,"context_line":"@end deffn"},{"line_number":12985,"context_line":""}],"source_content_type":"text/x-texinfo","patch_set":4,"id":"c077fd47_b3b45113","line":12982,"in_reply_to":"69f5e69c_bea0fc5f","updated":"2026-09-28 19:46:53.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"}],"src/server/ipdbg.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b35b508c5ff0d5ef0e6148039b7ad2b031f63032","unresolved":true,"context_lines":[{"line_number":929,"context_line":"{"},{"line_number":930,"context_line":"\tstruct ipdbg_service *service;"},{"line_number":931,"context_line":"\tstruct ipdbg_hub *hub \u003d CMD_DATA;"},{"line_number":932,"context_line":"\tint i \u003d 0;"},{"line_number":933,"context_line":""},{"line_number":934,"context_line":"\tfor (service \u003d ipdbg_first_service; service; service \u003d service-\u003enext) {"},{"line_number":935,"context_line":"\t\tif (hub \u003d\u003d service-\u003ehub) {"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"975b2d0a_e305332e","line":932,"updated":"2026-09-04 09:43:37.000000000","message":"Please enforce the check of the command line:\n```\nif (CMD_ARGS)\n\treturn ERROR_COMMAND_SYNTAX_ERROR;\n```\nalso for the other command","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8482b38886a495dcc0d6a9ba7b1f284714a7ed73","unresolved":false,"context_lines":[{"line_number":929,"context_line":"{"},{"line_number":930,"context_line":"\tstruct ipdbg_service *service;"},{"line_number":931,"context_line":"\tstruct ipdbg_hub *hub \u003d CMD_DATA;"},{"line_number":932,"context_line":"\tint i \u003d 0;"},{"line_number":933,"context_line":""},{"line_number":934,"context_line":"\tfor (service \u003d ipdbg_first_service; service; service \u003d service-\u003enext) {"},{"line_number":935,"context_line":"\t\tif (hub \u003d\u003d service-\u003ehub) {"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"0611b538_84dbdf4a","line":932,"in_reply_to":"975b2d0a_e305332e","updated":"2026-09-06 16:29:57.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1001810,"name":"Daniel Anselmi","email":"danselmi@gmx.ch","username":"danselmi"},"change_message_id":"65f0fe96e8359d63b2a4ed4b1563cd25bb67bc3e","unresolved":false,"context_lines":[{"line_number":929,"context_line":"{"},{"line_number":930,"context_line":"\tstruct ipdbg_service *service;"},{"line_number":931,"context_line":"\tstruct ipdbg_hub *hub \u003d CMD_DATA;"},{"line_number":932,"context_line":"\tint i \u003d 0;"},{"line_number":933,"context_line":""},{"line_number":934,"context_line":"\tfor (service \u003d ipdbg_first_service; service; service \u003d service-\u003enext) {"},{"line_number":935,"context_line":"\t\tif (hub \u003d\u003d service-\u003ehub) {"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"5676b824_f93ddbd5","line":932,"in_reply_to":"975b2d0a_e305332e","updated":"2026-09-28 19:46:53.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b35b508c5ff0d5ef0e6148039b7ad2b031f63032","unresolved":true,"context_lines":[{"line_number":934,"context_line":"\tfor (service \u003d ipdbg_first_service; service; service \u003d service-\u003enext) {"},{"line_number":935,"context_line":"\t\tif (hub \u003d\u003d service-\u003ehub) {"},{"line_number":936,"context_line":"\t\t\tif (service-\u003econnection.closed)"},{"line_number":937,"context_line":"\t\t\t\tcommand_print(CMD, \"#%\" PRIu32 \": using port %\" PRIu32 \", listening\","},{"line_number":938,"context_line":"\t\t\t\t\ti++, service-\u003eport);"},{"line_number":939,"context_line":"\t\t\telse"},{"line_number":940,"context_line":"\t\t\t\tcommand_print(CMD, \"#%\" PRIu32 \": using port %\" PRIu32 \", connected\","}],"source_content_type":"text/x-csrc","patch_set":4,"id":"1ba7e958_bb4363f2","line":937,"updated":"2026-09-04 09:43:37.000000000","message":"See the implementation of command `services`. It produces a Tcl list of Tcl dict that can be easily parsed in a Tcl script.\nMaybe the same approach could be used here","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1001810,"name":"Daniel Anselmi","email":"danselmi@gmx.ch","username":"danselmi"},"change_message_id":"65f0fe96e8359d63b2a4ed4b1563cd25bb67bc3e","unresolved":false,"context_lines":[{"line_number":934,"context_line":"\tfor (service \u003d ipdbg_first_service; service; service \u003d service-\u003enext) {"},{"line_number":935,"context_line":"\t\tif (hub \u003d\u003d service-\u003ehub) {"},{"line_number":936,"context_line":"\t\t\tif (service-\u003econnection.closed)"},{"line_number":937,"context_line":"\t\t\t\tcommand_print(CMD, \"#%\" PRIu32 \": using port %\" PRIu32 \", listening\","},{"line_number":938,"context_line":"\t\t\t\t\ti++, service-\u003eport);"},{"line_number":939,"context_line":"\t\t\telse"},{"line_number":940,"context_line":"\t\t\t\tcommand_print(CMD, \"#%\" PRIu32 \": using port %\" PRIu32 \", connected\","}],"source_content_type":"text/x-csrc","patch_set":4,"id":"c8234072_f5e17516","line":937,"in_reply_to":"1ba7e958_bb4363f2","updated":"2026-09-28 19:46:53.000000000","message":"Both \u0027services\u0027 produce a tcl compatible output now.\nI also adjusted \u0027ipdbg names\u0027 accordingly.","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8482b38886a495dcc0d6a9ba7b1f284714a7ed73","unresolved":false,"context_lines":[{"line_number":934,"context_line":"\tfor (service \u003d ipdbg_first_service; service; service \u003d service-\u003enext) {"},{"line_number":935,"context_line":"\t\tif (hub \u003d\u003d service-\u003ehub) {"},{"line_number":936,"context_line":"\t\t\tif (service-\u003econnection.closed)"},{"line_number":937,"context_line":"\t\t\t\tcommand_print(CMD, \"#%\" PRIu32 \": using port %\" PRIu32 \", listening\","},{"line_number":938,"context_line":"\t\t\t\t\ti++, service-\u003eport);"},{"line_number":939,"context_line":"\t\t\telse"},{"line_number":940,"context_line":"\t\t\t\tcommand_print(CMD, \"#%\" PRIu32 \": using port %\" PRIu32 \", connected\","}],"source_content_type":"text/x-csrc","patch_set":4,"id":"5a1be00e_eb447562","line":937,"in_reply_to":"1ba7e958_bb4363f2","updated":"2026-09-06 16:29:57.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b35b508c5ff0d5ef0e6148039b7ad2b031f63032","unresolved":true,"context_lines":[{"line_number":943,"context_line":"\t}"},{"line_number":944,"context_line":""},{"line_number":945,"context_line":"\tif (i \u003d\u003d 0)"},{"line_number":946,"context_line":"\t\tcommand_print(CMD, \"no services were started\");"},{"line_number":947,"context_line":""},{"line_number":948,"context_line":"\treturn ERROR_OK;"},{"line_number":949,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"a83b762c_43a241d8","line":946,"updated":"2026-09-04 09:43:37.000000000","message":"For Tcl parsing, empty output would be preferred","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8482b38886a495dcc0d6a9ba7b1f284714a7ed73","unresolved":false,"context_lines":[{"line_number":943,"context_line":"\t}"},{"line_number":944,"context_line":""},{"line_number":945,"context_line":"\tif (i \u003d\u003d 0)"},{"line_number":946,"context_line":"\t\tcommand_print(CMD, \"no services were started\");"},{"line_number":947,"context_line":""},{"line_number":948,"context_line":"\treturn ERROR_OK;"},{"line_number":949,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"696c66ad_ed07a23c","line":946,"in_reply_to":"a83b762c_43a241d8","updated":"2026-09-06 16:29:57.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1001810,"name":"Daniel Anselmi","email":"danselmi@gmx.ch","username":"danselmi"},"change_message_id":"65f0fe96e8359d63b2a4ed4b1563cd25bb67bc3e","unresolved":false,"context_lines":[{"line_number":943,"context_line":"\t}"},{"line_number":944,"context_line":""},{"line_number":945,"context_line":"\tif (i \u003d\u003d 0)"},{"line_number":946,"context_line":"\t\tcommand_print(CMD, \"no services were started\");"},{"line_number":947,"context_line":""},{"line_number":948,"context_line":"\treturn ERROR_OK;"},{"line_number":949,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"85a7df78_4ac86540","line":946,"in_reply_to":"a83b762c_43a241d8","updated":"2026-09-28 19:46:53.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"b35b508c5ff0d5ef0e6148039b7ad2b031f63032","unresolved":true,"context_lines":[{"line_number":971,"context_line":"\t\t.name \u003d \"list-services\","},{"line_number":972,"context_line":"\t\t.handler \u003d handle_ipdbg_hub_list_services_command,"},{"line_number":973,"context_line":"\t\t.mode \u003d COMMAND_ANY,"},{"line_number":974,"context_line":"\t\t.help \u003d \"List services of IPDBG Hub.\","},{"line_number":975,"context_line":"\t},"},{"line_number":976,"context_line":"\tCOMMAND_REGISTRATION_DONE"},{"line_number":977,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"ab807464_79bb4f4e","line":974,"updated":"2026-09-04 09:43:37.000000000","message":"The help string should not have the trailing \u0027.\u0027. This is valid for the other commands too, but to be fixed eventually in a separate patch.\nAdd\n`.usage \u003d \"\",`\notherwise you will have a message at start\n`BUG: command \u0027XXX\u0027 does not have the \u0027.usage\u0027 field filled out`","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8482b38886a495dcc0d6a9ba7b1f284714a7ed73","unresolved":false,"context_lines":[{"line_number":971,"context_line":"\t\t.name \u003d \"list-services\","},{"line_number":972,"context_line":"\t\t.handler \u003d handle_ipdbg_hub_list_services_command,"},{"line_number":973,"context_line":"\t\t.mode \u003d COMMAND_ANY,"},{"line_number":974,"context_line":"\t\t.help \u003d \"List services of IPDBG Hub.\","},{"line_number":975,"context_line":"\t},"},{"line_number":976,"context_line":"\tCOMMAND_REGISTRATION_DONE"},{"line_number":977,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"c6f92be0_57b97ddc","line":974,"in_reply_to":"ab807464_79bb4f4e","updated":"2026-09-06 16:29:57.000000000","message":"Done","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1001810,"name":"Daniel Anselmi","email":"danselmi@gmx.ch","username":"danselmi"},"change_message_id":"65f0fe96e8359d63b2a4ed4b1563cd25bb67bc3e","unresolved":false,"context_lines":[{"line_number":971,"context_line":"\t\t.name \u003d \"list-services\","},{"line_number":972,"context_line":"\t\t.handler \u003d handle_ipdbg_hub_list_services_command,"},{"line_number":973,"context_line":"\t\t.mode \u003d COMMAND_ANY,"},{"line_number":974,"context_line":"\t\t.help \u003d \"List services of IPDBG Hub.\","},{"line_number":975,"context_line":"\t},"},{"line_number":976,"context_line":"\tCOMMAND_REGISTRATION_DONE"},{"line_number":977,"context_line":"};"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"63429b9e_a40bbb77","line":974,"in_reply_to":"ab807464_79bb4f4e","updated":"2026-09-28 19:46:53.000000000","message":"trailing \u0027.\u0027 here: https://review.openocd.org/c/openocd/+/9938","commit_id":"6735c96ca95bbd5dc046c0cb7535f1eaa8c79eca"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8482b38886a495dcc0d6a9ba7b1f284714a7ed73","unresolved":true,"context_lines":[{"line_number":1152,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":1153,"context_line":""},{"line_number":1154,"context_line":"\tfor (hub \u003d ipdbg_first_hub; hub; hub \u003d hub-\u003enext) {"},{"line_number":1155,"context_line":"\t\tcommand_print(CMD, \"{\");"},{"line_number":1156,"context_line":"\t\tcommand_print(CMD, \" name %s\", hub-\u003ename);"},{"line_number":1157,"context_line":"\t\tcommand_print(CMD, \"}\");"},{"line_number":1158,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"736daea9_dc56cc3e","line":1155,"updated":"2026-09-06 16:29:57.000000000","message":"the command `names` should only provide a list of names.\nno need for `dist`, so please drop printing the `{` and the `}`","commit_id":"083c00989aa0c11d06edc1f650d9349c2309f6e3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ddd074cab1f378bac67ddbb67aab072c776aa78a","unresolved":false,"context_lines":[{"line_number":1152,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":1153,"context_line":""},{"line_number":1154,"context_line":"\tfor (hub \u003d ipdbg_first_hub; hub; hub \u003d hub-\u003enext) {"},{"line_number":1155,"context_line":"\t\tcommand_print(CMD, \"{\");"},{"line_number":1156,"context_line":"\t\tcommand_print(CMD, \" name %s\", hub-\u003ename);"},{"line_number":1157,"context_line":"\t\tcommand_print(CMD, \"}\");"},{"line_number":1158,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"672e1fc1_a485126f","line":1155,"in_reply_to":"736daea9_dc56cc3e","updated":"2026-09-26 16:02:34.000000000","message":"Done","commit_id":"083c00989aa0c11d06edc1f650d9349c2309f6e3"},{"author":{"_account_id":1001810,"name":"Daniel Anselmi","email":"danselmi@gmx.ch","username":"danselmi"},"change_message_id":"65f0fe96e8359d63b2a4ed4b1563cd25bb67bc3e","unresolved":false,"context_lines":[{"line_number":1152,"context_line":"\t\treturn ERROR_COMMAND_SYNTAX_ERROR;"},{"line_number":1153,"context_line":""},{"line_number":1154,"context_line":"\tfor (hub \u003d ipdbg_first_hub; hub; hub \u003d hub-\u003enext) {"},{"line_number":1155,"context_line":"\t\tcommand_print(CMD, \"{\");"},{"line_number":1156,"context_line":"\t\tcommand_print(CMD, \" name %s\", hub-\u003ename);"},{"line_number":1157,"context_line":"\t\tcommand_print(CMD, \"}\");"},{"line_number":1158,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"a2576ead_0ccee36e","line":1155,"in_reply_to":"736daea9_dc56cc3e","updated":"2026-09-28 19:46:53.000000000","message":"Now it\u0027s the same as in \u0027handle_target_names\u0027 .\nThanks","commit_id":"083c00989aa0c11d06edc1f650d9349c2309f6e3"}]}
