{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":12585625,"defaultBranch":"master","name":"nomacs","ownerLogin":"nomacs","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2013-09-04T08:18:41.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/4539189?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1725018492.0","currentOid":""},"activityList":{"items":[{"before":"fafc82a84b0094d04a1d3a299defee4e71bfb7f3","after":"84bfa5e6617d3fc133c921687f8f6fed96007c2f","ref":"refs/heads/master","pushedAt":"2024-09-09T16:09:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Update path for WiX Toolset v3.14","shortMessageHtmlLink":"Update path for WiX Toolset v3.14"}},{"before":"0a77533a702ac377115af8870f22a9e17c2e87b7","after":"fafc82a84b0094d04a1d3a299defee4e71bfb7f3","ref":"refs/heads/master","pushedAt":"2024-09-09T14:54:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Use Qt 6.7.2 to build Windows version","shortMessageHtmlLink":"Use Qt 6.7.2 to build Windows version"}},{"before":"3b0cc3867749d1a39187f3bc02dd9393835cab6c","after":"0a77533a702ac377115af8870f22a9e17c2e87b7","ref":"refs/heads/master","pushedAt":"2024-09-04T10:59:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Fix double rotation of RAW images","shortMessageHtmlLink":"Fix double rotation of RAW images"}},{"before":"82e2e51982b614bbb90ef78a2529d5f7a4e1e68b","after":"3b0cc3867749d1a39187f3bc02dd9393835cab6c","ref":"refs/heads/master","pushedAt":"2024-09-03T17:10:48.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Upgrade LibRaw","shortMessageHtmlLink":"Upgrade LibRaw"}},{"before":"3c9e5ee202a3dc7480d23fd8f9fa702adb91b083","after":"82e2e51982b614bbb90ef78a2529d5f7a4e1e68b","ref":"refs/heads/master","pushedAt":"2024-09-03T16:55:44.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Upgrade LibRaw","shortMessageHtmlLink":"Upgrade LibRaw"}},{"before":"18b23a8df30d36292582625f11ac7f792f0c6fca","after":"3c9e5ee202a3dc7480d23fd8f9fa702adb91b083","ref":"refs/heads/master","pushedAt":"2024-09-03T15:15:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Upgrade opencv to 4.10.0","shortMessageHtmlLink":"Upgrade opencv to 4.10.0"}},{"before":"ba2637411ff44b9b99093c75a8153d850cbecfcb","after":"18b23a8df30d36292582625f11ac7f792f0c6fca","ref":"refs/heads/master","pushedAt":"2024-09-03T14:58:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Prefer libraw to develop raw images instead of custom code","shortMessageHtmlLink":"Prefer libraw to develop raw images instead of custom code"}},{"before":"003d0e71be28615b5bf97e3953901f9f2dff4d04","after":"ba2637411ff44b9b99093c75a8153d850cbecfcb","ref":"refs/heads/master","pushedAt":"2024-08-30T11:48:23.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Version 3.19.1","shortMessageHtmlLink":"Version 3.19.1"}},{"before":"003d0e71be28615b5bf97e3953901f9f2dff4d04","after":null,"ref":"refs/tags/3.19.1","pushedAt":"2024-08-30T11:45:06.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"}},{"before":"1d118a3da62ea3ceb2df2f98217d6e98027f0c5b","after":"003d0e71be28615b5bf97e3953901f9f2dff4d04","ref":"refs/heads/master","pushedAt":"2024-08-30T10:47:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Version 3.19.1","shortMessageHtmlLink":"Version 3.19.1"}},{"before":"e4e07467630a9952f155eeafbd8b8ebc3f61cc4a","after":"1d118a3da62ea3ceb2df2f98217d6e98027f0c5b","ref":"refs/heads/master","pushedAt":"2024-08-22T13:56:46.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"scrubbbbs","name":null,"path":"/scrubbbbs","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/89664476?s=80&v=4"},"commit":{"message":"Enable test on CI","shortMessageHtmlLink":"Enable test on CI"}},{"before":"3c8a850f3b1c6365559258dedea04d7803e679dd","after":"e4e07467630a9952f155eeafbd8b8ebc3f61cc4a","ref":"refs/heads/master","pushedAt":"2024-08-09T19:30:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"scrubbbbs","name":null,"path":"/scrubbbbs","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/89664476?s=80&v=4"},"commit":{"message":"Add UserComment to Metadata Ribbon\n\nMakes the Metadata Ribbon able to display Exif.Photo.UserComment","shortMessageHtmlLink":"Add UserComment to Metadata Ribbon"}},{"before":"481aa6b6cd71d42970b01627898213f90ab084b5","after":"3c8a850f3b1c6365559258dedea04d7803e679dd","ref":"refs/heads/master","pushedAt":"2024-08-09T19:29:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"scrubbbbs","name":null,"path":"/scrubbbbs","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/89664476?s=80&v=4"},"commit":{"message":"Frameless: fix bugs and improve mode switching (#1136)\n\nPR #1128 introduced a regression that broke frameless mode on Windows.\r\nThe root cause seems to be a Qt issue with saveGeometry()/\r\nrestoreGeometry() which also saves/restores the windowState()\r\n(fullscreen,maximized etc) in addition to the geometry.\r\n\r\nThis patch drops saveGeometry()/restoreGeometry() to fix these bugs and\r\nto get more control over our window state. It also drops the other\r\nworkarounds which are no longer needed.\r\n\r\nFixes #1134\r\nFixes #1032\r\nFixes #765\r\nFixes #781\r\n\r\nImproves upon PR #1128, #1122\r\n\r\nFunctional changes:\r\n- save appMode at exit, and use it to decide if we are fullscreen at\r\n startup\r\n- -f/--fullscreen switch is no longer temporary, similar to -m/--mode\r\n- do not use saveGeometry()/restoreGeometry(), it is bugged when\r\n switching between the different modes\r\n- offscreen/occluded saved window geometry is corrected by ourselves\r\n rather than by Qt and/or the window manager.\r\n- use showFullscreen()/showMaximized()/showNormal(), at startup\r\n- don't use setWindowState() anymore, bugged on maximized windows\r\n- make default window size slightly bigger to fit the settings tab\r\n\r\nRefactoring:\r\n- add helpers to convert between normal vs fullscreen modes\r\n- remove fullscreen switch from DkViewPort since it is always a\r\n child widget of main window, this has no effect\r\n- remove an old hack (pre-github) to restore window geometry; does not\r\n seem to be needed anymore\r\n- WIP: make currentAppMode obsolete, and use appMode instead\r\n- use settings manager in main(), load mode setting later\r\n- add more logging for mode switching and startup sequence\r\n- chooseMonitor() now compatible with Qt6","shortMessageHtmlLink":"Frameless: fix bugs and improve mode switching (#1136)"}},{"before":"97bbcd5f3cf9083068be039b1b37f6203f2b9e08","after":"481aa6b6cd71d42970b01627898213f90ab084b5","ref":"refs/heads/master","pushedAt":"2024-08-05T12:51:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"scrubbbbs","name":null,"path":"/scrubbbbs","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/89664476?s=80&v=4"},"commit":{"message":"Build: Add quazip-qt6 and support quazip in Mac OS X (#1145)\n\nFixes: #1144","shortMessageHtmlLink":"Build: Add quazip-qt6 and support quazip in Mac OS X (#1145)"}},{"before":"623d603320cee1c3fd32cb57b36b228d08804acf","after":"97bbcd5f3cf9083068be039b1b37f6203f2b9e08","ref":"refs/heads/master","pushedAt":"2024-08-04T16:18:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"scrubbbbs","name":null,"path":"/scrubbbbs","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/89664476?s=80&v=4"},"commit":{"message":"Build: Fix broken Mac OS X build (#1143)\n\n- App bundle is runnable again, not standalone\r\n- Works on Qt5 and Qt6\r\n- Updated documentation","shortMessageHtmlLink":"Build: Fix broken Mac OS X build (#1143)"}},{"before":"5915b4d5e70883af3298b9b288732953db5abe13","after":"623d603320cee1c3fd32cb57b36b228d08804acf","ref":"refs/heads/master","pushedAt":"2024-07-29T20:21:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"scrubbbbs","name":null,"path":"/scrubbbbs","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/89664476?s=80&v=4"},"commit":{"message":"Qt6: Remove Mac OS deprecations (#1142)\n\nPartially fixes the build. The bundle is still broken.","shortMessageHtmlLink":"Qt6: Remove Mac OS deprecations (#1142)"}},{"before":"4365935e7d56bddd072dbe4bd2ad080740a7319c","after":"5915b4d5e70883af3298b9b288732953db5abe13","ref":"refs/heads/master","pushedAt":"2024-07-29T18:19:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"scrubbbbs","name":null,"path":"/scrubbbbs","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/89664476?s=80&v=4"},"commit":{"message":"Workflow/Linux: Fix missing packages","shortMessageHtmlLink":"Workflow/Linux: Fix missing packages"}},{"before":"d4e7ac901a0243b55eaaabafb9d5e8ae979139fe","after":"4365935e7d56bddd072dbe4bd2ad080740a7319c","ref":"refs/heads/master","pushedAt":"2024-07-23T15:23:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"scrubbbbs","name":null,"path":"/scrubbbbs","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/89664476?s=80&v=4"},"commit":{"message":"Cross-Compile: add Qt6 and output to console (#1137)\n\nPreviously mingw build had no console output, add that back in to debug\r\nbuilds by linking to console subsystem.\r\n\r\nQt6 build is now working as expected.","shortMessageHtmlLink":"Cross-Compile: add Qt6 and output to console (#1137)"}},{"before":"485f97988417101e1f8ea892f9572be12f39d89d","after":"d4e7ac901a0243b55eaaabafb9d5e8ae979139fe","ref":"refs/heads/master","pushedAt":"2024-07-20T15:53:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Logging: add logging for moveToTrash (#1133)\n\nThere are definitely some cases where QFile::moveToTrash() will fail,\r\nthis adds some logging that might help solve them.","shortMessageHtmlLink":"Logging: add logging for moveToTrash (#1133)"}},{"before":"708a51775ebd2cdcd7291829b09a7957e5aa5d58","after":"485f97988417101e1f8ea892f9572be12f39d89d","ref":"refs/heads/master","pushedAt":"2024-07-20T08:27:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Thumbs: save selection on directory change (#1132)\n\nCurrently there is no attempt to save the selection after an operation\r\n(delete/rename/paste) that triggers a directory refresh, or external\r\ndirectory change picked up by dir watcher.\r\n\r\nThis patch saves the first selected index (other indices are lost) on\r\nany directory change.\r\n\r\ndeleteSelected() is also refactored\r\n- prevent deleting the same item twice\r\n- if a delete fails partway the remaining selection is preserved\r\n- remove obsolete trash/vs delete conditional text\r\n- remove loader activate/deactivate, always block signals to prevent\r\nuse-after-free\r\n\r\nFixes #1125","shortMessageHtmlLink":"Thumbs: save selection on directory change (#1132)"}},{"before":"2c98c825cd9043694ae30170e8ee16b7d1789aae","after":"708a51775ebd2cdcd7291829b09a7957e5aa5d58","ref":"refs/heads/master","pushedAt":"2024-07-20T08:24:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Fix incorrect positioning when sorted by metadata (#1131)\n\nPositioning can be incorrect after deletion or other changes to\r\ndirectory when sorted by anything which has the same value for multiple\r\nfiles. This is not uncommon, for example burst shots or batched\r\nprocessed files often have the same ctime/mtime.\r\n\r\nThis happens because getSkippedImage() re-establishes the position in\r\nthe folder based on the sorted position of the missing item.\r\n\r\nTo sidestep the issue, sort files by filename whenever their metadata\r\nmatches. So there should never be a case when the position is ambiguous.\r\n\r\nThis handles the case when we delete files and lose our position, or the\r\nfiles were modified externally.\r\n\r\nFixes #391","shortMessageHtmlLink":"Fix incorrect positioning when sorted by metadata (#1131)"}},{"before":"8c49f51f6488e811b58a2560312cef24f56e68d7","after":"2c98c825cd9043694ae30170e8ee16b7d1789aae","ref":"refs/heads/master","pushedAt":"2024-07-20T08:24:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Cross-compile: fix packager and add documentation (#1129)\n\nPackager was not pulling modified nomacsCore dll. Documentation for\r\ncompiling added to Readme.","shortMessageHtmlLink":"Cross-compile: fix packager and add documentation (#1129)"}},{"before":"ec9a320cc6bf7002e7e3f4bfe4962ca896a807a3","after":"8c49f51f6488e811b58a2560312cef24f56e68d7","ref":"refs/heads/master","pushedAt":"2024-07-20T08:21:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Fix navigation loss after file deletion (#1130)\n\nFixes the problem where deleting the last file in a directory with\r\nlooping off causes nav loss.\r\n\r\nThis was because getSkippedImage(1) would not take the correct path\r\nbecause mImages was not updating. To avoid rescanning the directory (an\r\nalternate solution), this patch simply removes the path from mImages\r\nafter deletion.\r\n\r\nThe behavior remains the same regardless of directory mode:\r\n- if looping, deletion at the end goes back to the start\r\n- otherwise, it always advances based on the current sort, potentially\r\nto the next subdirectory if that is enabled.\r\n- if we cannot advance for any reason, we attempt to load the new image\r\nat the current position\r\n\r\nFixes #600","shortMessageHtmlLink":"Fix navigation loss after file deletion (#1130)"}},{"before":"f2c6c4d3d186965fe786ce9866073735ec39577a","after":"ec9a320cc6bf7002e7e3f4bfe4962ca896a807a3","ref":"refs/heads/master","pushedAt":"2024-07-20T08:20:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Startup: fix restoration of fullscreen state (#1128)\n\nFullscreen state was not restored correctly in some instances because\r\nQMainWindow::restoreState() will set the fullscreen bit, and our own\r\nhandler will toggle it with XOR, when it meant to enable it.\r\n\r\nFixes #1110\r\nFixes #764","shortMessageHtmlLink":"Startup: fix restoration of fullscreen state (#1128)"}},{"before":"0bc8e3787ba5902e9f31d5e1be7d82e9c71de951","after":"f2c6c4d3d186965fe786ce9866073735ec39577a","ref":"refs/heads/master","pushedAt":"2024-07-13T11:10:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Startup: fix non-maximized window at startup on GNOME (#1122)\n\nOn some platforms (GNOME/X11) and potentially other X11 window managers,\r\nthe maximized state of the main window will not be restored.\r\n\r\nSince Qt emulates showMaximized() on X11, it is likely this is not\r\nlimited to GNOME and could affect other WMs now and in the future.\r\n\r\nThis corrects the problem on GNOME and may also prevent other WMs from\r\nbreaking in the future.\r\n\r\nI have also added a more complete \"ensure the window is visible/active\"\r\ncheck as sendPostedEvents() is not quite enough to fully realize the\r\nwindow.","shortMessageHtmlLink":"Startup: fix non-maximized window at startup on GNOME (#1122)"}},{"before":"eca2377d6ed249988439709778094951709e75b8","after":"0bc8e3787ba5902e9f31d5e1be7d82e9c71de951","ref":"refs/heads/master","pushedAt":"2024-07-11T12:20:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Give default focus to central widget (#1121)\n\nOn startup, gives focus to the central widget viewport, if there is one.\r\nThis prevents any panel/dock from taking keyboard focus.\r\n\r\nOther calls to setFocus/setFocusPolicy that were working around this are\r\nremoved.\r\n\r\nFixes #843\r\nFixes #908\r\nFixes #629","shortMessageHtmlLink":"Give default focus to central widget (#1121)"}},{"before":"f5a9c517cc7d5deb188ecd22ce80c26f98ab7c5b","after":"eca2377d6ed249988439709778094951709e75b8","ref":"refs/heads/master","pushedAt":"2024-07-09T10:51:28.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Qt6 build on Windows","shortMessageHtmlLink":"Qt6 build on Windows"}},{"before":"4a4198a51ad5526bbb35490b6d801f1077ca3d77","after":"f5a9c517cc7d5deb188ecd22ce80c26f98ab7c5b","ref":"refs/heads/master","pushedAt":"2024-07-07T07:04:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Remove travis mentions (#1120)\n\nTravis was replaced by github actions, so remove/replace the mentions.","shortMessageHtmlLink":"Remove travis mentions (#1120)"}},{"before":"128ea5db8d8eb3a7fb0f5bc3f5ea6ff29292c748","after":"4a4198a51ad5526bbb35490b6d801f1077ca3d77","ref":"refs/heads/master","pushedAt":"2024-07-04T16:43:54.000Z","pushType":"pr_merge","commitsCount":10,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Fix CI clang-format\n\nThe clang-format-15 mysteriously return 1 even if there is nothing to\nformat. Update to use newer version in Ubuntu 24.04.","shortMessageHtmlLink":"Fix CI clang-format"}},{"before":"38a5946c8f3c725607825e27676e7e2534e70999","after":"128ea5db8d8eb3a7fb0f5bc3f5ea6ff29292c748","ref":"refs/heads/master","pushedAt":"2024-07-03T11:20:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"novomesk","name":"Daniel Novomeský","path":"/novomesk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52529860?s=80&v=4"},"commit":{"message":"Add informative version number to AppVeyor script","shortMessageHtmlLink":"Add informative version number to AppVeyor script"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0wOVQxNjowOTo0Mi4wMDAwMDBazwAAAASxHHnx","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0wOVQxNjowOTo0Mi4wMDAwMDBazwAAAASxHHnx","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNy0wM1QxMToyMDozNS4wMDAwMDBazwAAAAR1yzAm"}},"title":"Activity · nomacs/nomacs"}