{"version":3,"file":"vendors-27545368.9729664bca28a8e6916d.bundle.js","mappings":";;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC5dA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;AC5vBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACtwBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACzLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;AC7cA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ACzIA;AACA;AACA;AACA;AACA","sources":["webpack://www.zeusteam.com/./node_modules/select2/src/scss/core.scss","webpack://www.zeusteam.com/./node_modules/short-unique-id/dist/short-unique-id.js","webpack://www.zeusteam.com/./node_modules/robust-predicates/esm/incircle.js","webpack://www.zeusteam.com/./node_modules/robust-predicates/esm/insphere.js","webpack://www.zeusteam.com/./node_modules/robust-predicates/esm/orient2d.js","webpack://www.zeusteam.com/./node_modules/robust-predicates/esm/orient3d.js","webpack://www.zeusteam.com/./node_modules/robust-predicates/esm/util.js","webpack://www.zeusteam.com/./node_modules/robust-predicates/index.js"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".select2-container {\\n box-sizing: border-box;\\n display: inline-block;\\n margin: 0;\\n position: relative;\\n vertical-align: middle;\\n}\\n.select2-container .select2-selection--single {\\n box-sizing: border-box;\\n cursor: pointer;\\n display: block;\\n height: 28px;\\n user-select: none;\\n -webkit-user-select: none;\\n}\\n.select2-container .select2-selection--single .select2-selection__rendered {\\n display: block;\\n padding-left: 8px;\\n padding-right: 20px;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.select2-container .select2-selection--single .select2-selection__clear {\\n background-color: transparent;\\n border: none;\\n font-size: 1em;\\n}\\n.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered {\\n padding-right: 8px;\\n padding-left: 20px;\\n}\\n.select2-container .select2-selection--multiple {\\n box-sizing: border-box;\\n cursor: pointer;\\n display: block;\\n min-height: 32px;\\n user-select: none;\\n -webkit-user-select: none;\\n}\\n.select2-container .select2-selection--multiple .select2-selection__rendered {\\n display: inline;\\n list-style: none;\\n padding: 0;\\n}\\n.select2-container .select2-selection--multiple .select2-selection__clear {\\n background-color: transparent;\\n border: none;\\n font-size: 1em;\\n}\\n.select2-container .select2-search--inline .select2-search__field {\\n box-sizing: border-box;\\n border: none;\\n font-size: 100%;\\n margin-top: 5px;\\n margin-left: 5px;\\n padding: 0;\\n max-width: 100%;\\n resize: none;\\n height: 18px;\\n vertical-align: bottom;\\n font-family: sans-serif;\\n overflow: hidden;\\n word-break: keep-all;\\n}\\n.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {\\n -webkit-appearance: none;\\n}\\n\\n.select2-dropdown {\\n background-color: white;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n box-sizing: border-box;\\n display: block;\\n position: absolute;\\n left: -100000px;\\n width: 100%;\\n z-index: 1051;\\n}\\n\\n.select2-results {\\n display: block;\\n}\\n\\n.select2-results__options {\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n}\\n\\n.select2-results__option {\\n padding: 6px;\\n user-select: none;\\n -webkit-user-select: none;\\n}\\n\\n.select2-results__option--selectable {\\n cursor: pointer;\\n}\\n\\n.select2-container--open .select2-dropdown {\\n left: 0;\\n}\\n\\n.select2-container--open .select2-dropdown--above {\\n border-bottom: none;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n}\\n\\n.select2-container--open .select2-dropdown--below {\\n border-top: none;\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n}\\n\\n.select2-search--dropdown {\\n display: block;\\n padding: 4px;\\n}\\n.select2-search--dropdown .select2-search__field {\\n padding: 4px;\\n width: 100%;\\n box-sizing: border-box;\\n}\\n.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {\\n -webkit-appearance: none;\\n}\\n.select2-search--dropdown.select2-search--hide {\\n display: none;\\n}\\n\\n.select2-close-mask {\\n border: 0;\\n margin: 0;\\n padding: 0;\\n display: block;\\n position: fixed;\\n left: 0;\\n top: 0;\\n min-height: 100%;\\n min-width: 100%;\\n height: auto;\\n width: auto;\\n opacity: 0;\\n z-index: 99;\\n background-color: #fff;\\n filter: alpha(opacity=0);\\n}\\n\\n.select2-hidden-accessible {\\n border: 0 !important;\\n clip: rect(0 0 0 0) !important;\\n -webkit-clip-path: inset(50%) !important;\\n clip-path: inset(50%) !important;\\n height: 1px !important;\\n overflow: hidden !important;\\n padding: 0 !important;\\n position: absolute !important;\\n width: 1px !important;\\n white-space: nowrap !important;\\n}\\n\\n.select2-container--default .select2-selection--single {\\n background-color: #fff;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n}\\n.select2-container--default .select2-selection--single .select2-selection__rendered {\\n color: #444;\\n line-height: 28px;\\n}\\n.select2-container--default .select2-selection--single .select2-selection__clear {\\n cursor: pointer;\\n float: right;\\n font-weight: bold;\\n height: 26px;\\n margin-right: 20px;\\n padding-right: 0px;\\n}\\n.select2-container--default .select2-selection--single .select2-selection__placeholder {\\n color: #999;\\n}\\n.select2-container--default .select2-selection--single .select2-selection__arrow {\\n height: 26px;\\n position: absolute;\\n top: 1px;\\n right: 1px;\\n width: 20px;\\n}\\n.select2-container--default .select2-selection--single .select2-selection__arrow b {\\n border-color: #888 transparent transparent transparent;\\n border-style: solid;\\n border-width: 5px 4px 0 4px;\\n height: 0;\\n left: 50%;\\n margin-left: -4px;\\n margin-top: -2px;\\n position: absolute;\\n top: 50%;\\n width: 0;\\n}\\n.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear {\\n float: left;\\n}\\n.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow {\\n left: 1px;\\n right: auto;\\n}\\n.select2-container--default.select2-container--disabled .select2-selection--single {\\n background-color: #eee;\\n cursor: default;\\n}\\n.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {\\n display: none;\\n}\\n.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {\\n border-color: transparent transparent #888 transparent;\\n border-width: 0 4px 5px 4px;\\n}\\n.select2-container--default .select2-selection--multiple {\\n background-color: white;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n cursor: text;\\n padding-bottom: 5px;\\n padding-right: 5px;\\n position: relative;\\n}\\n.select2-container--default .select2-selection--multiple.select2-selection--clearable {\\n padding-right: 25px;\\n}\\n.select2-container--default .select2-selection--multiple .select2-selection__clear {\\n cursor: pointer;\\n font-weight: bold;\\n height: 20px;\\n margin-right: 10px;\\n margin-top: 5px;\\n position: absolute;\\n right: 0;\\n padding: 1px;\\n}\\n.select2-container--default .select2-selection--multiple .select2-selection__choice {\\n background-color: #e4e4e4;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n box-sizing: border-box;\\n display: inline-block;\\n margin-left: 5px;\\n margin-top: 5px;\\n padding: 0;\\n padding-left: 20px;\\n position: relative;\\n max-width: 100%;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n vertical-align: bottom;\\n white-space: nowrap;\\n}\\n.select2-container--default .select2-selection--multiple .select2-selection__choice__display {\\n cursor: default;\\n padding-left: 2px;\\n padding-right: 5px;\\n}\\n.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {\\n background-color: transparent;\\n border: none;\\n border-right: 1px solid #aaa;\\n border-top-left-radius: 4px;\\n border-bottom-left-radius: 4px;\\n color: #999;\\n cursor: pointer;\\n font-size: 1em;\\n font-weight: bold;\\n padding: 0 4px;\\n position: absolute;\\n left: 0;\\n top: 0;\\n}\\n.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover, .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus {\\n background-color: #f1f1f1;\\n color: #333;\\n outline: none;\\n}\\n.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice {\\n margin-left: 5px;\\n margin-right: auto;\\n}\\n.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__display {\\n padding-left: 5px;\\n padding-right: 2px;\\n}\\n.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {\\n border-left: 1px solid #aaa;\\n border-right: none;\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n border-top-right-radius: 4px;\\n border-bottom-right-radius: 4px;\\n}\\n.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__clear {\\n float: left;\\n margin-left: 10px;\\n margin-right: auto;\\n}\\n.select2-container--default.select2-container--focus .select2-selection--multiple {\\n border: solid black 1px;\\n outline: 0;\\n}\\n.select2-container--default.select2-container--disabled .select2-selection--multiple {\\n background-color: #eee;\\n cursor: default;\\n}\\n.select2-container--default.select2-container--disabled .select2-selection__choice__remove {\\n display: none;\\n}\\n.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n}\\n.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n}\\n.select2-container--default .select2-search--dropdown .select2-search__field {\\n border: 1px solid #aaa;\\n}\\n.select2-container--default .select2-search--inline .select2-search__field {\\n background: transparent;\\n border: none;\\n outline: 0;\\n box-shadow: none;\\n -webkit-appearance: textfield;\\n}\\n.select2-container--default .select2-results > .select2-results__options {\\n max-height: 200px;\\n overflow-y: auto;\\n}\\n.select2-container--default .select2-results__option .select2-results__option {\\n padding-left: 1em;\\n}\\n.select2-container--default .select2-results__option .select2-results__option .select2-results__group {\\n padding-left: 0;\\n}\\n.select2-container--default .select2-results__option .select2-results__option .select2-results__option {\\n margin-left: -1em;\\n padding-left: 2em;\\n}\\n.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {\\n margin-left: -2em;\\n padding-left: 3em;\\n}\\n.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {\\n margin-left: -3em;\\n padding-left: 4em;\\n}\\n.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {\\n margin-left: -4em;\\n padding-left: 5em;\\n}\\n.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {\\n margin-left: -5em;\\n padding-left: 6em;\\n}\\n.select2-container--default .select2-results__option--group {\\n padding: 0;\\n}\\n.select2-container--default .select2-results__option--disabled {\\n color: #999;\\n}\\n.select2-container--default .select2-results__option--selected {\\n background-color: #ddd;\\n}\\n.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {\\n background-color: #5897fb;\\n color: white;\\n}\\n.select2-container--default .select2-results__group {\\n cursor: default;\\n display: block;\\n padding: 6px;\\n}\\n\\n.select2-container--classic .select2-selection--single {\\n background-color: #f7f7f7;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n outline: 0;\\n background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%);\\n background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);\\n background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);\\n background-repeat: repeat-x;\\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=\\\"#FFFFFFFF\\\", endColorstr=\\\"#FFEEEEEE\\\", GradientType=0);\\n}\\n.select2-container--classic .select2-selection--single:focus {\\n border: 1px solid #5897fb;\\n}\\n.select2-container--classic .select2-selection--single .select2-selection__rendered {\\n color: #444;\\n line-height: 28px;\\n}\\n.select2-container--classic .select2-selection--single .select2-selection__clear {\\n cursor: pointer;\\n float: right;\\n font-weight: bold;\\n height: 26px;\\n margin-right: 20px;\\n}\\n.select2-container--classic .select2-selection--single .select2-selection__placeholder {\\n color: #999;\\n}\\n.select2-container--classic .select2-selection--single .select2-selection__arrow {\\n background-color: #ddd;\\n border: none;\\n border-left: 1px solid #aaa;\\n border-top-right-radius: 4px;\\n border-bottom-right-radius: 4px;\\n height: 26px;\\n position: absolute;\\n top: 1px;\\n right: 1px;\\n width: 20px;\\n background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%);\\n background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);\\n background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);\\n background-repeat: repeat-x;\\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=\\\"#FFEEEEEE\\\", endColorstr=\\\"#FFCCCCCC\\\", GradientType=0);\\n}\\n.select2-container--classic .select2-selection--single .select2-selection__arrow b {\\n border-color: #888 transparent transparent transparent;\\n border-style: solid;\\n border-width: 5px 4px 0 4px;\\n height: 0;\\n left: 50%;\\n margin-left: -4px;\\n margin-top: -2px;\\n position: absolute;\\n top: 50%;\\n width: 0;\\n}\\n.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear {\\n float: left;\\n}\\n.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow {\\n border: none;\\n border-right: 1px solid #aaa;\\n border-radius: 0;\\n border-top-left-radius: 4px;\\n border-bottom-left-radius: 4px;\\n left: 1px;\\n right: auto;\\n}\\n.select2-container--classic.select2-container--open .select2-selection--single {\\n border: 1px solid #5897fb;\\n}\\n.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {\\n background: transparent;\\n border: none;\\n}\\n.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {\\n border-color: transparent transparent #888 transparent;\\n border-width: 0 4px 5px 4px;\\n}\\n.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {\\n border-top: none;\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%);\\n background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);\\n background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);\\n background-repeat: repeat-x;\\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=\\\"#FFFFFFFF\\\", endColorstr=\\\"#FFEEEEEE\\\", GradientType=0);\\n}\\n.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {\\n border-bottom: none;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%);\\n background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);\\n background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);\\n background-repeat: repeat-x;\\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=\\\"#FFEEEEEE\\\", endColorstr=\\\"#FFFFFFFF\\\", GradientType=0);\\n}\\n.select2-container--classic .select2-selection--multiple {\\n background-color: white;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n cursor: text;\\n outline: 0;\\n padding-bottom: 5px;\\n padding-right: 5px;\\n}\\n.select2-container--classic .select2-selection--multiple:focus {\\n border: 1px solid #5897fb;\\n}\\n.select2-container--classic .select2-selection--multiple .select2-selection__clear {\\n display: none;\\n}\\n.select2-container--classic .select2-selection--multiple .select2-selection__choice {\\n background-color: #e4e4e4;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n display: inline-block;\\n margin-left: 5px;\\n margin-top: 5px;\\n padding: 0;\\n}\\n.select2-container--classic .select2-selection--multiple .select2-selection__choice__display {\\n cursor: default;\\n padding-left: 2px;\\n padding-right: 5px;\\n}\\n.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {\\n background-color: transparent;\\n border: none;\\n border-top-left-radius: 4px;\\n border-bottom-left-radius: 4px;\\n color: #888;\\n cursor: pointer;\\n font-size: 1em;\\n font-weight: bold;\\n padding: 0 4px;\\n}\\n.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {\\n color: #555;\\n outline: none;\\n}\\n.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {\\n margin-left: 5px;\\n margin-right: auto;\\n}\\n.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__display {\\n padding-left: 5px;\\n padding-right: 2px;\\n}\\n.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n border-top-right-radius: 4px;\\n border-bottom-right-radius: 4px;\\n}\\n.select2-container--classic.select2-container--open .select2-selection--multiple {\\n border: 1px solid #5897fb;\\n}\\n.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {\\n border-top: none;\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n}\\n.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {\\n border-bottom: none;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n}\\n.select2-container--classic .select2-search--dropdown .select2-search__field {\\n border: 1px solid #aaa;\\n outline: 0;\\n}\\n.select2-container--classic .select2-search--inline .select2-search__field {\\n outline: 0;\\n box-shadow: none;\\n}\\n.select2-container--classic .select2-dropdown {\\n background-color: white;\\n border: 1px solid transparent;\\n}\\n.select2-container--classic .select2-dropdown--above {\\n border-bottom: none;\\n}\\n.select2-container--classic .select2-dropdown--below {\\n border-top: none;\\n}\\n.select2-container--classic .select2-results > .select2-results__options {\\n max-height: 200px;\\n overflow-y: auto;\\n}\\n.select2-container--classic .select2-results__option--group {\\n padding: 0;\\n}\\n.select2-container--classic .select2-results__option--disabled {\\n color: grey;\\n}\\n.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable {\\n background-color: #3875d7;\\n color: white;\\n}\\n.select2-container--classic .select2-results__group {\\n cursor: default;\\n display: block;\\n padding: 6px;\\n}\\n.select2-container--classic.select2-container--open .select2-dropdown {\\n border-color: #5897fb;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/select2/src/scss/core.scss\",\"webpack://./node_modules/select2/src/scss/_single.scss\",\"webpack://./node_modules/select2/src/scss/_multiple.scss\",\"webpack://./node_modules/select2/src/scss/_dropdown.scss\",\"webpack://./node_modules/select2/src/scss/theme/default/_single.scss\",\"webpack://./node_modules/select2/src/scss/theme/default/_multiple.scss\",\"webpack://./node_modules/select2/src/scss/theme/default/layout.scss\",\"webpack://./node_modules/select2/src/scss/theme/classic/_single.scss\",\"webpack://./node_modules/select2/src/scss/theme/classic/_defaults.scss\",\"webpack://./node_modules/select2/src/scss/mixins/_gradients.scss\",\"webpack://./node_modules/select2/src/scss/theme/classic/_multiple.scss\",\"webpack://./node_modules/select2/src/scss/theme/classic/layout.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,sBAAA;EAEA,qBAAA;EACA,SAAA;EACA,kBAAA;EACA,sBAAA;AAAF;ACNA;EACE,sBAAA;EAEA,eAAA;EACA,cAAA;EAEA,YAAA;EAEA,iBAAA;EACA,yBAAA;ADKF;ACHE;EACE,cAAA;EACA,iBAAA;EACA,mBAAA;EAEA,gBAAA;EACA,uBAAA;EACA,mBAAA;ADIJ;ACDE;EACE,6BAAA;EACA,YAAA;EACA,cAAA;ADGJ;ACGI;EACE,kBAAA;EACA,kBAAA;ADDN;AE/BA;EACE,sBAAA;EAEA,eAAA;EACA,cAAA;EAEA,gBAAA;EAEA,iBAAA;EACA,yBAAA;AF8BF;AE5BE;EACE,eAAA;EACA,gBAAA;EACA,UAAA;AF8BJ;AE3BE;EACE,6BAAA;EACA,YAAA;EACA,cAAA;AF6BJ;AExBE;EACE,sBAAA;EACA,YAAA;EACA,eAAA;EACA,eAAA;EACA,gBAAA;EACA,UAAA;EACA,eAAA;EACA,YAAA;EACA,YAAA;EACA,sBAAA;EACA,uBAAA;EACA,gBAAA;EACA,oBAAA;AF0BJ;AExBI;EACE,wBAAA;AF0BN;;AGnEA;EACE,uBAAA;EAEA,sBAAA;EACA,kBAAA;EAEA,sBAAA;EAEA,cAAA;EAEA,kBAAA;EACA,eAAA;EAEA,WAAA;EAEA,aAAA;AHgEF;;AG7DA;EACE,cAAA;AHgEF;;AG7DA;EACE,gBAAA;EACA,SAAA;EACA,UAAA;AHgEF;;AG7DA;EACE,YAAA;EAEA,iBAAA;EACA,yBAAA;AH+DF;;AG5DA;EACE,eAAA;AH+DF;;AG5DA;EACE,OAAA;AH+DF;;AG5DA;EACE,mBAAA;EACA,4BAAA;EACA,6BAAA;AH+DF;;AG5DA;EACE,gBAAA;EACA,yBAAA;EACA,0BAAA;AH+DF;;AG5DA;EACE,cAAA;EACA,YAAA;AH+DF;AG7DE;EACE,YAAA;EACA,WAAA;EACA,sBAAA;AH+DJ;AG7DI;EACE,wBAAA;AH+DN;AG3DE;EACE,aAAA;AH6DJ;;AArHA;EACE,SAAA;EACA,SAAA;EACA,UAAA;EACA,cAAA;EACA,eAAA;EACA,OAAA;EACA,MAAA;EACA,gBAAA;EACA,eAAA;EACA,YAAA;EACA,WAAA;EACA,UAAA;EACA,WAAA;EAIA,sBAAA;EACA,wBAAA;AAqHF;;AAlHA;EACE,oBAAA;EACA,8BAAA;EACA,wCAAA;EACA,gCAAA;EACA,sBAAA;EACA,2BAAA;EACA,qBAAA;EACA,6BAAA;EACA,qBAAA;EACA,8BAAA;AAqHF;;AIlKA;EACE,sBAAA;EACA,sBAAA;EACA,kBAAA;AJqKF;AInKE;EACE,WAAA;EACA,iBAAA;AJqKJ;AIlKE;EACE,eAAA;EACA,YAAA;EACA,iBAAA;EACA,YAAA;EACA,kBAAA;EACA,kBAAA;AJoKJ;AIjKE;EACE,WAAA;AJmKJ;AIhKE;EACE,YAAA;EAEA,kBAAA;EAEA,QAAA;EACA,UAAA;EAEA,WAAA;AJ+JJ;AI7JI;EACE,sDAAA;EACA,mBAAA;EACA,2BAAA;EAEA,SAAA;EACA,SAAA;EAEA,iBAAA;EACA,gBAAA;EAEA,kBAAA;EAEA,QAAA;EACA,QAAA;AJ2JN;AIpJI;EACE,WAAA;AJsJN;AInJI;EACE,SAAA;EACA,WAAA;AJqJN;AI/IE;EACE,sBAAA;EACA,eAAA;AJiJJ;AI/II;EACE,aAAA;AJiJN;AIzIM;EACE,sDAAA;EACA,2BAAA;AJ2IR;AK5NA;EACE,uBAAA;EACA,sBAAA;EACA,kBAAA;EACA,YAAA;EACA,mBAAA;EACA,kBAAA;EACA,kBAAA;AL8NF;AK5NE;EACE,mBAAA;AL8NJ;AK3NE;EACE,eAAA;EACA,iBAAA;EACA,YAAA;EACA,kBAAA;EACA,eAAA;EAEA,kBAAA;EACA,QAAA;EAMA,YAAA;ALuNJ;AKpNE;EACE,yBAAA;EACA,sBAAA;EACA,kBAAA;EACA,sBAAA;EAEA,qBAAA;EACA,gBAAA;EACA,eAAA;EACA,UAAA;EACA,kBAAA;EAEA,kBAAA;EAEA,eAAA;EACA,gBAAA;EACA,uBAAA;EACA,sBAAA;EACA,mBAAA;ALmNJ;AKhNE;EACE,eAAA;EAEA,iBAAA;EACA,kBAAA;ALiNJ;AK9ME;EACE,6BAAA;EACA,YAAA;EACA,4BAAA;EACA,2BAAA;EACA,8BAAA;EAEA,WAAA;EACA,eAAA;EAEA,cAAA;EACA,iBAAA;EAEA,cAAA;EAEA,kBAAA;EACA,OAAA;EACA,MAAA;AL4MJ;AK1MI;EACE,yBAAA;EACA,WAAA;EACA,aAAA;AL4MN;AKrMI;EACE,gBAAA;EACA,kBAAA;ALuMN;AKpMI;EACE,iBAAA;EACA,kBAAA;ALsMN;AKnMI;EACE,2BAAA;EACA,kBAAA;EACA,yBAAA;EACA,4BAAA;EACA,4BAAA;EACA,+BAAA;ALqMN;AKlMI;EACE,WAAA;EACA,iBAAA;EACA,kBAAA;ALoMN;AK9LE;EACE,uBAAA;EACA,UAAA;ALgMJ;AK3LE;EACE,sBAAA;EACA,eAAA;AL6LJ;AK1LE;EACE,aAAA;AL4LJ;AMvTI;EACE,yBAAA;EACA,0BAAA;ANyTN;AMpTI;EACE,4BAAA;EACA,6BAAA;ANsTN;AMjTI;EACE,sBAAA;ANmTN;AM9SI;EACE,uBAAA;EACA,YAAA;EACA,UAAA;EACA,gBAAA;EACA,6BAAA;ANgTN;AM5SE;EACE,iBAAA;EACA,gBAAA;AN8SJ;AM1SI;EACE,iBAAA;AN4SN;AM1SM;EACE,eAAA;AN4SR;AMzSM;EACE,iBAAA;EACA,iBAAA;AN2SR;AMzSQ;EACE,iBAAA;EACA,iBAAA;AN2SV;AMzSU;EACE,iBAAA;EACA,iBAAA;AN2SZ;AMzSY;EACE,iBAAA;EACA,iBAAA;AN2Sd;AMzSc;EACE,iBAAA;EACA,iBAAA;AN2ShB;AMlSE;EACE,UAAA;ANoSJ;AMjSE;EACE,WAAA;ANmSJ;AMhSE;EACE,sBAAA;ANkSJ;AM/RE;EACE,yBAAA;EACA,YAAA;ANiSJ;AM9RE;EACE,eAAA;EACA,cAAA;EACA,YAAA;ANgSJ;;AO9XA;EACE,yBAAA;EAEA,sBAAA;EACA,kBCGc;EDDd,UAAA;EECA,uEAAA;EACA,kEAAA;EACA,qEAAA;EACA,2BAAA;EACA,sHAAA;AT+XF;AOhYE;EACE,yBAAA;APkYJ;AO/XE;EACE,WAAA;EACA,iBAAA;APiYJ;AO9XE;EACE,eAAA;EACA,YAAA;EACA,iBAAA;EACA,YAAA;EACA,kBAAA;APgYJ;AO7XE;EACE,WAAA;AP+XJ;AO5XE;EACE,sBAAA;EAEA,YAAA;EACA,2BAAA;EACA,4BC7BY;ED8BZ,+BC9BY;EDgCZ,YAAA;EAEA,kBAAA;EAEA,QAAA;EACA,UAAA;EAEA,WAAA;EEvCF,yEAAA;EACA,oEAAA;EACA,uEAAA;EACA,2BAAA;EACA,sHAAA;ATiaF;AO1XI;EACE,sDAAA;EACA,mBAAA;EACA,2BAAA;EAEA,SAAA;EACA,SAAA;EAEA,iBAAA;EACA,gBAAA;EAEA,kBAAA;EAEA,QAAA;EACA,QAAA;APwXN;AOjXI;EACE,WAAA;APmXN;AOhXI;EACE,YAAA;EACA,4BAAA;EAEA,gBAAA;EACA,2BCzEU;ED0EV,8BC1EU;ED4EV,SAAA;EACA,WAAA;APgXN;AO1WE;EACE,yBAAA;AP4WJ;AO1WI;EACE,uBAAA;EAEA,YAAA;AP2WN;AOzWM;EACE,sDAAA;EACA,2BAAA;AP2WR;AOrWI;EACE,gBAAA;EACA,yBAAA;EACA,0BAAA;EEtGJ,qEAAA;EACA,gEAAA;EACA,mEAAA;EACA,2BAAA;EACA,sHAAA;AT8cF;AOrWI;EACE,mBAAA;EACA,4BAAA;EACA,6BAAA;EEhHJ,uEAAA;EACA,kEAAA;EACA,qEAAA;EACA,2BAAA;EACA,sHAAA;ATwdF;AUneA;EACE,uBAAA;EAEA,sBAAA;EACA,kBFGc;EEDd,YAAA;EAEA,UAAA;EAEA,mBAAA;EACA,kBAAA;AVieF;AU/dE;EACE,yBAAA;AVieJ;AU9dE;EACE,aAAA;AVgeJ;AU7dE;EACE,yBAAA;EACA,sBAAA;EACA,kBFjBY;EEmBZ,qBAAA;EACA,gBAAA;EACA,eAAA;EACA,UAAA;AV8dJ;AU3dE;EACE,eAAA;EAEA,iBAAA;EACA,kBAAA;AV4dJ;AUzdE;EACE,6BAAA;EACA,YAAA;EACA,2BFnCY;EEoCZ,8BFpCY;EEsCZ,WF7CW;EE8CX,eAAA;EAEA,cAAA;EACA,iBAAA;EAEA,cAAA;AVwdJ;AUtdI;EACE,WFrDe;EEsDf,aAAA;AVwdN;AUjdI;EACE,gBAAA;EACA,kBAAA;AVmdN;AUhdI;EACE,iBAAA;EACA,kBAAA;AVkdN;AU/cI;EACE,yBAAA;EACA,4BAAA;EACA,4BFpEU;EEqEV,+BFrEU;ARshBhB;AU3cE;EACE,yBAAA;AV6cJ;AUzcI;EACE,gBAAA;EACA,yBAAA;EACA,0BAAA;AV2cN;AUtcI;EACE,mBAAA;EACA,4BAAA;EACA,6BAAA;AVwcN;AWliBI;EACE,sBAAA;EACA,UAAA;AXoiBN;AW/hBI;EACE,UAAA;EACA,gBAAA;AXiiBN;AW7hBE;EACE,uBHTqB;EGUrB,6BAAA;AX+hBJ;AW5hBE;EACE,mBAAA;AX8hBJ;AW3hBE;EACE,gBAAA;AX6hBJ;AW1hBE;EACE,iBHRiB;EGSjB,gBAAA;AX4hBJ;AWzhBE;EACE,UAAA;AX2hBJ;AWxhBE;EACE,WHXmC;ARqiBvC;AWvhBE;EACE,yBHlB4B;EGmB5B,YHlB4B;AR2iBhC;AWthBE;EACE,eAAA;EACA,cAAA;EACA,YAAA;AXwhBJ;AWrhBE;EACE,qBHlDiB;ARykBrB\",\"sourcesContent\":[\".select2-container {\\n box-sizing: border-box;\\n\\n display: inline-block;\\n margin: 0;\\n position: relative;\\n vertical-align: middle;\\n\\n @import \\\"single\\\";\\n @import \\\"multiple\\\";\\n}\\n\\n@import \\\"dropdown\\\";\\n\\n.select2-close-mask {\\n border: 0;\\n margin: 0;\\n padding: 0;\\n display: block;\\n position: fixed;\\n left: 0;\\n top: 0;\\n min-height: 100%;\\n min-width: 100%;\\n height: auto;\\n width: auto;\\n opacity: 0;\\n z-index: 99;\\n\\n // styles required for IE to work\\n\\n background-color: #fff;\\n filter: alpha(opacity=0);\\n}\\n\\n.select2-hidden-accessible {\\n border: 0 !important;\\n clip: rect(0 0 0 0) !important;\\n -webkit-clip-path: inset(50%) !important;\\n clip-path: inset(50%) !important;\\n height: 1px !important;\\n overflow: hidden !important;\\n padding: 0 !important;\\n position: absolute !important;\\n width: 1px !important;\\n white-space: nowrap !important;\\n}\\n\\n@import \\\"theme/default/layout\\\";\\n@import \\\"theme/classic/layout\\\";\\n\",\".select2-selection--single {\\n box-sizing: border-box;\\n\\n cursor: pointer;\\n display: block;\\n\\n height: 28px;\\n\\n user-select: none;\\n -webkit-user-select: none;\\n\\n .select2-selection__rendered {\\n display: block;\\n padding-left: 8px;\\n padding-right: 20px;\\n\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n }\\n\\n .select2-selection__clear {\\n background-color: transparent;\\n border: none;\\n font-size: 1em;\\n }\\n}\\n\\n&[dir=\\\"rtl\\\"] {\\n .select2-selection--single {\\n .select2-selection__rendered {\\n padding-right: 8px;\\n padding-left: 20px;\\n }\\n }\\n}\\n\",\".select2-selection--multiple {\\n box-sizing: border-box;\\n\\n cursor: pointer;\\n display: block;\\n\\n min-height: 32px;\\n\\n user-select: none;\\n -webkit-user-select: none;\\n\\n .select2-selection__rendered {\\n display: inline;\\n list-style: none;\\n padding: 0;\\n }\\n\\n .select2-selection__clear {\\n background-color: transparent;\\n border: none;\\n font-size: 1em;\\n }\\n}\\n\\n.select2-search--inline {\\n .select2-search__field {\\n box-sizing: border-box;\\n border: none;\\n font-size: 100%;\\n margin-top: 5px;\\n margin-left: 5px;\\n padding: 0;\\n max-width: 100%;\\n resize: none;\\n height: 18px;\\n vertical-align: bottom;\\n font-family: sans-serif;\\n overflow: hidden;\\n word-break: keep-all;\\n\\n &::-webkit-search-cancel-button {\\n -webkit-appearance: none;\\n }\\n }\\n}\\n\",\".select2-dropdown {\\n background-color: white;\\n\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n\\n box-sizing: border-box;\\n\\n display: block;\\n\\n position: absolute;\\n left: -100000px;\\n\\n width: 100%;\\n\\n z-index: 1051;\\n}\\n\\n.select2-results {\\n display: block;\\n}\\n\\n.select2-results__options {\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n}\\n\\n.select2-results__option {\\n padding: 6px;\\n\\n user-select: none;\\n -webkit-user-select: none;\\n}\\n\\n.select2-results__option--selectable {\\n cursor: pointer;\\n}\\n\\n.select2-container--open .select2-dropdown {\\n left: 0;\\n}\\n\\n.select2-container--open .select2-dropdown--above {\\n border-bottom: none;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n}\\n\\n.select2-container--open .select2-dropdown--below {\\n border-top: none;\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n}\\n\\n.select2-search--dropdown {\\n display: block;\\n padding: 4px;\\n\\n .select2-search__field {\\n padding: 4px;\\n width: 100%;\\n box-sizing: border-box;\\n\\n &::-webkit-search-cancel-button {\\n -webkit-appearance: none;\\n }\\n }\\n\\n &.select2-search--hide {\\n display: none;\\n }\\n}\\n\",\".select2-selection--single {\\n background-color: #fff;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n\\n .select2-selection__rendered {\\n color: #444;\\n line-height: 28px;\\n }\\n\\n .select2-selection__clear {\\n cursor: pointer;\\n float: right;\\n font-weight: bold;\\n height: 26px;\\n margin-right: 20px;\\n padding-right: 0px;\\n }\\n\\n .select2-selection__placeholder {\\n color: #999;\\n }\\n\\n .select2-selection__arrow {\\n height: 26px;\\n\\n position: absolute;\\n\\n top: 1px;\\n right: 1px;\\n\\n width: 20px;\\n\\n b {\\n border-color: #888 transparent transparent transparent;\\n border-style: solid;\\n border-width: 5px 4px 0 4px;\\n\\n height: 0;\\n left: 50%;\\n\\n margin-left: -4px;\\n margin-top: -2px;\\n\\n position: absolute;\\n\\n top: 50%;\\n width: 0;\\n }\\n }\\n}\\n\\n&[dir=\\\"rtl\\\"] {\\n .select2-selection--single {\\n .select2-selection__clear {\\n float: left;\\n }\\n\\n .select2-selection__arrow {\\n left: 1px;\\n right: auto;\\n }\\n }\\n}\\n\\n&.select2-container--disabled {\\n .select2-selection--single {\\n background-color: #eee;\\n cursor: default;\\n\\n .select2-selection__clear {\\n display: none;\\n }\\n }\\n}\\n\\n&.select2-container--open {\\n .select2-selection--single {\\n .select2-selection__arrow {\\n b {\\n border-color: transparent transparent #888 transparent;\\n border-width: 0 4px 5px 4px;\\n }\\n }\\n }\\n}\\n\",\".select2-selection--multiple {\\n background-color: white;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n cursor: text;\\n padding-bottom: 5px;\\n padding-right: 5px;\\n position: relative;\\n\\n &.select2-selection--clearable {\\n padding-right: 25px;\\n }\\n\\n .select2-selection__clear {\\n cursor: pointer;\\n font-weight: bold;\\n height: 20px;\\n margin-right: 10px;\\n margin-top: 5px;\\n\\n position: absolute;\\n right: 0;\\n\\n // This padding is to account for the bottom border for the first\\n // selection row and the top border of the second selection row.\\n // Without it, selections on the first row may be offset incorrectly\\n // and appear in their own row instead of going to the second row\\n padding: 1px;\\n }\\n\\n .select2-selection__choice {\\n background-color: #e4e4e4;\\n border: 1px solid #aaa;\\n border-radius: 4px;\\n box-sizing: border-box;\\n\\n display: inline-block;\\n margin-left: 5px;\\n margin-top: 5px;\\n padding: 0;\\n padding-left: 20px;\\n\\n position: relative;\\n\\n max-width: 100%;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n vertical-align: bottom;\\n white-space: nowrap;\\n }\\n\\n .select2-selection__choice__display {\\n cursor: default;\\n\\n padding-left: 2px;\\n padding-right: 5px;\\n }\\n\\n .select2-selection__choice__remove {\\n background-color: transparent;\\n border: none;\\n border-right: 1px solid #aaa;\\n border-top-left-radius: 4px;\\n border-bottom-left-radius: 4px;\\n\\n color: #999;\\n cursor: pointer;\\n\\n font-size: 1em;\\n font-weight: bold;\\n\\n padding: 0 4px;\\n\\n position: absolute;\\n left: 0;\\n top: 0;\\n\\n &:hover, &:focus {\\n background-color: #f1f1f1;\\n color: #333;\\n outline: none;\\n }\\n }\\n}\\n\\n&[dir=\\\"rtl\\\"] {\\n .select2-selection--multiple {\\n .select2-selection__choice {\\n margin-left: 5px;\\n margin-right: auto;\\n }\\n\\n .select2-selection__choice__display {\\n padding-left: 5px;\\n padding-right: 2px;\\n }\\n\\n .select2-selection__choice__remove {\\n border-left: 1px solid #aaa;\\n border-right: none;\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n border-top-right-radius: 4px;\\n border-bottom-right-radius: 4px;\\n }\\n\\n .select2-selection__clear {\\n float: left;\\n margin-left: 10px;\\n margin-right: auto;\\n }\\n }\\n}\\n\\n&.select2-container--focus {\\n .select2-selection--multiple {\\n border: solid black 1px;\\n outline: 0;\\n }\\n}\\n\\n&.select2-container--disabled {\\n .select2-selection--multiple {\\n background-color: #eee;\\n cursor: default;\\n }\\n\\n .select2-selection__choice__remove {\\n display: none;\\n }\\n}\\n\",\".select2-container--default {\\n @import \\\"single\\\";\\n @import \\\"multiple\\\";\\n\\n &.select2-container--open.select2-container--above {\\n .select2-selection--single, .select2-selection--multiple {\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n }\\n }\\n\\n &.select2-container--open.select2-container--below {\\n .select2-selection--single, .select2-selection--multiple {\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n }\\n }\\n\\n .select2-search--dropdown {\\n .select2-search__field {\\n border: 1px solid #aaa;\\n }\\n }\\n\\n .select2-search--inline {\\n .select2-search__field {\\n background: transparent;\\n border: none;\\n outline: 0;\\n box-shadow: none;\\n -webkit-appearance: textfield;\\n }\\n }\\n\\n .select2-results > .select2-results__options {\\n max-height: 200px;\\n overflow-y: auto;\\n }\\n\\n .select2-results__option {\\n .select2-results__option {\\n padding-left: 1em;\\n\\n .select2-results__group {\\n padding-left: 0;\\n }\\n\\n .select2-results__option {\\n margin-left: -1em;\\n padding-left: 2em;\\n\\n .select2-results__option {\\n margin-left: -2em;\\n padding-left: 3em;\\n\\n .select2-results__option {\\n margin-left: -3em;\\n padding-left: 4em;\\n\\n .select2-results__option {\\n margin-left: -4em;\\n padding-left: 5em;\\n\\n .select2-results__option {\\n margin-left: -5em;\\n padding-left: 6em;\\n }\\n }\\n }\\n }\\n }\\n }\\n }\\n\\n .select2-results__option--group {\\n padding: 0;\\n }\\n\\n .select2-results__option--disabled {\\n color: #999;\\n }\\n\\n .select2-results__option--selected {\\n background-color: #ddd;\\n }\\n\\n .select2-results__option--highlighted.select2-results__option--selectable {\\n background-color: #5897fb;\\n color: white;\\n }\\n\\n .select2-results__group {\\n cursor: default;\\n display: block;\\n padding: 6px;\\n }\\n}\\n\",\".select2-selection--single {\\n background-color: mix($selection-bg-top-color, $selection-bg-bottom-color);\\n\\n border: 1px solid $border-color;\\n border-radius: $border-radius;\\n\\n outline: 0;\\n\\n @include gradient-vertical($selection-bg-top-color, $selection-bg-bottom-color, 50%, 100%);\\n\\n &:focus {\\n border: 1px solid $focus-border-color;\\n }\\n\\n .select2-selection__rendered {\\n color: #444;\\n line-height: 28px;\\n }\\n\\n .select2-selection__clear {\\n cursor: pointer;\\n float: right;\\n font-weight: bold;\\n height: 26px;\\n margin-right: 20px;\\n }\\n\\n .select2-selection__placeholder {\\n color: #999;\\n }\\n\\n .select2-selection__arrow {\\n background-color: #ddd;\\n\\n border: none;\\n border-left: 1px solid $border-color;\\n border-top-right-radius: $border-radius;\\n border-bottom-right-radius: $border-radius;\\n\\n height: 26px;\\n\\n position: absolute;\\n\\n top: 1px;\\n right: 1px;\\n\\n width: 20px;\\n\\n @include gradient-vertical(#eeeeee, #cccccc, 50%, 100%);\\n\\n b {\\n border-color: #888 transparent transparent transparent;\\n border-style: solid;\\n border-width: 5px 4px 0 4px;\\n\\n height: 0;\\n left: 50%;\\n\\n margin-left: -4px;\\n margin-top: -2px;\\n\\n position: absolute;\\n\\n top: 50%;\\n width: 0;\\n }\\n }\\n}\\n\\n&[dir=\\\"rtl\\\"] {\\n .select2-selection--single {\\n .select2-selection__clear {\\n float: left;\\n }\\n\\n .select2-selection__arrow {\\n border: none;\\n border-right: 1px solid $border-color;\\n\\n border-radius: 0;\\n border-top-left-radius: $border-radius;\\n border-bottom-left-radius: $border-radius;\\n\\n left: 1px;\\n right: auto;\\n }\\n }\\n}\\n\\n&.select2-container--open {\\n .select2-selection--single {\\n border: 1px solid $focus-border-color;\\n\\n .select2-selection__arrow {\\n background: transparent;\\n\\n border: none;\\n\\n b {\\n border-color: transparent transparent #888 transparent;\\n border-width: 0 4px 5px 4px;\\n }\\n }\\n }\\n\\n &.select2-container--above {\\n .select2-selection--single {\\n border-top: none;\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n\\n @include gradient-vertical($selection-opened-bg-bottom-color, $selection-opened-bg-top-color, 0%, 50%);\\n }\\n }\\n\\n &.select2-container--below {\\n .select2-selection--single {\\n border-bottom: none;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n\\n @include gradient-vertical($selection-opened-bg-top-color, $selection-opened-bg-bottom-color, 50%, 100%);\\n }\\n }\\n}\\n\",\"$remove-color: #888 !default;\\n$remove-hover-color: #555 !default;\\n$remove-width: 20px !default;\\n\\n$selection-color: #444 !default;\\n\\n$border-color: #aaa !default;\\n$border-radius: 4px !default;\\n\\n$focus-border-color: #5897fb !default;\\n\\n$container-height: 28px !default;\\n\\n$selection-bg-top-color: white !default;\\n$selection-bg-bottom-color: #eeeeee !default;\\n\\n$container-placeholder-color: #999 !default;\\n\\n$container-focus-border-color: blue !default;\\n\\n$selection-opened-bg-top-color: $selection-bg-bottom-color !default;\\n$selection-opened-bg-bottom-color: $selection-bg-top-color !default;\\n\\n$dropdown-z-index: 1 !default;\\n\\n$dropdown-bg-color: $selection-bg-top-color !default;\\n\\n$results-max-height: 200px !default;\\n$results-nested-padding: 20px !default;\\n\\n$results-choice-bg-hover-color: #3875d7 !default;\\n$results-choice-fg-hover-color: white !default;\\n\\n$results-choice-fg-unselectable-color: grey !default;\\n\",\"// https://github.com/twbs/bootstrap-sass/blob/3.3-stable/assets/stylesheets/bootstrap/mixins/_gradients.scss#L17-L27\\n\\n// Vertical gradient, from top to bottom\\n//\\n// Creates two color stops, start and end, by specifying a color and position for each color stop.\\n// Color stops are not available in IE9 and below.\\n@mixin gradient-vertical($start-color: #555, $end-color: #333, $start-percent: 0%, $end-percent: 100%) {\\n background-image: -webkit-linear-gradient(top, $start-color $start-percent, $end-color $end-percent); // Safari 5.1-6, Chrome 10+\\n background-image: -o-linear-gradient(top, $start-color $start-percent, $end-color $end-percent); // Opera 12\\n background-image: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\\n background-repeat: repeat-x;\\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=0); // IE9 and down\\n}\\n\",\".select2-selection--multiple {\\n background-color: white;\\n\\n border: 1px solid $border-color;\\n border-radius: $border-radius;\\n\\n cursor: text;\\n\\n outline: 0;\\n\\n padding-bottom: 5px;\\n padding-right: 5px;\\n\\n &:focus {\\n border: 1px solid $focus-border-color;\\n }\\n\\n .select2-selection__clear {\\n display: none;\\n }\\n\\n .select2-selection__choice {\\n background-color: #e4e4e4;\\n border: 1px solid $border-color;\\n border-radius: $border-radius;\\n\\n display: inline-block;\\n margin-left: 5px;\\n margin-top: 5px;\\n padding: 0;\\n }\\n\\n .select2-selection__choice__display {\\n cursor: default;\\n\\n padding-left: 2px;\\n padding-right: 5px;\\n }\\n\\n .select2-selection__choice__remove {\\n background-color: transparent;\\n border: none;\\n border-top-left-radius: $border-radius;\\n border-bottom-left-radius: $border-radius;\\n\\n color: $remove-color;\\n cursor: pointer;\\n\\n font-size: 1em;\\n font-weight: bold;\\n\\n padding: 0 4px;\\n\\n &:hover {\\n color: $remove-hover-color;\\n outline: none;\\n }\\n }\\n}\\n\\n&[dir=\\\"rtl\\\"] {\\n .select2-selection--multiple {\\n .select2-selection__choice {\\n margin-left: 5px;\\n margin-right: auto;\\n }\\n\\n .select2-selection__choice__display {\\n padding-left: 5px;\\n padding-right: 2px;\\n }\\n\\n .select2-selection__choice__remove {\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n border-top-right-radius: $border-radius;\\n border-bottom-right-radius: $border-radius;\\n }\\n }\\n}\\n\\n&.select2-container--open {\\n .select2-selection--multiple {\\n border: 1px solid $focus-border-color;\\n }\\n\\n &.select2-container--above {\\n .select2-selection--multiple {\\n border-top: none;\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n }\\n }\\n\\n &.select2-container--below {\\n .select2-selection--multiple {\\n border-bottom: none;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n }\\n }\\n}\\n\",\"@import \\\"defaults\\\";\\n@import \\\"../../mixins/gradients\\\";\\n\\n.select2-container--classic {\\n @import \\\"single\\\";\\n @import \\\"multiple\\\";\\n\\n .select2-search--dropdown {\\n .select2-search__field {\\n border: 1px solid $border-color;\\n outline: 0;\\n }\\n }\\n\\n .select2-search--inline {\\n .select2-search__field {\\n outline: 0;\\n box-shadow: none;\\n }\\n }\\n\\n .select2-dropdown {\\n background-color: $dropdown-bg-color;\\n border: 1px solid transparent;\\n }\\n\\n .select2-dropdown--above {\\n border-bottom: none;\\n }\\n\\n .select2-dropdown--below {\\n border-top: none;\\n }\\n\\n .select2-results > .select2-results__options {\\n max-height: $results-max-height;\\n overflow-y: auto;\\n }\\n\\n .select2-results__option--group {\\n padding: 0;\\n }\\n\\n .select2-results__option--disabled {\\n color: $results-choice-fg-unselectable-color;\\n }\\n\\n .select2-results__option--highlighted.select2-results__option--selectable {\\n background-color: $results-choice-bg-hover-color;\\n color: $results-choice-fg-hover-color;\\n }\\n\\n .select2-results__group {\\n cursor: default;\\n display: block;\\n padding: 6px;\\n }\\n\\n &.select2-container--open .select2-dropdown {\\n border-color: $focus-border-color;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\nvar ShortUniqueId = (() => {\n var __defProp = Object.defineProperty;\n var __getOwnPropDesc = Object.getOwnPropertyDescriptor;\n var __getOwnPropNames = Object.getOwnPropertyNames;\n var __getOwnPropSymbols = Object.getOwnPropertySymbols;\n var __hasOwnProp = Object.prototype.hasOwnProperty;\n var __propIsEnum = Object.prototype.propertyIsEnumerable;\n var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\n var __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n };\n var __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n };\n var __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n };\n var __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n var __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n };\n\n // src/index.ts\n var src_exports = {};\n __export(src_exports, {\n DEFAULT_OPTIONS: () => DEFAULT_OPTIONS,\n DEFAULT_UUID_LENGTH: () => DEFAULT_UUID_LENGTH,\n default: () => ShortUniqueId\n });\n\n // package.json\n var version = \"5.2.0\";\n\n // src/index.ts\n var DEFAULT_UUID_LENGTH = 6;\n var DEFAULT_OPTIONS = {\n dictionary: \"alphanum\",\n shuffle: true,\n debug: false,\n length: DEFAULT_UUID_LENGTH,\n counter: 0\n };\n var _ShortUniqueId = class _ShortUniqueId {\n constructor(argOptions = {}) {\n __publicField(this, \"counter\");\n __publicField(this, \"debug\");\n __publicField(this, \"dict\");\n __publicField(this, \"version\");\n __publicField(this, \"dictIndex\", 0);\n __publicField(this, \"dictRange\", []);\n __publicField(this, \"lowerBound\", 0);\n __publicField(this, \"upperBound\", 0);\n __publicField(this, \"dictLength\", 0);\n __publicField(this, \"uuidLength\");\n __publicField(this, \"_digit_first_ascii\", 48);\n __publicField(this, \"_digit_last_ascii\", 58);\n __publicField(this, \"_alpha_lower_first_ascii\", 97);\n __publicField(this, \"_alpha_lower_last_ascii\", 123);\n __publicField(this, \"_hex_last_ascii\", 103);\n __publicField(this, \"_alpha_upper_first_ascii\", 65);\n __publicField(this, \"_alpha_upper_last_ascii\", 91);\n __publicField(this, \"_number_dict_ranges\", {\n digits: [this._digit_first_ascii, this._digit_last_ascii]\n });\n __publicField(this, \"_alpha_dict_ranges\", {\n lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],\n upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]\n });\n __publicField(this, \"_alpha_lower_dict_ranges\", {\n lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]\n });\n __publicField(this, \"_alpha_upper_dict_ranges\", {\n upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]\n });\n __publicField(this, \"_alphanum_dict_ranges\", {\n digits: [this._digit_first_ascii, this._digit_last_ascii],\n lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],\n upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]\n });\n __publicField(this, \"_alphanum_lower_dict_ranges\", {\n digits: [this._digit_first_ascii, this._digit_last_ascii],\n lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]\n });\n __publicField(this, \"_alphanum_upper_dict_ranges\", {\n digits: [this._digit_first_ascii, this._digit_last_ascii],\n upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]\n });\n __publicField(this, \"_hex_dict_ranges\", {\n decDigits: [this._digit_first_ascii, this._digit_last_ascii],\n alphaDigits: [this._alpha_lower_first_ascii, this._hex_last_ascii]\n });\n __publicField(this, \"_dict_ranges\", {\n _number_dict_ranges: this._number_dict_ranges,\n _alpha_dict_ranges: this._alpha_dict_ranges,\n _alpha_lower_dict_ranges: this._alpha_lower_dict_ranges,\n _alpha_upper_dict_ranges: this._alpha_upper_dict_ranges,\n _alphanum_dict_ranges: this._alphanum_dict_ranges,\n _alphanum_lower_dict_ranges: this._alphanum_lower_dict_ranges,\n _alphanum_upper_dict_ranges: this._alphanum_upper_dict_ranges,\n _hex_dict_ranges: this._hex_dict_ranges\n });\n /* tslint:disable consistent-return */\n __publicField(this, \"log\", (...args) => {\n const finalArgs = [...args];\n finalArgs[0] = `[short-unique-id] ${args[0]}`;\n if (this.debug === true) {\n if (typeof console !== \"undefined\" && console !== null) {\n return console.log(...finalArgs);\n }\n }\n });\n /* tslint:enable consistent-return */\n __publicField(this, \"_normalizeDictionary\", (dictionary, shuffle) => {\n let finalDict;\n if (dictionary && Array.isArray(dictionary) && dictionary.length > 1) {\n finalDict = dictionary;\n } else {\n finalDict = [];\n let i;\n this.dictIndex = i = 0;\n const rangesName = `_${dictionary}_dict_ranges`;\n const ranges = this._dict_ranges[rangesName];\n Object.keys(ranges).forEach((rangeType) => {\n const rangeTypeKey = rangeType;\n this.dictRange = ranges[rangeTypeKey];\n this.lowerBound = this.dictRange[0];\n this.upperBound = this.dictRange[1];\n for (this.dictIndex = i = this.lowerBound; this.lowerBound <= this.upperBound ? i < this.upperBound : i > this.upperBound; this.dictIndex = this.lowerBound <= this.upperBound ? i += 1 : i -= 1) {\n finalDict.push(String.fromCharCode(this.dictIndex));\n }\n });\n }\n if (shuffle) {\n const PROBABILITY = 0.5;\n finalDict = finalDict.sort(() => Math.random() - PROBABILITY);\n }\n return finalDict;\n });\n /** Change the dictionary after initialization. */\n __publicField(this, \"setDictionary\", (dictionary, shuffle) => {\n this.dict = this._normalizeDictionary(dictionary, shuffle);\n this.dictLength = this.dict.length;\n this.setCounter(0);\n });\n __publicField(this, \"seq\", () => {\n return this.sequentialUUID();\n });\n /**\n * Generates UUID based on internal counter that's incremented after each ID generation.\n * @alias `const uid = new ShortUniqueId(); uid.seq();`\n */\n __publicField(this, \"sequentialUUID\", () => {\n let counterDiv;\n let counterRem;\n let id = \"\";\n counterDiv = this.counter;\n do {\n counterRem = counterDiv % this.dictLength;\n counterDiv = Math.trunc(counterDiv / this.dictLength);\n id += this.dict[counterRem];\n } while (counterDiv !== 0);\n this.counter += 1;\n return id;\n });\n __publicField(this, \"rnd\", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {\n return this.randomUUID(uuidLength);\n });\n /**\n * Generates UUID by creating each part randomly.\n * @alias `const uid = new ShortUniqueId(); uid.rnd(uuidLength: number);`\n */\n __publicField(this, \"randomUUID\", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {\n let id;\n let randomPartIdx;\n let j;\n if (uuidLength === null || typeof uuidLength === \"undefined\" || uuidLength < 1) {\n throw new Error(\"Invalid UUID Length Provided\");\n }\n const isPositive = uuidLength >= 0;\n id = \"\";\n for (j = 0; j < uuidLength; j += 1) {\n randomPartIdx = parseInt(\n (Math.random() * this.dictLength).toFixed(0),\n 10\n ) % this.dictLength;\n id += this.dict[randomPartIdx];\n }\n return id;\n });\n __publicField(this, \"fmt\", (format, date) => {\n return this.formattedUUID(format, date);\n });\n /**\n * Generates custom UUID with the provided format string.\n * @alias `const uid = new ShortUniqueId(); uid.fmt(format: string);`\n */\n __publicField(this, \"formattedUUID\", (format, date) => {\n const fnMap = {\n \"$r\": this.randomUUID,\n \"$s\": this.sequentialUUID,\n \"$t\": this.stamp\n };\n const result = format.replace(\n /\\$[rs]\\d{0,}|\\$t0|\\$t[1-9]\\d{1,}/g,\n (m) => {\n const fn = m.slice(0, 2);\n const len = parseInt(m.slice(2), 10);\n if (fn === \"$s\") {\n return fnMap[fn]().padStart(len, \"0\");\n }\n if (fn === \"$t\" && date) {\n return fnMap[fn](len, date);\n }\n return fnMap[fn](len);\n }\n );\n return result;\n });\n /**\n * Calculates total number of possible UUIDs.\n *\n * Given that:\n *\n * - `H` is the total number of possible UUIDs\n * - `n` is the number of unique characters in the dictionary\n * - `l` is the UUID length\n *\n * Then `H` is defined as `n` to the power of `l`:\n *\n *
\n * \n *
\n *\n * This function returns `H`.\n */\n __publicField(this, \"availableUUIDs\", (uuidLength = this.uuidLength) => {\n return parseFloat(\n Math.pow([...new Set(this.dict)].length, uuidLength).toFixed(0)\n );\n });\n /**\n * Calculates approximate number of hashes before first collision.\n *\n * Given that:\n *\n * - `H` is the total number of possible UUIDs, or in terms of this library,\n * the result of running `availableUUIDs()`\n * - the expected number of values we have to choose before finding the\n * first collision can be expressed as the quantity `Q(H)`\n *\n * Then `Q(H)` can be approximated as the square root of the product of half\n * of pi times `H`:\n *\n *
\n * \n *
\n *\n * This function returns `Q(H)`.\n * \n * (see [Poisson distribution](https://en.wikipedia.org/wiki/Poisson_distribution))\n */\n __publicField(this, \"approxMaxBeforeCollision\", (rounds = this.availableUUIDs(this.uuidLength)) => {\n return parseFloat(\n Math.sqrt(Math.PI / 2 * rounds).toFixed(20)\n );\n });\n /**\n * Calculates probability of generating duplicate UUIDs (a collision) in a\n * given number of UUID generation rounds.\n *\n * Given that:\n *\n * - `r` is the maximum number of times that `randomUUID()` will be called,\n * or better said the number of _rounds_\n * - `H` is the total number of possible UUIDs, or in terms of this library,\n * the result of running `availableUUIDs()`\n *\n * Then the probability of collision `p(r; H)` can be approximated as the result\n * of dividing the square root of the product of half of pi times `r` by `H`:\n *\n *
\n * \n *
\n *\n * This function returns `p(r; H)`.\n * \n * (see [Poisson distribution](https://en.wikipedia.org/wiki/Poisson_distribution))\n *\n * (Useful if you are wondering _\"If I use this lib and expect to perform at most\n * `r` rounds of UUID generations, what is the probability that I will hit a duplicate UUID?\"_.)\n */\n __publicField(this, \"collisionProbability\", (rounds = this.availableUUIDs(this.uuidLength), uuidLength = this.uuidLength) => {\n return parseFloat(\n (this.approxMaxBeforeCollision(rounds) / this.availableUUIDs(uuidLength)).toFixed(20)\n );\n });\n /**\n * Calculate a \"uniqueness\" score (from 0 to 1) of UUIDs based on size of\n * dictionary and chosen UUID length.\n *\n * Given that:\n *\n * - `H` is the total number of possible UUIDs, or in terms of this library,\n * the result of running `availableUUIDs()`\n * - `Q(H)` is the approximate number of hashes before first collision,\n * or in terms of this library, the result of running `approxMaxBeforeCollision()`\n *\n * Then `uniqueness` can be expressed as the additive inverse of the probability of\n * generating a \"word\" I had previously generated (a duplicate) at any given iteration\n * up to the the total number of possible UUIDs expressed as the quotiend of `Q(H)` and `H`:\n *\n *
\n * \n *
\n *\n * (Useful if you need a value to rate the \"quality\" of the combination of given dictionary\n * and UUID length. The closer to 1, higher the uniqueness and thus better the quality.)\n */\n __publicField(this, \"uniqueness\", (rounds = this.availableUUIDs(this.uuidLength)) => {\n const score = parseFloat(\n (1 - this.approxMaxBeforeCollision(rounds) / rounds).toFixed(20)\n );\n return score > 1 ? 1 : score < 0 ? 0 : score;\n });\n /**\n * Return the version of this module.\n */\n __publicField(this, \"getVersion\", () => {\n return this.version;\n });\n /**\n * Generates a UUID with a timestamp that can be extracted using `uid.parseStamp(stampString);`.\n * \n * ```js\n * const uidWithTimestamp = uid.stamp(32);\n * console.log(uidWithTimestamp);\n * // GDa608f973aRCHLXQYPTbKDbjDeVsSb3\n * \n * console.log(uid.parseStamp(uidWithTimestamp));\n * // 2021-05-03T06:24:58.000Z\n * ```\n */\n __publicField(this, \"stamp\", (finalLength, date) => {\n const hexStamp = Math.floor(+(date || /* @__PURE__ */ new Date()) / 1e3).toString(16);\n if (typeof finalLength === \"number\" && finalLength === 0) {\n return hexStamp;\n }\n if (typeof finalLength !== \"number\" || finalLength < 10) {\n throw new Error(\n [\n \"Param finalLength must be a number greater than or equal to 10,\",\n \"or 0 if you want the raw hexadecimal timestamp\"\n ].join(\"\\n\")\n );\n }\n const idLength = finalLength - 9;\n const rndIdx = Math.round(Math.random() * (idLength > 15 ? 15 : idLength));\n const id = this.randomUUID(idLength);\n return `${id.substring(0, rndIdx)}${hexStamp}${id.substring(rndIdx)}${rndIdx.toString(16)}`;\n });\n /**\n * Extracts the date embeded in a UUID generated using the `uid.stamp(finalLength);` method.\n * \n * ```js\n * const uidWithTimestamp = uid.stamp(32);\n * console.log(uidWithTimestamp);\n * // GDa608f973aRCHLXQYPTbKDbjDeVsSb3\n * \n * console.log(uid.parseStamp(uidWithTimestamp));\n * // 2021-05-03T06:24:58.000Z\n * ```\n */\n __publicField(this, \"parseStamp\", (suid, format) => {\n if (format && !/t0|t[1-9]\\d{1,}/.test(format)) {\n throw new Error(\"Cannot extract date from a formated UUID with no timestamp in the format\");\n }\n const stamp = format ? format.replace(\n /\\$[rs]\\d{0,}|\\$t0|\\$t[1-9]\\d{1,}/g,\n (m) => {\n const fnMap = {\n \"$r\": (len2) => [...Array(len2)].map(() => \"r\").join(\"\"),\n \"$s\": (len2) => [...Array(len2)].map(() => \"s\").join(\"\"),\n \"$t\": (len2) => [...Array(len2)].map(() => \"t\").join(\"\")\n };\n const fn = m.slice(0, 2);\n const len = parseInt(m.slice(2), 10);\n return fnMap[fn](len);\n }\n ).replace(\n /^(.*?)(t{8,})(.*)$/g,\n (_m, p1, p2) => {\n return suid.substring(p1.length, p1.length + p2.length);\n }\n ) : suid;\n if (stamp.length === 8) {\n return new Date(parseInt(stamp, 16) * 1e3);\n }\n if (stamp.length < 10) {\n throw new Error(\"Stamp length invalid\");\n }\n const rndIdx = parseInt(stamp.substring(stamp.length - 1), 16);\n return new Date(parseInt(stamp.substring(rndIdx, rndIdx + 8), 16) * 1e3);\n });\n /**\n * Set the counter to a specific value.\n */\n __publicField(this, \"setCounter\", (counter) => {\n this.counter = counter;\n });\n /**\n * Validate given UID contains only characters from the instanced dictionary or optionally provided dictionary.\n */\n __publicField(this, \"validate\", (uid, dictionary) => {\n const finalDictionary = dictionary ? this._normalizeDictionary(dictionary) : this.dict;\n return uid.split(\"\").every((c) => finalDictionary.includes(c));\n });\n const options = __spreadValues(__spreadValues({}, DEFAULT_OPTIONS), argOptions);\n this.counter = 0;\n this.debug = false;\n this.dict = [];\n this.version = version;\n const {\n dictionary,\n shuffle,\n length,\n counter\n } = options;\n this.uuidLength = length;\n this.setDictionary(dictionary, shuffle);\n this.setCounter(counter);\n this.debug = options.debug;\n this.log(this.dict);\n this.log(\n `Generator instantiated with Dictionary Size ${this.dictLength} and counter set to ${this.counter}`\n );\n this.log = this.log.bind(this);\n this.setDictionary = this.setDictionary.bind(this);\n this.setCounter = this.setCounter.bind(this);\n this.seq = this.seq.bind(this);\n this.sequentialUUID = this.sequentialUUID.bind(this);\n this.rnd = this.rnd.bind(this);\n this.randomUUID = this.randomUUID.bind(this);\n this.fmt = this.fmt.bind(this);\n this.formattedUUID = this.formattedUUID.bind(this);\n this.availableUUIDs = this.availableUUIDs.bind(this);\n this.approxMaxBeforeCollision = this.approxMaxBeforeCollision.bind(this);\n this.collisionProbability = this.collisionProbability.bind(this);\n this.uniqueness = this.uniqueness.bind(this);\n this.getVersion = this.getVersion.bind(this);\n this.stamp = this.stamp.bind(this);\n this.parseStamp = this.parseStamp.bind(this);\n return this;\n }\n };\n /** @hidden */\n __publicField(_ShortUniqueId, \"default\", _ShortUniqueId);\n var ShortUniqueId = _ShortUniqueId;\n return __toCommonJS(src_exports);\n})();\n//# sourceMappingURL=short-unique-id.js.map\n'undefined'!=typeof module&&(module.exports=ShortUniqueId.default),'undefined'!=typeof window&&(ShortUniqueId=ShortUniqueId.default);","import {epsilon, splitter, resulterrbound, estimate, vec, sum, sum_three, scale} from './util.js';\n\nconst iccerrboundA = (10 + 96 * epsilon) * epsilon;\nconst iccerrboundB = (4 + 48 * epsilon) * epsilon;\nconst iccerrboundC = (44 + 576 * epsilon) * epsilon * epsilon;\n\nconst bc = vec(4);\nconst ca = vec(4);\nconst ab = vec(4);\nconst aa = vec(4);\nconst bb = vec(4);\nconst cc = vec(4);\nconst u = vec(4);\nconst v = vec(4);\nconst axtbc = vec(8);\nconst aytbc = vec(8);\nconst bxtca = vec(8);\nconst bytca = vec(8);\nconst cxtab = vec(8);\nconst cytab = vec(8);\nconst abt = vec(8);\nconst bct = vec(8);\nconst cat = vec(8);\nconst abtt = vec(4);\nconst bctt = vec(4);\nconst catt = vec(4);\n\nconst _8 = vec(8);\nconst _16 = vec(16);\nconst _16b = vec(16);\nconst _16c = vec(16);\nconst _32 = vec(32);\nconst _32b = vec(32);\nconst _48 = vec(48);\nconst _64 = vec(64);\n\nlet fin = vec(1152);\nlet fin2 = vec(1152);\n\nfunction finadd(finlen, a, alen) {\n finlen = sum(finlen, fin, a, alen, fin2);\n const tmp = fin; fin = fin2; fin2 = tmp;\n return finlen;\n}\n\nfunction incircleadapt(ax, ay, bx, by, cx, cy, dx, dy, permanent) {\n let finlen;\n let adxtail, bdxtail, cdxtail, adytail, bdytail, cdytail;\n let axtbclen, aytbclen, bxtcalen, bytcalen, cxtablen, cytablen;\n let abtlen, bctlen, catlen;\n let abttlen, bcttlen, cattlen;\n let n1, n0;\n\n let bvirt, c, ahi, alo, bhi, blo, _i, _j, _0, s1, s0, t1, t0, u3;\n\n const adx = ax - dx;\n const bdx = bx - dx;\n const cdx = cx - dx;\n const ady = ay - dy;\n const bdy = by - dy;\n const cdy = cy - dy;\n\n s1 = bdx * cdy;\n c = splitter * bdx;\n ahi = c - (c - bdx);\n alo = bdx - ahi;\n c = splitter * cdy;\n bhi = c - (c - cdy);\n blo = cdy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cdx * bdy;\n c = splitter * cdx;\n ahi = c - (c - cdx);\n alo = cdx - ahi;\n c = splitter * bdy;\n bhi = c - (c - bdy);\n blo = bdy - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n bc[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n bc[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n bc[2] = _j - (u3 - bvirt) + (_i - bvirt);\n bc[3] = u3;\n s1 = cdx * ady;\n c = splitter * cdx;\n ahi = c - (c - cdx);\n alo = cdx - ahi;\n c = splitter * ady;\n bhi = c - (c - ady);\n blo = ady - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = adx * cdy;\n c = splitter * adx;\n ahi = c - (c - adx);\n alo = adx - ahi;\n c = splitter * cdy;\n bhi = c - (c - cdy);\n blo = cdy - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ca[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ca[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n ca[2] = _j - (u3 - bvirt) + (_i - bvirt);\n ca[3] = u3;\n s1 = adx * bdy;\n c = splitter * adx;\n ahi = c - (c - adx);\n alo = adx - ahi;\n c = splitter * bdy;\n bhi = c - (c - bdy);\n blo = bdy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = bdx * ady;\n c = splitter * bdx;\n ahi = c - (c - bdx);\n alo = bdx - ahi;\n c = splitter * ady;\n bhi = c - (c - ady);\n blo = ady - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ab[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ab[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n ab[2] = _j - (u3 - bvirt) + (_i - bvirt);\n ab[3] = u3;\n\n finlen = sum(\n sum(\n sum(\n scale(scale(4, bc, adx, _8), _8, adx, _16), _16,\n scale(scale(4, bc, ady, _8), _8, ady, _16b), _16b, _32), _32,\n sum(\n scale(scale(4, ca, bdx, _8), _8, bdx, _16), _16,\n scale(scale(4, ca, bdy, _8), _8, bdy, _16b), _16b, _32b), _32b, _64), _64,\n sum(\n scale(scale(4, ab, cdx, _8), _8, cdx, _16), _16,\n scale(scale(4, ab, cdy, _8), _8, cdy, _16b), _16b, _32), _32, fin);\n\n let det = estimate(finlen, fin);\n let errbound = iccerrboundB * permanent;\n if (det >= errbound || -det >= errbound) {\n return det;\n }\n\n bvirt = ax - adx;\n adxtail = ax - (adx + bvirt) + (bvirt - dx);\n bvirt = ay - ady;\n adytail = ay - (ady + bvirt) + (bvirt - dy);\n bvirt = bx - bdx;\n bdxtail = bx - (bdx + bvirt) + (bvirt - dx);\n bvirt = by - bdy;\n bdytail = by - (bdy + bvirt) + (bvirt - dy);\n bvirt = cx - cdx;\n cdxtail = cx - (cdx + bvirt) + (bvirt - dx);\n bvirt = cy - cdy;\n cdytail = cy - (cdy + bvirt) + (bvirt - dy);\n if (adxtail === 0 && bdxtail === 0 && cdxtail === 0 && adytail === 0 && bdytail === 0 && cdytail === 0) {\n return det;\n }\n\n errbound = iccerrboundC * permanent + resulterrbound * Math.abs(det);\n det += ((adx * adx + ady * ady) * ((bdx * cdytail + cdy * bdxtail) - (bdy * cdxtail + cdx * bdytail)) +\n 2 * (adx * adxtail + ady * adytail) * (bdx * cdy - bdy * cdx)) +\n ((bdx * bdx + bdy * bdy) * ((cdx * adytail + ady * cdxtail) - (cdy * adxtail + adx * cdytail)) +\n 2 * (bdx * bdxtail + bdy * bdytail) * (cdx * ady - cdy * adx)) +\n ((cdx * cdx + cdy * cdy) * ((adx * bdytail + bdy * adxtail) - (ady * bdxtail + bdx * adytail)) +\n 2 * (cdx * cdxtail + cdy * cdytail) * (adx * bdy - ady * bdx));\n\n if (det >= errbound || -det >= errbound) {\n return det;\n }\n\n if (bdxtail !== 0 || bdytail !== 0 || cdxtail !== 0 || cdytail !== 0) {\n s1 = adx * adx;\n c = splitter * adx;\n ahi = c - (c - adx);\n alo = adx - ahi;\n s0 = alo * alo - (s1 - ahi * ahi - (ahi + ahi) * alo);\n t1 = ady * ady;\n c = splitter * ady;\n ahi = c - (c - ady);\n alo = ady - ahi;\n t0 = alo * alo - (t1 - ahi * ahi - (ahi + ahi) * alo);\n _i = s0 + t0;\n bvirt = _i - s0;\n aa[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n aa[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n aa[2] = _j - (u3 - bvirt) + (_i - bvirt);\n aa[3] = u3;\n }\n if (cdxtail !== 0 || cdytail !== 0 || adxtail !== 0 || adytail !== 0) {\n s1 = bdx * bdx;\n c = splitter * bdx;\n ahi = c - (c - bdx);\n alo = bdx - ahi;\n s0 = alo * alo - (s1 - ahi * ahi - (ahi + ahi) * alo);\n t1 = bdy * bdy;\n c = splitter * bdy;\n ahi = c - (c - bdy);\n alo = bdy - ahi;\n t0 = alo * alo - (t1 - ahi * ahi - (ahi + ahi) * alo);\n _i = s0 + t0;\n bvirt = _i - s0;\n bb[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n bb[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n bb[2] = _j - (u3 - bvirt) + (_i - bvirt);\n bb[3] = u3;\n }\n if (adxtail !== 0 || adytail !== 0 || bdxtail !== 0 || bdytail !== 0) {\n s1 = cdx * cdx;\n c = splitter * cdx;\n ahi = c - (c - cdx);\n alo = cdx - ahi;\n s0 = alo * alo - (s1 - ahi * ahi - (ahi + ahi) * alo);\n t1 = cdy * cdy;\n c = splitter * cdy;\n ahi = c - (c - cdy);\n alo = cdy - ahi;\n t0 = alo * alo - (t1 - ahi * ahi - (ahi + ahi) * alo);\n _i = s0 + t0;\n bvirt = _i - s0;\n cc[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n cc[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n cc[2] = _j - (u3 - bvirt) + (_i - bvirt);\n cc[3] = u3;\n }\n\n if (adxtail !== 0) {\n axtbclen = scale(4, bc, adxtail, axtbc);\n finlen = finadd(finlen, sum_three(\n scale(axtbclen, axtbc, 2 * adx, _16), _16,\n scale(scale(4, cc, adxtail, _8), _8, bdy, _16b), _16b,\n scale(scale(4, bb, adxtail, _8), _8, -cdy, _16c), _16c, _32, _48), _48);\n }\n if (adytail !== 0) {\n aytbclen = scale(4, bc, adytail, aytbc);\n finlen = finadd(finlen, sum_three(\n scale(aytbclen, aytbc, 2 * ady, _16), _16,\n scale(scale(4, bb, adytail, _8), _8, cdx, _16b), _16b,\n scale(scale(4, cc, adytail, _8), _8, -bdx, _16c), _16c, _32, _48), _48);\n }\n if (bdxtail !== 0) {\n bxtcalen = scale(4, ca, bdxtail, bxtca);\n finlen = finadd(finlen, sum_three(\n scale(bxtcalen, bxtca, 2 * bdx, _16), _16,\n scale(scale(4, aa, bdxtail, _8), _8, cdy, _16b), _16b,\n scale(scale(4, cc, bdxtail, _8), _8, -ady, _16c), _16c, _32, _48), _48);\n }\n if (bdytail !== 0) {\n bytcalen = scale(4, ca, bdytail, bytca);\n finlen = finadd(finlen, sum_three(\n scale(bytcalen, bytca, 2 * bdy, _16), _16,\n scale(scale(4, cc, bdytail, _8), _8, adx, _16b), _16b,\n scale(scale(4, aa, bdytail, _8), _8, -cdx, _16c), _16c, _32, _48), _48);\n }\n if (cdxtail !== 0) {\n cxtablen = scale(4, ab, cdxtail, cxtab);\n finlen = finadd(finlen, sum_three(\n scale(cxtablen, cxtab, 2 * cdx, _16), _16,\n scale(scale(4, bb, cdxtail, _8), _8, ady, _16b), _16b,\n scale(scale(4, aa, cdxtail, _8), _8, -bdy, _16c), _16c, _32, _48), _48);\n }\n if (cdytail !== 0) {\n cytablen = scale(4, ab, cdytail, cytab);\n finlen = finadd(finlen, sum_three(\n scale(cytablen, cytab, 2 * cdy, _16), _16,\n scale(scale(4, aa, cdytail, _8), _8, bdx, _16b), _16b,\n scale(scale(4, bb, cdytail, _8), _8, -adx, _16c), _16c, _32, _48), _48);\n }\n\n if (adxtail !== 0 || adytail !== 0) {\n if (bdxtail !== 0 || bdytail !== 0 || cdxtail !== 0 || cdytail !== 0) {\n s1 = bdxtail * cdy;\n c = splitter * bdxtail;\n ahi = c - (c - bdxtail);\n alo = bdxtail - ahi;\n c = splitter * cdy;\n bhi = c - (c - cdy);\n blo = cdy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = bdx * cdytail;\n c = splitter * bdx;\n ahi = c - (c - bdx);\n alo = bdx - ahi;\n c = splitter * cdytail;\n bhi = c - (c - cdytail);\n blo = cdytail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 + t0;\n bvirt = _i - s0;\n u[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n u[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n s1 = cdxtail * -bdy;\n c = splitter * cdxtail;\n ahi = c - (c - cdxtail);\n alo = cdxtail - ahi;\n c = splitter * -bdy;\n bhi = c - (c - -bdy);\n blo = -bdy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cdx * -bdytail;\n c = splitter * cdx;\n ahi = c - (c - cdx);\n alo = cdx - ahi;\n c = splitter * -bdytail;\n bhi = c - (c - -bdytail);\n blo = -bdytail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 + t0;\n bvirt = _i - s0;\n v[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n v[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n v[2] = _j - (u3 - bvirt) + (_i - bvirt);\n v[3] = u3;\n bctlen = sum(4, u, 4, v, bct);\n s1 = bdxtail * cdytail;\n c = splitter * bdxtail;\n ahi = c - (c - bdxtail);\n alo = bdxtail - ahi;\n c = splitter * cdytail;\n bhi = c - (c - cdytail);\n blo = cdytail - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cdxtail * bdytail;\n c = splitter * cdxtail;\n ahi = c - (c - cdxtail);\n alo = cdxtail - ahi;\n c = splitter * bdytail;\n bhi = c - (c - bdytail);\n blo = bdytail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n bctt[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n bctt[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n bctt[2] = _j - (u3 - bvirt) + (_i - bvirt);\n bctt[3] = u3;\n bcttlen = 4;\n } else {\n bct[0] = 0;\n bctlen = 1;\n bctt[0] = 0;\n bcttlen = 1;\n }\n if (adxtail !== 0) {\n const len = scale(bctlen, bct, adxtail, _16c);\n finlen = finadd(finlen, sum(\n scale(axtbclen, axtbc, adxtail, _16), _16,\n scale(len, _16c, 2 * adx, _32), _32, _48), _48);\n\n const len2 = scale(bcttlen, bctt, adxtail, _8);\n finlen = finadd(finlen, sum_three(\n scale(len2, _8, 2 * adx, _16), _16,\n scale(len2, _8, adxtail, _16b), _16b,\n scale(len, _16c, adxtail, _32), _32, _32b, _64), _64);\n\n if (bdytail !== 0) {\n finlen = finadd(finlen, scale(scale(4, cc, adxtail, _8), _8, bdytail, _16), _16);\n }\n if (cdytail !== 0) {\n finlen = finadd(finlen, scale(scale(4, bb, -adxtail, _8), _8, cdytail, _16), _16);\n }\n }\n if (adytail !== 0) {\n const len = scale(bctlen, bct, adytail, _16c);\n finlen = finadd(finlen, sum(\n scale(aytbclen, aytbc, adytail, _16), _16,\n scale(len, _16c, 2 * ady, _32), _32, _48), _48);\n\n const len2 = scale(bcttlen, bctt, adytail, _8);\n finlen = finadd(finlen, sum_three(\n scale(len2, _8, 2 * ady, _16), _16,\n scale(len2, _8, adytail, _16b), _16b,\n scale(len, _16c, adytail, _32), _32, _32b, _64), _64);\n }\n }\n if (bdxtail !== 0 || bdytail !== 0) {\n if (cdxtail !== 0 || cdytail !== 0 || adxtail !== 0 || adytail !== 0) {\n s1 = cdxtail * ady;\n c = splitter * cdxtail;\n ahi = c - (c - cdxtail);\n alo = cdxtail - ahi;\n c = splitter * ady;\n bhi = c - (c - ady);\n blo = ady - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cdx * adytail;\n c = splitter * cdx;\n ahi = c - (c - cdx);\n alo = cdx - ahi;\n c = splitter * adytail;\n bhi = c - (c - adytail);\n blo = adytail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 + t0;\n bvirt = _i - s0;\n u[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n u[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n n1 = -cdy;\n n0 = -cdytail;\n s1 = adxtail * n1;\n c = splitter * adxtail;\n ahi = c - (c - adxtail);\n alo = adxtail - ahi;\n c = splitter * n1;\n bhi = c - (c - n1);\n blo = n1 - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = adx * n0;\n c = splitter * adx;\n ahi = c - (c - adx);\n alo = adx - ahi;\n c = splitter * n0;\n bhi = c - (c - n0);\n blo = n0 - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 + t0;\n bvirt = _i - s0;\n v[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n v[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n v[2] = _j - (u3 - bvirt) + (_i - bvirt);\n v[3] = u3;\n catlen = sum(4, u, 4, v, cat);\n s1 = cdxtail * adytail;\n c = splitter * cdxtail;\n ahi = c - (c - cdxtail);\n alo = cdxtail - ahi;\n c = splitter * adytail;\n bhi = c - (c - adytail);\n blo = adytail - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = adxtail * cdytail;\n c = splitter * adxtail;\n ahi = c - (c - adxtail);\n alo = adxtail - ahi;\n c = splitter * cdytail;\n bhi = c - (c - cdytail);\n blo = cdytail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n catt[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n catt[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n catt[2] = _j - (u3 - bvirt) + (_i - bvirt);\n catt[3] = u3;\n cattlen = 4;\n } else {\n cat[0] = 0;\n catlen = 1;\n catt[0] = 0;\n cattlen = 1;\n }\n if (bdxtail !== 0) {\n const len = scale(catlen, cat, bdxtail, _16c);\n finlen = finadd(finlen, sum(\n scale(bxtcalen, bxtca, bdxtail, _16), _16,\n scale(len, _16c, 2 * bdx, _32), _32, _48), _48);\n\n const len2 = scale(cattlen, catt, bdxtail, _8);\n finlen = finadd(finlen, sum_three(\n scale(len2, _8, 2 * bdx, _16), _16,\n scale(len2, _8, bdxtail, _16b), _16b,\n scale(len, _16c, bdxtail, _32), _32, _32b, _64), _64);\n\n if (cdytail !== 0) {\n finlen = finadd(finlen, scale(scale(4, aa, bdxtail, _8), _8, cdytail, _16), _16);\n }\n if (adytail !== 0) {\n finlen = finadd(finlen, scale(scale(4, cc, -bdxtail, _8), _8, adytail, _16), _16);\n }\n }\n if (bdytail !== 0) {\n const len = scale(catlen, cat, bdytail, _16c);\n finlen = finadd(finlen, sum(\n scale(bytcalen, bytca, bdytail, _16), _16,\n scale(len, _16c, 2 * bdy, _32), _32, _48), _48);\n\n const len2 = scale(cattlen, catt, bdytail, _8);\n finlen = finadd(finlen, sum_three(\n scale(len2, _8, 2 * bdy, _16), _16,\n scale(len2, _8, bdytail, _16b), _16b,\n scale(len, _16c, bdytail, _32), _32, _32b, _64), _64);\n }\n }\n if (cdxtail !== 0 || cdytail !== 0) {\n if (adxtail !== 0 || adytail !== 0 || bdxtail !== 0 || bdytail !== 0) {\n s1 = adxtail * bdy;\n c = splitter * adxtail;\n ahi = c - (c - adxtail);\n alo = adxtail - ahi;\n c = splitter * bdy;\n bhi = c - (c - bdy);\n blo = bdy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = adx * bdytail;\n c = splitter * adx;\n ahi = c - (c - adx);\n alo = adx - ahi;\n c = splitter * bdytail;\n bhi = c - (c - bdytail);\n blo = bdytail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 + t0;\n bvirt = _i - s0;\n u[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n u[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n n1 = -ady;\n n0 = -adytail;\n s1 = bdxtail * n1;\n c = splitter * bdxtail;\n ahi = c - (c - bdxtail);\n alo = bdxtail - ahi;\n c = splitter * n1;\n bhi = c - (c - n1);\n blo = n1 - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = bdx * n0;\n c = splitter * bdx;\n ahi = c - (c - bdx);\n alo = bdx - ahi;\n c = splitter * n0;\n bhi = c - (c - n0);\n blo = n0 - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 + t0;\n bvirt = _i - s0;\n v[0] = s0 - (_i - bvirt) + (t0 - bvirt);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 + t1;\n bvirt = _i - _0;\n v[1] = _0 - (_i - bvirt) + (t1 - bvirt);\n u3 = _j + _i;\n bvirt = u3 - _j;\n v[2] = _j - (u3 - bvirt) + (_i - bvirt);\n v[3] = u3;\n abtlen = sum(4, u, 4, v, abt);\n s1 = adxtail * bdytail;\n c = splitter * adxtail;\n ahi = c - (c - adxtail);\n alo = adxtail - ahi;\n c = splitter * bdytail;\n bhi = c - (c - bdytail);\n blo = bdytail - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = bdxtail * adytail;\n c = splitter * bdxtail;\n ahi = c - (c - bdxtail);\n alo = bdxtail - ahi;\n c = splitter * adytail;\n bhi = c - (c - adytail);\n blo = adytail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n abtt[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n abtt[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n abtt[2] = _j - (u3 - bvirt) + (_i - bvirt);\n abtt[3] = u3;\n abttlen = 4;\n } else {\n abt[0] = 0;\n abtlen = 1;\n abtt[0] = 0;\n abttlen = 1;\n }\n if (cdxtail !== 0) {\n const len = scale(abtlen, abt, cdxtail, _16c);\n finlen = finadd(finlen, sum(\n scale(cxtablen, cxtab, cdxtail, _16), _16,\n scale(len, _16c, 2 * cdx, _32), _32, _48), _48);\n\n const len2 = scale(abttlen, abtt, cdxtail, _8);\n finlen = finadd(finlen, sum_three(\n scale(len2, _8, 2 * cdx, _16), _16,\n scale(len2, _8, cdxtail, _16b), _16b,\n scale(len, _16c, cdxtail, _32), _32, _32b, _64), _64);\n\n if (adytail !== 0) {\n finlen = finadd(finlen, scale(scale(4, bb, cdxtail, _8), _8, adytail, _16), _16);\n }\n if (bdytail !== 0) {\n finlen = finadd(finlen, scale(scale(4, aa, -cdxtail, _8), _8, bdytail, _16), _16);\n }\n }\n if (cdytail !== 0) {\n const len = scale(abtlen, abt, cdytail, _16c);\n finlen = finadd(finlen, sum(\n scale(cytablen, cytab, cdytail, _16), _16,\n scale(len, _16c, 2 * cdy, _32), _32, _48), _48);\n\n const len2 = scale(abttlen, abtt, cdytail, _8);\n finlen = finadd(finlen, sum_three(\n scale(len2, _8, 2 * cdy, _16), _16,\n scale(len2, _8, cdytail, _16b), _16b,\n scale(len, _16c, cdytail, _32), _32, _32b, _64), _64);\n }\n }\n\n return fin[finlen - 1];\n}\n\nexport function incircle(ax, ay, bx, by, cx, cy, dx, dy) {\n const adx = ax - dx;\n const bdx = bx - dx;\n const cdx = cx - dx;\n const ady = ay - dy;\n const bdy = by - dy;\n const cdy = cy - dy;\n\n const bdxcdy = bdx * cdy;\n const cdxbdy = cdx * bdy;\n const alift = adx * adx + ady * ady;\n\n const cdxady = cdx * ady;\n const adxcdy = adx * cdy;\n const blift = bdx * bdx + bdy * bdy;\n\n const adxbdy = adx * bdy;\n const bdxady = bdx * ady;\n const clift = cdx * cdx + cdy * cdy;\n\n const det =\n alift * (bdxcdy - cdxbdy) +\n blift * (cdxady - adxcdy) +\n clift * (adxbdy - bdxady);\n\n const permanent =\n (Math.abs(bdxcdy) + Math.abs(cdxbdy)) * alift +\n (Math.abs(cdxady) + Math.abs(adxcdy)) * blift +\n (Math.abs(adxbdy) + Math.abs(bdxady)) * clift;\n\n const errbound = iccerrboundA * permanent;\n\n if (det > errbound || -det > errbound) {\n return det;\n }\n return incircleadapt(ax, ay, bx, by, cx, cy, dx, dy, permanent);\n}\n\nexport function incirclefast(ax, ay, bx, by, cx, cy, dx, dy) {\n const adx = ax - dx;\n const ady = ay - dy;\n const bdx = bx - dx;\n const bdy = by - dy;\n const cdx = cx - dx;\n const cdy = cy - dy;\n\n const abdet = adx * bdy - bdx * ady;\n const bcdet = bdx * cdy - cdx * bdy;\n const cadet = cdx * ady - adx * cdy;\n const alift = adx * adx + ady * ady;\n const blift = bdx * bdx + bdy * bdy;\n const clift = cdx * cdx + cdy * cdy;\n\n return alift * bcdet + blift * cadet + clift * abdet;\n}\n","import {epsilon, splitter, resulterrbound, estimate, vec, sum, sum_three, scale, negate} from './util.js';\n\nconst isperrboundA = (16 + 224 * epsilon) * epsilon;\nconst isperrboundB = (5 + 72 * epsilon) * epsilon;\nconst isperrboundC = (71 + 1408 * epsilon) * epsilon * epsilon;\n\nconst ab = vec(4);\nconst bc = vec(4);\nconst cd = vec(4);\nconst de = vec(4);\nconst ea = vec(4);\nconst ac = vec(4);\nconst bd = vec(4);\nconst ce = vec(4);\nconst da = vec(4);\nconst eb = vec(4);\n\nconst abc = vec(24);\nconst bcd = vec(24);\nconst cde = vec(24);\nconst dea = vec(24);\nconst eab = vec(24);\nconst abd = vec(24);\nconst bce = vec(24);\nconst cda = vec(24);\nconst deb = vec(24);\nconst eac = vec(24);\n\nconst adet = vec(1152);\nconst bdet = vec(1152);\nconst cdet = vec(1152);\nconst ddet = vec(1152);\nconst edet = vec(1152);\nconst abdet = vec(2304);\nconst cddet = vec(2304);\nconst cdedet = vec(3456);\nconst deter = vec(5760);\n\nconst _8 = vec(8);\nconst _8b = vec(8);\nconst _8c = vec(8);\nconst _16 = vec(16);\nconst _24 = vec(24);\nconst _48 = vec(48);\nconst _48b = vec(48);\nconst _96 = vec(96);\nconst _192 = vec(192);\nconst _384x = vec(384);\nconst _384y = vec(384);\nconst _384z = vec(384);\nconst _768 = vec(768);\n\nfunction sum_three_scale(a, b, c, az, bz, cz, out) {\n return sum_three(\n scale(4, a, az, _8), _8,\n scale(4, b, bz, _8b), _8b,\n scale(4, c, cz, _8c), _8c, _16, out);\n}\n\nfunction liftexact(alen, a, blen, b, clen, c, dlen, d, x, y, z, out) {\n const len = sum(\n sum(alen, a, blen, b, _48), _48,\n negate(sum(clen, c, dlen, d, _48b), _48b), _48b, _96);\n\n return sum_three(\n scale(scale(len, _96, x, _192), _192, x, _384x), _384x,\n scale(scale(len, _96, y, _192), _192, y, _384y), _384y,\n scale(scale(len, _96, z, _192), _192, z, _384z), _384z, _768, out);\n}\n\nfunction insphereexact(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz, ex, ey, ez) {\n let bvirt, c, ahi, alo, bhi, blo, _i, _j, _0, s1, s0, t1, t0, u3;\n\n s1 = ax * by;\n c = splitter * ax;\n ahi = c - (c - ax);\n alo = ax - ahi;\n c = splitter * by;\n bhi = c - (c - by);\n blo = by - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = bx * ay;\n c = splitter * bx;\n ahi = c - (c - bx);\n alo = bx - ahi;\n c = splitter * ay;\n bhi = c - (c - ay);\n blo = ay - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ab[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ab[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n ab[2] = _j - (u3 - bvirt) + (_i - bvirt);\n ab[3] = u3;\n s1 = bx * cy;\n c = splitter * bx;\n ahi = c - (c - bx);\n alo = bx - ahi;\n c = splitter * cy;\n bhi = c - (c - cy);\n blo = cy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cx * by;\n c = splitter * cx;\n ahi = c - (c - cx);\n alo = cx - ahi;\n c = splitter * by;\n bhi = c - (c - by);\n blo = by - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n bc[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n bc[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n bc[2] = _j - (u3 - bvirt) + (_i - bvirt);\n bc[3] = u3;\n s1 = cx * dy;\n c = splitter * cx;\n ahi = c - (c - cx);\n alo = cx - ahi;\n c = splitter * dy;\n bhi = c - (c - dy);\n blo = dy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = dx * cy;\n c = splitter * dx;\n ahi = c - (c - dx);\n alo = dx - ahi;\n c = splitter * cy;\n bhi = c - (c - cy);\n blo = cy - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n cd[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n cd[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n cd[2] = _j - (u3 - bvirt) + (_i - bvirt);\n cd[3] = u3;\n s1 = dx * ey;\n c = splitter * dx;\n ahi = c - (c - dx);\n alo = dx - ahi;\n c = splitter * ey;\n bhi = c - (c - ey);\n blo = ey - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = ex * dy;\n c = splitter * ex;\n ahi = c - (c - ex);\n alo = ex - ahi;\n c = splitter * dy;\n bhi = c - (c - dy);\n blo = dy - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n de[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n de[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n de[2] = _j - (u3 - bvirt) + (_i - bvirt);\n de[3] = u3;\n s1 = ex * ay;\n c = splitter * ex;\n ahi = c - (c - ex);\n alo = ex - ahi;\n c = splitter * ay;\n bhi = c - (c - ay);\n blo = ay - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = ax * ey;\n c = splitter * ax;\n ahi = c - (c - ax);\n alo = ax - ahi;\n c = splitter * ey;\n bhi = c - (c - ey);\n blo = ey - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ea[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ea[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n ea[2] = _j - (u3 - bvirt) + (_i - bvirt);\n ea[3] = u3;\n s1 = ax * cy;\n c = splitter * ax;\n ahi = c - (c - ax);\n alo = ax - ahi;\n c = splitter * cy;\n bhi = c - (c - cy);\n blo = cy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cx * ay;\n c = splitter * cx;\n ahi = c - (c - cx);\n alo = cx - ahi;\n c = splitter * ay;\n bhi = c - (c - ay);\n blo = ay - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ac[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ac[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n ac[2] = _j - (u3 - bvirt) + (_i - bvirt);\n ac[3] = u3;\n s1 = bx * dy;\n c = splitter * bx;\n ahi = c - (c - bx);\n alo = bx - ahi;\n c = splitter * dy;\n bhi = c - (c - dy);\n blo = dy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = dx * by;\n c = splitter * dx;\n ahi = c - (c - dx);\n alo = dx - ahi;\n c = splitter * by;\n bhi = c - (c - by);\n blo = by - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n bd[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n bd[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n bd[2] = _j - (u3 - bvirt) + (_i - bvirt);\n bd[3] = u3;\n s1 = cx * ey;\n c = splitter * cx;\n ahi = c - (c - cx);\n alo = cx - ahi;\n c = splitter * ey;\n bhi = c - (c - ey);\n blo = ey - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = ex * cy;\n c = splitter * ex;\n ahi = c - (c - ex);\n alo = ex - ahi;\n c = splitter * cy;\n bhi = c - (c - cy);\n blo = cy - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ce[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ce[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n ce[2] = _j - (u3 - bvirt) + (_i - bvirt);\n ce[3] = u3;\n s1 = dx * ay;\n c = splitter * dx;\n ahi = c - (c - dx);\n alo = dx - ahi;\n c = splitter * ay;\n bhi = c - (c - ay);\n blo = ay - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = ax * dy;\n c = splitter * ax;\n ahi = c - (c - ax);\n alo = ax - ahi;\n c = splitter * dy;\n bhi = c - (c - dy);\n blo = dy - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n da[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n da[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n da[2] = _j - (u3 - bvirt) + (_i - bvirt);\n da[3] = u3;\n s1 = ex * by;\n c = splitter * ex;\n ahi = c - (c - ex);\n alo = ex - ahi;\n c = splitter * by;\n bhi = c - (c - by);\n blo = by - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = bx * ey;\n c = splitter * bx;\n ahi = c - (c - bx);\n alo = bx - ahi;\n c = splitter * ey;\n bhi = c - (c - ey);\n blo = ey - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n eb[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n eb[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n eb[2] = _j - (u3 - bvirt) + (_i - bvirt);\n eb[3] = u3;\n\n const abclen = sum_three_scale(ab, bc, ac, cz, az, -bz, abc);\n const bcdlen = sum_three_scale(bc, cd, bd, dz, bz, -cz, bcd);\n const cdelen = sum_three_scale(cd, de, ce, ez, cz, -dz, cde);\n const dealen = sum_three_scale(de, ea, da, az, dz, -ez, dea);\n const eablen = sum_three_scale(ea, ab, eb, bz, ez, -az, eab);\n const abdlen = sum_three_scale(ab, bd, da, dz, az, bz, abd);\n const bcelen = sum_three_scale(bc, ce, eb, ez, bz, cz, bce);\n const cdalen = sum_three_scale(cd, da, ac, az, cz, dz, cda);\n const deblen = sum_three_scale(de, eb, bd, bz, dz, ez, deb);\n const eaclen = sum_three_scale(ea, ac, ce, cz, ez, az, eac);\n\n const deterlen = sum_three(\n liftexact(cdelen, cde, bcelen, bce, deblen, deb, bcdlen, bcd, ax, ay, az, adet), adet,\n liftexact(dealen, dea, cdalen, cda, eaclen, eac, cdelen, cde, bx, by, bz, bdet), bdet,\n sum_three(\n liftexact(eablen, eab, deblen, deb, abdlen, abd, dealen, dea, cx, cy, cz, cdet), cdet,\n liftexact(abclen, abc, eaclen, eac, bcelen, bce, eablen, eab, dx, dy, dz, ddet), ddet,\n liftexact(bcdlen, bcd, abdlen, abd, cdalen, cda, abclen, abc, ex, ey, ez, edet), edet, cddet, cdedet), cdedet, abdet, deter);\n\n return deter[deterlen - 1];\n}\n\nconst xdet = vec(96);\nconst ydet = vec(96);\nconst zdet = vec(96);\nconst fin = vec(1152);\n\nfunction liftadapt(a, b, c, az, bz, cz, x, y, z, out) {\n const len = sum_three_scale(a, b, c, az, bz, cz, _24);\n return sum_three(\n scale(scale(len, _24, x, _48), _48, x, xdet), xdet,\n scale(scale(len, _24, y, _48), _48, y, ydet), ydet,\n scale(scale(len, _24, z, _48), _48, z, zdet), zdet, _192, out);\n}\n\nfunction insphereadapt(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz, ex, ey, ez, permanent) {\n let ab3, bc3, cd3, da3, ac3, bd3;\n\n let aextail, bextail, cextail, dextail;\n let aeytail, beytail, ceytail, deytail;\n let aeztail, beztail, ceztail, deztail;\n\n let bvirt, c, ahi, alo, bhi, blo, _i, _j, _0, s1, s0, t1, t0;\n\n const aex = ax - ex;\n const bex = bx - ex;\n const cex = cx - ex;\n const dex = dx - ex;\n const aey = ay - ey;\n const bey = by - ey;\n const cey = cy - ey;\n const dey = dy - ey;\n const aez = az - ez;\n const bez = bz - ez;\n const cez = cz - ez;\n const dez = dz - ez;\n\n s1 = aex * bey;\n c = splitter * aex;\n ahi = c - (c - aex);\n alo = aex - ahi;\n c = splitter * bey;\n bhi = c - (c - bey);\n blo = bey - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = bex * aey;\n c = splitter * bex;\n ahi = c - (c - bex);\n alo = bex - ahi;\n c = splitter * aey;\n bhi = c - (c - aey);\n blo = aey - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ab[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ab[1] = _0 - (_i + bvirt) + (bvirt - t1);\n ab3 = _j + _i;\n bvirt = ab3 - _j;\n ab[2] = _j - (ab3 - bvirt) + (_i - bvirt);\n ab[3] = ab3;\n s1 = bex * cey;\n c = splitter * bex;\n ahi = c - (c - bex);\n alo = bex - ahi;\n c = splitter * cey;\n bhi = c - (c - cey);\n blo = cey - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cex * bey;\n c = splitter * cex;\n ahi = c - (c - cex);\n alo = cex - ahi;\n c = splitter * bey;\n bhi = c - (c - bey);\n blo = bey - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n bc[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n bc[1] = _0 - (_i + bvirt) + (bvirt - t1);\n bc3 = _j + _i;\n bvirt = bc3 - _j;\n bc[2] = _j - (bc3 - bvirt) + (_i - bvirt);\n bc[3] = bc3;\n s1 = cex * dey;\n c = splitter * cex;\n ahi = c - (c - cex);\n alo = cex - ahi;\n c = splitter * dey;\n bhi = c - (c - dey);\n blo = dey - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = dex * cey;\n c = splitter * dex;\n ahi = c - (c - dex);\n alo = dex - ahi;\n c = splitter * cey;\n bhi = c - (c - cey);\n blo = cey - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n cd[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n cd[1] = _0 - (_i + bvirt) + (bvirt - t1);\n cd3 = _j + _i;\n bvirt = cd3 - _j;\n cd[2] = _j - (cd3 - bvirt) + (_i - bvirt);\n cd[3] = cd3;\n s1 = dex * aey;\n c = splitter * dex;\n ahi = c - (c - dex);\n alo = dex - ahi;\n c = splitter * aey;\n bhi = c - (c - aey);\n blo = aey - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = aex * dey;\n c = splitter * aex;\n ahi = c - (c - aex);\n alo = aex - ahi;\n c = splitter * dey;\n bhi = c - (c - dey);\n blo = dey - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n da[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n da[1] = _0 - (_i + bvirt) + (bvirt - t1);\n da3 = _j + _i;\n bvirt = da3 - _j;\n da[2] = _j - (da3 - bvirt) + (_i - bvirt);\n da[3] = da3;\n s1 = aex * cey;\n c = splitter * aex;\n ahi = c - (c - aex);\n alo = aex - ahi;\n c = splitter * cey;\n bhi = c - (c - cey);\n blo = cey - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cex * aey;\n c = splitter * cex;\n ahi = c - (c - cex);\n alo = cex - ahi;\n c = splitter * aey;\n bhi = c - (c - aey);\n blo = aey - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ac[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ac[1] = _0 - (_i + bvirt) + (bvirt - t1);\n ac3 = _j + _i;\n bvirt = ac3 - _j;\n ac[2] = _j - (ac3 - bvirt) + (_i - bvirt);\n ac[3] = ac3;\n s1 = bex * dey;\n c = splitter * bex;\n ahi = c - (c - bex);\n alo = bex - ahi;\n c = splitter * dey;\n bhi = c - (c - dey);\n blo = dey - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = dex * bey;\n c = splitter * dex;\n ahi = c - (c - dex);\n alo = dex - ahi;\n c = splitter * bey;\n bhi = c - (c - bey);\n blo = bey - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n bd[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n bd[1] = _0 - (_i + bvirt) + (bvirt - t1);\n bd3 = _j + _i;\n bvirt = bd3 - _j;\n bd[2] = _j - (bd3 - bvirt) + (_i - bvirt);\n bd[3] = bd3;\n\n const finlen = sum(\n sum(\n negate(liftadapt(bc, cd, bd, dez, bez, -cez, aex, aey, aez, adet), adet), adet,\n liftadapt(cd, da, ac, aez, cez, dez, bex, bey, bez, bdet), bdet, abdet), abdet,\n sum(\n negate(liftadapt(da, ab, bd, bez, dez, aez, cex, cey, cez, cdet), cdet), cdet,\n liftadapt(ab, bc, ac, cez, aez, -bez, dex, dey, dez, ddet), ddet, cddet), cddet, fin);\n\n let det = estimate(finlen, fin);\n let errbound = isperrboundB * permanent;\n if (det >= errbound || -det >= errbound) {\n return det;\n }\n\n bvirt = ax - aex;\n aextail = ax - (aex + bvirt) + (bvirt - ex);\n bvirt = ay - aey;\n aeytail = ay - (aey + bvirt) + (bvirt - ey);\n bvirt = az - aez;\n aeztail = az - (aez + bvirt) + (bvirt - ez);\n bvirt = bx - bex;\n bextail = bx - (bex + bvirt) + (bvirt - ex);\n bvirt = by - bey;\n beytail = by - (bey + bvirt) + (bvirt - ey);\n bvirt = bz - bez;\n beztail = bz - (bez + bvirt) + (bvirt - ez);\n bvirt = cx - cex;\n cextail = cx - (cex + bvirt) + (bvirt - ex);\n bvirt = cy - cey;\n ceytail = cy - (cey + bvirt) + (bvirt - ey);\n bvirt = cz - cez;\n ceztail = cz - (cez + bvirt) + (bvirt - ez);\n bvirt = dx - dex;\n dextail = dx - (dex + bvirt) + (bvirt - ex);\n bvirt = dy - dey;\n deytail = dy - (dey + bvirt) + (bvirt - ey);\n bvirt = dz - dez;\n deztail = dz - (dez + bvirt) + (bvirt - ez);\n if (aextail === 0 && aeytail === 0 && aeztail === 0 &&\n bextail === 0 && beytail === 0 && beztail === 0 &&\n cextail === 0 && ceytail === 0 && ceztail === 0 &&\n dextail === 0 && deytail === 0 && deztail === 0) {\n return det;\n }\n\n errbound = isperrboundC * permanent + resulterrbound * Math.abs(det);\n\n const abeps = (aex * beytail + bey * aextail) - (aey * bextail + bex * aeytail);\n const bceps = (bex * ceytail + cey * bextail) - (bey * cextail + cex * beytail);\n const cdeps = (cex * deytail + dey * cextail) - (cey * dextail + dex * ceytail);\n const daeps = (dex * aeytail + aey * dextail) - (dey * aextail + aex * deytail);\n const aceps = (aex * ceytail + cey * aextail) - (aey * cextail + cex * aeytail);\n const bdeps = (bex * deytail + dey * bextail) - (bey * dextail + dex * beytail);\n det +=\n (((bex * bex + bey * bey + bez * bez) * ((cez * daeps + dez * aceps + aez * cdeps) +\n (ceztail * da3 + deztail * ac3 + aeztail * cd3)) + (dex * dex + dey * dey + dez * dez) *\n ((aez * bceps - bez * aceps + cez * abeps) + (aeztail * bc3 - beztail * ac3 + ceztail * ab3))) -\n ((aex * aex + aey * aey + aez * aez) * ((bez * cdeps - cez * bdeps + dez * bceps) +\n (beztail * cd3 - ceztail * bd3 + deztail * bc3)) + (cex * cex + cey * cey + cez * cez) *\n ((dez * abeps + aez * bdeps + bez * daeps) + (deztail * ab3 + aeztail * bd3 + beztail * da3)))) +\n 2 * (((bex * bextail + bey * beytail + bez * beztail) * (cez * da3 + dez * ac3 + aez * cd3) +\n (dex * dextail + dey * deytail + dez * deztail) * (aez * bc3 - bez * ac3 + cez * ab3)) -\n ((aex * aextail + aey * aeytail + aez * aeztail) * (bez * cd3 - cez * bd3 + dez * bc3) +\n (cex * cextail + cey * ceytail + cez * ceztail) * (dez * ab3 + aez * bd3 + bez * da3)));\n\n if (det >= errbound || -det >= errbound) {\n return det;\n }\n\n return insphereexact(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz, ex, ey, ez);\n}\n\nexport function insphere(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz, ex, ey, ez) {\n const aex = ax - ex;\n const bex = bx - ex;\n const cex = cx - ex;\n const dex = dx - ex;\n const aey = ay - ey;\n const bey = by - ey;\n const cey = cy - ey;\n const dey = dy - ey;\n const aez = az - ez;\n const bez = bz - ez;\n const cez = cz - ez;\n const dez = dz - ez;\n\n const aexbey = aex * bey;\n const bexaey = bex * aey;\n const ab = aexbey - bexaey;\n const bexcey = bex * cey;\n const cexbey = cex * bey;\n const bc = bexcey - cexbey;\n const cexdey = cex * dey;\n const dexcey = dex * cey;\n const cd = cexdey - dexcey;\n const dexaey = dex * aey;\n const aexdey = aex * dey;\n const da = dexaey - aexdey;\n const aexcey = aex * cey;\n const cexaey = cex * aey;\n const ac = aexcey - cexaey;\n const bexdey = bex * dey;\n const dexbey = dex * bey;\n const bd = bexdey - dexbey;\n\n const abc = aez * bc - bez * ac + cez * ab;\n const bcd = bez * cd - cez * bd + dez * bc;\n const cda = cez * da + dez * ac + aez * cd;\n const dab = dez * ab + aez * bd + bez * da;\n\n const alift = aex * aex + aey * aey + aez * aez;\n const blift = bex * bex + bey * bey + bez * bez;\n const clift = cex * cex + cey * cey + cez * cez;\n const dlift = dex * dex + dey * dey + dez * dez;\n\n const det = (clift * dab - dlift * abc) + (alift * bcd - blift * cda);\n\n const aezplus = Math.abs(aez);\n const bezplus = Math.abs(bez);\n const cezplus = Math.abs(cez);\n const dezplus = Math.abs(dez);\n const aexbeyplus = Math.abs(aexbey);\n const bexaeyplus = Math.abs(bexaey);\n const bexceyplus = Math.abs(bexcey);\n const cexbeyplus = Math.abs(cexbey);\n const cexdeyplus = Math.abs(cexdey);\n const dexceyplus = Math.abs(dexcey);\n const dexaeyplus = Math.abs(dexaey);\n const aexdeyplus = Math.abs(aexdey);\n const aexceyplus = Math.abs(aexcey);\n const cexaeyplus = Math.abs(cexaey);\n const bexdeyplus = Math.abs(bexdey);\n const dexbeyplus = Math.abs(dexbey);\n const permanent =\n ((cexdeyplus + dexceyplus) * bezplus + (dexbeyplus + bexdeyplus) * cezplus + (bexceyplus + cexbeyplus) * dezplus) * alift +\n ((dexaeyplus + aexdeyplus) * cezplus + (aexceyplus + cexaeyplus) * dezplus + (cexdeyplus + dexceyplus) * aezplus) * blift +\n ((aexbeyplus + bexaeyplus) * dezplus + (bexdeyplus + dexbeyplus) * aezplus + (dexaeyplus + aexdeyplus) * bezplus) * clift +\n ((bexceyplus + cexbeyplus) * aezplus + (cexaeyplus + aexceyplus) * bezplus + (aexbeyplus + bexaeyplus) * cezplus) * dlift;\n\n const errbound = isperrboundA * permanent;\n if (det > errbound || -det > errbound) {\n return det;\n }\n return -insphereadapt(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz, ex, ey, ez, permanent);\n}\n\nexport function inspherefast(pax, pay, paz, pbx, pby, pbz, pcx, pcy, pcz, pdx, pdy, pdz, pex, pey, pez) {\n const aex = pax - pex;\n const bex = pbx - pex;\n const cex = pcx - pex;\n const dex = pdx - pex;\n const aey = pay - pey;\n const bey = pby - pey;\n const cey = pcy - pey;\n const dey = pdy - pey;\n const aez = paz - pez;\n const bez = pbz - pez;\n const cez = pcz - pez;\n const dez = pdz - pez;\n\n const ab = aex * bey - bex * aey;\n const bc = bex * cey - cex * bey;\n const cd = cex * dey - dex * cey;\n const da = dex * aey - aex * dey;\n const ac = aex * cey - cex * aey;\n const bd = bex * dey - dex * bey;\n\n const abc = aez * bc - bez * ac + cez * ab;\n const bcd = bez * cd - cez * bd + dez * bc;\n const cda = cez * da + dez * ac + aez * cd;\n const dab = dez * ab + aez * bd + bez * da;\n\n const alift = aex * aex + aey * aey + aez * aez;\n const blift = bex * bex + bey * bey + bez * bez;\n const clift = cex * cex + cey * cey + cez * cez;\n const dlift = dex * dex + dey * dey + dez * dez;\n\n return (clift * dab - dlift * abc) + (alift * bcd - blift * cda);\n}\n","import {epsilon, splitter, resulterrbound, estimate, vec, sum} from './util.js';\n\nconst ccwerrboundA = (3 + 16 * epsilon) * epsilon;\nconst ccwerrboundB = (2 + 12 * epsilon) * epsilon;\nconst ccwerrboundC = (9 + 64 * epsilon) * epsilon * epsilon;\n\nconst B = vec(4);\nconst C1 = vec(8);\nconst C2 = vec(12);\nconst D = vec(16);\nconst u = vec(4);\n\nfunction orient2dadapt(ax, ay, bx, by, cx, cy, detsum) {\n let acxtail, acytail, bcxtail, bcytail;\n let bvirt, c, ahi, alo, bhi, blo, _i, _j, _0, s1, s0, t1, t0, u3;\n\n const acx = ax - cx;\n const bcx = bx - cx;\n const acy = ay - cy;\n const bcy = by - cy;\n\n s1 = acx * bcy;\n c = splitter * acx;\n ahi = c - (c - acx);\n alo = acx - ahi;\n c = splitter * bcy;\n bhi = c - (c - bcy);\n blo = bcy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = acy * bcx;\n c = splitter * acy;\n ahi = c - (c - acy);\n alo = acy - ahi;\n c = splitter * bcx;\n bhi = c - (c - bcx);\n blo = bcx - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n B[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n B[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n B[2] = _j - (u3 - bvirt) + (_i - bvirt);\n B[3] = u3;\n\n let det = estimate(4, B);\n let errbound = ccwerrboundB * detsum;\n if (det >= errbound || -det >= errbound) {\n return det;\n }\n\n bvirt = ax - acx;\n acxtail = ax - (acx + bvirt) + (bvirt - cx);\n bvirt = bx - bcx;\n bcxtail = bx - (bcx + bvirt) + (bvirt - cx);\n bvirt = ay - acy;\n acytail = ay - (acy + bvirt) + (bvirt - cy);\n bvirt = by - bcy;\n bcytail = by - (bcy + bvirt) + (bvirt - cy);\n\n if (acxtail === 0 && acytail === 0 && bcxtail === 0 && bcytail === 0) {\n return det;\n }\n\n errbound = ccwerrboundC * detsum + resulterrbound * Math.abs(det);\n det += (acx * bcytail + bcy * acxtail) - (acy * bcxtail + bcx * acytail);\n if (det >= errbound || -det >= errbound) return det;\n\n s1 = acxtail * bcy;\n c = splitter * acxtail;\n ahi = c - (c - acxtail);\n alo = acxtail - ahi;\n c = splitter * bcy;\n bhi = c - (c - bcy);\n blo = bcy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = acytail * bcx;\n c = splitter * acytail;\n ahi = c - (c - acytail);\n alo = acytail - ahi;\n c = splitter * bcx;\n bhi = c - (c - bcx);\n blo = bcx - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n u[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n u[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n const C1len = sum(4, B, 4, u, C1);\n\n s1 = acx * bcytail;\n c = splitter * acx;\n ahi = c - (c - acx);\n alo = acx - ahi;\n c = splitter * bcytail;\n bhi = c - (c - bcytail);\n blo = bcytail - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = acy * bcxtail;\n c = splitter * acy;\n ahi = c - (c - acy);\n alo = acy - ahi;\n c = splitter * bcxtail;\n bhi = c - (c - bcxtail);\n blo = bcxtail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n u[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n u[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n const C2len = sum(C1len, C1, 4, u, C2);\n\n s1 = acxtail * bcytail;\n c = splitter * acxtail;\n ahi = c - (c - acxtail);\n alo = acxtail - ahi;\n c = splitter * bcytail;\n bhi = c - (c - bcytail);\n blo = bcytail - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = acytail * bcxtail;\n c = splitter * acytail;\n ahi = c - (c - acytail);\n alo = acytail - ahi;\n c = splitter * bcxtail;\n bhi = c - (c - bcxtail);\n blo = bcxtail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n u[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n u[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n const Dlen = sum(C2len, C2, 4, u, D);\n\n return D[Dlen - 1];\n}\n\nexport function orient2d(ax, ay, bx, by, cx, cy) {\n const detleft = (ay - cy) * (bx - cx);\n const detright = (ax - cx) * (by - cy);\n const det = detleft - detright;\n\n if (detleft === 0 || detright === 0 || (detleft > 0) !== (detright > 0)) return det;\n\n const detsum = Math.abs(detleft + detright);\n if (Math.abs(det) >= ccwerrboundA * detsum) return det;\n\n return -orient2dadapt(ax, ay, bx, by, cx, cy, detsum);\n}\n\nexport function orient2dfast(ax, ay, bx, by, cx, cy) {\n return (ay - cy) * (bx - cx) - (ax - cx) * (by - cy);\n}\n","import {epsilon, splitter, resulterrbound, estimate, vec, sum, scale} from './util.js';\n\nconst o3derrboundA = (7 + 56 * epsilon) * epsilon;\nconst o3derrboundB = (3 + 28 * epsilon) * epsilon;\nconst o3derrboundC = (26 + 288 * epsilon) * epsilon * epsilon;\n\nconst bc = vec(4);\nconst ca = vec(4);\nconst ab = vec(4);\nconst at_b = vec(4);\nconst at_c = vec(4);\nconst bt_c = vec(4);\nconst bt_a = vec(4);\nconst ct_a = vec(4);\nconst ct_b = vec(4);\nconst bct = vec(8);\nconst cat = vec(8);\nconst abt = vec(8);\nconst u = vec(4);\n\nconst _8 = vec(8);\nconst _8b = vec(8);\nconst _16 = vec(8);\nconst _12 = vec(12);\n\nlet fin = vec(192);\nlet fin2 = vec(192);\n\nfunction finadd(finlen, alen, a) {\n finlen = sum(finlen, fin, alen, a, fin2);\n const tmp = fin; fin = fin2; fin2 = tmp;\n return finlen;\n}\n\nfunction tailinit(xtail, ytail, ax, ay, bx, by, a, b) {\n let bvirt, c, ahi, alo, bhi, blo, _i, _j, _k, _0, s1, s0, t1, t0, u3, negate;\n if (xtail === 0) {\n if (ytail === 0) {\n a[0] = 0;\n b[0] = 0;\n return 1;\n } else {\n negate = -ytail;\n s1 = negate * ax;\n c = splitter * negate;\n ahi = c - (c - negate);\n alo = negate - ahi;\n c = splitter * ax;\n bhi = c - (c - ax);\n blo = ax - bhi;\n a[0] = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n a[1] = s1;\n s1 = ytail * bx;\n c = splitter * ytail;\n ahi = c - (c - ytail);\n alo = ytail - ahi;\n c = splitter * bx;\n bhi = c - (c - bx);\n blo = bx - bhi;\n b[0] = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n b[1] = s1;\n return 2;\n }\n } else {\n if (ytail === 0) {\n s1 = xtail * ay;\n c = splitter * xtail;\n ahi = c - (c - xtail);\n alo = xtail - ahi;\n c = splitter * ay;\n bhi = c - (c - ay);\n blo = ay - bhi;\n a[0] = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n a[1] = s1;\n negate = -xtail;\n s1 = negate * by;\n c = splitter * negate;\n ahi = c - (c - negate);\n alo = negate - ahi;\n c = splitter * by;\n bhi = c - (c - by);\n blo = by - bhi;\n b[0] = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n b[1] = s1;\n return 2;\n } else {\n s1 = xtail * ay;\n c = splitter * xtail;\n ahi = c - (c - xtail);\n alo = xtail - ahi;\n c = splitter * ay;\n bhi = c - (c - ay);\n blo = ay - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = ytail * ax;\n c = splitter * ytail;\n ahi = c - (c - ytail);\n alo = ytail - ahi;\n c = splitter * ax;\n bhi = c - (c - ax);\n blo = ax - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n a[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n a[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n a[2] = _j - (u3 - bvirt) + (_i - bvirt);\n a[3] = u3;\n s1 = ytail * bx;\n c = splitter * ytail;\n ahi = c - (c - ytail);\n alo = ytail - ahi;\n c = splitter * bx;\n bhi = c - (c - bx);\n blo = bx - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = xtail * by;\n c = splitter * xtail;\n ahi = c - (c - xtail);\n alo = xtail - ahi;\n c = splitter * by;\n bhi = c - (c - by);\n blo = by - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n b[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n b[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n b[2] = _j - (u3 - bvirt) + (_i - bvirt);\n b[3] = u3;\n return 4;\n }\n }\n}\n\nfunction tailadd(finlen, a, b, k, z) {\n let bvirt, c, ahi, alo, bhi, blo, _i, _j, _k, _0, s1, s0, u3;\n s1 = a * b;\n c = splitter * a;\n ahi = c - (c - a);\n alo = a - ahi;\n c = splitter * b;\n bhi = c - (c - b);\n blo = b - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n c = splitter * k;\n bhi = c - (c - k);\n blo = k - bhi;\n _i = s0 * k;\n c = splitter * s0;\n ahi = c - (c - s0);\n alo = s0 - ahi;\n u[0] = alo * blo - (_i - ahi * bhi - alo * bhi - ahi * blo);\n _j = s1 * k;\n c = splitter * s1;\n ahi = c - (c - s1);\n alo = s1 - ahi;\n _0 = alo * blo - (_j - ahi * bhi - alo * bhi - ahi * blo);\n _k = _i + _0;\n bvirt = _k - _i;\n u[1] = _i - (_k - bvirt) + (_0 - bvirt);\n u3 = _j + _k;\n u[2] = _k - (u3 - _j);\n u[3] = u3;\n finlen = finadd(finlen, 4, u);\n if (z !== 0) {\n c = splitter * z;\n bhi = c - (c - z);\n blo = z - bhi;\n _i = s0 * z;\n c = splitter * s0;\n ahi = c - (c - s0);\n alo = s0 - ahi;\n u[0] = alo * blo - (_i - ahi * bhi - alo * bhi - ahi * blo);\n _j = s1 * z;\n c = splitter * s1;\n ahi = c - (c - s1);\n alo = s1 - ahi;\n _0 = alo * blo - (_j - ahi * bhi - alo * bhi - ahi * blo);\n _k = _i + _0;\n bvirt = _k - _i;\n u[1] = _i - (_k - bvirt) + (_0 - bvirt);\n u3 = _j + _k;\n u[2] = _k - (u3 - _j);\n u[3] = u3;\n finlen = finadd(finlen, 4, u);\n }\n return finlen;\n}\n\nfunction orient3dadapt(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz, permanent) {\n let finlen;\n let adxtail, bdxtail, cdxtail;\n let adytail, bdytail, cdytail;\n let adztail, bdztail, cdztail;\n let bvirt, c, ahi, alo, bhi, blo, _i, _j, _k, _0, s1, s0, t1, t0, u3;\n\n const adx = ax - dx;\n const bdx = bx - dx;\n const cdx = cx - dx;\n const ady = ay - dy;\n const bdy = by - dy;\n const cdy = cy - dy;\n const adz = az - dz;\n const bdz = bz - dz;\n const cdz = cz - dz;\n\n s1 = bdx * cdy;\n c = splitter * bdx;\n ahi = c - (c - bdx);\n alo = bdx - ahi;\n c = splitter * cdy;\n bhi = c - (c - cdy);\n blo = cdy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = cdx * bdy;\n c = splitter * cdx;\n ahi = c - (c - cdx);\n alo = cdx - ahi;\n c = splitter * bdy;\n bhi = c - (c - bdy);\n blo = bdy - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n bc[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n bc[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n bc[2] = _j - (u3 - bvirt) + (_i - bvirt);\n bc[3] = u3;\n s1 = cdx * ady;\n c = splitter * cdx;\n ahi = c - (c - cdx);\n alo = cdx - ahi;\n c = splitter * ady;\n bhi = c - (c - ady);\n blo = ady - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = adx * cdy;\n c = splitter * adx;\n ahi = c - (c - adx);\n alo = adx - ahi;\n c = splitter * cdy;\n bhi = c - (c - cdy);\n blo = cdy - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ca[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ca[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n ca[2] = _j - (u3 - bvirt) + (_i - bvirt);\n ca[3] = u3;\n s1 = adx * bdy;\n c = splitter * adx;\n ahi = c - (c - adx);\n alo = adx - ahi;\n c = splitter * bdy;\n bhi = c - (c - bdy);\n blo = bdy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = bdx * ady;\n c = splitter * bdx;\n ahi = c - (c - bdx);\n alo = bdx - ahi;\n c = splitter * ady;\n bhi = c - (c - ady);\n blo = ady - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n ab[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n ab[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n ab[2] = _j - (u3 - bvirt) + (_i - bvirt);\n ab[3] = u3;\n\n finlen = sum(\n sum(\n scale(4, bc, adz, _8), _8,\n scale(4, ca, bdz, _8b), _8b, _16), _16,\n scale(4, ab, cdz, _8), _8, fin);\n\n let det = estimate(finlen, fin);\n let errbound = o3derrboundB * permanent;\n if (det >= errbound || -det >= errbound) {\n return det;\n }\n\n bvirt = ax - adx;\n adxtail = ax - (adx + bvirt) + (bvirt - dx);\n bvirt = bx - bdx;\n bdxtail = bx - (bdx + bvirt) + (bvirt - dx);\n bvirt = cx - cdx;\n cdxtail = cx - (cdx + bvirt) + (bvirt - dx);\n bvirt = ay - ady;\n adytail = ay - (ady + bvirt) + (bvirt - dy);\n bvirt = by - bdy;\n bdytail = by - (bdy + bvirt) + (bvirt - dy);\n bvirt = cy - cdy;\n cdytail = cy - (cdy + bvirt) + (bvirt - dy);\n bvirt = az - adz;\n adztail = az - (adz + bvirt) + (bvirt - dz);\n bvirt = bz - bdz;\n bdztail = bz - (bdz + bvirt) + (bvirt - dz);\n bvirt = cz - cdz;\n cdztail = cz - (cdz + bvirt) + (bvirt - dz);\n\n if (adxtail === 0 && bdxtail === 0 && cdxtail === 0 &&\n adytail === 0 && bdytail === 0 && cdytail === 0 &&\n adztail === 0 && bdztail === 0 && cdztail === 0) {\n return det;\n }\n\n errbound = o3derrboundC * permanent + resulterrbound * Math.abs(det);\n det +=\n adz * (bdx * cdytail + cdy * bdxtail - (bdy * cdxtail + cdx * bdytail)) + adztail * (bdx * cdy - bdy * cdx) +\n bdz * (cdx * adytail + ady * cdxtail - (cdy * adxtail + adx * cdytail)) + bdztail * (cdx * ady - cdy * adx) +\n cdz * (adx * bdytail + bdy * adxtail - (ady * bdxtail + bdx * adytail)) + cdztail * (adx * bdy - ady * bdx);\n if (det >= errbound || -det >= errbound) {\n return det;\n }\n\n const at_len = tailinit(adxtail, adytail, bdx, bdy, cdx, cdy, at_b, at_c);\n const bt_len = tailinit(bdxtail, bdytail, cdx, cdy, adx, ady, bt_c, bt_a);\n const ct_len = tailinit(cdxtail, cdytail, adx, ady, bdx, bdy, ct_a, ct_b);\n\n const bctlen = sum(bt_len, bt_c, ct_len, ct_b, bct);\n finlen = finadd(finlen, scale(bctlen, bct, adz, _16), _16);\n\n const catlen = sum(ct_len, ct_a, at_len, at_c, cat);\n finlen = finadd(finlen, scale(catlen, cat, bdz, _16), _16);\n\n const abtlen = sum(at_len, at_b, bt_len, bt_a, abt);\n finlen = finadd(finlen, scale(abtlen, abt, cdz, _16), _16);\n\n if (adztail !== 0) {\n finlen = finadd(finlen, scale(4, bc, adztail, _12), _12);\n finlen = finadd(finlen, scale(bctlen, bct, adztail, _16), _16);\n }\n if (bdztail !== 0) {\n finlen = finadd(finlen, scale(4, ca, bdztail, _12), _12);\n finlen = finadd(finlen, scale(catlen, cat, bdztail, _16), _16);\n }\n if (cdztail !== 0) {\n finlen = finadd(finlen, scale(4, ab, cdztail, _12), _12);\n finlen = finadd(finlen, scale(abtlen, abt, cdztail, _16), _16);\n }\n\n if (adxtail !== 0) {\n if (bdytail !== 0) {\n finlen = tailadd(finlen, adxtail, bdytail, cdz, cdztail);\n }\n if (cdytail !== 0) {\n finlen = tailadd(finlen, -adxtail, cdytail, bdz, bdztail);\n }\n }\n if (bdxtail !== 0) {\n if (cdytail !== 0) {\n finlen = tailadd(finlen, bdxtail, cdytail, adz, adztail);\n }\n if (adytail !== 0) {\n finlen = tailadd(finlen, -bdxtail, adytail, cdz, cdztail);\n }\n }\n if (cdxtail !== 0) {\n if (adytail !== 0) {\n finlen = tailadd(finlen, cdxtail, adytail, bdz, bdztail);\n }\n if (bdytail !== 0) {\n finlen = tailadd(finlen, -cdxtail, bdytail, adz, adztail);\n }\n }\n\n return fin[finlen - 1];\n}\n\nexport function orient3d(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz) {\n const adx = ax - dx;\n const bdx = bx - dx;\n const cdx = cx - dx;\n const ady = ay - dy;\n const bdy = by - dy;\n const cdy = cy - dy;\n const adz = az - dz;\n const bdz = bz - dz;\n const cdz = cz - dz;\n\n const bdxcdy = bdx * cdy;\n const cdxbdy = cdx * bdy;\n\n const cdxady = cdx * ady;\n const adxcdy = adx * cdy;\n\n const adxbdy = adx * bdy;\n const bdxady = bdx * ady;\n\n const det =\n adz * (bdxcdy - cdxbdy) +\n bdz * (cdxady - adxcdy) +\n cdz * (adxbdy - bdxady);\n\n const permanent =\n (Math.abs(bdxcdy) + Math.abs(cdxbdy)) * Math.abs(adz) +\n (Math.abs(cdxady) + Math.abs(adxcdy)) * Math.abs(bdz) +\n (Math.abs(adxbdy) + Math.abs(bdxady)) * Math.abs(cdz);\n\n const errbound = o3derrboundA * permanent;\n if (det > errbound || -det > errbound) {\n return det;\n }\n\n return orient3dadapt(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz, permanent);\n}\n\nexport function orient3dfast(ax, ay, az, bx, by, bz, cx, cy, cz, dx, dy, dz) {\n const adx = ax - dx;\n const bdx = bx - dx;\n const cdx = cx - dx;\n const ady = ay - dy;\n const bdy = by - dy;\n const cdy = cy - dy;\n const adz = az - dz;\n const bdz = bz - dz;\n const cdz = cz - dz;\n\n return adx * (bdy * cdz - bdz * cdy) +\n bdx * (cdy * adz - cdz * ady) +\n cdx * (ady * bdz - adz * bdy);\n}\n","export const epsilon = 1.1102230246251565e-16;\nexport const splitter = 134217729;\nexport const resulterrbound = (3 + 8 * epsilon) * epsilon;\n\n// fast_expansion_sum_zeroelim routine from oritinal code\nexport function sum(elen, e, flen, f, h) {\n let Q, Qnew, hh, bvirt;\n let enow = e[0];\n let fnow = f[0];\n let eindex = 0;\n let findex = 0;\n if ((fnow > enow) === (fnow > -enow)) {\n Q = enow;\n enow = e[++eindex];\n } else {\n Q = fnow;\n fnow = f[++findex];\n }\n let hindex = 0;\n if (eindex < elen && findex < flen) {\n if ((fnow > enow) === (fnow > -enow)) {\n Qnew = enow + Q;\n hh = Q - (Qnew - enow);\n enow = e[++eindex];\n } else {\n Qnew = fnow + Q;\n hh = Q - (Qnew - fnow);\n fnow = f[++findex];\n }\n Q = Qnew;\n if (hh !== 0) {\n h[hindex++] = hh;\n }\n while (eindex < elen && findex < flen) {\n if ((fnow > enow) === (fnow > -enow)) {\n Qnew = Q + enow;\n bvirt = Qnew - Q;\n hh = Q - (Qnew - bvirt) + (enow - bvirt);\n enow = e[++eindex];\n } else {\n Qnew = Q + fnow;\n bvirt = Qnew - Q;\n hh = Q - (Qnew - bvirt) + (fnow - bvirt);\n fnow = f[++findex];\n }\n Q = Qnew;\n if (hh !== 0) {\n h[hindex++] = hh;\n }\n }\n }\n while (eindex < elen) {\n Qnew = Q + enow;\n bvirt = Qnew - Q;\n hh = Q - (Qnew - bvirt) + (enow - bvirt);\n enow = e[++eindex];\n Q = Qnew;\n if (hh !== 0) {\n h[hindex++] = hh;\n }\n }\n while (findex < flen) {\n Qnew = Q + fnow;\n bvirt = Qnew - Q;\n hh = Q - (Qnew - bvirt) + (fnow - bvirt);\n fnow = f[++findex];\n Q = Qnew;\n if (hh !== 0) {\n h[hindex++] = hh;\n }\n }\n if (Q !== 0 || hindex === 0) {\n h[hindex++] = Q;\n }\n return hindex;\n}\n\nexport function sum_three(alen, a, blen, b, clen, c, tmp, out) {\n return sum(sum(alen, a, blen, b, tmp), tmp, clen, c, out);\n}\n\n// scale_expansion_zeroelim routine from oritinal code\nexport function scale(elen, e, b, h) {\n let Q, sum, hh, product1, product0;\n let bvirt, c, ahi, alo, bhi, blo;\n\n c = splitter * b;\n bhi = c - (c - b);\n blo = b - bhi;\n let enow = e[0];\n Q = enow * b;\n c = splitter * enow;\n ahi = c - (c - enow);\n alo = enow - ahi;\n hh = alo * blo - (Q - ahi * bhi - alo * bhi - ahi * blo);\n let hindex = 0;\n if (hh !== 0) {\n h[hindex++] = hh;\n }\n for (let i = 1; i < elen; i++) {\n enow = e[i];\n product1 = enow * b;\n c = splitter * enow;\n ahi = c - (c - enow);\n alo = enow - ahi;\n product0 = alo * blo - (product1 - ahi * bhi - alo * bhi - ahi * blo);\n sum = Q + product0;\n bvirt = sum - Q;\n hh = Q - (sum - bvirt) + (product0 - bvirt);\n if (hh !== 0) {\n h[hindex++] = hh;\n }\n Q = product1 + sum;\n hh = sum - (Q - product1);\n if (hh !== 0) {\n h[hindex++] = hh;\n }\n }\n if (Q !== 0 || hindex === 0) {\n h[hindex++] = Q;\n }\n return hindex;\n}\n\nexport function negate(elen, e) {\n for (let i = 0; i < elen; i++) e[i] = -e[i];\n return elen;\n}\n\nexport function estimate(elen, e) {\n let Q = e[0];\n for (let i = 1; i < elen; i++) Q += e[i];\n return Q;\n}\n\nexport function vec(n) {\n return new Float64Array(n);\n}\n","\nexport {orient2d, orient2dfast} from './esm/orient2d.js';\nexport {orient3d, orient3dfast} from './esm/orient3d.js';\nexport {incircle, incirclefast} from './esm/incircle.js';\nexport {insphere, inspherefast} from './esm/insphere.js';\n"],"names":[],"sourceRoot":""}