@thanh01.pmt/curriculum-kit 1.4.1 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/ai/index.cjs +3 -1
  2. package/dist/ai/index.cjs.map +1 -1
  3. package/dist/ai/index.d.cts +4 -0
  4. package/dist/ai/index.d.ts +4 -0
  5. package/dist/ai/index.mjs +3 -1
  6. package/dist/ai/index.mjs.map +1 -1
  7. package/dist/index.cjs +12688 -137
  8. package/dist/index.cjs.map +1 -1
  9. package/dist/index.d.cts +5 -4
  10. package/dist/index.d.ts +5 -4
  11. package/dist/index.mjs +12686 -138
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/pipeline/index.cjs +3 -1
  14. package/dist/pipeline/index.cjs.map +1 -1
  15. package/dist/pipeline/index.mjs +3 -1
  16. package/dist/pipeline/index.mjs.map +1 -1
  17. package/dist/schemas/index.cjs +3 -1
  18. package/dist/schemas/index.cjs.map +1 -1
  19. package/dist/schemas/index.d.cts +20 -0
  20. package/dist/schemas/index.d.ts +20 -0
  21. package/dist/schemas/index.mjs +3 -1
  22. package/dist/schemas/index.mjs.map +1 -1
  23. package/dist/standards/index.cjs +12412 -2
  24. package/dist/standards/index.cjs.map +1 -1
  25. package/dist/standards/index.d.cts +22 -3
  26. package/dist/standards/index.d.ts +22 -3
  27. package/dist/standards/index.mjs +12410 -3
  28. package/dist/standards/index.mjs.map +1 -1
  29. package/dist/{standardsCoverageGate-CsUNzv6C.d.cts → standardsCoverageGate-DR5YTtlt.d.cts} +2 -0
  30. package/dist/{standardsCoverageGate-CsUNzv6C.d.ts → standardsCoverageGate-DR5YTtlt.d.ts} +2 -0
  31. package/dist/workflow/index.cjs +12426 -18
  32. package/dist/workflow/index.cjs.map +1 -1
  33. package/dist/workflow/index.d.cts +1 -1
  34. package/dist/workflow/index.d.ts +1 -1
  35. package/dist/workflow/index.mjs +12426 -18
  36. package/dist/workflow/index.mjs.map +1 -1
  37. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/standards/frameworkPackSchema.ts","../../src/standards/standardsContextInjector.ts","../../src/standards/standardsCoverageGate.ts","../../src/standards/standardsRegistryAdapter.ts","../../src/standards/standardStackGenerator.ts","../../src/standards/data/csta-k12-2017.json","../../src/standards/bundledPacks.ts"],"names":["z","createClient"],"mappings":";;;;;;AA4BO,IAAM,eAAA,GAAkBA,MAAE,MAAA,CAAO;AAAA,EACtC,OAAA,EAASA,KAAA,CACN,IAAA,CAAK,CAAC,UAAA,EAAY,YAAA,EAAc,OAAA,EAAS,SAAA,EAAW,UAAA,EAAY,QAAQ,CAAC,CAAA,CACzE,SAAS,wBAAwB,CAAA;AAAA,EACpC,SAAA,EAAWA,KAAA,CACR,IAAA,CAAK,CAAC,SAAA,EAAW,YAAA,EAAc,YAAA,EAAc,eAAe,CAAC,CAAA,CAC7D,QAAA,EAAS,CACT,SAAS,gFAA2E;AACzF,CAAC;AAGM,IAAM,sBAAA,GAAyBA,MAAE,MAAA,CAAO;AAAA,EAC7C,MAAA,EAAQA,KAAA,CACL,IAAA,CAAK,CAAC,iBAAA,EAAmB,UAAA,EAAY,qBAAA,EAAuB,OAAA,EAAS,WAAA,EAAa,UAAU,CAAC,CAAA,CAC7F,SAAS,gQAAgQ,CAAA;AAAA,EAC5Q,YAAYA,KAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,0FAA0F,CAAA;AAAA,EACrI,YAAYA,KAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,8BAA8B,CAAA;AAAA,EACzE,MAAMA,KAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,2BAA2B;AAClE,CAAC;AAGM,IAAM,kBAAkBA,KAAA,CAC5B,KAAA,CAAMA,KAAA,CAAE,MAAA,GAAS,GAAA,EAAI,CAAE,GAAA,CAAI,EAAE,EAAE,GAAA,CAAI,EAAE,CAAA,EAAG,EAAE,SAAS,iDAAA,EAAmD,CAAA,CACtG,MAAA,CAAO,CAAC,CAAA,CACR,MAAA,CAAO,CAAC,CAAC,KAAK,GAAG,CAAA,KAAM,GAAA,IAAO,GAAA,EAAK,EAAE,OAAA,EAAS,8BAAA,EAAgC,CAAA,CAC9E,SAAS,sKAAsK;AAG3K,IAAM,oBAAA,GAAuBA,MAAE,MAAA,CAAO;AAAA,EAC3C,IAAA,EAAMA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,iEAAkD,CAAA;AAAA,EAC5E,KAAA,EAAOA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,+EAAuE;AACpG,CAAC;AAIM,IAAM,2BAAA,GAA8BA,MAAE,MAAA,CAAO;AAAA;AAAA,EAElD,EAAA,EAAIA,KAAA,CACD,MAAA,EAAO,CACP,GAAA,CAAI,CAAC,CAAA,CACL,KAAA,CAAM,wBAAA,EAA0B,sDAAsD,CAAA,CACtF,QAAA,CAAS,qFAAqF,CAAA;AAAA,EACjG,IAAA,EAAMA,MAAE,MAAA,EAAO,CAAE,IAAI,CAAC,CAAA,CAAE,SAAS,+BAA+B,CAAA;AAAA,EAChE,aAAaA,KAAA,CAAE,OAAA,CAAQ,KAAK,CAAA,CAAE,SAAS,iDAAiD,CAAA;AAAA,EACxF,cAAA,EAAgBA,MACb,MAAA,EAAO,CACP,IAAI,CAAC,CAAA,CACL,SAAS,iHAAiH,CAAA;AAAA,EAC7H,OAAA,EAASA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,oEAAoE,CAAA;AAAA,EACjG,SAAA,EAAWA,KAAA,CAAE,KAAA,CAAMA,KAAA,CAAE,QAAO,CAAE,GAAA,CAAI,CAAC,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,SAAS,4EAA4E,CAAA;AAAA,EAClI,UAAA,EAAYA,MAAE,MAAA,CAAO;AAAA,IACnB,IAAA,EAAMA,KAAA,CAAE,IAAA,CAAK,CAAC,QAAA,EAAU,QAAQ,OAAO,CAAC,CAAA,CAAE,QAAA,CAAS,iGAAiG,CAAA;AAAA,IACpJ,KAAA,EAAO,eAAA,CAAgB,QAAA,CAAS,8CAA8C,CAAA;AAAA;AAAA,IAE9E,eAAeA,KAAA,CACZ,KAAA;AAAA,MACCA,MAAE,MAAA,CAAO;AAAA,QACP,IAAA,EAAMA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,iDAAiD,CAAA;AAAA,QAC3E,EAAA,EAAI;AAAA,OACL;AAAA,KACH,CACC,QAAA,EAAS,CACT,QAAA,CAAS,iFAAiF;AAAA,GAC9F,CAAA;AAAA,EACD,UAAA,EAAYA,MAAE,MAAA,CAAO;AAAA,IACnB,SAAA,EAAWA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,yFAA4E,CAAA;AAAA,IAC3G,WAAWA,KAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,uDAAuD,CAAA;AAAA,IACjG,OAAA,EAASA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,2CAA2C,CAAA;AAAA,IACxE,UAAA,EAAYA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,sDAAsD,CAAA;AAAA,IACtF,UAAA,EAAYA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,oBAAoB,CAAA;AAAA,IACpD,kBAAkBA,KAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,8DAA8D;AAAA,GAChH,CAAA;AAAA,EACD,KAAA,EAAOA,KAAA,CAAE,IAAA,CAAK,CAAC,UAAA,EAAY,KAAK,CAAC,CAAA,CAAE,OAAA,CAAQ,KAAK,CAAA,CAAE,QAAA,CAAS,8HAA8H;AAC3L,CAAC;AAIM,IAAM,wBAAA,GAA2BA,MAAE,MAAA,CAAO;AAAA;AAAA,EAE/C,EAAA,EAAIA,KAAA,CACD,MAAA,EAAO,CACP,GAAA,CAAI,CAAC,CAAA,CACL,KAAA,CAAM,+BAAA,EAAiC,uEAAuE,CAAA,CAC9G,QAAA,CAAS,6LAA6L,CAAA;AAAA;AAAA,EAEzM,UAAUA,KAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,iFAAiF,CAAA;AAAA,EAC1H,SAAA,EAAW,eAAA;AAAA;AAAA,EAEX,KAAA,EAAOA,KAAA,CACJ,MAAA,CAAOA,KAAA,CAAE,MAAA,EAAO,CAAE,GAAA,CAAI,CAAC,CAAA,EAAGA,KAAA,CAAE,MAAA,EAAO,CAAE,IAAI,CAAC,CAAC,CAAA,CAC3C,MAAA,CAAO,CAAC,CAAA,KAAM,MAAA,CAAO,IAAA,CAAK,CAAC,CAAA,CAAE,MAAA,GAAS,CAAA,EAAG,EAAE,OAAA,EAAS,gDAAA,EAAkD,CAAA,CACtG,SAAS,+IAAwH,CAAA;AAAA,EACpI,eAAA,EAAiBA,KAAA,CAAE,KAAA,CAAM,oBAAoB,CAAA,CAAE,QAAA,EAAS,CAAE,OAAA,CAAQ,EAAE,CAAA,CAAE,QAAA,CAAS,mFAAmF,CAAA;AAAA,EAClK,SAAA,EAAW,eAAA,CAAgB,QAAA,EAAS,CAAE,SAAS,oGAA+F,CAAA;AAAA,EAC9I,QAAA,EAAUA,KAAA,CAAE,KAAA,CAAMA,KAAA,CAAE,QAAQ,CAAA,CAAE,QAAA,EAAS,CAAE,OAAA,CAAQ,EAAE,CAAA,CAAE,SAAS,sHAAiH,CAAA;AAAA,EAC/K,WAAWA,KAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,qFAAwE,CAAA;AAAA,EAClH,UAAA,EAAY;AACd,CAAC;AAIM,IAAM,iBAAA,GAAoBA,KAAA,CAAE,IAAA,CAAK,CAAC,QAAA,EAAU,WAAW,SAAS,CAAC,CAAA,CAAE,QAAA,CAAS,iMAAiM;AAE7Q,IAAM,sBAAA,GAAyBA,MAAE,MAAA,CAAO;AAAA,EAC7C,WAAA,EAAaA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,4CAA4C,CAAA;AAAA;AAAA,EAE7E,SAAA,EAAWA,KAAA,CAAE,MAAA,EAAO,CAAE,MAAA,CAAO,CAAC,CAAA,KAAM,6CAAA,CAA8C,IAAA,CAAK,CAAC,CAAA,EAAG,8DAA8D,CAAA;AAAA,EACzJ,IAAA,EAAM,iBAAA;AAAA,EACN,UAAA,EAAYA,KAAA,CAAE,MAAA,EAAO,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,QAAA,CAAS,gCAAgC,CAAA;AAAA,EAC9E,UAAA,EAAY;AACd,CAAC;AAIM,IAAM,mBAAA,GAAsBA,MAAE,MAAA,CAAO;AAAA,EAC1C,QAAA,EAAU,2BAAA;AAAA,EACV,UAAA,EAAYA,MAAE,KAAA,CAAM,wBAAwB,EAAE,GAAA,CAAI,CAAC,CAAA,CAAE,QAAA,CAAS,sCAAsC,CAAA;AAAA,EACpG,QAAA,EAAUA,KAAA,CAAE,KAAA,CAAM,sBAAsB,CAAA,CAAE,QAAA,EAAS,CAAE,OAAA,CAAQ,EAAE,CAAA,CAAE,QAAA,CAAS,2FAA2F;AACvK,CAAC;AAoBD,IAAM,iBAAA,GAAoB,GAAA;AAOnB,SAAS,kBAAkB,IAAA,EAAsC;AACtE,EAAA,MAAM,SAA0B,EAAC;AACjC,EAAA,MAAM,aAAa,IAAA,CAAK,UAAA;AACxB,EAAA,MAAM,GAAA,uBAAU,GAAA,EAAY;AAE5B,EAAA,KAAA,MAAW,KAAK,UAAA,EAAY;AAE1B,IAAA,IAAI,GAAA,CAAI,GAAA,CAAI,CAAA,CAAE,EAAE,CAAA,EAAG;AACjB,MAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,OAAA,EAAS,MAAM,QAAA,EAAU,OAAA,EAAS,CAAA,wBAAA,EAA2B,CAAA,CAAE,EAAE,CAAA,CAAA,CAAA,EAAK,GAAA,EAAK,CAAA,CAAE,IAAI,CAAA;AAAA,IAC3G;AACA,IAAA,GAAA,CAAI,GAAA,CAAI,EAAE,EAAE,CAAA;AAAA,EACd;AAEA,EAAA,KAAA,MAAW,KAAK,UAAA,EAAY;AAE1B,IAAA,IAAI,EAAE,QAAA,IAAY,CAAC,IAAI,GAAA,CAAI,CAAA,CAAE,QAAQ,CAAA,EAAG;AACtC,MAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,OAAA,EAAS,MAAM,gBAAA,EAAkB,OAAA,EAAS,CAAA,UAAA,EAAa,CAAA,CAAE,QAAQ,CAAA,6BAAA,CAAA,EAAiC,GAAA,EAAK,CAAA,CAAE,IAAI,CAAA;AAAA,IACvI;AAEA,IAAA,KAAA,MAAW,CAAC,MAAM,IAAI,CAAA,IAAK,OAAO,OAAA,CAAQ,CAAA,CAAE,KAAK,CAAA,EAAG;AAClD,MAAA,IAAI,CAAC,IAAA,IAAQ,IAAA,CAAK,IAAA,EAAK,CAAE,SAAS,CAAA,EAAG;AACnC,QAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,OAAA,EAAS,IAAA,EAAM,gBAAA,EAAkB,OAAA,EAAS,CAAA,CAAA,EAAI,IAAI,CAAA,4CAAA,CAAA,EAAgD,GAAA,EAAK,CAAA,CAAE,IAAI,CAAA;AAAA,MACvI;AAAA,IACF;AAEA,IAAA,MAAM,CAAC,GAAA,EAAK,GAAG,CAAA,GAAI,CAAA,CAAE,SAAA;AACrB,IAAA,MAAM,CAAC,IAAA,EAAM,IAAI,CAAA,GAAI,IAAA,CAAK,SAAS,UAAA,CAAW,KAAA;AAC9C,IAAA,IAAI,GAAA,GAAM,IAAA,IAAQ,GAAA,GAAM,IAAA,EAAM;AAC5B,MAAA,MAAA,CAAO,KAAK,EAAE,QAAA,EAAU,WAAW,IAAA,EAAM,mBAAA,EAAqB,SAAS,CAAA,WAAA,EAAc,GAAG,IAAI,GAAG,CAAA,gCAAA,EAAmC,IAAI,CAAA,CAAA,EAAI,IAAI,KAAK,GAAA,EAAK,CAAA,CAAE,IAAI,CAAA;AAAA,IAChK;AAEA,IAAA,IAAI,EAAE,UAAA,CAAW,MAAA,KAAW,cAAc,CAAC,CAAA,CAAE,WAAW,UAAA,EAAY;AAClE,MAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,OAAA,EAAS,IAAA,EAAM,qBAAA,EAAuB,OAAA,EAAS,kFAAA,EAA+E,GAAA,EAAK,CAAA,CAAE,EAAA,EAAI,CAAA;AAAA,IACnK;AAEA,IAAA,IAAI,CAAC,CAAA,CAAE,QAAA,IAAY,CAAA,CAAE,QAAA,CAAS,WAAW,CAAA,EAAG;AAC1C,MAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,SAAA,EAAW,IAAA,EAAM,aAAA,EAAe,OAAA,EAAS,wEAAA,EAAqE,GAAA,EAAK,CAAA,CAAE,EAAA,EAAI,CAAA;AAAA,IACnJ;AAAA,EACF;AAGA,EAAA,MAAM,IAAA,uBAAW,GAAA,EAAoB;AACrC,EAAA,KAAA,MAAW,KAAK,UAAA,EAAY;AAC1B,IAAA,MAAM,WAAA,GAAc,IAAA,CAAK,QAAA,CAAS,SAAA,CAAU,CAAC,CAAA;AAC7C,IAAA,MAAM,IAAA,GAAO,CAAA,CAAE,KAAA,CAAM,WAAW,CAAA;AAChC,IAAA,IAAI,CAAC,IAAA,EAAM;AACX,IAAA,MAAM,IAAA,GAAO,KAAK,WAAA,EAAY,CAAE,QAAQ,mBAAA,EAAqB,GAAG,EAAE,KAAA,CAAM,KAAK,EAAE,MAAA,CAAO,CAAC,MAAM,CAAA,CAAE,MAAA,GAAS,CAAC,CAAA,CAAE,IAAA,EAAK,CAAE,IAAA,CAAK,GAAG,CAAA;AAC1H,IAAA,IAAI,CAAC,IAAA,EAAM;AACX,IAAA,MAAM,IAAA,GAAO,IAAA,CAAK,GAAA,CAAI,IAAI,CAAA;AAC1B,IAAA,IAAI,SAAS,MAAA,EAAW;AACtB,MAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,SAAA,EAAW,IAAA,EAAM,gBAAA,EAAkB,OAAA,EAAS,CAAA,sCAAA,EAAyC,IAAI,CAAA,CAAA,CAAA,EAAK,GAAA,EAAK,CAAA,CAAE,IAAI,CAAA;AAAA,IACnI,CAAA,MAAO;AAEL,MAAA,KAAA,MAAW,CAAC,SAAA,EAAW,OAAO,CAAA,IAAK,IAAA,CAAK,SAAQ,EAAG;AACjD,QAAA,MAAM,IAAI,IAAI,GAAA,CAAI,IAAA,CAAK,KAAA,CAAM,GAAG,CAAC,CAAA;AACjC,QAAA,MAAM,IAAI,IAAI,GAAA,CAAI,SAAA,CAAU,KAAA,CAAM,GAAG,CAAC,CAAA;AACtC,QAAA,IAAI,KAAA,GAAQ,CAAA;AACZ,QAAA,KAAA,MAAW,KAAK,CAAA,EAAG,IAAI,CAAA,CAAE,GAAA,CAAI,CAAC,CAAA,EAAG,KAAA,EAAA;AACjC,QAAA,MAAM,QAAQ,KAAA,GAAQ,IAAA,CAAK,IAAI,CAAA,CAAE,IAAA,EAAM,EAAE,IAAI,CAAA;AAC7C,QAAA,IAAI,SAAS,iBAAA,EAAmB;AAC9B,UAAA,MAAA,CAAO,KAAK,EAAE,QAAA,EAAU,WAAW,IAAA,EAAM,gBAAA,EAAkB,SAAS,CAAA,MAAA,EAAS,IAAA,CAAK,MAAM,KAAA,GAAQ,GAAG,CAAC,CAAA,8BAAA,EAAiC,OAAO,KAAK,GAAA,EAAK,CAAA,CAAE,IAAI,CAAA;AAC5J,UAAA;AAAA,QACF;AAAA,MACF;AACA,MAAA,IAAA,CAAK,GAAA,CAAI,IAAA,EAAM,CAAA,CAAE,EAAE,CAAA;AAAA,IACrB;AAAA,EACF;AAGA,EAAA,KAAA,MAAW,CAAA,IAAK,IAAA,CAAK,QAAA,IAAY,EAAC,EAAG;AACnC,IAAA,IAAI,CAAC,GAAA,CAAI,GAAA,CAAI,CAAA,CAAE,WAAW,CAAA,EAAG;AAC3B,MAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,OAAA,EAAS,MAAM,uBAAA,EAAyB,OAAA,EAAS,CAAA,wCAAA,EAA2C,CAAA,CAAE,WAAW,CAAA,CAAA,CAAA,EAAK,GAAA,EAAK,CAAA,CAAE,aAAa,CAAA;AAAA,IAC5J;AACA,IAAA,IAAI,EAAE,UAAA,CAAW,MAAA,KAAW,cAAc,CAAC,CAAA,CAAE,WAAW,UAAA,EAAY;AAClE,MAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,OAAA,EAAS,MAAM,qBAAA,EAAuB,OAAA,EAAS,CAAA,WAAA,EAAc,CAAA,CAAE,SAAS,CAAA,+BAAA,CAAA,EAAmC,GAAA,EAAK,CAAA,CAAE,aAAa,CAAA;AAAA,IACzJ;AACA,IAAA,IAAI,CAAA,CAAE,IAAA,KAAS,QAAA,IAAY,CAAA,CAAE,aAAa,GAAA,EAAK;AAC7C,MAAA,MAAA,CAAO,IAAA,CAAK,EAAE,QAAA,EAAU,SAAA,EAAW,MAAM,uBAAA,EAAyB,OAAA,EAAS,CAAA,8BAAA,EAAiC,CAAA,CAAE,UAAU,CAAA,gCAAA,CAAA,EAA+B,GAAA,EAAK,CAAA,CAAE,aAAa,CAAA;AAAA,IAC7K;AAAA,EACF;AAEA,EAAA,OAAO,MAAA;AACT;AAmBO,SAAS,sBAAsB,KAAA,EAAsC;AAC1E,EAAA,MAAM,MAAA,GAAS,mBAAA,CAAoB,SAAA,CAAU,KAAK,CAAA;AAClD,EAAA,IAAI,CAAC,OAAO,OAAA,EAAS;AACnB,IAAA,OAAO;AAAA,MACL,KAAA,EAAO,KAAA;AAAA,MACP,cAAc,MAAA,CAAO,KAAA,CAAM,MAAA,CAAO,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,EAAG,CAAA,CAAE,IAAA,CAAK,KAAK,GAAG,CAAA,IAAK,QAAQ,CAAA,EAAA,EAAK,CAAA,CAAE,OAAO,CAAA,CAAE,CAAA;AAAA,MAC5F,MAAM,EAAC;AAAA,MACP,KAAA,EAAO,EAAE,UAAA,EAAY,CAAA,EAAG,UAAU,CAAA,EAAG,iBAAA,EAAmB,CAAA,EAAG,uBAAA,EAAyB,CAAA,EAAG,UAAA,EAAY,CAAC,CAAA,EAAG,CAAC,CAAA;AAAE,KAC5G;AAAA,EACF;AACA,EAAA,MAAM,OAAO,MAAA,CAAO,IAAA;AACpB,EAAA,MAAM,IAAA,GAAO,kBAAkB,IAAI,CAAA;AACnC,EAAA,MAAM,OAAA,GAAU,IAAI,GAAA,CAAA,CAAK,IAAA,CAAK,QAAA,IAAY,EAAC,EAAG,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,CAAE,WAAW,CAAC,CAAA;AACvE,EAAA,MAAM,QAAQ,IAAA,CAAK,UAAA,CAAW,IAAI,CAAC,CAAA,KAAM,EAAE,SAAS,CAAA;AACpD,EAAA,OAAO;AAAA,IACL,OAAO,IAAA,CAAK,KAAA,CAAM,CAAC,CAAA,KAAM,CAAA,CAAE,aAAa,OAAO,CAAA;AAAA,IAC/C,cAAc,EAAC;AAAA,IACf,IAAA;AAAA,IACA,KAAA,EAAO;AAAA,MACL,UAAA,EAAY,KAAK,UAAA,CAAW,MAAA;AAAA,MAC5B,QAAA,EAAU,IAAA,CAAK,QAAA,EAAU,MAAA,IAAU,CAAA;AAAA,MACnC,mBAAmB,OAAA,CAAQ,IAAA;AAAA,MAC3B,uBAAA,EAAyB,IAAA,CAAK,UAAA,CAAW,MAAA,GAAS,OAAA,CAAQ,IAAA;AAAA,MAC1D,UAAA,EAAY,CAAC,IAAA,CAAK,GAAA,CAAI,GAAG,KAAA,CAAM,IAAA,EAAM,CAAA,EAAG,KAAK,GAAA,CAAI,GAAG,KAAA,CAAM,IAAA,EAAM,CAAC;AAAA;AACnE,GACF;AACF;;;AC3QA,IAAM,sBAAA,GAAyB,EAAA;AAE/B,SAAS,cAAc,IAAA,EAAmD;AACxE,EAAA,OAAO,MAAM,OAAA,CAAQ,IAAI,IAAI,IAAA,GAAO,CAAC,MAAM,IAAI,CAAA;AACjD;AAEA,SAAS,SAAS,IAAA,EAA2B;AAC3C,EAAA,OAAO,IAAI,GAAA;AAAA,IACT,IAAA,CACG,WAAA,EAAY,CACZ,OAAA,CAAQ,qBAAqB,GAAG,CAAA,CAChC,KAAA,CAAM,KAAK,EACX,MAAA,CAAO,CAAC,CAAA,KAAM,CAAA,CAAE,SAAS,CAAC;AAAA,GAC/B;AACF;AAOO,SAAS,0BAA0B,KAAA,EAAqD;AAC7F,EAAA,MAAM,GAAA,GAAM,MAAM,aAAA,IAAiB,sBAAA;AACnC,EAAA,MAAM,UAAA,GAAa,aAAA,CAAc,KAAA,CAAM,SAAS,CAAA;AAChD,EAAA,MAAM,YAAA,GAAe,QAAA,CAAS,KAAA,CAAM,SAAS,CAAA;AAC7C,EAAA,MAAM,aAAa,IAAI,GAAA,CAAA,CAAK,MAAM,YAAA,IAAgB,IAAI,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,CAAE,aAAY,CAAE,IAAA,EAAM,CAAA,CAAE,MAAA,CAAO,OAAO,CAAC,CAAA;AAExG,EAAA,MAAM,aAAkC,EAAC;AAEzC,EAAA,KAAA,MAAW,IAAA,IAAQ,MAAM,KAAA,EAAO;AAC9B,IAAA,KAAA,MAAW,SAAA,IAAa,KAAK,UAAA,EAAY;AAEvC,MAAA,MAAM,CAAC,IAAA,EAAM,IAAI,CAAA,GAAI,SAAA,CAAU,SAAA;AAC/B,MAAA,MAAM,QAAA,GAAW,IAAA,CAAK,GAAA,CAAI,IAAA,EAAM,UAAA,CAAW,CAAC,CAAC,CAAA,IAAK,IAAA,CAAK,GAAA,CAAI,IAAA,EAAM,UAAA,CAAW,CAAC,CAAC,CAAA;AAC9E,MAAA,IAAI,CAAC,QAAA,EAAU;AAEf,MAAA,MAAM,SAAA,GAA4C,CAAC,MAAM,CAAA;AACzD,MAAA,IAAI,KAAA,GAAQ,CAAA;AAGZ,MAAA,MAAM,QAAA,GAAW,IAAI,GAAA,CAAI,SAAA,CAAU,QAAA,CAAS,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,CAAE,WAAA,EAAa,CAAC,CAAA;AACvE,MAAA,IAAI,MAAA,GAAS,CAAA;AACb,MAAA,KAAA,MAAW,KAAK,YAAA,EAAc,IAAI,QAAA,CAAS,GAAA,CAAI,CAAC,CAAA,EAAG,MAAA,EAAA;AACnD,MAAA,IAAI,SAAS,CAAA,EAAG;AACd,QAAA,SAAA,CAAU,KAAK,SAAS,CAAA;AACxB,QAAA,KAAA,IAAS,IAAI,MAAA,GAAS,GAAA;AAAA,MACxB;AAGA,MAAA,IAAI,UAAA,CAAW,OAAO,CAAA,EAAG;AACvB,QAAA,KAAA,MAAW,CAAA,IAAK,UAAU,QAAA,EAAU;AAClC,UAAA,IAAI,UAAA,CAAW,IAAI,CAAA,CAAE,WAAA,GAAc,OAAA,CAAQ,MAAA,EAAQ,GAAG,CAAC,CAAA,EAAG;AACxD,YAAA,SAAA,CAAU,KAAK,SAAS,CAAA;AACxB,YAAA,KAAA,IAAS,CAAA;AACT,YAAA;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAGA,MAAA,IAAI,QAAA,GAAW,CAAA;AACf,MAAA,KAAA,MAAW,IAAA,IAAQ,MAAA,CAAO,IAAA,CAAK,SAAA,CAAU,KAAK,CAAA,EAAG;AAC/C,QAAA,MAAM,EAAA,GAAK,QAAA,CAAS,SAAA,CAAU,KAAA,CAAM,IAAI,CAAC,CAAA;AACzC,QAAA,KAAA,MAAW,KAAK,YAAA,EAAc,IAAI,EAAA,CAAG,GAAA,CAAI,CAAC,CAAA,EAAG,QAAA,EAAA;AAAA,MAC/C;AACA,MAAA,IAAI,YAAY,CAAA,EAAG;AACjB,QAAA,SAAA,CAAU,KAAK,MAAM,CAAA;AACrB,QAAA,KAAA,IAAS,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,QAAA,GAAW,GAAG,CAAA;AAAA,MACrC;AAEA,MAAA,IAAI,KAAA,GAAQ,CAAA,EAAG,UAAA,CAAW,IAAA,CAAK,EAAE,MAAA,EAAQ,IAAA,CAAK,QAAA,CAAS,EAAA,EAAI,SAAA,EAAW,KAAA,EAAO,SAAA,EAAW,CAAA;AAAA,IAC1F;AAAA,EACF;AAEA,EAAA,OAAO,UAAA,CAAW,IAAA,CAAK,CAAC,CAAA,EAAG,CAAA,KAAM,CAAA,CAAE,KAAA,GAAQ,CAAA,CAAE,KAAK,CAAA,CAAE,KAAA,CAAM,CAAA,EAAG,GAAG,CAAA;AAClE;AAMO,SAAS,0BAAA,CAA2B,UAA+B,IAAA,EAAsC;AAC9G,EAAA,IAAI,QAAA,CAAS,MAAA,KAAW,CAAA,EAAG,OAAO,EAAA;AAElC,EAAA,MAAM,OAAO,IAAA,EAAM,QAAA;AACnB,EAAA,MAAM,OAAO,QAAA,CACV,GAAA,CAAI,CAAC,EAAE,MAAA,EAAQ,WAAU,KAAM;AAC9B,IAAA,MAAM,IAAA,GAAQ,IAAA,IAAQ,SAAA,CAAU,KAAA,CAAM,IAAI,CAAA,IAAM,MAAA,CAAO,MAAA,CAAO,SAAA,CAAU,KAAK,CAAA,CAAE,CAAC,CAAA;AAChF,IAAA,MAAM,IAAA,GAAO,SAAA,CAAU,SAAA,CAAU,CAAC,CAAA,KAAM,UAAU,SAAA,CAAU,CAAC,CAAA,GAAI,CAAA,CAAA,EAAI,SAAA,CAAU,SAAA,CAAU,CAAC,CAAC,CAAA,CAAA,GAAK,CAAA,CAAA,EAAI,SAAA,CAAU,SAAA,CAAU,CAAC,CAAC,CAAA,EAAA,EAAK,SAAA,CAAU,SAAA,CAAU,CAAC,CAAC,CAAA,CAAA;AACrJ,IAAA,OAAO,CAAA,GAAA,EAAM,MAAM,CAAA,CAAA,EAAI,SAAA,CAAU,EAAE,CAAA,GAAA,EAAM,IAAI,MAAM,IAAI,CAAA,CAAA,CAAA;AAAA,EACzD,CAAC,CAAA,CACA,IAAA,CAAK,IAAI,CAAA;AAEZ,EAAA,OAAO;AAAA,IACL,kEAAA;AAAA,IACA,EAAA;AAAA,IACA,8GAAA;AAAA,IACA,4CAAA;AAAA,IACA,4GAAA;AAAA,IACA,qHAAA;AAAA,IACA,sHAAA;AAAA,IACA,oHAAA;AAAA,IACA,EAAA;AAAA,IACA,mBAAA;AAAA,IACA;AAAA,GACF,CAAE,KAAK,IAAI,CAAA;AACb;AAKO,SAAS,sBACd,KAAA,EACkD;AAClD,EAAA,MAAM,QAAA,GAAW,0BAA0B,KAAK,CAAA;AAChD,EAAA,OAAO,EAAE,KAAA,EAAO,0BAAA,CAA2B,QAAA,EAAU,EAAE,UAAU,KAAA,CAAM,QAAA,EAAU,CAAA,EAAG,QAAA,EAAS;AAC/F;;;AClGA,SAAS,mBAAA,CAAoB,KAAa,KAAA,EAA6E;AACrH,EAAA,MAAM,CAAC,IAAA,EAAM,GAAG,IAAI,CAAA,GAAI,GAAA,CAAI,MAAM,GAAG,CAAA;AACrC,EAAA,MAAM,cAAA,GAAiB,IAAA,CAAK,MAAA,GAAS,CAAA,GAAI,KAAA,CAAM,MAAA,CAAO,CAAC,CAAA,KAAM,CAAA,CAAE,QAAA,CAAS,EAAA,KAAO,IAAI,CAAA,GAAI,KAAA;AACvF,EAAA,MAAM,cAAc,IAAA,CAAK,MAAA,GAAS,IAAI,IAAA,CAAK,IAAA,CAAK,GAAG,CAAA,GAAI,GAAA;AACvD,EAAA,KAAA,MAAW,KAAK,cAAA,EAAgB;AAC9B,IAAA,IAAI,CAAA,CAAE,UAAA,CAAW,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,EAAA,KAAO,WAAW,CAAA,EAAG,OAAO,EAAE,IAAA,EAAM,GAAG,WAAA,EAAY;AAAA,EACpF;AACA,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,0BAA0B,KAAA,EAA8C;AACtF,EAAA,MAAM,OAA+B,EAAC;AAGtC,EAAA,MAAM,MAAA,uBAAa,GAAA,EAAoB;AACvC,EAAA,KAAA,MAAW,EAAA,IAAM,KAAA,CAAM,oBAAA,IAAwB,EAAC,SAAU,GAAA,CAAI,EAAA,CAAG,MAAA,EAAQ,EAAA,CAAG,SAAS,CAAA;AAGrF,EAAA,MAAM,QAAA,uBAAe,GAAA,EAAyB;AAC9C,EAAA,KAAA,MAAW,EAAA,IAAM,MAAM,UAAA,EAAY;AACjC,IAAA,QAAA,CAAS,GAAA,CAAI,GAAG,IAAA,EAAM,IAAI,IAAI,EAAA,CAAG,YAAA,IAAgB,EAAE,CAAC,CAAA;AAAA,EACtD;AAGA,EAAA,MAAM,SAAA,uBAAgB,GAAA,EAAY;AAClC,EAAA,KAAA,MAAW,GAAA,IAAO,KAAA,CAAM,UAAA,IAAc,EAAC,EAAG,KAAA,MAAW,EAAA,IAAM,GAAA,CAAI,EAAA,EAAI,SAAA,CAAU,GAAA,CAAI,EAAE,CAAA;AACnF,EAAA,MAAM,WAAA,uBAAkB,GAAA,EAAY;AACpC,EAAA,KAAA,MAAW,CAAA,IAAK,MAAM,aAAA,EAAe;AACnC,IAAA,IAAI,CAAA,CAAE,SAAA,EAAW,WAAA,CAAY,GAAA,CAAI,EAAE,SAAS,CAAA;AAC5C,IAAA,IAAI,EAAE,SAAA,EAAW;AACf,MAAA,MAAM,EAAA,GAAK,MAAA,CAAO,GAAA,CAAI,CAAA,CAAE,SAAS,CAAA;AACjC,MAAA,IAAI,EAAA,EAAI,WAAA,CAAY,GAAA,CAAI,EAAE,CAAA;AAAA,IAC5B;AAAA,EACF;AAEA,EAAA,KAAA,MAAW,IAAA,IAAQ,MAAM,KAAA,EAAO;AAC9B,IAAA,MAAM,kBAAA,uBAAyB,GAAA,EAAoB;AACnD,IAAA,KAAA,MAAW,CAAA,IAAK,IAAA,CAAK,QAAA,IAAY,EAAC,EAAG;AAEnC,MAAA,MAAM,IAAA,GAAO,kBAAA,CAAmB,GAAA,CAAI,CAAA,CAAE,WAAW,CAAA;AACjD,MAAA,IAAI,CAAC,IAAA,IAAS,IAAA,KAAS,QAAA,IAAY,CAAA,CAAE,IAAA,KAAS,QAAA,IAAc,IAAA,KAAS,SAAA,IAAa,CAAA,CAAE,IAAA,KAAS,SAAA,EAAY;AACvG,QAAA,kBAAA,CAAmB,GAAA,CAAI,CAAA,CAAE,WAAA,EAAa,CAAA,CAAE,IAAI,CAAA;AAAA,MAC9C;AAAA,IACF;AAEA,IAAA,KAAA,MAAW,SAAA,IAAa,KAAK,UAAA,EAAY;AACvC,MAAA,MAAM,UAAU,CAAA,EAAG,IAAA,CAAK,SAAS,EAAE,CAAA,CAAA,EAAI,UAAU,EAAE,CAAA,CAAA;AACnD,MAAA,MAAM,SAAmB,EAAC;AAG1B,MAAA,MAAM,GAAA,GAAM,KAAA,CAAM,UAAA,CACf,MAAA,CAAO,CAAC,QAAQ,EAAA,CAAG,YAAA,IAAgB,EAAC,EAAG,IAAA,CAAK,CAAC,MAAM,CAAA,KAAM,SAAA,CAAU,EAAA,IAAM,CAAA,KAAM,OAAO,CAAC,EACvF,GAAA,CAAI,CAAC,EAAA,KAAO,EAAA,CAAG,IAAI,CAAA;AAEtB,MAAA,MAAM,IAAA,GAAO,kBAAA,CAAmB,GAAA,CAAI,SAAA,CAAU,EAAE,CAAA;AAChD,MAAA,MAAM,aAAa,IAAA,KAAS,MAAA;AAC5B,MAAA,MAAM,uBAAuB,IAAA,KAAS,QAAA;AAEtC,MAAA,MAAM,WAAA,GAAc,IAAI,IAAA,CAAK,CAAC,OAAO,SAAA,CAAU,GAAA,CAAI,EAAE,CAAC,CAAA;AACtD,MAAA,MAAM,aAAA,GAAgB,IAAI,IAAA,CAAK,CAAC,OAAO,WAAA,CAAY,GAAA,CAAI,EAAE,CAAC,CAAA;AAE1D,MAAA,IAAI,MAAA;AACJ,MAAA,IAAI,CAAC,YAAY,MAAA,GAAS,UAAA;AAAA,WAAA,IACjB,CAAC,sBAAsB,MAAA,GAAS,SAAA;AAAA,WAAA,IAChC,GAAA,CAAI,MAAA,GAAS,CAAA,IAAK,WAAA,IAAe,eAAe,MAAA,GAAS,SAAA;AAAA,WAC7D,MAAA,GAAS,WAAA;AAEd,MAAA,IAAI,WAAW,WAAA,EAAa;AAC1B,QAAA,IAAI,GAAA,CAAI,MAAA,KAAW,CAAA,EAAG,MAAA,CAAO,KAAK,sEAAsE,CAAA;AAAA,aACnG;AACH,UAAA,IAAI,CAAC,aAAa,MAAA,CAAO,IAAA,CAAK,kBAAkB,GAAA,CAAI,IAAA,CAAK,IAAI,CAAC,CAAA,iCAAA,CAAmC,CAAA;AACjG,UAAA,IAAI,CAAC,eAAe,MAAA,CAAO,IAAA,CAAK,kBAAkB,GAAA,CAAI,IAAA,CAAK,IAAI,CAAC,CAAA,uCAAA,CAAyC,CAAA;AAAA,QAC3G;AAAA,MACF;AAEA,MAAA,IAAA,CAAK,IAAA,CAAK;AAAA,QACR,MAAA,EAAQ,KAAK,QAAA,CAAS,EAAA;AAAA,QACtB,aAAa,SAAA,CAAU,EAAA;AAAA,QACvB,eAAe,MAAA,CAAO,MAAA,CAAO,UAAU,KAAK,CAAA,CAAE,CAAC,CAAA,IAAK,EAAA;AAAA,QACpD,MAAA;AAAA,QACA,UAAA,EAAY,GAAA;AAAA,QACZ,WAAA;AAAA,QACA,aAAA;AAAA,QACA;AAAA,OACD,CAAA;AAAA,IACH;AAAA,EACF;AAGA,EAAA,KAAA,MAAW,EAAA,IAAM,MAAM,UAAA,EAAY;AACjC,IAAA,KAAA,MAAW,CAAA,IAAK,EAAA,CAAG,YAAA,IAAgB,EAAC,EAAG;AACrC,MAAA,IAAI,CAAC,mBAAA,CAAoB,CAAA,EAAG,KAAA,CAAM,KAAK,CAAA,EAAG;AACxC,QAAA,IAAA,CAAK,IAAA,CAAK;AAAA,UACR,MAAA,EAAQ,cAAA;AAAA,UACR,WAAA,EAAa,CAAA;AAAA,UACb,aAAA,EAAe,EAAA;AAAA,UACf,MAAA,EAAQ,WAAA;AAAA,UACR,UAAA,EAAY,CAAC,EAAA,CAAG,IAAI,CAAA;AAAA,UACpB,WAAA,EAAa,KAAA;AAAA,UACb,aAAA,EAAe,KAAA;AAAA,UACf,MAAA,EAAQ,CAAC,CAAA,aAAA,EAAgB,CAAC,CAAA,6EAAA,CAA0E;AAAA,SACrG,CAAA;AAAA,MACH;AAAA,IACF;AAAA,EACF;AAEA,EAAA,MAAM,cAAA,GAAiB,IAAA,CAAK,MAAA,CAAO,CAAC,CAAA,KAAM,EAAE,MAAA,KAAW,UAAA,IAAc,CAAA,CAAE,MAAA,KAAW,SAAS,CAAA;AAC3F,EAAA,MAAM,OAAA,GAAU,eAAe,MAAA,CAAO,CAAC,MAAM,CAAA,CAAE,MAAA,KAAW,SAAS,CAAA,CAAE,MAAA;AACrE,EAAA,MAAM,WAAA,GAAc,cAAA,CAAe,MAAA,KAAW,CAAA,GAAI,GAAA,GAAM,KAAK,KAAA,CAAO,OAAA,GAAU,cAAA,CAAe,MAAA,GAAU,GAAG,CAAA;AAC1G,EAAA,MAAM,eAAA,GAAkB,KAAK,MAAA,CAAO,CAAC,MAAM,CAAA,CAAE,MAAA,KAAW,cAAc,CAAA,CAAE,MAAA;AAExE,EAAA,MAAM,OAAA,GACJ,kBAAkB,CAAA,IAAK,WAAA,GAAc,KAAK,MAAA,GAAS,WAAA,GAAc,MAAM,MAAA,GAAS,MAAA;AAElF,EAAA,MAAM,KAAA,GAAkB;AAAA,IACtB,6BAAA;AAAA,IACA,EAAA;AAAA,IACA,gBAAgB,OAAO,CAAA,EAAA,CAAA;AAAA,IACvB,4BAA4B,WAAW,CAAA,KAAA,EAAQ,OAAO,CAAA,CAAA,EAAI,eAAe,MAAM,CAAA,6CAAA,CAAA;AAAA,IAC/E,8BAA8B,eAAe,CAAA,CAAA;AAAA,IAC7C,EAAA;AAAA,IACA,6DAAA;AAAA,IACA,2BAAA;AAAA,IACA,GAAG,IAAA,CAAK,GAAA;AAAA,MACN,CAAC,CAAA,KACC,CAAA,CAAA,EAAI,CAAA,CAAE,MAAM,CAAA,CAAA,EAAI,CAAA,CAAE,WAAW,CAAA,CAAA,EAAI,CAAA,CAAE,MAAM,CAAA,CAAA,EAAI,CAAA,CAAE,UAAA,CAAW,IAAA,CAAK,IAAI,CAAA,IAAK,QAAG,CAAA,CAAA,EAAI,CAAA,CAAE,WAAA,GAAc,QAAA,GAAM,QAAG,CAAA,CAAA,EAAI,CAAA,CAAE,aAAA,GAAgB,QAAA,GAAM,QAAG,CAAA,CAAA;AAAA;AAC3I,GACF;AACA,EAAA,MAAM,UAAA,GAAa,IAAA,CAAK,MAAA,CAAO,CAAC,CAAA,KAAM,CAAA,CAAE,MAAA,CAAO,MAAA,GAAS,CAAC,CAAA,CAAE,OAAA,CAAQ,CAAC,CAAA,KAAM,CAAA,CAAE,MAAA,CAAO,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,GAAA,EAAM,CAAA,CAAE,MAAM,CAAA,CAAA,EAAI,CAAA,CAAE,WAAW,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAC,CAAA;AACtI,EAAA,IAAI,UAAA,CAAW,SAAS,CAAA,EAAG,KAAA,CAAM,KAAK,EAAA,EAAI,WAAA,EAAa,GAAG,UAAU,CAAA;AAEpE,EAAA,OAAO;AAAA,IACL,OAAA;AAAA,IACA,WAAA;AAAA,IACA,IAAA;AAAA,IACA,OAAA,EAAS,CAAA,mBAAA,EAAsB,WAAW,CAAA,iBAAA,EAAe,OAAO,CAAA,CAAA;AAAA,IAChE,iBAAA,EAAmB,KAAA,CAAM,IAAA,CAAK,IAAI;AAAA,GACpC;AACF;ACtJO,IAAM,2BAAN,MAA+B;AAAA,EAC5B,MAAA;AAAA,EAER,WAAA,CAAY,MAAA,GAAkC,EAAC,EAAG;AAChD,IAAA,IAAI,OAAO,MAAA,EAAQ;AACjB,MAAA,IAAA,CAAK,SAAS,MAAA,CAAO,MAAA;AACrB,MAAA;AAAA,IACF;AACA,IAAA,MAAM,GAAA,GAAM,OAAO,WAAA,IAAe,OAAA,CAAQ,IAAI,wBAAA,IAA4B,OAAA,CAAQ,IAAI,YAAA,IAAgB,EAAA;AACtG,IAAA,MAAM,GAAA,GACJ,MAAA,CAAO,sBAAA,IACP,OAAA,CAAQ,GAAA,CAAI,6BACZ,MAAA,CAAO,eAAA,IACP,OAAA,CAAQ,GAAA,CAAI,6BAAA,IACZ,EAAA;AACF,IAAA,IAAI,CAAC,GAAA,IAAO,CAAC,GAAA,EAAK;AAChB,MAAA,MAAM,IAAI,MAAM,0EAA0E,CAAA;AAAA,IAC5F;AACA,IAAA,IAAA,CAAK,MAAA,GAASC,uBAAA,CAAa,GAAA,EAAK,GAAG,CAAA;AAAA,EACrC;AAAA;AAAA;AAAA,EAKA,MAAM,UAAA,CAAW,IAAA,EAAqB,IAAA,EAAuH;AAC3J,IAAA,MAAM,MAAA,GAAS,mBAAA,CAAoB,SAAA,CAAU,IAAI,CAAA;AACjD,IAAA,IAAI,CAAC,OAAO,OAAA,EAAS;AACnB,MAAA,MAAM,IAAI,MAAM,6CAAA,GAAgD,MAAA,CAAO,MAAM,MAAA,CAAO,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,CAAE,KAAK,IAAA,CAAK,GAAG,IAAI,IAAA,GAAO,CAAA,CAAE,OAAO,CAAA,CAAE,IAAA,CAAK,IAAI,CAAC,CAAA;AAAA,IAChJ;AACA,IAAA,MAAM,IAAI,MAAA,CAAO,IAAA;AAEjB,IAAA,MAAM,EAAE,IAAA,EAAM,EAAA,EAAI,KAAA,EAAO,KAAA,EAAM,GAAI,MAAM,IAAA,CAAK,MAAA,CAC3C,IAAA,CAAK,sBAAsB,CAAA,CAC3B,MAAA,CAAO;AAAA,MACN,OAAA,EAAS,EAAE,QAAA,CAAS,EAAA;AAAA,MACpB,eAAA,EAAiB,EAAE,QAAA,CAAS,cAAA;AAAA,MAC5B,IAAA,EAAM,EAAE,QAAA,CAAS,IAAA;AAAA,MACjB,YAAA,EAAc,EAAE,QAAA,CAAS,WAAA;AAAA,MACzB,OAAA,EAAS,EAAE,QAAA,CAAS,OAAA;AAAA,MACpB,SAAA,EAAW,EAAE,QAAA,CAAS,SAAA;AAAA,MACtB,WAAA,EAAa,EAAE,QAAA,CAAS,UAAA;AAAA,MACxB,UAAA,EAAY,EAAE,QAAA,CAAS,UAAA;AAAA,MACvB,KAAA,EAAO,EAAE,QAAA,CAAS,KAAA;AAAA,MAClB,MAAA,EAAQ,OAAA;AAAA,MACR,iBAAA,EAAmB,IAAA,EAAM,gBAAA,KAAqB,CAAA,CAAE,SAAS,KAAA,KAAU,UAAA,GAAa,IAAA,GAAO,CAAA,CAAE,SAAS,UAAA,CAAW,UAAA,EAAY,OAAA,CAAQ,OAAA,EAAS,EAAE,CAAA,IAAK,IAAA,CAAA;AAAA,MACjJ,kBAAA,EAAoB,MAAM,gBAAA,IAAoB,IAAA;AAAA,MAC9C,UAAA,EAAY,MAAM,SAAA,IAAa;AAAA,KAChC,CAAA,CACA,MAAA,CAAO,IAAI,EACX,MAAA,EAAO;AACV,IAAA,IAAI,OAAO,MAAM,IAAI,KAAA,CAAM,uCAAA,GAA0C,MAAM,OAAO,CAAA;AAElF,IAAA,MAAM,cAAc,EAAA,CAAG,EAAA;AAEvB,IAAA,MAAM,aAAA,GAAgB,CAAA,CAAE,UAAA,CAAW,GAAA,CAAI,CAAC,CAAA,MAA2B;AAAA,MACjE,YAAA,EAAc,WAAA;AAAA,MACd,cAAc,CAAA,CAAE,EAAA;AAAA,MAChB,mBAAA,EAAqB,EAAE,QAAA,IAAY,IAAA;AAAA,MACnC,SAAA,EAAW,CAAA,CAAE,SAAA,CAAU,CAAC,CAAA;AAAA,MACxB,SAAA,EAAW,CAAA,CAAE,SAAA,CAAU,CAAC,CAAA;AAAA,MACxB,OAAO,CAAA,CAAE,KAAA;AAAA,MACT,eAAA,EAAiB,CAAA,CAAE,eAAA,IAAmB,EAAC;AAAA,MACvC,UAAA,EAAY,EAAE,SAAA,IAAa,IAAA;AAAA,MAC3B,QAAA,EAAU,CAAA,CAAE,QAAA,IAAY,EAAC;AAAA,MACzB,UAAA,EAAY,EAAE,SAAA,IAAa,IAAA;AAAA,MAC3B,YAAY,CAAA,CAAE;AAAA,KAChB,CAAE,CAAA;AAEF,IAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAO,KAAA,EAAO,OAAA,KAAY,MAAM,IAAA,CAAK,MAAA,CACjD,IAAA,CAAK,sBAAsB,CAAA,CAC3B,MAAA,CAAO,eAAe,EAAE,KAAA,EAAO,SAAS,CAAA;AAC3C,IAAA,IAAI,OAAO,MAAM,IAAI,KAAA,CAAM,uCAAA,GAA0C,MAAM,OAAO,CAAA;AAElF,IAAA,IAAI,YAAA,GAAe,CAAA;AACnB,IAAA,IAAI,CAAA,CAAE,QAAA,IAAY,CAAA,CAAE,QAAA,CAAS,SAAS,CAAA,EAAG;AACvC,MAAA,MAAM,WAAA,GAAc,CAAA,CAAE,QAAA,CAAS,GAAA,CAAI,CAAC,CAAA,MAAyB;AAAA,QAC3D,YAAA,EAAc,WAAA;AAAA,QACd,cAAc,CAAA,CAAE,WAAA;AAAA,QAChB,YAAY,CAAA,CAAE,SAAA;AAAA,QACd,MAAM,CAAA,CAAE,IAAA;AAAA,QACR,YAAY,CAAA,CAAE,UAAA;AAAA,QACd,YAAY,CAAA,CAAE;AAAA,OAChB,CAAE,CAAA;AACF,MAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAO,KAAA,EAAO,OAAA,KAAY,MAAM,IAAA,CAAK,MAAA,CACjD,IAAA,CAAK,oBAAoB,CAAA,CACzB,MAAA,CAAO,aAAa,EAAE,KAAA,EAAO,SAAS,CAAA;AACzC,MAAA,IAAI,OAAO,MAAM,IAAI,KAAA,CAAM,qCAAA,GAAwC,MAAM,OAAO,CAAA;AAChF,MAAA,YAAA,GAAe,WAAW,WAAA,CAAY,MAAA;AAAA,IACxC;AAEA,IAAA,OAAO,EAAE,eAAe,WAAA,EAAa,kBAAA,EAAoB,WAAW,aAAA,CAAc,MAAA,EAAQ,kBAAkB,YAAA,EAAa;AAAA,EAC3H;AAAA;AAAA,EAGA,MAAM,aAAa,aAAA,EAAsC;AACvD,IAAA,MAAM,EAAE,OAAM,GAAI,MAAM,KAAK,MAAA,CAC1B,IAAA,CAAK,sBAAsB,CAAA,CAC3B,MAAA,CAAO,EAAE,MAAA,EAAQ,QAAA,EAAU,CAAA,CAC3B,EAAA,CAAG,MAAM,aAAa,CAAA,CACtB,EAAA,CAAG,QAAA,EAAU,OAAO,CAAA;AACvB,IAAA,IAAI,OAAO,MAAM,IAAI,KAAA,CAAM,uBAAA,GAA0B,MAAM,OAAO,CAAA;AAAA,EACpE;AAAA,EAEA,MAAM,cAAc,aAAA,EAAsC;AACxD,IAAA,MAAM,EAAE,KAAA,EAAM,GAAI,MAAM,IAAA,CAAK,OAC1B,IAAA,CAAK,sBAAsB,CAAA,CAC3B,MAAA,CAAO,EAAE,MAAA,EAAQ,YAAA,EAAc,CAAA,CAC/B,EAAA,CAAG,MAAM,aAAa,CAAA;AACzB,IAAA,IAAI,OAAO,MAAM,IAAI,KAAA,CAAM,wBAAA,GAA2B,MAAM,OAAO,CAAA;AAAA,EACrE;AAAA,EAEA,MAAM,SAAA,CAAU,aAAA,EAAuB,gBAAA,EAA0B,SAAA,EAAmC;AAClG,IAAA,MAAM,EAAE,OAAM,GAAI,MAAM,KAAK,MAAA,CAAO,IAAA,CAAK,yBAAyB,CAAA,CAAE,MAAA;AAAA,MAClE,EAAE,YAAA,EAAc,aAAA,EAAe,mBAAmB,gBAAA,EAAkB,UAAA,EAAY,aAAa,IAAA,EAAK;AAAA,MAClG,EAAE,YAAY,gCAAA;AAAiC,KACjD;AACA,IAAA,IAAI,OAAO,MAAM,IAAI,KAAA,CAAM,oBAAA,GAAuB,MAAM,OAAO,CAAA;AAAA,EACjE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,gBAAgB,gBAAA,EAA0D;AAE9E,IAAA,IAAI,KAAA,GAAQ,IAAA,CAAK,MAAA,CACd,IAAA,CAAK,sBAAsB,CAAA,CAC3B,MAAA,CAAO,+CAA+C,CAAA,CACtD,EAAA,CAAG,QAAA,EAAU,QAAQ,CAAA;AACxB,IAAA,MAAM,EAAE,IAAA,EAAM,UAAA,EAAY,KAAA,KAAU,MAAM,KAAA;AAC1C,IAAA,IAAI,OAAO,MAAM,IAAI,KAAA,CAAM,mBAAA,GAAsB,MAAM,OAAO,CAAA;AAE9D,IAAA,MAAM,WAAW,UAAA,IAAc,EAAC,EAAG,MAAA,CAAO,CAAC,CAAA,KAAW;AACpD,MAAA,MAAM,GAAA,GAAM,CAAA,CAAE,iBAAA,IAAqB,gBAAA,IAAoB,EAAE,iBAAA,KAAsB,gBAAA;AAC/E,MAAA,MAAM,MAAA,GAAS,CAAC,CAAA,CAAE,iBAAA;AAClB,MAAA,MAAM,OAAA,GAAU,gBAAA,IAAA,CAAqB,CAAA,CAAE,uBAAA,IAA2B,EAAC,EAAG,IAAA,CAAK,CAAC,CAAA,KAAW,CAAA,CAAE,iBAAA,KAAsB,gBAAgB,CAAA;AAC/H,MAAA,OAAO,UAAU,GAAA,IAAO,OAAA;AAAA,IAC1B,CAAC,CAAA;AAED,IAAA,IAAI,OAAA,CAAQ,MAAA,KAAW,CAAA,EAAG,OAAO,EAAC;AAElC,IAAA,MAAM,MAAM,OAAA,CAAQ,GAAA,CAAI,CAAC,CAAA,KAAW,EAAE,EAAE,CAAA;AACxC,IAAA,MAAM,CAAC,EAAE,IAAA,EAAM,UAAA,EAAY,OAAO,KAAA,EAAM,EAAG,EAAE,IAAA,EAAM,QAAA,EAAU,KAAA,EAAO,OAAM,EAAG,EAAE,MAAM,SAAA,EAAW,KAAA,EAAO,OAAO,CAAA,GAAI,MAAM,OAAA,CAAQ,GAAA,CAAI;AAAA,MAClI,IAAA,CAAK,MAAA,CAAO,IAAA,CAAK,sBAAsB,CAAA,CAAE,OAAO,GAAG,CAAA,CAAE,EAAA,CAAG,cAAA,EAAgB,GAAG,CAAA;AAAA,MAC3E,IAAA,CAAK,MAAA,CAAO,IAAA,CAAK,oBAAoB,CAAA,CAAE,OAAO,GAAG,CAAA,CAAE,EAAA,CAAG,cAAA,EAAgB,GAAG,CAAA;AAAA,MACzE,IAAA,CAAK,MAAA,CAAO,IAAA,CAAK,6BAA6B,CAAA,CAAE,OAAO,GAAG,CAAA,CAAE,EAAA,CAAG,cAAA,EAAgB,GAAG;AAAA,KACnF,CAAA;AACD,IAAA,IAAI,OAAO,MAAM,IAAI,KAAA,CAAM,8BAAA,GAAiC,MAAM,OAAO,CAAA;AAEzE,IAAA,MAAM,aAAA,uBAAoB,GAAA,EAAmB;AAC7C,IAAA,KAAA,MAAW,CAAA,IAAK,SAAA,IAAa,EAAC,EAAG;AAC/B,MAAA,MAAM,OAAO,aAAA,CAAc,GAAA,CAAI,CAAA,CAAE,YAAY,KAAK,EAAC;AACnD,MAAA,IAAA,CAAK,KAAK,CAAC,CAAA;AACX,MAAA,aAAA,CAAc,GAAA,CAAI,CAAA,CAAE,YAAA,EAAc,IAAI,CAAA;AAAA,IACxC;AAEA,IAAA,OAAO,OAAA,CAAQ,GAAA,CAAI,CAAC,CAAA,KAAW;AAC7B,MAAA,MAAM,KAAA,GAAA,CAAS,UAAA,IAAc,EAAC,EAC3B,OAAO,CAAC,CAAA,KAAW,CAAA,CAAE,YAAA,KAAiB,CAAA,CAAE,EAAE,CAAA,CAC1C,GAAA,CAAI,CAAC,CAAA,MAAY;AAAA,QAChB,IAAI,CAAA,CAAE,YAAA;AAAA,QACN,QAAA,EAAU,EAAE,mBAAA,IAAuB,MAAA;AAAA,QACnC,SAAA,EAAW,CAAC,CAAA,CAAE,SAAA,EAAW,EAAE,SAAS,CAAA;AAAA,QACpC,OAAO,CAAA,CAAE,KAAA;AAAA,QACT,eAAA,EAAiB,CAAA,CAAE,eAAA,IAAmB,EAAC;AAAA,QACvC,SAAA,EAAW,EAAE,UAAA,IAAc,MAAA;AAAA,QAC3B,QAAA,EAAU,CAAA,CAAE,QAAA,IAAY,EAAC;AAAA,QACzB,SAAA,EAAW,EAAE,UAAA,IAAc,MAAA;AAAA,QAC3B,UAAA,EAAY,CAAA,CAAE,UAAA,IAAc,EAAE,QAAQ,UAAA;AAAW,OACnD,CAAE,CAAA;AAGJ,MAAA,MAAM,KAAK,aAAA,CAAc,GAAA,CAAI,CAAA,CAAE,EAAE,KAAK,EAAC;AACvC,MAAA,MAAM,UAAU,IAAI,GAAA,CAAI,GAAG,MAAA,CAAO,CAAC,MAAW,CAAA,CAAE,IAAA,KAAS,SAAS,CAAA,CAAE,GAAA,CAAI,CAAC,CAAA,KAAW,CAAA,CAAE,eAAe,GAAA,GAAM,CAAA,CAAE,UAAU,CAAC,CAAA;AACxH,MAAA,MAAM,QAAA,GAAA,CAAgC,QAAA,IAAY,EAAC,EAChD,OAAO,CAAC,CAAA,KAAW,CAAA,CAAE,YAAA,KAAiB,CAAA,CAAE,EAAE,CAAA,CAC1C,GAAA,CAAI,CAAC,CAAA,MAAY;AAAA,QAChB,aAAa,CAAA,CAAE,YAAA;AAAA,QACf,WAAW,CAAA,CAAE,UAAA;AAAA,QACb,MAAM,CAAA,CAAE,IAAA;AAAA,QACR,UAAA,EAAY,MAAA,CAAO,CAAA,CAAE,UAAU,CAAA;AAAA,QAC/B,UAAA,EAAY,CAAA,CAAE,UAAA,IAAc,EAAE,QAAQ,UAAA;AAAW,OACnD,CAAE,CAAA;AACJ,MAAA,MAAM,OAAA,GAA8B,EAAA,CACjC,MAAA,CAAO,CAAC,CAAA,KAAW,CAAA,CAAE,IAAA,KAAS,SAAS,CAAA,CACvC,GAAA,CAAI,CAAC,CAAA,MAAY;AAAA,QAChB,aAAa,CAAA,CAAE,YAAA;AAAA,QACf,WAAW,CAAA,CAAE,UAAA;AAAA,QACb,MAAM,CAAA,CAAE,IAAA;AAAA,QACR,UAAA,EAAY,MAAA,CAAO,CAAA,CAAE,UAAU,CAAA;AAAA,QAC/B,UAAA,EAAY,EAAE,MAAA,EAAQ,OAAA,EAAS,UAAA,EAAY,CAAA,CAAE,UAAA,IAAc,SAAA,EAAW,IAAA,EAAM,CAAA,CAAE,IAAA,IAAQ,MAAA;AAAU,OAClG,CAAE,CAAA;AAEJ,MAAA,MAAM,MAAA,uBAAa,GAAA,EAA8B;AACjD,MAAA,KAAA,MAAW,CAAA,IAAK,UAAU,MAAA,CAAO,GAAA,CAAI,EAAE,WAAA,GAAc,GAAA,GAAM,CAAA,CAAE,SAAA,EAAW,CAAC,CAAA;AACzE,MAAA,KAAA,MAAW,CAAA,IAAK,SAAS,MAAA,CAAO,GAAA,CAAI,EAAE,WAAA,GAAc,GAAA,GAAM,CAAA,CAAE,SAAA,EAAW,CAAC,CAAA;AACxE,MAAA,MAAM,gBAAgB,CAAC,GAAG,OAAO,MAAA,EAAQ,EAAE,MAAA,CAAO,CAAC,CAAA,KAAM,CAAC,QAAQ,GAAA,CAAI,CAAA,CAAE,cAAc,GAAA,GAAM,CAAA,CAAE,SAAS,CAAC,CAAA;AAExG,MAAA,MAAM,QAAA,GAAW,oBAAoB,SAAA,CAAU;AAAA,QAC7C,QAAA,EAAU;AAAA,UACR,IAAI,CAAA,CAAE,OAAA;AAAA,UACN,MAAM,CAAA,CAAE,IAAA;AAAA,UACR,WAAA,EAAa,EAAE,YAAA,IAAgB,KAAA;AAAA,UAC/B,gBAAgB,CAAA,CAAE,eAAA;AAAA,UAClB,SAAS,CAAA,CAAE,OAAA;AAAA,UACX,WAAW,CAAA,CAAE,SAAA;AAAA,UACb,YAAY,CAAA,CAAE,WAAA;AAAA,UACd,YAAY,CAAA,CAAE,UAAA;AAAA,UACd,OAAO,CAAA,CAAE;AAAA,SACX;AAAA,QACA,UAAA,EAAY,KAAA;AAAA,QACZ,QAAA,EAAU;AAAA,OACX,CAAA;AACD,MAAA,IAAI,CAAC,SAAS,OAAA,EAAS;AACrB,QAAA,MAAM,IAAI,KAAA,CAAM,kCAAA,GAAqC,CAAA,CAAE,OAAA,GAAU,mBAAA,GAAsB,QAAA,CAAS,KAAA,CAAM,MAAA,CAAO,CAAC,CAAA,EAAG,OAAO,CAAA;AAAA,MAC1H;AAEA,MAAA,OAAO,EAAE,GAAG,QAAA,CAAS,IAAA,EAAM,IAAA,EAAM,CAAA,CAAE,EAAA,EAAI,MAAA,EAAQ,CAAA,CAAE,MAAA,EAAQ,gBAAA,EAAkB,CAAA,CAAE,qBAAqB,IAAA,EAAK;AAAA,IACzG,CAAC,CAAA;AAAA,EACH;AACF;;;ACpPA,SAAS,UAAU,IAAA,EAAiC;AAClD,EAAA,OAAO,KAAK,CAAC,CAAA,KAAM,KAAK,CAAC,CAAA,GAAI,IAAI,IAAA,CAAK,CAAC,CAAC,CAAA,CAAA,GAAK,IAAI,IAAA,CAAK,CAAC,CAAC,CAAA,OAAA,EAAK,IAAA,CAAK,CAAC,CAAC,CAAA,CAAA;AACtE;AAEO,SAAS,2BAA2B,IAAA,EAAoC;AAC7E,EAAA,MAAM,EAAE,SAAA,EAAW,KAAA,EAAO,eAAA,EAAiB,UAAS,GAAI,IAAA;AACxD,EAAA,MAAM,QAAkB,EAAC;AAEzB,EAAA,KAAA,CAAM,KAAK,KAAK,CAAA;AAChB,EAAA,KAAA,CAAM,IAAA,CAAK,CAAA,KAAA,EAAQ,SAAA,CAAU,WAAA,EAAa,CAAA,gBAAA,CAAkB,CAAA;AAC5D,EAAA,KAAA,CAAM,IAAA,CAAK,CAAA,wBAAA,EAA2B,SAAS,CAAA,CAAA,CAAG,CAAA;AAClD,EAAA,KAAA,CAAM,KAAK,wBAAwB,CAAA;AACnC,EAAA,KAAA,CAAM,KAAK,aAAa,CAAA;AACxB,EAAA,KAAA,CAAM,KAAK,+BAA+B,CAAA;AAC1C,EAAA,KAAA,CAAM,KAAK,CAAA,cAAA,EAAA,iBAAiB,IAAI,MAAK,EAAE,WAAA,EAAa,CAAA,CAAA,CAAG,CAAA;AACvD,EAAA,KAAA,CAAM,KAAK,8EAAyE,CAAA;AACpF,EAAA,KAAA,CAAM,KAAK,KAAK,CAAA;AAChB,EAAA,KAAA,CAAM,KAAK,EAAE,CAAA;AACb,EAAA,KAAA,CAAM,KAAK,oEAA6C,CAAA;AACxD,EAAA,KAAA,CAAM,KAAK,EAAE,CAAA;AAEb,EAAA,IAAI,KAAA,CAAM,WAAW,CAAA,EAAG;AACtB,IAAA,KAAA,CAAM,KAAK,2GAAiG,CAAA;AAC5G,IAAA,KAAA,CAAM,KAAK,uFAAuF,CAAA;AAClG,IAAA,KAAA,CAAM,KAAK,2FAA2F,CAAA;AACtG,IAAA,OAAO,KAAA,CAAM,KAAK,IAAI,CAAA;AAAA,EACxB;AAEA,EAAA,KAAA,MAAW,QAAQ,KAAA,EAAO;AACxB,IAAA,MAAM,IAAI,IAAA,CAAK,QAAA;AACf,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,GAAA,EAAM,CAAA,CAAE,IAAI,CAAA,CAAE,CAAA;AACzB,IAAA,KAAA,CAAM,KAAK,EAAE,CAAA;AACb,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,iBAAA,EAAoB,CAAA,CAAE,EAAE,CAAA,YAAA,EAAe,EAAE,cAAc,CAAA,YAAA,EAAe,CAAA,CAAE,WAAW,CAAA,CAAA,CAAG,CAAA;AACjG,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,aAAA,EAAgB,CAAA,CAAE,KAAK,CAAA,QAAA,EAAM,EAAE,KAAA,KAAU,UAAA,GAAa,kBAAA,GAAqB,cAAc,CAAA,CAAE,CAAA;AACtG,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,kBAAA,EAAgB,CAAA,CAAE,UAAA,CAAW,SAAS,CAAA,EAAG,CAAA,CAAE,UAAA,CAAW,SAAA,GAAY,OAAO,CAAA,CAAE,UAAA,CAAW,SAAA,GAAY,GAAA,GAAM,EAAE,CAAA,CAAE,CAAA;AACvH,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,eAAA,EAAkB,CAAA,CAAE,UAAA,CAAW,OAAO,CAAA,CAAE,CAAA;AACnD,IAAA,KAAA,CAAM,KAAK,CAAA,8BAAA,EAAiC,SAAA,CAAU,EAAE,UAAA,CAAW,KAAK,CAAC,CAAA,CAAE,CAAA;AAC3E,IAAA,KAAA,CAAM,KAAK,EAAE,CAAA;AACb,IAAA,KAAA,CAAM,KAAK,kDAA6C,CAAA;AACxD,IAAA,KAAA,CAAM,KAAK,EAAE,CAAA;AACb,IAAA,KAAA,CAAM,KAAK,4CAA4C,CAAA;AACvD,IAAA,KAAA,CAAM,KAAK,mBAAmB,CAAA;AAE9B,IAAA,MAAM,UAAA,GAAa,eAAA,GACf,IAAA,CAAK,UAAA,CAAW,MAAA,CAAO,CAAC,CAAA,KAAM,IAAA,CAAK,GAAA,CAAI,CAAA,CAAE,SAAA,CAAU,CAAC,CAAA,EAAG,eAAA,CAAgB,CAAC,CAAC,CAAA,IAAK,IAAA,CAAK,GAAA,CAAI,CAAA,CAAE,SAAA,CAAU,CAAC,CAAA,EAAG,eAAA,CAAgB,CAAC,CAAC,CAAC,CAAA,GAC1H,IAAA,CAAK,UAAA;AAET,IAAA,KAAA,MAAW,KAAK,UAAA,EAAY;AAC1B,MAAA,MAAM,IAAA,GAAQ,QAAA,IAAY,CAAA,CAAE,KAAA,CAAM,QAAQ,CAAA,IAAM,MAAA,CAAO,MAAA,CAAO,CAAA,CAAE,KAAK,CAAA,CAAE,CAAC,CAAA;AACxE,MAAA,MAAM,MAAA,GAAA,CAAU,IAAA,CAAK,QAAA,IAAY,EAAC,EAAG,MAAA,CAAO,CAAC,EAAA,KAAO,EAAA,CAAG,WAAA,KAAgB,CAAA,CAAE,EAAE,CAAA;AAC3E,MAAA,MAAM,UAAU,MAAA,CAAO,MAAA,GAAS,IAAI,CAAA,QAAA,EAAM,MAAA,CAAO,IAAI,CAAC,EAAA,KAAO,GAAG,SAAA,GAAY,IAAA,GAAO,GAAG,IAAA,GAAO,GAAG,EAAE,IAAA,CAAK,IAAI,CAAC,CAAA,CAAA,GAAK,EAAA;AACjH,MAAA,KAAA,CAAM,IAAA,CAAK,CAAA,IAAA,EAAO,CAAA,CAAE,EAAE,CAAA,KAAA,EAAQ,SAAA,CAAU,CAAA,CAAE,SAAS,CAAC,CAAA,GAAA,EAAM,IAAA,CAAK,OAAA,CAAQ,KAAA,EAAO,KAAK,CAAC,CAAA,GAAA,EAAA,CAAO,CAAA,CAAE,QAAA,IAAY,EAAC,EAAG,IAAA,CAAK,IAAI,CAAC,CAAA,EAAG,OAAA,GAAU,IAAA,GAAO,OAAA,GAAU,IAAI,CAAA,CAAE,CAAA;AAAA,IAC7J;AACA,IAAA,KAAA,CAAM,KAAK,EAAE,CAAA;AAAA,EACf;AAEA,EAAA,KAAA,CAAM,KAAK,KAAK,CAAA;AAChB,EAAA,KAAA,CAAM,KAAK,EAAE,CAAA;AACb,EAAA,KAAA,CAAM,KAAK,gMAAgM,CAAA;AAC3M,EAAA,OAAO,KAAA,CAAM,KAAK,IAAI,CAAA;AACxB;;;AC9EA,IAAA,qBAAA,GAAA;AAAA,EACE,QAAA,EAAY;AAAA,IACV,EAAA,EAAM,eAAA;AAAA,IACN,IAAA,EAAQ,6CAAA;AAAA,IACR,WAAA,EAAe,KAAA;AAAA,IACf,cAAA,EAAkB,QAAA;AAAA,IAClB,OAAA,EAAW,WAAA;AAAA,IACX,SAAA,EAAa;AAAA,MACX;AAAA,KACF;AAAA,IACA,UAAA,EAAc;AAAA,MACZ,IAAA,EAAQ,QAAA;AAAA,MACR,KAAA,EAAS;AAAA,QACP,CAAA;AAAA,QACA;AAAA;AACF,KACF;AAAA,IACA,UAAA,EAAc;AAAA,MACZ,SAAA,EAAa,qEAAA;AAAA,MACb,SAAA,EAAa,2CAAA;AAAA,MACb,OAAA,EAAW,oDAAA;AAAA,MACX,UAAA,EAAc,UAAA;AAAA,MACd,UAAA,EAAc;AAAA,KAChB;AAAA,IACA,KAAA,EAAS;AAAA,GACX;AAAA,EACA,UAAA,EAAc;AAAA,IACZ;AAAA,MACE,EAAA,EAAM,UAAA;AAAA,MACN,SAAA,EAAa;AAAA,QACX,CAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EAAS;AAAA,QACP,EAAA,EAAM;AAAA,OACR;AAAA,MACA,eAAA,EAAmB;AAAA,QACjB;AAAA,UACE,IAAA,EAAQ,QAAA;AAAA,UACR,KAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,SAAA,EAAa;AAAA,QACX,OAAA,EAAW;AAAA,OACb;AAAA,MACA,QAAA,EAAY;AAAA,QACV,SAAA;AAAA,QACA,UAAA;AAAA,QACA,aAAA;AAAA,QACA,OAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,SAAA,EAAa,iEAAA;AAAA,MACb,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU;AAAA;AACZ,KACF;AAAA,IACA;AAAA,MACE,EAAA,EAAM,UAAA;AAAA,MACN,SAAA,EAAa;AAAA,QACX,CAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EAAS;AAAA,QACP,EAAA,EAAM;AAAA,OACR;AAAA,MACA,eAAA,EAAmB;AAAA,QACjB;AAAA,UACE,IAAA,EAAQ,QAAA;AAAA,UACR,KAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,SAAA,EAAa;AAAA,QACX,OAAA,EAAW,QAAA;AAAA,QACX,SAAA,EAAa;AAAA,OACf;AAAA,MACA,QAAA,EAAY;AAAA,QACV,UAAA;AAAA,QACA,QAAA;AAAA,QACA,OAAA;AAAA,QACA,cAAA;AAAA,QACA,oBAAA;AAAA,QACA,KAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,SAAA,EAAa,iEAAA;AAAA,MACb,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU;AAAA;AACZ,KACF;AAAA,IACA;AAAA,MACE,EAAA,EAAM,UAAA;AAAA,MACN,SAAA,EAAa;AAAA,QACX,CAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EAAS;AAAA,QACP,EAAA,EAAM;AAAA,OACR;AAAA,MACA,eAAA,EAAmB;AAAA,QACjB;AAAA,UACE,IAAA,EAAQ,QAAA;AAAA,UACR,KAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,SAAA,EAAa;AAAA,QACX,OAAA,EAAW;AAAA,OACb;AAAA,MACA,QAAA,EAAY;AAAA,QACV,eAAA;AAAA,QACA,aAAA;AAAA,QACA,mBAAA;AAAA,QACA,WAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,SAAA,EAAa,iEAAA;AAAA,MACb,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU;AAAA;AACZ,KACF;AAAA,IACA;AAAA,MACE,EAAA,EAAM,UAAA;AAAA,MACN,SAAA,EAAa;AAAA,QACX,CAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EAAS;AAAA,QACP,EAAA,EAAM;AAAA,OACR;AAAA,MACA,eAAA,EAAmB;AAAA,QACjB;AAAA,UACE,IAAA,EAAQ,QAAA;AAAA,UACR,KAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,SAAA,EAAa;AAAA,QACX,OAAA,EAAW;AAAA,OACb;AAAA,MACA,QAAA,EAAY;AAAA,QACV,OAAA;AAAA,QACA,QAAA;AAAA,QACA,SAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,SAAA,EAAa,iEAAA;AAAA,MACb,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU;AAAA;AACZ,KACF;AAAA,IACA;AAAA,MACE,EAAA,EAAM,UAAA;AAAA,MACN,SAAA,EAAa;AAAA,QACX,CAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EAAS;AAAA,QACP,EAAA,EAAM;AAAA,OACR;AAAA,MACA,eAAA,EAAmB;AAAA,QACjB;AAAA,UACE,IAAA,EAAQ,QAAA;AAAA,UACR,KAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,SAAA,EAAa;AAAA,QACX,OAAA,EAAW;AAAA,OACb;AAAA,MACA,QAAA,EAAY;AAAA,QACV,MAAA;AAAA,QACA,OAAA;AAAA,QACA,QAAA;AAAA,QACA,iBAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,SAAA,EAAa,iEAAA;AAAA,MACb,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU;AAAA;AACZ,KACF;AAAA,IACA;AAAA,MACE,EAAA,EAAM,UAAA;AAAA,MACN,SAAA,EAAa;AAAA,QACX,CAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EAAS;AAAA,QACP,EAAA,EAAM;AAAA,OACR;AAAA,MACA,eAAA,EAAmB;AAAA,QACjB;AAAA,UACE,IAAA,EAAQ,QAAA;AAAA,UACR,KAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,SAAA,EAAa;AAAA,QACX,OAAA,EAAW;AAAA,OACb;AAAA,MACA,QAAA,EAAY;AAAA,QACV,WAAA;AAAA,QACA,kBAAA;AAAA,QACA,eAAA;AAAA,QACA,qBAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,SAAA,EAAa,6DAAA;AAAA,MACb,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU;AAAA;AACZ;AACF,GACF;AAAA,EACA,QAAA,EAAY;AAAA,IACV;AAAA,MACE,WAAA,EAAe,UAAA;AAAA,MACf,SAAA,EAAa,iBAAA;AAAA,MACb,IAAA,EAAQ,QAAA;AAAA,MACR,UAAA,EAAc,IAAA;AAAA,MACd,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU,OAAA;AAAA,QACV,UAAA,EAAc;AAAA;AAChB,KACF;AAAA,IACA;AAAA,MACE,WAAA,EAAe,UAAA;AAAA,MACf,SAAA,EAAa,mBAAA;AAAA,MACb,IAAA,EAAQ,QAAA;AAAA,MACR,UAAA,EAAc,IAAA;AAAA,MACd,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU,OAAA;AAAA,QACV,UAAA,EAAc;AAAA;AAChB,KACF;AAAA,IACA;AAAA,MACE,WAAA,EAAe,UAAA;AAAA,MACf,SAAA,EAAa,8BAAA;AAAA,MACb,IAAA,EAAQ,QAAA;AAAA,MACR,UAAA,EAAc,IAAA;AAAA,MACd,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU,OAAA;AAAA,QACV,UAAA,EAAc;AAAA;AAChB,KACF;AAAA,IACA;AAAA,MACE,WAAA,EAAe,UAAA;AAAA,MACf,SAAA,EAAa,gCAAA;AAAA,MACb,IAAA,EAAQ,SAAA;AAAA,MACR,UAAA,EAAc,GAAA;AAAA,MACd,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU,UAAA;AAAA,QACV,UAAA,EAAc;AAAA;AAChB,KACF;AAAA,IACA;AAAA,MACE,WAAA,EAAe,UAAA;AAAA,MACf,SAAA,EAAa,8BAAA;AAAA,MACb,IAAA,EAAQ,QAAA;AAAA,MACR,UAAA,EAAc,GAAA;AAAA,MACd,UAAA,EAAc;AAAA,QACZ,MAAA,EAAU,UAAA;AAAA,QACV,UAAA,EAAc;AAAA;AAChB;AACF;AAEJ,CAAA;;;AC7PA,IAAM,oBAAA,GAAgD;AAAA,EACpD,eAAA,EAAiB;AACnB,CAAA;AAGO,IAAM,0BAAA,GAAuC,MAAA,CAAO,IAAA,CAAK,oBAAoB,EAAE,IAAA;AAEtF,IAAM,eAAA,uBAAsB,GAAA,EAA2B;AAMhD,SAAS,sBAAsB,OAAA,EAAuD;AAC3F,EAAA,IAAI,CAAC,OAAA,IAAW,OAAA,CAAQ,MAAA,KAAW,CAAA,SAAU,EAAC;AAC9C,EAAA,MAAM,QAAyB,EAAC;AAChC,EAAA,KAAA,MAAW,MAAM,OAAA,EAAS;AACxB,IAAA,IAAI,eAAA,CAAgB,GAAA,CAAI,EAAE,CAAA,EAAG;AAC3B,MAAA,KAAA,CAAM,IAAA,CAAK,eAAA,CAAgB,GAAA,CAAI,EAAE,CAAkB,CAAA;AACnD,MAAA;AAAA,IACF;AACA,IAAA,MAAM,GAAA,GAAM,qBAAqB,EAAE,CAAA;AACnC,IAAA,IAAI,CAAC,GAAA,EAAK;AACR,MAAA,OAAA,CAAQ,IAAA,CAAK,CAAA,kBAAA,EAAqB,EAAE,CAAA,0DAAA,CAAqC,CAAA;AACzE,MAAA;AAAA,IACF;AACA,IAAA,MAAM,MAAA,GAAS,mBAAA,CAAoB,SAAA,CAAU,GAAG,CAAA;AAChD,IAAA,IAAI,CAAC,OAAO,OAAA,EAAS;AACnB,MAAA,OAAA,CAAQ,IAAA,CAAK,qBAAqB,EAAE,CAAA,iCAAA,CAAA,EAA2B,OAAO,KAAA,CAAM,MAAA,CAAO,CAAC,CAAA,EAAG,OAAO,CAAA;AAC9F,MAAA;AAAA,IACF;AACA,IAAA,eAAA,CAAgB,GAAA,CAAI,EAAA,EAAI,MAAA,CAAO,IAAI,CAAA;AACnC,IAAA,KAAA,CAAM,IAAA,CAAK,OAAO,IAAI,CAAA;AAAA,EACxB;AACA,EAAA,OAAO,KAAA;AACT","file":"index.cjs","sourcesContent":["import { z } from 'zod';\n\n/**\n * Framework Pack Schema v1.0 — Standards Registry interchange contract.\n *\n * A Framework Pack is a self-contained, schema-validated data bundle describing\n * ONE educational standard/framework (CSTA K-12, NGSS, GDPT 2018, an org's\n * internal standard, ...) in the lowest common denominator that virtually every\n * framework can map onto: a flat list of atomized statements + optional\n * classifications + optional mappings to the Ontora knowledge tree.\n *\n * Design invariants (see docs/ideas/2026-08-29-standards-registry-framework-pack.md):\n * - I1 Pack is DATA, never code. Importing a pack NEVER mutates the Ontora\n * Master Tree — mappings are reference bridges, resolved (not written).\n * - I2 Canonical statement text (verbatim) is immutable ground truth. Derived\n * fields (translations, keywords, bloom hints) carry their own provenance.\n * - I3 IDs are stable forever: keep the official source ID when present, else\n * mint once from content identity (never from row position).\n * - I4 gradeBand is canonical numeric (gradeModel normalizes grades/ages/bands).\n * - I5 Mappings use namespaced targets (ontora:CODE, csta:1B-AP-10, ...) and are\n * OPTIONAL — a pack with zero mappings still works (statement-only mode).\n * - I6 Everything is versioned: specVersion (this contract) vs contentVersion\n * (the framework's own content). Published content versions are immutable.\n */\n\n// ─── Shared primitives ───────────────────────────────────────────────────────\n\n/** Two-axis Bloom hint (Anderson & Krathwohl). Matches Ontora's dual-axis usage. */\nexport const BloomHintSchema = z.object({\n process: z\n .enum(['Remember', 'Understand', 'Apply', 'Analyze', 'Evaluate', 'Create'])\n .describe('Cognitive process axis'),\n knowledge: z\n .enum(['FACTUAL', 'CONCEPTUAL', 'PROCEDURAL', 'METACOGNITIVE'])\n .optional()\n .describe('Knowledge dimension axis (optional — most source standards do not tag it)'),\n});\n\n/** How a record entered the pack — drives trust & review requirements. */\nexport const RecordProvenanceSchema = z.object({\n method: z\n .enum(['source_official', 'ai_draft', 'minted_from_content', 'human', 'crosswalk', 'imported'])\n .describe('source_official = copied from an authoritative machine-readable source; ai_draft = LLM-extracted, REQUIRES human review before activation; minted_from_content = ID synthesized because source has none; crosswalk = derived by the curriculum-crosswalk skill'),\n reviewedBy: z.string().optional().describe('Person/agent that approved this record (required for ai_draft records before activation)'),\n reviewedAt: z.string().optional().describe('ISO-8601 timestamp of review'),\n note: z.string().optional().describe('Free-form provenance note'),\n});\n\n/** Numeric grade band, canonical. [6, 6] = single grade 6; [6, 8] = band. */\nexport const GradeBandSchema = z\n .array(z.number().int().min(-1).max(30), { message: 'gradeBand must be [minGrade, maxGrade] integers' })\n .length(2)\n .refine(([min, max]) => min <= max, { message: 'gradeBand min must be <= max' })\n .describe('Canonical numeric grade band. -1 = kindergarten/pre-primary. Framework-specific models (VN grades, US bands, ages) normalize into this scale via manifest.gradeModel');\n\n/** Optional free-form classification axes (strand, NGSS dimension, \"Chủ đề\", ...). */\nexport const ClassificationSchema = z.object({\n axis: z.string().describe('Axis label, e.g. \"strand\", \"dimension\", \"Chủ đề\"'),\n value: z.string().describe('Value on that axis, e.g. \"AP\", \"Disciplinary Core Idea\", \"Thuật toán\"'),\n});\n\n// ─── Manifest ────────────────────────────────────────────────────────────────\n\nexport const FrameworkPackManifestSchema = z.object({\n /** Immutable pack identifier. Never reused, never renamed. */\n id: z\n .string()\n .min(3)\n .regex(/^[a-z0-9][a-z0-9._-]*$/, 'pack id must be kebab/lowercase-safe (a-z 0-9 . _ -)')\n .describe('Immutable pack identifier, e.g. \"csta-k12-2017\", \"gdpt-2018-tin-hoc\", \"abc-tin-hoc\"'),\n name: z.string().min(1).describe('Human-readable framework name'),\n specVersion: z.literal('1.0').describe('Version of THIS pack contract (not the content)'),\n contentVersion: z\n .string()\n .min(1)\n .describe('Content version of the framework inside this pack. Bump on any content change; published versions are immutable'),\n subject: z.string().describe('Primary subject domain, e.g. \"computing\", \"science\", \"mathematics\"'),\n languages: z.array(z.string().min(2)).min(1).describe('BCP-47 language codes present in statement texts, e.g. [\"vi\"], [\"en\",\"vi\"]'),\n gradeModel: z.object({\n type: z.enum(['grades', 'ages', 'bands']).describe('grades = school grades (canonical numbers); ages = years old; bands = named developmental bands'),\n range: GradeBandSchema.describe('Overall grade range covered by the framework'),\n /** Optional normalization table when type != \"grades\" (e.g. band \"6-8\" -> [6,8]). */\n normalization: z\n .array(\n z.object({\n from: z.string().describe('Source label, e.g. \"level 6-8\" or \"11-13 years\"'),\n to: GradeBandSchema,\n })\n )\n .optional()\n .describe('Explicit label -> numeric band conversion table. Required when type != \"grades\"'),\n }),\n provenance: z.object({\n sourceRef: z.string().describe('Citation of the official source, e.g. \"Thông tư 32/2018/TT-BGDĐT\" or a URL'),\n sourceUrl: z.string().optional().describe('Canonical URL of the source document or live registry'),\n license: z.string().describe('License / usage rights of the source text'),\n importedBy: z.string().describe('Who produced this pack, e.g. \"platform\" or \"org:abc\"'),\n importedAt: z.string().describe('ISO-8601 timestamp'),\n originalFileHash: z.string().optional().describe('SHA-256 of the original uploaded file, for source provenance'),\n }),\n trust: z.enum(['verified', 'org']).default('org').describe('verified = platform-curated; org = self-served by an org. Generation accepts both; compliance reporting counts verified only'),\n});\n\n// ─── Statement ───────────────────────────────────────────────────────────────\n\nexport const FrameworkStatementSchema = z.object({\n /** Canonical, forever-stable statement ID (see invariant I3). */\n id: z\n .string()\n .min(2)\n .regex(/^[A-Za-z0-9][A-Za-z0-9._:-]*$/, 'statement id must not contain whitespace or separators beyond . _ : -')\n .describe('Statement ID. Official source ID when present (e.g. \"1B-AP-10\"); otherwise minted once from content identity. Namespaced at query time by the pack id, never stored with prefix duplication'),\n /** Optional hierarchical parent within the SAME pack (GDPT competence → requirement, CSTA strand → statement, ...). */\n parentId: z.string().optional().describe('Parent statement id within this pack, when the source framework is hierarchical'),\n gradeBand: GradeBandSchema,\n /** Verbatim canonical text per language. The FIRST / primary language text is judge ground truth (invariant I2). */\n texts: z\n .record(z.string().min(2), z.string().min(1))\n .refine((t) => Object.keys(t).length > 0, { message: 'texts must contain at least one language entry' })\n .describe('Verbatim statement text per BCP-47 language key, e.g. {\"vi\": \"Yêu cầu cần đạt...\"}. NEVER paraphrase into these fields'),\n classifications: z.array(ClassificationSchema).optional().default([]).describe('Optional taxonomy axes from the source framework (strands, dimensions, themes...)'),\n bloomHint: BloomHintSchema.optional().describe('Optional Bloom dual-axis hint — a HINT for generation, never a binding claim about the source'),\n keywords: z.array(z.string()).optional().default([]).describe('Retrieval keywords (topic terms). Used by standards retrieval AND by crosswalk theme matching — keep them dense'),\n sourceRef: z.string().optional().describe('Precise citation within the source, e.g. \"Trang 24, Môn Tin học lớp 6\"'),\n provenance: RecordProvenanceSchema,\n});\n\n// ─── Mapping bridge (pack → Ontora interlingua) ─────────────────────────────\n\nexport const MappingKindSchema = z.enum(['covers', 'partial', 'extends']).describe('covers = the statement is fully taught when the concept is covered (ONLY \"covers\" counts toward compliance coverage); partial = overlaps partially; extends = statement goes beyond the concept');\n\nexport const FrameworkMappingSchema = z.object({\n statementId: z.string().describe('Must reference a statement id in this pack'),\n /** Namespaced target. Grammar: <namespace>:<ID>. e.g. \"ontora:WHILE_LOOP\", \"ontora:PROBLEM_DECOMPOSITION\". Resolved against the target registry at intake — unknown targets FAIL validation. */\n targetRef: z.string().refine((v) => /^[a-z][a-z0-9]*:[A-Za-z0-9][A-Za-z0-9._-]*$/.test(v), 'targetRef must be \"<namespace>:<ID>\", e.g. \"ontora:FOR_LOOP\"'),\n kind: MappingKindSchema,\n confidence: z.number().min(0).max(1).describe('0-1 confidence of this mapping'),\n provenance: RecordProvenanceSchema,\n});\n\n// ─── Root ────────────────────────────────────────────────────────────────────\n\nexport const FrameworkPackSchema = z.object({\n manifest: FrameworkPackManifestSchema,\n statements: z.array(FrameworkStatementSchema).min(1).describe('Atomized statements of the framework'),\n mappings: z.array(FrameworkMappingSchema).optional().default([]).describe('Optional bridges to the Ontora knowledge tree (statement-only packs are fully functional)'),\n});\n\nexport type FrameworkPack = z.infer<typeof FrameworkPackSchema>;\nexport type FrameworkPackManifest = z.infer<typeof FrameworkPackManifestSchema>;\nexport type FrameworkStatement = z.infer<typeof FrameworkStatementSchema>;\nexport type FrameworkMapping = z.infer<typeof FrameworkMappingSchema>;\nexport type MappingKind = z.infer<typeof MappingKindSchema>;\nexport type RecordProvenance = z.infer<typeof RecordProvenanceSchema>;\n\n// ─── Pack lint (beyond field-level Zod checks) ───────────────────────────────\n\nexport interface PackLintIssue {\n severity: 'ERROR' | 'WARNING';\n code: string;\n message: string;\n /** statement id or manifest path the issue refers to */\n ref?: string;\n}\n\n/** Minimum token-overlap ratio for the fuzzy duplicate warning. */\nconst DUP_OVERLAP_RATIO = 0.8;\n\n/**\n * Deterministic structural lint over an already schema-valid pack.\n * Pure function: no I/O, no LLM. Mirrors the ontora validator philosophy —\n * assembly/validation is code, research/judgment is model.\n */\nexport function lintFrameworkPack(pack: FrameworkPack): PackLintIssue[] {\n const issues: PackLintIssue[] = [];\n const statements = pack.statements;\n const ids = new Set<string>();\n\n for (const s of statements) {\n // L1 duplicate ids\n if (ids.has(s.id)) {\n issues.push({ severity: 'ERROR', code: 'DUP_ID', message: `Duplicate statement id \"${s.id}\"`, ref: s.id });\n }\n ids.add(s.id);\n }\n\n for (const s of statements) {\n // L2 parent existence\n if (s.parentId && !ids.has(s.parentId)) {\n issues.push({ severity: 'ERROR', code: 'PARENT_MISSING', message: `parentId \"${s.parentId}\" does not exist in this pack`, ref: s.id });\n }\n // L3 empty-ish text\n for (const [lang, text] of Object.entries(s.texts)) {\n if (!text || text.trim().length < 8) {\n issues.push({ severity: 'ERROR', code: 'TEXT_TOO_SHORT', message: `\"${lang}\" text is empty or shorter than 8 characters`, ref: s.id });\n }\n }\n // L4 grade band sanity: empty band inside manifest range is fine, but warn outside manifest range\n const [min, max] = s.gradeBand;\n const [gMin, gMax] = pack.manifest.gradeModel.range;\n if (min < gMin || max > gMax) {\n issues.push({ severity: 'WARNING', code: 'BAND_OUT_OF_RANGE', message: `gradeBand [${min},${max}] falls outside manifest range [${gMin},${gMax}]`, ref: s.id });\n }\n // L5 ai_draft without reviewer\n if (s.provenance.method === 'ai_draft' && !s.provenance.reviewedBy) {\n issues.push({ severity: 'ERROR', code: 'AI_DRAFT_UNREVIEWED', message: 'ai_draft record has no reviewedBy — human review required before activation', ref: s.id });\n }\n // L6 keywords recommended\n if (!s.keywords || s.keywords.length === 0) {\n issues.push({ severity: 'WARNING', code: 'NO_KEYWORDS', message: 'No keywords — statement will be hard to retrieve and to crosswalk', ref: s.id });\n }\n }\n\n // L7 fuzzy duplicate texts (same language)\n const seen = new Map<string, string>();\n for (const s of statements) {\n const primaryLang = pack.manifest.languages[0];\n const text = s.texts[primaryLang];\n if (!text) continue;\n const norm = text.toLowerCase().replace(/[^\\p{L}\\p{N}\\s]/gu, ' ').split(/\\s+/).filter((w) => w.length > 2).sort().join(' ');\n if (!norm) continue;\n const prev = seen.get(norm);\n if (prev !== undefined) {\n issues.push({ severity: 'WARNING', code: 'DUP_TEXT_EXACT', message: `Text is token-identical to statement \"${prev}\"`, ref: s.id });\n } else {\n // token-overlap fuzzy pass (O(n^2) avoided via sorted-token key bucketing)\n for (const [otherNorm, otherId] of seen.entries()) {\n const a = new Set(norm.split(' '));\n const b = new Set(otherNorm.split(' '));\n let inter = 0;\n for (const w of a) if (b.has(w)) inter++;\n const ratio = inter / Math.max(a.size, b.size);\n if (ratio >= DUP_OVERLAP_RATIO) {\n issues.push({ severity: 'WARNING', code: 'DUP_TEXT_FUZZY', message: `Text ~${Math.round(ratio * 100)}% overlapping with statement \"${otherId}\"`, ref: s.id });\n break;\n }\n }\n seen.set(norm, s.id);\n }\n }\n\n // L8 mapping integrity\n for (const m of pack.mappings ?? []) {\n if (!ids.has(m.statementId)) {\n issues.push({ severity: 'ERROR', code: 'MAP_STATEMENT_MISSING', message: `mapping references unknown statementId \"${m.statementId}\"`, ref: m.statementId });\n }\n if (m.provenance.method === 'ai_draft' && !m.provenance.reviewedBy) {\n issues.push({ severity: 'ERROR', code: 'AI_DRAFT_UNREVIEWED', message: `mapping to ${m.targetRef} is ai_draft without reviewedBy`, ref: m.statementId });\n }\n if (m.kind === 'covers' && m.confidence < 0.5) {\n issues.push({ severity: 'WARNING', code: 'COVERS_LOW_CONFIDENCE', message: `kind=\"covers\" with confidence ${m.confidence} < 0.5 — consider \"partial\"`, ref: m.statementId });\n }\n }\n\n return issues;\n}\n\nexport interface PackValidationResult {\n valid: boolean;\n schemaErrors: string[];\n lint: PackLintIssue[];\n stats: {\n statements: number;\n mappings: number;\n coveredStatements: number;\n statementOnlyStatements: number;\n gradeRange: [number, number];\n };\n}\n\n/**\n * Full validation: Zod schema → deterministic lint.\n * Does NOT resolve ontora targets (network/DB concern, layered separately).\n */\nexport function validateFrameworkPack(input: unknown): PackValidationResult {\n const parsed = FrameworkPackSchema.safeParse(input);\n if (!parsed.success) {\n return {\n valid: false,\n schemaErrors: parsed.error.issues.map((i) => `${i.path.join('.') || '(root)'}: ${i.message}`),\n lint: [],\n stats: { statements: 0, mappings: 0, coveredStatements: 0, statementOnlyStatements: 0, gradeRange: [0, 0] },\n };\n }\n const pack = parsed.data;\n const lint = lintFrameworkPack(pack);\n const covered = new Set((pack.mappings ?? []).map((m) => m.statementId));\n const bands = pack.statements.map((s) => s.gradeBand);\n return {\n valid: lint.every((i) => i.severity !== 'ERROR'),\n schemaErrors: [],\n lint,\n stats: {\n statements: pack.statements.length,\n mappings: pack.mappings?.length ?? 0,\n coveredStatements: covered.size,\n statementOnlyStatements: pack.statements.length - covered.size,\n gradeRange: [Math.min(...bands.flat()), Math.max(...bands.flat())],\n },\n };\n}\n","import type { FrameworkPack, FrameworkStatement } from './frameworkPackSchema';\n\n/**\n * Standards Context Injector — Grounding layer (tầng 1 của cơ chế bám chuẩn).\n *\n * Selects the standard statements RELEVANT to a lesson (by grade band overlap +\n * keyword/concept match) and renders them as a prompt context block containing\n * VERBATIM canonical text. The model must SEE the real standard text — prompt\n * labels like \"operating under CSTA\" are exactly the anti-pattern this replaces.\n *\n * Pure function: pack data in, markdown block out. No I/O, no LLM.\n */\n\nexport interface StandardsSelectionInput {\n /** Packs adopted by the org / course (already validated + activated). */\n packs: FrameworkPack[];\n /** Lesson grade level or band, canonical numeric (single grade or [min,max]). */\n gradeBand: [number, number] | number;\n /** Lesson topic text: title + concept names + keywords. Matched against statement keywords + texts. */\n topicText: string;\n /** Optional explicit ontora concept codes for the lesson (concept_code from MilestoneInput). */\n conceptCodes?: string[];\n /** Hard cap on injected statements to protect the context budget. */\n maxStatements?: number;\n}\n\nexport interface SelectedStatement {\n packId: string;\n statement: FrameworkStatement;\n score: number;\n matchedBy: Array<'band' | 'keyword' | 'concept' | 'text'>;\n}\n\nconst DEFAULT_MAX_STATEMENTS = 20;\n\nfunction normalizeBand(band: [number, number] | number): [number, number] {\n return Array.isArray(band) ? band : [band, band];\n}\n\nfunction tokenize(text: string): Set<string> {\n return new Set(\n text\n .toLowerCase()\n .replace(/[^\\p{L}\\p{N}\\s]/gu, ' ')\n .split(/\\s+/)\n .filter((w) => w.length > 2)\n );\n}\n\n/**\n * Rank + select statements for a lesson.\n * Scoring: band overlap is a GATE (statements outside the grade are dropped),\n * keyword/concept/text overlap is the ranking signal.\n */\nexport function selectStatementsForLesson(input: StandardsSelectionInput): SelectedStatement[] {\n const max = input.maxStatements ?? DEFAULT_MAX_STATEMENTS;\n const lessonBand = normalizeBand(input.gradeBand);\n const lessonTokens = tokenize(input.topicText);\n const conceptSet = new Set((input.conceptCodes ?? []).map((c) => c.toUpperCase().trim()).filter(Boolean));\n\n const candidates: SelectedStatement[] = [];\n\n for (const pack of input.packs) {\n for (const statement of pack.statements) {\n // Band gate: must overlap the lesson band\n const [sMin, sMax] = statement.gradeBand;\n const overlaps = Math.max(sMin, lessonBand[0]) <= Math.min(sMax, lessonBand[1]);\n if (!overlaps) continue;\n\n const matchedBy: SelectedStatement['matchedBy'] = ['band'];\n let score = 1;\n\n // Keyword match (primary signal — keywords are REQUIRED to be dense by pack lint)\n const kwTokens = new Set(statement.keywords.map((k) => k.toLowerCase()));\n let kwHits = 0;\n for (const t of lessonTokens) if (kwTokens.has(t)) kwHits++;\n if (kwHits > 0) {\n matchedBy.push('keyword');\n score += 2 + kwHits * 0.5;\n }\n\n // Concept code match (statement keyword equals an ontora concept code)\n if (conceptSet.size > 0) {\n for (const k of statement.keywords) {\n if (conceptSet.has(k.toUpperCase().replace(/\\s+/g, '_'))) {\n matchedBy.push('concept');\n score += 3;\n break;\n }\n }\n }\n\n // Raw text-token overlap (fallback signal)\n let textHits = 0;\n for (const lang of Object.keys(statement.texts)) {\n const st = tokenize(statement.texts[lang]);\n for (const t of lessonTokens) if (st.has(t)) textHits++;\n }\n if (textHits >= 2) {\n matchedBy.push('text');\n score += Math.min(2, textHits * 0.2);\n }\n\n if (score > 1) candidates.push({ packId: pack.manifest.id, statement, score, matchedBy });\n }\n }\n\n return candidates.sort((a, b) => b.score - a.score).slice(0, max);\n}\n\n/**\n * Render the STANDARDS CONTEXT prompt block (verbatim statements + binding rules).\n * Mirrors the shape of the proven CUMULATIVE CONTEXT block in lessonMasterPrompt.\n */\nexport function buildStandardsContextBlock(selected: SelectedStatement[], opts?: { language?: string }): string {\n if (selected.length === 0) return '';\n\n const lang = opts?.language;\n const rows = selected\n .map(({ packId, statement }) => {\n const text = (lang && statement.texts[lang]) || Object.values(statement.texts)[0];\n const band = statement.gradeBand[0] === statement.gradeBand[1] ? `L${statement.gradeBand[0]}` : `L${statement.gradeBand[0]}-L${statement.gradeBand[1]}`;\n return `- [${packId}:${statement.id} | ${band}] \"${text}\"`;\n })\n .join('\\n');\n\n return [\n '# STANDARDS CONTEXT (SOURCE OF TRUTH — VERBATIM STATEMENTS)',\n '',\n 'The statements below are COPIED VERBATIM from official/framework standard documents adopted for this course.',\n 'They are BINDING targets, not suggestions:',\n '- Every Learning Objective you write MUST be anchored to one or more statement IDs above via standardRefs.',\n '- You MUST use ONLY statement IDs from this list. NEVER invent, paraphrase IDs, or cite standards not present here.',\n '- The statement TEXT is the required destination: activities and assessments must demonstrably lead a learner to it.',\n '- The statement is the DESTINATION, not a script: you may extend beyond it, but you may not skip or contradict it.',\n '',\n '## Statement list',\n rows,\n ].join('\\n');\n}\n\n/**\n * One-call convenience: packs + lesson info → context block (empty string if nothing matches).\n */\nexport function buildStandardsContext(\n input: StandardsSelectionInput & { language?: string }\n): { block: string; selected: SelectedStatement[] } {\n const selected = selectStatementsForLesson(input);\n return { block: buildStandardsContextBlock(selected, { language: input.language }), selected };\n}\n","import type { FrameworkPack } from './frameworkPackSchema';\n\n/**\n * Standards Coverage Gate — Verification layer (tầng 3 của cơ chế bám chuẩn).\n *\n * Deterministic coverage matrix across the generation chain:\n * standard statement → learning objective → lesson activities → quiz questions\n *\n * Philosophy: \"bám chuẩn\" must be enforced by CODE, not by prompt goodwill.\n * A statement mapped with kind=\"covers\" that has no LO / no activity / no\n * assessment = a compliance hole, reported with an actionable repair hint.\n *\n * Pure function over already-generated artifacts. No LLM, no I/O.\n */\n\nexport interface CoverageGateInput {\n packs: FrameworkPack[];\n /** Learning objectives as generated (code + optional standardRefs anchoring). */\n objectives: Array<{\n code: string;\n standardRefs?: string[];\n conceptRefs?: string[];\n }>;\n /** activitySequence rows of the lesson (lo codes link activities to LOs). Optional: omitted when no structured activity-LO linkage is available. */\n activities?: Array<{ seq?: number; lo: string[] }>;\n /** Quiz questions; each links to assessment objectives → alignedLO. */\n quizQuestions: Array<{ alignedLO?: string; alignedAO?: string }>;\n /** Assessment objectives table (AO → alignedLO). Questions may reference AOs only. */\n assessmentObjectives?: Array<{ aoCode: string; alignedLO: string }>;\n}\n\nexport interface StatementCoverageRow {\n packId: string;\n statementId: string;\n statementText: string;\n status: 'COVERED' | 'PARTIAL' | 'UNCOVERED' | 'UNMAPPED';\n objectives: string[];\n hasActivity: boolean;\n hasAssessment: boolean;\n issues: string[];\n}\n\nexport interface CoverageGateReport {\n verdict: 'PASS' | 'WARN' | 'FAIL';\n coveragePct: number;\n rows: StatementCoverageRow[];\n summary: string;\n rawMarkdownReport: string;\n}\n\n/** statementRef formats accepted in standardRefs: \"1B-AP-10\" or \"csta-k12-2017:1B-AP-10\". */\nfunction resolveStatementRef(ref: string, packs: FrameworkPack[]): { pack: FrameworkPack; statementId: string } | null {\n const [head, ...rest] = ref.split(':');\n const candidatePacks = rest.length > 0 ? packs.filter((p) => p.manifest.id === head) : packs;\n const statementId = rest.length > 0 ? rest.join(':') : ref;\n for (const p of candidatePacks) {\n if (p.statements.some((s) => s.id === statementId)) return { pack: p, statementId };\n }\n return null;\n}\n\nexport function evaluateStandardsCoverage(input: CoverageGateInput): CoverageGateReport {\n const rows: StatementCoverageRow[] = [];\n\n // AO → LO resolution map\n const aoToLo = new Map<string, string>();\n for (const ao of input.assessmentObjectives ?? []) aoToLo.set(ao.aoCode, ao.alignedLO);\n\n // LO → covered statements (explicit anchors)\n const loToRefs = new Map<string, Set<string>>();\n for (const lo of input.objectives) {\n loToRefs.set(lo.code, new Set(lo.standardRefs ?? []));\n }\n\n // LOs actually taught (activities) and assessed (quiz, via direct alignedLO or AO table)\n const taughtLOs = new Set<string>();\n for (const act of input.activities ?? []) for (const lo of act.lo) taughtLOs.add(lo);\n const assessedLOs = new Set<string>();\n for (const q of input.quizQuestions) {\n if (q.alignedLO) assessedLOs.add(q.alignedLO);\n if (q.alignedAO) {\n const lo = aoToLo.get(q.alignedAO);\n if (lo) assessedLOs.add(lo);\n }\n }\n\n for (const pack of input.packs) {\n const mappingByStatement = new Map<string, string>();\n for (const m of pack.mappings ?? []) {\n // first mapping wins for kind resolution; \"covers\" beats \"partial\" beats \"extends\"\n const prev = mappingByStatement.get(m.statementId);\n if (!prev || (prev !== 'covers' && m.kind === 'covers') || (prev === 'extends' && m.kind !== 'extends')) {\n mappingByStatement.set(m.statementId, m.kind);\n }\n }\n\n for (const statement of pack.statements) {\n const refFull = `${pack.manifest.id}:${statement.id}`;\n const issues: string[] = [];\n\n // Objectives anchored to this statement\n const los = input.objectives\n .filter((lo) => (lo.standardRefs ?? []).some((r) => r === statement.id || r === refFull))\n .map((lo) => lo.code);\n\n const kind = mappingByStatement.get(statement.id);\n const hasMapping = kind !== undefined;\n const isComplianceRelevant = kind === 'covers';\n\n const hasActivity = los.some((lo) => taughtLOs.has(lo));\n const hasAssessment = los.some((lo) => assessedLOs.has(lo));\n\n let status: StatementCoverageRow['status'];\n if (!hasMapping) status = 'UNMAPPED';\n else if (!isComplianceRelevant) status = 'PARTIAL';\n else if (los.length > 0 && hasActivity && hasAssessment) status = 'COVERED';\n else status = 'UNCOVERED';\n\n if (status === 'UNCOVERED') {\n if (los.length === 0) issues.push('No learning objective anchors this statement (missing standardRefs).');\n else {\n if (!hasActivity) issues.push(`Anchored LO(s) ${los.join(', ')} have no activity in lesson flow.`);\n if (!hasAssessment) issues.push(`Anchored LO(s) ${los.join(', ')} are not measured by any quiz question.`);\n }\n }\n\n rows.push({\n packId: pack.manifest.id,\n statementId: statement.id,\n statementText: Object.values(statement.texts)[0] ?? '',\n status,\n objectives: los,\n hasActivity,\n hasAssessment,\n issues,\n });\n }\n }\n\n // Unresolvable refs (typo / hallucinated IDs) — reported as issues on no row\n for (const lo of input.objectives) {\n for (const r of lo.standardRefs ?? []) {\n if (!resolveStatementRef(r, input.packs)) {\n rows.push({\n packId: '(unresolved)',\n statementId: r,\n statementText: '',\n status: 'UNCOVERED',\n objectives: [lo.code],\n hasActivity: false,\n hasAssessment: false,\n issues: [`standardRef \"${r}\" does not exist in any adopted pack — likely a hallucinated or stale ID`],\n });\n }\n }\n }\n\n const complianceRows = rows.filter((r) => r.status !== 'UNMAPPED' && r.status !== 'PARTIAL');\n const covered = complianceRows.filter((r) => r.status === 'COVERED').length;\n const coveragePct = complianceRows.length === 0 ? 100 : Math.round((covered / complianceRows.length) * 100);\n const unresolvedCount = rows.filter((r) => r.packId === '(unresolved)').length;\n\n const verdict: CoverageGateReport['verdict'] =\n unresolvedCount > 0 || coveragePct < 60 ? 'FAIL' : coveragePct < 100 ? 'WARN' : 'PASS';\n\n const lines: string[] = [\n '# Standards Coverage Report',\n '',\n `- Verdict: **${verdict}**`,\n `- Compliance coverage: **${coveragePct}%** (${covered}/${complianceRows.length} \"covers\" statements fully taught + assessed)`,\n `- Unresolved standardRefs: ${unresolvedCount}`,\n '',\n '| Pack | Statement | Status | LOs | Activity | Assessment |',\n '|---|---|---|---|---|---|',\n ...rows.map(\n (r) =>\n `|${r.packId}|${r.statementId}|${r.status}|${r.objectives.join(', ') || '—'}|${r.hasActivity ? '✓' : '✗'}|${r.hasAssessment ? '✓' : '✗'}|`\n ),\n ];\n const issueLines = rows.filter((r) => r.issues.length > 0).flatMap((r) => r.issues.map((i) => `- [${r.packId}:${r.statementId}] ${i}`));\n if (issueLines.length > 0) lines.push('', '## Issues', ...issueLines);\n\n return {\n verdict,\n coveragePct,\n rows,\n summary: `Standards coverage ${coveragePct}% — verdict ${verdict}`,\n rawMarkdownReport: lines.join('\\n'),\n };\n}\n","import { createClient, type SupabaseClient } from '@supabase/supabase-js';\nimport {\n FrameworkPackSchema,\n type FrameworkPack,\n type FrameworkMapping,\n type FrameworkStatement,\n} from './frameworkPackSchema';\n\n/**\n * Standards Registry Adapter — Supabase-backed runtime plane for Framework Packs.\n *\n * Read path (generation): loadPacksForCourse() → FrameworkPack[] hydrated from\n * standards_frameworks + standards_statements + standards_mappings (+ overrides\n * applied with resolution order override > pack-embedded, 'retired' removes).\n * Write path (intake): importPack() persists a validated pack; adopt/deprecate\n * manage lifecycle. Write access uses a service-role client (intake runs\n * server-side); RLS governs client-side reads.\n */\n\nexport interface StandardsRegistryConfig {\n supabaseUrl?: string;\n supabaseServiceRoleKey?: string;\n supabaseAnonKey?: string;\n client?: SupabaseClient;\n}\n\nexport interface HydratedPack extends FrameworkPack {\n /** DB id of the standards_frameworks row */\n dbId: string;\n status: 'draft' | 'active' | 'deprecated';\n organizationCode: string | null;\n}\n\nexport interface ImportPackResult {\n frameworkDbId: string;\n statementsInserted: number;\n mappingsInserted: number;\n}\n\nexport class StandardsRegistryAdapter {\n private client: SupabaseClient;\n\n constructor(config: StandardsRegistryConfig = {}) {\n if (config.client) {\n this.client = config.client;\n return;\n }\n const url = config.supabaseUrl || process.env.NEXT_PUBLIC_SUPABASE_URL || process.env.SUPABASE_URL || '';\n const key =\n config.supabaseServiceRoleKey ||\n process.env.SUPABASE_SERVICE_ROLE_KEY ||\n config.supabaseAnonKey ||\n process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ||\n '';\n if (!url || !key) {\n throw new Error('StandardsRegistryAdapter: Supabase URL/key missing (pass client or env).');\n }\n this.client = createClient(url, key);\n }\n\n // ─── Intake (write path — service role) ───────────────────────────────────\n\n /** Persist a schema-validated pack as a new framework (status=draft). */\n async importPack(pack: FrameworkPack, opts?: { organizationCode?: string | null; createdBy?: string; originalFilePath?: string }): Promise<ImportPackResult> {\n const parsed = FrameworkPackSchema.safeParse(pack);\n if (!parsed.success) {\n throw new Error('importPack: pack failed schema validation: ' + parsed.error.issues.map((i) => i.path.join('.') + ': ' + i.message).join('; '));\n }\n const p = parsed.data;\n\n const { data: fw, error: fwErr } = await this.client\n .from('standards_frameworks')\n .insert({\n pack_id: p.manifest.id,\n content_version: p.manifest.contentVersion,\n name: p.manifest.name,\n spec_version: p.manifest.specVersion,\n subject: p.manifest.subject,\n languages: p.manifest.languages,\n grade_model: p.manifest.gradeModel,\n provenance: p.manifest.provenance,\n trust: p.manifest.trust,\n status: 'draft',\n organization_code: opts?.organizationCode ?? (p.manifest.trust === 'verified' ? null : p.manifest.provenance.importedBy?.replace(/^org:/, '') || null),\n original_file_path: opts?.originalFilePath ?? null,\n created_by: opts?.createdBy ?? null,\n })\n .select('id')\n .single();\n if (fwErr) throw new Error('importPack: framework insert failed: ' + fwErr.message);\n\n const frameworkId = fw.id as string;\n\n const statementRows = p.statements.map((s: FrameworkStatement) => ({\n framework_id: frameworkId,\n statement_id: s.id,\n parent_statement_id: s.parentId ?? null,\n grade_min: s.gradeBand[0],\n grade_max: s.gradeBand[1],\n texts: s.texts,\n classifications: s.classifications ?? [],\n bloom_hint: s.bloomHint ?? null,\n keywords: s.keywords ?? [],\n source_ref: s.sourceRef ?? null,\n provenance: s.provenance,\n }));\n\n const { error: stErr, count: stCount } = await this.client\n .from('standards_statements')\n .insert(statementRows, { count: 'exact' });\n if (stErr) throw new Error('importPack: statement insert failed: ' + stErr.message);\n\n let mappingCount = 0;\n if (p.mappings && p.mappings.length > 0) {\n const mappingRows = p.mappings.map((m: FrameworkMapping) => ({\n framework_id: frameworkId,\n statement_id: m.statementId,\n target_ref: m.targetRef,\n kind: m.kind,\n confidence: m.confidence,\n provenance: m.provenance,\n }));\n const { error: mpErr, count: mpCount } = await this.client\n .from('standards_mappings')\n .insert(mappingRows, { count: 'exact' });\n if (mpErr) throw new Error('importPack: mapping insert failed: ' + mpErr.message);\n mappingCount = mpCount ?? mappingRows.length;\n }\n\n return { frameworkDbId: frameworkId, statementsInserted: stCount ?? statementRows.length, mappingsInserted: mappingCount };\n }\n\n /** Activate a draft framework (immutable version is now live). */\n async activatePack(frameworkDbId: string): Promise<void> {\n const { error } = await this.client\n .from('standards_frameworks')\n .update({ status: 'active' })\n .eq('id', frameworkDbId)\n .eq('status', 'draft');\n if (error) throw new Error('activatePack failed: ' + error.message);\n }\n\n async deprecatePack(frameworkDbId: string): Promise<void> {\n const { error } = await this.client\n .from('standards_frameworks')\n .update({ status: 'deprecated' })\n .eq('id', frameworkDbId);\n if (error) throw new Error('deprecatePack failed: ' + error.message);\n }\n\n async adoptPack(frameworkDbId: string, organizationCode: string, adoptedBy?: string): Promise<void> {\n const { error } = await this.client.from('standards_org_adoptions').upsert(\n { framework_id: frameworkDbId, organization_code: organizationCode, adopted_by: adoptedBy ?? null },\n { onConflict: 'organization_code,framework_id' }\n );\n if (error) throw new Error('adoptPack failed: ' + error.message);\n }\n\n // ─── Runtime (read path — generation) ─────────────────────────────────────\n\n /**\n * Load all packs usable by an org: platform packs (verified, org IS NULL) +\n * org packs + org adoptions. Hydrated into the same FrameworkPack shape the\n * in-memory Phase-1 components consume (injector / coverage gate / judge).\n */\n async loadPacksForOrg(organizationCode: string | null): Promise<HydratedPack[]> {\n // Visible frameworks = platform (org NULL, active) OR org-owned OR adopted\n let query = this.client\n .from('standards_frameworks')\n .select('*, standards_org_adoptions(organization_code)')\n .eq('status', 'active');\n const { data: frameworks, error } = await query;\n if (error) throw new Error('loadPacksForOrg: ' + error.message);\n\n const visible = (frameworks ?? []).filter((f: any) => {\n const own = f.organization_code && organizationCode && f.organization_code === organizationCode;\n const global = !f.organization_code;\n const adopted = organizationCode && (f.standards_org_adoptions ?? []).some((a: any) => a.organization_code === organizationCode);\n return global || own || adopted;\n });\n\n if (visible.length === 0) return [];\n\n const ids = visible.map((f: any) => f.id);\n const [{ data: statements, error: stErr }, { data: mappings, error: mpErr }, { data: overrides, error: ovErr }] = await Promise.all([\n this.client.from('standards_statements').select('*').in('framework_id', ids),\n this.client.from('standards_mappings').select('*').in('framework_id', ids),\n this.client.from('standards_mapping_overrides').select('*').in('framework_id', ids),\n ]);\n if (stErr) throw new Error('loadPacksForOrg statements: ' + stErr.message);\n\n const overridesByFw = new Map<string, any[]>();\n for (const o of overrides ?? []) {\n const list = overridesByFw.get(o.framework_id) ?? [];\n list.push(o);\n overridesByFw.set(o.framework_id, list);\n }\n\n return visible.map((f: any) => {\n const stmts = (statements ?? [])\n .filter((s: any) => s.framework_id === f.id)\n .map((s: any) => ({\n id: s.statement_id,\n parentId: s.parent_statement_id ?? undefined,\n gradeBand: [s.grade_min, s.grade_max] as [number, number],\n texts: s.texts,\n classifications: s.classifications ?? [],\n bloomHint: s.bloom_hint ?? undefined,\n keywords: s.keywords ?? [],\n sourceRef: s.source_ref ?? undefined,\n provenance: s.provenance ?? { method: 'imported' },\n }));\n\n // Resolution order: override (unless retired) > pack-embedded\n const ov = overridesByFw.get(f.id) ?? [];\n const retired = new Set(ov.filter((o: any) => o.kind === 'retired').map((o: any) => o.statement_id + '|' + o.target_ref));\n const embedded: FrameworkMapping[] = (mappings ?? [])\n .filter((m: any) => m.framework_id === f.id)\n .map((m: any) => ({\n statementId: m.statement_id,\n targetRef: m.target_ref,\n kind: m.kind,\n confidence: Number(m.confidence),\n provenance: m.provenance ?? { method: 'imported' },\n }));\n const overlay: FrameworkMapping[] = ov\n .filter((o: any) => o.kind !== 'retired')\n .map((o: any) => ({\n statementId: o.statement_id,\n targetRef: o.target_ref,\n kind: o.kind,\n confidence: Number(o.confidence),\n provenance: { method: 'human', reviewedBy: o.created_by ?? 'overlay', note: o.note ?? undefined },\n }));\n\n const bridge = new Map<string, FrameworkMapping>();\n for (const m of embedded) bridge.set(m.statementId + '|' + m.targetRef, m);\n for (const m of overlay) bridge.set(m.statementId + '|' + m.targetRef, m);\n const finalMappings = [...bridge.values()].filter((m) => !retired.has(m.statementId + '|' + m.targetRef));\n\n const hydrated = FrameworkPackSchema.safeParse({\n manifest: {\n id: f.pack_id,\n name: f.name,\n specVersion: f.spec_version || '1.0',\n contentVersion: f.content_version,\n subject: f.subject,\n languages: f.languages,\n gradeModel: f.grade_model,\n provenance: f.provenance,\n trust: f.trust,\n },\n statements: stmts,\n mappings: finalMappings,\n });\n if (!hydrated.success) {\n throw new Error('loadPacksForOrg: hydrated pack \"' + f.pack_id + '\" failed schema: ' + hydrated.error.issues[0]?.message);\n }\n\n return { ...hydrated.data, dbId: f.id, status: f.status, organizationCode: f.organization_code ?? null } as HydratedPack;\n });\n }\n}\n","import type { FrameworkPack } from '../standards/frameworkPackSchema';\n\n/**\n * Deterministic STANDARD_STACK.md generator (Phase 2).\n *\n * Replaces the old anti-pattern where @researcher was asked to \"cite authentic\n * standards\" from memory (hallucinated IDs). The SOT document is now RENDERED\n * from the Standards Registry packs adopted for the course — verbatim statements,\n * canonical IDs, zero LLM involvement.\n */\nexport interface StandardStackOptions {\n projectId: string;\n packs: FrameworkPack[];\n /** Overall course grade band (canonical numeric) for coverage scoping. */\n courseGradeBand?: [number, number];\n language?: string;\n}\n\nfunction bandLabel(band: readonly number[]): string {\n return band[0] === band[1] ? `L${band[0]}` : `L${band[0]}–L${band[1]}`;\n}\n\nexport function buildStandardStackMarkdown(opts: StandardStackOptions): string {\n const { projectId, packs, courseGradeBand, language } = opts;\n const lines: string[] = [];\n\n lines.push('---');\n lines.push(`id: \"${projectId.toUpperCase()}-STANDARD-STACK\"`);\n lines.push(`title: \"Standard Stack: ${projectId}\"`);\n lines.push('type: \"STANDARD_STACK\"');\n lines.push('phase: \"P1\"');\n lines.push('version: \"v2.0-deterministic\"');\n lines.push(`generatedAt: \"${new Date().toISOString()}\"`);\n lines.push('source: \"Standards Registry (deterministic render — not LLM-generated)\"');\n lines.push('---');\n lines.push('');\n lines.push('# STANDARD STACK — Hệ tiêu chuẩn tham chiếu');\n lines.push('');\n\n if (packs.length === 0) {\n lines.push('> ⚠️ No Framework Pack adopted for this course. Generation will run WITHOUT standards grounding');\n lines.push('> (no statement anchoring, no Standards Alignment judge dimension, no coverage gate).');\n lines.push('> Import a pack via the Standards Registry before generating for standards-bound courses.');\n return lines.join('\\n');\n }\n\n for (const pack of packs) {\n const m = pack.manifest;\n lines.push(`## ${m.name}`);\n lines.push('');\n lines.push(`- **Pack ID:** \\`${m.id}\\` (content ${m.contentVersion}, contract v${m.specVersion})`);\n lines.push(`- **Trust:** ${m.trust} — ${m.trust === 'verified' ? 'platform-curated' : 'org-imported'}`);\n lines.push(`- **Nguồn:** ${m.provenance.sourceRef}${m.provenance.sourceUrl ? ' (' + m.provenance.sourceUrl + ')' : ''}`);\n lines.push(`- **License:** ${m.provenance.license}`);\n lines.push(`- **Grade range (manifest):** ${bandLabel(m.gradeModel.range)}`);\n lines.push('');\n lines.push('### Statements (verbatim — binding targets)');\n lines.push('');\n lines.push('| ID | Band | Text (verbatim) | Keywords |');\n lines.push('|---|---|---|---|');\n\n const statements = courseGradeBand\n ? pack.statements.filter((s) => Math.max(s.gradeBand[0], courseGradeBand[0]) <= Math.min(s.gradeBand[1], courseGradeBand[1]))\n : pack.statements;\n\n for (const s of statements) {\n const text = (language && s.texts[language]) || Object.values(s.texts)[0];\n const mapped = (pack.mappings ?? []).filter((mp) => mp.statementId === s.id);\n const mapNote = mapped.length > 0 ? ` → ${mapped.map((mp) => mp.targetRef + ' (' + mp.kind + ')').join(', ')}` : '';\n lines.push(`| \\`${s.id}\\` | ${bandLabel(s.gradeBand)} | ${text.replace(/\\|/g, '\\\\|')} | ${(s.keywords || []).join(', ')}${mapNote ? ' |' + mapNote : ' |'}`);\n }\n lines.push('');\n }\n\n lines.push('---');\n lines.push('');\n lines.push('*Document rendered deterministically from the Standards Registry. Statement texts are COPIED VERBATIM from the cited sources and are binding for generation, judging, and coverage reporting.*');\n return lines.join('\\n');\n}\n","{\n \"manifest\": {\n \"id\": \"csta-k12-2017\",\n \"name\": \"CSTA K-12 Computer Science Standards (2017)\",\n \"specVersion\": \"1.0\",\n \"contentVersion\": \"2017.1\",\n \"subject\": \"computing\",\n \"languages\": [\n \"en\"\n ],\n \"gradeModel\": {\n \"type\": \"grades\",\n \"range\": [\n 3,\n 12\n ]\n },\n \"provenance\": {\n \"sourceRef\": \"CSTA K-12 Computer Science Standards, Revised 2017 - csteachers.org\",\n \"sourceUrl\": \"https://www.csteachers.org/page/standards\",\n \"license\": \"CC BY-NC-SA 4.0 (cited verbatim for alignment use)\",\n \"importedBy\": \"platform\",\n \"importedAt\": \"2026-08-29T00:00:00.000Z\"\n },\n \"trust\": \"verified\"\n },\n \"statements\": [\n {\n \"id\": \"1B-AP-08\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Demonstrate that programs can be combined with other programs to create new solutions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"combine\",\n \"programs\",\n \"composition\",\n \"reuse\",\n \"modules\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-AP-10\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Create programs that include sequences, events, loops, and conditionals.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\",\n \"knowledge\": \"PROCEDURAL\"\n },\n \"keywords\": [\n \"sequence\",\n \"events\",\n \"loops\",\n \"conditionals\",\n \"control structures\",\n \"for\",\n \"while\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-AP-11\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"decomposition\",\n \"subproblems\",\n \"problem breakdown\",\n \"algorithm\",\n \"divide\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-AP-12\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Modify, remix, or include portions of other programs in one's own work to develop something new or add more advanced features.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"remix\",\n \"modify\",\n \"iterate\",\n \"extend programs\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-AP-15\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Test and debug (identify and fix errors) a program or algorithm to ensure it runs as intended.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"test\",\n \"debug\",\n \"errors\",\n \"troubleshooting\",\n \"fix\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-IC-21\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use public domain or creative commons media, and refrain from copying or using material created by others without permission.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Impacts of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"copyright\",\n \"creative commons\",\n \"public domain\",\n \"digital citizenship\",\n \"license\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Impacts of Computing\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n }\n ],\n \"mappings\": [\n {\n \"statementId\": \"1B-AP-10\",\n \"targetRef\": \"ontora:FOR_LOOP\",\n \"kind\": \"covers\",\n \"confidence\": 0.85,\n \"provenance\": {\n \"method\": \"human\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n },\n {\n \"statementId\": \"1B-AP-10\",\n \"targetRef\": \"ontora:WHILE_LOOP\",\n \"kind\": \"covers\",\n \"confidence\": 0.85,\n \"provenance\": {\n \"method\": \"human\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n },\n {\n \"statementId\": \"1B-AP-11\",\n \"targetRef\": \"ontora:PROBLEM_DECOMPOSITION\",\n \"kind\": \"covers\",\n \"confidence\": 0.95,\n \"provenance\": {\n \"method\": \"human\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n },\n {\n \"statementId\": \"1B-AP-08\",\n \"targetRef\": \"ontora:EVENT_BASED_PROGRAMMING\",\n \"kind\": \"partial\",\n \"confidence\": 0.7,\n \"provenance\": {\n \"method\": \"ai_draft\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n },\n {\n \"statementId\": \"1B-AP-15\",\n \"targetRef\": \"ontora:TROUBLESHOOTING_STEPS\",\n \"kind\": \"covers\",\n \"confidence\": 0.9,\n \"provenance\": {\n \"method\": \"ai_draft\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n }\n ]\n}\n","import { FrameworkPackSchema, type FrameworkPack } from './frameworkPackSchema';\n\nimport csta2017 from './data/csta-k12-2017.json';\n\n/**\n * Bundled Standards Packs — dữ liệu chuẩn kèm sẵn trong kit (user chọn trong Composer\n * Project Settings → Gates → Standards Packs; Composer truyền standardsPackIds xuống).\n * Pack mới: thêm file JSON validate theo FrameworkPackSchema vào src/standards/data/ rồi đăng ký aquí.\n */\nconst BUNDLED_PACK_RECORDS: Record<string, unknown> = {\n 'csta-k12-2017': csta2017,\n};\n\n/** Pack ids mà kit đóng gói sẵn (để UI settings hiển thị đúng danh sách khả dụng). */\nexport const BUNDLED_STANDARDS_PACK_IDS: string[] = Object.keys(BUNDLED_PACK_RECORDS).sort();\n\nconst parsedPackCache = new Map<string, FrameworkPack>();\n\n/**\n * Resolve danh sách pack id → FrameworkPack[] đã validate. Id không biết được bỏ qua (log warn),\n * config sai không bao giờ làm pipeline chết.\n */\nexport function resolveStandardsPacks(packIds: string[] | undefined | null): FrameworkPack[] {\n if (!packIds || packIds.length === 0) return [];\n const packs: FrameworkPack[] = [];\n for (const id of packIds) {\n if (parsedPackCache.has(id)) {\n packs.push(parsedPackCache.get(id) as FrameworkPack);\n continue;\n }\n const raw = BUNDLED_PACK_RECORDS[id];\n if (!raw) {\n console.warn(`[standards] pack '${id}' không tồn tại trong kit — bỏ qua.`);\n continue;\n }\n const parsed = FrameworkPackSchema.safeParse(raw);\n if (!parsed.success) {\n console.warn(`[standards] pack '${id}' fail schema — bỏ qua:`, parsed.error.issues[0]?.message);\n continue;\n }\n parsedPackCache.set(id, parsed.data);\n packs.push(parsed.data);\n }\n return packs;\n}"]}
1
+ {"version":3,"sources":["../../src/standards/frameworkPackSchema.ts","../../src/standards/standardsContextInjector.ts","../../src/standards/standardsCoverageGate.ts","../../src/standards/standardsRegistryAdapter.ts","../../src/standards/standardStackGenerator.ts","../../src/standards/data/csta-pk12-2026.json","../../src/standards/data/csta-k12-2017.json","../../src/standards/data/acm-ieee-cs2023.json","../../src/standards/bundledPacks.ts"],"names":["z","createClient"],"mappings":"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","file":"index.cjs","sourcesContent":["import { z } from 'zod';\n\n/**\n * Framework Pack Schema v1.0 — Standards Registry interchange contract.\n *\n * A Framework Pack is a self-contained, schema-validated data bundle describing\n * ONE educational standard/framework (CSTA K-12, NGSS, GDPT 2018, an org's\n * internal standard, ...) in the lowest common denominator that virtually every\n * framework can map onto: a flat list of atomized statements + optional\n * classifications + optional mappings to the Ontora knowledge tree.\n *\n * Design invariants (see docs/ideas/2026-08-29-standards-registry-framework-pack.md):\n * - I1 Pack is DATA, never code. Importing a pack NEVER mutates the Ontora\n * Master Tree — mappings are reference bridges, resolved (not written).\n * - I2 Canonical statement text (verbatim) is immutable ground truth. Derived\n * fields (translations, keywords, bloom hints) carry their own provenance.\n * - I3 IDs are stable forever: keep the official source ID when present, else\n * mint once from content identity (never from row position).\n * - I4 gradeBand is canonical numeric (gradeModel normalizes grades/ages/bands).\n * - I5 Mappings use namespaced targets (ontora:CODE, csta:1B-AP-10, ...) and are\n * OPTIONAL — a pack with zero mappings still works (statement-only mode).\n * - I6 Everything is versioned: specVersion (this contract) vs contentVersion\n * (the framework's own content). Published content versions are immutable.\n */\n\n// ─── Shared primitives ───────────────────────────────────────────────────────\n\n/** Two-axis Bloom hint (Anderson & Krathwohl). Matches Ontora's dual-axis usage. */\nexport const BloomHintSchema = z.object({\n process: z\n .enum(['Remember', 'Understand', 'Apply', 'Analyze', 'Evaluate', 'Create'])\n .describe('Cognitive process axis'),\n knowledge: z\n .enum(['FACTUAL', 'CONCEPTUAL', 'PROCEDURAL', 'METACOGNITIVE'])\n .optional()\n .describe('Knowledge dimension axis (optional — most source standards do not tag it)'),\n});\n\n/** How a record entered the pack — drives trust & review requirements. */\nexport const RecordProvenanceSchema = z.object({\n method: z\n .enum(['source_official', 'ai_draft', 'minted_from_content', 'human', 'crosswalk', 'imported'])\n .describe('source_official = copied from an authoritative machine-readable source; ai_draft = LLM-extracted, REQUIRES human review before activation; minted_from_content = ID synthesized because source has none; crosswalk = derived by the curriculum-crosswalk skill'),\n reviewedBy: z.string().optional().describe('Person/agent that approved this record (required for ai_draft records before activation)'),\n reviewedAt: z.string().optional().describe('ISO-8601 timestamp of review'),\n note: z.string().optional().describe('Free-form provenance note'),\n});\n\n/** Numeric grade band, canonical. [6, 6] = single grade 6; [6, 8] = band. */\nexport const GradeBandSchema = z\n .array(z.number().int().min(-1).max(30), { message: 'gradeBand must be [minGrade, maxGrade] integers' })\n .length(2)\n .refine(([min, max]) => min <= max, { message: 'gradeBand min must be <= max' })\n .describe('Canonical numeric grade band. -1 = kindergarten/pre-primary. Framework-specific models (VN grades, US bands, ages) normalize into this scale via manifest.gradeModel');\n\n/** Optional free-form classification axes (strand, NGSS dimension, \"Chủ đề\", ...). */\nexport const ClassificationSchema = z.object({\n axis: z.string().describe('Axis label, e.g. \"strand\", \"dimension\", \"Chủ đề\"'),\n value: z.string().describe('Value on that axis, e.g. \"AP\", \"Disciplinary Core Idea\", \"Thuật toán\"'),\n});\n\n// ─── Manifest ────────────────────────────────────────────────────────────────\n\nexport const FrameworkPackManifestSchema = z.object({\n /** Immutable pack identifier. Never reused, never renamed. */\n id: z\n .string()\n .min(3)\n .regex(/^[a-z0-9][a-z0-9._-]*$/, 'pack id must be kebab/lowercase-safe (a-z 0-9 . _ -)')\n .describe('Immutable pack identifier, e.g. \"csta-k12-2017\", \"gdpt-2018-tin-hoc\", \"abc-tin-hoc\"'),\n name: z.string().min(1).describe('Human-readable framework name'),\n specVersion: z.literal('1.0').describe('Version of THIS pack contract (not the content)'),\n contentVersion: z\n .string()\n .min(1)\n .describe('Content version of the framework inside this pack. Bump on any content change; published versions are immutable'),\n subject: z.string().describe('Primary subject domain, e.g. \"computing\", \"science\", \"mathematics\"'),\n languages: z.array(z.string().min(2)).min(1).describe('BCP-47 language codes present in statement texts, e.g. [\"vi\"], [\"en\",\"vi\"]'),\n gradeModel: z.object({\n type: z.enum(['grades', 'ages', 'bands']).describe('grades = school grades (canonical numbers); ages = years old; bands = named developmental bands'),\n range: GradeBandSchema.describe('Overall grade range covered by the framework'),\n /** Optional normalization table when type != \"grades\" (e.g. band \"6-8\" -> [6,8]). */\n normalization: z\n .array(\n z.object({\n from: z.string().describe('Source label, e.g. \"level 6-8\" or \"11-13 years\"'),\n to: GradeBandSchema,\n })\n )\n .optional()\n .describe('Explicit label -> numeric band conversion table. Required when type != \"grades\"'),\n }),\n provenance: z.object({\n sourceRef: z.string().describe('Citation of the official source, e.g. \"Thông tư 32/2018/TT-BGDĐT\" or a URL'),\n sourceUrl: z.string().optional().describe('Canonical URL of the source document or live registry'),\n license: z.string().describe('License / usage rights of the source text'),\n importedBy: z.string().describe('Who produced this pack, e.g. \"platform\" or \"org:abc\"'),\n importedAt: z.string().describe('ISO-8601 timestamp'),\n originalFileHash: z.string().optional().describe('SHA-256 of the original uploaded file, for source provenance'),\n }),\n trust: z.enum(['verified', 'org']).default('org').describe('verified = platform-curated; org = self-served by an org. Generation accepts both; compliance reporting counts verified only'),\n});\n\n// ─── Statement ───────────────────────────────────────────────────────────────\n\nexport const FrameworkStatementSchema = z.object({\n /** Canonical, forever-stable statement ID (see invariant I3). */\n id: z\n .string()\n .min(2)\n .regex(/^[A-Za-z0-9][A-Za-z0-9._:-]*$/, 'statement id must not contain whitespace or separators beyond . _ : -')\n .describe('Statement ID. Official source ID when present (e.g. \"1B-AP-10\"); otherwise minted once from content identity. Namespaced at query time by the pack id, never stored with prefix duplication'),\n /** Optional hierarchical parent within the SAME pack (GDPT competence → requirement, CSTA strand → statement, ...). */\n parentId: z.string().optional().describe('Parent statement id within this pack, when the source framework is hierarchical'),\n gradeBand: GradeBandSchema,\n /** Verbatim canonical text per language. The FIRST / primary language text is judge ground truth (invariant I2). */\n texts: z\n .record(z.string().min(2), z.string().min(1))\n .refine((t) => Object.keys(t).length > 0, { message: 'texts must contain at least one language entry' })\n .describe('Verbatim statement text per BCP-47 language key, e.g. {\"vi\": \"Yêu cầu cần đạt...\"}. NEVER paraphrase into these fields'),\n classifications: z.array(ClassificationSchema).optional().default([]).describe('Optional taxonomy axes from the source framework (strands, dimensions, themes...)'),\n bloomHint: BloomHintSchema.optional().describe('Optional Bloom dual-axis hint — a HINT for generation, never a binding claim about the source'),\n keywords: z.array(z.string()).optional().default([]).describe('Retrieval keywords (topic terms). Used by standards retrieval AND by crosswalk theme matching — keep them dense'),\n sourceRef: z.string().optional().describe('Precise citation within the source, e.g. \"Trang 24, Môn Tin học lớp 6\"'),\n provenance: RecordProvenanceSchema,\n});\n\n// ─── Mapping bridge (pack → Ontora interlingua) ─────────────────────────────\n\nexport const MappingKindSchema = z.enum(['covers', 'partial', 'extends']).describe('covers = the statement is fully taught when the concept is covered (ONLY \"covers\" counts toward compliance coverage); partial = overlaps partially; extends = statement goes beyond the concept');\n\nexport const FrameworkMappingSchema = z.object({\n statementId: z.string().describe('Must reference a statement id in this pack'),\n /** Namespaced target. Grammar: <namespace>:<ID>. e.g. \"ontora:WHILE_LOOP\", \"ontora:PROBLEM_DECOMPOSITION\". Resolved against the target registry at intake — unknown targets FAIL validation. */\n targetRef: z.string().refine((v) => /^[a-z][a-z0-9]*:[A-Za-z0-9][A-Za-z0-9._-]*$/.test(v), 'targetRef must be \"<namespace>:<ID>\", e.g. \"ontora:FOR_LOOP\"'),\n kind: MappingKindSchema,\n confidence: z.number().min(0).max(1).describe('0-1 confidence of this mapping'),\n provenance: RecordProvenanceSchema,\n});\n\n// ─── Root ────────────────────────────────────────────────────────────────────\n\nexport const FrameworkPackSchema = z.object({\n manifest: FrameworkPackManifestSchema,\n statements: z.array(FrameworkStatementSchema).min(1).describe('Atomized statements of the framework'),\n mappings: z.array(FrameworkMappingSchema).optional().default([]).describe('Optional bridges to the Ontora knowledge tree (statement-only packs are fully functional)'),\n});\n\nexport type FrameworkPack = z.infer<typeof FrameworkPackSchema>;\nexport type FrameworkPackManifest = z.infer<typeof FrameworkPackManifestSchema>;\nexport type FrameworkStatement = z.infer<typeof FrameworkStatementSchema>;\nexport type FrameworkMapping = z.infer<typeof FrameworkMappingSchema>;\nexport type MappingKind = z.infer<typeof MappingKindSchema>;\nexport type RecordProvenance = z.infer<typeof RecordProvenanceSchema>;\n\n// ─── Pack lint (beyond field-level Zod checks) ───────────────────────────────\n\nexport interface PackLintIssue {\n severity: 'ERROR' | 'WARNING';\n code: string;\n message: string;\n /** statement id or manifest path the issue refers to */\n ref?: string;\n}\n\n/** Minimum token-overlap ratio for the fuzzy duplicate warning. */\nconst DUP_OVERLAP_RATIO = 0.8;\n\n/**\n * Deterministic structural lint over an already schema-valid pack.\n * Pure function: no I/O, no LLM. Mirrors the ontora validator philosophy —\n * assembly/validation is code, research/judgment is model.\n */\nexport function lintFrameworkPack(pack: FrameworkPack): PackLintIssue[] {\n const issues: PackLintIssue[] = [];\n const statements = pack.statements;\n const ids = new Set<string>();\n\n for (const s of statements) {\n // L1 duplicate ids\n if (ids.has(s.id)) {\n issues.push({ severity: 'ERROR', code: 'DUP_ID', message: `Duplicate statement id \"${s.id}\"`, ref: s.id });\n }\n ids.add(s.id);\n }\n\n for (const s of statements) {\n // L2 parent existence\n if (s.parentId && !ids.has(s.parentId)) {\n issues.push({ severity: 'ERROR', code: 'PARENT_MISSING', message: `parentId \"${s.parentId}\" does not exist in this pack`, ref: s.id });\n }\n // L3 empty-ish text\n for (const [lang, text] of Object.entries(s.texts)) {\n if (!text || text.trim().length < 8) {\n issues.push({ severity: 'ERROR', code: 'TEXT_TOO_SHORT', message: `\"${lang}\" text is empty or shorter than 8 characters`, ref: s.id });\n }\n }\n // L4 grade band sanity: empty band inside manifest range is fine, but warn outside manifest range\n const [min, max] = s.gradeBand;\n const [gMin, gMax] = pack.manifest.gradeModel.range;\n if (min < gMin || max > gMax) {\n issues.push({ severity: 'WARNING', code: 'BAND_OUT_OF_RANGE', message: `gradeBand [${min},${max}] falls outside manifest range [${gMin},${gMax}]`, ref: s.id });\n }\n // L5 ai_draft without reviewer\n if (s.provenance.method === 'ai_draft' && !s.provenance.reviewedBy) {\n issues.push({ severity: 'ERROR', code: 'AI_DRAFT_UNREVIEWED', message: 'ai_draft record has no reviewedBy — human review required before activation', ref: s.id });\n }\n // L6 keywords recommended\n if (!s.keywords || s.keywords.length === 0) {\n issues.push({ severity: 'WARNING', code: 'NO_KEYWORDS', message: 'No keywords — statement will be hard to retrieve and to crosswalk', ref: s.id });\n }\n }\n\n // L7 fuzzy duplicate texts (same language)\n const seen = new Map<string, string>();\n for (const s of statements) {\n const primaryLang = pack.manifest.languages[0];\n const text = s.texts[primaryLang];\n if (!text) continue;\n const norm = text.toLowerCase().replace(/[^\\p{L}\\p{N}\\s]/gu, ' ').split(/\\s+/).filter((w) => w.length > 2).sort().join(' ');\n if (!norm) continue;\n const prev = seen.get(norm);\n if (prev !== undefined) {\n issues.push({ severity: 'WARNING', code: 'DUP_TEXT_EXACT', message: `Text is token-identical to statement \"${prev}\"`, ref: s.id });\n } else {\n // token-overlap fuzzy pass (O(n^2) avoided via sorted-token key bucketing)\n for (const [otherNorm, otherId] of seen.entries()) {\n const a = new Set(norm.split(' '));\n const b = new Set(otherNorm.split(' '));\n let inter = 0;\n for (const w of a) if (b.has(w)) inter++;\n const ratio = inter / Math.max(a.size, b.size);\n if (ratio >= DUP_OVERLAP_RATIO) {\n issues.push({ severity: 'WARNING', code: 'DUP_TEXT_FUZZY', message: `Text ~${Math.round(ratio * 100)}% overlapping with statement \"${otherId}\"`, ref: s.id });\n break;\n }\n }\n seen.set(norm, s.id);\n }\n }\n\n // L8 mapping integrity\n for (const m of pack.mappings ?? []) {\n if (!ids.has(m.statementId)) {\n issues.push({ severity: 'ERROR', code: 'MAP_STATEMENT_MISSING', message: `mapping references unknown statementId \"${m.statementId}\"`, ref: m.statementId });\n }\n if (m.provenance.method === 'ai_draft' && !m.provenance.reviewedBy) {\n issues.push({ severity: 'ERROR', code: 'AI_DRAFT_UNREVIEWED', message: `mapping to ${m.targetRef} is ai_draft without reviewedBy`, ref: m.statementId });\n }\n if (m.kind === 'covers' && m.confidence < 0.5) {\n issues.push({ severity: 'WARNING', code: 'COVERS_LOW_CONFIDENCE', message: `kind=\"covers\" with confidence ${m.confidence} < 0.5 — consider \"partial\"`, ref: m.statementId });\n }\n }\n\n return issues;\n}\n\nexport interface PackValidationResult {\n valid: boolean;\n schemaErrors: string[];\n lint: PackLintIssue[];\n stats: {\n statements: number;\n mappings: number;\n coveredStatements: number;\n statementOnlyStatements: number;\n gradeRange: [number, number];\n };\n}\n\n/**\n * Full validation: Zod schema → deterministic lint.\n * Does NOT resolve ontora targets (network/DB concern, layered separately).\n */\nexport function validateFrameworkPack(input: unknown): PackValidationResult {\n const parsed = FrameworkPackSchema.safeParse(input);\n if (!parsed.success) {\n return {\n valid: false,\n schemaErrors: parsed.error.issues.map((i) => `${i.path.join('.') || '(root)'}: ${i.message}`),\n lint: [],\n stats: { statements: 0, mappings: 0, coveredStatements: 0, statementOnlyStatements: 0, gradeRange: [0, 0] },\n };\n }\n const pack = parsed.data;\n const lint = lintFrameworkPack(pack);\n const covered = new Set((pack.mappings ?? []).map((m) => m.statementId));\n const bands = pack.statements.map((s) => s.gradeBand);\n return {\n valid: lint.every((i) => i.severity !== 'ERROR'),\n schemaErrors: [],\n lint,\n stats: {\n statements: pack.statements.length,\n mappings: pack.mappings?.length ?? 0,\n coveredStatements: covered.size,\n statementOnlyStatements: pack.statements.length - covered.size,\n gradeRange: [Math.min(...bands.flat()), Math.max(...bands.flat())],\n },\n };\n}\n","import type { FrameworkPack, FrameworkStatement } from './frameworkPackSchema';\n\n/**\n * Standards Context Injector — Grounding layer (tầng 1 của cơ chế bám chuẩn).\n *\n * Selects the standard statements RELEVANT to a lesson (by grade band overlap +\n * keyword/concept match) and renders them as a prompt context block containing\n * VERBATIM canonical text. The model must SEE the real standard text — prompt\n * labels like \"operating under CSTA\" are exactly the anti-pattern this replaces.\n *\n * Pure function: pack data in, markdown block out. No I/O, no LLM.\n */\n\nexport interface StandardsSelectionInput {\n /** Packs adopted by the org / course (already validated + activated). */\n packs: FrameworkPack[];\n /** Lesson grade level or band, canonical numeric (single grade or [min,max]). */\n gradeBand: [number, number] | number;\n /** Lesson topic text: title + concept names + keywords. Matched against statement keywords + texts. */\n topicText: string;\n /** Optional explicit ontora concept codes for the lesson (concept_code from MilestoneInput). */\n conceptCodes?: string[];\n /** Hard cap on injected statements to protect the context budget. */\n maxStatements?: number;\n}\n\nexport interface SelectedStatement {\n packId: string;\n statement: FrameworkStatement;\n score: number;\n matchedBy: Array<'band' | 'keyword' | 'concept' | 'text'>;\n}\n\nconst DEFAULT_MAX_STATEMENTS = 20;\n\nfunction normalizeBand(band: [number, number] | number): [number, number] {\n return Array.isArray(band) ? band : [band, band];\n}\n\nfunction tokenize(text: string | undefined | null): Set<string> {\n if (!text) return new Set();\n return new Set(\n text\n .toLowerCase()\n .replace(/[^\\p{L}\\p{N}\\s]/gu, ' ')\n .split(/\\s+/)\n .filter((w) => w.length > 2)\n );\n}\n\n/**\n * Rank + select statements for a lesson.\n * Scoring: band overlap is a GATE (statements outside the grade are dropped),\n * keyword/concept/text overlap is the ranking signal.\n */\nexport function selectStatementsForLesson(input: StandardsSelectionInput): SelectedStatement[] {\n const max = input.maxStatements ?? DEFAULT_MAX_STATEMENTS;\n const lessonBand = normalizeBand(input.gradeBand);\n const lessonTokens = tokenize(input.topicText);\n const conceptSet = new Set((input.conceptCodes ?? []).map((c) => c.toUpperCase().trim()).filter(Boolean));\n\n const candidates: SelectedStatement[] = [];\n\n for (const pack of input.packs) {\n for (const statement of pack.statements) {\n // Band gate: must overlap the lesson band\n const [sMin, sMax] = statement.gradeBand;\n const overlaps = Math.max(sMin, lessonBand[0]) <= Math.min(sMax, lessonBand[1]);\n if (!overlaps) continue;\n\n const matchedBy: SelectedStatement['matchedBy'] = ['band'];\n let score = 1;\n\n // Keyword match (primary signal — keywords are REQUIRED to be dense by pack lint)\n const kwTokens = new Set(statement.keywords.map((k) => k.toLowerCase()));\n let kwHits = 0;\n for (const t of lessonTokens) if (kwTokens.has(t)) kwHits++;\n if (kwHits > 0) {\n matchedBy.push('keyword');\n score += 2 + kwHits * 0.5;\n }\n\n // Concept code match (statement keyword equals an ontora concept code)\n if (conceptSet.size > 0) {\n for (const k of statement.keywords) {\n if (conceptSet.has(k.toUpperCase().replace(/\\s+/g, '_'))) {\n matchedBy.push('concept');\n score += 3;\n break;\n }\n }\n }\n\n // Raw text-token overlap (fallback signal)\n let textHits = 0;\n for (const lang of Object.keys(statement.texts)) {\n const st = tokenize(statement.texts[lang]);\n for (const t of lessonTokens) if (st.has(t)) textHits++;\n }\n if (textHits >= 2) {\n matchedBy.push('text');\n score += Math.min(2, textHits * 0.2);\n }\n\n if (score > 1) candidates.push({ packId: pack.manifest.id, statement, score, matchedBy });\n }\n }\n\n return candidates.sort((a, b) => b.score - a.score).slice(0, max);\n}\n\n/**\n * Render the STANDARDS CONTEXT prompt block (verbatim statements + binding rules).\n * Mirrors the shape of the proven CUMULATIVE CONTEXT block in lessonMasterPrompt.\n */\nexport function buildStandardsContextBlock(selected: SelectedStatement[], opts?: { language?: string }): string {\n if (selected.length === 0) return '';\n\n const lang = opts?.language;\n const rows = selected\n .map(({ packId, statement }) => {\n const text = (lang && statement.texts[lang]) || Object.values(statement.texts)[0];\n const band = statement.gradeBand[0] === statement.gradeBand[1] ? `L${statement.gradeBand[0]}` : `L${statement.gradeBand[0]}-L${statement.gradeBand[1]}`;\n return `- [${packId}:${statement.id} | ${band}] \"${text}\"`;\n })\n .join('\\n');\n\n return [\n '# STANDARDS CONTEXT (SOURCE OF TRUTH — VERBATIM STATEMENTS)',\n '',\n 'The statements below are COPIED VERBATIM from official/framework standard documents adopted for this course.',\n 'They are BINDING targets, not suggestions:',\n '- Every Learning Objective you write MUST be anchored to one or more statement IDs above via standardRefs.',\n '- You MUST use ONLY statement IDs from this list. NEVER invent, paraphrase IDs, or cite standards not present here.',\n '- The statement TEXT is the required destination: activities and assessments must demonstrably lead a learner to it.',\n '- The statement is the DESTINATION, not a script: you may extend beyond it, but you may not skip or contradict it.',\n '',\n '## Statement list',\n rows,\n ].join('\\n');\n}\n\n/**\n * One-call convenience: packs + lesson info → context block (empty string if nothing matches).\n */\nexport function buildStandardsContext(\n input: StandardsSelectionInput & { language?: string }\n): { block: string; selected: SelectedStatement[] } {\n const selected = selectStatementsForLesson(input);\n return { block: buildStandardsContextBlock(selected, { language: input.language }), selected };\n}\n","import type { FrameworkPack } from './frameworkPackSchema';\n\n/**\n * Standards Coverage Gate — Verification layer (tầng 3 của cơ chế bám chuẩn).\n *\n * Deterministic coverage matrix across the generation chain:\n * standard statement → learning objective → lesson activities → quiz questions\n *\n * Philosophy: \"bám chuẩn\" must be enforced by CODE, not by prompt goodwill.\n * A statement mapped with kind=\"covers\" that has no LO / no activity / no\n * assessment = a compliance hole, reported with an actionable repair hint.\n *\n * Pure function over already-generated artifacts. No LLM, no I/O.\n */\n\nexport interface CoverageGateInput {\n packs: FrameworkPack[];\n /** Learning objectives as generated (code + optional standardRefs anchoring). */\n objectives: Array<{\n code: string;\n standardRefs?: string[];\n conceptRefs?: string[];\n }>;\n /** activitySequence rows of the lesson (lo codes link activities to LOs). Optional: omitted when no structured activity-LO linkage is available. */\n activities?: Array<{ seq?: number; lo: string[] }>;\n /** Quiz questions; each links to assessment objectives → alignedLO. */\n quizQuestions: Array<{ alignedLO?: string; alignedAO?: string }>;\n /** Assessment objectives table (AO → alignedLO). Questions may reference AOs only. */\n assessmentObjectives?: Array<{ aoCode: string; alignedLO: string }>;\n}\n\nexport interface StatementCoverageRow {\n packId: string;\n statementId: string;\n statementText: string;\n status: 'COVERED' | 'PARTIAL' | 'UNCOVERED' | 'UNMAPPED';\n objectives: string[];\n hasActivity: boolean;\n hasAssessment: boolean;\n issues: string[];\n}\n\nexport interface CoverageGateReport {\n verdict: 'PASS' | 'WARN' | 'FAIL';\n coveragePct: number;\n unresolvedCount?: number;\n hasUnresolvedRefs?: boolean;\n rows: StatementCoverageRow[];\n summary: string;\n rawMarkdownReport: string;\n}\n\n/** statementRef formats accepted in standardRefs: \"1B-AP-10\" or \"csta-k12-2017:1B-AP-10\". */\nfunction resolveStatementRef(ref: string, packs: FrameworkPack[]): { pack: FrameworkPack; statementId: string } | null {\n const [head, ...rest] = ref.split(':');\n const candidatePacks = rest.length > 0 ? packs.filter((p) => p.manifest.id === head) : packs;\n const statementId = rest.length > 0 ? rest.join(':') : ref;\n for (const p of candidatePacks) {\n if (p.statements.some((s) => s.id === statementId)) return { pack: p, statementId };\n }\n return null;\n}\n\nexport function evaluateStandardsCoverage(input: CoverageGateInput): CoverageGateReport {\n const rows: StatementCoverageRow[] = [];\n\n // AO → LO resolution map\n const aoToLo = new Map<string, string>();\n for (const ao of input.assessmentObjectives ?? []) aoToLo.set(ao.aoCode, ao.alignedLO);\n\n // LO → covered statements (explicit anchors)\n const loToRefs = new Map<string, Set<string>>();\n for (const lo of input.objectives) {\n loToRefs.set(lo.code, new Set(lo.standardRefs ?? []));\n }\n\n // LOs actually taught (activities) and assessed (quiz, via direct alignedLO or AO table)\n const taughtLOs = new Set<string>();\n for (const act of input.activities ?? []) for (const lo of act.lo) taughtLOs.add(lo);\n const assessedLOs = new Set<string>();\n for (const q of input.quizQuestions) {\n if (q.alignedLO) assessedLOs.add(q.alignedLO);\n if (q.alignedAO) {\n const lo = aoToLo.get(q.alignedAO);\n if (lo) assessedLOs.add(lo);\n }\n }\n\n for (const pack of input.packs) {\n const mappingByStatement = new Map<string, string>();\n for (const m of pack.mappings ?? []) {\n // first mapping wins for kind resolution; \"covers\" beats \"partial\" beats \"extends\"\n const prev = mappingByStatement.get(m.statementId);\n if (!prev || (prev !== 'covers' && m.kind === 'covers') || (prev === 'extends' && m.kind !== 'extends')) {\n mappingByStatement.set(m.statementId, m.kind);\n }\n }\n\n for (const statement of pack.statements) {\n const refFull = `${pack.manifest.id}:${statement.id}`;\n const issues: string[] = [];\n\n // Objectives anchored to this statement\n const los = input.objectives\n .filter((lo) => (lo.standardRefs ?? []).some((r) => r === statement.id || r === refFull))\n .map((lo) => lo.code);\n\n const kind = mappingByStatement.get(statement.id);\n const hasMapping = kind !== undefined;\n const isComplianceRelevant = kind === 'covers';\n\n const hasActivity = los.some((lo) => taughtLOs.has(lo));\n const hasAssessment = los.some((lo) => assessedLOs.has(lo));\n\n let status: StatementCoverageRow['status'];\n if (!hasMapping) status = 'UNMAPPED';\n else if (!isComplianceRelevant) status = 'PARTIAL';\n else if (los.length > 0 && hasActivity && hasAssessment) status = 'COVERED';\n else status = 'UNCOVERED';\n\n if (status === 'UNCOVERED') {\n if (los.length === 0) issues.push('No learning objective anchors this statement (missing standardRefs).');\n else {\n if (!hasActivity) issues.push(`Anchored LO(s) ${los.join(', ')} have no activity in lesson flow.`);\n if (!hasAssessment) issues.push(`Anchored LO(s) ${los.join(', ')} are not measured by any quiz question.`);\n }\n }\n\n rows.push({\n packId: pack.manifest.id,\n statementId: statement.id,\n statementText: Object.values(statement.texts)[0] ?? '',\n status,\n objectives: los,\n hasActivity,\n hasAssessment,\n issues,\n });\n }\n }\n\n // Unresolvable refs (typo / hallucinated IDs) — reported as issues on no row\n for (const lo of input.objectives) {\n for (const r of lo.standardRefs ?? []) {\n if (!resolveStatementRef(r, input.packs)) {\n rows.push({\n packId: '(unresolved)',\n statementId: r,\n statementText: '',\n status: 'UNCOVERED',\n objectives: [lo.code],\n hasActivity: false,\n hasAssessment: false,\n issues: [`standardRef \"${r}\" does not exist in any adopted pack — likely a hallucinated or stale ID`],\n });\n }\n }\n }\n\n // Valid compliance rows only (exclude unresolved and non-covered/unmapped/partial)\n const validRows = rows.filter((r) => r.packId !== '(unresolved)');\n const complianceRows = validRows.filter((r) => r.status !== 'UNMAPPED' && r.status !== 'PARTIAL');\n const covered = complianceRows.filter((r) => r.status === 'COVERED').length;\n const coveragePct = complianceRows.length === 0 ? 100 : Math.round((covered / complianceRows.length) * 100);\n const unresolvedCount = rows.filter((r) => r.packId === '(unresolved)').length;\n const hasUnresolvedRefs = unresolvedCount > 0;\n\n const verdict: CoverageGateReport['verdict'] =\n unresolvedCount > 0 || coveragePct < 60 ? 'FAIL' : coveragePct < 100 ? 'WARN' : 'PASS';\n\n const lines: string[] = [\n '# Standards Coverage Report',\n '',\n `- Verdict: **${verdict}**`,\n `- Compliance coverage: **${coveragePct}%** (${covered}/${complianceRows.length} \"covers\" statements fully taught + assessed)`,\n `- Unresolved standardRefs: ${unresolvedCount}`,\n '',\n '| Pack | Statement | Status | LOs | Activity | Assessment |',\n '|---|---|---|---|---|---|',\n ...rows.map(\n (r) =>\n `|${r.packId}|${r.statementId}|${r.status}|${r.objectives.join(', ') || '—'}|${r.hasActivity ? '✓' : '✗'}|${r.hasAssessment ? '✓' : '✗'}|`\n ),\n ];\n const issueLines = rows.filter((r) => r.issues.length > 0).flatMap((r) => r.issues.map((i) => `- [${r.packId}:${r.statementId}] ${i}`));\n if (issueLines.length > 0) lines.push('', '## Issues', ...issueLines);\n\n return {\n verdict,\n coveragePct,\n unresolvedCount,\n hasUnresolvedRefs,\n rows,\n summary: `Standards coverage ${coveragePct}% — verdict ${verdict}`,\n rawMarkdownReport: lines.join('\\n'),\n };\n}\n","import { createClient, type SupabaseClient } from '@supabase/supabase-js';\nimport {\n FrameworkPackSchema,\n type FrameworkPack,\n type FrameworkMapping,\n type FrameworkStatement,\n} from './frameworkPackSchema';\n\n/**\n * Standards Registry Adapter — Supabase-backed runtime plane for Framework Packs.\n *\n * Read path (generation): loadPacksForCourse() → FrameworkPack[] hydrated from\n * standards_frameworks + standards_statements + standards_mappings (+ overrides\n * applied with resolution order override > pack-embedded, 'retired' removes).\n * Write path (intake): importPack() persists a validated pack; adopt/deprecate\n * manage lifecycle. Write access uses a service-role client (intake runs\n * server-side); RLS governs client-side reads.\n */\n\nexport interface StandardsRegistryConfig {\n supabaseUrl?: string;\n supabaseServiceRoleKey?: string;\n supabaseAnonKey?: string;\n client?: SupabaseClient;\n}\n\nexport interface HydratedPack extends FrameworkPack {\n /** DB id of the standards_frameworks row */\n dbId: string;\n status: 'draft' | 'active' | 'deprecated';\n organizationCode: string | null;\n}\n\nexport interface ImportPackResult {\n frameworkDbId: string;\n statementsInserted: number;\n mappingsInserted: number;\n}\n\nexport class StandardsRegistryAdapter {\n private client: SupabaseClient;\n\n constructor(config: StandardsRegistryConfig = {}) {\n if (config.client) {\n this.client = config.client;\n return;\n }\n const url = config.supabaseUrl || process.env.NEXT_PUBLIC_SUPABASE_URL || process.env.SUPABASE_URL || '';\n const key =\n config.supabaseServiceRoleKey ||\n process.env.SUPABASE_SERVICE_ROLE_KEY ||\n config.supabaseAnonKey ||\n process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ||\n '';\n if (!url || !key) {\n throw new Error('StandardsRegistryAdapter: Supabase URL/key missing (pass client or env).');\n }\n this.client = createClient(url, key);\n }\n\n // ─── Intake (write path — service role) ───────────────────────────────────\n\n /** Persist a schema-validated pack as a new framework (status=draft). */\n async importPack(pack: FrameworkPack, opts?: { organizationCode?: string | null; createdBy?: string; originalFilePath?: string }): Promise<ImportPackResult> {\n const parsed = FrameworkPackSchema.safeParse(pack);\n if (!parsed.success) {\n throw new Error('importPack: pack failed schema validation: ' + parsed.error.issues.map((i) => i.path.join('.') + ': ' + i.message).join('; '));\n }\n const p = parsed.data;\n\n const { data: fw, error: fwErr } = await this.client\n .from('standards_frameworks')\n .insert({\n pack_id: p.manifest.id,\n content_version: p.manifest.contentVersion,\n name: p.manifest.name,\n spec_version: p.manifest.specVersion,\n subject: p.manifest.subject,\n languages: p.manifest.languages,\n grade_model: p.manifest.gradeModel,\n provenance: p.manifest.provenance,\n trust: p.manifest.trust,\n status: 'draft',\n organization_code: opts?.organizationCode ?? (p.manifest.trust === 'verified' ? null : p.manifest.provenance.importedBy?.replace(/^org:/, '') || null),\n original_file_path: opts?.originalFilePath ?? null,\n created_by: opts?.createdBy ?? null,\n })\n .select('id')\n .single();\n if (fwErr) throw new Error('importPack: framework insert failed: ' + fwErr.message);\n\n const frameworkId = fw.id as string;\n\n const statementRows = p.statements.map((s: FrameworkStatement) => ({\n framework_id: frameworkId,\n statement_id: s.id,\n parent_statement_id: s.parentId ?? null,\n grade_min: s.gradeBand[0],\n grade_max: s.gradeBand[1],\n texts: s.texts,\n classifications: s.classifications ?? [],\n bloom_hint: s.bloomHint ?? null,\n keywords: s.keywords ?? [],\n source_ref: s.sourceRef ?? null,\n provenance: s.provenance,\n }));\n\n const { error: stErr, count: stCount } = await this.client\n .from('standards_statements')\n .insert(statementRows, { count: 'exact' });\n if (stErr) throw new Error('importPack: statement insert failed: ' + stErr.message);\n\n let mappingCount = 0;\n if (p.mappings && p.mappings.length > 0) {\n const mappingRows = p.mappings.map((m: FrameworkMapping) => ({\n framework_id: frameworkId,\n statement_id: m.statementId,\n target_ref: m.targetRef,\n kind: m.kind,\n confidence: m.confidence,\n provenance: m.provenance,\n }));\n const { error: mpErr, count: mpCount } = await this.client\n .from('standards_mappings')\n .insert(mappingRows, { count: 'exact' });\n if (mpErr) throw new Error('importPack: mapping insert failed: ' + mpErr.message);\n mappingCount = mpCount ?? mappingRows.length;\n }\n\n return { frameworkDbId: frameworkId, statementsInserted: stCount ?? statementRows.length, mappingsInserted: mappingCount };\n }\n\n /** Activate a draft framework (immutable version is now live). */\n async activatePack(frameworkDbId: string): Promise<void> {\n const { error } = await this.client\n .from('standards_frameworks')\n .update({ status: 'active' })\n .eq('id', frameworkDbId)\n .eq('status', 'draft');\n if (error) throw new Error('activatePack failed: ' + error.message);\n }\n\n async deprecatePack(frameworkDbId: string): Promise<void> {\n const { error } = await this.client\n .from('standards_frameworks')\n .update({ status: 'deprecated' })\n .eq('id', frameworkDbId);\n if (error) throw new Error('deprecatePack failed: ' + error.message);\n }\n\n async adoptPack(frameworkDbId: string, organizationCode: string, adoptedBy?: string): Promise<void> {\n const { error } = await this.client.from('standards_org_adoptions').upsert(\n { framework_id: frameworkDbId, organization_code: organizationCode, adopted_by: adoptedBy ?? null },\n { onConflict: 'organization_code,framework_id' }\n );\n if (error) throw new Error('adoptPack failed: ' + error.message);\n }\n\n // ─── Runtime (read path — generation) ─────────────────────────────────────\n\n /**\n * Load all packs usable by an org: platform packs (verified, org IS NULL) +\n * org packs + org adoptions. Hydrated into the same FrameworkPack shape the\n * in-memory Phase-1 components consume (injector / coverage gate / judge).\n */\n async loadPacksForOrg(organizationCode: string | null): Promise<HydratedPack[]> {\n // Visible frameworks = platform (org NULL, active) OR org-owned OR adopted\n let query = this.client\n .from('standards_frameworks')\n .select('*, standards_org_adoptions(organization_code)')\n .eq('status', 'active');\n const { data: frameworks, error } = await query;\n if (error) throw new Error('loadPacksForOrg: ' + error.message);\n\n const visible = (frameworks ?? []).filter((f: any) => {\n const own = f.organization_code && organizationCode && f.organization_code === organizationCode;\n const global = !f.organization_code;\n const adopted = organizationCode && (f.standards_org_adoptions ?? []).some((a: any) => a.organization_code === organizationCode);\n return global || own || adopted;\n });\n\n if (visible.length === 0) return [];\n\n const ids = visible.map((f: any) => f.id);\n const [{ data: statements, error: stErr }, { data: mappings, error: mpErr }, { data: overrides, error: ovErr }] = await Promise.all([\n this.client.from('standards_statements').select('*').in('framework_id', ids),\n this.client.from('standards_mappings').select('*').in('framework_id', ids),\n this.client.from('standards_mapping_overrides').select('*').in('framework_id', ids),\n ]);\n if (stErr) throw new Error('loadPacksForOrg statements: ' + stErr.message);\n\n const overridesByFw = new Map<string, any[]>();\n for (const o of overrides ?? []) {\n const list = overridesByFw.get(o.framework_id) ?? [];\n list.push(o);\n overridesByFw.set(o.framework_id, list);\n }\n\n return visible.map((f: any) => {\n const stmts = (statements ?? [])\n .filter((s: any) => s.framework_id === f.id)\n .map((s: any) => ({\n id: s.statement_id,\n parentId: s.parent_statement_id ?? undefined,\n gradeBand: [s.grade_min, s.grade_max] as [number, number],\n texts: s.texts,\n classifications: s.classifications ?? [],\n bloomHint: s.bloom_hint ?? undefined,\n keywords: s.keywords ?? [],\n sourceRef: s.source_ref ?? undefined,\n provenance: s.provenance ?? { method: 'imported' },\n }));\n\n // Resolution order: override (unless retired) > pack-embedded\n const ov = overridesByFw.get(f.id) ?? [];\n const retired = new Set(ov.filter((o: any) => o.kind === 'retired').map((o: any) => o.statement_id + '|' + o.target_ref));\n const embedded: FrameworkMapping[] = (mappings ?? [])\n .filter((m: any) => m.framework_id === f.id)\n .map((m: any) => ({\n statementId: m.statement_id,\n targetRef: m.target_ref,\n kind: m.kind,\n confidence: Number(m.confidence),\n provenance: m.provenance ?? { method: 'imported' },\n }));\n const overlay: FrameworkMapping[] = ov\n .filter((o: any) => o.kind !== 'retired')\n .map((o: any) => ({\n statementId: o.statement_id,\n targetRef: o.target_ref,\n kind: o.kind,\n confidence: Number(o.confidence),\n provenance: { method: 'human', reviewedBy: o.created_by ?? 'overlay', note: o.note ?? undefined },\n }));\n\n const bridge = new Map<string, FrameworkMapping>();\n for (const m of embedded) bridge.set(m.statementId + '|' + m.targetRef, m);\n for (const m of overlay) bridge.set(m.statementId + '|' + m.targetRef, m);\n const finalMappings = [...bridge.values()].filter((m) => !retired.has(m.statementId + '|' + m.targetRef));\n\n const hydrated = FrameworkPackSchema.safeParse({\n manifest: {\n id: f.pack_id,\n name: f.name,\n specVersion: f.spec_version || '1.0',\n contentVersion: f.content_version,\n subject: f.subject,\n languages: f.languages,\n gradeModel: f.grade_model,\n provenance: f.provenance,\n trust: f.trust,\n },\n statements: stmts,\n mappings: finalMappings,\n });\n if (!hydrated.success) {\n throw new Error('loadPacksForOrg: hydrated pack \"' + f.pack_id + '\" failed schema: ' + hydrated.error.issues[0]?.message);\n }\n\n return { ...hydrated.data, dbId: f.id, status: f.status, organizationCode: f.organization_code ?? null } as HydratedPack;\n });\n }\n}\n","import type { FrameworkPack } from '../standards/frameworkPackSchema';\n\n/**\n * Deterministic STANDARD_STACK.md generator (Phase 2).\n *\n * Replaces the old anti-pattern where @researcher was asked to \"cite authentic\n * standards\" from memory (hallucinated IDs). The SOT document is now RENDERED\n * from the Standards Registry packs adopted for the course — verbatim statements,\n * canonical IDs, zero LLM involvement.\n */\nexport interface StandardStackOptions {\n projectId: string;\n packs: FrameworkPack[];\n /** Overall course grade band (canonical numeric) for coverage scoping. */\n courseGradeBand?: [number, number];\n language?: string;\n}\n\nfunction bandLabel(band: readonly number[]): string {\n return band[0] === band[1] ? `L${band[0]}` : `L${band[0]}–L${band[1]}`;\n}\n\nexport function buildStandardStackMarkdown(opts: StandardStackOptions): string {\n const { projectId, packs, courseGradeBand, language } = opts;\n const lines: string[] = [];\n\n lines.push('---');\n lines.push(`id: \"${projectId.toUpperCase()}-STANDARD-STACK\"`);\n lines.push(`title: \"Standard Stack: ${projectId}\"`);\n lines.push('type: \"STANDARD_STACK\"');\n lines.push('phase: \"P1\"');\n lines.push('version: \"v2.0-deterministic\"');\n lines.push(`generatedAt: \"${new Date().toISOString()}\"`);\n lines.push('source: \"Standards Registry (deterministic render — not LLM-generated)\"');\n lines.push('---');\n lines.push('');\n lines.push('# STANDARD STACK — Hệ tiêu chuẩn tham chiếu');\n lines.push('');\n\n if (packs.length === 0) {\n lines.push('> ⚠️ No Framework Pack adopted for this course. Generation will run WITHOUT standards grounding');\n lines.push('> (no statement anchoring, no Standards Alignment judge dimension, no coverage gate).');\n lines.push('> Import a pack via the Standards Registry before generating for standards-bound courses.');\n return lines.join('\\n');\n }\n\n for (const pack of packs) {\n const m = pack.manifest;\n lines.push(`## ${m.name}`);\n lines.push('');\n lines.push(`- **Pack ID:** \\`${m.id}\\` (content ${m.contentVersion}, contract v${m.specVersion})`);\n lines.push(`- **Trust:** ${m.trust} — ${m.trust === 'verified' ? 'platform-curated' : 'org-imported'}`);\n lines.push(`- **Nguồn:** ${m.provenance.sourceRef}${m.provenance.sourceUrl ? ' (' + m.provenance.sourceUrl + ')' : ''}`);\n lines.push(`- **License:** ${m.provenance.license}`);\n lines.push(`- **Grade range (manifest):** ${bandLabel(m.gradeModel.range)}`);\n lines.push('');\n lines.push('### Statements (verbatim — binding targets)');\n lines.push('');\n lines.push('| ID | Band | Text (verbatim) | Keywords |');\n lines.push('|---|---|---|---|');\n\n const statements = courseGradeBand\n ? pack.statements.filter((s) => Math.max(s.gradeBand[0], courseGradeBand[0]) <= Math.min(s.gradeBand[1], courseGradeBand[1]))\n : pack.statements;\n\n for (const s of statements) {\n const text = (language && s.texts[language]) || Object.values(s.texts)[0];\n const mapped = (pack.mappings ?? []).filter((mp) => mp.statementId === s.id);\n const mapNote = mapped.length > 0 ? ` → ${mapped.map((mp) => mp.targetRef + ' (' + mp.kind + ')').join(', ')}` : '';\n lines.push(`| \\`${s.id}\\` | ${bandLabel(s.gradeBand)} | ${text.replace(/\\|/g, '\\\\|')} | ${(s.keywords || []).join(', ')}${mapNote ? ' |' + mapNote : ' |'}`);\n }\n lines.push('');\n }\n\n lines.push('---');\n lines.push('');\n lines.push('*Document rendered deterministically from the Standards Registry. Statement texts are COPIED VERBATIM from the cited sources and are binding for generation, judging, and coverage reporting.*');\n return lines.join('\\n');\n}\n","{\n \"manifest\": {\n \"id\": \"csta-pk12-2026\",\n \"name\": \"CSTA PK–12 Computer Science Standards (2026)\",\n \"specVersion\": \"1.0\",\n \"contentVersion\": \"2026.1\",\n \"subject\": \"computing\",\n \"languages\": [\n \"en\"\n ],\n \"gradeModel\": {\n \"type\": \"grades\",\n \"range\": [\n 0,\n 12\n ]\n },\n \"provenance\": {\n \"sourceRef\": \"2026 CSTA PK–12 Computer Science Standards, CSTA & WestEd\",\n \"sourceUrl\": \"https://csteachers.org/pk12standards/\",\n \"license\": \"CC BY-NC-SA 4.0\",\n \"importedBy\": \"platform\",\n \"importedAt\": \"2026-09-12T00:00:00.000Z\"\n },\n \"trust\": \"verified\"\n },\n \"statements\": [\n {\n \"id\": \"EK-ALG-PS-01\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Carry out algorithms in daily activities.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"carry\",\n \"algorithms\",\n \"daily\",\n \"activities\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-ALG-PS-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-ALG-ML-02\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Recognize attributes of objects to notice patterns and make decisions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"recognize\",\n \"attributes\",\n \"objects\",\n \"notice\",\n \"patterns\",\n \"decisions\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-ALG-ML-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-ALG-IM-03\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Describe how people create algorithms to solve problems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"describe\",\n \"people\",\n \"create\",\n \"algorithms\",\n \"solve\",\n \"problems\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-ALG-IM-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-PRO-PD-04\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Create a sequence of commands to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"create\",\n \"sequence\",\n \"commands\",\n \"solve\",\n \"problem\",\n \"express\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-PRO-PD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-PRO-VD-05\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Identify everyday gestures and symbols that represent information people use to make choices.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Variables & Data Storage\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"programming\",\n \"variables & data storage\",\n \"identify\",\n \"everyday\",\n \"gestures\",\n \"symbols\",\n \"represent\",\n \"information\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-PRO-VD-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-PRO-RD-06\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Describe how a sequence of commands completes a task.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"describe\",\n \"sequence\",\n \"commands\",\n \"completes\",\n \"task\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-PRO-RD-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-PRO-TR-07\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Identify a step in a sequence of commands that does not work as expected.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"identify\",\n \"step\",\n \"sequence\",\n \"commands\",\n \"does\",\n \"work\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-PRO-TR-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-DAT-DC-08\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Use collected data to help answer questions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"collected\",\n \"data\",\n \"help\",\n \"answer\",\n \"questions\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-DAT-DC-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-DAT-DI-09\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Investigate a question that can be answered by collecting data in students’ everyday environments.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"investigate\",\n \"question\",\n \"answered\",\n \"collecting\",\n \"data\",\n \"students\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-DAT-DI-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-DAT-IM-10\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Investigate how data can help a person make informed decisions in everyday life.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"investigate\",\n \"data\",\n \"help\",\n \"person\",\n \"informed\",\n \"decisions\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-DAT-IM-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-SYS-HW-11\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Examine the use of tools to accomplish a task or solve a problem for different users.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"examine\",\n \"tools\",\n \"accomplish\",\n \"task\",\n \"solve\",\n \"problem\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-SYS-HW-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-SYS-SE-12\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Differentiate between public and private information.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"differentiate\",\n \"between\",\n \"public\",\n \"private\",\n \"information\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-SYS-SE-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-SYS-IM-13\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Identify responsible behavior when using computing systems and digital tools.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"identify\",\n \"responsible\",\n \"behavior\",\n \"computing\",\n \"systems\",\n \"digital\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-SYS-IM-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-SOC-HI-14\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Identify computing technologies used in daily life that have changed over time.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"identify\",\n \"computing\",\n \"technologies\",\n \"used\",\n \"daily\",\n \"life\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-SOC-HI-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-SOC-HU-15\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Explain that people design and develop computing technologies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"explain\",\n \"people\",\n \"design\",\n \"develop\",\n \"computing\",\n \"technologies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-SOC-HU-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"EK-SOC-CE-16\",\n \"gradeBand\": [\n 0,\n 0\n ],\n \"texts\": {\n \"en\": \"Identify how people use digital devices at home, at school, and at work.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"identify\",\n \"people\",\n \"digital\",\n \"devices\",\n \"home\",\n \"school\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, EK-SOC-CE-16\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-ALG-PS-01\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Decompose a problem or task into individual parts to develop an algorithm.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"decompose\",\n \"problem\",\n \"task\",\n \"into\",\n \"individual\",\n \"parts\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-ALG-PS-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-ALG-ML-02\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Recognize that AI systems are technologies that use patterns in data to make decisions or generate new things.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"recognize\",\n \"systems\",\n \"technologies\",\n \"patterns\",\n \"data\",\n \"decisions\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-ALG-ML-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-ALG-IM-03\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Explain how a change to an algorithm leads to a different outcome.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"explain\",\n \"change\",\n \"algorithm\",\n \"leads\",\n \"different\",\n \"outcome\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-ALG-IM-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-PRO-PD-04\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Create code from an algorithm that includes sequence to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"create\",\n \"code\",\n \"algorithm\",\n \"includes\",\n \"sequence\",\n \"solve\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-PRO-PD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-PRO-VD-05\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Identify terms that refer to data values that change over time in everyday life.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Variables & Data Storage\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"programming\",\n \"variables & data storage\",\n \"identify\",\n \"terms\",\n \"refer\",\n \"data\",\n \"values\",\n \"change\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-PRO-VD-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-PRO-RD-06\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Explain the function of code that includes an event and sequence.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"explain\",\n \"function\",\n \"code\",\n \"includes\",\n \"event\",\n \"sequence\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-PRO-RD-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-PRO-TR-07\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Debug a program that includes a sequence of commands.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"debug\",\n \"program\",\n \"includes\",\n \"sequence\",\n \"commands\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-PRO-TR-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-DAT-DC-08\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Use multiple methods to collect both numeric and non-numeric data to help answer questions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"multiple\",\n \"methods\",\n \"collect\",\n \"both\",\n \"numeric\",\n \"nonnumeric\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-DAT-DC-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-DAT-DI-09\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Compare a question that can be answered through a data investigation and a question that can be answered through other means.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"compare\",\n \"question\",\n \"answered\",\n \"through\",\n \"data\",\n \"investigation\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-DAT-DI-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-DAT-IM-10\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Examine a variety of data questions that address the needs of a person or community.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"examine\",\n \"variety\",\n \"data\",\n \"questions\",\n \"address\",\n \"needs\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-DAT-IM-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-SYS-HW-11\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Describe the purpose of basic hardware components of a computing system, using accurate terminology.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"describe\",\n \"purpose\",\n \"basic\",\n \"hardware\",\n \"components\",\n \"computing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-SYS-HW-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-SYS-SE-12\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Describe how to keep devices and online accounts safe from unauthorized access.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"describe\",\n \"keep\",\n \"devices\",\n \"online\",\n \"accounts\",\n \"safe\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-SYS-SE-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-SYS-IM-13\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Describe an individual’s role in responsibly using computing systems and digital tools.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"describe\",\n \"individuals\",\n \"role\",\n \"responsibly\",\n \"computing\",\n \"systems\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-SYS-IM-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-SOC-HI-14\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Compare how an everyday activity changed after a specific computing technology was introduced.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"compare\",\n \"everyday\",\n \"activity\",\n \"changed\",\n \"after\",\n \"specific\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-SOC-HI-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-SOC-HU-15\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Differentiate between activities that humans do well and activities that computing technologies do well.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"differentiate\",\n \"between\",\n \"activities\",\n \"humans\",\n \"well\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-SOC-HU-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E1-SOC-CE-16\",\n \"gradeBand\": [\n 1,\n 1\n ],\n \"texts\": {\n \"en\": \"Describe how computing is used by people at home, at school, and in the community.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"describe\",\n \"computing\",\n \"used\",\n \"people\",\n \"home\",\n \"school\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E1-SOC-CE-16\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-ALG-PS-01\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Create an algorithm that includes sequence, events, and iteration to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"create\",\n \"algorithm\",\n \"includes\",\n \"sequence\",\n \"events\",\n \"iteration\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-ALG-PS-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-ALG-ML-02\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Examine how data is used to train a machine learning model.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"examine\",\n \"data\",\n \"used\",\n \"train\",\n \"machine\",\n \"learning\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-ALG-ML-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-ALG-IM-03\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Describe how an algorithm might impact peers in varied situations.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"describe\",\n \"algorithm\",\n \"might\",\n \"impact\",\n \"peers\",\n \"varied\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-ALG-IM-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-PRO-PD-04\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Create code from an algorithm that includes sequence, events, and iteration to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"create\",\n \"code\",\n \"algorithm\",\n \"includes\",\n \"sequence\",\n \"events\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-PRO-PD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-PRO-VD-05\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Label different representations of information with a name and whether its value is constant or changes.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Variables & Data Storage\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"programming\",\n \"variables & data storage\",\n \"label\",\n \"different\",\n \"representations\",\n \"information\",\n \"name\",\n \"whether\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-PRO-VD-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-PRO-RD-06\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Explain the steps taken to create a program.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"explain\",\n \"steps\",\n \"taken\",\n \"create\",\n \"program\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-PRO-RD-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-PRO-TR-07\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Debug a program that includes sequence, events, and iteration.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"debug\",\n \"program\",\n \"includes\",\n \"sequence\",\n \"events\",\n \"iteration\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-PRO-TR-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-DAT-DC-08\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Compare numeric and non-numeric types of data in terms of how they are collected and what information they provide.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"compare\",\n \"numeric\",\n \"nonnumeric\",\n \"types\",\n \"data\",\n \"terms\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-DAT-DC-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-DAT-DI-09\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Develop a question that can be answered with data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"develop\",\n \"question\",\n \"answered\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-DAT-DI-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-DAT-IM-10\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Distinguish between data collection approaches, including those that may lead to inaccurate or biased data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"distinguish\",\n \"between\",\n \"data\",\n \"collection\",\n \"approaches\",\n \"including\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-DAT-IM-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-SYS-HW-11\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Explain how the basic hardware components of a computing system work together to perform input and output (I/O) operations.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"explain\",\n \"basic\",\n \"hardware\",\n \"components\",\n \"computing\",\n \"system\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-SYS-HW-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-SYS-SE-12\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Explain how online actions have real-world consequences.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"explain\",\n \"online\",\n \"actions\",\n \"have\",\n \"realworld\",\n \"consequences\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-SYS-SE-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-SYS-IM-13\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Describe the benefits and harms that arise from an individual’s use of computing systems and digital tools.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"describe\",\n \"benefits\",\n \"harms\",\n \"arise\",\n \"individuals\",\n \"computing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-SYS-IM-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-SOC-HI-14\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Analyze the ways that people from different cultures, backgrounds, and time periods have designed computing technologies to help them solve problems and express ideas.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"analyze\",\n \"ways\",\n \"people\",\n \"different\",\n \"cultures\",\n \"backgrounds\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-SOC-HI-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-SOC-HU-15\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Investigate situations where humans have created computing technologies to solve problems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"investigate\",\n \"situations\",\n \"where\",\n \"humans\",\n \"have\",\n \"created\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-SOC-HU-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E2-SOC-CE-16\",\n \"gradeBand\": [\n 2,\n 2\n ],\n \"texts\": {\n \"en\": \"Investigate how personal interests connect to computing in different industries and careers.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"investigate\",\n \"personal\",\n \"interests\",\n \"connect\",\n \"computing\",\n \"different\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E2-SOC-CE-16\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-ALG-PS-01\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Create an algorithm that includes a combination of sequence, events, iteration, and selection to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"create\",\n \"algorithm\",\n \"includes\",\n \"combination\",\n \"sequence\",\n \"events\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-ALG-PS-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-ALG-ML-02\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Investigate how a machine learning model can change when new data is added to a training set.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"investigate\",\n \"machine\",\n \"learning\",\n \"model\",\n \"change\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-ALG-ML-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-ALG-IM-03\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Compare how different algorithms may affect outcomes, situations, and people with a wide range of needs.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"compare\",\n \"different\",\n \"algorithms\",\n \"affect\",\n \"outcomes\",\n \"situations\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-ALG-IM-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-PRO-PD-04\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Develop code from a student-created algorithm that includes a combination of sequence, events, iteration, and selection to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"develop\",\n \"code\",\n \"studentcreated\",\n \"algorithm\",\n \"includes\",\n \"combination\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-PRO-PD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-PRO-PD-05\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Use constructive feedback to improve a program.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"constructive\",\n \"feedback\",\n \"improve\",\n \"program\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-PRO-PD-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-PRO-VD-06\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Identify the variables being stored and manipulated in a program.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Variables & Data Storage\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"programming\",\n \"variables & data storage\",\n \"identify\",\n \"variables\",\n \"being\",\n \"stored\",\n \"manipulated\",\n \"program\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-PRO-VD-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-PRO-RD-07\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Articulate how a specific segment of code contributes to the overall purpose of a program.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"articulate\",\n \"specific\",\n \"segment\",\n \"code\",\n \"contributes\",\n \"overall\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-PRO-RD-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-PRO-TR-08\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Debug a program that includes a combination of sequence, events, iteration, and selection.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"debug\",\n \"program\",\n \"includes\",\n \"combination\",\n \"sequence\",\n \"events\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-PRO-TR-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-DAT-DC-09\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Evaluate numeric and non-numeric data for accuracy and completeness.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"evaluate\",\n \"numeric\",\n \"nonnumeric\",\n \"data\",\n \"accuracy\",\n \"completeness\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-DAT-DC-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-DAT-DI-10\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Investigate a data question involving relationships between multiple attributes.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"investigate\",\n \"data\",\n \"question\",\n \"involving\",\n \"relationships\",\n \"between\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-DAT-DI-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-DAT-IM-11\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Design a data collection process that addresses the needs of people from different backgrounds or groups.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"design\",\n \"data\",\n \"collection\",\n \"process\",\n \"addresses\",\n \"needs\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-DAT-IM-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-SYS-HW-12\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Describe the role of software in a computing system to accomplish tasks or solve problems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"describe\",\n \"role\",\n \"software\",\n \"computing\",\n \"system\",\n \"accomplish\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-SYS-HW-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-SYS-SE-13\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Evaluate how sharing information online might reveal personally identifiable information and other details.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"evaluate\",\n \"sharing\",\n \"information\",\n \"online\",\n \"might\",\n \"reveal\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-SYS-SE-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-SYS-NT-14\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Explain how people access the internet to gain information and communicate with each other.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Networks\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"networks\",\n \"explain\",\n \"people\",\n \"access\",\n \"internet\",\n \"gain\",\n \"information\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-SYS-NT-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-SYS-IM-15\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Describe how widely used computing systems may impact an individual’s life and community.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"describe\",\n \"widely\",\n \"used\",\n \"computing\",\n \"systems\",\n \"impact\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-SYS-IM-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-SOC-HI-16\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Examine how computing innovations have changed the ways people live, work, or communicate over time.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"examine\",\n \"computing\",\n \"innovations\",\n \"have\",\n \"changed\",\n \"ways\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-SOC-HI-16\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-SOC-ET-17\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Describe how new technologies create both benefits and risks in personal and family life.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"describe\",\n \"technologies\",\n \"create\",\n \"both\",\n \"benefits\",\n \"risks\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-SOC-ET-17\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-SOC-HU-18\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Examine why people design and build computing technologies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"examine\",\n \"people\",\n \"design\",\n \"build\",\n \"computing\",\n \"technologies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-SOC-HU-18\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E3-SOC-CE-19\",\n \"gradeBand\": [\n 3,\n 3\n ],\n \"texts\": {\n \"en\": \"Explain how people in different industries use computing technologies and skills to accomplish their work.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"explain\",\n \"people\",\n \"different\",\n \"industries\",\n \"computing\",\n \"technologies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E3-SOC-CE-19\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-ALG-PS-01\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Create a written representation of an algorithm that includes a combination of sequence, events, iteration, and selection to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"create\",\n \"written\",\n \"representation\",\n \"algorithm\",\n \"includes\",\n \"combination\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-ALG-PS-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-ALG-ML-02\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Analyze relationships between the properties of training data and a machine learning model’s output.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"analyze\",\n \"relationships\",\n \"between\",\n \"properties\",\n \"training\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-ALG-ML-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-ALG-IM-03\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Evaluate how different algorithms for solving the same problem produce outcomes that may benefit or disadvantage different groups of people.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"evaluate\",\n \"different\",\n \"algorithms\",\n \"solving\",\n \"same\",\n \"problem\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-ALG-IM-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-PRO-PD-04\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Compare different programming solutions to the same problem based on correctness and clarity.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"compare\",\n \"different\",\n \"solutions\",\n \"same\",\n \"problem\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-PRO-PD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-PRO-PD-05\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Collaborate with a team by offering a meaningful contribution to creating a program.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"collaborate\",\n \"team\",\n \"offering\",\n \"meaningful\",\n \"contribution\",\n \"creating\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-PRO-PD-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-PRO-VD-06\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Trace how data flows and changes variable values in a program.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Variables & Data Storage\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"variables & data storage\",\n \"trace\",\n \"data\",\n \"flows\",\n \"changes\",\n \"variable\",\n \"values\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-PRO-VD-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-PRO-RD-07\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Document a program to clarify its functionality.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"document\",\n \"program\",\n \"clarify\",\n \"functionality\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-PRO-RD-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-PRO-TR-08\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Debug a program incrementally and repeatedly throughout the development process.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"debug\",\n \"program\",\n \"incrementally\",\n \"repeatedly\",\n \"throughout\",\n \"development\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-PRO-TR-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-DAT-DC-09\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Organize collected data into a table using a computational tool, with rows representing records and columns representing attributes.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"organize\",\n \"collected\",\n \"data\",\n \"into\",\n \"table\",\n \"computational\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-DAT-DC-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-DAT-DI-10\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Create an explanation that includes at least one data visualization to report the process and results of a data investigation.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"create\",\n \"explanation\",\n \"includes\",\n \"least\",\n \"data\",\n \"visualization\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-DAT-DI-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-DAT-IM-11\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Investigate how data collected about people may affect individuals and groups.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"investigate\",\n \"data\",\n \"collected\",\n \"about\",\n \"people\",\n \"affect\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-DAT-IM-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-SYS-HW-12\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Apply a basic troubleshooting process to identify and fix common hardware and software issues.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"apply\",\n \"basic\",\n \"troubleshooting\",\n \"process\",\n \"identify\",\n \"common\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-SYS-HW-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-SYS-SE-13\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Distinguish between authentication and authorization in protecting devices and private information.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"distinguish\",\n \"between\",\n \"authentication\",\n \"authorization\",\n \"protecting\",\n \"devices\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-SYS-SE-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-SYS-NT-14\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Compare wired and wireless methods that computing devices use to connect to the internet.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Networks\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"networks\",\n \"compare\",\n \"wired\",\n \"wireless\",\n \"methods\",\n \"computing\",\n \"devices\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-SYS-NT-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-SYS-IM-15\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Investigate the impacts of widely used computing systems on natural resources and the environment.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"investigate\",\n \"widely\",\n \"used\",\n \"computing\",\n \"systems\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-SYS-IM-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-SOC-HI-16\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Investigate the contributions of diverse individuals and communities in the history of computing.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"investigate\",\n \"contributions\",\n \"diverse\",\n \"individuals\",\n \"communities\",\n \"history\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-SOC-HI-16\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-SOC-ET-17\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Analyze how the limitations of existing technologies can lead to emerging technologies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"analyze\",\n \"limitations\",\n \"existing\",\n \"technologies\",\n \"lead\",\n \"emerging\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-SOC-ET-17\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-SOC-HU-18\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Distinguish between human learning and machine learning processes.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"distinguish\",\n \"between\",\n \"human\",\n \"learning\",\n \"machine\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-SOC-HU-18\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E4-SOC-CE-19\",\n \"gradeBand\": [\n 4,\n 4\n ],\n \"texts\": {\n \"en\": \"Investigate how the workforce adopts new computing technologies and continues to update their computing skills.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"investigate\",\n \"workforce\",\n \"adopts\",\n \"computing\",\n \"technologies\",\n \"continues\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E4-SOC-CE-19\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-ALG-PS-01\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Create a visual representation of an algorithm that includes variables and a combination of sequence, events, iteration, and selection to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"create\",\n \"visual\",\n \"representation\",\n \"algorithm\",\n \"includes\",\n \"variables\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-ALG-PS-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-ALG-ML-02\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Train a machine learning model to make a classification or prediction.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"train\",\n \"machine\",\n \"learning\",\n \"model\",\n \"classification\",\n \"prediction\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-ALG-ML-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-ALG-IM-03\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Articulate how human-centered design principles are incorporated into the development of a computing technology.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"articulate\",\n \"humancentered\",\n \"design\",\n \"principles\",\n \"incorporated\",\n \"into\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-ALG-IM-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-PRO-PD-04\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Create a novel program by modifying or combining elements of existing programs.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"create\",\n \"novel\",\n \"program\",\n \"modifying\",\n \"combining\",\n \"elements\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-PRO-PD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-PRO-PD-05\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Construct individual components of a program that are collaboratively assembled into a programming project.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"construct\",\n \"individual\",\n \"components\",\n \"program\",\n \"collaboratively\",\n \"assembled\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-PRO-PD-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-PRO-VD-06\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Use variables to store, compare, and modify data within a program.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Variables & Data Storage\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"variables & data storage\",\n \"variables\",\n \"store\",\n \"compare\",\n \"modify\",\n \"data\",\n \"within\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-PRO-VD-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-PRO-RD-07\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Create embedded or external documentation for a programming project.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"create\",\n \"embedded\",\n \"external\",\n \"documentation\",\n \"project\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-PRO-RD-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-PRO-TR-08\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Debug a program using systematic strategies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"debug\",\n \"program\",\n \"systematic\",\n \"strategies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-PRO-TR-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-DAT-DC-09\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Use computational tools to collect and organize different types of data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"computational\",\n \"tools\",\n \"collect\",\n \"organize\",\n \"different\",\n \"types\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-DAT-DC-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-DAT-DI-10\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Analyze a dataset to identify the nature and possible sources of variability in the data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"analyze\",\n \"dataset\",\n \"identify\",\n \"nature\",\n \"possible\",\n \"sources\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-DAT-DI-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-DAT-IM-11\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Analyze the benefits and risks of a computing technology that uses collected data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"analyze\",\n \"benefits\",\n \"risks\",\n \"computing\",\n \"technology\",\n \"uses\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-DAT-IM-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-SYS-HW-12\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Explain how hardware and software components of a computing system work together to perform input and output operations, processing, and storage.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"explain\",\n \"hardware\",\n \"software\",\n \"components\",\n \"computing\",\n \"system\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-SYS-HW-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-SYS-SE-13\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Describe the concepts of the CIA triad and how each component is important in protecting information.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"describe\",\n \"concepts\",\n \"triad\",\n \"each\",\n \"component\",\n \"important\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-SYS-SE-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-SYS-NT-14\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Distinguish between the components of wired and wireless networks.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Networks\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"networks\",\n \"distinguish\",\n \"between\",\n \"components\",\n \"wired\",\n \"wireless\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-SYS-NT-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-SYS-IM-15\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Examine how computing systems impact culture and the ways people live and work.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"examine\",\n \"computing\",\n \"systems\",\n \"impact\",\n \"culture\",\n \"ways\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-SYS-IM-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-SOC-HI-16\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Analyze how the inclusion or exclusion of diverse individuals and communities has shaped the design, development, and societal impact of computing technologies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"analyze\",\n \"inclusion\",\n \"exclusion\",\n \"diverse\",\n \"individuals\",\n \"communities\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-SOC-HI-16\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-SOC-ET-17\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Examine how people decide whether or not to use emerging technologies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"examine\",\n \"people\",\n \"decide\",\n \"whether\",\n \"emerging\",\n \"technologies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-SOC-ET-17\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-SOC-HU-18\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Evaluate when it is appropriate to use or not use computing technologies to solve a problem.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"evaluate\",\n \"appropriate\",\n \"computing\",\n \"technologies\",\n \"solve\",\n \"problem\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-SOC-HU-18\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"E5-SOC-CE-19\",\n \"gradeBand\": [\n 5,\n 5\n ],\n \"texts\": {\n \"en\": \"Examine how professionals collaborate while using computing technologies to solve problems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"examine\",\n \"professionals\",\n \"collaborate\",\n \"while\",\n \"computing\",\n \"technologies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, E5-SOC-CE-19\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-PS-01\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Design an algorithm that includes variables of multiple data types to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"design\",\n \"algorithm\",\n \"includes\",\n \"variables\",\n \"multiple\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-PS-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-PS-02\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Model a given algorithm with a flowchart or pseudocode that includes a combination of control structures and procedures.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"model\",\n \"given\",\n \"algorithm\",\n \"flowchart\",\n \"pseudocode\",\n \"includes\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-PS-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-PS-03\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Verify the accuracy of an algorithm for given inputs.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"verify\",\n \"accuracy\",\n \"algorithm\",\n \"given\",\n \"inputs\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-PS-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-PS-04\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Justify whether a problem is best solved using procedural instructions, rule- based logic, data-driven methods, or a combination of these approaches.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"justify\",\n \"whether\",\n \"problem\",\n \"best\",\n \"solved\",\n \"procedural\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-PS-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-PS-05\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use an AI tool to generate outputs that assist in solving a computational problem.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"tool\",\n \"generate\",\n \"outputs\",\n \"assist\",\n \"solving\",\n \"computational\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-PS-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-ML-06\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Hypothesize how a machine learning model generates classifications or predictions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"hypothesize\",\n \"machine\",\n \"learning\",\n \"model\",\n \"generates\",\n \"classifications\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-ML-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-ML-07\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Investigate ways to improve the accuracy of a machine learning model and reduce bias by refining the quality of examples and nonexamples in the training data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"investigate\",\n \"ways\",\n \"improve\",\n \"accuracy\",\n \"machine\",\n \"learning\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-ML-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-ML-08\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Evaluate the features and limitations of a machine learning model.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"evaluate\",\n \"features\",\n \"limitations\",\n \"machine\",\n \"learning\",\n \"model\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-ML-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-IM-09\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Evaluate which human-centered design principles are present or missing in an existing computing technology.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"evaluate\",\n \"humancentered\",\n \"design\",\n \"principles\",\n \"present\",\n \"missing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-IM-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-IM-10\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Examine evidence of beneficial and harmful impacts, ethical issues, and biases of algorithms encountered in daily life.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"examine\",\n \"evidence\",\n \"beneficial\",\n \"harmful\",\n \"ethical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-IM-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-ALG-IM-11\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Modify an algorithm to address a specific societal impact, ethical issue, or bias.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"modify\",\n \"algorithm\",\n \"address\",\n \"specific\",\n \"societal\",\n \"impact\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-ALG-IM-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-PD-12\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use a procedure to structure code for clarity and reusability.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"procedure\",\n \"structure\",\n \"code\",\n \"clarity\",\n \"reusability\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-PD-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-PD-13\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use reference documentation in program development.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"reference\",\n \"documentation\",\n \"program\",\n \"development\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-PD-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-PD-14\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Justify the importance of attribution and intellectual property when developing computing technologies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"justify\",\n \"importance\",\n \"attribution\",\n \"intellectual\",\n \"property\",\n \"developing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-PD-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-PD-15\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Develop a program utilizing inclusive collaboration practices.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"develop\",\n \"program\",\n \"utilizing\",\n \"inclusive\",\n \"collaboration\",\n \"practices\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-PD-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-VD-16\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use variables of multiple data types to store, access, and manipulate data within a program.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Variables & Data Storage\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"variables & data storage\",\n \"variables\",\n \"multiple\",\n \"data\",\n \"types\",\n \"store\",\n \"access\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-VD-16\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-RD-17\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Analyze the roles of iteration, selection, variables, and procedures in a segment of code.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"analyze\",\n \"roles\",\n \"iteration\",\n \"selection\",\n \"variables\",\n \"procedures\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-RD-17\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-RD-18\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Analyze AI-generated code for accuracy and usability in a programming project.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"analyze\",\n \"aigenerated\",\n \"code\",\n \"accuracy\",\n \"usability\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-RD-18\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-TR-19\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use systematic strategies to test, refine, and document changes to a computing technology to meet the intended purpose.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"systematic\",\n \"strategies\",\n \"test\",\n \"refine\",\n \"document\",\n \"changes\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-TR-19\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-PRO-TR-20\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Refine a computing technology based on user feedback to improve its usability and accessibility.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"refine\",\n \"computing\",\n \"technology\",\n \"based\",\n \"user\",\n \"feedback\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-PRO-TR-20\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-DC-21\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Evaluate how different levels of precision and granularity in data collection affect accuracy, storage, and analysis.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"evaluate\",\n \"different\",\n \"levels\",\n \"precision\",\n \"granularity\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-DC-21\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-DC-22\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Explain how data and its associated metadata can be used to answer questions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"explain\",\n \"data\",\n \"associated\",\n \"metadata\",\n \"used\",\n \"answer\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-DC-22\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-DC-23\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use a computational tool to sort, filter, group, and summarize structured data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"computational\",\n \"tool\",\n \"sort\",\n \"filter\",\n \"group\",\n \"summarize\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-DC-23\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-DC-24\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Analyze options to address a data quality issue.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"analyze\",\n \"options\",\n \"address\",\n \"data\",\n \"quality\",\n \"issue\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-DC-24\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-DI-25\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use a computational tool to identify relationships among variables in a dataset and make a classification or prediction.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"computational\",\n \"tool\",\n \"identify\",\n \"relationships\",\n \"among\",\n \"variables\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-DI-25\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-DI-26\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Create data visualizations to show how different design choices can impact the interpretation of the same data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"create\",\n \"data\",\n \"visualizations\",\n \"show\",\n \"different\",\n \"design\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-DI-26\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-DI-27\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Summarize a data investigation process, including potential biases, limitations, and supporting evidence.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"summarize\",\n \"data\",\n \"investigation\",\n \"process\",\n \"including\",\n \"potential\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-DI-27\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-IM-28\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Explain the benefits and risks of allowing personal data and metadata to be collected and used in datasets, including issues of data ownership, privacy, and sovereignty.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"explain\",\n \"benefits\",\n \"risks\",\n \"allowing\",\n \"personal\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-IM-28\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-DAT-IM-29\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Analyze how decisions made at different stages of working with data can lead to biased data, misleading conclusions, and compromised AI models.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"analyze\",\n \"decisions\",\n \"made\",\n \"different\",\n \"stages\",\n \"working\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-DAT-IM-29\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SYS-HW-30\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Examine differences between computing systems based on user needs, system requirements, and potential societal, environmental, and ethical impacts.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"examine\",\n \"differences\",\n \"between\",\n \"computing\",\n \"systems\",\n \"based\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SYS-HW-30\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SYS-HW-31\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Describe computing devices used in various industries, their basic functions, and how they are used to accomplish tasks or solve problems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"describe\",\n \"computing\",\n \"devices\",\n \"used\",\n \"various\",\n \"industries\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SYS-HW-31\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SYS-SE-32\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Explain the effects of not using the CIA triad when working with data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"explain\",\n \"effects\",\n \"triad\",\n \"working\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SYS-SE-32\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SYS-SE-33\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Evaluate common types of cyber attacks and preventions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"evaluate\",\n \"common\",\n \"types\",\n \"cyber\",\n \"attacks\",\n \"preventions\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SYS-SE-33\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SYS-NT-34\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Model how information in a network is broken down into packets, transmitted between devices, and reassembled.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Networks\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"systems & security\",\n \"networks\",\n \"model\",\n \"information\",\n \"network\",\n \"broken\",\n \"down\",\n \"into\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SYS-NT-34\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SYS-NT-35\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Explain how the resilience of the internet depends on interconnected devices and their roles and functions within the network.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Networks\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"networks\",\n \"explain\",\n \"resilience\",\n \"internet\",\n \"depends\",\n \"interconnected\",\n \"devices\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SYS-NT-35\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SYS-IM-36\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Collaborate to improve the design of a computing system to meet the needs of diverse users.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"collaborate\",\n \"improve\",\n \"design\",\n \"computing\",\n \"system\",\n \"meet\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SYS-IM-36\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SYS-IM-37\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Examine how access to computing systems can vary based on personal and social factors, such as physical ability, geographic location, socioeconomic status, and age.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"examine\",\n \"access\",\n \"computing\",\n \"systems\",\n \"vary\",\n \"based\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SYS-IM-37\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SOC-HI-38\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Compare the roles of individuals, communities, organizations, and governments in shaping computing technologies across major eras in computing history.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"compare\",\n \"roles\",\n \"individuals\",\n \"communities\",\n \"organizations\",\n \"governments\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SOC-HI-38\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SOC-HI-39\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Analyze intended and unintended impacts of a historical computing technology on society and the environment.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"analyze\",\n \"intended\",\n \"unintended\",\n \"impacts\",\n \"historical\",\n \"computing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SOC-HI-39\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SOC-ET-40\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Evaluate when it is appropriate to use AI and other emerging technologies to solve a problem based on their capabilities, limitations, and environmental impacts.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"evaluate\",\n \"appropriate\",\n \"emerging\",\n \"technologies\",\n \"solve\",\n \"problem\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SOC-ET-40\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SOC-ET-41\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Evaluate how the decisions made while designing an emerging technology influence user experiences differently across different communities.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"evaluate\",\n \"decisions\",\n \"made\",\n \"while\",\n \"designing\",\n \"emerging\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SOC-ET-41\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SOC-ET-42\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Debate ways an emerging technology impacts the social, cultural, and environmental issues in local communities.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"debate\",\n \"ways\",\n \"emerging\",\n \"technology\",\n \"impacts\",\n \"social\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SOC-ET-42\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SOC-HU-43\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Analyze how the decisions humans make when using computing technologies have ethical and social consequences.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"analyze\",\n \"decisions\",\n \"humans\",\n \"computing\",\n \"technologies\",\n \"have\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SOC-HU-43\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SOC-CE-44\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Analyze how workers in different careers use computational thinking to solve real-world problems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"analyze\",\n \"workers\",\n \"different\",\n \"careers\",\n \"computational\",\n \"thinking\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SOC-CE-44\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"MS-SOC-CE-45\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Evaluate how automation in technology can create or replace jobs and change how people work.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"evaluate\",\n \"automation\",\n \"technology\",\n \"create\",\n \"replace\",\n \"jobs\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, MS-SOC-CE-45\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-PS-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Design an algorithm using appropriate data structures to solve a problem or express an idea.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"design\",\n \"algorithm\",\n \"appropriate\",\n \"data\",\n \"structures\",\n \"solve\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-PS-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-PS-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Optimize the design of an algorithm using procedural abstraction and control structures.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"optimize\",\n \"design\",\n \"algorithm\",\n \"procedural\",\n \"abstraction\",\n \"control\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-PS-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-PS-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate algorithms for efficiency, correctness, and clarity, using metrics or test cases.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"evaluate\",\n \"algorithms\",\n \"efficiency\",\n \"correctness\",\n \"clarity\",\n \"metrics\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-PS-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-PS-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Describe the differences between deterministic and probabilistic algorithms.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"describe\",\n \"differences\",\n \"between\",\n \"deterministic\",\n \"probabilistic\",\n \"algorithms\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-PS-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-PS-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate AI-generated output to assess bias, accuracy, and potential harms.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Algorithmic Problem Solving\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"algorithmic problem solving\",\n \"evaluate\",\n \"aigenerated\",\n \"output\",\n \"assess\",\n \"bias\",\n \"accuracy\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-PS-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-ML-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Justify the selection of a type of AI algorithm to accomplish a task.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"justify\",\n \"selection\",\n \"type\",\n \"algorithm\",\n \"accomplish\",\n \"task\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-ML-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-ML-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate training data by examining its source, quality, representativeness, potential biases, and privacy implications.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"evaluate\",\n \"training\",\n \"data\",\n \"examining\",\n \"source\",\n \"quality\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-ML-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-ML-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a machine learning model for a chosen task using appropriate data and tools.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Machine Learning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"machine learning\",\n \"develop\",\n \"machine\",\n \"learning\",\n \"model\",\n \"chosen\",\n \"task\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-ML-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-IM-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Design a computing technology using human-centered design principles.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"design\",\n \"computing\",\n \"technology\",\n \"humancentered\",\n \"principles\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-IM-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-IM-10\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the ethical implications, societal impacts, and potential biases of rule- based and data-driven algorithms.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"evaluate\",\n \"ethical\",\n \"implications\",\n \"societal\",\n \"potential\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-IM-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-ALG-IM-11\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Articulate the values embedded in the design of an algorithmic system.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Algorithms & Design\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"algorithms & design\",\n \"impacts\",\n \"articulate\",\n \"values\",\n \"embedded\",\n \"design\",\n \"algorithmic\",\n \"system\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-ALG-IM-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-PD-12\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a modular program that uses procedures, external libraries, or objects to improve reusability and readability.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"create\",\n \"modular\",\n \"program\",\n \"uses\",\n \"procedures\",\n \"external\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-PD-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-PD-13\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Use documentation, libraries, application programming interfaces (APIs), and other tools in program development.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"documentation\",\n \"libraries\",\n \"application\",\n \"interfaces\",\n \"apis\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-PD-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-PD-14\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply appropriate attribution of intellectual property when developing a computing technology.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"apply\",\n \"appropriate\",\n \"attribution\",\n \"intellectual\",\n \"property\",\n \"developing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-PD-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-PD-15\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Collaborate on a programming project using a defined workflow that includes design documentation and clear task roles.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Program Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"program development\",\n \"collaborate\",\n \"project\",\n \"defined\",\n \"workflow\",\n \"includes\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-PD-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-VD-16\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a program that uses appropriate data structures to store, access, and manipulate data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Variables & Data Storage\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"programming\",\n \"variables & data storage\",\n \"create\",\n \"program\",\n \"uses\",\n \"appropriate\",\n \"data\",\n \"structures\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-VD-16\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-RD-17\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how a segment of code works, including the role of parameters, return values, and data structures.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"analyze\",\n \"segment\",\n \"code\",\n \"works\",\n \"including\",\n \"role\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-RD-17\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-RD-18\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate AI-generated code for accuracy, reliability, and alignment with program requirements.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Reading & Documenting\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"programming\",\n \"reading & documenting\",\n \"evaluate\",\n \"aigenerated\",\n \"code\",\n \"accuracy\",\n \"reliability\",\n \"alignment\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-RD-18\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-TR-19\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate a computing technology’s alignment with design specifications and responsible design values, including its correctness, effectiveness, and user experience.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"evaluate\",\n \"computing\",\n \"technologys\",\n \"alignment\",\n \"design\",\n \"specifications\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-TR-19\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-PRO-TR-20\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Refine a computing technology based on user feedback, testing results, and responsible design values to improve its effectiveness and impact.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Programming\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"programming\",\n \"testing & refining\",\n \"refine\",\n \"computing\",\n \"technology\",\n \"based\",\n \"user\",\n \"feedback\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-PRO-TR-20\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-DAT-DC-21\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Use a computational tool to generate simulated data that fits certain parameters for use in a simulation.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"computational\",\n \"tool\",\n \"generate\",\n \"simulated\",\n \"data\",\n \"fits\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-DAT-DC-21\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-DAT-DC-22\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a data dictionary that describes the name, type, and allowable values for each attribute and the logical relationships between variables in a dataset.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"create\",\n \"data\",\n \"dictionary\",\n \"describes\",\n \"name\",\n \"type\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-DAT-DC-22\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-DAT-DC-23\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Use a computational tool to clean and organize text-based data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"computational\",\n \"tool\",\n \"clean\",\n \"organize\",\n \"textbased\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-DAT-DC-23\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-DAT-DC-24\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate different approaches to verifying consistency and complianc e with expected data types, values, and ranges.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Collection & Preparation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data collection & preparation\",\n \"evaluate\",\n \"different\",\n \"approaches\",\n \"verifying\",\n \"consistency\",\n \"complianc\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-DAT-DC-24\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-DAT-DI-25\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a data visualization of a multivariate dataset to answer a question or make a classification or prediction.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"create\",\n \"data\",\n \"visualization\",\n \"multivariate\",\n \"dataset\",\n \"answer\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-DAT-DI-25\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-DAT-DI-26\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate a data simulation or visualization to answer a data question, inform decision-making, and identify potential limitations.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Investigation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"data investigation\",\n \"evaluate\",\n \"data\",\n \"simulation\",\n \"visualization\",\n \"answer\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-DAT-DI-26\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-DAT-IM-27\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the societal, environmental, and ethical implications of large-scale data collection and processing, including within AI applications.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"evaluate\",\n \"societal\",\n \"environmental\",\n \"ethical\",\n \"implications\",\n \"largescale\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-DAT-IM-27\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-DAT-IM-28\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Debate the efficacy of a policy or regulation to ensure responsible data use.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data & Analysis\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data & analysis\",\n \"impacts\",\n \"debate\",\n \"efficacy\",\n \"policy\",\n \"regulation\",\n \"ensure\",\n \"responsible\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-DAT-IM-28\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-HW-29\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Differentiate an operating system as a special type of software that manages both the hardware and other software components of a computing system, including handling memory and peripherals.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"differentiate\",\n \"operating\",\n \"system\",\n \"special\",\n \"type\",\n \"software\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-HW-29\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-HW-30\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Demonstrate the capabilities and limitations of a physical or simulated computing device to address a task or problem.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Software\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"systems & security\",\n \"hardware & software\",\n \"demonstrate\",\n \"capabilities\",\n \"limitations\",\n \"physical\",\n \"simulated\",\n \"computing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-HW-30\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-SE-31\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Identify different types of cybersecurity and physical security measures and the trade-offs for users, data, and devices.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"identify\",\n \"different\",\n \"types\",\n \"cybersecurity\",\n \"physical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-SE-31\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-SE-32\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Classify the causes and impacts of security breaches and social engineering attacks for individuals, industries, communities, and governments.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"classify\",\n \"causes\",\n \"impacts\",\n \"breaches\",\n \"social\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-SE-32\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-SE-33\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Formulate a solution to a security flaw in a given system.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Security\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"systems & security\",\n \"security\",\n \"formulate\",\n \"solution\",\n \"flaw\",\n \"given\",\n \"system\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-SE-33\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-NT-34\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Diagram a network of computing systems, including hardware and software.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Networks\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"systems & security\",\n \"networks\",\n \"diagram\",\n \"network\",\n \"computing\",\n \"systems\",\n \"including\",\n \"hardware\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-NT-34\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-NT-35\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how the internet functions as a network of networks and how it differs from other types of networks.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Networks\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"networks\",\n \"analyze\",\n \"internet\",\n \"functions\",\n \"network\",\n \"differs\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-NT-35\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-IM-36\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the rationale behind a law or policy governing the design and use of computing systems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"evaluate\",\n \"rationale\",\n \"behind\",\n \"policy\",\n \"governing\",\n \"design\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-IM-36\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SYS-IM-37\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Investigate how computing systems and infrastructure impact society and the environment, identifying who is affected and why.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Systems & Security\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Impacts\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"systems & security\",\n \"impacts\",\n \"investigate\",\n \"computing\",\n \"systems\",\n \"infrastructure\",\n \"impact\",\n \"society\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SYS-IM-37\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-HI-38\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the historical trajectory of a specific computing technology and how its development is linked to societal and environmental factors.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"analyze\",\n \"historical\",\n \"trajectory\",\n \"specific\",\n \"computing\",\n \"technology\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-HI-38\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-HI-39\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Propose modifications to an existing policy or piece of legislation that encourages ethical innovation and minimizes societal risks associated with technology.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"History of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"computing & society\",\n \"history of computing\",\n \"propose\",\n \"modifications\",\n \"existing\",\n \"policy\",\n \"piece\",\n \"legislation\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-HI-39\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-ET-40\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the fundamental technological differences between an emerging technology and established technologies and how those differences influence computing.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"evaluate\",\n \"fundamental\",\n \"technological\",\n \"differences\",\n \"between\",\n \"emerging\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-ET-40\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-ET-41\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the societal and environmental impacts of an emerging technology, including those that lead to inequities in access and outcomes.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"evaluate\",\n \"societal\",\n \"environmental\",\n \"impacts\",\n \"emerging\",\n \"technology\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-ET-41\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-ET-42\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Design a conceptual solution to a real-world problem using an emerging technology, analyzing its potential benefits and harms.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Emerging Technologies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"computing & society\",\n \"emerging technologies\",\n \"design\",\n \"conceptual\",\n \"solution\",\n \"realworld\",\n \"problem\",\n \"emerging\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-ET-42\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-HU-43\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate how human choices in using, designing, deploying, and regulating computing technologies have risks, benefits, and long-term impacts.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"evaluate\",\n \"human\",\n \"choices\",\n \"designing\",\n \"deploying\",\n \"regulating\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-HU-43\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-HU-44\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Debate perspectives on differences between human and artificial intelligence and their implications for consciousness, ethics, and human responsibility.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Humans & Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"computing & society\",\n \"humans & computing\",\n \"debate\",\n \"perspectives\",\n \"differences\",\n \"between\",\n \"human\",\n \"artificial\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-HU-44\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-CE-45\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how diverse teams of people use computational thinking and computing technologies to solve problems and express ideas.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"analyze\",\n \"diverse\",\n \"teams\",\n \"people\",\n \"computational\",\n \"thinking\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-CE-45\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"HS-SOC-CE-46\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Connect computing knowledge and skills acquired to students’ personal goals and career aspirations.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Computing & Society\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Career Exploration\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"computing & society\",\n \"career exploration\",\n \"connect\",\n \"computing\",\n \"knowledge\",\n \"skills\",\n \"acquired\",\n \"students\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, HS-SOC-CE-46\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-DD-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze AI systems to differentiate the types of problems they address.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"design & development\",\n \"analyze\",\n \"systems\",\n \"differentiate\",\n \"types\",\n \"problems\",\n \"they\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-DD-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-DD-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Modify AI system training data to improve fairness and accuracy in outputs.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"design & development\",\n \"modify\",\n \"system\",\n \"training\",\n \"data\",\n \"improve\",\n \"fairness\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-DD-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-DD-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create an application using a prebuilt supervised learning model to make a classification or prediction.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"design & development\",\n \"create\",\n \"application\",\n \"prebuilt\",\n \"supervised\",\n \"learning\",\n \"model\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-DD-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-DD-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Compare data representations and how representation choice constrains applicable algorithms.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"design & development\",\n \"compare\",\n \"data\",\n \"representations\",\n \"representation\",\n \"choice\",\n \"constrains\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-DD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-DD-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate whether an AI or non-AI computational solution is appropriate for a real-world problem.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"design & development\",\n \"evaluate\",\n \"whether\",\n \"nonai\",\n \"computational\",\n \"solution\",\n \"appropriate\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-DD-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-DD-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze problems that can be addressed using unsupervised learning.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"design & development\",\n \"analyze\",\n \"problems\",\n \"addressed\",\n \"unsupervised\",\n \"learning\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-DD-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-DD-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Optimize an AI algorithm’s performance for a given problem.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"design & development\",\n \"optimize\",\n \"algorithms\",\n \"performance\",\n \"given\",\n \"problem\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-DD-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-DD-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create an application using a complex supervised learning model.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"design & development\",\n \"create\",\n \"application\",\n \"complex\",\n \"supervised\",\n \"learning\",\n \"model\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-DD-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-DS-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Examine how data flows through a neural network structure.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Science for AI\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"data science for ai\",\n \"examine\",\n \"data\",\n \"flows\",\n \"through\",\n \"neural\",\n \"network\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-DS-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-DS-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply data acquisition, cleaning, and transformation techniques to prepare data for AI analysis.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Science for AI\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"data science for ai\",\n \"apply\",\n \"data\",\n \"acquisition\",\n \"cleaning\",\n \"transformation\",\n \"techniques\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-DS-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-DS-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate metadata and data pipelines to support transparency in AI model selection and deployment.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Science for AI\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"data science for ai\",\n \"evaluate\",\n \"metadata\",\n \"data\",\n \"pipelines\",\n \"support\",\n \"transparency\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-DS-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-DS-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Transform data to meet the input requirements of an AI algorithm.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Data Science for AI\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"data science for ai\",\n \"transform\",\n \"data\",\n \"meet\",\n \"input\",\n \"requirements\",\n \"algorithm\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-DS-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-HR-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Plan safeguards for AI systems that protect human well-being and privacy while ensuring meaningful human involvement in decision-making.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Human Responsibility\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"human responsibility\",\n \"plan\",\n \"safeguards\",\n \"systems\",\n \"protect\",\n \"human\",\n \"wellbeing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-HR-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-HR-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the potential biases and limitations of AI systems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Human Responsibility\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"human responsibility\",\n \"analyze\",\n \"potential\",\n \"biases\",\n \"limitations\",\n \"systems\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-HR-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-HR-10\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the environmental impacts of widespread AI adoption.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Human Responsibility\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"human responsibility\",\n \"analyze\",\n \"environmental\",\n \"impacts\",\n \"widespread\",\n \"adoption\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-HR-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-HR-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a policy that promotes transparency in AI applications.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Human Responsibility\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"human responsibility\",\n \"develop\",\n \"policy\",\n \"promotes\",\n \"transparency\",\n \"applications\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-HR-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-HR-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how model optimization choices impact a model’s performance, interpretability, and fairness.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Human Responsibility\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"human responsibility\",\n \"analyze\",\n \"model\",\n \"optimization\",\n \"choices\",\n \"impact\",\n \"models\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-HR-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-PP-11\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Integrate a prebuilt AI agent into an application.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"professional practice\",\n \"integrate\",\n \"prebuilt\",\n \"agent\",\n \"into\",\n \"application\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-PP-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-PP-12\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how AI tools shape user experiences for people with diverse backgrounds and characteristics.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"professional practice\",\n \"analyze\",\n \"tools\",\n \"shape\",\n \"user\",\n \"experiences\",\n \"people\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-PP-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-PP-13\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Assess how unauthorized data collection has influenced the practice of training AI models.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"professional practice\",\n \"assess\",\n \"unauthorized\",\n \"data\",\n \"collection\",\n \"influenced\",\n \"practice\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-PP-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-AIN-PP-14\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate how ethical implications of AI have changed over time.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"professional practice\",\n \"evaluate\",\n \"ethical\",\n \"implications\",\n \"have\",\n \"changed\",\n \"over\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-AIN-PP-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-PP-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop an AI agent to accomplish a defined task.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"professional practice\",\n \"develop\",\n \"agent\",\n \"accomplish\",\n \"defined\",\n \"task\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-PP-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-PP-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a professional communication artifact by interpreting technical AI results for diverse audiences.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"professional practice\",\n \"develop\",\n \"professional\",\n \"communication\",\n \"artifact\",\n \"interpreting\",\n \"technical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-PP-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-AIN-PP-10\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Debate aspects of AI regulatory frameworks and legislation across countries.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Artificial Intelligence\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"artificial intelligence\",\n \"professional practice\",\n \"debate\",\n \"aspects\",\n \"regulatory\",\n \"frameworks\",\n \"legislation\",\n \"across\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-AIN-PP-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-ND-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the role of network services and protocols in secure communication and their potential vulnerabilities.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Theory & Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network theory & design\",\n \"analyze\",\n \"role\",\n \"network\",\n \"services\",\n \"protocols\",\n \"secure\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-ND-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-ND-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Examine the concepts of the Open Systems Interconnection (OSI) model and their role in network communication.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Theory & Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network theory & design\",\n \"examine\",\n \"concepts\",\n \"open\",\n \"systems\",\n \"interconnection\",\n \"model\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-ND-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-ND-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Distinguish between networks based on their protocols, topologies, and addressing schemes.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Theory & Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network theory & design\",\n \"distinguish\",\n \"between\",\n \"networks\",\n \"based\",\n \"protocols\",\n \"topologies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-ND-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-ND-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Examine security risks in digital systems and corresponding mitigation strategies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Theory & Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network theory & design\",\n \"examine\",\n \"security\",\n \"risks\",\n \"digital\",\n \"systems\",\n \"corresponding\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-ND-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-ND-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Integrate security features in networking hardware and software.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Theory & Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network theory & design\",\n \"integrate\",\n \"security\",\n \"features\",\n \"networking\",\n \"hardware\",\n \"software\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-ND-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-ND-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Design a secure network, including servers, switches, routers, endpoints, and firewalls.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Theory & Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network theory & design\",\n \"design\",\n \"secure\",\n \"network\",\n \"including\",\n \"servers\",\n \"switches\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-ND-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-ND-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the security implications of different network topologies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Theory & Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network theory & design\",\n \"evaluate\",\n \"security\",\n \"implications\",\n \"different\",\n \"network\",\n \"topologies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-ND-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-NO-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply diagnostic tools and techniques to resolve network connectivity issues.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Operations\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network operations\",\n \"apply\",\n \"diagnostic\",\n \"tools\",\n \"techniques\",\n \"resolve\",\n \"network\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-NO-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-NO-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze system processes and network activity using command-line tools to identify potential security concerns.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Operations\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network operations\",\n \"analyze\",\n \"system\",\n \"processes\",\n \"network\",\n \"activity\",\n \"commandline\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-NO-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-NO-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze network traffic patterns to distinguish between normal and potentially malicious behavior.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Operations\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network operations\",\n \"analyze\",\n \"network\",\n \"traffic\",\n \"patterns\",\n \"distinguish\",\n \"between\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-NO-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-NO-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze cybersecurity tasks to improve efficiency and reliability.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Network Operations\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"network operations\",\n \"analyze\",\n \"tasks\",\n \"improve\",\n \"efficiency\",\n \"reliability\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-NO-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-TS-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how common cyber threats related to network activity exploit system vulnerabilities.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Threats & Security Measures\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"threats & security measures\",\n \"analyze\",\n \"common\",\n \"cyber\",\n \"threats\",\n \"related\",\n \"network\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-TS-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-TS-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate a security threat using the CIA triad, states of data, and types of control.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Threats & Security Measures\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"threats & security measures\",\n \"evaluate\",\n \"security\",\n \"threat\",\n \"triad\",\n \"states\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-TS-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-TS-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how encryption methods in network communication protect privacy and security.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Threats & Security Measures\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"threats & security measures\",\n \"analyze\",\n \"encryption\",\n \"methods\",\n \"network\",\n \"communication\",\n \"protect\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-TS-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-TS-10\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate security measures as part of a layered defense strategy to protect sensitive information.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Threats & Security Measures\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"threats & security measures\",\n \"evaluate\",\n \"security\",\n \"measures\",\n \"part\",\n \"layered\",\n \"defense\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-TS-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-TS-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Design access controls to protect sensitive information.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Threats & Security Measures\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"threats & security measures\",\n \"design\",\n \"access\",\n \"controls\",\n \"protect\",\n \"sensitive\",\n \"information\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-TS-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-TS-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate security risks to determine appropriate risk management strategies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Threats & Security Measures\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"threats & security measures\",\n \"evaluate\",\n \"security\",\n \"risks\",\n \"determine\",\n \"appropriate\",\n \"risk\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-TS-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-TS-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Examine an incident response plan for a real-world scenario.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Threats & Security Measures\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"threats & security measures\",\n \"examine\",\n \"incident\",\n \"response\",\n \"plan\",\n \"realworld\",\n \"scenario\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-TS-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-CP-11\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Explain the importance of cybersecurity policies in protecting organizational assets and mitigating risks.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Cybersecurity Policies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"cybersecurity policies\",\n \"explain\",\n \"importance\",\n \"policies\",\n \"protecting\",\n \"organizational\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-CP-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-CP-12\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Explain key components of effective security policies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Cybersecurity Policies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"cybersecurity policies\",\n \"explain\",\n \"components\",\n \"effective\",\n \"security\",\n \"policies\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-CP-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-CP-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Debate how various regulations impact organizational security policies, procedures, and compliance.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Cybersecurity Policies\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"cybersecurity policies\",\n \"debate\",\n \"various\",\n \"regulations\",\n \"impact\",\n \"organizational\",\n \"security\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-CP-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-PP-13\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the potential consequences of a cybersecurity decision on individuals, organizations, and society.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"professional practice\",\n \"analyze\",\n \"potential\",\n \"consequences\",\n \"decision\",\n \"individuals\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-PP-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-PP-14\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze social engineering techniques and how they exploit human cognitive biases and organizational weaknesses.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"professional practice\",\n \"analyze\",\n \"social\",\n \"engineering\",\n \"techniques\",\n \"they\",\n \"exploit\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-PP-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-CYB-PP-15\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Translate cybersecurity concepts, risks, and solutions clearly to both technical and nontechnical audiences.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"professional practice\",\n \"translate\",\n \"concepts\",\n \"risks\",\n \"solutions\",\n \"clearly\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-CYB-PP-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-PP-10\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the benefits, risks, and ethical implications of AI in cybersecurity.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"professional practice\",\n \"analyze\",\n \"benefits\",\n \"risks\",\n \"ethical\",\n \"implications\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-PP-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-PP-11\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze cybersecurity vulnerabilities and incidents to inform responsible disclosure practices.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"professional practice\",\n \"analyze\",\n \"vulnerabilities\",\n \"incidents\",\n \"inform\",\n \"responsible\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-PP-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-CYB-PP-12\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create documentation of cybersecurity processes and decisions that supports team coordination and accountability.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Cybersecurity\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"cybersecurity\",\n \"professional practice\",\n \"create\",\n \"documentation\",\n \"processes\",\n \"decisions\",\n \"supports\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-CYB-PP-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-CC-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply exploratory data analysis techniques to non-hierarchical quantitative data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Creation & Curation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data science\",\n \"creation & curation\",\n \"apply\",\n \"exploratory\",\n \"data\",\n \"analysis\",\n \"techniques\",\n \"nonhierarchical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-CC-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-CC-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Interpret metadata when using data collected by others.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Creation & Curation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"data science\",\n \"creation & curation\",\n \"interpret\",\n \"metadata\",\n \"data\",\n \"collected\",\n \"others\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-CC-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-CC-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a program to manipulate and transform data to prepare for analysis.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Creation & Curation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data science\",\n \"creation & curation\",\n \"develop\",\n \"program\",\n \"manipulate\",\n \"transform\",\n \"data\",\n \"prepare\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-CC-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-CC-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply exploratory data analysis techniques to a hierarchical structured data source.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Creation & Curation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data science\",\n \"creation & curation\",\n \"apply\",\n \"exploratory\",\n \"data\",\n \"analysis\",\n \"techniques\",\n \"hierarchical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-CC-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-CC-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Document the origin, structure, and preparation of a dataset to support clarity and reproducibility.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Creation & Curation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"data science\",\n \"creation & curation\",\n \"document\",\n \"origin\",\n \"structure\",\n \"preparation\",\n \"dataset\",\n \"support\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-CC-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-CC-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a program to collect and integrate data from multiple sources.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Creation & Curation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data science\",\n \"creation & curation\",\n \"develop\",\n \"program\",\n \"collect\",\n \"integrate\",\n \"data\",\n \"multiple\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-CC-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-CC-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Choose appropriate data to collect for a data science project based on available tools, skills, and project goals.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Creation & Curation\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data science\",\n \"creation & curation\",\n \"choose\",\n \"appropriate\",\n \"data\",\n \"collect\",\n \"science\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-CC-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-AM-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply appropriate analytic and visualization techniques for categorical and quantitative data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Analysis & Modeling Techniques\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data science\",\n \"analysis & modeling techniques\",\n \"apply\",\n \"appropriate\",\n \"analytic\",\n \"visualization\",\n \"techniques\",\n \"categorical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-AM-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-AM-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Examine missing data and its impact on data analysis.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Analysis & Modeling Techniques\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data science\",\n \"analysis & modeling techniques\",\n \"examine\",\n \"missing\",\n \"data\",\n \"impact\",\n \"analysis\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-AM-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-AM-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze structured categorical and/or quantitative datasets, using computational tools and libraries.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Analysis & Modeling Techniques\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data science\",\n \"analysis & modeling techniques\",\n \"analyze\",\n \"structured\",\n \"categorical\",\n \"andor\",\n \"quantitative\",\n \"datasets\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-AM-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-AM-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Build a model to explain relationships, make predictions, and evaluate the influence of different variables.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Analysis & Modeling Techniques\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"data science\",\n \"analysis & modeling techniques\",\n \"build\",\n \"model\",\n \"explain\",\n \"relationships\",\n \"predictions\",\n \"evaluate\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-AM-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-AM-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate strategies for handling missing data.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Analysis & Modeling Techniques\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data science\",\n \"analysis & modeling techniques\",\n \"evaluate\",\n \"strategies\",\n \"handling\",\n \"missing\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-AM-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-AM-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze an unstructured, mixed-type, or high-dimensional dataset using computational tools and libraries.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Analysis & Modeling Techniques\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data science\",\n \"analysis & modeling techniques\",\n \"analyze\",\n \"unstructured\",\n \"mixedtype\",\n \"highdimensional\",\n \"dataset\",\n \"computational\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-AM-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-MI-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Interpret the results of a data analysis to explain patterns, anomalies, and trends, and connect them back to the original problem or research question.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Model Interpretation & Reasoning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"data science\",\n \"model interpretation & reasoning\",\n \"interpret\",\n \"results\",\n \"data\",\n \"analysis\",\n \"explain\",\n \"patterns\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-MI-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-MI-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Explain the appropriateness of predictive models for the specific problem being addressed.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Model Interpretation & Reasoning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"data science\",\n \"model interpretation & reasoning\",\n \"explain\",\n \"appropriateness\",\n \"predictive\",\n \"models\",\n \"specific\",\n \"problem\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-MI-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-MI-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Explain how dataset size affects model stability and performance.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Model Interpretation & Reasoning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"data science\",\n \"model interpretation & reasoning\",\n \"explain\",\n \"dataset\",\n \"size\",\n \"affects\",\n \"model\",\n \"stability\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-MI-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-MI-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the performance of models using established metrics.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Model Interpretation & Reasoning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data science\",\n \"model interpretation & reasoning\",\n \"evaluate\",\n \"performance\",\n \"models\",\n \"established\",\n \"metrics\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-MI-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-MI-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the trade-offs between interpretability, accuracy, and generalizability as they relate to model complexity.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Model Interpretation & Reasoning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data science\",\n \"model interpretation & reasoning\",\n \"analyze\",\n \"tradeoffs\",\n \"between\",\n \"interpretability\",\n \"accuracy\",\n \"generalizability\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-MI-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-MI-10\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how adding or removing variables affects model behavior and performance.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Model Interpretation & Reasoning\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data science\",\n \"model interpretation & reasoning\",\n \"analyze\",\n \"adding\",\n \"removing\",\n \"variables\",\n \"affects\",\n \"model\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-MI-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-VZ-10\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a data visualization that communicates key findings to diverse audiences.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Visualization\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data science\",\n \"visualization\",\n \"create\",\n \"data\",\n \"communicates\",\n \"findings\",\n \"diverse\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-VZ-10\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-VZ-11\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze how graphical conventions in data visualizations support accurate interpretation and how breaking conventions can mislead.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Visualization\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"data science\",\n \"visualization\",\n \"analyze\",\n \"graphical\",\n \"conventions\",\n \"data\",\n \"visualizations\",\n \"support\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-VZ-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-VZ-11\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a visualization that accurately represents data and avoids misleading design choices.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Visualization\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"data science\",\n \"visualization\",\n \"create\",\n \"accurately\",\n \"represents\",\n \"data\",\n \"avoids\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-VZ-11\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-VZ-12\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Critique a data visualization for misleading elements and their role in spreading misinformation.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Visualization\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data science\",\n \"visualization\",\n \"critique\",\n \"data\",\n \"misleading\",\n \"elements\",\n \"role\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-VZ-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-PP-12\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply ethical principles to data collection, analysis, and communication to promote privacy, transparency, and accountability.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"data science\",\n \"professional practice\",\n \"apply\",\n \"ethical\",\n \"principles\",\n \"data\",\n \"collection\",\n \"analysis\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-PP-12\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-PP-13\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Assess how data collection and use may impact marginalized and underrepresented groups.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data science\",\n \"professional practice\",\n \"assess\",\n \"data\",\n \"collection\",\n \"impact\",\n \"marginalized\",\n \"underrepresented\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-PP-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-DSC-PP-14\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Document data analysis results in a format appropriate for an audience with diverse backgrounds and perspectives.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"data science\",\n \"professional practice\",\n \"document\",\n \"data\",\n \"analysis\",\n \"results\",\n \"format\",\n \"appropriate\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-DSC-PP-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-PP-13\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate ethical, legal, and social considerations when working with large-scale datasets, predictive models, and emerging technologies.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data science\",\n \"professional practice\",\n \"evaluate\",\n \"ethical\",\n \"legal\",\n \"social\",\n \"considerations\",\n \"working\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-PP-13\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-PP-14\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate protective measures in data collection, usage, and governance for privacy, security, and fairness.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"data science\",\n \"professional practice\",\n \"evaluate\",\n \"protective\",\n \"measures\",\n \"data\",\n \"collection\",\n \"usage\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-PP-14\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-DSC-PP-15\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Translate technical results for diverse audiences in professional communication artifacts.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Data Science\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"data science\",\n \"professional practice\",\n \"translate\",\n \"technical\",\n \"results\",\n \"diverse\",\n \"audiences\",\n \"professional\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-DSC-PP-15\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-DD-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the fundamental components of a game, including players, rules, game mechanics, and outcomes.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"game development\",\n \"design & development\",\n \"analyze\",\n \"fundamental\",\n \"components\",\n \"game\",\n \"including\",\n \"players\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-DD-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-DD-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a storyboard to plan and communicate a game's narrative and interactive experience.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"game development\",\n \"design & development\",\n \"create\",\n \"storyboard\",\n \"plan\",\n \"communicate\",\n \"games\",\n \"narrative\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-DD-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-DD-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop an interactive experience to support gameplay.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"game development\",\n \"design & development\",\n \"develop\",\n \"interactive\",\n \"experience\",\n \"support\",\n \"gameplay\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-DD-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-DD-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Adapt rule-based logic to improve control of game agents or systems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Remember\"\n },\n \"keywords\": [\n \"game development\",\n \"design & development\",\n \"adapt\",\n \"rulebased\",\n \"logic\",\n \"improve\",\n \"control\",\n \"game\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-DD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-GMD-DD-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Justify the use of responsible design principles in developing an engaging, meaningful game experience.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"game development\",\n \"design & development\",\n \"justify\",\n \"responsible\",\n \"design\",\n \"principles\",\n \"developing\",\n \"engaging\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-GMD-DD-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-GMD-DD-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a system that programmatically controls 2D or 3D animation states based on game logic and player interactions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"game development\",\n \"design & development\",\n \"develop\",\n \"system\",\n \"programmatically\",\n \"controls\",\n \"animation\",\n \"states\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-GMD-DD-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-GMD-DD-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Construct in-game artificial intelligence to control NPC behavior.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"game development\",\n \"design & development\",\n \"construct\",\n \"ingame\",\n \"artificial\",\n \"intelligence\",\n \"control\",\n \"behavior\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-GMD-DD-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-PX-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a user-friendly interface for a game, considering accessibility, usability, and aesthetics.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Player Experience\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"game development\",\n \"player experience\",\n \"create\",\n \"userfriendly\",\n \"interface\",\n \"game\",\n \"considering\",\n \"accessibility\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-PX-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-PX-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Optimize basic game usability through user testing and identifying actionable design revisions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Player Experience\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"game development\",\n \"player experience\",\n \"optimize\",\n \"basic\",\n \"game\",\n \"usability\",\n \"through\",\n \"user\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-PX-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-GMD-PX-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate game interactions using diverse input devices to enhance immersion and player experience.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Player Experience\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"game development\",\n \"player experience\",\n \"evaluate\",\n \"game\",\n \"interactions\",\n \"diverse\",\n \"input\",\n \"devices\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-GMD-PX-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-GMD-PX-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate two versions of a game using defined metrics to determine which performs better.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Player Experience\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"game development\",\n \"player experience\",\n \"evaluate\",\n \"versions\",\n \"game\",\n \"defined\",\n \"metrics\",\n \"determine\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-GMD-PX-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-AR-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Examine the key architectural features of computing hardware and their implications for game development.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Architecture\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"game development\",\n \"architecture\",\n \"examine\",\n \"architectural\",\n \"features\",\n \"computing\",\n \"hardware\",\n \"implications\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-AR-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-GMD-AR-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze game system architectures that support scalability, maintainability, and performance.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Architecture\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"game development\",\n \"architecture\",\n \"analyze\",\n \"game\",\n \"system\",\n \"architectures\",\n \"support\",\n \"scalability\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-GMD-AR-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-PP-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze the ethical implications of copyright and intellectual property in game development.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"game development\",\n \"professional practice\",\n \"analyze\",\n \"ethical\",\n \"implications\",\n \"copyright\",\n \"intellectual\",\n \"property\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-PP-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-GMD-PP-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a game project collaboratively within a diverse team.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"game development\",\n \"professional practice\",\n \"develop\",\n \"game\",\n \"project\",\n \"collaboratively\",\n \"within\",\n \"diverse\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-GMD-PP-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-GMD-PP-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a game utilizing ethical principles in the design and development process.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"game development\",\n \"professional practice\",\n \"create\",\n \"game\",\n \"utilizing\",\n \"ethical\",\n \"principles\",\n \"design\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-GMD-PP-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-GMD-PP-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Collaborate effectively in a project team by defining and executing assigned roles, communicating clearly, and managing shared resources to deliver a game project.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Game Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"game development\",\n \"professional practice\",\n \"collaborate\",\n \"effectively\",\n \"project\",\n \"team\",\n \"defining\",\n \"executing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-GMD-PP-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-PHY-HC-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Construct an electrical circuit to power and control a physical computing device.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Circuit Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"physical computing\",\n \"hardware & circuit design\",\n \"construct\",\n \"electrical\",\n \"circuit\",\n \"power\",\n \"control\",\n \"physical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-PHY-HC-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-PHY-HC-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop an electromechanical system using a CAD tool for design and testing.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Hardware & Circuit Design\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"physical computing\",\n \"hardware & circuit design\",\n \"develop\",\n \"electromechanical\",\n \"system\",\n \"tool\",\n \"design\",\n \"testing\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-PHY-HC-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-PHY-IO-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Integrate sensors, actuators, and peripherals into a physical computing system.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Inputs & Outputs\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"physical computing\",\n \"inputs & outputs\",\n \"integrate\",\n \"sensors\",\n \"actuators\",\n \"peripherals\",\n \"into\",\n \"physical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-PHY-IO-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-PHY-IO-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Design a closed-loop feedback control system to meet a desired outcome using varying sensor types.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Inputs & Outputs\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"physical computing\",\n \"inputs & outputs\",\n \"design\",\n \"closedloop\",\n \"feedback\",\n \"control\",\n \"system\",\n \"meet\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-PHY-IO-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-PHY-DD-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop software to control a physical device using an iterative design process.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"physical computing\",\n \"design & development\",\n \"develop\",\n \"software\",\n \"control\",\n \"physical\",\n \"device\",\n \"iterative\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-PHY-DD-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-PHY-DD-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop an application that extends functionality and user engagement with physical devices.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"physical computing\",\n \"design & development\",\n \"develop\",\n \"application\",\n \"extends\",\n \"functionality\",\n \"user\",\n \"engagement\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-PHY-DD-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-PHY-CI-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Use IoT devices to collect sensor data and transmit it locally using device-to-device or device-to-gateway communication.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Connectivity & Internet of Things\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"physical computing\",\n \"connectivity & internet of things\",\n \"devices\",\n \"collect\",\n \"sensor\",\n \"data\",\n \"transmit\",\n \"locally\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-PHY-CI-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-PHY-CI-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Implement IoT communication by connecting physical devices with protocols, applying security practices.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Connectivity & Internet of Things\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"physical computing\",\n \"connectivity & internet of things\",\n \"implement\",\n \"communication\",\n \"connecting\",\n \"physical\",\n \"devices\",\n \"protocols\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-PHY-CI-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-PHY-CI-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop an IoT system to manage the collection and transmission of data and enable remote monitoring and control of a physical system.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Connectivity & Internet of Things\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"physical computing\",\n \"connectivity & internet of things\",\n \"develop\",\n \"system\",\n \"manage\",\n \"collection\",\n \"transmission\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-PHY-CI-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-PHY-CI-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop an embedded network, evaluating trade-offs among network protocols, security measures, and scalability.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Connectivity & Internet of Things\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"physical computing\",\n \"connectivity & internet of things\",\n \"develop\",\n \"embedded\",\n \"network\",\n \"evaluating\",\n \"tradeoffs\",\n \"among\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-PHY-CI-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-PHY-PP-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Use a version control system to coordinate development in a physical computing project.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"physical computing\",\n \"professional practice\",\n \"version\",\n \"control\",\n \"system\",\n \"coordinate\",\n \"development\",\n \"physical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-PHY-PP-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-PHY-PP-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate social, technical, and sociotechnical impacts of a physical computing system.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"physical computing\",\n \"professional practice\",\n \"evaluate\",\n \"social\",\n \"technical\",\n \"sociotechnical\",\n \"impacts\",\n \"physical\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-PHY-PP-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-PHY-PP-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the security implications of a physical computing system, including data privacy, unauthorized access, and potential vulnerabilities.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"physical computing\",\n \"professional practice\",\n \"evaluate\",\n \"security\",\n \"implications\",\n \"physical\",\n \"computing\",\n \"system\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-PHY-PP-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-PHY-PP-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply a project management methodology to collaboratively design, develop, and test a physical computing project.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"physical computing\",\n \"professional practice\",\n \"apply\",\n \"project\",\n \"management\",\n \"methodology\",\n \"collaboratively\",\n \"design\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-PHY-PP-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-PHY-PP-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate how physical computing technologies shape social processes, communities, power, and equity in global society.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"physical computing\",\n \"professional practice\",\n \"evaluate\",\n \"physical\",\n \"computing\",\n \"technologies\",\n \"shape\",\n \"social\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-PHY-PP-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-PHY-PP-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a physical computing solution for diverse users using the engineering design process.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Physical Computing\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"physical computing\",\n \"professional practice\",\n \"develop\",\n \"physical\",\n \"computing\",\n \"solution\",\n \"diverse\",\n \"users\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-PHY-PP-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-SWD-DD-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Implement linear data structures to organize and access collections of data when solving computational problems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"design & development\",\n \"implement\",\n \"linear\",\n \"data\",\n \"structures\",\n \"organize\",\n \"access\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-SWD-DD-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-SWD-DD-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Design software that accounts for complexity through abstraction.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"software development\",\n \"design & development\",\n \"design\",\n \"software\",\n \"accounts\",\n \"complexity\",\n \"through\",\n \"abstraction\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-SWD-DD-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-SWD-DD-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Use integrated development environment (IDE) features to streamline software development, including code editing, debugging, version control, and project management.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"design & development\",\n \"integrated\",\n \"development\",\n \"environment\",\n \"features\",\n \"streamline\",\n \"software\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-SWD-DD-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-DD-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply associative and hierarchical data structures to solve computational problems.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"design & development\",\n \"apply\",\n \"associative\",\n \"hierarchical\",\n \"data\",\n \"structures\",\n \"solve\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-DD-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-DD-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a prototype using diverse user personas and user journey maps to guide design decisions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"software development\",\n \"design & development\",\n \"develop\",\n \"prototype\",\n \"diverse\",\n \"user\",\n \"personas\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-DD-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-DD-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Develop a project in iterative cycles, documenting changes and the rationale for each cycle.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"software development\",\n \"design & development\",\n \"develop\",\n \"project\",\n \"iterative\",\n \"cycles\",\n \"documenting\",\n \"changes\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-DD-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-DD-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Modify an existing algorithm to improve efficiency, considering factors such as data structures and algorithmic paradigms.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Design & Development\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"design & development\",\n \"modify\",\n \"existing\",\n \"algorithm\",\n \"improve\",\n \"efficiency\",\n \"considering\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-DD-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-SWD-UX-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Refine a user interface design using accessibility and responsive design tools.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"User Experience\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"user experience\",\n \"refine\",\n \"user\",\n \"interface\",\n \"design\",\n \"accessibility\",\n \"responsive\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-SWD-UX-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-SWD-UX-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create software that serves intended users and contexts using human- centered design principles.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"User Experience\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"software development\",\n \"user experience\",\n \"create\",\n \"software\",\n \"serves\",\n \"intended\",\n \"users\",\n \"contexts\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-SWD-UX-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-UX-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Evaluate the user experience to improve usability.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"User Experience\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"software development\",\n \"user experience\",\n \"evaluate\",\n \"user\",\n \"experience\",\n \"improve\",\n \"usability\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-UX-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-UX-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Create a user-friendly, accessible, and responsively designed interface.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"User Experience\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"software development\",\n \"user experience\",\n \"create\",\n \"userfriendly\",\n \"accessible\",\n \"responsively\",\n \"designed\",\n \"interface\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-UX-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-SWD-TR-06\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Use AI-assisted IDE tools or features to understand unfamiliar code and identify errors during debugging.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"testing & refining\",\n \"aiassisted\",\n \"tools\",\n \"features\",\n \"understand\",\n \"unfamiliar\",\n \"code\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-SWD-TR-06\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-SWD-TR-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Design a test plan that exercises program functionality, including edge cases, error conditions, and varied user inputs.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"software development\",\n \"testing & refining\",\n \"design\",\n \"test\",\n \"plan\",\n \"exercises\",\n \"program\",\n \"functionality\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-SWD-TR-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-TR-07\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Use an IDE to test and refine a complex software project.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"testing & refining\",\n \"test\",\n \"refine\",\n \"complex\",\n \"software\",\n \"project\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-TR-07\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-TR-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Debug a complex software project to identify, isolate, and fix errors.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Testing & Refining\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"testing & refining\",\n \"debug\",\n \"complex\",\n \"software\",\n \"project\",\n \"identify\",\n \"isolate\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-TR-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-SWD-PP-08\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Collaborate to develop software that reflects diverse perspectives.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"professional practice\",\n \"collaborate\",\n \"develop\",\n \"software\",\n \"reflects\",\n \"diverse\",\n \"perspectives\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-SWD-PP-08\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S2-SWD-PP-09\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Apply an industry-standard software development process to plan and deliver a project while prioritizing equity and justice.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"Software Development\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"Professional Practice\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"software development\",\n \"professional practice\",\n \"apply\",\n \"industrystandard\",\n \"software\",\n \"development\",\n \"process\",\n \"plan\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S2-SWD-PP-09\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-XCS-XC-01\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Explain connections between CS concepts and practices and those from a non-CS discipline (X).\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"X+CS\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"X+CS\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Understand\"\n },\n \"keywords\": [\n \"x+cs\",\n \"explain\",\n \"connections\",\n \"between\",\n \"concepts\",\n \"practices\",\n \"those\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-XCS-XC-01\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-XCS-XC-02\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Formulate a computational solution to a problem in a non-CS discipline (X) using computational thinking.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"X+CS\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"X+CS\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"x+cs\",\n \"formulate\",\n \"computational\",\n \"solution\",\n \"problem\",\n \"noncs\",\n \"discipline\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-XCS-XC-02\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-XCS-XC-03\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Analyze a computer science technology or approach used in a non-CS discipline (X).\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"X+CS\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"X+CS\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"x+cs\",\n \"analyze\",\n \"computer\",\n \"science\",\n \"technology\",\n \"approach\",\n \"used\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-XCS-XC-03\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-XCS-XC-04\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Model relationships within a non-CS discipline using data, visualizations, and computational methods.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"X+CS\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"X+CS\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"x+cs\",\n \"model\",\n \"relationships\",\n \"within\",\n \"noncs\",\n \"discipline\",\n \"data\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-XCS-XC-04\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"S1-XCS-XC-05\",\n \"gradeBand\": [\n 9,\n 12\n ],\n \"texts\": {\n \"en\": \"Assess how well an algorithm solves problems within a non-CS discipline (X) by evaluating its accuracy, efficiency, and relevance to the intended goal.\"\n },\n \"classifications\": [\n {\n \"axis\": \"concept\",\n \"value\": \"X+CS\"\n },\n {\n \"axis\": \"subconcept\",\n \"value\": \"X+CS\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"x+cs\",\n \"assess\",\n \"well\",\n \"algorithm\",\n \"solves\",\n \"problems\",\n \"within\"\n ],\n \"sourceRef\": \"2026 CSTA PK–12 Standards, S1-XCS-XC-05\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n }\n ],\n \"mappings\": []\n}","{\n \"manifest\": {\n \"id\": \"csta-k12-2017\",\n \"name\": \"CSTA K-12 Computer Science Standards (2017)\",\n \"specVersion\": \"1.0\",\n \"contentVersion\": \"2017.1\",\n \"subject\": \"computing\",\n \"languages\": [\n \"en\"\n ],\n \"gradeModel\": {\n \"type\": \"grades\",\n \"range\": [\n 3,\n 12\n ]\n },\n \"provenance\": {\n \"sourceRef\": \"CSTA K-12 Computer Science Standards, Revised 2017 - csteachers.org\",\n \"sourceUrl\": \"https://www.csteachers.org/page/standards\",\n \"license\": \"CC BY-NC-SA 4.0 (cited verbatim for alignment use)\",\n \"importedBy\": \"platform\",\n \"importedAt\": \"2026-08-29T00:00:00.000Z\"\n },\n \"trust\": \"verified\"\n },\n \"statements\": [\n {\n \"id\": \"1B-AP-08\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Demonstrate that programs can be combined with other programs to create new solutions.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"combine\",\n \"programs\",\n \"composition\",\n \"reuse\",\n \"modules\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-AP-10\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Create programs that include sequences, events, loops, and conditionals.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\",\n \"knowledge\": \"PROCEDURAL\"\n },\n \"keywords\": [\n \"sequence\",\n \"events\",\n \"loops\",\n \"conditionals\",\n \"control structures\",\n \"for\",\n \"while\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-AP-11\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Analyze\"\n },\n \"keywords\": [\n \"decomposition\",\n \"subproblems\",\n \"problem breakdown\",\n \"algorithm\",\n \"divide\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-AP-12\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Modify, remix, or include portions of other programs in one's own work to develop something new or add more advanced features.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Create\"\n },\n \"keywords\": [\n \"remix\",\n \"modify\",\n \"iterate\",\n \"extend programs\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-AP-15\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Test and debug (identify and fix errors) a program or algorithm to ensure it runs as intended.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Algorithms & Programming\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Evaluate\"\n },\n \"keywords\": [\n \"test\",\n \"debug\",\n \"errors\",\n \"troubleshooting\",\n \"fix\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Algorithms & Programming\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n },\n {\n \"id\": \"1B-IC-21\",\n \"gradeBand\": [\n 6,\n 8\n ],\n \"texts\": {\n \"en\": \"Use public domain or creative commons media, and refrain from copying or using material created by others without permission.\"\n },\n \"classifications\": [\n {\n \"axis\": \"strand\",\n \"value\": \"Impacts of Computing\"\n }\n ],\n \"bloomHint\": {\n \"process\": \"Apply\"\n },\n \"keywords\": [\n \"copyright\",\n \"creative commons\",\n \"public domain\",\n \"digital citizenship\",\n \"license\"\n ],\n \"sourceRef\": \"CSTA K-12 2017, Level 1B (Grades 6-8), Impacts of Computing\",\n \"provenance\": {\n \"method\": \"source_official\"\n }\n }\n ],\n \"mappings\": [\n {\n \"statementId\": \"1B-AP-10\",\n \"targetRef\": \"ontora:FOR_LOOP\",\n \"kind\": \"covers\",\n \"confidence\": 0.85,\n \"provenance\": {\n \"method\": \"human\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n },\n {\n \"statementId\": \"1B-AP-10\",\n \"targetRef\": \"ontora:WHILE_LOOP\",\n \"kind\": \"covers\",\n \"confidence\": 0.85,\n \"provenance\": {\n \"method\": \"human\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n },\n {\n \"statementId\": \"1B-AP-11\",\n \"targetRef\": \"ontora:PROBLEM_DECOMPOSITION\",\n \"kind\": \"covers\",\n \"confidence\": 0.95,\n \"provenance\": {\n \"method\": \"human\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n },\n {\n \"statementId\": \"1B-AP-08\",\n \"targetRef\": \"ontora:EVENT_BASED_PROGRAMMING\",\n \"kind\": \"partial\",\n \"confidence\": 0.7,\n \"provenance\": {\n \"method\": \"ai_draft\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n },\n {\n \"statementId\": \"1B-AP-15\",\n \"targetRef\": \"ontora:TROUBLESHOOTING_STEPS\",\n \"kind\": \"covers\",\n \"confidence\": 0.9,\n \"provenance\": {\n \"method\": \"ai_draft\",\n \"reviewedBy\": \"thanh01pmt\"\n }\n }\n ]\n}\n","{\n \"manifest\": {\n \"id\": \"acm-ieee-cs2023\",\n \"name\": \"ACM/IEEE-CS/AAAI Computer Science Curricula 2023 (CS2023)\",\n \"specVersion\": \"1.0\",\n \"contentVersion\": \"2023.1\",\n \"subject\": \"computing\",\n \"languages\": [\"en\"],\n \"gradeModel\": {\n \"type\": \"grades\",\n \"range\": [9, 16]\n },\n \"provenance\": {\n \"sourceRef\": \"ACM/IEEE-CS/AAAI Computer Science Curricula 2023 - cs2023.org\",\n \"sourceUrl\": \"https://cs2023.org\",\n \"license\": \"ACM / IEEE Computer Society (cited verbatim for curriculum alignment)\",\n \"importedBy\": \"platform\",\n \"importedAt\": \"2026-09-11T00:00:00.000Z\"\n },\n \"trust\": \"verified\"\n },\n \"statements\": [\n {\n \"id\": \"CS2023-SDF-01\",\n \"gradeBand\": [9, 14],\n \"texts\": {\n \"en\": \"Design, implement, test, and debug programs using basic computation, standard conditional and iterative structures, and functions.\"\n },\n \"classifications\": [\n { \"axis\": \"Knowledge Area\", \"value\": \"Software Development Fundamentals (SDF)\" },\n { \"axis\": \"Core Tier\", \"value\": \"Tier-1 Core\" }\n ],\n \"bloomHint\": { \"process\": \"Apply\" },\n \"keywords\": [\"algorithms\", \"control structures\", \"functions\", \"variables\", \"debugging\", \"programming\", \"implementation\"],\n \"sourceRef\": \"CS2023, Software Development Fundamentals, Program Construction\",\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"id\": \"CS2023-SDF-02\",\n \"gradeBand\": [9, 14],\n \"texts\": {\n \"en\": \"Apply fundamental data structures (arrays, lists, stacks, queues, hash maps) to represent collections of data and solve algorithmic problems.\"\n },\n \"classifications\": [\n { \"axis\": \"Knowledge Area\", \"value\": \"Software Development Fundamentals (SDF)\" },\n { \"axis\": \"Core Tier\", \"value\": \"Tier-1 Core\" }\n ],\n \"bloomHint\": { \"process\": \"Apply\" },\n \"keywords\": [\"data structures\", \"arrays\", \"lists\", \"hash maps\", \"collections\", \"stacks\", \"queues\"],\n \"sourceRef\": \"CS2023, Software Development Fundamentals, Fundamental Data Structures\",\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"id\": \"CS2023-AL-01\",\n \"gradeBand\": [10, 16],\n \"texts\": {\n \"en\": \"Analyze and compare the time and space complexity of fundamental algorithms using asymptotic notation (Big-O).\"\n },\n \"classifications\": [\n { \"axis\": \"Knowledge Area\", \"value\": \"Algorithms and Complexity (AL)\" },\n { \"axis\": \"Core Tier\", \"value\": \"Tier-1 Core\" }\n ],\n \"bloomHint\": { \"process\": \"Analyze\" },\n \"keywords\": [\"complexity\", \"big-o\", \"efficiency\", \"sorting\", \"searching\", \"asymptotic\", \"runtime\"],\n \"sourceRef\": \"CS2023, Algorithms and Complexity, Basic Analysis\",\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"id\": \"CS2023-SE-01\",\n \"gradeBand\": [9, 16],\n \"texts\": {\n \"en\": \"Decompose complex problems into modular software components applying principles of abstraction, encapsulation, and separation of concerns.\"\n },\n \"classifications\": [\n { \"axis\": \"Knowledge Area\", \"value\": \"Software Engineering (SE)\" },\n { \"axis\": \"Core Tier\", \"value\": \"Tier-1 Core\" }\n ],\n \"bloomHint\": { \"process\": \"Create\" },\n \"keywords\": [\"modularity\", \"abstraction\", \"software design\", \"refactoring\", \"encapsulation\", \"architecture\"],\n \"sourceRef\": \"CS2023, Software Engineering, Software Design and Architecture\",\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"id\": \"CS2023-SEC-01\",\n \"gradeBand\": [9, 16],\n \"texts\": {\n \"en\": \"Incorporate defensive programming and fundamental cybersecurity principles (least privilege, input validation, secure data handling) into software development.\"\n },\n \"classifications\": [\n { \"axis\": \"Knowledge Area\", \"value\": \"Security (SEC)\" },\n { \"axis\": \"Core Tier\", \"value\": \"Tier-1 Core\" }\n ],\n \"bloomHint\": { \"process\": \"Apply\" },\n \"keywords\": [\"security\", \"defensive programming\", \"input validation\", \"cybersecurity\", \"vulnerabilities\"],\n \"sourceRef\": \"CS2023, Security, Secure Software Development\",\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"id\": \"CS2023-AI-01\",\n \"gradeBand\": [10, 16],\n \"texts\": {\n \"en\": \"Formulate machine learning tasks, prepare training and evaluation datasets, and evaluate model performance using standard metrics.\"\n },\n \"classifications\": [\n { \"axis\": \"Knowledge Area\", \"value\": \"Artificial Intelligence (AI)\" },\n { \"axis\": \"Core Tier\", \"value\": \"Tier-2 Core\" }\n ],\n \"bloomHint\": { \"process\": \"Evaluate\" },\n \"keywords\": [\"artificial intelligence\", \"machine learning\", \"dataset\", \"evaluation\", \"model\", \"accuracy\"],\n \"sourceRef\": \"CS2023, Artificial Intelligence, Machine Learning Fundamentals\",\n \"provenance\": { \"method\": \"source_official\" }\n }\n ],\n \"mappings\": [\n {\n \"statementId\": \"CS2023-SDF-01\",\n \"targetRef\": \"ontora:PROGRAM_CONSTRUCTION\",\n \"kind\": \"covers\",\n \"confidence\": 0.95,\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"statementId\": \"CS2023-SDF-02\",\n \"targetRef\": \"ontora:DATA_STRUCTURES\",\n \"kind\": \"covers\",\n \"confidence\": 0.95,\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"statementId\": \"CS2023-AL-01\",\n \"targetRef\": \"ontora:ALGORITHM_COMPLEXITY\",\n \"kind\": \"covers\",\n \"confidence\": 0.95,\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"statementId\": \"CS2023-SE-01\",\n \"targetRef\": \"ontora:SOFTWARE_ARCHITECTURE\",\n \"kind\": \"covers\",\n \"confidence\": 0.95,\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"statementId\": \"CS2023-SEC-01\",\n \"targetRef\": \"ontora:DEFENSIVE_PROGRAMMING\",\n \"kind\": \"covers\",\n \"confidence\": 0.95,\n \"provenance\": { \"method\": \"source_official\" }\n },\n {\n \"statementId\": \"CS2023-AI-01\",\n \"targetRef\": \"ontora:MACHINE_LEARNING\",\n \"kind\": \"covers\",\n \"confidence\": 0.95,\n \"provenance\": { \"method\": \"source_official\" }\n }\n ]\n}\n","import { FrameworkPackSchema, type FrameworkPack } from './frameworkPackSchema';\n\nimport csta2026 from './data/csta-pk12-2026.json';\nimport csta2017 from './data/csta-k12-2017.json';\nimport acmCs2023 from './data/acm-ieee-cs2023.json';\n\n/**\n * Bundled Standards Packs — dữ liệu chuẩn kèm sẵn trong kit (user chọn trong Composer\n * Project Settings → Gates → Standards Packs; Composer truyền standardsPackIds xuống).\n * Pack mới: thêm file JSON validate theo FrameworkPackSchema vào src/standards/data/ rồi đăng ký aquí.\n */\nconst BUNDLED_PACK_RECORDS: Record<string, unknown> = {\n 'csta-pk12-2026': csta2026,\n 'csta-k12-2017': csta2017,\n 'acm-ieee-cs2023': acmCs2023,\n};\n\n/** Pack ids mà kit đóng gói sẵn (để UI settings hiển thị đúng danh sách khả dụng). */\nexport const BUNDLED_STANDARDS_PACK_IDS: string[] = Object.keys(BUNDLED_PACK_RECORDS).sort();\n\nconst parsedPackCache = new Map<string, FrameworkPack>();\n\n/**\n * Resolve danh sách pack id → FrameworkPack[] đã validate. Id không biết được bỏ qua (log warn),\n * config sai không bao giờ làm pipeline chết.\n */\nexport function resolveStandardsPacks(packIds: string[] | undefined | null): FrameworkPack[] {\n if (!packIds || packIds.length === 0) return [];\n const packs: FrameworkPack[] = [];\n for (const id of packIds) {\n if (parsedPackCache.has(id)) {\n packs.push(parsedPackCache.get(id) as FrameworkPack);\n continue;\n }\n const raw = BUNDLED_PACK_RECORDS[id];\n if (!raw) {\n console.warn(`[standards] pack '${id}' không tồn tại trong kit — bỏ qua.`);\n continue;\n }\n const parsed = FrameworkPackSchema.safeParse(raw);\n if (!parsed.success) {\n console.warn(`[standards] pack '${id}' fail schema — bỏ qua:`, parsed.error.issues[0]?.message);\n continue;\n }\n parsedPackCache.set(id, parsed.data);\n packs.push(parsed.data);\n }\n return packs;\n}\n\n/**\n * Tìm statement theo id (ví dụ \"1B-AP-10\" hoặc \"csta-k12-2017:1B-AP-10\") trong tất cả các pack kèm sẵn.\n */\nexport function findStandardStatement(statementIdOrRef: string): {\n packId: string;\n packTitle: string;\n statementId: string;\n description: string;\n category?: string;\n gradeBand?: string;\n} | null {\n if (!statementIdOrRef) return null;\n const [packPrefix, ...rest] = statementIdOrRef.split(':');\n const targetId = rest.length > 0 ? rest.join(':') : statementIdOrRef;\n const packs = resolveStandardsPacks(BUNDLED_STANDARDS_PACK_IDS);\n\n for (const pack of packs) {\n if (rest.length > 0 && pack.manifest.id !== packPrefix) continue;\n const stmt = pack.statements.find((s) => s.id.toLowerCase() === targetId.toLowerCase());\n if (stmt) {\n const description = stmt.texts['en'] || Object.values(stmt.texts)[0] || '';\n const category = stmt.classifications && stmt.classifications.length > 0\n ? stmt.classifications.map((c) => c.value).join(', ')\n : undefined;\n const gradeBand = Array.isArray(stmt.gradeBand)\n ? (stmt.gradeBand[0] === stmt.gradeBand[1] ? String(stmt.gradeBand[0]) : `${stmt.gradeBand[0]}-${stmt.gradeBand[1]}`)\n : undefined;\n\n return {\n packId: pack.manifest.id,\n packTitle: pack.manifest.name,\n statementId: stmt.id,\n description,\n category,\n gradeBand,\n };\n }\n }\n return null;\n}\n\n/**\n * Biểu thức chính quy phát hiện mã chuẩn giáo dục (CSTA PK–12 2026, CSTA K-12 2017, và ACM/IEEE CS2023).\n */\nexport const STANDARD_REF_REGEX =\n /\\b(?:(?:csta-pk12-2026|csta-k12-2017|acm-ieee-cs2023):)?(?:(?:EK|E[1-5]|MS|HS|S[12])-[A-Z]{3}-[A-Z]{2}-\\d{2}|[1-3][A-B]?-[A-Z]{2}-\\d{2}|CS2023-[A-Z0-9_-]+)\\b/gi;\n\n/**\n * Trích xuất toàn bộ các standard statement ref duy nhất từ văn bản.\n */\nexport function extractStandardRefs(text: string | undefined | null): string[] {\n if (!text) return [];\n const matches = Array.from(text.matchAll(STANDARD_REF_REGEX)).map((m) => m[0]);\n return Array.from(new Set(matches));\n}"]}