{
  "guild": {
    "id": "1361349522684510449",
    "name": "wafer.space Community",
    "iconUrl": "2025-12_media/fb143eaa45770cbb40493d09b625e98b-09FD1.png"
  },
  "channel": {
    "id": "1444531273728262376",
    "type": "GuildPublicThread",
    "categoryId": "1409660288822673408",
    "category": "questions",
    "name": "Metal Fill",
    "topic": null
  },
  "dateRange": {
    "after": "2025-11-30T23:59:59.999+00:00",
    "before": "2026-01-01T00:00:00+00:00"
  },
  "exportedAt": "2026-05-11T18:48:49.8558365+00:00",
  "messages": [
    {
      "id": "1444923623063162992",
      "type": "Default",
      "timestamp": "2025-12-01T05:30:37.121+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "@Leo Moser (mole99) Hi mole99, may I ask a further question?  Can I ask why only this much metal is filled here? It seems the density requirement is still not met. Is this normal? Thank you very much!",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [
        {
          "id": "1444923621536694323",
          "url": "2025-12_media/image-D9BC8.png",
          "fileName": "image.png",
          "fileSizeBytes": 181641
        },
        {
          "id": "1444923622115512480",
          "url": "2025-12_media/image-5A019.png",
          "fileName": "image.png",
          "fileSizeBytes": 34859
        },
        {
          "id": "1444923622803243091",
          "url": "2025-12_media/image-48708.png",
          "fileName": "image.png",
          "fileSizeBytes": 259828
        }
      ],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "inlineEmojis": []
    },
    {
      "id": "1444932627403640873",
      "type": "Default",
      "timestamp": "2025-12-01T06:06:23.923+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "The filler generation script was made to fill an entire chip, so it adheres to rules such as leaving a 26um spacing from the edges to meet the 10um distance to the sealring etc.\nI assume this is what leads to what we see here.",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1444938557826531413",
      "type": "Default",
      "timestamp": "2025-12-01T06:29:57.846+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "I see, thanks! I think this works. We do this because we will integrate this module to our analog module.",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [
        {
          "id": "1444938557318762607",
          "url": "2025-12_media/image-E41E3.png",
          "fileName": "image.png",
          "fileSizeBytes": 10312
        },
        {
          "id": "1444938557583130724",
          "url": "2025-12_media/image-D29BE.png",
          "fileName": "image.png",
          "fileSizeBytes": 135746
        }
      ],
      "embeds": [],
      "stickers": [],
      "reactions": [
        {
          "emoji": {
            "id": "",
            "name": "\ud83d\udc4d",
            "code": "thumbsup",
            "isAnimated": false,
            "imageUrl": "2025-12_media/1f44d-27259.svg"
          },
          "count": 1,
          "users": [
            {
              "id": "323371864074485771",
              "name": "mole99",
              "discriminator": "0000",
              "nickname": "Leo Moser (mole99)",
              "color": null,
              "isBot": false,
              "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
            }
          ]
        }
      ],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1444943456861556796",
      "type": "Default",
      "timestamp": "2025-12-01T06:49:25.867+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Oh I see, actually we don't need fill the digital module at this stage, like we can fill all during the top level?",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1444954697034371073",
      "type": "Reply",
      "timestamp": "2025-12-01T07:34:05.733+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Yes, that is the usual approach. The fill for the entire chip is added at the end.\n\nIf you do an analog top-level integration you can add the fill manually:\n\n```\nklayout -b -zz -r ${PDK_ROOT}/${PDK}/libs.tech/klayout/tech/drc/filler_generation/fill_all.rb -rd input=chip_top.gds -rd output=chip_top_filled.gds\n```",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "839883081896689765",
          "name": "buck_042",
          "discriminator": "0000",
          "nickname": "Buck",
          "color": null,
          "isBot": false,
          "roles": [],
          "avatarUrl": "2025-12_media/1-B2132.png"
        }
      ],
      "reference": {
        "messageId": "1444943456861556796",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1445070331613282518",
      "type": "Reply",
      "timestamp": "2025-12-01T15:13:35.165+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Hi Leo, thank you! If we want to do top-level integration, may I ask how to obtain a clean pad ring without any logic cells? My current idea is to follow the template, remove everything in the Verilog except VDD/VSS and the pad instances, and remove the metal fill step in the flow, and then rerun the synthesis and PnR flow. Is this the correct approach?",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "reference": {
        "messageId": "1444954697034371073",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1445071219425546413",
      "type": "Reply",
      "timestamp": "2025-12-01T15:17:06.836+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "There is an easier approach :)\nYou customize the flow to only generate the padring + sealring and then streamout the GDS. I already did this for the MOSbius group: https://github.com/wafer-space/gf180mcu-project-template/pull/29",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "839883081896689765",
          "name": "buck_042",
          "discriminator": "0000",
          "nickname": "Buck",
          "color": null,
          "isBot": false,
          "roles": [],
          "avatarUrl": "2025-12_media/1-B2132.png"
        }
      ],
      "reference": {
        "messageId": "1445070331613282518",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1445073706736029870",
      "type": "Reply",
      "timestamp": "2025-12-01T15:26:59.857+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Thank you, this is very helpful! So with this, can we still configure our IO plan? Like, by changing the pad instances in Verilog and the IO placement inside the config.yaml.",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "reference": {
        "messageId": "1445071219425546413",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1445074364893495347",
      "type": "Default",
      "timestamp": "2025-12-01T15:29:36.774+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Yes, it still uses the LibreLane configuration. It simply rearranges the flow slightly.",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1445074513514725437",
      "type": "Default",
      "timestamp": "2025-12-01T15:30:12.208+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "There were XOR errors between magic and KLayout (?) but I haven't had the time to look into it. Maybe you could see what the difference between the two layouts is.",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1445075481916473525",
      "type": "Reply",
      "timestamp": "2025-12-01T15:34:03.093+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Thank you, this is helpful!",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [
        {
          "emoji": {
            "id": "",
            "name": "\ud83d\udc4d",
            "code": "thumbsup",
            "isAnimated": false,
            "imageUrl": "2025-12_media/1f44d-27259.svg"
          },
          "count": 1,
          "users": [
            {
              "id": "323371864074485771",
              "name": "mole99",
              "discriminator": "0000",
              "nickname": "Leo Moser (mole99)",
              "color": null,
              "isBot": false,
              "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
            }
          ]
        }
      ],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "reference": {
        "messageId": "1445074364893495347",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1445076061003059221",
      "type": "Reply",
      "timestamp": "2025-12-01T15:36:21.158+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "I will try to do that. But to be honest, we are trying to catch up with the DDL now. \ud83d\ude02  See what we can help. Really thank you, Leo!",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "reference": {
        "messageId": "1445074513514725437",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": [
        {
          "id": "",
          "name": "\ud83d\ude02",
          "code": "joy",
          "isAnimated": false,
          "imageUrl": "2025-12_media/1f602-168C5.svg"
        }
      ]
    },
    {
      "id": "1445076397491224620",
      "type": "Default",
      "timestamp": "2025-12-01T15:37:41.383+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Yes, just make sure to use the correct layout then if there is a difference between magic and KLayout \ud83d\ude01\nNo worries! Looking forward to your design.",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": [
        {
          "id": "",
          "name": "\ud83d\ude01",
          "code": "grin",
          "isAnimated": false,
          "imageUrl": "2025-12_media/1f601-4E9BD.svg"
        }
      ]
    },
    {
      "id": "1445177037902970930",
      "type": "Reply",
      "timestamp": "2025-12-01T22:17:35.927+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "I also encountered this when generating the empty pad frame today. Now I am looking into the differences between the two layouts",
      "author": {
        "id": "1413605821430104114",
        "name": "xintingjiang_36756",
        "discriminator": "0000",
        "nickname": "Evansika",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/079dacdd621abb17caecd8882513a32e-13E97.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "reference": {
        "messageId": "1445074513514725437",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1445183613833576509",
      "type": "Default",
      "timestamp": "2025-12-01T22:43:43.751+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "In my case, klayout gds is correct because I found that the only mismatch is that the magic gds has these extract tieh and tiel cells at the origin and I don't know why",
      "author": {
        "id": "1413605821430104114",
        "name": "xintingjiang_36756",
        "discriminator": "0000",
        "nickname": "Evansika",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/079dacdd621abb17caecd8882513a32e-13E97.png"
      },
      "attachments": [
        {
          "id": "1445183613594370149",
          "url": "2025-12_media/6ED7F713-7F6F-4110-92A3-15E65CBCDAF2-4EA44.png",
          "fileName": "6ED7F713-7F6F-4110-92A3-15E65CBCDAF2.png",
          "fileSizeBytes": 31762
        }
      ],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1445317188952260709",
      "type": "Default",
      "timestamp": "2025-12-02T07:34:30.541+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Right, that's the difference! It seems that magic exports the instances even if they were not placed. There are some constants that are used in `chip_top`, but we stream out the padring before any of those stdcells can be placed and routed. \nSo the KLayout version is the correct one to use.",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1445798440511733761",
      "type": "Reply",
      "timestamp": "2025-12-03T15:26:49.854+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Hi Leo, may I ask a question? We are doing analog top-level integration now, so after we connect our design to the pad ring, is this the last step before DRC and LVS? Or any other step we should run? Thank you!",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "reference": {
        "messageId": "1444954697034371073",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1445799020521066628",
      "type": "Reply",
      "timestamp": "2025-12-03T15:29:08.139+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Hi Buck, sure thing. You should also generate the fill before doing DRC and LVS, but other than that, that should be it.",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [
        {
          "emoji": {
            "id": "",
            "name": "\ud83d\udc4d",
            "code": "thumbsup",
            "isAnimated": false,
            "imageUrl": "2025-12_media/1f44d-27259.svg"
          },
          "count": 1,
          "users": [
            {
              "id": "839883081896689765",
              "name": "buck_042",
              "discriminator": "0000",
              "nickname": "Buck",
              "color": null,
              "isBot": false,
              "avatarUrl": "2025-12_media/1-B2132.png"
            }
          ]
        }
      ],
      "mentions": [
        {
          "id": "839883081896689765",
          "name": "buck_042",
          "discriminator": "0000",
          "nickname": "Buck",
          "color": null,
          "isBot": false,
          "roles": [],
          "avatarUrl": "2025-12_media/1-B2132.png"
        }
      ],
      "reference": {
        "messageId": "1445798440511733761",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1445799414202503268",
      "type": "Reply",
      "timestamp": "2025-12-03T15:30:42+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Thanks!",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "reference": {
        "messageId": "1445799020521066628",
        "channelId": "1444531273728262376",
        "guildId": "1361349522684510449"
      },
      "inlineEmojis": []
    },
    {
      "id": "1447774602863448105",
      "type": "Default",
      "timestamp": "2025-12-09T02:19:23.674+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "@Leo Moser (mole99) Hi Leo, sorry to bother you again, after we do the top level analog style integration and do the fill step, is there any script or command that we can use to tun the drc check in librelane environment? Before we used chipathon environment. Thanks!",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [
        {
          "id": "1447774602565648454",
          "url": "2025-12_media/image-8B689.png",
          "fileName": "image.png",
          "fileSizeBytes": 1796523
        }
      ],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [
        {
          "id": "323371864074485771",
          "name": "mole99",
          "discriminator": "0000",
          "nickname": "Leo Moser (mole99)",
          "color": null,
          "isBot": false,
          "roles": [
            {
              "id": "1423020172595298314",
              "name": "Mod",
              "color": null,
              "position": 1
            }
          ],
          "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
        }
      ],
      "inlineEmojis": []
    },
    {
      "id": "1447835974397591605",
      "type": "Default",
      "timestamp": "2025-12-09T06:23:15.788+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "If you run the pre-check, it will run DRC.",
      "author": {
        "id": "596068704471482370",
        "name": "246tnt",
        "discriminator": "0000",
        "nickname": "tnt",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/88d17af9d19ab43565b0c46751ef7d12-DFEE5.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1447851345557061686",
      "type": "Default",
      "timestamp": "2025-12-09T07:24:20.558+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "As Sylvain said, you can run the precheck.\nThis can be done either through the online platform (https://platform.wafer.space/) or locally (https://github.com/wafer-space/gf180mcu-precheck).\nAlternatively, you can run the DRC deck directly: https://github.com/wafer-space/gf180mcu/blob/main/gf180mcuD/libs.tech/klayout/tech/drc/gf180mcu.drc",
      "author": {
        "id": "323371864074485771",
        "name": "mole99",
        "discriminator": "0000",
        "nickname": "Leo Moser (mole99)",
        "color": null,
        "isBot": false,
        "roles": [
          {
            "id": "1423020172595298314",
            "name": "Mod",
            "color": null,
            "position": 1
          }
        ],
        "avatarUrl": "2025-12_media/3c7c17f3225f6e56f4dccd83f14383f2-73F83.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    },
    {
      "id": "1448027290272530514",
      "type": "Default",
      "timestamp": "2025-12-09T19:03:29.047+00:00",
      "timestampEdited": null,
      "callEndedTimestamp": null,
      "isPinned": false,
      "content": "Thanks!",
      "author": {
        "id": "839883081896689765",
        "name": "buck_042",
        "discriminator": "0000",
        "nickname": "Buck",
        "color": null,
        "isBot": false,
        "roles": [],
        "avatarUrl": "2025-12_media/1-B2132.png"
      },
      "attachments": [],
      "embeds": [],
      "stickers": [],
      "reactions": [],
      "mentions": [],
      "inlineEmojis": []
    }
  ],
  "messageCount": 23
}