prototyyppi 2026.7.26__tar.gz
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.
- prototyyppi-2026.7.26/PKG-INFO +413 -0
- prototyyppi-2026.7.26/README.md +388 -0
- prototyyppi-2026.7.26/prototyyppi/__init__.py +180 -0
- prototyyppi-2026.7.26/prototyyppi/__main__.py +5 -0
- prototyyppi-2026.7.26/prototyyppi/_cli.py +532 -0
- prototyyppi-2026.7.26/prototyyppi/_env.py +298 -0
- prototyyppi-2026.7.26/prototyyppi/_result.py +295 -0
- prototyyppi-2026.7.26/prototyyppi/_url_cache.py +247 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/__init__.py +1 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/__init__.py +125 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/_convert.py +269 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/_validator.py +224 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/build.py +1241 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/cwe/catalog.json +5891 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-01-01.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-01-02.json +96 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-01-03.json +118 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-01-04.json +121 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-01-11.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-01-12.json +108 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-01-13.json +136 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-01-14.json +121 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-02-01.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-02-02.json +93 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-02-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-02-12.json +93 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-03-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-03-02.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-03-11.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-03-12.json +46 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-04-01.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-04-02.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-04-11.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-04-12.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-05-01.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-06-01.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-06-02.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-06-11.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-07-01.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-07-11.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-08-01.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-08-02.json +68 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-08-11.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-08-12.json +68 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-02.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-03.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-04.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-05.json +106 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-06.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-12.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-13.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-14.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-09-15.json +118 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-10-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-10-11.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-11-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-11-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-01.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-02.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-03.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-04.json +114 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-05.json +124 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-11.json +65 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-12.json +65 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-13.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-14.json +126 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-15.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-12-16.json +146 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-13-01.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-13-11.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-14-01.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-14-11.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-15-01.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-15-02.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-15-11.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-16-01.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-16-11.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-17-01.json +41 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-17-11.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-18-01.json +55 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-18-11.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-01-01.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-01-11.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-02-01.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-02-11.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-03-01.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-03-02.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-03-11.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-03-12.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-04-01.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-04-02.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-04-11.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-04-12.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-05-01.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-05-02.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-05-11.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-19-05-12.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-20-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-20-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-01-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-01-02.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-01-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-01-12.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-02-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-02-11.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-03-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-03-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-04-01.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-04-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-05-01.json +50 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-05-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-06-01.json +69 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-06-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-07-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-07-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-08-01.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-08-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-09-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-21-09-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-22-01.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/informative/oasis_csaf_tc-csaf_2_1-2024-6-3-22-11.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-01-01.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-01-02.json +247 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-01-03.json +141 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-01-03.result.json +31 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-01-11.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-01-12.json +279 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-01-13.json +141 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-01-13.result.json +9 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-02-01.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-03-01.json +55 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-03-02.json +68 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-03-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-03-12.json +97 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-03-13.json +93 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-04-01.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-04-02.json +212 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-04-03.json +171 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-04-03.result.json +23 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-04-11.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-04-12.json +229 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-04-13.json +171 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-04-13.result.json +9 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-05-01.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-01.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-02.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-03.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-04.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-05.json +73 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-06.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-11.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-12.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-13.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-14.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-15.json +73 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-06-16.json +114 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-01.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-02.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-03.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-04.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-05.json +190 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-06.json +190 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-11.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-12.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-13.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-14.json +74 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-15.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-16.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-17.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-07-18.json +172 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-01.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-02.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-03.json +57 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-04.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-05.json +61 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-06.json +63 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-12.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-13.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-14.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-15.json +50 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-16.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-08-17.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-01.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-02.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-03.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-04.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-05.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-12.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-13.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-14.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-15.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-09-16.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-10-01.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-10-02.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-10-03.json +65 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-10-04.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-10-11.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-10-12.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-10-13.json +65 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-10-14.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-01.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-02.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-03.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-04.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-05.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-06.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-11.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-12.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-13.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-14.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-15.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-16.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-17.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-11-18.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-12-01.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-13-01.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-13-02.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-13-11.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-13-12.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-02.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-03.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-04.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-05.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-06.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-07.json +82 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-08.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-09.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-11.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-12.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-13.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-14.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-15.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-16.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-17.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-18.json +82 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-19.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-14-31.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-15-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-15-02.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-15-11.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-15-12.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-02.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-03.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-04.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-05.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-06.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-07.json +82 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-08.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-09.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-11.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-12.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-13.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-14.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-15.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-16.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-17.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-18.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-19.json +82 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-31.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-16-32.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-17-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-18-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-19-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-19-02.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-20-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-21-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-21-02.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-21-03.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-21-11.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-21-12.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-21-13.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-21-14.json +47 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-22-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-23-01.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-24-01.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-24-02.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-24-11.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-24-12.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-25-01.json +57 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-25-11.json +57 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-25-12.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-02.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-03.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-04.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-05.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-06.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-07.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-08.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-11.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-12.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-13.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-26-14.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-01-01.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-02-01.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-03-01.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-03-02.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-03-03.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-03-11.json +46 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-03-12.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-03-13.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-04-01.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-04-02.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-04-03.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-05-01.json +50 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-05-02.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-05-03.json +50 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-06-01.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-06-02.json +61 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-06-03.json +61 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-07-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-08-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-08-02.json +202 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-08-02.result.json +23 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-08-11.json +88 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-08-11.result.json +9 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-08-12.json +204 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-08-12.result.json +9 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-01.json +85 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-02.json +84 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-03.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-04.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-05.json +84 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-06.json +154 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-11.json +88 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-12.json +87 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-13.json +78 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-14.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-15.json +85 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-09-16.json +155 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-10-01.json +79 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-11-01.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-11-02.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-11-03.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-12-01.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-12-11.json +83 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-01.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-02.json +112 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-03.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-04.json +142 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-11.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-12.json +118 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-13.json +118 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-14.json +171 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-15.json +113 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-13-16.json +101 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-14-01.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-14-02.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-14-11.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-14-12.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-15-01.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-15-02.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-15-11.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-15-12.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-16-01.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-16-02.json +46 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-16-11.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-16-12.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-16-13.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-16-14.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-17-01.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-17-02.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-17-03.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-17-04.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-17-05.json +50 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-17-11.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-17-12.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-17-13.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-18-01.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-18-02.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-18-03.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-18-04.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-18-05.json +57 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-18-11.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-18-12.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-18-13.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-19-01.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-19-02.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-19-11.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-19-12.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-27-19-13.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-28-01.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-28-11.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-29-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-29-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-29-12.json +50 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-30-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-30-11.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-02.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-03.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-04.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-05.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-06.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-07.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-08.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-09.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-12.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-31-13.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-32-01.json +55 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-32-11.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-33-01.json +78 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-33-11.json +88 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-34-01.json +224 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-34-02.json +270 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-34-11.json +218 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-35-01.json +65 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-35-02.json +85 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-35-03.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-35-04.json +105 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-35-11.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-35-12.json +84 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-35-13.json +93 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-35-14.json +103 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-36-01.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-36-02.json +101 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-36-03.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-36-04.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-36-11.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-36-12.json +101 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-36-13.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-36-14.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-02.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-03.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-04.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-05.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-06.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-07.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-08.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-09.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-11.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-12.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-13.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-14.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-15.json +38 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-16.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-37-20.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-01.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-02.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-03.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-04.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-11.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-12.json +35 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-13.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-14.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-38-15.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-39-01.json +35 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-39-02.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-39-11.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-39-12.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-40-01.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-40-02.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-40-11.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-40-12.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-40-13.json +35 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-40-14.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-41-01.json +35 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-41-02.json +35 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-41-03.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-41-04.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-41-11.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-41-12.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-42-01.json +46 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-42-02.json +63 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-42-11.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-42-12.json +63 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-43-01.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-43-02.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-43-11.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-43-12.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-43-13.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-44-01.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-44-02.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-44-11.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-44-12.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-44-13.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-45-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-45-02.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-45-03.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-45-11.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-45-12.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-45-13.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-45-14.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-46-01.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-46-02.json +73 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-46-11.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-46-12.json +75 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-01.json +73 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-02.json +78 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-03.json +78 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-04.json +115 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-05.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-06.json +117 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-11.json +73 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-12.json +79 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-13.json +78 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-14.json +116 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-47-15.json +78 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-01.json +74 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-02.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-03.json +83 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-04.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-05.json +75 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-06.json +83 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-07.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-08.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-09.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-11.json +74 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-12.json +79 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-13.json +83 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-14.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-15.json +75 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-16.json +83 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-17.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-18.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-19.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-21.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-48-31.json +72 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-49-01.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-49-02.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-49-03.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-49-11.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-49-12.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-49-13.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-02.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-03.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-04.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-05.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-06.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-12.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-13.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-14.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-15.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-50-16.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-51-01.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-51-02.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-51-03.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-51-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-51-12.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-51-13.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-52-01.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-52-02.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-52-11.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-52-12.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-53-01.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-53-02.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-53-11.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-53-12.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-01.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-02.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-03.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-04.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-05.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-06.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-07.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-08.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-11.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-12.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-13.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-54-14.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-55-01.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-55-02.json +41 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-55-11.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-55-12.json +41 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-01.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-02.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-03.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-04.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-05.json +177 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-11.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-12.json +73 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-13.json +88 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-14.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-15.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-16.json +81 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-17.json +79 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-56-18.json +153 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-57-01.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-57-02.json +218 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-57-03.json +184 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-57-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-57-12.json +218 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-57-13.json +166 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-58-01.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-58-11.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-59-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-59-02.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-59-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-59-12.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-59-13.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-01-01.json +41 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-01-02.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-01-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-01-12.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-02-01.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-02-02.json +46 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-02-11.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-02-12.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-03-01.json +50 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-03-02.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-03-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-60-03-12.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-61-01.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-61-02.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-61-11.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-61-12.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/mandatory/oasis_csaf_tc-csaf_2_1-2024-6-1-61-13.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-01-01.json +40 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-01-11.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-02-01.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-03-01.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-04-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-05-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-05-02.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-05-11.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-05-12.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-06-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-06-02.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-06-03.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-06-11.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-06-12.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-06-13.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-07-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-08-01.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-08-02.json +57 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-09-01.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-09-02.json +57 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-11-01.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-11-02.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-11-03.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-11-11.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-11-12.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-11-13.json +39 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-12-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-13-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-01.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-02.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-03.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-04.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-05.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-06.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-07.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-08.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-11.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-14-12.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-15-01.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-15-02.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-15-11.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-16-01.json +49 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-16-02.json +65 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-16-11.json +54 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-17-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-17-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-18-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-18-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-01.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-02.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-03.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-04.json +63 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-05.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-06.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-07.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-08.json +69 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-11.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-12.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-13.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-14.json +63 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-15.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-16.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-17.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-18.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-19-19.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-20-01.json +60 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-20-02.json +60 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-20-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-20-12.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-21-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-21-02.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-21-03.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-21-04.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-21-05.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-21-11.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-21-12.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-21-13.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-22-01.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-22-02.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-22-03.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-22-04.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-22-11.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-22-12.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-23-01.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-23-02.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-23-03.json +61 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-23-11.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-23-12.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-23-13.json +61 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-24-01.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-24-02.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-24-03.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-24-04.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-24-11.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-24-12.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-24-13.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-24-14.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-25-01.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-25-02.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-25-03.json +48 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-25-04.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-25-11.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-25-12.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-25-13.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-25-14.json +66 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-26-01.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-26-02.json +48 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-26-03.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-26-11.json +43 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-26-12.json +48 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-26-13.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-27-01.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-27-02.json +100 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-27-03.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-27-11.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-27-12.json +100 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-27-13.json +58 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-28-01.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-28-11.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-28-12.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-29-01.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-29-11.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-29-12.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-30-01.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-30-11.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-30-12.json +36 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-31-01.json +61 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-31-11.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-31-12.json +176 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-31-13.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-32-01.json +74 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-32-02.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-32-03.json +119 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-32-11.json +74 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-32-12.json +80 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-33-01.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-33-02.json +37 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-33-03.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-33-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-33-12.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-33-13.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-34-01.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-34-02.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-34-03.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-34-11.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-34-12.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-34-13.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-35-01.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-35-11.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-35-12.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-36-01.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-36-02.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-36-11.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-36-12.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-36-13.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-37-01.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-37-02.json +101 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-37-03.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-37-11.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-37-12.json +105 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-37-13.json +71 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-38-01.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-38-02.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-38-11.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-38-12.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-38-13.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-38-13.result.json +21 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-01-01.json +81 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-01-02.json +81 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-01-11.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-01-12.json +92 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-01-13.json +81 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-02-01.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-02-11.json +45 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-03-01.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-03-11.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-04-01.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-04-11.json +52 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-04-12.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-05-01.json +61 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-05-02.json +54 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-05-11.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-39-05-12.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-40-01.json +47 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-40-02.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-40-03.json +48 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-40-11.json +50 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-40-12.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-40-13.json +51 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-41-01.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-41-02.json +64 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-41-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-41-12.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-42-01.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-42-02.json +78 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-42-11.json +70 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-42-12.json +78 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-43-01.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-43-11.json +34 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-44-01.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-44-02.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-44-11.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-44-12.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-45-01.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-45-02.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-45-11.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-45-12.json +33 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-46-01.json +41 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-46-11.json +41 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-47-01.json +54 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-47-02.json +62 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-47-11.json +59 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-47-12.json +67 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-48-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-48-02.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-48-03.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-48-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-48-12.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-48-13.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-02.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-03.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-04.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-05.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-12.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-13.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-49-14.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-50-01-01.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-50-01-11.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-50-02-01.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-50-02-11.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-50-03-01.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-50-03-02.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-50-03-11.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-50-03-12.json +76 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-51-01.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-51-11.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-51-12.json +56 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-52-01.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-52-11.json +53 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-53-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-53-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-54-01-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-54-01-11.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-54-02-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-54-02-11.json +32 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-54-03-01.json +77 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-54-03-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-54-04-01.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/recommended/oasis_csaf_tc-csaf_2_1-2024-6-2-54-04-11.json +42 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/v20_examples/bsi-2022-0001.json +214 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/v20_examples/cisco-sa-20180328-smi2.json +3315 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/v20_examples/rhsa-2019_1862.json +103 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/v20_examples/rhsa-2021_5186.json +319 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/v20_examples/rhsa-2021_5217.json +185 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/data/v20_examples/rhsa-2022_0011.json +427 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/__init__.py +1 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/_registry.py +29 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/_shared.py +454 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/catalog.yaml +1965 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/informative/__init__.py +10 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/informative/_document_meta.py +110 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/informative/_extensions.py +225 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/informative/_ids_and_tree.py +283 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/informative/_vuln_and_status.py +285 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/mandatory/__init__.py +6 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/mandatory/_document_meta.py +762 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/mandatory/_ids_and_tree.py +882 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/mandatory/_scores_and_metrics.py +850 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/mandatory/_vuln_and_status.py +557 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/recommended/__init__.py +6 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/recommended/_document_meta.py +706 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/recommended/_extensions.py +96 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/recommended/_ids_and_tree.py +685 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/rules/recommended/_vuln_and_status.py +929 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/csaf.json +1731 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/extension-content.json +44 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/extension-metaschema.json +320 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/extensions/documentation-01-content_1.0.0.json +46 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/extensions/documentation-11-content_1.0.0.json +54 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/extensions/documentation-12-content_1.0.0.json +69 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/meta.json +23 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/referenced/SelectionList_2_0_0.schema.json +259 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/referenced/cvss-meta.json +61 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/referenced/cvss-v2.0.json +104 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/referenced/cvss-v3.0.json +143 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/referenced/cvss-v3.1.json +143 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/schema/referenced/cvss-v4.0.json +457 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/spdx/__init__.py +0 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/spdx/catalog.json +3562 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/ssvc/catalog.json +2672 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21/translations/translations.json +13 -0
- prototyyppi-2026.7.26/prototyyppi/csaf/v21csd02/__init__.py +128 -0
- prototyyppi-2026.7.26/prototyyppi.egg-info/PKG-INFO +413 -0
- prototyyppi-2026.7.26/prototyyppi.egg-info/SOURCES.txt +930 -0
- prototyyppi-2026.7.26/prototyyppi.egg-info/dependency_links.txt +1 -0
- prototyyppi-2026.7.26/prototyyppi.egg-info/entry_points.txt +2 -0
- prototyyppi-2026.7.26/prototyyppi.egg-info/requires.txt +9 -0
- prototyyppi-2026.7.26/prototyyppi.egg-info/top_level.txt +1 -0
- prototyyppi-2026.7.26/pyproject.toml +134 -0
- prototyyppi-2026.7.26/setup.cfg +4 -0
- prototyyppi-2026.7.26/test/test_build.py +872 -0
- prototyyppi-2026.7.26/test/test_cli.py +488 -0
- prototyyppi-2026.7.26/test/test_convert.py +493 -0
- prototyyppi-2026.7.26/test/test_examples.py +185 -0
- prototyyppi-2026.7.26/test/test_informative.py +447 -0
- prototyyppi-2026.7.26/test/test_mandatory.py +1109 -0
- prototyyppi-2026.7.26/test/test_public_api.py +250 -0
- prototyyppi-2026.7.26/test/test_recommended.py +934 -0
- prototyyppi-2026.7.26/test/test_sarif.py +146 -0
- prototyyppi-2026.7.26/test/test_tutorial_consumer.py +389 -0
- prototyyppi-2026.7.26/test/test_tutorial_converter.py +215 -0
- prototyyppi-2026.7.26/test/test_tutorial_producer.py +1248 -0
- prototyyppi-2026.7.26/test/test_url_rules.py +327 -0
|
@@ -0,0 +1,413 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: prototyyppi
|
|
3
|
+
Version: 2026.7.26
|
|
4
|
+
Summary: Experimental CSAF Implementation.
|
|
5
|
+
Author-email: Stefan Hagen <stefan@hagen.link>
|
|
6
|
+
Maintainer-email: Stefan Hagen <stefan@hagen.link>
|
|
7
|
+
License-Expression: MIT
|
|
8
|
+
Project-URL: Documentation, https://codes.dilettant.life/docs/prototyyppi
|
|
9
|
+
Keywords: developer-tools,security-advisory,vex
|
|
10
|
+
Classifier: Development Status :: 3 - Alpha
|
|
11
|
+
Classifier: Intended Audience :: Developers
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
16
|
+
Requires-Python: >=3.11
|
|
17
|
+
Description-Content-Type: text/markdown
|
|
18
|
+
Requires-Dist: jsonschema>=4.26.0
|
|
19
|
+
Requires-Dist: msgspec>=0.21.1
|
|
20
|
+
Requires-Dist: python-jsonpath>=2.2.1
|
|
21
|
+
Requires-Dist: PyYAML>=6.0.3
|
|
22
|
+
Provides-Extra: dev
|
|
23
|
+
Requires-Dist: pytest; extra == "dev"
|
|
24
|
+
Provides-Extra: manifest
|
|
25
|
+
|
|
26
|
+
# prototyyppi
|
|
27
|
+
|
|
28
|
+
Experimental Python reference implementation of [CSAF 2.1](https://docs.oasis-open.org/csaf/csaf/v2.1/csaf-v2.1.html).
|
|
29
|
+
Validates CSAF advisory documents against the full three-tier test suite
|
|
30
|
+
(mandatory, recommended, informative) specified in the CSAF 2.1 standard.
|
|
31
|
+
|
|
32
|
+
Requires Python 3.11 or later.
|
|
33
|
+
|
|
34
|
+
## Install
|
|
35
|
+
|
|
36
|
+
```sh
|
|
37
|
+
pip install prototyyppi
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
The package name on PyPI is `prototyyppi` (Finnish: "prototype").
|
|
41
|
+
The final stable release will be published as `csaf`.
|
|
42
|
+
|
|
43
|
+
## Manual
|
|
44
|
+
|
|
45
|
+
The [man page](docs/man/prototyyppi.1) provides the full CLI reference.
|
|
46
|
+
After installation, place it on your `MANPATH`:
|
|
47
|
+
|
|
48
|
+
```sh
|
|
49
|
+
mkdir -p ~/.local/share/man/man1
|
|
50
|
+
cp docs/man/prototyyppi.1 ~/.local/share/man/man1/
|
|
51
|
+
man prototyyppi
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Quickstart
|
|
55
|
+
|
|
56
|
+
### CLI
|
|
57
|
+
|
|
58
|
+
Validate a CSAF 2.1 advisory and get a human-readable report:
|
|
59
|
+
|
|
60
|
+
```sh
|
|
61
|
+
prototyyppi validate advisory.json
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
File: advisory.json
|
|
66
|
+
Overall: FAIL
|
|
67
|
+
|
|
68
|
+
[PASS] schema — JSON Schema (CSAF 2.1)
|
|
69
|
+
[FAIL] 6.1.1 — Missing Definition of Product ID
|
|
70
|
+
/product_tree/product_groups/0/product_ids/0: product id `CSAFPID-9080700` is not defined in product_tree
|
|
71
|
+
[PASS] 6.1.2 — Multiple Definition of Product ID
|
|
72
|
+
…
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Exit code is `0` for a valid document, `1` for invalid, `2` for usage errors.
|
|
76
|
+
|
|
77
|
+
**Validation levels** — run additional test tiers:
|
|
78
|
+
|
|
79
|
+
```sh
|
|
80
|
+
# Basic: schema + mandatory (6.1.x) — default
|
|
81
|
+
prototyyppi validate advisory.json
|
|
82
|
+
|
|
83
|
+
# Extended: + recommended (6.2.x)
|
|
84
|
+
prototyyppi validate --level extended advisory.json
|
|
85
|
+
|
|
86
|
+
# Full: + informative (6.3.x)
|
|
87
|
+
prototyyppi validate --level full advisory.json
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Output formats:**
|
|
91
|
+
|
|
92
|
+
```sh
|
|
93
|
+
# TC-compatible JSON (matches the OASIS test-result schema)
|
|
94
|
+
prototyyppi validate --format json advisory.json
|
|
95
|
+
|
|
96
|
+
# SARIF 2.2 (GitHub code scanning, VS Code SARIF viewer)
|
|
97
|
+
prototyyppi validate --format sarif advisory.json > results.sarif
|
|
98
|
+
|
|
99
|
+
# GitHub-flavored markdown — paste directly into a GitHub issue or PR comment
|
|
100
|
+
prototyyppi validate --format markdown advisory.json
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Batch validation:**
|
|
104
|
+
|
|
105
|
+
```sh
|
|
106
|
+
# All files in a directory
|
|
107
|
+
prototyyppi validate advisories/*.json
|
|
108
|
+
|
|
109
|
+
# Recursive glob (quote to let Python expand it — avoids shell ARG_MAX limits)
|
|
110
|
+
prototyyppi validate 'advisories/**/*.json'
|
|
111
|
+
|
|
112
|
+
# Batch markdown for a GitHub issue
|
|
113
|
+
prototyyppi validate --format markdown 'advisories/*.json'
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**Skip rules** — suppress specific tests by ID or from a YAML file:
|
|
117
|
+
|
|
118
|
+
```sh
|
|
119
|
+
prototyyppi validate --skip-rules 6.1.9 advisory.json
|
|
120
|
+
prototyyppi validate --skip-rules skip.yaml advisory.json
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Suppress output:**
|
|
124
|
+
|
|
125
|
+
```sh
|
|
126
|
+
prototyyppi validate --quiet advisory.json # hide passing rules
|
|
127
|
+
prototyyppi validate --silent advisory.json # exit code only
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
**Rule catalog:**
|
|
131
|
+
|
|
132
|
+
```sh
|
|
133
|
+
prototyyppi info rules # full list
|
|
134
|
+
prototyyppi info rules --only-groups mandatory # filter by tier
|
|
135
|
+
prototyyppi info rules --format json # machine-readable
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
```
|
|
139
|
+
Spec ID Group Status Title
|
|
140
|
+
--------------------------------------------------------------------------------
|
|
141
|
+
2.1 6.1.1 mandatory implemented Missing Definition of Product ID
|
|
142
|
+
2.1 6.1.2 mandatory implemented Multiple Definition of Product ID
|
|
143
|
+
…
|
|
144
|
+
61 rule(s) in catalog (CSAF 2.1).
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
**Environment info:**
|
|
148
|
+
|
|
149
|
+
```sh
|
|
150
|
+
prototyyppi info env # CSAF support, catalogs, interpreter, platform
|
|
151
|
+
prototyyppi info env --level extended # + runtime config, paths, host OS identity
|
|
152
|
+
prototyyppi info env --level full # + interpreter detail, flags, CPU, resource usage
|
|
153
|
+
prototyyppi info env --format json # machine-readable
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
For a condensed single-page reference see the [Quickstart guide](docs/quickstart/README.md).
|
|
157
|
+
For tutorials covering validation and document production see the [Tutorial index](docs/tutorial/README.md).
|
|
158
|
+
|
|
159
|
+
### Python API — consumer (validate)
|
|
160
|
+
|
|
161
|
+
```python
|
|
162
|
+
from prototyyppi import validate, validate_file
|
|
163
|
+
|
|
164
|
+
# From a file path
|
|
165
|
+
report = validate_file("advisory.json")
|
|
166
|
+
|
|
167
|
+
# From an already-parsed dict
|
|
168
|
+
import msgspec
|
|
169
|
+
doc = msgspec.json.decode(open("advisory.json", "rb").read())
|
|
170
|
+
report = validate(doc, path="advisory.json")
|
|
171
|
+
|
|
172
|
+
print("valid:", report.overall_valid)
|
|
173
|
+
for result in report.results:
|
|
174
|
+
if not result.passed:
|
|
175
|
+
print(f"[FAIL] {result.id} — {result.title}")
|
|
176
|
+
for err in result.errors:
|
|
177
|
+
print(f" {err.instance_path}: {err.message}")
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
The `ValidationReport` is a frozen `msgspec.Struct`.
|
|
181
|
+
Pass it to the formatters to render as text, JSON, SARIF, or markdown:
|
|
182
|
+
|
|
183
|
+
```python
|
|
184
|
+
from prototyyppi import to_text, to_tc_json, to_sarif, to_markdown
|
|
185
|
+
|
|
186
|
+
print(to_text(report))
|
|
187
|
+
print(to_tc_json(report))
|
|
188
|
+
print(to_sarif(report, version='0.0.0'))
|
|
189
|
+
print(to_markdown(report))
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### Python API — producer (build)
|
|
193
|
+
|
|
194
|
+
Construct a typed document and call `build()` to get validated JSON:
|
|
195
|
+
|
|
196
|
+
```python
|
|
197
|
+
from prototyyppi import (
|
|
198
|
+
Document, Distribution, FullProductName, Note, Publisher, ProductStatus,
|
|
199
|
+
ProductTree, Revision, Tlp, Tracking, Vulnerability,
|
|
200
|
+
Metric, MetricContent, cvss31_from_vector, cwe_entry,
|
|
201
|
+
)
|
|
202
|
+
|
|
203
|
+
doc = Document(
|
|
204
|
+
category='csaf_security_advisory',
|
|
205
|
+
title='Acme Corp — Advisory 2026-001',
|
|
206
|
+
publisher=Publisher(category='vendor', name='Acme Corp',
|
|
207
|
+
namespace='https://acme.example.com'),
|
|
208
|
+
tracking=Tracking(
|
|
209
|
+
id='ACME-2026-SA-001', status='final', version='1',
|
|
210
|
+
initial_release_date='2026-01-15T10:00:00Z',
|
|
211
|
+
current_release_date='2026-01-15T10:00:00Z',
|
|
212
|
+
revision_history=[Revision(date='2026-01-15T10:00:00Z', number='1',
|
|
213
|
+
summary='Initial release.')],
|
|
214
|
+
),
|
|
215
|
+
distribution=Distribution(tlp=Tlp(label='CLEAR')),
|
|
216
|
+
product_tree=ProductTree(full_product_names=[
|
|
217
|
+
FullProductName(name='Widget 1.0', product_id='CSAFPID-W100'),
|
|
218
|
+
]),
|
|
219
|
+
vulnerabilities=[
|
|
220
|
+
Vulnerability(
|
|
221
|
+
cve='CVE-2026-10001',
|
|
222
|
+
cwes=[cwe_entry('CWE-122')],
|
|
223
|
+
notes=[Note(category='description', text='Heap overflow in widget parser.')],
|
|
224
|
+
product_status=ProductStatus(known_affected=['CSAFPID-W100']),
|
|
225
|
+
metrics=[Metric(
|
|
226
|
+
content=MetricContent(
|
|
227
|
+
cvss_v3=cvss31_from_vector(
|
|
228
|
+
'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H'
|
|
229
|
+
),
|
|
230
|
+
),
|
|
231
|
+
products=['CSAFPID-W100'],
|
|
232
|
+
)],
|
|
233
|
+
),
|
|
234
|
+
],
|
|
235
|
+
)
|
|
236
|
+
|
|
237
|
+
json_str, report = doc.build() # raises BuildError on structural violations
|
|
238
|
+
assert report.overall_valid
|
|
239
|
+
import pathlib
|
|
240
|
+
pathlib.Path('advisory.json').write_text(json_str, encoding='utf-8')
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
`build()` validates the document and returns `(json_str, ValidationReport)`.
|
|
244
|
+
The JSON output has sorted keys, two-space indentation, and an auto-injected generator block.
|
|
245
|
+
See the [producer tutorial](docs/tutorial/producer/README.md) for step-by-step coverage of all five profiles, CVSS helpers, and build modes.
|
|
246
|
+
|
|
247
|
+
## URL reachability cache
|
|
248
|
+
|
|
249
|
+
Rules 6.3.06 and 6.3.07 check that URLs in advisory documents resolve to live endpoints.
|
|
250
|
+
Because HTTP requests are slow and advisory corpora can be large,
|
|
251
|
+
the validator provides a four-mode URL cache:
|
|
252
|
+
|
|
253
|
+
| Mode | Behaviour | When to use |
|
|
254
|
+
|:----------|:-------------------------------------------------|:-----------------------------|
|
|
255
|
+
| `run` | In-memory dedup within the current invocation | Default; interactive use |
|
|
256
|
+
| `disk` | Persist results to disk with a configurable TTL | CI pipelines |
|
|
257
|
+
| `disk-ro` | Read disk cache; skip on cache miss (no network) | Air-gapped or offline builds |
|
|
258
|
+
| `none` | No caching; each URL is checked fresh every run | Debugging |
|
|
259
|
+
|
|
260
|
+
```sh
|
|
261
|
+
# Default: in-memory dedup (no flags needed)
|
|
262
|
+
prototyyppi validate --level full advisory.json
|
|
263
|
+
|
|
264
|
+
# Disk cache with default TTL (24h) and default directory (~/.cache/prototyyppi)
|
|
265
|
+
prototyyppi validate --level full --url-cache disk advisory.json
|
|
266
|
+
|
|
267
|
+
# Custom TTL and cache directory
|
|
268
|
+
prototyyppi validate --level full \
|
|
269
|
+
--url-cache disk \
|
|
270
|
+
--url-cache-ttl 7d \
|
|
271
|
+
--url-cache-dir /var/cache/prototyyppi \
|
|
272
|
+
advisory.json
|
|
273
|
+
|
|
274
|
+
# Read-only: use cache, skip URL rules on miss (no network calls)
|
|
275
|
+
prototyyppi validate --level full --url-cache disk-ro advisory.json
|
|
276
|
+
|
|
277
|
+
# Disable URL rules entirely (shown as [SKIP]; implies --skip-rules 6.3.06,6.3.07)
|
|
278
|
+
prototyyppi validate --level full --no-network advisory.json
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
TTL accepts: `30m`, `6h`, `7d` (minutes, hours, days).
|
|
282
|
+
The disk cache is stored as a JSON file; entries expire individually based on their write time.
|
|
283
|
+
|
|
284
|
+
**Recommended CI pattern:**
|
|
285
|
+
|
|
286
|
+
```sh
|
|
287
|
+
prototyyppi validate \
|
|
288
|
+
--level full \
|
|
289
|
+
--url-cache disk \
|
|
290
|
+
--url-cache-dir .cache/prototyyppi \
|
|
291
|
+
--url-cache-ttl 24h \
|
|
292
|
+
'advisories/**/*.json'
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
> **Note:** Rules 6.3.06 and 6.3.07 (URL resolution) are pending implementation.
|
|
296
|
+
> The URL cache infrastructure is in place and will be activated automatically
|
|
297
|
+
> when these rules are implemented.
|
|
298
|
+
> The `--no-network` flag and all `--url-cache` options are wired up and ready.
|
|
299
|
+
|
|
300
|
+
## Skip rules
|
|
301
|
+
|
|
302
|
+
Rules can be suppressed individually or via a YAML skip file.
|
|
303
|
+
Suppressed rules appear as `[SKIP]` in the output and do not affect the exit code.
|
|
304
|
+
|
|
305
|
+
**CSV on the command line:**
|
|
306
|
+
|
|
307
|
+
```sh
|
|
308
|
+
prototyyppi validate --skip-rules 6.1.9,6.2.39.02 advisory.json
|
|
309
|
+
|
|
310
|
+
# May be specified multiple times (processed left to right)
|
|
311
|
+
prototyyppi validate --skip-rules 6.1.9 --skip-rules 6.2.39.02 advisory.json
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
**Re-enable a rule** skipped by a previous argument or file (prefix with `+`):
|
|
315
|
+
|
|
316
|
+
```sh
|
|
317
|
+
prototyyppi validate --skip-rules base.yaml --skip-rules +6.1.9 advisory.json
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
**YAML skip file** — supports structured entries with reason and expiry:
|
|
321
|
+
|
|
322
|
+
```yaml
|
|
323
|
+
# skip.yaml
|
|
324
|
+
- "schema"
|
|
325
|
+
- id: "6.1.9"
|
|
326
|
+
reason: "CVSS v3 scorer deviation — under review"
|
|
327
|
+
expires: "2026-12-31"
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
```sh
|
|
331
|
+
prototyyppi validate --skip-rules skip.yaml advisory.json
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
Expired entries still take effect; the validator prints a warning to stderr.
|
|
335
|
+
|
|
336
|
+
## Official examples
|
|
337
|
+
|
|
338
|
+
The `example/` directory contains the official OASIS CSAF 2.1 advisory examples
|
|
339
|
+
from the [CSAF TC repository](https://github.com/oasis-tcs/csaf/tree/master/csaf_2.1/examples/csaf):
|
|
340
|
+
six general advisories and thirteen VEX use-case documents.
|
|
341
|
+
|
|
342
|
+
See [example/README.md](example/README.md) for per-example validation reports and notes on findings.
|
|
343
|
+
|
|
344
|
+
To refresh the examples from upstream:
|
|
345
|
+
|
|
346
|
+
```sh
|
|
347
|
+
python bin/sync_examples.py # download/update all files
|
|
348
|
+
python bin/sync_examples.py --show # list bundled files and sizes
|
|
349
|
+
python bin/sync_examples.py --dry-run # compare with upstream without writing
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
## Bundled catalogs
|
|
353
|
+
|
|
354
|
+
All external reference data is bundled and kept up to date within the package.
|
|
355
|
+
No network access is required for validation.
|
|
356
|
+
|
|
357
|
+
| Catalog | Bundled version | Sync script |
|
|
358
|
+
|:------------------|:----------------------------|:----------------------------------|
|
|
359
|
+
| CWE | v4.9–v4.13 (969 weaknesses) | `python bin/sync_cwe.py` |
|
|
360
|
+
| SPDX | 3.28.0 + ScanCode licensedb | `python bin/sync_spdx.py` |
|
|
361
|
+
| SSVC | format_version 3 | `python bin/sync_ssvc.py` |
|
|
362
|
+
| CSAF translations | v2.1 (de) | `python bin/sync_translations.py` |
|
|
363
|
+
|
|
364
|
+
## Design and requirements
|
|
365
|
+
|
|
366
|
+
| Document | Identifier | File |
|
|
367
|
+
|:------------------------------------|:------------|:----------------------------------------------------------|
|
|
368
|
+
| Software Requirements Specification | PRO-SRS-001 | [docs/requirements/srs/](docs/requirements/srs/README.md) |
|
|
369
|
+
| Software Design Description | PRO-SDD-001 | [docs/design/sdd/](docs/design/sdd/README.md) |
|
|
370
|
+
|
|
371
|
+
Both documents follow the MIL-STD-498 DID structure
|
|
372
|
+
and are rendered into the documentation site alongside the
|
|
373
|
+
[quickstart](docs/quickstart/README.md), [tutorial](docs/tutorial/README.md),
|
|
374
|
+
and [example gallery](example/README.md).
|
|
375
|
+
|
|
376
|
+
## Bug Tracker
|
|
377
|
+
|
|
378
|
+
Feature requests and bug reports go to the [todos of prototyyppi](https://todo.sr.ht/~sthagen/prototyyppi).
|
|
379
|
+
|
|
380
|
+
## Primary Source repository
|
|
381
|
+
|
|
382
|
+
The main source of `prototyyppi` is on a mountain in Central Switzerland under
|
|
383
|
+
configuration control ([fossil](https://fossil-scm.org/)).
|
|
384
|
+
|
|
385
|
+
## Contributions
|
|
386
|
+
|
|
387
|
+
To share small changes under the repository's license,
|
|
388
|
+
kindly send a patchset per email using [git send-email](https://git-send-email.io).
|
|
389
|
+
|
|
390
|
+
## Support
|
|
391
|
+
|
|
392
|
+
Submit issues at https://todo.sr.ht/~sthagen/prototyyppi
|
|
393
|
+
or write plain text email to ~sthagen/prototyyppi@lists.sr.ht.
|
|
394
|
+
|
|
395
|
+
## Security Policy
|
|
396
|
+
|
|
397
|
+
See `SECURITY.md` for the security policy.
|
|
398
|
+
|
|
399
|
+
## Changes
|
|
400
|
+
|
|
401
|
+
See [docs/releases/](docs/releases/README.md) for release summaries
|
|
402
|
+
and [docs/releases/changes/](docs/releases/changes/README.md) for the detailed change log.
|
|
403
|
+
|
|
404
|
+
## Coverage
|
|
405
|
+
|
|
406
|
+
The test suite maintains high branch coverage (≥99%).
|
|
407
|
+
The HTML report (if generated) is in `site/coverage/`.
|
|
408
|
+
|
|
409
|
+
## SBOM
|
|
410
|
+
|
|
411
|
+
Runtime dependency information is published in `docs/sbom/` in SPDX 3.0 (JSON-LD)
|
|
412
|
+
and CycloneDX 1.6 (JSON) formats.
|
|
413
|
+
See `docs/sbom/README.md` for the component inventory and validation guide.
|