{"id":"v001","input":{"lat":38.5,"lon":-98.0,"height":500,"from_epoch":"2010.0","to_epoch":"2026.7","plate":"NOAM"},"expect":{"result.lat.value":38.49999948673461,"result.lon.value":-98.00000278813533,"result.height.value":500.00225875433534,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v002","input":{"lat":21.3,"lon":-157.8,"height":10,"from_epoch":"2015.0","to_epoch":"2026.0","plate":"PCFC"},"expect":{"result.lat.value":21.30000345715984,"result.lon.value":-157.8000065873269,"result.height.value":9.998937212862074,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v003","input":{"lat":48.85,"lon":2.35,"height":60,"from_epoch":"2000.0","to_epoch":"2026.7","plate":"EURA"},"expect":{"result.lat.value":48.85000386425075,"result.lon.value":2.3500066018112764,"result.height.value":60.02303825132549,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v004","input":{"lat":-35.3,"lon":149.1,"height":580,"from_epoch":"1994.0","to_epoch":"2020.0","plate":"AUST","origin_rate":"no"},"expect":{"result.lat.value":-35.29998717450938,"result.lon.value":149.1000054167276,"result.height.value":579.9954976933077,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v005","input":{"lat":-15.8,"lon":-47.9,"height":1100,"from_epoch":"2010.0","to_epoch":"2030.0","plate":"SOAM"},"expect":{"result.lat.value":-15.799997733497674,"result.lon.value":-47.90000072369733,"result.height.value":1099.9953311504796,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v006","input":{"lat":-26.2,"lon":28.0,"height":1750,"from_epoch":"2005.0","to_epoch":"2025.0","plate":"NUBI","origin_rate":"no"},"expect":{"result.lat.value":-26.199996882917656,"result.lon.value":28.00000345335796,"result.height.value":1749.9990829918534,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v007","input":{"lat":20.0,"lon":78.0,"height":300,"from_epoch":"2012.0","to_epoch":"2026.0","plate":"INDI"},"expect":{"result.lat.value":20.000004406608525,"result.lon.value":78.00000522663274,"result.height.value":300.01009304542094,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v008","input":{"lat":-77.8,"lon":166.7,"height":20,"from_epoch":"2000.0","to_epoch":"2020.0","plate":"ANTA"},"expect":{"result.lat.value":-77.80000203919559,"result.lon.value":166.70000825558256,"result.height.value":19.98466627020389,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v009","input":{"lat":24.7,"lon":46.7,"height":600,"from_epoch":"2010.0","to_epoch":"2026.7","plate":"ARAB"},"expect":{"result.lat.value":24.700004364134642,"result.lon.value":46.70000525008712,"result.height.value":600.014089091681,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v010","input":{"lat":11.11691,"lon":-133.17822,"height":2747.8,"from_epoch":"2004.22","to_epoch":"2028.71","plate":"AUST","origin_rate":"no"},"expect":{"result.lat.value":11.116908080975737,"result.lon.value":-133.17820919145106,"result.height.value":2747.7997311940417,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v011","input":{"lat":-28.87752,"lon":-95.87518,"height":2986.9,"from_epoch":"2004.11","to_epoch":"2032.55","plate":"ANTA"},"expect":{"result.lat.value":-28.877518013289386,"result.lon.value":-95.87517308462895,"result.height.value":2986.879635519348,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v012","input":{"lat":-32.16936,"lon":-125.56757,"height":2777.5,"from_epoch":"2001.7","to_epoch":"2020.23","plate":"EURA","origin_rate":"no"},"expect":{"result.lat.value":-32.16936120147097,"result.lon.value":-125.56756460749916,"result.height.value":2777.5004027821124,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v013","input":{"lat":30.98763,"lon":32.20475,"height":903.8,"from_epoch":"1990.93","to_epoch":"2032.98","plate":"EURA"},"expect":{"result.lat.value":30.98763475800466,"result.lon.value":32.20476126751974,"result.height.value":903.8355453796685,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v014","input":{"lat":25.69554,"lon":150.67442,"height":1184.9,"from_epoch":"2014.03","to_epoch":"2026.67","plate":"INDI","origin_rate":"no"},"expect":{"result.lat.value":25.695542003420766,"result.lon.value":150.67442672288965,"result.height.value":1184.9005812881514,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v015","input":{"lat":-48.30548,"lon":-131.18718,"height":651.0,"from_epoch":"2018.96","to_epoch":"2026.54","plate":"NUBI","origin_rate":"no"},"expect":{"result.lat.value":-48.30548095301737,"result.lon.value":-131.18717759582526,"result.height.value":651.0003536771983,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v016","input":{"lat":-9.46218,"lon":119.21829,"height":1722.1,"from_epoch":"2006.02","to_epoch":"2026.11","plate":"SOAM"},"expect":{"result.lat.value":-9.462181916120393,"result.lon.value":119.21828892386817,"result.height.value":1722.1002767104656,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v017","input":{"lat":21.83786,"lon":153.49147,"height":2569.2,"from_epoch":"2019.73","to_epoch":"2030.07","plate":"NUBI"},"expect":{"result.lat.value":21.83785867519994,"result.lon.value":153.49147240215967,"result.height.value":2569.200810342096,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v018","input":{"lat":55.75595,"lon":144.78586,"height":1707.3,"from_epoch":"2011.41","to_epoch":"2023.17","plate":"NUBI","origin_rate":"no"},"expect":{"result.lat.value":55.75594861164778,"result.lon.value":144.78586430065036,"result.height.value":1707.2995164738968,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v019","input":{"lat":-25.8051,"lon":-157.21765,"height":2561.8,"from_epoch":"2019.69","to_epoch":"2021.33","plate":"SOAM","origin_rate":"no"},"expect":{"result.lat.value":-25.805100072705446,"result.lon.value":-157.21764999497788,"result.height.value":2561.800021172501,"ok":true},"source":"PROJ +proj=helmert with the ITRF2020 plate motion rates of its data/ITRF2020, through pyproj","sourceVersion":"PROJ 9.3 (pyproj 3.6); data/ITRF2020","tolerance":{"result.lat.value":{"abs":1e-10},"result.lon.value":{"abs":1e-10},"result.height.value":{"abs":1e-05}}}
{"id":"v020","input":{"lat":40,"lon":-105,"from_epoch":"2016.0","to_epoch":"2026.0","v_east":"20 mm/yr","v_north":"-5 mm/yr","v_up":"1 mm/yr"},"expect":{"result.east.value":0.2,"result.north.value":-0.05,"result.up.value":0.01,"result.displacement.value":0.20615528128088303,"ok":true},"source":"Site velocity times elapsed time (definition)","sourceVersion":"2026-09","tolerance":{"result.east.value":{"abs":1e-09},"result.north.value":{"abs":1e-09},"result.up.value":{"abs":1e-09},"result.displacement.value":{"abs":1e-09}}}
{"id":"v021","input":{"lat":35.0,"lon":-119.5,"from_epoch":"2010.0","to_epoch":"2026.7","plate":"NOAM"},"expect":{"meta.warnings.*.code":"DEFORMATION_ZONE","ok":true},"source":"add-geodesy-suite scenario: propagation in a deformation zone","sourceVersion":"2026-09"}
{"id":"v022","input":{"lat":40,"lon":-105,"from_epoch":"2010.0","to_epoch":"2026.7"},"expect":{"error.code":"INVALID_INPUT","error.field":"/plate","ok":false},"source":"add-geodesy-suite input rules","sourceVersion":"2026-09"}
