{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":237637621,"defaultBranch":"main","name":"runtime","ownerLogin":"BrzVlad","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2020-02-01T15:49:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/4720621?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1726662018.0","currentOid":""},"activityList":{"items":[{"before":"4f9c29f9ddea4297d3b2dab5c84d9a802d9f094d","after":"6d3265f534b7adfbf93eacf1332197e94c2b7433","ref":"refs/heads/feature-interp-rm-bb-split","pushedAt":"2024-09-20T07:55:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][interp] Remove dead variable","shortMessageHtmlLink":"[mono][interp] Remove dead variable"}},{"before":null,"after":"4f9c29f9ddea4297d3b2dab5c84d9a802d9f094d","ref":"refs/heads/feature-interp-rm-bb-split","pushedAt":"2024-09-18T12:20:18.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][interp] Remove mono_basic_block_split","shortMessageHtmlLink":"[mono][interp] Remove mono_basic_block_split"}},{"before":"6219d182bcc61d5f67e4506a0644bd916797ebc6","after":"24e7d1b0959234a36fb09a5c64cfd2da20f10618","ref":"refs/heads/main","pushedAt":"2024-09-18T11:04:00.000Z","pushType":"push","commitsCount":84,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Replace VectorXx.Exp's edge case fallback with scalar processing (#107886)\n\n* Replace VectorXx.Exp's edge case fallback with scalar processing\r\n\r\nThe better, vectorized fix is more complex and can be done for .NET 10.\r\n\r\n* Revert addition to Helpers.IsEqualWithTolerance","shortMessageHtmlLink":"Replace VectorXx.Exp's edge case fallback with scalar processing (dot…"}},{"before":"cbcb694293b82c22ddfe64dc45b278215b3c07ae","after":"335464ba27623a5f9e7e0e9e5b68e15b6597caac","ref":"refs/heads/fix-simd-llvm-jit","pushedAt":"2024-09-11T09:17:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][mini] Prefer llvm compiled method only if it uses simd intrinsics\n\nWe include a new flag when compiling aot method. When loading aot method, we will include mapping from code to flags so we can look it up later.","shortMessageHtmlLink":"[mono][mini] Prefer llvm compiled method only if it uses simd intrinsics"}},{"before":"e5b9dbbdf6139842212484a1249c125656551c03","after":"6219d182bcc61d5f67e4506a0644bd916797ebc6","ref":"refs/heads/main","pushedAt":"2024-09-11T09:14:05.000Z","pushType":"push","commitsCount":102,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Fix SSP issue with HW exceptions from JIT helpers (#107665)\n\nThe recent change that was fixing bad SSP updating during exception\r\nhandling with funceval has also modified the way SSP is extracted for\r\nhardware exceptions. That works fine for many cases, but there is a\r\nproblem when the exception occurs in a JIT helper. The\r\n`AjustContextForJITHelpers` uses only the basic `CONTEXT` structure for\r\nunwinding to the managed caller and so the SSP is not properly updated.\r\nThat makes it off by one slot when we set it when continuing execution\r\nafter catch.\r\nThis change removes storing SSP for hardware exceptions in the\r\nFaultingExceptionFrame to mitigate the issue. It effectively returns to\r\nthe way software exceptions use - scanning shadow stack for the\r\ninstruction pointer of the frame to which it is going to resume after\r\ncatch.\r\n\r\nCo-authored-by: Jan Vorlicek ","shortMessageHtmlLink":"Fix SSP issue with HW exceptions from JIT helpers (dotnet#107665)"}},{"before":"11c6a338c28bfffcb8c36d804295c089944fea39","after":"cbcb694293b82c22ddfe64dc45b278215b3c07ae","ref":"refs/heads/fix-simd-llvm-jit","pushedAt":"2024-09-09T16:28:17.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][mini] Prefer llvm compiled method only if it uses simd intrinsics\n\nWe include a new flag when compiling aot method. When loading aot method, we will include mapping from code to flags so we can look it up later.","shortMessageHtmlLink":"[mono][mini] Prefer llvm compiled method only if it uses simd intrinsics"}},{"before":"3b7dfb26486166663e3cce671f76aef5659c4b51","after":"11c6a338c28bfffcb8c36d804295c089944fea39","ref":"refs/heads/fix-simd-llvm-jit","pushedAt":"2024-09-05T14:37:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][mini] Prefer llvmaot compiled method instead of inlining it with JIT\n\nThe motivation for this is to fix crashes due to different HW intrinsics support between llvm and JIT. For example, a llvmaot compiled method might check if we have a set of HW intrinsics available and proceed with a code path that will end up calling a method that assumes intrinsics support that is not present in the aot image (because the gsharedvt version is not emitted for example). In this scenario, the called method will end up being compiled with JIT where we would crash due to missing HW intrinsics support.","shortMessageHtmlLink":"[mono][mini] Prefer llvmaot compiled method instead of inlining it wi…"}},{"before":null,"after":"3b7dfb26486166663e3cce671f76aef5659c4b51","ref":"refs/heads/fix-simd-llvm-jit","pushedAt":"2024-09-05T11:42:50.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][mini] Prefer llvmaot compiled method instead of inlining it with JIT\n\nThe motivation for this is to fix crashes due to different HW intrinsics support between llvm and JIT. For example, a llvmaot compiled method might check if we have a set of HW intrinsics available and proceed with a code path that will end up calling a method that assumes intrinsics support that is not present in the aot image (because the gsharedvt version is not emitted for example). In this scenario, the called method will end up being compiled with JIT where we would crash due to missing HW intrinsics support.","shortMessageHtmlLink":"[mono][mini] Prefer llvmaot compiled method instead of inlining it wi…"}},{"before":"48aa31535f0e5f318f061eb6f8ad4f25611e6133","after":"e5b9dbbdf6139842212484a1249c125656551c03","ref":"refs/heads/main","pushedAt":"2024-09-05T11:26:29.000Z","pushType":"push","commitsCount":475,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][ci] Include PDBs from runtime pack when building on Helix if required (#107348)","shortMessageHtmlLink":"[mono][ci] Include PDBs from runtime pack when building on Helix if r…"}},{"before":null,"after":"99b76018b6e4edc4ce185dd5f3c5697c6941d88e","ref":"refs/heads/regex-problem","pushedAt":"2024-08-22T13:32:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Enable Regex to use SearchValues in compiled / source generator for IgnoreCase multi-strings (#98791)\n\n* Enable Regex to use SearchValues in compiled / source generator TryFindNextStartingPosition\r\n\r\nThe analyzer determines a set of prefixes that can start any match, and then uses SearchValues with IndexOfAny to find the next one from that set. It's currently only enabled for case-insensitive; we need to do some more perf validation before enabling for case-sensitive.\r\n\r\n* Address PR feedback\r\n\r\n* Fix unit test","shortMessageHtmlLink":"Enable Regex to use SearchValues<string> in compiled / source generat…"}},{"before":"b73c98197c08a0034a8f1af688f577d5f3fa507a","after":"aca293f74987d16ddb6280df8dcec8b71504c153","ref":"refs/heads/fix-llvm-align","pushedAt":"2024-08-13T09:54:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Re-enable tests","shortMessageHtmlLink":"Re-enable tests"}},{"before":null,"after":"b73c98197c08a0034a8f1af688f577d5f3fa507a","ref":"refs/heads/fix-llvm-align","pushedAt":"2024-08-13T08:54:50.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][llvm] Fix alignment of local vars\n\nklass->min_align specifies the alignment required by the class fields. For example a class/struct containing an int64 will require a minimum alignment of 8 byte for its storage, while a a class/struct containing an int8 will require a 1 byte alignment. `build_named_alloca` is used to allocate storage for a local var of a certain type so using `klass->min_align` is incorrect. We should use `mono_type_size` instead, as this is used throughout the runtime for this purpose. A var of object type should have the alignment `sizeof (gpointer)` since it is a pointer, completely unrelated to the class field layout.","shortMessageHtmlLink":"[mono][llvm] Fix alignment of local vars"}},{"before":"a9fdb065482d1c1d4e099a37ec60835d6824eecd","after":"99c2c12b6e648966cc1be60fba22112fb699d24a","ref":"refs/heads/fix-bump-llvm","pushedAt":"2024-08-11T13:19:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Re-enable tests","shortMessageHtmlLink":"Re-enable tests"}},{"before":null,"after":"1089a41873ec2c6fd88f8d7dcdc996e671d5d3ef","ref":"refs/heads/fix-llvm-compare","pushedAt":"2024-08-11T09:40:14.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][llvm] Fix handling of compare when last instruction in bblock\n\nCompare opcodes are logically meant to set compare flags and they are always followed by a conditional instruction (that either branches or loads the comparison result in a register). When handling this instruction, if the next instruction was a nop or not a conditional instruction, then we can make the assumption that the conditional instruction was optimized out so there is no need to generate the compare instruction. We were missing the scenario when the conditional instruction was optimized out and the compare was left as the last instruction of the bblock, in which case we were crashing.","shortMessageHtmlLink":"[mono][llvm] Fix handling of compare when last instruction in bblock"}},{"before":null,"after":"62f69f1e86f062c3b86f61c2fef3070781e4ff4f","ref":"refs/heads/merge/release/8.0-to-release/8.0-staging","pushedAt":"2024-08-11T06:51:49.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Backport https://github.com/dotnet/runtime/pull/100528 to release 8.0 to fix Perf runs. (#106049)","shortMessageHtmlLink":"Backport dotnet#100528 to release 8.0 to fix Perf runs. (dotnet#106049)"}},{"before":"9b088ab8287a77c52ff7c4ed6fa96be6d3eb87f1","after":"62f69f1e86f062c3b86f61c2fef3070781e4ff4f","ref":"refs/heads/release/8.0","pushedAt":"2024-08-11T06:49:13.000Z","pushType":"push","commitsCount":125,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Backport https://github.com/dotnet/runtime/pull/100528 to release 8.0 to fix Perf runs. (#106049)","shortMessageHtmlLink":"Backport dotnet#100528 to release 8.0 to fix Perf runs. (dotnet#106049)"}},{"before":null,"after":"04263e03e854a5010a875e270833486eb626f24d","ref":"refs/heads/interp-revert-short-branch-removal","pushedAt":"2024-08-09T08:01:10.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Revert \"[mono][interp] Remove short branches (#105386)\"\n\nThis reverts commit ac898195da4ba1c6cb2431c47aab0a71cdee25a8.","shortMessageHtmlLink":"Revert \"[mono][interp] Remove short branches (dotnet#105386)\""}},{"before":"b7f8e09f4dd2d0244c81baa00c21809ffc80d1bd","after":"a9fdb065482d1c1d4e099a37ec60835d6824eecd","ref":"refs/heads/fix-bump-llvm","pushedAt":"2024-08-09T06:28:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][llvm] Disable shuffle intrinsic\n\nSomething seems to be wrong with llvm instruction emitting.","shortMessageHtmlLink":"[mono][llvm] Disable shuffle intrinsic"}},{"before":"61b00205666de26231ed36dd4124517817a759f4","after":"48aa31535f0e5f318f061eb6f8ad4f25611e6133","ref":"refs/heads/main","pushedAt":"2024-08-09T06:26:19.000Z","pushType":"push","commitsCount":27,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Fix config binding with records having collection constructor parameter (#106158)","shortMessageHtmlLink":"Fix config binding with records having collection constructor paramet…"}},{"before":"d606c601510c1a1a28cb6ef3550f12db049c0776","after":"61b00205666de26231ed36dd4124517817a759f4","ref":"refs/heads/main","pushedAt":"2024-08-08T14:02:18.000Z","pushType":"push","commitsCount":57,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[browser] Always use ResolvedFileToPublish instead of WasmAssembliesFinal when targeting .NET 6 (#105805)","shortMessageHtmlLink":"[browser] Always use ResolvedFileToPublish instead of WasmAssembliesF…"}},{"before":"02de2dfea755bd9e9623657a27dd41d673fd9d6f","after":"d606c601510c1a1a28cb6ef3550f12db049c0776","ref":"refs/heads/main","pushedAt":"2024-08-06T10:15:19.000Z","pushType":"push","commitsCount":46,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Enable ReceiveAsync_Cancel_Success test (#105995)","shortMessageHtmlLink":"Enable ReceiveAsync_Cancel_Success test (dotnet#105995)"}},{"before":"862422a08ce415eb321e828c3ba6b52072ec20bd","after":"b7f8e09f4dd2d0244c81baa00c21809ffc80d1bd","ref":"refs/heads/fix-bump-llvm","pushedAt":"2024-08-06T09:30:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][llvm] Disable shuffle intrinsic\n\nSomething seems to be wrong with llvm instruction emitting.","shortMessageHtmlLink":"[mono][llvm] Disable shuffle intrinsic"}},{"before":null,"after":"862422a08ce415eb321e828c3ba6b52072ec20bd","ref":"refs/heads/fix-bump-llvm","pushedAt":"2024-08-02T12:12:14.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono] Test llvm bump","shortMessageHtmlLink":"[mono] Test llvm bump"}},{"before":"e2a3511925e43217ef4814eb633ae729ed8d7246","after":"02de2dfea755bd9e9623657a27dd41d673fd9d6f","ref":"refs/heads/main","pushedAt":"2024-08-02T11:44:38.000Z","pushType":"push","commitsCount":221,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"Revert \"Use IndexOf for bounded loops in a regex (#101899)\" (#105735)\n\nThis reverts commit 08e0f8954f3364dd7fd6ebeb5d4ddd4e9a9530b1.","shortMessageHtmlLink":"Revert \"Use IndexOf for bounded loops in a regex (dotnet#101899)\" (do…"}},{"before":"ea69694356121435322d847b2b6275861b1985d2","after":"17ed1c3580dace284a021d49add597b5b66f4a49","ref":"refs/heads/fix-interp-short-branches","pushedAt":"2024-07-31T07:51:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][interp] Completely remove short branches\n\nThey don't seem to have any benefit at the expense of a lot of code and added complexity.","shortMessageHtmlLink":"[mono][interp] Completely remove short branches"}},{"before":"a51956287e8caad2fd982f0ef5cf936b82532647","after":"ea69694356121435322d847b2b6275861b1985d2","ref":"refs/heads/fix-interp-short-branches","pushedAt":"2024-07-30T13:37:15.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][interp] Completely remove short branches\n\nThey don't seem to have any benefit at the expense of a lot of code and added complexity.","shortMessageHtmlLink":"[mono][interp] Completely remove short branches"}},{"before":"d1bbe02ff747706ac874078100ede29c80a08fa3","after":"a51956287e8caad2fd982f0ef5cf936b82532647","ref":"refs/heads/fix-interp-short-branches","pushedAt":"2024-07-25T14:29:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][interp] Completely remove short branches\n\nThey don't seem to have any benefit at the expense of a lot of code and added complexity.","shortMessageHtmlLink":"[mono][interp] Completely remove short branches"}},{"before":"034500ccea3cfde7666b7184d3ce28114b7753b5","after":"d1bbe02ff747706ac874078100ede29c80a08fa3","ref":"refs/heads/fix-interp-short-branches","pushedAt":"2024-07-25T13:25:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][interp] Completely remove short branches\n\nThey don't seem to have any benefit at the expense of a lot of code and added complexity.","shortMessageHtmlLink":"[mono][interp] Completely remove short branches"}},{"before":"6a54c14718a0d332d7606fd78679a30199b14eb9","after":"034500ccea3cfde7666b7184d3ce28114b7753b5","ref":"refs/heads/fix-interp-short-branches","pushedAt":"2024-07-25T10:33:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][interp] Completely remove short branches\n\nThey don't seem to have any benefit at the expense of a lot of code and added complexity.","shortMessageHtmlLink":"[mono][interp] Completely remove short branches"}},{"before":"057e2bdbebf1c31c01865a24462eebd2d3be3bc0","after":"6a54c14718a0d332d7606fd78679a30199b14eb9","ref":"refs/heads/fix-interp-short-branches","pushedAt":"2024-07-24T13:42:21.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"BrzVlad","name":"Vlad Brezae","path":"/BrzVlad","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4720621?s=80&v=4"},"commit":{"message":"[mono][interp] Completely remove short branches\n\nThey don't seem to have any benefit at the expense of a lot of code and added complexity.","shortMessageHtmlLink":"[mono][interp] Completely remove short branches"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMFQwNzo1NToyNS4wMDAwMDBazwAAAAS7sI0a","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMFQwNzo1NToyNS4wMDAwMDBazwAAAAS7sI0a","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0yNFQxMzo0MjoyMS4wMDAwMDBazwAAAASH_gqM"}},"title":"Activity · BrzVlad/runtime"}