{
  "id": 307619,
  "title": "6th place solution ,  yolov5m6/s6,  trust cv, post classification.",
  "url": "/competitions/tensorflow-great-barrier-reef/writeups/recall-is-all-you-need-6th-place-solution-yolov5m6",
  "author_name": "",
  "post_date": "2022-02-15T06:58:21.760Z",
  "votes": 51,
  "comment_count": 19,
  "views": 0,
  "content": "<p>Congratulations to all team which trust your CV ,  the Private board shake huge. Thanks to my teammates <a href=\"https://www.kaggle.com/khyeh0719\" target=\"_blank\">@khyeh0719</a> <a href=\"https://www.kaggle.com/trushk\" target=\"_blank\">@trushk</a>  I have a greate journey in this competition.</p>\n<h2>Pipeline</h2>\n<p><img src=\"https://raw.githubusercontent.com/EvilPsyCHo/kaggle-detect-starfish/main/asset/arch.png\" alt=\"pipeline\"></p>\n<h2>Trust your CV</h2>\n<p>We split data by video_id, and calculate the f2-score on the whole oof data, and fund something interesting.</p>\n<ol>\n<li>CV shows model is work great when infer img resolution = train img resolution,  but LB need X2~X2.5 infer resolution to get nice score.</li>\n<li>Track improve the score about 0.002 on both CV and LB .</li>\n<li>Post classification improve the score about 0.006~0.01 on both CV and LB.</li>\n<li>Infer with low conf and use Wbf ensemble give use about 0.02 boost.</li>\n</ol>\n<p>finally we choose our 4 sub on this strategy:</p>\n<ol>\n<li>best cv sub w/ normal resolution     -&gt;LB 0.616 / Private 0.723</li>\n<li>best lb sub                                        -&gt;LB 0.716 / Private  0.692 (big shake)</li>\n<li>best cv X1.5 resolution.                    -&gt;LB 0.668/ Private 0.727 </li>\n<li>best cv X2.0 resolution                    -&gt;Lb 0.700/ Private 0.711</li>\n</ol>\n<h2>Best CV Model</h2>\n<ol>\n<li>post cls use swin-transformer</li>\n<li>track use nofair public setting</li>\n<li>wbf ensemble</li>\n<li>single model as follow show:</li>\n</ol>\n<table>\n<thead>\n<tr>\n<th>name</th>\n<th>train config</th>\n<th>infer config</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>s1</td>\n<td>yolov5m6_e5_bs1_lr01_img3000_public</td>\n<td>sz3600_nmsconf0.01_nmsiou0.2</td>\n</tr>\n<tr>\n<td>s3</td>\n<td>yolov5m6_e5_bs1_lr01_img3000_public</td>\n<td>sz2412_nmsconf0.01_nmsiou0.2</td>\n</tr>\n<tr>\n<td>s15</td>\n<td>yolov5s6_e5_bs2_lr01_img3000_public</td>\n<td>sz3000_nmsconf0.01_nmsiou0.2</td>\n</tr>\n<tr>\n<td>s61</td>\n<td>yolov5m6_e10_bs8_lr01_img3600_cp_nb8</td>\n<td>sz3600_conf0.01_iou0.2</td>\n</tr>\n<tr>\n<td>s62</td>\n<td>yolov5s6_e10_bs8_lr01_img3000_cp_nb8</td>\n<td>sz3000_conf0.01_iou0.2</td>\n</tr>\n<tr>\n<td>s63</td>\n<td>yolov5m6_e10_bs8_lr01_img3600_cp_nb8</td>\n<td>sz2412_conf0.01_iou0.2</td>\n</tr>\n</tbody>\n</table>",
  "messages": [
    {
      "id": "1690543",
      "postDate": "02/15/2022 01:59:03",
      "content": "<p>Congratulations to all team which trust your CV ,  the Private board shake huge. Thanks to my teammates <a href=\"https://www.kaggle.com/khyeh0719\" target=\"_blank\">@khyeh0719</a> <a href=\"https://www.kaggle.com/trushk\" target=\"_blank\">@trushk</a>  I have a greate journey in this competition.</p>\n<h2>Pipeline</h2>\n<p><img src=\"https://raw.githubusercontent.com/EvilPsyCHo/kaggle-detect-starfish/main/asset/arch.png\" alt=\"pipeline\"></p>\n<h2>Trust your CV</h2>\n<p>We split data by video_id, and calculate the f2-score on the whole oof data, and fund something interesting.</p>\n<ol>\n<li>CV shows model is work great when infer img resolution = train img resolution,  but LB need X2~X2.5 infer resolution to get nice score.</li>\n<li>Track improve the score about 0.002 on both CV and LB .</li>\n<li>Post classification improve the score about 0.006~0.01 on both CV and LB.</li>\n<li>Infer with low conf and use Wbf ensemble give use about 0.02 boost.</li>\n</ol>\n<p>finally we choose our 4 sub on this strategy:</p>\n<ol>\n<li>best cv sub w/ normal resolution     -&gt;LB 0.616 / Private 0.723</li>\n<li>best lb sub                                        -&gt;LB 0.716 / Private  0.692 (big shake)</li>\n<li>best cv X1.5 resolution.                    -&gt;LB 0.668/ Private 0.727 </li>\n<li>best cv X2.0 resolution                    -&gt;Lb 0.700/ Private 0.711</li>\n</ol>\n<h2>Best CV Model</h2>\n<ol>\n<li>post cls use swin-transformer</li>\n<li>track use nofair public setting</li>\n<li>wbf ensemble</li>\n<li>single model as follow show:</li>\n</ol>\n<table>\n<thead>\n<tr>\n<th>name</th>\n<th>train config</th>\n<th>infer config</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>s1</td>\n<td>yolov5m6_e5_bs1_lr01_img3000_public</td>\n<td>sz3600_nmsconf0.01_nmsiou0.2</td>\n</tr>\n<tr>\n<td>s3</td>\n<td>yolov5m6_e5_bs1_lr01_img3000_public</td>\n<td>sz2412_nmsconf0.01_nmsiou0.2</td>\n</tr>\n<tr>\n<td>s15</td>\n<td>yolov5s6_e5_bs2_lr01_img3000_public</td>\n<td>sz3000_nmsconf0.01_nmsiou0.2</td>\n</tr>\n<tr>\n<td>s61</td>\n<td>yolov5m6_e10_bs8_lr01_img3600_cp_nb8</td>\n<td>sz3600_conf0.01_iou0.2</td>\n</tr>\n<tr>\n<td>s62</td>\n<td>yolov5s6_e10_bs8_lr01_img3000_cp_nb8</td>\n<td>sz3000_conf0.01_iou0.2</td>\n</tr>\n<tr>\n<td>s63</td>\n<td>yolov5m6_e10_bs8_lr01_img3600_cp_nb8</td>\n<td>sz2412_conf0.01_iou0.2</td>\n</tr>\n</tbody>\n</table>",
      "rawMarkdown": "Congratulations to all team which trust your CV ,  the Private board shake huge. Thanks to my teammates @khyeh0719 @trushk  I have a greate journey in this competition.\n\n## Pipeline\n\n![pipeline](https://raw.githubusercontent.com/EvilPsyCHo/kaggle-detect-starfish/main/asset/arch.png)\n\n## Trust your CV\n\nWe split data by video_id, and calculate the f2-score on the whole oof data, and fund something interesting.\n\n1. CV shows model is work great when infer img resolution = train img resolution,  but LB need X2~X2.5 infer resolution to get nice score.\n2. Track improve the score about 0.002 on both CV and LB .\n3. Post classification improve the score about 0.006~0.01 on both CV and LB.\n4. Infer with low conf and use Wbf ensemble give use about 0.02 boost.\n\nfinally we choose our 4 sub on this strategy:\n1. best cv sub w/ normal resolution     ->LB 0.616 / Private 0.723\n2. best lb sub                                        ->LB 0.716 / Private  0.692 (big shake)\n3. best cv X1.5 resolution.                    ->LB 0.668/ Private 0.727 \n4. best cv X2.0 resolution                    ->Lb 0.700/ Private 0.711\n\n## Best CV Model\n\n1. post cls use swin-transformer\n2. track use nofair public setting\n3. wbf ensemble\n4. single model as follow show:\n\n| name | train config | infer config |\n| --- | --- |--- |\n| s1 |  yolov5m6_e5_bs1_lr01_img3000_public | sz3600_nmsconf0.01_nmsiou0.2|\n| s3 |  yolov5m6_e5_bs1_lr01_img3000_public | sz2412_nmsconf0.01_nmsiou0.2|\n|s15| yolov5s6_e5_bs2_lr01_img3000_public | sz3000_nmsconf0.01_nmsiou0.2|\n|s61|yolov5m6_e10_bs8_lr01_img3600_cp_nb8|sz3600_conf0.01_iou0.2|\n|s62|yolov5s6_e10_bs8_lr01_img3000_cp_nb8|sz3000_conf0.01_iou0.2|\n|s63|yolov5m6_e10_bs8_lr01_img3600_cp_nb8|sz2412_conf0.01_iou0.2|",
      "votes": null
    },
    {
      "id": "1690546",
      "postDate": "02/15/2022 02:01:29",
      "content": "<p>Congratulation on becoming competition master <a href=\"https://www.kaggle.com/evilpsycho42\" target=\"_blank\">@evilpsycho42</a> ! </p>",
      "rawMarkdown": "Congratulation on becoming competition master @evilpsycho42 !",
      "votes": null
    },
    {
      "id": "1690548",
      "postDate": "02/15/2022 02:03:10",
      "content": "<p>How have you done post classification?</p>",
      "rawMarkdown": "How have you done post classification?",
      "votes": null
    },
    {
      "id": "1690552",
      "postDate": "02/15/2022 02:07:16",
      "content": "<p>we used the out-of-fold prediction box, calculate the iou between the prediction box and ground truth box, then train a new model to determine the iou between the prediction box and the ground truth box</p>",
      "rawMarkdown": "we used the out-of-fold prediction box, calculate the iou between the prediction box and ground truth box, then train a new model to determine the iou between the prediction box and the ground truth box",
      "votes": null
    },
    {
      "id": "1690556",
      "postDate": "02/15/2022 02:12:57",
      "content": "<p>when you get the IOU, how do you use that information to improve the score?</p>",
      "rawMarkdown": "when you get the IOU, how do you use that information to improve the score?",
      "votes": null
    },
    {
      "id": "1690559",
      "postDate": "02/15/2022 02:16:21",
      "content": "<p>use thresholding on the predicted iou: we used 0.2 as threshold, predicted iou &gt; 0.2 as pred box to be kept, it is tuned again based on the cv</p>",
      "rawMarkdown": "use thresholding on the predicted iou: we used 0.2 as threshold, predicted iou > 0.2 as pred box to be kept, it is tuned again based on the cv",
      "votes": null
    },
    {
      "id": "1690573",
      "postDate": "02/15/2022 02:29:52",
      "content": "<p>Interesting Idea :) Thank you for sharing!</p>",
      "rawMarkdown": "Interesting Idea :) Thank you for sharing!",
      "votes": null
    },
    {
      "id": "1690579",
      "postDate": "02/15/2022 02:37:37",
      "content": "<p>Congratulations <a href=\"https://www.kaggle.com/evilpsycho42\" target=\"_blank\">@evilpsycho42</a> </p>",
      "rawMarkdown": "Congratulations @evilpsycho42",
      "votes": null
    },
    {
      "id": "1690660",
      "postDate": "02/15/2022 03:45:40",
      "content": "<p>Thanks for sharing your solution. Postprocessing is interesting idea. I tried preprocessing with Swin to identify whether there is great barrier reef or not, however, it does not work for me… Congrats on 6th!</p>",
      "rawMarkdown": "Thanks for sharing your solution. Postprocessing is interesting idea. I tried preprocessing with Swin to identify whether there is great barrier reef or not, however, it does not work for me... Congrats on 6th!",
      "votes": null
    },
    {
      "id": "1690807",
      "postDate": "02/15/2022 05:33:04",
      "content": "<p>NP, it is actually first shared by <a href=\"https://www.kaggle.com/hengck23\" target=\"_blank\">@hengck23</a> <a href=\"https://www.kaggle.com/c/tensorflow-great-barrier-reef/discussion/300405#1650379\" target=\"_blank\">here</a></p>",
      "rawMarkdown": "NP, it is actually first shared by @hengck23 [here](https://www.kaggle.com/c/tensorflow-great-barrier-reef/discussion/300405#1650379)",
      "votes": null
    },
    {
      "id": "1690810",
      "postDate": "02/15/2022 05:34:57",
      "content": "<p>Congratulations! <a href=\"https://www.kaggle.com/evilpsycho42\" target=\"_blank\">@evilpsycho42</a> </p>",
      "rawMarkdown": "Congratulations! @evilpsycho42",
      "votes": null
    },
    {
      "id": "1690864",
      "postDate": "02/15/2022 06:16:12",
      "content": "<p>Yes. How to construct post cls training samples is a problem. </p>",
      "rawMarkdown": "Yes. How to construct post cls training samples is a problem.",
      "votes": null
    },
    {
      "id": "1690943",
      "postDate": "02/15/2022 07:01:09",
      "content": "<p>Thanks you! Congrats on the SOLO silver medal</p>",
      "rawMarkdown": "Thanks you! Congrats on the SOLO silver medal",
      "votes": null
    },
    {
      "id": "1690946",
      "postDate": "02/15/2022 07:02:19",
      "content": "<p>We team did a good job!</p>",
      "rawMarkdown": "We team did a good job!",
      "votes": null
    },
    {
      "id": "1690948",
      "postDate": "02/15/2022 07:04:33",
      "content": "<p>Thank you.  You &amp; your teammate shared a lot great idea,  we all benifit from it .</p>",
      "rawMarkdown": "Thank you.  You & your teammate shared a lot great idea,  we all benifit from it .",
      "votes": null
    },
    {
      "id": "1691008",
      "postDate": "02/15/2022 07:27:31",
      "content": "<p>Congratulations! Would you mind sharing the lb of the single models?</p>",
      "rawMarkdown": "Congratulations! Would you mind sharing the lb of the single models?",
      "votes": null
    },
    {
      "id": "1691099",
      "postDate": "02/15/2022 08:31:32",
      "content": "<p>Thanks for the write up. Nice piece of engineering effort. And big congratulations on becoming comp master! 🙂</p>",
      "rawMarkdown": "Thanks for the write up. Nice piece of engineering effort. And big congratulations on becoming comp master! 🙂",
      "votes": null
    },
    {
      "id": "1692065",
      "postDate": "02/15/2022 19:31:53",
      "content": "<p>Thanks for the great writeup and congrats to you and <a href=\"https://www.kaggle.com/trushk\" target=\"_blank\">@trushk</a> on reaching comp master! 🙏</p>",
      "rawMarkdown": "Thanks for the great writeup and congrats to you and @trushk on reaching comp master! 🙏",
      "votes": null
    },
    {
      "id": "1692304",
      "postDate": "02/16/2022 00:48:53",
      "content": "<p>Congrats! great write-up</p>",
      "rawMarkdown": "Congrats! great write-up",
      "votes": null
    },
    {
      "id": "2192154",
      "postDate": "03/22/2023 13:16:32",
      "content": "<p>Congrats! </p>",
      "rawMarkdown": "Congrats!",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 1690546,
      "author_name": "trushk",
      "author_url": "",
      "post_date": "02/15/2022 02:01:29",
      "content": "<p>Congratulation on becoming competition master <a href=\"https://www.kaggle.com/evilpsycho42\" target=\"_blank\">@evilpsycho42</a> ! </p>",
      "votes": null,
      "replies": [
        {
          "id": 1690946,
          "author_name": "evilpsycho42",
          "author_url": "",
          "post_date": "02/15/2022 07:02:19",
          "content": "<p>We team did a good job!</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1690548,
      "author_name": "mrinath",
      "author_url": "",
      "post_date": "02/15/2022 02:03:10",
      "content": "<p>How have you done post classification?</p>",
      "votes": null,
      "replies": [
        {
          "id": 1690552,
          "author_name": "khyeh0719",
          "author_url": "",
          "post_date": "02/15/2022 02:07:16",
          "content": "<p>we used the out-of-fold prediction box, calculate the iou between the prediction box and ground truth box, then train a new model to determine the iou between the prediction box and the ground truth box</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1690556,
          "author_name": "vincentwang25",
          "author_url": "",
          "post_date": "02/15/2022 02:12:57",
          "content": "<p>when you get the IOU, how do you use that information to improve the score?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1690559,
          "author_name": "khyeh0719",
          "author_url": "",
          "post_date": "02/15/2022 02:16:21",
          "content": "<p>use thresholding on the predicted iou: we used 0.2 as threshold, predicted iou &gt; 0.2 as pred box to be kept, it is tuned again based on the cv</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1690573,
          "author_name": "vincentwang25",
          "author_url": "",
          "post_date": "02/15/2022 02:29:52",
          "content": "<p>Interesting Idea :) Thank you for sharing!</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 1690807,
          "author_name": "khyeh0719",
          "author_url": "",
          "post_date": "02/15/2022 05:33:04",
          "content": "<p>NP, it is actually first shared by <a href=\"https://www.kaggle.com/hengck23\" target=\"_blank\">@hengck23</a> <a href=\"https://www.kaggle.com/c/tensorflow-great-barrier-reef/discussion/300405#1650379\" target=\"_blank\">here</a></p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1690579,
      "author_name": "robsonsan",
      "author_url": "",
      "post_date": "02/15/2022 02:37:37",
      "content": "<p>Congratulations <a href=\"https://www.kaggle.com/evilpsycho42\" target=\"_blank\">@evilpsycho42</a> </p>",
      "votes": null,
      "replies": [
        {
          "id": 1690943,
          "author_name": "evilpsycho42",
          "author_url": "",
          "post_date": "02/15/2022 07:01:09",
          "content": "<p>Thanks you! Congrats on the SOLO silver medal</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1690660,
      "author_name": "ttkagglett",
      "author_url": "",
      "post_date": "02/15/2022 03:45:40",
      "content": "<p>Thanks for sharing your solution. Postprocessing is interesting idea. I tried preprocessing with Swin to identify whether there is great barrier reef or not, however, it does not work for me… Congrats on 6th!</p>",
      "votes": null,
      "replies": [
        {
          "id": 1690864,
          "author_name": "evilpsycho42",
          "author_url": "",
          "post_date": "02/15/2022 06:16:12",
          "content": "<p>Yes. How to construct post cls training samples is a problem. </p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1690810,
      "author_name": "lukaszborecki",
      "author_url": "",
      "post_date": "02/15/2022 05:34:57",
      "content": "<p>Congratulations! <a href=\"https://www.kaggle.com/evilpsycho42\" target=\"_blank\">@evilpsycho42</a> </p>",
      "votes": null,
      "replies": [
        {
          "id": 1690948,
          "author_name": "evilpsycho42",
          "author_url": "",
          "post_date": "02/15/2022 07:04:33",
          "content": "<p>Thank you.  You &amp; your teammate shared a lot great idea,  we all benifit from it .</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 1691008,
      "author_name": "kuanweichen",
      "author_url": "",
      "post_date": "02/15/2022 07:27:31",
      "content": "<p>Congratulations! Would you mind sharing the lb of the single models?</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1691099,
      "author_name": "sgalib",
      "author_url": "",
      "post_date": "02/15/2022 08:31:32",
      "content": "<p>Thanks for the write up. Nice piece of engineering effort. And big congratulations on becoming comp master! 🙂</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1692065,
      "author_name": "init27",
      "author_url": "",
      "post_date": "02/15/2022 19:31:53",
      "content": "<p>Thanks for the great writeup and congrats to you and <a href=\"https://www.kaggle.com/trushk\" target=\"_blank\">@trushk</a> on reaching comp master! 🙏</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 1692304,
      "author_name": "gokulhari596",
      "author_url": "",
      "post_date": "02/16/2022 00:48:53",
      "content": "<p>Congrats! great write-up</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 2192154,
      "author_name": "tatarstan",
      "author_url": "",
      "post_date": "03/22/2023 13:16:32",
      "content": "<p>Congrats! </p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "1690543": "Congratulations to all team which trust your CV ,  the Private board shake huge. Thanks to my teammates @khyeh0719 @trushk  I have a greate journey in this competition.\n\n## Pipeline\n\n![pipeline](https://raw.githubusercontent.com/EvilPsyCHo/kaggle-detect-starfish/main/asset/arch.png)\n\n## Trust your CV\n\nWe split data by video_id, and calculate the f2-score on the whole oof data, and fund something interesting.\n\n1. CV shows model is work great when infer img resolution = train img resolution,  but LB need X2~X2.5 infer resolution to get nice score.\n2. Track improve the score about 0.002 on both CV and LB .\n3. Post classification improve the score about 0.006~0.01 on both CV and LB.\n4. Infer with low conf and use Wbf ensemble give use about 0.02 boost.\n\nfinally we choose our 4 sub on this strategy:\n1. best cv sub w/ normal resolution     ->LB 0.616 / Private 0.723\n2. best lb sub                                        ->LB 0.716 / Private  0.692 (big shake)\n3. best cv X1.5 resolution.                    ->LB 0.668/ Private 0.727 \n4. best cv X2.0 resolution                    ->Lb 0.700/ Private 0.711\n\n## Best CV Model\n\n1. post cls use swin-transformer\n2. track use nofair public setting\n3. wbf ensemble\n4. single model as follow show:\n\n| name | train config | infer config |\n| --- | --- |--- |\n| s1 |  yolov5m6_e5_bs1_lr01_img3000_public | sz3600_nmsconf0.01_nmsiou0.2|\n| s3 |  yolov5m6_e5_bs1_lr01_img3000_public | sz2412_nmsconf0.01_nmsiou0.2|\n|s15| yolov5s6_e5_bs2_lr01_img3000_public | sz3000_nmsconf0.01_nmsiou0.2|\n|s61|yolov5m6_e10_bs8_lr01_img3600_cp_nb8|sz3600_conf0.01_iou0.2|\n|s62|yolov5s6_e10_bs8_lr01_img3000_cp_nb8|sz3000_conf0.01_iou0.2|\n|s63|yolov5m6_e10_bs8_lr01_img3600_cp_nb8|sz2412_conf0.01_iou0.2|",
    "1690546": "Congratulation on becoming competition master @evilpsycho42 !",
    "1690548": "How have you done post classification?",
    "1690552": "we used the out-of-fold prediction box, calculate the iou between the prediction box and ground truth box, then train a new model to determine the iou between the prediction box and the ground truth box",
    "1690556": "when you get the IOU, how do you use that information to improve the score?",
    "1690559": "use thresholding on the predicted iou: we used 0.2 as threshold, predicted iou > 0.2 as pred box to be kept, it is tuned again based on the cv",
    "1690573": "Interesting Idea :) Thank you for sharing!",
    "1690579": "Congratulations @evilpsycho42",
    "1690660": "Thanks for sharing your solution. Postprocessing is interesting idea. I tried preprocessing with Swin to identify whether there is great barrier reef or not, however, it does not work for me... Congrats on 6th!",
    "1690807": "NP, it is actually first shared by @hengck23 [here](https://www.kaggle.com/c/tensorflow-great-barrier-reef/discussion/300405#1650379)",
    "1690810": "Congratulations! @evilpsycho42",
    "1690864": "Yes. How to construct post cls training samples is a problem.",
    "1690943": "Thanks you! Congrats on the SOLO silver medal",
    "1690946": "We team did a good job!",
    "1690948": "Thank you.  You & your teammate shared a lot great idea,  we all benifit from it .",
    "1691008": "Congratulations! Would you mind sharing the lb of the single models?",
    "1691099": "Thanks for the write up. Nice piece of engineering effort. And big congratulations on becoming comp master! 🙂",
    "1692065": "Thanks for the great writeup and congrats to you and @trushk on reaching comp master! 🙏",
    "1692304": "Congrats! great write-up",
    "2192154": "Congrats!"
  },
  "source": "meta"
}