{"id":1813,"date":"2026-03-11T03:18:15","date_gmt":"2026-03-11T03:18:15","guid":{"rendered":"https:\/\/fervent-raman.202-28-34-97.plesk.page\/?page_id=1813"},"modified":"2026-04-28T09:27:31","modified_gmt":"2026-04-28T09:27:31","slug":"%e0%b8%9b%e0%b8%8e%e0%b8%b4%e0%b8%97%e0%b8%b4%e0%b8%99%e0%b8%81%e0%b8%b2%e0%b8%a3%e0%b8%97%e0%b8%b3%e0%b8%a7%e0%b8%b4%e0%b8%97%e0%b8%a2%e0%b8%b2%e0%b8%99%e0%b8%b4%e0%b8%9e%e0%b8%99%e0%b8%98%e0%b9%8c","status":"publish","type":"page","link":"https:\/\/grad.msu.ac.th\/?page_id=1813","title":{"rendered":"\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1813\" class=\"elementor elementor-1813\">\n\t\t\t\t<div class=\"elementor-element elementor-element-77fc12f e-con-full e-flex e-con e-parent\" data-id=\"77fc12f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95de0a elementor-widget elementor-widget-html\" data-id=\"d95de0a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<section class=\"hero\">\r\n  \r\n  <div class=\"hero-left\">\r\n    <h2>\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c<\/h2>\r\n  <\/div>\r\n\r\n  <div class=\"hero-right\"><\/div>\r\n\r\n<\/section>\r\n\r\n<style>\r\n    .hero{\r\n  display:flex;\r\n  width:100%;\r\n}\r\n\r\n.hero-left {\r\n  width:40%;\r\n  background:#072140;\r\n  color:white;\r\n  padding:80px;\r\n  text-align: center;\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n}\r\n.hero-left h2 {\r\n    color: white;\r\n    font-size: 66px;\r\n}\r\n\r\n.hero-right{\r\n  width:60%;\r\n\r\n  background-image:url(\"https:\/\/grad.msu.ac.th\/wp-content\/uploads\/2026\/04\/524.jpg\");\r\n  background-size: cover;\r\n  background-position: center;\r\n  background-repeat: no-repeat;\r\n  min-height:400px;\r\n}\r\n\r\n\/* =========================\r\n   \ud83d\udcf1 Tablet\r\n========================= *\/\r\n@media (max-width: 1024px) {\r\n  .hero-left {\r\n    padding: 50px;\r\n  }\r\n\r\n  .hero-left h2 {\r\n    font-size: 48px;\r\n  }\r\n}\r\n\r\n\/* =========================\r\n   \ud83d\udcf1 Mobile\r\n========================= *\/\r\n@media (max-width: 768px) {\r\n  .hero {\r\n    flex-direction: column;\r\n  }\r\n\r\n  .hero-left,\r\n  .hero-right {\r\n    width: 100%;\r\n  }\r\n\r\n  .hero-left {\r\n    padding: 40px 20px;\r\n  }\r\n\r\n  .hero-left h2 {\r\n    font-size: 36px;\r\n  }\r\n\r\n  .hero-right {\r\n    min-height: 250px;\r\n  }\r\n}\r\n\r\n\/* =========================\r\n   \ud83d\udcf1 Small Mobile\r\n========================= *\/\r\n@media (max-width: 480px) {\r\n  .hero-left h2 {\r\n    font-size: 28px;\r\n  }\r\n\r\n  .hero-right {\r\n    min-height: 200px;\r\n  }\r\n}\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-30f3529 e-flex e-con-boxed e-con e-parent\" data-id=\"30f3529\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-51ee44a elementor-widget elementor-widget-html\" data-id=\"51ee44a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"th\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<title>\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c<\/title>\r\n<style>\r\n  :root {\r\n    --gold: #C8961E;\r\n    --gold-light: #F0B429;\r\n    --gold-pale: #FFF8E7;\r\n    --gold-border: #F5D78A;\r\n    --navy: #1A2744;\r\n    --bg: #F7F8FC;\r\n    --white: #FFFFFF;\r\n    --gray-100: #F3F4F6;\r\n    --gray-200: #E5E7EB;\r\n    --gray-400: #9CA3AF;\r\n    --gray-600: #4B5563;\r\n    --gray-800: #1F2937;\r\n    --radius: 12px;\r\n    --shadow-sm: 0 1px 3px rgba(0,0,0,0.06);\r\n    --shadow: 0 4px 16px rgba(0,0,0,0.08);\r\n  }\r\n  * { margin: 0; padding: 0; box-sizing: border-box; }\r\n\r\n  .topbar { background: var(--navy); padding: 0 32px; display: flex; align-items: center; height: 56px; box-shadow: 0 2px 8px rgba(0,0,0,0.2); }\r\n  .topbar-logo { display: flex; align-items: center; gap: 10px; color: white; font-size: 15px; font-weight: 600; }\r\n  .topbar-logo .dot { width: 28px; height: 28px; background: linear-gradient(135deg, var(--gold-light), var(--gold)); border-radius: 6px; display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 700; color: white; }\r\n\r\n  .wrapper { max-width: 860px; margin: 0 auto; padding: 32px 24px 64px; }\r\n\r\n  .page-header { margin-bottom: 24px; }\r\n  .page-title { display: flex; align-items: center; gap: 12px; font-size: 20px; font-weight: 700; color: var(--navy); margin-bottom: 4px; }\r\n  .page-icon { width: 40px; height: 40px; background: linear-gradient(135deg, var(--gold-light), var(--gold)); border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 20px; }\r\n  .page-sub { color: var(--gray-600); font-size: 13.5px; padding-left: 52px; }\r\n\r\n  .search-wrap { position: relative; margin-bottom: 24px; }\r\n  .search-wrap input { width: 100%; padding: 13px 18px 13px 46px; border: 1.5px solid var(--gray-200); border-radius: var(--radius); font-family: 'Sarabun', sans-serif; font-size: 14px; background: var(--white); color: var(--gray-800); outline: none; transition: border-color 0.2s, box-shadow 0.2s; box-shadow: var(--shadow-sm); }\r\n  .search-wrap input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(200,150,30,0.12); }\r\n  .search-wrap input::placeholder { color: var(--gray-400); }\r\n  .search-icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--gray-400); font-size: 16px; }\r\n\r\n  .total-count { font-size: 13px; color: var(--gray-600); margin-bottom: 16px; }\r\n  .total-count strong { color: var(--navy); }\r\n\r\n  \/* GROUP CARD *\/\r\n  .group-card { margin-bottom: 8px; border: 1px solid var(--gray-200); border-radius: 12px; overflow: hidden; background: var(--white); box-shadow: var(--shadow-sm); transition: box-shadow 0.2s; }\r\n  .group-card:hover { box-shadow: var(--shadow); }\r\n\r\n  .group-header { display: flex; align-items: center; justify-content: space-between; padding: 14px 20px; cursor: pointer; user-select: none; transition: background 0.15s; gap: 12px; }\r\n  .group-header:hover { background: var(--gold-pale); }\r\n  .group-header.open { background: var(--navy); color: white; }\r\n\r\n  .group-title-wrap { display: flex; align-items: flex-start; gap: 10px; flex: 1; min-width: 0; }\r\n  .group-title { font-weight: 700; font-size: 14.5px; line-height: 1.45; }\r\n\r\n  .year-latest-pill { font-size: 11px; font-weight: 700; padding: 2px 9px; border-radius: 20px; background: var(--gold-light); color: var(--navy); border: 1px solid var(--gold); white-space: nowrap; flex-shrink: 0; align-self: center; }\r\n  .group-header.open .year-latest-pill { background: rgba(255,255,255,0.9); }\r\n\r\n  .group-meta { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }\r\n  .group-count { font-size: 12px; color: var(--gray-400); white-space: nowrap; }\r\n  .group-header.open .group-count { color: rgba(255,255,255,0.55); }\r\n  .chevron { font-size: 11px; transition: transform 0.22s; color: var(--gray-400); }\r\n  .group-header.open .chevron { transform: rotate(180deg); color: white; }\r\n\r\n  .group-body { display: none; border-top: 1px solid var(--gray-200); }\r\n  .group-body.open { display: block; }\r\n\r\n  .item-card { display: flex; align-items: center; gap: 12px; padding: 13px 20px; text-decoration: none; color: inherit; border-bottom: 1px solid var(--gray-100); transition: background 0.15s, padding-left 0.15s; }\r\n  .item-card:last-child { border-bottom: none; }\r\n  .item-card:hover { background: var(--gold-pale); padding-left: 24px; }\r\n  .item-icon { font-size: 15px; flex-shrink: 0; opacity: 0.6; }\r\n  .item-text { flex: 1; font-size: 14px; font-weight: 500; line-height: 1.4; }\r\n  .item-arrow { color: var(--gray-400); font-size: 13px; flex-shrink: 0; transition: color 0.15s; }\r\n  .item-card:hover .item-arrow { color: var(--gold); }\r\n\r\n  .tag { font-size: 11px; padding: 2px 8px; border-radius: 12px; font-weight: 600; flex-shrink: 0; }\r\n  .tag-revised  { background: #FEE2E2; color: #DC2626; border: 1px solid #FECACA; }\r\n  .tag-summer   { background: #D1FAE5; color: #059669; border: 1px solid #A7F3D0; }\r\n  .tag-semester { background: #DBEAFE; color: #1D4ED8; border: 1px solid #BFDBFE; }\r\n  .tag-special  { background: #EDE9FE; color: #7C3AED; border: 1px solid #DDD6FE; }\r\n  .tag-dept     { background: #FEF3C7; color: #92400E; border: 1px solid #FDE68A; }\r\n\r\n  .empty-state { text-align: center; padding: 48px 24px; color: var(--gray-400); font-size: 14px; }\r\n  .empty-state .emoji { font-size: 36px; margin-bottom: 12px; display: block; }\r\n\r\n  @keyframes fadeUp { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }\r\n  .group-card { animation: fadeUp 0.2s ease both; }\r\n  .group-card:nth-child(1) { animation-delay: 0.02s; }\r\n  .group-card:nth-child(2) { animation-delay: 0.05s; }\r\n  .group-card:nth-child(3) { animation-delay: 0.08s; }\r\n  .group-card:nth-child(n+4) { animation-delay: 0.10s; }\r\n<\/style>\r\n<\/head>\r\n<body>\r\n\r\n\r\n\r\n<div class=\"wrapper\">\r\n\r\n  <div class=\"page-header\">\r\n    <div class=\"page-title\">\r\n      <div class=\"page-icon\">\ud83d\udcd6<\/div>\r\n      \u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\r\n    <\/div>\r\n\r\n  <div class=\"search-wrap\">\r\n    <span class=\"search-icon\">\ud83d\udd0d<\/span>\r\n    <input type=\"text\" id=\"searchInput\" placeholder=\"\u0e04\u0e49\u0e19\u0e2b\u0e32\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19...\" \/>\r\n  <\/div>\r\n\r\n  <div class=\"total-count\" id=\"countLabel\"><\/div>\r\n  <div id=\"container\"><\/div>\r\n  <div id=\"empty-state\" class=\"empty-state\" style=\"display:none\">\r\n    <span class=\"emoji\">\ud83d\udd0d<\/span>\r\n    <span id=\"empty-text\"><\/span>\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n<script>\r\n\/\/ \u0e42\u0e04\u0e23\u0e07\u0e2a\u0e23\u0e49\u0e32\u0e07: header = \u0e2b\u0e31\u0e27\u0e02\u0e49\u0e2d (\u0e44\u0e21\u0e48\u0e21\u0e35 bullet), items = \u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e20\u0e32\u0e22\u0e43\u0e15\u0e49 (bullet o)\r\nconst data = [\r\n  {\r\n    header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2569\",\r\n    year: 2569,\r\n    items: [\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c (\u0e41\u0e01\u0e49\u0e44\u0e02\u0e09\u0e1a\u0e31\u0e1a\u0e17\u0e35\u0e48 1)\", tags: [\"revised\"], url: \"https:\/\/grad.msu.ac.th\/wp-content\/uploads\/2026\/04\/20260402135511769.pdf\" },\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [], url: \"https:\/\/drive.google.com\/file\/d\/1ala3ZCzc03zO6weh6I5J24Vh4tM5TGqD\/view?usp=sharing\" },\r\n    ]\r\n  },\r\n  {\r\n    header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2568\",\r\n    year: 2568,\r\n    items: [\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c (\u0e41\u0e01\u0e49\u0e44\u0e02\u0e09\u0e1a\u0e31\u0e1a\u0e17\u0e35\u0e48 3)\", tags: [\"revised\"], url: \"https:\/\/drive.google.com\/file\/d\/1cy5K2yt3QFWM82R1JsbU1XtN3GXWYdNA\/view?usp=sharing\" },\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c (\u0e41\u0e01\u0e49\u0e44\u0e02\u0e09\u0e1a\u0e31\u0e1a\u0e17\u0e35\u0e48 2)\", tags: [\"revised\"], url: \"https:\/\/drive.google.com\/file\/d\/1jK7dwGR2wPACRTG5GzizU_iAg-vmsXxU\/view?usp=sharing\" },\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c (\u0e41\u0e01\u0e49\u0e44\u0e02\u0e09\u0e1a\u0e31\u0e1a\u0e17\u0e35\u0e48 1)\", tags: [\"revised\"], url: \"https:\/\/drive.google.com\/file\/d\/1gf4PhvaLFKuoVJ7ZzpLCxnTyVChMxEsW\/view?usp=sharing\" },\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\",                   tags: [],          url: \"https:\/\/drive.google.com\/file\/d\/1UvdLYEM8SbJVu-t9OK92kEts3-T9Y8U4\/view?usp=sharing\" },\r\n    ]\r\n  },\r\n  {\r\n    header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2567 (\u0e1b\u0e23\u0e30\u0e08\u0e33\u0e20\u0e32\u0e04\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19)\",\r\n    year: 2567,\r\n    items: [\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"summer\"], url: \"https:\/\/drive.google.com\/file\/d\/122BmZ1_w-I0qcgT16tbRK3rOCYbk1Ejl\/view?usp=sharing\" },\r\n    ]\r\n  },\r\n  {\r\n    header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2567\",\r\n    year: 2567,\r\n    items: [\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [], url: \"https:\/\/drive.google.com\/file\/d\/1FiynMxXG-pr-IRP0nFHB5EPJfxSJThSX\/view?usp=sharing\" },\r\n    ]\r\n  },\r\n  {\r\n    header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2566 (\u0e1b\u0e23\u0e30\u0e08\u0e33\u0e20\u0e32\u0e04\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19)\",\r\n    year: 2566,\r\n    items: [\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"summer\"], url: \"https:\/\/drive.google.com\/file\/d\/1zOTSC1f9_QAfcc9-Iizyga_n0aXe2x6z\/view?usp=sharing\" },\r\n    ]\r\n  },\r\n  {\r\n    header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2566\",\r\n    year: 2566,\r\n    items: [\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [], url: \"https:\/\/drive.google.com\/file\/d\/1uE1jsrW150HRp1df1DqCnW8SzOG3ccKz\/view?usp=sharing\" },\r\n    ]\r\n  },\r\n  {\r\n    header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2565 (\u0e1b\u0e23\u0e30\u0e08\u0e33\u0e20\u0e32\u0e04\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19)\",\r\n    year: 2565,\r\n    items: [\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"summer\"], url: \"https:\/\/drive.google.com\/file\/d\/1IpcrOOGITFXORNjjB3DTZyxcIgcGm839\/view?usp=sharing\" },\r\n    ]\r\n  },\r\n  {\r\n    header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2565\",\r\n    year: 2565,\r\n    items: [\r\n      { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [], url: \"https:\/\/drive.google.com\/file\/d\/1AsB735xRdE4vD8kEZ4xItmAPPao2JcEv\/view?usp=sharing\" },\r\n    ]\r\n  },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2564\",\r\n  \/\/   year: 2564,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\/\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e04\u0e49\u0e19\u0e04\u0e27\u0e49\u0e32\u0e2d\u0e34\u0e2a\u0e23\u0e30 \u0e23\u0e30\u0e14\u0e31\u0e1a\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e28\u0e36\u0e01\u0e29\u0e32 \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2564 (\u0e1b\u0e23\u0e30\u0e08\u0e33\u0e20\u0e32\u0e04\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19)\",\r\n  \/\/   year: 2564,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"summer\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e15\u0e49\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2563\",\r\n  \/\/   year: 2563,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e1b\u0e25\u0e32\u0e22 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2563\",\r\n  \/\/   year: 2563,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32\u0e1e\u0e34\u0e40\u0e28\u0e29 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2563\",\r\n  \/\/   year: 2563,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"special\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e15\u0e49\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2562\",\r\n  \/\/   year: 2562,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e1b\u0e25\u0e32\u0e22 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2562\",\r\n  \/\/   year: 2562,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2562\",\r\n  \/\/   year: 2562,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"summer\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e15\u0e49\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2561\",\r\n  \/\/   year: 2561,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e1b\u0e25\u0e32\u0e22 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2561\",\r\n  \/\/   year: 2561,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2561\",\r\n  \/\/   year: 2561,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"summer\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e15\u0e49\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2560\",\r\n  \/\/   year: 2560,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e1b\u0e25\u0e32\u0e22 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2560\",\r\n  \/\/   year: 2560,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2560\",\r\n  \/\/   year: 2560,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"summer\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e15\u0e49\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2559\",\r\n  \/\/   year: 2559,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e23\u0e31\u0e1a\u0e2a\u0e48\u0e07\u0e1c\u0e25\u0e07\u0e32\u0e19\u0e27\u0e34\u0e08\u0e31\u0e22\/\u0e1c\u0e25\u0e07\u0e32\u0e19\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e2a\u0e23\u0e23\u0e04\u0e4c (TS6\/IS6) \u0e1b\u0e23\u0e30\u0e08\u0e33\u0e1b\u0e35 2560\", tags: [\"special\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e1b\u0e25\u0e32\u0e22 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2559\",\r\n  \/\/   year: 2559,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"semester\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2559\",\r\n  \/\/   year: 2559,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\", tags: [\"summer\"], url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e15\u0e49\u0e19 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2558\",\r\n  \/\/   year: 2558,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\",                                  tags: [\"semester\"], url: \"#\" },\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e19\u0e34\u0e2a\u0e34\u0e15 \u0e04\u0e13\u0e30\u0e1a\u0e31\u0e0d\u0e0a\u0e35\u0e41\u0e25\u0e30\u0e01\u0e32\u0e23\u0e08\u0e31\u0e14\u0e01\u0e32\u0e23\", tags: [\"dept\"],     url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n  \/\/ {\r\n  \/\/   header: \"\u0e20\u0e32\u0e04\u0e1b\u0e25\u0e32\u0e22 \u0e1b\u0e35\u0e01\u0e32\u0e23\u0e28\u0e36\u0e01\u0e29\u0e32 2558\",\r\n  \/\/   year: 2558,\r\n  \/\/   items: [\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\",                                  tags: [\"semester\"], url: \"#\" },\r\n  \/\/     { label: \"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e19\u0e34\u0e2a\u0e34\u0e15 \u0e04\u0e13\u0e30\u0e1a\u0e31\u0e0d\u0e0a\u0e35\u0e41\u0e25\u0e30\u0e01\u0e32\u0e23\u0e08\u0e31\u0e14\u0e01\u0e32\u0e23\", tags: [\"dept\"],     url: \"#\" },\r\n  \/\/   ]\r\n  \/\/ },\r\n];\r\n\r\nconst tagConfig = {\r\n  revised:  { cls: 'tag-revised',  text: '\u0e41\u0e01\u0e49\u0e44\u0e02' },\r\n  summer:   { cls: 'tag-summer',   text: '\u0e24\u0e14\u0e39\u0e23\u0e49\u0e2d\u0e19' },\r\n  semester: { cls: 'tag-semester', text: '\u0e23\u0e32\u0e22\u0e20\u0e32\u0e04' },\r\n  special:  { cls: 'tag-special',  text: '\u0e1e\u0e34\u0e40\u0e28\u0e29' },\r\n  dept:     { cls: 'tag-dept',     text: '\u0e04\u0e13\u0e30\u0e1a\u0e31\u0e0d\u0e0a\u0e35\u0e2f' },\r\n};\r\n\r\nconst latestYear = Math.max(...data.map(d => d.year));\r\n\r\nfunction matchesFilter(group, filter) {\r\n  if (!filter) return true;\r\n  const f = filter.toLowerCase();\r\n  if (group.header.toLowerCase().includes(f)) return true;\r\n  return group.items.some(item => item.label.toLowerCase().includes(f));\r\n}\r\n\r\nfunction renderItems(items, filter) {\r\n  const f = filter.toLowerCase();\r\n  return items\r\n    .filter(item => !filter || item.label.toLowerCase().includes(f) || true) \/\/ show all items if header matched\r\n    .map(item => {\r\n      const tagsHtml = item.tags.map(t => `<span class=\"tag ${tagConfig[t].cls}\">${tagConfig[t].text}<\/span>`).join('');\r\n      return `\r\n        <a class=\"item-card\" href=\"${item.url}\" target=\"_blank\">\r\n          <span class=\"item-icon\">\ud83d\udcc4<\/span>\r\n          <span class=\"item-text\">${item.label}<\/span>\r\n          ${tagsHtml}\r\n          <span class=\"item-arrow\">\u203a<\/span>\r\n        <\/a>`;\r\n    }).join('');\r\n}\r\n\r\nfunction render(filter = '') {\r\n  const container = document.getElementById('container');\r\n  const emptyState = document.getElementById('empty-state');\r\n  const countLabel = document.getElementById('countLabel');\r\n  container.innerHTML = '';\r\n\r\n  const filtered = data.filter(g => matchesFilter(g, filter));\r\n\r\n  if (filtered.length === 0) {\r\n    emptyState.style.display = '';\r\n    document.getElementById('empty-text').textContent = `\u0e44\u0e21\u0e48\u0e1e\u0e1a\u0e23\u0e32\u0e22\u0e01\u0e32\u0e23\u0e17\u0e35\u0e48\u0e04\u0e49\u0e19\u0e2b\u0e32 \"${filter}\"`;\r\n    countLabel.innerHTML = '';\r\n    return;\r\n  }\r\n\r\n  emptyState.style.display = 'none';\r\n  const totalItems = filtered.reduce((s, g) => s + g.items.length, 0);\r\n  countLabel.innerHTML = `\u0e41\u0e2a\u0e14\u0e07 <strong>${filtered.length}<\/strong> \u0e01\u0e25\u0e38\u0e48\u0e21 \/ <strong>${totalItems}<\/strong> \u0e23\u0e32\u0e22\u0e01\u0e32\u0e23`;\r\n\r\n  filtered.forEach((group, idx) => {\r\n    const isLatest = group.year === latestYear && idx === 0;\r\n    const isOpen = idx === 0 || filter !== '';\r\n\r\n    const card = document.createElement('div');\r\n    card.className = 'group-card';\r\n\r\n    const latestBadge = isLatest ? `<span class=\"year-latest-pill\">\u2b50 \u0e25\u0e48\u0e32\u0e2a\u0e38\u0e14<\/span>` : '';\r\n\r\n    card.innerHTML = `\r\n      <div class=\"group-header ${isOpen ? 'open' : ''}\">\r\n        <div class=\"group-title-wrap\">\r\n          <span style=\"font-size:16px;flex-shrink:0;margin-top:1px\">\ud83d\udcd6<\/span>\r\n          <span class=\"group-title\">${group.header}<\/span>\r\n        <\/div>\r\n        ${latestBadge}\r\n        <div class=\"group-meta\">\r\n          <span class=\"group-count\">${group.items.length} \u0e23\u0e32\u0e22\u0e01\u0e32\u0e23<\/span>\r\n          <span class=\"chevron\">\u25bc<\/span>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"group-body ${isOpen ? 'open' : ''}\">${renderItems(group.items, filter)}<\/div>\r\n    `;\r\n\r\n    card.querySelector('.group-header').addEventListener('click', function () {\r\n      const body = card.querySelector('.group-body');\r\n      const nowOpen = this.classList.toggle('open');\r\n      body.classList.toggle('open', nowOpen);\r\n    });\r\n\r\n    container.appendChild(card);\r\n  });\r\n}\r\n\r\nrender();\r\n\r\ndocument.getElementById('searchInput').addEventListener('input', function () {\r\n  render(this.value.trim());\r\n});\r\n<\/script>\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \ud83d\udcd6 \u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \ud83d\udd0d \ud83d\udd0d<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-1813","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c - \u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/grad.msu.ac.th\/?page_id=1813\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c - \u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22\" \/>\n<meta property=\"og:description\" content=\"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \ud83d\udcd6 \u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \ud83d\udd0d \ud83d\udd0d\" \/>\n<meta property=\"og:url\" content=\"https:\/\/grad.msu.ac.th\/?page_id=1813\" \/>\n<meta property=\"og:site_name\" content=\"\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-28T09:27:31+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/grad.msu.ac.th\/?page_id=1813\",\"url\":\"https:\/\/grad.msu.ac.th\/?page_id=1813\",\"name\":\"\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c - \u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22\",\"isPartOf\":{\"@id\":\"https:\/\/grad.msu.ac.th\/#website\"},\"datePublished\":\"2026-03-11T03:18:15+00:00\",\"dateModified\":\"2026-04-28T09:27:31+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/grad.msu.ac.th\/?page_id=1813#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/grad.msu.ac.th\/?page_id=1813\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/grad.msu.ac.th\/?page_id=1813#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/grad.msu.ac.th\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/grad.msu.ac.th\/#website\",\"url\":\"https:\/\/grad.msu.ac.th\/\",\"name\":\"\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/grad.msu.ac.th\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/grad.msu.ac.th\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/grad.msu.ac.th\/#organization\",\"name\":\"\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22\",\"url\":\"https:\/\/grad.msu.ac.th\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/grad.msu.ac.th\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/grad.msu.ac.th\/wp-content\/uploads\/2026\/03\/cropped-\u0e14\u0e35\u0e44\u0e0b\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d-1.png\",\"contentUrl\":\"https:\/\/grad.msu.ac.th\/wp-content\/uploads\/2026\/03\/cropped-\u0e14\u0e35\u0e44\u0e0b\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d-1.png\",\"width\":1219,\"height\":145,\"caption\":\"\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22\"},\"image\":{\"@id\":\"https:\/\/grad.msu.ac.th\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c - \u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/grad.msu.ac.th\/?page_id=1813","og_locale":"en_GB","og_type":"article","og_title":"\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c - \u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22","og_description":"\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \ud83d\udcd6 \u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c \ud83d\udd0d \ud83d\udd0d","og_url":"https:\/\/grad.msu.ac.th\/?page_id=1813","og_site_name":"\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22","article_modified_time":"2026-04-28T09:27:31+00:00","twitter_card":"summary_large_image","twitter_misc":{"Estimated reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/grad.msu.ac.th\/?page_id=1813","url":"https:\/\/grad.msu.ac.th\/?page_id=1813","name":"\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c - \u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22","isPartOf":{"@id":"https:\/\/grad.msu.ac.th\/#website"},"datePublished":"2026-03-11T03:18:15+00:00","dateModified":"2026-04-28T09:27:31+00:00","breadcrumb":{"@id":"https:\/\/grad.msu.ac.th\/?page_id=1813#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/grad.msu.ac.th\/?page_id=1813"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/grad.msu.ac.th\/?page_id=1813#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/grad.msu.ac.th\/"},{"@type":"ListItem","position":2,"name":"\u0e1b\u0e0e\u0e34\u0e17\u0e34\u0e19\u0e01\u0e32\u0e23\u0e17\u0e33\u0e27\u0e34\u0e17\u0e22\u0e32\u0e19\u0e34\u0e1e\u0e19\u0e18\u0e4c"}]},{"@type":"WebSite","@id":"https:\/\/grad.msu.ac.th\/#website","url":"https:\/\/grad.msu.ac.th\/","name":"\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22","description":"","publisher":{"@id":"https:\/\/grad.msu.ac.th\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/grad.msu.ac.th\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/grad.msu.ac.th\/#organization","name":"\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22","url":"https:\/\/grad.msu.ac.th\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/grad.msu.ac.th\/#\/schema\/logo\/image\/","url":"https:\/\/grad.msu.ac.th\/wp-content\/uploads\/2026\/03\/cropped-\u0e14\u0e35\u0e44\u0e0b\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d-1.png","contentUrl":"https:\/\/grad.msu.ac.th\/wp-content\/uploads\/2026\/03\/cropped-\u0e14\u0e35\u0e44\u0e0b\u0e19\u0e4c\u0e17\u0e35\u0e48\u0e22\u0e31\u0e07\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e15\u0e31\u0e49\u0e07\u0e0a\u0e37\u0e48\u0e2d-1.png","width":1219,"height":145,"caption":"\u0e1a\u0e31\u0e13\u0e11\u0e34\u0e15\u0e27\u0e34\u0e17\u0e22\u0e32\u0e25\u0e31\u0e22"},"image":{"@id":"https:\/\/grad.msu.ac.th\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/grad.msu.ac.th\/index.php?rest_route=\/wp\/v2\/pages\/1813","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/grad.msu.ac.th\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/grad.msu.ac.th\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/grad.msu.ac.th\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/grad.msu.ac.th\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1813"}],"version-history":[{"count":31,"href":"https:\/\/grad.msu.ac.th\/index.php?rest_route=\/wp\/v2\/pages\/1813\/revisions"}],"predecessor-version":[{"id":4511,"href":"https:\/\/grad.msu.ac.th\/index.php?rest_route=\/wp\/v2\/pages\/1813\/revisions\/4511"}],"wp:attachment":[{"href":"https:\/\/grad.msu.ac.th\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1813"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}