{"version":3,"file":"static/js/main.156fd3d3.js","mappings":"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G,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAI,EAAI,KAAO,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAO,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAAI,EAC/D,KAAO,EAAI,EAAI,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAO,KAAO,EAAI,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAO,KAAO,EAAI,EAC/D,KAAO,KAAO,EAAI,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAC/D,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAI,EAAI,EAAI,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAC5D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAI,KAAO,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAI,EAAI,EAAI,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAI,EAAI,KAAO,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAI,EAAI,KAAO,EAC/D,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAI,KAAO,EAAI,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,IAC5D,EAAI,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAC/D,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAI,IAC7D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAC7D,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAM,IAAM,EAC/D,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAC/D,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAM,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAAI,EAAI,EAC/D,IAAM,IAAM,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAI,EAAI,EAAI,EAAI,EAC/D,IAAM,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAI,IAAM,EAAI,IAC7D,IAAM,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAC/D,IAAM,IAAM,EAAI,IAAM,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAI,IAAM,IAC7D,EAAI,IAAM,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAC7D,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAC/D,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAC7D,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAI,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAC/D,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAI,IAAM,IAC7D,EAAI,IAAM,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAC7D,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAAI,EAAI,EAC/D,IAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAM,EAAI,EAAI,EAC/D,IAAM,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAM,EAAI,IAC7D,IAAM,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAC/D,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAI,EAAI,IAC7D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAI,EAAI,EAAI,EAAI,EAC/D,IAAM,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,IAC7D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,IAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,EAAG,EAAG,IAC7D,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAC/D,EAAI,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAC7D,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAC/D,IAAM,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,IAC7D,IAAM,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAC/D,IAAM,IAAM,EAAI,IAAM,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAI,IAAM,IAC7D,EAAI,IAAM,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAC7D,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAC/D,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAC/D,IAAK,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAM,EAAI,IAC7D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAC/D,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAI,IAAM,EAAI,IAAM,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAC7D,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAM,IAAM,EAC/D,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAM,IAAM,EAAI,EAAI,IAC7D,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAC7D,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,EAAG,EAAG,IAC7D,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,IAAM,EAC/D,IAAM,IAAM,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAC7D,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAM,EAC/D,EAAI,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAC7D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAI,IAC7D,IAAM,EAAI,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAC/D,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,IAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAC/D,IAAM,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAI,EAAI,IAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAM,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,IAAM,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAI,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,IAC7D,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAC/D,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAAI,EAAI,EAC/D,IAAM,EAAI,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAC7D,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAM,EAAI,IAC7D,EAAI,EAAI,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAI,IAAM,IAC7D,EAAI,IAAM,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAC/D,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAM,EAAI,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAC7D,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAM,EAAI,IAC7D,EAAI,EAAI,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAI,EAC/D,EAAI,EAAI,EAAI,EAAI,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAC7D,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAI,EAC/D,EAAI,IAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAC7D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAI,EAAI,IAAM,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAI,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAI,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAC7D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAI,IAAM,EAC/D,IAAM,IAAM,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAC7D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAC/D,EAAI,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAI,EAAI,EAAI,EAAI,IAC7D,IAAM,EAAI,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAC/D,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAC7D,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAC7D,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAI,EAAI,EAAI,EAAI,IAC7D,IAAM,EAAI,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAC/D,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,IAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAM,EAAI,EAAI,EAC/D,IAAM,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAM,EAAI,IAC7D,IAAM,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAC/D,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAI,EAAI,IAC7D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAI,EAAI,EAAI,EAAI,EAC/D,IAAM,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,IAC7D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,IAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,IAAK,EAAG,EAAG,IAAK,IAC7D,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAI,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,IAAK,EAC/D,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAC7D,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAM,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,IAAK,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAM,EAAI,EAC/D,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,mBCra5DD,EAAOC,QAAU,CACfqgB,QAASvd,EAAQ,IACjBwd,SAAUxd,EAAQ,MAClByd,MAAOzd,EAAQ,MACf0d,MAAO1d,EAAQ,MACf2d,QAAS3d,EAAQ,MACjB8J,OAAQ9J,EAAQ,iBCNlB/C,EAAOC,QAAU,CACjB,GAAI,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAAM,IAAM,IAAM,IAC7D,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAC7D,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAC7D,IAAM,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAC7D,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAM,IAC7D,IAAM,IAAM,IAAM,IAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,MAAQ,MAAQ,MAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,MAC3D,MAAO,MAAO,MAAO,MAAO,MAAO,MAAQ,MAAQ,MAAQ,MAC3D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,OAAS,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAC1D,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAS,OAAS,OAC1D,OAAS,QAAU,QAAU,QAAU,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAU,QAAS,QAAS,QAAS,QACzD,QAAS,QAAS,QAAS,QAAU,QAAU,QAAU,QACzD,QAAU,QAAU,QAAS,QAAS,QAAS,QAAS,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAW,SAAW,SAAW,SAAW,SAAY,SACxD,SAAY,SAAW,SAAW,SAAW,SAAW,SACxD,SAAU,SAAU,SAAU,qBCzmB9BD,EAAOC,QAAU,IAAIgM,IAAI,CACvB,CAAC,IAAK,CAAC,EAAG,IACV,CAAC,IAAK,CAAC,EAAG,IACV,CAAC,IAAK,CAAC,EAAG,IACV,CAAC,IAAK,CAAC,EAAG,IACV,CAAC,IAAK,CAAC,EAAG,KACV,CAAC,IAAK,CAAC,EAAG,KACV,CAAC,IAAK,CAAC,EAAG,KACV,CAAC,IAAK,CAAC,EAAG,KACV,CAAC,IAAK,CAAC,EAAG,KACV,CAAC,IAAK,CAAC,EAAG,KACV,CAAC,IAAK,CAAC,GAAI,KACX,CAAC,IAAK,CAAC,GAAI,KACX,CAAC,IAAK,CAAC,GAAI,iBCjBbjM,EAAOC,QAAU,IAAIgM,IAAI,CACvB,CAAC,IAAK,OACN,CAAC,IAAK,OACN,CAAC,IAAK,MACN,CAAC,IAAK,kBCFRjM,EAAOC,QAAU,CACjB,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAI,EAAI,KAAO,EAC/D,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAC/D,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAC/D,EAAI,KAAO,EAAI,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAO,KAAO,EAAI,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,KAAO,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAI,KAAO,EAAI,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,KAAO,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,KAAO,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAI,KAAO,EAAI,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,KAAO,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,KAAO,KAAO,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAC/D,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAC/D,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAO,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,KAAO,KAAO,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAI,EAAI,EAAI,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,IAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAC/D,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAC/D,EAAI,KAAO,EAAI,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAO,KAAO,EAAI,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAI,KAAO,EAAI,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAC5D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAI,KAAO,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,KAAO,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,KAAO,KAAO,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAC5D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAI,EAAI,KAAO,EAC/D,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,KAAO,KAAO,EAC/D,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAO,EAAI,EAAI,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAC5D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAI,KAAO,KAAO,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,KAAO,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAI,EAAI,EAAI,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAC5D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,KAAO,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAAI,KAC5D,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAI,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAC5D,KAAM,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAC5D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAC/D,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAO,KAAO,EAAI,EAC/D,KAAO,KAAO,EAAI,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAAG,EAC/D,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAO,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,KAAM,KAAM,EAC/D,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAC5D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAI,EAAI,EAAI,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,KAAM,EAAG,KAAM,EAAG,EAAG,EAC/D,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAC/D,EAAI,EAAI,EAAI,EAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,gBC5arCD,EAAOC,QAAU,CACjB,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,IAAK,KAAM,IAAM,KAAO,IAAM,IAC7D,KAAO,KAAO,KAAO,IAAM,KAAM,KAAM,IAAK,KAAM,IAAK,KAAM,IAC7D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,IAAM,KAAO,IAAM,IAC7D,KAAO,KAAO,IAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,IAAK,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAO,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAO,KAC5D,IAAM,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,IAC7D,KAAM,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAO,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,IAAM,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAO,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,IAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,IAAK,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,IAAM,IAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,IAAM,KAAO,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,IAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAO,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,IAC7D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,IAAK,KAAM,IAAK,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAO,KAAO,IAC7D,KAAO,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAM,KAAO,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAO,KAAO,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,IAC7D,KAAO,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,GAAI,KAAO,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,GAAK,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,IAAM,KAAO,KAC5D,KAAO,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAO,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,GAC9D,KAAO,KAAO,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,IAAK,KAAM,GAAI,KAAM,KAAO,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAO,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAK,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAO,KAC5D,KAAO,KAAO,KAAO,KAAM,GAAI,IAAK,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,GAAK,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,IAAM,KAAO,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAC5D,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,GAAI,KAAM,KAAM,KAAO,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,GAAI,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,GAAI,KAAM,KAAM,KAAM,GAAI,KAAO,KAAO,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAC9D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,IAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,GAAK,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAC5D,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAK,KAAO,KAC5D,KAAO,GAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAO,GAAK,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAO,KAAO,KAC5D,KAAO,KAAO,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAO,KAAO,KAAO,IAC7D,IAAM,KAAO,KAAO,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAC5D,KAAM,GAAI,KAAM,IAAK,KAAM,KAAM,KAAM,KAAO,KAAO,KAAO,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,GAAK,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAC5D,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,IAAK,KAAO,IAAM,KAAO,KAC5D,IAAO,KAAO,KAAO,KAAO,GAAI,KAAM,GAAI,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,GAAK,KAAO,KAAO,KAC5D,KAAO,GAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,GAC9D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAC9D,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAAO,GAC9D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,GAAK,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAC7D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAC5D,KAAM,IAAK,KAAM,KAAM,KAAM,KAAM,KAAO,IAAM,KAAO,GAAK,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAC5D,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAC5D,KAAO,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAAO,IAAM,KAAO,KAC5D,IAAM,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAC5D,GAAI,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,KAAO,KAC5D,KAAO,KAAO,KAAM,KAAM,KAAM,KAAM,GAAI,KAAM,KAAM,KAAM,KAC5D,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAO,KAAO,GAAK,GAAK,KAC5D,KAAO,KAAO,KAAO,KAAM,KAAM,KAAM,IAAK,KAAM,KAAM,KAAM,GAC9D,KAAM,KAAM,KAAM,KAAM,GAAI,KAAO,KAAO,KAAO,IAAM,KAAO,GAC9D,KAAO,KAAO,KAAM,GAAI,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAC5D,IAAK,IAAK,KAAM,KAAM,IAAK,GAAK,KAAO,KAAO,KAAO,KAAO,KAC5D,KAAO,KAAO,KAAO,KAAO,KAAM,GAAI,KAAM,IAAK,KAA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ACD,MAAO,cACX,IAAK,gBACD,MAAO,gBACX,QACI,MAAO,kBAElB,EAVkB,CAUhBA,GAGCb,gBACAC,sBACAx+F,QACAg/F,sBACAE,YACAE,QACAN,kBACAF,iBACAC,2BACAE,OACAviB,WACAmiB,mBASS,EA0BUY,CAAwBvgG,GAC/C,MAAO,IACA++F,KACAC,EACN,EE1HCwB,GAAuBC,EAAAA,cAA6B,MCPpDC,GAA0B,sEC6B1BC,GAAyB,CAJ3B,WACA,QACA,eAzBA,YACA,QACA,cACA,aACA,cACA,OACA,WACA,eACA,qBACA,UACA,UAoBA,oBACA,WACA,oBClCEC,GAAmB,CACrB,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,O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AC,GEAnB,SAAA/2D,GACtBxoC,EACApV,EACAgT,GAEA,YAAO,IAFPA,IAAAA,EAAiE8zB,IAEzD1xB,EAAMi9M,QAAUr/M,EAAaq/M,OAASj9M,EAAMi9M,OAAUryN,GAAiBgT,EAAaq/M,KAC9F,CCPA,IAwIAv5L,GAAe,IAAInuB,IAxIF,CACf,IACA,OACA,UACA,OACA,UACA,QACA,QACA,IACA,OACA,MACA,MACA,MACA,aACA,OACA,KACA,SACA,SACA,UACA,OACA,OACA,MACA,WACA,OACA,WACA,KACA,MACA,UACA,MACA,SACA,MACA,KACA,KACA,KACA,QACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,KACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,SACA,QACA,SACA,KACA,OACA,OACA,MACA,OACA,OACA,WACA,OACA,QACA,MACA,WACA,SACA,KACA,WACA,SACA,SACA,IACA,QACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,SACA,UACA,SACA,QACA,SACA,OACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,IACA,KACA,MACA,MACA,QACA,MACA,SACA,WACA,OACA,UACA,gBACA,IACA,QACA,OACA,iBACA,SACA,OACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,MACA,OACA,UCrIIm5C,GAAc,wCAEd5L,GAAe,WAMG,SAAAsP,GAAOpyC,GAC7B,OAAOA,EACJ1c,QAAQorD,GAAa,KACrBprD,QAAQw/C,GAAc,GAC3B,CCdA,IAAMn4C,GAAgB,WAIhBu5B,GAAc,GAGdrV,GAAoB,SAAC7O,GAAiB,OAAA7I,OAAO8iC,aAAaj6B,GAAQA,EAAO,GAAK,GAAK,IAA7C,EAGpB,SAAA+R,GAAuB/R,GAC7C,IACIpV,EADAgT,EAAO,GAIX,IAAKhT,EAAIoG,KAAKkjB,IAAIlU,GAAOpV,EAAIs5B,GAAat5B,EAAKA,EAAIs5B,GAAe,EAChEtmB,EA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","sources":["../node_modules/lower-case/src/index.ts","../node_modules/no-case/src/index.ts","../node_modules/pascal-case/src/index.ts","../node_modules/camel-case/src/index.ts","../node_modules/upper-case-first/src/index.ts","../node_modules/capital-case/src/index.ts","../node_modules/upper-case/src/index.ts","../node_modules/constant-case/src/index.ts","../node_modules/dot-case/src/index.ts","../node_modules/header-case/src/index.ts","../node_modules/param-case/src/index.ts","../node_modules/path-case/src/index.ts","../node_modules/sentence-case/src/index.ts","../node_modules/snake-case/src/index.ts","../node_modules/deepmerge/dist/cjs.js","../node_modules/dijkstrajs/dijkstra.js","../node_modules/encode-utf8/index.js","../node_modules/enquire.js/src/MediaQuery.js","../node_modules/enquire.js/src/MediaQueryDispatch.js","../node_modules/enquire.js/src/QueryHandler.js","../node_modules/enquire.js/src/Util.js","../node_modules/enquire.js/src/index.js","../node_modules/exenv/index.js","../node_modules/json2mq/index.js","../node_modules/lodash.debounce/index.js","../node_modules/lodash/_DataView.js","../node_modules/lodash/_Hash.js","../node_modules/lodash/_ListCache.js","../node_modules/lodash/_Map.js","../node_modules/lodash/_MapCache.js","../node_modules/lodash/_Promise.js","../node_modules/lodash/_Set.js","../node_modules/lodash/_SetCache.js","../node_modules/lodash/_Stack.js","../node_modules/lodash/_Symbol.js","../node_modules/lodash/_Uint8Array.js","../node_modules/lodash/_WeakMap.js","../node_modules/lodash/_apply.js","../node_modules/lodash/_arrayFilter.js","../node_modules/lodash/_arrayLikeKeys.js","../node_modules/lodash/_arrayMap.js","../node_modules/lodash/_arrayPush.js","../node_modules/lodash/_arrayReduce.js","../node_modules/lodash/_arraySome.js","../node_modules/lodash/_asciiWords.js","../node_modules/lodash/_assignMergeValue.js","../node_modules/lodash/_assignValue.js","../node_modules/lodash/_assocIndexOf.js","../node_modules/lodash/_baseAssignValue.js","../node_modules/lodash/_baseCreate.js","../node_modules/lodash/_baseFor.js","../node_modules/lodash/_baseGet.js","../node_modules/lodash/_baseGetAllKeys.js","../node_modules/lodash/_baseGetTag.js","../node_modules/lodash/_baseHasIn.js","../node_modules/lodash/_baseIsArguments.js","../node_modules/lodash/_baseIsEqual.js","../node_modules/lodash/_baseIsEqualDeep.js","../node_modules/lodash/_baseIsMatch.js","../node_modules/lodash/_baseIsNative.js","../node_modules/lodash/_baseIsTypedArray.js","../node_modules/lodash/_baseIteratee.js","../node_modules/lodash/_baseKeys.js","../node_modules/lodash/_baseKeysIn.js","../node_modules/lodash/_baseMatches.js","../node_modules/lodash/_baseMatchesProperty.js","../node_modules/lodash/_baseMerge.js","../node_modules/lodash/_baseMergeDeep.js","../node_modules/lodash/_basePickBy.js","../node_modules/lodash/_baseProperty.js","../node_modules/lodash/_basePropertyDeep.js","../node_modules/lodash/_basePropertyOf.js","../node_modules/lodash/_baseRest.js","../node_modules/lodash/_baseSet.js","../node_modules/lodash/_baseSetToString.js","../node_modules/lodash/_baseTimes.js","../node_modules/lodash/_baseToString.js","../node_modules/lodash/_baseUnary.js","../node_modules/lodash/_cacheHas.js","../node_modules/lodash/_castPath.js","../node_modules/lodash/_cloneArrayBuffer.js","../node_modules/lodash/_cloneBuffer.js","../node_modules/lodash/_cloneTypedArray.js","../node_modules/lodash/_copyArray.js","../node_modules/lodash/_copyObject.js","../node_modules/lodash/_coreJsData.js","../node_modules/lodash/_createAssigner.js","../node_modules/lodash/_createBaseFor.js","../node_modules/lodash/_createCompounder.js","../node_modules/lodash/_deburrLetter.js","../node_modules/lodash/_defineProperty.js","../node_modules/lodash/_equalArrays.js","../node_modules/lodash/_equalByTag.js","../node_modules/lodash/_equalObjects.js","../node_modules/lodash/_freeGlobal.js","../node_modules/lodash/_getAllKeys.js","../node_modules/lodash/_getAllKeysIn.js","../node_modules/lodash/_getMapData.js","../node_modules/lodash/_getMatchData.js","../node_modules/lodash/_getNative.js","../node_modules/lodash/_getPrototype.js","../node_modules/lodash/_getRawTag.js","../node_modules/lodash/_getSymbols.js","../node_modules/lodash/_getSymbolsIn.js","../node_modules/lodash/_getTag.js","../node_modules/lodash/_getValue.js","../node_modules/lodash/_hasPath.js","../node_modules/lodash/_hasUnicodeWord.js","../node_modules/lodash/_hashClear.js","../node_modules/lodash/_hashDelete.js","../node_modules/lodash/_hashGet.js","../node_modules/lodash/_hashHas.js","../node_modules/lodash/_hashSet.js","../node_modules/lodash/_initCloneObject.js","../node_modules/lodash/_isIndex.js","../node_modules/lodash/_isIterateeCall.js","../node_modules/lodash/_isKey.js","../node_modules/lodash/_isKeyable.js","../node_modules/lodash/_isMasked.js","../node_modules/lodash/_isPrototype.js","../node_modules/lodash/_isStrictComparable.js","../node_modules/lodash/_listCacheClear.js","../node_modules/lodash/_listCacheDelete.js","../node_modules/lodash/_listCacheGet.js","../node_modules/lodash/_listCacheHas.js","../node_modules/lodash/_listCacheSet.js","../node_modules/lodash/_mapCacheClear.js","../node_modules/lodash/_mapCacheDelete.js","../node_modules/lodash/_mapCacheGet.js","../node_modules/lodash/_mapCacheHas.js","../node_modules/lodash/_mapCacheSet.js","../node_modules/lodash/_mapToArray.js","../node_modules/lodash/_matchesStrictComparable.js","../node_modules/lodash/_memoizeCapped.js","../node_modules/lodash/_nativeCreate.js","../node_modules/lodash/_nativeKeys.js","../node_modules/lodash/_nativeKeysIn.js","../node_modules/lodash/_nodeUtil.js","../node_modules/lodash/_objectToString.js","../node_modules/lodash/_overArg.js","../node_modules/lodash/_overRest.js","../node_modules/lodash/_root.js","../node_modules/lodash/_safeGet.js","../node_modules/lodash/_setCacheAdd.js","../node_modules/lodash/_setCacheHas.js","../node_modules/lodash/_setToArray.js","../node_modules/lodash/_setToString.js","../node_modules/lodash/_shortOut.js","../node_modules/lodash/_stackClear.js","../node_modules/lodash/_stackDelete.js","../node_modules/lodash/_stackGet.js","../node_modules/lodash/_stackHas.js","../node_modules/lodash/_stackSet.js","../node_modules/lodash/_stringToPath.js","../node_modules/lodash/_toKey.js","../node_modules/lodash/_toSource.js","../node_modules/lodash/_unicodeWords.js","../node_modules/lodash/constant.js","../node_modules/lodash/deburr.js","../node_modules/lodash/eq.js","../node_modules/lodash/get.js","../node_modules/lodash/hasIn.js","../node_modules/lodash/identity.js","../node_modules/lodash/isArguments.js","../node_modules/lodash/isArray.js","../node_modules/lodash/isArrayLike.js","../node_modules/lodash/isArrayLikeObject.js","../node_modules/lodash/isBuffer.js","../node_modules/lodash/isFunction.js","../node_modules/lodash/isLength.js","../node_modules/lodash/isObject.js","../node_modules/lodash/isObjectLike.js","../node_modules/lodash/isPlainObject.js","../node_modules/lodash/isSymbol.js","../node_modules/lodash/isTypedArray.js","../node_modules/lodash/kebabCase.js","../node_modules/lodash/keys.js","../node_modules/lodash/keysIn.js","../node_modules/lodash/memoize.js","../node_modules/lodash/merge.js","../node_modules/lodash/pickBy.js","../node_modules/lodash/property.js","../node_modules/lodash/stubArray.js","../node_modules/lodash/stubFalse.js","../node_modules/lodash/toPlainObject.js","../node_modules/lodash/toString.js","../node_modules/lodash/words.js","../node_modules/poker-hand-evaluator/index.js","../node_modules/poker-hand-evaluator/src/arrays/flushes.js","../node_modules/poker-hand-evaluator/src/arrays/index.js","../node_modules/poker-hand-evaluator/src/arrays/products.js","../node_modules/poker-hand-evaluator/src/arrays/ranks.js","../node_modules/poker-hand-evaluator/src/arrays/suits.js","../node_modules/poker-hand-evaluator/src/arrays/unique5.js","../node_modules/poker-hand-evaluator/src/arrays/values.js","../node_modules/poker-hand-evaluator/src/pokerhand.js","../node_modules/poker-hand-evaluator/src/utils/eval-hand.js","../node_modules/poker-hand-evaluator/src/utils/eval-rank.js","../node_modules/poker-hand-evaluator/src/utils/is-valid-card.js","../node_modules/poker-hand-evaluator/src/utils/sanitize.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/qrcode/lib/browser.js","../node_modules/qrcode/lib/can-promise.js","../node_modules/qrcode/lib/core/alignment-pattern.js","../node_modules/qrcode/lib/core/alphanumeric-data.js","../node_modules/qrcode/lib/core/bit-buffer.js","../node_modules/qrcode/lib/core/bit-matrix.js","../node_modules/qrcode/lib/core/byte-data.js","../node_modules/qrcode/lib/core/error-correction-code.js","../node_modules/qrcode/lib/core/error-correction-level.js","../node_modules/qrcode/lib/core/finder-pattern.js","../node_modules/qrcode/lib/core/format-info.js","../node_modules/qrcode/lib/core/galois-field.js","../node_modules/qrcode/lib/core/kanji-data.js","../node_modules/qrcode/lib/core/mask-pattern.js","../node_modules/qrcode/lib/core/mode.js","../node_modules/qrcode/lib/core/numeric-data.js","../node_modules/qrcode/lib/core/polynomial.js","../node_modules/qrcode/lib/core/qrcode.js","../node_modules/qrcode/lib/core/reed-solomon-encoder.js","../node_modules/qrcode/lib/core/regex.js","../node_modules/qrcode/lib/core/segments.js","../node_modules/qrcode/lib/core/utils.js","../node_modules/qrcode/lib/core/version-check.js","../node_modules/qrcode/lib/core/version.js","../node_modules/qrcode/lib/renderer/canvas.js","../node_modules/qrcode/lib/renderer/svg-tag.js","../node_modules/qrcode/lib/renderer/utils.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/index.js","../node_modules/react-innertext/index.js","../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","../node_modules/react-modal/lib/components/Modal.js","../node_modules/react-modal/lib/components/ModalPortal.js","../node_modules/react-modal/lib/helpers/ariaAppHider.js","../node_modules/react-modal/lib/helpers/bodyTrap.js","../node_modules/react-modal/lib/helpers/classList.js","../node_modules/react-modal/lib/helpers/focusManager.js","../node_modules/react-modal/lib/helpers/portalOpenInstances.js","../node_modules/react-modal/lib/helpers/safeHTMLElement.js","../node_modules/react-modal/lib/helpers/scopeTab.js","../node_modules/react-modal/lib/helpers/tabbable.js","../node_modules/react-modal/lib/index.js","../node_modules/react-slick/lib/arrows.js","../node_modules/react-slick/lib/default-props.js","../node_modules/react-slick/lib/dots.js","../node_modules/react-slick/lib/index.js","../node_modules/react-slick/lib/initial-state.js","../node_modules/react-slick/lib/inner-slider.js","../node_modules/react-slick/lib/slider.js","../node_modules/react-slick/lib/track.js","../node_modules/react-slick/lib/utils/innerSliderUtils.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/scroll/index.js","../node_modules/scrollparent/scrollparent.js","../node_modules/shallowequal/index.js","../node_modules/string-convert/camel2hyphen.js","../node_modules/style-dictionary/lib/utils/deepExtend.js","../node_modules/style-dictionary/lib/utils/es6_.js","../node_modules/style-dictionary/lib/utils/flattenProperties.js","../node_modules/style-dictionary/lib/utils/references/createReferenceRegex.js","../node_modules/style-dictionary/lib/utils/references/defaults.js","../node_modules/style-dictionary/lib/utils/references/usesReference.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js","../node_modules/use-sync-external-store/shim/index.js","../node_modules/use-sync-external-store/shim/with-selector.js","../node_modules/warning/warning.js","../node_modules/classnames/index.js","../node_modules/tslib/tslib.es6.mjs","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/make namespace object","../webpack/runtime/node module decorator","../webpack/runtime/publicPath","../webpack/runtime/nonce","../node_modules/@aws-amplify/core/src/constants.ts","../node_modules/@aws-amplify/core/src/Logger/types.ts","../node_modules/@aws-amplify/core/src/Logger/ConsoleLogger.ts","../node_modules/@aws-amplify/core/src/errors/AmplifyError.ts","../node_modules/@aws-amplify/core/src/Hub/index.ts","../../../../../src/client/symbol.ts","../node_modules/rxjs/src/internal/util/isFunction.ts","../node_modules/rxjs/src/internal/util/lift.ts","../node_modules/rxjs/src/internal/util/UnsubscriptionError.ts","../node_modules/rxjs/src/internal/util/createErrorClass.ts","../node_modules/rxjs/src/internal/util/arrRemove.ts","../node_modules/rxjs/src/internal/Subscription.ts","../node_modules/rxjs/src/internal/config.ts","../node_modules/rxjs/src/internal/scheduler/timeoutProvider.ts","../node_modules/rxjs/src/internal/util/reportUnhandledError.ts","../node_modules/rxjs/src/internal/util/noop.ts","../node_modules/rxjs/src/internal/NotificationFactories.ts","../node_modules/rxjs/src/internal/util/errorContext.ts","../node_modules/rxjs/src/internal/Subscriber.ts","../node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts","../node_modules/rxjs/src/internal/operators/map.ts","../node_modules/@aws-amplify/data-schema/src/runtime/utils/resolveOwnerFields.ts","../node_modules/@aws-amplify/data-schema/src/runtime/utils/stringTransformation.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/APIClient.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/operations/utils.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/operations/custom.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/generateCustomOperationsProperty.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/utils/clientProperties/generateEnumsProperty.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/operations/list.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/operations/indexQuery.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/operations/get.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/operations/subscription.ts","../node_modules/rxjs/src/internal/symbol/observable.ts","../node_modules/rxjs/src/internal/util/identity.ts","../node_modules/rxjs/src/internal/util/pipe.ts","../node_modules/rxjs/src/internal/Observable.ts","../node_modules/@aws-amplify/data-schema/src/runtime/utils/findIndexByFields.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/operations/observeQuery.ts","../node_modules/@aws-amplify/data-schema/src/runtime/utils/resolvePKFields.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/clientUtils.ts","../node_modules/@aws-amplify/data-schema/src/runtime/addSchemaToClient.ts","../node_modules/@aws-amplify/data-schema/src/runtime/internals/utils/clientProperties/generateModelsProperty.ts","../node_modules/@aws-amplify/api-graphql/src/types/index.ts","../node_modules/@aws-amplify/api-graphql/src/internals/utils/runtimeTypeGuards/isApiGraphQLProviderConfig.ts","../node_modules/@aws-amplify/core/src/Platform/types.ts","../node_modules/graphql/jsutils/isObjectLike.mjs","../node_modules/graphql/polyfills/symbols.mjs","../node_modules/graphql/language/location.mjs","../node_modules/graphql/language/printLocation.mjs","../node_modules/graphql/error/GraphQLError.mjs","../node_modules/graphql/error/syntaxError.mjs","../node_modules/graphql/language/kinds.mjs","../node_modules/graphql/jsutils/nodejsCustomInspectSymbol.mjs","../node_modules/graphql/jsutils/defineInspect.mjs","../node_modules/graphql/jsutils/invariant.mjs","../node_modules/graphql/language/ast.mjs","../node_modules/graphql/language/tokenKind.mjs","../node_modules/graphql/jsutils/inspect.mjs","../node_modules/graphql/jsutils/devAssert.mjs","../node_modules/graphql/jsutils/instanceOf.mjs","../node_modules/graphql/language/source.mjs","../node_modules/graphql/language/directiveLocation.mjs","../node_modules/graphql/language/blockString.mjs","../node_modules/graphql/language/lexer.mjs","../node_modules/graphql/language/parser.mjs","../node_modules/graphql/language/visitor.mjs","../node_modules/graphql/language/printer.mjs","../node_modules/rxjs/src/internal/util/isArrayLike.ts","../node_modules/rxjs/src/internal/util/isPromise.ts","../node_modules/rxjs/src/internal/util/isInteropObservable.ts","../node_modules/rxjs/src/internal/util/isAsyncIterable.ts","../node_modules/rxjs/src/internal/util/throwUnobservableError.ts","../node_modules/rxjs/src/internal/symbol/iterator.ts","../node_modules/rxjs/src/internal/util/isIterable.ts","../node_modules/rxjs/src/internal/util/isReadableStreamLike.ts","../node_modules/rxjs/src/internal/observable/innerFrom.ts","../node_modules/rxjs/src/internal/operators/catchError.ts","../node_modules/@aws-amplify/core/src/utils/amplifyUrl/index.ts","../node_modules/@aws-amplify/core/src/Platform/version.ts","../node_modules/@aws-amplify/core/src/Platform/detection/helpers.ts","../node_modules/@aws-amplify/core/src/Platform/detection/index.ts","../node_modules/@aws-amplify/core/src/Platform/detection/Expo.ts","../node_modules/@aws-amplify/core/src/Platform/detection/ReactNative.ts","../node_modules/@aws-amplify/core/src/Platform/detection/Next.ts","../node_modules/@aws-amplify/core/src/Platform/detection/Nuxt.ts","../node_modules/@aws-amplify/core/src/Platform/detection/Angular.ts","../node_modules/@aws-amplify/core/src/Platform/detection/React.ts","../node_modules/@aws-amplify/core/src/Platform/detection/Vue.ts","../node_modules/@aws-amplify/core/src/Platform/detection/Svelte.ts","../node_modules/@aws-amplify/core/src/Platform/detection/Web.ts","../node_modules/@aws-amplify/core/src/Platform/detectFramework.ts","../node_modules/@aws-amplify/core/src/Platform/customUserAgent.ts","../node_modules/@aws-amplify/core/src/Platform/index.ts","../node_modules/@aws-amplify/core/src/errors/APIError.ts","../node_modules/@aws-amplify/api-rest/src/errors/RestApiError.ts","../node_modules/@aws-amplify/api-rest/src/errors/CanceledError.ts","../node_modules/@aws-amplify/api-rest/src/errors/validation.ts","../node_modules/@aws-amplify/core/src/clients/serde/responseInfo.ts","../node_modules/@aws-amplify/core/src/clients/serde/json.ts","../node_modules/@aws-amplify/api-rest/src/utils/serviceError.ts","../node_modules/@aws-amplify/api-rest/src/utils/logger.ts","../node_modules/@aws-amplify/api-rest/src/utils/resolveApiUrl.ts","../node_modules/@aws-amplify/core/src/clients/middleware/retry/isClockSkewError.ts","../node_modules/@aws-amplify/core/src/clients/middleware/retry/defaultRetryDecider.ts","../node_modules/@aws-amplify/core/src/utils/retry/constants.ts","../node_modules/@aws-amplify/core/src/utils/retry/jitteredBackoff.ts","../node_modules/@aws-amplify/core/src/clients/middleware/retry/jitteredBackoff.ts","../node_modules/@aws-amplify/core/src/clients/middleware/retry/middleware.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/constants.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.ts","../node_modules/@aws-crypto/sha256-js/src/constants.ts","../node_modules/@aws-crypto/sha256-js/src/RawSha256.ts","../node_modules/@aws-crypto/util/src/convertToBuffer.ts","../node_modules/@smithy/util-utf8/dist-es/fromUtf8.browser.js","../node_modules/@aws-crypto/sha256-js/src/jsSha256.ts","../node_modules/@aws-crypto/util/src/isEmptyData.ts","../node_modules/@smithy/util-hex-encoding/dist-es/index.js","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getSignature.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/signRequest.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/utils/getSkewCorrectedDate.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/utils/getUpdatedSystemClockOffset.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/utils/isClockSkewed.ts","../node_modules/@aws-amplify/core/src/clients/middleware/signing/middleware.ts","../node_modules/@aws-amplify/core/src/clients/middleware/userAgent/middleware.ts","../node_modules/@aws-amplify/core/src/clients/internal/composeTransferHandler.ts","../node_modules/@aws-amplify/core/src/clients/utils/memoization.ts","../node_modules/@aws-amplify/core/src/clients/handlers/fetch.ts","../node_modules/@aws-amplify/core/src/clients/handlers/authenticated.ts","../node_modules/@aws-amplify/core/src/clients/handlers/unauthenticated.ts","../node_modules/@aws-amplify/api-rest/src/utils/constants.ts","../node_modules/@aws-amplify/api-rest/src/apis/common/handler.ts","../node_modules/@aws-amplify/api-rest/src/utils/resolveHeaders.ts","../node_modules/@aws-amplify/api-rest/src/utils/parseSigningInfo.ts","../node_modules/@aws-amplify/api-rest/src/apis/common/internalPost.ts","../node_modules/@aws-amplify/api-rest/src/utils/createCancellableOperation.ts","../node_modules/@aws-amplify/core/src/utils/deepFreeze.ts","../node_modules/@aws-amplify/core/src/singleton/constants.ts","../node_modules/@aws-amplify/core/src/parseAWSExports.ts","../node_modules/@aws-amplify/core/src/parseAmplifyOutputs.ts","../node_modules/@aws-amplify/core/src/utils/parseAmplifyConfig.ts","../node_modules/@aws-amplify/core/src/singleton/Auth/index.ts","../node_modules/@aws-amplify/core/src/singleton/Amplify.ts","../node_modules/@aws-amplify/core/src/singleton/apis/internal/fetchAuthSession.ts","../node_modules/@aws-amplify/core/src/singleton/apis/fetchAuthSession.ts","../node_modules/@aws-amplify/core/node_modules/uuid/dist/esm-browser/native.js","../node_modules/@aws-amplify/core/node_modules/uuid/dist/esm-browser/rng.js","../node_modules/@aws-amplify/core/node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/@aws-amplify/core/node_modules/uuid/dist/esm-browser/v4.js","../node_modules/@aws-amplify/core/src/utils/amplifyUuid/index.ts","../node_modules/@aws-amplify/core/src/utils/retry/isNonRetryableError.ts","../node_modules/@aws-amplify/core/src/utils/globalHelpers/index.ts","../node_modules/@aws-amplify/core/src/utils/convert/base64/base64Encoder.ts","../node_modules/@aws-amplify/core/src/utils/convert/base64/bytesToString.ts","../node_modules/@aws-amplify/core/src/utils/retry/retry.ts","../node_modules/@aws-amplify/core/src/utils/retry/jitteredExponentialRetry.ts","../node_modules/@aws-amplify/core/src/utils/retry/NonRetryableError.ts","../node_modules/@aws-amplify/api-graphql/src/types/PubSub.ts","../node_modules/@aws-amplify/api-graphql/src/Providers/constants.ts","../node_modules/rxjs/src/internal/util/executeSchedule.ts","../node_modules/rxjs/src/internal/operators/observeOn.ts","../node_modules/rxjs/src/internal/operators/subscribeOn.ts","../node_modules/rxjs/src/internal/scheduled/scheduleAsyncIterable.ts","../node_modules/rxjs/src/internal/scheduled/scheduled.ts","../node_modules/rxjs/src/internal/scheduled/scheduleObservable.ts","../node_modules/rxjs/src/internal/scheduled/scheduleArray.ts","../node_modules/rxjs/src/internal/scheduled/schedulePromise.ts","../node_modules/rxjs/src/internal/scheduled/scheduleIterable.ts","../node_modules/rxjs/src/internal/scheduled/scheduleReadableStreamLike.ts","../node_modules/@aws-amplify/core/src/Reachability/Reachability.ts","../node_modules/@aws-amplify/core/src/utils/isWebWorker.ts","../node_modules/rxjs/src/internal/observable/from.ts","../node_modules/@aws-amplify/api-graphql/src/utils/ReachabilityMonitor/index.ts","../node_modules/@aws-amplify/api-graphql/src/utils/ConnectionStateMonitor.ts","../node_modules/rxjs/src/internal/operators/filter.ts","../node_modules/@aws-amplify/api-graphql/src/utils/ReconnectionMonitor.ts","../node_modules/@aws-amplify/api-graphql/src/Providers/AWSAppSyncRealTimeProvider/index.ts","../node_modules/@aws-amplify/api-graphql/src/utils/errors/GraphQLApiError.ts","../node_modules/@aws-amplify/api-graphql/src/utils/errors/validation.ts","../node_modules/@aws-amplify/api-graphql/src/utils/resolveConfig.ts","../node_modules/@aws-amplify/api-graphql/src/utils/errors/assertValidationError.ts","../node_modules/@aws-amplify/api-graphql/src/utils/resolveLibraryOptions.ts","../node_modules/@aws-amplify/api-graphql/src/utils/errors/repackageAuthError.ts","../node_modules/@aws-amplify/api-graphql/src/utils/errors/constants.ts","../node_modules/@aws-amplify/api-graphql/src/utils/errors/createGraphQLResultWithError.ts","../node_modules/@aws-amplify/api-graphql/src/internals/InternalGraphQLAPI.ts","../node_modules/@aws-amplify/api-graphql/src/internals/utils/runtimeTypeGuards/isGraphQLResponseWithErrors.ts","../node_modules/@aws-amplify/api-graphql/src/GraphQLAPI.ts","../node_modules/@aws-amplify/api-graphql/src/internals/v6.ts","../node_modules/@aws-amplify/api-graphql/src/internals/generateClient.ts","../node_modules/@aws-amplify/api-graphql/src/internals/utils/runtimeTypeGuards/isConfigureEventWithResourceConfig.ts","../node_modules/@aws-amplify/api/src/API.ts","graphql/mutations.js","graphql/queries.js","components/PokerHandContext/PokerHandContext.js","../node_modules/@aws-amplify/ui/dist/esm/utils/utils.mjs","../node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js","../node_modules/@xstate/react/es/useActor.js","../node_modules/@xstate/react/es/useSelector.js","../node_modules/@xstate/react/es/utils.js","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/actor.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/facade.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/getRoute.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/Authenticator/context/AuthenticatorContext.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/Authenticator/hooks/useAuthenticator/constants.mjs","../node_modules/@aws-amplify/ui/dist/esm/types/authenticator/attributes.mjs","../node_modules/@aws-amplify/ui/dist/esm/i18n/country-dial-codes.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/constants.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/form.mjs","../node_modules/@aws-amplify/core/src/I18n/I18n.ts","../node_modules/@aws-amplify/core/src/errors/createAssertionFunction.ts","../node_modules/@aws-amplify/core/src/I18n/errorHelpers.ts","../node_modules/@aws-amplify/core/src/I18n/index.ts","../node_modules/@aws-amplify/ui/dist/esm/i18n/dictionaries/authenticator/de.mjs","../node_modules/@aws-amplify/ui/dist/esm/i18n/translations.mjs","../node_modules/@aws-amplify/ui/dist/esm/i18n/dictionaries/index.mjs","../node_modules/@aws-amplify/ui/dist/esm/i18n/dictionaries/authenticator/defaultTexts.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/formFields/utils.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/formFields/defaults.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/formFields/formFields.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/Authenticator/hooks/constants.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/Authenticator/hooks/useAuthenticator/utils.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/Authenticator/hooks/utils.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/Authenticator/hooks/useAuthenticator/useAuthenticator.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/Authenticator/hooks/useAuthenticatorInitMachine/useAuthenticatorInitMachine.mjs","../node_modules/@aws-amplify/ui/dist/esm/utils/setUserAgent/constants.mjs","../node_modules/@aws-amplify/ui/dist/esm/utils/setUserAgent/setUserAgent.mjs","../node_modules/xstate/es/_virtual/_tslib.js","../node_modules/xstate/es/types.js","../node_modules/xstate/es/constants.js","../node_modules/xstate/es/utils.js","../node_modules/xstate/es/actionTypes.js","../node_modules/xstate/es/environment.js","../node_modules/xstate/es/stateUtils.js","../node_modules/xstate/es/actions.js","../node_modules/xstate/es/State.js","../node_modules/xstate/es/scheduler.js","../node_modules/xstate/es/serviceScope.js","../node_modules/xstate/es/Actor.js","../node_modules/xstate/es/registry.js","../node_modules/xstate/es/devTools.js","../node_modules/xstate/es/behaviors.js","../node_modules/xstate/es/interpreter.js","../node_modules/@xstate/react/es/useConstant.js","../node_modules/@xstate/react/es/useInterpret.js","../node_modules/@aws-amplify/core/src/utils/convert/base64/base64Decoder.ts","../node_modules/@aws-amplify/core/src/singleton/Auth/utils/errorHelpers.ts","../node_modules/@aws-amplify/core/src/singleton/Auth/utils/index.ts","../node_modules/@aws-amplify/auth/src/errors/AuthError.ts","../node_modules/@aws-amplify/auth/src/errors/constants.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/types.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/getCurrentUser.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/internal/getCurrentUser.ts","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/defaultAuthHubHandler.mjs","../node_modules/xstate/es/invokeUtils.js","../node_modules/xstate/es/StateNode.js","../node_modules/xstate/es/Machine.js","../node_modules/xstate/es/index.js","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/utils.mjs","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/actions.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/utils.mjs","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/guards.mjs","../node_modules/@aws-amplify/ui/dist/esm/validators/index.mjs","../node_modules/js-cookie/dist/js.cookie.mjs","../node_modules/@aws-amplify/core/src/types/errors.ts","../node_modules/@aws-amplify/core/src/storage/CookieStorage.ts","../node_modules/@aws-amplify/core/src/errors/PlatformNotSupportedError.ts","../node_modules/@aws-amplify/core/src/storage/KeyValueStorage.ts","../node_modules/@aws-amplify/core/src/storage/InMemoryStorage.ts","../node_modules/@aws-amplify/core/src/storage/index.ts","../node_modules/@aws-amplify/core/src/storage/DefaultStorage.ts","../node_modules/@aws-amplify/core/src/storage/utils.ts","../node_modules/@aws-amplify/core/src/clients/internal/composeServiceApi.ts","../node_modules/@aws-amplify/core/src/storage/SessionStorage.ts","../node_modules/@aws-amplify/auth/src/errors/utils/assertServiceError.ts","../node_modules/@aws-amplify/core/src/clients/endpoints/partitions.ts","../node_modules/@aws-amplify/core/src/clients/endpoints/getDnsSuffix.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/clients/CognitoIdentityProvider/base.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/clients/CognitoIdentityProvider/index.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/clients/CognitoIdentityProvider/utils.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/userContextData.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/refreshAuthTokens.ts","../node_modules/@aws-amplify/core/src/utils/deDupeAsyncFunction.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/types.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/errorHelpers.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/TokenStore.ts","../node_modules/@aws-amplify/core/src/utils/isBrowser.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/signInWithRedirectStore.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/oAuthStore.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/inflightPromise.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/TokenOrchestrator.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/tokenProvider.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/CognitoUserPoolsTokenProvider.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/types.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/IdentityIdStore.ts","../node_modules/@aws-amplify/core/src/awsClients/cognitoIdentity/base.ts","../node_modules/@aws-amplify/core/src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts","../node_modules/@aws-amplify/core/src/awsClients/cognitoIdentity/getId.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/utils.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/IdentityIdProvider.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/credentialsProvider.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/index.ts","../node_modules/aws-amplify/src/initSingleton.ts","../node_modules/@aws-amplify/core/src/utils/deviceName/getDeviceName.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/types/errors.ts","../node_modules/@aws-amplify/auth/src/errors/types/validation.ts","../node_modules/@aws-amplify/auth/src/common/AuthErrorStrings.ts","../node_modules/@aws-amplify/auth/src/errors/utils/assertValidationError.ts","../node_modules/@aws-amplify/auth/src/utils/getAuthUserAgentValue.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/signInStore.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/textEncoder/index.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/BigInteger/BigInteger.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/calculate/calculateS.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/constants.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getBytesFromHex.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getHexFromBytes.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getHashFromData.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getHashFromHex.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getPaddedHex.ts","../node_modules/@aws-amplify/core/src/utils/WordArray.ts","../node_modules/@aws-amplify/core/src/utils/cryptoSecureRandomInt.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getRandomBytes.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/AuthenticationHelper/AuthenticationHelper.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getRandomString.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/calculate/calculateU.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getHkdfKey.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/calculate/calculateA.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getAuthenticationHelper.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getNowString.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/srp/getSignatureString.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/signInHelpers.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/cacheTokens.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/dispatchSignedInHubEvent.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/signInWithCustomSRPAuth.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/signInWithSRP.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/signIn.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/signInWithUserPassword.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/signInWithCustomAuth.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/apiHelpers.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/autoSignIn.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/signUpHelpers.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/confirmSignIn.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/resetPassword.ts","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/defaultServices.mjs","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/signUp.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/confirmSignUp.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/confirmResetPassword.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/internal/fetchUserAttributes.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/fetchUserAttributes.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/resendSignUpCode.ts","../node_modules/@aws-amplify/auth/src/Errors.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/createOAuthError.ts","../node_modules/@aws-amplify/auth/src/types/Auth.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/validateState.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/completeOAuthFlow.ts","../node_modules/@aws-amplify/core/src/utils/urlSafeDecode.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/getRedirectUrl.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/handleFailure.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/attemptCompleteOAuthFlow.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/enableOAuthListener.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/types/models.ts","../node_modules/@aws-amplify/auth/src/utils/openAuthSession.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/generateCodeVerifier.ts","../node_modules/@aws-amplify/core/src/utils/generateRandomString.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/generateState.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/signInWithRedirect.ts","../node_modules/@aws-amplify/core/src/utils/urlSafeEncode.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/cancelOAuthFlow.ts","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/actors/utils.mjs","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/actors/signIn.mjs","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/actors/signUp.mjs","../node_modules/@aws-amplify/core/src/singleton/apis/clearCredentials.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/completeOAuthSignOut.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/handleOAuthSignOut.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/utils/oauth/oAuthSignOutRedirect.ts","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/signOut.ts","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/actors/signOut.mjs","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/sendUserAttributeVerificationCode.ts","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/actors/verifyUserAttributes.mjs","../node_modules/@aws-amplify/auth/src/providers/cognito/apis/confirmUserAttribute.ts","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/index.mjs","../node_modules/@aws-amplify/ui/dist/esm/machines/authenticator/actors/forgotPassword.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/Authenticator/context/AuthenticatorProvider.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/version.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/hooks/useDeprecationWarning.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/hooks/useDeprecationWarning.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/hooks/useCustomComponents/useCustomComponents.mjs","../node_modules/@aws-amplify/ui/dist/esm/helpers/authenticator/textUtil.mjs","../node_modules/@aws-amplify/ui/dist/esm/utils/classNames.mjs","../node_modules/@aws-amplify/ui/dist/esm/types/primitives/componentClassName.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/utils/primitiveWithForwardRef.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Fieldset/useFieldset.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/utils.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/types/style.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/borderWidths.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/colors.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/fontSizes.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/fontWeights.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/opacities.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/radii.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/space.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/time.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/defaultTheme.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/index.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/index.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/accordion.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/alert.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/authenticator.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/autocomplete.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/badge.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/breadcrumbs.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/button.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/card.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/checkbox.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/checkboxField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/collection.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/copy.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/dialCodeSelect.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/divider.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/dropZone.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/field.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/fieldControl.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/fieldGroup.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/fieldMessages.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/fieldset.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/flex.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/heading.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/icon.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/highlightMatch.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/image.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/inAppMessaging.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/input.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/link.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/liveness.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/loader.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/menu.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/message.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/pagination.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/passwordField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/phoneNumberField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/placeholder.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/radio.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/radioGroup.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/rating.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/searchField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/select.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/selectField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/sliderField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/stepperField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/storagemanager.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/switchField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/table.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/tabs.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/text.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/textAreaField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/textField.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/toggleButton.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/components/toggleButtonGroup.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/fonts.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/lineHeights.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/outlineOffsets.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/outlineWidths.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/shadows.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/tokens/transforms.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/breakpoints.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/shared/constants.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/shared/utils.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/types/theme.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/shared/responsive/utils.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/shared/responsive/useBreakpoint.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/shared/responsive/getMediaQueries.mjs","../node_modules/@aws-amplify/ui/dist/esm/theme/createTheme.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/ThemeProvider/ThemeContext.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/hooks/useTheme.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/shared/styleUtils.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/shared/getStyleValue.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/View/View.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Flex/Flex.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Loader/Loader.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Button/Button.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Heading/Heading.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Text/Text.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/helpers/utils.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/hooks/useFormHandlers/useFormHandlers.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/context/IconsContext.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/context/useIcons.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/icons/IconCheckCircle.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/icons/IconError.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/icons/IconInfo.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/icons/IconWarning.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Alert/AlertIcon.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/icons/IconClose.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Alert/Alert.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/shared/RemoteErrorMessage.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/VisuallyHidden/VisuallyHidden.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/icons/IconVisibilityOff.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/icons/IconVisibility.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/PasswordField/ShowPasswordButton.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Field/FieldDescription.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Field/FieldErrorMessage.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/FieldGroup/FieldGroup.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Input/Input.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Label/Label.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/utils/splitPrimitiveProps.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/utils/useLayoutEffect.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/utils/useStableId.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/TextField/TextField.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/PasswordField/PasswordField.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/icons/IconExpandMore.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Select/Select.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/SelectField/SelectField.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/PhoneNumberField/DialCodeSelect.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/PhoneNumberField/PhoneNumberField.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/shared/ValidationErrors.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/shared/FormField.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/shared/FormFields.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/RouteContainer/RouteContainer.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/ConfirmSignUp/ConfirmSignUp.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/ForceNewPassword/ForceNewPassword.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/shared/ConfirmSignInFooter.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/SetupTotp/SetupTotp.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Tabs/TabsContext.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Tabs/TabsItem.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Tabs/TabsList.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Tabs/TabsPanel.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Tabs/TabsContainer.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Tabs/Tabs.mjs","../node_modules/@aws-amplify/ui/dist/esm/types/authenticator/user.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Divider/Divider.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Icon/Icon.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/FederatedSignIn/FederatedSignInButtons/FederatedSignInButton.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/FederatedSignIn/FederatedSignIn.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/SignIn/SignIn.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/SignUp/SignUp.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/shared/SignInSignUpTabs.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/shared/TwoButtonSubmitFooter.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/VerifyUser/ConfirmVerifyUser.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/RadioGroupField/context.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Radio/Radio.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Fieldset/Fieldset.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/utils/getTestId.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/RadioGroupField/RadioGroupField.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/VerifyUser/VerifyUser.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/ConfirmSignIn/ConfirmSignIn.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/ForgotPassword/ConfirmResetPassword.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/ForgotPassword/ForgotPassword.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/utils.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/Router/Router.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/hooks/useCustomComponents/defaultComponents.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/components/Authenticator/Authenticator.mjs","../node_modules/@aws-amplify/ui-react-core/dist/esm/hooks/useSetUserAgent.mjs","../node_modules/@fortawesome/fontawesome-svg-core/index.mjs","../node_modules/@fortawesome/react-fontawesome/index.es.js","../node_modules/@fortawesome/free-solid-svg-icons/index.mjs","../node_modules/date-fns/locale/en-US/_lib/formatDistance.mjs","../node_modules/date-fns/locale/_lib/buildFormatLongFn.mjs","../node_modules/date-fns/locale/en-US/_lib/formatLong.mjs","../node_modules/date-fns/locale/en-US/_lib/formatRelative.mjs","../node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs","../node_modules/date-fns/locale/en-US/_lib/localize.mjs","../node_modules/date-fns/locale/_lib/buildMatchFn.mjs","../node_modules/date-fns/locale/en-US/_lib/match.mjs","../node_modules/date-fns/locale/_lib/buildMatchPatternFn.mjs","../node_modules/date-fns/locale/en-US.mjs","../node_modules/date-fns/_lib/defaultOptions.mjs","../node_modules/date-fns/constants.mjs","../node_modules/date-fns/toDate.mjs","../node_modules/date-fns/startOfDay.mjs","../node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.mjs","../node_modules/date-fns/differenceInCalendarDays.mjs","../node_modules/date-fns/constructFrom.mjs","../node_modules/date-fns/startOfYear.mjs","../node_modules/date-fns/getDayOfYear.mjs","../node_modules/date-fns/startOfWeek.mjs","../node_modules/date-fns/startOfISOWeek.mjs","../node_modules/date-fns/getISOWeekYear.mjs","../node_modules/date-fns/startOfISOWeekYear.mjs","../node_modules/date-fns/getISOWeek.mjs","../node_modules/date-fns/getWeekYear.mjs","../node_modules/date-fns/startOfWeekYear.mjs","../node_modules/date-fns/getWeek.mjs","../node_modules/date-fns/_lib/addLeadingZeros.mjs","../node_modules/date-fns/_lib/format/lightFormatters.mjs","../node_modules/date-fns/_lib/format/formatters.mjs","../node_modules/date-fns/_lib/format/longFormatters.mjs","../node_modules/date-fns/_lib/protectedTokens.mjs","../node_modules/date-fns/isDate.mjs","../node_modules/date-fns/isValid.mjs","../node_modules/date-fns/format.mjs","../node_modules/date-fns/addMonths.mjs","../node_modules/@paypal/react-paypal-js/dist/esm/react-paypal-js.js","components/PokerTable/PokerTable.js","components/Sidebar/Sidebar.js","../node_modules/@radix-ui/react-direction/dist/packages/react/direction/src/Direction.tsx","../node_modules/@aws-amplify/ui-react/dist/esm/components/ThemeProvider/ThemeProvider.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Grid/Grid.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Card/Card.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Image/Image.mjs","../node_modules/@aws-amplify/ui-react/dist/esm/primitives/Link/Link.mjs","components/Footer/Modal.js","components/Footer/Footer.js","components/Login/TextCarousel.js","../node_modules/react-icons/lib/iconsManifest.mjs","../node_modules/react-icons/lib/iconContext.mjs","../node_modules/react-icons/lib/iconBase.mjs","../node_modules/react-icons/fa/index.mjs","components/Login/Login.js","components/Login/Header.js","components/Login/SignInHeader.js","components/Login/SignInFooter.js","components/Login/Footer.js","components/CardModal/CardModal.js","components/CardSelector/CardSelector.js","components/CardMatrix/CardMatrix.js","components/PokerNotes/PokerNotes.js","components/PokerActions/PokerActions.js","components/StreetColumn/StreetColumn.js","components/MainContent/MainContent.js","../node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js","../node_modules/stylis/src/Enum.js","../node_modules/stylis/src/Utility.js","../node_modules/stylis/src/Tokenizer.js","../node_modules/stylis/src/Serializer.js","../node_modules/stylis/src/Prefixer.js","../node_modules/stylis/src/Middleware.js","../node_modules/stylis/src/Parser.js","../node_modules/@emotion/unitless/dist/emotion-unitless.esm.js","../node_modules/styled-components/src/constants.ts","../node_modules/styled-components/src/utils/empties.ts","../node_modules/styled-components/src/utils/checkDynamicCreation.ts","../node_modules/styled-components/src/utils/determineTheme.ts","../node_modules/styled-components/src/utils/domElements.ts","../node_modules/styled-components/src/utils/escape.ts","../node_modules/styled-components/src/utils/generateAlphabeticName.ts","../node_modules/styled-components/src/utils/hash.ts","../node_modules/styled-components/src/utils/generateComponentId.ts","../node_modules/styled-components/src/utils/getComponentName.ts","../node_modules/styled-components/src/utils/isTag.ts","../node_modules/styled-components/src/utils/hoist.ts","../node_modules/styled-components/src/utils/isFunction.ts","../node_modules/styled-components/src/utils/isStyledComponent.ts","../node_modules/styled-components/src/utils/joinStrings.ts","../node_modules/styled-components/src/utils/isPlainObject.ts","../node_modules/styled-components/src/utils/mixinDeep.ts","../node_modules/styled-components/src/utils/setToString.ts","../node_modules/styled-components/src/utils/error.ts","../node_modules/styled-components/src/sheet/GroupedTag.ts","../node_modules/styled-components/src/sheet/GroupIDAllocator.ts","../node_modules/styled-components/src/sheet/Rehydration.ts","../node_modules/styled-components/src/utils/nonce.ts","../node_modules/styled-components/src/sheet/dom.ts","../node_modules/styled-components/src/sheet/Tag.ts","../node_modules/styled-components/src/sheet/Sheet.ts","../node_modules/styled-components/src/utils/stylis.ts","../node_modules/styled-components/src/models/StyleSheetManager.tsx","../node_modules/styled-components/src/models/Keyframes.ts","../node_modules/styled-components/src/utils/hyphenateStyleName.ts","../node_modules/styled-components/src/utils/flatten.ts","../node_modules/styled-components/src/utils/addUnitIfNeeded.ts","../node_modules/styled-components/src/utils/isStatelessFunction.ts","../node_modules/styled-components/src/utils/isStaticRules.ts","../node_modules/styled-components/src/models/ComponentStyle.ts","../node_modules/styled-components/src/models/ThemeProvider.tsx","../node_modules/styled-components/src/models/StyledComponent.ts","../node_modules/styled-components/src/utils/generateDisplayName.ts","../node_modules/styled-components/src/utils/interleave.ts","../node_modules/styled-components/src/constructors/css.ts","../node_modules/styled-components/src/constructors/constructWithOptions.ts","../node_modules/styled-components/src/constructors/styled.tsx","../node_modules/styled-components/src/models/GlobalStyle.ts","../node_modules/styled-components/src/constructors/keyframes.ts","../node_modules/styled-components/src/models/ServerStyleSheet.tsx","../node_modules/styled-components/src/base.ts","../node_modules/react-loader-spinner/src/type.ts","../node_modules/react-loader-spinner/src/shared/svg-wrapper.tsx","../node_modules/react-loader-spinner/src/loader/infinity-spin.tsx","../node_modules/react-loader-spinner/src/loader/oval.tsx","../node_modules/react-loader-spinner/src/loader/rotating-lines.tsx","../node_modules/react-loader-spinner/src/loader/triangle.tsx","components/Topbar/Topbar.js","components/PokerTrainer/PokerTrainer.js","components/PokerStats/PokerStats.js","components/PokerRanges/PokerRanges.js","components/PokerDeals/PokerDeals.js","../node_modules/date-fns/parseISO.mjs","../node_modules/date-fns/isBefore.mjs","../node_modules/@gilbarbara/deep-equal/src/helpers.ts","../node_modules/@gilbarbara/deep-equal/src/index.ts","../node_modules/is-lite/src/helpers.ts","../node_modules/is-lite/src/index.ts","../node_modules/tree-changes/src/helpers.ts","../node_modules/tree-changes/src/index.ts","../node_modules/popper.js/src/utils/isBrowser.js","../node_modules/popper.js/src/utils/debounce.js","../node_modules/popper.js/src/utils/isFunction.js","../node_modules/popper.js/src/utils/getStyleComputedProperty.js","../node_modules/popper.js/src/utils/getParentNode.js","../node_modules/popper.js/src/utils/getScrollParent.js","../node_modules/popper.js/src/utils/getReferenceNode.js","../node_modules/popper.js/src/utils/isIE.js","../node_modules/popper.js/src/utils/getOffsetParent.js","../node_modules/popper.js/src/utils/getRoot.js","../node_modules/popper.js/src/utils/findCommonOffsetParent.js","../node_modules/popper.js/src/utils/isOffsetContainer.js","../node_modules/popper.js/src/utils/getScroll.js","../node_modules/popper.js/src/utils/getBordersSize.js","../node_modules/popper.js/src/utils/getWindowSizes.js","../node_modules/popper.js/src/utils/getClientRect.js","../node_modules/popper.js/src/utils/getBoundingClientRect.js","../node_modules/popper.js/src/utils/getOffsetRectRelativeToArbitraryNode.js","../node_modules/popper.js/src/utils/includeScroll.js","../node_modules/popper.js/src/utils/isFixed.js","../node_modules/popper.js/src/utils/getFixedPositionOffsetParent.js","../node_modules/popper.js/src/utils/getBoundaries.js","../node_modules/popper.js/src/utils/getViewportOffsetRectRelativeToArtbitraryNode.js","../node_modules/popper.js/src/utils/computeAutoPlacement.js","../node_modules/popper.js/src/utils/getReferenceOffsets.js","../node_modules/popper.js/src/utils/getOuterSizes.js","../node_modules/popper.js/src/utils/getOppositePlacement.js","../node_modules/popper.js/src/utils/getPopperOffsets.js","../node_modules/popper.js/src/utils/find.js","../node_modules/popper.js/src/utils/runModifiers.js","../node_modules/popper.js/src/utils/findIndex.js","../node_modules/popper.js/src/methods/update.js","../node_modules/popper.js/src/utils/isModifierEnabled.js","../node_modules/popper.js/src/utils/getSupportedPropertyName.js","../node_modules/popper.js/src/methods/destroy.js","../node_modules/popper.js/src/utils/getWindow.js","../node_modules/popper.js/src/utils/setupEventListeners.js","../node_modules/popper.js/src/methods/enableEventListeners.js","../node_modules/popper.js/src/methods/disableEventListeners.js","../node_modules/popper.js/src/utils/removeEventListeners.js","../node_modules/popper.js/src/utils/isNumeric.js","../node_modules/popper.js/src/utils/setStyles.js","../node_modules/popper.js/src/modifiers/computeStyle.js","../node_modules/popper.js/src/utils/isModifierRequired.js","../node_modules/popper.js/src/methods/placements.js","../node_modules/popper.js/src/utils/clockwise.js","../node_modules/popper.js/src/modifiers/flip.js","../node_modules/popper.js/src/modifiers/offset.js","../node_modules/popper.js/src/modifiers/index.js","../node_modules/popper.js/src/modifiers/shift.js","../node_modules/popper.js/src/modifiers/preventOverflow.js","../node_modules/popper.js/src/modifiers/keepTogether.js","../node_modules/popper.js/src/modifiers/arrow.js","../node_modules/popper.js/src/utils/getOppositeVariation.js","../node_modules/popper.js/src/modifiers/inner.js","../node_modules/popper.js/src/modifiers/hide.js","../node_modules/popper.js/src/utils/getRoundedOffsets.js","../node_modules/popper.js/src/modifiers/applyStyle.js","../node_modules/popper.js/src/utils/setAttributes.js","../node_modules/popper.js/src/methods/defaults.js","../node_modules/popper.js/src/index.js","../node_modules/react-floater/node_modules/is-lite/src/index.ts","../node_modules/react-floater/node_modules/@gilbarbara/deep-equal/src/helpers.ts","../node_modules/react-floater/node_modules/@gilbarbara/deep-equal/src/index.ts","../node_modules/react-floater/node_modules/tree-changes/src/helpers.ts","../node_modules/react-floater/es/index.js","../node_modules/react-floater/node_modules/tree-changes/src/index.ts","../node_modules/react-joyride/src/literals/index.ts","../node_modules/react-joyride/src/modules/dom.ts","../node_modules/react-joyride/src/modules/helpers.ts","../node_modules/react-joyride/src/defaults.ts","../node_modules/react-joyride/src/styles.ts","../node_modules/react-joyride/src/modules/step.ts","../node_modules/react-joyride/src/modules/store.ts","../node_modules/react-joyride/src/components/Spotlight.tsx","../node_modules/react-joyride/src/components/Overlay.tsx","../node_modules/react-joyride/src/components/Portal.tsx","../node_modules/react-joyride/src/modules/scope.ts","../node_modules/react-joyride/src/components/Beacon.tsx","../node_modules/react-joyride/src/components/Tooltip/CloseButton.tsx","../node_modules/react-joyride/src/components/Tooltip/Container.tsx","../node_modules/react-joyride/src/components/Tooltip/index.tsx","../node_modules/react-joyride/src/components/Step.tsx","../node_modules/react-joyride/src/components/index.tsx","components/About/Tutorial.js","App.js","aws-exports.js","index.js"],"sourcesContent":["/**\n * Locale character mapping rules.\n */\ninterface Locale {\n regexp: RegExp;\n map: Record<string, string>;\n}\n\n/**\n * Source: ftp://ftp.unicode.org/Public/UCD/latest/ucd/SpecialCasing.txt\n */\nconst SUPPORTED_LOCALE: Record<string, Locale> = {\n tr: {\n regexp: /\\u0130|\\u0049|\\u0049\\u0307/g,\n map: {\n Ä°: \"\\u0069\",\n I: \"\\u0131\",\n İ: \"\\u0069\",\n },\n },\n az: {\n regexp: /\\u0130/g,\n map: {\n Ä°: \"\\u0069\",\n I: \"\\u0131\",\n İ: \"\\u0069\",\n },\n },\n lt: {\n regexp: /\\u0049|\\u004A|\\u012E|\\u00CC|\\u00CD|\\u0128/g,\n map: {\n I: \"\\u0069\\u0307\",\n J: \"\\u006A\\u0307\",\n Ä®: \"\\u012F\\u0307\",\n ÃŒ: \"\\u0069\\u0307\\u0300\",\n Ã: \"\\u0069\\u0307\\u0301\",\n Ĩ: \"\\u0069\\u0307\\u0303\",\n },\n },\n};\n\n/**\n * Localized lower case.\n */\nexport function localeLowerCase(str: string, locale: string) {\n const lang = SUPPORTED_LOCALE[locale.toLowerCase()];\n if (lang) return lowerCase(str.replace(lang.regexp, (m) => lang.map[m]));\n return lowerCase(str);\n}\n\n/**\n * Lower case as a function.\n */\nexport function lowerCase(str: string) {\n return str.toLowerCase();\n}\n","import { lowerCase } from \"lower-case\";\n\nexport interface Options {\n splitRegexp?: RegExp | RegExp[];\n stripRegexp?: RegExp | RegExp[];\n delimiter?: string;\n transform?: (part: string, index: number, parts: string[]) => string;\n}\n\n// Support camel case (\"camelCase\" -> \"camel Case\" and \"CAMELCase\" -> \"CAMEL Case\").\nconst DEFAULT_SPLIT_REGEXP = [/([a-z0-9])([A-Z])/g, /([A-Z])([A-Z][a-z])/g];\n\n// Remove all non-word characters.\nconst DEFAULT_STRIP_REGEXP = /[^A-Z0-9]+/gi;\n\n/**\n * Normalize the string into something other libraries can manipulate easier.\n */\nexport function noCase(input: string, options: Options = {}) {\n const {\n splitRegexp = DEFAULT_SPLIT_REGEXP,\n stripRegexp = DEFAULT_STRIP_REGEXP,\n transform = lowerCase,\n delimiter = \" \",\n } = options;\n\n let result = replace(\n replace(input, splitRegexp, \"$1\\0$2\"),\n stripRegexp,\n \"\\0\"\n );\n let start = 0;\n let end = result.length;\n\n // Trim the delimiter from around the output string.\n while (result.charAt(start) === \"\\0\") start++;\n while (result.charAt(end - 1) === \"\\0\") end--;\n\n // Transform each token independently.\n return result.slice(start, end).split(\"\\0\").map(transform).join(delimiter);\n}\n\n/**\n * Replace `re` in the input string with the replacement value.\n */\nfunction replace(input: string, re: RegExp | RegExp[], value: string) {\n if (re instanceof RegExp) return input.replace(re, value);\n return re.reduce((input, re) => input.replace(re, value), input);\n}\n","import { noCase, Options } from \"no-case\";\n\nexport { Options };\n\nexport function pascalCaseTransform(input: string, index: number) {\n const firstChar = input.charAt(0);\n const lowerChars = input.substr(1).toLowerCase();\n if (index > 0 && firstChar >= \"0\" && firstChar <= \"9\") {\n return `_${firstChar}${lowerChars}`;\n }\n return `${firstChar.toUpperCase()}${lowerChars}`;\n}\n\nexport function pascalCaseTransformMerge(input: string) {\n return input.charAt(0).toUpperCase() + input.slice(1).toLowerCase();\n}\n\nexport function pascalCase(input: string, options: Options = {}) {\n return noCase(input, {\n delimiter: \"\",\n transform: pascalCaseTransform,\n ...options,\n });\n}\n","import {\n pascalCase,\n pascalCaseTransform,\n pascalCaseTransformMerge,\n Options,\n} from \"pascal-case\";\n\nexport { Options };\n\nexport function camelCaseTransform(input: string, index: number) {\n if (index === 0) return input.toLowerCase();\n return pascalCaseTransform(input, index);\n}\n\nexport function camelCaseTransformMerge(input: string, index: number) {\n if (index === 0) return input.toLowerCase();\n return pascalCaseTransformMerge(input);\n}\n\nexport function camelCase(input: string, options: Options = {}) {\n return pascalCase(input, {\n transform: camelCaseTransform,\n ...options,\n });\n}\n","/**\n * Upper case the first character of an input string.\n */\nexport function upperCaseFirst(input: string) {\n return input.charAt(0).toUpperCase() + input.substr(1);\n}\n","import { noCase, Options } from \"no-case\";\nimport { upperCaseFirst } from \"upper-case-first\";\n\nexport { Options };\n\nexport function capitalCaseTransform(input: string) {\n return upperCaseFirst(input.toLowerCase());\n}\n\nexport function capitalCase(input: string, options: Options = {}) {\n return noCase(input, {\n delimiter: \" \",\n transform: capitalCaseTransform,\n ...options,\n });\n}\n","/**\n * Locale character mapping rules.\n */\ninterface Locale {\n regexp: RegExp;\n map: Record<string, string>;\n}\n\n/**\n * Source: ftp://ftp.unicode.org/Public/UCD/latest/ucd/SpecialCasing.txt\n */\nconst SUPPORTED_LOCALE: Record<string, Locale> = {\n tr: {\n regexp: /[\\u0069]/g,\n map: {\n i: \"\\u0130\",\n },\n },\n az: {\n regexp: /[\\u0069]/g,\n map: {\n i: \"\\u0130\",\n },\n },\n lt: {\n regexp: /[\\u0069\\u006A\\u012F]\\u0307|\\u0069\\u0307[\\u0300\\u0301\\u0303]/g,\n map: {\n i̇: \"\\u0049\",\n j̇: \"\\u004A\",\n į̇: \"\\u012E\",\n i̇̀: \"\\u00CC\",\n i̇Ì: \"\\u00CD\",\n i̇̃: \"\\u0128\",\n },\n },\n};\n\n/**\n * Localized upper case.\n */\nexport function localeUpperCase(str: string, locale: string) {\n const lang = SUPPORTED_LOCALE[locale.toLowerCase()];\n if (lang) return upperCase(str.replace(lang.regexp, (m) => lang.map[m]));\n return upperCase(str);\n}\n\n/**\n * Upper case as a function.\n */\nexport function upperCase(str: string) {\n return str.toUpperCase();\n}\n","import { noCase, Options } from \"no-case\";\nimport { upperCase } from \"upper-case\";\n\nexport { Options };\n\nexport function constantCase(input: string, options: Options = {}) {\n return noCase(input, {\n delimiter: \"_\",\n transform: upperCase,\n ...options,\n });\n}\n","import { noCase, Options } from \"no-case\";\n\nexport { Options };\n\nexport function dotCase(input: string, options: Options = {}) {\n return noCase(input, {\n delimiter: \".\",\n ...options,\n });\n}\n","import { capitalCase, Options } from \"capital-case\";\n\nexport { Options };\n\nexport function headerCase(input: string, options: Options = {}) {\n return capitalCase(input, {\n delimiter: \"-\",\n ...options,\n });\n}\n","import { dotCase, Options } from \"dot-case\";\n\nexport { Options };\n\nexport function paramCase(input: string, options: Options = {}) {\n return dotCase(input, {\n delimiter: \"-\",\n ...options,\n });\n}\n","import { dotCase, Options } from \"dot-case\";\n\nexport { Options };\n\nexport function pathCase(input: string, options: Options = {}) {\n return dotCase(input, {\n delimiter: \"/\",\n ...options,\n });\n}\n","import { noCase, Options } from \"no-case\";\nimport { upperCaseFirst } from \"upper-case-first\";\n\nexport { Options };\n\nexport function sentenceCaseTransform(input: string, index: number) {\n const result = input.toLowerCase();\n if (index === 0) return upperCaseFirst(result);\n return result;\n}\n\nexport function sentenceCase(input: string, options: Options = {}) {\n return noCase(input, {\n delimiter: \" \",\n transform: sentenceCaseTransform,\n ...options,\n });\n}\n","import { dotCase, Options } from \"dot-case\";\n\nexport { Options };\n\nexport function snakeCase(input: string, options: Options = {}) {\n return dotCase(input, {\n delimiter: \"_\",\n ...options,\n });\n}\n","'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n\treturn Array.isArray(val) ? [] : {}\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n\treturn (options.clone !== false && options.isMergeableObject(value))\n\t\t? deepmerge(emptyTarget(value), value, options)\n\t\t: value\n}\n\nfunction defaultArrayMerge(target, source, options) {\n\treturn target.concat(source).map(function(element) {\n\t\treturn cloneUnlessOtherwiseSpecified(element, options)\n\t})\n}\n\nfunction getMergeFunction(key, options) {\n\tif (!options.customMerge) {\n\t\treturn deepmerge\n\t}\n\tvar customMerge = options.customMerge(key);\n\treturn typeof customMerge === 'function' ? customMerge : deepmerge\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n\treturn Object.getOwnPropertySymbols\n\t\t? Object.getOwnPropertySymbols(target).filter(function(symbol) {\n\t\t\treturn Object.propertyIsEnumerable.call(target, symbol)\n\t\t})\n\t\t: []\n}\n\nfunction getKeys(target) {\n\treturn Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))\n}\n\nfunction propertyIsOnObject(object, property) {\n\ttry {\n\t\treturn property in object\n\t} catch(_) {\n\t\treturn false\n\t}\n}\n\n// Protects from prototype poisoning and unexpected merging up the prototype chain.\nfunction propertyIsUnsafe(target, key) {\n\treturn propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n\t\t&& !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n\t\t\t&& Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n\tvar destination = {};\n\tif (options.isMergeableObject(target)) {\n\t\tgetKeys(target).forEach(function(key) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n\t\t});\n\t}\n\tgetKeys(source).forEach(function(key) {\n\t\tif (propertyIsUnsafe(target, key)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n\t\t\tdestination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n\t\t} else {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n\t\t}\n\t});\n\treturn destination\n}\n\nfunction deepmerge(target, source, options) {\n\toptions = options || {};\n\toptions.arrayMerge = options.arrayMerge || defaultArrayMerge;\n\toptions.isMergeableObject = options.isMergeableObject || isMergeableObject;\n\t// cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n\t// implementations can use it. The caller may not replace it.\n\toptions.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n\n\tvar sourceIsArray = Array.isArray(source);\n\tvar targetIsArray = Array.isArray(target);\n\tvar sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n\tif (!sourceAndTargetTypesMatch) {\n\t\treturn cloneUnlessOtherwiseSpecified(source, options)\n\t} else if (sourceIsArray) {\n\t\treturn options.arrayMerge(target, source, options)\n\t} else {\n\t\treturn mergeObject(target, source, options)\n\t}\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n\tif (!Array.isArray(array)) {\n\t\tthrow new Error('first argument should be an array')\n\t}\n\n\treturn array.reduce(function(prev, next) {\n\t\treturn deepmerge(prev, next, options)\n\t}, {})\n};\n\nvar deepmerge_1 = deepmerge;\n\nmodule.exports = deepmerge_1;\n","'use strict';\n\n/******************************************************************************\n * Created 2008-08-19.\n *\n * Dijkstra path-finding functions. Adapted from the Dijkstar Python project.\n *\n * Copyright (C) 2008\n * Wyatt Baldwin <self@wyattbaldwin.com>\n * All rights reserved\n *\n * Licensed under the MIT license.\n *\n * http://www.opensource.org/licenses/mit-license.php\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n *****************************************************************************/\nvar dijkstra = {\n single_source_shortest_paths: function(graph, s, d) {\n // Predecessor map for each node that has been encountered.\n // node ID => predecessor node ID\n var predecessors = {};\n\n // Costs of shortest paths from s to all nodes encountered.\n // node ID => cost\n var costs = {};\n costs[s] = 0;\n\n // Costs of shortest paths from s to all nodes encountered; differs from\n // `costs` in that it provides easy access to the node that currently has\n // the known shortest path from s.\n // XXX: Do we actually need both `costs` and `open`?\n var open = dijkstra.PriorityQueue.make();\n open.push(s, 0);\n\n var closest,\n u, v,\n cost_of_s_to_u,\n adjacent_nodes,\n cost_of_e,\n cost_of_s_to_u_plus_cost_of_e,\n cost_of_s_to_v,\n first_visit;\n while (!open.empty()) {\n // In the nodes remaining in graph that have a known cost from s,\n // find the node, u, that currently has the shortest path from s.\n closest = open.pop();\n u = closest.value;\n cost_of_s_to_u = closest.cost;\n\n // Get nodes adjacent to u...\n adjacent_nodes = graph[u] || {};\n\n // ...and explore the edges that connect u to those nodes, updating\n // the cost of the shortest paths to any or all of those nodes as\n // necessary. v is the node across the current edge from u.\n for (v in adjacent_nodes) {\n if (adjacent_nodes.hasOwnProperty(v)) {\n // Get the cost of the edge running from u to v.\n cost_of_e = adjacent_nodes[v];\n\n // Cost of s to u plus the cost of u to v across e--this is *a*\n // cost from s to v that may or may not be less than the current\n // known cost to v.\n cost_of_s_to_u_plus_cost_of_e = cost_of_s_to_u + cost_of_e;\n\n // If we haven't visited v yet OR if the current known cost from s to\n // v is greater than the new cost we just found (cost of s to u plus\n // cost of u to v across e), update v's cost in the cost list and\n // update v's predecessor in the predecessor list (it's now u).\n cost_of_s_to_v = costs[v];\n first_visit = (typeof costs[v] === 'undefined');\n if (first_visit || cost_of_s_to_v > cost_of_s_to_u_plus_cost_of_e) {\n costs[v] = cost_of_s_to_u_plus_cost_of_e;\n open.push(v, cost_of_s_to_u_plus_cost_of_e);\n predecessors[v] = u;\n }\n }\n }\n }\n\n if (typeof d !== 'undefined' && typeof costs[d] === 'undefined') {\n var msg = ['Could not find a path from ', s, ' to ', d, '.'].join('');\n throw new Error(msg);\n }\n\n return predecessors;\n },\n\n extract_shortest_path_from_predecessor_list: function(predecessors, d) {\n var nodes = [];\n var u = d;\n var predecessor;\n while (u) {\n nodes.push(u);\n predecessor = predecessors[u];\n u = predecessors[u];\n }\n nodes.reverse();\n return nodes;\n },\n\n find_path: function(graph, s, d) {\n var predecessors = dijkstra.single_source_shortest_paths(graph, s, d);\n return dijkstra.extract_shortest_path_from_predecessor_list(\n predecessors, d);\n },\n\n /**\n * A very naive priority queue implementation.\n */\n PriorityQueue: {\n make: function (opts) {\n var T = dijkstra.PriorityQueue,\n t = {},\n key;\n opts = opts || {};\n for (key in T) {\n if (T.hasOwnProperty(key)) {\n t[key] = T[key];\n }\n }\n t.queue = [];\n t.sorter = opts.sorter || T.default_sorter;\n return t;\n },\n\n default_sorter: function (a, b) {\n return a.cost - b.cost;\n },\n\n /**\n * Add a new item to the queue and ensure the highest priority element\n * is at the front of the queue.\n */\n push: function (value, cost) {\n var item = {value: value, cost: cost};\n this.queue.push(item);\n this.queue.sort(this.sorter);\n },\n\n /**\n * Return the highest priority element in the queue.\n */\n pop: function () {\n return this.queue.shift();\n },\n\n empty: function () {\n return this.queue.length === 0;\n }\n }\n};\n\n\n// node.js module exports\nif (typeof module !== 'undefined') {\n module.exports = dijkstra;\n}\n","'use strict'\n\nmodule.exports = function encodeUtf8 (input) {\n var result = []\n var size = input.length\n\n for (var index = 0; index < size; index++) {\n var point = input.charCodeAt(index)\n\n if (point >= 0xD800 && point <= 0xDBFF && size > index + 1) {\n var second = input.charCodeAt(index + 1)\n\n if (second >= 0xDC00 && second <= 0xDFFF) {\n // https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n point = (point - 0xD800) * 0x400 + second - 0xDC00 + 0x10000\n index += 1\n }\n }\n\n // US-ASCII\n if (point < 0x80) {\n result.push(point)\n continue\n }\n\n // 2-byte UTF-8\n if (point < 0x800) {\n result.push((point >> 6) | 192)\n result.push((point & 63) | 128)\n continue\n }\n\n // 3-byte UTF-8\n if (point < 0xD800 || (point >= 0xE000 && point < 0x10000)) {\n result.push((point >> 12) | 224)\n result.push(((point >> 6) & 63) | 128)\n result.push((point & 63) | 128)\n continue\n }\n\n // 4-byte UTF-8\n if (point >= 0x10000 && point <= 0x10FFFF) {\n result.push((point >> 18) | 240)\n result.push(((point >> 12) & 63) | 128)\n result.push(((point >> 6) & 63) | 128)\n result.push((point & 63) | 128)\n continue\n }\n\n // Invalid character\n result.push(0xEF, 0xBF, 0xBD)\n }\n\n return new Uint8Array(result).buffer\n}\n","var QueryHandler = require('./QueryHandler');\nvar each = require('./Util').each;\n\n/**\n * Represents a single media query, manages it's state and registered handlers for this query\n *\n * @constructor\n * @param {string} query the media query string\n * @param {boolean} [isUnconditional=false] whether the media query should run regardless of whether the conditions are met. Primarily for helping older browsers deal with mobile-first design\n */\nfunction MediaQuery(query, isUnconditional) {\n this.query = query;\n this.isUnconditional = isUnconditional;\n this.handlers = [];\n this.mql = window.matchMedia(query);\n\n var self = this;\n this.listener = function(mql) {\n // Chrome passes an MediaQueryListEvent object, while other browsers pass MediaQueryList directly\n self.mql = mql.currentTarget || mql;\n self.assess();\n };\n this.mql.addListener(this.listener);\n}\n\nMediaQuery.prototype = {\n\n constuctor : MediaQuery,\n\n /**\n * add a handler for this query, triggering if already active\n *\n * @param {object} handler\n * @param {function} handler.match callback for when query is activated\n * @param {function} [handler.unmatch] callback for when query is deactivated\n * @param {function} [handler.setup] callback for immediate execution when a query handler is registered\n * @param {boolean} [handler.deferSetup=false] should the setup callback be deferred until the first time the handler is matched?\n */\n addHandler : function(handler) {\n var qh = new QueryHandler(handler);\n this.handlers.push(qh);\n\n this.matches() && qh.on();\n },\n\n /**\n * removes the given handler from the collection, and calls it's destroy methods\n *\n * @param {object || function} handler the handler to remove\n */\n removeHandler : function(handler) {\n var handlers = this.handlers;\n each(handlers, function(h, i) {\n if(h.equals(handler)) {\n h.destroy();\n return !handlers.splice(i,1); //remove from array and exit each early\n }\n });\n },\n\n /**\n * Determine whether the media query should be considered a match\n *\n * @return {Boolean} true if media query can be considered a match, false otherwise\n */\n matches : function() {\n return this.mql.matches || this.isUnconditional;\n },\n\n /**\n * Clears all handlers and unbinds events\n */\n clear : function() {\n each(this.handlers, function(handler) {\n handler.destroy();\n });\n this.mql.removeListener(this.listener);\n this.handlers.length = 0; //clear array\n },\n\n /*\n * Assesses the query, turning on all handlers if it matches, turning them off if it doesn't match\n */\n assess : function() {\n var action = this.matches() ? 'on' : 'off';\n\n each(this.handlers, function(handler) {\n handler[action]();\n });\n }\n};\n\nmodule.exports = MediaQuery;\n","var MediaQuery = require('./MediaQuery');\nvar Util = require('./Util');\nvar each = Util.each;\nvar isFunction = Util.isFunction;\nvar isArray = Util.isArray;\n\n/**\n * Allows for registration of query handlers.\n * Manages the query handler's state and is responsible for wiring up browser events\n *\n * @constructor\n */\nfunction MediaQueryDispatch () {\n if(!window.matchMedia) {\n throw new Error('matchMedia not present, legacy browsers require a polyfill');\n }\n\n this.queries = {};\n this.browserIsIncapable = !window.matchMedia('only all').matches;\n}\n\nMediaQueryDispatch.prototype = {\n\n constructor : MediaQueryDispatch,\n\n /**\n * Registers a handler for the given media query\n *\n * @param {string} q the media query\n * @param {object || Array || Function} options either a single query handler object, a function, or an array of query handlers\n * @param {function} options.match fired when query matched\n * @param {function} [options.unmatch] fired when a query is no longer matched\n * @param {function} [options.setup] fired when handler first triggered\n * @param {boolean} [options.deferSetup=false] whether setup should be run immediately or deferred until query is first matched\n * @param {boolean} [shouldDegrade=false] whether this particular media query should always run on incapable browsers\n */\n register : function(q, options, shouldDegrade) {\n var queries = this.queries,\n isUnconditional = shouldDegrade && this.browserIsIncapable;\n\n if(!queries[q]) {\n queries[q] = new MediaQuery(q, isUnconditional);\n }\n\n //normalise to object in an array\n if(isFunction(options)) {\n options = { match : options };\n }\n if(!isArray(options)) {\n options = [options];\n }\n each(options, function(handler) {\n if (isFunction(handler)) {\n handler = { match : handler };\n }\n queries[q].addHandler(handler);\n });\n\n return this;\n },\n\n /**\n * unregisters a query and all it's handlers, or a specific handler for a query\n *\n * @param {string} q the media query to target\n * @param {object || function} [handler] specific handler to unregister\n */\n unregister : function(q, handler) {\n var query = this.queries[q];\n\n if(query) {\n if(handler) {\n query.removeHandler(handler);\n }\n else {\n query.clear();\n delete this.queries[q];\n }\n }\n\n return this;\n }\n};\n\nmodule.exports = MediaQueryDispatch;\n","/**\n * Delegate to handle a media query being matched and unmatched.\n *\n * @param {object} options\n * @param {function} options.match callback for when the media query is matched\n * @param {function} [options.unmatch] callback for when the media query is unmatched\n * @param {function} [options.setup] one-time callback triggered the first time a query is matched\n * @param {boolean} [options.deferSetup=false] should the setup callback be run immediately, rather than first time query is matched?\n * @constructor\n */\nfunction QueryHandler(options) {\n this.options = options;\n !options.deferSetup && this.setup();\n}\n\nQueryHandler.prototype = {\n\n constructor : QueryHandler,\n\n /**\n * coordinates setup of the handler\n *\n * @function\n */\n setup : function() {\n if(this.options.setup) {\n this.options.setup();\n }\n this.initialised = true;\n },\n\n /**\n * coordinates setup and triggering of the handler\n *\n * @function\n */\n on : function() {\n !this.initialised && this.setup();\n this.options.match && this.options.match();\n },\n\n /**\n * coordinates the unmatch event for the handler\n *\n * @function\n */\n off : function() {\n this.options.unmatch && this.options.unmatch();\n },\n\n /**\n * called when a handler is to be destroyed.\n * delegates to the destroy or unmatch callbacks, depending on availability.\n *\n * @function\n */\n destroy : function() {\n this.options.destroy ? this.options.destroy() : this.off();\n },\n\n /**\n * determines equality by reference.\n * if object is supplied compare options, if function, compare match callback\n *\n * @function\n * @param {object || function} [target] the target for comparison\n */\n equals : function(target) {\n return this.options === target || this.options.match === target;\n }\n\n};\n\nmodule.exports = QueryHandler;\n","/**\n * Helper function for iterating over a collection\n *\n * @param collection\n * @param fn\n */\nfunction each(collection, fn) {\n var i = 0,\n length = collection.length,\n cont;\n\n for(i; i < length; i++) {\n cont = fn(collection[i], i);\n if(cont === false) {\n break; //allow early exit\n }\n }\n}\n\n/**\n * Helper function for determining whether target object is an array\n *\n * @param target the object under test\n * @return {Boolean} true if array, false otherwise\n */\nfunction isArray(target) {\n return Object.prototype.toString.apply(target) === '[object Array]';\n}\n\n/**\n * Helper function for determining whether target object is a function\n *\n * @param target the object under test\n * @return {Boolean} true if function, false otherwise\n */\nfunction isFunction(target) {\n return typeof target === 'function';\n}\n\nmodule.exports = {\n isFunction : isFunction,\n isArray : isArray,\n each : each\n};\n","var MediaQueryDispatch = require('./MediaQueryDispatch');\nmodule.exports = new MediaQueryDispatch();\n","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n","var camel2hyphen = require('string-convert/camel2hyphen');\n\nvar isDimension = function (feature) {\n var re = /[height|width]$/;\n return re.test(feature);\n};\n\nvar obj2mq = function (obj) {\n var mq = '';\n var features = Object.keys(obj);\n features.forEach(function (feature, index) {\n var value = obj[feature];\n feature = camel2hyphen(feature);\n // Add px to dimension features\n if (isDimension(feature) && typeof value === 'number') {\n value = value + 'px';\n }\n if (value === true) {\n mq += feature;\n } else if (value === false) {\n mq += 'not ' + feature;\n } else {\n mq += '(' + feature + ': ' + value + ')';\n }\n if (index < features.length-1) {\n mq += ' and '\n }\n });\n return mq;\n};\n\nvar json2mq = function (query) {\n var mq = '';\n if (typeof query === 'string') {\n return query;\n }\n // Handling array of media queries\n if (query instanceof Array) {\n query.forEach(function (q, index) {\n mq += obj2mq(q);\n if (index < query.length-1) {\n mq += ', '\n }\n });\n return mq;\n }\n // Handling single media query\n return obj2mq(query);\n};\n\nmodule.exports = json2mq;","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n","var MapCache = require('./_MapCache'),\n setCacheAdd = require('./_setCacheAdd'),\n setCacheHas = require('./_setCacheHas');\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nmodule.exports = SetCache;\n","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_stackSet');\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nmodule.exports = apply;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = arrayFilter;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = arrayLikeKeys;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nmodule.exports = arrayMap;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nmodule.exports = arrayPush;\n","/**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\nfunction arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n}\n\nmodule.exports = arrayReduce;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nmodule.exports = arraySome;\n","/** Used to match words composed of alphanumeric characters. */\nvar reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n/**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction asciiWords(string) {\n return string.match(reAsciiWord) || [];\n}\n\nmodule.exports = asciiWords;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignMergeValue;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var defineProperty = require('./_defineProperty');\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nmodule.exports = baseAssignValue;\n","var isObject = require('./isObject');\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nmodule.exports = baseCreate;\n","var createBaseFor = require('./_createBaseFor');\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nmodule.exports = baseFor;\n","var castPath = require('./_castPath'),\n toKey = require('./_toKey');\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\nmodule.exports = baseGet;\n","var arrayPush = require('./_arrayPush'),\n isArray = require('./isArray');\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","/**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHasIn(object, key) {\n return object != null && key in Object(object);\n}\n\nmodule.exports = baseHasIn;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","var baseIsEqualDeep = require('./_baseIsEqualDeep'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n","var Stack = require('./_Stack'),\n equalArrays = require('./_equalArrays'),\n equalByTag = require('./_equalByTag'),\n equalObjects = require('./_equalObjects'),\n getTag = require('./_getTag'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isTypedArray = require('./isTypedArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nmodule.exports = baseIsEqualDeep;\n","var Stack = require('./_Stack'),\n baseIsEqual = require('./_baseIsEqual');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\nfunction baseIsMatch(object, source, matchData, customizer) {\n var index = matchData.length,\n length = index,\n noCustomizer = !customizer;\n\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (index--) {\n var data = matchData[index];\n if ((noCustomizer && data[2])\n ? data[1] !== object[data[0]]\n : !(data[0] in object)\n ) {\n return false;\n }\n }\n while (++index < length) {\n data = matchData[index];\n var key = data[0],\n objValue = object[key],\n srcValue = data[1];\n\n if (noCustomizer && data[2]) {\n if (objValue === undefined && !(key in object)) {\n return false;\n }\n } else {\n var stack = new Stack;\n if (customizer) {\n var result = customizer(objValue, srcValue, key, object, source, stack);\n }\n if (!(result === undefined\n ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n : result\n )) {\n return false;\n }\n }\n }\n return true;\n}\n\nmodule.exports = baseIsMatch;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n","var baseMatches = require('./_baseMatches'),\n baseMatchesProperty = require('./_baseMatchesProperty'),\n identity = require('./identity'),\n isArray = require('./isArray'),\n property = require('./property');\n\n/**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\nfunction baseIteratee(value) {\n // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n if (typeof value == 'function') {\n return value;\n }\n if (value == null) {\n return identity;\n }\n if (typeof value == 'object') {\n return isArray(value)\n ? baseMatchesProperty(value[0], value[1])\n : baseMatches(value);\n }\n return property(value);\n}\n\nmodule.exports = baseIteratee;\n","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n","var isObject = require('./isObject'),\n isPrototype = require('./_isPrototype'),\n nativeKeysIn = require('./_nativeKeysIn');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeysIn;\n","var baseIsMatch = require('./_baseIsMatch'),\n getMatchData = require('./_getMatchData'),\n matchesStrictComparable = require('./_matchesStrictComparable');\n\n/**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatches(source) {\n var matchData = getMatchData(source);\n if (matchData.length == 1 && matchData[0][2]) {\n return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n }\n return function(object) {\n return object === source || baseIsMatch(object, source, matchData);\n };\n}\n\nmodule.exports = baseMatches;\n","var baseIsEqual = require('./_baseIsEqual'),\n get = require('./get'),\n hasIn = require('./hasIn'),\n isKey = require('./_isKey'),\n isStrictComparable = require('./_isStrictComparable'),\n matchesStrictComparable = require('./_matchesStrictComparable'),\n toKey = require('./_toKey');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n}\n\nmodule.exports = baseMatchesProperty;\n","var Stack = require('./_Stack'),\n assignMergeValue = require('./_assignMergeValue'),\n baseFor = require('./_baseFor'),\n baseMergeDeep = require('./_baseMergeDeep'),\n isObject = require('./isObject'),\n keysIn = require('./keysIn'),\n safeGet = require('./_safeGet');\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\nmodule.exports = baseMerge;\n","var assignMergeValue = require('./_assignMergeValue'),\n cloneBuffer = require('./_cloneBuffer'),\n cloneTypedArray = require('./_cloneTypedArray'),\n copyArray = require('./_copyArray'),\n initCloneObject = require('./_initCloneObject'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isArrayLikeObject = require('./isArrayLikeObject'),\n isBuffer = require('./isBuffer'),\n isFunction = require('./isFunction'),\n isObject = require('./isObject'),\n isPlainObject = require('./isPlainObject'),\n isTypedArray = require('./isTypedArray'),\n safeGet = require('./_safeGet'),\n toPlainObject = require('./toPlainObject');\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\nmodule.exports = baseMergeDeep;\n","var baseGet = require('./_baseGet'),\n baseSet = require('./_baseSet'),\n castPath = require('./_castPath');\n\n/**\n * The base implementation of `_.pickBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @param {Function} predicate The function invoked per property.\n * @returns {Object} Returns the new object.\n */\nfunction basePickBy(object, paths, predicate) {\n var index = -1,\n length = paths.length,\n result = {};\n\n while (++index < length) {\n var path = paths[index],\n value = baseGet(object, path);\n\n if (predicate(value, path)) {\n baseSet(result, castPath(path, object), value);\n }\n }\n return result;\n}\n\nmodule.exports = basePickBy;\n","/**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n}\n\nmodule.exports = baseProperty;\n","var baseGet = require('./_baseGet');\n\n/**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n}\n\nmodule.exports = basePropertyDeep;\n","/**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n}\n\nmodule.exports = basePropertyOf;\n","var identity = require('./identity'),\n overRest = require('./_overRest'),\n setToString = require('./_setToString');\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\nmodule.exports = baseRest;\n","var assignValue = require('./_assignValue'),\n castPath = require('./_castPath'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject'),\n toKey = require('./_toKey');\n\n/**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\nfunction baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n}\n\nmodule.exports = baseSet;\n","var constant = require('./constant'),\n defineProperty = require('./_defineProperty'),\n identity = require('./identity');\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nmodule.exports = baseSetToString;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n","var Symbol = require('./_Symbol'),\n arrayMap = require('./_arrayMap'),\n isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = baseToString;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nmodule.exports = baseUnary;\n","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nmodule.exports = cacheHas;\n","var isArray = require('./isArray'),\n isKey = require('./_isKey'),\n stringToPath = require('./_stringToPath'),\n toString = require('./toString');\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nmodule.exports = castPath;\n","var Uint8Array = require('./_Uint8Array');\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nmodule.exports = cloneArrayBuffer;\n","var root = require('./_root');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nmodule.exports = cloneBuffer;\n","var cloneArrayBuffer = require('./_cloneArrayBuffer');\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nmodule.exports = cloneTypedArray;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nmodule.exports = copyArray;\n","var assignValue = require('./_assignValue'),\n baseAssignValue = require('./_baseAssignValue');\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nmodule.exports = copyObject;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var baseRest = require('./_baseRest'),\n isIterateeCall = require('./_isIterateeCall');\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nmodule.exports = createAssigner;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nmodule.exports = createBaseFor;\n","var arrayReduce = require('./_arrayReduce'),\n deburr = require('./deburr'),\n words = require('./words');\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\";\n\n/** Used to match apostrophes. */\nvar reApos = RegExp(rsApos, 'g');\n\n/**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\nfunction createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n}\n\nmodule.exports = createCompounder;\n","var basePropertyOf = require('./_basePropertyOf');\n\n/** Used to map Latin Unicode letters to basic Latin letters. */\nvar deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n};\n\n/**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\nvar deburrLetter = basePropertyOf(deburredLetters);\n\nmodule.exports = deburrLetter;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_cacheHas');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalArrays;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\n","var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalObjects;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbolsIn = require('./_getSymbolsIn'),\n keysIn = require('./keysIn');\n\n/**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n}\n\nmodule.exports = getAllKeysIn;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var isStrictComparable = require('./_isStrictComparable'),\n keys = require('./keys');\n\n/**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\nfunction getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n}\n\nmodule.exports = getMatchData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","var arrayPush = require('./_arrayPush'),\n getPrototype = require('./_getPrototype'),\n getSymbols = require('./_getSymbols'),\n stubArray = require('./stubArray');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n};\n\nmodule.exports = getSymbolsIn;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var castPath = require('./_castPath'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isIndex = require('./_isIndex'),\n isLength = require('./isLength'),\n toKey = require('./_toKey');\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n}\n\nmodule.exports = hasPath;\n","/** Used to detect strings that need a more robust regexp to match words. */\nvar reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n/**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\nfunction hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n}\n\nmodule.exports = hasUnicodeWord;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nmodule.exports = initCloneObject;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\n","var isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nmodule.exports = isKey;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","var isObject = require('./isObject');\n\n/**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\nfunction isStrictComparable(value) {\n return value === value && !isObject(value);\n}\n\nmodule.exports = isStrictComparable;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nmodule.exports = mapToArray;\n","/**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n}\n\nmodule.exports = matchesStrictComparable;\n","var memoize = require('./memoize');\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nmodule.exports = memoizeCapped;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = nativeKeysIn;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var apply = require('./_apply');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nmodule.exports = overRest;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nmodule.exports = safeGet;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nmodule.exports = setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nmodule.exports = setToArray;\n","var baseSetToString = require('./_baseSetToString'),\n shortOut = require('./_shortOut');\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nmodule.exports = setToString;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nmodule.exports = shortOut;\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","var memoizeCapped = require('./_memoizeCapped');\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nmodule.exports = stringToPath;\n","var isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = toKey;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\",\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n/** Used to compose unicode regexes. */\nvar rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;\n\n/** Used to match complex or compound words. */\nvar reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n].join('|'), 'g');\n\n/**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n}\n\nmodule.exports = unicodeWords;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nmodule.exports = constant;\n","var deburrLetter = require('./_deburrLetter'),\n toString = require('./toString');\n\n/** Used to match Latin Unicode letters (excluding mathematical operators). */\nvar reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n/** Used to compose unicode character classes. */\nvar rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;\n\n/** Used to compose unicode capture groups. */\nvar rsCombo = '[' + rsComboRange + ']';\n\n/**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\nvar reComboMark = RegExp(rsCombo, 'g');\n\n/**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\nfunction deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n}\n\nmodule.exports = deburr;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","var baseGet = require('./_baseGet');\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n","var baseHasIn = require('./_baseHasIn'),\n hasPath = require('./_hasPath');\n\n/**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\nfunction hasIn(object, path) {\n return object != null && hasPath(object, path, baseHasIn);\n}\n\nmodule.exports = hasIn;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nmodule.exports = identity;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var isArrayLike = require('./isArrayLike'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nmodule.exports = isArrayLikeObject;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","var createCompounder = require('./_createCompounder');\n\n/**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\nvar kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n});\n\nmodule.exports = kebabCase;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n","var MapCache = require('./_MapCache');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nmodule.exports = memoize;\n","var baseMerge = require('./_baseMerge'),\n createAssigner = require('./_createAssigner');\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n});\n\nmodule.exports = merge;\n","var arrayMap = require('./_arrayMap'),\n baseIteratee = require('./_baseIteratee'),\n basePickBy = require('./_basePickBy'),\n getAllKeysIn = require('./_getAllKeysIn');\n\n/**\n * Creates an object composed of the `object` properties `predicate` returns\n * truthy for. The predicate is invoked with two arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pickBy(object, _.isNumber);\n * // => { 'a': 1, 'c': 3 }\n */\nfunction pickBy(object, predicate) {\n if (object == null) {\n return {};\n }\n var props = arrayMap(getAllKeysIn(object), function(prop) {\n return [prop];\n });\n predicate = baseIteratee(predicate);\n return basePickBy(object, props, function(value, path) {\n return predicate(value, path[0]);\n });\n}\n\nmodule.exports = pickBy;\n","var baseProperty = require('./_baseProperty'),\n basePropertyDeep = require('./_basePropertyDeep'),\n isKey = require('./_isKey'),\n toKey = require('./_toKey');\n\n/**\n * Creates a function that returns the value at `path` of a given object.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n * @example\n *\n * var objects = [\n * { 'a': { 'b': 2 } },\n * { 'a': { 'b': 1 } }\n * ];\n *\n * _.map(objects, _.property('a.b'));\n * // => [2, 1]\n *\n * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');\n * // => [1, 2]\n */\nfunction property(path) {\n return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);\n}\n\nmodule.exports = property;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nmodule.exports = stubArray;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n","var copyObject = require('./_copyObject'),\n keysIn = require('./keysIn');\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nmodule.exports = toPlainObject;\n","var baseToString = require('./_baseToString');\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\n","var asciiWords = require('./_asciiWords'),\n hasUnicodeWord = require('./_hasUnicodeWord'),\n toString = require('./toString'),\n unicodeWords = require('./_unicodeWords');\n\n/**\n * Splits `string` into an array of its words.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {RegExp|string} [pattern] The pattern to match words.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the words of `string`.\n * @example\n *\n * _.words('fred, barney, & pebbles');\n * // => ['fred', 'barney', 'pebbles']\n *\n * _.words('fred, barney, & pebbles', /[^, ]+/g);\n * // => ['fred', 'barney', '&', 'pebbles']\n */\nfunction words(string, pattern, guard) {\n string = toString(string);\n pattern = guard ? undefined : pattern;\n\n if (pattern === undefined) {\n return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);\n }\n return string.match(pattern) || [];\n}\n\nmodule.exports = words;\n","module.exports = require('./src/pokerhand');\n","/*\n * this is a table lookup for all \"flush\" hands (e.g. both\n * flushes and straight-flushes. entries containing a zero\n * mean that combination is not possible with a five-card\n * flush hand.\n */\n\nmodule.exports = [\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 1599, 0, 0, 0, 0, 0, 0, 0, 1598, 0, 0, 0, 1597, 0, 1596,\n8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1595, 0, 0, 0,\n0, 0, 0, 0, 1594, 0, 0, 0, 1593, 0, 1592, 1591, 0, 0, 0, 0, 0, 0,\n0, 0, 1590, 0, 0, 0, 1589, 0, 1588, 1587, 0, 0, 0, 0, 1586, 0,\n1585, 1584, 0, 0, 1583, 1582, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 1581, 0, 0, 0, 0, 0, 0, 0, 1580, 0, 0, 0,\n1579, 0, 1578, 1577, 0, 0, 0, 0, 0, 0, 0, 0, 1576, 0, 0, 0, 1575,\n0, 1574, 1573, 0, 0, 0, 0, 1572, 0, 1571, 1570, 0, 0, 1569, 1568,\n0, 1567, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1566, 0, 0, 0, 1565, 0,\n1564, 1563, 0, 0, 0, 0, 1562, 0, 1561, 1560, 0, 0, 1559, 1558, 0,\n1557, 0, 0, 0, 0, 0, 0, 1556, 0, 1555, 1554, 0, 0, 1553, 1552, 0,\n1551, 0, 0, 0, 0, 1550, 1549, 0, 1548, 0, 0, 0, 6, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1547, 0, 0, 0,\n0, 0, 0, 0, 1546, 0, 0, 0, 1545, 0, 1544, 1543, 0, 0, 0, 0, 0, 0,\n0, 0, 1542, 0, 0, 0, 1541, 0, 1540, 1539, 0, 0, 0, 0, 1538, 0,\n1537, 1536, 0, 0, 1535, 1534, 0, 1533, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 1532, 0, 0, 0, 1531, 0, 1530, 1529, 0, 0, 0, 0, 1528, 0, 1527,\n1526, 0, 0, 1525, 1524, 0, 1523, 0, 0, 0, 0, 0, 0, 1522, 0, 1521,\n1520, 0, 0, 1519, 1518, 0, 1517, 0, 0, 0, 0, 1516, 1515, 0, 1514,\n0, 0, 0, 1513, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1512, 0,\n0, 0, 1511, 0, 1510, 1509, 0, 0, 0, 0, 1508, 0, 1507, 1506, 0, 0,\n1505, 1504, 0, 1503, 0, 0, 0, 0, 0, 0, 1502, 0, 1501, 1500, 0, 0,\n1499, 1498, 0, 1497, 0, 0, 0, 0, 1496, 1495, 0, 1494, 0, 0, 0,\n1493, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1492, 0, 1491, 1490, 0, 0,\n1489, 1488, 0, 1487, 0, 0, 0, 0, 1486, 1485, 0, 1484, 0, 0, 0,\n1483, 0, 0, 0, 0, 0, 0, 0, 0, 1482, 1481, 0, 1480, 0, 0, 0, 1479,\n0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1478, 0, 0, 0, 0,\n0, 0, 0, 1477, 0, 0, 0, 1476, 0, 1475, 1474, 0, 0, 0, 0, 0, 0, 0,\n0, 1473, 0, 0, 0, 1472, 0, 1471, 1470, 0, 0, 0, 0, 1469, 0, 1468,\n1467, 0, 0, 1466, 1465, 0, 1464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n1463, 0, 0, 0, 1462, 0, 1461, 1460, 0, 0, 0, 0, 1459, 0, 1458,\n1457, 0, 0, 1456, 1455, 0, 1454, 0, 0, 0, 0, 0, 0, 1453, 0, 1452,\n1451, 0, 0, 1450, 1449, 0, 1448, 0, 0, 0, 0, 1447, 1446, 0, 1445,\n0, 0, 0, 1444, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1443, 0,\n0, 0, 1442, 0, 1441, 1440, 0, 0, 0, 0, 1439, 0, 1438, 1437, 0, 0,\n1436, 1435, 0, 1434, 0, 0, 0, 0, 0, 0, 1433, 0, 1432, 1431, 0, 0,\n1430, 1429, 0, 1428, 0, 0, 0, 0, 1427, 1426, 0, 1425, 0, 0, 0,\n1424, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1423, 0, 1422, 1421, 0, 0,\n1420, 1419, 0, 1418, 0, 0, 0, 0, 1417, 1416, 0, 1415, 0, 0, 0,\n1414, 0, 0, 0, 0, 0, 0, 0, 0, 1413, 1412, 0, 1411, 0, 0, 0, 1410,\n0, 0, 0, 0, 0, 0, 0, 1409, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 1408, 0, 0, 0, 1407, 0, 1406, 1405, 0,\n0, 0, 0, 1404, 0, 1403, 1402, 0, 0, 1401, 1400, 0, 1399, 0, 0, 0,\n0, 0, 0, 1398, 0, 1397, 1396, 0, 0, 1395, 1394, 0, 1393, 0, 0, 0,\n0, 1392, 1391, 0, 1390, 0, 0, 0, 1389, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 1388, 0, 1387, 1386, 0, 0, 1385, 1384, 0, 1383, 0, 0, 0, 0,\n1382, 1381, 0, 1380, 0, 0, 0, 1379, 0, 0, 0, 0, 0, 0, 0, 0, 1378,\n1377, 0, 1376, 0, 0, 0, 1375, 0, 0, 0, 0, 0, 0, 0, 1374, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1373, 0, 1372, 1371,\n0, 0, 1370, 1369, 0, 1368, 0, 0, 0, 0, 1367, 1366, 0, 1365, 0, 0,\n0, 1364, 0, 0, 0, 0, 0, 0, 0, 0, 1363, 1362, 0, 1361, 0, 0, 0,\n1360, 0, 0, 0, 0, 0, 0, 0, 1359, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 1358, 1357, 0, 1356, 0, 0, 0, 1355, 0, 0, 0, 0, 0,\n0, 0, 1354, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n1353, 0, 0, 0, 0, 0, 0, 0, 1352, 0, 0, 0, 1351, 0, 1350, 1349, 0,\n0, 0, 0, 0, 0, 0, 0, 1348, 0, 0, 0, 1347, 0, 1346, 1345, 0, 0, 0,\n0, 1344, 0, 1343, 1342, 0, 0, 1341, 1340, 0, 1339, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 1338, 0, 0, 0, 1337, 0, 1336, 1335, 0, 0, 0, 0,\n1334, 0, 1333, 1332, 0, 0, 1331, 1330, 0, 1329, 0, 0, 0, 0, 0, 0,\n1328, 0, 1327, 1326, 0, 0, 1325, 1324, 0, 1323, 0, 0, 0, 0, 1322,\n1321, 0, 1320, 0, 0, 0, 1319, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 1318, 0, 0, 0, 1317, 0, 1316, 1315, 0, 0, 0, 0, 1314, 0,\n1313, 1312, 0, 0, 1311, 1310, 0, 1309, 0, 0, 0, 0, 0, 0, 1308, 0,\n1307, 1306, 0, 0, 1305, 1304, 0, 1303, 0, 0, 0, 0, 1302, 1301, 0,\n1300, 0, 0, 0, 1299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1298, 0, 1297,\n1296, 0, 0, 1295, 1294, 0, 1293, 0, 0, 0, 0, 1292, 1291, 0, 1290,\n0, 0, 0, 1289, 0, 0, 0, 0, 0, 0, 0, 0, 1288, 1287, 0, 1286, 0, 0,\n0, 1285, 0, 0, 0, 0, 0, 0, 0, 1284, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1283, 0, 0, 0, 1282, 0, 1281,\n1280, 0, 0, 0, 0, 1279, 0, 1278, 1277, 0, 0, 1276, 1275, 0, 1274,\n0, 0, 0, 0, 0, 0, 1273, 0, 1272, 1271, 0, 0, 1270, 1269, 0, 1268,\n0, 0, 0, 0, 1267, 1266, 0, 1265, 0, 0, 0, 1264, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 1263, 0, 1262, 1261, 0, 0, 1260, 1259, 0, 1258, 0, 0,\n0, 0, 1257, 1256, 0, 1255, 0, 0, 0, 1254, 0, 0, 0, 0, 0, 0, 0, 0,\n1253, 1252, 0, 1251, 0, 0, 0, 1250, 0, 0, 0, 0, 0, 0, 0, 1249, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1248, 0, 1247,\n1246, 0, 0, 1245, 1244, 0, 1243, 0, 0, 0, 0, 1242, 1241, 0, 1240,\n0, 0, 0, 1239, 0, 0, 0, 0, 0, 0, 0, 0, 1238, 1237, 0, 1236, 0, 0,\n0, 1235, 0, 0, 0, 0, 0, 0, 0, 1234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 1233, 1232, 0, 1231, 0, 0, 0, 1230, 0, 0, 0, 0,\n0, 0, 0, 1229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1228,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1227, 0, 0, 0,\n1226, 0, 1225, 1224, 0, 0, 0, 0, 1223, 0, 1222, 1221, 0, 0, 1220,\n1219, 0, 1218, 0, 0, 0, 0, 0, 0, 1217, 0, 1216, 1215, 0, 0, 1214,\n1213, 0, 1212, 0, 0, 0, 0, 1211, 1210, 0, 1209, 0, 0, 0, 1208, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 1207, 0, 1206, 1205, 0, 0, 1204, 1203,\n0, 1202, 0, 0, 0, 0, 1201, 1200, 0, 1199, 0, 0, 0, 1198, 0, 0, 0,\n0, 0, 0, 0, 0, 1197, 1196, 0, 1195, 0, 0, 0, 1194, 0, 0, 0, 0, 0,\n0, 0, 1193, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n1192, 0, 1191, 1190, 0, 0, 1189, 1188, 0, 1187, 0, 0, 0, 0, 1186,\n1185, 0, 1184, 0, 0, 0, 1183, 0, 0, 0, 0, 0, 0, 0, 0, 1182, 1181,\n0, 1180, 0, 0, 0, 1179, 0, 0, 0, 0, 0, 0, 0, 1178, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1177, 1176, 0, 1175, 0, 0, 0,\n1174, 0, 0, 0, 0, 0, 0, 0, 1173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 1172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1171, 0,\n1170, 1169, 0, 0, 1168, 1167, 0, 1166, 0, 0, 0, 0, 1165, 1164, 0,\n1163, 0, 0, 0, 1162, 0, 0, 0, 0, 0, 0, 0, 0, 1161, 1160, 0, 1159,\n0, 0, 0, 1158, 0, 0, 0, 0, 0, 0, 0, 1157, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 1156, 1155, 0, 1154, 0, 0, 0, 1153, 0, 0,\n0, 0, 0, 0, 0, 1152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n1151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1150, 1149, 0, 1148, 0, 0, 0,\n1147, 0, 0, 0, 0, 0, 0, 0, 1146, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 1145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 1144, 0, 0, 0, 0, 0, 0, 0, 1143, 0, 0, 0, 1142,\n0, 1141, 1140, 0, 0, 0, 0, 0, 0, 0, 0, 1139, 0, 0, 0, 1138, 0,\n1137, 1136, 0, 0, 0, 0, 1135, 0, 1134, 1133, 0, 0, 1132, 1131, 0,\n1130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1129, 0, 0, 0, 1128, 0, 1127,\n1126, 0, 0, 0, 0, 1125, 0, 1124, 1123, 0, 0, 1122, 1121, 0, 1120,\n0, 0, 0, 0, 0, 0, 1119, 0, 1118, 1117, 0, 0, 1116, 1115, 0, 1114,\n0, 0, 0, 0, 1113, 1112, 0, 1111, 0, 0, 0, 1110, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 1109, 0, 0, 0, 1108, 0, 1107, 1106, 0, 0,\n0, 0, 1105, 0, 1104, 1103, 0, 0, 1102, 1101, 0, 1100, 0, 0, 0, 0,\n0, 0, 1099, 0, 1098, 1097, 0, 0, 1096, 1095, 0, 1094, 0, 0, 0, 0,\n1093, 1092, 0, 1091, 0, 0, 0, 1090, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n1089, 0, 1088, 1087, 0, 0, 1086, 1085, 0, 1084, 0, 0, 0, 0, 1083,\n1082, 0, 1081, 0, 0, 0, 1080, 0, 0, 0, 0, 0, 0, 0, 0, 1079, 1078,\n0, 1077, 0, 0, 0, 1076, 0, 0, 0, 0, 0, 0, 0, 1075, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1074, 0, 0, 0,\n1073, 0, 1072, 1071, 0, 0, 0, 0, 1070, 0, 1069, 1068, 0, 0, 1067,\n1066, 0, 1065, 0, 0, 0, 0, 0, 0, 1064, 0, 1063, 1062, 0, 0, 1061,\n1060, 0, 1059, 0, 0, 0, 0, 1058, 1057, 0, 1056, 0, 0, 0, 1055, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 1054, 0, 1053, 1052, 0, 0, 1051, 1050,\n0, 1049, 0, 0, 0, 0, 1048, 1047, 0, 1046, 0, 0, 0, 1045, 0, 0, 0,\n0, 0, 0, 0, 0, 1044, 1043, 0, 1042, 0, 0, 0, 1041, 0, 0, 0, 0, 0,\n0, 0, 1040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n1039, 0, 1038, 1037, 0, 0, 1036, 1035, 0, 1034, 0, 0, 0, 0, 1033,\n1032, 0, 1031, 0, 0, 0, 1030, 0, 0, 0, 0, 0, 0, 0, 0, 1029, 1028,\n0, 1027, 0, 0, 0, 1026, 0, 0, 0, 0, 0, 0, 0, 1025, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1024, 1023, 0, 1022, 0, 0, 0,\n1021, 0, 0, 0, 0, 0, 0, 0, 1020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 1019, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n1018, 0, 0, 0, 1017, 0, 1016, 1015, 0, 0, 0, 0, 1014, 0, 1013,\n1012, 0, 0, 1011, 1010, 0, 1009, 0, 0, 0, 0, 0, 0, 1008, 0, 1007,\n1006, 0, 0, 1005, 1004, 0, 1003, 0, 0, 0, 0, 1002, 1001, 0, 1000,\n0, 0, 0, 999, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 998, 0, 997, 996, 0,\n0, 995, 994, 0, 993, 0, 0, 0, 0, 992, 991, 0, 990, 0, 0, 0, 989,\n0, 0, 0, 0, 0, 0, 0, 0, 988, 987, 0, 986, 0, 0, 0, 985, 0, 0, 0,\n0, 0, 0, 0, 984, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 983, 0, 982, 981, 0, 0, 980, 979, 0, 978, 0, 0, 0, 0, 977,\n976, 0, 975, 0, 0, 0, 974, 0, 0, 0, 0, 0, 0, 0, 0, 973, 972, 0,\n971, 0, 0, 0, 970, 0, 0, 0, 0, 0, 0, 0, 969, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 968, 967, 0, 966, 0, 0, 0, 965, 0, 0,\n0, 0, 0, 0, 0, 964, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n963, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 962, 0, 961, 960, 0, 0,\n959, 958, 0, 957, 0, 0, 0, 0, 956, 955, 0, 954, 0, 0, 0, 953, 0,\n0, 0, 0, 0, 0, 0, 0, 952, 951, 0, 950, 0, 0, 0, 949, 0, 0, 0, 0,\n0, 0, 0, 948, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n947, 946, 0, 945, 0, 0, 0, 944, 0, 0, 0, 0, 0, 0, 0, 943, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 942, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 941, 940, 0, 939, 0, 0, 0, 938, 0, 0, 0, 0, 0, 0, 0,\n937, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 936, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 935, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 934, 0, 0, 0, 933, 0, 932,\n931, 0, 0, 0, 0, 930, 0, 929, 928, 0, 0, 927, 926, 0, 925, 0, 0,\n0, 0, 0, 0, 924, 0, 923, 922, 0, 0, 921, 920, 0, 919, 0, 0, 0, 0,\n918, 917, 0, 916, 0, 0, 0, 915, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n914, 0, 913, 912, 0, 0, 911, 910, 0, 909, 0, 0, 0, 0, 908, 907,\n0, 906, 0, 0, 0, 905, 0, 0, 0, 0, 0, 0, 0, 0, 904, 903, 0, 902,\n0, 0, 0, 901, 0, 0, 0, 0, 0, 0, 0, 900, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 899, 0, 898, 897, 0, 0, 896, 895,\n0, 894, 0, 0, 0, 0, 893, 892, 0, 891, 0, 0, 0, 890, 0, 0, 0, 0,\n0, 0, 0, 0, 889, 888, 0, 887, 0, 0, 0, 886, 0, 0, 0, 0, 0, 0, 0,\n885, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 884, 883, 0,\n882, 0, 0, 0, 881, 0, 0, 0, 0, 0, 0, 0, 880, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 879, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n878, 0, 877, 876, 0, 0, 875, 874, 0, 873, 0, 0, 0, 0, 872, 871,\n0, 870, 0, 0, 0, 869, 0, 0, 0, 0, 0, 0, 0, 0, 868, 867, 0, 866,\n0, 0, 0, 865, 0, 0, 0, 0, 0, 0, 0, 864, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 863, 862, 0, 861, 0, 0, 0, 860, 0, 0, 0,\n0, 0, 0, 0, 859, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n858, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 857, 856, 0, 855, 0, 0, 0,\n854, 0, 0, 0, 0, 0, 0, 0, 853, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 852, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 851, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 850, 0, 849,\n848, 0, 0, 847, 846, 0, 845, 0, 0, 0, 0, 844, 843, 0, 842, 0, 0,\n0, 841, 0, 0, 0, 0, 0, 0, 0, 0, 840, 839, 0, 838, 0, 0, 0, 837,\n0, 0, 0, 0, 0, 0, 0, 836, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 835, 834, 0, 833, 0, 0, 0, 832, 0, 0, 0, 0, 0, 0, 0,\n831, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 830, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 829, 828, 0, 827, 0, 0, 0, 826, 0, 0, 0, 0,\n0, 0, 0, 825, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 824,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 823, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 822, 821, 0, 820, 0, 0, 0, 819, 0, 0,\n0, 0, 0, 0, 0, 818, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n817, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 816, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n10, 0, 0, 0, 0, 0, 0, 0, 815, 0, 0, 0, 814, 0, 813, 812, 0, 0, 0,\n0, 0, 0, 0, 0, 811, 0, 0, 0, 810, 0, 809, 808, 0, 0, 0, 0, 807,\n0, 806, 805, 0, 0, 804, 803, 0, 802, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 801, 0, 0, 0, 800, 0, 799, 798, 0, 0, 0, 0, 797, 0, 796, 795,\n0, 0, 794, 793, 0, 792, 0, 0, 0, 0, 0, 0, 791, 0, 790, 789, 0, 0,\n788, 787, 0, 786, 0, 0, 0, 0, 785, 784, 0, 783, 0, 0, 0, 782, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 781, 0, 0, 0, 780, 0, 779,\n778, 0, 0, 0, 0, 777, 0, 776, 775, 0, 0, 774, 773, 0, 772, 0, 0,\n0, 0, 0, 0, 771, 0, 770, 769, 0, 0, 768, 767, 0, 766, 0, 0, 0, 0,\n765, 764, 0, 763, 0, 0, 0, 762, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n761, 0, 760, 759, 0, 0, 758, 757, 0, 756, 0, 0, 0, 0, 755, 754,\n0, 753, 0, 0, 0, 752, 0, 0, 0, 0, 0, 0, 0, 0, 751, 750, 0, 749,\n0, 0, 0, 748, 0, 0, 0, 0, 0, 0, 0, 747, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 746, 0, 0, 0, 745, 0,\n744, 743, 0, 0, 0, 0, 742, 0, 741, 740, 0, 0, 739, 738, 0, 737,\n0, 0, 0, 0, 0, 0, 736, 0, 735, 734, 0, 0, 733, 732, 0, 731, 0, 0,\n0, 0, 730, 729, 0, 728, 0, 0, 0, 727, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 726, 0, 725, 724, 0, 0, 723, 722, 0, 721, 0, 0, 0, 0, 720,\n719, 0, 718, 0, 0, 0, 717, 0, 0, 0, 0, 0, 0, 0, 0, 716, 715, 0,\n714, 0, 0, 0, 713, 0, 0, 0, 0, 0, 0, 0, 712, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 711, 0, 710, 709, 0, 0, 708,\n707, 0, 706, 0, 0, 0, 0, 705, 704, 0, 703, 0, 0, 0, 702, 0, 0, 0,\n0, 0, 0, 0, 0, 701, 700, 0, 699, 0, 0, 0, 698, 0, 0, 0, 0, 0, 0,\n0, 697, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 696, 695,\n0, 694, 0, 0, 0, 693, 0, 0, 0, 0, 0, 0, 0, 692, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 691, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 690, 0, 0, 0, 689, 0, 688, 687, 0, 0, 0, 0, 686,\n0, 685, 684, 0, 0, 683, 682, 0, 681, 0, 0, 0, 0, 0, 0, 680, 0,\n679, 678, 0, 0, 677, 676, 0, 675, 0, 0, 0, 0, 674, 673, 0, 672,\n0, 0, 0, 671, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 670, 0, 669, 668, 0,\n0, 667, 666, 0, 665, 0, 0, 0, 0, 664, 663, 0, 662, 0, 0, 0, 661,\n0, 0, 0, 0, 0, 0, 0, 0, 660, 659, 0, 658, 0, 0, 0, 657, 0, 0, 0,\n0, 0, 0, 0, 656, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 655, 0, 654, 653, 0, 0, 652, 651, 0, 650, 0, 0, 0, 0, 649,\n648, 0, 647, 0, 0, 0, 646, 0, 0, 0, 0, 0, 0, 0, 0, 645, 644, 0,\n643, 0, 0, 0, 642, 0, 0, 0, 0, 0, 0, 0, 641, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 640, 639, 0, 638, 0, 0, 0, 637, 0, 0,\n0, 0, 0, 0, 0, 636, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n635, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 634, 0, 633, 632, 0, 0,\n631, 630, 0, 629, 0, 0, 0, 0, 628, 627, 0, 626, 0, 0, 0, 625, 0,\n0, 0, 0, 0, 0, 0, 0, 624, 623, 0, 622, 0, 0, 0, 621, 0, 0, 0, 0,\n0, 0, 0, 620, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n619, 618, 0, 617, 0, 0, 0, 616, 0, 0, 0, 0, 0, 0, 0, 615, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 614, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 613, 612, 0, 611, 0, 0, 0, 610, 0, 0, 0, 0, 0, 0, 0,\n609, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 608, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 607, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 606, 0, 0, 0, 605, 0, 604,\n603, 0, 0, 0, 0, 602, 0, 601, 600, 0, 0, 599, 598, 0, 597, 0, 0,\n0, 0, 0, 0, 596, 0, 595, 594, 0, 0, 593, 592, 0, 591, 0, 0, 0, 0,\n590, 589, 0, 588, 0, 0, 0, 587, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n586, 0, 585, 584, 0, 0, 583, 582, 0, 581, 0, 0, 0, 0, 580, 579,\n0, 578, 0, 0, 0, 577, 0, 0, 0, 0, 0, 0, 0, 0, 576, 575, 0, 574,\n0, 0, 0, 573, 0, 0, 0, 0, 0, 0, 0, 572, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 571, 0, 570, 569, 0, 0, 568, 567,\n0, 566, 0, 0, 0, 0, 565, 564, 0, 563, 0, 0, 0, 562, 0, 0, 0, 0,\n0, 0, 0, 0, 561, 560, 0, 559, 0, 0, 0, 558, 0, 0, 0, 0, 0, 0, 0,\n557, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 556, 555, 0,\n554, 0, 0, 0, 553, 0, 0, 0, 0, 0, 0, 0, 552, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 551, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n550, 0, 549, 548, 0, 0, 547, 546, 0, 545, 0, 0, 0, 0, 544, 543,\n0, 542, 0, 0, 0, 541, 0, 0, 0, 0, 0, 0, 0, 0, 540, 539, 0, 538,\n0, 0, 0, 537, 0, 0, 0, 0, 0, 0, 0, 536, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 535, 534, 0, 533, 0, 0, 0, 532, 0, 0, 0,\n0, 0, 0, 0, 531, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n530, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 529, 528, 0, 527, 0, 0, 0,\n526, 0, 0, 0, 0, 0, 0, 0, 525, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 523, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 522, 0, 521,\n520, 0, 0, 519, 518, 0, 517, 0, 0, 0, 0, 516, 515, 0, 514, 0, 0,\n0, 513, 0, 0, 0, 0, 0, 0, 0, 0, 512, 511, 0, 510, 0, 0, 0, 509,\n0, 0, 0, 0, 0, 0, 0, 508, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 507, 506, 0, 505, 0, 0, 0, 504, 0, 0, 0, 0, 0, 0, 0,\n503, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 502, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 501, 500, 0, 499, 0, 0, 0, 498, 0, 0, 0, 0,\n0, 0, 0, 497, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 496,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 495, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 494, 493, 0, 492, 0, 0, 0, 491, 0, 0,\n0, 0, 0, 0, 0, 490, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n489, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 488, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 487, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 486, 0, 0, 0, 485, 0,\n484, 483, 0, 0, 0, 0, 482, 0, 481, 480, 0, 0, 479, 478, 0, 477,\n0, 0, 0, 0, 0, 0, 476, 0, 475, 474, 0, 0, 473, 472, 0, 471, 0, 0,\n0, 0, 470, 469, 0, 468, 0, 0, 0, 467, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 466, 0, 465, 464, 0, 0, 463, 462, 0, 461, 0, 0, 0, 0, 460,\n459, 0, 458, 0, 0, 0, 457, 0, 0, 0, 0, 0, 0, 0, 0, 456, 455, 0,\n454, 0, 0, 0, 453, 0, 0, 0, 0, 0, 0, 0, 452, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 451, 0, 450, 449, 0, 0, 448,\n447, 0, 446, 0, 0, 0, 0, 445, 444, 0, 443, 0, 0, 0, 442, 0, 0, 0,\n0, 0, 0, 0, 0, 441, 440, 0, 439, 0, 0, 0, 438, 0, 0, 0, 0, 0, 0,\n0, 437, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 435,\n0, 434, 0, 0, 0, 433, 0, 0, 0, 0, 0, 0, 0, 432, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 430, 0, 429, 428, 0, 0, 427, 426, 0, 425, 0, 0, 0, 0, 424,\n423, 0, 422, 0, 0, 0, 421, 0, 0, 0, 0, 0, 0, 0, 0, 420, 419, 0,\n418, 0, 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, 416, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 415, 414, 0, 413, 0, 0, 0, 412, 0, 0,\n0, 0, 0, 0, 0, 411, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n410, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 409, 408, 0, 407, 0, 0, 0,\n406, 0, 0, 0, 0, 0, 0, 0, 405, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 404, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 402, 0, 401,\n400, 0, 0, 399, 398, 0, 397, 0, 0, 0, 0, 396, 395, 0, 394, 0, 0,\n0, 393, 0, 0, 0, 0, 0, 0, 0, 0, 392, 391, 0, 390, 0, 0, 0, 389,\n0, 0, 0, 0, 0, 0, 0, 388, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 387, 386, 0, 385, 0, 0, 0, 384, 0, 0, 0, 0, 0, 0, 0,\n383, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 382, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 381, 380, 0, 379, 0, 0, 0, 378, 0, 0, 0, 0,\n0, 0, 0, 377, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 375, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 374, 373, 0, 372, 0, 0, 0, 371, 0, 0,\n0, 0, 0, 0, 0, 370, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n369, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 366, 0, 365, 364, 0, 0, 363, 362,\n0, 361, 0, 0, 0, 0, 360, 359, 0, 358, 0, 0, 0, 357, 0, 0, 0, 0,\n0, 0, 0, 0, 356, 355, 0, 354, 0, 0, 0, 353, 0, 0, 0, 0, 0, 0, 0,\n352, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 351, 350, 0,\n349, 0, 0, 0, 348, 0, 0, 0, 0, 0, 0, 0, 347, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 346, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345,\n344, 0, 343, 0, 0, 0, 342, 0, 0, 0, 0, 0, 0, 0, 341, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 340, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n339, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n338, 337, 0, 336, 0, 0, 0, 335, 0, 0, 0, 0, 0, 0, 0, 334, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 332, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 331, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n330, 329, 0, 328, 0, 0, 0, 327, 0, 0, 0, 0, 0, 0, 0, 326, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 325, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 324, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 323, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1];\n","module.exports = {\n flushes: require('./flushes'),\n products: require('./products'),\n ranks: require('./ranks'),\n suits: require('./suits'),\n unique5: require('./unique5'),\n values: require('./values'),\n};\n","module.exports = [\n48, 72, 80, 108, 112, 120, 162, 168, 176, 180, 200, 208, 252,\n264, 270, 272, 280, 300, 304, 312, 368, 378, 392, 396, 405, 408,\n420, 440, 450, 456, 464, 468, 496, 500, 520, 552, 567, 588, 592,\n594, 612, 616, 630, 656, 660, 675, 680, 684, 696, 700, 702, 728,\n744, 750, 760, 780, 828, 882, 888, 891, 918, 920, 924, 945, 952,\n968, 980, 984, 990, 1020, 1026, 1044, 1050, 1053, 1064, 1092,\n1100, 1116, 1125, 1140, 1144, 1160, 1170, 1240, 1242, 1250, 1288,\n1300, 1323, 1332, 1352, 1372, 1377, 1380, 1386, 1428, 1452, 1470,\n1476, 1480, 1485, 1496, 1530, 1539, 1540, 1566, 1575, 1596, 1624,\n1638, 1640, 1650, 1672, 1674, 1700, 1710, 1716, 1736, 1740, 1750,\n1755, 1768, 1820, 1860, 1863, 1875, 1900, 1932, 1950, 1976, 1998,\n2024, 2028, 2058, 2070, 2072, 2079, 2142, 2156, 2178, 2205, 2214,\n2220, 2244, 2295, 2296, 2300, 2312, 2349, 2380, 2392, 2394, 2420,\n2436, 2450, 2457, 2460, 2475, 2508, 2511, 2548, 2550, 2552, 2565,\n2574, 2584, 2604, 2610, 2625, 2652, 2660, 2728, 2750, 2790, 2850,\n2860, 2888, 2898, 2900, 2925, 2964, 2997, 3016, 3036, 3042, 3087,\n3100, 3105, 3108, 3128, 3213, 3220, 3224, 3234, 3250, 3256, 3267,\n3321, 3330, 3332, 3366, 3380, 3388, 3430, 3444, 3450, 3465, 3468,\n3496, 3588, 3591, 3608, 3630, 3654, 3675, 3690, 3700, 3724, 3740,\n3762, 3822, 3825, 3828, 3848, 3850, 3861, 3876, 3906, 3915, 3944,\n3978, 4004, 4060, 4092, 4095, 4100, 4125, 4180, 4185, 4216, 4232,\n4250, 4264, 4275, 4332, 4340, 4347, 4350, 4375, 4408, 4420, 4446,\n4508, 4524, 4550, 4554, 4563, 4650, 4662, 4692, 4712, 4732, 4750,\n4802, 4836, 4851, 4875, 4884, 4940, 4995, 4998, 5032, 5049, 5060,\n5070, 5082, 5145, 5166, 5175, 5180, 5202, 5236, 5244, 5324, 5336,\n5355, 5382, 5390, 5412, 5445, 5481, 5535, 5550, 5576, 5586, 5624,\n5643, 5684, 5704, 5733, 5740, 5742, 5750, 5772, 5775, 5780, 5814,\n5852, 5859, 5916, 5950, 5967, 5980, 5985, 6050, 6076, 6125, 6138,\n6150, 6188, 6232, 6292, 6324, 6348, 6370, 6375, 6380, 6396, 6435,\n6460, 6498, 6525, 6612, 6650, 6669, 6728, 6762, 6786, 6808, 6820,\n6825, 6831, 6875, 6916, 6975, 6993, 7038, 7068, 7084, 7098, 7125,\n7150, 7192, 7203, 7220, 7245, 7250, 7252, 7254, 7326, 7436, 7497,\n7540, 7544, 7546, 7548, 7605, 7623, 7688, 7749, 7750, 7803, 7820,\n7866, 7986, 8004, 8036, 8050, 8060, 8073, 8085, 8092, 8118, 8125,\n8140, 8228, 8325, 8330, 8364, 8372, 8379, 8415, 8436, 8450, 8470,\n8526, 8556, 8575, 8584, 8613, 8625, 8658, 8670, 8721, 8740, 8788,\n8874, 8918, 8925, 8932, 9009, 9020, 9044, 9075, 9114, 9135, 9176,\n9196, 9207, 9225, 9250, 9310, 9348, 9350, 9405, 9438, 9486, 9512,\n9522, 9548, 9555, 9594, 9620, 9625, 9724, 9747, 9765, 9860, 9918,\n9945, 9975, 10092, 10108, 10143, 10150, 10168, 10179, 10212,\n10250, 10450, 10540, 10556, 10557, 10580, 10602, 10625, 10647,\n10660, 10725, 10788, 10830, 10850, 10868, 10875, 10878, 10881,\n10948, 10952, 10989, 11020, 11050, 11115, 11132, 11154, 11270,\n11284, 11316, 11319, 11322, 11375, 11385, 11396, 11492, 11532,\n11625, 11655, 11662, 11780, 11781, 11799, 11830, 11858, 11875,\n11979, 12005, 12006, 12054, 12075, 12136, 12138, 12177, 12236,\n12342, 12350, 12495, 12546, 12580, 12628, 12650, 12654, 12675,\n12705, 12716, 12789, 12834, 12844, 12876, 12915, 12950, 12987,\n13005, 13034, 13156, 13167, 13182, 13310, 13311, 13340, 13377,\n13448, 13455, 13468, 13475, 13671, 13764, 13794, 13804, 13875,\n13923, 13940, 13965, 14014, 14022, 14025, 14036, 14060, 14157,\n14210, 14212, 14229, 14260, 14268, 14283, 14350, 14355, 14375,\n14391, 14450, 14535, 14756, 14812, 14875, 14877, 14924, 14950,\n15004, 15028, 15125, 15138, 15162, 15190, 15225, 15252, 15318,\n15345, 15375, 15428, 15548, 15561, 15580, 15675, 15730, 15778,\n15870, 15884, 15903, 15925, 15939, 15950, 16150, 16182, 16245,\n16275, 16317, 16428, 16492, 16562, 16575, 16588, 16625, 16698,\n16731, 16796, 16820, 16905, 16965, 16974, 16983, 17020, 17050,\n17204, 17238, 17298, 17493, 17595, 17612, 17732, 17745, 17787,\n17875, 17908, 17980, 18009, 18050, 18081, 18125, 18130, 18135,\n18204, 18207, 18315, 18326, 18513, 18525, 18590, 18634, 18676,\n18772, 18819, 18837, 18850, 18860, 18865, 18975, 18981, 19074,\n19220, 19228, 19251, 19266, 19314, 19375, 19425, 19516, 19550,\n19551, 19604, 19652, 19665, 19684, 19773, 19844, 19894, 19964,\n19965, 20090, 20097, 20125, 20150, 20172, 20230, 20295, 20332,\n20349, 20350, 20482, 20570, 20646, 20691, 20825, 20956, 21021,\n21033, 21054, 21125, 21164, 21175, 21266, 21315, 21402, 21460,\n21483, 21525, 21645, 21658, 21675, 21692, 21812, 21850, 21879,\n21964, 21970, 22022, 22185, 22218, 22295, 22425, 22506, 22542,\n22550, 22707, 22724, 22743, 22785, 22878, 22940, 22977, 22990,\n23125, 23188, 23275, 23276, 23322, 23375, 23452, 23548, 23595,\n23667, 23715, 23751, 23780, 23805, 23826, 23828, 23925, 23985,\n24050, 24206, 24225, 24244, 24273, 24453, 24548, 24633, 24642,\n24650, 24794, 24795, 24843, 25012, 25025, 25047, 25172, 25230,\n25270, 25375, 25382, 25389, 25420, 25461, 25575, 25625, 25636,\n25641, 25857, 25916, 25947, 26026, 26125, 26350, 26404, 26411,\n26450, 26505, 26588, 26650, 26862, 26908, 27075, 27125, 27195,\n27306, 27380, 27404, 27436, 27489, 27508, 27531, 27550, 27625,\n27676, 27716, 27830, 27885, 27951, 28126, 28158, 28175, 28275,\n28305, 28322, 28413, 28611, 28652, 28730, 28798, 28830, 28899,\n28971, 29155, 29282, 29302, 29325, 29348, 29406, 29450, 29478,\n29575, 29601, 29645, 29716, 29766, 29841, 30015, 30044, 30135,\n30225, 30258, 30303, 30340, 30345, 30525, 30628, 30668, 30723,\n30758, 30855, 30875, 30932, 30969, 31059, 31213, 31262, 31365,\n31372, 31434, 31450, 31581, 31625, 31635, 31654, 31790, 31899,\n31977, 32085, 32103, 32110, 32116, 32186, 32375, 32487, 32585,\n32708, 32725, 32775, 32946, 32955, 33033, 33201, 33212, 33275,\n33292, 33327, 33350, 33418, 33524, 33579, 33620, 33759, 33813,\n33825, 34276, 34317, 34485, 34606, 34684, 34713, 34850, 34914,\n34983, 35035, 35055, 35090, 35150, 35322, 35378, 35525, 35588,\n35650, 35739, 35836, 35875, 35972, 36075, 36125, 36244, 36309,\n36556, 36575, 36822, 36946, 36963, 36975, 37004, 37030, 37076,\n37107, 37191, 37323, 37375, 37444, 37468, 37510, 37518, 37570,\n37791, 37845, 37905, 37975, 38073, 38295, 38318, 38332, 38675,\n38709, 38870, 38950, 38962, 39039, 39325, 39445, 39494, 39525,\n39556, 39627, 39675, 39710, 39875, 39882, 39886, 39897, 39975,\n40052, 40204, 40222, 40293, 40362, 40375, 40455, 40508, 40817,\n40898, 40959, 41070, 41154, 41262, 41325, 41405, 41492, 41503,\n41574, 41745, 41876, 42021, 42050, 42189, 42237, 42284, 42435,\n42476, 42483, 42550, 42625, 42772, 42826, 43095, 43197, 43225,\n43245, 43263, 43732, 43911, 43923, 43953, 44109, 44175, 44198,\n44217, 44252, 44275, 44289, 44506, 44649, 44764, 44770, 44919,\n44950, 44954, 45125, 45254, 45325, 45356, 45387, 45619, 45747,\n45815, 46137, 46475, 46585, 46748, 46893, 46930, 47068, 47125,\n47138, 47150, 47151, 47175, 47212, 47396, 47481, 47619, 47685,\n47804, 48050, 48165, 48279, 48285, 48314, 48334, 48484, 48668,\n48807, 48875, 49010, 49036, 49049, 49077, 49126, 49130, 49419,\n49610, 49735, 49818, 49972, 50025, 50127, 50225, 50286, 50375,\n50430, 50468, 50575, 50578, 50692, 50875, 51129, 51205, 51425,\n51615, 51646, 51842, 51909, 52173, 52234, 52275, 52316, 52325,\n52371, 52390, 52514, 52598, 52635, 52725, 52767, 52972, 52983,\n53067, 53165, 53428, 53475, 53482, 53505, 53613, 53650, 53754,\n53958, 53998, 54145, 54188, 54418, 54549, 54625, 54910, 54925,\n55055, 55223, 55233, 55419, 55506, 55545, 55594, 55796, 55825,\n55924, 56265, 56277, 56355, 56375, 56525, 56637, 57122, 57188,\n57195, 57350, 57475, 57477, 57498, 57681, 57722, 57868, 57967,\n58190, 58305, 58311, 58425, 58443, 58870, 59204, 59241, 59409,\n59450, 59565, 59644, 59675, 59774, 59823, 59829, 60125, 60236,\n60306, 60333, 60515, 60543, 60775, 61132, 61226, 61347, 61364,\n61370, 61605, 61625, 61642, 61659, 61731, 61828, 61893, 61985,\n62271, 62361, 62530, 62678, 62814, 63075, 63175, 63206, 63426,\n63455, 63550, 63825, 63916, 64124, 64141, 64158, 64239, 64467,\n64676, 65065, 65219, 65348, 65366, 65596, 65598, 65702, 65875,\n65975, 66033, 66092, 66125, 66297, 66470, 66625, 66748, 66759,\n66861, 67146, 67155, 67270, 67425, 67431, 67599, 67881, 67925,\n68265, 68306, 68324, 68425, 68450, 68590, 68614, 68770, 68782,\n68875, 68894, 68913, 69003, 69290, 69454, 69575, 69597, 69629,\n69874, 69938, 70315, 70395, 70525, 70587, 70602, 70642, 70707,\n70725, 70805, 71094, 71188, 71225, 71668, 71687, 71825, 71995,\n72075, 72261, 72358, 72471, 72501, 72964, 73002, 73036, 73205,\n73255, 73346, 73515, 73593, 73625, 73689, 73695, 73964, 74415,\n74431, 74698, 74727, 74907, 74958, 75429, 75645, 75803, 75850,\n75867, 76342, 76475, 76874, 76895, 77077, 77121, 77198, 77372,\n77469, 77763, 77996, 78039, 78155, 78166, 78292, 78351, 78585,\n78625, 78771, 78884, 78897, 78925, 79135, 79475, 80073, 80142,\n80223, 80275, 80465, 80475, 80631, 80852, 80937, 80997, 81466,\n81548, 81549, 81627, 82225, 82251, 82365, 82418, 82522, 82654,\n82708, 83030, 83259, 83375, 83391, 83398, 83421, 83486, 83545,\n83810, 84050, 84175, 84249, 84303, 84721, 85514, 85683, 85782,\n85918, 86025, 86247, 86275, 86428, 86515, 86583, 86756, 86779,\n87125, 87172, 87285, 87362, 87412, 87542, 87725, 87875, 88102,\n88305, 88412, 88445, 88806, 88825, 88837, 89001, 89125, 89175,\n89590, 89661, 89930, 90117, 90354, 90364, 90459, 91091, 91143,\n91234, 91839, 92046, 92055, 92225, 92365, 92414, 92463, 92510,\n92575, 93058, 93092, 93275, 93357, 93775, 93795, 93925, 94017,\n94178, 94221, 94622, 94809, 95139, 95325, 95571, 95795, 95830,\n95874, 96026, 96237, 96278, 96425, 96596, 97006, 97175, 97375,\n97405, 97526, 97556, 97682, 98022, 98049, 98394, 98397, 98441,\n98494, 98553, 98716, 98735, 99127, 99275, 99567, 99705, 99715,\n100510, 100555, 100719, 100793, 100905, 101062, 102051, 102245,\n102459, 102487, 102557, 102675, 102885, 102921, 103075, 103155,\n103156, 103173, 103246, 103341, 103675, 103935, 104044, 104181,\n104284, 104690, 104811, 104907, 104975, 105125, 105154, 105183,\n105524, 105710, 105754, 105903, 105963, 106227, 106375, 106641,\n106782, 106930, 107065, 107525, 107559, 107653, 107822, 108086,\n108537, 109089, 109142, 109174, 109330, 109388, 109417, 109503,\n109554, 110019, 110075, 110331, 110495, 110789, 110825, 110946,\n111265, 111476, 111910, 111925, 112047, 112375, 112385, 112406,\n112437, 112651, 113135, 113553, 113775, 114057, 114308, 114513,\n115258, 115292, 115311, 115797, 116058, 116242, 116402, 116522,\n116725, 116932, 116963, 117249, 117325, 117334, 117438, 117670,\n117711, 117845, 117875, 118490, 119119, 119164, 119187, 119306,\n120125, 120175, 120213, 120785, 120802, 120835, 121121, 121670,\n121923, 121975, 122018, 122199, 122525, 122815, 122825, 123025,\n123627, 123783, 123823, 123981, 124025, 124468, 124545, 124558,\n124775, 124930, 125097, 125229, 125426, 125541, 125715, 125829,\n125902, 125948, 126075, 126445, 127075, 127426, 127534, 127738,\n127756, 128018, 128271, 128673, 128877, 128986, 129115, 129311,\n129514, 129605, 130134, 130203, 130585, 130975, 131043, 131118,\n131285, 131313, 131495, 132153, 132158, 132275, 132618, 133052,\n133133, 133209, 133342, 133570, 133705, 134113, 134125, 134162,\n134199, 134385, 134895, 134995, 135014, 135531, 135575, 136045,\n136214, 136325, 136367, 136851, 137275, 137547, 137566, 137924,\n138069, 138229, 138621, 138765, 138985, 139113, 139564, 139587,\n139601, 139638, 140714, 140777, 141267, 141933, 142025, 142228,\n142538, 142766, 142805, 142970, 143143, 143375, 143745, 143811,\n144039, 144279, 144305, 144417, 144925, 145475, 145509, 145521,\n146234, 146289, 146334, 146523, 146566, 146575, 147033, 147175,\n147436, 147591, 147706, 147741, 147994, 148010, 148625, 148666,\n148707, 148925, 149435, 149702, 149891, 150183, 150590, 150765,\n150898, 151294, 151525, 151593, 152218, 152438, 153062, 153065,\n153410, 153425, 153729, 154105, 154652, 154693, 154869, 155771,\n156066, 156325, 156426, 156674, 156695, 157035, 157325, 157339,\n157604, 157731, 158015, 158389, 158565, 158631, 158804, 158875,\n159562, 159790, 160173, 160225, 160395, 161161, 161253, 161414,\n161733, 161975, 162129, 162578, 163370, 163415, 163713, 163761,\n163990, 163995, 164169, 164255, 164331, 164738, 164983, 165025,\n165886, 166175, 166419, 166634, 167042, 167214, 167865, 168175,\n168609, 168674, 169099, 169169, 169756, 170126, 170338, 170765,\n171125, 171275, 171462, 171475, 171535, 171925, 171941, 171955,\n172235, 172546, 172822, 172887, 172975, 173225, 173635, 174087,\n174097, 174363, 174603, 174685, 174783, 174845, 174902, 175491,\n175972, 176001, 176157, 176505, 176605, 177023, 177489, 177735,\n177970, 178126, 178334, 178746, 178802, 178959, 179075, 180154,\n180761, 180895, 181203, 181447, 181917, 182505, 182590, 182666,\n182819, 183027, 183365, 183425, 183483, 183799, 184093, 184382,\n184910, 185725, 186093, 186238, 186694, 186702, 186745, 186837,\n186998, 187187, 187395, 187775, 188108, 188139, 188518, 188853,\n188922, 188993, 189625, 190333, 190463, 190855, 191139, 191301,\n191425, 191607, 191634, 191675, 192027, 192185, 192995, 193325,\n193430, 193479, 194271, 194463, 194579, 194996, 195201, 195415,\n195730, 196075, 196137, 196677, 197098, 197846, 198237, 198927,\n199082, 199927, 200013, 200158, 200355, 200725, 201243, 202027,\n202521, 202612, 203203, 203319, 203522, 203665, 204321, 204425,\n205751, 205942, 206045, 206305, 206349, 206635, 206886, 207214,\n207575, 208075, 208444, 208495, 208658, 208715, 209209, 209457,\n209525, 210125, 210749, 210826, 211071, 212602, 213342, 213785,\n213807, 214149, 214225, 214291, 214455, 214774, 214795, 215747,\n215878, 216775, 216890, 217217, 217341, 217558, 217906, 218405,\n218530, 218855, 219351, 219373, 219501, 219849, 220255, 221030,\n221122, 221221, 221559, 221991, 222015, 222111, 222425, 222999,\n223706, 223975, 224516, 224553, 224825, 224939, 225446, 225885,\n225998, 226347, 226525, 226941, 228085, 228206, 228327, 228475,\n228657, 228718, 228781, 229586, 229593, 229957, 230115, 230318,\n231035, 231275, 231725, 231978, 232101, 232562, 232645, 232730,\n232934, 233206, 233818, 234025, 234099, 234175, 234639, 235011,\n235246, 235445, 235543, 235586, 236406, 236555, 237429, 237614,\n238206, 239071, 239343, 239575, 239685, 240065, 240149, 240526,\n240695, 240737, 240994, 241129, 242121, 242515, 243089, 243815,\n243867, 243890, 244205, 244559, 244783, 245055, 245985, 246123,\n246202, 246235, 247107, 247225, 247247, 248788, 248829, 248897,\n249067, 249158, 249951, 250325, 250563, 250821, 251275, 252586,\n252655, 253011, 253175, 253253, 254634, 255189, 255507, 255626,\n256711, 257193, 258115, 258819, 258874, 259233, 259259, 259325,\n259407, 259666, 260110, 260642, 260678, 260710, 261326, 261443,\n261725, 262353, 262885, 263097, 263302, 264275, 264385, 265475,\n265727, 265837, 266955, 267189, 267197, 267325, 267501, 267674,\n268119, 268203, 269059, 269555, 270193, 270215, 270231, 270802,\n272194, 272855, 272935, 273325, 273581, 273885, 273999, 274022,\n274846, 275684, 276573, 276575, 277365, 277574, 278018, 278179,\n278369, 278690, 279357, 279775, 280041, 280053, 280497, 281015,\n282302, 282777, 283383, 283475, 284053, 284258, 284954, 285131,\n285770, 287287, 287451, 287638, 287738, 288145, 288463, 288827,\n289289, 290145, 290605, 290966, 291005, 291305, 291893, 292175,\n292201, 292494, 293335, 293595, 293854, 294151, 294175, 295075,\n295647, 296225, 296769, 296989, 297910, 298265, 298623, 298775,\n299299, 299367, 300237, 300713, 302005, 303025, 303646, 303862,\n303918, 304175, 304606, 305045, 305283, 305762, 305767, 305942,\n306397, 306475, 307582, 308074, 308357, 308913, 309442, 310329,\n310821, 311170, 311395, 312325, 312666, 312987, 313565, 314019,\n314041, 314171, 314534, 314755, 314870, 315425, 315514, 316239,\n316342, 316825, 317471, 318478, 318565, 318734, 318835, 318903,\n319319, 319345, 319390, 320013, 320045, 322161, 322465, 323449,\n323785, 323817, 324818, 325335, 325622, 325703, 325822, 326337,\n326859, 326975, 327795, 328757, 329623, 330395, 331075, 331177,\n331298, 331545, 331683, 331731, 333355, 333925, 335405, 335559,\n335699, 336091, 336743, 336774, 336973, 337502, 337535, 338169,\n338675, 338997, 339031, 339521, 340442, 340535, 341341, 341446,\n341734, 341887, 342309, 343077, 343915, 344379, 344729, 344810,\n345477, 347282, 347633, 347967, 348725, 348843, 349095, 349401,\n349525, 349809, 350727, 350987, 351538, 351785, 352869, 353379,\n353717, 354609, 355570, 355946, 356345, 356421, 356915, 357309,\n357425, 359414, 359513, 360778, 360789, 361361, 361491, 361675,\n362674, 363562, 364021, 364154, 364994, 365585, 365835, 366415,\n367114, 368039, 369265, 369303, 369985, 370025, 370139, 371665,\n371722, 372775, 373182, 373737, 374255, 375193, 375683, 376475,\n377245, 377377, 378235, 378301, 378879, 378917, 380494, 380545,\n381095, 381938, 381951, 381997, 382075, 382109, 382655, 383439,\n383525, 384307, 384659, 384826, 385526, 386425, 386630, 387686,\n388311, 388531, 389499, 390165, 390166, 390963, 391017, 391065,\n391534, 391685, 391989, 393421, 394010, 394953, 395937, 397010,\n397822, 397969, 398866, 398905, 399475, 400078, 400673, 400775,\n401511, 401698, 401882, 402866, 403403, 403535, 404225, 406203,\n406334, 406445, 406802, 406847, 407407, 407827, 408291, 408425,\n409975, 410669, 410839, 411033, 411845, 412114, 412269, 413075,\n413526, 413678, 414715, 415454, 416361, 416585, 417027, 417074,\n417175, 417571, 417605, 418035, 419881, 421685, 422807, 423243,\n423453, 424390, 424589, 424762, 424879, 425258, 425315, 425546,\n425845, 426374, 426387, 427025, 427063, 427431, 428655, 429598,\n429913, 430606, 431365, 431457, 431607, 432055, 435638, 435953,\n436449, 437255, 438741, 438991, 440657, 440781, 440818, 443989,\n444925, 445315, 445835, 445991, 446369, 446865, 447005, 447083,\n447146, 447811, 447925, 448063, 450262, 450385, 451451, 453299,\n453871, 454138, 454181, 454597, 455469, 455793, 455877, 456025,\n456475, 456665, 456909, 458643, 458689, 458913, 458983, 459173,\n460955, 461373, 462111, 462275, 462346, 462553, 462722, 464163,\n465595, 466697, 466735, 466755, 467495, 468999, 469567, 470327,\n471295, 471801, 472305, 472549, 473271, 474513, 474734, 476749,\n477158, 477717, 478101, 479085, 480491, 480766, 481481, 481574,\n482734, 483575, 484561, 485537, 486098, 486266, 487227, 487475,\n487490, 488433, 488733, 489325, 490637, 491878, 492499, 492745,\n493025, 494615, 496223, 496947, 497705, 497798, 498883, 499681,\n500395, 501787, 502918, 503234, 505161, 505325, 506253, 506530,\n507566, 508079, 508277, 508805, 508898, 509675, 510663, 511819,\n512006, 512169, 512601, 512746, 512981, 514786, 514855, 516925,\n516971, 517215, 517979, 518035, 519622, 520331, 520421, 520923,\n521110, 521594, 521645, 523957, 527065, 527307, 528143, 529529,\n531505, 532763, 533355, 533533, 533919, 535717, 536393, 536558,\n536935, 537251, 539121, 539695, 540175, 541167, 541282, 541717,\n542087, 542225, 542659, 543286, 543895, 544011, 544765, 544825,\n545054, 545343, 546231, 546325, 547491, 548359, 550671, 551614,\n552575, 552805, 555458, 555611, 555814, 555841, 557566, 557583,\n558467, 559265, 559682, 559773, 561290, 562438, 563615, 563914,\n564775, 564949, 564995, 567853, 568178, 569023, 570515, 570741,\n571795, 572242, 572663, 572907, 573562, 573965, 574678, 575795,\n576583, 577239, 578289, 578347, 579945, 580601, 581405, 581529,\n581647, 581825, 582335, 582958, 583015, 583219, 584545, 584647,\n585249, 585599, 587301, 588115, 588965, 590359, 591015, 593021,\n593929, 594035, 594146, 594473, 595441, 595515, 596183, 596733,\n598299, 600117, 600281, 600457, 600691, 601315, 602485, 602547,\n602823, 603725, 603911, 604299, 604877, 605098, 607202, 609501,\n609725, 610203, 612157, 613118, 614422, 615043, 615505, 616975,\n618171, 618233, 620194, 620289, 620517, 620806, 620977, 621970,\n622895, 623162, 623181, 623441, 624169, 625611, 625807, 628694,\n630539, 631465, 633919, 634114, 634933, 636585, 637143, 637887,\n638319, 639065, 639331, 639561, 640211, 640871, 644397, 644725,\n645337, 645909, 647185, 648907, 649078, 649165, 650275, 651605,\n651695, 651775, 651833, 653315, 653429, 653457, 654493, 655402,\n656183, 656903, 657662, 658255, 659525, 659813, 661227, 662966,\n663803, 664411, 665482, 669185, 670719, 671099, 675393, 676286,\n677005, 677846, 680485, 680846, 681207, 682486, 683501, 683675,\n684574, 685055, 685069, 687115, 687242, 687401, 689210, 689843,\n692461, 692714, 693519, 693842, 693935, 694083, 695045, 696725,\n696787, 700553, 700843, 701437, 702559, 702658, 704099, 705686,\n705755, 708883, 709142, 709423, 709631, 710645, 712101, 712327,\n712385, 714425, 715737, 719095, 719345, 720575, 720797, 721149,\n722361, 724101, 724594, 725249, 726869, 727415, 729147, 729399,\n729554, 730303, 730639, 730825, 731235, 733381, 734635, 734638,\n735034, 737426, 737817, 737891, 742577, 743002, 743774, 744107,\n744775, 746697, 748867, 749177, 751502, 751709, 754354, 754377,\n754851, 755573, 756613, 757393, 758582, 759115, 759655, 759795,\n761349, 761453, 761515, 762671, 763347, 764405, 764855, 768009,\n768955, 769119, 770185, 772179, 773605, 773927, 774566, 774706,\n775489, 777925, 779433, 781665, 782254, 782391, 782971, 783959,\n785213, 785519, 785806, 786335, 787175, 788785, 789061, 790855,\n790993, 791282, 792281, 793117, 796195, 796835, 798475, 798721,\n800513, 803551, 804287, 804837, 806113, 809042, 809627, 811923,\n812045, 812383, 813967, 814055, 814555, 814929, 815269, 816221,\n817581, 817663, 818363, 818662, 823361, 824182, 824551, 827421,\n828134, 828245, 828269, 828971, 829226, 829939, 830297, 830414,\n831575, 831649, 832117, 833187, 833721, 836349, 836969, 837199,\n838409, 839523, 839914, 841841, 841935, 843479, 843657, 843755,\n845871, 850586, 851105, 852267, 853615, 854335, 858363, 858458,\n859027, 860343, 861707, 862017, 862025, 866723, 866822, 868205,\n870758, 872053, 872275, 873422, 874437, 876826, 877591, 877933,\n878845, 884051, 884374, 885391, 886414, 887777, 888925, 889778,\n889865, 891219, 893809, 894179, 894691, 896506, 898535, 898909,\n900358, 901945, 906059, 906685, 907647, 908831, 908905, 910385,\n910803, 912247, 912373, 912485, 914641, 916487, 917662, 917785,\n918731, 919677, 921475, 921557, 921633, 924482, 926497, 926782,\n927707, 927979, 929305, 930291, 931209, 932955, 933658, 934743,\n935693, 936859, 943041, 947546, 947807, 949003, 950521, 951142,\n951171, 951235, 952679, 954845, 955451, 959077, 960089, 961961,\n962065, 963815, 964894, 966329, 966575, 969215, 971509, 971618,\n973063, 973617, 975415, 978835, 979693, 980837, 983103, 983411,\n985025, 986493, 988057, 988418, 989417, 990437, 990698, 990847,\n992525, 994449, 994555, 994903, 997165, 997339, 997694, 998223,\n998963, 1000195, 1004245, 1004663, 1004705, 1005238, 1006733,\n1007083, 1007165, 1012894, 1013173, 1014101, 1014429, 1015835,\n1016738, 1016769, 1017005, 1018381, 1021269, 1023729, 1024309,\n1024426, 1026817, 1026861, 1028489, 1030285, 1030863, 1032226,\n1033815, 1034195, 1036849, 1037153, 1038635, 1039071, 1040763,\n1042685, 1049191, 1053987, 1056757, 1057978, 1058529, 1058743,\n1059022, 1060975, 1061905, 1062761, 1063145, 1063517, 1063713,\n1063865, 1065935, 1066121, 1067857, 1070167, 1070558, 1070797,\n1072478, 1073995, 1076515, 1076537, 1078259, 1083047, 1083121,\n1084039, 1085773, 1085926, 1086891, 1088153, 1089095, 1094331,\n1094951, 1095274, 1096381, 1099825, 1100869, 1101957, 1102045,\n1102551, 1103414, 1104299, 1105819, 1106139, 1106959, 1107197,\n1114366, 1114503, 1114673, 1115569, 1115661, 1117865, 1119371,\n1121549, 1121894, 1123343, 1125655, 1127253, 1131531, 1132058,\n1132681, 1133407, 1135234, 1135345, 1136863, 1137873, 1139677,\n1140377, 1146442, 1147619, 1155865, 1156805, 1157819, 1159171,\n1159543, 1161849, 1162059, 1162213, 1169311, 1171001, 1172354,\n1173381, 1175675, 1178709, 1181257, 1182446, 1183301, 1186835,\n1186923, 1187329, 1191547, 1192895, 1195061, 1196069, 1196506,\n1196569, 1198483, 1199266, 1201915, 1203935, 1206835, 1208938,\n1209271, 1210547, 1211573, 1213511, 1213526, 1213563, 1213682,\n1215245, 1215487, 1215665, 1216171, 1218725, 1225367, 1227993,\n1229695, 1230383, 1234838, 1236273, 1239953, 1242201, 1242989,\n1243839, 1244495, 1245621, 1245811, 1255133, 1255501, 1257295,\n1257949, 1257962, 1258085, 1259871, 1262723, 1263661, 1266325,\n1266749, 1267474, 1268915, 1269359, 1272245, 1272467, 1274539,\n1275879, 1277479, 1279091, 1280015, 1281137, 1281865, 1281974,\n1282633, 1284899, 1285999, 1286965, 1287687, 1292669, 1293853,\n1294033, 1295723, 1299055, 1300233, 1301027, 1302775, 1303985,\n1306137, 1306877, 1310133, 1310278, 1314542, 1315239, 1316978,\n1322893, 1325467, 1326561, 1329621, 1331729, 1334667, 1336783,\n1338623, 1339634, 1340003, 1341395, 1344718, 1344759, 1346891,\n1349341, 1349834, 1350537, 1351166, 1353205, 1354111, 1354886,\n1356277, 1356901, 1358215, 1362635, 1365581, 1368334, 1370369,\n1370386, 1372019, 1376493, 1379035, 1381913, 1386723, 1388645,\n1389223, 1389535, 1390173, 1392377, 1393915, 1396031, 1399205,\n1400273, 1400487, 1403207, 1403225, 1405943, 1406095, 1406587,\n1409785, 1410031, 1412327, 1414127, 1414562, 1416389, 1420445,\n1421319, 1422169, 1423807, 1426713, 1428163, 1430605, 1431382,\n1432417, 1433531, 1433729, 1433905, 1436695, 1437293, 1442399,\n1442926, 1446071, 1447341, 1447873, 1448161, 1448402, 1454089,\n1457395, 1457427, 1459354, 1459759, 1465399, 1466641, 1468987,\n1469194, 1472207, 1482627, 1483339, 1485365, 1486047, 1486667,\n1488403, 1489411, 1492309, 1496541, 1497067, 1497238, 1503593,\n1507121, 1507857, 1508638, 1511653, 1512118, 1512745, 1514071,\n1515839, 1516262, 1518005, 1519341, 1519817, 1524733, 1525107,\n1526657, 1529099, 1531309, 1532795, 1533433, 1536055, 1536639,\n1542863, 1544491, 1548339, 1550485, 1552015, 1552661, 1554925,\n1557905, 1563419, 1565011, 1566461, 1567247, 1571735, 1575917,\n1582009, 1582559, 1583023, 1585285, 1586126, 1586899, 1586967,\n1588533, 1589483, 1600313, 1602403, 1604986, 1605837, 1608717,\n1612682, 1616197, 1616402, 1617122, 1618211, 1619527, 1622695,\n1628889, 1629887, 1635622, 1638505, 1639187, 1641809, 1642911,\n1644155, 1655121, 1657415, 1657466, 1661569, 1663705, 1670053,\n1671241, 1671549, 1675333, 1681691, 1682681, 1682841, 1685509,\n1687829, 1689569, 1690715, 1691701, 1692197, 1694173, 1694407,\n1694615, 1698087, 1698619, 1701343, 1701931, 1702115, 1702851,\n1706215, 1709659, 1711435, 1711463, 1718105, 1719663, 1721573,\n1722202, 1723025, 1727878, 1729937, 1731785, 1734605, 1735327,\n1739881, 1742293, 1750507, 1751629, 1753037, 1756645, 1758531,\n1760213, 1761319, 1764215, 1769261, 1771774, 1772855, 1773593,\n1773669, 1776481, 1778498, 1781143, 1786499, 1790921, 1791946,\n1792021, 1794611, 1794759, 1798899, 1801751, 1804231, 1804786,\n1806091, 1807117, 1811485, 1812446, 1813407, 1818677, 1820289,\n1820523, 1822139, 1823885, 1825579, 1826246, 1834963, 1836595,\n1837585, 1843565, 1847042, 1847677, 1849243, 1852201, 1852257,\n1852462, 1856261, 1857505, 1859435, 1869647, 1870297, 1872431,\n1877953, 1878755, 1879537, 1885885, 1886943, 1891279, 1894487,\n1896455, 1901211, 1901501, 1907689, 1908386, 1910051, 1916291,\n1920983, 1922961, 1924814, 1929254, 1930649, 1933459, 1936415,\n1936765, 1939751, 1944103, 1945349, 1951481, 1952194, 1955635,\n1956449, 1957703, 1958887, 1964515, 1965417, 1968533, 1971813,\n1973699, 1975103, 1975467, 1976777, 1978205, 1979939, 1980218,\n1982251, 1984279, 1987453, 1988623, 1994707, 1999283, 1999591,\n1999898, 2002481, 2002847, 2007467, 2009451, 2011373, 2017077,\n2019127, 2019719, 2022605, 2024751, 2026749, 2032329, 2040353,\n2044471, 2046655, 2048449, 2050841, 2052501, 2055579, 2056223,\n2060455, 2062306, 2066801, 2070107, 2070335, 2071771, 2073065,\n2076035, 2079511, 2092717, 2099785, 2100659, 2111317, 2114698,\n2116543, 2117843, 2120393, 2121843, 2125207, 2126465, 2132273,\n2132902, 2137822, 2141737, 2145913, 2146145, 2146981, 2147073,\n2150477, 2153437, 2155657, 2164389, 2167055, 2167957, 2170679,\n2172603, 2172821, 2176895, 2181067, 2183555, 2188021, 2189031,\n2192065, 2193763, 2200429, 2203791, 2204534, 2207161, 2209339,\n2210351, 2210935, 2212873, 2215457, 2215763, 2216035, 2219399,\n2221271, 2224445, 2234837, 2237411, 2238067, 2241265, 2242454,\n2245857, 2250895, 2257333, 2262957, 2266627, 2268177, 2271773,\n2274393, 2275229, 2284997, 2285258, 2289443, 2293907, 2294155,\n2301817, 2302658, 2304323, 2311205, 2313649, 2316955, 2320381,\n2329187, 2330038, 2334145, 2336191, 2338919, 2340503, 2343314,\n2345057, 2357381, 2359379, 2362789, 2363153, 2363486, 2367001,\n2368333, 2368865, 2372461, 2377855, 2379189, 2382961, 2386241,\n2388701, 2396009, 2397106, 2399567, 2405347, 2407479, 2412235,\n2416193, 2419023, 2422109, 2424499, 2424603, 2425683, 2428447,\n2429045, 2442862, 2444923, 2445773, 2453433, 2459303, 2461462,\n2466827, 2469901, 2471045, 2473211, 2476441, 2476745, 2481997,\n2482597, 2486199, 2494235, 2497759, 2501369, 2501917, 2505919,\n2513095, 2519959, 2532235, 2536079, 2541845, 2542903, 2544971,\n2551594, 2553439, 2561065, 2571233, 2572619, 2580565, 2580991,\n2581934, 2582827, 2583303, 2585843, 2589151, 2591817, 2592629,\n2598977, 2600507, 2603209, 2611037, 2612233, 2614447, 2618629,\n2618998, 2624369, 2630257, 2631218, 2636953, 2640239, 2641171,\n2644213, 2644945, 2647555, 2648657, 2655037, 2657661, 2667747,\n2673539, 2674463, 2676395, 2678741, 2681195, 2681869, 2687919,\n2688907, 2700451, 2705329, 2707063, 2707179, 2709239, 2710981,\n2711471, 2714815, 2718669, 2732561, 2733511, 2737889, 2738185,\n2739369, 2750321, 2758535, 2760953, 2764177, 2766049, 2767787,\n2769487, 2770563, 2771431, 2778693, 2785915, 2791613, 2792387,\n2798939, 2804735, 2816033, 2820103, 2827442, 2830145, 2831323,\n2831647, 2838085, 2857921, 2861062, 2862579, 2865317, 2866105,\n2868767, 2884637, 2886689, 2887221, 2893757, 2893881, 2898469,\n2902291, 2904739, 2906449, 2915674, 2922029, 2926703, 2928291,\n2930885, 2937874, 2939699, 2951069, 2951897, 2956115, 2970327,\n2977051, 2986159, 2988073, 2991265, 2997383, 2997797, 2998165,\n2999847, 3004603, 3005249, 3007693, 3022345, 3022438, 3025541,\n3027973, 3033815, 3033877, 3034205, 3047653, 3055019, 3056977,\n3066613, 3068891, 3078251, 3082729, 3085771, 3087095, 3090277,\n3093409, 3093459, 3095309, 3101527, 3102449, 3114223, 3120469,\n3124979, 3130231, 3137771, 3140486, 3144905, 3147331, 3151253,\n3154591, 3159637, 3160729, 3168685, 3170366, 3172047, 3192101,\n3197207, 3199353, 3204935, 3206269, 3206733, 3211817, 3230882,\n3234199, 3235687, 3243737, 3246473, 3255482, 3267803, 3268967,\n3271021, 3275695, 3276971, 3286355, 3292445, 3295331, 3299179,\n3306801, 3307837, 3308987, 3316411, 3328039, 3328997, 3332849,\n3339611, 3346109, 3349085, 3361795, 3363681, 3372149, 3374585,\n3377129, 3377543, 3377915, 3379321, 3381487, 3387215, 3390361,\n3400663, 3411067, 3414433, 3415997, 3420835, 3424361, 3425965,\n3427391, 3427887, 3445403, 3453839, 3453987, 3457817, 3459463,\n3467443, 3479998, 3487583, 3487627, 3491929, 3494413, 3495057,\n3502969, 3514971, 3516263, 3518333, 3531359, 3536405, 3537193,\n3542851, 3545129, 3545229, 3558583, 3569929, 3578455, 3585491,\n3595659, 3604711, 3607315, 3607426, 3610477, 3612791, 3614693,\n3617141, 3621005, 3624179, 3628411, 3637933, 3646313, 3648385,\n3651583, 3655847, 3660151, 3662497, 3664293, 3665441, 3672985,\n3683017, 3692193, 3693157, 3702923, 3706577, 3719573, 3728153,\n3735407, 3743095, 3744653, 3746953, 3748322, 3753673, 3765157,\n3771595, 3779309, 3779831, 3780295, 3789227, 3790655, 3800741,\n3809927, 3816131, 3817879, 3827227, 3827391, 3833459, 3856214,\n3860173, 3861949, 3864619, 3872901, 3881273, 3900281, 3915083,\n3926629, 3928497, 3929941, 3933137, 3946813, 3946827, 3962203,\n3965315, 3973319, 3985267, 3993743, 3997418, 4012465, 4012547,\n4024823, 4031261, 4031705, 4035239, 4039951, 4040509, 4041005,\n4042687, 4042805, 4050553, 4055843, 4081181, 4086511, 4089055,\n4090757, 4093379, 4103239, 4121741, 4131833, 4133261, 4138561,\n4143665, 4148947, 4153546, 4170751, 4172201, 4180963, 4187771,\n4197431, 4219007, 4221811, 4231283, 4241163, 4247341, 4247887,\n4260113, 4260883, 4273102, 4274803, 4277489, 4291593, 4302397,\n4305505, 4309279, 4314311, 4319695, 4321933, 4325633, 4352051,\n4358341, 4373511, 4375681, 4392287, 4395859, 4402867, 4405999,\n4406811, 4416787, 4425499, 4429435, 4433549, 4436159, 4446245,\n4449731, 4458389, 4459939, 4467073, 4479865, 4486909, 4502641,\n4509973, 4511965, 4531115, 4533001, 4533657, 4554737, 4560743,\n4565615, 4567277, 4574953, 4585973, 4586959, 4600897, 4602578,\n4609423, 4617605, 4617931, 4619527, 4621643, 4631155, 4632959,\n4672841, 4678223, 4688719, 4706513, 4709861, 4710729, 4721393,\n4721519, 4724419, 4729081, 4739311, 4742101, 4755549, 4757297,\n4767521, 4770965, 4775147, 4777721, 4780723, 4789169, 4793269,\n4796351, 4803821, 4812035, 4821877, 4822543, 4823135, 4829513,\n4834531, 4846323, 4864057, 4871087, 4875277, 4880485, 4883223,\n4884763, 4890467, 4893779, 4903301, 4930783, 4936409, 4940377,\n4950545, 4950967, 4951969, 4955143, 4999745, 5009837, 5034679,\n5035589, 5047141, 5050241, 5069407, 5084651, 5097301, 5100154,\n5107739, 5135119, 5142179, 5143333, 5155765, 5161217, 5178013,\n5211503, 5219997, 5222587, 5231281, 5240333, 5258773, 5271649,\n5276851, 5280233, 5286745, 5292413, 5296877, 5306917, 5316979,\n5321303, 5323153, 5332255, 5343161, 5343899, 5344555, 5357183,\n5382871, 5389969, 5397691, 5411139, 5436299, 5448839, 5459441,\n5487317, 5511335, 5517163, 5528809, 5538101, 5551441, 5570917,\n5579977, 5590127, 5592059, 5606135, 5617451, 5621447, 5622483,\n5634343, 5635211, 5644387, 5651522, 5656597, 5657407, 5659927,\n5677243, 5690267, 5699369, 5713145, 5724677, 5748431, 5756645,\n5761691, 5768419, 5783557, 5784321, 5787191, 5801131, 5818879,\n5824621, 5825095, 5827289, 5837009, 5841557, 5852327, 5858285,\n5888069, 5891843, 5896579, 5897657, 5898629, 5908715, 5920039,\n5964803, 5972593, 5975653, 5992765, 5996127, 5998331, 6009133,\n6024007, 6024083, 6027707, 6047573, 6068777, 6107155, 6129013,\n6153655, 6159049, 6166241, 6170417, 6182423, 6201209, 6224743,\n6226319, 6229171, 6230319, 6243787, 6244423, 6247789, 6268121,\n6271811, 6298177, 6305431, 6315517, 6316751, 6322079, 6343561,\n6378985, 6387767, 6391861, 6409653, 6412009, 6424717, 6439537,\n6447947, 6454835, 6464647, 6468037, 6483617, 6485011, 6503453,\n6528799, 6534047, 6547495, 6578045, 6580783, 6583811, 6585001,\n6591499, 6595963, 6608797, 6649159, 6658769, 6674393, 6675251,\n6679351, 6704017, 6709469, 6725897, 6736849, 6752389, 6791609,\n6832679, 6876857, 6883643, 6903867, 6918791, 6930763, 6958627,\n6971107, 6979061, 6982823, 6999643, 7005547, 7039139, 7048421,\n7050857, 7058519, 7065853, 7068605, 7119281, 7132231, 7139269,\n7152655, 7166363, 7172191, 7206529, 7218071, 7229981, 7243379,\n7289185, 7292311, 7296893, 7344685, 7358377, 7359707, 7367987,\n7379021, 7395949, 7401443, 7424087, 7431413, 7434817, 7451873,\n7453021, 7464397, 7465157, 7482377, 7517179, 7525837, 7534519,\n7537123, 7556095, 7563113, 7620301, 7624109, 7650231, 7653043,\n7685899, 7715869, 7777289, 7780091, 7795229, 7800127, 7829729,\n7848589, 7851215, 7858097, 7867273, 7872601, 7877647, 7887919,\n7888933, 7903283, 7925915, 7936093, 7947563, 7966211, 7979183,\n7998403, 8026447, 8054141, 8059303, 8077205, 8080567, 8084707,\n8115389, 8138705, 8155133, 8155351, 8176753, 8201599, 8234809,\n8238581, 8258753, 8272201, 8297509, 8316649, 8329847, 8332831,\n8339441, 8389871, 8401553, 8420933, 8448337, 8452891, 8477283,\n8480399, 8516807, 8544523, 8550017, 8553401, 8560357, 8609599,\n8615117, 8642273, 8675071, 8699995, 8707621, 8717789, 8723693,\n8740667, 8773921, 8782579, 8804429, 8806759, 8827423, 8869751,\n8890211, 8894171, 8907509, 8909119, 8930579, 8992813, 8995921,\n9001687, 9018565, 9035849, 9036769, 9099743, 9116063, 9166493,\n9194653, 9209263, 9230371, 9303983, 9309829, 9370805, 9379019,\n9389971, 9411631, 9414613, 9472111, 9478093, 9485801, 9503329,\n9523541, 9536099, 9549761, 9613007, 9622493, 9640535, 9649489,\n9659011, 9732047, 9744757, 9781739, 9806147, 9828767, 9855703,\n9872267, 9896047, 9926323, 9965009, 9968453, 9993545, 10013717,\n10044353, 10050791, 10060709, 10083499, 10158731, 10170301,\n10188541, 10193761, 10204859, 10232447, 10275973, 10282559,\n10309819, 10314971, 10316297, 10354117, 10383865, 10405103,\n10432409, 10482433, 10496123, 10506613, 10511293, 10553113,\n10578533, 10586477, 10610897, 10631543, 10652251, 10657993,\n10682755, 10692677, 10737067, 10754551, 10773529, 10784723,\n10891199, 10896779, 10938133, 10991701, 10999439, 11096281,\n11137363, 11173607, 11194313, 11231207, 11233237, 11308087,\n11342683, 11366807, 11386889, 11393027, 11394187, 11430103,\n11473481, 11473589, 11484911, 11506445, 11516531, 11528497,\n11529979, 11560237, 11630839, 11647649, 11648281, 11692487,\n11730961, 11731109, 11758021, 11780899, 11870599, 11950639,\n12005773, 12007943, 12023777, 12041003, 12124937, 12166747,\n12178753, 12179993, 12264871, 12311417, 12333497, 12404509,\n12447641, 12488149, 12511291, 12540151, 12568919, 12595651,\n12625991, 12664619, 12689261, 12713977, 12726523, 12750385,\n12774821, 12815209, 12823423, 12836077, 12853003, 12871417,\n12888227, 12901781, 12999173, 12999337, 13018667, 13055191,\n13119127, 13184083, 13306099, 13404989, 13435741, 13438339,\n13482071, 13496749, 13538041, 13590803, 13598129, 13642381,\n13707797, 13739417, 13745537, 13759819, 13791559, 13863863,\n13895843, 13902787, 13955549, 13957343, 13990963, 14033767,\n14088461, 14128805, 14200637, 14223761, 14329471, 14332061,\n14365121, 14404489, 14466563, 14471699, 14537411, 14575951,\n14638717, 14686963, 14742701, 14854177, 14955857, 14967277,\n15060079, 15068197, 15117233, 15145247, 15231541, 15247367,\n15320479, 15340681, 15355819, 15362659, 15405791, 15464257,\n15523091, 15538409, 15550931, 15581189, 15699857, 15735841,\n15745927, 15759439, 15878603, 15881473, 15999503, 16036207,\n16109023, 16158307, 16221281, 16267463, 16360919, 16398659,\n16414841, 16460893, 16585361, 16593649, 16623409, 16656623,\n16782571, 16831853, 16895731, 16976747, 16999133, 17023487,\n17102917, 17145467, 17218237, 17272673, 17349337, 17389357,\n17437013, 17529601, 17546899, 17596127, 17598389, 17769851,\n17850539, 17905151, 17974933, 18129667, 18171487, 18240449,\n18285733, 18327913, 18378373, 18457339, 18545843, 18588623,\n18596903, 18738539, 18809653, 18812071, 18951881, 18999031,\n19060859, 19096181, 19139989, 19424693, 19498411, 19572593,\n19591907, 19645847, 19780327, 19805323, 19840843, 19870597,\n19918169, 20089631, 20262569, 20309309, 20375401, 20413159,\n20452727, 20607379, 20615771, 20755039, 20764327, 20843129,\n20922427, 20943073, 21000733, 21001829, 21160633, 21209177,\n21240983, 21303313, 21688549, 21709951, 21875251, 21925711,\n21946439, 21985799, 22135361, 22186421, 22261483, 22365353,\n22450231, 22453117, 22619987, 22772507, 22844503, 22998827,\n23207189, 23272297, 23383889, 23437829, 23448269, 23502061,\n23716519, 24033257, 24240143, 24319027, 24364093, 24528373,\n24584953, 24783229, 24877283, 24880481, 24971929, 24996571,\n25054231, 25065391, 25314179, 25352141, 25690723, 25788221,\n25983217, 26169397, 26280467, 26480567, 26694131, 26782109,\n26795437, 26860699, 26948111, 26998049, 27180089, 27462497,\n27566719, 27671597, 27698903, 27775163, 27909803, 27974183,\n28050847, 28092913, 28306813, 28713161, 28998521, 29343331,\n29579983, 29692241, 29834617, 29903437, 29916757, 30118477,\n30259007, 30663121, 30693379, 30927079, 30998419, 31083371,\n31860737, 31965743, 32515583, 32777819, 32902213, 33059981,\n33136241, 33151001, 33388541, 33530251, 33785551, 33978053,\n34170277, 34270547, 34758037, 35305141, 35421499, 35609059,\n35691199, 36115589, 36321367, 36459209, 36634033, 36734893,\n36998113, 37155143, 37438043, 37864361, 37975471, 38152661,\n39121913, 39458687, 39549707, 40019977, 40594469, 40783879,\n40997909, 41485399, 42277273, 42599173, 43105703, 43351309,\n43724491, 43825351, 44346461, 45192947, 45537047, 45970307,\n46847789, 47204489, 47765779, 48037937, 48451463, 48677533,\n49140673, 50078671, 50459971, 52307677, 52929647, 53689459,\n53939969, 54350669, 55915103, 57962561, 58098991, 58651771,\n59771317, 60226417, 61959979, 64379963, 64992503, 66233081,\n66737381, 71339959, 73952233, 76840601, 79052387, 81947069,\n85147693, 87598591, 94352849, 104553157];\n","/**\n * A Map <k,v> containing the card rank letter an retrieve his order plus his\n * prime number associated\n * Example \"9\" returns is the array [7, 19]\n * 7 is the order\n * 19 his prime number\n */\n\nmodule.exports = new Map([\n ['2', [0, 2]],\n ['3', [1, 3]],\n ['4', [2, 5]],\n ['5', [3, 7]],\n ['6', [4, 11]],\n ['7', [5, 13]],\n ['8', [6, 17]],\n ['9', [7, 19]],\n ['T', [8, 23]],\n ['J', [9, 29]],\n ['Q', [10, 31]],\n ['K', [11, 37]],\n ['A', [12, 41]],\n]);\n","/**\n * A Map of each suit : {C = Clubs, D = Diamond, H = Heart, S = Spades}\n */\n\nmodule.exports = new Map([\n ['C', 0x8000],\n ['D', 0x4000],\n ['H', 0x2000],\n ['S', 0x1000],\n]);\n","/*\n * this is a table lookup for all non-flush hands consisting\n * of five unique ranks (i.e. either Straights or High Card\n * hands). it's similar to the above \"flushes\" array.\n */\n\nmodule.exports = [\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 1608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 7462, 0, 0, 0, 0, 0, 0, 0, 7461, 0, 0, 0, 7460, 0,\n7459, 1607, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7458,\n0, 0, 0, 0, 0, 0, 0, 7457, 0, 0, 0, 7456, 0, 7455, 7454, 0, 0, 0,\n0, 0, 0, 0, 0, 7453, 0, 0, 0, 7452, 0, 7451, 7450, 0, 0, 0, 0,\n7449, 0, 7448, 7447, 0, 0, 7446, 7445, 0, 1606, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7444, 0, 0, 0, 0, 0, 0, 0,\n7443, 0, 0, 0, 7442, 0, 7441, 7440, 0, 0, 0, 0, 0, 0, 0, 0, 7439,\n0, 0, 0, 7438, 0, 7437, 7436, 0, 0, 0, 0, 7435, 0, 7434, 7433, 0,\n0, 7432, 7431, 0, 7430, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7429, 0, 0,\n0, 7428, 0, 7427, 7426, 0, 0, 0, 0, 7425, 0, 7424, 7423, 0, 0,\n7422, 7421, 0, 7420, 0, 0, 0, 0, 0, 0, 7419, 0, 7418, 7417, 0, 0,\n7416, 7415, 0, 7414, 0, 0, 0, 0, 7413, 7412, 0, 7411, 0, 0, 0,\n1605, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 7410, 0, 0, 0, 0, 0, 0, 0, 7409, 0, 0, 0, 7408, 0, 7407,\n7406, 0, 0, 0, 0, 0, 0, 0, 0, 7405, 0, 0, 0, 7404, 0, 7403, 7402,\n0, 0, 0, 0, 7401, 0, 7400, 7399, 0, 0, 7398, 7397, 0, 7396, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 7395, 0, 0, 0, 7394, 0, 7393, 7392, 0, 0,\n0, 0, 7391, 0, 7390, 7389, 0, 0, 7388, 7387, 0, 7386, 0, 0, 0, 0,\n0, 0, 7385, 0, 7384, 7383, 0, 0, 7382, 7381, 0, 7380, 0, 0, 0, 0,\n7379, 7378, 0, 7377, 0, 0, 0, 7376, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 7375, 0, 0, 0, 7374, 0, 7373, 7372, 0, 0, 0, 0, 7371,\n0, 7370, 7369, 0, 0, 7368, 7367, 0, 7366, 0, 0, 0, 0, 0, 0, 7365,\n0, 7364, 7363, 0, 0, 7362, 7361, 0, 7360, 0, 0, 0, 0, 7359, 7358,\n0, 7357, 0, 0, 0, 7356, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7355, 0,\n7354, 7353, 0, 0, 7352, 7351, 0, 7350, 0, 0, 0, 0, 7349, 7348, 0,\n7347, 0, 0, 0, 7346, 0, 0, 0, 0, 0, 0, 0, 0, 7345, 7344, 0, 7343,\n0, 0, 0, 7342, 0, 0, 0, 0, 0, 0, 0, 1604, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n7341, 0, 0, 0, 0, 0, 0, 0, 7340, 0, 0, 0, 7339, 0, 7338, 7337, 0,\n0, 0, 0, 0, 0, 0, 0, 7336, 0, 0, 0, 7335, 0, 7334, 7333, 0, 0, 0,\n0, 7332, 0, 7331, 7330, 0, 0, 7329, 7328, 0, 7327, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 7326, 0, 0, 0, 7325, 0, 7324, 7323, 0, 0, 0, 0,\n7322, 0, 7321, 7320, 0, 0, 7319, 7318, 0, 7317, 0, 0, 0, 0, 0, 0,\n7316, 0, 7315, 7314, 0, 0, 7313, 7312, 0, 7311, 0, 0, 0, 0, 7310,\n7309, 0, 7308, 0, 0, 0, 7307, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 7306, 0, 0, 0, 7305, 0, 7304, 7303, 0, 0, 0, 0, 7302, 0,\n7301, 7300, 0, 0, 7299, 7298, 0, 7297, 0, 0, 0, 0, 0, 0, 7296, 0,\n7295, 7294, 0, 0, 7293, 7292, 0, 7291, 0, 0, 0, 0, 7290, 7289, 0,\n7288, 0, 0, 0, 7287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7286, 0, 7285,\n7284, 0, 0, 7283, 7282, 0, 7281, 0, 0, 0, 0, 7280, 7279, 0, 7278,\n0, 0, 0, 7277, 0, 0, 0, 0, 0, 0, 0, 0, 7276, 7275, 0, 7274, 0, 0,\n0, 7273, 0, 0, 0, 0, 0, 0, 0, 7272, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7271, 0, 0, 0, 7270, 0, 7269,\n7268, 0, 0, 0, 0, 7267, 0, 7266, 7265, 0, 0, 7264, 7263, 0, 7262,\n0, 0, 0, 0, 0, 0, 7261, 0, 7260, 7259, 0, 0, 7258, 7257, 0, 7256,\n0, 0, 0, 0, 7255, 7254, 0, 7253, 0, 0, 0, 7252, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 7251, 0, 7250, 7249, 0, 0, 7248, 7247, 0, 7246, 0, 0,\n0, 0, 7245, 7244, 0, 7243, 0, 0, 0, 7242, 0, 0, 0, 0, 0, 0, 0, 0,\n7241, 7240, 0, 7239, 0, 0, 0, 7238, 0, 0, 0, 0, 0, 0, 0, 7237, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7236, 0, 7235,\n7234, 0, 0, 7233, 7232, 0, 7231, 0, 0, 0, 0, 7230, 7229, 0, 7228,\n0, 0, 0, 7227, 0, 0, 0, 0, 0, 0, 0, 0, 7226, 7225, 0, 7224, 0, 0,\n0, 7223, 0, 0, 0, 0, 0, 0, 0, 7222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 7221, 7220, 0, 7219, 0, 0, 0, 7218, 0, 0, 0, 0,\n0, 0, 0, 7217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1603,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 7216, 0, 0, 0, 0, 0, 0, 0, 7215, 0, 0, 0, 7214, 0, 7213,\n7212, 0, 0, 0, 0, 0, 0, 0, 0, 7211, 0, 0, 0, 7210, 0, 7209, 7208,\n0, 0, 0, 0, 7207, 0, 7206, 7205, 0, 0, 7204, 7203, 0, 7202, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 7201, 0, 0, 0, 7200, 0, 7199, 7198, 0, 0,\n0, 0, 7197, 0, 7196, 7195, 0, 0, 7194, 7193, 0, 7192, 0, 0, 0, 0,\n0, 0, 7191, 0, 7190, 7189, 0, 0, 7188, 7187, 0, 7186, 0, 0, 0, 0,\n7185, 7184, 0, 7183, 0, 0, 0, 7182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 7181, 0, 0, 0, 7180, 0, 7179, 7178, 0, 0, 0, 0, 7177,\n0, 7176, 7175, 0, 0, 7174, 7173, 0, 7172, 0, 0, 0, 0, 0, 0, 7171,\n0, 7170, 7169, 0, 0, 7168, 7167, 0, 7166, 0, 0, 0, 0, 7165, 7164,\n0, 7163, 0, 0, 0, 7162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7161, 0,\n7160, 7159, 0, 0, 7158, 7157, 0, 7156, 0, 0, 0, 0, 7155, 7154, 0,\n7153, 0, 0, 0, 7152, 0, 0, 0, 0, 0, 0, 0, 0, 7151, 7150, 0, 7149,\n0, 0, 0, 7148, 0, 0, 0, 0, 0, 0, 0, 7147, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7146, 0, 0, 0, 7145, 0,\n7144, 7143, 0, 0, 0, 0, 7142, 0, 7141, 7140, 0, 0, 7139, 7138, 0,\n7137, 0, 0, 0, 0, 0, 0, 7136, 0, 7135, 7134, 0, 0, 7133, 7132, 0,\n7131, 0, 0, 0, 0, 7130, 7129, 0, 7128, 0, 0, 0, 7127, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 7126, 0, 7125, 7124, 0, 0, 7123, 7122, 0, 7121,\n0, 0, 0, 0, 7120, 7119, 0, 7118, 0, 0, 0, 7117, 0, 0, 0, 0, 0, 0,\n0, 0, 7116, 7115, 0, 7114, 0, 0, 0, 7113, 0, 0, 0, 0, 0, 0, 0,\n7112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7111,\n0, 7110, 7109, 0, 0, 7108, 7107, 0, 7106, 0, 0, 0, 0, 7105, 7104,\n0, 7103, 0, 0, 0, 7102, 0, 0, 0, 0, 0, 0, 0, 0, 7101, 7100, 0,\n7099, 0, 0, 0, 7098, 0, 0, 0, 0, 0, 0, 0, 7097, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7096, 7095, 0, 7094, 0, 0, 0, 7093,\n0, 0, 0, 0, 0, 0, 0, 7092, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 7091, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7090,\n0, 0, 0, 7089, 0, 7088, 7087, 0, 0, 0, 0, 7086, 0, 7085, 7084, 0,\n0, 7083, 7082, 0, 7081, 0, 0, 0, 0, 0, 0, 7080, 0, 7079, 7078, 0,\n0, 7077, 7076, 0, 7075, 0, 0, 0, 0, 7074, 7073, 0, 7072, 0, 0, 0,\n7071, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7070, 0, 7069, 7068, 0, 0,\n7067, 7066, 0, 7065, 0, 0, 0, 0, 7064, 7063, 0, 7062, 0, 0, 0,\n7061, 0, 0, 0, 0, 0, 0, 0, 0, 7060, 7059, 0, 7058, 0, 0, 0, 7057,\n0, 0, 0, 0, 0, 0, 0, 7056, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 7055, 0, 7054, 7053, 0, 0, 7052, 7051, 0, 7050, 0,\n0, 0, 0, 7049, 7048, 0, 7047, 0, 0, 0, 7046, 0, 0, 0, 0, 0, 0, 0,\n0, 7045, 7044, 0, 7043, 0, 0, 0, 7042, 0, 0, 0, 0, 0, 0, 0, 7041,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7040, 7039, 0,\n7038, 0, 0, 0, 7037, 0, 0, 0, 0, 0, 0, 0, 7036, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 7035, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 7034, 0, 7033, 7032, 0, 0, 7031, 7030, 0, 7029, 0, 0, 0, 0,\n7028, 7027, 0, 7026, 0, 0, 0, 7025, 0, 0, 0, 0, 0, 0, 0, 0, 7024,\n7023, 0, 7022, 0, 0, 0, 7021, 0, 0, 0, 0, 0, 0, 0, 7020, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7019, 7018, 0, 7017, 0, 0,\n0, 7016, 0, 0, 0, 0, 0, 0, 0, 7015, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 7014, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7013, 7012, 0,\n7011, 0, 0, 0, 7010, 0, 0, 0, 0, 0, 0, 0, 7009, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 7008, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1602,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7007, 0, 0, 0, 0, 0, 0, 0,\n7006, 0, 0, 0, 7005, 0, 7004, 7003, 0, 0, 0, 0, 0, 0, 0, 0, 7002,\n0, 0, 0, 7001, 0, 7000, 6999, 0, 0, 0, 0, 6998, 0, 6997, 6996, 0,\n0, 6995, 6994, 0, 6993, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6992, 0, 0,\n0, 6991, 0, 6990, 6989, 0, 0, 0, 0, 6988, 0, 6987, 6986, 0, 0,\n6985, 6984, 0, 6983, 0, 0, 0, 0, 0, 0, 6982, 0, 6981, 6980, 0, 0,\n6979, 6978, 0, 6977, 0, 0, 0, 0, 6976, 6975, 0, 6974, 0, 0, 0,\n6973, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6972, 0, 0, 0,\n6971, 0, 6970, 6969, 0, 0, 0, 0, 6968, 0, 6967, 6966, 0, 0, 6965,\n6964, 0, 6963, 0, 0, 0, 0, 0, 0, 6962, 0, 6961, 6960, 0, 0, 6959,\n6958, 0, 6957, 0, 0, 0, 0, 6956, 6955, 0, 6954, 0, 0, 0, 6953, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 6952, 0, 6951, 6950, 0, 0, 6949, 6948,\n0, 6947, 0, 0, 0, 0, 6946, 6945, 0, 6944, 0, 0, 0, 6943, 0, 0, 0,\n0, 0, 0, 0, 0, 6942, 6941, 0, 6940, 0, 0, 0, 6939, 0, 0, 0, 0, 0,\n0, 0, 6938, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6937, 0, 0, 0, 6936, 0, 6935, 6934, 0, 0, 0, 0, 6933,\n0, 6932, 6931, 0, 0, 6930, 6929, 0, 6928, 0, 0, 0, 0, 0, 0, 6927,\n0, 6926, 6925, 0, 0, 6924, 6923, 0, 6922, 0, 0, 0, 0, 6921, 6920,\n0, 6919, 0, 0, 0, 6918, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6917, 0,\n6916, 6915, 0, 0, 6914, 6913, 0, 6912, 0, 0, 0, 0, 6911, 6910, 0,\n6909, 0, 0, 0, 6908, 0, 0, 0, 0, 0, 0, 0, 0, 6907, 6906, 0, 6905,\n0, 0, 0, 6904, 0, 0, 0, 0, 0, 0, 0, 6903, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6902, 0, 6901, 6900, 0, 0, 6899,\n6898, 0, 6897, 0, 0, 0, 0, 6896, 6895, 0, 6894, 0, 0, 0, 6893, 0,\n0, 0, 0, 0, 0, 0, 0, 6892, 6891, 0, 6890, 0, 0, 0, 6889, 0, 0, 0,\n0, 0, 0, 0, 6888, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n6887, 6886, 0, 6885, 0, 0, 0, 6884, 0, 0, 0, 0, 0, 0, 0, 6883, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6882, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6881, 0, 0, 0, 6880, 0, 6879, 6878,\n0, 0, 0, 0, 6877, 0, 6876, 6875, 0, 0, 6874, 6873, 0, 6872, 0, 0,\n0, 0, 0, 0, 6871, 0, 6870, 6869, 0, 0, 6868, 6867, 0, 6866, 0, 0,\n0, 0, 6865, 6864, 0, 6863, 0, 0, 0, 6862, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 6861, 0, 6860, 6859, 0, 0, 6858, 6857, 0, 6856, 0, 0, 0, 0,\n6855, 6854, 0, 6853, 0, 0, 0, 6852, 0, 0, 0, 0, 0, 0, 0, 0, 6851,\n6850, 0, 6849, 0, 0, 0, 6848, 0, 0, 0, 0, 0, 0, 0, 6847, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6846, 0, 6845, 6844,\n0, 0, 6843, 6842, 0, 6841, 0, 0, 0, 0, 6840, 6839, 0, 6838, 0, 0,\n0, 6837, 0, 0, 0, 0, 0, 0, 0, 0, 6836, 6835, 0, 6834, 0, 0, 0,\n6833, 0, 0, 0, 0, 0, 0, 0, 6832, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 6831, 6830, 0, 6829, 0, 0, 0, 6828, 0, 0, 0, 0, 0,\n0, 0, 6827, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6826, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6825, 0, 6824, 6823, 0, 0, 6822,\n6821, 0, 6820, 0, 0, 0, 0, 6819, 6818, 0, 6817, 0, 0, 0, 6816, 0,\n0, 0, 0, 0, 0, 0, 0, 6815, 6814, 0, 6813, 0, 0, 0, 6812, 0, 0, 0,\n0, 0, 0, 0, 6811, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n6810, 6809, 0, 6808, 0, 0, 0, 6807, 0, 0, 0, 0, 0, 0, 0, 6806, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6805, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6804, 6803, 0, 6802, 0, 0, 0, 6801, 0, 0, 0, 0, 0, 0,\n0, 6800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6799, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 6798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6797, 0, 0, 0, 6796, 0,\n6795, 6794, 0, 0, 0, 0, 6793, 0, 6792, 6791, 0, 0, 6790, 6789, 0,\n6788, 0, 0, 0, 0, 0, 0, 6787, 0, 6786, 6785, 0, 0, 6784, 6783, 0,\n6782, 0, 0, 0, 0, 6781, 6780, 0, 6779, 0, 0, 0, 6778, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 6777, 0, 6776, 6775, 0, 0, 6774, 6773, 0, 6772,\n0, 0, 0, 0, 6771, 6770, 0, 6769, 0, 0, 0, 6768, 0, 0, 0, 0, 0, 0,\n0, 0, 6767, 6766, 0, 6765, 0, 0, 0, 6764, 0, 0, 0, 0, 0, 0, 0,\n6763, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6762,\n0, 6761, 6760, 0, 0, 6759, 6758, 0, 6757, 0, 0, 0, 0, 6756, 6755,\n0, 6754, 0, 0, 0, 6753, 0, 0, 0, 0, 0, 0, 0, 0, 6752, 6751, 0,\n6750, 0, 0, 0, 6749, 0, 0, 0, 0, 0, 0, 0, 6748, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6747, 6746, 0, 6745, 0, 0, 0, 6744,\n0, 0, 0, 0, 0, 0, 0, 6743, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 6742, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6741, 0, 6740,\n6739, 0, 0, 6738, 6737, 0, 6736, 0, 0, 0, 0, 6735, 6734, 0, 6733,\n0, 0, 0, 6732, 0, 0, 0, 0, 0, 0, 0, 0, 6731, 6730, 0, 6729, 0, 0,\n0, 6728, 0, 0, 0, 0, 0, 0, 0, 6727, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 6726, 6725, 0, 6724, 0, 0, 0, 6723, 0, 0, 0, 0,\n0, 0, 0, 6722, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6721,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6720, 6719, 0, 6718, 0, 0, 0, 6717,\n0, 0, 0, 0, 0, 0, 0, 6716, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 6715, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6714, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6713, 0, 6712, 6711,\n0, 0, 6710, 6709, 0, 6708, 0, 0, 0, 0, 6707, 6706, 0, 6705, 0, 0,\n0, 6704, 0, 0, 0, 0, 0, 0, 0, 0, 6703, 6702, 0, 6701, 0, 0, 0,\n6700, 0, 0, 0, 0, 0, 0, 0, 6699, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 6698, 6697, 0, 6696, 0, 0, 0, 6695, 0, 0, 0, 0, 0,\n0, 0, 6694, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6693, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 6692, 6691, 0, 6690, 0, 0, 0, 6689, 0,\n0, 0, 0, 0, 0, 0, 6688, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 6687, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6686, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6685, 6684, 0, 6683, 0, 0, 0,\n6682, 0, 0, 0, 0, 0, 0, 0, 6681, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6679, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1601, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 1609, 0, 0, 0, 0, 0, 0, 0, 6678, 0, 0, 0, 6677, 0,\n6676, 6675, 0, 0, 0, 0, 0, 0, 0, 0, 6674, 0, 0, 0, 6673, 0, 6672,\n6671, 0, 0, 0, 0, 6670, 0, 6669, 6668, 0, 0, 6667, 6666, 0, 6665,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6664, 0, 0, 0, 6663, 0, 6662, 6661,\n0, 0, 0, 0, 6660, 0, 6659, 6658, 0, 0, 6657, 6656, 0, 6655, 0, 0,\n0, 0, 0, 0, 6654, 0, 6653, 6652, 0, 0, 6651, 6650, 0, 6649, 0, 0,\n0, 0, 6648, 6647, 0, 6646, 0, 0, 0, 6645, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 6644, 0, 0, 0, 6643, 0, 6642, 6641, 0, 0, 0, 0,\n6640, 0, 6639, 6638, 0, 0, 6637, 6636, 0, 6635, 0, 0, 0, 0, 0, 0,\n6634, 0, 6633, 6632, 0, 0, 6631, 6630, 0, 6629, 0, 0, 0, 0, 6628,\n6627, 0, 6626, 0, 0, 0, 6625, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6624,\n0, 6623, 6622, 0, 0, 6621, 6620, 0, 6619, 0, 0, 0, 0, 6618, 6617,\n0, 6616, 0, 0, 0, 6615, 0, 0, 0, 0, 0, 0, 0, 0, 6614, 6613, 0,\n6612, 0, 0, 0, 6611, 0, 0, 0, 0, 0, 0, 0, 6610, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6609, 0, 0, 0,\n6608, 0, 6607, 6606, 0, 0, 0, 0, 6605, 0, 6604, 6603, 0, 0, 6602,\n6601, 0, 6600, 0, 0, 0, 0, 0, 0, 6599, 0, 6598, 6597, 0, 0, 6596,\n6595, 0, 6594, 0, 0, 0, 0, 6593, 6592, 0, 6591, 0, 0, 0, 6590, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 6589, 0, 6588, 6587, 0, 0, 6586, 6585,\n0, 6584, 0, 0, 0, 0, 6583, 6582, 0, 6581, 0, 0, 0, 6580, 0, 0, 0,\n0, 0, 0, 0, 0, 6579, 6578, 0, 6577, 0, 0, 0, 6576, 0, 0, 0, 0, 0,\n0, 0, 6575, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n6574, 0, 6573, 6572, 0, 0, 6571, 6570, 0, 6569, 0, 0, 0, 0, 6568,\n6567, 0, 6566, 0, 0, 0, 6565, 0, 0, 0, 0, 0, 0, 0, 0, 6564, 6563,\n0, 6562, 0, 0, 0, 6561, 0, 0, 0, 0, 0, 0, 0, 6560, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6559, 6558, 0, 6557, 0, 0, 0,\n6556, 0, 0, 0, 0, 0, 0, 0, 6555, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6554, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n6553, 0, 0, 0, 6552, 0, 6551, 6550, 0, 0, 0, 0, 6549, 0, 6548,\n6547, 0, 0, 6546, 6545, 0, 6544, 0, 0, 0, 0, 0, 0, 6543, 0, 6542,\n6541, 0, 0, 6540, 6539, 0, 6538, 0, 0, 0, 0, 6537, 6536, 0, 6535,\n0, 0, 0, 6534, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6533, 0, 6532, 6531,\n0, 0, 6530, 6529, 0, 6528, 0, 0, 0, 0, 6527, 6526, 0, 6525, 0, 0,\n0, 6524, 0, 0, 0, 0, 0, 0, 0, 0, 6523, 6522, 0, 6521, 0, 0, 0,\n6520, 0, 0, 0, 0, 0, 0, 0, 6519, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 6518, 0, 6517, 6516, 0, 0, 6515, 6514, 0,\n6513, 0, 0, 0, 0, 6512, 6511, 0, 6510, 0, 0, 0, 6509, 0, 0, 0, 0,\n0, 0, 0, 0, 6508, 6507, 0, 6506, 0, 0, 0, 6505, 0, 0, 0, 0, 0, 0,\n0, 6504, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6503,\n6502, 0, 6501, 0, 0, 0, 6500, 0, 0, 0, 0, 0, 0, 0, 6499, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6498, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6497, 0, 6496, 6495, 0, 0, 6494, 6493, 0, 6492, 0, 0,\n0, 0, 6491, 6490, 0, 6489, 0, 0, 0, 6488, 0, 0, 0, 0, 0, 0, 0, 0,\n6487, 6486, 0, 6485, 0, 0, 0, 6484, 0, 0, 0, 0, 0, 0, 0, 6483, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6482, 6481, 0, 6480,\n0, 0, 0, 6479, 0, 0, 0, 0, 0, 0, 0, 6478, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 6477, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6476,\n6475, 0, 6474, 0, 0, 0, 6473, 0, 0, 0, 0, 0, 0, 0, 6472, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6471, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 6470, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 6469, 0, 0, 0, 6468, 0, 6467, 6466, 0, 0, 0,\n0, 6465, 0, 6464, 6463, 0, 0, 6462, 6461, 0, 6460, 0, 0, 0, 0, 0,\n0, 6459, 0, 6458, 6457, 0, 0, 6456, 6455, 0, 6454, 0, 0, 0, 0,\n6453, 6452, 0, 6451, 0, 0, 0, 6450, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n6449, 0, 6448, 6447, 0, 0, 6446, 6445, 0, 6444, 0, 0, 0, 0, 6443,\n6442, 0, 6441, 0, 0, 0, 6440, 0, 0, 0, 0, 0, 0, 0, 0, 6439, 6438,\n0, 6437, 0, 0, 0, 6436, 0, 0, 0, 0, 0, 0, 0, 6435, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6434, 0, 6433, 6432, 0, 0,\n6431, 6430, 0, 6429, 0, 0, 0, 0, 6428, 6427, 0, 6426, 0, 0, 0,\n6425, 0, 0, 0, 0, 0, 0, 0, 0, 6424, 6423, 0, 6422, 0, 0, 0, 6421,\n0, 0, 0, 0, 0, 0, 0, 6420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 6419, 6418, 0, 6417, 0, 0, 0, 6416, 0, 0, 0, 0, 0, 0, 0,\n6415, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6414, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 6413, 0, 6412, 6411, 0, 0, 6410, 6409,\n0, 6408, 0, 0, 0, 0, 6407, 6406, 0, 6405, 0, 0, 0, 6404, 0, 0, 0,\n0, 0, 0, 0, 0, 6403, 6402, 0, 6401, 0, 0, 0, 6400, 0, 0, 0, 0, 0,\n0, 0, 6399, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6398,\n6397, 0, 6396, 0, 0, 0, 6395, 0, 0, 0, 0, 0, 0, 0, 6394, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6393, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 6392, 6391, 0, 6390, 0, 0, 0, 6389, 0, 0, 0, 0, 0, 0, 0,\n6388, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6387, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 6386, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 6385, 0, 6384, 6383, 0, 0, 6382, 6381, 0,\n6380, 0, 0, 0, 0, 6379, 6378, 0, 6377, 0, 0, 0, 6376, 0, 0, 0, 0,\n0, 0, 0, 0, 6375, 6374, 0, 6373, 0, 0, 0, 6372, 0, 0, 0, 0, 0, 0,\n0, 6371, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6370,\n6369, 0, 6368, 0, 0, 0, 6367, 0, 0, 0, 0, 0, 0, 0, 6366, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6365, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 6364, 6363, 0, 6362, 0, 0, 0, 6361, 0, 0, 0, 0, 0, 0, 0,\n6360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6359, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 6358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 6357, 6356, 0, 6355, 0, 0, 0, 6354, 0, 0, 0, 0,\n0, 0, 0, 6353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6352,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 6351, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 6350, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6349, 0, 0, 0, 6348, 0, 6347,\n6346, 0, 0, 0, 0, 6345, 0, 6344, 6343, 0, 0, 6342, 6341, 0, 6340,\n0, 0, 0, 0, 0, 0, 6339, 0, 6338, 6337, 0, 0, 6336, 6335, 0, 6334,\n0, 0, 0, 0, 6333, 6332, 0, 6331, 0, 0, 0, 6330, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6329, 0, 6328, 6327, 0, 0, 6326, 6325, 0, 6324, 0, 0,\n0, 0, 6323, 6322, 0, 6321, 0, 0, 0, 6320, 0, 0, 0, 0, 0, 0, 0, 0,\n6319, 6318, 0, 6317, 0, 0, 0, 6316, 0, 0, 0, 0, 0, 0, 0, 6315, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6314, 0, 6313,\n6312, 0, 0, 6311, 6310, 0, 6309, 0, 0, 0, 0, 6308, 6307, 0, 6306,\n0, 0, 0, 6305, 0, 0, 0, 0, 0, 0, 0, 0, 6304, 6303, 0, 6302, 0, 0,\n0, 6301, 0, 0, 0, 0, 0, 0, 0, 6300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 6299, 6298, 0, 6297, 0, 0, 0, 6296, 0, 0, 0, 0,\n0, 0, 0, 6295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6294,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6293, 0, 6292, 6291, 0, 0,\n6290, 6289, 0, 6288, 0, 0, 0, 0, 6287, 6286, 0, 6285, 0, 0, 0,\n6284, 0, 0, 0, 0, 0, 0, 0, 0, 6283, 6282, 0, 6281, 0, 0, 0, 6280,\n0, 0, 0, 0, 0, 0, 0, 6279, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 6278, 6277, 0, 6276, 0, 0, 0, 6275, 0, 0, 0, 0, 0, 0, 0,\n6274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6273, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 6272, 6271, 0, 6270, 0, 0, 0, 6269, 0, 0, 0,\n0, 0, 0, 0, 6268, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n6267, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6266, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6265, 0, 6264, 6263, 0, 0,\n6262, 6261, 0, 6260, 0, 0, 0, 0, 6259, 6258, 0, 6257, 0, 0, 0,\n6256, 0, 0, 0, 0, 0, 0, 0, 0, 6255, 6254, 0, 6253, 0, 0, 0, 6252,\n0, 0, 0, 0, 0, 0, 0, 6251, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 6250, 6249, 0, 6248, 0, 0, 0, 6247, 0, 0, 0, 0, 0, 0, 0,\n6246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6245, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 6244, 6243, 0, 6242, 0, 0, 0, 6241, 0, 0, 0,\n0, 0, 0, 0, 6240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n6239, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6238, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6237, 6236, 0, 6235, 0, 0, 0,\n6234, 0, 0, 0, 0, 0, 0, 0, 6233, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6232, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6231, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6230, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6229, 0, 6228, 6227, 0,\n0, 6226, 6225, 0, 6224, 0, 0, 0, 0, 6223, 6222, 0, 6221, 0, 0, 0,\n6220, 0, 0, 0, 0, 0, 0, 0, 0, 6219, 6218, 0, 6217, 0, 0, 0, 6216,\n0, 0, 0, 0, 0, 0, 0, 6215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 6214, 6213, 0, 6212, 0, 0, 0, 6211, 0, 0, 0, 0, 0, 0, 0,\n6210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6209, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 6208, 6207, 0, 6206, 0, 0, 0, 6205, 0, 0, 0,\n0, 0, 0, 0, 6204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n6203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6202, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6201, 6200, 0, 6199, 0, 0, 0,\n6198, 0, 0, 0, 0, 0, 0, 0, 6197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6195, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6194, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6193, 6192, 0, 6191, 0, 0, 0,\n6190, 0, 0, 0, 0, 0, 0, 0, 6189, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 6188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6187, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6186, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1600];\n","module.exports = [\n166, 322, 165, 310, 164, 2467, 154, 2466, 163, 3325, 321, 162,\n3324, 2464, 2401, 161, 2465, 3314, 160, 2461, 159, 2400, 320,\n3323, 153, 2457, 6185, 2463, 3303, 2452, 158, 3322, 157, 298,\n2460, 2446, 152, 3292, 156, 2398, 3321, 2462, 5965, 155, 6184,\n309, 2456, 3320, 2439, 3313, 2395, 2459, 2431, 2335, 2451, 6181,\n3319, 3281, 2422, 151, 2391, 2445, 6183, 2399, 2455, 319, 3291,\n2412, 5964, 6175, 2386, 3318, 5745, 150, 2450, 6180, 3312, 3317,\n297, 6165, 2458, 2438, 5961, 2430, 2380, 142, 2444, 3311, 308,\n3316, 318, 286, 149, 6150, 5963, 6174, 3259, 5525, 3315, 2421,\n2397, 2454, 5955, 148, 6182, 2373, 3302, 6164, 2437, 5960, 2411,\n5744, 2449, 2365, 3310, 5945, 6178, 2429, 6129, 2334, 2394, 2453,\n6179, 6101, 147, 141, 3309, 6149, 5741, 2448, 2356, 2443, 3215,\n2269, 5930, 2420, 2396, 5954, 3290, 3248, 3280, 2346, 6065, 6172,\n2390, 2410, 3308, 317, 146, 6173, 2442, 5944, 3258, 6128, 3270,\n2393, 6020, 3301, 6162, 145, 3289, 5735, 2436, 2385, 5958, 2447,\n6100, 5909, 2333, 6169, 6163, 2428, 2332, 5881, 5725, 6177, 316,\n5929, 3307, 3300, 6159, 144, 2435, 6147, 3204, 285, 3306, 2379,\n6064, 2441, 2389, 6148, 2427, 5524, 2329, 2419, 307, 143, 5845,\n3288, 5952, 3214, 3257, 2268, 6019, 5710, 5962, 3160, 2440, 6144,\n2384, 2409, 5305, 5908, 3269, 5800, 3305, 3287, 6171, 5942, 5521,\n3299, 6126, 2418, 5743, 2392, 6155, 5880, 2372, 2434, 5949, 6176,\n6127, 6098, 5959, 3304, 2331, 6161, 2364, 2426, 315, 2325, 2408,\n3298, 3094, 6099, 2378, 5689, 140, 2433, 6168, 5939, 3286, 6123,\n5740, 5927, 306, 5661, 5844, 6140, 2425, 3213, 2320, 130, 6095,\n3279, 2328, 6062, 6158, 2355, 5515, 2417, 2388, 6146, 5085, 5304,\n2267, 5799, 3297, 6063, 3149, 6170, 6135, 274, 2432, 5953, 5924,\n5523, 6017, 3247, 2371, 2345, 5625, 2407, 5505, 2416, 2383, 3285,\n2424, 3278, 6018, 5906, 2314, 6059, 5742, 3159, 5935, 6160, 2363,\n6119, 5734, 2387, 6143, 5943, 3237, 3284, 296, 5878, 5580, 6167,\n2406, 3256, 6091, 3017, 5520, 2324, 6125, 6014, 5957, 6154, 3083,\n3296, 6114, 5724, 2382, 314, 5490, 5903, 2415, 6097, 5739, 2377,\n139, 6157, 3295, 2354, 5920, 6086, 6145, 5084, 2319, 5738, 2423,\n129, 3093, 5928, 2307, 3283, 5875, 5842, 3212, 3277, 6122, 2405,\n2266, 6055, 3203, 3246, 313, 2344, 2299, 305, 6139, 5915, 2203,\n6108, 3282, 5709, 6094, 2376, 5522, 3158, 5797, 138, 6061, 3255,\n3294, 5514, 6010, 6142, 3276, 5951, 6050, 3193, 5303, 5469, 6080,\n284, 2414, 2370, 2313, 5839, 4865, 2381, 6134, 262, 5899, 2263,\n5733, 6124, 5956, 6016, 6153, 3236, 5441, 5907, 2413, 3254, 2362,\n3293, 2290, 5504, 6005, 5732, 5941, 5301, 5871, 2404, 3006, 6096,\n5519, 5794, 6058, 2330, 6166, 304, 5879, 6118, 5894, 5948, 5723,\n2929, 3092, 3275, 5688, 2403, 2369, 6044, 2280, 5722, 6090, 6121,\n2375, 3016, 5866, 137, 3202, 6013, 5737, 6073, 4645, 5660, 6156,\n2306, 5405, 2361, 6138, 312, 2353, 6113, 5729, 5938, 3253, 5081,\n5489, 6093, 5999, 2265, 5835, 2327, 5926, 6060, 3211, 2830, 2298,\n5843, 2259, 6085, 5950, 2374, 5083, 3226, 136, 273, 128, 5888,\n5360, 5708, 2402, 4864, 2343, 6133, 5295, 5719, 5513, 5790, 6054,\n6015, 5707, 5830, 3192, 5302, 3157, 3274, 5860, 3210, 6037, 5798,\n5624, 2352, 3148, 2254, 6141, 5940, 2137, 2202, 2368, 6107, 2262,\n311, 5923, 6057, 3268, 3273, 6029, 5285, 6117, 2289, 5947, 6009,\n5503, 5518, 5785, 5731, 3252, 6049, 3245, 5468, 6152, 2360, 6079,\n5992, 303, 5579, 5905, 135, 2342, 3138, 5934, 6089, 3015, 2323,\n2367, 6012, 5704, 3251, 3156, 295, 2918, 4644, 5440, 5687, 5984,\n5824, 5877, 2279, 6112, 3209, 5937, 6004, 5721, 5300, 2248, 4425,\n3091, 2359, 3267, 5925, 5686, 5715, 5853, 3082, 5659, 3272, 2720,\n6084, 3182, 5728, 6120, 2318, 5270, 3201, 6151, 2928, 5488, 5902,\n5779, 2351, 6043, 5658, 6137, 5075, 2819, 2258, 5919, 6053, 6092,\n5082, 3225, 2326, 3250, 6072, 2366, 3072, 3271, 134, 5404, 5874,\n5975, 3147, 5841, 5512, 3244, 5718, 5080, 2200, 6106, 3090, 2341,\n5922, 5683, 5998, 2264, 5706, 2350, 4861, 2829, 6132, 2358, 5065,\n5817, 133, 5623, 6008, 5700, 2253, 3208, 250, 5914, 6048, 261,\n3249, 2241, 6078, 2201, 5359, 5904, 2312, 5655, 2599, 4863, 5796,\n6136, 5933, 5622, 5502, 5294, 5809, 3243, 3266, 3207, 5517, 2340,\n5249, 294, 6056, 3235, 2233, 5467, 5772, 6036, 5876, 5578, 5838,\n5509, 3137, 6116, 6003, 5695, 5946, 3155, 2136, 5298, 5898, 4424,\n2261, 5703, 5221, 4855, 5577, 302, 6131, 3081, 5439, 5764, 6028,\n2349, 5284, 132, 6088, 3265, 3014, 5050, 2322, 6011, 2927, 5299,\n2247, 5870, 5901, 5991, 3005, 4641, 6042, 5685, 5793, 5619, 5499,\n5714, 6111, 2357, 5936, 3089, 5918, 2709, 5679, 5487, 5893, 3181,\n3206, 5736, 3242, 6071, 4205, 4643, 2305, 2224, 5873, 5983, 2339,\n5657, 131, 6115, 5840, 3200, 6083, 301, 5078, 2317, 5651, 5997,\n127, 2995, 5865, 3154, 5574, 5185, 2828, 3071, 2297, 5403, 5755,\n2719, 6087, 238, 5511, 3013, 5913, 5674, 2321, 6052, 3205, 5269,\n5079, 2199, 2214, 4635, 3264, 5682, 5834, 3127, 5795, 3146, 6110,\n5074, 5292, 3985, 3199, 2348, 2257, 118, 5484, 5699, 6105, 5029,\n5646, 2071, 3191, 5921, 3224, 6130, 5140, 2240, 5887, 6035, 5358,\n5654, 2588, 5837, 5974, 4862, 5621, 6082, 6007, 5501, 2134, 5293,\n2316, 6047, 2347, 5897, 126, 5466, 5789, 6077, 5001, 5615, 3241,\n2311, 5829, 5495, 4860, 2232, 5932, 5859, 2338, 5064, 6027, 5282,\n2288, 5508, 2252, 6051, 5730, 5694, 4845, 2135, 5297, 5869, 3088,\n272, 5990, 3004, 5668, 5438, 3153, 5792, 2598, 3240, 3145, 5576,\n6002, 2337, 5283, 2197, 6104, 5892, 5570, 4421, 3198, 5516, 5784,\n5248, 5610, 4204, 3061, 3263, 5982, 5640, 3080, 3152, 2278, 3012,\n5618, 293, 6006, 5498, 6046, 5720, 4625, 5463, 300, 5678, 2926,\n4423, 6076, 5864, 5486, 5900, 2310, 6041, 6109, 5220, 4965, 4854,\n5931, 2917, 4642, 3262, 2223, 5823, 5480, 2718, 5727, 5917, 5049,\n5565, 5267, 5077, 3234, 2246, 5435, 5650, 6070, 5833, 2994, 4640,\n2304, 4830, 5402, 5872, 5573, 6081, 3011, 5072, 3239, 3984, 2315,\n5852, 6001, 125, 3171, 2336, 3765, 2005, 4415, 5673, 3180, 5996,\n283, 4920, 5268, 3087, 5886, 2907, 2213, 3079, 2827, 5778, 5973,\n3126, 5604, 2296, 3151, 5475, 5073, 5291, 5717, 2818, 5912, 2925,\n5788, 117, 5483, 3197, 5645, 5357, 249, 6040, 5705, 5828, 4858,\n3238, 3086, 5184, 5858, 5633, 5062, 292, 2193, 3261, 6103, 299,\n124, 5916, 5510, 2133, 3190, 2198, 6069, 5465, 4634, 2597, 2303,\n5399, 5559, 3196, 5614, 6034, 3150, 5494, 5836, 4859, 6045, 2808,\n5063, 5281, 5816, 5459, 2131, 6075, 226, 5896, 2309, 5028, 5995,\n2260, 5783, 5246, 2070, 3144, 5139, 2239, 4610, 2826, 5667, 5437,\n3260, 4809, 2295, 3545, 6026, 3136, 2188, 6102, 2287, 5911, 5500,\n3233, 5808, 5431, 2984, 2196, 5868, 5354, 5569, 5989, 5702, 3003,\n5000, 5218, 4852, 5247, 5609, 5791, 6000, 2916, 3060, 2231, 3085,\n5639, 5289, 5771, 5822, 5597, 4781, 4405, 5454, 5507, 6074, 5047,\n5891, 2308, 4844, 260, 5296, 123, 3078, 5462, 4201, 4422, 4638,\n6033, 5684, 5981, 5219, 3195, 4853, 2277, 5713, 5851, 106, 2924,\n5763, 5589, 3232, 5479, 3764, 5895, 5426, 6039, 282, 4420, 5048,\n5863, 5564, 5266, 4203, 3084, 5434, 5777, 5552, 4639, 6025, 5656,\n5279, 3143, 5401, 2286, 2717, 4390, 5071, 5497, 2817, 5726, 6068,\n2182, 3170, 3010, 4624, 2708, 2302, 5395, 5867, 237, 5988, 3002,\n5485, 5832, 3194, 4964, 5182, 4589, 2906, 3070, 5069, 3981, 2222,\n5544, 5603, 2923, 5994, 2256, 4745, 5474, 5890, 6038, 5076, 271,\n2825, 5448, 3009, 4195, 4632, 2294, 5681, 5885, 5980, 291, 5356,\n4829, 2276, 5972, 4857, 5910, 4561, 5183, 3983, 5632, 5061, 5815,\n2192, 5716, 5754, 5350, 6067, 5698, 2698, 2004, 5026, 4414, 2068,\n2301, 5390, 5862, 5787, 4919, 5137, 3231, 5827, 122, 5420, 3116,\n2212, 4633, 5653, 5857, 3544, 5059, 5398, 5558, 3125, 4700, 2716,\n5620, 5993, 2251, 3189, 5290, 2807, 5807, 5264, 5458, 2130, 6032,\n1939, 2824, 116, 5482, 4998, 5027, 5831, 2293, 5245, 2069, 2596,\n5138, 121, 2127, 3077, 5770, 3975, 3142, 2587, 2255, 5535, 2187,\n5345, 5693, 4842, 2132, 3223, 5782, 2175, 2922, 5430, 2983, 6024,\n5884, 5464, 5275, 3008, 5353, 4999, 2285, 5217, 5971, 4851, 5575,\n5493, 3135, 5762, 4525, 5288, 3188, 5280, 5596, 3141, 5987, 3001,\n5453, 4418, 6031, 5786, 5046, 5701, 5826, 4843, 2896, 2167, 4849,\n6066, 4609, 2915, 2300, 4637, 5384, 5856, 2122, 5436, 4808, 2577,\n5617, 5821, 5889, 2250, 5044, 105, 4185, 4622, 5588, 2707, 5677,\n5979, 2195, 5425, 3007, 2245, 2275, 6023, 4419, 3050, 2595, 4962,\n3230, 2284, 5413, 4202, 2823, 3059, 4480, 5712, 120, 5850, 2292,\n5551, 4780, 5278, 4404, 5861, 3761, 5986, 3000, 3179, 5781, 5243,\n2181, 4369, 4623, 5649, 5461, 5339, 5394, 4200, 2993, 4827, 2715,\n5572, 5776, 3229, 4963, 3134, 5181, 2797, 3076, 5260, 5068, 2816,\n5543, 5753, 5478, 3763, 4170, 2002, 3140, 4412, 5672, 5978, 4917,\n3187, 2274, 5265, 5215, 214, 3105, 3965, 5447, 4341, 2914, 119,\n2158, 4631, 6030, 5433, 281, 3069, 5820, 4828, 5400, 4389, 5070,\n3075, 3222, 3982, 2116, 5883, 3169, 5349, 115, 2244, 2697, 2003,\n5025, 5644, 4413, 5970, 2067, 4629, 5389, 5680, 4918, 2714, 5136,\n2921, 4588, 5419, 3115, 5711, 290, 5377, 5849, 6022, 3980, 5255,\n2586, 5058, 5814, 2283, 3139, 3755, 4744, 5473, 5697, 5825, 259,\n5023, 2065, 5263, 5855, 2148, 5055, 4194, 5985, 2238, 225, 3950,\n4997, 5613, 5775, 5355, 2249, 5652, 3541, 4856, 2822, 4560, 3228,\n2126, 2291, 5060, 5369, 2815, 3221, 2191, 5806, 5534, 5882, 2594,\n5344, 4995, 5969, 4841, 2174, 4149, 4607, 5179, 5332, 5666, 5977,\n2230, 5274, 3068, 4806, 4305, 3543, 5769, 5397, 2273, 4699, 5506,\n202, 5780, 5239, 289, 5692, 3074, 5457, 4839, 2129, 2194, 1938,\n5854, 5568, 3039, 4417, 3186, 5244, 248, 5608, 2895, 2166, 280,\n4848, 3227, 2920, 4608, 5324, 5638, 3974, 5383, 2121, 4778, 5813,\n4807, 5761, 4402, 2713, 2576, 2186, 5696, 2109, 5211, 2061, 2593,\n2973, 5043, 2913, 4621, 5134, 5429, 2237, 4198, 2982, 4260, 5819,\n5352, 3185, 3049, 3535, 5216, 4961, 4850, 5412, 5040, 5616, 3929,\n6021, 5496, 3073, 5234, 4524, 5287, 2243, 2282, 2687, 5805, 4779,\n4403, 5452, 4619, 2706, 5676, 5045, 2101, 5563, 3220, 5242, 3133,\n5848, 4959, 2919, 2999, 2229, 5338, 4199, 4636, 5768, 5968, 4826,\n2221, 3745, 4387, 3178, 2796, 5259, 5691, 2821, 5206, 4835, 104,\n4184, 3168, 2281, 3762, 2912, 2001, 5774, 5424, 4411, 5648, 2992,\n4916, 5818, 4824, 5214, 1873, 3104, 4586, 5571, 2814, 2905, 5976,\n2998, 5035, 2157, 3978, 4479, 2272, 5315, 5760, 5602, 5277, 4742,\n2242, 5752, 3760, 4388, 1999, 4409, 5671, 2115, 5175, 4914, 4192,\n2180, 4368, 3067, 5847, 5393, 2592, 2211, 4628, 3124, 3730, 3184,\n4121, 4558, 5180, 4587, 5631, 3177, 2820, 5376, 5067, 2190, 3979,\n5254, 2712, 2271, 4615, 4169, 2705, 5675, 4743, 5481, 5773, 5228,\n5022, 5643, 2064, 2092, 3964, 5446, 2147, 5054, 4340, 4193, 5812,\n4630, 2813, 2566, 2220, 5557, 4697, 3132, 2585, 5019, 94, 3901,\n4559, 2806, 5368, 5130, 2236, 2128, 2711, 5170, 1936, 5348, 288,\n5647, 3525, 236, 5024, 2991, 3219, 2066, 5388, 5200, 4820, 4994,\n5612, 3183, 5135, 2911, 5492, 4606, 5178, 5418, 5331, 3114, 3972,\n5804, 5967, 4805, 2997, 3542, 5057, 2185, 5751, 4698, 3754, 4991,\n1995, 1807, 2962, 5238, 5670, 2082, 2228, 5262, 4838, 279, 5767,\n1937, 3949, 4604, 2210, 3038, 4996, 5665, 5811, 3218, 3123, 4803,\n3540, 5690, 5846, 5014, 2056, 4085, 2125, 5323, 4522, 5286, 3973,\n5595, 5966, 4777, 5125, 4401, 3709, 2235, 2270, 114, 3176, 5343,\n2108, 5210, 5642, 2060, 3510, 5567, 2972, 4840, 2173, 5607, 4148,\n5133, 4197, 5759, 3058, 2591, 2996, 5273, 4304, 5637, 5803, 2584,\n4775, 4399, 5039, 2812, 4986, 103, 5233, 4182, 4523, 5587, 2686,\n2227, 4618, 190, 5460, 5766, 2885, 4416, 2100, 5611, 5491, 5164,\n2894, 2165, 4958, 4847, 4040, 4477, 3066, 5550, 2590, 5382, 3028,\n2120, 5276, 2704, 3131, 287, 5477, 3758, 4386, 4955, 3865, 5042,\n5205, 4834, 5562, 2179, 4183, 4366, 4620, 2219, 4600, 5664, 4259,\n5432, 5758, 5193, 4799, 3048, 3534, 4960, 4823, 3217, 213, 4585,\n5411, 3928, 4384, 5066, 5034, 3977, 4478, 5810, 5542, 5314, 4167,\n3130, 2710, 4741, 2990, 270, 5008, 3759, 2050, 1998, 5566, 4408,\n5241, 5119, 5174, 5606, 4913, 3962, 2234, 4338, 4191, 3057, 4367,\n4583, 5337, 2904, 5636, 3489, 5750, 2786, 4825, 3744, 4771, 1990,\n4395, 5601, 2703, 5669, 2910, 4557, 4739, 2795, 5472, 4910, 3820,\n5258, 5802, 4950, 3681, 2209, 4614, 2696, 4168, 2000, 3175, 4189,\n4410, 247, 4980, 2218, 5227, 4915, 3216, 5213, 2091, 1872, 3103,\n2226, 3113, 3963, 4339, 5765, 4555, 2156, 2565, 5630, 5056, 2589,\n4696, 113, 5476, 3752, 5018, 5641, 93, 2811, 2989, 4815, 2114,\n5129, 5561, 5261, 3645, 5169, 1935, 3947, 3174, 2583, 4627, 5199,\n3538, 4819, 5396, 5556, 5749, 5157, 3729, 82, 4694, 4120, 4380,\n2124, 3065, 3971, 5375, 5757, 4905, 2805, 5253, 5533, 5456, 258,\n3753, 4990, 2208, 3129, 1994, 1933, 201, 2961, 3122, 5021, 2172,\n2063, 2081, 4146, 4579, 2146, 5053, 2903, 5272, 3948, 4603, 4302,\n3969, 178, 4802, 5600, 3539, 5149, 4735, 112, 5471, 3900, 5013,\n3064, 2055, 2909, 4521, 5367, 4595, 5124, 2702, 5663, 5428, 2874,\n2043, 2981, 3524, 5351, 2582, 4944, 5112, 4993, 278, 2164, 4846,\n4147, 4605, 4551, 5177, 5330, 2217, 5629, 2119, 3461, 4804, 4303,\n4519, 2189, 2575, 5594, 4774, 3128, 4398, 5451, 1806, 5237, 4985,\n5605, 5041, 5801, 4181, 3056, 4837, 5635, 4257, 4973, 1741, 224,\n2035, 3037, 2884, 2951, 3047, 3532, 3173, 5555, 5104, 4690, 2225,\n5163, 3926, 2908, 4476, 4084, 5322, 2804, 3425, 3027, 4776, 5748,\n5455, 102, 4179, 4400, 3708, 5586, 1984, 3757, 1929, 5662, 5423,\n4794, 2107, 4899, 5209, 4954, 5240, 2059, 3509, 2810, 2971, 4365,\n5132, 2207, 4196, 4599, 2775, 4258, 4474, 3121, 3742, 5192, 4798,\n5549, 3533, 2184, 277, 5038, 5560, 5257, 2676, 3927, 4383, 5756,\n5232, 3063, 2685, 4166, 5427, 235, 111, 3600, 2980, 4363, 4617,\n5007, 5634, 2049, 5392, 3172, 4766, 2099, 5212, 1870, 4375, 3102,\n5118, 3961, 4957, 4337, 2155, 4039, 4582, 4515, 3167, 2581, 5593,\n2785, 3743, 4770, 5541, 1989, 4394, 5450, 4164, 4385, 4738, 4909,\n2113, 2809, 3864, 4574, 5204, 4949, 4833, 2701, 2902, 3959, 5445,\n4335, 4188, 4626, 4979, 5599, 4937, 2026, 5470, 3727, 4118, 4822,\n1871, 4584, 5095, 2216, 5033, 4554, 3976, 3062, 5252, 5313, 4175,\n5585, 3380, 3751, 4740, 5422, 5347, 2695, 1997, 5020, 4407, 2062,\n4814, 5387, 4546, 5173, 4912, 2940, 2700, 2145, 5628, 5052, 4190,\n3946, 2988, 5417, 269, 4470, 4788, 5548, 3488, 4929, 3537, 3166,\n5156, 3728, 3898, 81, 4693, 4119, 3749, 4556, 4379, 2215, 3819,\n4904, 5747, 3680, 1977, 2178, 4359, 4613, 2901, 3522, 5391, 5554,\n1932, 3944, 4892, 2016, 4992, 5226, 5598, 4145, 4730, 2090, 2555,\n3055, 5176, 2206, 4578, 2803, 2987, 3120, 2123, 4301, 2564, 4760,\n3968, 5540, 1675, 1924, 4695, 4160, 5148, 5017, 4734, 1804, 5532,\n5236, 92, 3899, 5342, 5128, 4836, 5746, 4594, 3644, 110, 3955,\n5444, 1969, 5168, 4143, 1934, 4331, 2873, 5627, 3036, 2042, 3523,\n4884, 2183, 4299, 5198, 4943, 5111, 4818, 4082, 2205, 4550, 3970,\n2580, 3119, 2979, 4518, 3706, 5346, 2694, 4989, 1993, 2106, 5208,\n1805, 2960, 2058, 3507, 5386, 5553, 2970, 4685, 2080, 5131, 2893,\n109, 4510, 5416, 3112, 4256, 4972, 189, 5592, 2802, 4602, 2034,\n2950, 5381, 3531, 5449, 2118, 4801, 5103, 4689, 2574, 1918, 5037,\n2665, 3925, 5012, 5231, 2054, 4083, 4520, 2579, 276, 3165, 5123,\n4178, 3707, 4616, 1983, 1928, 3940, 2098, 4254, 4793, 4898, 3508,\n268, 3529, 4956, 4568, 4037, 2900, 5410, 101, 2863, 3923, 2774,\n5584, 3460, 4473, 3741, 2986, 5421, 4724, 2978, 4773, 5531, 4397,\n5341, 2675, 4984, 3862, 5203, 4832, 4180, 2171, 4139, 4465, 2699,\n5547, 4362, 1740, 1960, 5271, 5336, 2883, 4295, 5591, 4765, 4821,\n3739, 1869, 4374, 4875, 3054, 4540, 5162, 5626, 5032, 4038, 2794,\n4475, 4753, 2204, 2177, 4514, 3424, 4354, 3026, 3118, 3756, 4163,\n1996, 4406, 4953, 5172, 3863, 4911, 4573, 2892, 2163, 1867, 4364,\n3101, 3958, 4598, 5539, 4334, 3486, 108, 5380, 2985, 100, 4155,\n5191, 4936, 4797, 5583, 4679, 2025, 3726, 2573, 4117, 3053, 5094,\n3817, 2801, 4382, 2764, 5443, 3678, 2112, 4326, 4174, 4612, 4165,\n70, 2578, 3599, 1950, 5006, 4250, 5546, 5225, 2048, 3046, 2544,\n2089, 5117, 4545, 3960, 3724, 5409, 2939, 4115, 4336, 3919, 4581,\n275, 4469, 4787, 5374, 3487, 3117, 2784, 4928, 2176, 2693, 4769,\n4348, 1988, 5016, 4393, 91, 3897, 5385, 3748, 4737, 4908, 5127,\n3818, 3164, 5415, 4948, 3642, 246, 5167, 3679, 223, 1976, 4358,\n3521, 107, 5051, 5335, 4187, 4978, 3943, 4891, 5538, 5197, 2015,\n4817, 3735, 2852, 4729, 212, 2554, 2793, 3895, 4504, 5256, 4553,\n5590, 4759, 5366, 4717, 177, 1923, 3935, 5442, 3379, 3750, 4320,\n4159, 4988, 1992, 1803, 2959, 3519, 2079, 4813, 3163, 1863, 257,\n3643, 3954, 1968, 4142, 3945, 4601, 4330, 2154, 5329, 4883, 5530,\n4800, 4298, 3536, 5340, 4533, 5155, 2692, 80, 4692, 2899, 5011,\n4378, 2053, 4081, 3052, 1801, 2170, 99, 4134, 4903, 5582, 5122,\n3705, 4709, 5414, 3111, 4290, 1931, 3506, 3035, 4684, 3720, 4144,\n4111, 4577, 4459, 4509, 3458, 5373, 5545, 4079, 4300, 5321, 3967,\n4672, 5251, 1674, 4772, 4396, 3703, 1917, 2753, 5147, 2664, 4733,\n2800, 4983, 2891, 2105, 2162, 2057, 3504, 267, 1911, 4593, 5379,\n1738, 2144, 2117, 2872, 3939, 2882, 2041, 2572, 4253, 4942, 5110,\n5529, 5161, 3528, 4567, 4036, 3891, 3051, 5036, 4549, 2862, 3922,\n3422, 3025, 5365, 5537, 3459, 2169, 4517, 4664, 4128, 4245, 4723,\n2684, 3045, 3515, 4284, 4952, 200, 3861, 5408, 2097, 3914, 2977,\n1903, 4138, 4464, 4597, 3162, 5328, 4034, 4255, 4971, 1739, 1959,\n5190, 2033, 4796, 4294, 2949, 3530, 3738, 5102, 4874, 4688, 4539,\n3924, 4381, 1797, 4497, 5235, 2898, 4752, 3423, 3859, 4353, 2890,\n2161, 4831, 5334, 3597, 4177, 2691, 1982, 5005, 1927, 2047, 2654,\n5378, 256, 4792, 4897, 2571, 5116, 2792, 2976, 3110, 1866, 4580,\n4075, 5320, 3485, 2773, 5031, 2783, 4472, 3740, 4154, 4768, 1987,\n4678, 5312, 4392, 3699, 4736, 4239, 4907, 3816, 4489, 2674, 98,\n5207, 1858, 234, 245, 3500, 5581, 4947, 2969, 2763, 3677, 4325,\n5407, 2153, 3161, 69, 3908, 4186, 3598, 4977, 1949, 4361, 4249,\n3483, 4764, 2543, 1868, 4373, 3723, 4452, 2111, 4114, 4552, 3918,\n2897, 5230, 3814, 4513, 3377, 2683, 5528, 3675, 4347, 4655, 4611,\n5333, 4162, 4812, 3715, 97, 4106, 2168, 2799, 2841, 4572, 3641,\n5372, 2088, 2791, 4030, 3957, 5250, 1894, 4333, 2563, 4935, 3734,\n5154, 2024, 3725, 2851, 79, 4691, 4116, 4377, 5015, 4444, 5093,\n90, 3894, 5536, 4902, 4503, 3855, 5202, 1852, 2143, 3100, 4173,\n4716, 3934, 3378, 3639, 4319, 2152, 1930, 3518, 3886, 2889, 2160,\n4816, 4313, 1862, 4544, 4576, 2938, 5364, 2975, 2110, 3966, 4468,\n4786, 1672, 5311, 2570, 4927, 5146, 2533, 4732, 4532, 3896, 3747,\n4987, 1991, 1800, 2958, 2798, 4133, 4592, 2643, 5171, 5327, 4100,\n2078, 2690, 4708, 1975, 2871, 4357, 2040, 1884, 4289, 5371, 3520,\n3942, 3044, 4890, 3479, 4941, 5109, 2014, 1792, 5406, 3109, 3719,\n4728, 2742, 4110, 2553, 4548, 4458, 3457, 5010, 3810, 2052, 4078,\n4516, 4758, 4671, 3671, 1673, 1922, 2142, 3034, 4158, 3702, 2752,\n1802, 5224, 3503, 96, 4070, 1910, 5319, 3880, 2689, 3953, 2974,\n1967, 4970, 1737, 4141, 4329, 2032, 5363, 2948, 3694, 2562, 3455,\n4882, 4297, 5101, 4687, 2790, 2104, 3108, 89, 3495, 3890, 2968,\n4080, 3421, 4982, 4435, 5126, 5527, 4176, 4663, 3704, 4127, 3635,\n1981, 5166, 4244, 5326, 1926, 1735, 3514, 4791, 4896, 4283, 3505,\n266, 5196, 1845, 3099, 4683, 3913, 1902, 1786, 2151, 5229, 4277,\n4508, 2772, 4033, 4471, 2682, 3419, 3024, 1916, 2663, 2096, 233,\n2673, 1796, 4496, 255, 4951, 95, 4025, 3858, 5526, 3596, 4360,\n4064, 5318, 3938, 2653, 4596, 4763, 4252, 211, 4372, 3688, 2159,\n4795, 4093, 3527, 4566, 4035, 3850, 5370, 2103, 5201, 2051, 4269,\n4074, 2522, 2861, 4512, 3921, 2967, 2569, 5121, 3698, 4722, 4161,\n3594, 4238, 5004, 4488, 2046, 1857, 3860, 3499, 4571, 2141, 5030,\n4137, 3956, 4232, 4463, 3907, 4332, 5310, 188, 3043, 3451, 1958,\n4934, 4293, 2023, 2681, 3482, 2888, 265, 3737, 4767, 4873, 3873,\n1986, 5092, 4391, 4538, 4451, 5362, 3107, 2095, 4906, 4751, 3813,\n4172, 2568, 4352, 3376, 4946, 3674, 4019, 3474, 4654, 1731, 2881,\n4976, 3714, 4105, 4543, 2840, 2937, 5160, 3805, 5325, 1865, 4224,\n4029, 4467, 4785, 3666, 1893, 3844, 3484, 3042, 3415, 3023, 4926,\n4153, 4677, 2789, 3374, 3746, 1779, 5223, 4443, 3815, 2087, 3854,\n2762, 4811, 3676, 1851, 1974, 4324, 4356, 68, 2561, 3638, 3033,\n2688, 3941, 1948, 4889, 4248, 2013, 5309, 5189, 58, 3098, 2542,\n3885, 4727, 2552, 4312, 2150, 3722, 4057, 5317, 78, 3106, 4113,\n3917, 4376, 4757, 3630, 5165, 1671, 1921, 4901, 2632, 4157, 4346,\n2532, 3590, 199, 2102, 5195, 2045, 3468, 222, 2642, 5115, 3640,\n4099, 3952, 1966, 4140, 4328, 1883, 4575, 3799, 4881, 4296, 3478,\n3660, 2782, 1837, 3733, 3097, 1985, 1669, 2850, 1791, 2957, 2887,\n2741, 2149, 4731, 2077, 3893, 5222, 4502, 3809, 2680, 2086, 3670,\n4715, 3933, 4591, 2567, 4318, 2870, 2560, 2094, 2039, 3517, 4682,\n4940, 2140, 5009, 1861, 4012, 88, 4069, 3879, 4507, 4547, 5120,\n4215, 3693, 3454, 3624, 3041, 2731, 3370, 1915, 2662, 4531, 3494,\n5361, 3837, 1799, 5194, 4810, 4434, 4132, 3634, 4707, 3446, 3937,\n4288, 4251, 4969, 1734, 2031, 2947, 3526, 1844, 4565, 5153, 2886,\n3718, 2139, 4981, 77, 4686, 4109, 1785, 2956, 2860, 3920, 4457,\n4276, 3456, 5308, 4077, 2076, 4670, 3418, 4721, 1726, 176, 1771,\n2880, 3701, 2751, 1980, 1925, 2788, 5159, 4790, 4895, 3502, 4024,\n4136, 4462, 1909, 3032, 3410, 1736, 244, 4063, 1957, 2511, 4292,\n2771, 3040, 1665, 3736, 4872, 3687, 4092, 4537, 5145, 1828, 5316,\n3096, 3889, 3792, 3849, 4750, 4268, 2521, 264, 3420, 4351, 3653,\n4590, 4662, 4126, 4243, 46, 254, 5188, 2038, 3593, 3440, 2966,\n3513, 4282, 2085, 5108, 4762, 1864, 3912, 4371, 1901, 4231, 3031,\n2559, 4032, 3450, 4152, 4676, 3585, 4511, 5003, 87, 3872, 1720,\n4049, 2787, 2879, 1795, 4495, 5114, 2761, 2679, 4323, 3617, 3857,\n5158, 4570, 67, 3595, 4018, 1947, 3473, 4247, 2093, 1730, 2781,\n2652, 2030, 3404, 232, 2965, 2946, 2541, 4933, 5100, 2022, 1818,\n3095, 3721, 4112, 3804, 3916, 4223, 2138, 4945, 4073, 3665, 3843,\n3414, 4345, 4171, 3697, 4975, 1979, 3373, 1778, 221, 4237, 3829,\n5187, 4789, 4487, 2075, 1856, 3498, 2678, 4542, 3906, 2936, 253,\n3365, 4466, 3732, 4784, 57, 2849, 3481, 4925, 3579, 4004, 5002,\n3892, 4450, 2044, 4056, 4501, 2672, 5307, 3629, 3812, 5113, 4714,\n2631, 3932, 3375, 4317, 3673, 1973, 3589, 4653, 4355, 3516, 3467,\n1762, 5152, 2780, 4888, 3713, 4761, 76, 2012, 4104, 1860, 4370,\n2839, 4726, 263, 4900, 4028, 3433, 3798, 1892, 3030, 3659, 4756,\n1836, 4530, 1668, 1920, 4156, 3784, 4974, 1798, 4442, 4131, 2621,\n5306, 3853, 4569, 1850, 4706, 4287, 1713, 3637, 3951, 1965, 2878,\n1660, 4327, 2084, 5144, 4880, 2021, 3359, 3717, 2964, 3884, 4108,\n4311, 4011, 4456, 5091, 2558, 4076, 3397, 3022, 4669, 4214, 1670,\n2869, 3623, 86, 3700, 2730, 3369, 2750, 2531, 1752, 4939, 5107,\n3836, 3501, 3609, 5151, 1908, 2641, 4541, 4681, 4098, 187, 2935,\n3445, 1882, 4506, 3029, 5186, 4783, 3477, 2083, 1790, 3888, 2740,\n1914, 2661, 3995, 2557, 3808, 4661, 4125, 3669, 4242, 3572, 4968,\n1725, 1972, 85, 1770, 2955, 243, 3512, 4281, 3936, 2074, 5099,\n2011, 1654, 2963, 3911, 2610, 5143, 1900, 4725, 2551, 4068, 3878,\n4564, 4031, 3409, 2510, 2859, 2779, 3692, 4755, 3453, 1978, 1664,\n1919, 2868, 4720, 2037, 1827, 4894, 1794, 4494, 3493, 3791, 4938,\n5106, 3856, 4433, 3652, 2677, 3633, 2770, 1964, 4135, 4461, 2651,\n45, 2954, 3439, 1733, 1956, 2073, 4291, 1843, 2671, 4871, 2500,\n1784, 4536, 4072, 4275, 4749, 3352, 3584, 3696, 3417, 4350, 4236,\n4967, 1719, 2029, 4048, 4486, 1855, 2945, 3497, 3775, 5098, 4680,\n3616, 4023, 1705, 3905, 210, 4505, 4062, 3403, 3480, 5150, 4151,\n3686, 75, 4675, 4091, 1817, 4449, 1913, 252, 3848, 3389, 3021,\n4893, 4267, 3811, 2520, 2556, 2760, 3672, 4322, 4652, 66, 4932,\n2769, 3592, 84, 1946, 3828, 3712, 4246, 4103, 2838, 5090, 2540,\n4563, 4027, 1696, 4230, 2670, 1891, 2877, 2858, 3915, 3449, 1647,\n3364, 5142, 4719, 3578, 3871, 4344, 4003, 4441, 2489, 3020, 3852,\n1849, 2934, 3564, 3636, 2867, 4460, 4017, 2036, 3472, 1729, 4924,\n1955, 1761, 2953, 5105, 3883, 3731, 4310, 2072, 2848, 4535, 3803,\n4222, 3432, 2778, 3664, 175, 4748, 3842, 4500, 1971, 3413, 4349,\n2530, 4713, 3931, 4887, 3372, 83, 1777, 4316, 3783, 4931, 2020,\n2620, 2550, 2640, 4097, 3555, 5089, 1859, 1881, 4966, 1712, 2028,\n1659, 220, 3476, 4150, 56, 5097, 4674, 1789, 3358, 2739, 4529,\n4055, 3807, 3396, 198, 3628, 3344, 2759, 3668, 1963, 4130, 2630,\n4321, 231, 65, 4705, 3588, 4879, 1945, 4286, 4782, 1751, 2952,\n3466, 4923, 3608, 251, 4067, 3877, 3716, 4107, 2768, 3797, 4455,\n3691, 34, 3452, 2876, 3658, 74, 4668, 1835, 4343, 1667, 3492,\n2669, 2749, 4886, 2010, 3994, 4432, 3335, 3019, 3632, 2549, 3571,\n1907, 1732, 4754, 1842, 1653, 1912, 2660, 2847, 2609, 1783, 4010,\n4274, 3887, 4499, 1639, 4213, 3416, 5141, 4712, 3622, 3930, 73,\n4660, 2729, 4124, 3368, 4315, 4241, 4878, 3511, 3835, 4280, 4562,\n4022, 209, 242, 3910, 4061, 3444, 1899, 1686, 4930, 2875, 2019,\n3685, 4090, 4528, 5088, 3847, 2499, 4266, 2519, 1793, 4493, 1630,\n4129, 3018, 3351, 2777, 1724, 4704, 1954, 1769, 3591, 4285, 2650,\n4870, 3774, 4534, 219, 2659, 4229, 2866, 1704, 2027, 4454, 3408,\n2944, 3448, 2509, 4071, 4922, 5096, 4667, 1663, 3870, 3695, 2748,\n1826, 3790, 4235, 3388, 4485, 1854, 3651, 3496, 1970, 4016, 1906,\n3471, 2478, 1728, 44, 2857, 3904, 4885, 3438, 2009, 4718, 2548,\n3802, 4221, 2767, 1695, 241, 4448, 3663, 3841, 2943, 3412, 1646,\n64, 2776, 3583, 4659, 4123, 1944, 3371, 4240, 1776, 2668, 1718,\n72, 4651, 4047, 2539, 4279, 2488, 3711, 4869, 4102, 3615, 3563,\n3909, 1962, 2837, 1898, 4026, 4747, 4877, 3402, 55, 1890, 4342,\n1816, 4054, 197, 4492, 4440, 3627, 2629, 3851, 1848, 1620, 3587,\n2667, 3465, 2649, 3827, 2846, 4673, 3882, 3554, 4498, 4309, 3796,\n2865, 2018, 2758, 3657, 3363, 1834, 4314, 1666, 63, 2658, 5087,\n3577, 71, 2529, 4002, 4234, 4484, 1853, 2538, 3343, 2639, 4096,\n3903, 1880, 1760, 4527, 3475, 2933, 4009, 1788, 4447, 2856, 2738,\n3431, 4212, 4921, 33, 3806, 2017, 3621, 22, 2942, 2728, 3367,\n3667, 5086, 4650, 3782, 3834, 3710, 2619, 4101, 230, 2836, 3334,\n4453, 3443, 4066, 3876, 1711, 2864, 1953, 2008, 1889, 1658, 3690,\n4711, 4868, 2747, 2547, 3357, 2932, 4439, 3491, 4746, 3395, 1638,\n1905, 2766, 4431, 1847, 1723, 1768, 3631, 1750, 186, 3607, 3881,\n1961, 1841, 4308, 3407, 2508, 1782, 4876, 1685, 4273, 2007, 4122,\n2941, 1662, 4703, 2546, 2528, 1825, 4278, 3789, 3993, 2757, 3650,\n1629, 1897, 2638, 4095, 4021, 3570, 43, 1943, 3437, 1879, 4060,\n4666, 2537, 1652, 2608, 3684, 1787, 4491, 229, 4089, 2737, 3846,\n2765, 4265, 2518, 3582, 1904, 2657, 240, 1717, 4046, 2666, 3614,\n4065, 3875, 2477, 4228, 3401, 3689, 3447, 4658, 2845, 1815, 4233,\n4483, 208, 3869, 3490, 2931, 2498, 4430, 4710, 3902, 3350, 1896,\n2656, 4015, 3826, 3470, 1727, 3773, 1840, 4446, 1703, 1781, 1952,\n3801, 4272, 4220, 3362, 3662, 3840, 4867, 3411, 2006, 4526, 3576,\n4001, 2648, 2545, 2855, 1775, 3387, 2835, 4020, 4702, 1619, 1888,\n4059, 1759, 3683, 54, 4088, 4438, 2930, 3430, 1694, 3845, 1951,\n4053, 1846, 4264, 2517, 4665, 1645, 3626, 4866, 2628, 2746, 3781,\n3586, 2756, 2618, 2487, 3464, 4307, 62, 3562, 1710, 1942, 4227,\n1657, 3795, 2536, 239, 3356, 3656, 1833, 4649, 3868, 174, 3394,\n2637, 4094, 4657, 2834, 21, 1878, 4014, 3469, 1749, 1887, 185,\n196, 3606, 2736, 61, 3553, 3800, 1941, 4008, 4219, 3661, 3839,\n207, 2535, 4211, 3620, 2727, 3366, 1774, 4490, 3992, 2854, 3833,\n3874, 3342, 4306, 3569, 2647, 3442, 1651, 53, 2607, 2527, 4052,\n4429, 32, 3625, 228, 2844, 2627, 1722, 1877, 2655, 1767, 4482,\n1839, 3463, 4701, 1780, 3333, 4271, 2735, 3794, 3406, 2507, 3655,\n1832, 1661, 4445, 2497, 1824, 2853, 3788, 1637, 3349, 3649, 4058,\n2745, 4648, 42, 3682, 3436, 4087, 3772, 218, 2755, 1702, 4007,\n4263, 2516, 60, 1684, 1940, 4210, 3619, 3581, 2726, 2534, 4437,\n3386, 1716, 4045, 3832, 4656, 1838, 1628, 4226, 3613, 195, 3441,\n4270, 3400, 3867, 1895, 1693, 1814, 1644, 4013, 2526, 1721, 1766,\n2843, 2486, 3825, 2636, 2754, 4086, 3561, 4218, 59, 2646, 3838,\n2476, 3405, 4262, 227, 2506, 3361, 173, 1773, 217, 3575, 1823,\n4000, 3787, 3648, 4225, 41, 4481, 52, 3435, 1758, 4051, 3866,\n3552, 2645, 2626, 3429, 3580, 2842, 3462, 1715, 4044, 3780, 4428,\n3341, 2617, 3612, 4647, 3793, 1618, 4217, 1709, 3654, 2744, 1831,\n3399, 1656, 206, 3355, 1813, 1772, 1886, 31, 3393, 4436, 3824,\n1748, 51, 4006, 3332, 3605, 4646, 4050, 4209, 3618, 2725, 3360,\n2625, 2833, 3574, 3999, 3831, 1885, 2515, 1636, 3991, 2525, 20,\n3568, 2743, 1757, 2635, 1830, 1650, 1876, 2606, 1683, 3428, 184,\n1765, 2734, 3779, 1627, 2616, 2524, 4005, 2505, 1708, 1655, 4208,\n2634, 1822, 2724, 3354, 3786, 1875, 3647, 3830, 2496, 3392, 40,\n3348, 3434, 194, 1747, 4427, 3604, 3771, 2475, 1701, 2644, 50,\n1714, 4043, 1764, 2832, 3990, 3611, 3385, 216, 3567, 3398, 2504,\n4426, 1812, 1649, 2605, 1821, 3785, 1692, 3646, 1829, 1643, 3823,\n39, 4261, 2514, 2485, 1617, 3560, 2523, 3573, 3998, 2831, 183,\n4042, 2495, 1874, 3610, 2723, 3347, 1756, 2733, 2513, 3770, 1811,\n3427, 1700, 3551, 3778, 4216, 2615, 3822, 3384, 19, 1707, 3340,\n1763, 172, 3353, 2633, 3997, 3391, 1691, 215, 1642, 30, 1820,\n1746, 2732, 3603, 1755, 2484, 2624, 3559, 3331, 38, 3426, 3989,\n3777, 2614, 49, 3566, 1635, 1706, 4041, 1648, 2604, 2623, 2512,\n3550, 3390, 1682, 1810, 1745, 4207, 3602, 205, 3339, 1626, 3821,\n2494, 3988, 3346, 29, 3565, 3996, 3769, 4206, 171, 1699, 2603,\n193, 3330, 2474, 1754, 3383, 2503, 1634, 48, 3776, 2613, 1690,\n37, 182, 2493, 1641, 1681, 3345, 2483, 2502, 3558, 3768, 1625,\n1698, 1819, 1616, 1744, 3601, 3382, 47, 3987, 3549, 2622, 1689,\n2722, 2473, 1640, 2602, 3338, 2482, 3557, 1809, 18, 28, 1753,\n2492, 3329, 2501, 3548, 2721, 1615, 204, 3767, 1697, 1633, 36,\n3337, 3381, 1680, 1743, 27, 2612, 1688, 1624, 170, 3328, 17,\n1808, 2481, 3556, 35, 1632, 2601, 2472, 1679, 3986, 3547, 1623,\n192, 203, 3336, 3766, 181, 26, 1614, 2471, 2491, 3327, 1742,\n1687, 1631, 2480, 2611, 1678, 16, 1613, 180, 1622, 191, 3546,\n2490, 2470, 15, 2600, 25, 3326, 169, 24, 1612, 2479, 1677, 1621,\n1676, 14, 168, 2469, 2468, 1611, 23, 1610, 13, 179, 12, 167, 11];\n","const sanitize = require('./utils/sanitize');\nconst evalHand = require('./utils/eval-hand');\nconst evalRank = require('./utils/eval-rank');\n\n/**\n * Represents a Poker Hand.\n * @constructor\n * @param {string} hand - The poker hand in string format.\n */\nclass PokerHand {\n\n constructor(hand) {\n // Verify the hand passed is clean\n this.hand = sanitize(hand);\n\n // Evaluate the hand score\n this.score = evalHand(this.hand);\n\n // Get the hand rank\n this.rank = evalRank(this.score);\n }\n\n /**\n * describe\n *\n * @return {object} return the detail the hand in an object\n */\n describe() {\n return {\n hand: this.hand,\n score: this.score,\n rank: this.rank,\n };\n }\n\n /**\n * toString\n *\n * @return {string} return the cards as string with a space seperator\n */\n toString() {\n return this.hand.join(' ');\n }\n\n /**\n * getScore\n *\n * @return {int} return the Cactus Kev's score\n * of the hand (the less the better)\n */\n getScore() {\n return this.score;\n }\n\n /**\n * getRank\n *\n * @return {string} return the rank of the hand\n */\n getRank() {\n return this.rank;\n }\n\n\n /**\n * update - update the hand\n *\n * @param {string} hand The poker hand in string format.\n * @return {void}\n */\n update(hand) {\n this.hand = sanitize(hand);\n this.score = evalHand(this.hand);\n this.rank = evalRank(this.score);\n }\n\n /**\n * compareWith\n *\n * @param {Hand} hand a hand instace\n * @return {integer} return result for this\n * instance {0: Win, 1: Fail, 2: Draw}\n */\n compareWith(hand) {\n if (hand instanceof PokerHand === false) {\n throw new Error('Incorrect hand to compare with');\n }\n\n // Instance hand is better than the one we compare to\n // It's a win\n if (this.score < hand.getScore()) {\n return 1;\n }\n\n // It's a loss\n if (this.score > hand.getScore()) {\n return 2;\n }\n\n // It's a tie\n if (this.score === hand.getScore()) {\n return 3;\n }\n\n // Something wrong but unknown with the hand\n throw new Error('Incorrect hand');\n }\n}\n\nmodule.exports = PokerHand;\n","const { suits, ranks, products, flushes, unique5, values } = require('../arrays');\n\nconst cardInt = (card) => {\n const [order, prime] = ranks.get(card[0]);\n const suit = suits.get(card[1]);\n return prime | (order << 8) | suit | (1 << (16 + order));\n}\n\nconst findIt = (key) => {\n let low = 0;\n let high = 4887;\n let mid;\n\n while (low <= high) {\n // Divide by two\n mid = (high+low) >> 1;\n if (key < products[mid]) {\n high = mid - 1;\n } else if (key > products[mid]) {\n low = mid + 1;\n } else {\n return mid;\n }\n }\n throw new Error('Impossible hand');\n};\n\n/**\n * Credit to Cactus Kev's algorithm\n * http://suffe.cool/poker/code/pokerlib.c\n */\nmodule.exports = (hand) => {\n const cards = hand.map(cardInt);\n const q =\n (cards[0] | cards[1] | cards[2] | cards[3] | cards[4]) >> 16;\n\n // Check for flushes and straight flushes\n if (cards[0] & cards[1] & cards[2] & cards[3] & cards[4] & 0xF000) {\n // TODO: If flushes[q] === 0 it means the hand is not correct\n // We could throw an error here\n return flushes[q];\n }\n\n // Check for straights and high card hands\n const s = unique5[q];\n if (s) {\n return s;\n }\n\n // let's do it the hard way\n const l =\n (cards[0] & 0xFF) *\n (cards[1] & 0xFF) *\n (cards[2] & 0xFF) *\n (cards[3] & 0xFF) *\n (cards[4] & 0xFF);\n const m = findIt(l);\n return values[m];\n};\n","/**\n * evalRank\n *\n * @return {string} return the rank of the hand (PAIR, FULLHOUSE, etc...)\n */\nmodule.exports = (score) => {\n if (score > 6185) return 'HIGH_CARD'; // 1277 high card\n if (score > 3325) return 'ONE_PAIR'; // 2860 one pair\n if (score > 2467) return 'TWO_PAIRS'; // 858 two pair\n if (score > 1609) return 'THREE_OF_A_KIND'; // 858 three-kind\n if (score > 1599) return 'STRAIGHT'; // 10 straights\n if (score > 322) return 'FLUSH'; // 1277 flushes\n if (score > 166) return 'FULL_HOUSE'; // 156 full house\n if (score > 10) return 'FOUR_OF_A_KIND'; // 156 four-kind\n if (score > 1) return 'STRAIGHT_FLUSH'; // 9 straight-flushes\n return 'ROYAL_FLUSH'; // 1 royal-flushes\n};\n","const { ranks, suits } = require('../arrays');\n\n/**\n * Check is valid card\n * @param {string} card - A string containing two characters.\n * @return {bool} true if exists false instead\n */\nmodule.exports = (card) => {\n\n // Check some errors\n if (!card || card === '' || typeof(card) !== 'string' || card.length !== 2) {\n return false;\n }\n\n // Check that the first letter is a card character\n if (ranks.get(card[0].toUpperCase()) === undefined) {\n return false;\n }\n\n // Check that the second letter is a suit character\n if (suits.get(card[1].toUpperCase()) === undefined) {\n return false;\n }\n\n return true;\n};\n","const isValidCard = require('./is-valid-card');\n\n/**\n * sanitize - verify the hand string passed is correct\n * otherwise it throws an error\n *\n * @param {string} hand string representing a five cards hand\n * @return {array} return an array with 5 cars in UpperCase\n */\nmodule.exports = (hand) => {\n if (!hand) {\n throw new Error('Hand must be defined');\n }\n\n if (typeof(hand) !== 'string') {\n throw new Error('Hand must be a String');\n }\n\n if (hand.trim().length !== 14) {\n throw new Error('Incorrect hand');\n }\n\n const handAsArray = hand.toUpperCase().trim().split(' ');\n\n if (handAsArray.length !== 5) {\n throw new Error('Incorrect hand');\n }\n\n // Check if duplicates\n if (new Set(handAsArray).size !== 5) {\n throw new Error('Hand has duplicates')\n }\n\n // Check if each card exists\n if (handAsArray.filter(isValidCard).length !== 5) {\n throw new Error('Incorrect hand');\n }\n\n return handAsArray;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","\nconst canPromise = require('./can-promise')\n\nconst QRCode = require('./core/qrcode')\nconst CanvasRenderer = require('./renderer/canvas')\nconst SvgRenderer = require('./renderer/svg-tag.js')\n\nfunction renderCanvas (renderFunc, canvas, text, opts, cb) {\n const args = [].slice.call(arguments, 1)\n const argsNum = args.length\n const isLastArgCb = typeof args[argsNum - 1] === 'function'\n\n if (!isLastArgCb && !canPromise()) {\n throw new Error('Callback required as last argument')\n }\n\n if (isLastArgCb) {\n if (argsNum < 2) {\n throw new Error('Too few arguments provided')\n }\n\n if (argsNum === 2) {\n cb = text\n text = canvas\n canvas = opts = undefined\n } else if (argsNum === 3) {\n if (canvas.getContext && typeof cb === 'undefined') {\n cb = opts\n opts = undefined\n } else {\n cb = opts\n opts = text\n text = canvas\n canvas = undefined\n }\n }\n } else {\n if (argsNum < 1) {\n throw new Error('Too few arguments provided')\n }\n\n if (argsNum === 1) {\n text = canvas\n canvas = opts = undefined\n } else if (argsNum === 2 && !canvas.getContext) {\n opts = text\n text = canvas\n canvas = undefined\n }\n\n return new Promise(function (resolve, reject) {\n try {\n const data = QRCode.create(text, opts)\n resolve(renderFunc(data, canvas, opts))\n } catch (e) {\n reject(e)\n }\n })\n }\n\n try {\n const data = QRCode.create(text, opts)\n cb(null, renderFunc(data, canvas, opts))\n } catch (e) {\n cb(e)\n }\n}\n\nexports.create = QRCode.create\nexports.toCanvas = renderCanvas.bind(null, CanvasRenderer.render)\nexports.toDataURL = renderCanvas.bind(null, CanvasRenderer.renderToDataURL)\n\n// only svg for now.\nexports.toString = renderCanvas.bind(null, function (data, _, opts) {\n return SvgRenderer.render(data, opts)\n})\n","// can-promise has a crash in some versions of react native that dont have\n// standard global objects\n// https://github.com/soldair/node-qrcode/issues/157\n\nmodule.exports = function () {\n return typeof Promise === 'function' && Promise.prototype && Promise.prototype.then\n}\n","/**\n * Alignment pattern are fixed reference pattern in defined positions\n * in a matrix symbology, which enables the decode software to re-synchronise\n * the coordinate mapping of the image modules in the event of moderate amounts\n * of distortion of the image.\n *\n * Alignment patterns are present only in QR Code symbols of version 2 or larger\n * and their number depends on the symbol version.\n */\n\nconst getSymbolSize = require('./utils').getSymbolSize\n\n/**\n * Calculate the row/column coordinates of the center module of each alignment pattern\n * for the specified QR Code version.\n *\n * The alignment patterns are positioned symmetrically on either side of the diagonal\n * running from the top left corner of the symbol to the bottom right corner.\n *\n * Since positions are simmetrical only half of the coordinates are returned.\n * Each item of the array will represent in turn the x and y coordinate.\n * @see {@link getPositions}\n *\n * @param {Number} version QR Code version\n * @return {Array} Array of coordinate\n */\nexports.getRowColCoords = function getRowColCoords (version) {\n if (version === 1) return []\n\n const posCount = Math.floor(version / 7) + 2\n const size = getSymbolSize(version)\n const intervals = size === 145 ? 26 : Math.ceil((size - 13) / (2 * posCount - 2)) * 2\n const positions = [size - 7] // Last coord is always (size - 7)\n\n for (let i = 1; i < posCount - 1; i++) {\n positions[i] = positions[i - 1] - intervals\n }\n\n positions.push(6) // First coord is always 6\n\n return positions.reverse()\n}\n\n/**\n * Returns an array containing the positions of each alignment pattern.\n * Each array's element represent the center point of the pattern as (x, y) coordinates\n *\n * Coordinates are calculated expanding the row/column coordinates returned by {@link getRowColCoords}\n * and filtering out the items that overlaps with finder pattern\n *\n * @example\n * For a Version 7 symbol {@link getRowColCoords} returns values 6, 22 and 38.\n * The alignment patterns, therefore, are to be centered on (row, column)\n * positions (6,22), (22,6), (22,22), (22,38), (38,22), (38,38).\n * Note that the coordinates (6,6), (6,38), (38,6) are occupied by finder patterns\n * and are not therefore used for alignment patterns.\n *\n * let pos = getPositions(7)\n * // [[6,22], [22,6], [22,22], [22,38], [38,22], [38,38]]\n *\n * @param {Number} version QR Code version\n * @return {Array} Array of coordinates\n */\nexports.getPositions = function getPositions (version) {\n const coords = []\n const pos = exports.getRowColCoords(version)\n const posLength = pos.length\n\n for (let i = 0; i < posLength; i++) {\n for (let j = 0; j < posLength; j++) {\n // Skip if position is occupied by finder patterns\n if ((i === 0 && j === 0) || // top-left\n (i === 0 && j === posLength - 1) || // bottom-left\n (i === posLength - 1 && j === 0)) { // top-right\n continue\n }\n\n coords.push([pos[i], pos[j]])\n }\n }\n\n return coords\n}\n","const Mode = require('./mode')\n\n/**\n * Array of characters available in alphanumeric mode\n *\n * As per QR Code specification, to each character\n * is assigned a value from 0 to 44 which in this case coincides\n * with the array index\n *\n * @type {Array}\n */\nconst ALPHA_NUM_CHARS = [\n '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',\n 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',\n 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',\n ' ', '$', '%', '*', '+', '-', '.', '/', ':'\n]\n\nfunction AlphanumericData (data) {\n this.mode = Mode.ALPHANUMERIC\n this.data = data\n}\n\nAlphanumericData.getBitsLength = function getBitsLength (length) {\n return 11 * Math.floor(length / 2) + 6 * (length % 2)\n}\n\nAlphanumericData.prototype.getLength = function getLength () {\n return this.data.length\n}\n\nAlphanumericData.prototype.getBitsLength = function getBitsLength () {\n return AlphanumericData.getBitsLength(this.data.length)\n}\n\nAlphanumericData.prototype.write = function write (bitBuffer) {\n let i\n\n // Input data characters are divided into groups of two characters\n // and encoded as 11-bit binary codes.\n for (i = 0; i + 2 <= this.data.length; i += 2) {\n // The character value of the first character is multiplied by 45\n let value = ALPHA_NUM_CHARS.indexOf(this.data[i]) * 45\n\n // The character value of the second digit is added to the product\n value += ALPHA_NUM_CHARS.indexOf(this.data[i + 1])\n\n // The sum is then stored as 11-bit binary number\n bitBuffer.put(value, 11)\n }\n\n // If the number of input data characters is not a multiple of two,\n // the character value of the final character is encoded as a 6-bit binary number.\n if (this.data.length % 2) {\n bitBuffer.put(ALPHA_NUM_CHARS.indexOf(this.data[i]), 6)\n }\n}\n\nmodule.exports = AlphanumericData\n","function BitBuffer () {\n this.buffer = []\n this.length = 0\n}\n\nBitBuffer.prototype = {\n\n get: function (index) {\n const bufIndex = Math.floor(index / 8)\n return ((this.buffer[bufIndex] >>> (7 - index % 8)) & 1) === 1\n },\n\n put: function (num, length) {\n for (let i = 0; i < length; i++) {\n this.putBit(((num >>> (length - i - 1)) & 1) === 1)\n }\n },\n\n getLengthInBits: function () {\n return this.length\n },\n\n putBit: function (bit) {\n const bufIndex = Math.floor(this.length / 8)\n if (this.buffer.length <= bufIndex) {\n this.buffer.push(0)\n }\n\n if (bit) {\n this.buffer[bufIndex] |= (0x80 >>> (this.length % 8))\n }\n\n this.length++\n }\n}\n\nmodule.exports = BitBuffer\n","/**\n * Helper class to handle QR Code symbol modules\n *\n * @param {Number} size Symbol size\n */\nfunction BitMatrix (size) {\n if (!size || size < 1) {\n throw new Error('BitMatrix size must be defined and greater than 0')\n }\n\n this.size = size\n this.data = new Uint8Array(size * size)\n this.reservedBit = new Uint8Array(size * size)\n}\n\n/**\n * Set bit value at specified location\n * If reserved flag is set, this bit will be ignored during masking process\n *\n * @param {Number} row\n * @param {Number} col\n * @param {Boolean} value\n * @param {Boolean} reserved\n */\nBitMatrix.prototype.set = function (row, col, value, reserved) {\n const index = row * this.size + col\n this.data[index] = value\n if (reserved) this.reservedBit[index] = true\n}\n\n/**\n * Returns bit value at specified location\n *\n * @param {Number} row\n * @param {Number} col\n * @return {Boolean}\n */\nBitMatrix.prototype.get = function (row, col) {\n return this.data[row * this.size + col]\n}\n\n/**\n * Applies xor operator at specified location\n * (used during masking process)\n *\n * @param {Number} row\n * @param {Number} col\n * @param {Boolean} value\n */\nBitMatrix.prototype.xor = function (row, col, value) {\n this.data[row * this.size + col] ^= value\n}\n\n/**\n * Check if bit at specified location is reserved\n *\n * @param {Number} row\n * @param {Number} col\n * @return {Boolean}\n */\nBitMatrix.prototype.isReserved = function (row, col) {\n return this.reservedBit[row * this.size + col]\n}\n\nmodule.exports = BitMatrix\n","const encodeUtf8 = require('encode-utf8')\nconst Mode = require('./mode')\n\nfunction ByteData (data) {\n this.mode = Mode.BYTE\n this.data = new Uint8Array(encodeUtf8(data))\n}\n\nByteData.getBitsLength = function getBitsLength (length) {\n return length * 8\n}\n\nByteData.prototype.getLength = function getLength () {\n return this.data.length\n}\n\nByteData.prototype.getBitsLength = function getBitsLength () {\n return ByteData.getBitsLength(this.data.length)\n}\n\nByteData.prototype.write = function (bitBuffer) {\n for (let i = 0, l = this.data.length; i < l; i++) {\n bitBuffer.put(this.data[i], 8)\n }\n}\n\nmodule.exports = ByteData\n","const ECLevel = require('./error-correction-level')\r\n\r\nconst EC_BLOCKS_TABLE = [\r\n// L M Q H\r\n 1, 1, 1, 1,\r\n 1, 1, 1, 1,\r\n 1, 1, 2, 2,\r\n 1, 2, 2, 4,\r\n 1, 2, 4, 4,\r\n 2, 4, 4, 4,\r\n 2, 4, 6, 5,\r\n 2, 4, 6, 6,\r\n 2, 5, 8, 8,\r\n 4, 5, 8, 8,\r\n 4, 5, 8, 11,\r\n 4, 8, 10, 11,\r\n 4, 9, 12, 16,\r\n 4, 9, 16, 16,\r\n 6, 10, 12, 18,\r\n 6, 10, 17, 16,\r\n 6, 11, 16, 19,\r\n 6, 13, 18, 21,\r\n 7, 14, 21, 25,\r\n 8, 16, 20, 25,\r\n 8, 17, 23, 25,\r\n 9, 17, 23, 34,\r\n 9, 18, 25, 30,\r\n 10, 20, 27, 32,\r\n 12, 21, 29, 35,\r\n 12, 23, 34, 37,\r\n 12, 25, 34, 40,\r\n 13, 26, 35, 42,\r\n 14, 28, 38, 45,\r\n 15, 29, 40, 48,\r\n 16, 31, 43, 51,\r\n 17, 33, 45, 54,\r\n 18, 35, 48, 57,\r\n 19, 37, 51, 60,\r\n 19, 38, 53, 63,\r\n 20, 40, 56, 66,\r\n 21, 43, 59, 70,\r\n 22, 45, 62, 74,\r\n 24, 47, 65, 77,\r\n 25, 49, 68, 81\r\n]\r\n\r\nconst EC_CODEWORDS_TABLE = [\r\n// L M Q H\r\n 7, 10, 13, 17,\r\n 10, 16, 22, 28,\r\n 15, 26, 36, 44,\r\n 20, 36, 52, 64,\r\n 26, 48, 72, 88,\r\n 36, 64, 96, 112,\r\n 40, 72, 108, 130,\r\n 48, 88, 132, 156,\r\n 60, 110, 160, 192,\r\n 72, 130, 192, 224,\r\n 80, 150, 224, 264,\r\n 96, 176, 260, 308,\r\n 104, 198, 288, 352,\r\n 120, 216, 320, 384,\r\n 132, 240, 360, 432,\r\n 144, 280, 408, 480,\r\n 168, 308, 448, 532,\r\n 180, 338, 504, 588,\r\n 196, 364, 546, 650,\r\n 224, 416, 600, 700,\r\n 224, 442, 644, 750,\r\n 252, 476, 690, 816,\r\n 270, 504, 750, 900,\r\n 300, 560, 810, 960,\r\n 312, 588, 870, 1050,\r\n 336, 644, 952, 1110,\r\n 360, 700, 1020, 1200,\r\n 390, 728, 1050, 1260,\r\n 420, 784, 1140, 1350,\r\n 450, 812, 1200, 1440,\r\n 480, 868, 1290, 1530,\r\n 510, 924, 1350, 1620,\r\n 540, 980, 1440, 1710,\r\n 570, 1036, 1530, 1800,\r\n 570, 1064, 1590, 1890,\r\n 600, 1120, 1680, 1980,\r\n 630, 1204, 1770, 2100,\r\n 660, 1260, 1860, 2220,\r\n 720, 1316, 1950, 2310,\r\n 750, 1372, 2040, 2430\r\n]\r\n\r\n/**\r\n * Returns the number of error correction block that the QR Code should contain\r\n * for the specified version and error correction level.\r\n *\r\n * @param {Number} version QR Code version\r\n * @param {Number} errorCorrectionLevel Error correction level\r\n * @return {Number} Number of error correction blocks\r\n */\r\nexports.getBlocksCount = function getBlocksCount (version, errorCorrectionLevel) {\r\n switch (errorCorrectionLevel) {\r\n case ECLevel.L:\r\n return EC_BLOCKS_TABLE[(version - 1) * 4 + 0]\r\n case ECLevel.M:\r\n return EC_BLOCKS_TABLE[(version - 1) * 4 + 1]\r\n case ECLevel.Q:\r\n return EC_BLOCKS_TABLE[(version - 1) * 4 + 2]\r\n case ECLevel.H:\r\n return EC_BLOCKS_TABLE[(version - 1) * 4 + 3]\r\n default:\r\n return undefined\r\n }\r\n}\r\n\r\n/**\r\n * Returns the number of error correction codewords to use for the specified\r\n * version and error correction level.\r\n *\r\n * @param {Number} version QR Code version\r\n * @param {Number} errorCorrectionLevel Error correction level\r\n * @return {Number} Number of error correction codewords\r\n */\r\nexports.getTotalCodewordsCount = function getTotalCodewordsCount (version, errorCorrectionLevel) {\r\n switch (errorCorrectionLevel) {\r\n case ECLevel.L:\r\n return EC_CODEWORDS_TABLE[(version - 1) * 4 + 0]\r\n case ECLevel.M:\r\n return EC_CODEWORDS_TABLE[(version - 1) * 4 + 1]\r\n case ECLevel.Q:\r\n return EC_CODEWORDS_TABLE[(version - 1) * 4 + 2]\r\n case ECLevel.H:\r\n return EC_CODEWORDS_TABLE[(version - 1) * 4 + 3]\r\n default:\r\n return undefined\r\n }\r\n}\r\n","exports.L = { bit: 1 }\nexports.M = { bit: 0 }\nexports.Q = { bit: 3 }\nexports.H = { bit: 2 }\n\nfunction fromString (string) {\n if (typeof string !== 'string') {\n throw new Error('Param is not a string')\n }\n\n const lcStr = string.toLowerCase()\n\n switch (lcStr) {\n case 'l':\n case 'low':\n return exports.L\n\n case 'm':\n case 'medium':\n return exports.M\n\n case 'q':\n case 'quartile':\n return exports.Q\n\n case 'h':\n case 'high':\n return exports.H\n\n default:\n throw new Error('Unknown EC Level: ' + string)\n }\n}\n\nexports.isValid = function isValid (level) {\n return level && typeof level.bit !== 'undefined' &&\n level.bit >= 0 && level.bit < 4\n}\n\nexports.from = function from (value, defaultValue) {\n if (exports.isValid(value)) {\n return value\n }\n\n try {\n return fromString(value)\n } catch (e) {\n return defaultValue\n }\n}\n","const getSymbolSize = require('./utils').getSymbolSize\nconst FINDER_PATTERN_SIZE = 7\n\n/**\n * Returns an array containing the positions of each finder pattern.\n * Each array's element represent the top-left point of the pattern as (x, y) coordinates\n *\n * @param {Number} version QR Code version\n * @return {Array} Array of coordinates\n */\nexports.getPositions = function getPositions (version) {\n const size = getSymbolSize(version)\n\n return [\n // top-left\n [0, 0],\n // top-right\n [size - FINDER_PATTERN_SIZE, 0],\n // bottom-left\n [0, size - FINDER_PATTERN_SIZE]\n ]\n}\n","const Utils = require('./utils')\n\nconst G15 = (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0)\nconst G15_MASK = (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1)\nconst G15_BCH = Utils.getBCHDigit(G15)\n\n/**\n * Returns format information with relative error correction bits\n *\n * The format information is a 15-bit sequence containing 5 data bits,\n * with 10 error correction bits calculated using the (15, 5) BCH code.\n *\n * @param {Number} errorCorrectionLevel Error correction level\n * @param {Number} mask Mask pattern\n * @return {Number} Encoded format information bits\n */\nexports.getEncodedBits = function getEncodedBits (errorCorrectionLevel, mask) {\n const data = ((errorCorrectionLevel.bit << 3) | mask)\n let d = data << 10\n\n while (Utils.getBCHDigit(d) - G15_BCH >= 0) {\n d ^= (G15 << (Utils.getBCHDigit(d) - G15_BCH))\n }\n\n // xor final data with mask pattern in order to ensure that\n // no combination of Error Correction Level and data mask pattern\n // will result in an all-zero data string\n return ((data << 10) | d) ^ G15_MASK\n}\n","const EXP_TABLE = new Uint8Array(512)\nconst LOG_TABLE = new Uint8Array(256)\n/**\n * Precompute the log and anti-log tables for faster computation later\n *\n * For each possible value in the galois field 2^8, we will pre-compute\n * the logarithm and anti-logarithm (exponential) of this value\n *\n * ref {@link https://en.wikiversity.org/wiki/Reed%E2%80%93Solomon_codes_for_coders#Introduction_to_mathematical_fields}\n */\n;(function initTables () {\n let x = 1\n for (let i = 0; i < 255; i++) {\n EXP_TABLE[i] = x\n LOG_TABLE[x] = i\n\n x <<= 1 // multiply by 2\n\n // The QR code specification says to use byte-wise modulo 100011101 arithmetic.\n // This means that when a number is 256 or larger, it should be XORed with 0x11D.\n if (x & 0x100) { // similar to x >= 256, but a lot faster (because 0x100 == 256)\n x ^= 0x11D\n }\n }\n\n // Optimization: double the size of the anti-log table so that we don't need to mod 255 to\n // stay inside the bounds (because we will mainly use this table for the multiplication of\n // two GF numbers, no more).\n // @see {@link mul}\n for (let i = 255; i < 512; i++) {\n EXP_TABLE[i] = EXP_TABLE[i - 255]\n }\n}())\n\n/**\n * Returns log value of n inside Galois Field\n *\n * @param {Number} n\n * @return {Number}\n */\nexports.log = function log (n) {\n if (n < 1) throw new Error('log(' + n + ')')\n return LOG_TABLE[n]\n}\n\n/**\n * Returns anti-log value of n inside Galois Field\n *\n * @param {Number} n\n * @return {Number}\n */\nexports.exp = function exp (n) {\n return EXP_TABLE[n]\n}\n\n/**\n * Multiplies two number inside Galois Field\n *\n * @param {Number} x\n * @param {Number} y\n * @return {Number}\n */\nexports.mul = function mul (x, y) {\n if (x === 0 || y === 0) return 0\n\n // should be EXP_TABLE[(LOG_TABLE[x] + LOG_TABLE[y]) % 255] if EXP_TABLE wasn't oversized\n // @see {@link initTables}\n return EXP_TABLE[LOG_TABLE[x] + LOG_TABLE[y]]\n}\n","const Mode = require('./mode')\nconst Utils = require('./utils')\n\nfunction KanjiData (data) {\n this.mode = Mode.KANJI\n this.data = data\n}\n\nKanjiData.getBitsLength = function getBitsLength (length) {\n return length * 13\n}\n\nKanjiData.prototype.getLength = function getLength () {\n return this.data.length\n}\n\nKanjiData.prototype.getBitsLength = function getBitsLength () {\n return KanjiData.getBitsLength(this.data.length)\n}\n\nKanjiData.prototype.write = function (bitBuffer) {\n let i\n\n // In the Shift JIS system, Kanji characters are represented by a two byte combination.\n // These byte values are shifted from the JIS X 0208 values.\n // JIS X 0208 gives details of the shift coded representation.\n for (i = 0; i < this.data.length; i++) {\n let value = Utils.toSJIS(this.data[i])\n\n // For characters with Shift JIS values from 0x8140 to 0x9FFC:\n if (value >= 0x8140 && value <= 0x9FFC) {\n // Subtract 0x8140 from Shift JIS value\n value -= 0x8140\n\n // For characters with Shift JIS values from 0xE040 to 0xEBBF\n } else if (value >= 0xE040 && value <= 0xEBBF) {\n // Subtract 0xC140 from Shift JIS value\n value -= 0xC140\n } else {\n throw new Error(\n 'Invalid SJIS character: ' + this.data[i] + '\\n' +\n 'Make sure your charset is UTF-8')\n }\n\n // Multiply most significant byte of result by 0xC0\n // and add least significant byte to product\n value = (((value >>> 8) & 0xff) * 0xC0) + (value & 0xff)\n\n // Convert result to a 13-bit binary string\n bitBuffer.put(value, 13)\n }\n}\n\nmodule.exports = KanjiData\n","/**\n * Data mask pattern reference\n * @type {Object}\n */\nexports.Patterns = {\n PATTERN000: 0,\n PATTERN001: 1,\n PATTERN010: 2,\n PATTERN011: 3,\n PATTERN100: 4,\n PATTERN101: 5,\n PATTERN110: 6,\n PATTERN111: 7\n}\n\n/**\n * Weighted penalty scores for the undesirable features\n * @type {Object}\n */\nconst PenaltyScores = {\n N1: 3,\n N2: 3,\n N3: 40,\n N4: 10\n}\n\n/**\n * Check if mask pattern value is valid\n *\n * @param {Number} mask Mask pattern\n * @return {Boolean} true if valid, false otherwise\n */\nexports.isValid = function isValid (mask) {\n return mask != null && mask !== '' && !isNaN(mask) && mask >= 0 && mask <= 7\n}\n\n/**\n * Returns mask pattern from a value.\n * If value is not valid, returns undefined\n *\n * @param {Number|String} value Mask pattern value\n * @return {Number} Valid mask pattern or undefined\n */\nexports.from = function from (value) {\n return exports.isValid(value) ? parseInt(value, 10) : undefined\n}\n\n/**\n* Find adjacent modules in row/column with the same color\n* and assign a penalty value.\n*\n* Points: N1 + i\n* i is the amount by which the number of adjacent modules of the same color exceeds 5\n*/\nexports.getPenaltyN1 = function getPenaltyN1 (data) {\n const size = data.size\n let points = 0\n let sameCountCol = 0\n let sameCountRow = 0\n let lastCol = null\n let lastRow = null\n\n for (let row = 0; row < size; row++) {\n sameCountCol = sameCountRow = 0\n lastCol = lastRow = null\n\n for (let col = 0; col < size; col++) {\n let module = data.get(row, col)\n if (module === lastCol) {\n sameCountCol++\n } else {\n if (sameCountCol >= 5) points += PenaltyScores.N1 + (sameCountCol - 5)\n lastCol = module\n sameCountCol = 1\n }\n\n module = data.get(col, row)\n if (module === lastRow) {\n sameCountRow++\n } else {\n if (sameCountRow >= 5) points += PenaltyScores.N1 + (sameCountRow - 5)\n lastRow = module\n sameCountRow = 1\n }\n }\n\n if (sameCountCol >= 5) points += PenaltyScores.N1 + (sameCountCol - 5)\n if (sameCountRow >= 5) points += PenaltyScores.N1 + (sameCountRow - 5)\n }\n\n return points\n}\n\n/**\n * Find 2x2 blocks with the same color and assign a penalty value\n *\n * Points: N2 * (m - 1) * (n - 1)\n */\nexports.getPenaltyN2 = function getPenaltyN2 (data) {\n const size = data.size\n let points = 0\n\n for (let row = 0; row < size - 1; row++) {\n for (let col = 0; col < size - 1; col++) {\n const last = data.get(row, col) +\n data.get(row, col + 1) +\n data.get(row + 1, col) +\n data.get(row + 1, col + 1)\n\n if (last === 4 || last === 0) points++\n }\n }\n\n return points * PenaltyScores.N2\n}\n\n/**\n * Find 1:1:3:1:1 ratio (dark:light:dark:light:dark) pattern in row/column,\n * preceded or followed by light area 4 modules wide\n *\n * Points: N3 * number of pattern found\n */\nexports.getPenaltyN3 = function getPenaltyN3 (data) {\n const size = data.size\n let points = 0\n let bitsCol = 0\n let bitsRow = 0\n\n for (let row = 0; row < size; row++) {\n bitsCol = bitsRow = 0\n for (let col = 0; col < size; col++) {\n bitsCol = ((bitsCol << 1) & 0x7FF) | data.get(row, col)\n if (col >= 10 && (bitsCol === 0x5D0 || bitsCol === 0x05D)) points++\n\n bitsRow = ((bitsRow << 1) & 0x7FF) | data.get(col, row)\n if (col >= 10 && (bitsRow === 0x5D0 || bitsRow === 0x05D)) points++\n }\n }\n\n return points * PenaltyScores.N3\n}\n\n/**\n * Calculate proportion of dark modules in entire symbol\n *\n * Points: N4 * k\n *\n * k is the rating of the deviation of the proportion of dark modules\n * in the symbol from 50% in steps of 5%\n */\nexports.getPenaltyN4 = function getPenaltyN4 (data) {\n let darkCount = 0\n const modulesCount = data.data.length\n\n for (let i = 0; i < modulesCount; i++) darkCount += data.data[i]\n\n const k = Math.abs(Math.ceil((darkCount * 100 / modulesCount) / 5) - 10)\n\n return k * PenaltyScores.N4\n}\n\n/**\n * Return mask value at given position\n *\n * @param {Number} maskPattern Pattern reference value\n * @param {Number} i Row\n * @param {Number} j Column\n * @return {Boolean} Mask value\n */\nfunction getMaskAt (maskPattern, i, j) {\n switch (maskPattern) {\n case exports.Patterns.PATTERN000: return (i + j) % 2 === 0\n case exports.Patterns.PATTERN001: return i % 2 === 0\n case exports.Patterns.PATTERN010: return j % 3 === 0\n case exports.Patterns.PATTERN011: return (i + j) % 3 === 0\n case exports.Patterns.PATTERN100: return (Math.floor(i / 2) + Math.floor(j / 3)) % 2 === 0\n case exports.Patterns.PATTERN101: return (i * j) % 2 + (i * j) % 3 === 0\n case exports.Patterns.PATTERN110: return ((i * j) % 2 + (i * j) % 3) % 2 === 0\n case exports.Patterns.PATTERN111: return ((i * j) % 3 + (i + j) % 2) % 2 === 0\n\n default: throw new Error('bad maskPattern:' + maskPattern)\n }\n}\n\n/**\n * Apply a mask pattern to a BitMatrix\n *\n * @param {Number} pattern Pattern reference number\n * @param {BitMatrix} data BitMatrix data\n */\nexports.applyMask = function applyMask (pattern, data) {\n const size = data.size\n\n for (let col = 0; col < size; col++) {\n for (let row = 0; row < size; row++) {\n if (data.isReserved(row, col)) continue\n data.xor(row, col, getMaskAt(pattern, row, col))\n }\n }\n}\n\n/**\n * Returns the best mask pattern for data\n *\n * @param {BitMatrix} data\n * @return {Number} Mask pattern reference number\n */\nexports.getBestMask = function getBestMask (data, setupFormatFunc) {\n const numPatterns = Object.keys(exports.Patterns).length\n let bestPattern = 0\n let lowerPenalty = Infinity\n\n for (let p = 0; p < numPatterns; p++) {\n setupFormatFunc(p)\n exports.applyMask(p, data)\n\n // Calculate penalty\n const penalty =\n exports.getPenaltyN1(data) +\n exports.getPenaltyN2(data) +\n exports.getPenaltyN3(data) +\n exports.getPenaltyN4(data)\n\n // Undo previously applied mask\n exports.applyMask(p, data)\n\n if (penalty < lowerPenalty) {\n lowerPenalty = penalty\n bestPattern = p\n }\n }\n\n return bestPattern\n}\n","const VersionCheck = require('./version-check')\nconst Regex = require('./regex')\n\n/**\n * Numeric mode encodes data from the decimal digit set (0 - 9)\n * (byte values 30HEX to 39HEX).\n * Normally, 3 data characters are represented by 10 bits.\n *\n * @type {Object}\n */\nexports.NUMERIC = {\n id: 'Numeric',\n bit: 1 << 0,\n ccBits: [10, 12, 14]\n}\n\n/**\n * Alphanumeric mode encodes data from a set of 45 characters,\n * i.e. 10 numeric digits (0 - 9),\n * 26 alphabetic characters (A - Z),\n * and 9 symbols (SP, $, %, *, +, -, ., /, :).\n * Normally, two input characters are represented by 11 bits.\n *\n * @type {Object}\n */\nexports.ALPHANUMERIC = {\n id: 'Alphanumeric',\n bit: 1 << 1,\n ccBits: [9, 11, 13]\n}\n\n/**\n * In byte mode, data is encoded at 8 bits per character.\n *\n * @type {Object}\n */\nexports.BYTE = {\n id: 'Byte',\n bit: 1 << 2,\n ccBits: [8, 16, 16]\n}\n\n/**\n * The Kanji mode efficiently encodes Kanji characters in accordance with\n * the Shift JIS system based on JIS X 0208.\n * The Shift JIS values are shifted from the JIS X 0208 values.\n * JIS X 0208 gives details of the shift coded representation.\n * Each two-byte character value is compacted to a 13-bit binary codeword.\n *\n * @type {Object}\n */\nexports.KANJI = {\n id: 'Kanji',\n bit: 1 << 3,\n ccBits: [8, 10, 12]\n}\n\n/**\n * Mixed mode will contain a sequences of data in a combination of any of\n * the modes described above\n *\n * @type {Object}\n */\nexports.MIXED = {\n bit: -1\n}\n\n/**\n * Returns the number of bits needed to store the data length\n * according to QR Code specifications.\n *\n * @param {Mode} mode Data mode\n * @param {Number} version QR Code version\n * @return {Number} Number of bits\n */\nexports.getCharCountIndicator = function getCharCountIndicator (mode, version) {\n if (!mode.ccBits) throw new Error('Invalid mode: ' + mode)\n\n if (!VersionCheck.isValid(version)) {\n throw new Error('Invalid version: ' + version)\n }\n\n if (version >= 1 && version < 10) return mode.ccBits[0]\n else if (version < 27) return mode.ccBits[1]\n return mode.ccBits[2]\n}\n\n/**\n * Returns the most efficient mode to store the specified data\n *\n * @param {String} dataStr Input data string\n * @return {Mode} Best mode\n */\nexports.getBestModeForData = function getBestModeForData (dataStr) {\n if (Regex.testNumeric(dataStr)) return exports.NUMERIC\n else if (Regex.testAlphanumeric(dataStr)) return exports.ALPHANUMERIC\n else if (Regex.testKanji(dataStr)) return exports.KANJI\n else return exports.BYTE\n}\n\n/**\n * Return mode name as string\n *\n * @param {Mode} mode Mode object\n * @returns {String} Mode name\n */\nexports.toString = function toString (mode) {\n if (mode && mode.id) return mode.id\n throw new Error('Invalid mode')\n}\n\n/**\n * Check if input param is a valid mode object\n *\n * @param {Mode} mode Mode object\n * @returns {Boolean} True if valid mode, false otherwise\n */\nexports.isValid = function isValid (mode) {\n return mode && mode.bit && mode.ccBits\n}\n\n/**\n * Get mode object from its name\n *\n * @param {String} string Mode name\n * @returns {Mode} Mode object\n */\nfunction fromString (string) {\n if (typeof string !== 'string') {\n throw new Error('Param is not a string')\n }\n\n const lcStr = string.toLowerCase()\n\n switch (lcStr) {\n case 'numeric':\n return exports.NUMERIC\n case 'alphanumeric':\n return exports.ALPHANUMERIC\n case 'kanji':\n return exports.KANJI\n case 'byte':\n return exports.BYTE\n default:\n throw new Error('Unknown mode: ' + string)\n }\n}\n\n/**\n * Returns mode from a value.\n * If value is not a valid mode, returns defaultValue\n *\n * @param {Mode|String} value Encoding mode\n * @param {Mode} defaultValue Fallback value\n * @return {Mode} Encoding mode\n */\nexports.from = function from (value, defaultValue) {\n if (exports.isValid(value)) {\n return value\n }\n\n try {\n return fromString(value)\n } catch (e) {\n return defaultValue\n }\n}\n","const Mode = require('./mode')\n\nfunction NumericData (data) {\n this.mode = Mode.NUMERIC\n this.data = data.toString()\n}\n\nNumericData.getBitsLength = function getBitsLength (length) {\n return 10 * Math.floor(length / 3) + ((length % 3) ? ((length % 3) * 3 + 1) : 0)\n}\n\nNumericData.prototype.getLength = function getLength () {\n return this.data.length\n}\n\nNumericData.prototype.getBitsLength = function getBitsLength () {\n return NumericData.getBitsLength(this.data.length)\n}\n\nNumericData.prototype.write = function write (bitBuffer) {\n let i, group, value\n\n // The input data string is divided into groups of three digits,\n // and each group is converted to its 10-bit binary equivalent.\n for (i = 0; i + 3 <= this.data.length; i += 3) {\n group = this.data.substr(i, 3)\n value = parseInt(group, 10)\n\n bitBuffer.put(value, 10)\n }\n\n // If the number of input digits is not an exact multiple of three,\n // the final one or two digits are converted to 4 or 7 bits respectively.\n const remainingNum = this.data.length - i\n if (remainingNum > 0) {\n group = this.data.substr(i)\n value = parseInt(group, 10)\n\n bitBuffer.put(value, remainingNum * 3 + 1)\n }\n}\n\nmodule.exports = NumericData\n","const GF = require('./galois-field')\n\n/**\n * Multiplies two polynomials inside Galois Field\n *\n * @param {Uint8Array} p1 Polynomial\n * @param {Uint8Array} p2 Polynomial\n * @return {Uint8Array} Product of p1 and p2\n */\nexports.mul = function mul (p1, p2) {\n const coeff = new Uint8Array(p1.length + p2.length - 1)\n\n for (let i = 0; i < p1.length; i++) {\n for (let j = 0; j < p2.length; j++) {\n coeff[i + j] ^= GF.mul(p1[i], p2[j])\n }\n }\n\n return coeff\n}\n\n/**\n * Calculate the remainder of polynomials division\n *\n * @param {Uint8Array} divident Polynomial\n * @param {Uint8Array} divisor Polynomial\n * @return {Uint8Array} Remainder\n */\nexports.mod = function mod (divident, divisor) {\n let result = new Uint8Array(divident)\n\n while ((result.length - divisor.length) >= 0) {\n const coeff = result[0]\n\n for (let i = 0; i < divisor.length; i++) {\n result[i] ^= GF.mul(divisor[i], coeff)\n }\n\n // remove all zeros from buffer head\n let offset = 0\n while (offset < result.length && result[offset] === 0) offset++\n result = result.slice(offset)\n }\n\n return result\n}\n\n/**\n * Generate an irreducible generator polynomial of specified degree\n * (used by Reed-Solomon encoder)\n *\n * @param {Number} degree Degree of the generator polynomial\n * @return {Uint8Array} Buffer containing polynomial coefficients\n */\nexports.generateECPolynomial = function generateECPolynomial (degree) {\n let poly = new Uint8Array([1])\n for (let i = 0; i < degree; i++) {\n poly = exports.mul(poly, new Uint8Array([1, GF.exp(i)]))\n }\n\n return poly\n}\n","const Utils = require('./utils')\nconst ECLevel = require('./error-correction-level')\nconst BitBuffer = require('./bit-buffer')\nconst BitMatrix = require('./bit-matrix')\nconst AlignmentPattern = require('./alignment-pattern')\nconst FinderPattern = require('./finder-pattern')\nconst MaskPattern = require('./mask-pattern')\nconst ECCode = require('./error-correction-code')\nconst ReedSolomonEncoder = require('./reed-solomon-encoder')\nconst Version = require('./version')\nconst FormatInfo = require('./format-info')\nconst Mode = require('./mode')\nconst Segments = require('./segments')\n\n/**\n * QRCode for JavaScript\n *\n * modified by Ryan Day for nodejs support\n * Copyright (c) 2011 Ryan Day\n *\n * Licensed under the MIT license:\n * http://www.opensource.org/licenses/mit-license.php\n *\n//---------------------------------------------------------------------\n// QRCode for JavaScript\n//\n// Copyright (c) 2009 Kazuhiko Arase\n//\n// URL: http://www.d-project.com/\n//\n// Licensed under the MIT license:\n// http://www.opensource.org/licenses/mit-license.php\n//\n// The word \"QR Code\" is registered trademark of\n// DENSO WAVE INCORPORATED\n// http://www.denso-wave.com/qrcode/faqpatent-e.html\n//\n//---------------------------------------------------------------------\n*/\n\n/**\n * Add finder patterns bits to matrix\n *\n * @param {BitMatrix} matrix Modules matrix\n * @param {Number} version QR Code version\n */\nfunction setupFinderPattern (matrix, version) {\n const size = matrix.size\n const pos = FinderPattern.getPositions(version)\n\n for (let i = 0; i < pos.length; i++) {\n const row = pos[i][0]\n const col = pos[i][1]\n\n for (let r = -1; r <= 7; r++) {\n if (row + r <= -1 || size <= row + r) continue\n\n for (let c = -1; c <= 7; c++) {\n if (col + c <= -1 || size <= col + c) continue\n\n if ((r >= 0 && r <= 6 && (c === 0 || c === 6)) ||\n (c >= 0 && c <= 6 && (r === 0 || r === 6)) ||\n (r >= 2 && r <= 4 && c >= 2 && c <= 4)) {\n matrix.set(row + r, col + c, true, true)\n } else {\n matrix.set(row + r, col + c, false, true)\n }\n }\n }\n }\n}\n\n/**\n * Add timing pattern bits to matrix\n *\n * Note: this function must be called before {@link setupAlignmentPattern}\n *\n * @param {BitMatrix} matrix Modules matrix\n */\nfunction setupTimingPattern (matrix) {\n const size = matrix.size\n\n for (let r = 8; r < size - 8; r++) {\n const value = r % 2 === 0\n matrix.set(r, 6, value, true)\n matrix.set(6, r, value, true)\n }\n}\n\n/**\n * Add alignment patterns bits to matrix\n *\n * Note: this function must be called after {@link setupTimingPattern}\n *\n * @param {BitMatrix} matrix Modules matrix\n * @param {Number} version QR Code version\n */\nfunction setupAlignmentPattern (matrix, version) {\n const pos = AlignmentPattern.getPositions(version)\n\n for (let i = 0; i < pos.length; i++) {\n const row = pos[i][0]\n const col = pos[i][1]\n\n for (let r = -2; r <= 2; r++) {\n for (let c = -2; c <= 2; c++) {\n if (r === -2 || r === 2 || c === -2 || c === 2 ||\n (r === 0 && c === 0)) {\n matrix.set(row + r, col + c, true, true)\n } else {\n matrix.set(row + r, col + c, false, true)\n }\n }\n }\n }\n}\n\n/**\n * Add version info bits to matrix\n *\n * @param {BitMatrix} matrix Modules matrix\n * @param {Number} version QR Code version\n */\nfunction setupVersionInfo (matrix, version) {\n const size = matrix.size\n const bits = Version.getEncodedBits(version)\n let row, col, mod\n\n for (let i = 0; i < 18; i++) {\n row = Math.floor(i / 3)\n col = i % 3 + size - 8 - 3\n mod = ((bits >> i) & 1) === 1\n\n matrix.set(row, col, mod, true)\n matrix.set(col, row, mod, true)\n }\n}\n\n/**\n * Add format info bits to matrix\n *\n * @param {BitMatrix} matrix Modules matrix\n * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n * @param {Number} maskPattern Mask pattern reference value\n */\nfunction setupFormatInfo (matrix, errorCorrectionLevel, maskPattern) {\n const size = matrix.size\n const bits = FormatInfo.getEncodedBits(errorCorrectionLevel, maskPattern)\n let i, mod\n\n for (i = 0; i < 15; i++) {\n mod = ((bits >> i) & 1) === 1\n\n // vertical\n if (i < 6) {\n matrix.set(i, 8, mod, true)\n } else if (i < 8) {\n matrix.set(i + 1, 8, mod, true)\n } else {\n matrix.set(size - 15 + i, 8, mod, true)\n }\n\n // horizontal\n if (i < 8) {\n matrix.set(8, size - i - 1, mod, true)\n } else if (i < 9) {\n matrix.set(8, 15 - i - 1 + 1, mod, true)\n } else {\n matrix.set(8, 15 - i - 1, mod, true)\n }\n }\n\n // fixed module\n matrix.set(size - 8, 8, 1, true)\n}\n\n/**\n * Add encoded data bits to matrix\n *\n * @param {BitMatrix} matrix Modules matrix\n * @param {Uint8Array} data Data codewords\n */\nfunction setupData (matrix, data) {\n const size = matrix.size\n let inc = -1\n let row = size - 1\n let bitIndex = 7\n let byteIndex = 0\n\n for (let col = size - 1; col > 0; col -= 2) {\n if (col === 6) col--\n\n while (true) {\n for (let c = 0; c < 2; c++) {\n if (!matrix.isReserved(row, col - c)) {\n let dark = false\n\n if (byteIndex < data.length) {\n dark = (((data[byteIndex] >>> bitIndex) & 1) === 1)\n }\n\n matrix.set(row, col - c, dark)\n bitIndex--\n\n if (bitIndex === -1) {\n byteIndex++\n bitIndex = 7\n }\n }\n }\n\n row += inc\n\n if (row < 0 || size <= row) {\n row -= inc\n inc = -inc\n break\n }\n }\n }\n}\n\n/**\n * Create encoded codewords from data input\n *\n * @param {Number} version QR Code version\n * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n * @param {ByteData} data Data input\n * @return {Uint8Array} Buffer containing encoded codewords\n */\nfunction createData (version, errorCorrectionLevel, segments) {\n // Prepare data buffer\n const buffer = new BitBuffer()\n\n segments.forEach(function (data) {\n // prefix data with mode indicator (4 bits)\n buffer.put(data.mode.bit, 4)\n\n // Prefix data with character count indicator.\n // The character count indicator is a string of bits that represents the\n // number of characters that are being encoded.\n // The character count indicator must be placed after the mode indicator\n // and must be a certain number of bits long, depending on the QR version\n // and data mode\n // @see {@link Mode.getCharCountIndicator}.\n buffer.put(data.getLength(), Mode.getCharCountIndicator(data.mode, version))\n\n // add binary data sequence to buffer\n data.write(buffer)\n })\n\n // Calculate required number of bits\n const totalCodewords = Utils.getSymbolTotalCodewords(version)\n const ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel)\n const dataTotalCodewordsBits = (totalCodewords - ecTotalCodewords) * 8\n\n // Add a terminator.\n // If the bit string is shorter than the total number of required bits,\n // a terminator of up to four 0s must be added to the right side of the string.\n // If the bit string is more than four bits shorter than the required number of bits,\n // add four 0s to the end.\n if (buffer.getLengthInBits() + 4 <= dataTotalCodewordsBits) {\n buffer.put(0, 4)\n }\n\n // If the bit string is fewer than four bits shorter, add only the number of 0s that\n // are needed to reach the required number of bits.\n\n // After adding the terminator, if the number of bits in the string is not a multiple of 8,\n // pad the string on the right with 0s to make the string's length a multiple of 8.\n while (buffer.getLengthInBits() % 8 !== 0) {\n buffer.putBit(0)\n }\n\n // Add pad bytes if the string is still shorter than the total number of required bits.\n // Extend the buffer to fill the data capacity of the symbol corresponding to\n // the Version and Error Correction Level by adding the Pad Codewords 11101100 (0xEC)\n // and 00010001 (0x11) alternately.\n const remainingByte = (dataTotalCodewordsBits - buffer.getLengthInBits()) / 8\n for (let i = 0; i < remainingByte; i++) {\n buffer.put(i % 2 ? 0x11 : 0xEC, 8)\n }\n\n return createCodewords(buffer, version, errorCorrectionLevel)\n}\n\n/**\n * Encode input data with Reed-Solomon and return codewords with\n * relative error correction bits\n *\n * @param {BitBuffer} bitBuffer Data to encode\n * @param {Number} version QR Code version\n * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n * @return {Uint8Array} Buffer containing encoded codewords\n */\nfunction createCodewords (bitBuffer, version, errorCorrectionLevel) {\n // Total codewords for this QR code version (Data + Error correction)\n const totalCodewords = Utils.getSymbolTotalCodewords(version)\n\n // Total number of error correction codewords\n const ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel)\n\n // Total number of data codewords\n const dataTotalCodewords = totalCodewords - ecTotalCodewords\n\n // Total number of blocks\n const ecTotalBlocks = ECCode.getBlocksCount(version, errorCorrectionLevel)\n\n // Calculate how many blocks each group should contain\n const blocksInGroup2 = totalCodewords % ecTotalBlocks\n const blocksInGroup1 = ecTotalBlocks - blocksInGroup2\n\n const totalCodewordsInGroup1 = Math.floor(totalCodewords / ecTotalBlocks)\n\n const dataCodewordsInGroup1 = Math.floor(dataTotalCodewords / ecTotalBlocks)\n const dataCodewordsInGroup2 = dataCodewordsInGroup1 + 1\n\n // Number of EC codewords is the same for both groups\n const ecCount = totalCodewordsInGroup1 - dataCodewordsInGroup1\n\n // Initialize a Reed-Solomon encoder with a generator polynomial of degree ecCount\n const rs = new ReedSolomonEncoder(ecCount)\n\n let offset = 0\n const dcData = new Array(ecTotalBlocks)\n const ecData = new Array(ecTotalBlocks)\n let maxDataSize = 0\n const buffer = new Uint8Array(bitBuffer.buffer)\n\n // Divide the buffer into the required number of blocks\n for (let b = 0; b < ecTotalBlocks; b++) {\n const dataSize = b < blocksInGroup1 ? dataCodewordsInGroup1 : dataCodewordsInGroup2\n\n // extract a block of data from buffer\n dcData[b] = buffer.slice(offset, offset + dataSize)\n\n // Calculate EC codewords for this data block\n ecData[b] = rs.encode(dcData[b])\n\n offset += dataSize\n maxDataSize = Math.max(maxDataSize, dataSize)\n }\n\n // Create final data\n // Interleave the data and error correction codewords from each block\n const data = new Uint8Array(totalCodewords)\n let index = 0\n let i, r\n\n // Add data codewords\n for (i = 0; i < maxDataSize; i++) {\n for (r = 0; r < ecTotalBlocks; r++) {\n if (i < dcData[r].length) {\n data[index++] = dcData[r][i]\n }\n }\n }\n\n // Apped EC codewords\n for (i = 0; i < ecCount; i++) {\n for (r = 0; r < ecTotalBlocks; r++) {\n data[index++] = ecData[r][i]\n }\n }\n\n return data\n}\n\n/**\n * Build QR Code symbol\n *\n * @param {String} data Input string\n * @param {Number} version QR Code version\n * @param {ErrorCorretionLevel} errorCorrectionLevel Error level\n * @param {MaskPattern} maskPattern Mask pattern\n * @return {Object} Object containing symbol data\n */\nfunction createSymbol (data, version, errorCorrectionLevel, maskPattern) {\n let segments\n\n if (Array.isArray(data)) {\n segments = Segments.fromArray(data)\n } else if (typeof data === 'string') {\n let estimatedVersion = version\n\n if (!estimatedVersion) {\n const rawSegments = Segments.rawSplit(data)\n\n // Estimate best version that can contain raw splitted segments\n estimatedVersion = Version.getBestVersionForData(rawSegments, errorCorrectionLevel)\n }\n\n // Build optimized segments\n // If estimated version is undefined, try with the highest version\n segments = Segments.fromString(data, estimatedVersion || 40)\n } else {\n throw new Error('Invalid data')\n }\n\n // Get the min version that can contain data\n const bestVersion = Version.getBestVersionForData(segments, errorCorrectionLevel)\n\n // If no version is found, data cannot be stored\n if (!bestVersion) {\n throw new Error('The amount of data is too big to be stored in a QR Code')\n }\n\n // If not specified, use min version as default\n if (!version) {\n version = bestVersion\n\n // Check if the specified version can contain the data\n } else if (version < bestVersion) {\n throw new Error('\\n' +\n 'The chosen QR Code version cannot contain this amount of data.\\n' +\n 'Minimum version required to store current data is: ' + bestVersion + '.\\n'\n )\n }\n\n const dataBits = createData(version, errorCorrectionLevel, segments)\n\n // Allocate matrix buffer\n const moduleCount = Utils.getSymbolSize(version)\n const modules = new BitMatrix(moduleCount)\n\n // Add function modules\n setupFinderPattern(modules, version)\n setupTimingPattern(modules)\n setupAlignmentPattern(modules, version)\n\n // Add temporary dummy bits for format info just to set them as reserved.\n // This is needed to prevent these bits from being masked by {@link MaskPattern.applyMask}\n // since the masking operation must be performed only on the encoding region.\n // These blocks will be replaced with correct values later in code.\n setupFormatInfo(modules, errorCorrectionLevel, 0)\n\n if (version >= 7) {\n setupVersionInfo(modules, version)\n }\n\n // Add data codewords\n setupData(modules, dataBits)\n\n if (isNaN(maskPattern)) {\n // Find best mask pattern\n maskPattern = MaskPattern.getBestMask(modules,\n setupFormatInfo.bind(null, modules, errorCorrectionLevel))\n }\n\n // Apply mask pattern\n MaskPattern.applyMask(maskPattern, modules)\n\n // Replace format info bits with correct values\n setupFormatInfo(modules, errorCorrectionLevel, maskPattern)\n\n return {\n modules: modules,\n version: version,\n errorCorrectionLevel: errorCorrectionLevel,\n maskPattern: maskPattern,\n segments: segments\n }\n}\n\n/**\n * QR Code\n *\n * @param {String | Array} data Input data\n * @param {Object} options Optional configurations\n * @param {Number} options.version QR Code version\n * @param {String} options.errorCorrectionLevel Error correction level\n * @param {Function} options.toSJISFunc Helper func to convert utf8 to sjis\n */\nexports.create = function create (data, options) {\n if (typeof data === 'undefined' || data === '') {\n throw new Error('No input text')\n }\n\n let errorCorrectionLevel = ECLevel.M\n let version\n let mask\n\n if (typeof options !== 'undefined') {\n // Use higher error correction level as default\n errorCorrectionLevel = ECLevel.from(options.errorCorrectionLevel, ECLevel.M)\n version = Version.from(options.version)\n mask = MaskPattern.from(options.maskPattern)\n\n if (options.toSJISFunc) {\n Utils.setToSJISFunction(options.toSJISFunc)\n }\n }\n\n return createSymbol(data, version, errorCorrectionLevel, mask)\n}\n","const Polynomial = require('./polynomial')\n\nfunction ReedSolomonEncoder (degree) {\n this.genPoly = undefined\n this.degree = degree\n\n if (this.degree) this.initialize(this.degree)\n}\n\n/**\n * Initialize the encoder.\n * The input param should correspond to the number of error correction codewords.\n *\n * @param {Number} degree\n */\nReedSolomonEncoder.prototype.initialize = function initialize (degree) {\n // create an irreducible generator polynomial\n this.degree = degree\n this.genPoly = Polynomial.generateECPolynomial(this.degree)\n}\n\n/**\n * Encodes a chunk of data\n *\n * @param {Uint8Array} data Buffer containing input data\n * @return {Uint8Array} Buffer containing encoded data\n */\nReedSolomonEncoder.prototype.encode = function encode (data) {\n if (!this.genPoly) {\n throw new Error('Encoder not initialized')\n }\n\n // Calculate EC for this data block\n // extends data size to data+genPoly size\n const paddedData = new Uint8Array(data.length + this.degree)\n paddedData.set(data)\n\n // The error correction codewords are the remainder after dividing the data codewords\n // by a generator polynomial\n const remainder = Polynomial.mod(paddedData, this.genPoly)\n\n // return EC data blocks (last n byte, where n is the degree of genPoly)\n // If coefficients number in remainder are less than genPoly degree,\n // pad with 0s to the left to reach the needed number of coefficients\n const start = this.degree - remainder.length\n if (start > 0) {\n const buff = new Uint8Array(this.degree)\n buff.set(remainder, start)\n\n return buff\n }\n\n return remainder\n}\n\nmodule.exports = ReedSolomonEncoder\n","const numeric = '[0-9]+'\nconst alphanumeric = '[A-Z $%*+\\\\-./:]+'\nlet kanji = '(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|' +\n '[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|' +\n '[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|' +\n '[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+'\nkanji = kanji.replace(/u/g, '\\\\u')\n\nconst byte = '(?:(?![A-Z0-9 $%*+\\\\-./:]|' + kanji + ')(?:.|[\\r\\n]))+'\n\nexports.KANJI = new RegExp(kanji, 'g')\nexports.BYTE_KANJI = new RegExp('[^A-Z0-9 $%*+\\\\-./:]+', 'g')\nexports.BYTE = new RegExp(byte, 'g')\nexports.NUMERIC = new RegExp(numeric, 'g')\nexports.ALPHANUMERIC = new RegExp(alphanumeric, 'g')\n\nconst TEST_KANJI = new RegExp('^' + kanji + '$')\nconst TEST_NUMERIC = new RegExp('^' + numeric + '$')\nconst TEST_ALPHANUMERIC = new RegExp('^[A-Z0-9 $%*+\\\\-./:]+$')\n\nexports.testKanji = function testKanji (str) {\n return TEST_KANJI.test(str)\n}\n\nexports.testNumeric = function testNumeric (str) {\n return TEST_NUMERIC.test(str)\n}\n\nexports.testAlphanumeric = function testAlphanumeric (str) {\n return TEST_ALPHANUMERIC.test(str)\n}\n","const Mode = require('./mode')\nconst NumericData = require('./numeric-data')\nconst AlphanumericData = require('./alphanumeric-data')\nconst ByteData = require('./byte-data')\nconst KanjiData = require('./kanji-data')\nconst Regex = require('./regex')\nconst Utils = require('./utils')\nconst dijkstra = require('dijkstrajs')\n\n/**\n * Returns UTF8 byte length\n *\n * @param {String} str Input string\n * @return {Number} Number of byte\n */\nfunction getStringByteLength (str) {\n return unescape(encodeURIComponent(str)).length\n}\n\n/**\n * Get a list of segments of the specified mode\n * from a string\n *\n * @param {Mode} mode Segment mode\n * @param {String} str String to process\n * @return {Array} Array of object with segments data\n */\nfunction getSegments (regex, mode, str) {\n const segments = []\n let result\n\n while ((result = regex.exec(str)) !== null) {\n segments.push({\n data: result[0],\n index: result.index,\n mode: mode,\n length: result[0].length\n })\n }\n\n return segments\n}\n\n/**\n * Extracts a series of segments with the appropriate\n * modes from a string\n *\n * @param {String} dataStr Input string\n * @return {Array} Array of object with segments data\n */\nfunction getSegmentsFromString (dataStr) {\n const numSegs = getSegments(Regex.NUMERIC, Mode.NUMERIC, dataStr)\n const alphaNumSegs = getSegments(Regex.ALPHANUMERIC, Mode.ALPHANUMERIC, dataStr)\n let byteSegs\n let kanjiSegs\n\n if (Utils.isKanjiModeEnabled()) {\n byteSegs = getSegments(Regex.BYTE, Mode.BYTE, dataStr)\n kanjiSegs = getSegments(Regex.KANJI, Mode.KANJI, dataStr)\n } else {\n byteSegs = getSegments(Regex.BYTE_KANJI, Mode.BYTE, dataStr)\n kanjiSegs = []\n }\n\n const segs = numSegs.concat(alphaNumSegs, byteSegs, kanjiSegs)\n\n return segs\n .sort(function (s1, s2) {\n return s1.index - s2.index\n })\n .map(function (obj) {\n return {\n data: obj.data,\n mode: obj.mode,\n length: obj.length\n }\n })\n}\n\n/**\n * Returns how many bits are needed to encode a string of\n * specified length with the specified mode\n *\n * @param {Number} length String length\n * @param {Mode} mode Segment mode\n * @return {Number} Bit length\n */\nfunction getSegmentBitsLength (length, mode) {\n switch (mode) {\n case Mode.NUMERIC:\n return NumericData.getBitsLength(length)\n case Mode.ALPHANUMERIC:\n return AlphanumericData.getBitsLength(length)\n case Mode.KANJI:\n return KanjiData.getBitsLength(length)\n case Mode.BYTE:\n return ByteData.getBitsLength(length)\n }\n}\n\n/**\n * Merges adjacent segments which have the same mode\n *\n * @param {Array} segs Array of object with segments data\n * @return {Array} Array of object with segments data\n */\nfunction mergeSegments (segs) {\n return segs.reduce(function (acc, curr) {\n const prevSeg = acc.length - 1 >= 0 ? acc[acc.length - 1] : null\n if (prevSeg && prevSeg.mode === curr.mode) {\n acc[acc.length - 1].data += curr.data\n return acc\n }\n\n acc.push(curr)\n return acc\n }, [])\n}\n\n/**\n * Generates a list of all possible nodes combination which\n * will be used to build a segments graph.\n *\n * Nodes are divided by groups. Each group will contain a list of all the modes\n * in which is possible to encode the given text.\n *\n * For example the text '12345' can be encoded as Numeric, Alphanumeric or Byte.\n * The group for '12345' will contain then 3 objects, one for each\n * possible encoding mode.\n *\n * Each node represents a possible segment.\n *\n * @param {Array} segs Array of object with segments data\n * @return {Array} Array of object with segments data\n */\nfunction buildNodes (segs) {\n const nodes = []\n for (let i = 0; i < segs.length; i++) {\n const seg = segs[i]\n\n switch (seg.mode) {\n case Mode.NUMERIC:\n nodes.push([seg,\n { data: seg.data, mode: Mode.ALPHANUMERIC, length: seg.length },\n { data: seg.data, mode: Mode.BYTE, length: seg.length }\n ])\n break\n case Mode.ALPHANUMERIC:\n nodes.push([seg,\n { data: seg.data, mode: Mode.BYTE, length: seg.length }\n ])\n break\n case Mode.KANJI:\n nodes.push([seg,\n { data: seg.data, mode: Mode.BYTE, length: getStringByteLength(seg.data) }\n ])\n break\n case Mode.BYTE:\n nodes.push([\n { data: seg.data, mode: Mode.BYTE, length: getStringByteLength(seg.data) }\n ])\n }\n }\n\n return nodes\n}\n\n/**\n * Builds a graph from a list of nodes.\n * All segments in each node group will be connected with all the segments of\n * the next group and so on.\n *\n * At each connection will be assigned a weight depending on the\n * segment's byte length.\n *\n * @param {Array} nodes Array of object with segments data\n * @param {Number} version QR Code version\n * @return {Object} Graph of all possible segments\n */\nfunction buildGraph (nodes, version) {\n const table = {}\n const graph = { start: {} }\n let prevNodeIds = ['start']\n\n for (let i = 0; i < nodes.length; i++) {\n const nodeGroup = nodes[i]\n const currentNodeIds = []\n\n for (let j = 0; j < nodeGroup.length; j++) {\n const node = nodeGroup[j]\n const key = '' + i + j\n\n currentNodeIds.push(key)\n table[key] = { node: node, lastCount: 0 }\n graph[key] = {}\n\n for (let n = 0; n < prevNodeIds.length; n++) {\n const prevNodeId = prevNodeIds[n]\n\n if (table[prevNodeId] && table[prevNodeId].node.mode === node.mode) {\n graph[prevNodeId][key] =\n getSegmentBitsLength(table[prevNodeId].lastCount + node.length, node.mode) -\n getSegmentBitsLength(table[prevNodeId].lastCount, node.mode)\n\n table[prevNodeId].lastCount += node.length\n } else {\n if (table[prevNodeId]) table[prevNodeId].lastCount = node.length\n\n graph[prevNodeId][key] = getSegmentBitsLength(node.length, node.mode) +\n 4 + Mode.getCharCountIndicator(node.mode, version) // switch cost\n }\n }\n }\n\n prevNodeIds = currentNodeIds\n }\n\n for (let n = 0; n < prevNodeIds.length; n++) {\n graph[prevNodeIds[n]].end = 0\n }\n\n return { map: graph, table: table }\n}\n\n/**\n * Builds a segment from a specified data and mode.\n * If a mode is not specified, the more suitable will be used.\n *\n * @param {String} data Input data\n * @param {Mode | String} modesHint Data mode\n * @return {Segment} Segment\n */\nfunction buildSingleSegment (data, modesHint) {\n let mode\n const bestMode = Mode.getBestModeForData(data)\n\n mode = Mode.from(modesHint, bestMode)\n\n // Make sure data can be encoded\n if (mode !== Mode.BYTE && mode.bit < bestMode.bit) {\n throw new Error('\"' + data + '\"' +\n ' cannot be encoded with mode ' + Mode.toString(mode) +\n '.\\n Suggested mode is: ' + Mode.toString(bestMode))\n }\n\n // Use Mode.BYTE if Kanji support is disabled\n if (mode === Mode.KANJI && !Utils.isKanjiModeEnabled()) {\n mode = Mode.BYTE\n }\n\n switch (mode) {\n case Mode.NUMERIC:\n return new NumericData(data)\n\n case Mode.ALPHANUMERIC:\n return new AlphanumericData(data)\n\n case Mode.KANJI:\n return new KanjiData(data)\n\n case Mode.BYTE:\n return new ByteData(data)\n }\n}\n\n/**\n * Builds a list of segments from an array.\n * Array can contain Strings or Objects with segment's info.\n *\n * For each item which is a string, will be generated a segment with the given\n * string and the more appropriate encoding mode.\n *\n * For each item which is an object, will be generated a segment with the given\n * data and mode.\n * Objects must contain at least the property \"data\".\n * If property \"mode\" is not present, the more suitable mode will be used.\n *\n * @param {Array} array Array of objects with segments data\n * @return {Array} Array of Segments\n */\nexports.fromArray = function fromArray (array) {\n return array.reduce(function (acc, seg) {\n if (typeof seg === 'string') {\n acc.push(buildSingleSegment(seg, null))\n } else if (seg.data) {\n acc.push(buildSingleSegment(seg.data, seg.mode))\n }\n\n return acc\n }, [])\n}\n\n/**\n * Builds an optimized sequence of segments from a string,\n * which will produce the shortest possible bitstream.\n *\n * @param {String} data Input string\n * @param {Number} version QR Code version\n * @return {Array} Array of segments\n */\nexports.fromString = function fromString (data, version) {\n const segs = getSegmentsFromString(data, Utils.isKanjiModeEnabled())\n\n const nodes = buildNodes(segs)\n const graph = buildGraph(nodes, version)\n const path = dijkstra.find_path(graph.map, 'start', 'end')\n\n const optimizedSegs = []\n for (let i = 1; i < path.length - 1; i++) {\n optimizedSegs.push(graph.table[path[i]].node)\n }\n\n return exports.fromArray(mergeSegments(optimizedSegs))\n}\n\n/**\n * Splits a string in various segments with the modes which\n * best represent their content.\n * The produced segments are far from being optimized.\n * The output of this function is only used to estimate a QR Code version\n * which may contain the data.\n *\n * @param {string} data Input string\n * @return {Array} Array of segments\n */\nexports.rawSplit = function rawSplit (data) {\n return exports.fromArray(\n getSegmentsFromString(data, Utils.isKanjiModeEnabled())\n )\n}\n","let toSJISFunction\nconst CODEWORDS_COUNT = [\n 0, // Not used\n 26, 44, 70, 100, 134, 172, 196, 242, 292, 346,\n 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085,\n 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185,\n 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706\n]\n\n/**\n * Returns the QR Code size for the specified version\n *\n * @param {Number} version QR Code version\n * @return {Number} size of QR code\n */\nexports.getSymbolSize = function getSymbolSize (version) {\n if (!version) throw new Error('\"version\" cannot be null or undefined')\n if (version < 1 || version > 40) throw new Error('\"version\" should be in range from 1 to 40')\n return version * 4 + 17\n}\n\n/**\n * Returns the total number of codewords used to store data and EC information.\n *\n * @param {Number} version QR Code version\n * @return {Number} Data length in bits\n */\nexports.getSymbolTotalCodewords = function getSymbolTotalCodewords (version) {\n return CODEWORDS_COUNT[version]\n}\n\n/**\n * Encode data with Bose-Chaudhuri-Hocquenghem\n *\n * @param {Number} data Value to encode\n * @return {Number} Encoded value\n */\nexports.getBCHDigit = function (data) {\n let digit = 0\n\n while (data !== 0) {\n digit++\n data >>>= 1\n }\n\n return digit\n}\n\nexports.setToSJISFunction = function setToSJISFunction (f) {\n if (typeof f !== 'function') {\n throw new Error('\"toSJISFunc\" is not a valid function.')\n }\n\n toSJISFunction = f\n}\n\nexports.isKanjiModeEnabled = function () {\n return typeof toSJISFunction !== 'undefined'\n}\n\nexports.toSJIS = function toSJIS (kanji) {\n return toSJISFunction(kanji)\n}\n","/**\n * Check if QR Code version is valid\n *\n * @param {Number} version QR Code version\n * @return {Boolean} true if valid version, false otherwise\n */\nexports.isValid = function isValid (version) {\n return !isNaN(version) && version >= 1 && version <= 40\n}\n","const Utils = require('./utils')\nconst ECCode = require('./error-correction-code')\nconst ECLevel = require('./error-correction-level')\nconst Mode = require('./mode')\nconst VersionCheck = require('./version-check')\n\n// Generator polynomial used to encode version information\nconst G18 = (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0)\nconst G18_BCH = Utils.getBCHDigit(G18)\n\nfunction getBestVersionForDataLength (mode, length, errorCorrectionLevel) {\n for (let currentVersion = 1; currentVersion <= 40; currentVersion++) {\n if (length <= exports.getCapacity(currentVersion, errorCorrectionLevel, mode)) {\n return currentVersion\n }\n }\n\n return undefined\n}\n\nfunction getReservedBitsCount (mode, version) {\n // Character count indicator + mode indicator bits\n return Mode.getCharCountIndicator(mode, version) + 4\n}\n\nfunction getTotalBitsFromDataArray (segments, version) {\n let totalBits = 0\n\n segments.forEach(function (data) {\n const reservedBits = getReservedBitsCount(data.mode, version)\n totalBits += reservedBits + data.getBitsLength()\n })\n\n return totalBits\n}\n\nfunction getBestVersionForMixedData (segments, errorCorrectionLevel) {\n for (let currentVersion = 1; currentVersion <= 40; currentVersion++) {\n const length = getTotalBitsFromDataArray(segments, currentVersion)\n if (length <= exports.getCapacity(currentVersion, errorCorrectionLevel, Mode.MIXED)) {\n return currentVersion\n }\n }\n\n return undefined\n}\n\n/**\n * Returns version number from a value.\n * If value is not a valid version, returns defaultValue\n *\n * @param {Number|String} value QR Code version\n * @param {Number} defaultValue Fallback value\n * @return {Number} QR Code version number\n */\nexports.from = function from (value, defaultValue) {\n if (VersionCheck.isValid(value)) {\n return parseInt(value, 10)\n }\n\n return defaultValue\n}\n\n/**\n * Returns how much data can be stored with the specified QR code version\n * and error correction level\n *\n * @param {Number} version QR Code version (1-40)\n * @param {Number} errorCorrectionLevel Error correction level\n * @param {Mode} mode Data mode\n * @return {Number} Quantity of storable data\n */\nexports.getCapacity = function getCapacity (version, errorCorrectionLevel, mode) {\n if (!VersionCheck.isValid(version)) {\n throw new Error('Invalid QR Code version')\n }\n\n // Use Byte mode as default\n if (typeof mode === 'undefined') mode = Mode.BYTE\n\n // Total codewords for this QR code version (Data + Error correction)\n const totalCodewords = Utils.getSymbolTotalCodewords(version)\n\n // Total number of error correction codewords\n const ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel)\n\n // Total number of data codewords\n const dataTotalCodewordsBits = (totalCodewords - ecTotalCodewords) * 8\n\n if (mode === Mode.MIXED) return dataTotalCodewordsBits\n\n const usableBits = dataTotalCodewordsBits - getReservedBitsCount(mode, version)\n\n // Return max number of storable codewords\n switch (mode) {\n case Mode.NUMERIC:\n return Math.floor((usableBits / 10) * 3)\n\n case Mode.ALPHANUMERIC:\n return Math.floor((usableBits / 11) * 2)\n\n case Mode.KANJI:\n return Math.floor(usableBits / 13)\n\n case Mode.BYTE:\n default:\n return Math.floor(usableBits / 8)\n }\n}\n\n/**\n * Returns the minimum version needed to contain the amount of data\n *\n * @param {Segment} data Segment of data\n * @param {Number} [errorCorrectionLevel=H] Error correction level\n * @param {Mode} mode Data mode\n * @return {Number} QR Code version\n */\nexports.getBestVersionForData = function getBestVersionForData (data, errorCorrectionLevel) {\n let seg\n\n const ecl = ECLevel.from(errorCorrectionLevel, ECLevel.M)\n\n if (Array.isArray(data)) {\n if (data.length > 1) {\n return getBestVersionForMixedData(data, ecl)\n }\n\n if (data.length === 0) {\n return 1\n }\n\n seg = data[0]\n } else {\n seg = data\n }\n\n return getBestVersionForDataLength(seg.mode, seg.getLength(), ecl)\n}\n\n/**\n * Returns version information with relative error correction bits\n *\n * The version information is included in QR Code symbols of version 7 or larger.\n * It consists of an 18-bit sequence containing 6 data bits,\n * with 12 error correction bits calculated using the (18, 6) Golay code.\n *\n * @param {Number} version QR Code version\n * @return {Number} Encoded version info bits\n */\nexports.getEncodedBits = function getEncodedBits (version) {\n if (!VersionCheck.isValid(version) || version < 7) {\n throw new Error('Invalid QR Code version')\n }\n\n let d = version << 12\n\n while (Utils.getBCHDigit(d) - G18_BCH >= 0) {\n d ^= (G18 << (Utils.getBCHDigit(d) - G18_BCH))\n }\n\n return (version << 12) | d\n}\n","const Utils = require('./utils')\n\nfunction clearCanvas (ctx, canvas, size) {\n ctx.clearRect(0, 0, canvas.width, canvas.height)\n\n if (!canvas.style) canvas.style = {}\n canvas.height = size\n canvas.width = size\n canvas.style.height = size + 'px'\n canvas.style.width = size + 'px'\n}\n\nfunction getCanvasElement () {\n try {\n return document.createElement('canvas')\n } catch (e) {\n throw new Error('You need to specify a canvas element')\n }\n}\n\nexports.render = function render (qrData, canvas, options) {\n let opts = options\n let canvasEl = canvas\n\n if (typeof opts === 'undefined' && (!canvas || !canvas.getContext)) {\n opts = canvas\n canvas = undefined\n }\n\n if (!canvas) {\n canvasEl = getCanvasElement()\n }\n\n opts = Utils.getOptions(opts)\n const size = Utils.getImageWidth(qrData.modules.size, opts)\n\n const ctx = canvasEl.getContext('2d')\n const image = ctx.createImageData(size, size)\n Utils.qrToImageData(image.data, qrData, opts)\n\n clearCanvas(ctx, canvasEl, size)\n ctx.putImageData(image, 0, 0)\n\n return canvasEl\n}\n\nexports.renderToDataURL = function renderToDataURL (qrData, canvas, options) {\n let opts = options\n\n if (typeof opts === 'undefined' && (!canvas || !canvas.getContext)) {\n opts = canvas\n canvas = undefined\n }\n\n if (!opts) opts = {}\n\n const canvasEl = exports.render(qrData, canvas, opts)\n\n const type = opts.type || 'image/png'\n const rendererOpts = opts.rendererOpts || {}\n\n return canvasEl.toDataURL(type, rendererOpts.quality)\n}\n","const Utils = require('./utils')\n\nfunction getColorAttrib (color, attrib) {\n const alpha = color.a / 255\n const str = attrib + '=\"' + color.hex + '\"'\n\n return alpha < 1\n ? str + ' ' + attrib + '-opacity=\"' + alpha.toFixed(2).slice(1) + '\"'\n : str\n}\n\nfunction svgCmd (cmd, x, y) {\n let str = cmd + x\n if (typeof y !== 'undefined') str += ' ' + y\n\n return str\n}\n\nfunction qrToPath (data, size, margin) {\n let path = ''\n let moveBy = 0\n let newRow = false\n let lineLength = 0\n\n for (let i = 0; i < data.length; i++) {\n const col = Math.floor(i % size)\n const row = Math.floor(i / size)\n\n if (!col && !newRow) newRow = true\n\n if (data[i]) {\n lineLength++\n\n if (!(i > 0 && col > 0 && data[i - 1])) {\n path += newRow\n ? svgCmd('M', col + margin, 0.5 + row + margin)\n : svgCmd('m', moveBy, 0)\n\n moveBy = 0\n newRow = false\n }\n\n if (!(col + 1 < size && data[i + 1])) {\n path += svgCmd('h', lineLength)\n lineLength = 0\n }\n } else {\n moveBy++\n }\n }\n\n return path\n}\n\nexports.render = function render (qrData, options, cb) {\n const opts = Utils.getOptions(options)\n const size = qrData.modules.size\n const data = qrData.modules.data\n const qrcodesize = size + opts.margin * 2\n\n const bg = !opts.color.light.a\n ? ''\n : '<path ' + getColorAttrib(opts.color.light, 'fill') +\n ' d=\"M0 0h' + qrcodesize + 'v' + qrcodesize + 'H0z\"/>'\n\n const path =\n '<path ' + getColorAttrib(opts.color.dark, 'stroke') +\n ' d=\"' + qrToPath(data, size, opts.margin) + '\"/>'\n\n const viewBox = 'viewBox=\"' + '0 0 ' + qrcodesize + ' ' + qrcodesize + '\"'\n\n const width = !opts.width ? '' : 'width=\"' + opts.width + '\" height=\"' + opts.width + '\" '\n\n const svgTag = '<svg xmlns=\"http://www.w3.org/2000/svg\" ' + width + viewBox + ' shape-rendering=\"crispEdges\">' + bg + path + '</svg>\\n'\n\n if (typeof cb === 'function') {\n cb(null, svgTag)\n }\n\n return svgTag\n}\n","function hex2rgba (hex) {\n if (typeof hex === 'number') {\n hex = hex.toString()\n }\n\n if (typeof hex !== 'string') {\n throw new Error('Color should be defined as hex string')\n }\n\n let hexCode = hex.slice().replace('#', '').split('')\n if (hexCode.length < 3 || hexCode.length === 5 || hexCode.length > 8) {\n throw new Error('Invalid hex color: ' + hex)\n }\n\n // Convert from short to long form (fff -> ffffff)\n if (hexCode.length === 3 || hexCode.length === 4) {\n hexCode = Array.prototype.concat.apply([], hexCode.map(function (c) {\n return [c, c]\n }))\n }\n\n // Add default alpha value\n if (hexCode.length === 6) hexCode.push('F', 'F')\n\n const hexValue = parseInt(hexCode.join(''), 16)\n\n return {\n r: (hexValue >> 24) & 255,\n g: (hexValue >> 16) & 255,\n b: (hexValue >> 8) & 255,\n a: hexValue & 255,\n hex: '#' + hexCode.slice(0, 6).join('')\n }\n}\n\nexports.getOptions = function getOptions (options) {\n if (!options) options = {}\n if (!options.color) options.color = {}\n\n const margin = typeof options.margin === 'undefined' ||\n options.margin === null ||\n options.margin < 0\n ? 4\n : options.margin\n\n const width = options.width && options.width >= 21 ? options.width : undefined\n const scale = options.scale || 4\n\n return {\n width: width,\n scale: width ? 4 : scale,\n margin: margin,\n color: {\n dark: hex2rgba(options.color.dark || '#000000ff'),\n light: hex2rgba(options.color.light || '#ffffffff')\n },\n type: options.type,\n rendererOpts: options.rendererOpts || {}\n }\n}\n\nexports.getScale = function getScale (qrSize, opts) {\n return opts.width && opts.width >= qrSize + opts.margin * 2\n ? opts.width / (qrSize + opts.margin * 2)\n : opts.scale\n}\n\nexports.getImageWidth = function getImageWidth (qrSize, opts) {\n const scale = exports.getScale(qrSize, opts)\n return Math.floor((qrSize + opts.margin * 2) * scale)\n}\n\nexports.qrToImageData = function qrToImageData (imgData, qr, opts) {\n const size = qr.modules.size\n const data = qr.modules.data\n const scale = exports.getScale(size, opts)\n const symbolSize = Math.floor((size + opts.margin * 2) * scale)\n const scaledMargin = opts.margin * scale\n const palette = [opts.color.light, opts.color.dark]\n\n for (let i = 0; i < symbolSize; i++) {\n for (let j = 0; j < symbolSize; j++) {\n let posDst = (i * symbolSize + j) * 4\n let pxColor = opts.color.light\n\n if (i >= scaledMargin && j >= scaledMargin &&\n i < symbolSize - scaledMargin && j < symbolSize - scaledMargin) {\n const iSrc = Math.floor((i - scaledMargin) / scale)\n const jSrc = Math.floor((j - scaledMargin) / scale)\n pxColor = palette[data[iSrc * size + jSrc] ? 1 : 0]\n }\n\n imgData[posDst++] = pxColor.r\n imgData[posDst++] = pxColor.g\n imgData[posDst++] = pxColor.b\n imgData[posDst] = pxColor.a\n }\n }\n}\n","/**\n * @license React\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}var da=new Set,ea={};function fa(a,b){ha(a,b);ha(a+\"Capture\",b)}\nfunction ha(a,b){ea[a]=b;for(a=0;a<b.length;a++)da.add(b[a])}\nvar ia=!(\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement),ja=Object.prototype.hasOwnProperty,ka=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,la=\n{},ma={};function oa(a){if(ja.call(ma,a))return!0;if(ja.call(la,a))return!1;if(ka.test(a))return ma[a]=!0;la[a]=!0;return!1}function pa(a,b,c,d){if(null!==c&&0===c.type)return!1;switch(typeof b){case \"function\":case \"symbol\":return!0;case \"boolean\":if(d)return!1;if(null!==c)return!c.acceptsBooleans;a=a.toLowerCase().slice(0,5);return\"data-\"!==a&&\"aria-\"!==a;default:return!1}}\nfunction qa(a,b,c,d){if(null===b||\"undefined\"===typeof b||pa(a,b,c,d))return!0;if(d)return!1;if(null!==c)switch(c.type){case 3:return!b;case 4:return!1===b;case 5:return isNaN(b);case 6:return isNaN(b)||1>b}return!1}function v(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(ra,\nsa);z[b]=new v(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2<b.length)||\"o\"!==b[0]&&\"O\"!==b[0]||\"n\"!==b[1]&&\"N\"!==b[1])qa(b,c,e,d)&&(c=null),d||null===e?oa(b)&&(null===c?a.removeAttribute(b):a.setAttribute(b,\"\"+c)):e.mustUseProperty?a[e.propertyName]=null===c?3===e.type?!1:\"\":c:(b=e.attributeName,d=e.attributeNamespace,null===c?a.removeAttribute(b):(e=e.type,c=3===e||4===e&&!0===c?\"\":\"\"+c,d?a.setAttributeNS(d,b,c):a.setAttribute(b,c)))}\nvar ua=aa.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,va=Symbol.for(\"react.element\"),wa=Symbol.for(\"react.portal\"),ya=Symbol.for(\"react.fragment\"),za=Symbol.for(\"react.strict_mode\"),Aa=Symbol.for(\"react.profiler\"),Ba=Symbol.for(\"react.provider\"),Ca=Symbol.for(\"react.context\"),Da=Symbol.for(\"react.forward_ref\"),Ea=Symbol.for(\"react.suspense\"),Fa=Symbol.for(\"react.suspense_list\"),Ga=Symbol.for(\"react.memo\"),Ha=Symbol.for(\"react.lazy\");Symbol.for(\"react.scope\");Symbol.for(\"react.debug_trace_mode\");\nvar Ia=Symbol.for(\"react.offscreen\");Symbol.for(\"react.legacy_hidden\");Symbol.for(\"react.cache\");Symbol.for(\"react.tracing_marker\");var Ja=Symbol.iterator;function Ka(a){if(null===a||\"object\"!==typeof a)return null;a=Ja&&a[Ja]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}var A=Object.assign,La;function Ma(a){if(void 0===La)try{throw Error();}catch(c){var b=c.stack.trim().match(/\\n( *(at )?)/);La=b&&b[1]||\"\"}return\"\\n\"+La+a}var Na=!1;\nfunction Oa(a,b){if(!a||Na)return\"\";Na=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(b)if(b=function(){throw Error();},Object.defineProperty(b.prototype,\"props\",{set:function(){throw Error();}}),\"object\"===typeof Reflect&&Reflect.construct){try{Reflect.construct(b,[])}catch(l){var d=l}Reflect.construct(a,[],b)}else{try{b.call()}catch(l){d=l}a.call(b.prototype)}else{try{throw Error();}catch(l){d=l}a()}}catch(l){if(l&&d&&\"string\"===typeof l.stack){for(var e=l.stack.split(\"\\n\"),\nf=d.stack.split(\"\\n\"),g=e.length-1,h=f.length-1;1<=g&&0<=h&&e[g]!==f[h];)h--;for(;1<=g&&0<=h;g--,h--)if(e[g]!==f[h]){if(1!==g||1!==h){do if(g--,h--,0>h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"<anonymous>\")&&(k=k.replace(\"<anonymous>\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 17:case 2:case 14:case 15:if(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return A({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e<c.length;e++)b[\"$\"+c[e]]=!0;for(c=0;c<a.length;c++)e=b.hasOwnProperty(\"$\"+a[c].value),a[c].selected!==e&&(a[c].selected=e),e&&d&&(a[c].defaultSelected=!0)}else{c=\"\"+Sa(c);b=null;for(e=0;e<a.length;e++){if(a[e].value===c){a[e].selected=!0;d&&(a[e].defaultSelected=!0);return}null!==b||a[e].disabled||(b=a[e])}null!==b&&(b.selected=!0)}}\nfunction gb(a,b){if(null!=b.dangerouslySetInnerHTML)throw Error(p(91));return A({},b,{value:void 0,defaultValue:void 0,children:\"\"+a._wrapperState.initialValue})}function hb(a,b){var c=b.value;if(null==c){c=b.children;b=b.defaultValue;if(null!=c){if(null!=b)throw Error(p(92));if(eb(c)){if(1<c.length)throw Error(p(93));c=c[0]}b=c}null==b&&(b=\"\");c=b}a._wrapperState={initialValue:Sa(c)}}\nfunction ib(a,b){var c=Sa(b.value),d=Sa(b.defaultValue);null!=c&&(c=\"\"+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=\"\"+d)}function jb(a){var b=a.textContent;b===a._wrapperState.initialValue&&\"\"!==b&&null!==b&&(a.value=b)}function kb(a){switch(a){case \"svg\":return\"http://www.w3.org/2000/svg\";case \"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}\nfunction lb(a,b){return null==a||\"http://www.w3.org/1999/xhtml\"===a?kb(b):\"http://www.w3.org/2000/svg\"===a&&\"foreignObject\"===b?\"http://www.w3.org/1999/xhtml\":a}\nvar mb,nb=function(a){return\"undefined\"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,c,d,e)})}:a}(function(a,b){if(\"http://www.w3.org/2000/svg\"!==a.namespaceURI||\"innerHTML\"in a)a.innerHTML=b;else{mb=mb||document.createElement(\"div\");mb.innerHTML=\"<svg>\"+b.valueOf().toString()+\"</svg>\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}var wb=null;function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(p(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a<b.length;a++)Bb(b[a])}}function Gb(a,b){return a(b)}function Hb(){}var Ib=!1;function Jb(a,b,c){if(Ib)return a(b,c);Ib=!0;try{return Gb(a,b,c)}finally{if(Ib=!1,null!==zb||null!==Ab)Hb(),Fb()}}\nfunction Kb(a,b){var c=a.stateNode;if(null===c)return null;var d=Db(c);if(null===d)return null;c=d[b];a:switch(b){case \"onClick\":case \"onClickCapture\":case \"onDoubleClick\":case \"onDoubleClickCapture\":case \"onMouseDown\":case \"onMouseDownCapture\":case \"onMouseMove\":case \"onMouseMoveCapture\":case \"onMouseUp\":case \"onMouseUpCapture\":case \"onMouseEnter\":(d=!d.disabled)||(a=a.type,d=!(\"button\"===a||\"input\"===a||\"select\"===a||\"textarea\"===a));a=!d;break a;default:a=!1}if(a)return null;if(c&&\"function\"!==\ntypeof c)throw Error(p(231,b,typeof c));return c}var Lb=!1;if(ia)try{var Mb={};Object.defineProperty(Mb,\"passive\",{get:function(){Lb=!0}});window.addEventListener(\"test\",Mb,Mb);window.removeEventListener(\"test\",Mb,Mb)}catch(a){Lb=!1}function Nb(a,b,c,d,e,f,g,h,k){var l=Array.prototype.slice.call(arguments,3);try{b.apply(c,l)}catch(m){this.onError(m)}}var Ob=!1,Pb=null,Qb=!1,Rb=null,Sb={onError:function(a){Ob=!0;Pb=a}};function Tb(a,b,c,d,e,f,g,h,k){Ob=!1;Pb=null;Nb.apply(Sb,arguments)}\nfunction Ub(a,b,c,d,e,f,g,h,k){Tb.apply(this,arguments);if(Ob){if(Ob){var l=Pb;Ob=!1;Pb=null}else throw Error(p(198));Qb||(Qb=!0,Rb=l)}}function Vb(a){var b=a,c=a;if(a.alternate)for(;b.return;)b=b.return;else{a=b;do b=a,0!==(b.flags&4098)&&(c=b.return),a=b.return;while(a)}return 3===b.tag?c:null}function Wb(a){if(13===a.tag){var b=a.memoizedState;null===b&&(a=a.alternate,null!==a&&(b=a.memoizedState));if(null!==b)return b.dehydrated}return null}function Xb(a){if(Vb(a)!==a)throw Error(p(188));}\nfunction Yb(a){var b=a.alternate;if(!b){b=Vb(a);if(null===b)throw Error(p(188));return b!==a?null:a}for(var c=a,d=b;;){var e=c.return;if(null===e)break;var f=e.alternate;if(null===f){d=e.return;if(null!==d){c=d;continue}break}if(e.child===f.child){for(f=e.child;f;){if(f===c)return Xb(e),a;if(f===d)return Xb(e),b;f=f.sibling}throw Error(p(188));}if(c.return!==d.return)c=e,d=f;else{for(var g=!1,h=e.child;h;){if(h===c){g=!0;c=e;d=f;break}if(h===d){g=!0;d=e;c=f;break}h=h.sibling}if(!g){for(h=f.child;h;){if(h===\nc){g=!0;c=f;d=e;break}if(h===d){g=!0;d=f;c=e;break}h=h.sibling}if(!g)throw Error(p(189));}}if(c.alternate!==d)throw Error(p(190));}if(3!==c.tag)throw Error(p(188));return c.stateNode.current===c?a:b}function Zb(a){a=Yb(a);return null!==a?$b(a):null}function $b(a){if(5===a.tag||6===a.tag)return a;for(a=a.child;null!==a;){var b=$b(a);if(null!==b)return b;a=a.sibling}return null}\nvar ac=ca.unstable_scheduleCallback,bc=ca.unstable_cancelCallback,cc=ca.unstable_shouldYield,dc=ca.unstable_requestPaint,B=ca.unstable_now,ec=ca.unstable_getCurrentPriorityLevel,fc=ca.unstable_ImmediatePriority,gc=ca.unstable_UserBlockingPriority,hc=ca.unstable_NormalPriority,ic=ca.unstable_LowPriority,jc=ca.unstable_IdlePriority,kc=null,lc=null;function mc(a){if(lc&&\"function\"===typeof lc.onCommitFiberRoot)try{lc.onCommitFiberRoot(kc,a,void 0,128===(a.current.flags&128))}catch(b){}}\nvar oc=Math.clz32?Math.clz32:nc,pc=Math.log,qc=Math.LN2;function nc(a){a>>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0<b;)c=31-oc(b),e=1<<c,d|=a[c],b&=~e;return d}\nfunction vc(a,b){switch(a){case 1:case 2:case 4:return b+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return b+5E3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}\nfunction wc(a,b){for(var c=a.suspendedLanes,d=a.pingedLanes,e=a.expirationTimes,f=a.pendingLanes;0<f;){var g=31-oc(f),h=1<<g,k=e[g];if(-1===k){if(0===(h&c)||0!==(h&d))e[g]=vc(h,b)}else k<=b&&(a.expiredLanes|=h);f&=~h}}function xc(a){a=a.pendingLanes&-1073741825;return 0!==a?a:a&1073741824?1073741824:0}function yc(){var a=rc;rc<<=1;0===(rc&4194240)&&(rc=64);return a}function zc(a){for(var b=[],c=0;31>c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0<c;){var e=31-oc(c),f=1<<e;b[e]=0;d[e]=-1;a[e]=-1;c&=~f}}\nfunction Cc(a,b){var c=a.entangledLanes|=b;for(a=a.entanglements;c;){var d=31-oc(c),e=1<<d;e&b|a[d]&b&&(a[d]|=b);c&=~e}}var C=0;function Dc(a){a&=-a;return 1<a?4<a?0!==(a&268435455)?16:536870912:4:1}var Ec,Fc,Gc,Hc,Ic,Jc=!1,Kc=[],Lc=null,Mc=null,Nc=null,Oc=new Map,Pc=new Map,Qc=[],Rc=\"mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit\".split(\" \");\nfunction Sc(a,b){switch(a){case \"focusin\":case \"focusout\":Lc=null;break;case \"dragenter\":case \"dragleave\":Mc=null;break;case \"mouseover\":case \"mouseout\":Nc=null;break;case \"pointerover\":case \"pointerout\":Oc.delete(b.pointerId);break;case \"gotpointercapture\":case \"lostpointercapture\":Pc.delete(b.pointerId)}}\nfunction Tc(a,b,c,d,e,f){if(null===a||a.nativeEvent!==f)return a={blockedOn:b,domEventName:c,eventSystemFlags:d,nativeEvent:f,targetContainers:[e]},null!==b&&(b=Cb(b),null!==b&&Fc(b)),a;a.eventSystemFlags|=d;b=a.targetContainers;null!==e&&-1===b.indexOf(e)&&b.push(e);return a}\nfunction Uc(a,b,c,d,e){switch(b){case \"focusin\":return Lc=Tc(Lc,a,b,c,d,e),!0;case \"dragenter\":return Mc=Tc(Mc,a,b,c,d,e),!0;case \"mouseover\":return Nc=Tc(Nc,a,b,c,d,e),!0;case \"pointerover\":var f=e.pointerId;Oc.set(f,Tc(Oc.get(f)||null,a,b,c,d,e));return!0;case \"gotpointercapture\":return f=e.pointerId,Pc.set(f,Tc(Pc.get(f)||null,a,b,c,d,e)),!0}return!1}\nfunction Vc(a){var b=Wc(a.target);if(null!==b){var c=Vb(b);if(null!==c)if(b=c.tag,13===b){if(b=Wb(c),null!==b){a.blockedOn=b;Ic(a.priority,function(){Gc(c)});return}}else if(3===b&&c.stateNode.current.memoizedState.isDehydrated){a.blockedOn=3===c.tag?c.stateNode.containerInfo:null;return}}a.blockedOn=null}\nfunction Xc(a){if(null!==a.blockedOn)return!1;for(var b=a.targetContainers;0<b.length;){var c=Yc(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null===c){c=a.nativeEvent;var d=new c.constructor(c.type,c);wb=d;c.target.dispatchEvent(d);wb=null}else return b=Cb(c),null!==b&&Fc(b),a.blockedOn=c,!1;b.shift()}return!0}function Zc(a,b,c){Xc(a)&&c.delete(b)}function $c(){Jc=!1;null!==Lc&&Xc(Lc)&&(Lc=null);null!==Mc&&Xc(Mc)&&(Mc=null);null!==Nc&&Xc(Nc)&&(Nc=null);Oc.forEach(Zc);Pc.forEach(Zc)}\nfunction ad(a,b){a.blockedOn===b&&(a.blockedOn=null,Jc||(Jc=!0,ca.unstable_scheduleCallback(ca.unstable_NormalPriority,$c)))}\nfunction bd(a){function b(b){return ad(b,a)}if(0<Kc.length){ad(Kc[0],a);for(var c=1;c<Kc.length;c++){var d=Kc[c];d.blockedOn===a&&(d.blockedOn=null)}}null!==Lc&&ad(Lc,a);null!==Mc&&ad(Mc,a);null!==Nc&&ad(Nc,a);Oc.forEach(b);Pc.forEach(b);for(c=0;c<Qc.length;c++)d=Qc[c],d.blockedOn===a&&(d.blockedOn=null);for(;0<Qc.length&&(c=Qc[0],null===c.blockedOn);)Vc(c),null===c.blockedOn&&Qc.shift()}var cd=ua.ReactCurrentBatchConfig,dd=!0;\nfunction ed(a,b,c,d){var e=C,f=cd.transition;cd.transition=null;try{C=1,fd(a,b,c,d)}finally{C=e,cd.transition=f}}function gd(a,b,c,d){var e=C,f=cd.transition;cd.transition=null;try{C=4,fd(a,b,c,d)}finally{C=e,cd.transition=f}}\nfunction fd(a,b,c,d){if(dd){var e=Yc(a,b,c,d);if(null===e)hd(a,b,d,id,c),Sc(a,d);else if(Uc(e,a,b,c,d))d.stopPropagation();else if(Sc(a,d),b&4&&-1<Rc.indexOf(a)){for(;null!==e;){var f=Cb(e);null!==f&&Ec(f);f=Yc(a,b,c,d);null===f&&hd(a,b,d,id,c);if(f===e)break;e=f}null!==e&&d.stopPropagation()}else hd(a,b,d,null,c)}}var id=null;\nfunction Yc(a,b,c,d){id=null;a=xb(d);a=Wc(a);if(null!==a)if(b=Vb(a),null===b)a=null;else if(c=b.tag,13===c){a=Wb(b);if(null!==a)return a;a=null}else if(3===c){if(b.stateNode.current.memoizedState.isDehydrated)return 3===b.tag?b.stateNode.containerInfo:null;a=null}else b!==a&&(a=null);id=a;return null}\nfunction jd(a){switch(a){case \"cancel\":case \"click\":case \"close\":case \"contextmenu\":case \"copy\":case \"cut\":case \"auxclick\":case \"dblclick\":case \"dragend\":case \"dragstart\":case \"drop\":case \"focusin\":case \"focusout\":case \"input\":case \"invalid\":case \"keydown\":case \"keypress\":case \"keyup\":case \"mousedown\":case \"mouseup\":case \"paste\":case \"pause\":case \"play\":case \"pointercancel\":case \"pointerdown\":case \"pointerup\":case \"ratechange\":case \"reset\":case \"resize\":case \"seeked\":case \"submit\":case \"touchcancel\":case \"touchend\":case \"touchstart\":case \"volumechange\":case \"change\":case \"selectionchange\":case \"textInput\":case \"compositionstart\":case \"compositionend\":case \"compositionupdate\":case \"beforeblur\":case \"afterblur\":case \"beforeinput\":case \"blur\":case \"fullscreenchange\":case \"focus\":case \"hashchange\":case \"popstate\":case \"select\":case \"selectstart\":return 1;case \"drag\":case \"dragenter\":case \"dragexit\":case \"dragleave\":case \"dragover\":case \"mousemove\":case \"mouseout\":case \"mouseover\":case \"pointermove\":case \"pointerout\":case \"pointerover\":case \"scroll\":case \"toggle\":case \"touchmove\":case \"wheel\":case \"mouseenter\":case \"mouseleave\":case \"pointerenter\":case \"pointerleave\":return 4;\ncase \"message\":switch(ec()){case fc:return 1;case gc:return 4;case hc:case ic:return 16;case jc:return 536870912;default:return 16}default:return 16}}var kd=null,ld=null,md=null;function nd(){if(md)return md;var a,b=ld,c=b.length,d,e=\"value\"in kd?kd.value:kd.textContent,f=e.length;for(a=0;a<c&&b[a]===e[a];a++);var g=c-a;for(d=1;d<=g&&b[c-d]===e[f-d];d++);return md=e.slice(a,1<d?1-d:void 0)}\nfunction od(a){var b=a.keyCode;\"charCode\"in a?(a=a.charCode,0===a&&13===b&&(a=13)):a=b;10===a&&(a=13);return 32<=a||13===a?a:0}function pd(){return!0}function qd(){return!1}\nfunction rd(a){function b(b,d,e,f,g){this._reactName=b;this._targetInst=e;this.type=d;this.nativeEvent=f;this.target=g;this.currentTarget=null;for(var c in a)a.hasOwnProperty(c)&&(b=a[c],this[c]=b?b(f):f[c]);this.isDefaultPrevented=(null!=f.defaultPrevented?f.defaultPrevented:!1===f.returnValue)?pd:qd;this.isPropagationStopped=qd;return this}A(b.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():\"unknown\"!==typeof a.returnValue&&\n(a.returnValue=!1),this.isDefaultPrevented=pd)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():\"unknown\"!==typeof a.cancelBubble&&(a.cancelBubble=!0),this.isPropagationStopped=pd)},persist:function(){},isPersistent:pd});return b}\nvar sd={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(a){return a.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},td=rd(sd),ud=A({},sd,{view:0,detail:0}),vd=rd(ud),wd,xd,yd,Ad=A({},ud,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zd,button:0,buttons:0,relatedTarget:function(a){return void 0===a.relatedTarget?a.fromElement===a.srcElement?a.toElement:a.fromElement:a.relatedTarget},movementX:function(a){if(\"movementX\"in\na)return a.movementX;a!==yd&&(yd&&\"mousemove\"===a.type?(wd=a.screenX-yd.screenX,xd=a.screenY-yd.screenY):xd=wd=0,yd=a);return wd},movementY:function(a){return\"movementY\"in a?a.movementY:xd}}),Bd=rd(Ad),Cd=A({},Ad,{dataTransfer:0}),Dd=rd(Cd),Ed=A({},ud,{relatedTarget:0}),Fd=rd(Ed),Gd=A({},sd,{animationName:0,elapsedTime:0,pseudoElement:0}),Hd=rd(Gd),Id=A({},sd,{clipboardData:function(a){return\"clipboardData\"in a?a.clipboardData:window.clipboardData}}),Jd=rd(Id),Kd=A({},sd,{data:0}),Ld=rd(Kd),Md={Esc:\"Escape\",\nSpacebar:\" \",Left:\"ArrowLeft\",Up:\"ArrowUp\",Right:\"ArrowRight\",Down:\"ArrowDown\",Del:\"Delete\",Win:\"OS\",Menu:\"ContextMenu\",Apps:\"ContextMenu\",Scroll:\"ScrollLock\",MozPrintableKey:\"Unidentified\"},Nd={8:\"Backspace\",9:\"Tab\",12:\"Clear\",13:\"Enter\",16:\"Shift\",17:\"Control\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Escape\",32:\" \",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",\n119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",224:\"Meta\"},Od={Alt:\"altKey\",Control:\"ctrlKey\",Meta:\"metaKey\",Shift:\"shiftKey\"};function Pd(a){var b=this.nativeEvent;return b.getModifierState?b.getModifierState(a):(a=Od[a])?!!b[a]:!1}function zd(){return Pd}\nvar Qd=A({},ud,{key:function(a){if(a.key){var b=Md[a.key]||a.key;if(\"Unidentified\"!==b)return b}return\"keypress\"===a.type?(a=od(a),13===a?\"Enter\":String.fromCharCode(a)):\"keydown\"===a.type||\"keyup\"===a.type?Nd[a.keyCode]||\"Unidentified\":\"\"},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zd,charCode:function(a){return\"keypress\"===a.type?od(a):0},keyCode:function(a){return\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0},which:function(a){return\"keypress\"===\na.type?od(a):\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0}}),Rd=rd(Qd),Sd=A({},Ad,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Td=rd(Sd),Ud=A({},ud,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zd}),Vd=rd(Ud),Wd=A({},sd,{propertyName:0,elapsedTime:0,pseudoElement:0}),Xd=rd(Wd),Yd=A({},Ad,{deltaX:function(a){return\"deltaX\"in a?a.deltaX:\"wheelDeltaX\"in a?-a.wheelDeltaX:0},\ndeltaY:function(a){return\"deltaY\"in a?a.deltaY:\"wheelDeltaY\"in a?-a.wheelDeltaY:\"wheelDelta\"in a?-a.wheelDelta:0},deltaZ:0,deltaMode:0}),Zd=rd(Yd),$d=[9,13,27,32],ae=ia&&\"CompositionEvent\"in window,be=null;ia&&\"documentMode\"in document&&(be=document.documentMode);var ce=ia&&\"TextEvent\"in window&&!be,de=ia&&(!ae||be&&8<be&&11>=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1<b.char.length)return b.char;if(b.which)return String.fromCharCode(b.which)}return null;case \"compositionend\":return de&&\"ko\"!==b.locale?null:b.data;default:return null}}\nvar le={color:!0,date:!0,datetime:!0,\"datetime-local\":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function me(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return\"input\"===b?!!le[a.type]:\"textarea\"===b?!0:!1}function ne(a,b,c,d){Eb(d);b=oe(b,\"onChange\");0<b.length&&(c=new td(\"onChange\",\"change\",null,c,d),a.push({event:c,listeners:b}))}var pe=null,qe=null;function re(a){se(a,0)}function te(a){var b=ue(a);if(Wa(b))return a}\nfunction ve(a,b){if(\"change\"===a)return b}var we=!1;if(ia){var xe;if(ia){var ye=\"oninput\"in document;if(!ye){var ze=document.createElement(\"div\");ze.setAttribute(\"oninput\",\"return;\");ye=\"function\"===typeof ze.oninput}xe=ye}else xe=!1;we=xe&&(!document.documentMode||9<document.documentMode)}function Ae(){pe&&(pe.detachEvent(\"onpropertychange\",Be),qe=pe=null)}function Be(a){if(\"value\"===a.propertyName&&te(qe)){var b=[];ne(b,qe,a,xb(a));Jb(re,b)}}\nfunction Ce(a,b,c){\"focusin\"===a?(Ae(),pe=b,qe=c,pe.attachEvent(\"onpropertychange\",Be)):\"focusout\"===a&&Ae()}function De(a){if(\"selectionchange\"===a||\"keyup\"===a||\"keydown\"===a)return te(qe)}function Ee(a,b){if(\"click\"===a)return te(b)}function Fe(a,b){if(\"input\"===a||\"change\"===a)return te(b)}function Ge(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var He=\"function\"===typeof Object.is?Object.is:Ge;\nfunction Ie(a,b){if(He(a,b))return!0;if(\"object\"!==typeof a||null===a||\"object\"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++){var e=c[d];if(!ja.call(b,e)||!He(a[e],b[e]))return!1}return!0}function Je(a){for(;a&&a.firstChild;)a=a.firstChild;return a}\nfunction Ke(a,b){var c=Je(a);a=0;for(var d;c;){if(3===c.nodeType){d=a+c.textContent.length;if(a<=b&&d>=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Ne(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c<b.length;c++)a=b[c],a.element.scrollLeft=a.left,a.element.scrollTop=a.top}}\nvar Pe=ia&&\"documentMode\"in document&&11>=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Ne(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0<d.length&&(b=new td(\"onSelect\",\"select\",null,b,c),a.push({event:b,listeners:d}),b.target=Qe)))}\nfunction Ve(a,b){var c={};c[a.toLowerCase()]=b.toLowerCase();c[\"Webkit\"+a]=\"webkit\"+b;c[\"Moz\"+a]=\"moz\"+b;return c}var We={animationend:Ve(\"Animation\",\"AnimationEnd\"),animationiteration:Ve(\"Animation\",\"AnimationIteration\"),animationstart:Ve(\"Animation\",\"AnimationStart\"),transitionend:Ve(\"Transition\",\"TransitionEnd\")},Xe={},Ye={};\nia&&(Ye=document.createElement(\"div\").style,\"AnimationEvent\"in window||(delete We.animationend.animation,delete We.animationiteration.animation,delete We.animationstart.animation),\"TransitionEvent\"in window||delete We.transitionend.transition);function Ze(a){if(Xe[a])return Xe[a];if(!We[a])return a;var b=We[a],c;for(c in b)if(b.hasOwnProperty(c)&&c in Ye)return Xe[a]=b[c];return a}var $e=Ze(\"animationend\"),af=Ze(\"animationiteration\"),bf=Ze(\"animationstart\"),cf=Ze(\"transitionend\"),df=new Map,ef=\"abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel\".split(\" \");\nfunction ff(a,b){df.set(a,b);fa(b,[a])}for(var gf=0;gf<ef.length;gf++){var hf=ef[gf],jf=hf.toLowerCase(),kf=hf[0].toUpperCase()+hf.slice(1);ff(jf,\"on\"+kf)}ff($e,\"onAnimationEnd\");ff(af,\"onAnimationIteration\");ff(bf,\"onAnimationStart\");ff(\"dblclick\",\"onDoubleClick\");ff(\"focusin\",\"onFocus\");ff(\"focusout\",\"onBlur\");ff(cf,\"onTransitionEnd\");ha(\"onMouseEnter\",[\"mouseout\",\"mouseover\"]);ha(\"onMouseLeave\",[\"mouseout\",\"mouseover\"]);ha(\"onPointerEnter\",[\"pointerout\",\"pointerover\"]);\nha(\"onPointerLeave\",[\"pointerout\",\"pointerover\"]);fa(\"onChange\",\"change click focusin focusout input keydown keyup selectionchange\".split(\" \"));fa(\"onSelect\",\"focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange\".split(\" \"));fa(\"onBeforeInput\",[\"compositionend\",\"keypress\",\"textInput\",\"paste\"]);fa(\"onCompositionEnd\",\"compositionend focusout keydown keypress keyup mousedown\".split(\" \"));fa(\"onCompositionStart\",\"compositionstart focusout keydown keypress keyup mousedown\".split(\" \"));\nfa(\"onCompositionUpdate\",\"compositionupdate focusout keydown keypress keyup mousedown\".split(\" \"));var lf=\"abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting\".split(\" \"),mf=new Set(\"cancel close invalid load scroll toggle\".split(\" \").concat(lf));\nfunction nf(a,b,c){var d=a.type||\"unknown-event\";a.currentTarget=c;Ub(d,b,void 0,a);a.currentTarget=null}\nfunction se(a,b){b=0!==(b&4);for(var c=0;c<a.length;c++){var d=a[c],e=d.event;d=d.listeners;a:{var f=void 0;if(b)for(var g=d.length-1;0<=g;g--){var h=d[g],k=h.instance,l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;nf(e,h,l);f=k}else for(g=0;g<d.length;g++){h=d[g];k=h.instance;l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;nf(e,h,l);f=k}}}if(Qb)throw a=Rb,Qb=!1,Rb=null,a;}\nfunction D(a,b){var c=b[of];void 0===c&&(c=b[of]=new Set);var d=a+\"__bubble\";c.has(d)||(pf(b,a,2,!1),c.add(d))}function qf(a,b,c){var d=0;b&&(d|=4);pf(c,a,d,b)}var rf=\"_reactListening\"+Math.random().toString(36).slice(2);function sf(a){if(!a[rf]){a[rf]=!0;da.forEach(function(b){\"selectionchange\"!==b&&(mf.has(b)||qf(b,!1,a),qf(b,!0,a))});var b=9===a.nodeType?a:a.ownerDocument;null===b||b[rf]||(b[rf]=!0,qf(\"selectionchange\",!1,b))}}\nfunction pf(a,b,c,d){switch(jd(b)){case 1:var e=ed;break;case 4:e=gd;break;default:e=fd}c=e.bind(null,b,c,a);e=void 0;!Lb||\"touchstart\"!==b&&\"touchmove\"!==b&&\"wheel\"!==b||(e=!0);d?void 0!==e?a.addEventListener(b,c,{capture:!0,passive:e}):a.addEventListener(b,c,!0):void 0!==e?a.addEventListener(b,c,{passive:e}):a.addEventListener(b,c,!1)}\nfunction hd(a,b,c,d,e){var f=d;if(0===(b&1)&&0===(b&2)&&null!==d)a:for(;;){if(null===d)return;var g=d.tag;if(3===g||4===g){var h=d.stateNode.containerInfo;if(h===e||8===h.nodeType&&h.parentNode===e)break;if(4===g)for(g=d.return;null!==g;){var k=g.tag;if(3===k||4===k)if(k=g.stateNode.containerInfo,k===e||8===k.nodeType&&k.parentNode===e)return;g=g.return}for(;null!==h;){g=Wc(h);if(null===g)return;k=g.tag;if(5===k||6===k){d=f=g;continue a}h=h.parentNode}}d=d.return}Jb(function(){var d=f,e=xb(c),g=[];\na:{var h=df.get(a);if(void 0!==h){var k=td,n=a;switch(a){case \"keypress\":if(0===od(c))break a;case \"keydown\":case \"keyup\":k=Rd;break;case \"focusin\":n=\"focus\";k=Fd;break;case \"focusout\":n=\"blur\";k=Fd;break;case \"beforeblur\":case \"afterblur\":k=Fd;break;case \"click\":if(2===c.button)break a;case \"auxclick\":case \"dblclick\":case \"mousedown\":case \"mousemove\":case \"mouseup\":case \"mouseout\":case \"mouseover\":case \"contextmenu\":k=Bd;break;case \"drag\":case \"dragend\":case \"dragenter\":case \"dragexit\":case \"dragleave\":case \"dragover\":case \"dragstart\":case \"drop\":k=\nDd;break;case \"touchcancel\":case \"touchend\":case \"touchmove\":case \"touchstart\":k=Vd;break;case $e:case af:case bf:k=Hd;break;case cf:k=Xd;break;case \"scroll\":k=vd;break;case \"wheel\":k=Zd;break;case \"copy\":case \"cut\":case \"paste\":k=Jd;break;case \"gotpointercapture\":case \"lostpointercapture\":case \"pointercancel\":case \"pointerdown\":case \"pointermove\":case \"pointerout\":case \"pointerover\":case \"pointerup\":k=Td}var t=0!==(b&4),J=!t&&\"scroll\"===a,x=t?null!==h?h+\"Capture\":null:h;t=[];for(var w=d,u;null!==\nw;){u=w;var F=u.stateNode;5===u.tag&&null!==F&&(u=F,null!==x&&(F=Kb(w,x),null!=F&&t.push(tf(w,F,u))));if(J)break;w=w.return}0<t.length&&(h=new k(h,n,null,c,e),g.push({event:h,listeners:t}))}}if(0===(b&7)){a:{h=\"mouseover\"===a||\"pointerover\"===a;k=\"mouseout\"===a||\"pointerout\"===a;if(h&&c!==wb&&(n=c.relatedTarget||c.fromElement)&&(Wc(n)||n[uf]))break a;if(k||h){h=e.window===e?e:(h=e.ownerDocument)?h.defaultView||h.parentWindow:window;if(k){if(n=c.relatedTarget||c.toElement,k=d,n=n?Wc(n):null,null!==\nn&&(J=Vb(n),n!==J||5!==n.tag&&6!==n.tag))n=null}else k=null,n=d;if(k!==n){t=Bd;F=\"onMouseLeave\";x=\"onMouseEnter\";w=\"mouse\";if(\"pointerout\"===a||\"pointerover\"===a)t=Td,F=\"onPointerLeave\",x=\"onPointerEnter\",w=\"pointer\";J=null==k?h:ue(k);u=null==n?h:ue(n);h=new t(F,w+\"leave\",k,c,e);h.target=J;h.relatedTarget=u;F=null;Wc(e)===d&&(t=new t(x,w+\"enter\",n,c,e),t.target=u,t.relatedTarget=J,F=t);J=F;if(k&&n)b:{t=k;x=n;w=0;for(u=t;u;u=vf(u))w++;u=0;for(F=x;F;F=vf(F))u++;for(;0<w-u;)t=vf(t),w--;for(;0<u-w;)x=\nvf(x),u--;for(;w--;){if(t===x||null!==x&&t===x.alternate)break b;t=vf(t);x=vf(x)}t=null}else t=null;null!==k&&wf(g,h,k,t,!1);null!==n&&null!==J&&wf(g,J,n,t,!0)}}}a:{h=d?ue(d):window;k=h.nodeName&&h.nodeName.toLowerCase();if(\"select\"===k||\"input\"===k&&\"file\"===h.type)var na=ve;else if(me(h))if(we)na=Fe;else{na=De;var xa=Ce}else(k=h.nodeName)&&\"input\"===k.toLowerCase()&&(\"checkbox\"===h.type||\"radio\"===h.type)&&(na=Ee);if(na&&(na=na(a,d))){ne(g,na,c,e);break a}xa&&xa(a,h,d);\"focusout\"===a&&(xa=h._wrapperState)&&\nxa.controlled&&\"number\"===h.type&&cb(h,\"number\",h.value)}xa=d?ue(d):window;switch(a){case \"focusin\":if(me(xa)||\"true\"===xa.contentEditable)Qe=xa,Re=d,Se=null;break;case \"focusout\":Se=Re=Qe=null;break;case \"mousedown\":Te=!0;break;case \"contextmenu\":case \"mouseup\":case \"dragend\":Te=!1;Ue(g,c,e);break;case \"selectionchange\":if(Pe)break;case \"keydown\":case \"keyup\":Ue(g,c,e)}var $a;if(ae)b:{switch(a){case \"compositionstart\":var ba=\"onCompositionStart\";break b;case \"compositionend\":ba=\"onCompositionEnd\";\nbreak b;case \"compositionupdate\":ba=\"onCompositionUpdate\";break b}ba=void 0}else ie?ge(a,c)&&(ba=\"onCompositionEnd\"):\"keydown\"===a&&229===c.keyCode&&(ba=\"onCompositionStart\");ba&&(de&&\"ko\"!==c.locale&&(ie||\"onCompositionStart\"!==ba?\"onCompositionEnd\"===ba&&ie&&($a=nd()):(kd=e,ld=\"value\"in kd?kd.value:kd.textContent,ie=!0)),xa=oe(d,ba),0<xa.length&&(ba=new Ld(ba,a,null,c,e),g.push({event:ba,listeners:xa}),$a?ba.data=$a:($a=he(c),null!==$a&&(ba.data=$a))));if($a=ce?je(a,c):ke(a,c))d=oe(d,\"onBeforeInput\"),\n0<d.length&&(e=new Ld(\"onBeforeInput\",\"beforeinput\",null,c,e),g.push({event:e,listeners:d}),e.data=$a)}se(g,b)})}function tf(a,b,c){return{instance:a,listener:b,currentTarget:c}}function oe(a,b){for(var c=b+\"Capture\",d=[];null!==a;){var e=a,f=e.stateNode;5===e.tag&&null!==f&&(e=f,f=Kb(a,c),null!=f&&d.unshift(tf(a,f,e)),f=Kb(a,b),null!=f&&d.push(tf(a,f,e)));a=a.return}return d}function vf(a){if(null===a)return null;do a=a.return;while(a&&5!==a.tag);return a?a:null}\nfunction wf(a,b,c,d,e){for(var f=b._reactName,g=[];null!==c&&c!==d;){var h=c,k=h.alternate,l=h.stateNode;if(null!==k&&k===d)break;5===h.tag&&null!==l&&(h=l,e?(k=Kb(c,f),null!=k&&g.unshift(tf(c,k,h))):e||(k=Kb(c,f),null!=k&&g.push(tf(c,k,h))));c=c.return}0!==g.length&&a.push({event:b,listeners:g})}var xf=/\\r\\n?/g,yf=/\\u0000|\\uFFFD/g;function zf(a){return(\"string\"===typeof a?a:\"\"+a).replace(xf,\"\\n\").replace(yf,\"\")}function Af(a,b,c){b=zf(b);if(zf(a)!==b&&c)throw Error(p(425));}function Bf(){}\nvar Cf=null,Df=null;function Ef(a,b){return\"textarea\"===a||\"noscript\"===a||\"string\"===typeof b.children||\"number\"===typeof b.children||\"object\"===typeof b.dangerouslySetInnerHTML&&null!==b.dangerouslySetInnerHTML&&null!=b.dangerouslySetInnerHTML.__html}\nvar Ff=\"function\"===typeof setTimeout?setTimeout:void 0,Gf=\"function\"===typeof clearTimeout?clearTimeout:void 0,Hf=\"function\"===typeof Promise?Promise:void 0,Jf=\"function\"===typeof queueMicrotask?queueMicrotask:\"undefined\"!==typeof Hf?function(a){return Hf.resolve(null).then(a).catch(If)}:Ff;function If(a){setTimeout(function(){throw a;})}\nfunction Kf(a,b){var c=b,d=0;do{var e=c.nextSibling;a.removeChild(c);if(e&&8===e.nodeType)if(c=e.data,\"/$\"===c){if(0===d){a.removeChild(e);bd(b);return}d--}else\"$\"!==c&&\"$?\"!==c&&\"$!\"!==c||d++;c=e}while(c);bd(b)}function Lf(a){for(;null!=a;a=a.nextSibling){var b=a.nodeType;if(1===b||3===b)break;if(8===b){b=a.data;if(\"$\"===b||\"$!\"===b||\"$?\"===b)break;if(\"/$\"===b)return null}}return a}\nfunction Mf(a){a=a.previousSibling;for(var b=0;a;){if(8===a.nodeType){var c=a.data;if(\"$\"===c||\"$!\"===c||\"$?\"===c){if(0===b)return a;b--}else\"/$\"===c&&b++}a=a.previousSibling}return null}var Nf=Math.random().toString(36).slice(2),Of=\"__reactFiber$\"+Nf,Pf=\"__reactProps$\"+Nf,uf=\"__reactContainer$\"+Nf,of=\"__reactEvents$\"+Nf,Qf=\"__reactListeners$\"+Nf,Rf=\"__reactHandles$\"+Nf;\nfunction Wc(a){var b=a[Of];if(b)return b;for(var c=a.parentNode;c;){if(b=c[uf]||c[Of]){c=b.alternate;if(null!==b.child||null!==c&&null!==c.child)for(a=Mf(a);null!==a;){if(c=a[Of])return c;a=Mf(a)}return b}a=c;c=a.parentNode}return null}function Cb(a){a=a[Of]||a[uf];return!a||5!==a.tag&&6!==a.tag&&13!==a.tag&&3!==a.tag?null:a}function ue(a){if(5===a.tag||6===a.tag)return a.stateNode;throw Error(p(33));}function Db(a){return a[Pf]||null}var Sf=[],Tf=-1;function Uf(a){return{current:a}}\nfunction E(a){0>Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a<c.length;a++){var d=c[a];do d=d(!0);while(null!==d)}eg=null;fg=!1}catch(e){throw null!==eg&&(eg=eg.slice(a+1)),ac(fc,jg),e;}finally{C=b,gg=!1}}return null}var kg=[],lg=0,mg=null,ng=0,og=[],pg=0,qg=null,rg=1,sg=\"\";function tg(a,b){kg[lg++]=ng;kg[lg++]=mg;mg=a;ng=b}\nfunction ug(a,b,c){og[pg++]=rg;og[pg++]=sg;og[pg++]=qg;qg=a;var d=rg;a=sg;var e=32-oc(d)-1;d&=~(1<<e);c+=1;var f=32-oc(b)+e;if(30<f){var g=e-e%5;f=(d&(1<<g)-1).toString(32);d>>=g;e-=g;rg=1<<32-oc(b)+e|c<<e|d;sg=f+a}else rg=1<<f|c<<e|d,sg=a}function vg(a){null!==a.return&&(tg(a,1),ug(a,1,0))}function wg(a){for(;a===mg;)mg=kg[--lg],kg[lg]=null,ng=kg[--lg],kg[lg]=null;for(;a===qg;)qg=og[--pg],og[pg]=null,sg=og[--pg],og[pg]=null,rg=og[--pg],og[pg]=null}var xg=null,yg=null,I=!1,zg=null;\nfunction Ag(a,b){var c=Bg(5,null,null,0);c.elementType=\"DELETED\";c.stateNode=b;c.return=a;b=a.deletions;null===b?(a.deletions=[c],a.flags|=16):b.push(c)}\nfunction Cg(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==b?(a.stateNode=b,xg=a,yg=Lf(b.firstChild),!0):!1;case 6:return b=\"\"===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,xg=a,yg=null,!0):!1;case 13:return b=8!==b.nodeType?null:b,null!==b?(c=null!==qg?{id:rg,overflow:sg}:null,a.memoizedState={dehydrated:b,treeContext:c,retryLane:1073741824},c=Bg(18,null,null,0),c.stateNode=b,c.return=a,a.child=c,xg=a,yg=\nnull,!0):!1;default:return!1}}function Dg(a){return 0!==(a.mode&1)&&0===(a.flags&128)}function Eg(a){if(I){var b=yg;if(b){var c=b;if(!Cg(a,b)){if(Dg(a))throw Error(p(418));b=Lf(c.nextSibling);var d=xg;b&&Cg(a,b)?Ag(d,c):(a.flags=a.flags&-4097|2,I=!1,xg=a)}}else{if(Dg(a))throw Error(p(418));a.flags=a.flags&-4097|2;I=!1;xg=a}}}function Fg(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;xg=a}\nfunction Gg(a){if(a!==xg)return!1;if(!I)return Fg(a),I=!0,!1;var b;(b=3!==a.tag)&&!(b=5!==a.tag)&&(b=a.type,b=\"head\"!==b&&\"body\"!==b&&!Ef(a.type,a.memoizedProps));if(b&&(b=yg)){if(Dg(a))throw Hg(),Error(p(418));for(;b;)Ag(a,b),b=Lf(b.nextSibling)}Fg(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(p(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if(\"/$\"===c){if(0===b){yg=Lf(a.nextSibling);break a}b--}else\"$\"!==c&&\"$!\"!==c&&\"$?\"!==c||b++}a=a.nextSibling}yg=\nnull}}else yg=xg?Lf(a.stateNode.nextSibling):null;return!0}function Hg(){for(var a=yg;a;)a=Lf(a.nextSibling)}function Ig(){yg=xg=null;I=!1}function Jg(a){null===zg?zg=[a]:zg.push(a)}var Kg=ua.ReactCurrentBatchConfig;\nfunction Lg(a,b,c){a=c.ref;if(null!==a&&\"function\"!==typeof a&&\"object\"!==typeof a){if(c._owner){c=c._owner;if(c){if(1!==c.tag)throw Error(p(309));var d=c.stateNode}if(!d)throw Error(p(147,a));var e=d,f=\"\"+a;if(null!==b&&null!==b.ref&&\"function\"===typeof b.ref&&b.ref._stringRef===f)return b.ref;b=function(a){var b=e.refs;null===a?delete b[f]:b[f]=a};b._stringRef=f;return b}if(\"string\"!==typeof a)throw Error(p(284));if(!c._owner)throw Error(p(290,a));}return a}\nfunction Mg(a,b){a=Object.prototype.toString.call(b);throw Error(p(31,\"[object Object]\"===a?\"object with keys {\"+Object.keys(b).join(\", \")+\"}\":a));}function Ng(a){var b=a._init;return b(a._payload)}\nfunction Og(a){function b(b,c){if(a){var d=b.deletions;null===d?(b.deletions=[c],b.flags|=16):d.push(c)}}function c(c,d){if(!a)return null;for(;null!==d;)b(c,d),d=d.sibling;return null}function d(a,b){for(a=new Map;null!==b;)null!==b.key?a.set(b.key,b):a.set(b.index,b),b=b.sibling;return a}function e(a,b){a=Pg(a,b);a.index=0;a.sibling=null;return a}function f(b,c,d){b.index=d;if(!a)return b.flags|=1048576,c;d=b.alternate;if(null!==d)return d=d.index,d<c?(b.flags|=2,c):d;b.flags|=2;return c}function g(b){a&&\nnull===b.alternate&&(b.flags|=2);return b}function h(a,b,c,d){if(null===b||6!==b.tag)return b=Qg(c,a.mode,d),b.return=a,b;b=e(b,c);b.return=a;return b}function k(a,b,c,d){var f=c.type;if(f===ya)return m(a,b,c.props.children,d,c.key);if(null!==b&&(b.elementType===f||\"object\"===typeof f&&null!==f&&f.$$typeof===Ha&&Ng(f)===b.type))return d=e(b,c.props),d.ref=Lg(a,b,c),d.return=a,d;d=Rg(c.type,c.key,c.props,null,a.mode,d);d.ref=Lg(a,b,c);d.return=a;return d}function l(a,b,c,d){if(null===b||4!==b.tag||\nb.stateNode.containerInfo!==c.containerInfo||b.stateNode.implementation!==c.implementation)return b=Sg(c,a.mode,d),b.return=a,b;b=e(b,c.children||[]);b.return=a;return b}function m(a,b,c,d,f){if(null===b||7!==b.tag)return b=Tg(c,a.mode,d,f),b.return=a,b;b=e(b,c);b.return=a;return b}function q(a,b,c){if(\"string\"===typeof b&&\"\"!==b||\"number\"===typeof b)return b=Qg(\"\"+b,a.mode,c),b.return=a,b;if(\"object\"===typeof b&&null!==b){switch(b.$$typeof){case va:return c=Rg(b.type,b.key,b.props,null,a.mode,c),\nc.ref=Lg(a,null,b),c.return=a,c;case wa:return b=Sg(b,a.mode,c),b.return=a,b;case Ha:var d=b._init;return q(a,d(b._payload),c)}if(eb(b)||Ka(b))return b=Tg(b,a.mode,c,null),b.return=a,b;Mg(a,b)}return null}function r(a,b,c,d){var e=null!==b?b.key:null;if(\"string\"===typeof c&&\"\"!==c||\"number\"===typeof c)return null!==e?null:h(a,b,\"\"+c,d);if(\"object\"===typeof c&&null!==c){switch(c.$$typeof){case va:return c.key===e?k(a,b,c,d):null;case wa:return c.key===e?l(a,b,c,d):null;case Ha:return e=c._init,r(a,\nb,e(c._payload),d)}if(eb(c)||Ka(c))return null!==e?null:m(a,b,c,d,null);Mg(a,c)}return null}function y(a,b,c,d,e){if(\"string\"===typeof d&&\"\"!==d||\"number\"===typeof d)return a=a.get(c)||null,h(b,a,\"\"+d,e);if(\"object\"===typeof d&&null!==d){switch(d.$$typeof){case va:return a=a.get(null===d.key?c:d.key)||null,k(b,a,d,e);case wa:return a=a.get(null===d.key?c:d.key)||null,l(b,a,d,e);case Ha:var f=d._init;return y(a,b,c,f(d._payload),e)}if(eb(d)||Ka(d))return a=a.get(c)||null,m(b,a,d,e,null);Mg(b,d)}return null}\nfunction n(e,g,h,k){for(var l=null,m=null,u=g,w=g=0,x=null;null!==u&&w<h.length;w++){u.index>w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;w<h.length;w++)u=q(e,h[w],k),null!==u&&(g=f(u,g,w),null===m?l=u:m.sibling=u,m=u);I&&tg(e,w);return l}for(u=d(e,u);w<h.length;w++)x=y(u,e,w,h[w],k),null!==x&&(a&&null!==x.alternate&&u.delete(null===\nx.key?w:x.key),g=f(x,g,w),null===m?l=x:m.sibling=x,m=x);a&&u.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function t(e,g,h,k){var l=Ka(h);if(\"function\"!==typeof l)throw Error(p(150));h=l.call(h);if(null==h)throw Error(p(151));for(var u=l=null,m=g,w=g=0,x=null,n=h.next();null!==m&&!n.done;w++,n=h.next()){m.index>w?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&Ng(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=Lg(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Tg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Rg(f.type,f.key,f.props,null,a.mode,h),h.ref=Lg(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=Sg(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);Mg(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=Qg(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Ug=Og(!0),Vg=Og(!1),Wg=Uf(null),Xg=null,Yg=null,Zg=null;function $g(){Zg=Yg=Xg=null}function ah(a){var b=Wg.current;E(Wg);a._currentValue=b}function bh(a,b,c){for(;null!==a;){var d=a.alternate;(a.childLanes&b)!==b?(a.childLanes|=b,null!==d&&(d.childLanes|=b)):null!==d&&(d.childLanes&b)!==b&&(d.childLanes|=b);if(a===c)break;a=a.return}}\nfunction ch(a,b){Xg=a;Zg=Yg=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(dh=!0),a.firstContext=null)}function eh(a){var b=a._currentValue;if(Zg!==a)if(a={context:a,memoizedValue:b,next:null},null===Yg){if(null===Xg)throw Error(p(308));Yg=a;Xg.dependencies={lanes:0,firstContext:a}}else Yg=Yg.next=a;return b}var fh=null;function gh(a){null===fh?fh=[a]:fh.push(a)}\nfunction hh(a,b,c,d){var e=b.interleaved;null===e?(c.next=c,gh(b)):(c.next=e.next,e.next=c);b.interleaved=c;return ih(a,d)}function ih(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}var jh=!1;function kh(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}\nfunction lh(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function mh(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}\nfunction nh(a,b,c){var d=a.updateQueue;if(null===d)return null;d=d.shared;if(0!==(K&2)){var e=d.pending;null===e?b.next=b:(b.next=e.next,e.next=b);d.pending=b;return ih(a,c)}e=d.interleaved;null===e?(b.next=b,gh(d)):(b.next=e.next,e.next=b);d.interleaved=b;return ih(a,c)}function oh(a,b,c){b=b.updateQueue;if(null!==b&&(b=b.shared,0!==(c&4194240))){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nfunction ph(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=\nb;c.lastBaseUpdate=b}\nfunction qh(a,b,c,d){var e=a.updateQueue;jh=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var m=a.alternate;null!==m&&(m=m.updateQueue,h=m.lastBaseUpdate,h!==g&&(null===h?m.firstBaseUpdate=l:h.next=l,m.lastBaseUpdate=k))}if(null!==f){var q=e.baseState;g=0;m=l=k=null;h=f;do{var r=h.lane,y=h.eventTime;if((d&r)===r){null!==m&&(m=m.next={eventTime:y,lane:0,tag:h.tag,payload:h.payload,callback:h.callback,\nnext:null});a:{var n=a,t=h;r=b;y=c;switch(t.tag){case 1:n=t.payload;if(\"function\"===typeof n){q=n.call(y,q,r);break a}q=n;break a;case 3:n.flags=n.flags&-65537|128;case 0:n=t.payload;r=\"function\"===typeof n?n.call(y,q,r):n;if(null===r||void 0===r)break a;q=A({},q,r);break a;case 2:jh=!0}}null!==h.callback&&0!==h.lane&&(a.flags|=64,r=e.effects,null===r?e.effects=[h]:r.push(h))}else y={eventTime:y,lane:r,tag:h.tag,payload:h.payload,callback:h.callback,next:null},null===m?(l=m=y,k=q):m=m.next=y,g|=r;\nh=h.next;if(null===h)if(h=e.shared.pending,null===h)break;else r=h,h=r.next,r.next=null,e.lastBaseUpdate=r,e.shared.pending=null}while(1);null===m&&(k=q);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=m;b=e.shared.interleaved;if(null!==b){e=b;do g|=e.lane,e=e.next;while(e!==b)}else null===f&&(e.shared.lanes=0);rh|=g;a.lanes=g;a.memoizedState=q}}\nfunction sh(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;b<a.length;b++){var d=a[b],e=d.callback;if(null!==e){d.callback=null;d=c;if(\"function\"!==typeof e)throw Error(p(191,e));e.call(d)}}}var th={},uh=Uf(th),vh=Uf(th),wh=Uf(th);function xh(a){if(a===th)throw Error(p(174));return a}\nfunction yh(a,b){G(wh,b);G(vh,a);G(uh,th);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:lb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=lb(b,a)}E(uh);G(uh,b)}function zh(){E(uh);E(vh);E(wh)}function Ah(a){xh(wh.current);var b=xh(uh.current);var c=lb(b,a.type);b!==c&&(G(vh,a),G(uh,c))}function Bh(a){vh.current===a&&(E(uh),E(vh))}var L=Uf(0);\nfunction Ch(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&128))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var Dh=[];\nfunction Eh(){for(var a=0;a<Dh.length;a++)Dh[a]._workInProgressVersionPrimary=null;Dh.length=0}var Fh=ua.ReactCurrentDispatcher,Gh=ua.ReactCurrentBatchConfig,Hh=0,M=null,N=null,O=null,Ih=!1,Jh=!1,Kh=0,Lh=0;function P(){throw Error(p(321));}function Mh(a,b){if(null===b)return!1;for(var c=0;c<b.length&&c<a.length;c++)if(!He(a[c],b[c]))return!1;return!0}\nfunction Nh(a,b,c,d,e,f){Hh=f;M=b;b.memoizedState=null;b.updateQueue=null;b.lanes=0;Fh.current=null===a||null===a.memoizedState?Oh:Ph;a=c(d,e);if(Jh){f=0;do{Jh=!1;Kh=0;if(25<=f)throw Error(p(301));f+=1;O=N=null;b.updateQueue=null;Fh.current=Qh;a=c(d,e)}while(Jh)}Fh.current=Rh;b=null!==N&&null!==N.next;Hh=0;O=N=M=null;Ih=!1;if(b)throw Error(p(300));return a}function Sh(){var a=0!==Kh;Kh=0;return a}\nfunction Th(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===O?M.memoizedState=O=a:O=O.next=a;return O}function Uh(){if(null===N){var a=M.alternate;a=null!==a?a.memoizedState:null}else a=N.next;var b=null===O?M.memoizedState:O.next;if(null!==b)O=b,N=a;else{if(null===a)throw Error(p(310));N=a;a={memoizedState:N.memoizedState,baseState:N.baseState,baseQueue:N.baseQueue,queue:N.queue,next:null};null===O?M.memoizedState=O=a:O=O.next=a}return O}\nfunction Vh(a,b){return\"function\"===typeof b?b(a):b}\nfunction Wh(a){var b=Uh(),c=b.queue;if(null===c)throw Error(p(311));c.lastRenderedReducer=a;var d=N,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){f=e.next;d=d.baseState;var h=g=null,k=null,l=f;do{var m=l.lane;if((Hh&m)===m)null!==k&&(k=k.next={lane:0,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null}),d=l.hasEagerState?l.eagerState:a(d,l.action);else{var q={lane:m,action:l.action,hasEagerState:l.hasEagerState,\neagerState:l.eagerState,next:null};null===k?(h=k=q,g=d):k=k.next=q;M.lanes|=m;rh|=m}l=l.next}while(null!==l&&l!==f);null===k?g=d:k.next=h;He(d,b.memoizedState)||(dh=!0);b.memoizedState=d;b.baseState=g;b.baseQueue=k;c.lastRenderedState=d}a=c.interleaved;if(null!==a){e=a;do f=e.lane,M.lanes|=f,rh|=f,e=e.next;while(e!==a)}else null===e&&(c.lanes=0);return[b.memoizedState,c.dispatch]}\nfunction Xh(a){var b=Uh(),c=b.queue;if(null===c)throw Error(p(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);He(f,b.memoizedState)||(dh=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,d]}function Yh(){}\nfunction Zh(a,b){var c=M,d=Uh(),e=b(),f=!He(d.memoizedState,e);f&&(d.memoizedState=e,dh=!0);d=d.queue;$h(ai.bind(null,c,d,a),[a]);if(d.getSnapshot!==b||f||null!==O&&O.memoizedState.tag&1){c.flags|=2048;bi(9,ci.bind(null,c,d,e,b),void 0,null);if(null===Q)throw Error(p(349));0!==(Hh&30)||di(c,b,e)}return e}function di(a,b,c){a.flags|=16384;a={getSnapshot:b,value:c};b=M.updateQueue;null===b?(b={lastEffect:null,stores:null},M.updateQueue=b,b.stores=[a]):(c=b.stores,null===c?b.stores=[a]:c.push(a))}\nfunction ci(a,b,c,d){b.value=c;b.getSnapshot=d;ei(b)&&fi(a)}function ai(a,b,c){return c(function(){ei(b)&&fi(a)})}function ei(a){var b=a.getSnapshot;a=a.value;try{var c=b();return!He(a,c)}catch(d){return!0}}function fi(a){var b=ih(a,1);null!==b&&gi(b,a,1,-1)}\nfunction hi(a){var b=Th();\"function\"===typeof a&&(a=a());b.memoizedState=b.baseState=a;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Vh,lastRenderedState:a};b.queue=a;a=a.dispatch=ii.bind(null,M,a);return[b.memoizedState,a]}\nfunction bi(a,b,c,d){a={tag:a,create:b,destroy:c,deps:d,next:null};b=M.updateQueue;null===b?(b={lastEffect:null,stores:null},M.updateQueue=b,b.lastEffect=a.next=a):(c=b.lastEffect,null===c?b.lastEffect=a.next=a:(d=c.next,c.next=a,a.next=d,b.lastEffect=a));return a}function ji(){return Uh().memoizedState}function ki(a,b,c,d){var e=Th();M.flags|=a;e.memoizedState=bi(1|b,c,void 0,void 0===d?null:d)}\nfunction li(a,b,c,d){var e=Uh();d=void 0===d?null:d;var f=void 0;if(null!==N){var g=N.memoizedState;f=g.destroy;if(null!==d&&Mh(d,g.deps)){e.memoizedState=bi(b,c,f,d);return}}M.flags|=a;e.memoizedState=bi(1|b,c,f,d)}function mi(a,b){return ki(8390656,8,a,b)}function $h(a,b){return li(2048,8,a,b)}function ni(a,b){return li(4,2,a,b)}function oi(a,b){return li(4,4,a,b)}\nfunction pi(a,b){if(\"function\"===typeof b)return a=a(),b(a),function(){b(null)};if(null!==b&&void 0!==b)return a=a(),b.current=a,function(){b.current=null}}function qi(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return li(4,4,pi.bind(null,b,a),c)}function ri(){}function si(a,b){var c=Uh();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Mh(b,d[1]))return d[0];c.memoizedState=[a,b];return a}\nfunction ti(a,b){var c=Uh();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Mh(b,d[1]))return d[0];a=a();c.memoizedState=[a,b];return a}function ui(a,b,c){if(0===(Hh&21))return a.baseState&&(a.baseState=!1,dh=!0),a.memoizedState=c;He(c,b)||(c=yc(),M.lanes|=c,rh|=c,a.baseState=!0);return b}function vi(a,b){var c=C;C=0!==c&&4>c?c:4;a(!0);var d=Gh.transition;Gh.transition={};try{a(!1),b()}finally{C=c,Gh.transition=d}}function wi(){return Uh().memoizedState}\nfunction xi(a,b,c){var d=yi(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,c);else if(c=hh(a,b,c,d),null!==c){var e=R();gi(c,a,d,e);Bi(c,b,d)}}\nfunction ii(a,b,c){var d=yi(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,gh(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=hh(a,b,e,d);null!==c&&(e=R(),gi(c,a,d,e),Bi(c,b,d))}}\nfunction zi(a){var b=a.alternate;return a===M||null!==b&&b===M}function Ai(a,b){Jh=Ih=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Bi(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar Rh={readContext:eh,useCallback:P,useContext:P,useEffect:P,useImperativeHandle:P,useInsertionEffect:P,useLayoutEffect:P,useMemo:P,useReducer:P,useRef:P,useState:P,useDebugValue:P,useDeferredValue:P,useTransition:P,useMutableSource:P,useSyncExternalStore:P,useId:P,unstable_isNewReconciler:!1},Oh={readContext:eh,useCallback:function(a,b){Th().memoizedState=[a,void 0===b?null:b];return a},useContext:eh,useEffect:mi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ki(4194308,\n4,pi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ki(4194308,4,a,b)},useInsertionEffect:function(a,b){return ki(4,2,a,b)},useMemo:function(a,b){var c=Th();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Th();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=xi.bind(null,M,a);return[d.memoizedState,a]},useRef:function(a){var b=\nTh();a={current:a};return b.memoizedState=a},useState:hi,useDebugValue:ri,useDeferredValue:function(a){return Th().memoizedState=a},useTransition:function(){var a=hi(!1),b=a[0];a=vi.bind(null,a[1]);Th().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=M,e=Th();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===Q)throw Error(p(349));0!==(Hh&30)||di(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;mi(ai.bind(null,d,\nf,a),[a]);d.flags|=2048;bi(9,ci.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=Th(),b=Q.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Kh++;0<c&&(b+=\"H\"+c.toString(32));b+=\":\"}else c=Lh++,b=\":\"+b+\"r\"+c.toString(32)+\":\";return a.memoizedState=b},unstable_isNewReconciler:!1},Ph={readContext:eh,useCallback:si,useContext:eh,useEffect:$h,useImperativeHandle:qi,useInsertionEffect:ni,useLayoutEffect:oi,useMemo:ti,useReducer:Wh,useRef:ji,useState:function(){return Wh(Vh)},\nuseDebugValue:ri,useDeferredValue:function(a){var b=Uh();return ui(b,N.memoizedState,a)},useTransition:function(){var a=Wh(Vh)[0],b=Uh().memoizedState;return[a,b]},useMutableSource:Yh,useSyncExternalStore:Zh,useId:wi,unstable_isNewReconciler:!1},Qh={readContext:eh,useCallback:si,useContext:eh,useEffect:$h,useImperativeHandle:qi,useInsertionEffect:ni,useLayoutEffect:oi,useMemo:ti,useReducer:Xh,useRef:ji,useState:function(){return Xh(Vh)},useDebugValue:ri,useDeferredValue:function(a){var b=Uh();return null===\nN?b.memoizedState=a:ui(b,N.memoizedState,a)},useTransition:function(){var a=Xh(Vh)[0],b=Uh().memoizedState;return[a,b]},useMutableSource:Yh,useSyncExternalStore:Zh,useId:wi,unstable_isNewReconciler:!1};function Ci(a,b){if(a&&a.defaultProps){b=A({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c]);return b}return b}function Di(a,b,c,d){b=a.memoizedState;c=c(d,b);c=null===c||void 0===c?b:A({},b,c);a.memoizedState=c;0===a.lanes&&(a.updateQueue.baseState=c)}\nvar Ei={isMounted:function(a){return(a=a._reactInternals)?Vb(a)===a:!1},enqueueSetState:function(a,b,c){a=a._reactInternals;var d=R(),e=yi(a),f=mh(d,e);f.payload=b;void 0!==c&&null!==c&&(f.callback=c);b=nh(a,f,e);null!==b&&(gi(b,a,e,d),oh(b,a,e))},enqueueReplaceState:function(a,b,c){a=a._reactInternals;var d=R(),e=yi(a),f=mh(d,e);f.tag=1;f.payload=b;void 0!==c&&null!==c&&(f.callback=c);b=nh(a,f,e);null!==b&&(gi(b,a,e,d),oh(b,a,e))},enqueueForceUpdate:function(a,b){a=a._reactInternals;var c=R(),d=\nyi(a),e=mh(c,d);e.tag=2;void 0!==b&&null!==b&&(e.callback=b);b=nh(a,e,d);null!==b&&(gi(b,a,d,c),oh(b,a,d))}};function Fi(a,b,c,d,e,f,g){a=a.stateNode;return\"function\"===typeof a.shouldComponentUpdate?a.shouldComponentUpdate(d,f,g):b.prototype&&b.prototype.isPureReactComponent?!Ie(c,d)||!Ie(e,f):!0}\nfunction Gi(a,b,c){var d=!1,e=Vf;var f=b.contextType;\"object\"===typeof f&&null!==f?f=eh(f):(e=Zf(b)?Xf:H.current,d=b.contextTypes,f=(d=null!==d&&void 0!==d)?Yf(a,e):Vf);b=new b(c,f);a.memoizedState=null!==b.state&&void 0!==b.state?b.state:null;b.updater=Ei;a.stateNode=b;b._reactInternals=a;d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=e,a.__reactInternalMemoizedMaskedChildContext=f);return b}\nfunction Hi(a,b,c,d){a=b.state;\"function\"===typeof b.componentWillReceiveProps&&b.componentWillReceiveProps(c,d);\"function\"===typeof b.UNSAFE_componentWillReceiveProps&&b.UNSAFE_componentWillReceiveProps(c,d);b.state!==a&&Ei.enqueueReplaceState(b,b.state,null)}\nfunction Ii(a,b,c,d){var e=a.stateNode;e.props=c;e.state=a.memoizedState;e.refs={};kh(a);var f=b.contextType;\"object\"===typeof f&&null!==f?e.context=eh(f):(f=Zf(b)?Xf:H.current,e.context=Yf(a,f));e.state=a.memoizedState;f=b.getDerivedStateFromProps;\"function\"===typeof f&&(Di(a,b,f,c),e.state=a.memoizedState);\"function\"===typeof b.getDerivedStateFromProps||\"function\"===typeof e.getSnapshotBeforeUpdate||\"function\"!==typeof e.UNSAFE_componentWillMount&&\"function\"!==typeof e.componentWillMount||(b=e.state,\n\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),b!==e.state&&Ei.enqueueReplaceState(e,e.state,null),qh(a,c,e,d),e.state=a.memoizedState);\"function\"===typeof e.componentDidMount&&(a.flags|=4194308)}function Ji(a,b){try{var c=\"\",d=b;do c+=Pa(d),d=d.return;while(d);var e=c}catch(f){e=\"\\nError generating stack: \"+f.message+\"\\n\"+f.stack}return{value:a,source:b,stack:e,digest:null}}\nfunction Ki(a,b,c){return{value:a,source:null,stack:null!=c?c:null,digest:null!=b?b:null}}function Li(a,b){try{console.error(b.value)}catch(c){setTimeout(function(){throw c;})}}var Mi=\"function\"===typeof WeakMap?WeakMap:Map;function Ni(a,b,c){c=mh(-1,c);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Oi||(Oi=!0,Pi=d);Li(a,b)};return c}\nfunction Qi(a,b,c){c=mh(-1,c);c.tag=3;var d=a.type.getDerivedStateFromError;if(\"function\"===typeof d){var e=b.value;c.payload=function(){return d(e)};c.callback=function(){Li(a,b)}}var f=a.stateNode;null!==f&&\"function\"===typeof f.componentDidCatch&&(c.callback=function(){Li(a,b);\"function\"!==typeof d&&(null===Ri?Ri=new Set([this]):Ri.add(this));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:\"\"})});return c}\nfunction Si(a,b,c){var d=a.pingCache;if(null===d){d=a.pingCache=new Mi;var e=new Set;d.set(b,e)}else e=d.get(b),void 0===e&&(e=new Set,d.set(b,e));e.has(c)||(e.add(c),a=Ti.bind(null,a,b,c),b.then(a,a))}function Ui(a){do{var b;if(b=13===a.tag)b=a.memoizedState,b=null!==b?null!==b.dehydrated?!0:!1:!0;if(b)return a;a=a.return}while(null!==a);return null}\nfunction Vi(a,b,c,d,e){if(0===(a.mode&1))return a===b?a.flags|=65536:(a.flags|=128,c.flags|=131072,c.flags&=-52805,1===c.tag&&(null===c.alternate?c.tag=17:(b=mh(-1,1),b.tag=2,nh(c,b,1))),c.lanes|=1),a;a.flags|=65536;a.lanes=e;return a}var Wi=ua.ReactCurrentOwner,dh=!1;function Xi(a,b,c,d){b.child=null===a?Vg(b,null,c,d):Ug(b,a.child,c,d)}\nfunction Yi(a,b,c,d,e){c=c.render;var f=b.ref;ch(b,e);d=Nh(a,b,c,d,f,e);c=Sh();if(null!==a&&!dh)return b.updateQueue=a.updateQueue,b.flags&=-2053,a.lanes&=~e,Zi(a,b,e);I&&c&&vg(b);b.flags|=1;Xi(a,b,d,e);return b.child}\nfunction $i(a,b,c,d,e){if(null===a){var f=c.type;if(\"function\"===typeof f&&!aj(f)&&void 0===f.defaultProps&&null===c.compare&&void 0===c.defaultProps)return b.tag=15,b.type=f,bj(a,b,f,d,e);a=Rg(c.type,null,d,b,b.mode,e);a.ref=b.ref;a.return=b;return b.child=a}f=a.child;if(0===(a.lanes&e)){var g=f.memoizedProps;c=c.compare;c=null!==c?c:Ie;if(c(g,d)&&a.ref===b.ref)return Zi(a,b,e)}b.flags|=1;a=Pg(f,d);a.ref=b.ref;a.return=b;return b.child=a}\nfunction bj(a,b,c,d,e){if(null!==a){var f=a.memoizedProps;if(Ie(f,d)&&a.ref===b.ref)if(dh=!1,b.pendingProps=d=f,0!==(a.lanes&e))0!==(a.flags&131072)&&(dh=!0);else return b.lanes=a.lanes,Zi(a,b,e)}return cj(a,b,c,d,e)}\nfunction dj(a,b,c){var d=b.pendingProps,e=d.children,f=null!==a?a.memoizedState:null;if(\"hidden\"===d.mode)if(0===(b.mode&1))b.memoizedState={baseLanes:0,cachePool:null,transitions:null},G(ej,fj),fj|=c;else{if(0===(c&1073741824))return a=null!==f?f.baseLanes|c:c,b.lanes=b.childLanes=1073741824,b.memoizedState={baseLanes:a,cachePool:null,transitions:null},b.updateQueue=null,G(ej,fj),fj|=a,null;b.memoizedState={baseLanes:0,cachePool:null,transitions:null};d=null!==f?f.baseLanes:c;G(ej,fj);fj|=d}else null!==\nf?(d=f.baseLanes|c,b.memoizedState=null):d=c,G(ej,fj),fj|=d;Xi(a,b,e,c);return b.child}function gj(a,b){var c=b.ref;if(null===a&&null!==c||null!==a&&a.ref!==c)b.flags|=512,b.flags|=2097152}function cj(a,b,c,d,e){var f=Zf(c)?Xf:H.current;f=Yf(b,f);ch(b,e);c=Nh(a,b,c,d,f,e);d=Sh();if(null!==a&&!dh)return b.updateQueue=a.updateQueue,b.flags&=-2053,a.lanes&=~e,Zi(a,b,e);I&&d&&vg(b);b.flags|=1;Xi(a,b,c,e);return b.child}\nfunction hj(a,b,c,d,e){if(Zf(c)){var f=!0;cg(b)}else f=!1;ch(b,e);if(null===b.stateNode)ij(a,b),Gi(b,c,d),Ii(b,c,d,e),d=!0;else if(null===a){var g=b.stateNode,h=b.memoizedProps;g.props=h;var k=g.context,l=c.contextType;\"object\"===typeof l&&null!==l?l=eh(l):(l=Zf(c)?Xf:H.current,l=Yf(b,l));var m=c.getDerivedStateFromProps,q=\"function\"===typeof m||\"function\"===typeof g.getSnapshotBeforeUpdate;q||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\"function\"!==typeof g.componentWillReceiveProps||\n(h!==d||k!==l)&&Hi(b,g,d,l);jh=!1;var r=b.memoizedState;g.state=r;qh(b,d,g,e);k=b.memoizedState;h!==d||r!==k||Wf.current||jh?(\"function\"===typeof m&&(Di(b,c,m,d),k=b.memoizedState),(h=jh||Fi(b,c,h,d,r,k,l))?(q||\"function\"!==typeof g.UNSAFE_componentWillMount&&\"function\"!==typeof g.componentWillMount||(\"function\"===typeof g.componentWillMount&&g.componentWillMount(),\"function\"===typeof g.UNSAFE_componentWillMount&&g.UNSAFE_componentWillMount()),\"function\"===typeof g.componentDidMount&&(b.flags|=4194308)):\n(\"function\"===typeof g.componentDidMount&&(b.flags|=4194308),b.memoizedProps=d,b.memoizedState=k),g.props=d,g.state=k,g.context=l,d=h):(\"function\"===typeof g.componentDidMount&&(b.flags|=4194308),d=!1)}else{g=b.stateNode;lh(a,b);h=b.memoizedProps;l=b.type===b.elementType?h:Ci(b.type,h);g.props=l;q=b.pendingProps;r=g.context;k=c.contextType;\"object\"===typeof k&&null!==k?k=eh(k):(k=Zf(c)?Xf:H.current,k=Yf(b,k));var y=c.getDerivedStateFromProps;(m=\"function\"===typeof y||\"function\"===typeof g.getSnapshotBeforeUpdate)||\n\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\"function\"!==typeof g.componentWillReceiveProps||(h!==q||r!==k)&&Hi(b,g,d,k);jh=!1;r=b.memoizedState;g.state=r;qh(b,d,g,e);var n=b.memoizedState;h!==q||r!==n||Wf.current||jh?(\"function\"===typeof y&&(Di(b,c,y,d),n=b.memoizedState),(l=jh||Fi(b,c,l,d,r,n,k)||!1)?(m||\"function\"!==typeof g.UNSAFE_componentWillUpdate&&\"function\"!==typeof g.componentWillUpdate||(\"function\"===typeof g.componentWillUpdate&&g.componentWillUpdate(d,n,k),\"function\"===typeof g.UNSAFE_componentWillUpdate&&\ng.UNSAFE_componentWillUpdate(d,n,k)),\"function\"===typeof g.componentDidUpdate&&(b.flags|=4),\"function\"===typeof g.getSnapshotBeforeUpdate&&(b.flags|=1024)):(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&r===a.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&r===a.memoizedState||(b.flags|=1024),b.memoizedProps=d,b.memoizedState=n),g.props=d,g.state=n,g.context=k,d=l):(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&r===\na.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&r===a.memoizedState||(b.flags|=1024),d=!1)}return jj(a,b,c,d,f,e)}\nfunction jj(a,b,c,d,e,f){gj(a,b);var g=0!==(b.flags&128);if(!d&&!g)return e&&dg(b,c,!1),Zi(a,b,f);d=b.stateNode;Wi.current=b;var h=g&&\"function\"!==typeof c.getDerivedStateFromError?null:d.render();b.flags|=1;null!==a&&g?(b.child=Ug(b,a.child,null,f),b.child=Ug(b,null,h,f)):Xi(a,b,h,f);b.memoizedState=d.state;e&&dg(b,c,!0);return b.child}function kj(a){var b=a.stateNode;b.pendingContext?ag(a,b.pendingContext,b.pendingContext!==b.context):b.context&&ag(a,b.context,!1);yh(a,b.containerInfo)}\nfunction lj(a,b,c,d,e){Ig();Jg(e);b.flags|=256;Xi(a,b,c,d);return b.child}var mj={dehydrated:null,treeContext:null,retryLane:0};function nj(a){return{baseLanes:a,cachePool:null,transitions:null}}\nfunction oj(a,b,c){var d=b.pendingProps,e=L.current,f=!1,g=0!==(b.flags&128),h;(h=g)||(h=null!==a&&null===a.memoizedState?!1:0!==(e&2));if(h)f=!0,b.flags&=-129;else if(null===a||null!==a.memoizedState)e|=1;G(L,e&1);if(null===a){Eg(b);a=b.memoizedState;if(null!==a&&(a=a.dehydrated,null!==a))return 0===(b.mode&1)?b.lanes=1:\"$!\"===a.data?b.lanes=8:b.lanes=1073741824,null;g=d.children;a=d.fallback;return f?(d=b.mode,f=b.child,g={mode:\"hidden\",children:g},0===(d&1)&&null!==f?(f.childLanes=0,f.pendingProps=\ng):f=pj(g,d,0,null),a=Tg(a,d,c,null),f.return=b,a.return=b,f.sibling=a,b.child=f,b.child.memoizedState=nj(c),b.memoizedState=mj,a):qj(b,g)}e=a.memoizedState;if(null!==e&&(h=e.dehydrated,null!==h))return rj(a,b,g,d,h,e,c);if(f){f=d.fallback;g=b.mode;e=a.child;h=e.sibling;var k={mode:\"hidden\",children:d.children};0===(g&1)&&b.child!==e?(d=b.child,d.childLanes=0,d.pendingProps=k,b.deletions=null):(d=Pg(e,k),d.subtreeFlags=e.subtreeFlags&14680064);null!==h?f=Pg(h,f):(f=Tg(f,g,c,null),f.flags|=2);f.return=\nb;d.return=b;d.sibling=f;b.child=d;d=f;f=b.child;g=a.child.memoizedState;g=null===g?nj(c):{baseLanes:g.baseLanes|c,cachePool:null,transitions:g.transitions};f.memoizedState=g;f.childLanes=a.childLanes&~c;b.memoizedState=mj;return d}f=a.child;a=f.sibling;d=Pg(f,{mode:\"visible\",children:d.children});0===(b.mode&1)&&(d.lanes=c);d.return=b;d.sibling=null;null!==a&&(c=b.deletions,null===c?(b.deletions=[a],b.flags|=16):c.push(a));b.child=d;b.memoizedState=null;return d}\nfunction qj(a,b){b=pj({mode:\"visible\",children:b},a.mode,0,null);b.return=a;return a.child=b}function sj(a,b,c,d){null!==d&&Jg(d);Ug(b,a.child,null,c);a=qj(b,b.pendingProps.children);a.flags|=2;b.memoizedState=null;return a}\nfunction rj(a,b,c,d,e,f,g){if(c){if(b.flags&256)return b.flags&=-257,d=Ki(Error(p(422))),sj(a,b,g,d);if(null!==b.memoizedState)return b.child=a.child,b.flags|=128,null;f=d.fallback;e=b.mode;d=pj({mode:\"visible\",children:d.children},e,0,null);f=Tg(f,e,g,null);f.flags|=2;d.return=b;f.return=b;d.sibling=f;b.child=d;0!==(b.mode&1)&&Ug(b,a.child,null,g);b.child.memoizedState=nj(g);b.memoizedState=mj;return f}if(0===(b.mode&1))return sj(a,b,g,null);if(\"$!\"===e.data){d=e.nextSibling&&e.nextSibling.dataset;\nif(d)var h=d.dgst;d=h;f=Error(p(419));d=Ki(f,d,void 0);return sj(a,b,g,d)}h=0!==(g&a.childLanes);if(dh||h){d=Q;if(null!==d){switch(g&-g){case 4:e=2;break;case 16:e=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:e=32;break;case 536870912:e=268435456;break;default:e=0}e=0!==(e&(d.suspendedLanes|g))?0:e;\n0!==e&&e!==f.retryLane&&(f.retryLane=e,ih(a,e),gi(d,a,e,-1))}tj();d=Ki(Error(p(421)));return sj(a,b,g,d)}if(\"$?\"===e.data)return b.flags|=128,b.child=a.child,b=uj.bind(null,a),e._reactRetry=b,null;a=f.treeContext;yg=Lf(e.nextSibling);xg=b;I=!0;zg=null;null!==a&&(og[pg++]=rg,og[pg++]=sg,og[pg++]=qg,rg=a.id,sg=a.overflow,qg=b);b=qj(b,d.children);b.flags|=4096;return b}function vj(a,b,c){a.lanes|=b;var d=a.alternate;null!==d&&(d.lanes|=b);bh(a.return,b,c)}\nfunction wj(a,b,c,d,e){var f=a.memoizedState;null===f?a.memoizedState={isBackwards:b,rendering:null,renderingStartTime:0,last:d,tail:c,tailMode:e}:(f.isBackwards=b,f.rendering=null,f.renderingStartTime=0,f.last=d,f.tail=c,f.tailMode=e)}\nfunction xj(a,b,c){var d=b.pendingProps,e=d.revealOrder,f=d.tail;Xi(a,b,d.children,c);d=L.current;if(0!==(d&2))d=d&1|2,b.flags|=128;else{if(null!==a&&0!==(a.flags&128))a:for(a=b.child;null!==a;){if(13===a.tag)null!==a.memoizedState&&vj(a,c,b);else if(19===a.tag)vj(a,c,b);else if(null!==a.child){a.child.return=a;a=a.child;continue}if(a===b)break a;for(;null===a.sibling;){if(null===a.return||a.return===b)break a;a=a.return}a.sibling.return=a.return;a=a.sibling}d&=1}G(L,d);if(0===(b.mode&1))b.memoizedState=\nnull;else switch(e){case \"forwards\":c=b.child;for(e=null;null!==c;)a=c.alternate,null!==a&&null===Ch(a)&&(e=c),c=c.sibling;c=e;null===c?(e=b.child,b.child=null):(e=c.sibling,c.sibling=null);wj(b,!1,e,c,f);break;case \"backwards\":c=null;e=b.child;for(b.child=null;null!==e;){a=e.alternate;if(null!==a&&null===Ch(a)){b.child=e;break}a=e.sibling;e.sibling=c;c=e;e=a}wj(b,!0,c,null,f);break;case \"together\":wj(b,!1,null,null,void 0);break;default:b.memoizedState=null}return b.child}\nfunction ij(a,b){0===(b.mode&1)&&null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2)}function Zi(a,b,c){null!==a&&(b.dependencies=a.dependencies);rh|=b.lanes;if(0===(c&b.childLanes))return null;if(null!==a&&b.child!==a.child)throw Error(p(153));if(null!==b.child){a=b.child;c=Pg(a,a.pendingProps);b.child=c;for(c.return=b;null!==a.sibling;)a=a.sibling,c=c.sibling=Pg(a,a.pendingProps),c.return=b;c.sibling=null}return b.child}\nfunction yj(a,b,c){switch(b.tag){case 3:kj(b);Ig();break;case 5:Ah(b);break;case 1:Zf(b.type)&&cg(b);break;case 4:yh(b,b.stateNode.containerInfo);break;case 10:var d=b.type._context,e=b.memoizedProps.value;G(Wg,d._currentValue);d._currentValue=e;break;case 13:d=b.memoizedState;if(null!==d){if(null!==d.dehydrated)return G(L,L.current&1),b.flags|=128,null;if(0!==(c&b.child.childLanes))return oj(a,b,c);G(L,L.current&1);a=Zi(a,b,c);return null!==a?a.sibling:null}G(L,L.current&1);break;case 19:d=0!==(c&\nb.childLanes);if(0!==(a.flags&128)){if(d)return xj(a,b,c);b.flags|=128}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null,e.lastEffect=null);G(L,L.current);if(d)break;else return null;case 22:case 23:return b.lanes=0,dj(a,b,c)}return Zi(a,b,c)}var zj,Aj,Bj,Cj;\nzj=function(a,b){for(var c=b.child;null!==c;){if(5===c.tag||6===c.tag)a.appendChild(c.stateNode);else if(4!==c.tag&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return}c.sibling.return=c.return;c=c.sibling}};Aj=function(){};\nBj=function(a,b,c,d){var e=a.memoizedProps;if(e!==d){a=b.stateNode;xh(uh.current);var f=null;switch(c){case \"input\":e=Ya(a,e);d=Ya(a,d);f=[];break;case \"select\":e=A({},e,{value:void 0});d=A({},d,{value:void 0});f=[];break;case \"textarea\":e=gb(a,e);d=gb(a,d);f=[];break;default:\"function\"!==typeof e.onClick&&\"function\"===typeof d.onClick&&(a.onclick=Bf)}ub(c,d);var g;c=null;for(l in e)if(!d.hasOwnProperty(l)&&e.hasOwnProperty(l)&&null!=e[l])if(\"style\"===l){var h=e[l];for(g in h)h.hasOwnProperty(g)&&\n(c||(c={}),c[g]=\"\")}else\"dangerouslySetInnerHTML\"!==l&&\"children\"!==l&&\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&\"autoFocus\"!==l&&(ea.hasOwnProperty(l)?f||(f=[]):(f=f||[]).push(l,null));for(l in d){var k=d[l];h=null!=e?e[l]:void 0;if(d.hasOwnProperty(l)&&k!==h&&(null!=k||null!=h))if(\"style\"===l)if(h){for(g in h)!h.hasOwnProperty(g)||k&&k.hasOwnProperty(g)||(c||(c={}),c[g]=\"\");for(g in k)k.hasOwnProperty(g)&&h[g]!==k[g]&&(c||(c={}),c[g]=k[g])}else c||(f||(f=[]),f.push(l,\nc)),c=k;else\"dangerouslySetInnerHTML\"===l?(k=k?k.__html:void 0,h=h?h.__html:void 0,null!=k&&h!==k&&(f=f||[]).push(l,k)):\"children\"===l?\"string\"!==typeof k&&\"number\"!==typeof k||(f=f||[]).push(l,\"\"+k):\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&(ea.hasOwnProperty(l)?(null!=k&&\"onScroll\"===l&&D(\"scroll\",a),f||h===k||(f=[])):(f=f||[]).push(l,k))}c&&(f=f||[]).push(\"style\",c);var l=f;if(b.updateQueue=l)b.flags|=4}};Cj=function(a,b,c,d){c!==d&&(b.flags|=4)};\nfunction Dj(a,b){if(!I)switch(a.tailMode){case \"hidden\":b=a.tail;for(var c=null;null!==b;)null!==b.alternate&&(c=b),b=b.sibling;null===c?a.tail=null:c.sibling=null;break;case \"collapsed\":c=a.tail;for(var d=null;null!==c;)null!==c.alternate&&(d=c),c=c.sibling;null===d?b||null===a.tail?a.tail=null:a.tail.sibling=null:d.sibling=null}}\nfunction S(a){var b=null!==a.alternate&&a.alternate.child===a.child,c=0,d=0;if(b)for(var e=a.child;null!==e;)c|=e.lanes|e.childLanes,d|=e.subtreeFlags&14680064,d|=e.flags&14680064,e.return=a,e=e.sibling;else for(e=a.child;null!==e;)c|=e.lanes|e.childLanes,d|=e.subtreeFlags,d|=e.flags,e.return=a,e=e.sibling;a.subtreeFlags|=d;a.childLanes=c;return b}\nfunction Ej(a,b,c){var d=b.pendingProps;wg(b);switch(b.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return S(b),null;case 1:return Zf(b.type)&&$f(),S(b),null;case 3:d=b.stateNode;zh();E(Wf);E(H);Eh();d.pendingContext&&(d.context=d.pendingContext,d.pendingContext=null);if(null===a||null===a.child)Gg(b)?b.flags|=4:null===a||a.memoizedState.isDehydrated&&0===(b.flags&256)||(b.flags|=1024,null!==zg&&(Fj(zg),zg=null));Aj(a,b);S(b);return null;case 5:Bh(b);var e=xh(wh.current);\nc=b.type;if(null!==a&&null!=b.stateNode)Bj(a,b,c,d,e),a.ref!==b.ref&&(b.flags|=512,b.flags|=2097152);else{if(!d){if(null===b.stateNode)throw Error(p(166));S(b);return null}a=xh(uh.current);if(Gg(b)){d=b.stateNode;c=b.type;var f=b.memoizedProps;d[Of]=b;d[Pf]=f;a=0!==(b.mode&1);switch(c){case \"dialog\":D(\"cancel\",d);D(\"close\",d);break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",d);break;case \"video\":case \"audio\":for(e=0;e<lf.length;e++)D(lf[e],d);break;case \"source\":D(\"error\",d);break;case \"img\":case \"image\":case \"link\":D(\"error\",\nd);D(\"load\",d);break;case \"details\":D(\"toggle\",d);break;case \"input\":Za(d,f);D(\"invalid\",d);break;case \"select\":d._wrapperState={wasMultiple:!!f.multiple};D(\"invalid\",d);break;case \"textarea\":hb(d,f),D(\"invalid\",d)}ub(c,f);e=null;for(var g in f)if(f.hasOwnProperty(g)){var h=f[g];\"children\"===g?\"string\"===typeof h?d.textContent!==h&&(!0!==f.suppressHydrationWarning&&Af(d.textContent,h,a),e=[\"children\",h]):\"number\"===typeof h&&d.textContent!==\"\"+h&&(!0!==f.suppressHydrationWarning&&Af(d.textContent,\nh,a),e=[\"children\",\"\"+h]):ea.hasOwnProperty(g)&&null!=h&&\"onScroll\"===g&&D(\"scroll\",d)}switch(c){case \"input\":Va(d);db(d,f,!0);break;case \"textarea\":Va(d);jb(d);break;case \"select\":case \"option\":break;default:\"function\"===typeof f.onClick&&(d.onclick=Bf)}d=e;b.updateQueue=d;null!==d&&(b.flags|=4)}else{g=9===e.nodeType?e:e.ownerDocument;\"http://www.w3.org/1999/xhtml\"===a&&(a=kb(c));\"http://www.w3.org/1999/xhtml\"===a?\"script\"===c?(a=g.createElement(\"div\"),a.innerHTML=\"<script>\\x3c/script>\",a=a.removeChild(a.firstChild)):\n\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[Of]=b;a[Pf]=d;zj(a,b,!1,!1);b.stateNode=a;a:{g=vb(c,d);switch(c){case \"dialog\":D(\"cancel\",a);D(\"close\",a);e=d;break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;e<lf.length;e++)D(lf[e],a);e=d;break;case \"source\":D(\"error\",a);e=d;break;case \"img\":case \"image\":case \"link\":D(\"error\",\na);D(\"load\",a);e=d;break;case \"details\":D(\"toggle\",a);e=d;break;case \"input\":Za(a,d);e=Ya(a,d);D(\"invalid\",a);break;case \"option\":e=d;break;case \"select\":a._wrapperState={wasMultiple:!!d.multiple};e=A({},d,{value:void 0});D(\"invalid\",a);break;case \"textarea\":hb(a,d);e=gb(a,d);D(\"invalid\",a);break;default:e=d}ub(c,e);h=e;for(f in h)if(h.hasOwnProperty(f)){var k=h[f];\"style\"===f?sb(a,k):\"dangerouslySetInnerHTML\"===f?(k=k?k.__html:void 0,null!=k&&nb(a,k)):\"children\"===f?\"string\"===typeof k?(\"textarea\"!==\nc||\"\"!==k)&&ob(a,k):\"number\"===typeof k&&ob(a,\"\"+k):\"suppressContentEditableWarning\"!==f&&\"suppressHydrationWarning\"!==f&&\"autoFocus\"!==f&&(ea.hasOwnProperty(f)?null!=k&&\"onScroll\"===f&&D(\"scroll\",a):null!=k&&ta(a,f,k,g))}switch(c){case \"input\":Va(a);db(a,d,!1);break;case \"textarea\":Va(a);jb(a);break;case \"option\":null!=d.value&&a.setAttribute(\"value\",\"\"+Sa(d.value));break;case \"select\":a.multiple=!!d.multiple;f=d.value;null!=f?fb(a,!!d.multiple,f,!1):null!=d.defaultValue&&fb(a,!!d.multiple,d.defaultValue,\n!0);break;default:\"function\"===typeof e.onClick&&(a.onclick=Bf)}switch(c){case \"button\":case \"input\":case \"select\":case \"textarea\":d=!!d.autoFocus;break a;case \"img\":d=!0;break a;default:d=!1}}d&&(b.flags|=4)}null!==b.ref&&(b.flags|=512,b.flags|=2097152)}S(b);return null;case 6:if(a&&null!=b.stateNode)Cj(a,b,a.memoizedProps,d);else{if(\"string\"!==typeof d&&null===b.stateNode)throw Error(p(166));c=xh(wh.current);xh(uh.current);if(Gg(b)){d=b.stateNode;c=b.memoizedProps;d[Of]=b;if(f=d.nodeValue!==c)if(a=\nxg,null!==a)switch(a.tag){case 3:Af(d.nodeValue,c,0!==(a.mode&1));break;case 5:!0!==a.memoizedProps.suppressHydrationWarning&&Af(d.nodeValue,c,0!==(a.mode&1))}f&&(b.flags|=4)}else d=(9===c.nodeType?c:c.ownerDocument).createTextNode(d),d[Of]=b,b.stateNode=d}S(b);return null;case 13:E(L);d=b.memoizedState;if(null===a||null!==a.memoizedState&&null!==a.memoizedState.dehydrated){if(I&&null!==yg&&0!==(b.mode&1)&&0===(b.flags&128))Hg(),Ig(),b.flags|=98560,f=!1;else if(f=Gg(b),null!==d&&null!==d.dehydrated){if(null===\na){if(!f)throw Error(p(318));f=b.memoizedState;f=null!==f?f.dehydrated:null;if(!f)throw Error(p(317));f[Of]=b}else Ig(),0===(b.flags&128)&&(b.memoizedState=null),b.flags|=4;S(b);f=!1}else null!==zg&&(Fj(zg),zg=null),f=!0;if(!f)return b.flags&65536?b:null}if(0!==(b.flags&128))return b.lanes=c,b;d=null!==d;d!==(null!==a&&null!==a.memoizedState)&&d&&(b.child.flags|=8192,0!==(b.mode&1)&&(null===a||0!==(L.current&1)?0===T&&(T=3):tj()));null!==b.updateQueue&&(b.flags|=4);S(b);return null;case 4:return zh(),\nAj(a,b),null===a&&sf(b.stateNode.containerInfo),S(b),null;case 10:return ah(b.type._context),S(b),null;case 17:return Zf(b.type)&&$f(),S(b),null;case 19:E(L);f=b.memoizedState;if(null===f)return S(b),null;d=0!==(b.flags&128);g=f.rendering;if(null===g)if(d)Dj(f,!1);else{if(0!==T||null!==a&&0!==(a.flags&128))for(a=b.child;null!==a;){g=Ch(a);if(null!==g){b.flags|=128;Dj(f,!1);d=g.updateQueue;null!==d&&(b.updateQueue=d,b.flags|=4);b.subtreeFlags=0;d=c;for(c=b.child;null!==c;)f=c,a=d,f.flags&=14680066,\ng=f.alternate,null===g?(f.childLanes=0,f.lanes=a,f.child=null,f.subtreeFlags=0,f.memoizedProps=null,f.memoizedState=null,f.updateQueue=null,f.dependencies=null,f.stateNode=null):(f.childLanes=g.childLanes,f.lanes=g.lanes,f.child=g.child,f.subtreeFlags=0,f.deletions=null,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,f.type=g.type,a=g.dependencies,f.dependencies=null===a?null:{lanes:a.lanes,firstContext:a.firstContext}),c=c.sibling;G(L,L.current&1|2);return b.child}a=\na.sibling}null!==f.tail&&B()>Gj&&(b.flags|=128,d=!0,Dj(f,!1),b.lanes=4194304)}else{if(!d)if(a=Ch(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Dj(f,!0),null===f.tail&&\"hidden\"===f.tailMode&&!g.alternate&&!I)return S(b),null}else 2*B()-f.renderingStartTime>Gj&&1073741824!==c&&(b.flags|=128,d=!0,Dj(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=\nb,f.tail=b.sibling,f.renderingStartTime=B(),b.sibling=null,c=L.current,G(L,d?c&1|2:c&1),b;S(b);return null;case 22:case 23:return Hj(),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(fj&1073741824)&&(S(b),b.subtreeFlags&6&&(b.flags|=8192)):S(b),null;case 24:return null;case 25:return null}throw Error(p(156,b.tag));}\nfunction Ij(a,b){wg(b);switch(b.tag){case 1:return Zf(b.type)&&$f(),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return zh(),E(Wf),E(H),Eh(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return Bh(b),null;case 13:E(L);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(p(340));Ig()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return E(L),null;case 4:return zh(),null;case 10:return ah(b.type._context),null;case 22:case 23:return Hj(),\nnull;case 24:return null;default:return null}}var Jj=!1,U=!1,Kj=\"function\"===typeof WeakSet?WeakSet:Set,V=null;function Lj(a,b){var c=a.ref;if(null!==c)if(\"function\"===typeof c)try{c(null)}catch(d){W(a,b,d)}else c.current=null}function Mj(a,b,c){try{c()}catch(d){W(a,b,d)}}var Nj=!1;\nfunction Oj(a,b){Cf=dd;a=Me();if(Ne(a)){if(\"selectionStart\"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(F){c=null;break a}var g=0,h=-1,k=-1,l=0,m=0,q=a,r=null;b:for(;;){for(var y;;){q!==c||0!==e&&3!==q.nodeType||(h=g+e);q!==f||0!==d&&3!==q.nodeType||(k=g+d);3===q.nodeType&&(g+=\nq.nodeValue.length);if(null===(y=q.firstChild))break;r=q;q=y}for(;;){if(q===a)break b;r===c&&++l===e&&(h=g);r===f&&++m===d&&(k=g);if(null!==(y=q.nextSibling))break;q=r;r=q.parentNode}q=y}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Df={focusedElem:a,selectionRange:c};dd=!1;for(V=b;null!==V;)if(b=V,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,V=a;else for(;null!==V;){b=V;try{var n=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;\ncase 1:if(null!==n){var t=n.memoizedProps,J=n.memoizedState,x=b.stateNode,w=x.getSnapshotBeforeUpdate(b.elementType===b.type?t:Ci(b.type,t),J);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var u=b.stateNode.containerInfo;1===u.nodeType?u.textContent=\"\":9===u.nodeType&&u.documentElement&&u.removeChild(u.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p(163));}}catch(F){W(b,b.return,F)}a=b.sibling;if(null!==a){a.return=b.return;V=a;break}V=b.return}n=Nj;Nj=!1;return n}\nfunction Pj(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Mj(b,c,f)}e=e.next}while(e!==d)}}function Qj(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Rj(a){var b=a.ref;if(null!==b){var c=a.stateNode;switch(a.tag){case 5:a=c;break;default:a=c}\"function\"===typeof b?b(a):b.current=a}}\nfunction Sj(a){var b=a.alternate;null!==b&&(a.alternate=null,Sj(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Of],delete b[Pf],delete b[of],delete b[Qf],delete b[Rf]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Tj(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Uj(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Tj(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}\nfunction Vj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=Bf));else if(4!==d&&(a=a.child,null!==a))for(Vj(a,b,c),a=a.sibling;null!==a;)Vj(a,b,c),a=a.sibling}\nfunction Wj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Wj(a,b,c),a=a.sibling;null!==a;)Wj(a,b,c),a=a.sibling}var X=null,Xj=!1;function Yj(a,b,c){for(c=c.child;null!==c;)Zj(a,b,c),c=c.sibling}\nfunction Zj(a,b,c){if(lc&&\"function\"===typeof lc.onCommitFiberUnmount)try{lc.onCommitFiberUnmount(kc,c)}catch(h){}switch(c.tag){case 5:U||Lj(c,b);case 6:var d=X,e=Xj;X=null;Yj(a,b,c);X=d;Xj=e;null!==X&&(Xj?(a=X,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):X.removeChild(c.stateNode));break;case 18:null!==X&&(Xj?(a=X,c=c.stateNode,8===a.nodeType?Kf(a.parentNode,c):1===a.nodeType&&Kf(a,c),bd(a)):Kf(X,c.stateNode));break;case 4:d=X;e=Xj;X=c.stateNode.containerInfo;Xj=!0;\nYj(a,b,c);X=d;Xj=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Mj(c,b,g):0!==(f&4)&&Mj(c,b,g));e=e.next}while(e!==d)}Yj(a,b,c);break;case 1:if(!U&&(Lj(c,b),d=c.stateNode,\"function\"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){W(c,b,h)}Yj(a,b,c);break;case 21:Yj(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==\nc.memoizedState,Yj(a,b,c),U=d):Yj(a,b,c);break;default:Yj(a,b,c)}}function ak(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Kj);b.forEach(function(b){var d=bk.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction ck(a,b){var c=b.deletions;if(null!==c)for(var d=0;d<c.length;d++){var e=c[d];try{var f=a,g=b,h=g;a:for(;null!==h;){switch(h.tag){case 5:X=h.stateNode;Xj=!1;break a;case 3:X=h.stateNode.containerInfo;Xj=!0;break a;case 4:X=h.stateNode.containerInfo;Xj=!0;break a}h=h.return}if(null===X)throw Error(p(160));Zj(f,g,e);X=null;Xj=!1;var k=e.alternate;null!==k&&(k.return=null);e.return=null}catch(l){W(e,b,l)}}if(b.subtreeFlags&12854)for(b=b.child;null!==b;)dk(b,a),b=b.sibling}\nfunction dk(a,b){var c=a.alternate,d=a.flags;switch(a.tag){case 0:case 11:case 14:case 15:ck(b,a);ek(a);if(d&4){try{Pj(3,a,a.return),Qj(3,a)}catch(t){W(a,a.return,t)}try{Pj(5,a,a.return)}catch(t){W(a,a.return,t)}}break;case 1:ck(b,a);ek(a);d&512&&null!==c&&Lj(c,c.return);break;case 5:ck(b,a);ek(a);d&512&&null!==c&&Lj(c,c.return);if(a.flags&32){var e=a.stateNode;try{ob(e,\"\")}catch(t){W(a,a.return,t)}}if(d&4&&(e=a.stateNode,null!=e)){var f=a.memoizedProps,g=null!==c?c.memoizedProps:f,h=a.type,k=a.updateQueue;\na.updateQueue=null;if(null!==k)try{\"input\"===h&&\"radio\"===f.type&&null!=f.name&&ab(e,f);vb(h,g);var l=vb(h,f);for(g=0;g<k.length;g+=2){var m=k[g],q=k[g+1];\"style\"===m?sb(e,q):\"dangerouslySetInnerHTML\"===m?nb(e,q):\"children\"===m?ob(e,q):ta(e,m,q,l)}switch(h){case \"input\":bb(e,f);break;case \"textarea\":ib(e,f);break;case \"select\":var r=e._wrapperState.wasMultiple;e._wrapperState.wasMultiple=!!f.multiple;var y=f.value;null!=y?fb(e,!!f.multiple,y,!1):r!==!!f.multiple&&(null!=f.defaultValue?fb(e,!!f.multiple,\nf.defaultValue,!0):fb(e,!!f.multiple,f.multiple?[]:\"\",!1))}e[Pf]=f}catch(t){W(a,a.return,t)}}break;case 6:ck(b,a);ek(a);if(d&4){if(null===a.stateNode)throw Error(p(162));e=a.stateNode;f=a.memoizedProps;try{e.nodeValue=f}catch(t){W(a,a.return,t)}}break;case 3:ck(b,a);ek(a);if(d&4&&null!==c&&c.memoizedState.isDehydrated)try{bd(b.containerInfo)}catch(t){W(a,a.return,t)}break;case 4:ck(b,a);ek(a);break;case 13:ck(b,a);ek(a);e=a.child;e.flags&8192&&(f=null!==e.memoizedState,e.stateNode.isHidden=f,!f||\nnull!==e.alternate&&null!==e.alternate.memoizedState||(fk=B()));d&4&&ak(a);break;case 22:m=null!==c&&null!==c.memoizedState;a.mode&1?(U=(l=U)||m,ck(b,a),U=l):ck(b,a);ek(a);if(d&8192){l=null!==a.memoizedState;if((a.stateNode.isHidden=l)&&!m&&0!==(a.mode&1))for(V=a,m=a.child;null!==m;){for(q=V=m;null!==V;){r=V;y=r.child;switch(r.tag){case 0:case 11:case 14:case 15:Pj(4,r,r.return);break;case 1:Lj(r,r.return);var n=r.stateNode;if(\"function\"===typeof n.componentWillUnmount){d=r;c=r.return;try{b=d,n.props=\nb.memoizedProps,n.state=b.memoizedState,n.componentWillUnmount()}catch(t){W(d,c,t)}}break;case 5:Lj(r,r.return);break;case 22:if(null!==r.memoizedState){gk(q);continue}}null!==y?(y.return=r,V=y):gk(q)}m=m.sibling}a:for(m=null,q=a;;){if(5===q.tag){if(null===m){m=q;try{e=q.stateNode,l?(f=e.style,\"function\"===typeof f.setProperty?f.setProperty(\"display\",\"none\",\"important\"):f.display=\"none\"):(h=q.stateNode,k=q.memoizedProps.style,g=void 0!==k&&null!==k&&k.hasOwnProperty(\"display\")?k.display:null,h.style.display=\nrb(\"display\",g))}catch(t){W(a,a.return,t)}}}else if(6===q.tag){if(null===m)try{q.stateNode.nodeValue=l?\"\":q.memoizedProps}catch(t){W(a,a.return,t)}}else if((22!==q.tag&&23!==q.tag||null===q.memoizedState||q===a)&&null!==q.child){q.child.return=q;q=q.child;continue}if(q===a)break a;for(;null===q.sibling;){if(null===q.return||q.return===a)break a;m===q&&(m=null);q=q.return}m===q&&(m=null);q.sibling.return=q.return;q=q.sibling}}break;case 19:ck(b,a);ek(a);d&4&&ak(a);break;case 21:break;default:ck(b,\na),ek(a)}}function ek(a){var b=a.flags;if(b&2){try{a:{for(var c=a.return;null!==c;){if(Tj(c)){var d=c;break a}c=c.return}throw Error(p(160));}switch(d.tag){case 5:var e=d.stateNode;d.flags&32&&(ob(e,\"\"),d.flags&=-33);var f=Uj(a);Wj(a,f,e);break;case 3:case 4:var g=d.stateNode.containerInfo,h=Uj(a);Vj(a,h,g);break;default:throw Error(p(161));}}catch(k){W(a,a.return,k)}a.flags&=-3}b&4096&&(a.flags&=-4097)}function hk(a,b,c){V=a;ik(a,b,c)}\nfunction ik(a,b,c){for(var d=0!==(a.mode&1);null!==V;){var e=V,f=e.child;if(22===e.tag&&d){var g=null!==e.memoizedState||Jj;if(!g){var h=e.alternate,k=null!==h&&null!==h.memoizedState||U;h=Jj;var l=U;Jj=g;if((U=k)&&!l)for(V=e;null!==V;)g=V,k=g.child,22===g.tag&&null!==g.memoizedState?jk(e):null!==k?(k.return=g,V=k):jk(e);for(;null!==f;)V=f,ik(f,b,c),f=f.sibling;V=e;Jj=h;U=l}kk(a,b,c)}else 0!==(e.subtreeFlags&8772)&&null!==f?(f.return=e,V=f):kk(a,b,c)}}\nfunction kk(a){for(;null!==V;){var b=V;if(0!==(b.flags&8772)){var c=b.alternate;try{if(0!==(b.flags&8772))switch(b.tag){case 0:case 11:case 15:U||Qj(5,b);break;case 1:var d=b.stateNode;if(b.flags&4&&!U)if(null===c)d.componentDidMount();else{var e=b.elementType===b.type?c.memoizedProps:Ci(b.type,c.memoizedProps);d.componentDidUpdate(e,c.memoizedState,d.__reactInternalSnapshotBeforeUpdate)}var f=b.updateQueue;null!==f&&sh(b,f,d);break;case 3:var g=b.updateQueue;if(null!==g){c=null;if(null!==b.child)switch(b.child.tag){case 5:c=\nb.child.stateNode;break;case 1:c=b.child.stateNode}sh(b,g,c)}break;case 5:var h=b.stateNode;if(null===c&&b.flags&4){c=h;var k=b.memoizedProps;switch(b.type){case \"button\":case \"input\":case \"select\":case \"textarea\":k.autoFocus&&c.focus();break;case \"img\":k.src&&(c.src=k.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(null===b.memoizedState){var l=b.alternate;if(null!==l){var m=l.memoizedState;if(null!==m){var q=m.dehydrated;null!==q&&bd(q)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;\ndefault:throw Error(p(163));}U||b.flags&512&&Rj(b)}catch(r){W(b,b.return,r)}}if(b===a){V=null;break}c=b.sibling;if(null!==c){c.return=b.return;V=c;break}V=b.return}}function gk(a){for(;null!==V;){var b=V;if(b===a){V=null;break}var c=b.sibling;if(null!==c){c.return=b.return;V=c;break}V=b.return}}\nfunction jk(a){for(;null!==V;){var b=V;try{switch(b.tag){case 0:case 11:case 15:var c=b.return;try{Qj(4,b)}catch(k){W(b,c,k)}break;case 1:var d=b.stateNode;if(\"function\"===typeof d.componentDidMount){var e=b.return;try{d.componentDidMount()}catch(k){W(b,e,k)}}var f=b.return;try{Rj(b)}catch(k){W(b,f,k)}break;case 5:var g=b.return;try{Rj(b)}catch(k){W(b,g,k)}}}catch(k){W(b,b.return,k)}if(b===a){V=null;break}var h=b.sibling;if(null!==h){h.return=b.return;V=h;break}V=b.return}}\nvar lk=Math.ceil,mk=ua.ReactCurrentDispatcher,nk=ua.ReactCurrentOwner,ok=ua.ReactCurrentBatchConfig,K=0,Q=null,Y=null,Z=0,fj=0,ej=Uf(0),T=0,pk=null,rh=0,qk=0,rk=0,sk=null,tk=null,fk=0,Gj=Infinity,uk=null,Oi=!1,Pi=null,Ri=null,vk=!1,wk=null,xk=0,yk=0,zk=null,Ak=-1,Bk=0;function R(){return 0!==(K&6)?B():-1!==Ak?Ak:Ak=B()}\nfunction yi(a){if(0===(a.mode&1))return 1;if(0!==(K&2)&&0!==Z)return Z&-Z;if(null!==Kg.transition)return 0===Bk&&(Bk=yc()),Bk;a=C;if(0!==a)return a;a=window.event;a=void 0===a?16:jd(a.type);return a}function gi(a,b,c,d){if(50<yk)throw yk=0,zk=null,Error(p(185));Ac(a,c,d);if(0===(K&2)||a!==Q)a===Q&&(0===(K&2)&&(qk|=c),4===T&&Ck(a,Z)),Dk(a,d),1===c&&0===K&&0===(b.mode&1)&&(Gj=B()+500,fg&&jg())}\nfunction Dk(a,b){var c=a.callbackNode;wc(a,b);var d=uc(a,a===Q?Z:0);if(0===d)null!==c&&bc(c),a.callbackNode=null,a.callbackPriority=0;else if(b=d&-d,a.callbackPriority!==b){null!=c&&bc(c);if(1===b)0===a.tag?ig(Ek.bind(null,a)):hg(Ek.bind(null,a)),Jf(function(){0===(K&6)&&jg()}),c=null;else{switch(Dc(d)){case 1:c=fc;break;case 4:c=gc;break;case 16:c=hc;break;case 536870912:c=jc;break;default:c=hc}c=Fk(c,Gk.bind(null,a))}a.callbackPriority=b;a.callbackNode=c}}\nfunction Gk(a,b){Ak=-1;Bk=0;if(0!==(K&6))throw Error(p(327));var c=a.callbackNode;if(Hk()&&a.callbackNode!==c)return null;var d=uc(a,a===Q?Z:0);if(0===d)return null;if(0!==(d&30)||0!==(d&a.expiredLanes)||b)b=Ik(a,d);else{b=d;var e=K;K|=2;var f=Jk();if(Q!==a||Z!==b)uk=null,Gj=B()+500,Kk(a,b);do try{Lk();break}catch(h){Mk(a,h)}while(1);$g();mk.current=f;K=e;null!==Y?b=0:(Q=null,Z=0,b=T)}if(0!==b){2===b&&(e=xc(a),0!==e&&(d=e,b=Nk(a,e)));if(1===b)throw c=pk,Kk(a,0),Ck(a,d),Dk(a,B()),c;if(6===b)Ck(a,d);\nelse{e=a.current.alternate;if(0===(d&30)&&!Ok(e)&&(b=Ik(a,d),2===b&&(f=xc(a),0!==f&&(d=f,b=Nk(a,f))),1===b))throw c=pk,Kk(a,0),Ck(a,d),Dk(a,B()),c;a.finishedWork=e;a.finishedLanes=d;switch(b){case 0:case 1:throw Error(p(345));case 2:Pk(a,tk,uk);break;case 3:Ck(a,d);if((d&130023424)===d&&(b=fk+500-B(),10<b)){if(0!==uc(a,0))break;e=a.suspendedLanes;if((e&d)!==d){R();a.pingedLanes|=a.suspendedLanes&e;break}a.timeoutHandle=Ff(Pk.bind(null,a,tk,uk),b);break}Pk(a,tk,uk);break;case 4:Ck(a,d);if((d&4194240)===\nd)break;b=a.eventTimes;for(e=-1;0<d;){var g=31-oc(d);f=1<<g;g=b[g];g>e&&(e=g);d&=~f}d=e;d=B()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*lk(d/1960))-d;if(10<d){a.timeoutHandle=Ff(Pk.bind(null,a,tk,uk),d);break}Pk(a,tk,uk);break;case 5:Pk(a,tk,uk);break;default:throw Error(p(329));}}}Dk(a,B());return a.callbackNode===c?Gk.bind(null,a):null}\nfunction Nk(a,b){var c=sk;a.current.memoizedState.isDehydrated&&(Kk(a,b).flags|=256);a=Ik(a,b);2!==a&&(b=tk,tk=c,null!==b&&Fj(b));return a}function Fj(a){null===tk?tk=a:tk.push.apply(tk,a)}\nfunction Ok(a){for(var b=a;;){if(b.flags&16384){var c=b.updateQueue;if(null!==c&&(c=c.stores,null!==c))for(var d=0;d<c.length;d++){var e=c[d],f=e.getSnapshot;e=e.value;try{if(!He(f(),e))return!1}catch(g){return!1}}}c=b.child;if(b.subtreeFlags&16384&&null!==c)c.return=b,b=c;else{if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return!0;b=b.return}b.sibling.return=b.return;b=b.sibling}}return!0}\nfunction Ck(a,b){b&=~rk;b&=~qk;a.suspendedLanes|=b;a.pingedLanes&=~b;for(a=a.expirationTimes;0<b;){var c=31-oc(b),d=1<<c;a[c]=-1;b&=~d}}function Ek(a){if(0!==(K&6))throw Error(p(327));Hk();var b=uc(a,0);if(0===(b&1))return Dk(a,B()),null;var c=Ik(a,b);if(0!==a.tag&&2===c){var d=xc(a);0!==d&&(b=d,c=Nk(a,d))}if(1===c)throw c=pk,Kk(a,0),Ck(a,b),Dk(a,B()),c;if(6===c)throw Error(p(345));a.finishedWork=a.current.alternate;a.finishedLanes=b;Pk(a,tk,uk);Dk(a,B());return null}\nfunction Qk(a,b){var c=K;K|=1;try{return a(b)}finally{K=c,0===K&&(Gj=B()+500,fg&&jg())}}function Rk(a){null!==wk&&0===wk.tag&&0===(K&6)&&Hk();var b=K;K|=1;var c=ok.transition,d=C;try{if(ok.transition=null,C=1,a)return a()}finally{C=d,ok.transition=c,K=b,0===(K&6)&&jg()}}function Hj(){fj=ej.current;E(ej)}\nfunction Kk(a,b){a.finishedWork=null;a.finishedLanes=0;var c=a.timeoutHandle;-1!==c&&(a.timeoutHandle=-1,Gf(c));if(null!==Y)for(c=Y.return;null!==c;){var d=c;wg(d);switch(d.tag){case 1:d=d.type.childContextTypes;null!==d&&void 0!==d&&$f();break;case 3:zh();E(Wf);E(H);Eh();break;case 5:Bh(d);break;case 4:zh();break;case 13:E(L);break;case 19:E(L);break;case 10:ah(d.type._context);break;case 22:case 23:Hj()}c=c.return}Q=a;Y=a=Pg(a.current,null);Z=fj=b;T=0;pk=null;rk=qk=rh=0;tk=sk=null;if(null!==fh){for(b=\n0;b<fh.length;b++)if(c=fh[b],d=c.interleaved,null!==d){c.interleaved=null;var e=d.next,f=c.pending;if(null!==f){var g=f.next;f.next=e;d.next=g}c.pending=d}fh=null}return a}\nfunction Mk(a,b){do{var c=Y;try{$g();Fh.current=Rh;if(Ih){for(var d=M.memoizedState;null!==d;){var e=d.queue;null!==e&&(e.pending=null);d=d.next}Ih=!1}Hh=0;O=N=M=null;Jh=!1;Kh=0;nk.current=null;if(null===c||null===c.return){T=1;pk=b;Y=null;break}a:{var f=a,g=c.return,h=c,k=b;b=Z;h.flags|=32768;if(null!==k&&\"object\"===typeof k&&\"function\"===typeof k.then){var l=k,m=h,q=m.tag;if(0===(m.mode&1)&&(0===q||11===q||15===q)){var r=m.alternate;r?(m.updateQueue=r.updateQueue,m.memoizedState=r.memoizedState,\nm.lanes=r.lanes):(m.updateQueue=null,m.memoizedState=null)}var y=Ui(g);if(null!==y){y.flags&=-257;Vi(y,g,h,f,b);y.mode&1&&Si(f,l,b);b=y;k=l;var n=b.updateQueue;if(null===n){var t=new Set;t.add(k);b.updateQueue=t}else n.add(k);break a}else{if(0===(b&1)){Si(f,l,b);tj();break a}k=Error(p(426))}}else if(I&&h.mode&1){var J=Ui(g);if(null!==J){0===(J.flags&65536)&&(J.flags|=256);Vi(J,g,h,f,b);Jg(Ji(k,h));break a}}f=k=Ji(k,h);4!==T&&(T=2);null===sk?sk=[f]:sk.push(f);f=g;do{switch(f.tag){case 3:f.flags|=65536;\nb&=-b;f.lanes|=b;var x=Ni(f,k,b);ph(f,x);break a;case 1:h=k;var w=f.type,u=f.stateNode;if(0===(f.flags&128)&&(\"function\"===typeof w.getDerivedStateFromError||null!==u&&\"function\"===typeof u.componentDidCatch&&(null===Ri||!Ri.has(u)))){f.flags|=65536;b&=-b;f.lanes|=b;var F=Qi(f,h,b);ph(f,F);break a}}f=f.return}while(null!==f)}Sk(c)}catch(na){b=na;Y===c&&null!==c&&(Y=c=c.return);continue}break}while(1)}function Jk(){var a=mk.current;mk.current=Rh;return null===a?Rh:a}\nfunction tj(){if(0===T||3===T||2===T)T=4;null===Q||0===(rh&268435455)&&0===(qk&268435455)||Ck(Q,Z)}function Ik(a,b){var c=K;K|=2;var d=Jk();if(Q!==a||Z!==b)uk=null,Kk(a,b);do try{Tk();break}catch(e){Mk(a,e)}while(1);$g();K=c;mk.current=d;if(null!==Y)throw Error(p(261));Q=null;Z=0;return T}function Tk(){for(;null!==Y;)Uk(Y)}function Lk(){for(;null!==Y&&!cc();)Uk(Y)}function Uk(a){var b=Vk(a.alternate,a,fj);a.memoizedProps=a.pendingProps;null===b?Sk(a):Y=b;nk.current=null}\nfunction Sk(a){var b=a;do{var c=b.alternate;a=b.return;if(0===(b.flags&32768)){if(c=Ej(c,b,fj),null!==c){Y=c;return}}else{c=Ij(c,b);if(null!==c){c.flags&=32767;Y=c;return}if(null!==a)a.flags|=32768,a.subtreeFlags=0,a.deletions=null;else{T=6;Y=null;return}}b=b.sibling;if(null!==b){Y=b;return}Y=b=a}while(null!==b);0===T&&(T=5)}function Pk(a,b,c){var d=C,e=ok.transition;try{ok.transition=null,C=1,Wk(a,b,c,d)}finally{ok.transition=e,C=d}return null}\nfunction Wk(a,b,c,d){do Hk();while(null!==wk);if(0!==(K&6))throw Error(p(327));c=a.finishedWork;var e=a.finishedLanes;if(null===c)return null;a.finishedWork=null;a.finishedLanes=0;if(c===a.current)throw Error(p(177));a.callbackNode=null;a.callbackPriority=0;var f=c.lanes|c.childLanes;Bc(a,f);a===Q&&(Y=Q=null,Z=0);0===(c.subtreeFlags&2064)&&0===(c.flags&2064)||vk||(vk=!0,Fk(hc,function(){Hk();return null}));f=0!==(c.flags&15990);if(0!==(c.subtreeFlags&15990)||f){f=ok.transition;ok.transition=null;\nvar g=C;C=1;var h=K;K|=4;nk.current=null;Oj(a,c);dk(c,a);Oe(Df);dd=!!Cf;Df=Cf=null;a.current=c;hk(c,a,e);dc();K=h;C=g;ok.transition=f}else a.current=c;vk&&(vk=!1,wk=a,xk=e);f=a.pendingLanes;0===f&&(Ri=null);mc(c.stateNode,d);Dk(a,B());if(null!==b)for(d=a.onRecoverableError,c=0;c<b.length;c++)e=b[c],d(e.value,{componentStack:e.stack,digest:e.digest});if(Oi)throw Oi=!1,a=Pi,Pi=null,a;0!==(xk&1)&&0!==a.tag&&Hk();f=a.pendingLanes;0!==(f&1)?a===zk?yk++:(yk=0,zk=a):yk=0;jg();return null}\nfunction Hk(){if(null!==wk){var a=Dc(xk),b=ok.transition,c=C;try{ok.transition=null;C=16>a?16:a;if(null===wk)var d=!1;else{a=wk;wk=null;xk=0;if(0!==(K&6))throw Error(p(331));var e=K;K|=4;for(V=a.current;null!==V;){var f=V,g=f.child;if(0!==(V.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;k<h.length;k++){var l=h[k];for(V=l;null!==V;){var m=V;switch(m.tag){case 0:case 11:case 15:Pj(8,m,f)}var q=m.child;if(null!==q)q.return=m,V=q;else for(;null!==V;){m=V;var r=m.sibling,y=m.return;Sj(m);if(m===\nl){V=null;break}if(null!==r){r.return=y;V=r;break}V=y}}}var n=f.alternate;if(null!==n){var t=n.child;if(null!==t){n.child=null;do{var J=t.sibling;t.sibling=null;t=J}while(null!==t)}}V=f}}if(0!==(f.subtreeFlags&2064)&&null!==g)g.return=f,V=g;else b:for(;null!==V;){f=V;if(0!==(f.flags&2048))switch(f.tag){case 0:case 11:case 15:Pj(9,f,f.return)}var x=f.sibling;if(null!==x){x.return=f.return;V=x;break b}V=f.return}}var w=a.current;for(V=w;null!==V;){g=V;var u=g.child;if(0!==(g.subtreeFlags&2064)&&null!==\nu)u.return=g,V=u;else b:for(g=w;null!==V;){h=V;if(0!==(h.flags&2048))try{switch(h.tag){case 0:case 11:case 15:Qj(9,h)}}catch(na){W(h,h.return,na)}if(h===g){V=null;break b}var F=h.sibling;if(null!==F){F.return=h.return;V=F;break b}V=h.return}}K=e;jg();if(lc&&\"function\"===typeof lc.onPostCommitFiberRoot)try{lc.onPostCommitFiberRoot(kc,a)}catch(na){}d=!0}return d}finally{C=c,ok.transition=b}}return!1}function Xk(a,b,c){b=Ji(c,b);b=Ni(a,b,1);a=nh(a,b,1);b=R();null!==a&&(Ac(a,1,b),Dk(a,b))}\nfunction W(a,b,c){if(3===a.tag)Xk(a,a,c);else for(;null!==b;){if(3===b.tag){Xk(b,a,c);break}else if(1===b.tag){var d=b.stateNode;if(\"function\"===typeof b.type.getDerivedStateFromError||\"function\"===typeof d.componentDidCatch&&(null===Ri||!Ri.has(d))){a=Ji(c,a);a=Qi(b,a,1);b=nh(b,a,1);a=R();null!==b&&(Ac(b,1,a),Dk(b,a));break}}b=b.return}}\nfunction Ti(a,b,c){var d=a.pingCache;null!==d&&d.delete(b);b=R();a.pingedLanes|=a.suspendedLanes&c;Q===a&&(Z&c)===c&&(4===T||3===T&&(Z&130023424)===Z&&500>B()-fk?Kk(a,0):rk|=c);Dk(a,b)}function Yk(a,b){0===b&&(0===(a.mode&1)?b=1:(b=sc,sc<<=1,0===(sc&130023424)&&(sc=4194304)));var c=R();a=ih(a,b);null!==a&&(Ac(a,b,c),Dk(a,c))}function uj(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Yk(a,c)}\nfunction bk(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(p(314));}null!==d&&d.delete(b);Yk(a,c)}var Vk;\nVk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||Wf.current)dh=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return dh=!1,yj(a,b,c);dh=0!==(a.flags&131072)?!0:!1}else dh=!1,I&&0!==(b.flags&1048576)&&ug(b,ng,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;ij(a,b);a=b.pendingProps;var e=Yf(b,H.current);ch(b,c);e=Nh(null,b,d,a,e,c);var f=Sh();b.flags|=1;\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=\nnull,Zf(d)?(f=!0,cg(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,kh(b),e.updater=Ei,b.stateNode=e,e._reactInternals=b,Ii(b,d,a,c),b=jj(null,b,d,!0,f,c)):(b.tag=0,I&&f&&vg(b),Xi(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{ij(a,b);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=Zk(d);a=Ci(d,a);switch(e){case 0:b=cj(null,b,d,a,c);break a;case 1:b=hj(null,b,d,a,c);break a;case 11:b=Yi(null,b,d,a,c);break a;case 14:b=$i(null,b,d,Ci(d.type,a),c);break a}throw Error(p(306,\nd,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),cj(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),hj(a,b,d,e,c);case 3:a:{kj(b);if(null===a)throw Error(p(387));d=b.pendingProps;f=b.memoizedState;e=f.element;lh(a,b);qh(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=\nf,b.memoizedState=f,b.flags&256){e=Ji(Error(p(423)),b);b=lj(a,b,d,c,e);break a}else if(d!==e){e=Ji(Error(p(424)),b);b=lj(a,b,d,c,e);break a}else for(yg=Lf(b.stateNode.containerInfo.firstChild),xg=b,I=!0,zg=null,c=Vg(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Ig();if(d===e){b=Zi(a,b,c);break a}Xi(a,b,d,c)}b=b.child}return b;case 5:return Ah(b),null===a&&Eg(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Ef(d,e)?g=null:null!==f&&Ef(d,f)&&(b.flags|=32),\ngj(a,b),Xi(a,b,g,c),b.child;case 6:return null===a&&Eg(b),null;case 13:return oj(a,b,c);case 4:return yh(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Ug(b,null,d,c):Xi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),Yi(a,b,d,e,c);case 7:return Xi(a,b,b.pendingProps,c),b.child;case 8:return Xi(a,b,b.pendingProps.children,c),b.child;case 12:return Xi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;\ng=e.value;G(Wg,d._currentValue);d._currentValue=g;if(null!==f)if(He(f.value,g)){if(f.children===e.children&&!Wf.current){b=Zi(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=mh(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);bh(f.return,\nc,b);h.lanes|=c;break}k=k.next}}else if(10===f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(p(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);bh(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}Xi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,ch(b,c),e=eh(e),d=d(e),b.flags|=1,Xi(a,b,d,c),\nb.child;case 14:return d=b.type,e=Ci(d,b.pendingProps),e=Ci(d.type,e),$i(a,b,d,e,c);case 15:return bj(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),ij(a,b),b.tag=1,Zf(d)?(a=!0,cg(b)):a=!1,ch(b,c),Gi(b,d,e),Ii(b,d,e,c),jj(null,b,d,!0,a,c);case 19:return xj(a,b,c);case 22:return dj(a,b,c)}throw Error(p(156,b.tag));};function Fk(a,b){return ac(a,b)}\nfunction $k(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function Bg(a,b,c,d){return new $k(a,b,c,d)}function aj(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction Zk(a){if(\"function\"===typeof a)return aj(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Da)return 11;if(a===Ga)return 14}return 2}\nfunction Pg(a,b){var c=a.alternate;null===c?(c=Bg(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction Rg(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)aj(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ya:return Tg(c.children,e,f,b);case za:g=8;e|=8;break;case Aa:return a=Bg(12,c,b,e|2),a.elementType=Aa,a.lanes=f,a;case Ea:return a=Bg(13,c,b,e),a.elementType=Ea,a.lanes=f,a;case Fa:return a=Bg(19,c,b,e),a.elementType=Fa,a.lanes=f,a;case Ia:return pj(c,e,f,b);default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case Ba:g=10;break a;case Ca:g=9;break a;case Da:g=11;\nbreak a;case Ga:g=14;break a;case Ha:g=16;d=null;break a}throw Error(p(130,null==a?a:typeof a,\"\"));}b=Bg(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Tg(a,b,c,d){a=Bg(7,a,d,b);a.lanes=c;return a}function pj(a,b,c,d){a=Bg(22,a,d,b);a.elementType=Ia;a.lanes=c;a.stateNode={isHidden:!1};return a}function Qg(a,b,c){a=Bg(6,a,null,b);a.lanes=c;return a}\nfunction Sg(a,b,c){b=Bg(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction al(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=null;this.callbackPriority=0;this.eventTimes=zc(0);this.expirationTimes=zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=zc(0);this.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=\nnull}function bl(a,b,c,d,e,f,g,h,k){a=new al(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=Bg(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};kh(f);return a}function cl(a,b,c){var d=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:wa,key:null==d?null:\"\"+d,children:a,containerInfo:b,implementation:c}}\nfunction dl(a){if(!a)return Vf;a=a._reactInternals;a:{if(Vb(a)!==a||1!==a.tag)throw Error(p(170));var b=a;do{switch(b.tag){case 3:b=b.stateNode.context;break a;case 1:if(Zf(b.type)){b=b.stateNode.__reactInternalMemoizedMergedChildContext;break a}}b=b.return}while(null!==b);throw Error(p(171));}if(1===a.tag){var c=a.type;if(Zf(c))return bg(a,c,b)}return b}\nfunction el(a,b,c,d,e,f,g,h,k){a=bl(c,d,!0,a,e,f,g,h,k);a.context=dl(null);c=a.current;d=R();e=yi(c);f=mh(d,e);f.callback=void 0!==b&&null!==b?b:null;nh(c,f,e);a.current.lanes=e;Ac(a,e,d);Dk(a,d);return a}function fl(a,b,c,d){var e=b.current,f=R(),g=yi(e);c=dl(c);null===b.context?b.context=c:b.pendingContext=c;b=mh(f,g);b.payload={element:a};d=void 0===d?null:d;null!==d&&(b.callback=d);a=nh(e,b,g);null!==a&&(gi(a,e,g,f),oh(a,e,g));return g}\nfunction gl(a){a=a.current;if(!a.child)return null;switch(a.child.tag){case 5:return a.child.stateNode;default:return a.child.stateNode}}function hl(a,b){a=a.memoizedState;if(null!==a&&null!==a.dehydrated){var c=a.retryLane;a.retryLane=0!==c&&c<b?c:b}}function il(a,b){hl(a,b);(a=a.alternate)&&hl(a,b)}function jl(){return null}var kl=\"function\"===typeof reportError?reportError:function(a){console.error(a)};function ll(a){this._internalRoot=a}\nml.prototype.render=ll.prototype.render=function(a){var b=this._internalRoot;if(null===b)throw Error(p(409));fl(a,b,null,null)};ml.prototype.unmount=ll.prototype.unmount=function(){var a=this._internalRoot;if(null!==a){this._internalRoot=null;var b=a.containerInfo;Rk(function(){fl(null,a,null,null)});b[uf]=null}};function ml(a){this._internalRoot=a}\nml.prototype.unstable_scheduleHydration=function(a){if(a){var b=Hc();a={blockedOn:null,target:a,priority:b};for(var c=0;c<Qc.length&&0!==b&&b<Qc[c].priority;c++);Qc.splice(c,0,a);0===c&&Vc(a)}};function nl(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType)}function ol(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType&&(8!==a.nodeType||\" react-mount-point-unstable \"!==a.nodeValue))}function pl(){}\nfunction ql(a,b,c,d,e){if(e){if(\"function\"===typeof d){var f=d;d=function(){var a=gl(g);f.call(a)}}var g=el(b,d,a,0,null,!1,!1,\"\",pl);a._reactRootContainer=g;a[uf]=g.current;sf(8===a.nodeType?a.parentNode:a);Rk();return g}for(;e=a.lastChild;)a.removeChild(e);if(\"function\"===typeof d){var h=d;d=function(){var a=gl(k);h.call(a)}}var k=bl(a,0,!1,null,null,!1,!1,\"\",pl);a._reactRootContainer=k;a[uf]=k.current;sf(8===a.nodeType?a.parentNode:a);Rk(function(){fl(b,k,c,d)});return k}\nfunction rl(a,b,c,d,e){var f=c._reactRootContainer;if(f){var g=f;if(\"function\"===typeof e){var h=e;e=function(){var a=gl(g);h.call(a)}}fl(b,g,a,e)}else g=ql(c,b,a,e,d);return gl(g)}Ec=function(a){switch(a.tag){case 3:var b=a.stateNode;if(b.current.memoizedState.isDehydrated){var c=tc(b.pendingLanes);0!==c&&(Cc(b,c|1),Dk(b,B()),0===(K&6)&&(Gj=B()+500,jg()))}break;case 13:Rk(function(){var b=ih(a,1);if(null!==b){var c=R();gi(b,a,1,c)}}),il(a,1)}};\nFc=function(a){if(13===a.tag){var b=ih(a,134217728);if(null!==b){var c=R();gi(b,a,134217728,c)}il(a,134217728)}};Gc=function(a){if(13===a.tag){var b=yi(a),c=ih(a,b);if(null!==c){var d=R();gi(c,a,b,d)}il(a,b)}};Hc=function(){return C};Ic=function(a,b){var c=C;try{return C=a,b()}finally{C=c}};\nyb=function(a,b,c){switch(b){case \"input\":bb(a,c);b=c.name;if(\"radio\"===c.type&&null!=b){for(c=a;c.parentNode;)c=c.parentNode;c=c.querySelectorAll(\"input[name=\"+JSON.stringify(\"\"+b)+'][type=\"radio\"]');for(b=0;b<c.length;b++){var d=c[b];if(d!==a&&d.form===a.form){var e=Db(d);if(!e)throw Error(p(90));Wa(d);bb(d,e)}}}break;case \"textarea\":ib(a,c);break;case \"select\":b=c.value,null!=b&&fb(a,!!c.multiple,b,!1)}};Gb=Qk;Hb=Rk;\nvar sl={usingClientEntryPoint:!1,Events:[Cb,ue,Db,Eb,Fb,Qk]},tl={findFiberByHostInstance:Wc,bundleType:0,version:\"18.3.1\",rendererPackageName:\"react-dom\"};\nvar ul={bundleType:tl.bundleType,version:tl.version,rendererPackageName:tl.rendererPackageName,rendererConfig:tl.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:ua.ReactCurrentDispatcher,findHostInstanceByFiber:function(a){a=Zb(a);return null===a?null:a.stateNode},findFiberByHostInstance:tl.findFiberByHostInstance||\njl,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:\"18.3.1-next-f1338f8080-20240426\"};if(\"undefined\"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var vl=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!vl.isDisabled&&vl.supportsFiber)try{kc=vl.inject(ul),lc=vl}catch(a){}}exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=sl;\nexports.createPortal=function(a,b){var c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!nl(b))throw Error(p(200));return cl(a,b,null,c)};exports.createRoot=function(a,b){if(!nl(a))throw Error(p(299));var c=!1,d=\"\",e=kl;null!==b&&void 0!==b&&(!0===b.unstable_strictMode&&(c=!0),void 0!==b.identifierPrefix&&(d=b.identifierPrefix),void 0!==b.onRecoverableError&&(e=b.onRecoverableError));b=bl(a,1,!1,null,null,c,!1,d,e);a[uf]=b.current;sf(8===a.nodeType?a.parentNode:a);return new ll(b)};\nexports.findDOMNode=function(a){if(null==a)return null;if(1===a.nodeType)return a;var b=a._reactInternals;if(void 0===b){if(\"function\"===typeof a.render)throw Error(p(188));a=Object.keys(a).join(\",\");throw Error(p(268,a));}a=Zb(b);a=null===a?null:a.stateNode;return a};exports.flushSync=function(a){return Rk(a)};exports.hydrate=function(a,b,c){if(!ol(b))throw Error(p(200));return rl(null,a,b,!0,c)};\nexports.hydrateRoot=function(a,b,c){if(!nl(a))throw Error(p(405));var d=null!=c&&c.hydratedSources||null,e=!1,f=\"\",g=kl;null!==c&&void 0!==c&&(!0===c.unstable_strictMode&&(e=!0),void 0!==c.identifierPrefix&&(f=c.identifierPrefix),void 0!==c.onRecoverableError&&(g=c.onRecoverableError));b=el(b,null,a,1,null!=c?c:null,e,!1,f,g);a[uf]=b.current;sf(a);if(d)for(a=0;a<d.length;a++)c=d[a],e=c._getVersion,e=e(c._source),null==b.mutableSourceEagerHydrationData?b.mutableSourceEagerHydrationData=[c,e]:b.mutableSourceEagerHydrationData.push(c,\ne);return new ml(b)};exports.render=function(a,b,c){if(!ol(b))throw Error(p(200));return rl(null,a,b,!1,c)};exports.unmountComponentAtNode=function(a){if(!ol(a))throw Error(p(40));return a._reactRootContainer?(Rk(function(){rl(null,null,a,!1,function(){a._reactRootContainer=null;a[uf]=null})}),!0):!1};exports.unstable_batchedUpdates=Qk;\nexports.unstable_renderSubtreeIntoContainer=function(a,b,c,d){if(!ol(c))throw Error(p(200));if(null==a||void 0===a._reactInternals)throw Error(p(38));return rl(a,b,c,!1,d)};exports.version=\"18.3.1-next-f1338f8080-20240426\";\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","\"use strict\";\nvar hasProps = function (jsx) {\n return Object.prototype.hasOwnProperty.call(jsx, 'props');\n};\nvar reduceJsxToString = function (previous, current) {\n return previous + innerText(current);\n};\nvar innerText = function (jsx) {\n if (jsx === null ||\n typeof jsx === 'boolean' ||\n typeof jsx === 'undefined') {\n return '';\n }\n if (typeof jsx === 'number') {\n return jsx.toString();\n }\n if (typeof jsx === 'string') {\n return jsx;\n }\n if (Array.isArray(jsx)) {\n return jsx.reduce(reduceJsxToString, '');\n }\n if (hasProps(jsx) &&\n Object.prototype.hasOwnProperty.call(jsx.props, 'children')) {\n return innerText(jsx.props.children);\n }\n return '';\n};\ninnerText.default = innerText;\nmodule.exports = innerText;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.bodyOpenClassName = exports.portalClassName = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require(\"react-dom\");\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _ModalPortal = require(\"./ModalPortal\");\n\nvar _ModalPortal2 = _interopRequireDefault(_ModalPortal);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar portalClassName = exports.portalClassName = \"ReactModalPortal\";\nvar bodyOpenClassName = exports.bodyOpenClassName = \"ReactModal__Body--open\";\n\nvar isReact16 = _safeHTMLElement.canUseDOM && _reactDom2.default.createPortal !== undefined;\n\nvar createHTMLElement = function createHTMLElement(name) {\n return document.createElement(name);\n};\n\nvar getCreatePortal = function getCreatePortal() {\n return isReact16 ? _reactDom2.default.createPortal : _reactDom2.default.unstable_renderSubtreeIntoContainer;\n};\n\nfunction getParentElement(parentSelector) {\n return parentSelector();\n}\n\nvar Modal = function (_Component) {\n _inherits(Modal, _Component);\n\n function Modal() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Modal);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Modal.__proto__ || Object.getPrototypeOf(Modal)).call.apply(_ref, [this].concat(args))), _this), _this.removePortal = function () {\n !isReact16 && _reactDom2.default.unmountComponentAtNode(_this.node);\n var parent = getParentElement(_this.props.parentSelector);\n if (parent && parent.contains(_this.node)) {\n parent.removeChild(_this.node);\n } else {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"parentSelector\" prop did not returned any DOM ' + \"element. Make sure that the parent element is unmounted to \" + \"avoid any memory leaks.\");\n }\n }, _this.portalRef = function (ref) {\n _this.portal = ref;\n }, _this.renderPortal = function (props) {\n var createPortal = getCreatePortal();\n var portal = createPortal(_this, _react2.default.createElement(_ModalPortal2.default, _extends({ defaultStyles: Modal.defaultStyles }, props)), _this.node);\n _this.portalRef(portal);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Modal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!_safeHTMLElement.canUseDOM) return;\n\n if (!isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n this.node.className = this.props.portalClassName;\n\n var parent = getParentElement(this.props.parentSelector);\n parent.appendChild(this.node);\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"getSnapshotBeforeUpdate\",\n value: function getSnapshotBeforeUpdate(prevProps) {\n var prevParent = getParentElement(prevProps.parentSelector);\n var nextParent = getParentElement(this.props.parentSelector);\n return { prevParent: prevParent, nextParent: nextParent };\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, _, snapshot) {\n if (!_safeHTMLElement.canUseDOM) return;\n var _props = this.props,\n isOpen = _props.isOpen,\n portalClassName = _props.portalClassName;\n\n\n if (prevProps.portalClassName !== portalClassName) {\n this.node.className = portalClassName;\n }\n\n var prevParent = snapshot.prevParent,\n nextParent = snapshot.nextParent;\n\n if (nextParent !== prevParent) {\n prevParent.removeChild(this.node);\n nextParent.appendChild(this.node);\n }\n\n // Stop unnecessary renders if modal is remaining closed\n if (!prevProps.isOpen && !isOpen) return;\n\n !isReact16 && this.renderPortal(this.props);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (!_safeHTMLElement.canUseDOM || !this.node || !this.portal) return;\n\n var state = this.portal.state;\n var now = Date.now();\n var closesAt = state.isOpen && this.props.closeTimeoutMS && (state.closesAt || now + this.props.closeTimeoutMS);\n\n if (closesAt) {\n if (!state.beforeClose) {\n this.portal.closeWithTimeout();\n }\n\n setTimeout(this.removePortal, closesAt - now);\n } else {\n this.removePortal();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!_safeHTMLElement.canUseDOM || !isReact16) {\n return null;\n }\n\n if (!this.node && isReact16) {\n this.node = createHTMLElement(\"div\");\n }\n\n var createPortal = getCreatePortal();\n return createPortal(_react2.default.createElement(_ModalPortal2.default, _extends({\n ref: this.portalRef,\n defaultStyles: Modal.defaultStyles\n }, this.props)), this.node);\n }\n }], [{\n key: \"setAppElement\",\n value: function setAppElement(element) {\n ariaAppHider.setElement(element);\n }\n\n /* eslint-disable react/no-unused-prop-types */\n\n /* eslint-enable react/no-unused-prop-types */\n\n }]);\n\n return Modal;\n}(_react.Component);\n\nModal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n portalClassName: _propTypes2.default.string,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n base: _propTypes2.default.string.isRequired,\n afterOpen: _propTypes2.default.string.isRequired,\n beforeClose: _propTypes2.default.string.isRequired\n })]),\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n ariaHideApp: _propTypes2.default.bool,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n parentSelector: _propTypes2.default.func,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func\n};\nModal.defaultProps = {\n isOpen: false,\n portalClassName: portalClassName,\n bodyOpenClassName: bodyOpenClassName,\n role: \"dialog\",\n ariaHideApp: true,\n closeTimeoutMS: 0,\n shouldFocusAfterRender: true,\n shouldCloseOnEsc: true,\n shouldCloseOnOverlayClick: true,\n shouldReturnFocusAfterClose: true,\n preventScroll: false,\n parentSelector: function parentSelector() {\n return document.body;\n },\n overlayElement: function overlayElement(props, contentEl) {\n return _react2.default.createElement(\n \"div\",\n props,\n contentEl\n );\n },\n contentElement: function contentElement(props, children) {\n return _react2.default.createElement(\n \"div\",\n props,\n children\n );\n }\n};\nModal.defaultStyles = {\n overlay: {\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(255, 255, 255, 0.75)\"\n },\n content: {\n position: \"absolute\",\n top: \"40px\",\n left: \"40px\",\n right: \"40px\",\n bottom: \"40px\",\n border: \"1px solid #ccc\",\n background: \"#fff\",\n overflow: \"auto\",\n WebkitOverflowScrolling: \"touch\",\n borderRadius: \"4px\",\n outline: \"none\",\n padding: \"20px\"\n }\n};\n\n\n(0, _reactLifecyclesCompat.polyfill)(Modal);\n\nif (process.env.NODE_ENV !== \"production\") {\n Modal.setCreateHTMLElement = function (fn) {\n return createHTMLElement = fn;\n };\n}\n\nexports.default = Modal;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _propTypes = require(\"prop-types\");\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _focusManager = require(\"../helpers/focusManager\");\n\nvar focusManager = _interopRequireWildcard(_focusManager);\n\nvar _scopeTab = require(\"../helpers/scopeTab\");\n\nvar _scopeTab2 = _interopRequireDefault(_scopeTab);\n\nvar _ariaAppHider = require(\"../helpers/ariaAppHider\");\n\nvar ariaAppHider = _interopRequireWildcard(_ariaAppHider);\n\nvar _classList = require(\"../helpers/classList\");\n\nvar classList = _interopRequireWildcard(_classList);\n\nvar _safeHTMLElement = require(\"../helpers/safeHTMLElement\");\n\nvar _safeHTMLElement2 = _interopRequireDefault(_safeHTMLElement);\n\nvar _portalOpenInstances = require(\"../helpers/portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nrequire(\"../helpers/bodyTrap\");\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// so that our CSS is statically analyzable\nvar CLASS_NAMES = {\n overlay: \"ReactModal__Overlay\",\n content: \"ReactModal__Content\"\n};\n\n/**\n * We need to support the deprecated `KeyboardEvent.keyCode` in addition to\n * `KeyboardEvent.code` for apps that still support IE11. Can be removed when\n * `react-modal` only supports React >18 (which dropped IE support).\n */\nvar isTabKey = function isTabKey(event) {\n return event.code === \"Tab\" || event.keyCode === 9;\n};\nvar isEscKey = function isEscKey(event) {\n return event.code === \"Escape\" || event.keyCode === 27;\n};\n\nvar ariaHiddenInstances = 0;\n\nvar ModalPortal = function (_Component) {\n _inherits(ModalPortal, _Component);\n\n function ModalPortal(props) {\n _classCallCheck(this, ModalPortal);\n\n var _this = _possibleConstructorReturn(this, (ModalPortal.__proto__ || Object.getPrototypeOf(ModalPortal)).call(this, props));\n\n _this.setOverlayRef = function (overlay) {\n _this.overlay = overlay;\n _this.props.overlayRef && _this.props.overlayRef(overlay);\n };\n\n _this.setContentRef = function (content) {\n _this.content = content;\n _this.props.contentRef && _this.props.contentRef(content);\n };\n\n _this.afterClose = function () {\n var _this$props = _this.props,\n appElement = _this$props.appElement,\n ariaHideApp = _this$props.ariaHideApp,\n htmlOpenClassName = _this$props.htmlOpenClassName,\n bodyOpenClassName = _this$props.bodyOpenClassName,\n parentSelector = _this$props.parentSelector;\n\n\n var parentDocument = parentSelector && parentSelector().ownerDocument || document;\n\n // Remove classes.\n bodyOpenClassName && classList.remove(parentDocument.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.remove(parentDocument.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n // Reset aria-hidden attribute if all modals have been removed\n if (ariaHideApp && ariaHiddenInstances > 0) {\n ariaHiddenInstances -= 1;\n\n if (ariaHiddenInstances === 0) {\n ariaAppHider.show(appElement);\n }\n }\n\n if (_this.props.shouldFocusAfterRender) {\n if (_this.props.shouldReturnFocusAfterClose) {\n focusManager.returnFocus(_this.props.preventScroll);\n focusManager.teardownScopedFocus();\n } else {\n focusManager.popWithoutFocus();\n }\n }\n\n if (_this.props.onAfterClose) {\n _this.props.onAfterClose();\n }\n\n _portalOpenInstances2.default.deregister(_this);\n };\n\n _this.open = function () {\n _this.beforeOpen();\n if (_this.state.afterOpen && _this.state.beforeClose) {\n clearTimeout(_this.closeTimer);\n _this.setState({ beforeClose: false });\n } else {\n if (_this.props.shouldFocusAfterRender) {\n focusManager.setupScopedFocus(_this.node);\n focusManager.markForFocusLater();\n }\n\n _this.setState({ isOpen: true }, function () {\n _this.openAnimationFrame = requestAnimationFrame(function () {\n _this.setState({ afterOpen: true });\n\n if (_this.props.isOpen && _this.props.onAfterOpen) {\n _this.props.onAfterOpen({\n overlayEl: _this.overlay,\n contentEl: _this.content\n });\n }\n });\n });\n }\n };\n\n _this.close = function () {\n if (_this.props.closeTimeoutMS > 0) {\n _this.closeWithTimeout();\n } else {\n _this.closeWithoutTimeout();\n }\n };\n\n _this.focusContent = function () {\n return _this.content && !_this.contentHasFocus() && _this.content.focus({ preventScroll: true });\n };\n\n _this.closeWithTimeout = function () {\n var closesAt = Date.now() + _this.props.closeTimeoutMS;\n _this.setState({ beforeClose: true, closesAt: closesAt }, function () {\n _this.closeTimer = setTimeout(_this.closeWithoutTimeout, _this.state.closesAt - Date.now());\n });\n };\n\n _this.closeWithoutTimeout = function () {\n _this.setState({\n beforeClose: false,\n isOpen: false,\n afterOpen: false,\n closesAt: null\n }, _this.afterClose);\n };\n\n _this.handleKeyDown = function (event) {\n if (isTabKey(event)) {\n (0, _scopeTab2.default)(_this.content, event);\n }\n\n if (_this.props.shouldCloseOnEsc && isEscKey(event)) {\n event.stopPropagation();\n _this.requestClose(event);\n }\n };\n\n _this.handleOverlayOnClick = function (event) {\n if (_this.shouldClose === null) {\n _this.shouldClose = true;\n }\n\n if (_this.shouldClose && _this.props.shouldCloseOnOverlayClick) {\n if (_this.ownerHandlesClose()) {\n _this.requestClose(event);\n } else {\n _this.focusContent();\n }\n }\n _this.shouldClose = null;\n };\n\n _this.handleContentOnMouseUp = function () {\n _this.shouldClose = false;\n };\n\n _this.handleOverlayOnMouseDown = function (event) {\n if (!_this.props.shouldCloseOnOverlayClick && event.target == _this.overlay) {\n event.preventDefault();\n }\n };\n\n _this.handleContentOnClick = function () {\n _this.shouldClose = false;\n };\n\n _this.handleContentOnMouseDown = function () {\n _this.shouldClose = false;\n };\n\n _this.requestClose = function (event) {\n return _this.ownerHandlesClose() && _this.props.onRequestClose(event);\n };\n\n _this.ownerHandlesClose = function () {\n return _this.props.onRequestClose;\n };\n\n _this.shouldBeClosed = function () {\n return !_this.state.isOpen && !_this.state.beforeClose;\n };\n\n _this.contentHasFocus = function () {\n return document.activeElement === _this.content || _this.content.contains(document.activeElement);\n };\n\n _this.buildClassName = function (which, additional) {\n var classNames = (typeof additional === \"undefined\" ? \"undefined\" : _typeof(additional)) === \"object\" ? additional : {\n base: CLASS_NAMES[which],\n afterOpen: CLASS_NAMES[which] + \"--after-open\",\n beforeClose: CLASS_NAMES[which] + \"--before-close\"\n };\n var className = classNames.base;\n if (_this.state.afterOpen) {\n className = className + \" \" + classNames.afterOpen;\n }\n if (_this.state.beforeClose) {\n className = className + \" \" + classNames.beforeClose;\n }\n return typeof additional === \"string\" && additional ? className + \" \" + additional : className;\n };\n\n _this.attributesFromObject = function (prefix, items) {\n return Object.keys(items).reduce(function (acc, name) {\n acc[prefix + \"-\" + name] = items[name];\n return acc;\n }, {});\n };\n\n _this.state = {\n afterOpen: false,\n beforeClose: false\n };\n\n _this.shouldClose = null;\n _this.moveFromContentToOverlay = null;\n return _this;\n }\n\n _createClass(ModalPortal, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.isOpen) {\n this.open();\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n if (process.env.NODE_ENV !== \"production\") {\n if (prevProps.bodyOpenClassName !== this.props.bodyOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"bodyOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n if (prevProps.htmlOpenClassName !== this.props.htmlOpenClassName) {\n // eslint-disable-next-line no-console\n console.warn('React-Modal: \"htmlOpenClassName\" prop has been modified. ' + \"This may cause unexpected behavior when multiple modals are open.\");\n }\n }\n\n if (this.props.isOpen && !prevProps.isOpen) {\n this.open();\n } else if (!this.props.isOpen && prevProps.isOpen) {\n this.close();\n }\n\n // Focus only needs to be set once when the modal is being opened\n if (this.props.shouldFocusAfterRender && this.state.isOpen && !prevState.isOpen) {\n this.focusContent();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.state.isOpen) {\n this.afterClose();\n }\n clearTimeout(this.closeTimer);\n cancelAnimationFrame(this.openAnimationFrame);\n }\n }, {\n key: \"beforeOpen\",\n value: function beforeOpen() {\n var _props = this.props,\n appElement = _props.appElement,\n ariaHideApp = _props.ariaHideApp,\n htmlOpenClassName = _props.htmlOpenClassName,\n bodyOpenClassName = _props.bodyOpenClassName,\n parentSelector = _props.parentSelector;\n\n\n var parentDocument = parentSelector && parentSelector().ownerDocument || document;\n\n // Add classes.\n bodyOpenClassName && classList.add(parentDocument.body, bodyOpenClassName);\n\n htmlOpenClassName && classList.add(parentDocument.getElementsByTagName(\"html\")[0], htmlOpenClassName);\n\n if (ariaHideApp) {\n ariaHiddenInstances += 1;\n ariaAppHider.hide(appElement);\n }\n\n _portalOpenInstances2.default.register(this);\n }\n\n // Don't steal focus from inner elements\n\n }, {\n key: \"render\",\n value: function render() {\n var _props2 = this.props,\n id = _props2.id,\n className = _props2.className,\n overlayClassName = _props2.overlayClassName,\n defaultStyles = _props2.defaultStyles,\n children = _props2.children;\n\n var contentStyles = className ? {} : defaultStyles.content;\n var overlayStyles = overlayClassName ? {} : defaultStyles.overlay;\n\n if (this.shouldBeClosed()) {\n return null;\n }\n\n var overlayProps = {\n ref: this.setOverlayRef,\n className: this.buildClassName(\"overlay\", overlayClassName),\n style: _extends({}, overlayStyles, this.props.style.overlay),\n onClick: this.handleOverlayOnClick,\n onMouseDown: this.handleOverlayOnMouseDown\n };\n\n var contentProps = _extends({\n id: id,\n ref: this.setContentRef,\n style: _extends({}, contentStyles, this.props.style.content),\n className: this.buildClassName(\"content\", className),\n tabIndex: \"-1\",\n onKeyDown: this.handleKeyDown,\n onMouseDown: this.handleContentOnMouseDown,\n onMouseUp: this.handleContentOnMouseUp,\n onClick: this.handleContentOnClick,\n role: this.props.role,\n \"aria-label\": this.props.contentLabel\n }, this.attributesFromObject(\"aria\", _extends({ modal: true }, this.props.aria)), this.attributesFromObject(\"data\", this.props.data || {}), {\n \"data-testid\": this.props.testId\n });\n\n var contentElement = this.props.contentElement(contentProps, children);\n return this.props.overlayElement(overlayProps, contentElement);\n }\n }]);\n\n return ModalPortal;\n}(_react.Component);\n\nModalPortal.defaultProps = {\n style: {\n overlay: {},\n content: {}\n },\n defaultStyles: {}\n};\nModalPortal.propTypes = {\n isOpen: _propTypes2.default.bool.isRequired,\n defaultStyles: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n style: _propTypes2.default.shape({\n content: _propTypes2.default.object,\n overlay: _propTypes2.default.object\n }),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n overlayClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n parentSelector: _propTypes2.default.func,\n bodyOpenClassName: _propTypes2.default.string,\n htmlOpenClassName: _propTypes2.default.string,\n ariaHideApp: _propTypes2.default.bool,\n appElement: _propTypes2.default.oneOfType([_propTypes2.default.instanceOf(_safeHTMLElement2.default), _propTypes2.default.instanceOf(_safeHTMLElement.SafeHTMLCollection), _propTypes2.default.instanceOf(_safeHTMLElement.SafeNodeList), _propTypes2.default.arrayOf(_propTypes2.default.instanceOf(_safeHTMLElement2.default))]),\n onAfterOpen: _propTypes2.default.func,\n onAfterClose: _propTypes2.default.func,\n onRequestClose: _propTypes2.default.func,\n closeTimeoutMS: _propTypes2.default.number,\n shouldFocusAfterRender: _propTypes2.default.bool,\n shouldCloseOnOverlayClick: _propTypes2.default.bool,\n shouldReturnFocusAfterClose: _propTypes2.default.bool,\n preventScroll: _propTypes2.default.bool,\n role: _propTypes2.default.string,\n contentLabel: _propTypes2.default.string,\n aria: _propTypes2.default.object,\n data: _propTypes2.default.object,\n children: _propTypes2.default.node,\n shouldCloseOnEsc: _propTypes2.default.bool,\n overlayRef: _propTypes2.default.func,\n contentRef: _propTypes2.default.func,\n id: _propTypes2.default.string,\n overlayElement: _propTypes2.default.func,\n contentElement: _propTypes2.default.func,\n testId: _propTypes2.default.string\n};\nexports.default = ModalPortal;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.assertNodeList = assertNodeList;\nexports.setElement = setElement;\nexports.validateElement = validateElement;\nexports.hide = hide;\nexports.show = show;\nexports.documentNotReadyOrSSRTesting = documentNotReadyOrSSRTesting;\n\nvar _warning = require(\"warning\");\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _safeHTMLElement = require(\"./safeHTMLElement\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar globalElement = null;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n if (globalElement) {\n if (globalElement.removeAttribute) {\n globalElement.removeAttribute(\"aria-hidden\");\n } else if (globalElement.length != null) {\n globalElement.forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n } else {\n document.querySelectorAll(globalElement).forEach(function (element) {\n return element.removeAttribute(\"aria-hidden\");\n });\n }\n }\n globalElement = null;\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var check = globalElement || {};\n console.log(\"ariaAppHider ----------\");\n console.log(check.nodeName, check.className, check.id);\n console.log(\"end ariaAppHider ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction assertNodeList(nodeList, selector) {\n if (!nodeList || !nodeList.length) {\n throw new Error(\"react-modal: No elements were found for selector \" + selector + \".\");\n }\n}\n\nfunction setElement(element) {\n var useElement = element;\n if (typeof useElement === \"string\" && _safeHTMLElement.canUseDOM) {\n var el = document.querySelectorAll(useElement);\n assertNodeList(el, useElement);\n useElement = el;\n }\n globalElement = useElement || globalElement;\n return globalElement;\n}\n\nfunction validateElement(appElement) {\n var el = appElement || globalElement;\n if (el) {\n return Array.isArray(el) || el instanceof HTMLCollection || el instanceof NodeList ? el : [el];\n } else {\n (0, _warning2.default)(false, [\"react-modal: App element is not defined.\", \"Please use `Modal.setAppElement(el)` or set `appElement={el}`.\", \"This is needed so screen readers don't see main content\", \"when modal is opened. It is not recommended, but you can opt-out\", \"by setting `ariaHideApp={false}`.\"].join(\" \"));\n\n return [];\n }\n}\n\nfunction hide(appElement) {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = validateElement(appElement)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var el = _step.value;\n\n el.setAttribute(\"aria-hidden\", \"true\");\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\n\nfunction show(appElement) {\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = validateElement(appElement)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var el = _step2.value;\n\n el.removeAttribute(\"aria-hidden\");\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n}\n\nfunction documentNotReadyOrSSRTesting() {\n globalElement = null;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\n\nvar _portalOpenInstances = require(\"./portalOpenInstances\");\n\nvar _portalOpenInstances2 = _interopRequireDefault(_portalOpenInstances);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Body focus trap see Issue #742\n\nvar before = void 0,\n after = void 0,\n instances = [];\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n var _arr = [before, after];\n\n for (var _i = 0; _i < _arr.length; _i++) {\n var item = _arr[_i];\n if (!item) continue;\n item.parentNode && item.parentNode.removeChild(item);\n }\n before = after = null;\n instances = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n console.log(\"bodyTrap ----------\");\n console.log(instances.length);\n var _arr2 = [before, after];\n for (var _i2 = 0; _i2 < _arr2.length; _i2++) {\n var item = _arr2[_i2];\n var check = item || {};\n console.log(check.nodeName, check.className, check.id);\n }\n console.log(\"edn bodyTrap ----------\");\n}\n/* eslint-enable no-console */\n\nfunction focusContent() {\n if (instances.length === 0) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Open instances > 0 expected\");\n }\n return;\n }\n instances[instances.length - 1].focusContent();\n}\n\nfunction bodyTrap(eventType, openInstances) {\n if (!before && !after) {\n before = document.createElement(\"div\");\n before.setAttribute(\"data-react-modal-body-trap\", \"\");\n before.style.position = \"absolute\";\n before.style.opacity = \"0\";\n before.setAttribute(\"tabindex\", \"0\");\n before.addEventListener(\"focus\", focusContent);\n after = before.cloneNode();\n after.addEventListener(\"focus\", focusContent);\n }\n\n instances = openInstances;\n\n if (instances.length > 0) {\n // Add focus trap\n if (document.body.firstChild !== before) {\n document.body.insertBefore(before, document.body.firstChild);\n }\n if (document.body.lastChild !== after) {\n document.body.appendChild(after);\n }\n } else {\n // Remove focus trap\n if (before.parentElement) {\n before.parentElement.removeChild(before);\n }\n if (after.parentElement) {\n after.parentElement.removeChild(after);\n }\n }\n}\n\n_portalOpenInstances2.default.subscribe(bodyTrap);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nvar htmlClassList = {};\nvar docBodyClassList = {};\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction removeClass(at, cls) {\n at.classList.remove(cls);\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n var htmlElement = document.getElementsByTagName(\"html\")[0];\n for (var cls in htmlClassList) {\n removeClass(htmlElement, htmlClassList[cls]);\n }\n\n var body = document.body;\n for (var _cls in docBodyClassList) {\n removeClass(body, docBodyClassList[_cls]);\n }\n\n htmlClassList = {};\n docBodyClassList = {};\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n var classes = document.getElementsByTagName(\"html\")[0].className;\n var buffer = \"Show tracked classes:\\n\\n\";\n\n buffer += \"<html /> (\" + classes + \"):\\n \";\n for (var x in htmlClassList) {\n buffer += \" \" + x + \" \" + htmlClassList[x] + \"\\n \";\n }\n\n classes = document.body.className;\n\n buffer += \"\\n\\ndoc.body (\" + classes + \"):\\n \";\n for (var _x in docBodyClassList) {\n buffer += \" \" + _x + \" \" + docBodyClassList[_x] + \"\\n \";\n }\n\n buffer += \"\\n\";\n\n console.log(buffer);\n }\n}\n/* eslint-enable no-console */\n\n/**\n * Track the number of reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar incrementReference = function incrementReference(poll, className) {\n if (!poll[className]) {\n poll[className] = 0;\n }\n poll[className] += 1;\n return className;\n};\n\n/**\n * Drop the reference of a class.\n * @param {object} poll The poll to receive the reference.\n * @param {string} className The class name.\n * @return {string}\n */\nvar decrementReference = function decrementReference(poll, className) {\n if (poll[className]) {\n poll[className] -= 1;\n }\n return className;\n};\n\n/**\n * Track a class and add to the given class list.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be tracked.\n */\nvar trackClass = function trackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n incrementReference(poll, className);\n classListRef.add(className);\n });\n};\n\n/**\n * Untrack a class and remove from the given class list if the reference\n * reaches 0.\n * @param {Object} classListRef A class list of an element.\n * @param {Object} poll The poll to be used.\n * @param {Array} classes The list of classes to be untracked.\n */\nvar untrackClass = function untrackClass(classListRef, poll, classes) {\n classes.forEach(function (className) {\n decrementReference(poll, className);\n poll[className] === 0 && classListRef.remove(className);\n });\n};\n\n/**\n * Public inferface to add classes to the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar add = exports.add = function add(element, classString) {\n return trackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};\n\n/**\n * Public inferface to remove classes from the document.body.\n * @param {string} bodyClass The class string to be added.\n * It may contain more then one class\n * with ' ' as separator.\n */\nvar remove = exports.remove = function remove(element, classString) {\n return untrackClass(element.classList, element.nodeName.toLowerCase() == \"html\" ? htmlClassList : docBodyClassList, classString.split(\" \"));\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.resetState = resetState;\nexports.log = log;\nexports.handleBlur = handleBlur;\nexports.handleFocus = handleFocus;\nexports.markForFocusLater = markForFocusLater;\nexports.returnFocus = returnFocus;\nexports.popWithoutFocus = popWithoutFocus;\nexports.setupScopedFocus = setupScopedFocus;\nexports.teardownScopedFocus = teardownScopedFocus;\n\nvar _tabbable = require(\"../helpers/tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar focusLaterElements = [];\nvar modalElement = null;\nvar needToFocus = false;\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction resetState() {\n focusLaterElements = [];\n}\n\n/* istanbul ignore next */\nfunction log() {\n if (process.env.NODE_ENV !== \"production\") {\n console.log(\"focusManager ----------\");\n focusLaterElements.forEach(function (f) {\n var check = f || {};\n console.log(check.nodeName, check.className, check.id);\n });\n console.log(\"end focusManager ----------\");\n }\n}\n/* eslint-enable no-console */\n\nfunction handleBlur() {\n needToFocus = true;\n}\n\nfunction handleFocus() {\n if (needToFocus) {\n needToFocus = false;\n if (!modalElement) {\n return;\n }\n // need to see how jQuery shims document.on('focusin') so we don't need the\n // setTimeout, firefox doesn't support focusin, if it did, we could focus\n // the element outside of a setTimeout. Side-effect of this implementation\n // is that the document.body gets focus, and then we focus our element right\n // after, seems fine.\n setTimeout(function () {\n if (modalElement.contains(document.activeElement)) {\n return;\n }\n var el = (0, _tabbable2.default)(modalElement)[0] || modalElement;\n el.focus();\n }, 0);\n }\n}\n\nfunction markForFocusLater() {\n focusLaterElements.push(document.activeElement);\n}\n\n/* eslint-disable no-console */\nfunction returnFocus() {\n var preventScroll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var toFocus = null;\n try {\n if (focusLaterElements.length !== 0) {\n toFocus = focusLaterElements.pop();\n toFocus.focus({ preventScroll: preventScroll });\n }\n return;\n } catch (e) {\n console.warn([\"You tried to return focus to\", toFocus, \"but it is not in the DOM anymore\"].join(\" \"));\n }\n}\n/* eslint-enable no-console */\n\nfunction popWithoutFocus() {\n focusLaterElements.length > 0 && focusLaterElements.pop();\n}\n\nfunction setupScopedFocus(element) {\n modalElement = element;\n\n if (window.addEventListener) {\n window.addEventListener(\"blur\", handleBlur, false);\n document.addEventListener(\"focus\", handleFocus, true);\n } else {\n window.attachEvent(\"onBlur\", handleBlur);\n document.attachEvent(\"onFocus\", handleFocus);\n }\n}\n\nfunction teardownScopedFocus() {\n modalElement = null;\n\n if (window.addEventListener) {\n window.removeEventListener(\"blur\", handleBlur);\n document.removeEventListener(\"focus\", handleFocus);\n } else {\n window.detachEvent(\"onBlur\", handleBlur);\n document.detachEvent(\"onFocus\", handleFocus);\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.log = log;\nexports.resetState = resetState;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// Tracks portals that are open and emits events to subscribers\n\nvar PortalOpenInstances = function PortalOpenInstances() {\n var _this = this;\n\n _classCallCheck(this, PortalOpenInstances);\n\n this.register = function (openInstance) {\n if (_this.openInstances.indexOf(openInstance) !== -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Cannot register modal instance that's already open\");\n }\n return;\n }\n _this.openInstances.push(openInstance);\n _this.emit(\"register\");\n };\n\n this.deregister = function (openInstance) {\n var index = _this.openInstances.indexOf(openInstance);\n if (index === -1) {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\"React-Modal: Unable to deregister \" + openInstance + \" as \" + \"it was never registered\");\n }\n return;\n }\n _this.openInstances.splice(index, 1);\n _this.emit(\"deregister\");\n };\n\n this.subscribe = function (callback) {\n _this.subscribers.push(callback);\n };\n\n this.emit = function (eventType) {\n _this.subscribers.forEach(function (subscriber) {\n return subscriber(eventType,\n // shallow copy to avoid accidental mutation\n _this.openInstances.slice());\n });\n };\n\n this.openInstances = [];\n this.subscribers = [];\n};\n\nvar portalOpenInstances = new PortalOpenInstances();\n\n/* eslint-disable no-console */\n/* istanbul ignore next */\nfunction log() {\n console.log(\"portalOpenInstances ----------\");\n console.log(portalOpenInstances.openInstances.length);\n portalOpenInstances.openInstances.forEach(function (p) {\n return console.log(p);\n });\n console.log(\"end portalOpenInstances ----------\");\n}\n\n/* istanbul ignore next */\nfunction resetState() {\n portalOpenInstances = new PortalOpenInstances();\n}\n/* eslint-enable no-console */\n\nexports.default = portalOpenInstances;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.canUseDOM = exports.SafeNodeList = exports.SafeHTMLCollection = undefined;\n\nvar _exenv = require(\"exenv\");\n\nvar _exenv2 = _interopRequireDefault(_exenv);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar EE = _exenv2.default;\n\nvar SafeHTMLElement = EE.canUseDOM ? window.HTMLElement : {};\n\nvar SafeHTMLCollection = exports.SafeHTMLCollection = EE.canUseDOM ? window.HTMLCollection : {};\n\nvar SafeNodeList = exports.SafeNodeList = EE.canUseDOM ? window.NodeList : {};\n\nvar canUseDOM = exports.canUseDOM = EE.canUseDOM;\n\nexports.default = SafeHTMLElement;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = scopeTab;\n\nvar _tabbable = require(\"./tabbable\");\n\nvar _tabbable2 = _interopRequireDefault(_tabbable);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getActiveElement() {\n var el = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;\n\n return el.activeElement.shadowRoot ? getActiveElement(el.activeElement.shadowRoot) : el.activeElement;\n}\n\nfunction scopeTab(node, event) {\n var tabbable = (0, _tabbable2.default)(node);\n\n if (!tabbable.length) {\n // Do nothing, since there are no elements that can receive focus.\n event.preventDefault();\n return;\n }\n\n var target = void 0;\n\n var shiftKey = event.shiftKey;\n var head = tabbable[0];\n var tail = tabbable[tabbable.length - 1];\n var activeElement = getActiveElement();\n\n // proceed with default browser behavior on tab.\n // Focus on last element on shift + tab.\n if (node === activeElement) {\n if (!shiftKey) return;\n target = tail;\n }\n\n if (tail === activeElement && !shiftKey) {\n target = head;\n }\n\n if (head === activeElement && shiftKey) {\n target = tail;\n }\n\n if (target) {\n event.preventDefault();\n target.focus();\n return;\n }\n\n // Safari radio issue.\n //\n // Safari does not move the focus to the radio button,\n // so we need to force it to really walk through all elements.\n //\n // This is very error prone, since we are trying to guess\n // if it is a safari browser from the first occurence between\n // chrome or safari.\n //\n // The chrome user agent contains the first ocurrence\n // as the 'chrome/version' and later the 'safari/version'.\n var checkSafari = /(\\bChrome\\b|\\bSafari\\b)\\//.exec(navigator.userAgent);\n var isSafariDesktop = checkSafari != null && checkSafari[1] != \"Chrome\" && /\\biPod\\b|\\biPad\\b/g.exec(navigator.userAgent) == null;\n\n // If we are not in safari desktop, let the browser control\n // the focus\n if (!isSafariDesktop) return;\n\n var x = tabbable.indexOf(activeElement);\n\n if (x > -1) {\n x += shiftKey ? -1 : 1;\n }\n\n target = tabbable[x];\n\n // If the tabbable element does not exist,\n // focus head/tail based on shiftKey\n if (typeof target === \"undefined\") {\n event.preventDefault();\n target = shiftKey ? tail : head;\n target.focus();\n return;\n }\n\n event.preventDefault();\n\n target.focus();\n}\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = findTabbableDescendants;\n/*!\n * Adapted from jQuery UI core\n *\n * http://jqueryui.com\n *\n * Copyright 2014 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/ui-core/\n */\n\nvar DISPLAY_NONE = \"none\";\nvar DISPLAY_CONTENTS = \"contents\";\n\nvar tabbableNode = /input|select|textarea|button|object|iframe/;\n\nfunction isNotOverflowing(element, style) {\n return style.getPropertyValue(\"overflow\") !== \"visible\" ||\n // if 'overflow: visible' set, check if there is actually any overflow\n element.scrollWidth <= 0 && element.scrollHeight <= 0;\n}\n\nfunction hidesContents(element) {\n var zeroSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n\n // If the node is empty, this is good enough\n if (zeroSize && !element.innerHTML) return true;\n\n try {\n // Otherwise we need to check some styles\n var style = window.getComputedStyle(element);\n var displayValue = style.getPropertyValue(\"display\");\n return zeroSize ? displayValue !== DISPLAY_CONTENTS && isNotOverflowing(element, style) : displayValue === DISPLAY_NONE;\n } catch (exception) {\n // eslint-disable-next-line no-console\n console.warn(\"Failed to inspect element style\");\n return false;\n }\n}\n\nfunction visible(element) {\n var parentElement = element;\n var rootNode = element.getRootNode && element.getRootNode();\n while (parentElement) {\n if (parentElement === document.body) break;\n\n // if we are not hidden yet, skip to checking outside the Web Component\n if (rootNode && parentElement === rootNode) parentElement = rootNode.host.parentNode;\n\n if (hidesContents(parentElement)) return false;\n parentElement = parentElement.parentNode;\n }\n return true;\n}\n\nfunction focusable(element, isTabIndexNotNaN) {\n var nodeName = element.nodeName.toLowerCase();\n var res = tabbableNode.test(nodeName) && !element.disabled || (nodeName === \"a\" ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);\n return res && visible(element);\n}\n\nfunction tabbable(element) {\n var tabIndex = element.getAttribute(\"tabindex\");\n if (tabIndex === null) tabIndex = undefined;\n var isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && focusable(element, !isTabIndexNaN);\n}\n\nfunction findTabbableDescendants(element) {\n var descendants = [].slice.call(element.querySelectorAll(\"*\"), 0).reduce(function (finished, el) {\n return finished.concat(!el.shadowRoot ? [el] : findTabbableDescendants(el.shadowRoot));\n }, []);\n return descendants.filter(tabbable);\n}\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _Modal = require(\"./components/Modal\");\n\nvar _Modal2 = _interopRequireDefault(_Modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _Modal2.default;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PrevArrow = exports.NextArrow = void 0;\nvar _react = _interopRequireDefault(require(\"react\"));\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nvar PrevArrow = exports.PrevArrow = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(PrevArrow, _React$PureComponent);\n var _super = _createSuper(PrevArrow);\n function PrevArrow() {\n _classCallCheck(this, PrevArrow);\n return _super.apply(this, arguments);\n }\n _createClass(PrevArrow, [{\n key: \"clickHandler\",\n value: function clickHandler(options, e) {\n if (e) {\n e.preventDefault();\n }\n this.props.clickHandler(options, e);\n }\n }, {\n key: \"render\",\n value: function render() {\n var prevClasses = {\n \"slick-arrow\": true,\n \"slick-prev\": true\n };\n var prevHandler = this.clickHandler.bind(this, {\n message: \"previous\"\n });\n if (!this.props.infinite && (this.props.currentSlide === 0 || this.props.slideCount <= this.props.slidesToShow)) {\n prevClasses[\"slick-disabled\"] = true;\n prevHandler = null;\n }\n var prevArrowProps = {\n key: \"0\",\n \"data-role\": \"none\",\n className: (0, _classnames[\"default\"])(prevClasses),\n style: {\n display: \"block\"\n },\n onClick: prevHandler\n };\n var customProps = {\n currentSlide: this.props.currentSlide,\n slideCount: this.props.slideCount\n };\n var prevArrow;\n if (this.props.prevArrow) {\n prevArrow = /*#__PURE__*/_react[\"default\"].cloneElement(this.props.prevArrow, _objectSpread(_objectSpread({}, prevArrowProps), customProps));\n } else {\n prevArrow = /*#__PURE__*/_react[\"default\"].createElement(\"button\", _extends({\n key: \"0\",\n type: \"button\"\n }, prevArrowProps), \" \", \"Previous\");\n }\n return prevArrow;\n }\n }]);\n return PrevArrow;\n}(_react[\"default\"].PureComponent);\nvar NextArrow = exports.NextArrow = /*#__PURE__*/function (_React$PureComponent2) {\n _inherits(NextArrow, _React$PureComponent2);\n var _super2 = _createSuper(NextArrow);\n function NextArrow() {\n _classCallCheck(this, NextArrow);\n return _super2.apply(this, arguments);\n }\n _createClass(NextArrow, [{\n key: \"clickHandler\",\n value: function clickHandler(options, e) {\n if (e) {\n e.preventDefault();\n }\n this.props.clickHandler(options, e);\n }\n }, {\n key: \"render\",\n value: function render() {\n var nextClasses = {\n \"slick-arrow\": true,\n \"slick-next\": true\n };\n var nextHandler = this.clickHandler.bind(this, {\n message: \"next\"\n });\n if (!(0, _innerSliderUtils.canGoNext)(this.props)) {\n nextClasses[\"slick-disabled\"] = true;\n nextHandler = null;\n }\n var nextArrowProps = {\n key: \"1\",\n \"data-role\": \"none\",\n className: (0, _classnames[\"default\"])(nextClasses),\n style: {\n display: \"block\"\n },\n onClick: nextHandler\n };\n var customProps = {\n currentSlide: this.props.currentSlide,\n slideCount: this.props.slideCount\n };\n var nextArrow;\n if (this.props.nextArrow) {\n nextArrow = /*#__PURE__*/_react[\"default\"].cloneElement(this.props.nextArrow, _objectSpread(_objectSpread({}, nextArrowProps), customProps));\n } else {\n nextArrow = /*#__PURE__*/_react[\"default\"].createElement(\"button\", _extends({\n key: \"1\",\n type: \"button\"\n }, nextArrowProps), \" \", \"Next\");\n }\n return nextArrow;\n }\n }]);\n return NextArrow;\n}(_react[\"default\"].PureComponent);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\nvar _react = _interopRequireDefault(require(\"react\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\nvar defaultProps = {\n accessibility: true,\n adaptiveHeight: false,\n afterChange: null,\n appendDots: function appendDots(dots) {\n return /*#__PURE__*/_react[\"default\"].createElement(\"ul\", {\n style: {\n display: \"block\"\n }\n }, dots);\n },\n arrows: true,\n autoplay: false,\n autoplaySpeed: 3000,\n beforeChange: null,\n centerMode: false,\n centerPadding: \"50px\",\n className: \"\",\n cssEase: \"ease\",\n customPaging: function customPaging(i) {\n return /*#__PURE__*/_react[\"default\"].createElement(\"button\", null, i + 1);\n },\n dots: false,\n dotsClass: \"slick-dots\",\n draggable: true,\n easing: \"linear\",\n edgeFriction: 0.35,\n fade: false,\n focusOnSelect: false,\n infinite: true,\n initialSlide: 0,\n lazyLoad: null,\n nextArrow: null,\n onEdge: null,\n onInit: null,\n onLazyLoadError: null,\n onReInit: null,\n pauseOnDotsHover: false,\n pauseOnFocus: false,\n pauseOnHover: true,\n prevArrow: null,\n responsive: null,\n rows: 1,\n rtl: false,\n slide: \"div\",\n slidesPerRow: 1,\n slidesToScroll: 1,\n slidesToShow: 1,\n speed: 500,\n swipe: true,\n swipeEvent: null,\n swipeToSlide: false,\n touchMove: true,\n touchThreshold: 5,\n useCSS: true,\n useTransform: true,\n variableWidth: false,\n vertical: false,\n waitForAnimate: true,\n asNavFor: null\n};\nvar _default = exports[\"default\"] = defaultProps;","\"use strict\";\n\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Dots = void 0;\nvar _react = _interopRequireDefault(require(\"react\"));\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nvar getDotCount = function getDotCount(spec) {\n var dots;\n if (spec.infinite) {\n dots = Math.ceil(spec.slideCount / spec.slidesToScroll);\n } else {\n dots = Math.ceil((spec.slideCount - spec.slidesToShow) / spec.slidesToScroll) + 1;\n }\n return dots;\n};\nvar Dots = exports.Dots = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(Dots, _React$PureComponent);\n var _super = _createSuper(Dots);\n function Dots() {\n _classCallCheck(this, Dots);\n return _super.apply(this, arguments);\n }\n _createClass(Dots, [{\n key: \"clickHandler\",\n value: function clickHandler(options, e) {\n // In Autoplay the focus stays on clicked button even after transition\n // to next slide. That only goes away by click somewhere outside\n e.preventDefault();\n this.props.clickHandler(options);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n onMouseEnter = _this$props.onMouseEnter,\n onMouseOver = _this$props.onMouseOver,\n onMouseLeave = _this$props.onMouseLeave,\n infinite = _this$props.infinite,\n slidesToScroll = _this$props.slidesToScroll,\n slidesToShow = _this$props.slidesToShow,\n slideCount = _this$props.slideCount,\n currentSlide = _this$props.currentSlide;\n var dotCount = getDotCount({\n slideCount: slideCount,\n slidesToScroll: slidesToScroll,\n slidesToShow: slidesToShow,\n infinite: infinite\n });\n var mouseEvents = {\n onMouseEnter: onMouseEnter,\n onMouseOver: onMouseOver,\n onMouseLeave: onMouseLeave\n };\n var dots = [];\n for (var i = 0; i < dotCount; i++) {\n var _rightBound = (i + 1) * slidesToScroll - 1;\n var rightBound = infinite ? _rightBound : (0, _innerSliderUtils.clamp)(_rightBound, 0, slideCount - 1);\n var _leftBound = rightBound - (slidesToScroll - 1);\n var leftBound = infinite ? _leftBound : (0, _innerSliderUtils.clamp)(_leftBound, 0, slideCount - 1);\n var className = (0, _classnames[\"default\"])({\n \"slick-active\": infinite ? currentSlide >= leftBound && currentSlide <= rightBound : currentSlide === leftBound\n });\n var dotOptions = {\n message: \"dots\",\n index: i,\n slidesToScroll: slidesToScroll,\n currentSlide: currentSlide\n };\n var onClick = this.clickHandler.bind(this, dotOptions);\n dots = dots.concat( /*#__PURE__*/_react[\"default\"].createElement(\"li\", {\n key: i,\n className: className\n }, /*#__PURE__*/_react[\"default\"].cloneElement(this.props.customPaging(i), {\n onClick: onClick\n })));\n }\n return /*#__PURE__*/_react[\"default\"].cloneElement(this.props.appendDots(dots), _objectSpread({\n className: this.props.dotsClass\n }, mouseEvents));\n }\n }]);\n return Dots;\n}(_react[\"default\"].PureComponent);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\nvar _slider = _interopRequireDefault(require(\"./slider\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\nvar _default = exports[\"default\"] = _slider[\"default\"];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\nvar initialState = {\n animating: false,\n autoplaying: null,\n currentDirection: 0,\n currentLeft: null,\n currentSlide: 0,\n direction: 1,\n dragging: false,\n edgeDragged: false,\n initialized: false,\n lazyLoadedList: [],\n listHeight: null,\n listWidth: null,\n scrolling: false,\n slideCount: null,\n slideHeight: null,\n slideWidth: null,\n swipeLeft: null,\n swiped: false,\n // used by swipeEvent. differentites between touch and swipe.\n swiping: false,\n touchObject: {\n startX: 0,\n startY: 0,\n curX: 0,\n curY: 0\n },\n trackStyle: {},\n trackWidth: 0,\n targetSlide: 0\n};\nvar _default = exports[\"default\"] = initialState;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.InnerSlider = void 0;\nvar _react = _interopRequireDefault(require(\"react\"));\nvar _initialState = _interopRequireDefault(require(\"./initial-state\"));\nvar _lodash = _interopRequireDefault(require(\"lodash.debounce\"));\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\nvar _track = require(\"./track\");\nvar _dots = require(\"./dots\");\nvar _arrows = require(\"./arrows\");\nvar _resizeObserverPolyfill = _interopRequireDefault(require(\"resize-observer-polyfill\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nvar InnerSlider = exports.InnerSlider = /*#__PURE__*/function (_React$Component) {\n _inherits(InnerSlider, _React$Component);\n var _super = _createSuper(InnerSlider);\n function InnerSlider(props) {\n var _this;\n _classCallCheck(this, InnerSlider);\n _this = _super.call(this, props);\n _defineProperty(_assertThisInitialized(_this), \"listRefHandler\", function (ref) {\n return _this.list = ref;\n });\n _defineProperty(_assertThisInitialized(_this), \"trackRefHandler\", function (ref) {\n return _this.track = ref;\n });\n _defineProperty(_assertThisInitialized(_this), \"adaptHeight\", function () {\n if (_this.props.adaptiveHeight && _this.list) {\n var elem = _this.list.querySelector(\"[data-index=\\\"\".concat(_this.state.currentSlide, \"\\\"]\"));\n _this.list.style.height = (0, _innerSliderUtils.getHeight)(elem) + \"px\";\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"componentDidMount\", function () {\n _this.props.onInit && _this.props.onInit();\n if (_this.props.lazyLoad) {\n var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)(_objectSpread(_objectSpread({}, _this.props), _this.state));\n if (slidesToLoad.length > 0) {\n _this.setState(function (prevState) {\n return {\n lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)\n };\n });\n if (_this.props.onLazyLoad) {\n _this.props.onLazyLoad(slidesToLoad);\n }\n }\n }\n var spec = _objectSpread({\n listRef: _this.list,\n trackRef: _this.track\n }, _this.props);\n _this.updateState(spec, true, function () {\n _this.adaptHeight();\n _this.props.autoplay && _this.autoPlay(\"update\");\n });\n if (_this.props.lazyLoad === \"progressive\") {\n _this.lazyLoadTimer = setInterval(_this.progressiveLazyLoad, 1000);\n }\n _this.ro = new _resizeObserverPolyfill[\"default\"](function () {\n if (_this.state.animating) {\n _this.onWindowResized(false); // don't set trackStyle hence don't break animation\n _this.callbackTimers.push(setTimeout(function () {\n return _this.onWindowResized();\n }, _this.props.speed));\n } else {\n _this.onWindowResized();\n }\n });\n _this.ro.observe(_this.list);\n document.querySelectorAll && Array.prototype.forEach.call(document.querySelectorAll(\".slick-slide\"), function (slide) {\n slide.onfocus = _this.props.pauseOnFocus ? _this.onSlideFocus : null;\n slide.onblur = _this.props.pauseOnFocus ? _this.onSlideBlur : null;\n });\n if (window.addEventListener) {\n window.addEventListener(\"resize\", _this.onWindowResized);\n } else {\n window.attachEvent(\"onresize\", _this.onWindowResized);\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"componentWillUnmount\", function () {\n if (_this.animationEndCallback) {\n clearTimeout(_this.animationEndCallback);\n }\n if (_this.lazyLoadTimer) {\n clearInterval(_this.lazyLoadTimer);\n }\n if (_this.callbackTimers.length) {\n _this.callbackTimers.forEach(function (timer) {\n return clearTimeout(timer);\n });\n _this.callbackTimers = [];\n }\n if (window.addEventListener) {\n window.removeEventListener(\"resize\", _this.onWindowResized);\n } else {\n window.detachEvent(\"onresize\", _this.onWindowResized);\n }\n if (_this.autoplayTimer) {\n clearInterval(_this.autoplayTimer);\n }\n _this.ro.disconnect();\n });\n _defineProperty(_assertThisInitialized(_this), \"componentDidUpdate\", function (prevProps) {\n _this.checkImagesLoad();\n _this.props.onReInit && _this.props.onReInit();\n if (_this.props.lazyLoad) {\n var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)(_objectSpread(_objectSpread({}, _this.props), _this.state));\n if (slidesToLoad.length > 0) {\n _this.setState(function (prevState) {\n return {\n lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)\n };\n });\n if (_this.props.onLazyLoad) {\n _this.props.onLazyLoad(slidesToLoad);\n }\n }\n }\n // if (this.props.onLazyLoad) {\n // this.props.onLazyLoad([leftMostSlide])\n // }\n _this.adaptHeight();\n var spec = _objectSpread(_objectSpread({\n listRef: _this.list,\n trackRef: _this.track\n }, _this.props), _this.state);\n var setTrackStyle = _this.didPropsChange(prevProps);\n setTrackStyle && _this.updateState(spec, setTrackStyle, function () {\n if (_this.state.currentSlide >= _react[\"default\"].Children.count(_this.props.children)) {\n _this.changeSlide({\n message: \"index\",\n index: _react[\"default\"].Children.count(_this.props.children) - _this.props.slidesToShow,\n currentSlide: _this.state.currentSlide\n });\n }\n if (_this.props.autoplay) {\n _this.autoPlay(\"update\");\n } else {\n _this.pause(\"paused\");\n }\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"onWindowResized\", function (setTrackStyle) {\n if (_this.debouncedResize) _this.debouncedResize.cancel();\n _this.debouncedResize = (0, _lodash[\"default\"])(function () {\n return _this.resizeWindow(setTrackStyle);\n }, 50);\n _this.debouncedResize();\n });\n _defineProperty(_assertThisInitialized(_this), \"resizeWindow\", function () {\n var setTrackStyle = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n var isTrackMounted = Boolean(_this.track && _this.track.node);\n // prevent warning: setting state on unmounted component (server side rendering)\n if (!isTrackMounted) return;\n var spec = _objectSpread(_objectSpread({\n listRef: _this.list,\n trackRef: _this.track\n }, _this.props), _this.state);\n _this.updateState(spec, setTrackStyle, function () {\n if (_this.props.autoplay) _this.autoPlay(\"update\");else _this.pause(\"paused\");\n });\n // animating state should be cleared while resizing, otherwise autoplay stops working\n _this.setState({\n animating: false\n });\n clearTimeout(_this.animationEndCallback);\n delete _this.animationEndCallback;\n });\n _defineProperty(_assertThisInitialized(_this), \"updateState\", function (spec, setTrackStyle, callback) {\n var updatedState = (0, _innerSliderUtils.initializedState)(spec);\n spec = _objectSpread(_objectSpread(_objectSpread({}, spec), updatedState), {}, {\n slideIndex: updatedState.currentSlide\n });\n var targetLeft = (0, _innerSliderUtils.getTrackLeft)(spec);\n spec = _objectSpread(_objectSpread({}, spec), {}, {\n left: targetLeft\n });\n var trackStyle = (0, _innerSliderUtils.getTrackCSS)(spec);\n if (setTrackStyle || _react[\"default\"].Children.count(_this.props.children) !== _react[\"default\"].Children.count(spec.children)) {\n updatedState[\"trackStyle\"] = trackStyle;\n }\n _this.setState(updatedState, callback);\n });\n _defineProperty(_assertThisInitialized(_this), \"ssrInit\", function () {\n if (_this.props.variableWidth) {\n var _trackWidth = 0,\n _trackLeft = 0;\n var childrenWidths = [];\n var preClones = (0, _innerSliderUtils.getPreClones)(_objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n slideCount: _this.props.children.length\n }));\n var postClones = (0, _innerSliderUtils.getPostClones)(_objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n slideCount: _this.props.children.length\n }));\n _this.props.children.forEach(function (child) {\n childrenWidths.push(child.props.style.width);\n _trackWidth += child.props.style.width;\n });\n for (var i = 0; i < preClones; i++) {\n _trackLeft += childrenWidths[childrenWidths.length - 1 - i];\n _trackWidth += childrenWidths[childrenWidths.length - 1 - i];\n }\n for (var _i = 0; _i < postClones; _i++) {\n _trackWidth += childrenWidths[_i];\n }\n for (var _i2 = 0; _i2 < _this.state.currentSlide; _i2++) {\n _trackLeft += childrenWidths[_i2];\n }\n var _trackStyle = {\n width: _trackWidth + \"px\",\n left: -_trackLeft + \"px\"\n };\n if (_this.props.centerMode) {\n var currentWidth = \"\".concat(childrenWidths[_this.state.currentSlide], \"px\");\n _trackStyle.left = \"calc(\".concat(_trackStyle.left, \" + (100% - \").concat(currentWidth, \") / 2 ) \");\n }\n return {\n trackStyle: _trackStyle\n };\n }\n var childrenCount = _react[\"default\"].Children.count(_this.props.children);\n var spec = _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n slideCount: childrenCount\n });\n var slideCount = (0, _innerSliderUtils.getPreClones)(spec) + (0, _innerSliderUtils.getPostClones)(spec) + childrenCount;\n var trackWidth = 100 / _this.props.slidesToShow * slideCount;\n var slideWidth = 100 / slideCount;\n var trackLeft = -slideWidth * ((0, _innerSliderUtils.getPreClones)(spec) + _this.state.currentSlide) * trackWidth / 100;\n if (_this.props.centerMode) {\n trackLeft += (100 - slideWidth * trackWidth / 100) / 2;\n }\n var trackStyle = {\n width: trackWidth + \"%\",\n left: trackLeft + \"%\"\n };\n return {\n slideWidth: slideWidth + \"%\",\n trackStyle: trackStyle\n };\n });\n _defineProperty(_assertThisInitialized(_this), \"checkImagesLoad\", function () {\n var images = _this.list && _this.list.querySelectorAll && _this.list.querySelectorAll(\".slick-slide img\") || [];\n var imagesCount = images.length,\n loadedCount = 0;\n Array.prototype.forEach.call(images, function (image) {\n var handler = function handler() {\n return ++loadedCount && loadedCount >= imagesCount && _this.onWindowResized();\n };\n if (!image.onclick) {\n image.onclick = function () {\n return image.parentNode.focus();\n };\n } else {\n var prevClickHandler = image.onclick;\n image.onclick = function (e) {\n prevClickHandler(e);\n image.parentNode.focus();\n };\n }\n if (!image.onload) {\n if (_this.props.lazyLoad) {\n image.onload = function () {\n _this.adaptHeight();\n _this.callbackTimers.push(setTimeout(_this.onWindowResized, _this.props.speed));\n };\n } else {\n image.onload = handler;\n image.onerror = function () {\n handler();\n _this.props.onLazyLoadError && _this.props.onLazyLoadError();\n };\n }\n }\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"progressiveLazyLoad\", function () {\n var slidesToLoad = [];\n var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n for (var index = _this.state.currentSlide; index < _this.state.slideCount + (0, _innerSliderUtils.getPostClones)(spec); index++) {\n if (_this.state.lazyLoadedList.indexOf(index) < 0) {\n slidesToLoad.push(index);\n break;\n }\n }\n for (var _index = _this.state.currentSlide - 1; _index >= -(0, _innerSliderUtils.getPreClones)(spec); _index--) {\n if (_this.state.lazyLoadedList.indexOf(_index) < 0) {\n slidesToLoad.push(_index);\n break;\n }\n }\n if (slidesToLoad.length > 0) {\n _this.setState(function (state) {\n return {\n lazyLoadedList: state.lazyLoadedList.concat(slidesToLoad)\n };\n });\n if (_this.props.onLazyLoad) {\n _this.props.onLazyLoad(slidesToLoad);\n }\n } else {\n if (_this.lazyLoadTimer) {\n clearInterval(_this.lazyLoadTimer);\n delete _this.lazyLoadTimer;\n }\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"slideHandler\", function (index) {\n var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var _this$props = _this.props,\n asNavFor = _this$props.asNavFor,\n beforeChange = _this$props.beforeChange,\n onLazyLoad = _this$props.onLazyLoad,\n speed = _this$props.speed,\n afterChange = _this$props.afterChange; // capture currentslide before state is updated\n var currentSlide = _this.state.currentSlide;\n var _slideHandler = (0, _innerSliderUtils.slideHandler)(_objectSpread(_objectSpread(_objectSpread({\n index: index\n }, _this.props), _this.state), {}, {\n trackRef: _this.track,\n useCSS: _this.props.useCSS && !dontAnimate\n })),\n state = _slideHandler.state,\n nextState = _slideHandler.nextState;\n if (!state) return;\n beforeChange && beforeChange(currentSlide, state.currentSlide);\n var slidesToLoad = state.lazyLoadedList.filter(function (value) {\n return _this.state.lazyLoadedList.indexOf(value) < 0;\n });\n onLazyLoad && slidesToLoad.length > 0 && onLazyLoad(slidesToLoad);\n if (!_this.props.waitForAnimate && _this.animationEndCallback) {\n clearTimeout(_this.animationEndCallback);\n afterChange && afterChange(currentSlide);\n delete _this.animationEndCallback;\n }\n _this.setState(state, function () {\n // asNavForIndex check is to avoid recursive calls of slideHandler in waitForAnimate=false mode\n if (asNavFor && _this.asNavForIndex !== index) {\n _this.asNavForIndex = index;\n asNavFor.innerSlider.slideHandler(index);\n }\n if (!nextState) return;\n _this.animationEndCallback = setTimeout(function () {\n var animating = nextState.animating,\n firstBatch = _objectWithoutProperties(nextState, [\"animating\"]);\n _this.setState(firstBatch, function () {\n _this.callbackTimers.push(setTimeout(function () {\n return _this.setState({\n animating: animating\n });\n }, 10));\n afterChange && afterChange(state.currentSlide);\n delete _this.animationEndCallback;\n });\n }, speed);\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"changeSlide\", function (options) {\n var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n var targetSlide = (0, _innerSliderUtils.changeSlide)(spec, options);\n if (targetSlide !== 0 && !targetSlide) return;\n if (dontAnimate === true) {\n _this.slideHandler(targetSlide, dontAnimate);\n } else {\n _this.slideHandler(targetSlide);\n }\n _this.props.autoplay && _this.autoPlay(\"update\");\n if (_this.props.focusOnSelect) {\n var nodes = _this.list.querySelectorAll(\".slick-current\");\n nodes[0] && nodes[0].focus();\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"clickHandler\", function (e) {\n if (_this.clickable === false) {\n e.stopPropagation();\n e.preventDefault();\n }\n _this.clickable = true;\n });\n _defineProperty(_assertThisInitialized(_this), \"keyHandler\", function (e) {\n var dir = (0, _innerSliderUtils.keyHandler)(e, _this.props.accessibility, _this.props.rtl);\n dir !== \"\" && _this.changeSlide({\n message: dir\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"selectHandler\", function (options) {\n _this.changeSlide(options);\n });\n _defineProperty(_assertThisInitialized(_this), \"disableBodyScroll\", function () {\n var preventDefault = function preventDefault(e) {\n e = e || window.event;\n if (e.preventDefault) e.preventDefault();\n e.returnValue = false;\n };\n window.ontouchmove = preventDefault;\n });\n _defineProperty(_assertThisInitialized(_this), \"enableBodyScroll\", function () {\n window.ontouchmove = null;\n });\n _defineProperty(_assertThisInitialized(_this), \"swipeStart\", function (e) {\n if (_this.props.verticalSwiping) {\n _this.disableBodyScroll();\n }\n var state = (0, _innerSliderUtils.swipeStart)(e, _this.props.swipe, _this.props.draggable);\n state !== \"\" && _this.setState(state);\n });\n _defineProperty(_assertThisInitialized(_this), \"swipeMove\", function (e) {\n var state = (0, _innerSliderUtils.swipeMove)(e, _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n trackRef: _this.track,\n listRef: _this.list,\n slideIndex: _this.state.currentSlide\n }));\n if (!state) return;\n if (state[\"swiping\"]) {\n _this.clickable = false;\n }\n _this.setState(state);\n });\n _defineProperty(_assertThisInitialized(_this), \"swipeEnd\", function (e) {\n var state = (0, _innerSliderUtils.swipeEnd)(e, _objectSpread(_objectSpread(_objectSpread({}, _this.props), _this.state), {}, {\n trackRef: _this.track,\n listRef: _this.list,\n slideIndex: _this.state.currentSlide\n }));\n if (!state) return;\n var triggerSlideHandler = state[\"triggerSlideHandler\"];\n delete state[\"triggerSlideHandler\"];\n _this.setState(state);\n if (triggerSlideHandler === undefined) return;\n _this.slideHandler(triggerSlideHandler);\n if (_this.props.verticalSwiping) {\n _this.enableBodyScroll();\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"touchEnd\", function (e) {\n _this.swipeEnd(e);\n _this.clickable = true;\n });\n _defineProperty(_assertThisInitialized(_this), \"slickPrev\", function () {\n // this and fellow methods are wrapped in setTimeout\n // to make sure initialize setState has happened before\n // any of such methods are called\n _this.callbackTimers.push(setTimeout(function () {\n return _this.changeSlide({\n message: \"previous\"\n });\n }, 0));\n });\n _defineProperty(_assertThisInitialized(_this), \"slickNext\", function () {\n _this.callbackTimers.push(setTimeout(function () {\n return _this.changeSlide({\n message: \"next\"\n });\n }, 0));\n });\n _defineProperty(_assertThisInitialized(_this), \"slickGoTo\", function (slide) {\n var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n slide = Number(slide);\n if (isNaN(slide)) return \"\";\n _this.callbackTimers.push(setTimeout(function () {\n return _this.changeSlide({\n message: \"index\",\n index: slide,\n currentSlide: _this.state.currentSlide\n }, dontAnimate);\n }, 0));\n });\n _defineProperty(_assertThisInitialized(_this), \"play\", function () {\n var nextIndex;\n if (_this.props.rtl) {\n nextIndex = _this.state.currentSlide - _this.props.slidesToScroll;\n } else {\n if ((0, _innerSliderUtils.canGoNext)(_objectSpread(_objectSpread({}, _this.props), _this.state))) {\n nextIndex = _this.state.currentSlide + _this.props.slidesToScroll;\n } else {\n return false;\n }\n }\n _this.slideHandler(nextIndex);\n });\n _defineProperty(_assertThisInitialized(_this), \"autoPlay\", function (playType) {\n if (_this.autoplayTimer) {\n clearInterval(_this.autoplayTimer);\n }\n var autoplaying = _this.state.autoplaying;\n if (playType === \"update\") {\n if (autoplaying === \"hovered\" || autoplaying === \"focused\" || autoplaying === \"paused\") {\n return;\n }\n } else if (playType === \"leave\") {\n if (autoplaying === \"paused\" || autoplaying === \"focused\") {\n return;\n }\n } else if (playType === \"blur\") {\n if (autoplaying === \"paused\" || autoplaying === \"hovered\") {\n return;\n }\n }\n _this.autoplayTimer = setInterval(_this.play, _this.props.autoplaySpeed + 50);\n _this.setState({\n autoplaying: \"playing\"\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"pause\", function (pauseType) {\n if (_this.autoplayTimer) {\n clearInterval(_this.autoplayTimer);\n _this.autoplayTimer = null;\n }\n var autoplaying = _this.state.autoplaying;\n if (pauseType === \"paused\") {\n _this.setState({\n autoplaying: \"paused\"\n });\n } else if (pauseType === \"focused\") {\n if (autoplaying === \"hovered\" || autoplaying === \"playing\") {\n _this.setState({\n autoplaying: \"focused\"\n });\n }\n } else {\n // pauseType is 'hovered'\n if (autoplaying === \"playing\") {\n _this.setState({\n autoplaying: \"hovered\"\n });\n }\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onDotsOver\", function () {\n return _this.props.autoplay && _this.pause(\"hovered\");\n });\n _defineProperty(_assertThisInitialized(_this), \"onDotsLeave\", function () {\n return _this.props.autoplay && _this.state.autoplaying === \"hovered\" && _this.autoPlay(\"leave\");\n });\n _defineProperty(_assertThisInitialized(_this), \"onTrackOver\", function () {\n return _this.props.autoplay && _this.pause(\"hovered\");\n });\n _defineProperty(_assertThisInitialized(_this), \"onTrackLeave\", function () {\n return _this.props.autoplay && _this.state.autoplaying === \"hovered\" && _this.autoPlay(\"leave\");\n });\n _defineProperty(_assertThisInitialized(_this), \"onSlideFocus\", function () {\n return _this.props.autoplay && _this.pause(\"focused\");\n });\n _defineProperty(_assertThisInitialized(_this), \"onSlideBlur\", function () {\n return _this.props.autoplay && _this.state.autoplaying === \"focused\" && _this.autoPlay(\"blur\");\n });\n _defineProperty(_assertThisInitialized(_this), \"render\", function () {\n var className = (0, _classnames[\"default\"])(\"slick-slider\", _this.props.className, {\n \"slick-vertical\": _this.props.vertical,\n \"slick-initialized\": true\n });\n var spec = _objectSpread(_objectSpread({}, _this.props), _this.state);\n var trackProps = (0, _innerSliderUtils.extractObject)(spec, [\"fade\", \"cssEase\", \"speed\", \"infinite\", \"centerMode\", \"focusOnSelect\", \"currentSlide\", \"lazyLoad\", \"lazyLoadedList\", \"rtl\", \"slideWidth\", \"slideHeight\", \"listHeight\", \"vertical\", \"slidesToShow\", \"slidesToScroll\", \"slideCount\", \"trackStyle\", \"variableWidth\", \"unslick\", \"centerPadding\", \"targetSlide\", \"useCSS\"]);\n var pauseOnHover = _this.props.pauseOnHover;\n trackProps = _objectSpread(_objectSpread({}, trackProps), {}, {\n onMouseEnter: pauseOnHover ? _this.onTrackOver : null,\n onMouseLeave: pauseOnHover ? _this.onTrackLeave : null,\n onMouseOver: pauseOnHover ? _this.onTrackOver : null,\n focusOnSelect: _this.props.focusOnSelect && _this.clickable ? _this.selectHandler : null\n });\n var dots;\n if (_this.props.dots === true && _this.state.slideCount >= _this.props.slidesToShow) {\n var dotProps = (0, _innerSliderUtils.extractObject)(spec, [\"dotsClass\", \"slideCount\", \"slidesToShow\", \"currentSlide\", \"slidesToScroll\", \"clickHandler\", \"children\", \"customPaging\", \"infinite\", \"appendDots\"]);\n var pauseOnDotsHover = _this.props.pauseOnDotsHover;\n dotProps = _objectSpread(_objectSpread({}, dotProps), {}, {\n clickHandler: _this.changeSlide,\n onMouseEnter: pauseOnDotsHover ? _this.onDotsLeave : null,\n onMouseOver: pauseOnDotsHover ? _this.onDotsOver : null,\n onMouseLeave: pauseOnDotsHover ? _this.onDotsLeave : null\n });\n dots = /*#__PURE__*/_react[\"default\"].createElement(_dots.Dots, dotProps);\n }\n var prevArrow, nextArrow;\n var arrowProps = (0, _innerSliderUtils.extractObject)(spec, [\"infinite\", \"centerMode\", \"currentSlide\", \"slideCount\", \"slidesToShow\", \"prevArrow\", \"nextArrow\"]);\n arrowProps.clickHandler = _this.changeSlide;\n if (_this.props.arrows) {\n prevArrow = /*#__PURE__*/_react[\"default\"].createElement(_arrows.PrevArrow, arrowProps);\n nextArrow = /*#__PURE__*/_react[\"default\"].createElement(_arrows.NextArrow, arrowProps);\n }\n var verticalHeightStyle = null;\n if (_this.props.vertical) {\n verticalHeightStyle = {\n height: _this.state.listHeight\n };\n }\n var centerPaddingStyle = null;\n if (_this.props.vertical === false) {\n if (_this.props.centerMode === true) {\n centerPaddingStyle = {\n padding: \"0px \" + _this.props.centerPadding\n };\n }\n } else {\n if (_this.props.centerMode === true) {\n centerPaddingStyle = {\n padding: _this.props.centerPadding + \" 0px\"\n };\n }\n }\n var listStyle = _objectSpread(_objectSpread({}, verticalHeightStyle), centerPaddingStyle);\n var touchMove = _this.props.touchMove;\n var listProps = {\n className: \"slick-list\",\n style: listStyle,\n onClick: _this.clickHandler,\n onMouseDown: touchMove ? _this.swipeStart : null,\n onMouseMove: _this.state.dragging && touchMove ? _this.swipeMove : null,\n onMouseUp: touchMove ? _this.swipeEnd : null,\n onMouseLeave: _this.state.dragging && touchMove ? _this.swipeEnd : null,\n onTouchStart: touchMove ? _this.swipeStart : null,\n onTouchMove: _this.state.dragging && touchMove ? _this.swipeMove : null,\n onTouchEnd: touchMove ? _this.touchEnd : null,\n onTouchCancel: _this.state.dragging && touchMove ? _this.swipeEnd : null,\n onKeyDown: _this.props.accessibility ? _this.keyHandler : null\n };\n var innerSliderProps = {\n className: className,\n dir: \"ltr\",\n style: _this.props.style\n };\n if (_this.props.unslick) {\n listProps = {\n className: \"slick-list\"\n };\n innerSliderProps = {\n className: className\n };\n }\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", innerSliderProps, !_this.props.unslick ? prevArrow : \"\", /*#__PURE__*/_react[\"default\"].createElement(\"div\", _extends({\n ref: _this.listRefHandler\n }, listProps), /*#__PURE__*/_react[\"default\"].createElement(_track.Track, _extends({\n ref: _this.trackRefHandler\n }, trackProps), _this.props.children)), !_this.props.unslick ? nextArrow : \"\", !_this.props.unslick ? dots : \"\");\n });\n _this.list = null;\n _this.track = null;\n _this.state = _objectSpread(_objectSpread({}, _initialState[\"default\"]), {}, {\n currentSlide: _this.props.initialSlide,\n targetSlide: _this.props.initialSlide ? _this.props.initialSlide : 0,\n slideCount: _react[\"default\"].Children.count(_this.props.children)\n });\n _this.callbackTimers = [];\n _this.clickable = true;\n _this.debouncedResize = null;\n var ssrState = _this.ssrInit();\n _this.state = _objectSpread(_objectSpread({}, _this.state), ssrState);\n return _this;\n }\n _createClass(InnerSlider, [{\n key: \"didPropsChange\",\n value: function didPropsChange(prevProps) {\n var setTrackStyle = false;\n for (var _i3 = 0, _Object$keys = Object.keys(this.props); _i3 < _Object$keys.length; _i3++) {\n var key = _Object$keys[_i3];\n if (!prevProps.hasOwnProperty(key)) {\n setTrackStyle = true;\n break;\n }\n if (_typeof(prevProps[key]) === \"object\" || typeof prevProps[key] === \"function\" || isNaN(prevProps[key])) {\n continue;\n }\n if (prevProps[key] !== this.props[key]) {\n setTrackStyle = true;\n break;\n }\n }\n return setTrackStyle || _react[\"default\"].Children.count(this.props.children) !== _react[\"default\"].Children.count(prevProps.children);\n }\n }]);\n return InnerSlider;\n}(_react[\"default\"].Component);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = void 0;\nvar _react = _interopRequireDefault(require(\"react\"));\nvar _innerSlider = require(\"./inner-slider\");\nvar _json2mq = _interopRequireDefault(require(\"json2mq\"));\nvar _defaultProps = _interopRequireDefault(require(\"./default-props\"));\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nvar enquire = (0, _innerSliderUtils.canUseDOM)() && require(\"enquire.js\");\nvar Slider = exports[\"default\"] = /*#__PURE__*/function (_React$Component) {\n _inherits(Slider, _React$Component);\n var _super = _createSuper(Slider);\n function Slider(props) {\n var _this;\n _classCallCheck(this, Slider);\n _this = _super.call(this, props);\n _defineProperty(_assertThisInitialized(_this), \"innerSliderRefHandler\", function (ref) {\n return _this.innerSlider = ref;\n });\n _defineProperty(_assertThisInitialized(_this), \"slickPrev\", function () {\n return _this.innerSlider.slickPrev();\n });\n _defineProperty(_assertThisInitialized(_this), \"slickNext\", function () {\n return _this.innerSlider.slickNext();\n });\n _defineProperty(_assertThisInitialized(_this), \"slickGoTo\", function (slide) {\n var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return _this.innerSlider.slickGoTo(slide, dontAnimate);\n });\n _defineProperty(_assertThisInitialized(_this), \"slickPause\", function () {\n return _this.innerSlider.pause(\"paused\");\n });\n _defineProperty(_assertThisInitialized(_this), \"slickPlay\", function () {\n return _this.innerSlider.autoPlay(\"play\");\n });\n _this.state = {\n breakpoint: null\n };\n _this._responsiveMediaHandlers = [];\n return _this;\n }\n _createClass(Slider, [{\n key: \"media\",\n value: function media(query, handler) {\n // javascript handler for css media query\n enquire.register(query, handler);\n this._responsiveMediaHandlers.push({\n query: query,\n handler: handler\n });\n } // handles responsive breakpoints\n }, {\n key: \"componentDidMount\",\n value: function componentDidMount() {\n var _this2 = this;\n // performance monitoring\n //if (process.env.NODE_ENV !== 'production') {\n //const { whyDidYouUpdate } = require('why-did-you-update')\n //whyDidYouUpdate(React)\n //}\n if (this.props.responsive) {\n var breakpoints = this.props.responsive.map(function (breakpt) {\n return breakpt.breakpoint;\n });\n // sort them in increasing order of their numerical value\n breakpoints.sort(function (x, y) {\n return x - y;\n });\n breakpoints.forEach(function (breakpoint, index) {\n // media query for each breakpoint\n var bQuery;\n if (index === 0) {\n bQuery = (0, _json2mq[\"default\"])({\n minWidth: 0,\n maxWidth: breakpoint\n });\n } else {\n bQuery = (0, _json2mq[\"default\"])({\n minWidth: breakpoints[index - 1] + 1,\n maxWidth: breakpoint\n });\n }\n // when not using server side rendering\n (0, _innerSliderUtils.canUseDOM)() && _this2.media(bQuery, function () {\n _this2.setState({\n breakpoint: breakpoint\n });\n });\n });\n\n // Register media query for full screen. Need to support resize from small to large\n // convert javascript object to media query string\n var query = (0, _json2mq[\"default\"])({\n minWidth: breakpoints.slice(-1)[0]\n });\n (0, _innerSliderUtils.canUseDOM)() && this.media(query, function () {\n _this2.setState({\n breakpoint: null\n });\n });\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this._responsiveMediaHandlers.forEach(function (obj) {\n enquire.unregister(obj.query, obj.handler);\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this3 = this;\n var settings;\n var newProps;\n if (this.state.breakpoint) {\n newProps = this.props.responsive.filter(function (resp) {\n return resp.breakpoint === _this3.state.breakpoint;\n });\n settings = newProps[0].settings === \"unslick\" ? \"unslick\" : _objectSpread(_objectSpread(_objectSpread({}, _defaultProps[\"default\"]), this.props), newProps[0].settings);\n } else {\n settings = _objectSpread(_objectSpread({}, _defaultProps[\"default\"]), this.props);\n }\n\n // force scrolling by one if centerMode is on\n if (settings.centerMode) {\n if (settings.slidesToScroll > 1 && process.env.NODE_ENV !== \"production\") {\n console.warn(\"slidesToScroll should be equal to 1 in centerMode, you are using \".concat(settings.slidesToScroll));\n }\n settings.slidesToScroll = 1;\n }\n // force showing one slide and scrolling by one if the fade mode is on\n if (settings.fade) {\n if (settings.slidesToShow > 1 && process.env.NODE_ENV !== \"production\") {\n console.warn(\"slidesToShow should be equal to 1 when fade is true, you're using \".concat(settings.slidesToShow));\n }\n if (settings.slidesToScroll > 1 && process.env.NODE_ENV !== \"production\") {\n console.warn(\"slidesToScroll should be equal to 1 when fade is true, you're using \".concat(settings.slidesToScroll));\n }\n settings.slidesToShow = 1;\n settings.slidesToScroll = 1;\n }\n\n // makes sure that children is an array, even when there is only 1 child\n var children = _react[\"default\"].Children.toArray(this.props.children);\n\n // Children may contain false or null, so we should filter them\n // children may also contain string filled with spaces (in certain cases where we use jsx strings)\n children = children.filter(function (child) {\n if (typeof child === \"string\") {\n return !!child.trim();\n }\n return !!child;\n });\n\n // rows and slidesPerRow logic is handled here\n if (settings.variableWidth && (settings.rows > 1 || settings.slidesPerRow > 1)) {\n console.warn(\"variableWidth is not supported in case of rows > 1 or slidesPerRow > 1\");\n settings.variableWidth = false;\n }\n var newChildren = [];\n var currentWidth = null;\n for (var i = 0; i < children.length; i += settings.rows * settings.slidesPerRow) {\n var newSlide = [];\n for (var j = i; j < i + settings.rows * settings.slidesPerRow; j += settings.slidesPerRow) {\n var row = [];\n for (var k = j; k < j + settings.slidesPerRow; k += 1) {\n if (settings.variableWidth && children[k].props.style) {\n currentWidth = children[k].props.style.width;\n }\n if (k >= children.length) break;\n row.push( /*#__PURE__*/_react[\"default\"].cloneElement(children[k], {\n key: 100 * i + 10 * j + k,\n tabIndex: -1,\n style: {\n width: \"\".concat(100 / settings.slidesPerRow, \"%\"),\n display: \"inline-block\"\n }\n }));\n }\n newSlide.push( /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n key: 10 * i + j\n }, row));\n }\n if (settings.variableWidth) {\n newChildren.push( /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n key: i,\n style: {\n width: currentWidth\n }\n }, newSlide));\n } else {\n newChildren.push( /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n key: i\n }, newSlide));\n }\n }\n if (settings === \"unslick\") {\n var className = \"regular slider \" + (this.props.className || \"\");\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n className: className\n }, children);\n } else if (newChildren.length <= settings.slidesToShow && !settings.infinite) {\n settings.unslick = true;\n }\n return /*#__PURE__*/_react[\"default\"].createElement(_innerSlider.InnerSlider, _extends({\n style: this.props.style,\n ref: this.innerSliderRefHandler\n }, (0, _innerSliderUtils.filterSettings)(settings)), newChildren);\n }\n }]);\n return Slider;\n}(_react[\"default\"].Component);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Track = void 0;\nvar _react = _interopRequireDefault(require(\"react\"));\nvar _classnames = _interopRequireDefault(require(\"classnames\"));\nvar _innerSliderUtils = require(\"./utils/innerSliderUtils\");\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n// given specifications/props for a slide, fetch all the classes that need to be applied to the slide\nvar getSlideClasses = function getSlideClasses(spec) {\n var slickActive, slickCenter, slickCloned;\n var centerOffset, index;\n if (spec.rtl) {\n index = spec.slideCount - 1 - spec.index;\n } else {\n index = spec.index;\n }\n slickCloned = index < 0 || index >= spec.slideCount;\n if (spec.centerMode) {\n centerOffset = Math.floor(spec.slidesToShow / 2);\n slickCenter = (index - spec.currentSlide) % spec.slideCount === 0;\n if (index > spec.currentSlide - centerOffset - 1 && index <= spec.currentSlide + centerOffset) {\n slickActive = true;\n }\n } else {\n slickActive = spec.currentSlide <= index && index < spec.currentSlide + spec.slidesToShow;\n }\n var focusedSlide;\n if (spec.targetSlide < 0) {\n focusedSlide = spec.targetSlide + spec.slideCount;\n } else if (spec.targetSlide >= spec.slideCount) {\n focusedSlide = spec.targetSlide - spec.slideCount;\n } else {\n focusedSlide = spec.targetSlide;\n }\n var slickCurrent = index === focusedSlide;\n return {\n \"slick-slide\": true,\n \"slick-active\": slickActive,\n \"slick-center\": slickCenter,\n \"slick-cloned\": slickCloned,\n \"slick-current\": slickCurrent // dubious in case of RTL\n };\n};\nvar getSlideStyle = function getSlideStyle(spec) {\n var style = {};\n if (spec.variableWidth === undefined || spec.variableWidth === false) {\n style.width = spec.slideWidth;\n }\n if (spec.fade) {\n style.position = \"relative\";\n if (spec.vertical) {\n style.top = -spec.index * parseInt(spec.slideHeight);\n } else {\n style.left = -spec.index * parseInt(spec.slideWidth);\n }\n style.opacity = spec.currentSlide === spec.index ? 1 : 0;\n style.zIndex = spec.currentSlide === spec.index ? 999 : 998;\n if (spec.useCSS) {\n style.transition = \"opacity \" + spec.speed + \"ms \" + spec.cssEase + \", \" + \"visibility \" + spec.speed + \"ms \" + spec.cssEase;\n }\n }\n return style;\n};\nvar getKey = function getKey(child, fallbackKey) {\n return child.key || fallbackKey;\n};\nvar renderSlides = function renderSlides(spec) {\n var key;\n var slides = [];\n var preCloneSlides = [];\n var postCloneSlides = [];\n var childrenCount = _react[\"default\"].Children.count(spec.children);\n var startIndex = (0, _innerSliderUtils.lazyStartIndex)(spec);\n var endIndex = (0, _innerSliderUtils.lazyEndIndex)(spec);\n _react[\"default\"].Children.forEach(spec.children, function (elem, index) {\n var child;\n var childOnClickOptions = {\n message: \"children\",\n index: index,\n slidesToScroll: spec.slidesToScroll,\n currentSlide: spec.currentSlide\n };\n\n // in case of lazyLoad, whether or not we want to fetch the slide\n if (!spec.lazyLoad || spec.lazyLoad && spec.lazyLoadedList.indexOf(index) >= 0) {\n child = elem;\n } else {\n child = /*#__PURE__*/_react[\"default\"].createElement(\"div\", null);\n }\n var childStyle = getSlideStyle(_objectSpread(_objectSpread({}, spec), {}, {\n index: index\n }));\n var slideClass = child.props.className || \"\";\n var slideClasses = getSlideClasses(_objectSpread(_objectSpread({}, spec), {}, {\n index: index\n }));\n // push a cloned element of the desired slide\n slides.push( /*#__PURE__*/_react[\"default\"].cloneElement(child, {\n key: \"original\" + getKey(child, index),\n \"data-index\": index,\n className: (0, _classnames[\"default\"])(slideClasses, slideClass),\n tabIndex: \"-1\",\n \"aria-hidden\": !slideClasses[\"slick-active\"],\n style: _objectSpread(_objectSpread({\n outline: \"none\"\n }, child.props.style || {}), childStyle),\n onClick: function onClick(e) {\n child.props && child.props.onClick && child.props.onClick(e);\n if (spec.focusOnSelect) {\n spec.focusOnSelect(childOnClickOptions);\n }\n }\n }));\n\n // if slide needs to be precloned or postcloned\n if (spec.infinite && spec.fade === false) {\n var preCloneNo = childrenCount - index;\n if (preCloneNo <= (0, _innerSliderUtils.getPreClones)(spec)) {\n key = -preCloneNo;\n if (key >= startIndex) {\n child = elem;\n }\n slideClasses = getSlideClasses(_objectSpread(_objectSpread({}, spec), {}, {\n index: key\n }));\n preCloneSlides.push( /*#__PURE__*/_react[\"default\"].cloneElement(child, {\n key: \"precloned\" + getKey(child, key),\n \"data-index\": key,\n tabIndex: \"-1\",\n className: (0, _classnames[\"default\"])(slideClasses, slideClass),\n \"aria-hidden\": !slideClasses[\"slick-active\"],\n style: _objectSpread(_objectSpread({}, child.props.style || {}), childStyle),\n onClick: function onClick(e) {\n child.props && child.props.onClick && child.props.onClick(e);\n if (spec.focusOnSelect) {\n spec.focusOnSelect(childOnClickOptions);\n }\n }\n }));\n }\n key = childrenCount + index;\n if (key < endIndex) {\n child = elem;\n }\n slideClasses = getSlideClasses(_objectSpread(_objectSpread({}, spec), {}, {\n index: key\n }));\n postCloneSlides.push( /*#__PURE__*/_react[\"default\"].cloneElement(child, {\n key: \"postcloned\" + getKey(child, key),\n \"data-index\": key,\n tabIndex: \"-1\",\n className: (0, _classnames[\"default\"])(slideClasses, slideClass),\n \"aria-hidden\": !slideClasses[\"slick-active\"],\n style: _objectSpread(_objectSpread({}, child.props.style || {}), childStyle),\n onClick: function onClick(e) {\n child.props && child.props.onClick && child.props.onClick(e);\n if (spec.focusOnSelect) {\n spec.focusOnSelect(childOnClickOptions);\n }\n }\n }));\n }\n });\n if (spec.rtl) {\n return preCloneSlides.concat(slides, postCloneSlides).reverse();\n } else {\n return preCloneSlides.concat(slides, postCloneSlides);\n }\n};\nvar Track = exports.Track = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(Track, _React$PureComponent);\n var _super = _createSuper(Track);\n function Track() {\n var _this;\n _classCallCheck(this, Track);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"node\", null);\n _defineProperty(_assertThisInitialized(_this), \"handleRef\", function (ref) {\n _this.node = ref;\n });\n return _this;\n }\n _createClass(Track, [{\n key: \"render\",\n value: function render() {\n var slides = renderSlides(this.props);\n var _this$props = this.props,\n onMouseEnter = _this$props.onMouseEnter,\n onMouseOver = _this$props.onMouseOver,\n onMouseLeave = _this$props.onMouseLeave;\n var mouseEvents = {\n onMouseEnter: onMouseEnter,\n onMouseOver: onMouseOver,\n onMouseLeave: onMouseLeave\n };\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", _extends({\n ref: this.handleRef,\n className: \"slick-track\",\n style: this.props.trackStyle\n }, mouseEvents), slides);\n }\n }]);\n return Track;\n}(_react[\"default\"].PureComponent);","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.checkSpecKeys = exports.checkNavigable = exports.changeSlide = exports.canUseDOM = exports.canGoNext = void 0;\nexports.clamp = clamp;\nexports.extractObject = void 0;\nexports.filterSettings = filterSettings;\nexports.validSettings = exports.swipeStart = exports.swipeMove = exports.swipeEnd = exports.slidesOnRight = exports.slidesOnLeft = exports.slideHandler = exports.siblingDirection = exports.safePreventDefault = exports.lazyStartIndex = exports.lazySlidesOnRight = exports.lazySlidesOnLeft = exports.lazyEndIndex = exports.keyHandler = exports.initializedState = exports.getWidth = exports.getTrackLeft = exports.getTrackCSS = exports.getTrackAnimateCSS = exports.getTotalSlides = exports.getSwipeDirection = exports.getSlideCount = exports.getRequiredLazySlides = exports.getPreClones = exports.getPostClones = exports.getOnDemandLazySlides = exports.getNavigableIndexes = exports.getHeight = void 0;\nvar _react = _interopRequireDefault(require(\"react\"));\nvar _defaultProps = _interopRequireDefault(require(\"../default-props\"));\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : String(i); }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction clamp(number, lowerBound, upperBound) {\n return Math.max(lowerBound, Math.min(number, upperBound));\n}\nvar safePreventDefault = exports.safePreventDefault = function safePreventDefault(event) {\n var passiveEvents = [\"onTouchStart\", \"onTouchMove\", \"onWheel\"];\n if (!passiveEvents.includes(event._reactName)) {\n event.preventDefault();\n }\n};\nvar getOnDemandLazySlides = exports.getOnDemandLazySlides = function getOnDemandLazySlides(spec) {\n var onDemandSlides = [];\n var startIndex = lazyStartIndex(spec);\n var endIndex = lazyEndIndex(spec);\n for (var slideIndex = startIndex; slideIndex < endIndex; slideIndex++) {\n if (spec.lazyLoadedList.indexOf(slideIndex) < 0) {\n onDemandSlides.push(slideIndex);\n }\n }\n return onDemandSlides;\n};\n\n// return list of slides that need to be present\nvar getRequiredLazySlides = exports.getRequiredLazySlides = function getRequiredLazySlides(spec) {\n var requiredSlides = [];\n var startIndex = lazyStartIndex(spec);\n var endIndex = lazyEndIndex(spec);\n for (var slideIndex = startIndex; slideIndex < endIndex; slideIndex++) {\n requiredSlides.push(slideIndex);\n }\n return requiredSlides;\n};\n\n// startIndex that needs to be present\nvar lazyStartIndex = exports.lazyStartIndex = function lazyStartIndex(spec) {\n return spec.currentSlide - lazySlidesOnLeft(spec);\n};\nvar lazyEndIndex = exports.lazyEndIndex = function lazyEndIndex(spec) {\n return spec.currentSlide + lazySlidesOnRight(spec);\n};\nvar lazySlidesOnLeft = exports.lazySlidesOnLeft = function lazySlidesOnLeft(spec) {\n return spec.centerMode ? Math.floor(spec.slidesToShow / 2) + (parseInt(spec.centerPadding) > 0 ? 1 : 0) : 0;\n};\nvar lazySlidesOnRight = exports.lazySlidesOnRight = function lazySlidesOnRight(spec) {\n return spec.centerMode ? Math.floor((spec.slidesToShow - 1) / 2) + 1 + (parseInt(spec.centerPadding) > 0 ? 1 : 0) : spec.slidesToShow;\n};\n\n// get width of an element\nvar getWidth = exports.getWidth = function getWidth(elem) {\n return elem && elem.offsetWidth || 0;\n};\nvar getHeight = exports.getHeight = function getHeight(elem) {\n return elem && elem.offsetHeight || 0;\n};\nvar getSwipeDirection = exports.getSwipeDirection = function getSwipeDirection(touchObject) {\n var verticalSwiping = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var xDist, yDist, r, swipeAngle;\n xDist = touchObject.startX - touchObject.curX;\n yDist = touchObject.startY - touchObject.curY;\n r = Math.atan2(yDist, xDist);\n swipeAngle = Math.round(r * 180 / Math.PI);\n if (swipeAngle < 0) {\n swipeAngle = 360 - Math.abs(swipeAngle);\n }\n if (swipeAngle <= 45 && swipeAngle >= 0 || swipeAngle <= 360 && swipeAngle >= 315) {\n return \"left\";\n }\n if (swipeAngle >= 135 && swipeAngle <= 225) {\n return \"right\";\n }\n if (verticalSwiping === true) {\n if (swipeAngle >= 35 && swipeAngle <= 135) {\n return \"up\";\n } else {\n return \"down\";\n }\n }\n return \"vertical\";\n};\n\n// whether or not we can go next\nvar canGoNext = exports.canGoNext = function canGoNext(spec) {\n var canGo = true;\n if (!spec.infinite) {\n if (spec.centerMode && spec.currentSlide >= spec.slideCount - 1) {\n canGo = false;\n } else if (spec.slideCount <= spec.slidesToShow || spec.currentSlide >= spec.slideCount - spec.slidesToShow) {\n canGo = false;\n }\n }\n return canGo;\n};\n\n// given an object and a list of keys, return new object with given keys\nvar extractObject = exports.extractObject = function extractObject(spec, keys) {\n var newObject = {};\n keys.forEach(function (key) {\n return newObject[key] = spec[key];\n });\n return newObject;\n};\n\n// get initialized state\nvar initializedState = exports.initializedState = function initializedState(spec) {\n // spec also contains listRef, trackRef\n var slideCount = _react[\"default\"].Children.count(spec.children);\n var listNode = spec.listRef;\n var listWidth = Math.ceil(getWidth(listNode));\n var trackNode = spec.trackRef && spec.trackRef.node;\n var trackWidth = Math.ceil(getWidth(trackNode));\n var slideWidth;\n if (!spec.vertical) {\n var centerPaddingAdj = spec.centerMode && parseInt(spec.centerPadding) * 2;\n if (typeof spec.centerPadding === \"string\" && spec.centerPadding.slice(-1) === \"%\") {\n centerPaddingAdj *= listWidth / 100;\n }\n slideWidth = Math.ceil((listWidth - centerPaddingAdj) / spec.slidesToShow);\n } else {\n slideWidth = listWidth;\n }\n var slideHeight = listNode && getHeight(listNode.querySelector('[data-index=\"0\"]'));\n var listHeight = slideHeight * spec.slidesToShow;\n var currentSlide = spec.currentSlide === undefined ? spec.initialSlide : spec.currentSlide;\n if (spec.rtl && spec.currentSlide === undefined) {\n currentSlide = slideCount - 1 - spec.initialSlide;\n }\n var lazyLoadedList = spec.lazyLoadedList || [];\n var slidesToLoad = getOnDemandLazySlides(_objectSpread(_objectSpread({}, spec), {}, {\n currentSlide: currentSlide,\n lazyLoadedList: lazyLoadedList\n }));\n lazyLoadedList = lazyLoadedList.concat(slidesToLoad);\n var state = {\n slideCount: slideCount,\n slideWidth: slideWidth,\n listWidth: listWidth,\n trackWidth: trackWidth,\n currentSlide: currentSlide,\n slideHeight: slideHeight,\n listHeight: listHeight,\n lazyLoadedList: lazyLoadedList\n };\n if (spec.autoplaying === null && spec.autoplay) {\n state[\"autoplaying\"] = \"playing\";\n }\n return state;\n};\nvar slideHandler = exports.slideHandler = function slideHandler(spec) {\n var waitForAnimate = spec.waitForAnimate,\n animating = spec.animating,\n fade = spec.fade,\n infinite = spec.infinite,\n index = spec.index,\n slideCount = spec.slideCount,\n lazyLoad = spec.lazyLoad,\n currentSlide = spec.currentSlide,\n centerMode = spec.centerMode,\n slidesToScroll = spec.slidesToScroll,\n slidesToShow = spec.slidesToShow,\n useCSS = spec.useCSS;\n var lazyLoadedList = spec.lazyLoadedList;\n if (waitForAnimate && animating) return {};\n var animationSlide = index,\n finalSlide,\n animationLeft,\n finalLeft;\n var state = {},\n nextState = {};\n var targetSlide = infinite ? index : clamp(index, 0, slideCount - 1);\n if (fade) {\n if (!infinite && (index < 0 || index >= slideCount)) return {};\n if (index < 0) {\n animationSlide = index + slideCount;\n } else if (index >= slideCount) {\n animationSlide = index - slideCount;\n }\n if (lazyLoad && lazyLoadedList.indexOf(animationSlide) < 0) {\n lazyLoadedList = lazyLoadedList.concat(animationSlide);\n }\n state = {\n animating: true,\n currentSlide: animationSlide,\n lazyLoadedList: lazyLoadedList,\n targetSlide: animationSlide\n };\n nextState = {\n animating: false,\n targetSlide: animationSlide\n };\n } else {\n finalSlide = animationSlide;\n if (animationSlide < 0) {\n finalSlide = animationSlide + slideCount;\n if (!infinite) finalSlide = 0;else if (slideCount % slidesToScroll !== 0) finalSlide = slideCount - slideCount % slidesToScroll;\n } else if (!canGoNext(spec) && animationSlide > currentSlide) {\n animationSlide = finalSlide = currentSlide;\n } else if (centerMode && animationSlide >= slideCount) {\n animationSlide = infinite ? slideCount : slideCount - 1;\n finalSlide = infinite ? 0 : slideCount - 1;\n } else if (animationSlide >= slideCount) {\n finalSlide = animationSlide - slideCount;\n if (!infinite) finalSlide = slideCount - slidesToShow;else if (slideCount % slidesToScroll !== 0) finalSlide = 0;\n }\n if (!infinite && animationSlide + slidesToShow >= slideCount) {\n finalSlide = slideCount - slidesToShow;\n }\n animationLeft = getTrackLeft(_objectSpread(_objectSpread({}, spec), {}, {\n slideIndex: animationSlide\n }));\n finalLeft = getTrackLeft(_objectSpread(_objectSpread({}, spec), {}, {\n slideIndex: finalSlide\n }));\n if (!infinite) {\n if (animationLeft === finalLeft) animationSlide = finalSlide;\n animationLeft = finalLeft;\n }\n if (lazyLoad) {\n lazyLoadedList = lazyLoadedList.concat(getOnDemandLazySlides(_objectSpread(_objectSpread({}, spec), {}, {\n currentSlide: animationSlide\n })));\n }\n if (!useCSS) {\n state = {\n currentSlide: finalSlide,\n trackStyle: getTrackCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: finalLeft\n })),\n lazyLoadedList: lazyLoadedList,\n targetSlide: targetSlide\n };\n } else {\n state = {\n animating: true,\n currentSlide: finalSlide,\n trackStyle: getTrackAnimateCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: animationLeft\n })),\n lazyLoadedList: lazyLoadedList,\n targetSlide: targetSlide\n };\n nextState = {\n animating: false,\n currentSlide: finalSlide,\n trackStyle: getTrackCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: finalLeft\n })),\n swipeLeft: null,\n targetSlide: targetSlide\n };\n }\n }\n return {\n state: state,\n nextState: nextState\n };\n};\nvar changeSlide = exports.changeSlide = function changeSlide(spec, options) {\n var indexOffset, previousInt, slideOffset, unevenOffset, targetSlide;\n var slidesToScroll = spec.slidesToScroll,\n slidesToShow = spec.slidesToShow,\n slideCount = spec.slideCount,\n currentSlide = spec.currentSlide,\n previousTargetSlide = spec.targetSlide,\n lazyLoad = spec.lazyLoad,\n infinite = spec.infinite;\n unevenOffset = slideCount % slidesToScroll !== 0;\n indexOffset = unevenOffset ? 0 : (slideCount - currentSlide) % slidesToScroll;\n if (options.message === \"previous\") {\n slideOffset = indexOffset === 0 ? slidesToScroll : slidesToShow - indexOffset;\n targetSlide = currentSlide - slideOffset;\n if (lazyLoad && !infinite) {\n previousInt = currentSlide - slideOffset;\n targetSlide = previousInt === -1 ? slideCount - 1 : previousInt;\n }\n if (!infinite) {\n targetSlide = previousTargetSlide - slidesToScroll;\n }\n } else if (options.message === \"next\") {\n slideOffset = indexOffset === 0 ? slidesToScroll : indexOffset;\n targetSlide = currentSlide + slideOffset;\n if (lazyLoad && !infinite) {\n targetSlide = (currentSlide + slidesToScroll) % slideCount + indexOffset;\n }\n if (!infinite) {\n targetSlide = previousTargetSlide + slidesToScroll;\n }\n } else if (options.message === \"dots\") {\n // Click on dots\n targetSlide = options.index * options.slidesToScroll;\n } else if (options.message === \"children\") {\n // Click on the slides\n targetSlide = options.index;\n if (infinite) {\n var direction = siblingDirection(_objectSpread(_objectSpread({}, spec), {}, {\n targetSlide: targetSlide\n }));\n if (targetSlide > options.currentSlide && direction === \"left\") {\n targetSlide = targetSlide - slideCount;\n } else if (targetSlide < options.currentSlide && direction === \"right\") {\n targetSlide = targetSlide + slideCount;\n }\n }\n } else if (options.message === \"index\") {\n targetSlide = Number(options.index);\n }\n return targetSlide;\n};\nvar keyHandler = exports.keyHandler = function keyHandler(e, accessibility, rtl) {\n if (e.target.tagName.match(\"TEXTAREA|INPUT|SELECT\") || !accessibility) return \"\";\n if (e.keyCode === 37) return rtl ? \"next\" : \"previous\";\n if (e.keyCode === 39) return rtl ? \"previous\" : \"next\";\n return \"\";\n};\nvar swipeStart = exports.swipeStart = function swipeStart(e, swipe, draggable) {\n e.target.tagName === \"IMG\" && safePreventDefault(e);\n if (!swipe || !draggable && e.type.indexOf(\"mouse\") !== -1) return \"\";\n return {\n dragging: true,\n touchObject: {\n startX: e.touches ? e.touches[0].pageX : e.clientX,\n startY: e.touches ? e.touches[0].pageY : e.clientY,\n curX: e.touches ? e.touches[0].pageX : e.clientX,\n curY: e.touches ? e.touches[0].pageY : e.clientY\n }\n };\n};\nvar swipeMove = exports.swipeMove = function swipeMove(e, spec) {\n // spec also contains, trackRef and slideIndex\n var scrolling = spec.scrolling,\n animating = spec.animating,\n vertical = spec.vertical,\n swipeToSlide = spec.swipeToSlide,\n verticalSwiping = spec.verticalSwiping,\n rtl = spec.rtl,\n currentSlide = spec.currentSlide,\n edgeFriction = spec.edgeFriction,\n edgeDragged = spec.edgeDragged,\n onEdge = spec.onEdge,\n swiped = spec.swiped,\n swiping = spec.swiping,\n slideCount = spec.slideCount,\n slidesToScroll = spec.slidesToScroll,\n infinite = spec.infinite,\n touchObject = spec.touchObject,\n swipeEvent = spec.swipeEvent,\n listHeight = spec.listHeight,\n listWidth = spec.listWidth;\n if (scrolling) return;\n if (animating) return safePreventDefault(e);\n if (vertical && swipeToSlide && verticalSwiping) safePreventDefault(e);\n var swipeLeft,\n state = {};\n var curLeft = getTrackLeft(spec);\n touchObject.curX = e.touches ? e.touches[0].pageX : e.clientX;\n touchObject.curY = e.touches ? e.touches[0].pageY : e.clientY;\n touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(touchObject.curX - touchObject.startX, 2)));\n var verticalSwipeLength = Math.round(Math.sqrt(Math.pow(touchObject.curY - touchObject.startY, 2)));\n if (!verticalSwiping && !swiping && verticalSwipeLength > 10) {\n return {\n scrolling: true\n };\n }\n if (verticalSwiping) touchObject.swipeLength = verticalSwipeLength;\n var positionOffset = (!rtl ? 1 : -1) * (touchObject.curX > touchObject.startX ? 1 : -1);\n if (verticalSwiping) positionOffset = touchObject.curY > touchObject.startY ? 1 : -1;\n var dotCount = Math.ceil(slideCount / slidesToScroll);\n var swipeDirection = getSwipeDirection(spec.touchObject, verticalSwiping);\n var touchSwipeLength = touchObject.swipeLength;\n if (!infinite) {\n if (currentSlide === 0 && (swipeDirection === \"right\" || swipeDirection === \"down\") || currentSlide + 1 >= dotCount && (swipeDirection === \"left\" || swipeDirection === \"up\") || !canGoNext(spec) && (swipeDirection === \"left\" || swipeDirection === \"up\")) {\n touchSwipeLength = touchObject.swipeLength * edgeFriction;\n if (edgeDragged === false && onEdge) {\n onEdge(swipeDirection);\n state[\"edgeDragged\"] = true;\n }\n }\n }\n if (!swiped && swipeEvent) {\n swipeEvent(swipeDirection);\n state[\"swiped\"] = true;\n }\n if (!vertical) {\n if (!rtl) {\n swipeLeft = curLeft + touchSwipeLength * positionOffset;\n } else {\n swipeLeft = curLeft - touchSwipeLength * positionOffset;\n }\n } else {\n swipeLeft = curLeft + touchSwipeLength * (listHeight / listWidth) * positionOffset;\n }\n if (verticalSwiping) {\n swipeLeft = curLeft + touchSwipeLength * positionOffset;\n }\n state = _objectSpread(_objectSpread({}, state), {}, {\n touchObject: touchObject,\n swipeLeft: swipeLeft,\n trackStyle: getTrackCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: swipeLeft\n }))\n });\n if (Math.abs(touchObject.curX - touchObject.startX) < Math.abs(touchObject.curY - touchObject.startY) * 0.8) {\n return state;\n }\n if (touchObject.swipeLength > 10) {\n state[\"swiping\"] = true;\n safePreventDefault(e);\n }\n return state;\n};\nvar swipeEnd = exports.swipeEnd = function swipeEnd(e, spec) {\n var dragging = spec.dragging,\n swipe = spec.swipe,\n touchObject = spec.touchObject,\n listWidth = spec.listWidth,\n touchThreshold = spec.touchThreshold,\n verticalSwiping = spec.verticalSwiping,\n listHeight = spec.listHeight,\n swipeToSlide = spec.swipeToSlide,\n scrolling = spec.scrolling,\n onSwipe = spec.onSwipe,\n targetSlide = spec.targetSlide,\n currentSlide = spec.currentSlide,\n infinite = spec.infinite;\n if (!dragging) {\n if (swipe) safePreventDefault(e);\n return {};\n }\n var minSwipe = verticalSwiping ? listHeight / touchThreshold : listWidth / touchThreshold;\n var swipeDirection = getSwipeDirection(touchObject, verticalSwiping);\n // reset the state of touch related state variables.\n var state = {\n dragging: false,\n edgeDragged: false,\n scrolling: false,\n swiping: false,\n swiped: false,\n swipeLeft: null,\n touchObject: {}\n };\n if (scrolling) {\n return state;\n }\n if (!touchObject.swipeLength) {\n return state;\n }\n if (touchObject.swipeLength > minSwipe) {\n safePreventDefault(e);\n if (onSwipe) {\n onSwipe(swipeDirection);\n }\n var slideCount, newSlide;\n var activeSlide = infinite ? currentSlide : targetSlide;\n switch (swipeDirection) {\n case \"left\":\n case \"up\":\n newSlide = activeSlide + getSlideCount(spec);\n slideCount = swipeToSlide ? checkNavigable(spec, newSlide) : newSlide;\n state[\"currentDirection\"] = 0;\n break;\n case \"right\":\n case \"down\":\n newSlide = activeSlide - getSlideCount(spec);\n slideCount = swipeToSlide ? checkNavigable(spec, newSlide) : newSlide;\n state[\"currentDirection\"] = 1;\n break;\n default:\n slideCount = activeSlide;\n }\n state[\"triggerSlideHandler\"] = slideCount;\n } else {\n // Adjust the track back to it's original position.\n var currentLeft = getTrackLeft(spec);\n state[\"trackStyle\"] = getTrackAnimateCSS(_objectSpread(_objectSpread({}, spec), {}, {\n left: currentLeft\n }));\n }\n return state;\n};\nvar getNavigableIndexes = exports.getNavigableIndexes = function getNavigableIndexes(spec) {\n var max = spec.infinite ? spec.slideCount * 2 : spec.slideCount;\n var breakpoint = spec.infinite ? spec.slidesToShow * -1 : 0;\n var counter = spec.infinite ? spec.slidesToShow * -1 : 0;\n var indexes = [];\n while (breakpoint < max) {\n indexes.push(breakpoint);\n breakpoint = counter + spec.slidesToScroll;\n counter += Math.min(spec.slidesToScroll, spec.slidesToShow);\n }\n return indexes;\n};\nvar checkNavigable = exports.checkNavigable = function checkNavigable(spec, index) {\n var navigables = getNavigableIndexes(spec);\n var prevNavigable = 0;\n if (index > navigables[navigables.length - 1]) {\n index = navigables[navigables.length - 1];\n } else {\n for (var n in navigables) {\n if (index < navigables[n]) {\n index = prevNavigable;\n break;\n }\n prevNavigable = navigables[n];\n }\n }\n return index;\n};\nvar getSlideCount = exports.getSlideCount = function getSlideCount(spec) {\n var centerOffset = spec.centerMode ? spec.slideWidth * Math.floor(spec.slidesToShow / 2) : 0;\n if (spec.swipeToSlide) {\n var swipedSlide;\n var slickList = spec.listRef;\n var slides = slickList.querySelectorAll && slickList.querySelectorAll(\".slick-slide\") || [];\n Array.from(slides).every(function (slide) {\n if (!spec.vertical) {\n if (slide.offsetLeft - centerOffset + getWidth(slide) / 2 > spec.swipeLeft * -1) {\n swipedSlide = slide;\n return false;\n }\n } else {\n if (slide.offsetTop + getHeight(slide) / 2 > spec.swipeLeft * -1) {\n swipedSlide = slide;\n return false;\n }\n }\n return true;\n });\n if (!swipedSlide) {\n return 0;\n }\n var currentIndex = spec.rtl === true ? spec.slideCount - spec.currentSlide : spec.currentSlide;\n var slidesTraversed = Math.abs(swipedSlide.dataset.index - currentIndex) || 1;\n return slidesTraversed;\n } else {\n return spec.slidesToScroll;\n }\n};\nvar checkSpecKeys = exports.checkSpecKeys = function checkSpecKeys(spec, keysArray) {\n return keysArray.reduce(function (value, key) {\n return value && spec.hasOwnProperty(key);\n }, true) ? null : console.error(\"Keys Missing:\", spec);\n};\nvar getTrackCSS = exports.getTrackCSS = function getTrackCSS(spec) {\n checkSpecKeys(spec, [\"left\", \"variableWidth\", \"slideCount\", \"slidesToShow\", \"slideWidth\"]);\n var trackWidth, trackHeight;\n var trackChildren = spec.slideCount + 2 * spec.slidesToShow;\n if (!spec.vertical) {\n trackWidth = getTotalSlides(spec) * spec.slideWidth;\n } else {\n trackHeight = trackChildren * spec.slideHeight;\n }\n var style = {\n opacity: 1,\n transition: \"\",\n WebkitTransition: \"\"\n };\n if (spec.useTransform) {\n var WebkitTransform = !spec.vertical ? \"translate3d(\" + spec.left + \"px, 0px, 0px)\" : \"translate3d(0px, \" + spec.left + \"px, 0px)\";\n var transform = !spec.vertical ? \"translate3d(\" + spec.left + \"px, 0px, 0px)\" : \"translate3d(0px, \" + spec.left + \"px, 0px)\";\n var msTransform = !spec.vertical ? \"translateX(\" + spec.left + \"px)\" : \"translateY(\" + spec.left + \"px)\";\n style = _objectSpread(_objectSpread({}, style), {}, {\n WebkitTransform: WebkitTransform,\n transform: transform,\n msTransform: msTransform\n });\n } else {\n if (spec.vertical) {\n style[\"top\"] = spec.left;\n } else {\n style[\"left\"] = spec.left;\n }\n }\n if (spec.fade) style = {\n opacity: 1\n };\n if (trackWidth) style.width = trackWidth;\n if (trackHeight) style.height = trackHeight;\n\n // Fallback for IE8\n if (window && !window.addEventListener && window.attachEvent) {\n if (!spec.vertical) {\n style.marginLeft = spec.left + \"px\";\n } else {\n style.marginTop = spec.left + \"px\";\n }\n }\n return style;\n};\nvar getTrackAnimateCSS = exports.getTrackAnimateCSS = function getTrackAnimateCSS(spec) {\n checkSpecKeys(spec, [\"left\", \"variableWidth\", \"slideCount\", \"slidesToShow\", \"slideWidth\", \"speed\", \"cssEase\"]);\n var style = getTrackCSS(spec);\n // useCSS is true by default so it can be undefined\n if (spec.useTransform) {\n style.WebkitTransition = \"-webkit-transform \" + spec.speed + \"ms \" + spec.cssEase;\n style.transition = \"transform \" + spec.speed + \"ms \" + spec.cssEase;\n } else {\n if (spec.vertical) {\n style.transition = \"top \" + spec.speed + \"ms \" + spec.cssEase;\n } else {\n style.transition = \"left \" + spec.speed + \"ms \" + spec.cssEase;\n }\n }\n return style;\n};\nvar getTrackLeft = exports.getTrackLeft = function getTrackLeft(spec) {\n if (spec.unslick) {\n return 0;\n }\n checkSpecKeys(spec, [\"slideIndex\", \"trackRef\", \"infinite\", \"centerMode\", \"slideCount\", \"slidesToShow\", \"slidesToScroll\", \"slideWidth\", \"listWidth\", \"variableWidth\", \"slideHeight\"]);\n var slideIndex = spec.slideIndex,\n trackRef = spec.trackRef,\n infinite = spec.infinite,\n centerMode = spec.centerMode,\n slideCount = spec.slideCount,\n slidesToShow = spec.slidesToShow,\n slidesToScroll = spec.slidesToScroll,\n slideWidth = spec.slideWidth,\n listWidth = spec.listWidth,\n variableWidth = spec.variableWidth,\n slideHeight = spec.slideHeight,\n fade = spec.fade,\n vertical = spec.vertical;\n var slideOffset = 0;\n var targetLeft;\n var targetSlide;\n var verticalOffset = 0;\n if (fade || spec.slideCount === 1) {\n return 0;\n }\n var slidesToOffset = 0;\n if (infinite) {\n slidesToOffset = -getPreClones(spec); // bring active slide to the beginning of visual area\n // if next scroll doesn't have enough children, just reach till the end of original slides instead of shifting slidesToScroll children\n if (slideCount % slidesToScroll !== 0 && slideIndex + slidesToScroll > slideCount) {\n slidesToOffset = -(slideIndex > slideCount ? slidesToShow - (slideIndex - slideCount) : slideCount % slidesToScroll);\n }\n // shift current slide to center of the frame\n if (centerMode) {\n slidesToOffset += parseInt(slidesToShow / 2);\n }\n } else {\n if (slideCount % slidesToScroll !== 0 && slideIndex + slidesToScroll > slideCount) {\n slidesToOffset = slidesToShow - slideCount % slidesToScroll;\n }\n if (centerMode) {\n slidesToOffset = parseInt(slidesToShow / 2);\n }\n }\n slideOffset = slidesToOffset * slideWidth;\n verticalOffset = slidesToOffset * slideHeight;\n if (!vertical) {\n targetLeft = slideIndex * slideWidth * -1 + slideOffset;\n } else {\n targetLeft = slideIndex * slideHeight * -1 + verticalOffset;\n }\n if (variableWidth === true) {\n var targetSlideIndex;\n var trackElem = trackRef && trackRef.node;\n targetSlideIndex = slideIndex + getPreClones(spec);\n targetSlide = trackElem && trackElem.childNodes[targetSlideIndex];\n targetLeft = targetSlide ? targetSlide.offsetLeft * -1 : 0;\n if (centerMode === true) {\n targetSlideIndex = infinite ? slideIndex + getPreClones(spec) : slideIndex;\n targetSlide = trackElem && trackElem.children[targetSlideIndex];\n targetLeft = 0;\n for (var slide = 0; slide < targetSlideIndex; slide++) {\n targetLeft -= trackElem && trackElem.children[slide] && trackElem.children[slide].offsetWidth;\n }\n targetLeft -= parseInt(spec.centerPadding);\n targetLeft += targetSlide && (listWidth - targetSlide.offsetWidth) / 2;\n }\n }\n return targetLeft;\n};\nvar getPreClones = exports.getPreClones = function getPreClones(spec) {\n if (spec.unslick || !spec.infinite) {\n return 0;\n }\n if (spec.variableWidth) {\n return spec.slideCount;\n }\n return spec.slidesToShow + (spec.centerMode ? 1 : 0);\n};\nvar getPostClones = exports.getPostClones = function getPostClones(spec) {\n if (spec.unslick || !spec.infinite) {\n return 0;\n }\n return spec.slideCount;\n};\nvar getTotalSlides = exports.getTotalSlides = function getTotalSlides(spec) {\n return spec.slideCount === 1 ? 1 : getPreClones(spec) + spec.slideCount + getPostClones(spec);\n};\nvar siblingDirection = exports.siblingDirection = function siblingDirection(spec) {\n if (spec.targetSlide > spec.currentSlide) {\n if (spec.targetSlide > spec.currentSlide + slidesOnRight(spec)) {\n return \"left\";\n }\n return \"right\";\n } else {\n if (spec.targetSlide < spec.currentSlide - slidesOnLeft(spec)) {\n return \"right\";\n }\n return \"left\";\n }\n};\nvar slidesOnRight = exports.slidesOnRight = function slidesOnRight(_ref) {\n var slidesToShow = _ref.slidesToShow,\n centerMode = _ref.centerMode,\n rtl = _ref.rtl,\n centerPadding = _ref.centerPadding;\n // returns no of slides on the right of active slide\n if (centerMode) {\n var right = (slidesToShow - 1) / 2 + 1;\n if (parseInt(centerPadding) > 0) right += 1;\n if (rtl && slidesToShow % 2 === 0) right += 1;\n return right;\n }\n if (rtl) {\n return 0;\n }\n return slidesToShow - 1;\n};\nvar slidesOnLeft = exports.slidesOnLeft = function slidesOnLeft(_ref2) {\n var slidesToShow = _ref2.slidesToShow,\n centerMode = _ref2.centerMode,\n rtl = _ref2.rtl,\n centerPadding = _ref2.centerPadding;\n // returns no of slides on the left of active slide\n if (centerMode) {\n var left = (slidesToShow - 1) / 2 + 1;\n if (parseInt(centerPadding) > 0) left += 1;\n if (!rtl && slidesToShow % 2 === 0) left += 1;\n return left;\n }\n if (rtl) {\n return slidesToShow - 1;\n }\n return 0;\n};\nvar canUseDOM = exports.canUseDOM = function canUseDOM() {\n return !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\n};\nvar validSettings = exports.validSettings = Object.keys(_defaultProps[\"default\"]);\nfunction filterSettings(settings) {\n return validSettings.reduce(function (acc, settingName) {\n if (settings.hasOwnProperty(settingName)) {\n acc[settingName] = settings[settingName];\n }\n return acc;\n }, {});\n}","/**\n * @license React\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),k=Symbol.for(\"react.element\"),l=Symbol.for(\"react.fragment\"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=\"\"+g);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q;\n","/**\n * @license React\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p=Symbol.for(\"react.fragment\"),q=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v=Symbol.for(\"react.forward_ref\"),w=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];c.children=f}if(a&&a.defaultProps)for(d in g=a.defaultProps,g)void 0===c[d]&&(c[d]=g[d]);return{$$typeof:l,type:a,key:k,ref:h,props:c,_owner:K.current}}\nfunction N(a,b){return{$$typeof:l,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function O(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===l}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var P=/\\/+/g;function Q(a,b){return\"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction R(a,b,e,d,c){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case l:case n:h=!0}}if(h)return h=a,c=c(h),a=\"\"===d?\".\"+Q(h,0):d,I(c)?(e=\"\",null!=a&&(e=a.replace(P,\"$&/\")+\"/\"),R(c,b,e,\"\",function(a){return a})):null!=c&&(O(c)&&(c=N(c,e+(!c.key||h&&h.key===c.key?\"\":(\"\"+c.key).replace(P,\"$&/\")+\"/\")+a)),b.push(c)),1;h=0;d=\"\"===d?\".\":d+\":\";if(I(a))for(var g=0;g<a.length;g++){k=\na[g];var f=d+Q(k,g);h+=R(k,b,e,f,c)}else if(f=A(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=d+Q(k,g++),h+=R(k,b,e,f,c);else if(\"object\"===k)throw b=String(a),Error(\"Objects are not valid as a React child (found: \"+(\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b)+\"). If you meant to render a collection of children, use an array instead.\");return h}\nfunction S(a,b,e){if(null==a)return a;var d=[],c=0;R(a,d,\"\",\"\",function(a){return b.call(e,a,c++)});return d}function T(a){if(-1===a._status){var b=a._result;b=b();b.then(function(b){if(0===a._status||-1===a._status)a._status=1,a._result=b},function(b){if(0===a._status||-1===a._status)a._status=2,a._result=b});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}\nvar U={current:null},V={transition:null},W={ReactCurrentDispatcher:U,ReactCurrentBatchConfig:V,ReactCurrentOwner:K};function X(){throw Error(\"act(...) is not supported in production builds of React.\");}\nexports.Children={map:S,forEach:function(a,b,e){S(a,function(){b.apply(this,arguments)},e)},count:function(a){var b=0;S(a,function(){b++});return b},toArray:function(a){return S(a,function(a){return a})||[]},only:function(a){if(!O(a))throw Error(\"React.Children.only expected to receive a single React element child.\");return a}};exports.Component=E;exports.Fragment=p;exports.Profiler=r;exports.PureComponent=G;exports.StrictMode=q;exports.Suspense=w;\nexports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W;exports.act=X;\nexports.cloneElement=function(a,b,e){if(null===a||void 0===a)throw Error(\"React.cloneElement(...): The argument must be a React element, but you passed \"+a+\".\");var d=C({},a.props),c=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=K.current);void 0!==b.key&&(c=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)J.call(b,f)&&!L.hasOwnProperty(f)&&(d[f]=void 0===b[f]&&void 0!==g?g[f]:b[f])}var f=arguments.length-2;if(1===f)d.children=e;else if(1<f){g=Array(f);\nfor(var m=0;m<f;m++)g[m]=arguments[m+2];d.children=g}return{$$typeof:l,type:a.type,key:c,ref:k,props:d,_owner:h}};exports.createContext=function(a){a={$$typeof:u,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};a.Provider={$$typeof:t,_context:a};return a.Consumer=a};exports.createElement=M;exports.createFactory=function(a){var b=M.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};\nexports.forwardRef=function(a){return{$$typeof:v,render:a}};exports.isValidElement=O;exports.lazy=function(a){return{$$typeof:y,_payload:{_status:-1,_result:a},_init:T}};exports.memo=function(a,b){return{$$typeof:x,type:a,compare:void 0===b?null:b}};exports.startTransition=function(a){var b=V.transition;V.transition={};try{a()}finally{V.transition=b}};exports.unstable_act=X;exports.useCallback=function(a,b){return U.current.useCallback(a,b)};exports.useContext=function(a){return U.current.useContext(a)};\nexports.useDebugValue=function(){};exports.useDeferredValue=function(a){return U.current.useDeferredValue(a)};exports.useEffect=function(a,b){return U.current.useEffect(a,b)};exports.useId=function(){return U.current.useId()};exports.useImperativeHandle=function(a,b,e){return U.current.useImperativeHandle(a,b,e)};exports.useInsertionEffect=function(a,b){return U.current.useInsertionEffect(a,b)};exports.useLayoutEffect=function(a,b){return U.current.useLayoutEffect(a,b)};\nexports.useMemo=function(a,b){return U.current.useMemo(a,b)};exports.useReducer=function(a,b,e){return U.current.useReducer(a,b,e)};exports.useRef=function(a){return U.current.useRef(a)};exports.useState=function(a){return U.current.useState(a)};exports.useSyncExternalStore=function(a,b,e){return U.current.useSyncExternalStore(a,b,e)};exports.useTransition=function(){return U.current.useTransition()};exports.version=\"18.3.1\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","/**\r\n * A collection of shims that provide minimal functionality of the ES6 collections.\r\n *\r\n * These implementations are not meant to be used outside of the ResizeObserver\r\n * modules as they cover only a limited range of use cases.\r\n */\r\n/* eslint-disable require-jsdoc, valid-jsdoc */\r\nvar MapShim = (function () {\r\n if (typeof Map !== 'undefined') {\r\n return Map;\r\n }\r\n /**\r\n * Returns index in provided array that matches the specified key.\r\n *\r\n * @param {Array<Array>} arr\r\n * @param {*} key\r\n * @returns {number}\r\n */\r\n function getIndex(arr, key) {\r\n var result = -1;\r\n arr.some(function (entry, index) {\r\n if (entry[0] === key) {\r\n result = index;\r\n return true;\r\n }\r\n return false;\r\n });\r\n return result;\r\n }\r\n return /** @class */ (function () {\r\n function class_1() {\r\n this.__entries__ = [];\r\n }\r\n Object.defineProperty(class_1.prototype, \"size\", {\r\n /**\r\n * @returns {boolean}\r\n */\r\n get: function () {\r\n return this.__entries__.length;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * @param {*} key\r\n * @returns {*}\r\n */\r\n class_1.prototype.get = function (key) {\r\n var index = getIndex(this.__entries__, key);\r\n var entry = this.__entries__[index];\r\n return entry && entry[1];\r\n };\r\n /**\r\n * @param {*} key\r\n * @param {*} value\r\n * @returns {void}\r\n */\r\n class_1.prototype.set = function (key, value) {\r\n var index = getIndex(this.__entries__, key);\r\n if (~index) {\r\n this.__entries__[index][1] = value;\r\n }\r\n else {\r\n this.__entries__.push([key, value]);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.delete = function (key) {\r\n var entries = this.__entries__;\r\n var index = getIndex(entries, key);\r\n if (~index) {\r\n entries.splice(index, 1);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.has = function (key) {\r\n return !!~getIndex(this.__entries__, key);\r\n };\r\n /**\r\n * @returns {void}\r\n */\r\n class_1.prototype.clear = function () {\r\n this.__entries__.splice(0);\r\n };\r\n /**\r\n * @param {Function} callback\r\n * @param {*} [ctx=null]\r\n * @returns {void}\r\n */\r\n class_1.prototype.forEach = function (callback, ctx) {\r\n if (ctx === void 0) { ctx = null; }\r\n for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {\r\n var entry = _a[_i];\r\n callback.call(ctx, entry[1], entry[0]);\r\n }\r\n };\r\n return class_1;\r\n }());\r\n})();\n\n/**\r\n * Detects whether window and document objects are available in current environment.\r\n */\r\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;\n\n// Returns global object of a current environment.\r\nvar global$1 = (function () {\r\n if (typeof global !== 'undefined' && global.Math === Math) {\r\n return global;\r\n }\r\n if (typeof self !== 'undefined' && self.Math === Math) {\r\n return self;\r\n }\r\n if (typeof window !== 'undefined' && window.Math === Math) {\r\n return window;\r\n }\r\n // eslint-disable-next-line no-new-func\r\n return Function('return this')();\r\n})();\n\n/**\r\n * A shim for the requestAnimationFrame which falls back to the setTimeout if\r\n * first one is not supported.\r\n *\r\n * @returns {number} Requests' identifier.\r\n */\r\nvar requestAnimationFrame$1 = (function () {\r\n if (typeof requestAnimationFrame === 'function') {\r\n // It's required to use a bounded function because IE sometimes throws\r\n // an \"Invalid calling object\" error if rAF is invoked without the global\r\n // object on the left hand side.\r\n return requestAnimationFrame.bind(global$1);\r\n }\r\n return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };\r\n})();\n\n// Defines minimum timeout before adding a trailing call.\r\nvar trailingTimeout = 2;\r\n/**\r\n * Creates a wrapper function which ensures that provided callback will be\r\n * invoked only once during the specified delay period.\r\n *\r\n * @param {Function} callback - Function to be invoked after the delay period.\r\n * @param {number} delay - Delay after which to invoke callback.\r\n * @returns {Function}\r\n */\r\nfunction throttle (callback, delay) {\r\n var leadingCall = false, trailingCall = false, lastCallTime = 0;\r\n /**\r\n * Invokes the original callback function and schedules new invocation if\r\n * the \"proxy\" was called during current request.\r\n *\r\n * @returns {void}\r\n */\r\n function resolvePending() {\r\n if (leadingCall) {\r\n leadingCall = false;\r\n callback();\r\n }\r\n if (trailingCall) {\r\n proxy();\r\n }\r\n }\r\n /**\r\n * Callback invoked after the specified delay. It will further postpone\r\n * invocation of the original function delegating it to the\r\n * requestAnimationFrame.\r\n *\r\n * @returns {void}\r\n */\r\n function timeoutCallback() {\r\n requestAnimationFrame$1(resolvePending);\r\n }\r\n /**\r\n * Schedules invocation of the original function.\r\n *\r\n * @returns {void}\r\n */\r\n function proxy() {\r\n var timeStamp = Date.now();\r\n if (leadingCall) {\r\n // Reject immediately following calls.\r\n if (timeStamp - lastCallTime < trailingTimeout) {\r\n return;\r\n }\r\n // Schedule new call to be in invoked when the pending one is resolved.\r\n // This is important for \"transitions\" which never actually start\r\n // immediately so there is a chance that we might miss one if change\r\n // happens amids the pending invocation.\r\n trailingCall = true;\r\n }\r\n else {\r\n leadingCall = true;\r\n trailingCall = false;\r\n setTimeout(timeoutCallback, delay);\r\n }\r\n lastCallTime = timeStamp;\r\n }\r\n return proxy;\r\n}\n\n// Minimum delay before invoking the update of observers.\r\nvar REFRESH_DELAY = 20;\r\n// A list of substrings of CSS properties used to find transition events that\r\n// might affect dimensions of observed elements.\r\nvar transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];\r\n// Check if MutationObserver is available.\r\nvar mutationObserverSupported = typeof MutationObserver !== 'undefined';\r\n/**\r\n * Singleton controller class which handles updates of ResizeObserver instances.\r\n */\r\nvar ResizeObserverController = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserverController.\r\n *\r\n * @private\r\n */\r\n function ResizeObserverController() {\r\n /**\r\n * Indicates whether DOM listeners have been added.\r\n *\r\n * @private {boolean}\r\n */\r\n this.connected_ = false;\r\n /**\r\n * Tells that controller has subscribed for Mutation Events.\r\n *\r\n * @private {boolean}\r\n */\r\n this.mutationEventsAdded_ = false;\r\n /**\r\n * Keeps reference to the instance of MutationObserver.\r\n *\r\n * @private {MutationObserver}\r\n */\r\n this.mutationsObserver_ = null;\r\n /**\r\n * A list of connected observers.\r\n *\r\n * @private {Array<ResizeObserverSPI>}\r\n */\r\n this.observers_ = [];\r\n this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);\r\n this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);\r\n }\r\n /**\r\n * Adds observer to observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be added.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.addObserver = function (observer) {\r\n if (!~this.observers_.indexOf(observer)) {\r\n this.observers_.push(observer);\r\n }\r\n // Add listeners if they haven't been added yet.\r\n if (!this.connected_) {\r\n this.connect_();\r\n }\r\n };\r\n /**\r\n * Removes observer from observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be removed.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.removeObserver = function (observer) {\r\n var observers = this.observers_;\r\n var index = observers.indexOf(observer);\r\n // Remove observer if it's present in registry.\r\n if (~index) {\r\n observers.splice(index, 1);\r\n }\r\n // Remove listeners if controller has no connected observers.\r\n if (!observers.length && this.connected_) {\r\n this.disconnect_();\r\n }\r\n };\r\n /**\r\n * Invokes the update of observers. It will continue running updates insofar\r\n * it detects changes.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.refresh = function () {\r\n var changesDetected = this.updateObservers_();\r\n // Continue running updates if changes have been detected as there might\r\n // be future ones caused by CSS transitions.\r\n if (changesDetected) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Updates every observer from observers list and notifies them of queued\r\n * entries.\r\n *\r\n * @private\r\n * @returns {boolean} Returns \"true\" if any observer has detected changes in\r\n * dimensions of it's elements.\r\n */\r\n ResizeObserverController.prototype.updateObservers_ = function () {\r\n // Collect observers that have active observations.\r\n var activeObservers = this.observers_.filter(function (observer) {\r\n return observer.gatherActive(), observer.hasActive();\r\n });\r\n // Deliver notifications in a separate cycle in order to avoid any\r\n // collisions between observers, e.g. when multiple instances of\r\n // ResizeObserver are tracking the same element and the callback of one\r\n // of them changes content dimensions of the observed target. Sometimes\r\n // this may result in notifications being blocked for the rest of observers.\r\n activeObservers.forEach(function (observer) { return observer.broadcastActive(); });\r\n return activeObservers.length > 0;\r\n };\r\n /**\r\n * Initializes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.connect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already added.\r\n if (!isBrowser || this.connected_) {\r\n return;\r\n }\r\n // Subscription to the \"Transitionend\" event is used as a workaround for\r\n // delayed transitions. This way it's possible to capture at least the\r\n // final state of an element.\r\n document.addEventListener('transitionend', this.onTransitionEnd_);\r\n window.addEventListener('resize', this.refresh);\r\n if (mutationObserverSupported) {\r\n this.mutationsObserver_ = new MutationObserver(this.refresh);\r\n this.mutationsObserver_.observe(document, {\r\n attributes: true,\r\n childList: true,\r\n characterData: true,\r\n subtree: true\r\n });\r\n }\r\n else {\r\n document.addEventListener('DOMSubtreeModified', this.refresh);\r\n this.mutationEventsAdded_ = true;\r\n }\r\n this.connected_ = true;\r\n };\r\n /**\r\n * Removes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.disconnect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already removed.\r\n if (!isBrowser || !this.connected_) {\r\n return;\r\n }\r\n document.removeEventListener('transitionend', this.onTransitionEnd_);\r\n window.removeEventListener('resize', this.refresh);\r\n if (this.mutationsObserver_) {\r\n this.mutationsObserver_.disconnect();\r\n }\r\n if (this.mutationEventsAdded_) {\r\n document.removeEventListener('DOMSubtreeModified', this.refresh);\r\n }\r\n this.mutationsObserver_ = null;\r\n this.mutationEventsAdded_ = false;\r\n this.connected_ = false;\r\n };\r\n /**\r\n * \"Transitionend\" event handler.\r\n *\r\n * @private\r\n * @param {TransitionEvent} event\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {\r\n var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;\r\n // Detect whether transition may affect dimensions of an element.\r\n var isReflowProperty = transitionKeys.some(function (key) {\r\n return !!~propertyName.indexOf(key);\r\n });\r\n if (isReflowProperty) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Returns instance of the ResizeObserverController.\r\n *\r\n * @returns {ResizeObserverController}\r\n */\r\n ResizeObserverController.getInstance = function () {\r\n if (!this.instance_) {\r\n this.instance_ = new ResizeObserverController();\r\n }\r\n return this.instance_;\r\n };\r\n /**\r\n * Holds reference to the controller's instance.\r\n *\r\n * @private {ResizeObserverController}\r\n */\r\n ResizeObserverController.instance_ = null;\r\n return ResizeObserverController;\r\n}());\n\n/**\r\n * Defines non-writable/enumerable properties of the provided target object.\r\n *\r\n * @param {Object} target - Object for which to define properties.\r\n * @param {Object} props - Properties to be defined.\r\n * @returns {Object} Target object.\r\n */\r\nvar defineConfigurable = (function (target, props) {\r\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n Object.defineProperty(target, key, {\r\n value: props[key],\r\n enumerable: false,\r\n writable: false,\r\n configurable: true\r\n });\r\n }\r\n return target;\r\n});\n\n/**\r\n * Returns the global object associated with provided element.\r\n *\r\n * @param {Object} target\r\n * @returns {Object}\r\n */\r\nvar getWindowOf = (function (target) {\r\n // Assume that the element is an instance of Node, which means that it\r\n // has the \"ownerDocument\" property from which we can retrieve a\r\n // corresponding global object.\r\n var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;\r\n // Return the local global object if it's not possible extract one from\r\n // provided element.\r\n return ownerGlobal || global$1;\r\n});\n\n// Placeholder of an empty content rectangle.\r\nvar emptyRect = createRectInit(0, 0, 0, 0);\r\n/**\r\n * Converts provided string to a number.\r\n *\r\n * @param {number|string} value\r\n * @returns {number}\r\n */\r\nfunction toFloat(value) {\r\n return parseFloat(value) || 0;\r\n}\r\n/**\r\n * Extracts borders size from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @param {...string} positions - Borders positions (top, right, ...)\r\n * @returns {number}\r\n */\r\nfunction getBordersSize(styles) {\r\n var positions = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n positions[_i - 1] = arguments[_i];\r\n }\r\n return positions.reduce(function (size, position) {\r\n var value = styles['border-' + position + '-width'];\r\n return size + toFloat(value);\r\n }, 0);\r\n}\r\n/**\r\n * Extracts paddings sizes from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @returns {Object} Paddings box.\r\n */\r\nfunction getPaddings(styles) {\r\n var positions = ['top', 'right', 'bottom', 'left'];\r\n var paddings = {};\r\n for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {\r\n var position = positions_1[_i];\r\n var value = styles['padding-' + position];\r\n paddings[position] = toFloat(value);\r\n }\r\n return paddings;\r\n}\r\n/**\r\n * Calculates content rectangle of provided SVG element.\r\n *\r\n * @param {SVGGraphicsElement} target - Element content rectangle of which needs\r\n * to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getSVGContentRect(target) {\r\n var bbox = target.getBBox();\r\n return createRectInit(0, 0, bbox.width, bbox.height);\r\n}\r\n/**\r\n * Calculates content rectangle of provided HTMLElement.\r\n *\r\n * @param {HTMLElement} target - Element for which to calculate the content rectangle.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getHTMLElementContentRect(target) {\r\n // Client width & height properties can't be\r\n // used exclusively as they provide rounded values.\r\n var clientWidth = target.clientWidth, clientHeight = target.clientHeight;\r\n // By this condition we can catch all non-replaced inline, hidden and\r\n // detached elements. Though elements with width & height properties less\r\n // than 0.5 will be discarded as well.\r\n //\r\n // Without it we would need to implement separate methods for each of\r\n // those cases and it's not possible to perform a precise and performance\r\n // effective test for hidden elements. E.g. even jQuery's ':visible' filter\r\n // gives wrong results for elements with width & height less than 0.5.\r\n if (!clientWidth && !clientHeight) {\r\n return emptyRect;\r\n }\r\n var styles = getWindowOf(target).getComputedStyle(target);\r\n var paddings = getPaddings(styles);\r\n var horizPad = paddings.left + paddings.right;\r\n var vertPad = paddings.top + paddings.bottom;\r\n // Computed styles of width & height are being used because they are the\r\n // only dimensions available to JS that contain non-rounded values. It could\r\n // be possible to utilize the getBoundingClientRect if only it's data wasn't\r\n // affected by CSS transformations let alone paddings, borders and scroll bars.\r\n var width = toFloat(styles.width), height = toFloat(styles.height);\r\n // Width & height include paddings and borders when the 'border-box' box\r\n // model is applied (except for IE).\r\n if (styles.boxSizing === 'border-box') {\r\n // Following conditions are required to handle Internet Explorer which\r\n // doesn't include paddings and borders to computed CSS dimensions.\r\n //\r\n // We can say that if CSS dimensions + paddings are equal to the \"client\"\r\n // properties then it's either IE, and thus we don't need to subtract\r\n // anything, or an element merely doesn't have paddings/borders styles.\r\n if (Math.round(width + horizPad) !== clientWidth) {\r\n width -= getBordersSize(styles, 'left', 'right') + horizPad;\r\n }\r\n if (Math.round(height + vertPad) !== clientHeight) {\r\n height -= getBordersSize(styles, 'top', 'bottom') + vertPad;\r\n }\r\n }\r\n // Following steps can't be applied to the document's root element as its\r\n // client[Width/Height] properties represent viewport area of the window.\r\n // Besides, it's as well not necessary as the <html> itself neither has\r\n // rendered scroll bars nor it can be clipped.\r\n if (!isDocumentElement(target)) {\r\n // In some browsers (only in Firefox, actually) CSS width & height\r\n // include scroll bars size which can be removed at this step as scroll\r\n // bars are the only difference between rounded dimensions + paddings\r\n // and \"client\" properties, though that is not always true in Chrome.\r\n var vertScrollbar = Math.round(width + horizPad) - clientWidth;\r\n var horizScrollbar = Math.round(height + vertPad) - clientHeight;\r\n // Chrome has a rather weird rounding of \"client\" properties.\r\n // E.g. for an element with content width of 314.2px it sometimes gives\r\n // the client width of 315px and for the width of 314.7px it may give\r\n // 314px. And it doesn't happen all the time. So just ignore this delta\r\n // as a non-relevant.\r\n if (Math.abs(vertScrollbar) !== 1) {\r\n width -= vertScrollbar;\r\n }\r\n if (Math.abs(horizScrollbar) !== 1) {\r\n height -= horizScrollbar;\r\n }\r\n }\r\n return createRectInit(paddings.left, paddings.top, width, height);\r\n}\r\n/**\r\n * Checks whether provided element is an instance of the SVGGraphicsElement.\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nvar isSVGGraphicsElement = (function () {\r\n // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement\r\n // interface.\r\n if (typeof SVGGraphicsElement !== 'undefined') {\r\n return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };\r\n }\r\n // If it's so, then check that element is at least an instance of the\r\n // SVGElement and that it has the \"getBBox\" method.\r\n // eslint-disable-next-line no-extra-parens\r\n return function (target) { return (target instanceof getWindowOf(target).SVGElement &&\r\n typeof target.getBBox === 'function'); };\r\n})();\r\n/**\r\n * Checks whether provided element is a document element (<html>).\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nfunction isDocumentElement(target) {\r\n return target === getWindowOf(target).document.documentElement;\r\n}\r\n/**\r\n * Calculates an appropriate content rectangle for provided html or svg element.\r\n *\r\n * @param {Element} target - Element content rectangle of which needs to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getContentRect(target) {\r\n if (!isBrowser) {\r\n return emptyRect;\r\n }\r\n if (isSVGGraphicsElement(target)) {\r\n return getSVGContentRect(target);\r\n }\r\n return getHTMLElementContentRect(target);\r\n}\r\n/**\r\n * Creates rectangle with an interface of the DOMRectReadOnly.\r\n * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly\r\n *\r\n * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.\r\n * @returns {DOMRectReadOnly}\r\n */\r\nfunction createReadOnlyRect(_a) {\r\n var x = _a.x, y = _a.y, width = _a.width, height = _a.height;\r\n // If DOMRectReadOnly is available use it as a prototype for the rectangle.\r\n var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;\r\n var rect = Object.create(Constr.prototype);\r\n // Rectangle's properties are not writable and non-enumerable.\r\n defineConfigurable(rect, {\r\n x: x, y: y, width: width, height: height,\r\n top: y,\r\n right: x + width,\r\n bottom: height + y,\r\n left: x\r\n });\r\n return rect;\r\n}\r\n/**\r\n * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.\r\n * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit\r\n *\r\n * @param {number} x - X coordinate.\r\n * @param {number} y - Y coordinate.\r\n * @param {number} width - Rectangle's width.\r\n * @param {number} height - Rectangle's height.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction createRectInit(x, y, width, height) {\r\n return { x: x, y: y, width: width, height: height };\r\n}\n\n/**\r\n * Class that is responsible for computations of the content rectangle of\r\n * provided DOM element and for keeping track of it's changes.\r\n */\r\nvar ResizeObservation = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObservation.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n */\r\n function ResizeObservation(target) {\r\n /**\r\n * Broadcasted width of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastWidth = 0;\r\n /**\r\n * Broadcasted height of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastHeight = 0;\r\n /**\r\n * Reference to the last observed content rectangle.\r\n *\r\n * @private {DOMRectInit}\r\n */\r\n this.contentRect_ = createRectInit(0, 0, 0, 0);\r\n this.target = target;\r\n }\r\n /**\r\n * Updates content rectangle and tells whether it's width or height properties\r\n * have changed since the last broadcast.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObservation.prototype.isActive = function () {\r\n var rect = getContentRect(this.target);\r\n this.contentRect_ = rect;\r\n return (rect.width !== this.broadcastWidth ||\r\n rect.height !== this.broadcastHeight);\r\n };\r\n /**\r\n * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data\r\n * from the corresponding properties of the last observed content rectangle.\r\n *\r\n * @returns {DOMRectInit} Last observed content rectangle.\r\n */\r\n ResizeObservation.prototype.broadcastRect = function () {\r\n var rect = this.contentRect_;\r\n this.broadcastWidth = rect.width;\r\n this.broadcastHeight = rect.height;\r\n return rect;\r\n };\r\n return ResizeObservation;\r\n}());\n\nvar ResizeObserverEntry = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObserverEntry.\r\n *\r\n * @param {Element} target - Element that is being observed.\r\n * @param {DOMRectInit} rectInit - Data of the element's content rectangle.\r\n */\r\n function ResizeObserverEntry(target, rectInit) {\r\n var contentRect = createReadOnlyRect(rectInit);\r\n // According to the specification following properties are not writable\r\n // and are also not enumerable in the native implementation.\r\n //\r\n // Property accessors are not being used as they'd require to define a\r\n // private WeakMap storage which may cause memory leaks in browsers that\r\n // don't support this type of collections.\r\n defineConfigurable(this, { target: target, contentRect: contentRect });\r\n }\r\n return ResizeObserverEntry;\r\n}());\n\nvar ResizeObserverSPI = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback function that is invoked\r\n * when one of the observed elements changes it's content dimensions.\r\n * @param {ResizeObserverController} controller - Controller instance which\r\n * is responsible for the updates of observer.\r\n * @param {ResizeObserver} callbackCtx - Reference to the public\r\n * ResizeObserver instance which will be passed to callback function.\r\n */\r\n function ResizeObserverSPI(callback, controller, callbackCtx) {\r\n /**\r\n * Collection of resize observations that have detected changes in dimensions\r\n * of elements.\r\n *\r\n * @private {Array<ResizeObservation>}\r\n */\r\n this.activeObservations_ = [];\r\n /**\r\n * Registry of the ResizeObservation instances.\r\n *\r\n * @private {Map<Element, ResizeObservation>}\r\n */\r\n this.observations_ = new MapShim();\r\n if (typeof callback !== 'function') {\r\n throw new TypeError('The callback provided as parameter 1 is not a function.');\r\n }\r\n this.callback_ = callback;\r\n this.controller_ = controller;\r\n this.callbackCtx_ = callbackCtx;\r\n }\r\n /**\r\n * Starts observing provided element.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.observe = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is already being observed.\r\n if (observations.has(target)) {\r\n return;\r\n }\r\n observations.set(target, new ResizeObservation(target));\r\n this.controller_.addObserver(this);\r\n // Force the update of observations.\r\n this.controller_.refresh();\r\n };\r\n /**\r\n * Stops observing provided element.\r\n *\r\n * @param {Element} target - Element to stop observing.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.unobserve = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is not being observed.\r\n if (!observations.has(target)) {\r\n return;\r\n }\r\n observations.delete(target);\r\n if (!observations.size) {\r\n this.controller_.removeObserver(this);\r\n }\r\n };\r\n /**\r\n * Stops observing all elements.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.disconnect = function () {\r\n this.clearActive();\r\n this.observations_.clear();\r\n this.controller_.removeObserver(this);\r\n };\r\n /**\r\n * Collects observation instances the associated element of which has changed\r\n * it's content rectangle.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.gatherActive = function () {\r\n var _this = this;\r\n this.clearActive();\r\n this.observations_.forEach(function (observation) {\r\n if (observation.isActive()) {\r\n _this.activeObservations_.push(observation);\r\n }\r\n });\r\n };\r\n /**\r\n * Invokes initial callback function with a list of ResizeObserverEntry\r\n * instances collected from active resize observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.broadcastActive = function () {\r\n // Do nothing if observer doesn't have active observations.\r\n if (!this.hasActive()) {\r\n return;\r\n }\r\n var ctx = this.callbackCtx_;\r\n // Create ResizeObserverEntry instance for every active observation.\r\n var entries = this.activeObservations_.map(function (observation) {\r\n return new ResizeObserverEntry(observation.target, observation.broadcastRect());\r\n });\r\n this.callback_.call(ctx, entries, ctx);\r\n this.clearActive();\r\n };\r\n /**\r\n * Clears the collection of active observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.clearActive = function () {\r\n this.activeObservations_.splice(0);\r\n };\r\n /**\r\n * Tells whether observer has active observations.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObserverSPI.prototype.hasActive = function () {\r\n return this.activeObservations_.length > 0;\r\n };\r\n return ResizeObserverSPI;\r\n}());\n\n// Registry of internal observers. If WeakMap is not available use current shim\r\n// for the Map collection as it has all required methods and because WeakMap\r\n// can't be fully polyfilled anyway.\r\nvar observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();\r\n/**\r\n * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation\r\n * exposing only those methods and properties that are defined in the spec.\r\n */\r\nvar ResizeObserver = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback that is invoked when\r\n * dimensions of the observed elements change.\r\n */\r\n function ResizeObserver(callback) {\r\n if (!(this instanceof ResizeObserver)) {\r\n throw new TypeError('Cannot call a class as a function.');\r\n }\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n var controller = ResizeObserverController.getInstance();\r\n var observer = new ResizeObserverSPI(callback, controller, this);\r\n observers.set(this, observer);\r\n }\r\n return ResizeObserver;\r\n}());\r\n// Expose public methods of ResizeObserver.\r\n[\r\n 'observe',\r\n 'unobserve',\r\n 'disconnect'\r\n].forEach(function (method) {\r\n ResizeObserver.prototype[method] = function () {\r\n var _a;\r\n return (_a = observers.get(this))[method].apply(_a, arguments);\r\n };\r\n});\n\nvar index = (function () {\r\n // Export existing implementation if available.\r\n if (typeof global$1.ResizeObserver !== 'undefined') {\r\n return global$1.ResizeObserver;\r\n }\r\n return ResizeObserver;\r\n})();\n\nexport default index;\n","/**\n * @license React\n * scheduler.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';function f(a,b){var c=a.length;a.push(b);a:for(;0<c;){var d=c-1>>>1,e=a[d];if(0<g(e,b))a[d]=b,a[c]=e,c=d;else break a}}function h(a){return 0===a.length?null:a[0]}function k(a){if(0===a.length)return null;var b=a[0],c=a.pop();if(c!==b){a[0]=c;a:for(var d=0,e=a.length,w=e>>>1;d<w;){var m=2*(d+1)-1,C=a[m],n=m+1,x=a[n];if(0>g(C,c))n<e&&0>g(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(n<e&&0>g(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Q<P?!1:!0}function R(){if(null!==O){var a=exports.unstable_now();Q=a;var b=!0;try{b=O(!0,a)}finally{b?S():(N=!1,O=null)}}else N=!1}var S;if(\"function\"===typeof F)S=function(){F(R)};else if(\"undefined\"!==typeof MessageChannel){var T=new MessageChannel,U=T.port2;T.port1.onmessage=R;S=function(){U.postMessage(null)}}else S=function(){D(R,0)};function I(a){O=a;N||(N=!0,S())}function K(a,b){L=D(function(){a(exports.unstable_now())},b)}\nexports.unstable_IdlePriority=5;exports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){A||z||(A=!0,I(J))};\nexports.unstable_forceFrameRate=function(a){0>a||125<a?console.error(\"forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported\"):P=0<a?Math.floor(1E3/a):5};exports.unstable_getCurrentPriorityLevel=function(){return y};exports.unstable_getFirstCallbackNode=function(){return h(r)};exports.unstable_next=function(a){switch(y){case 1:case 2:case 3:var b=3;break;default:b=y}var c=y;y=b;try{return a()}finally{y=c}};exports.unstable_pauseExecution=function(){};\nexports.unstable_requestPaint=function(){};exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=y;y=a;try{return b()}finally{y=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();\"object\"===typeof c&&null!==c?(c=c.delay,c=\"number\"===typeof c&&0<c?d+c:d):c=d;switch(a){case 1:var e=-1;break;case 2:e=250;break;case 5:e=1073741823;break;case 4:e=1E4;break;default:e=5E3}e=c+e;a={id:u++,callback:b,priorityLevel:a,startTime:c,expirationTime:e,sortIndex:-1};c>d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","var E_NOSCROLL = new Error('Element already at target scroll position')\nvar E_CANCELLED = new Error('Scroll cancelled')\nvar min = Math.min\nvar ms = Date.now\n\nmodule.exports = {\n left: make('scrollLeft'),\n top: make('scrollTop')\n}\n\nfunction make (prop) {\n return function scroll (el, to, opts, cb) {\n opts = opts || {}\n\n if (typeof opts == 'function') cb = opts, opts = {}\n if (typeof cb != 'function') cb = noop\n\n var start = ms()\n var from = el[prop]\n var ease = opts.ease || inOutSine\n var duration = !isNaN(opts.duration) ? +opts.duration : 350\n var cancelled = false\n\n return from === to ?\n cb(E_NOSCROLL, el[prop]) :\n requestAnimationFrame(animate), cancel\n\n function cancel () {\n cancelled = true\n }\n\n function animate (timestamp) {\n if (cancelled) return cb(E_CANCELLED, el[prop])\n\n var now = ms()\n var time = min(1, ((now - start) / duration))\n var eased = ease(time)\n\n el[prop] = (eased * (to - from)) + from\n\n time < 1 ?\n requestAnimationFrame(animate) :\n requestAnimationFrame(function () {\n cb(null, el[prop])\n })\n }\n }\n}\n\nfunction inOutSine (n) {\n return 0.5 * (1 - Math.cos(Math.PI * n))\n}\n\nfunction noop () {}\n","(function (root, factory) {\n if (typeof define === \"function\" && define.amd) {\n define([], factory);\n } else if (typeof module === \"object\" && module.exports) {\n module.exports = factory();\n } else {\n root.Scrollparent = factory();\n }\n}(this, function () {\n function isScrolling(node) {\n var overflow = getComputedStyle(node, null).getPropertyValue(\"overflow\");\n\n return overflow.indexOf(\"scroll\") > -1 || overflow.indexOf(\"auto\") > - 1;\n }\n\n function scrollParent(node) {\n if (!(node instanceof HTMLElement || node instanceof SVGElement)) {\n return undefined;\n }\n\n var current = node.parentNode;\n while (current.parentNode) {\n if (isScrolling(current)) {\n return current;\n }\n\n current = current.parentNode;\n }\n\n return document.scrollingElement || document.documentElement;\n }\n\n return scrollParent;\n}));","//\n\nmodule.exports = function shallowEqual(objA, objB, compare, compareContext) {\n var ret = compare ? compare.call(compareContext, objA, objB) : void 0;\n\n if (ret !== void 0) {\n return !!ret;\n }\n\n if (objA === objB) {\n return true;\n }\n\n if (typeof objA !== \"object\" || !objA || typeof objB !== \"object\" || !objB) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);\n\n // Test for A's keys different from B.\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n\n if (!bHasOwnProperty(key)) {\n return false;\n }\n\n var valueA = objA[key];\n var valueB = objB[key];\n\n ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n\n if (ret === false || (ret === void 0 && valueA !== valueB)) {\n return false;\n }\n }\n\n return true;\n};\n","var camel2hyphen = function (str) {\n return str\n .replace(/[A-Z]/g, function (match) {\n return '-' + match.toLowerCase();\n })\n .toLowerCase();\n};\n\nmodule.exports = camel2hyphen;","/*\n * Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\"). You may not use this file except in compliance with\n * the License. A copy of the License is located at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions\n * and limitations under the License.\n */\n\nvar _ = require('./es6_');\n\n/**\n * Performs an deep extend on the objects, from right to left.\n * @private\n * @param {Object[]} objects - An array of JS objects\n * @param {Function} collision - A function to be called when a merge collision happens.\n * @param {string[]} path - (for internal use) An array of strings which is the current path down the object when this is called recursively.\n * @returns {Object}\n */\nfunction deepExtend(objects, collision, path) {\n if (objects == null)\n return {};\n\n var src, copyIsArray, copy, name, options, clone,\n target = objects[0] || {},\n i = 1,\n length = objects.length;\n\n path = path || [];\n\n // Handle case when target is a string or something (possible in deep copy)\n if ( typeof target !== 'object' ) {\n target = {};\n }\n\n for ( ; i < length; i++) {\n // Only deal with non-null/undefined values\n if ( (options = objects[ i ]) != null ) {\n // Extend the base object\n for (name in options) {\n if (!options.hasOwnProperty(name))\n continue;\n if (name === '__proto__')\n continue;\n\n src = target[name];\n copy = options[name];\n\n // Prevent never-ending loop\n if (target === copy) {\n continue;\n }\n\n // Recurse if we're merging plain objects or arrays\n if ( copy && ( _.isPlainObject(copy) || (copyIsArray = _.isArray(copy)) ) ) {\n if ( copyIsArray ) {\n copyIsArray = false;\n clone = src && _.isArray(src) ? src : [];\n } else {\n clone = src && _.isPlainObject(src) ? src : {};\n }\n\n var nextPath = path.slice(0);\n nextPath.push(name);\n\n // Never move original objects, clone them\n target[ name ] = deepExtend( [clone, copy], collision, nextPath );\n\n // Don't bring in undefined values\n } else if ( copy !== undefined ) {\n if (src != null && typeof collision == 'function') {\n collision({target: target, copy: options, path: path, key: name});\n }\n target[ name ] = copy;\n }\n }\n }\n }\n\n return target;\n}\n\nmodule.exports = deepExtend;\n","/*\n * Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\"). You may not use this file except in compliance with\n * the License. A copy of the License is located at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions\n * and limitations under the License.\n */\n\nconst ChangeCase = require('change-case')\n\nconst reduce = function(obj, f, accumulator_init) {\n return Object.keys(obj || {}).reduce((accumulator, key) => {\n let value = obj[key]\n return f(accumulator, value, key, obj)\n }, accumulator_init)\n}\n\nconst forEach = function(obj, f) {\n Object.keys(obj || {}).forEach((key) => {\n let value = obj[key]\n f(value, key)\n });\n}\n\n// Note: This is a crappy version to a certain extent... don't use with Strings, for example...\nconst clone = function(object) {\n return Object.assign(new object.constructor(), object)\n}\n\nconst cloneDeep = function(obj) {\n if(obj === null || obj === undefined || typeof obj !== 'object') {\n return obj\n }\n\n if(obj instanceof Array) {\n return obj.reduce((arr, item, i) => {\n arr[i] = cloneDeep(item)\n return arr\n }, [])\n }\n\n if(obj instanceof Object) {\n return Object.keys(obj || {}).reduce((cpObj, key) => {\n cpObj[key] = cloneDeep(obj[key])\n return cpObj\n }, {})\n }\n}\n\nconst isObject = function(value) {\n const type = typeof value\n return value != null && (type === 'object' || type === 'function')\n}\n\nconst isString = function(obj) {\n return typeof obj === 'string' || obj instanceof String\n}\n\nconst isArray = function(obj) {\n return Array.isArray(obj)\n}\n\nconst isEmpty = function(obj) {\n return [Object, Array].includes((obj || {}).constructor) && !Object.entries((obj || {})).length\n}\n\nfunction isPlainObject(value) {\n if (typeof value !== 'object' || value === null || Object.prototype.toString.call(value) !== '[object Object]') {\n return false\n }\n if (Object.getPrototypeOf(value) === null) {\n return true\n }\n let proto = value\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto)\n }\n return Object.getPrototypeOf(value) === proto\n}\n\nconst filter = function (arr, filter) {\n if (typeof(filter) !== 'function') {\n throw(\"filter is not a function\")\n }\n if (typeof arr === 'undefined') {\n return []\n }\n return arr.filter(filter)\n}\n\nconst assign = function () {\n let args = Array.prototype.slice.call(arguments)\n args.unshift({})\n return Object.assign(...args)\n}\n\n/* global Set */\nconst pull = function (arr, ...removeList){\n var removeSet = new Set(removeList)\n for (let i=arr.length-1;i>=0;i--) {\n if (removeSet.has(arr[i])) {\n arr.splice(i, 1)\n }\n }\n}\n\nconst unique = function (arr){\n return [...new Set(arr)]\n}\n\nconst upperFirst = function (str) {\n return str ? str[0].toUpperCase() + str.substr(1) : ''\n}\n\nconst matchFn = function(inputObj, testObj) {\n if (isObject(testObj)) {\n return Object.keys(testObj).every((key) => matchFn(inputObj[key], testObj[key]))\n }\n else {\n return inputObj == testObj\n }\n}\n\nconst matches = function (matchObj) {\n let cloneObj = cloneDeep(matchObj)\n let matchesFn = (inputObj) => matchFn(inputObj, cloneObj)\n return matchesFn\n}\n\nconst DEFAULT_OPTIONS = {\n transform: ChangeCase.camelCaseTransformMerge\n}\nconst changeDefaultCaseTransform = function (caseFunction, default_options) {\n return (caseToChange, options) => caseFunction(caseToChange, Object.assign({}, DEFAULT_OPTIONS, default_options, options))\n}\n\nmodule.exports = {\n each: forEach,\n forEach: forEach,\n forIn: forEach,\n keys: Object.keys,\n clone: clone,\n cloneDeep: cloneDeep,\n extend: Object.assign,\n isString: isString,\n isArray: isArray,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isEmpty: isEmpty,\n filter: filter,\n reduce: reduce,\n assign: assign,\n upperFirst: upperFirst,\n camelCase: changeDefaultCaseTransform(ChangeCase.camelCase),\n snakeCase: ChangeCase.snakeCase,\n kebabCase: ChangeCase.paramCase,\n pull: pull,\n matches: matches,\n unique: unique,\n}\n","/*\n * Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\"). You may not use this file except in compliance with\n * the License. A copy of the License is located at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions\n * and limitations under the License.\n */\n\nvar _ = require('./es6_');\n\n/**\n * Takes an plain javascript object and will make a flat array of all the leaf nodes.\n * A leaf node in this context has a 'value' property. Potentially refactor this to\n * be more generic.\n * @private\n * @param {Object} properties - The plain object you want flattened into an array.\n * @param {Array} [to_ret=[]] - Properties array. This function is recursive therefore this is what gets passed along.\n * @return {Array}\n */\nfunction flattenProperties(properties, to_ret) {\n to_ret = to_ret || [];\n\n for(var name in properties) {\n if (properties.hasOwnProperty(name)) {\n // TODO: this is a bit fragile and arbitrary to stop when we get to a 'value' property.\n if (_.isPlainObject(properties[name]) && ('value' in properties[name])) {\n to_ret.push( properties[name] );\n } else if (_.isPlainObject(properties[name])) {\n flattenProperties(properties[name], to_ret);\n }\n }\n }\n\n return to_ret;\n}\n\n\nmodule.exports = flattenProperties;\n","/*\n * Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\"). You may not use this file except in compliance with\n * the License. A copy of the License is located at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions\n * and limitations under the License.\n */\n\nconst defaults = require('./defaults');\n\nfunction createReferenceRegex(opts = {}) {\n const options = Object.assign({}, defaults, opts);\n\n return new RegExp(\n '\\\\' +\n options.opening_character +\n '([^' +\n options.closing_character +\n ']+)' +\n '\\\\' +\n options.closing_character, 'g'\n );\n}\n\nmodule.exports = createReferenceRegex;\n","/*\n * Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\"). You may not use this file except in compliance with\n * the License. A copy of the License is located at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions\n * and limitations under the License.\n */\n\nconst defaults = {\n opening_character: '{',\n closing_character: '}',\n separator: '.'\n};\n\nmodule.exports = defaults;\n","/*\n * Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\"). You may not use this file except in compliance with\n * the License. A copy of the License is located at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions\n * and limitations under the License.\n */\n\nconst createRegex = require('./createReferenceRegex');\n\n/**\n * Checks if the value uses a value reference.\n * @memberof Dictionary\n * @param {string} value\n * @param {Object|RegExp} regexOrOptions\n * @returns {boolean} - True, if the value uses a value reference\n */\nfunction usesReference(value, regexOrOptions = {}) {\n const regex = regexOrOptions instanceof RegExp ? regexOrOptions : createRegex(regexOrOptions);\n\n if (typeof value === 'string') {\n return regex.test(value);\n }\n\n if (typeof value === 'object') {\n let hasReference = false;\n // iterate over each property in the object,\n // if any element passes the regex test,\n // the whole thing should be true\n for (const key in value) {\n if (value.hasOwnProperty(key)) {\n const element = value[key];\n let reference = usesReference(element, regexOrOptions);\n if (reference) {\n hasReference = true;\n break;\n }\n }\n }\n return hasReference;\n }\n\n return false;\n}\n\nmodule.exports = usesReference;\n","/**\n * @license React\n * use-sync-external-store-shim.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var e=require(\"react\");function h(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var k=\"function\"===typeof Object.is?Object.is:h,l=e.useState,m=e.useEffect,n=e.useLayoutEffect,p=e.useDebugValue;function q(a,b){var d=b(),f=l({inst:{value:d,getSnapshot:b}}),c=f[0].inst,g=f[1];n(function(){c.value=d;c.getSnapshot=b;r(c)&&g({inst:c})},[a,d,b]);m(function(){r(c)&&g({inst:c});return a(function(){r(c)&&g({inst:c})})},[a]);p(d);return d}\nfunction r(a){var b=a.getSnapshot;a=a.value;try{var d=b();return!k(a,d)}catch(f){return!0}}function t(a,b){return b()}var u=\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement?t:q;exports.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:u;\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var h=require(\"react\"),n=require(\"use-sync-external-store/shim\");function p(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var q=\"function\"===typeof Object.is?Object.is:p,r=n.useSyncExternalStore,t=h.useRef,u=h.useEffect,v=h.useMemo,w=h.useDebugValue;\nexports.useSyncExternalStoreWithSelector=function(a,b,e,l,g){var c=t(null);if(null===c.current){var f={hasValue:!1,value:null};c.current=f}else f=c.current;c=v(function(){function a(a){if(!c){c=!0;d=a;a=l(a);if(void 0!==g&&f.hasValue){var b=f.value;if(g(b,a))return k=b}return k=a}b=k;if(q(d,a))return b;var e=l(a);if(void 0!==g&&g(b,e))return b;d=a;return k=e}var c=!1,d,k,m=void 0===e?null:e;return[function(){return a(b())},null===m?void 0:function(){return a(m())}]},[b,e,l,g]);var d=r(a,c[0],c[1]);\nu(function(){f.hasValue=!0;f.value=d},[d]);w(d);return d};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.min.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.production.min.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));\n\t}\n\tdef['default'] = () => (value);\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","__webpack_require__.nc = undefined;","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Logging constants\nexport const AWS_CLOUDWATCH_CATEGORY = 'Logging';\nexport const USER_AGENT_HEADER = 'x-amz-user-agent';\n// Error exception code constants\nexport const NO_HUBCALLBACK_PROVIDED_EXCEPTION = 'NoHubcallbackProvidedException';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var LogType;\n(function (LogType) {\n LogType[\"DEBUG\"] = \"DEBUG\";\n LogType[\"ERROR\"] = \"ERROR\";\n LogType[\"INFO\"] = \"INFO\";\n LogType[\"WARN\"] = \"WARN\";\n LogType[\"VERBOSE\"] = \"VERBOSE\";\n LogType[\"NONE\"] = \"NONE\";\n})(LogType || (LogType = {}));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AWS_CLOUDWATCH_CATEGORY } from '../constants';\nimport { LogType } from './types';\nconst LOG_LEVELS = {\n VERBOSE: 1,\n DEBUG: 2,\n INFO: 3,\n WARN: 4,\n ERROR: 5,\n NONE: 6,\n};\n/**\n * Write logs\n * @class Logger\n */\nexport class ConsoleLogger {\n /**\n * @constructor\n * @param {string} name - Name of the logger\n */\n constructor(name, level = LogType.WARN) {\n this.name = name;\n this.level = level;\n this._pluggables = [];\n }\n _padding(n) {\n return n < 10 ? '0' + n : '' + n;\n }\n _ts() {\n const dt = new Date();\n return ([this._padding(dt.getMinutes()), this._padding(dt.getSeconds())].join(':') +\n '.' +\n dt.getMilliseconds());\n }\n configure(config) {\n if (!config)\n return this._config;\n this._config = config;\n return this._config;\n }\n /**\n * Write log\n * @method\n * @memeberof Logger\n * @param {LogType|string} type - log type, default INFO\n * @param {string|object} msg - Logging message or object\n */\n _log(type, ...msg) {\n let loggerLevelName = this.level;\n if (ConsoleLogger.LOG_LEVEL) {\n loggerLevelName = ConsoleLogger.LOG_LEVEL;\n }\n if (typeof window !== 'undefined' && window.LOG_LEVEL) {\n loggerLevelName = window.LOG_LEVEL;\n }\n const loggerLevel = LOG_LEVELS[loggerLevelName];\n const typeLevel = LOG_LEVELS[type];\n if (!(typeLevel >= loggerLevel)) {\n // Do nothing if type is not greater than or equal to logger level (handle undefined)\n return;\n }\n let log = console.log.bind(console);\n if (type === LogType.ERROR && console.error) {\n log = console.error.bind(console);\n }\n if (type === LogType.WARN && console.warn) {\n log = console.warn.bind(console);\n }\n if (ConsoleLogger.BIND_ALL_LOG_LEVELS) {\n if (type === LogType.INFO && console.info) {\n log = console.info.bind(console);\n }\n if (type === LogType.DEBUG && console.debug) {\n log = console.debug.bind(console);\n }\n }\n const prefix = `[${type}] ${this._ts()} ${this.name}`;\n let message = '';\n if (msg.length === 1 && typeof msg[0] === 'string') {\n message = `${prefix} - ${msg[0]}`;\n log(message);\n }\n else if (msg.length === 1) {\n message = `${prefix} ${msg[0]}`;\n log(prefix, msg[0]);\n }\n else if (typeof msg[0] === 'string') {\n let obj = msg.slice(1);\n if (obj.length === 1) {\n obj = obj[0];\n }\n message = `${prefix} - ${msg[0]} ${obj}`;\n log(`${prefix} - ${msg[0]}`, obj);\n }\n else {\n message = `${prefix} ${msg}`;\n log(prefix, msg);\n }\n for (const plugin of this._pluggables) {\n const logEvent = { message, timestamp: Date.now() };\n plugin.pushLogs([logEvent]);\n }\n }\n /**\n * Write General log. Default to INFO\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n log(...msg) {\n this._log(LogType.INFO, ...msg);\n }\n /**\n * Write INFO log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n info(...msg) {\n this._log(LogType.INFO, ...msg);\n }\n /**\n * Write WARN log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n warn(...msg) {\n this._log(LogType.WARN, ...msg);\n }\n /**\n * Write ERROR log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n error(...msg) {\n this._log(LogType.ERROR, ...msg);\n }\n /**\n * Write DEBUG log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n debug(...msg) {\n this._log(LogType.DEBUG, ...msg);\n }\n /**\n * Write VERBOSE log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n verbose(...msg) {\n this._log(LogType.VERBOSE, ...msg);\n }\n addPluggable(pluggable) {\n if (pluggable && pluggable.getCategoryName() === AWS_CLOUDWATCH_CATEGORY) {\n this._pluggables.push(pluggable);\n pluggable.configure(this._config);\n }\n }\n listPluggables() {\n return this._pluggables;\n }\n}\nConsoleLogger.LOG_LEVEL = null;\nConsoleLogger.BIND_ALL_LOG_LEVELS = false;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport class AmplifyError extends Error {\n /**\n * Constructs an AmplifyError.\n *\n * @param message text that describes the main problem.\n * @param underlyingError the underlying cause of the error.\n * @param recoverySuggestion suggestion to recover from the error.\n *\n */\n constructor({ message, name, recoverySuggestion, underlyingError, }) {\n super(message);\n this.name = name;\n this.underlyingError = underlyingError;\n this.recoverySuggestion = recoverySuggestion;\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = AmplifyError;\n Object.setPrototypeOf(this, AmplifyError.prototype);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '../Logger';\nimport { NO_HUBCALLBACK_PROVIDED_EXCEPTION } from '../constants';\nimport { AmplifyError } from '../errors';\nexport const AMPLIFY_SYMBOL = (typeof Symbol !== 'undefined'\n ? Symbol('amplify_default')\n : '@@amplify_default');\nconst logger = new ConsoleLogger('Hub');\nexport class HubClass {\n constructor(name) {\n this.listeners = new Map();\n this.protectedChannels = [\n 'core',\n 'auth',\n 'api',\n 'analytics',\n 'interactions',\n 'pubsub',\n 'storage',\n 'ui',\n 'xr',\n ];\n this.name = name;\n }\n /**\n * Used internally to remove a Hub listener.\n *\n * @remarks\n * This private method is for internal use only. Instead of calling Hub.remove, call the result of Hub.listen.\n */\n _remove(channel, listener) {\n const holder = this.listeners.get(channel);\n if (!holder) {\n logger.warn(`No listeners for ${channel}`);\n return;\n }\n this.listeners.set(channel, [\n ...holder.filter(({ callback }) => callback !== listener),\n ]);\n }\n dispatch(channel, payload, source, ampSymbol) {\n if (typeof channel === 'string' &&\n this.protectedChannels.indexOf(channel) > -1) {\n const hasAccess = ampSymbol === AMPLIFY_SYMBOL;\n if (!hasAccess) {\n logger.warn(`WARNING: ${channel} is protected and dispatching on it can have unintended consequences`);\n }\n }\n const capsule = {\n channel,\n payload: { ...payload },\n source,\n patternInfo: [],\n };\n try {\n this._toListeners(capsule);\n }\n catch (e) {\n logger.error(e);\n }\n }\n listen(channel, callback, listenerName = 'noname') {\n let cb;\n if (typeof callback !== 'function') {\n throw new AmplifyError({\n name: NO_HUBCALLBACK_PROVIDED_EXCEPTION,\n message: 'No callback supplied to Hub',\n });\n }\n else {\n // Needs to be casted as a more generic type\n cb = callback;\n }\n let holder = this.listeners.get(channel);\n if (!holder) {\n holder = [];\n this.listeners.set(channel, holder);\n }\n holder.push({\n name: listenerName,\n callback: cb,\n });\n return () => {\n this._remove(channel, cb);\n };\n }\n _toListeners(capsule) {\n const { channel, payload } = capsule;\n const holder = this.listeners.get(channel);\n if (holder) {\n holder.forEach(listener => {\n logger.debug(`Dispatching to ${channel} with `, payload);\n try {\n listener.callback(capsule);\n }\n catch (e) {\n logger.error(e);\n }\n });\n }\n }\n}\n/* We export a __default__ instance of HubClass to use it as a\npseudo Singleton for the main messaging bus, however you can still create\nyour own instance of HubClass() for a separate \"private bus\" of events. */\nexport const Hub = new HubClass('__default__');\n/**\n * @internal\n *\n * Internal hub used for core Amplify functionality. Not intended for use outside of Amplify.\n *\n */\nexport const HubInternal = new HubClass('internal-hub');\n",null,"/**\n * Returns true if the object is a function.\n * @param value The value to check\n */\nexport function isFunction(value: any): value is (...args: any[]) => any {\n return typeof value === 'function';\n}\n","import { Observable } from '../Observable';\nimport { Subscriber } from '../Subscriber';\nimport { OperatorFunction } from '../types';\nimport { isFunction } from './isFunction';\n\n/**\n * Used to determine if an object is an Observable with a lift function.\n */\nexport function hasLift(source: any): source is { lift: InstanceType<typeof Observable>['lift'] } {\n return isFunction(source?.lift);\n}\n\n/**\n * Creates an `OperatorFunction`. Used to define operators throughout the library in a concise way.\n * @param init The logic to connect the liftedSource to the subscriber at the moment of subscription.\n */\nexport function operate<T, R>(\n init: (liftedSource: Observable<T>, subscriber: Subscriber<R>) => (() => void) | void\n): OperatorFunction<T, R> {\n return (source: Observable<T>) => {\n if (hasLift(source)) {\n return source.lift(function (this: Subscriber<R>, liftedSource: Observable<T>) {\n try {\n return init(liftedSource, this);\n } catch (err) {\n this.error(err);\n }\n });\n }\n throw new TypeError('Unable to lift unknown Observable type');\n };\n}\n","import { createErrorClass } from './createErrorClass';\n\nexport interface UnsubscriptionError extends Error {\n readonly errors: any[];\n}\n\nexport interface UnsubscriptionErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (errors: any[]): UnsubscriptionError;\n}\n\n/**\n * An error thrown when one or more errors have occurred during the\n * `unsubscribe` of a {@link Subscription}.\n */\nexport const UnsubscriptionError: UnsubscriptionErrorCtor = createErrorClass(\n (_super) =>\n function UnsubscriptionErrorImpl(this: any, errors: (Error | string)[]) {\n _super(this);\n this.message = errors\n ? `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}`\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n }\n);\n","/**\n * Used to create Error subclasses until the community moves away from ES5.\n *\n * This is because compiling from TypeScript down to ES5 has issues with subclassing Errors\n * as well as other built-in types: https://github.com/Microsoft/TypeScript/issues/12123\n *\n * @param createImpl A factory function to create the actual constructor implementation. The returned\n * function should be a named function that calls `_super` internally.\n */\nexport function createErrorClass<T>(createImpl: (_super: any) => any): T {\n const _super = (instance: any) => {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n\n const ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n","/**\n * Removes an item from an array, mutating it.\n * @param arr The array to remove the item from\n * @param item The item to remove\n */\nexport function arrRemove<T>(arr: T[] | undefined | null, item: T) {\n if (arr) {\n const index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n","import { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { SubscriptionLike, TeardownLogic, Unsubscribable } from './types';\nimport { arrRemove } from './util/arrRemove';\n\n/**\n * Represents a disposable resource, such as the execution of an Observable. A\n * Subscription has one important method, `unsubscribe`, that takes no argument\n * and just disposes the resource held by the subscription.\n *\n * Additionally, subscriptions may be grouped together through the `add()`\n * method, which will attach a child Subscription to the current Subscription.\n * When a Subscription is unsubscribed, all its children (and its grandchildren)\n * will be unsubscribed as well.\n *\n * @class Subscription\n */\nexport class Subscription implements SubscriptionLike {\n /** @nocollapse */\n public static EMPTY = (() => {\n const empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n\n /**\n * A flag to indicate whether this Subscription has already been unsubscribed.\n */\n public closed = false;\n\n private _parentage: Subscription[] | Subscription | null = null;\n\n /**\n * The list of registered finalizers to execute upon unsubscription. Adding and removing from this\n * list occurs in the {@link #add} and {@link #remove} methods.\n */\n private _finalizers: Exclude<TeardownLogic, void>[] | null = null;\n\n /**\n * @param initialTeardown A function executed first as part of the finalization\n * process that is kicked off when {@link #unsubscribe} is called.\n */\n constructor(private initialTeardown?: () => void) {}\n\n /**\n * Disposes the resources held by the subscription. May, for instance, cancel\n * an ongoing Observable execution or cancel any other type of work that\n * started when the Subscription was created.\n * @return {void}\n */\n unsubscribe(): void {\n let errors: any[] | undefined;\n\n if (!this.closed) {\n this.closed = true;\n\n // Remove this from it's parents.\n const { _parentage } = this;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n for (const parent of _parentage) {\n parent.remove(this);\n }\n } else {\n _parentage.remove(this);\n }\n }\n\n const { initialTeardown: initialFinalizer } = this;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n } catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n\n const { _finalizers } = this;\n if (_finalizers) {\n this._finalizers = null;\n for (const finalizer of _finalizers) {\n try {\n execFinalizer(finalizer);\n } catch (err) {\n errors = errors ?? [];\n if (err instanceof UnsubscriptionError) {\n errors = [...errors, ...err.errors];\n } else {\n errors.push(err);\n }\n }\n }\n }\n\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n }\n\n /**\n * Adds a finalizer to this subscription, so that finalization will be unsubscribed/called\n * when this subscription is unsubscribed. If this subscription is already {@link #closed},\n * because it has already been unsubscribed, then whatever finalizer is passed to it\n * will automatically be executed (unless the finalizer itself is also a closed subscription).\n *\n * Closed Subscriptions cannot be added as finalizers to any subscription. Adding a closed\n * subscription to a any subscription will result in no operation. (A noop).\n *\n * Adding a subscription to itself, or adding `null` or `undefined` will not perform any\n * operation at all. (A noop).\n *\n * `Subscription` instances that are added to this instance will automatically remove themselves\n * if they are unsubscribed. Functions and {@link Unsubscribable} objects that you wish to remove\n * will need to be removed manually with {@link #remove}\n *\n * @param teardown The finalization logic to add to this subscription.\n */\n add(teardown: TeardownLogic): void {\n // Only add the finalizer if it's not undefined\n // and don't add a subscription to itself.\n if (teardown && teardown !== this) {\n if (this.closed) {\n // If this subscription is already closed,\n // execute whatever finalizer is handed to it automatically.\n execFinalizer(teardown);\n } else {\n if (teardown instanceof Subscription) {\n // We don't add closed subscriptions, and we don't add the same subscription\n // twice. Subscription unsubscribe is idempotent.\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = this._finalizers ?? []).push(teardown);\n }\n }\n }\n\n /**\n * Checks to see if a this subscription already has a particular parent.\n * This will signal that this subscription has already been added to the parent in question.\n * @param parent the parent to check for\n */\n private _hasParent(parent: Subscription) {\n const { _parentage } = this;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n }\n\n /**\n * Adds a parent to this subscription so it can be removed from the parent if it\n * unsubscribes on it's own.\n *\n * NOTE: THIS ASSUMES THAT {@link _hasParent} HAS ALREADY BEEN CHECKED.\n * @param parent The parent subscription to add\n */\n private _addParent(parent: Subscription) {\n const { _parentage } = this;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n }\n\n /**\n * Called on a child when it is removed via {@link #remove}.\n * @param parent The parent to remove\n */\n private _removeParent(parent: Subscription) {\n const { _parentage } = this;\n if (_parentage === parent) {\n this._parentage = null;\n } else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n }\n\n /**\n * Removes a finalizer from this subscription that was previously added with the {@link #add} method.\n *\n * Note that `Subscription` instances, when unsubscribed, will automatically remove themselves\n * from every other `Subscription` they have been added to. This means that using the `remove` method\n * is not a common thing and should be used thoughtfully.\n *\n * If you add the same finalizer instance of a function or an unsubscribable object to a `Subscription` instance\n * more than once, you will need to call `remove` the same number of times to remove all instances.\n *\n * All finalizer instances are removed to free up memory upon unsubscription.\n *\n * @param teardown The finalizer to remove from this subscription\n */\n remove(teardown: Exclude<TeardownLogic, void>): void {\n const { _finalizers } = this;\n _finalizers && arrRemove(_finalizers, teardown);\n\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n }\n}\n\nexport const EMPTY_SUBSCRIPTION = Subscription.EMPTY;\n\nexport function isSubscription(value: any): value is Subscription {\n return (\n value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe))\n );\n}\n\nfunction execFinalizer(finalizer: Unsubscribable | (() => void)) {\n if (isFunction(finalizer)) {\n finalizer();\n } else {\n finalizer.unsubscribe();\n }\n}\n","import { Subscriber } from './Subscriber';\nimport { ObservableNotification } from './types';\n\n/**\n * The {@link GlobalConfig} object for RxJS. It is used to configure things\n * like how to react on unhandled errors.\n */\nexport const config: GlobalConfig = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n\n/**\n * The global configuration object for RxJS, used to configure things\n * like how to react on unhandled errors. Accessible via {@link config}\n * object.\n */\nexport interface GlobalConfig {\n /**\n * A registration point for unhandled errors from RxJS. These are errors that\n * cannot were not handled by consuming code in the usual subscription path. For\n * example, if you have this configured, and you subscribe to an observable without\n * providing an error handler, errors from that subscription will end up here. This\n * will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onUnhandledError: ((err: any) => void) | null;\n\n /**\n * A registration point for notifications that cannot be sent to subscribers because they\n * have completed, errored or have been explicitly unsubscribed. By default, next, complete\n * and error notifications sent to stopped subscribers are noops. However, sometimes callers\n * might want a different behavior. For example, with sources that attempt to report errors\n * to stopped subscribers, a caller can configure RxJS to throw an unhandled error instead.\n * This will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onStoppedNotification: ((notification: ObservableNotification<any>, subscriber: Subscriber<any>) => void) | null;\n\n /**\n * The promise constructor used by default for {@link Observable#toPromise toPromise} and {@link Observable#forEach forEach}\n * methods.\n *\n * @deprecated As of version 8, RxJS will no longer support this sort of injection of a\n * Promise constructor. If you need a Promise implementation other than native promises,\n * please polyfill/patch Promise as you see appropriate. Will be removed in v8.\n */\n Promise?: PromiseConstructorLike;\n\n /**\n * If true, turns on synchronous error rethrowing, which is a deprecated behavior\n * in v6 and higher. This behavior enables bad patterns like wrapping a subscribe\n * call in a try/catch block. It also enables producer interference, a nasty bug\n * where a multicast can be broken for all observers by a downstream consumer with\n * an unhandled error. DO NOT USE THIS FLAG UNLESS IT'S NEEDED TO BUY TIME\n * FOR MIGRATION REASONS.\n *\n * @deprecated As of version 8, RxJS will no longer support synchronous throwing\n * of unhandled errors. All errors will be thrown on a separate call stack to prevent bad\n * behaviors described above. Will be removed in v8.\n */\n useDeprecatedSynchronousErrorHandling: boolean;\n\n /**\n * If true, enables an as-of-yet undocumented feature from v5: The ability to access\n * `unsubscribe()` via `this` context in `next` functions created in observers passed\n * to `subscribe`.\n *\n * This is being removed because the performance was severely problematic, and it could also cause\n * issues when types other than POJOs are passed to subscribe as subscribers, as they will likely have\n * their `this` context overwritten.\n *\n * @deprecated As of version 8, RxJS will no longer support altering the\n * context of next functions provided as part of an observer to Subscribe. Instead,\n * you will have access to a subscription or a signal or token that will allow you to do things like\n * unsubscribe and test closed status. Will be removed in v8.\n */\n useDeprecatedNextContext: boolean;\n}\n","import type { TimerHandle } from './timerHandle';\ntype SetTimeoutFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearTimeoutFunction = (handle: TimerHandle) => void;\n\ninterface TimeoutProvider {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n delegate:\n | {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n }\n | undefined;\n}\n\nexport const timeoutProvider: TimeoutProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setTimeout(handler: () => void, timeout?: number, ...args) {\n const { delegate } = timeoutProvider;\n if (delegate?.setTimeout) {\n return delegate.setTimeout(handler, timeout, ...args);\n }\n return setTimeout(handler, timeout, ...args);\n },\n clearTimeout(handle) {\n const { delegate } = timeoutProvider;\n return (delegate?.clearTimeout || clearTimeout)(handle as any);\n },\n delegate: undefined,\n};\n","import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\n\n/**\n * Handles an error on another job either with the user-configured {@link onUnhandledError},\n * or by throwing it on that new job so it can be picked up by `window.onerror`, `process.on('error')`, etc.\n *\n * This should be called whenever there is an error that is out-of-band with the subscription\n * or when an error hits a terminal boundary of the subscription and no error handler was provided.\n *\n * @param err the error to report\n */\nexport function reportUnhandledError(err: any) {\n timeoutProvider.setTimeout(() => {\n const { onUnhandledError } = config;\n if (onUnhandledError) {\n // Execute the user-configured error handler.\n onUnhandledError(err);\n } else {\n // Throw so it is picked up by the runtime's uncaught error mechanism.\n throw err;\n }\n });\n}\n","/* tslint:disable:no-empty */\nexport function noop() { }\n","import { CompleteNotification, NextNotification, ErrorNotification } from './types';\n\n/**\n * A completion object optimized for memory use and created to be the\n * same \"shape\" as other notifications in v8.\n * @internal\n */\nexport const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined) as CompleteNotification)();\n\n/**\n * Internal use only. Creates an optimized error notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function errorNotification(error: any): ErrorNotification {\n return createNotification('E', undefined, error) as any;\n}\n\n/**\n * Internal use only. Creates an optimized next notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function nextNotification<T>(value: T) {\n return createNotification('N', value, undefined) as NextNotification<T>;\n}\n\n/**\n * Ensures that all notifications created internally have the same \"shape\" in v8.\n *\n * TODO: This is only exported to support a crazy legacy test in `groupBy`.\n * @internal\n */\nexport function createNotification(kind: 'N' | 'E' | 'C', value: any, error: any) {\n return {\n kind,\n value,\n error,\n };\n}\n","import { config } from '../config';\n\nlet context: { errorThrown: boolean; error: any } | null = null;\n\n/**\n * Handles dealing with errors for super-gross mode. Creates a context, in which\n * any synchronously thrown errors will be passed to {@link captureError}. Which\n * will record the error such that it will be rethrown after the call back is complete.\n * TODO: Remove in v8\n * @param cb An immediately executed function.\n */\nexport function errorContext(cb: () => void) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n const isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n const { errorThrown, error } = context!;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n } else {\n // This is the general non-deprecated path for everyone that\n // isn't crazy enough to use super-gross mode (useDeprecatedSynchronousErrorHandling)\n cb();\n }\n}\n\n/**\n * Captures errors only in super-gross mode.\n * @param err the error to capture\n */\nexport function captureError(err: any) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n","import { isFunction } from './util/isFunction';\nimport { Observer, ObservableNotification } from './types';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\n\n/**\n * Implements the {@link Observer} interface and extends the\n * {@link Subscription} class. While the {@link Observer} is the public API for\n * consuming the values of an {@link Observable}, all Observers get converted to\n * a Subscriber, in order to provide Subscription-like capabilities such as\n * `unsubscribe`. Subscriber is a common type in RxJS, and crucial for\n * implementing operators, but it is rarely used as a public API.\n *\n * @class Subscriber<T>\n */\nexport class Subscriber<T> extends Subscription implements Observer<T> {\n /**\n * A static factory for a Subscriber, given a (potentially partial) definition\n * of an Observer.\n * @param next The `next` callback of an Observer.\n * @param error The `error` callback of an\n * Observer.\n * @param complete The `complete` callback of an\n * Observer.\n * @return A Subscriber wrapping the (partially defined)\n * Observer represented by the given arguments.\n * @nocollapse\n * @deprecated Do not use. Will be removed in v8. There is no replacement for this\n * method, and there is no reason to be creating instances of `Subscriber` directly.\n * If you have a specific use case, please file an issue.\n */\n static create<T>(next?: (x?: T) => void, error?: (e?: any) => void, complete?: () => void): Subscriber<T> {\n return new SafeSubscriber(next, error, complete);\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected isStopped: boolean = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected destination: Subscriber<any> | Observer<any>; // this `any` is the escape hatch to erase extra type param (e.g. R)\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * There is no reason to directly create an instance of Subscriber. This type is exported for typings reasons.\n */\n constructor(destination?: Subscriber<any> | Observer<any>) {\n super();\n if (destination) {\n this.destination = destination;\n // Automatically chain subscriptions together here.\n // if destination is a Subscription, then it is a Subscriber.\n if (isSubscription(destination)) {\n destination.add(this);\n }\n } else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `next` from\n * the Observable, with a value. The Observable may call this method 0 or more\n * times.\n * @param {T} [value] The `next` value.\n * @return {void}\n */\n next(value?: T): void {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n } else {\n this._next(value!);\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `error` from\n * the Observable, with an attached `Error`. Notifies the Observer that\n * the Observable has experienced an error condition.\n * @param {any} [err] The `error` exception.\n * @return {void}\n */\n error(err?: any): void {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n } else {\n this.isStopped = true;\n this._error(err);\n }\n }\n\n /**\n * The {@link Observer} callback to receive a valueless notification of type\n * `complete` from the Observable. Notifies the Observer that the Observable\n * has finished sending push-based notifications.\n * @return {void}\n */\n complete(): void {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n } else {\n this.isStopped = true;\n this._complete();\n }\n }\n\n unsubscribe(): void {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null!;\n }\n }\n\n protected _next(value: T): void {\n this.destination.next(value);\n }\n\n protected _error(err: any): void {\n try {\n this.destination.error(err);\n } finally {\n this.unsubscribe();\n }\n }\n\n protected _complete(): void {\n try {\n this.destination.complete();\n } finally {\n this.unsubscribe();\n }\n }\n}\n\n/**\n * This bind is captured here because we want to be able to have\n * compatibility with monoid libraries that tend to use a method named\n * `bind`. In particular, a library called Monio requires this.\n */\nconst _bind = Function.prototype.bind;\n\nfunction bind<Fn extends (...args: any[]) => any>(fn: Fn, thisArg: any): Fn {\n return _bind.call(fn, thisArg);\n}\n\n/**\n * Internal optimization only, DO NOT EXPOSE.\n * @internal\n */\nclass ConsumerObserver<T> implements Observer<T> {\n constructor(private partialObserver: Partial<Observer<T>>) {}\n\n next(value: T): void {\n const { partialObserver } = this;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n\n error(err: any): void {\n const { partialObserver } = this;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n } catch (error) {\n handleUnhandledError(error);\n }\n } else {\n handleUnhandledError(err);\n }\n }\n\n complete(): void {\n const { partialObserver } = this;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n}\n\nexport class SafeSubscriber<T> extends Subscriber<T> {\n constructor(\n observerOrNext?: Partial<Observer<T>> | ((value: T) => void) | null,\n error?: ((e?: any) => void) | null,\n complete?: (() => void) | null\n ) {\n super();\n\n let partialObserver: Partial<Observer<T>>;\n if (isFunction(observerOrNext) || !observerOrNext) {\n // The first argument is a function, not an observer. The next\n // two arguments *could* be observers, or they could be empty.\n partialObserver = {\n next: (observerOrNext ?? undefined) as (((value: T) => void) | undefined),\n error: error ?? undefined,\n complete: complete ?? undefined,\n };\n } else {\n // The first argument is a partial observer.\n let context: any;\n if (this && config.useDeprecatedNextContext) {\n // This is a deprecated path that made `this.unsubscribe()` available in\n // next handler functions passed to subscribe. This only exists behind a flag\n // now, as it is *very* slow.\n context = Object.create(observerOrNext);\n context.unsubscribe = () => this.unsubscribe();\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context),\n };\n } else {\n // The \"normal\" path. Just use the partial observer directly.\n partialObserver = observerOrNext;\n }\n }\n\n // Wrap the partial observer to ensure it's a full observer, and\n // make sure proper error handling is accounted for.\n this.destination = new ConsumerObserver(partialObserver);\n }\n}\n\nfunction handleUnhandledError(error: any) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n } else {\n // Ideal path, we report this as an unhandled error,\n // which is thrown on a new call stack.\n reportUnhandledError(error);\n }\n}\n\n/**\n * An error handler used when no error handler was supplied\n * to the SafeSubscriber -- meaning no error handler was supplied\n * do the `subscribe` call on our observable.\n * @param err The error to handle\n */\nfunction defaultErrorHandler(err: any) {\n throw err;\n}\n\n/**\n * A handler for notifications that cannot be sent to a stopped subscriber.\n * @param notification The notification being sent\n * @param subscriber The stopped subscriber\n */\nfunction handleStoppedNotification(notification: ObservableNotification<any>, subscriber: Subscriber<any>) {\n const { onStoppedNotification } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\n\n/**\n * The observer used as a stub for subscriptions where the user did not\n * pass any arguments to `subscribe`. Comes with the default error handling\n * behavior.\n */\nexport const EMPTY_OBSERVER: Readonly<Observer<any>> & { closed: true } = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n","import { Subscriber } from '../Subscriber';\n\n/**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional teardown logic here. This will only be called on teardown if the\n * subscriber itself is not already closed. This is called after all other teardown logic is executed.\n */\nexport function createOperatorSubscriber<T>(\n destination: Subscriber<any>,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n onFinalize?: () => void\n): Subscriber<T> {\n return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);\n}\n\n/**\n * A generic helper for allowing operators to be created with a Subscriber and\n * use closures to capture necessary state from the operator function itself.\n */\nexport class OperatorSubscriber<T> extends Subscriber<T> {\n /**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional finalization logic here. This will only be called on finalization if the\n * subscriber itself is not already closed. This is called after all other finalization logic is executed.\n * @param shouldUnsubscribe An optional check to see if an unsubscribe call should truly unsubscribe.\n * NOTE: This currently **ONLY** exists to support the strange behavior of {@link groupBy}, where unsubscription\n * to the resulting observable does not actually disconnect from the source if there are active subscriptions\n * to any grouped observable. (DO NOT EXPOSE OR USE EXTERNALLY!!!)\n */\n constructor(\n destination: Subscriber<any>,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n private onFinalize?: () => void,\n private shouldUnsubscribe?: () => boolean\n ) {\n // It's important - for performance reasons - that all of this class's\n // members are initialized and that they are always initialized in the same\n // order. This will ensure that all OperatorSubscriber instances have the\n // same hidden class in V8. This, in turn, will help keep the number of\n // hidden classes involved in property accesses within the base class as\n // low as possible. If the number of hidden classes involved exceeds four,\n // the property accesses will become megamorphic and performance penalties\n // will be incurred - i.e. inline caches won't be used.\n //\n // The reasons for ensuring all instances have the same hidden class are\n // further discussed in this blog post from Benedikt Meurer:\n // https://benediktmeurer.de/2018/03/23/impact-of-polymorphism-on-component-based-frameworks-like-react/\n super(destination);\n this._next = onNext\n ? function (this: OperatorSubscriber<T>, value: T) {\n try {\n onNext(value);\n } catch (err) {\n destination.error(err);\n }\n }\n : super._next;\n this._error = onError\n ? function (this: OperatorSubscriber<T>, err: any) {\n try {\n onError(err);\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._error;\n this._complete = onComplete\n ? function (this: OperatorSubscriber<T>) {\n try {\n onComplete();\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._complete;\n }\n\n unsubscribe() {\n if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {\n const { closed } = this;\n super.unsubscribe();\n // Execute additional teardown if we have any and we didn't already do so.\n !closed && this.onFinalize?.();\n }\n }\n}\n","import { OperatorFunction } from '../types';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\n\nexport function map<T, R>(project: (value: T, index: number) => R): OperatorFunction<T, R>;\n/** @deprecated Use a closure instead of a `thisArg`. Signatures accepting a `thisArg` will be removed in v8. */\nexport function map<T, R, A>(project: (this: A, value: T, index: number) => R, thisArg: A): OperatorFunction<T, R>;\n\n/**\n * Applies a given `project` function to each value emitted by the source\n * Observable, and emits the resulting values as an Observable.\n *\n * <span class=\"informal\">Like [Array.prototype.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map),\n * it passes each source value through a transformation function to get\n * corresponding output values.</span>\n *\n * \n *\n * Similar to the well known `Array.prototype.map` function, this operator\n * applies a projection to each value and emits that projection in the output\n * Observable.\n *\n * ## Example\n *\n * Map every click to the `clientX` position of that click\n *\n * ```ts\n * import { fromEvent, map } from 'rxjs';\n *\n * const clicks = fromEvent<PointerEvent>(document, 'click');\n * const positions = clicks.pipe(map(ev => ev.clientX));\n *\n * positions.subscribe(x => console.log(x));\n * ```\n *\n * @see {@link mapTo}\n * @see {@link pluck}\n *\n * @param {function(value: T, index: number): R} project The function to apply\n * to each `value` emitted by the source Observable. The `index` parameter is\n * the number `i` for the i-th emission that has happened since the\n * subscription, starting from the number `0`.\n * @param {any} [thisArg] An optional argument to define what `this` is in the\n * `project` function.\n * @return A function that returns an Observable that emits the values from the\n * source Observable transformed by the given `project` function.\n */\nexport function map<T, R>(project: (value: T, index: number) => R, thisArg?: any): OperatorFunction<T, R> {\n return operate((source, subscriber) => {\n // The index of the value from the source. Used with projection.\n let index = 0;\n // Subscribe to the source, all errors and completions are sent along\n // to the consumer.\n source.subscribe(\n createOperatorSubscriber(subscriber, (value: T) => {\n // Call the projection function with the appropriate this context,\n // and send the resulting value to the consumer.\n subscriber.next(project.call(thisArg, value, index++));\n })\n );\n });\n}\n","/**\n * Given an introspection schema model, returns all owner fields.\n *\n * @param model Model from an introspection schema\n * @returns List of owner field names\n */\nexport function resolveOwnerFields(model) {\n const ownerFields = new Set();\n for (const attr of model.attributes || []) {\n if (isAuthAttribute(attr)) {\n for (const rule of attr.properties.rules) {\n if (rule.allow === 'owner') {\n ownerFields.add(rule.ownerField || 'owner');\n }\n else if (rule.allow === 'groups' && rule.groupsField !== undefined) {\n // only valid for dynamic group(s)\n // static group auth will have an array of predefined groups in the attribute, groups: string[]\n // but `groupsField` will be undefined\n ownerFields.add(rule.groupsField);\n }\n }\n }\n }\n return Array.from(ownerFields);\n}\n/**\n * Type guard that identifies an auth attribute with an attached rules list that\n * specifies an `allow` attribute at a minimum.\n *\n * @param attribute Any object. Ideally a model introspection schema model attribute\n * @returns True if given object is an auth attribute\n */\nfunction isAuthAttribute(attribute) {\n if (attribute?.type === 'auth') {\n if (typeof attribute?.properties === 'object') {\n if (Array.isArray(attribute?.properties?.rules)) {\n return (attribute?.properties?.rules).every((rule) => !!rule.allow);\n }\n }\n }\n return false;\n}\n","/**\n * @param s string to capitalize\n * @returns capitalized string\n */\nexport function capitalize(s) {\n return `${s[0].toUpperCase()}${s.slice(1)}`;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\nimport { resolveOwnerFields, capitalize } from '../utils';\nconst connectionType = {\n HAS_ONE: 'HAS_ONE',\n HAS_MANY: 'HAS_MANY',\n BELONGS_TO: 'BELONGS_TO',\n};\n// When generating an SK's KeyConditionInput name, string-like types map to String\nconst skGraphQlFieldTypeMap = {\n ID: 'ID',\n String: 'String',\n AWSDate: 'String',\n AWSTime: 'String',\n AWSDateTime: 'String',\n AWSTimestamp: 'String',\n AWSEmail: 'String',\n AWSPhone: 'String',\n AWSURL: 'String',\n AWSIPAddress: 'String',\n AWSJSON: 'String',\n Boolean: 'Boolean',\n Int: 'Int',\n Float: 'Float',\n};\n// move to util\nconst resolvedSkName = (sk) => {\n if (sk.length === 1) {\n return sk[0];\n }\n else {\n return sk.reduce((acc, curr, idx) => {\n if (idx === 0) {\n return curr;\n }\n else {\n return acc + capitalize(curr);\n }\n }, '');\n }\n};\n/**\n *\n * @param GraphQL response object\n * @returns response object with `items` properties flattened\n */\nexport const flattenItems = (obj) => {\n const res = {};\n Object.entries(obj).forEach(([prop, value]) => {\n if (typeof value === 'object' && !Array.isArray(value) && value !== null) {\n if (value.items !== undefined) {\n res[prop] = value.items.map((item) => flattenItems(item));\n return;\n }\n res[prop] = flattenItems(value);\n return;\n }\n res[prop] = value;\n });\n return res;\n};\n// TODO: this should accept single result to support CRUD methods; create helper for array/list\nexport function initializeModel(client, modelName, result, modelIntrospection, authMode, authToken, context = false) {\n const introModel = modelIntrospection.models[modelName];\n const introModelFields = introModel.fields;\n const modelFields = Object.entries(introModelFields)\n .filter(([_, field]) => field?.type?.model !== undefined)\n .map(([fieldName]) => fieldName);\n return result.map((record) => {\n const initializedRelationalFields = {};\n for (const fieldName of modelFields) {\n const modelField = introModelFields[fieldName];\n const modelFieldType = modelField?.type;\n const relatedModelName = modelFieldType.model;\n const relatedModel = modelIntrospection.models[relatedModelName];\n const relatedModelPKFieldName = relatedModel.primaryKeyInfo.primaryKeyFieldName;\n const relatedModelSKFieldNames = relatedModel.primaryKeyInfo.sortKeyFieldNames;\n const relationType = modelField.association?.connectionType;\n let connectionFields = [];\n if (modelField.association &&\n 'associatedWith' in modelField.association) {\n connectionFields = modelField.association.associatedWith;\n }\n const targetNames = [];\n if (modelField.association && 'targetNames' in modelField.association) {\n targetNames.push(...modelField.association.targetNames);\n }\n switch (relationType) {\n case connectionType.HAS_ONE:\n case connectionType.BELONGS_TO: {\n const sortKeyValues = relatedModelSKFieldNames.reduce(\n // TODO(Eslint): is this implementation correct?\n // eslint-disable-next-line array-callback-return\n (acc, curVal) => {\n if (record[curVal]) {\n return (acc[curVal] = record[curVal]);\n }\n }, {});\n if (context) {\n initializedRelationalFields[fieldName] = (contextSpec, options) => {\n if (record[targetNames[0]]) {\n return client.models[relatedModelName].get(contextSpec, {\n [relatedModelPKFieldName]: record[targetNames[0]],\n ...sortKeyValues,\n }, {\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken,\n });\n }\n return undefined;\n };\n }\n else {\n initializedRelationalFields[fieldName] = (options) => {\n if (record[targetNames[0]]) {\n return client.models[relatedModelName].get({\n [relatedModelPKFieldName]: record[targetNames[0]],\n ...sortKeyValues,\n }, {\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken,\n });\n }\n return undefined;\n };\n }\n break;\n }\n case connectionType.HAS_MANY: {\n const parentPk = introModel.primaryKeyInfo.primaryKeyFieldName;\n const parentSK = introModel.primaryKeyInfo.sortKeyFieldNames;\n // M:N check - TODO: refactor\n const relatedModelField = relatedModel.fields[connectionFields[0]];\n const relatedModelFieldType = relatedModelField.type;\n if (relatedModelFieldType.model) {\n let relatedTargetNames = [];\n if (relatedModelField.association &&\n 'targetNames' in relatedModelField.association) {\n relatedTargetNames = relatedModelField.association?.targetNames;\n }\n const hasManyFilter = relatedTargetNames.map((field, idx) => {\n if (idx === 0) {\n return { [field]: { eq: record[parentPk] } };\n }\n return { [field]: { eq: record[parentSK[idx - 1]] } };\n });\n if (context) {\n initializedRelationalFields[fieldName] = (contextSpec, options) => {\n if (record[parentPk]) {\n return client.models[relatedModelName].list(contextSpec, {\n filter: { and: hasManyFilter },\n limit: options?.limit,\n nextToken: options?.nextToken,\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken,\n });\n }\n return [];\n };\n }\n else {\n initializedRelationalFields[fieldName] = (options) => {\n if (record[parentPk]) {\n return client.models[relatedModelName].list({\n filter: { and: hasManyFilter },\n limit: options?.limit,\n nextToken: options?.nextToken,\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken,\n });\n }\n return [];\n };\n }\n break;\n }\n const hasManyFilter = connectionFields.map((field, idx) => {\n if (idx === 0) {\n return { [field]: { eq: record[parentPk] } };\n }\n return { [field]: { eq: record[parentSK[idx - 1]] } };\n });\n if (context) {\n initializedRelationalFields[fieldName] = (contextSpec, options) => {\n if (record[parentPk]) {\n return client.models[relatedModelName].list(contextSpec, {\n filter: { and: hasManyFilter },\n limit: options?.limit,\n nextToken: options?.nextToken,\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken,\n });\n }\n return [];\n };\n }\n else {\n initializedRelationalFields[fieldName] = (options) => {\n if (record[parentPk]) {\n return client.models[relatedModelName].list({\n filter: { and: hasManyFilter },\n limit: options?.limit,\n nextToken: options?.nextToken,\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken,\n });\n }\n return [];\n };\n }\n break;\n }\n default:\n break;\n }\n }\n return { ...record, ...initializedRelationalFields };\n });\n}\nexport const graphQLOperationsInfo = {\n CREATE: { operationPrefix: 'create', usePlural: false },\n READ: { operationPrefix: 'get', usePlural: false },\n UPDATE: { operationPrefix: 'update', usePlural: false },\n DELETE: { operationPrefix: 'delete', usePlural: false },\n LIST: { operationPrefix: 'list', usePlural: true },\n INDEX_QUERY: { operationPrefix: '', usePlural: false },\n ONCREATE: { operationPrefix: 'onCreate', usePlural: false },\n ONUPDATE: { operationPrefix: 'onUpdate', usePlural: false },\n ONDELETE: { operationPrefix: 'onDelete', usePlural: false },\n OBSERVE_QUERY: { operationPrefix: 'observeQuery', usePlural: false },\n};\nconst SELECTION_SET_WILDCARD = '*';\nexport const getDefaultSelectionSetForNonModelWithIR = (nonModelDefinition, modelIntrospection) => {\n const { fields } = nonModelDefinition;\n const mappedFields = Object.values(fields)\n .map(({ type, name }) => {\n if (typeof type.enum === 'string') {\n return [name, FIELD_IR];\n }\n if (typeof type.nonModel === 'string') {\n return [\n name,\n getDefaultSelectionSetForNonModelWithIR(modelIntrospection.nonModels[type.nonModel], modelIntrospection),\n ];\n }\n if (typeof type === 'string') {\n return [name, FIELD_IR];\n }\n return undefined;\n })\n .filter((pair) => pair !== undefined);\n return Object.fromEntries(mappedFields);\n};\nconst getDefaultSelectionSetForModelWithIR = (modelDefinition, modelIntrospection) => {\n const { fields } = modelDefinition;\n const mappedFields = Object.values(fields)\n .map(({ type, name }) => {\n if (typeof type.enum === 'string' ||\n typeof type === 'string') {\n return [name, FIELD_IR];\n }\n if (typeof type.nonModel === 'string') {\n return [\n name,\n getDefaultSelectionSetForNonModelWithIR(modelIntrospection.nonModels[type.nonModel], modelIntrospection),\n ];\n }\n return undefined;\n })\n .filter((pair) => pair !== undefined);\n const ownerFields = resolveOwnerFields(modelDefinition).map((field) => [\n field,\n FIELD_IR,\n ]);\n return Object.fromEntries(mappedFields.concat(ownerFields));\n};\nfunction defaultSelectionSetForModel(modelDefinition) {\n // fields that are explicitly part of the graphql schema; not\n // inferred from owner auth rules.\n const { fields } = modelDefinition;\n const explicitFields = Object.values(fields)\n // Default selection set omits model fields\n .map(({ type, name }) => {\n if (typeof type === 'string')\n return name;\n if (typeof type === 'object') {\n if (typeof type?.enum === 'string') {\n return name;\n }\n else if (typeof type?.nonModel === 'string') {\n return `${name}.${SELECTION_SET_WILDCARD}`;\n }\n }\n return undefined;\n })\n .filter(Boolean);\n // fields used for owner auth rules that may or may not also\n // be explicit on the model.\n const ownerFields = resolveOwnerFields(modelDefinition);\n return Array.from(new Set(explicitFields.concat(ownerFields)));\n}\nconst FIELD_IR = '';\n/**\n * Generates nested Custom Selection Set IR from path\n *\n * @param modelDefinitions\n * @param modelName\n * @param selectionSet - array of object paths\n * @example\n * ### Given\n * `selectionSet = ['id', 'comments.post.id']`\n * ### Returns\n * ```ts\n * {\n * id: '',\n * comments: {\n * items: { post: { id: '' } }\n * }\n * }\n * ```\n */\nexport function customSelectionSetToIR(modelIntrospection, modelName, selectionSet) {\n const dotNotationToObject = (path, modelOrNonModelName) => {\n const [fieldName, ...rest] = path.split('.');\n const nested = rest[0];\n const modelOrNonModelDefinition = modelIntrospection.models[modelOrNonModelName] ??\n modelIntrospection.nonModels[modelOrNonModelName];\n const modelOrNonModelFields = modelOrNonModelDefinition?.fields;\n const relatedModel = modelOrNonModelFields?.[fieldName]?.type?.model;\n const relatedModelDefinition = modelIntrospection.models[relatedModel];\n const relatedNonModel = modelOrNonModelFields?.[fieldName]?.type?.nonModel;\n const relatedNonModelDefinition = modelIntrospection.nonModels[relatedNonModel];\n const isModelOrNonModelOrFieldType = relatedModelDefinition\n ? 'model'\n : relatedNonModelDefinition\n ? 'nonModel'\n : 'field';\n if (isModelOrNonModelOrFieldType === 'nonModel') {\n let result = {};\n if (!nested) {\n throw Error(`${fieldName} must declare a wildcard (*) or a field of custom type ${relatedNonModel}`);\n }\n if (nested === SELECTION_SET_WILDCARD) {\n result = {\n [fieldName]: getDefaultSelectionSetForNonModelWithIR(relatedNonModelDefinition, modelIntrospection),\n };\n }\n else {\n result = {\n [fieldName]: dotNotationToObject(rest.join('.'), relatedNonModel),\n };\n }\n return result;\n }\n else if (isModelOrNonModelOrFieldType === 'model') {\n let result = {};\n if (!nested) {\n throw Error(`${fieldName} must declare a wildcard (*) or a field of model ${relatedModel}`);\n }\n if (nested === SELECTION_SET_WILDCARD) {\n const nestedRelatedModelDefinition = modelIntrospection.models[relatedModel];\n result = {\n [fieldName]: getDefaultSelectionSetForModelWithIR(nestedRelatedModelDefinition, modelIntrospection),\n };\n }\n else {\n result = {\n [fieldName]: dotNotationToObject(rest.join('.'), relatedModel),\n };\n }\n if (modelOrNonModelFields[fieldName]?.isArray) {\n result = {\n [fieldName]: {\n items: result[fieldName],\n },\n };\n }\n return result;\n }\n else {\n const modelField = modelOrNonModelFields?.[fieldName];\n const nonModelDefinition = modelIntrospection.nonModels[modelOrNonModelName];\n const nonModelField = nonModelDefinition?.fields?.[fieldName];\n if (!nonModelDefinition) {\n const isOwnerField = resolveOwnerFields(modelOrNonModelDefinition).includes(fieldName);\n if (!modelField && !isOwnerField) {\n throw Error(`${fieldName} is not a field of model ${modelOrNonModelName}`);\n }\n }\n else {\n if (!nonModelField) {\n throw Error(`${fieldName} is not a field of custom type ${modelOrNonModelName}`);\n }\n }\n return { [fieldName]: FIELD_IR };\n }\n };\n return selectionSet.reduce((resultObj, path) => deepMergeSelectionSetObjects(dotNotationToObject(path, modelName), resultObj), {});\n}\n/**\n * Stringifies selection set IR\n * * @example\n * ### Given\n * ```ts\n * {\n * id: '',\n * comments: {\n * items: { post: { id: '' } }\n * }\n * }\n * ```\n * ### Returns\n * `'id comments { items { post { id } } }'`\n */\nexport function selectionSetIRToString(obj) {\n const res = [];\n Object.entries(obj).forEach(([fieldName, value]) => {\n if (value === FIELD_IR) {\n res.push(fieldName);\n }\n else if (typeof value === 'object' && value !== null) {\n if (value?.items) {\n res.push(fieldName, '{', 'items', '{', selectionSetIRToString(value.items), '}', '}');\n }\n else {\n res.push(fieldName, '{', selectionSetIRToString(value), '}');\n }\n }\n });\n return res.join(' ');\n}\n/**\n * Recursively merges selection set objects from `source` onto `target`.\n *\n * `target` will be updated. `source` will be left alone.\n *\n * @param source The object to merge into target.\n * @param target The object to be mutated.\n */\nfunction deepMergeSelectionSetObjects(source, target) {\n const isObject = (obj) => obj && typeof obj === 'object';\n for (const key in source) {\n // This verification avoids 'Prototype Pollution' issue\n if (!Object.prototype.hasOwnProperty.call(source, key))\n continue;\n if (Object.prototype.hasOwnProperty.call(target, key) &&\n isObject(target[key])) {\n deepMergeSelectionSetObjects(source[key], target[key]);\n }\n else {\n target[key] = source[key];\n }\n }\n return target;\n}\nexport function generateSelectionSet(modelIntrospection, modelName, selectionSet) {\n const modelDefinition = modelIntrospection.models[modelName];\n const selSetIr = customSelectionSetToIR(modelIntrospection, modelName, selectionSet ?? defaultSelectionSetForModel(modelDefinition));\n const selSetString = selectionSetIRToString(selSetIr);\n return selSetString;\n}\nexport function generateGraphQLDocument(modelIntrospection, modelName, modelOperation, listArgs, indexMeta) {\n const modelDefinition = modelIntrospection.models[modelName];\n const { name, pluralName, fields, primaryKeyInfo: { isCustomPrimaryKey, primaryKeyFieldName, sortKeyFieldNames, }, attributes, } = modelDefinition;\n // Use pascal case of the model name to generate the operations and the arguments.\n // This is required to be in sync with the resources generated by the GraphQL transformers.\n const namePascalCase = name.charAt(0).toUpperCase() + name.slice(1);\n const pluralNamePascalCase = pluralName.charAt(0).toUpperCase() + pluralName.slice(1);\n const { operationPrefix, usePlural } = graphQLOperationsInfo[modelOperation];\n const { selectionSet } = listArgs || {};\n let graphQLFieldName;\n let indexQueryArgs;\n if (operationPrefix) {\n graphQLFieldName = `${operationPrefix}${usePlural ? pluralNamePascalCase : namePascalCase}`;\n }\n else if (indexMeta) {\n const { queryField, pk, sk = [] } = indexMeta;\n graphQLFieldName = queryField;\n /**\n * **a. Single field SK** -> single arg where name is the field name and the type is `Model${gqlFieldType}KeyConditionInput` (nullable)\n * Note: string-like data types e.g., AWSDateTime, AWSEmail, AWSPhone, etc. should map to String. See `skGraphQlFieldTypeMap` above\n * @example\n * ```\n * sk1: ModelStringKeyConditionInput\n * ```\n *\n * **b. Composite SK** -> single arg where the name is camelCase concatenation of all the field names that comprise the SK\n * and the type is `Model${modelName}${keyAttributeName}CompositeKeyConditionInput` (nullable)\n * @example\n * ```\n * sk1Sk2: ModelMyModelMyModelByPkAndSk1AndSk2CompositeKeyConditionInput\n */\n let skQueryArgs = {};\n if (sk.length === 1) {\n const [skField] = sk;\n const type = (typeof fields[skField].type === 'string'\n ? fields[skField].type\n : 'String');\n const normalizedType = skGraphQlFieldTypeMap[type];\n skQueryArgs = {\n [skField]: `Model${normalizedType}KeyConditionInput`,\n };\n }\n else if (sk.length > 1) {\n const compositeSkArgName = resolvedSkName(sk);\n const keyName = attributes?.find((attr) => attr?.properties?.queryField === queryField)?.properties?.name;\n skQueryArgs = {\n [compositeSkArgName]: `Model${capitalize(modelName)}${capitalize(keyName)}CompositeKeyConditionInput`,\n };\n }\n indexQueryArgs = {\n [pk]: `${Object.prototype.hasOwnProperty.call(fields[pk].type, 'enum')\n ? fields[pk].type.enum // AppSync schema sets enum type as the type of the enum fields that's used as PK\n : fields[pk].type}!`,\n ...skQueryArgs,\n };\n }\n else {\n throw new Error('Error generating GraphQL Document - invalid operation name');\n }\n let graphQLOperationType;\n let graphQLSelectionSet;\n let graphQLArguments;\n const selectionSetFields = generateSelectionSet(modelIntrospection, modelName, selectionSet);\n // default PK args for get and list operations\n // modified below for CPK\n const getPkArgs = {\n [primaryKeyFieldName]: `${fields[primaryKeyFieldName].type}!`,\n };\n const listPkArgs = {};\n /**\n * Generate query field args for the SK if it's defined\n *\n * **1. Get queries** require each SK field to be present as a separate arg where the type is the field's GraphQL scalar type (non-nullable)\n * @example\n * ```\n * sk1: String!, sk2: Int!\n * ```\n *\n * **2. List queries**\n *\n * **a. Single field SK** -> single arg where name is the field name and the type is `Model${gqlFieldType}KeyConditionInput` (nullable)\n * Note: string-like data types e.g., AWSDateTime, AWSEmail, AWSPhone, etc. should map to String. See `skGraphQlFieldTypeMap` above\n * @example\n * ```\n * sk1: ModelStringKeyConditionInput\n * ```\n *\n * **b. Composite SK** -> single arg where the name is camelCase concatenation of all the field names that comprise the SK\n * and the type is `Model${modelName}PrimaryCompositeKeyConditionInput` (nullable)\n * @example\n * ```\n * sk1Sk2: ModelMyModelPrimaryCompositeKeyConditionInput\n * ```\n */\n const generateSkArgs = (op) => {\n if (sortKeyFieldNames.length === 0)\n return {};\n if (op === 'get') {\n return sortKeyFieldNames.reduce((acc, fieldName) => {\n const fieldType = fields[fieldName].type;\n if (op === 'get') {\n acc[fieldName] = `${fieldType}!`; // ! - SK args are non-nullable in Get queries\n }\n return acc;\n }, {});\n }\n else {\n // list SK\n if (sortKeyFieldNames.length === 1) {\n // Single SK\n const [sk] = sortKeyFieldNames;\n const type = (typeof fields[sk].type === 'string' ? fields[sk].type : 'String');\n const normalizedType = skGraphQlFieldTypeMap[type];\n return {\n [sk]: `Model${normalizedType}KeyConditionInput`,\n };\n }\n else {\n // Composite SK\n const compositeSkArgName = resolvedSkName(sortKeyFieldNames);\n return {\n [compositeSkArgName]: `Model${capitalize(modelName)}PrimaryCompositeKeyConditionInput`,\n };\n }\n }\n };\n if (isCustomPrimaryKey) {\n Object.assign(getPkArgs, generateSkArgs('get'));\n Object.assign(listPkArgs, {\n // PK is only included in list query field args in the generated GQL\n // when explicitly specifying PK with .identifier(['fieldName']) or @primaryKey in the schema definition\n [primaryKeyFieldName]: `${fields[primaryKeyFieldName].type}`, // PK is always a nullable arg for list (no `!` after the type)\n sortDirection: 'ModelSortDirection',\n }, generateSkArgs('list'));\n }\n switch (modelOperation) {\n case 'CREATE':\n case 'UPDATE':\n case 'DELETE':\n graphQLArguments ??\n (graphQLArguments = {\n input: `${operationPrefix.charAt(0).toLocaleUpperCase() +\n operationPrefix.slice(1)}${namePascalCase}Input!`,\n });\n graphQLOperationType ?? (graphQLOperationType = 'mutation');\n // TODO(Eslint): this this case clause correct without the break statement?\n // eslint-disable-next-line no-fallthrough\n case 'READ':\n graphQLArguments ?? (graphQLArguments = getPkArgs);\n graphQLSelectionSet ?? (graphQLSelectionSet = selectionSetFields);\n // TODO(Eslint): this this case clause correct without the break statement?\n // eslint-disable-next-line no-fallthrough\n case 'LIST':\n graphQLArguments ??\n (graphQLArguments = {\n ...listPkArgs,\n // eslint doesn't like the ts-ignore, because it thinks it's unnecessary.\n // But TS doesn't like the `filter: ...` because it think it will always be\n // overwritten. (it won't be.) so, we need to ignore the TS error and then\n // ignore the eslint error on the ts-ignore.\n // eslint-disable-next-line\n // @ts-ignore\n filter: `Model${namePascalCase}FilterInput`,\n limit: 'Int',\n nextToken: 'String',\n });\n graphQLOperationType ?? (graphQLOperationType = 'query');\n graphQLSelectionSet ??\n (graphQLSelectionSet = `items { ${selectionSetFields} } nextToken __typename`);\n // TODO(Eslint): this this case clause correct without the break statement?\n // eslint-disable-next-line no-fallthrough\n case 'INDEX_QUERY':\n graphQLArguments ??\n (graphQLArguments = {\n ...indexQueryArgs,\n filter: `Model${namePascalCase}FilterInput`,\n sortDirection: 'ModelSortDirection',\n limit: 'Int',\n nextToken: 'String',\n });\n graphQLOperationType ?? (graphQLOperationType = 'query');\n graphQLSelectionSet ??\n (graphQLSelectionSet = `items { ${selectionSetFields} } nextToken __typename`);\n // TODO(Eslint): this this case clause correct without the break statement?\n // eslint-disable-next-line no-fallthrough\n case 'ONCREATE':\n case 'ONUPDATE':\n case 'ONDELETE':\n graphQLArguments ??\n (graphQLArguments = {\n filter: `ModelSubscription${namePascalCase}FilterInput`,\n });\n graphQLOperationType ?? (graphQLOperationType = 'subscription');\n graphQLSelectionSet ?? (graphQLSelectionSet = selectionSetFields);\n break;\n case 'OBSERVE_QUERY':\n default:\n throw new Error('Internal error: Attempted to generate graphql document for observeQuery. Please report this error.');\n }\n const graphQLDocument = `${graphQLOperationType}${graphQLArguments\n ? `(${Object.entries(graphQLArguments).map(([fieldName, type]) => `$${fieldName}: ${type}`)})`\n : ''} { ${graphQLFieldName}${graphQLArguments\n ? `(${Object.keys(graphQLArguments).map((fieldName) => `${fieldName}: $${fieldName}`)})`\n : ''} { ${graphQLSelectionSet} } }`;\n return graphQLDocument;\n}\nexport function buildGraphQLVariables(modelDefinition, operation, arg, modelIntrospection, indexMeta) {\n const { fields, primaryKeyInfo: { isCustomPrimaryKey, primaryKeyFieldName, sortKeyFieldNames, }, } = modelDefinition;\n const skName = sortKeyFieldNames?.length && resolvedSkName(sortKeyFieldNames);\n let variables = {};\n // TODO: process input\n switch (operation) {\n case 'CREATE':\n variables = {\n input: arg\n ? normalizeMutationInput(arg, modelDefinition, modelIntrospection)\n : {},\n };\n break;\n case 'UPDATE':\n // readonly fields are not updated\n variables = {\n input: arg\n ? Object.fromEntries(Object.entries(normalizeMutationInput(arg, modelDefinition, modelIntrospection)).filter(([fieldName]) => {\n const { isReadOnly } = fields[fieldName];\n return !isReadOnly;\n }))\n : {},\n };\n break;\n case 'READ':\n case 'DELETE':\n // only identifiers are sent\n if (arg) {\n variables = isCustomPrimaryKey\n ? [primaryKeyFieldName, ...sortKeyFieldNames].reduce((acc, fieldName) => {\n acc[fieldName] = arg[fieldName];\n return acc;\n }, {})\n : { [primaryKeyFieldName]: arg[primaryKeyFieldName] };\n }\n if (operation === 'DELETE') {\n variables = { input: variables };\n }\n break;\n case 'LIST':\n if (arg?.filter) {\n variables.filter = arg.filter;\n }\n if (arg?.sortDirection) {\n variables.sortDirection = arg.sortDirection;\n }\n if (arg && arg[primaryKeyFieldName]) {\n variables[primaryKeyFieldName] = arg[primaryKeyFieldName];\n }\n if (skName && arg && arg[skName]) {\n variables[skName] = arg[skName];\n }\n if (arg?.nextToken) {\n variables.nextToken = arg.nextToken;\n }\n if (arg?.limit) {\n variables.limit = arg.limit;\n }\n break;\n case 'INDEX_QUERY': {\n const { pk, sk = [] } = indexMeta;\n const indexQuerySkName = sk?.length && resolvedSkName(sk);\n variables[pk] = arg[pk];\n if (indexQuerySkName && arg && arg[indexQuerySkName]) {\n variables[indexQuerySkName] = arg[indexQuerySkName];\n }\n if (arg?.filter) {\n variables.filter = arg.filter;\n }\n if (arg?.sortDirection) {\n variables.sortDirection = arg.sortDirection;\n }\n if (arg?.nextToken) {\n variables.nextToken = arg.nextToken;\n }\n if (arg?.limit) {\n variables.limit = arg.limit;\n }\n break;\n }\n case 'ONCREATE':\n case 'ONUPDATE':\n case 'ONDELETE':\n if (arg?.filter) {\n variables = { filter: arg.filter };\n }\n break;\n case 'OBSERVE_QUERY':\n throw new Error('Internal error: Attempted to build variables for observeQuery. Please report this error.');\n break;\n default: {\n const exhaustiveCheck = operation;\n throw new Error(`Unhandled operation case: ${exhaustiveCheck}`);\n }\n }\n return variables;\n}\n/**\n * Iterates over mutation input values and resolves any model inputs to their corresponding join fields/values\n *\n * @example\n * ### Usage\n * ```ts\n * const result = normalizeMutationInput({ post: post }, model, modelDefinition);\n * ```\n * ### Result\n * ```ts\n * { postId: \"abc123\" }\n * ```\n *\n */\nexport function normalizeMutationInput(mutationInput, model, modelIntrospection) {\n const { fields } = model;\n const normalized = {};\n Object.entries(mutationInput).forEach(([inputFieldName, inputValue]) => {\n const fieldType = fields[inputFieldName]?.type;\n const relatedModelName = fieldType?.model;\n if (relatedModelName) {\n const association = fields[inputFieldName]?.association;\n const relatedModelDef = modelIntrospection.models[relatedModelName];\n const relatedModelPkInfo = relatedModelDef.primaryKeyInfo;\n if (association?.connectionType === connectionType.HAS_ONE) {\n const associationHasOne = association;\n associationHasOne.targetNames.forEach((targetName, idx) => {\n const associatedFieldName = associationHasOne.associatedWith[idx];\n normalized[targetName] = inputValue[associatedFieldName];\n });\n }\n if (association?.connectionType === connectionType.BELONGS_TO) {\n const associationBelongsTo = association;\n associationBelongsTo.targetNames.forEach((targetName, idx) => {\n if (idx === 0) {\n const associatedFieldName = relatedModelPkInfo.primaryKeyFieldName;\n normalized[targetName] = inputValue[associatedFieldName];\n }\n else {\n const associatedFieldName = relatedModelPkInfo.sortKeyFieldNames[idx - 1];\n normalized[targetName] = inputValue[associatedFieldName];\n }\n });\n }\n }\n else {\n normalized[inputFieldName] = inputValue;\n }\n });\n return normalized;\n}\n/**\n * Produces a parameter object that can contains auth mode/token overrides\n * only if present in either `options` (first) or configured on the `client`\n * as a fallback.\n *\n * @param client Configured client from `generateClient`\n * @param options Args/Options object from call site.\n * @returns\n */\nexport function authModeParams(client, getInternals, options = {}) {\n const internals = getInternals(client);\n return {\n authMode: options.authMode || internals.authMode,\n authToken: options.authToken || internals.authToken,\n };\n}\n/**\n * Retrieves custom headers from either the client or request options.\n * @param client V6Client | V6ClientSSRRequest | V6ClientSSRCookies - for extracting client headers\n * @param requestHeaders {@link CustomHeaders} - request headers\n * @returns custom headers as {@link CustomHeaders}\n */\nexport function getCustomHeaders(client, getInternals, requestHeaders) {\n let headers = getInternals(client).headers || {};\n // Individual request headers will take precedence over client headers.\n // We intentionally do *not* merge client and request headers.\n if (requestHeaders) {\n headers = requestHeaders;\n }\n return headers;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// import { GraphQLFormattedError } from '@aws-amplify/data-schema-types';\n/**\n * Handle errors for list return types (list and index query operations)\n */\nexport function handleListGraphQlError(error) {\n if (error?.errors) {\n // graphql errors pass through\n return {\n ...error,\n data: [],\n };\n }\n else {\n // non-graphql errors are re-thrown\n throw error;\n }\n}\n/**\n * Handle errors for singular return types (create, get, update, delete operations)\n */\nexport function handleSingularGraphQlError(error) {\n if (error.errors) {\n // graphql errors pass through\n return {\n ...error,\n data: null,\n };\n }\n else {\n // non-graphql errors are re-thrown\n throw error;\n }\n}\n","import { map } from 'rxjs';\nimport { authModeParams, getDefaultSelectionSetForNonModelWithIR, flattenItems, generateSelectionSet, getCustomHeaders, initializeModel, selectionSetIRToString, } from '../APIClient';\nimport { handleSingularGraphQlError } from './utils';\n/**\n * Type guard for checking whether a Custom Operation argument is a contextSpec object\n */\nconst argIsContextSpec = (arg) => {\n return typeof arg?.token?.value === 'symbol';\n};\n/**\n * Builds an operation function, embedded with all client and context data, that\n * can be attached to a client as a custom query or mutation.\n *\n * If we have this source schema:\n *\n * ```typescript\n * a.schema({\n * echo: a.query()\n * .arguments({input: a.string().required()})\n * .returns(a.string())\n * })\n * ```\n *\n * Our model intro schema will contain an entry like this:\n *\n * ```ts\n * {\n * queries: {\n * echo: {\n * name: \"echo\",\n * isArray: false,\n * type: 'String',\n * isRequired: false,\n * arguments: {\n * input: {\n * name: 'input',\n * isArray: false,\n * type: String,\n * isRequired: true\n * }\n * }\n * }\n * }\n * }\n * ```\n *\n * The `echo` object is used to build the `echo' method that goes here:\n *\n * ```typescript\n * const client = generateClent()\n * const { data } = await client.queries.echo({input: 'a string'});\n * // ^\n * // |\n * // +-- This one right here.\n * //\n * ```\n *\n *\n * @param client The client to run graphql queries through.\n * @param modelIntrospection The model introspection schema the op comes from.\n * @param operationType The broad category of graphql operation.\n * @param operation The operation definition from the introspection schema.\n * @param useContext Whether the function needs to accept an SSR context.\n * @returns The operation function to attach to query, mutations, etc.\n */\nexport function customOpFactory(client, modelIntrospection, operationType, operation, useContext, getInternals) {\n // .arguments() are defined for the custom operation in the schema builder\n // and are present in the model introspection schema\n const argsDefined = operation.arguments !== undefined;\n const op = (...args) => {\n // options is always the last argument\n const options = args[args.length - 1];\n let contextSpec;\n let arg;\n if (useContext) {\n if (argIsContextSpec(args[0])) {\n contextSpec = args[0];\n }\n else {\n throw new Error(`Invalid first argument passed to ${operation.name}. Expected contextSpec`);\n }\n }\n if (argsDefined) {\n if (useContext) {\n arg = args[1];\n }\n else {\n arg = args[0];\n }\n }\n if (operationType === 'subscription') {\n return _opSubscription(\n // subscriptions are only enabled on the clientside\n client, modelIntrospection, operation, getInternals, arg, options);\n }\n return _op(client, modelIntrospection, operationType, operation, getInternals, arg, options, contextSpec);\n };\n return op;\n}\n/**\n * Runtime test and type guard to check whether `o[field]` is a `String`.\n *\n * ```typescript\n * if (hasStringField(o, 'prop')) {\n * const s = o.prop;\n * // ^? const s: string\n * }\n * ```\n *\n * @param o Object to inspect\n * @param field Field to look for\n * @returns Boolean: `true` if the `o[field]` is a `string`\n */\nfunction hasStringField(o, field) {\n return typeof o[field] === 'string';\n}\n/**\n * Generates \"outer\" arguments string for a custom operation. For example,\n * in this operation:\n *\n * ```graphql\n * query MyQuery(InputString: String!) {\n * echoString(InputString: $InputString)\n * }\n * ```\n *\n * This function returns the top/outer level arguments as a string:\n *\n * ```json\n * \"InputString: String!\"\n * ```\n *\n * @param operation Operation object from model introspection schema.\n * @returns \"outer\" arguments string\n */\nfunction outerArguments(operation) {\n if (operation.arguments === undefined) {\n return '';\n }\n const args = Object.entries(operation.arguments)\n .map(([k, v]) => {\n const baseType = v.type + (v.isRequired ? '!' : '');\n const finalType = v.isArray\n ? `[${baseType}]${v.isArrayNullable ? '' : '!'}`\n : baseType;\n return `$${k}: ${finalType}`;\n })\n .join(', ');\n return args.length > 0 ? `(${args})` : '';\n}\n/**\n * Generates \"inner\" arguments string for a custom operation. For example,\n * in this operation:\n *\n * ```graphql\n * query MyQuery(InputString: String!) {\n * echoString(InputString: $InputString)\n * }\n * ```\n *\n * This function returns the inner arguments as a string:\n *\n * ```json\n * \"InputString: $InputString\"\n * ```\n *\n * @param operation Operation object from model introspection schema.\n * @returns \"outer\" arguments string\n */\nfunction innerArguments(operation) {\n if (operation.arguments === undefined) {\n return '';\n }\n const args = Object.keys(operation.arguments)\n .map((k) => `${k}: $${k}`)\n .join(', ');\n return args.length > 0 ? `(${args})` : '';\n}\n/**\n * Generates the selection set string for a custom operation. This is slightly\n * different than the selection set generation for models. If the custom op returns\n * a primitive or enum types, it doen't require a selection set at all.\n *\n * E.g., the graphql might look like this:\n *\n * ```graphql\n * query MyQuery {\n * echoString(inputString: \"whatever\")\n * }\n * # ^\n * # |\n * # +-- no selection set\n * ```\n *\n * Non-primitive return type selection set generation will be similar to other\n * model operations.\n *\n * @param modelIntrospection The full code-generated introspection schema.\n * @param operation The operation object from the schema.\n * @returns The selection set as a string.\n */\nfunction operationSelectionSet(modelIntrospection, operation) {\n if (hasStringField(operation, 'type') ||\n hasStringField(operation.type, 'enum')) {\n return '';\n }\n else if (hasStringField(operation.type, 'nonModel')) {\n const nonModel = modelIntrospection.nonModels[operation.type.nonModel];\n return `{${selectionSetIRToString(getDefaultSelectionSetForNonModelWithIR(nonModel, modelIntrospection))}}`;\n }\n else if (hasStringField(operation.type, 'model')) {\n return `{${generateSelectionSet(modelIntrospection, operation.type.model)}}`;\n }\n else {\n return '';\n }\n}\n/**\n * Maps an arguments objec to graphql variables, removing superfluous args and\n * screaming loudly when required args are missing.\n *\n * @param operation The operation to construct graphql request variables for.\n * @param args The arguments to map variables from.\n * @returns The graphql variables object.\n */\nfunction operationVariables(operation, args = {}) {\n const variables = {};\n if (operation.arguments === undefined) {\n return variables;\n }\n for (const argDef of Object.values(operation.arguments)) {\n if (typeof args[argDef.name] !== 'undefined') {\n variables[argDef.name] = args[argDef.name];\n }\n else if (argDef.isRequired) {\n // At this point, the variable is both required and missing: We don't need\n // to continue. The operation is expected to fail.\n throw new Error(`${operation.name} requires arguments '${argDef.name}'`);\n }\n }\n return variables;\n}\n/**\n * Executes an operation from the given model intro schema against a client, returning\n * a fully instantiated model when relevant.\n *\n * @param client The client to operate `graphql()` calls through.\n * @param modelIntrospection The model intro schema to construct requests from.\n * @param operationType The high level graphql operation type.\n * @param operation The specific operation name, args, return type details.\n * @param args The arguments to provide to the operation as variables.\n * @param options Request options like headers, etc.\n * @param context SSR context if relevant.\n * @returns Result from the graphql request, model-instantiated when relevant.\n */\nasync function _op(client, modelIntrospection, operationType, operation, getInternals, args, options, context) {\n const { name: operationName } = operation;\n const auth = authModeParams(client, getInternals, options);\n const headers = getCustomHeaders(client, getInternals, options?.headers);\n const outerArgsString = outerArguments(operation);\n const innerArgsString = innerArguments(operation);\n const selectionSet = operationSelectionSet(modelIntrospection, operation);\n const returnTypeModelName = hasStringField(operation.type, 'model')\n ? operation.type.model\n : undefined;\n const query = `\n ${operationType.toLocaleLowerCase()}${outerArgsString} {\n ${operationName}${innerArgsString} ${selectionSet}\n }\n `;\n const variables = operationVariables(operation, args);\n try {\n const { data, extensions } = context\n ? (await client.graphql(context, {\n ...auth,\n query,\n variables,\n }, headers))\n : (await client.graphql({\n ...auth,\n query,\n variables,\n }, headers));\n // flatten response\n if (data) {\n const [key] = Object.keys(data);\n const flattenedResult = flattenItems(data)[key];\n // TODO: custom selection set. current selection set is default selection set only\n // custom selection set requires data-schema-type + runtime updates above.\n const [initialized] = returnTypeModelName\n ? initializeModel(client, returnTypeModelName, [flattenedResult], modelIntrospection, auth.authMode, auth.authToken, !!context)\n : [flattenedResult];\n return { data: initialized, extensions };\n }\n else {\n return { data: null, extensions };\n }\n }\n catch (error) {\n /**\n * The `data` type returned by `error` here could be:\n * 1) `null`\n * 2) an empty object\n * 3) \"populated\" but with a `null` value `{ getPost: null }`\n * 4) an actual record `{ getPost: { id: '1', title: 'Hello, World!' } }`\n */\n const { data, errors } = error;\n /**\n * `data` is not `null`, and is not an empty object:\n */\n if (data && Object.keys(data).length !== 0 && errors) {\n const [key] = Object.keys(data);\n const flattenedResult = flattenItems(data)[key];\n /**\n * `flattenedResult` could be `null` here (e.g. `data: { getPost: null }`)\n * if `flattenedResult`, result is an actual record:\n */\n if (flattenedResult) {\n // TODO: custom selection set. current selection set is default selection set only\n // custom selection set requires data-schema-type + runtime updates above.\n const [initialized] = returnTypeModelName\n ? initializeModel(client, returnTypeModelName, [flattenedResult], modelIntrospection, auth.authMode, auth.authToken, !!context)\n : [flattenedResult];\n return { data: initialized, errors };\n }\n else {\n // was `data: { getPost: null }`)\n return handleSingularGraphQlError(error);\n }\n }\n else {\n // `data` is `null`:\n return handleSingularGraphQlError(error);\n }\n }\n}\n/**\n * Executes an operation from the given model intro schema against a client, returning\n * a fully instantiated model when relevant.\n *\n * @param client The client to operate `graphql()` calls through.\n * @param modelIntrospection The model intro schema to construct requests from.\n * @param operation The specific operation name, args, return type details.\n * @param args The arguments to provide to the operation as variables.\n * @param options Request options like headers, etc.\n * @returns Result from the graphql request, model-instantiated when relevant.\n */\nfunction _opSubscription(client, modelIntrospection, operation, getInternals, args, options) {\n const operationType = 'subscription';\n const { name: operationName } = operation;\n const auth = authModeParams(client, getInternals, options);\n const headers = getCustomHeaders(client, getInternals, options?.headers);\n const outerArgsString = outerArguments(operation);\n const innerArgsString = innerArguments(operation);\n const selectionSet = operationSelectionSet(modelIntrospection, operation);\n const returnTypeModelName = hasStringField(operation.type, 'model')\n ? operation.type.model\n : undefined;\n const query = `\n ${operationType.toLocaleLowerCase()}${outerArgsString} {\n ${operationName}${innerArgsString} ${selectionSet}\n }\n `;\n const variables = operationVariables(operation, args);\n const observable = client.graphql({\n ...auth,\n query,\n variables,\n }, headers);\n return observable.pipe(map((value) => {\n const [key] = Object.keys(value.data);\n const data = value.data[key];\n const [initialized] = returnTypeModelName\n ? initializeModel(client, returnTypeModelName, [data], modelIntrospection, auth.authMode, auth.authToken)\n : [data];\n return initialized;\n }));\n}\n","import { customOpFactory } from './operations/custom';\nconst operationTypeMap = {\n queries: 'query',\n mutations: 'mutation',\n subscriptions: 'subscription',\n};\nexport function generateCustomOperationsProperty(client, config, operationsType, getInternals) {\n // some bundlers end up with `Amplify.configure` being called *after* generate client.\n // if that occurs, we need to *not error* while we wait. handling for late configuration\n // occurs in `generateClient()`. we do not need to subscribe to Hub events here.\n if (!config) {\n return {};\n }\n const modelIntrospection = config.modelIntrospection;\n // model intro schema might be absent if there's not actually a configured GraphQL API\n if (!modelIntrospection) {\n return {};\n }\n // custom operations will be absent from model intro schema if no custom ops\n // are present on the source schema.\n const operations = modelIntrospection[operationsType];\n if (!operations) {\n return {};\n }\n const ops = {};\n const useContext = getInternals(client).amplify === null;\n for (const operation of Object.values(operations)) {\n ops[operation.name] = customOpFactory(client, modelIntrospection, operationTypeMap[operationsType], operation, useContext, getInternals);\n }\n return ops;\n}\nexport function generateCustomMutationsProperty(client, config, getInternals) {\n return generateCustomOperationsProperty(client, config, 'mutations', getInternals);\n}\nexport function generateCustomQueriesProperty(client, config, getInternals) {\n return generateCustomOperationsProperty(client, config, 'queries', getInternals);\n}\nexport function generateCustomSubscriptionsProperty(client, config, getInternals) {\n return generateCustomOperationsProperty(client, config, 'subscriptions', getInternals);\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const generateEnumsProperty = (graphqlConfig) => {\n const modelIntrospection = graphqlConfig.modelIntrospection;\n if (!modelIntrospection) {\n return {};\n }\n const enums = {};\n for (const [_, enumData] of Object.entries(modelIntrospection.enums)) {\n enums[enumData.name] = {\n values: () => enumData.values,\n };\n }\n return enums;\n};\n","import { authModeParams, buildGraphQLVariables, flattenItems, generateGraphQLDocument, getCustomHeaders, initializeModel, } from '../APIClient';\nimport { handleListGraphQlError } from './utils';\nexport function listFactory(client, modelIntrospection, model, getInternals, context = false) {\n const listWithContext = async (contextSpec, args) => {\n return _list(client, modelIntrospection, model, getInternals, args, contextSpec);\n };\n const list = async (args) => {\n return _list(client, modelIntrospection, model, getInternals, args);\n };\n return context ? listWithContext : list;\n}\nasync function _list(client, modelIntrospection, model, getInternals, args, contextSpec) {\n const { name } = model;\n const query = generateGraphQLDocument(modelIntrospection, name, 'LIST', args);\n const variables = buildGraphQLVariables(model, 'LIST', args, modelIntrospection);\n const auth = authModeParams(client, getInternals, args);\n try {\n const headers = getCustomHeaders(client, getInternals, args?.headers);\n const { data, extensions } = contextSpec\n ? (await client.graphql(contextSpec, {\n ...auth,\n query,\n variables,\n }, headers))\n : (await client.graphql({\n ...auth,\n query,\n variables,\n }, headers));\n // flatten response\n if (data !== undefined) {\n const [key] = Object.keys(data);\n if (data[key].items) {\n const flattenedResult = flattenItems(data)[key];\n // don't init if custom selection set\n if (args?.selectionSet) {\n return {\n data: flattenedResult,\n nextToken: data[key].nextToken,\n extensions,\n };\n }\n else {\n const initialized = initializeModel(client, name, flattenedResult, modelIntrospection, auth.authMode, auth.authToken, !!contextSpec);\n return {\n data: initialized,\n nextToken: data[key].nextToken,\n extensions,\n };\n }\n }\n return {\n data: data[key],\n nextToken: data[key].nextToken,\n extensions,\n };\n }\n }\n catch (error) {\n /**\n * The `data` type returned by `error` here could be:\n * 1) `null`\n * 2) an empty object\n * 3) \"populated\" but with a `null` value `data: { listPosts: null }`\n * 4) actual records `data: { listPosts: items: [{ id: '1', ...etc }] }`\n */\n const { data, errors } = error;\n // `data` is not `null`, and is not an empty object:\n if (data !== undefined &&\n data !== null &&\n Object.keys(data).length !== 0 &&\n errors) {\n const [key] = Object.keys(data);\n if (data[key]?.items) {\n const flattenedResult = flattenItems(data)[key];\n /**\n * Check exists since `flattenedResult` could be `null`.\n * if `flattenedResult` exists, result is an actual record.\n */\n if (flattenedResult) {\n // don't init if custom selection set\n if (args?.selectionSet) {\n return {\n data: flattenedResult,\n nextToken: data[key]?.nextToken,\n errors,\n };\n }\n else {\n const initialized = initializeModel(client, name, flattenedResult, modelIntrospection, auth.authMode, auth.authToken, !!contextSpec);\n // data is full record w/out selection set:\n return {\n data: initialized,\n nextToken: data[key]?.nextToken,\n errors,\n };\n }\n }\n return {\n data: data[key],\n nextToken: data[key]?.nextToken,\n errors,\n };\n }\n else {\n // response is of type `data: { getPost: null }`)\n return handleListGraphQlError(error);\n }\n }\n else {\n // `data` is `null` or an empty object:\n return handleListGraphQlError(error);\n }\n }\n}\n","import { authModeParams, buildGraphQLVariables, flattenItems, generateGraphQLDocument, getCustomHeaders, initializeModel, } from '../APIClient';\nimport { handleListGraphQlError } from './utils';\nexport function indexQueryFactory(client, modelIntrospection, model, indexMeta, getInternals, context = false) {\n const indexQueryWithContext = async (contextSpec, args, options) => {\n return _indexQuery(client, modelIntrospection, model, indexMeta, getInternals, {\n ...args,\n ...options,\n }, contextSpec);\n };\n const indexQuery = async (args, options) => {\n return _indexQuery(client, modelIntrospection, model, indexMeta, getInternals, {\n ...args,\n ...options,\n });\n };\n return context ? indexQueryWithContext : indexQuery;\n}\nfunction processGraphQlResponse(result, selectionSet, modelInitializer) {\n const { data, extensions } = result;\n const [key] = Object.keys(data);\n if (data[key].items) {\n const flattenedResult = flattenItems(data)[key];\n return {\n data: selectionSet ? flattenedResult : modelInitializer(flattenedResult),\n nextToken: data[key].nextToken,\n extensions,\n };\n }\n return {\n data: data[key],\n nextToken: data[key].nextToken,\n extensions,\n };\n}\nasync function _indexQuery(client, modelIntrospection, model, indexMeta, getInternals, args, contextSpec) {\n const { name } = model;\n const query = generateGraphQLDocument(modelIntrospection, name, 'INDEX_QUERY', args, indexMeta);\n const variables = buildGraphQLVariables(model, 'INDEX_QUERY', args, modelIntrospection, indexMeta);\n const auth = authModeParams(client, getInternals, args);\n const modelInitializer = (flattenedResult) => initializeModel(client, name, flattenedResult, modelIntrospection, auth.authMode, auth.authToken, !!contextSpec);\n try {\n const headers = getCustomHeaders(client, getInternals, args?.headers);\n const graphQlParams = {\n ...auth,\n query,\n variables,\n };\n const requestArgs = [graphQlParams, headers];\n if (contextSpec !== undefined) {\n requestArgs.unshift(contextSpec);\n }\n const response = (await client.graphql(...requestArgs));\n if (response.data !== undefined) {\n return processGraphQlResponse(response, args?.selectionSet, modelInitializer);\n }\n }\n catch (error) {\n /**\n * The `data` type returned by `error` here could be:\n * 1) `null`\n * 2) an empty object\n * 3) \"populated\" but with a `null` value:\n * `data: { listByExampleId: null }`\n * 4) an actual record:\n * `data: { listByExampleId: items: [{ id: '1', ...etc } }]`\n */\n const { data, errors } = error;\n // `data` is not `null`, and is not an empty object:\n if (data !== undefined && Object.keys(data).length !== 0 && errors) {\n const [key] = Object.keys(data);\n if (data[key]?.items) {\n const flattenedResult = flattenItems(data)[key];\n /**\n * Check exists since `flattenedResult` could be `null`.\n * if `flattenedResult` exists, result is an actual record.\n */\n if (flattenedResult) {\n return {\n data: args?.selectionSet\n ? flattenedResult\n : modelInitializer(flattenedResult),\n nextToken: data[key]?.nextToken,\n };\n }\n }\n // response is of type `data: { listByExampleId: null }`\n return {\n data: data[key],\n nextToken: data[key]?.nextToken,\n };\n }\n else {\n // `data` is `null` or an empty object:\n return handleListGraphQlError(error);\n }\n }\n}\n","import { authModeParams, buildGraphQLVariables, flattenItems, generateGraphQLDocument, getCustomHeaders, initializeModel, } from '../APIClient';\nimport { handleSingularGraphQlError } from './utils';\nexport function getFactory(client, modelIntrospection, model, operation, getInternals, useContext = false) {\n const getWithContext = async (contextSpec, arg, options) => {\n return _get(client, modelIntrospection, model, arg, options, operation, getInternals, contextSpec);\n };\n const get = async (arg, options) => {\n return _get(client, modelIntrospection, model, arg, options, operation, getInternals);\n };\n return useContext ? getWithContext : get;\n}\nasync function _get(client, modelIntrospection, model, arg, options, operation, getInternals, context) {\n const { name } = model;\n const query = generateGraphQLDocument(modelIntrospection, name, operation, options);\n const variables = buildGraphQLVariables(model, operation, arg, modelIntrospection);\n const auth = authModeParams(client, getInternals, options);\n try {\n const headers = getCustomHeaders(client, getInternals, options?.headers);\n const { data, extensions } = context\n ? (await client.graphql(context, {\n ...auth,\n query,\n variables,\n }, headers))\n : (await client.graphql({\n ...auth,\n query,\n variables,\n }, headers));\n // flatten response\n if (data) {\n const [key] = Object.keys(data);\n const flattenedResult = flattenItems(data)[key];\n if (options?.selectionSet) {\n return { data: flattenedResult, extensions };\n }\n else {\n // TODO: refactor to avoid destructuring here\n const [initialized] = initializeModel(client, name, [flattenedResult], modelIntrospection, auth.authMode, auth.authToken, !!context);\n return { data: initialized, extensions };\n }\n }\n else {\n return { data: null, extensions };\n }\n }\n catch (error) {\n /**\n * The `data` type returned by `error` here could be:\n * 1) `null`\n * 2) an empty object\n * 3) \"populated\" but with a `null` value `{ getPost: null }`\n * 4) an actual record `{ getPost: { id: '1', title: 'Hello, World!' } }`\n */\n const { data, errors } = error;\n /**\n * `data` is not `null`, and is not an empty object:\n */\n if (data && Object.keys(data).length !== 0 && errors) {\n const [key] = Object.keys(data);\n const flattenedResult = flattenItems(data)[key];\n /**\n * `flattenedResult` could be `null` here (e.g. `data: { getPost: null }`)\n * if `flattenedResult`, result is an actual record:\n */\n if (flattenedResult) {\n if (options?.selectionSet) {\n return { data: flattenedResult, errors };\n }\n else {\n // TODO: refactor to avoid destructuring here\n const [initialized] = initializeModel(client, name, [flattenedResult], modelIntrospection, auth.authMode, auth.authToken, !!context);\n return { data: initialized, errors };\n }\n }\n else {\n // was `data: { getPost: null }`)\n return handleSingularGraphQlError(error);\n }\n }\n else {\n // `data` is `null`:\n return handleSingularGraphQlError(error);\n }\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { map } from 'rxjs';\nimport { authModeParams, buildGraphQLVariables, generateGraphQLDocument, getCustomHeaders, initializeModel, } from '../APIClient';\nexport function subscriptionFactory(client, modelIntrospection, model, operation, getInternals) {\n const { name } = model;\n const subscription = (args) => {\n const query = generateGraphQLDocument(modelIntrospection, name, operation, args);\n const variables = buildGraphQLVariables(model, operation, args, modelIntrospection);\n const auth = authModeParams(client, getInternals, args);\n const headers = getCustomHeaders(client, getInternals, args?.headers);\n const observable = client.graphql({\n ...auth,\n query,\n variables,\n }, headers);\n return observable.pipe(map((value) => {\n const [key] = Object.keys(value.data);\n const data = value.data[key];\n const [initialized] = initializeModel(client, name, [data], modelIntrospection, auth.authMode, auth.authToken);\n return initialized;\n }));\n };\n return subscription;\n}\n","/**\n * Symbol.observable or a string \"@@observable\". Used for interop\n *\n * @deprecated We will no longer be exporting this symbol in upcoming versions of RxJS.\n * Instead polyfill and use Symbol.observable directly *or* use https://www.npmjs.com/package/symbol-observable\n */\nexport const observable: string | symbol = (() => (typeof Symbol === 'function' && Symbol.observable) || '@@observable')();\n","/**\n * This function takes one parameter and just returns it. Simply put,\n * this is like `<T>(x: T): T => x`.\n *\n * ## Examples\n *\n * This is useful in some cases when using things like `mergeMap`\n *\n * ```ts\n * import { interval, take, map, range, mergeMap, identity } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(5));\n *\n * const result$ = source$.pipe(\n * map(i => range(i)),\n * mergeMap(identity) // same as mergeMap(x => x)\n * );\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * Or when you want to selectively apply an operator\n *\n * ```ts\n * import { interval, take, identity } from 'rxjs';\n *\n * const shouldLimit = () => Math.random() < 0.5;\n *\n * const source$ = interval(1000);\n *\n * const result$ = source$.pipe(shouldLimit() ? take(5) : identity);\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * @param x Any value that is returned by this function\n * @returns The value passed as the first parameter to this function\n */\nexport function identity<T>(x: T): T {\n return x;\n}\n","import { identity } from './identity';\nimport { UnaryFunction } from '../types';\n\nexport function pipe(): typeof identity;\nexport function pipe<T, A>(fn1: UnaryFunction<T, A>): UnaryFunction<T, A>;\nexport function pipe<T, A, B>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>): UnaryFunction<T, B>;\nexport function pipe<T, A, B, C>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>): UnaryFunction<T, C>;\nexport function pipe<T, A, B, C, D>(\n fn1: UnaryFunction<T, A>,\n fn2: UnaryFunction<A, B>,\n fn3: UnaryFunction<B, C>,\n fn4: UnaryFunction<C, D>\n): UnaryFunction<T, D>;\nexport function pipe<T, A, B, C, D, E>(\n fn1: UnaryFunction<T, A>,\n fn2: UnaryFunction<A, B>,\n fn3: UnaryFunction<B, C>,\n fn4: UnaryFunction<C, D>,\n fn5: UnaryFunction<D, E>\n): UnaryFunction<T, E>;\nexport function pipe<T, A, B, C, D, E, F>(\n fn1: UnaryFunction<T, A>,\n fn2: UnaryFunction<A, B>,\n fn3: UnaryFunction<B, C>,\n fn4: UnaryFunction<C, D>,\n fn5: UnaryFunction<D, E>,\n fn6: UnaryFunction<E, F>\n): UnaryFunction<T, F>;\nexport function pipe<T, A, B, C, D, E, F, G>(\n fn1: UnaryFunction<T, A>,\n fn2: UnaryFunction<A, B>,\n fn3: UnaryFunction<B, C>,\n fn4: UnaryFunction<C, D>,\n fn5: UnaryFunction<D, E>,\n fn6: UnaryFunction<E, F>,\n fn7: UnaryFunction<F, G>\n): UnaryFunction<T, G>;\nexport function pipe<T, A, B, C, D, E, F, G, H>(\n fn1: UnaryFunction<T, A>,\n fn2: UnaryFunction<A, B>,\n fn3: UnaryFunction<B, C>,\n fn4: UnaryFunction<C, D>,\n fn5: UnaryFunction<D, E>,\n fn6: UnaryFunction<E, F>,\n fn7: UnaryFunction<F, G>,\n fn8: UnaryFunction<G, H>\n): UnaryFunction<T, H>;\nexport function pipe<T, A, B, C, D, E, F, G, H, I>(\n fn1: UnaryFunction<T, A>,\n fn2: UnaryFunction<A, B>,\n fn3: UnaryFunction<B, C>,\n fn4: UnaryFunction<C, D>,\n fn5: UnaryFunction<D, E>,\n fn6: UnaryFunction<E, F>,\n fn7: UnaryFunction<F, G>,\n fn8: UnaryFunction<G, H>,\n fn9: UnaryFunction<H, I>\n): UnaryFunction<T, I>;\nexport function pipe<T, A, B, C, D, E, F, G, H, I>(\n fn1: UnaryFunction<T, A>,\n fn2: UnaryFunction<A, B>,\n fn3: UnaryFunction<B, C>,\n fn4: UnaryFunction<C, D>,\n fn5: UnaryFunction<D, E>,\n fn6: UnaryFunction<E, F>,\n fn7: UnaryFunction<F, G>,\n fn8: UnaryFunction<G, H>,\n fn9: UnaryFunction<H, I>,\n ...fns: UnaryFunction<any, any>[]\n): UnaryFunction<T, unknown>;\n\n/**\n * pipe() can be called on one or more functions, each of which can take one argument (\"UnaryFunction\")\n * and uses it to return a value.\n * It returns a function that takes one argument, passes it to the first UnaryFunction, and then\n * passes the result to the next one, passes that result to the next one, and so on. \n */\nexport function pipe(...fns: Array<UnaryFunction<any, any>>): UnaryFunction<any, any> {\n return pipeFromArray(fns);\n}\n\n/** @internal */\nexport function pipeFromArray<T, R>(fns: Array<UnaryFunction<T, R>>): UnaryFunction<T, R> {\n if (fns.length === 0) {\n return identity as UnaryFunction<any, any>;\n }\n\n if (fns.length === 1) {\n return fns[0];\n }\n\n return function piped(input: T): R {\n return fns.reduce((prev: any, fn: UnaryFunction<T, R>) => fn(prev), input as any);\n };\n}\n","import { Operator } from './Operator';\nimport { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription, Subscription } from './Subscription';\nimport { TeardownLogic, OperatorFunction, Subscribable, Observer } from './types';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A representation of any set of values over any amount of time. This is the most basic building block\n * of RxJS.\n *\n * @class Observable<T>\n */\nexport class Observable<T> implements Subscribable<T> {\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n source: Observable<any> | undefined;\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n operator: Operator<any, T> | undefined;\n\n /**\n * @constructor\n * @param {Function} subscribe the function that is called when the Observable is\n * initially subscribed to. This function is given a Subscriber, to which new values\n * can be `next`ed, or an `error` method can be called to raise an error, or\n * `complete` can be called to notify of a successful completion.\n */\n constructor(subscribe?: (this: Observable<T>, subscriber: Subscriber<T>) => TeardownLogic) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n\n // HACK: Since TypeScript inherits static properties too, we have to\n // fight against TypeScript here so Subject can have a different static create signature\n /**\n * Creates a new Observable by calling the Observable constructor\n * @owner Observable\n * @method create\n * @param {Function} subscribe? the subscriber function to be passed to the Observable constructor\n * @return {Observable} a new observable\n * @nocollapse\n * @deprecated Use `new Observable()` instead. Will be removed in v8.\n */\n static create: (...args: any[]) => any = <T>(subscribe?: (subscriber: Subscriber<T>) => TeardownLogic) => {\n return new Observable<T>(subscribe);\n };\n\n /**\n * Creates a new Observable, with this Observable instance as the source, and the passed\n * operator defined as the new observable's operator.\n * @method lift\n * @param operator the operator defining the operation to take on the observable\n * @return a new observable with the Operator applied\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * If you have implemented an operator using `lift`, it is recommended that you create an\n * operator by simply returning `new Observable()` directly. See \"Creating new operators from\n * scratch\" section here: https://rxjs.dev/guide/operators\n */\n lift<R>(operator?: Operator<T, R>): Observable<R> {\n const observable = new Observable<R>();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n\n subscribe(observerOrNext?: Partial<Observer<T>> | ((value: T) => void)): Subscription;\n /** @deprecated Instead of passing separate callback arguments, use an observer argument. Signatures taking separate callback arguments will be removed in v8. Details: https://rxjs.dev/deprecations/subscribe-arguments */\n subscribe(next?: ((value: T) => void) | null, error?: ((error: any) => void) | null, complete?: (() => void) | null): Subscription;\n /**\n * Invokes an execution of an Observable and registers Observer handlers for notifications it will emit.\n *\n * <span class=\"informal\">Use it when you have all these Observables, but still nothing is happening.</span>\n *\n * `subscribe` is not a regular operator, but a method that calls Observable's internal `subscribe` function. It\n * might be for example a function that you passed to Observable's constructor, but most of the time it is\n * a library implementation, which defines what will be emitted by an Observable, and when it be will emitted. This means\n * that calling `subscribe` is actually the moment when Observable starts its work, not when it is created, as it is often\n * the thought.\n *\n * Apart from starting the execution of an Observable, this method allows you to listen for values\n * that an Observable emits, as well as for when it completes or errors. You can achieve this in two\n * of the following ways.\n *\n * The first way is creating an object that implements {@link Observer} interface. It should have methods\n * defined by that interface, but note that it should be just a regular JavaScript object, which you can create\n * yourself in any way you want (ES6 class, classic function constructor, object literal etc.). In particular, do\n * not attempt to use any RxJS implementation details to create Observers - you don't need them. Remember also\n * that your object does not have to implement all methods. If you find yourself creating a method that doesn't\n * do anything, you can simply omit it. Note however, if the `error` method is not provided and an error happens,\n * it will be thrown asynchronously. Errors thrown asynchronously cannot be caught using `try`/`catch`. Instead,\n * use the {@link onUnhandledError} configuration option or use a runtime handler (like `window.onerror` or\n * `process.on('error)`) to be notified of unhandled errors. Because of this, it's recommended that you provide\n * an `error` method to avoid missing thrown errors.\n *\n * The second way is to give up on Observer object altogether and simply provide callback functions in place of its methods.\n * This means you can provide three functions as arguments to `subscribe`, where the first function is equivalent\n * of a `next` method, the second of an `error` method and the third of a `complete` method. Just as in case of an Observer,\n * if you do not need to listen for something, you can omit a function by passing `undefined` or `null`,\n * since `subscribe` recognizes these functions by where they were placed in function call. When it comes\n * to the `error` function, as with an Observer, if not provided, errors emitted by an Observable will be thrown asynchronously.\n *\n * You can, however, subscribe with no parameters at all. This may be the case where you're not interested in terminal events\n * and you also handled emissions internally by using operators (e.g. using `tap`).\n *\n * Whichever style of calling `subscribe` you use, in both cases it returns a Subscription object.\n * This object allows you to call `unsubscribe` on it, which in turn will stop the work that an Observable does and will clean\n * up all resources that an Observable used. Note that cancelling a subscription will not call `complete` callback\n * provided to `subscribe` function, which is reserved for a regular completion signal that comes from an Observable.\n *\n * Remember that callbacks provided to `subscribe` are not guaranteed to be called asynchronously.\n * It is an Observable itself that decides when these functions will be called. For example {@link of}\n * by default emits all its values synchronously. Always check documentation for how given Observable\n * will behave when subscribed and if its default behavior can be modified with a `scheduler`.\n *\n * #### Examples\n *\n * Subscribe with an {@link guide/observer Observer}\n *\n * ```ts\n * import { of } from 'rxjs';\n *\n * const sumObserver = {\n * sum: 0,\n * next(value) {\n * console.log('Adding: ' + value);\n * this.sum = this.sum + value;\n * },\n * error() {\n * // We actually could just remove this method,\n * // since we do not really care about errors right now.\n * },\n * complete() {\n * console.log('Sum equals: ' + this.sum);\n * }\n * };\n *\n * of(1, 2, 3) // Synchronously emits 1, 2, 3 and then completes.\n * .subscribe(sumObserver);\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Subscribe with functions ({@link deprecations/subscribe-arguments deprecated})\n *\n * ```ts\n * import { of } from 'rxjs'\n *\n * let sum = 0;\n *\n * of(1, 2, 3).subscribe(\n * value => {\n * console.log('Adding: ' + value);\n * sum = sum + value;\n * },\n * undefined,\n * () => console.log('Sum equals: ' + sum)\n * );\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Cancel a subscription\n *\n * ```ts\n * import { interval } from 'rxjs';\n *\n * const subscription = interval(1000).subscribe({\n * next(num) {\n * console.log(num)\n * },\n * complete() {\n * // Will not be called, even when cancelling subscription.\n * console.log('completed!');\n * }\n * });\n *\n * setTimeout(() => {\n * subscription.unsubscribe();\n * console.log('unsubscribed!');\n * }, 2500);\n *\n * // Logs:\n * // 0 after 1s\n * // 1 after 2s\n * // 'unsubscribed!' after 2.5s\n * ```\n *\n * @param {Observer|Function} observerOrNext (optional) Either an observer with methods to be called,\n * or the first of three possible handlers, which is the handler for each value emitted from the subscribed\n * Observable.\n * @param {Function} error (optional) A handler for a terminal event resulting from an error. If no error handler is provided,\n * the error will be thrown asynchronously as unhandled.\n * @param {Function} complete (optional) A handler for a terminal event resulting from successful completion.\n * @return {Subscription} a subscription reference to the registered handlers\n * @method subscribe\n */\n subscribe(\n observerOrNext?: Partial<Observer<T>> | ((value: T) => void) | null,\n error?: ((error: any) => void) | null,\n complete?: (() => void) | null\n ): Subscription {\n const subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n\n errorContext(() => {\n const { operator, source } = this;\n subscriber.add(\n operator\n ? // We're dealing with a subscription in the\n // operator chain to one of our lifted operators.\n operator.call(subscriber, source)\n : source\n ? // If `source` has a value, but `operator` does not, something that\n // had intimate knowledge of our API, like our `Subject`, must have\n // set it. We're going to just call `_subscribe` directly.\n this._subscribe(subscriber)\n : // In all other cases, we're likely wrapping a user-provided initializer\n // function, so we need to catch errors and handle them appropriately.\n this._trySubscribe(subscriber)\n );\n });\n\n return subscriber;\n }\n\n /** @internal */\n protected _trySubscribe(sink: Subscriber<T>): TeardownLogic {\n try {\n return this._subscribe(sink);\n } catch (err) {\n // We don't need to return anything in this case,\n // because it's just going to try to `add()` to a subscription\n // above.\n sink.error(err);\n }\n }\n\n /**\n * Used as a NON-CANCELLABLE means of subscribing to an observable, for use with\n * APIs that expect promises, like `async/await`. You cannot unsubscribe from this.\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * #### Example\n *\n * ```ts\n * import { interval, take } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(4));\n *\n * async function getTotal() {\n * let total = 0;\n *\n * await source$.forEach(value => {\n * total += value;\n * console.log('observable -> ' + value);\n * });\n *\n * return total;\n * }\n *\n * getTotal().then(\n * total => console.log('Total: ' + total)\n * );\n *\n * // Expected:\n * // 'observable -> 0'\n * // 'observable -> 1'\n * // 'observable -> 2'\n * // 'observable -> 3'\n * // 'Total: 6'\n * ```\n *\n * @param next a handler for each value emitted by the observable\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n */\n forEach(next: (value: T) => void): Promise<void>;\n\n /**\n * @param next a handler for each value emitted by the observable\n * @param promiseCtor a constructor function used to instantiate the Promise\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n * @deprecated Passing a Promise constructor will no longer be available\n * in upcoming versions of RxJS. This is because it adds weight to the library, for very\n * little benefit. If you need this functionality, it is recommended that you either\n * polyfill Promise, or you create an adapter to convert the returned native promise\n * to whatever promise implementation you wanted. Will be removed in v8.\n */\n forEach(next: (value: T) => void, promiseCtor: PromiseConstructorLike): Promise<void>;\n\n forEach(next: (value: T) => void, promiseCtor?: PromiseConstructorLike): Promise<void> {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor<void>((resolve, reject) => {\n const subscriber = new SafeSubscriber<T>({\n next: (value) => {\n try {\n next(value);\n } catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n this.subscribe(subscriber);\n }) as Promise<void>;\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber<any>): TeardownLogic {\n return this.source?.subscribe(subscriber);\n }\n\n /**\n * An interop point defined by the es7-observable spec https://github.com/zenparsing/es-observable\n * @method Symbol.observable\n * @return {Observable} this instance of the observable\n */\n [Symbol_observable]() {\n return this;\n }\n\n /* tslint:disable:max-line-length */\n pipe(): Observable<T>;\n pipe<A>(op1: OperatorFunction<T, A>): Observable<A>;\n pipe<A, B>(op1: OperatorFunction<T, A>, op2: OperatorFunction<A, B>): Observable<B>;\n pipe<A, B, C>(op1: OperatorFunction<T, A>, op2: OperatorFunction<A, B>, op3: OperatorFunction<B, C>): Observable<C>;\n pipe<A, B, C, D>(\n op1: OperatorFunction<T, A>,\n op2: OperatorFunction<A, B>,\n op3: OperatorFunction<B, C>,\n op4: OperatorFunction<C, D>\n ): Observable<D>;\n pipe<A, B, C, D, E>(\n op1: OperatorFunction<T, A>,\n op2: OperatorFunction<A, B>,\n op3: OperatorFunction<B, C>,\n op4: OperatorFunction<C, D>,\n op5: OperatorFunction<D, E>\n ): Observable<E>;\n pipe<A, B, C, D, E, F>(\n op1: OperatorFunction<T, A>,\n op2: OperatorFunction<A, B>,\n op3: OperatorFunction<B, C>,\n op4: OperatorFunction<C, D>,\n op5: OperatorFunction<D, E>,\n op6: OperatorFunction<E, F>\n ): Observable<F>;\n pipe<A, B, C, D, E, F, G>(\n op1: OperatorFunction<T, A>,\n op2: OperatorFunction<A, B>,\n op3: OperatorFunction<B, C>,\n op4: OperatorFunction<C, D>,\n op5: OperatorFunction<D, E>,\n op6: OperatorFunction<E, F>,\n op7: OperatorFunction<F, G>\n ): Observable<G>;\n pipe<A, B, C, D, E, F, G, H>(\n op1: OperatorFunction<T, A>,\n op2: OperatorFunction<A, B>,\n op3: OperatorFunction<B, C>,\n op4: OperatorFunction<C, D>,\n op5: OperatorFunction<D, E>,\n op6: OperatorFunction<E, F>,\n op7: OperatorFunction<F, G>,\n op8: OperatorFunction<G, H>\n ): Observable<H>;\n pipe<A, B, C, D, E, F, G, H, I>(\n op1: OperatorFunction<T, A>,\n op2: OperatorFunction<A, B>,\n op3: OperatorFunction<B, C>,\n op4: OperatorFunction<C, D>,\n op5: OperatorFunction<D, E>,\n op6: OperatorFunction<E, F>,\n op7: OperatorFunction<F, G>,\n op8: OperatorFunction<G, H>,\n op9: OperatorFunction<H, I>\n ): Observable<I>;\n pipe<A, B, C, D, E, F, G, H, I>(\n op1: OperatorFunction<T, A>,\n op2: OperatorFunction<A, B>,\n op3: OperatorFunction<B, C>,\n op4: OperatorFunction<C, D>,\n op5: OperatorFunction<D, E>,\n op6: OperatorFunction<E, F>,\n op7: OperatorFunction<F, G>,\n op8: OperatorFunction<G, H>,\n op9: OperatorFunction<H, I>,\n ...operations: OperatorFunction<any, any>[]\n ): Observable<unknown>;\n /* tslint:enable:max-line-length */\n\n /**\n * Used to stitch together functional operators into a chain.\n * @method pipe\n * @return {Observable} the Observable result of all of the operators having\n * been called in the order they were passed in.\n *\n * ## Example\n *\n * ```ts\n * import { interval, filter, map, scan } from 'rxjs';\n *\n * interval(1000)\n * .pipe(\n * filter(x => x % 2 === 0),\n * map(x => x + x),\n * scan((acc, x) => acc + x)\n * )\n * .subscribe(x => console.log(x));\n * ```\n */\n pipe(...operations: OperatorFunction<any, any>[]): Observable<any> {\n return pipeFromArray(operations)(this);\n }\n\n /* tslint:disable:max-line-length */\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(): Promise<T | undefined>;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: typeof Promise): Promise<T | undefined>;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: PromiseConstructorLike): Promise<T | undefined>;\n /* tslint:enable:max-line-length */\n\n /**\n * Subscribe to this Observable and get a Promise resolving on\n * `complete` with the last emission (if any).\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * @method toPromise\n * @param [promiseCtor] a constructor function used to instantiate\n * the Promise\n * @return A Promise that resolves with the last value emit, or\n * rejects on an error. If there were no emissions, Promise\n * resolves with undefined.\n * @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise\n */\n toPromise(promiseCtor?: PromiseConstructorLike): Promise<T | undefined> {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n let value: T | undefined;\n this.subscribe(\n (x: T) => (value = x),\n (err: any) => reject(err),\n () => resolve(value)\n );\n }) as Promise<T | undefined>;\n }\n}\n\n/**\n * Decides between a passed promise constructor from consuming code,\n * A default configured promise constructor, and the native promise\n * constructor and returns it. If nothing can be found, it will throw\n * an error.\n * @param promiseCtor The optional promise constructor to passed by consuming code\n */\nfunction getPromiseCtor(promiseCtor: PromiseConstructorLike | undefined) {\n return promiseCtor ?? config.Promise ?? Promise;\n}\n\nfunction isObserver<T>(value: any): value is Observer<T> {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\n\nfunction isSubscriber<T>(value: any): value is Subscriber<T> {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Iterates through a collection to find a matching item and returns the index.\n *\n * @param needle The item to search for\n * @param haystack The collection to search\n * @param keyFields The fields used to indicate a match\n * @returns Index of `needle` in `haystack`, otherwise -1 if not found.\n */\nexport function findIndexByFields(needle, haystack, keyFields) {\n const searchObject = Object.fromEntries(keyFields.map((fieldName) => [fieldName, needle[fieldName]]));\n for (let i = 0; i < haystack.length; i++) {\n if (Object.keys(searchObject).every((k) => searchObject[k] === haystack[i][k])) {\n return i;\n }\n }\n return -1;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Observable } from 'rxjs';\nimport { findIndexByFields, resolvePKFields } from '../../utils';\nexport function observeQueryFactory(models, model) {\n const { name } = model;\n const observeQuery = (arg) => new Observable((subscriber) => {\n // what we'll be sending to our subscribers\n const items = [];\n // To enqueue subscription messages while we collect our initial\n // result set.\n const messageQueue = [];\n // operation to take when message(s) arrive.\n // this operation will be swapped out once initial \"sync\" is complete\n // to immediately ingest messsages.\n let receiveMessages = (...messages) => {\n return messageQueue.push(...messages);\n };\n // start subscriptions\n const onCreateSub = models[name].onCreate(arg).subscribe({\n next(item) {\n receiveMessages({ item, type: 'create' });\n },\n error(error) {\n subscriber.error({ type: 'onCreate', error });\n },\n });\n const onUpdateSub = models[name].onUpdate(arg).subscribe({\n next(item) {\n receiveMessages({ item, type: 'update' });\n },\n error(error) {\n subscriber.error({ type: 'onUpdate', error });\n },\n });\n const onDeleteSub = models[name].onDelete(arg).subscribe({\n next(item) {\n receiveMessages({ item, type: 'delete' });\n },\n error(error) {\n subscriber.error({ type: 'onDelete', error });\n },\n });\n // consumes a list of messages and sends a snapshot\n function ingestMessages(messages) {\n for (const message of messages) {\n const idx = findIndexByFields(message.item, items, pkFields);\n switch (message.type) {\n case 'create':\n if (idx < 0)\n items.push(message.item);\n break;\n case 'update':\n if (idx >= 0)\n items[idx] = message.item;\n break;\n case 'delete':\n if (idx >= 0)\n items.splice(idx, 1);\n break;\n default:\n console.error('Unrecognized message in observeQuery.', message);\n }\n }\n subscriber.next({\n items,\n isSynced: true,\n });\n }\n const pkFields = resolvePKFields(model);\n // initial results\n (async () => {\n let firstPage = true;\n let nextToken = null;\n while (!subscriber.closed && (firstPage || nextToken)) {\n firstPage = false;\n const { data: page, errors, nextToken: _nextToken, } = await models[name].list({ ...arg, nextToken });\n nextToken = _nextToken;\n items.push(...page);\n // if there are no more pages and no items we already know about\n // that need to be merged in from sub, we're \"synced\"\n const isSynced = messageQueue.length === 0 &&\n (nextToken === null || nextToken === undefined);\n subscriber.next({\n items,\n isSynced,\n });\n if (Array.isArray(errors)) {\n for (const error of errors) {\n subscriber.error(error);\n }\n }\n }\n // play through the queue\n if (messageQueue.length > 0) {\n ingestMessages(messageQueue);\n }\n // switch the queue to write directly to the items collection\n receiveMessages = (...messages) => {\n ingestMessages(messages);\n return items.length;\n };\n })();\n // when subscriber unsubscribes, tear down internal subs\n return () => {\n // 1. tear down internal subs\n onCreateSub.unsubscribe();\n onUpdateSub.unsubscribe();\n onDeleteSub.unsubscribe();\n // 2. there is no need to explicitly stop paging. instead, we\n // just check `subscriber.closed` above before fetching each page.\n };\n });\n return observeQuery;\n}\n","/**\n * Given a SchemaModel from a ModelIntrospectionSchema, returns the primary key\n * as an array of field names.\n *\n * @param model The model object\n * @returns Array of field names\n */\nexport function resolvePKFields(model) {\n const { primaryKeyFieldName, sortKeyFieldNames } = model.primaryKeyInfo;\n return [primaryKeyFieldName, ...sortKeyFieldNames];\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst attributeIsSecondaryIndex = (attr) => {\n return (attr.type === 'key' &&\n // presence of `name` property distinguishes GSI from primary index\n attr.properties?.name &&\n attr.properties?.queryField &&\n attr.properties?.fields.length > 0);\n};\nexport const getSecondaryIndexesFromSchemaModel = (model) => {\n const idxs = model.attributes\n ?.filter(attributeIsSecondaryIndex)\n .map((attr) => {\n const queryField = attr.properties.queryField;\n const [pk, ...sk] = attr.properties.fields;\n return {\n queryField,\n pk,\n sk,\n };\n });\n return idxs || [];\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { generateCustomQueriesProperty, generateCustomMutationsProperty, generateCustomSubscriptionsProperty, generateEnumsProperty, generateModelsProperty, } from './internals';\nexport function addSchemaToClient(client, apiGraphqlConfig, getInternals) {\n client.models = generateModelsProperty(client, apiGraphqlConfig, getInternals);\n client.enums = generateEnumsProperty(apiGraphqlConfig);\n client.queries = generateCustomQueriesProperty(client, apiGraphqlConfig, getInternals);\n client.mutations = generateCustomMutationsProperty(client, apiGraphqlConfig, getInternals);\n client.subscriptions = generateCustomSubscriptionsProperty(client, apiGraphqlConfig, getInternals);\n return client;\n}\n","import { graphQLOperationsInfo } from '../../APIClient';\nimport { listFactory } from '../../operations/list';\nimport { indexQueryFactory } from '../../operations/indexQuery';\nimport { getFactory } from '../../operations/get';\nimport { subscriptionFactory } from '../../operations/subscription';\nimport { observeQueryFactory } from '../../operations/observeQuery';\nimport { getSecondaryIndexesFromSchemaModel } from '../../clientUtils';\nexport function generateModelsProperty(client, apiGraphQLConfig, getInternals) {\n const models = {};\n const modelIntrospection = apiGraphQLConfig.modelIntrospection;\n if (!modelIntrospection) {\n return {};\n }\n const SUBSCRIPTION_OPS = ['ONCREATE', 'ONUPDATE', 'ONDELETE'];\n for (const model of Object.values(modelIntrospection.models)) {\n const { name } = model;\n models[name] = {};\n Object.entries(graphQLOperationsInfo).forEach(([key, { operationPrefix }]) => {\n const operation = key;\n if (operation === 'LIST') {\n models[name][operationPrefix] = listFactory(client, modelIntrospection, model, getInternals);\n }\n else if (SUBSCRIPTION_OPS.includes(operation)) {\n models[name][operationPrefix] = subscriptionFactory(client, modelIntrospection, model, operation, getInternals);\n }\n else if (operation === 'OBSERVE_QUERY') {\n models[name][operationPrefix] = observeQueryFactory(models, model);\n }\n else {\n models[name][operationPrefix] = getFactory(client, modelIntrospection, model, operation, getInternals);\n }\n });\n const secondaryIdxs = getSecondaryIndexesFromSchemaModel(model);\n for (const idx of secondaryIdxs) {\n models[name][idx.queryField] = indexQueryFactory(client, modelIntrospection, model, idx, getInternals);\n }\n }\n return models;\n}\n","export { CONTROL_MSG, ConnectionState } from './PubSub';\nexport var GraphQLAuthError;\n(function (GraphQLAuthError) {\n GraphQLAuthError[\"NO_API_KEY\"] = \"No api-key configured\";\n GraphQLAuthError[\"NO_CURRENT_USER\"] = \"No current user\";\n GraphQLAuthError[\"NO_CREDENTIALS\"] = \"No credentials\";\n GraphQLAuthError[\"NO_FEDERATED_JWT\"] = \"No federated jwt\";\n GraphQLAuthError[\"NO_AUTH_TOKEN\"] = \"No auth token specified\";\n})(GraphQLAuthError || (GraphQLAuthError = {}));\nexport const __amplify = Symbol('amplify');\nexport const __authMode = Symbol('authMode');\nexport const __authToken = Symbol('authToken');\nexport const __headers = Symbol('headers');\nexport function getInternals(client) {\n const c = client;\n return {\n amplify: c[__amplify],\n authMode: c[__authMode],\n authToken: c[__authToken],\n headers: c[__headers],\n };\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function isApiGraphQLConfig(apiGraphQLConfig) {\n return apiGraphQLConfig !== undefined;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var Framework;\n(function (Framework) {\n // < 100 - Web frameworks\n Framework[\"WebUnknown\"] = \"0\";\n Framework[\"React\"] = \"1\";\n Framework[\"NextJs\"] = \"2\";\n Framework[\"Angular\"] = \"3\";\n Framework[\"VueJs\"] = \"4\";\n Framework[\"Nuxt\"] = \"5\";\n Framework[\"Svelte\"] = \"6\";\n // 100s - Server side frameworks\n Framework[\"ServerSideUnknown\"] = \"100\";\n Framework[\"ReactSSR\"] = \"101\";\n Framework[\"NextJsSSR\"] = \"102\";\n Framework[\"AngularSSR\"] = \"103\";\n Framework[\"VueJsSSR\"] = \"104\";\n Framework[\"NuxtSSR\"] = \"105\";\n Framework[\"SvelteSSR\"] = \"106\";\n // 200s - Mobile framework\n Framework[\"ReactNative\"] = \"201\";\n Framework[\"Expo\"] = \"202\";\n})(Framework || (Framework = {}));\nexport var Category;\n(function (Category) {\n Category[\"API\"] = \"api\";\n Category[\"Auth\"] = \"auth\";\n Category[\"Analytics\"] = \"analytics\";\n Category[\"DataStore\"] = \"datastore\";\n Category[\"Geo\"] = \"geo\";\n Category[\"InAppMessaging\"] = \"inappmessaging\";\n Category[\"Interactions\"] = \"interactions\";\n Category[\"Predictions\"] = \"predictions\";\n Category[\"PubSub\"] = \"pubsub\";\n Category[\"PushNotification\"] = \"pushnotification\";\n Category[\"Storage\"] = \"storage\";\n})(Category || (Category = {}));\nexport var AnalyticsAction;\n(function (AnalyticsAction) {\n AnalyticsAction[\"Record\"] = \"1\";\n AnalyticsAction[\"IdentifyUser\"] = \"2\";\n})(AnalyticsAction || (AnalyticsAction = {}));\nexport var ApiAction;\n(function (ApiAction) {\n ApiAction[\"GraphQl\"] = \"1\";\n ApiAction[\"Get\"] = \"2\";\n ApiAction[\"Post\"] = \"3\";\n ApiAction[\"Put\"] = \"4\";\n ApiAction[\"Patch\"] = \"5\";\n ApiAction[\"Del\"] = \"6\";\n ApiAction[\"Head\"] = \"7\";\n})(ApiAction || (ApiAction = {}));\nexport var AuthAction;\n(function (AuthAction) {\n AuthAction[\"SignUp\"] = \"1\";\n AuthAction[\"ConfirmSignUp\"] = \"2\";\n AuthAction[\"ResendSignUpCode\"] = \"3\";\n AuthAction[\"SignIn\"] = \"4\";\n AuthAction[\"FetchMFAPreference\"] = \"6\";\n AuthAction[\"UpdateMFAPreference\"] = \"7\";\n AuthAction[\"SetUpTOTP\"] = \"10\";\n AuthAction[\"VerifyTOTPSetup\"] = \"11\";\n AuthAction[\"ConfirmSignIn\"] = \"12\";\n AuthAction[\"DeleteUserAttributes\"] = \"15\";\n AuthAction[\"DeleteUser\"] = \"16\";\n AuthAction[\"UpdateUserAttributes\"] = \"17\";\n AuthAction[\"FetchUserAttributes\"] = \"18\";\n AuthAction[\"ConfirmUserAttribute\"] = \"22\";\n AuthAction[\"SignOut\"] = \"26\";\n AuthAction[\"UpdatePassword\"] = \"27\";\n AuthAction[\"ResetPassword\"] = \"28\";\n AuthAction[\"ConfirmResetPassword\"] = \"29\";\n AuthAction[\"FederatedSignIn\"] = \"30\";\n AuthAction[\"RememberDevice\"] = \"32\";\n AuthAction[\"ForgetDevice\"] = \"33\";\n AuthAction[\"FetchDevices\"] = \"34\";\n AuthAction[\"SendUserAttributeVerificationCode\"] = \"35\";\n AuthAction[\"SignInWithRedirect\"] = \"36\";\n})(AuthAction || (AuthAction = {}));\nexport var DataStoreAction;\n(function (DataStoreAction) {\n DataStoreAction[\"Subscribe\"] = \"1\";\n DataStoreAction[\"GraphQl\"] = \"2\";\n})(DataStoreAction || (DataStoreAction = {}));\nexport var GeoAction;\n(function (GeoAction) {\n GeoAction[\"SearchByText\"] = \"0\";\n GeoAction[\"SearchByCoordinates\"] = \"1\";\n GeoAction[\"SearchForSuggestions\"] = \"2\";\n GeoAction[\"SearchByPlaceId\"] = \"3\";\n GeoAction[\"SaveGeofences\"] = \"4\";\n GeoAction[\"GetGeofence\"] = \"5\";\n GeoAction[\"ListGeofences\"] = \"6\";\n GeoAction[\"DeleteGeofences\"] = \"7\";\n})(GeoAction || (GeoAction = {}));\nexport var InAppMessagingAction;\n(function (InAppMessagingAction) {\n InAppMessagingAction[\"SyncMessages\"] = \"1\";\n InAppMessagingAction[\"IdentifyUser\"] = \"2\";\n InAppMessagingAction[\"NotifyMessageInteraction\"] = \"3\";\n})(InAppMessagingAction || (InAppMessagingAction = {}));\nexport var InteractionsAction;\n(function (InteractionsAction) {\n InteractionsAction[\"None\"] = \"0\";\n})(InteractionsAction || (InteractionsAction = {}));\nexport var PredictionsAction;\n(function (PredictionsAction) {\n PredictionsAction[\"Convert\"] = \"1\";\n PredictionsAction[\"Identify\"] = \"2\";\n PredictionsAction[\"Interpret\"] = \"3\";\n})(PredictionsAction || (PredictionsAction = {}));\nexport var PubSubAction;\n(function (PubSubAction) {\n PubSubAction[\"Subscribe\"] = \"1\";\n})(PubSubAction || (PubSubAction = {}));\nexport var PushNotificationAction;\n(function (PushNotificationAction) {\n PushNotificationAction[\"InitializePushNotifications\"] = \"1\";\n PushNotificationAction[\"IdentifyUser\"] = \"2\";\n})(PushNotificationAction || (PushNotificationAction = {}));\nexport var StorageAction;\n(function (StorageAction) {\n StorageAction[\"UploadData\"] = \"1\";\n StorageAction[\"DownloadData\"] = \"2\";\n StorageAction[\"List\"] = \"3\";\n StorageAction[\"Copy\"] = \"4\";\n StorageAction[\"Remove\"] = \"5\";\n StorageAction[\"GetProperties\"] = \"6\";\n StorageAction[\"GetUrl\"] = \"7\";\n})(StorageAction || (StorageAction = {}));\n","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n/**\n * Return true if `value` is object-like. A value is object-like if it's not\n * `null` and has a `typeof` result of \"object\".\n */\nexport default function isObjectLike(value) {\n return _typeof(value) == 'object' && value !== null;\n}\n","// In ES2015 (or a polyfilled) environment, this will be Symbol.iterator\n// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\nexport var SYMBOL_ITERATOR = typeof Symbol === 'function' && Symbol.iterator != null ? Symbol.iterator : '@@iterator'; // In ES2017 (or a polyfilled) environment, this will be Symbol.asyncIterator\n// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\nexport var SYMBOL_ASYNC_ITERATOR = typeof Symbol === 'function' && Symbol.asyncIterator != null ? Symbol.asyncIterator : '@@asyncIterator'; // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\nexport var SYMBOL_TO_STRING_TAG = typeof Symbol === 'function' && Symbol.toStringTag != null ? Symbol.toStringTag : '@@toStringTag';\n","/**\n * Represents a location in a Source.\n */\n\n/**\n * Takes a Source and a UTF-8 character offset, and returns the corresponding\n * line and column as a SourceLocation.\n */\nexport function getLocation(source, position) {\n var lineRegexp = /\\r\\n|[\\n\\r]/g;\n var line = 1;\n var column = position + 1;\n var match;\n\n while ((match = lineRegexp.exec(source.body)) && match.index < position) {\n line += 1;\n column = position + 1 - (match.index + match[0].length);\n }\n\n return {\n line: line,\n column: column\n };\n}\n","import { getLocation } from \"./location.mjs\";\n/**\n * Render a helpful description of the location in the GraphQL Source document.\n */\n\nexport function printLocation(location) {\n return printSourceLocation(location.source, getLocation(location.source, location.start));\n}\n/**\n * Render a helpful description of the location in the GraphQL Source document.\n */\n\nexport function printSourceLocation(source, sourceLocation) {\n var firstLineColumnOffset = source.locationOffset.column - 1;\n var body = whitespace(firstLineColumnOffset) + source.body;\n var lineIndex = sourceLocation.line - 1;\n var lineOffset = source.locationOffset.line - 1;\n var lineNum = sourceLocation.line + lineOffset;\n var columnOffset = sourceLocation.line === 1 ? firstLineColumnOffset : 0;\n var columnNum = sourceLocation.column + columnOffset;\n var locationStr = \"\".concat(source.name, \":\").concat(lineNum, \":\").concat(columnNum, \"\\n\");\n var lines = body.split(/\\r\\n|[\\n\\r]/g);\n var locationLine = lines[lineIndex]; // Special case for minified documents\n\n if (locationLine.length > 120) {\n var subLineIndex = Math.floor(columnNum / 80);\n var subLineColumnNum = columnNum % 80;\n var subLines = [];\n\n for (var i = 0; i < locationLine.length; i += 80) {\n subLines.push(locationLine.slice(i, i + 80));\n }\n\n return locationStr + printPrefixedLines([[\"\".concat(lineNum), subLines[0]]].concat(subLines.slice(1, subLineIndex + 1).map(function (subLine) {\n return ['', subLine];\n }), [[' ', whitespace(subLineColumnNum - 1) + '^'], ['', subLines[subLineIndex + 1]]]));\n }\n\n return locationStr + printPrefixedLines([// Lines specified like this: [\"prefix\", \"string\"],\n [\"\".concat(lineNum - 1), lines[lineIndex - 1]], [\"\".concat(lineNum), locationLine], ['', whitespace(columnNum - 1) + '^'], [\"\".concat(lineNum + 1), lines[lineIndex + 1]]]);\n}\n\nfunction printPrefixedLines(lines) {\n var existingLines = lines.filter(function (_ref) {\n var _ = _ref[0],\n line = _ref[1];\n return line !== undefined;\n });\n var padLen = Math.max.apply(Math, existingLines.map(function (_ref2) {\n var prefix = _ref2[0];\n return prefix.length;\n }));\n return existingLines.map(function (_ref3) {\n var prefix = _ref3[0],\n line = _ref3[1];\n return leftPad(padLen, prefix) + (line ? ' | ' + line : ' |');\n }).join('\\n');\n}\n\nfunction whitespace(len) {\n return Array(len + 1).join(' ');\n}\n\nfunction leftPad(len, str) {\n return whitespace(len - str.length) + str;\n}\n","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nimport isObjectLike from \"../jsutils/isObjectLike.mjs\";\nimport { SYMBOL_TO_STRING_TAG } from \"../polyfills/symbols.mjs\";\nimport { getLocation } from \"../language/location.mjs\";\nimport { printLocation, printSourceLocation } from \"../language/printLocation.mjs\";\n/**\n * A GraphQLError describes an Error found during the parse, validate, or\n * execute phases of performing a GraphQL operation. In addition to a message\n * and stack trace, it also includes information about the locations in a\n * GraphQL document and/or execution result that correspond to the Error.\n */\n\nexport var GraphQLError = /*#__PURE__*/function (_Error) {\n _inherits(GraphQLError, _Error);\n\n var _super = _createSuper(GraphQLError);\n\n /**\n * An array of { line, column } locations within the source GraphQL document\n * which correspond to this error.\n *\n * Errors during validation often contain multiple locations, for example to\n * point out two things with the same name. Errors during execution include a\n * single location, the field which produced the error.\n *\n * Enumerable, and appears in the result of JSON.stringify().\n */\n\n /**\n * An array describing the JSON-path into the execution response which\n * corresponds to this error. Only included for errors during execution.\n *\n * Enumerable, and appears in the result of JSON.stringify().\n */\n\n /**\n * An array of GraphQL AST Nodes corresponding to this error.\n */\n\n /**\n * The source GraphQL document for the first location of this error.\n *\n * Note that if this Error represents more than one node, the source may not\n * represent nodes after the first node.\n */\n\n /**\n * An array of character offsets within the source GraphQL document\n * which correspond to this error.\n */\n\n /**\n * The original error thrown from a field resolver during execution.\n */\n\n /**\n * Extension fields to add to the formatted error.\n */\n function GraphQLError(message, nodes, source, positions, path, originalError, extensions) {\n var _nodeLocations, _nodeLocations2, _nodeLocations3;\n\n var _this;\n\n _classCallCheck(this, GraphQLError);\n\n _this = _super.call(this, message);\n _this.name = 'GraphQLError';\n _this.originalError = originalError !== null && originalError !== void 0 ? originalError : undefined; // Compute list of blame nodes.\n\n _this.nodes = undefinedIfEmpty(Array.isArray(nodes) ? nodes : nodes ? [nodes] : undefined);\n var nodeLocations = [];\n\n for (var _i2 = 0, _ref3 = (_this$nodes = _this.nodes) !== null && _this$nodes !== void 0 ? _this$nodes : []; _i2 < _ref3.length; _i2++) {\n var _this$nodes;\n\n var _ref4 = _ref3[_i2];\n var loc = _ref4.loc;\n\n if (loc != null) {\n nodeLocations.push(loc);\n }\n }\n\n nodeLocations = undefinedIfEmpty(nodeLocations); // Compute locations in the source for the given nodes/positions.\n\n _this.source = source !== null && source !== void 0 ? source : (_nodeLocations = nodeLocations) === null || _nodeLocations === void 0 ? void 0 : _nodeLocations[0].source;\n _this.positions = positions !== null && positions !== void 0 ? positions : (_nodeLocations2 = nodeLocations) === null || _nodeLocations2 === void 0 ? void 0 : _nodeLocations2.map(function (loc) {\n return loc.start;\n });\n _this.locations = positions && source ? positions.map(function (pos) {\n return getLocation(source, pos);\n }) : (_nodeLocations3 = nodeLocations) === null || _nodeLocations3 === void 0 ? void 0 : _nodeLocations3.map(function (loc) {\n return getLocation(loc.source, loc.start);\n });\n _this.path = path !== null && path !== void 0 ? path : undefined;\n var originalExtensions = originalError === null || originalError === void 0 ? void 0 : originalError.extensions;\n\n if (extensions == null && isObjectLike(originalExtensions)) {\n _this.extensions = _objectSpread({}, originalExtensions);\n } else {\n _this.extensions = extensions !== null && extensions !== void 0 ? extensions : {};\n } // By being enumerable, JSON.stringify will include bellow properties in the resulting output.\n // This ensures that the simplest possible GraphQL service adheres to the spec.\n\n\n Object.defineProperties(_assertThisInitialized(_this), {\n message: {\n enumerable: true\n },\n locations: {\n enumerable: _this.locations != null\n },\n path: {\n enumerable: _this.path != null\n },\n extensions: {\n enumerable: _this.extensions != null && Object.keys(_this.extensions).length > 0\n },\n name: {\n enumerable: false\n },\n nodes: {\n enumerable: false\n },\n source: {\n enumerable: false\n },\n positions: {\n enumerable: false\n },\n originalError: {\n enumerable: false\n }\n }); // Include (non-enumerable) stack trace.\n\n if (originalError !== null && originalError !== void 0 && originalError.stack) {\n Object.defineProperty(_assertThisInitialized(_this), 'stack', {\n value: originalError.stack,\n writable: true,\n configurable: true\n });\n return _possibleConstructorReturn(_this);\n } // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_assertThisInitialized(_this), GraphQLError);\n } else {\n Object.defineProperty(_assertThisInitialized(_this), 'stack', {\n value: Error().stack,\n writable: true,\n configurable: true\n });\n }\n\n return _this;\n }\n\n _createClass(GraphQLError, [{\n key: \"toString\",\n value: function toString() {\n return printError(this);\n } // FIXME: workaround to not break chai comparisons, should be remove in v16\n // $FlowFixMe[unsupported-syntax] Flow doesn't support computed properties yet\n\n }, {\n key: SYMBOL_TO_STRING_TAG,\n get: function get() {\n return 'Object';\n }\n }]);\n\n return GraphQLError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\n\nfunction undefinedIfEmpty(array) {\n return array === undefined || array.length === 0 ? undefined : array;\n}\n/**\n * Prints a GraphQLError to a string, representing useful location information\n * about the error's position in the source.\n */\n\n\nexport function printError(error) {\n var output = error.message;\n\n if (error.nodes) {\n for (var _i4 = 0, _error$nodes2 = error.nodes; _i4 < _error$nodes2.length; _i4++) {\n var node = _error$nodes2[_i4];\n\n if (node.loc) {\n output += '\\n\\n' + printLocation(node.loc);\n }\n }\n } else if (error.source && error.locations) {\n for (var _i6 = 0, _error$locations2 = error.locations; _i6 < _error$locations2.length; _i6++) {\n var location = _error$locations2[_i6];\n output += '\\n\\n' + printSourceLocation(error.source, location);\n }\n }\n\n return output;\n}\n","import { GraphQLError } from \"./GraphQLError.mjs\";\n/**\n * Produces a GraphQLError representing a syntax error, containing useful\n * descriptive information about the syntax error's position in the source.\n */\n\nexport function syntaxError(source, position, description) {\n return new GraphQLError(\"Syntax Error: \".concat(description), undefined, source, [position]);\n}\n","/**\n * The set of allowed kind values for AST nodes.\n */\nexport var Kind = Object.freeze({\n // Name\n NAME: 'Name',\n // Document\n DOCUMENT: 'Document',\n OPERATION_DEFINITION: 'OperationDefinition',\n VARIABLE_DEFINITION: 'VariableDefinition',\n SELECTION_SET: 'SelectionSet',\n FIELD: 'Field',\n ARGUMENT: 'Argument',\n // Fragments\n FRAGMENT_SPREAD: 'FragmentSpread',\n INLINE_FRAGMENT: 'InlineFragment',\n FRAGMENT_DEFINITION: 'FragmentDefinition',\n // Values\n VARIABLE: 'Variable',\n INT: 'IntValue',\n FLOAT: 'FloatValue',\n STRING: 'StringValue',\n BOOLEAN: 'BooleanValue',\n NULL: 'NullValue',\n ENUM: 'EnumValue',\n LIST: 'ListValue',\n OBJECT: 'ObjectValue',\n OBJECT_FIELD: 'ObjectField',\n // Directives\n DIRECTIVE: 'Directive',\n // Types\n NAMED_TYPE: 'NamedType',\n LIST_TYPE: 'ListType',\n NON_NULL_TYPE: 'NonNullType',\n // Type System Definitions\n SCHEMA_DEFINITION: 'SchemaDefinition',\n OPERATION_TYPE_DEFINITION: 'OperationTypeDefinition',\n // Type Definitions\n SCALAR_TYPE_DEFINITION: 'ScalarTypeDefinition',\n OBJECT_TYPE_DEFINITION: 'ObjectTypeDefinition',\n FIELD_DEFINITION: 'FieldDefinition',\n INPUT_VALUE_DEFINITION: 'InputValueDefinition',\n INTERFACE_TYPE_DEFINITION: 'InterfaceTypeDefinition',\n UNION_TYPE_DEFINITION: 'UnionTypeDefinition',\n ENUM_TYPE_DEFINITION: 'EnumTypeDefinition',\n ENUM_VALUE_DEFINITION: 'EnumValueDefinition',\n INPUT_OBJECT_TYPE_DEFINITION: 'InputObjectTypeDefinition',\n // Directive Definitions\n DIRECTIVE_DEFINITION: 'DirectiveDefinition',\n // Type System Extensions\n SCHEMA_EXTENSION: 'SchemaExtension',\n // Type Extensions\n SCALAR_TYPE_EXTENSION: 'ScalarTypeExtension',\n OBJECT_TYPE_EXTENSION: 'ObjectTypeExtension',\n INTERFACE_TYPE_EXTENSION: 'InterfaceTypeExtension',\n UNION_TYPE_EXTENSION: 'UnionTypeExtension',\n ENUM_TYPE_EXTENSION: 'EnumTypeExtension',\n INPUT_OBJECT_TYPE_EXTENSION: 'InputObjectTypeExtension'\n});\n/**\n * The enum type representing the possible kind values of AST nodes.\n */\n","// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\nvar nodejsCustomInspectSymbol = typeof Symbol === 'function' && typeof Symbol.for === 'function' ? Symbol.for('nodejs.util.inspect.custom') : undefined;\nexport default nodejsCustomInspectSymbol;\n","import invariant from \"./invariant.mjs\";\nimport nodejsCustomInspectSymbol from \"./nodejsCustomInspectSymbol.mjs\";\n/**\n * The `defineInspect()` function defines `inspect()` prototype method as alias of `toJSON`\n */\n\nexport default function defineInspect(classObject) {\n var fn = classObject.prototype.toJSON;\n typeof fn === 'function' || invariant(0);\n classObject.prototype.inspect = fn; // istanbul ignore else (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\n if (nodejsCustomInspectSymbol) {\n classObject.prototype[nodejsCustomInspectSymbol] = fn;\n }\n}\n","export default function invariant(condition, message) {\n var booleanCondition = Boolean(condition); // istanbul ignore else (See transformation done in './resources/inlineInvariant.js')\n\n if (!booleanCondition) {\n throw new Error(message != null ? message : 'Unexpected invariant triggered.');\n }\n}\n","import defineInspect from \"../jsutils/defineInspect.mjs\";\n\n/**\n * Contains a range of UTF-8 character offsets and token references that\n * identify the region of the source from which the AST derived.\n */\nexport var Location = /*#__PURE__*/function () {\n /**\n * The character offset at which this Node begins.\n */\n\n /**\n * The character offset at which this Node ends.\n */\n\n /**\n * The Token at which this Node begins.\n */\n\n /**\n * The Token at which this Node ends.\n */\n\n /**\n * The Source document the AST represents.\n */\n function Location(startToken, endToken, source) {\n this.start = startToken.start;\n this.end = endToken.end;\n this.startToken = startToken;\n this.endToken = endToken;\n this.source = source;\n }\n\n var _proto = Location.prototype;\n\n _proto.toJSON = function toJSON() {\n return {\n start: this.start,\n end: this.end\n };\n };\n\n return Location;\n}(); // Print a simplified form when appearing in `inspect` and `util.inspect`.\n\ndefineInspect(Location);\n/**\n * Represents a range of characters represented by a lexical token\n * within a Source.\n */\n\nexport var Token = /*#__PURE__*/function () {\n /**\n * The kind of Token.\n */\n\n /**\n * The character offset at which this Node begins.\n */\n\n /**\n * The character offset at which this Node ends.\n */\n\n /**\n * The 1-indexed line number on which this Token appears.\n */\n\n /**\n * The 1-indexed column number at which this Token begins.\n */\n\n /**\n * For non-punctuation tokens, represents the interpreted value of the token.\n */\n\n /**\n * Tokens exist as nodes in a double-linked-list amongst all tokens\n * including ignored tokens. <SOF> is always the first node and <EOF>\n * the last.\n */\n function Token(kind, start, end, line, column, prev, value) {\n this.kind = kind;\n this.start = start;\n this.end = end;\n this.line = line;\n this.column = column;\n this.value = value;\n this.prev = prev;\n this.next = null;\n }\n\n var _proto2 = Token.prototype;\n\n _proto2.toJSON = function toJSON() {\n return {\n kind: this.kind,\n value: this.value,\n line: this.line,\n column: this.column\n };\n };\n\n return Token;\n}(); // Print a simplified form when appearing in `inspect` and `util.inspect`.\n\ndefineInspect(Token);\n/**\n * @internal\n */\n\nexport function isNode(maybeNode) {\n return maybeNode != null && typeof maybeNode.kind === 'string';\n}\n/**\n * The list of all possible AST node types.\n */\n","/**\n * An exported enum describing the different kinds of tokens that the\n * lexer emits.\n */\nexport var TokenKind = Object.freeze({\n SOF: '<SOF>',\n EOF: '<EOF>',\n BANG: '!',\n DOLLAR: '$',\n AMP: '&',\n PAREN_L: '(',\n PAREN_R: ')',\n SPREAD: '...',\n COLON: ':',\n EQUALS: '=',\n AT: '@',\n BRACKET_L: '[',\n BRACKET_R: ']',\n BRACE_L: '{',\n PIPE: '|',\n BRACE_R: '}',\n NAME: 'Name',\n INT: 'Int',\n FLOAT: 'Float',\n STRING: 'String',\n BLOCK_STRING: 'BlockString',\n COMMENT: 'Comment'\n});\n/**\n * The enum type representing the token kinds values.\n */\n","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n/* eslint-disable flowtype/no-weak-types */\nimport nodejsCustomInspectSymbol from \"./nodejsCustomInspectSymbol.mjs\";\nvar MAX_ARRAY_LENGTH = 10;\nvar MAX_RECURSIVE_DEPTH = 2;\n/**\n * Used to print values in error messages.\n */\n\nexport default function inspect(value) {\n return formatValue(value, []);\n}\n\nfunction formatValue(value, seenValues) {\n switch (_typeof(value)) {\n case 'string':\n return JSON.stringify(value);\n\n case 'function':\n return value.name ? \"[function \".concat(value.name, \"]\") : '[function]';\n\n case 'object':\n if (value === null) {\n return 'null';\n }\n\n return formatObjectValue(value, seenValues);\n\n default:\n return String(value);\n }\n}\n\nfunction formatObjectValue(value, previouslySeenValues) {\n if (previouslySeenValues.indexOf(value) !== -1) {\n return '[Circular]';\n }\n\n var seenValues = [].concat(previouslySeenValues, [value]);\n var customInspectFn = getCustomFn(value);\n\n if (customInspectFn !== undefined) {\n var customValue = customInspectFn.call(value); // check for infinite recursion\n\n if (customValue !== value) {\n return typeof customValue === 'string' ? customValue : formatValue(customValue, seenValues);\n }\n } else if (Array.isArray(value)) {\n return formatArray(value, seenValues);\n }\n\n return formatObject(value, seenValues);\n}\n\nfunction formatObject(object, seenValues) {\n var keys = Object.keys(object);\n\n if (keys.length === 0) {\n return '{}';\n }\n\n if (seenValues.length > MAX_RECURSIVE_DEPTH) {\n return '[' + getObjectTag(object) + ']';\n }\n\n var properties = keys.map(function (key) {\n var value = formatValue(object[key], seenValues);\n return key + ': ' + value;\n });\n return '{ ' + properties.join(', ') + ' }';\n}\n\nfunction formatArray(array, seenValues) {\n if (array.length === 0) {\n return '[]';\n }\n\n if (seenValues.length > MAX_RECURSIVE_DEPTH) {\n return '[Array]';\n }\n\n var len = Math.min(MAX_ARRAY_LENGTH, array.length);\n var remaining = array.length - len;\n var items = [];\n\n for (var i = 0; i < len; ++i) {\n items.push(formatValue(array[i], seenValues));\n }\n\n if (remaining === 1) {\n items.push('... 1 more item');\n } else if (remaining > 1) {\n items.push(\"... \".concat(remaining, \" more items\"));\n }\n\n return '[' + items.join(', ') + ']';\n}\n\nfunction getCustomFn(object) {\n var customInspectFn = object[String(nodejsCustomInspectSymbol)];\n\n if (typeof customInspectFn === 'function') {\n return customInspectFn;\n }\n\n if (typeof object.inspect === 'function') {\n return object.inspect;\n }\n}\n\nfunction getObjectTag(object) {\n var tag = Object.prototype.toString.call(object).replace(/^\\[object /, '').replace(/]$/, '');\n\n if (tag === 'Object' && typeof object.constructor === 'function') {\n var name = object.constructor.name;\n\n if (typeof name === 'string' && name !== '') {\n return name;\n }\n }\n\n return tag;\n}\n","export default function devAssert(condition, message) {\n var booleanCondition = Boolean(condition); // istanbul ignore else (See transformation done in './resources/inlineInvariant.js')\n\n if (!booleanCondition) {\n throw new Error(message);\n }\n}\n","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nimport inspect from \"./inspect.mjs\";\n/**\n * A replacement for instanceof which includes an error warning when multi-realm\n * constructors are detected.\n */\n\n// See: https://expressjs.com/en/advanced/best-practice-performance.html#set-node_env-to-production\n// See: https://webpack.js.org/guides/production/\nexport default process.env.NODE_ENV === 'production' ? // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n// eslint-disable-next-line no-shadow\nfunction instanceOf(value, constructor) {\n return value instanceof constructor;\n} : // eslint-disable-next-line no-shadow\nfunction instanceOf(value, constructor) {\n if (value instanceof constructor) {\n return true;\n }\n\n if (_typeof(value) === 'object' && value !== null) {\n var _value$constructor;\n\n var className = constructor.prototype[Symbol.toStringTag];\n var valueClassName = // We still need to support constructor's name to detect conflicts with older versions of this library.\n Symbol.toStringTag in value ? value[Symbol.toStringTag] : (_value$constructor = value.constructor) === null || _value$constructor === void 0 ? void 0 : _value$constructor.name;\n\n if (className === valueClassName) {\n var stringifiedValue = inspect(value);\n throw new Error(\"Cannot use \".concat(className, \" \\\"\").concat(stringifiedValue, \"\\\" from another module or realm.\\n\\nEnsure that there is only one instance of \\\"graphql\\\" in the node_modules\\ndirectory. If different versions of \\\"graphql\\\" are the dependencies of other\\nrelied on modules, use \\\"resolutions\\\" to ensure only one version is installed.\\n\\nhttps://yarnpkg.com/en/docs/selective-version-resolutions\\n\\nDuplicate \\\"graphql\\\" modules cannot be used at the same time since different\\nversions may have different capabilities and behavior. The data from one\\nversion used in the function from another could produce confusing and\\nspurious results.\"));\n }\n }\n\n return false;\n};\n","function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nimport { SYMBOL_TO_STRING_TAG } from \"../polyfills/symbols.mjs\";\nimport inspect from \"../jsutils/inspect.mjs\";\nimport devAssert from \"../jsutils/devAssert.mjs\";\nimport instanceOf from \"../jsutils/instanceOf.mjs\";\n\n/**\n * A representation of source input to GraphQL. The `name` and `locationOffset` parameters are\n * optional, but they are useful for clients who store GraphQL documents in source files.\n * For example, if the GraphQL input starts at line 40 in a file named `Foo.graphql`, it might\n * be useful for `name` to be `\"Foo.graphql\"` and location to be `{ line: 40, column: 1 }`.\n * The `line` and `column` properties in `locationOffset` are 1-indexed.\n */\nexport var Source = /*#__PURE__*/function () {\n function Source(body) {\n var name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'GraphQL request';\n var locationOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {\n line: 1,\n column: 1\n };\n typeof body === 'string' || devAssert(0, \"Body must be a string. Received: \".concat(inspect(body), \".\"));\n this.body = body;\n this.name = name;\n this.locationOffset = locationOffset;\n this.locationOffset.line > 0 || devAssert(0, 'line in locationOffset is 1-indexed and must be positive.');\n this.locationOffset.column > 0 || devAssert(0, 'column in locationOffset is 1-indexed and must be positive.');\n } // $FlowFixMe[unsupported-syntax] Flow doesn't support computed properties yet\n\n\n _createClass(Source, [{\n key: SYMBOL_TO_STRING_TAG,\n get: function get() {\n return 'Source';\n }\n }]);\n\n return Source;\n}();\n/**\n * Test if the given value is a Source object.\n *\n * @internal\n */\n\n// eslint-disable-next-line no-redeclare\nexport function isSource(source) {\n return instanceOf(source, Source);\n}\n","/**\n * The set of allowed directive location values.\n */\nexport var DirectiveLocation = Object.freeze({\n // Request Definitions\n QUERY: 'QUERY',\n MUTATION: 'MUTATION',\n SUBSCRIPTION: 'SUBSCRIPTION',\n FIELD: 'FIELD',\n FRAGMENT_DEFINITION: 'FRAGMENT_DEFINITION',\n FRAGMENT_SPREAD: 'FRAGMENT_SPREAD',\n INLINE_FRAGMENT: 'INLINE_FRAGMENT',\n VARIABLE_DEFINITION: 'VARIABLE_DEFINITION',\n // Type System Definitions\n SCHEMA: 'SCHEMA',\n SCALAR: 'SCALAR',\n OBJECT: 'OBJECT',\n FIELD_DEFINITION: 'FIELD_DEFINITION',\n ARGUMENT_DEFINITION: 'ARGUMENT_DEFINITION',\n INTERFACE: 'INTERFACE',\n UNION: 'UNION',\n ENUM: 'ENUM',\n ENUM_VALUE: 'ENUM_VALUE',\n INPUT_OBJECT: 'INPUT_OBJECT',\n INPUT_FIELD_DEFINITION: 'INPUT_FIELD_DEFINITION'\n});\n/**\n * The enum type representing the directive location values.\n */\n","/**\n * Produces the value of a block string from its parsed raw value, similar to\n * CoffeeScript's block string, Python's docstring trim or Ruby's strip_heredoc.\n *\n * This implements the GraphQL spec's BlockStringValue() static algorithm.\n *\n * @internal\n */\nexport function dedentBlockStringValue(rawString) {\n // Expand a block string's raw value into independent lines.\n var lines = rawString.split(/\\r\\n|[\\n\\r]/g); // Remove common indentation from all lines but first.\n\n var commonIndent = getBlockStringIndentation(rawString);\n\n if (commonIndent !== 0) {\n for (var i = 1; i < lines.length; i++) {\n lines[i] = lines[i].slice(commonIndent);\n }\n } // Remove leading and trailing blank lines.\n\n\n var startLine = 0;\n\n while (startLine < lines.length && isBlank(lines[startLine])) {\n ++startLine;\n }\n\n var endLine = lines.length;\n\n while (endLine > startLine && isBlank(lines[endLine - 1])) {\n --endLine;\n } // Return a string of the lines joined with U+000A.\n\n\n return lines.slice(startLine, endLine).join('\\n');\n}\n\nfunction isBlank(str) {\n for (var i = 0; i < str.length; ++i) {\n if (str[i] !== ' ' && str[i] !== '\\t') {\n return false;\n }\n }\n\n return true;\n}\n/**\n * @internal\n */\n\n\nexport function getBlockStringIndentation(value) {\n var _commonIndent;\n\n var isFirstLine = true;\n var isEmptyLine = true;\n var indent = 0;\n var commonIndent = null;\n\n for (var i = 0; i < value.length; ++i) {\n switch (value.charCodeAt(i)) {\n case 13:\n // \\r\n if (value.charCodeAt(i + 1) === 10) {\n ++i; // skip \\r\\n as one symbol\n }\n\n // falls through\n\n case 10:\n // \\n\n isFirstLine = false;\n isEmptyLine = true;\n indent = 0;\n break;\n\n case 9: // \\t\n\n case 32:\n // <space>\n ++indent;\n break;\n\n default:\n if (isEmptyLine && !isFirstLine && (commonIndent === null || indent < commonIndent)) {\n commonIndent = indent;\n }\n\n isEmptyLine = false;\n }\n }\n\n return (_commonIndent = commonIndent) !== null && _commonIndent !== void 0 ? _commonIndent : 0;\n}\n/**\n * Print a block string in the indented block form by adding a leading and\n * trailing blank line. However, if a block string starts with whitespace and is\n * a single-line, adding a leading blank line would strip that whitespace.\n *\n * @internal\n */\n\nexport function printBlockString(value) {\n var indentation = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var preferMultipleLines = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var isSingleLine = value.indexOf('\\n') === -1;\n var hasLeadingSpace = value[0] === ' ' || value[0] === '\\t';\n var hasTrailingQuote = value[value.length - 1] === '\"';\n var hasTrailingSlash = value[value.length - 1] === '\\\\';\n var printAsMultipleLines = !isSingleLine || hasTrailingQuote || hasTrailingSlash || preferMultipleLines;\n var result = ''; // Format a multi-line block quote to account for leading space.\n\n if (printAsMultipleLines && !(isSingleLine && hasLeadingSpace)) {\n result += '\\n' + indentation;\n }\n\n result += indentation ? value.replace(/\\n/g, '\\n' + indentation) : value;\n\n if (printAsMultipleLines) {\n result += '\\n';\n }\n\n return '\"\"\"' + result.replace(/\"\"\"/g, '\\\\\"\"\"') + '\"\"\"';\n}\n","import { syntaxError } from \"../error/syntaxError.mjs\";\nimport { Token } from \"./ast.mjs\";\nimport { TokenKind } from \"./tokenKind.mjs\";\nimport { dedentBlockStringValue } from \"./blockString.mjs\";\n/**\n * Given a Source object, creates a Lexer for that source.\n * A Lexer is a stateful stream generator in that every time\n * it is advanced, it returns the next token in the Source. Assuming the\n * source lexes, the final Token emitted by the lexer will be of kind\n * EOF, after which the lexer will repeatedly return the same EOF token\n * whenever called.\n */\n\nexport var Lexer = /*#__PURE__*/function () {\n /**\n * The previously focused non-ignored token.\n */\n\n /**\n * The currently focused non-ignored token.\n */\n\n /**\n * The (1-indexed) line containing the current token.\n */\n\n /**\n * The character offset at which the current line begins.\n */\n function Lexer(source) {\n var startOfFileToken = new Token(TokenKind.SOF, 0, 0, 0, 0, null);\n this.source = source;\n this.lastToken = startOfFileToken;\n this.token = startOfFileToken;\n this.line = 1;\n this.lineStart = 0;\n }\n /**\n * Advances the token stream to the next non-ignored token.\n */\n\n\n var _proto = Lexer.prototype;\n\n _proto.advance = function advance() {\n this.lastToken = this.token;\n var token = this.token = this.lookahead();\n return token;\n }\n /**\n * Looks ahead and returns the next non-ignored token, but does not change\n * the state of Lexer.\n */\n ;\n\n _proto.lookahead = function lookahead() {\n var token = this.token;\n\n if (token.kind !== TokenKind.EOF) {\n do {\n var _token$next;\n\n // Note: next is only mutable during parsing, so we cast to allow this.\n token = (_token$next = token.next) !== null && _token$next !== void 0 ? _token$next : token.next = readToken(this, token);\n } while (token.kind === TokenKind.COMMENT);\n }\n\n return token;\n };\n\n return Lexer;\n}();\n/**\n * @internal\n */\n\nexport function isPunctuatorTokenKind(kind) {\n return kind === TokenKind.BANG || kind === TokenKind.DOLLAR || kind === TokenKind.AMP || kind === TokenKind.PAREN_L || kind === TokenKind.PAREN_R || kind === TokenKind.SPREAD || kind === TokenKind.COLON || kind === TokenKind.EQUALS || kind === TokenKind.AT || kind === TokenKind.BRACKET_L || kind === TokenKind.BRACKET_R || kind === TokenKind.BRACE_L || kind === TokenKind.PIPE || kind === TokenKind.BRACE_R;\n}\n\nfunction printCharCode(code) {\n return (// NaN/undefined represents access beyond the end of the file.\n isNaN(code) ? TokenKind.EOF : // Trust JSON for ASCII.\n code < 0x007f ? JSON.stringify(String.fromCharCode(code)) : // Otherwise print the escaped form.\n \"\\\"\\\\u\".concat(('00' + code.toString(16).toUpperCase()).slice(-4), \"\\\"\")\n );\n}\n/**\n * Gets the next token from the source starting at the given position.\n *\n * This skips over whitespace until it finds the next lexable token, then lexes\n * punctuators immediately or calls the appropriate helper function for more\n * complicated tokens.\n */\n\n\nfunction readToken(lexer, prev) {\n var source = lexer.source;\n var body = source.body;\n var bodyLength = body.length;\n var pos = prev.end;\n\n while (pos < bodyLength) {\n var code = body.charCodeAt(pos);\n var _line = lexer.line;\n\n var _col = 1 + pos - lexer.lineStart; // SourceCharacter\n\n\n switch (code) {\n case 0xfeff: // <BOM>\n\n case 9: // \\t\n\n case 32: // <space>\n\n case 44:\n // ,\n ++pos;\n continue;\n\n case 10:\n // \\n\n ++pos;\n ++lexer.line;\n lexer.lineStart = pos;\n continue;\n\n case 13:\n // \\r\n if (body.charCodeAt(pos + 1) === 10) {\n pos += 2;\n } else {\n ++pos;\n }\n\n ++lexer.line;\n lexer.lineStart = pos;\n continue;\n\n case 33:\n // !\n return new Token(TokenKind.BANG, pos, pos + 1, _line, _col, prev);\n\n case 35:\n // #\n return readComment(source, pos, _line, _col, prev);\n\n case 36:\n // $\n return new Token(TokenKind.DOLLAR, pos, pos + 1, _line, _col, prev);\n\n case 38:\n // &\n return new Token(TokenKind.AMP, pos, pos + 1, _line, _col, prev);\n\n case 40:\n // (\n return new Token(TokenKind.PAREN_L, pos, pos + 1, _line, _col, prev);\n\n case 41:\n // )\n return new Token(TokenKind.PAREN_R, pos, pos + 1, _line, _col, prev);\n\n case 46:\n // .\n if (body.charCodeAt(pos + 1) === 46 && body.charCodeAt(pos + 2) === 46) {\n return new Token(TokenKind.SPREAD, pos, pos + 3, _line, _col, prev);\n }\n\n break;\n\n case 58:\n // :\n return new Token(TokenKind.COLON, pos, pos + 1, _line, _col, prev);\n\n case 61:\n // =\n return new Token(TokenKind.EQUALS, pos, pos + 1, _line, _col, prev);\n\n case 64:\n // @\n return new Token(TokenKind.AT, pos, pos + 1, _line, _col, prev);\n\n case 91:\n // [\n return new Token(TokenKind.BRACKET_L, pos, pos + 1, _line, _col, prev);\n\n case 93:\n // ]\n return new Token(TokenKind.BRACKET_R, pos, pos + 1, _line, _col, prev);\n\n case 123:\n // {\n return new Token(TokenKind.BRACE_L, pos, pos + 1, _line, _col, prev);\n\n case 124:\n // |\n return new Token(TokenKind.PIPE, pos, pos + 1, _line, _col, prev);\n\n case 125:\n // }\n return new Token(TokenKind.BRACE_R, pos, pos + 1, _line, _col, prev);\n\n case 34:\n // \"\n if (body.charCodeAt(pos + 1) === 34 && body.charCodeAt(pos + 2) === 34) {\n return readBlockString(source, pos, _line, _col, prev, lexer);\n }\n\n return readString(source, pos, _line, _col, prev);\n\n case 45: // -\n\n case 48: // 0\n\n case 49: // 1\n\n case 50: // 2\n\n case 51: // 3\n\n case 52: // 4\n\n case 53: // 5\n\n case 54: // 6\n\n case 55: // 7\n\n case 56: // 8\n\n case 57:\n // 9\n return readNumber(source, pos, code, _line, _col, prev);\n\n case 65: // A\n\n case 66: // B\n\n case 67: // C\n\n case 68: // D\n\n case 69: // E\n\n case 70: // F\n\n case 71: // G\n\n case 72: // H\n\n case 73: // I\n\n case 74: // J\n\n case 75: // K\n\n case 76: // L\n\n case 77: // M\n\n case 78: // N\n\n case 79: // O\n\n case 80: // P\n\n case 81: // Q\n\n case 82: // R\n\n case 83: // S\n\n case 84: // T\n\n case 85: // U\n\n case 86: // V\n\n case 87: // W\n\n case 88: // X\n\n case 89: // Y\n\n case 90: // Z\n\n case 95: // _\n\n case 97: // a\n\n case 98: // b\n\n case 99: // c\n\n case 100: // d\n\n case 101: // e\n\n case 102: // f\n\n case 103: // g\n\n case 104: // h\n\n case 105: // i\n\n case 106: // j\n\n case 107: // k\n\n case 108: // l\n\n case 109: // m\n\n case 110: // n\n\n case 111: // o\n\n case 112: // p\n\n case 113: // q\n\n case 114: // r\n\n case 115: // s\n\n case 116: // t\n\n case 117: // u\n\n case 118: // v\n\n case 119: // w\n\n case 120: // x\n\n case 121: // y\n\n case 122:\n // z\n return readName(source, pos, _line, _col, prev);\n }\n\n throw syntaxError(source, pos, unexpectedCharacterMessage(code));\n }\n\n var line = lexer.line;\n var col = 1 + pos - lexer.lineStart;\n return new Token(TokenKind.EOF, bodyLength, bodyLength, line, col, prev);\n}\n/**\n * Report a message that an unexpected character was encountered.\n */\n\n\nfunction unexpectedCharacterMessage(code) {\n if (code < 0x0020 && code !== 0x0009 && code !== 0x000a && code !== 0x000d) {\n return \"Cannot contain the invalid character \".concat(printCharCode(code), \".\");\n }\n\n if (code === 39) {\n // '\n return 'Unexpected single quote character (\\'), did you mean to use a double quote (\")?';\n }\n\n return \"Cannot parse the unexpected character \".concat(printCharCode(code), \".\");\n}\n/**\n * Reads a comment token from the source file.\n *\n * #[\\u0009\\u0020-\\uFFFF]*\n */\n\n\nfunction readComment(source, start, line, col, prev) {\n var body = source.body;\n var code;\n var position = start;\n\n do {\n code = body.charCodeAt(++position);\n } while (!isNaN(code) && ( // SourceCharacter but not LineTerminator\n code > 0x001f || code === 0x0009));\n\n return new Token(TokenKind.COMMENT, start, position, line, col, prev, body.slice(start + 1, position));\n}\n/**\n * Reads a number token from the source file, either a float\n * or an int depending on whether a decimal point appears.\n *\n * Int: -?(0|[1-9][0-9]*)\n * Float: -?(0|[1-9][0-9]*)(\\.[0-9]+)?((E|e)(+|-)?[0-9]+)?\n */\n\n\nfunction readNumber(source, start, firstCode, line, col, prev) {\n var body = source.body;\n var code = firstCode;\n var position = start;\n var isFloat = false;\n\n if (code === 45) {\n // -\n code = body.charCodeAt(++position);\n }\n\n if (code === 48) {\n // 0\n code = body.charCodeAt(++position);\n\n if (code >= 48 && code <= 57) {\n throw syntaxError(source, position, \"Invalid number, unexpected digit after 0: \".concat(printCharCode(code), \".\"));\n }\n } else {\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n }\n\n if (code === 46) {\n // .\n isFloat = true;\n code = body.charCodeAt(++position);\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n }\n\n if (code === 69 || code === 101) {\n // E e\n isFloat = true;\n code = body.charCodeAt(++position);\n\n if (code === 43 || code === 45) {\n // + -\n code = body.charCodeAt(++position);\n }\n\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n } // Numbers cannot be followed by . or NameStart\n\n\n if (code === 46 || isNameStart(code)) {\n throw syntaxError(source, position, \"Invalid number, expected digit but got: \".concat(printCharCode(code), \".\"));\n }\n\n return new Token(isFloat ? TokenKind.FLOAT : TokenKind.INT, start, position, line, col, prev, body.slice(start, position));\n}\n/**\n * Returns the new position in the source after reading digits.\n */\n\n\nfunction readDigits(source, start, firstCode) {\n var body = source.body;\n var position = start;\n var code = firstCode;\n\n if (code >= 48 && code <= 57) {\n // 0 - 9\n do {\n code = body.charCodeAt(++position);\n } while (code >= 48 && code <= 57); // 0 - 9\n\n\n return position;\n }\n\n throw syntaxError(source, position, \"Invalid number, expected digit but got: \".concat(printCharCode(code), \".\"));\n}\n/**\n * Reads a string token from the source file.\n *\n * \"([^\"\\\\\\u000A\\u000D]|(\\\\(u[0-9a-fA-F]{4}|[\"\\\\/bfnrt])))*\"\n */\n\n\nfunction readString(source, start, line, col, prev) {\n var body = source.body;\n var position = start + 1;\n var chunkStart = position;\n var code = 0;\n var value = '';\n\n while (position < body.length && !isNaN(code = body.charCodeAt(position)) && // not LineTerminator\n code !== 0x000a && code !== 0x000d) {\n // Closing Quote (\")\n if (code === 34) {\n value += body.slice(chunkStart, position);\n return new Token(TokenKind.STRING, start, position + 1, line, col, prev, value);\n } // SourceCharacter\n\n\n if (code < 0x0020 && code !== 0x0009) {\n throw syntaxError(source, position, \"Invalid character within String: \".concat(printCharCode(code), \".\"));\n }\n\n ++position;\n\n if (code === 92) {\n // \\\n value += body.slice(chunkStart, position - 1);\n code = body.charCodeAt(position);\n\n switch (code) {\n case 34:\n value += '\"';\n break;\n\n case 47:\n value += '/';\n break;\n\n case 92:\n value += '\\\\';\n break;\n\n case 98:\n value += '\\b';\n break;\n\n case 102:\n value += '\\f';\n break;\n\n case 110:\n value += '\\n';\n break;\n\n case 114:\n value += '\\r';\n break;\n\n case 116:\n value += '\\t';\n break;\n\n case 117:\n {\n // uXXXX\n var charCode = uniCharCode(body.charCodeAt(position + 1), body.charCodeAt(position + 2), body.charCodeAt(position + 3), body.charCodeAt(position + 4));\n\n if (charCode < 0) {\n var invalidSequence = body.slice(position + 1, position + 5);\n throw syntaxError(source, position, \"Invalid character escape sequence: \\\\u\".concat(invalidSequence, \".\"));\n }\n\n value += String.fromCharCode(charCode);\n position += 4;\n break;\n }\n\n default:\n throw syntaxError(source, position, \"Invalid character escape sequence: \\\\\".concat(String.fromCharCode(code), \".\"));\n }\n\n ++position;\n chunkStart = position;\n }\n }\n\n throw syntaxError(source, position, 'Unterminated string.');\n}\n/**\n * Reads a block string token from the source file.\n *\n * \"\"\"(\"?\"?(\\\\\"\"\"|\\\\(?!=\"\"\")|[^\"\\\\]))*\"\"\"\n */\n\n\nfunction readBlockString(source, start, line, col, prev, lexer) {\n var body = source.body;\n var position = start + 3;\n var chunkStart = position;\n var code = 0;\n var rawValue = '';\n\n while (position < body.length && !isNaN(code = body.charCodeAt(position))) {\n // Closing Triple-Quote (\"\"\")\n if (code === 34 && body.charCodeAt(position + 1) === 34 && body.charCodeAt(position + 2) === 34) {\n rawValue += body.slice(chunkStart, position);\n return new Token(TokenKind.BLOCK_STRING, start, position + 3, line, col, prev, dedentBlockStringValue(rawValue));\n } // SourceCharacter\n\n\n if (code < 0x0020 && code !== 0x0009 && code !== 0x000a && code !== 0x000d) {\n throw syntaxError(source, position, \"Invalid character within String: \".concat(printCharCode(code), \".\"));\n }\n\n if (code === 10) {\n // new line\n ++position;\n ++lexer.line;\n lexer.lineStart = position;\n } else if (code === 13) {\n // carriage return\n if (body.charCodeAt(position + 1) === 10) {\n position += 2;\n } else {\n ++position;\n }\n\n ++lexer.line;\n lexer.lineStart = position;\n } else if ( // Escape Triple-Quote (\\\"\"\")\n code === 92 && body.charCodeAt(position + 1) === 34 && body.charCodeAt(position + 2) === 34 && body.charCodeAt(position + 3) === 34) {\n rawValue += body.slice(chunkStart, position) + '\"\"\"';\n position += 4;\n chunkStart = position;\n } else {\n ++position;\n }\n }\n\n throw syntaxError(source, position, 'Unterminated string.');\n}\n/**\n * Converts four hexadecimal chars to the integer that the\n * string represents. For example, uniCharCode('0','0','0','f')\n * will return 15, and uniCharCode('0','0','f','f') returns 255.\n *\n * Returns a negative number on error, if a char was invalid.\n *\n * This is implemented by noting that char2hex() returns -1 on error,\n * which means the result of ORing the char2hex() will also be negative.\n */\n\n\nfunction uniCharCode(a, b, c, d) {\n return char2hex(a) << 12 | char2hex(b) << 8 | char2hex(c) << 4 | char2hex(d);\n}\n/**\n * Converts a hex character to its integer value.\n * '0' becomes 0, '9' becomes 9\n * 'A' becomes 10, 'F' becomes 15\n * 'a' becomes 10, 'f' becomes 15\n *\n * Returns -1 on error.\n */\n\n\nfunction char2hex(a) {\n return a >= 48 && a <= 57 ? a - 48 // 0-9\n : a >= 65 && a <= 70 ? a - 55 // A-F\n : a >= 97 && a <= 102 ? a - 87 // a-f\n : -1;\n}\n/**\n * Reads an alphanumeric + underscore name from the source.\n *\n * [_A-Za-z][_0-9A-Za-z]*\n */\n\n\nfunction readName(source, start, line, col, prev) {\n var body = source.body;\n var bodyLength = body.length;\n var position = start + 1;\n var code = 0;\n\n while (position !== bodyLength && !isNaN(code = body.charCodeAt(position)) && (code === 95 || // _\n code >= 48 && code <= 57 || // 0-9\n code >= 65 && code <= 90 || // A-Z\n code >= 97 && code <= 122) // a-z\n ) {\n ++position;\n }\n\n return new Token(TokenKind.NAME, start, position, line, col, prev, body.slice(start, position));\n} // _ A-Z a-z\n\n\nfunction isNameStart(code) {\n return code === 95 || code >= 65 && code <= 90 || code >= 97 && code <= 122;\n}\n","import { syntaxError } from \"../error/syntaxError.mjs\";\nimport { Kind } from \"./kinds.mjs\";\nimport { Location } from \"./ast.mjs\";\nimport { TokenKind } from \"./tokenKind.mjs\";\nimport { Source, isSource } from \"./source.mjs\";\nimport { DirectiveLocation } from \"./directiveLocation.mjs\";\nimport { Lexer, isPunctuatorTokenKind } from \"./lexer.mjs\";\n/**\n * Configuration options to control parser behavior\n */\n\n/**\n * Given a GraphQL source, parses it into a Document.\n * Throws GraphQLError if a syntax error is encountered.\n */\nexport function parse(source, options) {\n var parser = new Parser(source, options);\n return parser.parseDocument();\n}\n/**\n * Given a string containing a GraphQL value (ex. `[42]`), parse the AST for\n * that value.\n * Throws GraphQLError if a syntax error is encountered.\n *\n * This is useful within tools that operate upon GraphQL Values directly and\n * in isolation of complete GraphQL documents.\n *\n * Consider providing the results to the utility function: valueFromAST().\n */\n\nexport function parseValue(source, options) {\n var parser = new Parser(source, options);\n parser.expectToken(TokenKind.SOF);\n var value = parser.parseValueLiteral(false);\n parser.expectToken(TokenKind.EOF);\n return value;\n}\n/**\n * Given a string containing a GraphQL Type (ex. `[Int!]`), parse the AST for\n * that type.\n * Throws GraphQLError if a syntax error is encountered.\n *\n * This is useful within tools that operate upon GraphQL Types directly and\n * in isolation of complete GraphQL documents.\n *\n * Consider providing the results to the utility function: typeFromAST().\n */\n\nexport function parseType(source, options) {\n var parser = new Parser(source, options);\n parser.expectToken(TokenKind.SOF);\n var type = parser.parseTypeReference();\n parser.expectToken(TokenKind.EOF);\n return type;\n}\n/**\n * This class is exported only to assist people in implementing their own parsers\n * without duplicating too much code and should be used only as last resort for cases\n * such as experimental syntax or if certain features could not be contributed upstream.\n *\n * It is still part of the internal API and is versioned, so any changes to it are never\n * considered breaking changes. If you still need to support multiple versions of the\n * library, please use the `versionInfo` variable for version detection.\n *\n * @internal\n */\n\nexport var Parser = /*#__PURE__*/function () {\n function Parser(source, options) {\n var sourceObj = isSource(source) ? source : new Source(source);\n this._lexer = new Lexer(sourceObj);\n this._options = options;\n }\n /**\n * Converts a name lex token into a name parse node.\n */\n\n\n var _proto = Parser.prototype;\n\n _proto.parseName = function parseName() {\n var token = this.expectToken(TokenKind.NAME);\n return {\n kind: Kind.NAME,\n value: token.value,\n loc: this.loc(token)\n };\n } // Implements the parsing rules in the Document section.\n\n /**\n * Document : Definition+\n */\n ;\n\n _proto.parseDocument = function parseDocument() {\n var start = this._lexer.token;\n return {\n kind: Kind.DOCUMENT,\n definitions: this.many(TokenKind.SOF, this.parseDefinition, TokenKind.EOF),\n loc: this.loc(start)\n };\n }\n /**\n * Definition :\n * - ExecutableDefinition\n * - TypeSystemDefinition\n * - TypeSystemExtension\n *\n * ExecutableDefinition :\n * - OperationDefinition\n * - FragmentDefinition\n */\n ;\n\n _proto.parseDefinition = function parseDefinition() {\n if (this.peek(TokenKind.NAME)) {\n switch (this._lexer.token.value) {\n case 'query':\n case 'mutation':\n case 'subscription':\n return this.parseOperationDefinition();\n\n case 'fragment':\n return this.parseFragmentDefinition();\n\n case 'schema':\n case 'scalar':\n case 'type':\n case 'interface':\n case 'union':\n case 'enum':\n case 'input':\n case 'directive':\n return this.parseTypeSystemDefinition();\n\n case 'extend':\n return this.parseTypeSystemExtension();\n }\n } else if (this.peek(TokenKind.BRACE_L)) {\n return this.parseOperationDefinition();\n } else if (this.peekDescription()) {\n return this.parseTypeSystemDefinition();\n }\n\n throw this.unexpected();\n } // Implements the parsing rules in the Operations section.\n\n /**\n * OperationDefinition :\n * - SelectionSet\n * - OperationType Name? VariableDefinitions? Directives? SelectionSet\n */\n ;\n\n _proto.parseOperationDefinition = function parseOperationDefinition() {\n var start = this._lexer.token;\n\n if (this.peek(TokenKind.BRACE_L)) {\n return {\n kind: Kind.OPERATION_DEFINITION,\n operation: 'query',\n name: undefined,\n variableDefinitions: [],\n directives: [],\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n\n var operation = this.parseOperationType();\n var name;\n\n if (this.peek(TokenKind.NAME)) {\n name = this.parseName();\n }\n\n return {\n kind: Kind.OPERATION_DEFINITION,\n operation: operation,\n name: name,\n variableDefinitions: this.parseVariableDefinitions(),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * OperationType : one of query mutation subscription\n */\n ;\n\n _proto.parseOperationType = function parseOperationType() {\n var operationToken = this.expectToken(TokenKind.NAME);\n\n switch (operationToken.value) {\n case 'query':\n return 'query';\n\n case 'mutation':\n return 'mutation';\n\n case 'subscription':\n return 'subscription';\n }\n\n throw this.unexpected(operationToken);\n }\n /**\n * VariableDefinitions : ( VariableDefinition+ )\n */\n ;\n\n _proto.parseVariableDefinitions = function parseVariableDefinitions() {\n return this.optionalMany(TokenKind.PAREN_L, this.parseVariableDefinition, TokenKind.PAREN_R);\n }\n /**\n * VariableDefinition : Variable : Type DefaultValue? Directives[Const]?\n */\n ;\n\n _proto.parseVariableDefinition = function parseVariableDefinition() {\n var start = this._lexer.token;\n return {\n kind: Kind.VARIABLE_DEFINITION,\n variable: this.parseVariable(),\n type: (this.expectToken(TokenKind.COLON), this.parseTypeReference()),\n defaultValue: this.expectOptionalToken(TokenKind.EQUALS) ? this.parseValueLiteral(true) : undefined,\n directives: this.parseDirectives(true),\n loc: this.loc(start)\n };\n }\n /**\n * Variable : $ Name\n */\n ;\n\n _proto.parseVariable = function parseVariable() {\n var start = this._lexer.token;\n this.expectToken(TokenKind.DOLLAR);\n return {\n kind: Kind.VARIABLE,\n name: this.parseName(),\n loc: this.loc(start)\n };\n }\n /**\n * SelectionSet : { Selection+ }\n */\n ;\n\n _proto.parseSelectionSet = function parseSelectionSet() {\n var start = this._lexer.token;\n return {\n kind: Kind.SELECTION_SET,\n selections: this.many(TokenKind.BRACE_L, this.parseSelection, TokenKind.BRACE_R),\n loc: this.loc(start)\n };\n }\n /**\n * Selection :\n * - Field\n * - FragmentSpread\n * - InlineFragment\n */\n ;\n\n _proto.parseSelection = function parseSelection() {\n return this.peek(TokenKind.SPREAD) ? this.parseFragment() : this.parseField();\n }\n /**\n * Field : Alias? Name Arguments? Directives? SelectionSet?\n *\n * Alias : Name :\n */\n ;\n\n _proto.parseField = function parseField() {\n var start = this._lexer.token;\n var nameOrAlias = this.parseName();\n var alias;\n var name;\n\n if (this.expectOptionalToken(TokenKind.COLON)) {\n alias = nameOrAlias;\n name = this.parseName();\n } else {\n name = nameOrAlias;\n }\n\n return {\n kind: Kind.FIELD,\n alias: alias,\n name: name,\n arguments: this.parseArguments(false),\n directives: this.parseDirectives(false),\n selectionSet: this.peek(TokenKind.BRACE_L) ? this.parseSelectionSet() : undefined,\n loc: this.loc(start)\n };\n }\n /**\n * Arguments[Const] : ( Argument[?Const]+ )\n */\n ;\n\n _proto.parseArguments = function parseArguments(isConst) {\n var item = isConst ? this.parseConstArgument : this.parseArgument;\n return this.optionalMany(TokenKind.PAREN_L, item, TokenKind.PAREN_R);\n }\n /**\n * Argument[Const] : Name : Value[?Const]\n */\n ;\n\n _proto.parseArgument = function parseArgument() {\n var start = this._lexer.token;\n var name = this.parseName();\n this.expectToken(TokenKind.COLON);\n return {\n kind: Kind.ARGUMENT,\n name: name,\n value: this.parseValueLiteral(false),\n loc: this.loc(start)\n };\n };\n\n _proto.parseConstArgument = function parseConstArgument() {\n var start = this._lexer.token;\n return {\n kind: Kind.ARGUMENT,\n name: this.parseName(),\n value: (this.expectToken(TokenKind.COLON), this.parseValueLiteral(true)),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Fragments section.\n\n /**\n * Corresponds to both FragmentSpread and InlineFragment in the spec.\n *\n * FragmentSpread : ... FragmentName Directives?\n *\n * InlineFragment : ... TypeCondition? Directives? SelectionSet\n */\n ;\n\n _proto.parseFragment = function parseFragment() {\n var start = this._lexer.token;\n this.expectToken(TokenKind.SPREAD);\n var hasTypeCondition = this.expectOptionalKeyword('on');\n\n if (!hasTypeCondition && this.peek(TokenKind.NAME)) {\n return {\n kind: Kind.FRAGMENT_SPREAD,\n name: this.parseFragmentName(),\n directives: this.parseDirectives(false),\n loc: this.loc(start)\n };\n }\n\n return {\n kind: Kind.INLINE_FRAGMENT,\n typeCondition: hasTypeCondition ? this.parseNamedType() : undefined,\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * FragmentDefinition :\n * - fragment FragmentName on TypeCondition Directives? SelectionSet\n *\n * TypeCondition : NamedType\n */\n ;\n\n _proto.parseFragmentDefinition = function parseFragmentDefinition() {\n var _this$_options;\n\n var start = this._lexer.token;\n this.expectKeyword('fragment'); // Experimental support for defining variables within fragments changes\n // the grammar of FragmentDefinition:\n // - fragment FragmentName VariableDefinitions? on TypeCondition Directives? SelectionSet\n\n if (((_this$_options = this._options) === null || _this$_options === void 0 ? void 0 : _this$_options.experimentalFragmentVariables) === true) {\n return {\n kind: Kind.FRAGMENT_DEFINITION,\n name: this.parseFragmentName(),\n variableDefinitions: this.parseVariableDefinitions(),\n typeCondition: (this.expectKeyword('on'), this.parseNamedType()),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n\n return {\n kind: Kind.FRAGMENT_DEFINITION,\n name: this.parseFragmentName(),\n typeCondition: (this.expectKeyword('on'), this.parseNamedType()),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * FragmentName : Name but not `on`\n */\n ;\n\n _proto.parseFragmentName = function parseFragmentName() {\n if (this._lexer.token.value === 'on') {\n throw this.unexpected();\n }\n\n return this.parseName();\n } // Implements the parsing rules in the Values section.\n\n /**\n * Value[Const] :\n * - [~Const] Variable\n * - IntValue\n * - FloatValue\n * - StringValue\n * - BooleanValue\n * - NullValue\n * - EnumValue\n * - ListValue[?Const]\n * - ObjectValue[?Const]\n *\n * BooleanValue : one of `true` `false`\n *\n * NullValue : `null`\n *\n * EnumValue : Name but not `true`, `false` or `null`\n */\n ;\n\n _proto.parseValueLiteral = function parseValueLiteral(isConst) {\n var token = this._lexer.token;\n\n switch (token.kind) {\n case TokenKind.BRACKET_L:\n return this.parseList(isConst);\n\n case TokenKind.BRACE_L:\n return this.parseObject(isConst);\n\n case TokenKind.INT:\n this._lexer.advance();\n\n return {\n kind: Kind.INT,\n value: token.value,\n loc: this.loc(token)\n };\n\n case TokenKind.FLOAT:\n this._lexer.advance();\n\n return {\n kind: Kind.FLOAT,\n value: token.value,\n loc: this.loc(token)\n };\n\n case TokenKind.STRING:\n case TokenKind.BLOCK_STRING:\n return this.parseStringLiteral();\n\n case TokenKind.NAME:\n this._lexer.advance();\n\n switch (token.value) {\n case 'true':\n return {\n kind: Kind.BOOLEAN,\n value: true,\n loc: this.loc(token)\n };\n\n case 'false':\n return {\n kind: Kind.BOOLEAN,\n value: false,\n loc: this.loc(token)\n };\n\n case 'null':\n return {\n kind: Kind.NULL,\n loc: this.loc(token)\n };\n\n default:\n return {\n kind: Kind.ENUM,\n value: token.value,\n loc: this.loc(token)\n };\n }\n\n case TokenKind.DOLLAR:\n if (!isConst) {\n return this.parseVariable();\n }\n\n break;\n }\n\n throw this.unexpected();\n };\n\n _proto.parseStringLiteral = function parseStringLiteral() {\n var token = this._lexer.token;\n\n this._lexer.advance();\n\n return {\n kind: Kind.STRING,\n value: token.value,\n block: token.kind === TokenKind.BLOCK_STRING,\n loc: this.loc(token)\n };\n }\n /**\n * ListValue[Const] :\n * - [ ]\n * - [ Value[?Const]+ ]\n */\n ;\n\n _proto.parseList = function parseList(isConst) {\n var _this = this;\n\n var start = this._lexer.token;\n\n var item = function item() {\n return _this.parseValueLiteral(isConst);\n };\n\n return {\n kind: Kind.LIST,\n values: this.any(TokenKind.BRACKET_L, item, TokenKind.BRACKET_R),\n loc: this.loc(start)\n };\n }\n /**\n * ObjectValue[Const] :\n * - { }\n * - { ObjectField[?Const]+ }\n */\n ;\n\n _proto.parseObject = function parseObject(isConst) {\n var _this2 = this;\n\n var start = this._lexer.token;\n\n var item = function item() {\n return _this2.parseObjectField(isConst);\n };\n\n return {\n kind: Kind.OBJECT,\n fields: this.any(TokenKind.BRACE_L, item, TokenKind.BRACE_R),\n loc: this.loc(start)\n };\n }\n /**\n * ObjectField[Const] : Name : Value[?Const]\n */\n ;\n\n _proto.parseObjectField = function parseObjectField(isConst) {\n var start = this._lexer.token;\n var name = this.parseName();\n this.expectToken(TokenKind.COLON);\n return {\n kind: Kind.OBJECT_FIELD,\n name: name,\n value: this.parseValueLiteral(isConst),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Directives section.\n\n /**\n * Directives[Const] : Directive[?Const]+\n */\n ;\n\n _proto.parseDirectives = function parseDirectives(isConst) {\n var directives = [];\n\n while (this.peek(TokenKind.AT)) {\n directives.push(this.parseDirective(isConst));\n }\n\n return directives;\n }\n /**\n * Directive[Const] : @ Name Arguments[?Const]?\n */\n ;\n\n _proto.parseDirective = function parseDirective(isConst) {\n var start = this._lexer.token;\n this.expectToken(TokenKind.AT);\n return {\n kind: Kind.DIRECTIVE,\n name: this.parseName(),\n arguments: this.parseArguments(isConst),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Types section.\n\n /**\n * Type :\n * - NamedType\n * - ListType\n * - NonNullType\n */\n ;\n\n _proto.parseTypeReference = function parseTypeReference() {\n var start = this._lexer.token;\n var type;\n\n if (this.expectOptionalToken(TokenKind.BRACKET_L)) {\n type = this.parseTypeReference();\n this.expectToken(TokenKind.BRACKET_R);\n type = {\n kind: Kind.LIST_TYPE,\n type: type,\n loc: this.loc(start)\n };\n } else {\n type = this.parseNamedType();\n }\n\n if (this.expectOptionalToken(TokenKind.BANG)) {\n return {\n kind: Kind.NON_NULL_TYPE,\n type: type,\n loc: this.loc(start)\n };\n }\n\n return type;\n }\n /**\n * NamedType : Name\n */\n ;\n\n _proto.parseNamedType = function parseNamedType() {\n var start = this._lexer.token;\n return {\n kind: Kind.NAMED_TYPE,\n name: this.parseName(),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Type Definition section.\n\n /**\n * TypeSystemDefinition :\n * - SchemaDefinition\n * - TypeDefinition\n * - DirectiveDefinition\n *\n * TypeDefinition :\n * - ScalarTypeDefinition\n * - ObjectTypeDefinition\n * - InterfaceTypeDefinition\n * - UnionTypeDefinition\n * - EnumTypeDefinition\n * - InputObjectTypeDefinition\n */\n ;\n\n _proto.parseTypeSystemDefinition = function parseTypeSystemDefinition() {\n // Many definitions begin with a description and require a lookahead.\n var keywordToken = this.peekDescription() ? this._lexer.lookahead() : this._lexer.token;\n\n if (keywordToken.kind === TokenKind.NAME) {\n switch (keywordToken.value) {\n case 'schema':\n return this.parseSchemaDefinition();\n\n case 'scalar':\n return this.parseScalarTypeDefinition();\n\n case 'type':\n return this.parseObjectTypeDefinition();\n\n case 'interface':\n return this.parseInterfaceTypeDefinition();\n\n case 'union':\n return this.parseUnionTypeDefinition();\n\n case 'enum':\n return this.parseEnumTypeDefinition();\n\n case 'input':\n return this.parseInputObjectTypeDefinition();\n\n case 'directive':\n return this.parseDirectiveDefinition();\n }\n }\n\n throw this.unexpected(keywordToken);\n };\n\n _proto.peekDescription = function peekDescription() {\n return this.peek(TokenKind.STRING) || this.peek(TokenKind.BLOCK_STRING);\n }\n /**\n * Description : StringValue\n */\n ;\n\n _proto.parseDescription = function parseDescription() {\n if (this.peekDescription()) {\n return this.parseStringLiteral();\n }\n }\n /**\n * SchemaDefinition : Description? schema Directives[Const]? { OperationTypeDefinition+ }\n */\n ;\n\n _proto.parseSchemaDefinition = function parseSchemaDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('schema');\n var directives = this.parseDirectives(true);\n var operationTypes = this.many(TokenKind.BRACE_L, this.parseOperationTypeDefinition, TokenKind.BRACE_R);\n return {\n kind: Kind.SCHEMA_DEFINITION,\n description: description,\n directives: directives,\n operationTypes: operationTypes,\n loc: this.loc(start)\n };\n }\n /**\n * OperationTypeDefinition : OperationType : NamedType\n */\n ;\n\n _proto.parseOperationTypeDefinition = function parseOperationTypeDefinition() {\n var start = this._lexer.token;\n var operation = this.parseOperationType();\n this.expectToken(TokenKind.COLON);\n var type = this.parseNamedType();\n return {\n kind: Kind.OPERATION_TYPE_DEFINITION,\n operation: operation,\n type: type,\n loc: this.loc(start)\n };\n }\n /**\n * ScalarTypeDefinition : Description? scalar Name Directives[Const]?\n */\n ;\n\n _proto.parseScalarTypeDefinition = function parseScalarTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('scalar');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n return {\n kind: Kind.SCALAR_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ObjectTypeDefinition :\n * Description?\n * type Name ImplementsInterfaces? Directives[Const]? FieldsDefinition?\n */\n ;\n\n _proto.parseObjectTypeDefinition = function parseObjectTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('type');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n return {\n kind: Kind.OBJECT_TYPE_DEFINITION,\n description: description,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * ImplementsInterfaces :\n * - implements `&`? NamedType\n * - ImplementsInterfaces & NamedType\n */\n ;\n\n _proto.parseImplementsInterfaces = function parseImplementsInterfaces() {\n var _this$_options2;\n\n if (!this.expectOptionalKeyword('implements')) {\n return [];\n }\n\n if (((_this$_options2 = this._options) === null || _this$_options2 === void 0 ? void 0 : _this$_options2.allowLegacySDLImplementsInterfaces) === true) {\n var types = []; // Optional leading ampersand\n\n this.expectOptionalToken(TokenKind.AMP);\n\n do {\n types.push(this.parseNamedType());\n } while (this.expectOptionalToken(TokenKind.AMP) || this.peek(TokenKind.NAME));\n\n return types;\n }\n\n return this.delimitedMany(TokenKind.AMP, this.parseNamedType);\n }\n /**\n * FieldsDefinition : { FieldDefinition+ }\n */\n ;\n\n _proto.parseFieldsDefinition = function parseFieldsDefinition() {\n var _this$_options3;\n\n // Legacy support for the SDL?\n if (((_this$_options3 = this._options) === null || _this$_options3 === void 0 ? void 0 : _this$_options3.allowLegacySDLEmptyFields) === true && this.peek(TokenKind.BRACE_L) && this._lexer.lookahead().kind === TokenKind.BRACE_R) {\n this._lexer.advance();\n\n this._lexer.advance();\n\n return [];\n }\n\n return this.optionalMany(TokenKind.BRACE_L, this.parseFieldDefinition, TokenKind.BRACE_R);\n }\n /**\n * FieldDefinition :\n * - Description? Name ArgumentsDefinition? : Type Directives[Const]?\n */\n ;\n\n _proto.parseFieldDefinition = function parseFieldDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n var args = this.parseArgumentDefs();\n this.expectToken(TokenKind.COLON);\n var type = this.parseTypeReference();\n var directives = this.parseDirectives(true);\n return {\n kind: Kind.FIELD_DEFINITION,\n description: description,\n name: name,\n arguments: args,\n type: type,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ArgumentsDefinition : ( InputValueDefinition+ )\n */\n ;\n\n _proto.parseArgumentDefs = function parseArgumentDefs() {\n return this.optionalMany(TokenKind.PAREN_L, this.parseInputValueDef, TokenKind.PAREN_R);\n }\n /**\n * InputValueDefinition :\n * - Description? Name : Type DefaultValue? Directives[Const]?\n */\n ;\n\n _proto.parseInputValueDef = function parseInputValueDef() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n this.expectToken(TokenKind.COLON);\n var type = this.parseTypeReference();\n var defaultValue;\n\n if (this.expectOptionalToken(TokenKind.EQUALS)) {\n defaultValue = this.parseValueLiteral(true);\n }\n\n var directives = this.parseDirectives(true);\n return {\n kind: Kind.INPUT_VALUE_DEFINITION,\n description: description,\n name: name,\n type: type,\n defaultValue: defaultValue,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * InterfaceTypeDefinition :\n * - Description? interface Name Directives[Const]? FieldsDefinition?\n */\n ;\n\n _proto.parseInterfaceTypeDefinition = function parseInterfaceTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('interface');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n return {\n kind: Kind.INTERFACE_TYPE_DEFINITION,\n description: description,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * UnionTypeDefinition :\n * - Description? union Name Directives[Const]? UnionMemberTypes?\n */\n ;\n\n _proto.parseUnionTypeDefinition = function parseUnionTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('union');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var types = this.parseUnionMemberTypes();\n return {\n kind: Kind.UNION_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n types: types,\n loc: this.loc(start)\n };\n }\n /**\n * UnionMemberTypes :\n * - = `|`? NamedType\n * - UnionMemberTypes | NamedType\n */\n ;\n\n _proto.parseUnionMemberTypes = function parseUnionMemberTypes() {\n return this.expectOptionalToken(TokenKind.EQUALS) ? this.delimitedMany(TokenKind.PIPE, this.parseNamedType) : [];\n }\n /**\n * EnumTypeDefinition :\n * - Description? enum Name Directives[Const]? EnumValuesDefinition?\n */\n ;\n\n _proto.parseEnumTypeDefinition = function parseEnumTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('enum');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var values = this.parseEnumValuesDefinition();\n return {\n kind: Kind.ENUM_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n values: values,\n loc: this.loc(start)\n };\n }\n /**\n * EnumValuesDefinition : { EnumValueDefinition+ }\n */\n ;\n\n _proto.parseEnumValuesDefinition = function parseEnumValuesDefinition() {\n return this.optionalMany(TokenKind.BRACE_L, this.parseEnumValueDefinition, TokenKind.BRACE_R);\n }\n /**\n * EnumValueDefinition : Description? EnumValue Directives[Const]?\n *\n * EnumValue : Name\n */\n ;\n\n _proto.parseEnumValueDefinition = function parseEnumValueDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n return {\n kind: Kind.ENUM_VALUE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * InputObjectTypeDefinition :\n * - Description? input Name Directives[Const]? InputFieldsDefinition?\n */\n ;\n\n _proto.parseInputObjectTypeDefinition = function parseInputObjectTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('input');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var fields = this.parseInputFieldsDefinition();\n return {\n kind: Kind.INPUT_OBJECT_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * InputFieldsDefinition : { InputValueDefinition+ }\n */\n ;\n\n _proto.parseInputFieldsDefinition = function parseInputFieldsDefinition() {\n return this.optionalMany(TokenKind.BRACE_L, this.parseInputValueDef, TokenKind.BRACE_R);\n }\n /**\n * TypeSystemExtension :\n * - SchemaExtension\n * - TypeExtension\n *\n * TypeExtension :\n * - ScalarTypeExtension\n * - ObjectTypeExtension\n * - InterfaceTypeExtension\n * - UnionTypeExtension\n * - EnumTypeExtension\n * - InputObjectTypeDefinition\n */\n ;\n\n _proto.parseTypeSystemExtension = function parseTypeSystemExtension() {\n var keywordToken = this._lexer.lookahead();\n\n if (keywordToken.kind === TokenKind.NAME) {\n switch (keywordToken.value) {\n case 'schema':\n return this.parseSchemaExtension();\n\n case 'scalar':\n return this.parseScalarTypeExtension();\n\n case 'type':\n return this.parseObjectTypeExtension();\n\n case 'interface':\n return this.parseInterfaceTypeExtension();\n\n case 'union':\n return this.parseUnionTypeExtension();\n\n case 'enum':\n return this.parseEnumTypeExtension();\n\n case 'input':\n return this.parseInputObjectTypeExtension();\n }\n }\n\n throw this.unexpected(keywordToken);\n }\n /**\n * SchemaExtension :\n * - extend schema Directives[Const]? { OperationTypeDefinition+ }\n * - extend schema Directives[Const]\n */\n ;\n\n _proto.parseSchemaExtension = function parseSchemaExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('schema');\n var directives = this.parseDirectives(true);\n var operationTypes = this.optionalMany(TokenKind.BRACE_L, this.parseOperationTypeDefinition, TokenKind.BRACE_R);\n\n if (directives.length === 0 && operationTypes.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.SCHEMA_EXTENSION,\n directives: directives,\n operationTypes: operationTypes,\n loc: this.loc(start)\n };\n }\n /**\n * ScalarTypeExtension :\n * - extend scalar Name Directives[Const]\n */\n ;\n\n _proto.parseScalarTypeExtension = function parseScalarTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('scalar');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n\n if (directives.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.SCALAR_TYPE_EXTENSION,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ObjectTypeExtension :\n * - extend type Name ImplementsInterfaces? Directives[Const]? FieldsDefinition\n * - extend type Name ImplementsInterfaces? Directives[Const]\n * - extend type Name ImplementsInterfaces\n */\n ;\n\n _proto.parseObjectTypeExtension = function parseObjectTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('type');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n\n if (interfaces.length === 0 && directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.OBJECT_TYPE_EXTENSION,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * InterfaceTypeExtension :\n * - extend interface Name ImplementsInterfaces? Directives[Const]? FieldsDefinition\n * - extend interface Name ImplementsInterfaces? Directives[Const]\n * - extend interface Name ImplementsInterfaces\n */\n ;\n\n _proto.parseInterfaceTypeExtension = function parseInterfaceTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('interface');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n\n if (interfaces.length === 0 && directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.INTERFACE_TYPE_EXTENSION,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * UnionTypeExtension :\n * - extend union Name Directives[Const]? UnionMemberTypes\n * - extend union Name Directives[Const]\n */\n ;\n\n _proto.parseUnionTypeExtension = function parseUnionTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('union');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var types = this.parseUnionMemberTypes();\n\n if (directives.length === 0 && types.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.UNION_TYPE_EXTENSION,\n name: name,\n directives: directives,\n types: types,\n loc: this.loc(start)\n };\n }\n /**\n * EnumTypeExtension :\n * - extend enum Name Directives[Const]? EnumValuesDefinition\n * - extend enum Name Directives[Const]\n */\n ;\n\n _proto.parseEnumTypeExtension = function parseEnumTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('enum');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var values = this.parseEnumValuesDefinition();\n\n if (directives.length === 0 && values.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.ENUM_TYPE_EXTENSION,\n name: name,\n directives: directives,\n values: values,\n loc: this.loc(start)\n };\n }\n /**\n * InputObjectTypeExtension :\n * - extend input Name Directives[Const]? InputFieldsDefinition\n * - extend input Name Directives[Const]\n */\n ;\n\n _proto.parseInputObjectTypeExtension = function parseInputObjectTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('input');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var fields = this.parseInputFieldsDefinition();\n\n if (directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.INPUT_OBJECT_TYPE_EXTENSION,\n name: name,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * DirectiveDefinition :\n * - Description? directive @ Name ArgumentsDefinition? `repeatable`? on DirectiveLocations\n */\n ;\n\n _proto.parseDirectiveDefinition = function parseDirectiveDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('directive');\n this.expectToken(TokenKind.AT);\n var name = this.parseName();\n var args = this.parseArgumentDefs();\n var repeatable = this.expectOptionalKeyword('repeatable');\n this.expectKeyword('on');\n var locations = this.parseDirectiveLocations();\n return {\n kind: Kind.DIRECTIVE_DEFINITION,\n description: description,\n name: name,\n arguments: args,\n repeatable: repeatable,\n locations: locations,\n loc: this.loc(start)\n };\n }\n /**\n * DirectiveLocations :\n * - `|`? DirectiveLocation\n * - DirectiveLocations | DirectiveLocation\n */\n ;\n\n _proto.parseDirectiveLocations = function parseDirectiveLocations() {\n return this.delimitedMany(TokenKind.PIPE, this.parseDirectiveLocation);\n }\n /*\n * DirectiveLocation :\n * - ExecutableDirectiveLocation\n * - TypeSystemDirectiveLocation\n *\n * ExecutableDirectiveLocation : one of\n * `QUERY`\n * `MUTATION`\n * `SUBSCRIPTION`\n * `FIELD`\n * `FRAGMENT_DEFINITION`\n * `FRAGMENT_SPREAD`\n * `INLINE_FRAGMENT`\n *\n * TypeSystemDirectiveLocation : one of\n * `SCHEMA`\n * `SCALAR`\n * `OBJECT`\n * `FIELD_DEFINITION`\n * `ARGUMENT_DEFINITION`\n * `INTERFACE`\n * `UNION`\n * `ENUM`\n * `ENUM_VALUE`\n * `INPUT_OBJECT`\n * `INPUT_FIELD_DEFINITION`\n */\n ;\n\n _proto.parseDirectiveLocation = function parseDirectiveLocation() {\n var start = this._lexer.token;\n var name = this.parseName();\n\n if (DirectiveLocation[name.value] !== undefined) {\n return name;\n }\n\n throw this.unexpected(start);\n } // Core parsing utility functions\n\n /**\n * Returns a location object, used to identify the place in the source that created a given parsed object.\n */\n ;\n\n _proto.loc = function loc(startToken) {\n var _this$_options4;\n\n if (((_this$_options4 = this._options) === null || _this$_options4 === void 0 ? void 0 : _this$_options4.noLocation) !== true) {\n return new Location(startToken, this._lexer.lastToken, this._lexer.source);\n }\n }\n /**\n * Determines if the next token is of a given kind\n */\n ;\n\n _proto.peek = function peek(kind) {\n return this._lexer.token.kind === kind;\n }\n /**\n * If the next token is of the given kind, return that token after advancing the lexer.\n * Otherwise, do not change the parser state and throw an error.\n */\n ;\n\n _proto.expectToken = function expectToken(kind) {\n var token = this._lexer.token;\n\n if (token.kind === kind) {\n this._lexer.advance();\n\n return token;\n }\n\n throw syntaxError(this._lexer.source, token.start, \"Expected \".concat(getTokenKindDesc(kind), \", found \").concat(getTokenDesc(token), \".\"));\n }\n /**\n * If the next token is of the given kind, return that token after advancing the lexer.\n * Otherwise, do not change the parser state and return undefined.\n */\n ;\n\n _proto.expectOptionalToken = function expectOptionalToken(kind) {\n var token = this._lexer.token;\n\n if (token.kind === kind) {\n this._lexer.advance();\n\n return token;\n }\n\n return undefined;\n }\n /**\n * If the next token is a given keyword, advance the lexer.\n * Otherwise, do not change the parser state and throw an error.\n */\n ;\n\n _proto.expectKeyword = function expectKeyword(value) {\n var token = this._lexer.token;\n\n if (token.kind === TokenKind.NAME && token.value === value) {\n this._lexer.advance();\n } else {\n throw syntaxError(this._lexer.source, token.start, \"Expected \\\"\".concat(value, \"\\\", found \").concat(getTokenDesc(token), \".\"));\n }\n }\n /**\n * If the next token is a given keyword, return \"true\" after advancing the lexer.\n * Otherwise, do not change the parser state and return \"false\".\n */\n ;\n\n _proto.expectOptionalKeyword = function expectOptionalKeyword(value) {\n var token = this._lexer.token;\n\n if (token.kind === TokenKind.NAME && token.value === value) {\n this._lexer.advance();\n\n return true;\n }\n\n return false;\n }\n /**\n * Helper function for creating an error when an unexpected lexed token is encountered.\n */\n ;\n\n _proto.unexpected = function unexpected(atToken) {\n var token = atToken !== null && atToken !== void 0 ? atToken : this._lexer.token;\n return syntaxError(this._lexer.source, token.start, \"Unexpected \".concat(getTokenDesc(token), \".\"));\n }\n /**\n * Returns a possibly empty list of parse nodes, determined by the parseFn.\n * This list begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.any = function any(openKind, parseFn, closeKind) {\n this.expectToken(openKind);\n var nodes = [];\n\n while (!this.expectOptionalToken(closeKind)) {\n nodes.push(parseFn.call(this));\n }\n\n return nodes;\n }\n /**\n * Returns a list of parse nodes, determined by the parseFn.\n * It can be empty only if open token is missing otherwise it will always return non-empty list\n * that begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.optionalMany = function optionalMany(openKind, parseFn, closeKind) {\n if (this.expectOptionalToken(openKind)) {\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (!this.expectOptionalToken(closeKind));\n\n return nodes;\n }\n\n return [];\n }\n /**\n * Returns a non-empty list of parse nodes, determined by the parseFn.\n * This list begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.many = function many(openKind, parseFn, closeKind) {\n this.expectToken(openKind);\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (!this.expectOptionalToken(closeKind));\n\n return nodes;\n }\n /**\n * Returns a non-empty list of parse nodes, determined by the parseFn.\n * This list may begin with a lex token of delimiterKind followed by items separated by lex tokens of tokenKind.\n * Advances the parser to the next lex token after last item in the list.\n */\n ;\n\n _proto.delimitedMany = function delimitedMany(delimiterKind, parseFn) {\n this.expectOptionalToken(delimiterKind);\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (this.expectOptionalToken(delimiterKind));\n\n return nodes;\n };\n\n return Parser;\n}();\n/**\n * A helper function to describe a token as a string for debugging.\n */\n\nfunction getTokenDesc(token) {\n var value = token.value;\n return getTokenKindDesc(token.kind) + (value != null ? \" \\\"\".concat(value, \"\\\"\") : '');\n}\n/**\n * A helper function to describe a token kind as a string for debugging.\n */\n\n\nfunction getTokenKindDesc(kind) {\n return isPunctuatorTokenKind(kind) ? \"\\\"\".concat(kind, \"\\\"\") : kind;\n}\n","import inspect from \"../jsutils/inspect.mjs\";\nimport { isNode } from \"./ast.mjs\";\n/**\n * A visitor is provided to visit, it contains the collection of\n * relevant functions to be called during the visitor's traversal.\n */\n\nexport var QueryDocumentKeys = {\n Name: [],\n Document: ['definitions'],\n OperationDefinition: ['name', 'variableDefinitions', 'directives', 'selectionSet'],\n VariableDefinition: ['variable', 'type', 'defaultValue', 'directives'],\n Variable: ['name'],\n SelectionSet: ['selections'],\n Field: ['alias', 'name', 'arguments', 'directives', 'selectionSet'],\n Argument: ['name', 'value'],\n FragmentSpread: ['name', 'directives'],\n InlineFragment: ['typeCondition', 'directives', 'selectionSet'],\n FragmentDefinition: ['name', // Note: fragment variable definitions are experimental and may be changed\n // or removed in the future.\n 'variableDefinitions', 'typeCondition', 'directives', 'selectionSet'],\n IntValue: [],\n FloatValue: [],\n StringValue: [],\n BooleanValue: [],\n NullValue: [],\n EnumValue: [],\n ListValue: ['values'],\n ObjectValue: ['fields'],\n ObjectField: ['name', 'value'],\n Directive: ['name', 'arguments'],\n NamedType: ['name'],\n ListType: ['type'],\n NonNullType: ['type'],\n SchemaDefinition: ['description', 'directives', 'operationTypes'],\n OperationTypeDefinition: ['type'],\n ScalarTypeDefinition: ['description', 'name', 'directives'],\n ObjectTypeDefinition: ['description', 'name', 'interfaces', 'directives', 'fields'],\n FieldDefinition: ['description', 'name', 'arguments', 'type', 'directives'],\n InputValueDefinition: ['description', 'name', 'type', 'defaultValue', 'directives'],\n InterfaceTypeDefinition: ['description', 'name', 'interfaces', 'directives', 'fields'],\n UnionTypeDefinition: ['description', 'name', 'directives', 'types'],\n EnumTypeDefinition: ['description', 'name', 'directives', 'values'],\n EnumValueDefinition: ['description', 'name', 'directives'],\n InputObjectTypeDefinition: ['description', 'name', 'directives', 'fields'],\n DirectiveDefinition: ['description', 'name', 'arguments', 'locations'],\n SchemaExtension: ['directives', 'operationTypes'],\n ScalarTypeExtension: ['name', 'directives'],\n ObjectTypeExtension: ['name', 'interfaces', 'directives', 'fields'],\n InterfaceTypeExtension: ['name', 'interfaces', 'directives', 'fields'],\n UnionTypeExtension: ['name', 'directives', 'types'],\n EnumTypeExtension: ['name', 'directives', 'values'],\n InputObjectTypeExtension: ['name', 'directives', 'fields']\n};\nexport var BREAK = Object.freeze({});\n/**\n * visit() will walk through an AST using a depth-first traversal, calling\n * the visitor's enter function at each node in the traversal, and calling the\n * leave function after visiting that node and all of its child nodes.\n *\n * By returning different values from the enter and leave functions, the\n * behavior of the visitor can be altered, including skipping over a sub-tree of\n * the AST (by returning false), editing the AST by returning a value or null\n * to remove the value, or to stop the whole traversal by returning BREAK.\n *\n * When using visit() to edit an AST, the original AST will not be modified, and\n * a new version of the AST with the changes applied will be returned from the\n * visit function.\n *\n * const editedAST = visit(ast, {\n * enter(node, key, parent, path, ancestors) {\n * // @return\n * // undefined: no action\n * // false: skip visiting this node\n * // visitor.BREAK: stop visiting altogether\n * // null: delete this node\n * // any value: replace this node with the returned value\n * },\n * leave(node, key, parent, path, ancestors) {\n * // @return\n * // undefined: no action\n * // false: no action\n * // visitor.BREAK: stop visiting altogether\n * // null: delete this node\n * // any value: replace this node with the returned value\n * }\n * });\n *\n * Alternatively to providing enter() and leave() functions, a visitor can\n * instead provide functions named the same as the kinds of AST nodes, or\n * enter/leave visitors at a named key, leading to four permutations of the\n * visitor API:\n *\n * 1) Named visitors triggered when entering a node of a specific kind.\n *\n * visit(ast, {\n * Kind(node) {\n * // enter the \"Kind\" node\n * }\n * })\n *\n * 2) Named visitors that trigger upon entering and leaving a node of\n * a specific kind.\n *\n * visit(ast, {\n * Kind: {\n * enter(node) {\n * // enter the \"Kind\" node\n * }\n * leave(node) {\n * // leave the \"Kind\" node\n * }\n * }\n * })\n *\n * 3) Generic visitors that trigger upon entering and leaving any node.\n *\n * visit(ast, {\n * enter(node) {\n * // enter any node\n * },\n * leave(node) {\n * // leave any node\n * }\n * })\n *\n * 4) Parallel visitors for entering and leaving nodes of a specific kind.\n *\n * visit(ast, {\n * enter: {\n * Kind(node) {\n * // enter the \"Kind\" node\n * }\n * },\n * leave: {\n * Kind(node) {\n * // leave the \"Kind\" node\n * }\n * }\n * })\n */\n\nexport function visit(root, visitor) {\n var visitorKeys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : QueryDocumentKeys;\n\n /* eslint-disable no-undef-init */\n var stack = undefined;\n var inArray = Array.isArray(root);\n var keys = [root];\n var index = -1;\n var edits = [];\n var node = undefined;\n var key = undefined;\n var parent = undefined;\n var path = [];\n var ancestors = [];\n var newRoot = root;\n /* eslint-enable no-undef-init */\n\n do {\n index++;\n var isLeaving = index === keys.length;\n var isEdited = isLeaving && edits.length !== 0;\n\n if (isLeaving) {\n key = ancestors.length === 0 ? undefined : path[path.length - 1];\n node = parent;\n parent = ancestors.pop();\n\n if (isEdited) {\n if (inArray) {\n node = node.slice();\n } else {\n var clone = {};\n\n for (var _i2 = 0, _Object$keys2 = Object.keys(node); _i2 < _Object$keys2.length; _i2++) {\n var k = _Object$keys2[_i2];\n clone[k] = node[k];\n }\n\n node = clone;\n }\n\n var editOffset = 0;\n\n for (var ii = 0; ii < edits.length; ii++) {\n var editKey = edits[ii][0];\n var editValue = edits[ii][1];\n\n if (inArray) {\n editKey -= editOffset;\n }\n\n if (inArray && editValue === null) {\n node.splice(editKey, 1);\n editOffset++;\n } else {\n node[editKey] = editValue;\n }\n }\n }\n\n index = stack.index;\n keys = stack.keys;\n edits = stack.edits;\n inArray = stack.inArray;\n stack = stack.prev;\n } else {\n key = parent ? inArray ? index : keys[index] : undefined;\n node = parent ? parent[key] : newRoot;\n\n if (node === null || node === undefined) {\n continue;\n }\n\n if (parent) {\n path.push(key);\n }\n }\n\n var result = void 0;\n\n if (!Array.isArray(node)) {\n if (!isNode(node)) {\n throw new Error(\"Invalid AST Node: \".concat(inspect(node), \".\"));\n }\n\n var visitFn = getVisitFn(visitor, node.kind, isLeaving);\n\n if (visitFn) {\n result = visitFn.call(visitor, node, key, parent, path, ancestors);\n\n if (result === BREAK) {\n break;\n }\n\n if (result === false) {\n if (!isLeaving) {\n path.pop();\n continue;\n }\n } else if (result !== undefined) {\n edits.push([key, result]);\n\n if (!isLeaving) {\n if (isNode(result)) {\n node = result;\n } else {\n path.pop();\n continue;\n }\n }\n }\n }\n }\n\n if (result === undefined && isEdited) {\n edits.push([key, node]);\n }\n\n if (isLeaving) {\n path.pop();\n } else {\n var _visitorKeys$node$kin;\n\n stack = {\n inArray: inArray,\n index: index,\n keys: keys,\n edits: edits,\n prev: stack\n };\n inArray = Array.isArray(node);\n keys = inArray ? node : (_visitorKeys$node$kin = visitorKeys[node.kind]) !== null && _visitorKeys$node$kin !== void 0 ? _visitorKeys$node$kin : [];\n index = -1;\n edits = [];\n\n if (parent) {\n ancestors.push(parent);\n }\n\n parent = node;\n }\n } while (stack !== undefined);\n\n if (edits.length !== 0) {\n newRoot = edits[edits.length - 1][1];\n }\n\n return newRoot;\n}\n/**\n * Creates a new visitor instance which delegates to many visitors to run in\n * parallel. Each visitor will be visited for each node before moving on.\n *\n * If a prior visitor edits a node, no following visitors will see that node.\n */\n\nexport function visitInParallel(visitors) {\n var skipping = new Array(visitors.length);\n return {\n enter: function enter(node) {\n for (var i = 0; i < visitors.length; i++) {\n if (skipping[i] == null) {\n var fn = getVisitFn(visitors[i], node.kind,\n /* isLeaving */\n false);\n\n if (fn) {\n var result = fn.apply(visitors[i], arguments);\n\n if (result === false) {\n skipping[i] = node;\n } else if (result === BREAK) {\n skipping[i] = BREAK;\n } else if (result !== undefined) {\n return result;\n }\n }\n }\n }\n },\n leave: function leave(node) {\n for (var i = 0; i < visitors.length; i++) {\n if (skipping[i] == null) {\n var fn = getVisitFn(visitors[i], node.kind,\n /* isLeaving */\n true);\n\n if (fn) {\n var result = fn.apply(visitors[i], arguments);\n\n if (result === BREAK) {\n skipping[i] = BREAK;\n } else if (result !== undefined && result !== false) {\n return result;\n }\n }\n } else if (skipping[i] === node) {\n skipping[i] = null;\n }\n }\n }\n };\n}\n/**\n * Given a visitor instance, if it is leaving or not, and a node kind, return\n * the function the visitor runtime should call.\n */\n\nexport function getVisitFn(visitor, kind, isLeaving) {\n var kindVisitor = visitor[kind];\n\n if (kindVisitor) {\n if (!isLeaving && typeof kindVisitor === 'function') {\n // { Kind() {} }\n return kindVisitor;\n }\n\n var kindSpecificVisitor = isLeaving ? kindVisitor.leave : kindVisitor.enter;\n\n if (typeof kindSpecificVisitor === 'function') {\n // { Kind: { enter() {}, leave() {} } }\n return kindSpecificVisitor;\n }\n } else {\n var specificVisitor = isLeaving ? visitor.leave : visitor.enter;\n\n if (specificVisitor) {\n if (typeof specificVisitor === 'function') {\n // { enter() {}, leave() {} }\n return specificVisitor;\n }\n\n var specificKindVisitor = specificVisitor[kind];\n\n if (typeof specificKindVisitor === 'function') {\n // { enter: { Kind() {} }, leave: { Kind() {} } }\n return specificKindVisitor;\n }\n }\n }\n}\n","import { visit } from \"./visitor.mjs\";\nimport { printBlockString } from \"./blockString.mjs\";\n/**\n * Converts an AST into a string, using one set of reasonable\n * formatting rules.\n */\n\nexport function print(ast) {\n return visit(ast, {\n leave: printDocASTReducer\n });\n}\nvar MAX_LINE_LENGTH = 80; // TODO: provide better type coverage in future\n\nvar printDocASTReducer = {\n Name: function Name(node) {\n return node.value;\n },\n Variable: function Variable(node) {\n return '$' + node.name;\n },\n // Document\n Document: function Document(node) {\n return join(node.definitions, '\\n\\n') + '\\n';\n },\n OperationDefinition: function OperationDefinition(node) {\n var op = node.operation;\n var name = node.name;\n var varDefs = wrap('(', join(node.variableDefinitions, ', '), ')');\n var directives = join(node.directives, ' ');\n var selectionSet = node.selectionSet; // Anonymous queries with no directives or variable definitions can use\n // the query short form.\n\n return !name && !directives && !varDefs && op === 'query' ? selectionSet : join([op, join([name, varDefs]), directives, selectionSet], ' ');\n },\n VariableDefinition: function VariableDefinition(_ref) {\n var variable = _ref.variable,\n type = _ref.type,\n defaultValue = _ref.defaultValue,\n directives = _ref.directives;\n return variable + ': ' + type + wrap(' = ', defaultValue) + wrap(' ', join(directives, ' '));\n },\n SelectionSet: function SelectionSet(_ref2) {\n var selections = _ref2.selections;\n return block(selections);\n },\n Field: function Field(_ref3) {\n var alias = _ref3.alias,\n name = _ref3.name,\n args = _ref3.arguments,\n directives = _ref3.directives,\n selectionSet = _ref3.selectionSet;\n var prefix = wrap('', alias, ': ') + name;\n var argsLine = prefix + wrap('(', join(args, ', '), ')');\n\n if (argsLine.length > MAX_LINE_LENGTH) {\n argsLine = prefix + wrap('(\\n', indent(join(args, '\\n')), '\\n)');\n }\n\n return join([argsLine, join(directives, ' '), selectionSet], ' ');\n },\n Argument: function Argument(_ref4) {\n var name = _ref4.name,\n value = _ref4.value;\n return name + ': ' + value;\n },\n // Fragments\n FragmentSpread: function FragmentSpread(_ref5) {\n var name = _ref5.name,\n directives = _ref5.directives;\n return '...' + name + wrap(' ', join(directives, ' '));\n },\n InlineFragment: function InlineFragment(_ref6) {\n var typeCondition = _ref6.typeCondition,\n directives = _ref6.directives,\n selectionSet = _ref6.selectionSet;\n return join(['...', wrap('on ', typeCondition), join(directives, ' '), selectionSet], ' ');\n },\n FragmentDefinition: function FragmentDefinition(_ref7) {\n var name = _ref7.name,\n typeCondition = _ref7.typeCondition,\n variableDefinitions = _ref7.variableDefinitions,\n directives = _ref7.directives,\n selectionSet = _ref7.selectionSet;\n return (// Note: fragment variable definitions are experimental and may be changed\n // or removed in the future.\n \"fragment \".concat(name).concat(wrap('(', join(variableDefinitions, ', '), ')'), \" \") + \"on \".concat(typeCondition, \" \").concat(wrap('', join(directives, ' '), ' ')) + selectionSet\n );\n },\n // Value\n IntValue: function IntValue(_ref8) {\n var value = _ref8.value;\n return value;\n },\n FloatValue: function FloatValue(_ref9) {\n var value = _ref9.value;\n return value;\n },\n StringValue: function StringValue(_ref10, key) {\n var value = _ref10.value,\n isBlockString = _ref10.block;\n return isBlockString ? printBlockString(value, key === 'description' ? '' : ' ') : JSON.stringify(value);\n },\n BooleanValue: function BooleanValue(_ref11) {\n var value = _ref11.value;\n return value ? 'true' : 'false';\n },\n NullValue: function NullValue() {\n return 'null';\n },\n EnumValue: function EnumValue(_ref12) {\n var value = _ref12.value;\n return value;\n },\n ListValue: function ListValue(_ref13) {\n var values = _ref13.values;\n return '[' + join(values, ', ') + ']';\n },\n ObjectValue: function ObjectValue(_ref14) {\n var fields = _ref14.fields;\n return '{' + join(fields, ', ') + '}';\n },\n ObjectField: function ObjectField(_ref15) {\n var name = _ref15.name,\n value = _ref15.value;\n return name + ': ' + value;\n },\n // Directive\n Directive: function Directive(_ref16) {\n var name = _ref16.name,\n args = _ref16.arguments;\n return '@' + name + wrap('(', join(args, ', '), ')');\n },\n // Type\n NamedType: function NamedType(_ref17) {\n var name = _ref17.name;\n return name;\n },\n ListType: function ListType(_ref18) {\n var type = _ref18.type;\n return '[' + type + ']';\n },\n NonNullType: function NonNullType(_ref19) {\n var type = _ref19.type;\n return type + '!';\n },\n // Type System Definitions\n SchemaDefinition: addDescription(function (_ref20) {\n var directives = _ref20.directives,\n operationTypes = _ref20.operationTypes;\n return join(['schema', join(directives, ' '), block(operationTypes)], ' ');\n }),\n OperationTypeDefinition: function OperationTypeDefinition(_ref21) {\n var operation = _ref21.operation,\n type = _ref21.type;\n return operation + ': ' + type;\n },\n ScalarTypeDefinition: addDescription(function (_ref22) {\n var name = _ref22.name,\n directives = _ref22.directives;\n return join(['scalar', name, join(directives, ' ')], ' ');\n }),\n ObjectTypeDefinition: addDescription(function (_ref23) {\n var name = _ref23.name,\n interfaces = _ref23.interfaces,\n directives = _ref23.directives,\n fields = _ref23.fields;\n return join(['type', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n }),\n FieldDefinition: addDescription(function (_ref24) {\n var name = _ref24.name,\n args = _ref24.arguments,\n type = _ref24.type,\n directives = _ref24.directives;\n return name + (hasMultilineItems(args) ? wrap('(\\n', indent(join(args, '\\n')), '\\n)') : wrap('(', join(args, ', '), ')')) + ': ' + type + wrap(' ', join(directives, ' '));\n }),\n InputValueDefinition: addDescription(function (_ref25) {\n var name = _ref25.name,\n type = _ref25.type,\n defaultValue = _ref25.defaultValue,\n directives = _ref25.directives;\n return join([name + ': ' + type, wrap('= ', defaultValue), join(directives, ' ')], ' ');\n }),\n InterfaceTypeDefinition: addDescription(function (_ref26) {\n var name = _ref26.name,\n interfaces = _ref26.interfaces,\n directives = _ref26.directives,\n fields = _ref26.fields;\n return join(['interface', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n }),\n UnionTypeDefinition: addDescription(function (_ref27) {\n var name = _ref27.name,\n directives = _ref27.directives,\n types = _ref27.types;\n return join(['union', name, join(directives, ' '), types && types.length !== 0 ? '= ' + join(types, ' | ') : ''], ' ');\n }),\n EnumTypeDefinition: addDescription(function (_ref28) {\n var name = _ref28.name,\n directives = _ref28.directives,\n values = _ref28.values;\n return join(['enum', name, join(directives, ' '), block(values)], ' ');\n }),\n EnumValueDefinition: addDescription(function (_ref29) {\n var name = _ref29.name,\n directives = _ref29.directives;\n return join([name, join(directives, ' ')], ' ');\n }),\n InputObjectTypeDefinition: addDescription(function (_ref30) {\n var name = _ref30.name,\n directives = _ref30.directives,\n fields = _ref30.fields;\n return join(['input', name, join(directives, ' '), block(fields)], ' ');\n }),\n DirectiveDefinition: addDescription(function (_ref31) {\n var name = _ref31.name,\n args = _ref31.arguments,\n repeatable = _ref31.repeatable,\n locations = _ref31.locations;\n return 'directive @' + name + (hasMultilineItems(args) ? wrap('(\\n', indent(join(args, '\\n')), '\\n)') : wrap('(', join(args, ', '), ')')) + (repeatable ? ' repeatable' : '') + ' on ' + join(locations, ' | ');\n }),\n SchemaExtension: function SchemaExtension(_ref32) {\n var directives = _ref32.directives,\n operationTypes = _ref32.operationTypes;\n return join(['extend schema', join(directives, ' '), block(operationTypes)], ' ');\n },\n ScalarTypeExtension: function ScalarTypeExtension(_ref33) {\n var name = _ref33.name,\n directives = _ref33.directives;\n return join(['extend scalar', name, join(directives, ' ')], ' ');\n },\n ObjectTypeExtension: function ObjectTypeExtension(_ref34) {\n var name = _ref34.name,\n interfaces = _ref34.interfaces,\n directives = _ref34.directives,\n fields = _ref34.fields;\n return join(['extend type', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n },\n InterfaceTypeExtension: function InterfaceTypeExtension(_ref35) {\n var name = _ref35.name,\n interfaces = _ref35.interfaces,\n directives = _ref35.directives,\n fields = _ref35.fields;\n return join(['extend interface', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n },\n UnionTypeExtension: function UnionTypeExtension(_ref36) {\n var name = _ref36.name,\n directives = _ref36.directives,\n types = _ref36.types;\n return join(['extend union', name, join(directives, ' '), types && types.length !== 0 ? '= ' + join(types, ' | ') : ''], ' ');\n },\n EnumTypeExtension: function EnumTypeExtension(_ref37) {\n var name = _ref37.name,\n directives = _ref37.directives,\n values = _ref37.values;\n return join(['extend enum', name, join(directives, ' '), block(values)], ' ');\n },\n InputObjectTypeExtension: function InputObjectTypeExtension(_ref38) {\n var name = _ref38.name,\n directives = _ref38.directives,\n fields = _ref38.fields;\n return join(['extend input', name, join(directives, ' '), block(fields)], ' ');\n }\n};\n\nfunction addDescription(cb) {\n return function (node) {\n return join([node.description, cb(node)], '\\n');\n };\n}\n/**\n * Given maybeArray, print an empty string if it is null or empty, otherwise\n * print all items together separated by separator if provided\n */\n\n\nfunction join(maybeArray) {\n var _maybeArray$filter$jo;\n\n var separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n return (_maybeArray$filter$jo = maybeArray === null || maybeArray === void 0 ? void 0 : maybeArray.filter(function (x) {\n return x;\n }).join(separator)) !== null && _maybeArray$filter$jo !== void 0 ? _maybeArray$filter$jo : '';\n}\n/**\n * Given array, print each item on its own line, wrapped in an\n * indented \"{ }\" block.\n */\n\n\nfunction block(array) {\n return wrap('{\\n', indent(join(array, '\\n')), '\\n}');\n}\n/**\n * If maybeString is not null or empty, then wrap with start and end, otherwise print an empty string.\n */\n\n\nfunction wrap(start, maybeString) {\n var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n return maybeString != null && maybeString !== '' ? start + maybeString + end : '';\n}\n\nfunction indent(str) {\n return wrap(' ', str.replace(/\\n/g, '\\n '));\n}\n\nfunction isMultiline(str) {\n return str.indexOf('\\n') !== -1;\n}\n\nfunction hasMultilineItems(maybeArray) {\n return maybeArray != null && maybeArray.some(isMultiline);\n}\n","export const isArrayLike = (<T>(x: any): x is ArrayLike<T> => x && typeof x.length === 'number' && typeof x !== 'function');","import { isFunction } from \"./isFunction\";\n\n/**\n * Tests to see if the object is \"thennable\".\n * @param value the object to test\n */\nexport function isPromise(value: any): value is PromiseLike<any> {\n return isFunction(value?.then);\n}\n","import { InteropObservable } from '../types';\nimport { observable as Symbol_observable } from '../symbol/observable';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being Observable (but not necessary an Rx Observable) */\nexport function isInteropObservable(input: any): input is InteropObservable<any> {\n return isFunction(input[Symbol_observable]);\n}\n","import { isFunction } from './isFunction';\n\nexport function isAsyncIterable<T>(obj: any): obj is AsyncIterable<T> {\n return Symbol.asyncIterator && isFunction(obj?.[Symbol.asyncIterator]);\n}\n","/**\n * Creates the TypeError to throw if an invalid object is passed to `from` or `scheduled`.\n * @param input The object that was passed.\n */\nexport function createInvalidObservableTypeError(input: any) {\n // TODO: We should create error codes that can be looked up, so this can be less verbose.\n return new TypeError(\n `You provided ${\n input !== null && typeof input === 'object' ? 'an invalid object' : `'${input}'`\n } where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`\n );\n}\n","export function getSymbolIterator(): symbol {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator' as any;\n }\n\n return Symbol.iterator;\n}\n\nexport const iterator = getSymbolIterator();\n","import { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being an Iterable */\nexport function isIterable(input: any): input is Iterable<any> {\n return isFunction(input?.[Symbol_iterator]);\n}\n","import { ReadableStreamLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport async function* readableStreamLikeToAsyncGenerator<T>(readableStream: ReadableStreamLike<T>): AsyncGenerator<T> {\n const reader = readableStream.getReader();\n try {\n while (true) {\n const { value, done } = await reader.read();\n if (done) {\n return;\n }\n yield value!;\n }\n } finally {\n reader.releaseLock();\n }\n}\n\nexport function isReadableStreamLike<T>(obj: any): obj is ReadableStreamLike<T> {\n // We don't want to use instanceof checks because they would return\n // false for instances from another Realm, like an <iframe>.\n return isFunction(obj?.getReader);\n}\n","import { isArrayLike } from '../util/isArrayLike';\nimport { isPromise } from '../util/isPromise';\nimport { Observable } from '../Observable';\nimport { ObservableInput, ObservedValueOf, ReadableStreamLike } from '../types';\nimport { isInteropObservable } from '../util/isInteropObservable';\nimport { isAsyncIterable } from '../util/isAsyncIterable';\nimport { createInvalidObservableTypeError } from '../util/throwUnobservableError';\nimport { isIterable } from '../util/isIterable';\nimport { isReadableStreamLike, readableStreamLikeToAsyncGenerator } from '../util/isReadableStreamLike';\nimport { Subscriber } from '../Subscriber';\nimport { isFunction } from '../util/isFunction';\nimport { reportUnhandledError } from '../util/reportUnhandledError';\nimport { observable as Symbol_observable } from '../symbol/observable';\n\nexport function innerFrom<O extends ObservableInput<any>>(input: O): Observable<ObservedValueOf<O>>;\nexport function innerFrom<T>(input: ObservableInput<T>): Observable<T> {\n if (input instanceof Observable) {\n return input;\n }\n if (input != null) {\n if (isInteropObservable(input)) {\n return fromInteropObservable(input);\n }\n if (isArrayLike(input)) {\n return fromArrayLike(input);\n }\n if (isPromise(input)) {\n return fromPromise(input);\n }\n if (isAsyncIterable(input)) {\n return fromAsyncIterable(input);\n }\n if (isIterable(input)) {\n return fromIterable(input);\n }\n if (isReadableStreamLike(input)) {\n return fromReadableStreamLike(input);\n }\n }\n\n throw createInvalidObservableTypeError(input);\n}\n\n/**\n * Creates an RxJS Observable from an object that implements `Symbol.observable`.\n * @param obj An object that properly implements `Symbol.observable`.\n */\nexport function fromInteropObservable<T>(obj: any) {\n return new Observable((subscriber: Subscriber<T>) => {\n const obs = obj[Symbol_observable]();\n if (isFunction(obs.subscribe)) {\n return obs.subscribe(subscriber);\n }\n // Should be caught by observable subscribe function error handling.\n throw new TypeError('Provided object does not correctly implement Symbol.observable');\n });\n}\n\n/**\n * Synchronously emits the values of an array like and completes.\n * This is exported because there are creation functions and operators that need to\n * make direct use of the same logic, and there's no reason to make them run through\n * `from` conditionals because we *know* they're dealing with an array.\n * @param array The array to emit values from\n */\nexport function fromArrayLike<T>(array: ArrayLike<T>) {\n return new Observable((subscriber: Subscriber<T>) => {\n // Loop over the array and emit each value. Note two things here:\n // 1. We're making sure that the subscriber is not closed on each loop.\n // This is so we don't continue looping over a very large array after\n // something like a `take`, `takeWhile`, or other synchronous unsubscription\n // has already unsubscribed.\n // 2. In this form, reentrant code can alter that array we're looping over.\n // This is a known issue, but considered an edge case. The alternative would\n // be to copy the array before executing the loop, but this has\n // performance implications.\n for (let i = 0; i < array.length && !subscriber.closed; i++) {\n subscriber.next(array[i]);\n }\n subscriber.complete();\n });\n}\n\nexport function fromPromise<T>(promise: PromiseLike<T>) {\n return new Observable((subscriber: Subscriber<T>) => {\n promise\n .then(\n (value) => {\n if (!subscriber.closed) {\n subscriber.next(value);\n subscriber.complete();\n }\n },\n (err: any) => subscriber.error(err)\n )\n .then(null, reportUnhandledError);\n });\n}\n\nexport function fromIterable<T>(iterable: Iterable<T>) {\n return new Observable((subscriber: Subscriber<T>) => {\n for (const value of iterable) {\n subscriber.next(value);\n if (subscriber.closed) {\n return;\n }\n }\n subscriber.complete();\n });\n}\n\nexport function fromAsyncIterable<T>(asyncIterable: AsyncIterable<T>) {\n return new Observable((subscriber: Subscriber<T>) => {\n process(asyncIterable, subscriber).catch((err) => subscriber.error(err));\n });\n}\n\nexport function fromReadableStreamLike<T>(readableStream: ReadableStreamLike<T>) {\n return fromAsyncIterable(readableStreamLikeToAsyncGenerator(readableStream));\n}\n\nasync function process<T>(asyncIterable: AsyncIterable<T>, subscriber: Subscriber<T>) {\n for await (const value of asyncIterable) {\n subscriber.next(value);\n // A side-effect may have closed our subscriber,\n // check before the next iteration.\n if (subscriber.closed) {\n return;\n }\n }\n subscriber.complete();\n}\n","import { Observable } from '../Observable';\n\nimport { ObservableInput, OperatorFunction, ObservedValueOf } from '../types';\nimport { Subscription } from '../Subscription';\nimport { innerFrom } from '../observable/innerFrom';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { operate } from '../util/lift';\n\n/* tslint:disable:max-line-length */\nexport function catchError<T, O extends ObservableInput<any>>(\n selector: (err: any, caught: Observable<T>) => O\n): OperatorFunction<T, T | ObservedValueOf<O>>;\n/* tslint:enable:max-line-length */\n\n/**\n * Catches errors on the observable to be handled by returning a new observable or throwing an error.\n *\n * <span class=\"informal\">\n * It only listens to the error channel and ignores notifications.\n * Handles errors from the source observable, and maps them to a new observable.\n * The error may also be rethrown, or a new error can be thrown to emit an error from the result.\n * </span>\n *\n * \n *\n * This operator handles errors, but forwards along all other events to the resulting observable.\n * If the source observable terminates with an error, it will map that error to a new observable,\n * subscribe to it, and forward all of its events to the resulting observable.\n *\n * ## Examples\n *\n * Continue with a different Observable when there's an error\n *\n * ```ts\n * import { of, map, catchError } from 'rxjs';\n *\n * of(1, 2, 3, 4, 5)\n * .pipe(\n * map(n => {\n * if (n === 4) {\n * throw 'four!';\n * }\n * return n;\n * }),\n * catchError(err => of('I', 'II', 'III', 'IV', 'V'))\n * )\n * .subscribe(x => console.log(x));\n * // 1, 2, 3, I, II, III, IV, V\n * ```\n *\n * Retry the caught source Observable again in case of error, similar to `retry()` operator\n *\n * ```ts\n * import { of, map, catchError, take } from 'rxjs';\n *\n * of(1, 2, 3, 4, 5)\n * .pipe(\n * map(n => {\n * if (n === 4) {\n * throw 'four!';\n * }\n * return n;\n * }),\n * catchError((err, caught) => caught),\n * take(30)\n * )\n * .subscribe(x => console.log(x));\n * // 1, 2, 3, 1, 2, 3, ...\n * ```\n *\n * Throw a new error when the source Observable throws an error\n *\n * ```ts\n * import { of, map, catchError } from 'rxjs';\n *\n * of(1, 2, 3, 4, 5)\n * .pipe(\n * map(n => {\n * if (n === 4) {\n * throw 'four!';\n * }\n * return n;\n * }),\n * catchError(err => {\n * throw 'error in source. Details: ' + err;\n * })\n * )\n * .subscribe({\n * next: x => console.log(x),\n * error: err => console.log(err)\n * });\n * // 1, 2, 3, error in source. Details: four!\n * ```\n *\n * @see {@link onErrorResumeNext}\n * @see {@link repeat}\n * @see {@link repeatWhen}\n * @see {@link retry }\n * @see {@link retryWhen}\n *\n * @param {function} selector a function that takes as arguments `err`, which is the error, and `caught`, which\n * is the source observable, in case you'd like to \"retry\" that observable by returning it again. Whatever observable\n * is returned by the `selector` will be used to continue the observable chain.\n * @return A function that returns an Observable that originates from either\n * the source or the Observable returned by the `selector` function.\n */\nexport function catchError<T, O extends ObservableInput<any>>(\n selector: (err: any, caught: Observable<T>) => O\n): OperatorFunction<T, T | ObservedValueOf<O>> {\n return operate((source, subscriber) => {\n let innerSub: Subscription | null = null;\n let syncUnsub = false;\n let handledResult: Observable<ObservedValueOf<O>>;\n\n innerSub = source.subscribe(\n createOperatorSubscriber(subscriber, undefined, undefined, (err) => {\n handledResult = innerFrom(selector(err, catchError(selector)(source)));\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n } else {\n // We don't have an innerSub yet, that means the error was synchronous\n // because the subscribe call hasn't returned yet.\n syncUnsub = true;\n }\n })\n );\n\n if (syncUnsub) {\n // We have a synchronous error, we need to make sure to\n // finalize right away. This ensures that callbacks in the `finalize` operator are called\n // at the right time, and that finalization occurs at the expected\n // time between the source error and the subscription to the\n // next observable.\n innerSub.unsubscribe();\n innerSub = null;\n handledResult!.subscribe(subscriber);\n }\n });\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst AmplifyUrl = URL;\nconst AmplifyUrlSearchParams = URLSearchParams;\nexport { AmplifyUrl, AmplifyUrlSearchParams };\n","// generated by genversion\nexport const version = '6.3.1';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const globalExists = () => {\n return typeof global !== 'undefined';\n};\nexport const globalThisExists = () => {\n return typeof globalThis !== 'undefined';\n};\nexport const windowExists = () => {\n return typeof window !== 'undefined';\n};\nexport const documentExists = () => {\n return typeof document !== 'undefined';\n};\nexport const processExists = () => {\n return typeof process !== 'undefined';\n};\nexport const keyPrefixMatch = (object, prefix) => {\n return !!Object.keys(object).find(key => key.startsWith(prefix));\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Framework } from '../types';\nimport { reactSSRDetect, reactWebDetect } from './React';\nimport { vueSSRDetect, vueWebDetect } from './Vue';\nimport { svelteSSRDetect, svelteWebDetect } from './Svelte';\nimport { nextSSRDetect, nextWebDetect } from './Next';\nimport { nuxtSSRDetect, nuxtWebDetect } from './Nuxt';\nimport { angularSSRDetect, angularWebDetect } from './Angular';\nimport { reactNativeDetect } from './ReactNative';\nimport { expoDetect } from './Expo';\nimport { webDetect } from './Web';\n// These are in the order of detection where when both are detectable, the early Framework will be reported\nconst detectionMap = [\n // First, detect mobile\n { platform: Framework.Expo, detectionMethod: expoDetect },\n { platform: Framework.ReactNative, detectionMethod: reactNativeDetect },\n // Next, detect web frameworks\n { platform: Framework.NextJs, detectionMethod: nextWebDetect },\n { platform: Framework.Nuxt, detectionMethod: nuxtWebDetect },\n { platform: Framework.Angular, detectionMethod: angularWebDetect },\n { platform: Framework.React, detectionMethod: reactWebDetect },\n { platform: Framework.VueJs, detectionMethod: vueWebDetect },\n { platform: Framework.Svelte, detectionMethod: svelteWebDetect },\n { platform: Framework.WebUnknown, detectionMethod: webDetect },\n // Last, detect ssr frameworks\n { platform: Framework.NextJsSSR, detectionMethod: nextSSRDetect },\n { platform: Framework.NuxtSSR, detectionMethod: nuxtSSRDetect },\n { platform: Framework.ReactSSR, detectionMethod: reactSSRDetect },\n { platform: Framework.VueJsSSR, detectionMethod: vueSSRDetect },\n { platform: Framework.AngularSSR, detectionMethod: angularSSRDetect },\n { platform: Framework.SvelteSSR, detectionMethod: svelteSSRDetect },\n];\nexport function detect() {\n return (detectionMap.find(detectionEntry => detectionEntry.detectionMethod())\n ?.platform || Framework.ServerSideUnknown);\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { globalExists } from './helpers';\n// Tested with expo 48 / react-native 0.71.3\nexport function expoDetect() {\n return globalExists() && typeof global.expo !== 'undefined';\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with react-native 0.17.7\nexport function reactNativeDetect() {\n return (typeof navigator !== 'undefined' &&\n typeof navigator.product !== 'undefined' &&\n navigator.product === 'ReactNative');\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { globalExists, keyPrefixMatch, windowExists } from './helpers';\n// Tested with next 13.4 / react 18.2\nexport function nextWebDetect() {\n return (windowExists() &&\n window.next &&\n typeof window.next === 'object');\n}\nexport function nextSSRDetect() {\n return (globalExists() &&\n (keyPrefixMatch(global, '__next') || keyPrefixMatch(global, '__NEXT')));\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { globalExists, windowExists } from './helpers';\n// Tested with nuxt 2.15 / vue 2.7\nexport function nuxtWebDetect() {\n return (windowExists() &&\n (window.__NUXT__ !== undefined ||\n window.$nuxt !== undefined));\n}\nexport function nuxtSSRDetect() {\n return (globalExists() && typeof global.__NUXT_PATHS__ !== 'undefined');\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { documentExists, processExists, windowExists } from './helpers';\n// Tested with @angular/core 16.0.0\nexport function angularWebDetect() {\n const angularVersionSetInDocument = Boolean(documentExists() && document.querySelector('[ng-version]'));\n const angularContentSetInWindow = Boolean(windowExists() && typeof window.ng !== 'undefined');\n return angularVersionSetInDocument || angularContentSetInWindow;\n}\nexport function angularSSRDetect() {\n return ((processExists() &&\n typeof process.env === 'object' &&\n process.env.npm_lifecycle_script?.startsWith('ng ')) ||\n false);\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { documentExists, processExists } from './helpers';\n// Tested with react 18.2 - built using Vite\nexport function reactWebDetect() {\n const elementKeyPrefixedWithReact = (key) => {\n return key.startsWith('_react') || key.startsWith('__react');\n };\n const elementIsReactEnabled = (element) => {\n return Object.keys(element).find(elementKeyPrefixedWithReact);\n };\n const allElementsWithId = () => Array.from(document.querySelectorAll('[id]'));\n return documentExists() && allElementsWithId().some(elementIsReactEnabled);\n}\nexport function reactSSRDetect() {\n return (processExists() &&\n typeof process.env !== 'undefined' &&\n !!Object.keys(process.env).find(key => key.includes('react')));\n}\n// use the some\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { globalExists, keyPrefixMatch, windowExists } from './helpers';\n// Tested with vue 3.3.2\nexport function vueWebDetect() {\n return windowExists() && keyPrefixMatch(window, '__VUE');\n}\nexport function vueSSRDetect() {\n return globalExists() && keyPrefixMatch(global, '__VUE');\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { keyPrefixMatch, processExists, windowExists } from './helpers';\n// Tested with svelte 3.59\nexport function svelteWebDetect() {\n return windowExists() && keyPrefixMatch(window, '__SVELTE');\n}\nexport function svelteSSRDetect() {\n return (processExists() &&\n typeof process.env !== 'undefined' &&\n !!Object.keys(process.env).find(key => key.includes('svelte')));\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { windowExists } from './helpers';\nexport function webDetect() {\n return windowExists();\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Framework } from './types';\nimport { detect } from './detection';\n// We want to cache detection since the framework won't change\nlet frameworkCache;\nexport const frameworkChangeObservers = [];\n// Setup the detection reset tracking / timeout delays\nlet resetTriggered = false;\nconst SSR_RESET_TIMEOUT = 10; // ms\nconst WEB_RESET_TIMEOUT = 10; // ms\nconst PRIME_FRAMEWORK_DELAY = 1000; // ms\nexport const detectFramework = () => {\n if (!frameworkCache) {\n frameworkCache = detect();\n if (resetTriggered) {\n // The final run of detectFramework:\n // Starting from this point, the `frameworkCache` becomes \"final\".\n // So we don't need to notify the observers again so the observer\n // can be removed after the final notice.\n while (frameworkChangeObservers.length) {\n frameworkChangeObservers.pop()?.();\n }\n }\n else {\n // The first run of detectFramework:\n // Every time we update the cache, call each observer function\n frameworkChangeObservers.forEach(fcn => {\n fcn();\n });\n }\n // Retry once for either Unknown type after a delay (explained below)\n resetTimeout(Framework.ServerSideUnknown, SSR_RESET_TIMEOUT);\n resetTimeout(Framework.WebUnknown, WEB_RESET_TIMEOUT);\n }\n return frameworkCache;\n};\n/**\n * @internal Setup observer callback that will be called everytime the framework changes\n */\nexport const observeFrameworkChanges = (fcn) => {\n // When the `frameworkCache` won't be updated again, we ignore all incoming\n // observers.\n if (resetTriggered) {\n return;\n }\n frameworkChangeObservers.push(fcn);\n};\nexport function clearCache() {\n frameworkCache = undefined;\n}\n// For a framework type and a delay amount, setup the event to re-detect\n// During the runtime boot, it is possible that framework detection will\n// be triggered before the framework has made modifications to the\n// global/window/etc needed for detection. When no framework is detected\n// we will reset and try again to ensure we don't use a cached\n// non-framework detection result for all requests.\nfunction resetTimeout(framework, delay) {\n if (frameworkCache === framework && !resetTriggered) {\n setTimeout(() => {\n clearCache();\n resetTriggered = true;\n setTimeout(detectFramework, PRIME_FRAMEWORK_DELAY);\n }, delay);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Maintains custom user-agent state set by external consumers.\nconst customUserAgentState = {};\n/**\n * Sets custom user agent state which will be appended to applicable requests. Returns a function that can be used to\n * clean up any custom state set with this API.\n *\n * @note\n * This API operates globally. Calling this API multiple times will result in the most recently set values for a\n * particular API being used.\n *\n * @note\n * This utility IS NOT compatible with SSR.\n *\n * @param input - SetCustomUserAgentInput that defines custom state to apply to the specified APIs.\n */\nexport const setCustomUserAgent = (input) => {\n // Save custom user-agent state & increment reference counter\n // TODO Remove `any` when we upgrade to TypeScript 5.2, see: https://github.com/microsoft/TypeScript/issues/44373\n customUserAgentState[input.category] = input.apis.reduce((acc, api) => ({\n ...acc,\n [api]: {\n refCount: acc[api]?.refCount ? acc[api].refCount + 1 : 1,\n additionalDetails: input.additionalDetails,\n },\n }), customUserAgentState[input.category] ?? {});\n // Callback that cleans up state for APIs recorded by this call\n let cleanUpCallbackCalled = false;\n const cleanUpCallback = () => {\n // Only allow the cleanup callback to be called once\n if (cleanUpCallbackCalled) {\n return;\n }\n cleanUpCallbackCalled = true;\n input.apis.forEach(api => {\n const apiRefCount = customUserAgentState[input.category][api].refCount;\n if (apiRefCount > 1) {\n customUserAgentState[input.category][api].refCount = apiRefCount - 1;\n }\n else {\n delete customUserAgentState[input.category][api];\n // Clean up category if no more APIs set\n if (!Object.keys(customUserAgentState[input.category]).length) {\n delete customUserAgentState[input.category];\n }\n }\n });\n };\n return cleanUpCallback;\n};\nexport const getCustomUserAgent = (category, api) => customUserAgentState[category]?.[api]?.additionalDetails;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Framework } from './types';\nimport { version } from './version';\nimport { detectFramework, observeFrameworkChanges } from './detectFramework';\nimport { getCustomUserAgent } from './customUserAgent';\nconst BASE_USER_AGENT = `aws-amplify`;\nclass PlatformBuilder {\n constructor() {\n this.userAgent = `${BASE_USER_AGENT}/${version}`;\n }\n get framework() {\n return detectFramework();\n }\n get isReactNative() {\n return (this.framework === Framework.ReactNative ||\n this.framework === Framework.Expo);\n }\n observeFrameworkChanges(fcn) {\n observeFrameworkChanges(fcn);\n }\n}\nexport const Platform = new PlatformBuilder();\nexport const getAmplifyUserAgentObject = ({ category, action, } = {}) => {\n const userAgent = [[BASE_USER_AGENT, version]];\n if (category) {\n userAgent.push([category, action]);\n }\n userAgent.push(['framework', detectFramework()]);\n if (category && action) {\n const customState = getCustomUserAgent(category, action);\n if (customState) {\n customState.forEach(state => {\n userAgent.push(state);\n });\n }\n }\n return userAgent;\n};\nexport const getAmplifyUserAgent = (customUserAgentDetails) => {\n const userAgent = getAmplifyUserAgentObject(customUserAgentDetails);\n const userAgentString = userAgent\n .map(([agentKey, agentValue]) => agentKey && agentValue ? `${agentKey}/${agentValue}` : agentKey)\n .join(' ');\n return userAgentString;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError } from './AmplifyError';\n/**\n * Error class for errors that associated with unsuccessful HTTP responses.\n * It's throw by API category REST API handlers and GraphQL query handlers for now.\n */\nexport class ApiError extends AmplifyError {\n /**\n * The unwrapped HTTP response causing the given API error.\n */\n get response() {\n return this._response\n ? replicateApiErrorResponse(this._response)\n : undefined;\n }\n constructor(params) {\n super(params);\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = ApiError;\n Object.setPrototypeOf(this, ApiError.prototype);\n if (params.response) {\n this._response = params.response;\n }\n }\n}\nconst replicateApiErrorResponse = (response) => ({\n ...response,\n headers: { ...response.headers },\n});\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ApiError } from '@aws-amplify/core/internals/utils';\nexport class RestApiError extends ApiError {\n constructor(params) {\n super(params);\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = RestApiError;\n Object.setPrototypeOf(this, RestApiError.prototype);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { RestApiError } from './RestApiError';\n/**\n * Internal-only class for CanceledError.\n *\n * @internal\n */\nexport class CanceledError extends RestApiError {\n constructor(params = {}) {\n super({\n name: 'CanceledError',\n message: 'Request is canceled by user',\n ...params,\n });\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = CanceledError;\n Object.setPrototypeOf(this, CanceledError.prototype);\n }\n}\n/**\n * Check if an error is caused by user calling `cancel()` in REST API.\n *\n * @note This function works **ONLY** for errors thrown by REST API. For GraphQL APIs, use `client.isCancelError(error)`\n * instead. `client` is generated from `generateClient()` API from `aws-amplify/api`.\n */\nexport const isCancelError = (error) => !!error && error instanceof CanceledError;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var RestApiValidationErrorCode;\n(function (RestApiValidationErrorCode) {\n RestApiValidationErrorCode[\"InvalidApiName\"] = \"InvalidApiName\";\n})(RestApiValidationErrorCode || (RestApiValidationErrorCode = {}));\nexport const validationErrorMap = {\n [RestApiValidationErrorCode.InvalidApiName]: {\n message: 'API name is invalid.',\n recoverySuggestion: 'Check if the API name matches the one in your configuration or `aws-exports.js`',\n },\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const parseMetadata = (response) => {\n const { headers, statusCode } = response;\n return {\n ...(isMetadataBearer(response) ? response.$metadata : {}),\n httpStatusCode: statusCode,\n requestId: headers['x-amzn-requestid'] ??\n headers['x-amzn-request-id'] ??\n headers['x-amz-request-id'],\n extendedRequestId: headers['x-amz-id-2'],\n cfId: headers['x-amz-cf-id'],\n };\n};\nconst isMetadataBearer = (response) => typeof response?.$metadata === 'object';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata } from './responseInfo';\n/**\n * Utility functions for serializing and deserializing of JSON protocol in general(including: REST-JSON, JSON-RPC, etc.)\n */\n/**\n * Error parser for AWS JSON protocol.\n */\nexport const parseJsonError = async (response) => {\n if (!response || response.statusCode < 300) {\n return;\n }\n const body = await parseJsonBody(response);\n const sanitizeErrorCode = (rawValue) => {\n const [cleanValue] = rawValue.toString().split(/[,:]+/);\n if (cleanValue.includes('#')) {\n return cleanValue.split('#')[1];\n }\n return cleanValue;\n };\n const code = sanitizeErrorCode(response.headers['x-amzn-errortype'] ??\n body.code ??\n body.__type ??\n 'UnknownError');\n const message = body.message ?? body.Message ?? 'Unknown error';\n const error = new Error(message);\n return Object.assign(error, {\n name: code,\n $metadata: parseMetadata(response),\n });\n};\n/**\n * Parse JSON response body to JavaScript object.\n */\nexport const parseJsonBody = async (response) => {\n if (!response.body) {\n throw new Error('Missing response payload');\n }\n const output = await response.body.json();\n return Object.assign(output, {\n $metadata: parseMetadata(response),\n });\n};\n","import { parseJsonError as parseAwsJsonError, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { RestApiError } from '../errors';\n/**\n * Parses both AWS and non-AWS error responses coming from the users' backend code.\n * * AWS errors generated by the AWS services(e.g. API Gateway, Bedrock). They can be Signature errors,\n * ClockSkew errors, etc. These responses will be parsed to errors with proper name and message from the AWS\n * services.\n * * non-AWS errors thrown by the user code. They can contain any headers or body. Users need to access the\n * error.response to get the headers and body and parse them accordingly. The JS error name and message will\n * be `UnknownError` and `Unknown error` respectively.\n */\nexport const parseRestApiServiceError = async (response) => {\n if (!response) {\n // Response is not considered an error.\n return;\n }\n const parsedAwsError = await parseAwsJsonError(stubErrorResponse(response));\n if (!parsedAwsError) {\n // Response is not considered an error.\n }\n else {\n const bodyText = await response.body?.text();\n return buildRestApiError(parsedAwsError, {\n statusCode: response.statusCode,\n headers: response.headers,\n body: bodyText,\n });\n }\n};\n/**\n * The response object needs to be stub here because the parseAwsJsonError assumes the response body to be valid JSON.\n * Although this is true for AWS services, it is not true for responses from user's code. Once the response body is\n * unwrapped as JSON(and fail), it cannot be read as text again. Therefore, we need to stub the response body here to\n * make sure we can read the error response body as a JSON, and may fall back to read as text if it is not a valid JSON.\n */\nconst stubErrorResponse = (response) => {\n let bodyTextPromise;\n const bodyProxy = new Proxy(response.body, {\n get(target, prop, receiver) {\n if (prop === 'json') {\n // For potential AWS errors, error parser will try to parse the body as JSON first.\n return async () => {\n if (!bodyTextPromise) {\n bodyTextPromise = target.text();\n }\n try {\n return JSON.parse(await bodyTextPromise);\n }\n catch (error) {\n // If response body is not a valid JSON, we stub it to be an empty object and eventually parsed\n // as an unknown error\n return {};\n }\n };\n }\n else if (prop === 'text') {\n // For non-AWS errors, users can access the body as a string as a fallback.\n return async () => {\n if (!bodyTextPromise) {\n bodyTextPromise = target.text();\n }\n return bodyTextPromise;\n };\n }\n else {\n return Reflect.get(target, prop, receiver);\n }\n },\n });\n const responseProxy = new Proxy(response, {\n get(target, prop, receiver) {\n if (prop === 'body') {\n return bodyProxy;\n }\n else {\n return Reflect.get(target, prop, receiver);\n }\n },\n });\n return responseProxy;\n};\n/**\n * Utility to create a new RestApiError from a service error.\n */\nconst buildRestApiError = (error, response) => {\n const restApiError = new RestApiError({\n name: error?.name,\n message: error.message,\n underlyingError: error,\n response,\n });\n // $metadata is only required for backwards compatibility.\n return Object.assign(restApiError, { $metadata: error.$metadata });\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '@aws-amplify/core';\nexport const logger = new ConsoleLogger('RestApis');\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { RestApiError, RestApiValidationErrorCode, assertValidationError, validationErrorMap, } from '../errors';\n/**\n * Resolve the REST API request URL by:\n * 1. Loading the REST API endpoint from the Amplify configuration with corresponding API name.\n * 2. Appending the path to the endpoint.\n * 3. Merge the query parameters from path and the queryParameter argument which is taken from the public REST API\n * options.\n * 4. Validating the resulting URL string.\n *\n * @internal\n */\nexport const resolveApiUrl = (amplify, apiName, path, queryParams) => {\n const urlStr = amplify.getConfig()?.API?.REST?.[apiName]?.endpoint;\n assertValidationError(!!urlStr, RestApiValidationErrorCode.InvalidApiName);\n try {\n const url = new AmplifyUrl(urlStr + path);\n if (queryParams) {\n const mergedQueryParams = new AmplifyUrlSearchParams(url.searchParams);\n Object.entries(queryParams).forEach(([key, value]) => {\n mergedQueryParams.set(key, value);\n });\n url.search = new AmplifyUrlSearchParams(mergedQueryParams).toString();\n }\n return url;\n }\n catch (error) {\n throw new RestApiError({\n name: RestApiValidationErrorCode.InvalidApiName,\n ...validationErrorMap[RestApiValidationErrorCode.InvalidApiName],\n recoverySuggestion: `Please make sure the REST endpoint URL is a valid URL string. Got ${urlStr}`,\n });\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// via https://github.com/aws/aws-sdk-js-v3/blob/ab0e7be36e7e7f8a0c04834357aaad643c7912c3/packages/service-error-classification/src/constants.ts#L8\nconst CLOCK_SKEW_ERROR_CODES = [\n 'AuthFailure',\n 'InvalidSignatureException',\n 'RequestExpired',\n 'RequestInTheFuture',\n 'RequestTimeTooSkewed',\n 'SignatureDoesNotMatch',\n 'BadRequestException', // API Gateway\n];\n/**\n * Given an error code, returns true if it is related to a clock skew error.\n *\n * @param errorCode String representation of some error.\n * @returns True if given error is present in `CLOCK_SKEW_ERROR_CODES`, false otherwise.\n *\n * @internal\n */\nexport const isClockSkewError = (errorCode) => !!errorCode && CLOCK_SKEW_ERROR_CODES.includes(errorCode);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { isClockSkewError } from './isClockSkewError';\n/**\n * Get retry decider function\n * @param errorParser Function to load JavaScript error from HTTP response\n */\nexport const getRetryDecider = (errorParser) => async (response, error) => {\n const parsedError = error ??\n (await errorParser(response)) ??\n undefined;\n const errorCode = parsedError?.code || parsedError?.name;\n const statusCode = response?.statusCode;\n return (isConnectionError(error) ||\n isThrottlingError(statusCode, errorCode) ||\n isClockSkewError(errorCode) ||\n isServerSideError(statusCode, errorCode));\n};\n// reference: https://github.com/aws/aws-sdk-js-v3/blob/ab0e7be36e7e7f8a0c04834357aaad643c7912c3/packages/service-error-classification/src/constants.ts#L22-L37\nconst THROTTLING_ERROR_CODES = [\n 'BandwidthLimitExceeded',\n 'EC2ThrottledException',\n 'LimitExceededException',\n 'PriorRequestNotComplete',\n 'ProvisionedThroughputExceededException',\n 'RequestLimitExceeded',\n 'RequestThrottled',\n 'RequestThrottledException',\n 'SlowDown',\n 'ThrottledException',\n 'Throttling',\n 'ThrottlingException',\n 'TooManyRequestsException',\n];\nconst TIMEOUT_ERROR_CODES = [\n 'TimeoutError',\n 'RequestTimeout',\n 'RequestTimeoutException',\n];\nconst isThrottlingError = (statusCode, errorCode) => statusCode === 429 ||\n (!!errorCode && THROTTLING_ERROR_CODES.includes(errorCode));\nconst isConnectionError = (error) => error?.name === 'Network error';\nconst isServerSideError = (statusCode, errorCode) => (!!statusCode && [500, 502, 503, 504].includes(statusCode)) ||\n (!!errorCode && TIMEOUT_ERROR_CODES.includes(errorCode));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const MAX_DELAY_MS = 5 * 60 * 1000;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { MAX_DELAY_MS } from './constants';\n/**\n * @private\n * Internal use of Amplify only\n */\nexport function jitteredBackoff(maxDelayMs = MAX_DELAY_MS) {\n const BASE_TIME_MS = 100;\n const JITTER_FACTOR = 100;\n return attempt => {\n const delay = 2 ** attempt * BASE_TIME_MS + JITTER_FACTOR * Math.random();\n return delay > maxDelayMs ? false : delay;\n };\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { jitteredBackoff as jitteredBackoffUtil } from '../../../utils';\n// TODO: [v6] The separate retry utility is used by Data packages now and will replaced by retry middleware.\nconst DEFAULT_MAX_DELAY_MS = 5 * 60 * 1000;\nexport const jitteredBackoff = attempt => {\n const delayFunction = jitteredBackoffUtil(DEFAULT_MAX_DELAY_MS);\n const delay = delayFunction(attempt);\n // The delayFunction returns false when the delay is greater than the max delay(5 mins).\n // In this case, the retry middleware will delay 5 mins instead, as a ceiling of the delay.\n return delay === false ? DEFAULT_MAX_DELAY_MS : delay;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst DEFAULT_RETRY_ATTEMPTS = 3;\n/**\n * Retry middleware\n */\nexport const retryMiddlewareFactory = ({ maxAttempts = DEFAULT_RETRY_ATTEMPTS, retryDecider, computeDelay, abortSignal, }) => {\n if (maxAttempts < 1) {\n throw new Error('maxAttempts must be greater than 0');\n }\n return (next, context) => async function retryMiddleware(request) {\n let error;\n let attemptsCount = context.attemptsCount ?? 0;\n let response;\n // When retry is not needed or max attempts is reached, either error or response will be set. This function handles either cases.\n const handleTerminalErrorOrResponse = () => {\n if (response) {\n addOrIncrementMetadataAttempts(response, attemptsCount);\n return response;\n }\n else {\n addOrIncrementMetadataAttempts(error, attemptsCount);\n throw error;\n }\n };\n while (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n try {\n response = await next(request);\n error = undefined;\n }\n catch (e) {\n error = e;\n response = undefined;\n }\n // context.attemptsCount may be updated after calling next handler which may retry the request by itself.\n attemptsCount =\n (context.attemptsCount ?? 0) > attemptsCount\n ? context.attemptsCount ?? 0\n : attemptsCount + 1;\n context.attemptsCount = attemptsCount;\n if (await retryDecider(response, error)) {\n if (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n // prevent sleep for last attempt or cancelled request;\n const delay = computeDelay(attemptsCount);\n await cancellableSleep(delay, abortSignal);\n }\n continue;\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n }\n if (abortSignal?.aborted) {\n throw new Error('Request aborted.');\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n };\n};\nconst cancellableSleep = (timeoutMs, abortSignal) => {\n if (abortSignal?.aborted) {\n return Promise.resolve();\n }\n let timeoutId;\n let sleepPromiseResolveFn;\n const sleepPromise = new Promise(resolve => {\n sleepPromiseResolveFn = resolve;\n timeoutId = setTimeout(resolve, timeoutMs);\n });\n abortSignal?.addEventListener('abort', function cancelSleep(_) {\n clearTimeout(timeoutId);\n abortSignal?.removeEventListener('abort', cancelSleep);\n sleepPromiseResolveFn();\n });\n return sleepPromise;\n};\nconst addOrIncrementMetadataAttempts = (nextHandlerOutput, attempts) => {\n if (Object.prototype.toString.call(nextHandlerOutput) !== '[object Object]') {\n return;\n }\n nextHandlerOutput.$metadata = {\n ...(nextHandlerOutput.$metadata ?? {}),\n attempts,\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns signed headers.\n *\n * @param headers `headers` from the request.\n * @returns List of headers included in canonical headers, separated by semicolons (;). This indicates which headers\n * are part of the signing process. Header names must use lowercase characters and must appear in alphabetical order.\n *\n * @internal\n */\nexport const getSignedHeaders = (headers) => Object.keys(headers)\n .map(key => key.toLowerCase())\n .sort()\n .join(';');\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// query params\nexport const ALGORITHM_QUERY_PARAM = 'X-Amz-Algorithm';\nexport const AMZ_DATE_QUERY_PARAM = 'X-Amz-Date';\nexport const CREDENTIAL_QUERY_PARAM = 'X-Amz-Credential';\nexport const EXPIRES_QUERY_PARAM = 'X-Amz-Expires';\nexport const REGION_SET_PARAM = 'X-Amz-Region-Set';\nexport const SIGNATURE_QUERY_PARAM = 'X-Amz-Signature';\nexport const SIGNED_HEADERS_QUERY_PARAM = 'X-Amz-SignedHeaders';\nexport const TOKEN_QUERY_PARAM = 'X-Amz-Security-Token';\n// headers\nexport const AUTH_HEADER = 'authorization';\nexport const HOST_HEADER = 'host';\nexport const AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();\nexport const TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();\n// identifiers\nexport const KEY_TYPE_IDENTIFIER = 'aws4_request';\nexport const SHA256_ALGORITHM_IDENTIFIER = 'AWS4-HMAC-SHA256';\nexport const SIGNATURE_IDENTIFIER = 'AWS4';\n// preset values\nexport const EMPTY_HASH = 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855';\nexport const UNSIGNED_PAYLOAD = 'UNSIGNED-PAYLOAD';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getCredentialScope } from './getCredentialScope';\nimport { getFormattedDates } from './getFormattedDates';\n/**\n * Extracts common values used for signing both requests and urls.\n *\n * @param options `SignRequestOptions` object containing values used to construct the signature.\n * @returns Common `SigningValues` used for signing.\n *\n * @internal\n */\nexport const getSigningValues = ({ credentials, signingDate = new Date(), signingRegion, signingService, uriEscapePath = true, }) => {\n // get properties from credentials\n const { accessKeyId, secretAccessKey, sessionToken } = credentials;\n // get formatted dates for signing\n const { longDate, shortDate } = getFormattedDates(signingDate);\n // copy header and set signing properties\n const credentialScope = getCredentialScope(shortDate, signingRegion, signingService);\n return {\n accessKeyId,\n credentialScope,\n longDate,\n secretAccessKey,\n sessionToken,\n shortDate,\n signingRegion,\n signingService,\n uriEscapePath,\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns expected date strings to be used in signing.\n *\n * @param date JavaScript `Date` object.\n * @returns `FormattedDates` object containing the following:\n * - longDate: A date string in 'YYYYMMDDThhmmssZ' format\n * - shortDate: A date string in 'YYYYMMDD' format\n *\n * @internal\n */\nexport const getFormattedDates = (date) => {\n const longDate = date.toISOString().replace(/[:-]|\\.\\d{3}/g, '');\n return {\n longDate,\n shortDate: longDate.slice(0, 8),\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { KEY_TYPE_IDENTIFIER } from '../constants';\n/**\n * Returns the credential scope which restricts the resulting signature to the specified region and service.\n *\n * @param date Current date in the format 'YYYYMMDD'.\n * @param region AWS region in which the service resides.\n * @param service Service to which the signed request is being sent.\n *\n * @returns A string representing the credential scope with format 'YYYYMMDD/region/service/aws4_request'.\n *\n * @internal\n */\nexport const getCredentialScope = (date, region, service) => `${date}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`;\n","/**\n * @internal\n */\nexport const BLOCK_SIZE: number = 64;\n\n/**\n * @internal\n */\nexport const DIGEST_LENGTH: number = 32;\n\n/**\n * @internal\n */\nexport const KEY = new Uint32Array([\n 0x428a2f98,\n 0x71374491,\n 0xb5c0fbcf,\n 0xe9b5dba5,\n 0x3956c25b,\n 0x59f111f1,\n 0x923f82a4,\n 0xab1c5ed5,\n 0xd807aa98,\n 0x12835b01,\n 0x243185be,\n 0x550c7dc3,\n 0x72be5d74,\n 0x80deb1fe,\n 0x9bdc06a7,\n 0xc19bf174,\n 0xe49b69c1,\n 0xefbe4786,\n 0x0fc19dc6,\n 0x240ca1cc,\n 0x2de92c6f,\n 0x4a7484aa,\n 0x5cb0a9dc,\n 0x76f988da,\n 0x983e5152,\n 0xa831c66d,\n 0xb00327c8,\n 0xbf597fc7,\n 0xc6e00bf3,\n 0xd5a79147,\n 0x06ca6351,\n 0x14292967,\n 0x27b70a85,\n 0x2e1b2138,\n 0x4d2c6dfc,\n 0x53380d13,\n 0x650a7354,\n 0x766a0abb,\n 0x81c2c92e,\n 0x92722c85,\n 0xa2bfe8a1,\n 0xa81a664b,\n 0xc24b8b70,\n 0xc76c51a3,\n 0xd192e819,\n 0xd6990624,\n 0xf40e3585,\n 0x106aa070,\n 0x19a4c116,\n 0x1e376c08,\n 0x2748774c,\n 0x34b0bcb5,\n 0x391c0cb3,\n 0x4ed8aa4a,\n 0x5b9cca4f,\n 0x682e6ff3,\n 0x748f82ee,\n 0x78a5636f,\n 0x84c87814,\n 0x8cc70208,\n 0x90befffa,\n 0xa4506ceb,\n 0xbef9a3f7,\n 0xc67178f2\n]);\n\n/**\n * @internal\n */\nexport const INIT = [\n 0x6a09e667,\n 0xbb67ae85,\n 0x3c6ef372,\n 0xa54ff53a,\n 0x510e527f,\n 0x9b05688c,\n 0x1f83d9ab,\n 0x5be0cd19\n];\n\n/**\n * @internal\n */\nexport const MAX_HASHABLE_LENGTH = 2 ** 53 - 1;\n","import {\n BLOCK_SIZE,\n DIGEST_LENGTH,\n INIT,\n KEY,\n MAX_HASHABLE_LENGTH\n} from \"./constants\";\n\n/**\n * @internal\n */\nexport class RawSha256 {\n private state: Int32Array = Int32Array.from(INIT);\n private temp: Int32Array = new Int32Array(64);\n private buffer: Uint8Array = new Uint8Array(64);\n private bufferLength: number = 0;\n private bytesHashed: number = 0;\n\n /**\n * @internal\n */\n finished: boolean = false;\n\n update(data: Uint8Array): void {\n if (this.finished) {\n throw new Error(\"Attempted to update an already finished hash.\");\n }\n\n let position = 0;\n let { byteLength } = data;\n this.bytesHashed += byteLength;\n\n if (this.bytesHashed * 8 > MAX_HASHABLE_LENGTH) {\n throw new Error(\"Cannot hash more than 2^53 - 1 bits\");\n }\n\n while (byteLength > 0) {\n this.buffer[this.bufferLength++] = data[position++];\n byteLength--;\n\n if (this.bufferLength === BLOCK_SIZE) {\n this.hashBuffer();\n this.bufferLength = 0;\n }\n }\n }\n\n digest(): Uint8Array {\n if (!this.finished) {\n const bitsHashed = this.bytesHashed * 8;\n const bufferView = new DataView(\n this.buffer.buffer,\n this.buffer.byteOffset,\n this.buffer.byteLength\n );\n\n const undecoratedLength = this.bufferLength;\n bufferView.setUint8(this.bufferLength++, 0x80);\n\n // Ensure the final block has enough room for the hashed length\n if (undecoratedLength % BLOCK_SIZE >= BLOCK_SIZE - 8) {\n for (let i = this.bufferLength; i < BLOCK_SIZE; i++) {\n bufferView.setUint8(i, 0);\n }\n this.hashBuffer();\n this.bufferLength = 0;\n }\n\n for (let i = this.bufferLength; i < BLOCK_SIZE - 8; i++) {\n bufferView.setUint8(i, 0);\n }\n bufferView.setUint32(\n BLOCK_SIZE - 8,\n Math.floor(bitsHashed / 0x100000000),\n true\n );\n bufferView.setUint32(BLOCK_SIZE - 4, bitsHashed);\n\n this.hashBuffer();\n\n this.finished = true;\n }\n\n // The value in state is little-endian rather than big-endian, so flip\n // each word into a new Uint8Array\n const out = new Uint8Array(DIGEST_LENGTH);\n for (let i = 0; i < 8; i++) {\n out[i * 4] = (this.state[i] >>> 24) & 0xff;\n out[i * 4 + 1] = (this.state[i] >>> 16) & 0xff;\n out[i * 4 + 2] = (this.state[i] >>> 8) & 0xff;\n out[i * 4 + 3] = (this.state[i] >>> 0) & 0xff;\n }\n\n return out;\n }\n\n private hashBuffer(): void {\n const { buffer, state } = this;\n\n let state0 = state[0],\n state1 = state[1],\n state2 = state[2],\n state3 = state[3],\n state4 = state[4],\n state5 = state[5],\n state6 = state[6],\n state7 = state[7];\n\n for (let i = 0; i < BLOCK_SIZE; i++) {\n if (i < 16) {\n this.temp[i] =\n ((buffer[i * 4] & 0xff) << 24) |\n ((buffer[i * 4 + 1] & 0xff) << 16) |\n ((buffer[i * 4 + 2] & 0xff) << 8) |\n (buffer[i * 4 + 3] & 0xff);\n } else {\n let u = this.temp[i - 2];\n const t1 =\n ((u >>> 17) | (u << 15)) ^ ((u >>> 19) | (u << 13)) ^ (u >>> 10);\n\n u = this.temp[i - 15];\n const t2 =\n ((u >>> 7) | (u << 25)) ^ ((u >>> 18) | (u << 14)) ^ (u >>> 3);\n\n this.temp[i] =\n ((t1 + this.temp[i - 7]) | 0) + ((t2 + this.temp[i - 16]) | 0);\n }\n\n const t1 =\n ((((((state4 >>> 6) | (state4 << 26)) ^\n ((state4 >>> 11) | (state4 << 21)) ^\n ((state4 >>> 25) | (state4 << 7))) +\n ((state4 & state5) ^ (~state4 & state6))) |\n 0) +\n ((state7 + ((KEY[i] + this.temp[i]) | 0)) | 0)) |\n 0;\n\n const t2 =\n ((((state0 >>> 2) | (state0 << 30)) ^\n ((state0 >>> 13) | (state0 << 19)) ^\n ((state0 >>> 22) | (state0 << 10))) +\n ((state0 & state1) ^ (state0 & state2) ^ (state1 & state2))) |\n 0;\n\n state7 = state6;\n state6 = state5;\n state5 = state4;\n state4 = (state3 + t1) | 0;\n state3 = state2;\n state2 = state1;\n state1 = state0;\n state0 = (t1 + t2) | 0;\n }\n\n state[0] += state0;\n state[1] += state1;\n state[2] += state2;\n state[3] += state3;\n state[4] += state4;\n state[5] += state5;\n state[6] += state6;\n state[7] += state7;\n }\n}\n","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { SourceData } from \"@aws-sdk/types\";\nimport { fromUtf8 as fromUtf8Browser } from \"@smithy/util-utf8\";\n\n// Quick polyfill\nconst fromUtf8 =\n typeof Buffer !== \"undefined\" && Buffer.from\n ? (input: string) => Buffer.from(input, \"utf8\")\n : fromUtf8Browser;\n\nexport function convertToBuffer(data: SourceData): Uint8Array {\n // Already a Uint8, do nothing\n if (data instanceof Uint8Array) return data;\n\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(\n data.buffer,\n data.byteOffset,\n data.byteLength / Uint8Array.BYTES_PER_ELEMENT\n );\n }\n\n return new Uint8Array(data);\n}\n","export const fromUtf8 = (input) => new TextEncoder().encode(input);\n","import { BLOCK_SIZE } from \"./constants\";\nimport { RawSha256 } from \"./RawSha256\";\nimport { Checksum, SourceData } from \"@aws-sdk/types\";\nimport { isEmptyData, convertToBuffer } from \"@aws-crypto/util\";\n\nexport class Sha256 implements Checksum {\n private readonly secret?: SourceData;\n private hash: RawSha256;\n private outer?: RawSha256;\n private error: any;\n\n constructor(secret?: SourceData) {\n this.secret = secret;\n this.hash = new RawSha256();\n this.reset();\n }\n\n update(toHash: SourceData): void {\n if (isEmptyData(toHash) || this.error) {\n return;\n }\n\n try {\n this.hash.update(convertToBuffer(toHash));\n } catch (e) {\n this.error = e;\n }\n }\n\n /* This synchronous method keeps compatibility\n * with the v2 aws-sdk.\n */\n digestSync(): Uint8Array {\n if (this.error) {\n throw this.error;\n }\n\n if (this.outer) {\n if (!this.outer.finished) {\n this.outer.update(this.hash.digest());\n }\n\n return this.outer.digest();\n }\n\n return this.hash.digest();\n }\n\n /* The underlying digest method here is synchronous.\n * To keep the same interface with the other hash functions\n * the default is to expose this as an async method.\n * However, it can sometimes be useful to have a sync method.\n */\n async digest(): Promise<Uint8Array> {\n return this.digestSync();\n }\n\n reset(): void {\n this.hash = new RawSha256();\n if (this.secret) {\n this.outer = new RawSha256();\n const inner = bufferFromSecret(this.secret);\n const outer = new Uint8Array(BLOCK_SIZE);\n outer.set(inner);\n\n for (let i = 0; i < BLOCK_SIZE; i++) {\n inner[i] ^= 0x36;\n outer[i] ^= 0x5c;\n }\n\n this.hash.update(inner);\n this.outer.update(outer);\n\n // overwrite the copied key in memory\n for (let i = 0; i < inner.byteLength; i++) {\n inner[i] = 0;\n }\n }\n }\n}\n\nfunction bufferFromSecret(secret: SourceData): Uint8Array {\n let input = convertToBuffer(secret);\n\n if (input.byteLength > BLOCK_SIZE) {\n const bufferHash = new RawSha256();\n bufferHash.update(input);\n input = bufferHash.digest();\n }\n\n const buffer = new Uint8Array(BLOCK_SIZE);\n buffer.set(input);\n return buffer;\n}\n","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { SourceData } from \"@aws-sdk/types\";\n\nexport function isEmptyData(data: SourceData): boolean {\n if (typeof data === \"string\") {\n return data.length === 0;\n }\n\n return data.byteLength === 0;\n}\n","const SHORT_TO_HEX = {};\nconst HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\nexport function fromHex(encoded) {\n if (encoded.length % 2 !== 0) {\n throw new Error(\"Hex encoded strings must have an even number length\");\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n }\n else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\nexport function toHex(bytes) {\n let out = \"\";\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// TODO: V6 update to different crypto dependency?\nimport { Sha256 } from '@aws-crypto/sha256-js';\nimport { toHex } from '@smithy/util-hex-encoding';\n/**\n * Returns the hashed data a `Uint8Array`.\n *\n * @param key `SourceData` to be used as hashing key.\n * @param data Hashable `SourceData`.\n * @returns `Uint8Array` created from the data as input to a hash function.\n */\nexport const getHashedData = (key, data) => {\n const sha256 = new Sha256(key ?? undefined);\n sha256.update(data);\n // TODO: V6 flip to async digest\n const hashedData = sha256.digestSync();\n return hashedData;\n};\n/**\n * Returns the hashed data as a hex string.\n *\n * @param key `SourceData` to be used as hashing key.\n * @param data Hashable `SourceData`.\n * @returns String using lowercase hexadecimal characters created from the data as input to a hash function.\n *\n * @internal\n */\nexport const getHashedDataAsHex = (key, data) => {\n const hashedData = getHashedData(key, data);\n return toHex(hashedData);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns canonical headers.\n *\n * @param headers Headers from the request.\n * @returns Request headers that will be signed, and their values, separated by newline characters. Header names must\n * use lowercase characters, must appear in alphabetical order, and must be followed by a colon (:). For the values,\n * trim any leading or trailing spaces, convert sequential spaces to a single space, and separate the values\n * for a multi-value header using commas.\n *\n * @internal\n */\nexport const getCanonicalHeaders = (headers) => Object.entries(headers)\n .map(([key, value]) => ({\n key: key.toLowerCase(),\n value: value?.trim().replace(/\\s+/g, ' ') ?? '',\n}))\n .sort((a, b) => (a.key < b.key ? -1 : 1))\n .map(entry => `${entry.key}:${entry.value}\\n`)\n .join('');\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a canonical query string.\n *\n * @param searchParams `searchParams` from the request url.\n * @returns URL-encoded query string parameters, separated by ampersands (&). Percent-encode reserved characters,\n * including the space character. Encode names and values separately. If there are empty parameters, append the equals\n * sign to the parameter name before encoding. After encoding, sort the parameters alphabetically by key name. If there\n * is no query string, use an empty string (\"\").\n *\n * @internal\n */\nexport const getCanonicalQueryString = (searchParams) => Array.from(searchParams)\n .sort(([keyA, valA], [keyB, valB]) => {\n if (keyA === keyB) {\n return valA < valB ? -1 : 1;\n }\n return keyA < keyB ? -1 : 1;\n})\n .map(([key, val]) => `${escapeUri(key)}=${escapeUri(val)}`)\n .join('&');\nconst escapeUri = (uri) => encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);\nconst hexEncode = (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a canonical uri.\n *\n * @param pathname `pathname` from request url.\n * @param uriEscapePath Whether to uri encode the path as part of canonical uri. It's used for S3 only where the\n * pathname is already uri encoded, and the signing process is not expected to uri encode it again. Defaults to true.\n * @returns URI-encoded version of the absolute path component URL (everything between the host and the question mark\n * character (?) that starts the query string parameters). If the absolute path is empty, a forward slash character (/).\n *\n * @internal\n */\nexport const getCanonicalUri = (pathname, uriEscapePath = true) => pathname\n ? uriEscapePath\n ? encodeURIComponent(pathname).replace(/%2F/g, '/')\n : pathname\n : '/';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { EMPTY_HASH, UNSIGNED_PAYLOAD } from '../constants';\nimport { getHashedDataAsHex } from './dataHashHelpers';\n/**\n * Returns the hashed payload.\n *\n * @param body `body` (payload) from the request.\n * @returns String created using the payload in the body of the HTTP request as input to a hash function. This string\n * uses lowercase hexadecimal characters. If the payload is empty, return precalculated result of an empty hash.\n *\n * @internal\n */\nexport const getHashedPayload = (body) => {\n // return precalculated empty hash if body is undefined or null\n if (body == null) {\n return EMPTY_HASH;\n }\n if (isSourceData(body)) {\n const hashedData = getHashedDataAsHex(null, body);\n return hashedData;\n }\n // Defined body is not signable. Return unsigned payload which may or may not be accepted by the service.\n return UNSIGNED_PAYLOAD;\n};\nconst isSourceData = (body) => typeof body === 'string' || ArrayBuffer.isView(body) || isArrayBuffer(body);\nconst isArrayBuffer = (arg) => (typeof ArrayBuffer === 'function' && arg instanceof ArrayBuffer) ||\n Object.prototype.toString.call(arg) === '[object ArrayBuffer]';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getHashedDataAsHex } from './dataHashHelpers';\nimport { getCanonicalRequest } from './getCanonicalRequest';\nimport { getSigningKey } from './getSigningKey';\nimport { getStringToSign } from './getStringToSign';\n/**\n * Calculates and returns an AWS API Signature.\n * https://docs.aws.amazon.com/IAM/latest/UserGuide/create-signed-request.html\n *\n * @param request `HttpRequest` to be signed.\n * @param signRequestOptions `SignRequestOptions` object containing values used to construct the signature.\n * @returns AWS API Signature to sign a request or url with.\n *\n * @internal\n */\nexport const getSignature = (request, { credentialScope, longDate, secretAccessKey, shortDate, signingRegion, signingService, uriEscapePath, }) => {\n // step 1: create a canonical request\n const canonicalRequest = getCanonicalRequest(request, uriEscapePath);\n // step 2: create a hash of the canonical request\n const hashedRequest = getHashedDataAsHex(null, canonicalRequest);\n // step 3: create a string to sign\n const stringToSign = getStringToSign(longDate, credentialScope, hashedRequest);\n // step 4: calculate the signature\n const signature = getHashedDataAsHex(getSigningKey(secretAccessKey, shortDate, signingRegion, signingService), stringToSign);\n return signature;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getCanonicalHeaders } from './getCanonicalHeaders';\nimport { getCanonicalQueryString } from './getCanonicalQueryString';\nimport { getCanonicalUri } from './getCanonicalUri';\nimport { getHashedPayload } from './getHashedPayload';\nimport { getSignedHeaders } from './getSignedHeaders';\n/**\n * Returns a canonical request.\n *\n * @param request `HttpRequest` from which to create the canonical request from.\n * @param uriEscapePath Whether to uri encode the path as part of canonical uri. It's used for S3 only where the\n * pathname is already uri encoded, and the signing process is not expected to uri encode it again. Defaults to true.\n * @returns String created by by concatenating the following strings, separated by newline characters:\n * - HTTPMethod\n * - CanonicalUri\n * - CanonicalQueryString\n * - CanonicalHeaders\n * - SignedHeaders\n * - HashedPayload\n *\n * @internal\n */\nexport const getCanonicalRequest = ({ body, headers, method, url }, uriEscapePath = true) => [\n method,\n getCanonicalUri(url.pathname, uriEscapePath),\n getCanonicalQueryString(url.searchParams),\n getCanonicalHeaders(headers),\n getSignedHeaders(headers),\n getHashedPayload(body),\n].join('\\n');\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { SHA256_ALGORITHM_IDENTIFIER } from '../constants';\n/**\n * Returns a string to be signed.\n *\n * @param date Current date in the format 'YYYYMMDDThhmmssZ'.\n * @param credentialScope String representing the credential scope with format 'YYYYMMDD/region/service/aws4_request'.\n * @param hashedRequest Hashed canonical request.\n *\n * @returns A string created by by concatenating the following strings, separated by newline characters:\n * - Algorithm\n * - RequestDateTime\n * - CredentialScope\n * - HashedCanonicalRequest\n *\n * @internal\n */\nexport const getStringToSign = (date, credentialScope, hashedRequest) => [SHA256_ALGORITHM_IDENTIFIER, date, credentialScope, hashedRequest].join('\\n');\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { KEY_TYPE_IDENTIFIER, SIGNATURE_IDENTIFIER } from '../constants';\nimport { getHashedData } from './dataHashHelpers';\n/**\n * Returns a signing key to be used for signing requests.\n *\n * @param secretAccessKey AWS secret access key from credentials.\n * @param date Current date in the format 'YYYYMMDD'.\n * @param region AWS region in which the service resides.\n * @param service Service to which the signed request is being sent.\n *\n * @returns `Uint8Array` calculated from its composite parts.\n *\n * @internal\n */\nexport const getSigningKey = (secretAccessKey, date, region, service) => {\n const key = `${SIGNATURE_IDENTIFIER}${secretAccessKey}`;\n const dateKey = getHashedData(key, date);\n const regionKey = getHashedData(dateKey, region);\n const serviceKey = getHashedData(regionKey, service);\n const signingKey = getHashedData(serviceKey, KEY_TYPE_IDENTIFIER);\n return signingKey;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getSignedHeaders } from './utils/getSignedHeaders';\nimport { getSigningValues } from './utils/getSigningValues';\nimport { AMZ_DATE_HEADER, AUTH_HEADER, HOST_HEADER, SHA256_ALGORITHM_IDENTIFIER, TOKEN_HEADER, } from './constants';\nimport { getSignature } from './utils/getSignature';\n/**\n * Given a `HttpRequest`, returns a Signature Version 4 signed `HttpRequest`.\n *\n * @param request `HttpRequest` to be signed.\n * @param signRequestOptions `SignRequestOptions` object containing values used to construct the signature.\n * @returns A `HttpRequest` with authentication headers which can grant temporary access to AWS resources.\n */\nexport const signRequest = (request, options) => {\n const signingValues = getSigningValues(options);\n const { accessKeyId, credentialScope, longDate, sessionToken } = signingValues;\n // create the request to sign\n const headers = { ...request.headers };\n headers[HOST_HEADER] = request.url.host;\n headers[AMZ_DATE_HEADER] = longDate;\n if (sessionToken) {\n headers[TOKEN_HEADER] = sessionToken;\n }\n const requestToSign = { ...request, headers };\n // calculate and add the signature to the request\n const signature = getSignature(requestToSign, signingValues);\n const credentialEntry = `Credential=${accessKeyId}/${credentialScope}`;\n const signedHeadersEntry = `SignedHeaders=${getSignedHeaders(headers)}`;\n const signatureEntry = `Signature=${signature}`;\n headers[AUTH_HEADER] =\n `${SHA256_ALGORITHM_IDENTIFIER} ${credentialEntry}, ${signedHeadersEntry}, ${signatureEntry}`;\n return requestToSign;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a `Date` that is corrected for clock skew.\n *\n * @param systemClockOffset The offset of the system clock in milliseconds.\n *\n * @returns `Date` representing the current time adjusted by the system clock offset.\n *\n * @internal\n */\nexport const getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { isClockSkewed } from './isClockSkewed';\n/**\n * Returns the difference between clock time and the current system time if clock is skewed.\n *\n * @param clockTimeInMilliseconds Clock time in milliseconds.\n * @param currentSystemClockOffset Current system clock offset in milliseconds.\n *\n * @internal\n */\nexport const getUpdatedSystemClockOffset = (clockTimeInMilliseconds, currentSystemClockOffset) => {\n if (isClockSkewed(clockTimeInMilliseconds, currentSystemClockOffset)) {\n return clockTimeInMilliseconds - Date.now();\n }\n return currentSystemClockOffset;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getSkewCorrectedDate } from './getSkewCorrectedDate';\n// 5 mins in milliseconds. Ref: https://github.com/aws/aws-sdk-js-v3/blob/6c0f44fab30a1bb2134af47362a31332abc3666b/packages/middleware-signing/src/utils/isClockSkewed.ts#L10\nconst SKEW_WINDOW = 5 * 60 * 1000;\n/**\n * Checks if the provided date is within the skew window of 5 minutes.\n *\n * @param clockTimeInMilliseconds Time to check for skew in milliseconds.\n * @param clockOffsetInMilliseconds Offset to check clock against in milliseconds.\n *\n * @returns True if skewed. False otherwise.\n *\n * @internal\n */\nexport const isClockSkewed = (clockTimeInMilliseconds, clockOffsetInMilliseconds) => Math.abs(getSkewCorrectedDate(clockOffsetInMilliseconds).getTime() -\n clockTimeInMilliseconds) >= SKEW_WINDOW;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { signRequest } from './signer/signatureV4';\nimport { getSkewCorrectedDate } from './utils/getSkewCorrectedDate';\nimport { getUpdatedSystemClockOffset } from './utils/getUpdatedSystemClockOffset';\n/**\n * Middleware that SigV4 signs request with AWS credentials, and correct system clock offset.\n * This middleware is expected to be placed after retry middleware.\n */\nexport const signingMiddlewareFactory = ({ credentials, region, service, uriEscapePath = true, }) => {\n let currentSystemClockOffset;\n return (next) => async function signingMiddleware(request) {\n currentSystemClockOffset = currentSystemClockOffset ?? 0;\n const signRequestOptions = {\n credentials: typeof credentials === 'function' ? await credentials() : credentials,\n signingDate: getSkewCorrectedDate(currentSystemClockOffset),\n signingRegion: region,\n signingService: service,\n uriEscapePath,\n };\n const signedRequest = await signRequest(request, signRequestOptions);\n const response = await next(signedRequest);\n // Update system clock offset if response contains date header, regardless of the status code.\n // non-2xx response will still be returned from next handler instead of thrown, because it's\n // only thrown by the retry middleware.\n const dateString = getDateHeader(response);\n if (dateString) {\n currentSystemClockOffset = getUpdatedSystemClockOffset(Date.parse(dateString), currentSystemClockOffset);\n }\n return response;\n };\n};\nconst getDateHeader = ({ headers } = {}) => headers?.date ?? headers?.Date ?? headers?.['x-amz-date'];\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Middleware injects user agent string to specified header(default to 'x-amz-user-agent'),\n * if the header is not set already.\n *\n * TODO: incorporate new user agent design\n */\nexport const userAgentMiddlewareFactory = ({ userAgentHeader = 'x-amz-user-agent', userAgentValue = '', }) => next => {\n return async function userAgentMiddleware(request) {\n if (userAgentValue.trim().length === 0) {\n const result = await next(request);\n return result;\n }\n else {\n const headerName = userAgentHeader.toLowerCase();\n request.headers[headerName] = request.headers[headerName]\n ? `${request.headers[headerName]} ${userAgentValue}`\n : userAgentValue;\n const response = await next(request);\n return response;\n }\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Compose a transfer handler with a core transfer handler and a list of middleware.\n * @param coreHandler Core transfer handler\n * @param middleware\tList of middleware\n * @returns A transfer handler whose option type is the union of the core\n * \ttransfer handler's option type and the middleware's option type.\n * @internal\n */\nexport const composeTransferHandler = (coreHandler, middleware) => (request, options) => {\n const context = {};\n let composedHandler = (composeHandlerRequest) => coreHandler(composeHandlerRequest, options);\n for (let i = middleware.length - 1; i >= 0; i--) {\n const m = middleware[i];\n const resolvedMiddleware = m(options);\n composedHandler = resolvedMiddleware(composedHandler, context);\n }\n return composedHandler(request);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Cache the payload of a response body. It allows multiple calls to the body,\n * for example, when reading the body in both retry decider and error deserializer.\n * Caching body is allowed here because we call the body accessor(blob(), json(),\n * etc.) when body is small or streaming implementation is not available(RN).\n *\n * @internal\n */\nexport const withMemoization = (payloadAccessor) => {\n let cached;\n return () => {\n if (!cached) {\n // Explicitly not awaiting. Intermediate await would add overhead and\n // introduce a possible race in the event that this wrapper is called\n // again before the first `payloadAccessor` call resolves.\n cached = payloadAccessor();\n }\n return cached;\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { withMemoization } from '../utils/memoization';\nconst shouldSendBody = (method) => !['HEAD', 'GET', 'DELETE'].includes(method.toUpperCase());\n// TODO[AllanZhengYP]: we need to provide isCanceledError utility\nexport const fetchTransferHandler = async ({ url, method, headers, body }, { abortSignal, cache, withCrossDomainCredentials }) => {\n let resp;\n try {\n resp = await fetch(url, {\n method,\n headers,\n body: shouldSendBody(method) ? body : undefined,\n signal: abortSignal,\n cache,\n credentials: withCrossDomainCredentials ? 'include' : 'same-origin',\n });\n }\n catch (e) {\n // TODO: needs to revise error handling in v6\n // For now this is a thin wrapper over original fetch error similar to cognito-identity-js package.\n // Ref: https://github.com/aws-amplify/amplify-js/blob/4fbc8c0a2be7526aab723579b4c95b552195a80b/packages/amazon-cognito-identity-js/src/Client.js#L103-L108\n if (e instanceof TypeError) {\n throw new Error('Network error');\n }\n throw e;\n }\n const responseHeaders = {};\n resp.headers?.forEach((value, key) => {\n responseHeaders[key.toLowerCase()] = value;\n });\n const httpResponse = {\n statusCode: resp.status,\n headers: responseHeaders,\n body: null,\n };\n // resp.body is a ReadableStream according to Fetch API spec, but React Native\n // does not implement it.\n const bodyWithMixin = Object.assign(resp.body ?? {}, {\n text: withMemoization(() => resp.text()),\n blob: withMemoization(() => resp.blob()),\n json: withMemoization(() => resp.json()),\n });\n return {\n ...httpResponse,\n body: bodyWithMixin,\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { retryMiddlewareFactory } from '../middleware/retry';\nimport { signingMiddlewareFactory, } from '../middleware/signing';\nimport { userAgentMiddlewareFactory, } from '../middleware/userAgent';\nimport { composeTransferHandler } from '../internal/composeTransferHandler';\nimport { fetchTransferHandler } from './fetch';\nexport const authenticatedHandler = composeTransferHandler(fetchTransferHandler, [\n userAgentMiddlewareFactory,\n retryMiddlewareFactory,\n signingMiddlewareFactory,\n]);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { retryMiddlewareFactory } from '../middleware/retry';\nimport { userAgentMiddlewareFactory, } from '../middleware/userAgent';\nimport { composeTransferHandler } from '../internal/composeTransferHandler';\nimport { fetchTransferHandler } from './fetch';\nexport const unauthenticatedHandler = composeTransferHandler(fetchTransferHandler, [userAgentMiddlewareFactory, retryMiddlewareFactory]);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const DEFAULT_REST_IAM_SIGNING_SERVICE = 'execute-api';\nexport const DEFAULT_APPSYNC_API_SERVICE = 'appsync-api';\nexport const DEFAULT_IAM_SIGNING_REGION = 'us-east-1';\n/**\n * The REST endpoints generated by API Gateway\n * @see {@link https://docs.aws.amazon.com/general/latest/gr/apigateway.html#apigateway_region_data_plane}\n */\nexport const APIG_HOSTNAME_PATTERN = /^.+\\.([a-z0-9-]+)\\.([a-z0-9-]+)\\.amazonaws\\.com/;\n","import { authenticatedHandler, getRetryDecider, jitteredBackoff, unauthenticatedHandler, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { logger, parseRestApiServiceError, parseSigningInfo, } from '../../utils';\nimport { resolveHeaders } from '../../utils/resolveHeaders';\n/**\n * Make REST API call with best-effort IAM auth.\n * @param amplify Amplify instance to to resolve credentials and tokens. Should use different instance in client-side\n * and SSR\n * @param options Options accepted from public API options when calling the handlers.\n * @param signingServiceInfo Internal-only options enable IAM auth as well as to to overwrite the IAM signing service\n * and region. If specified, and NONE of API Key header or Auth header is present, IAM auth will be used.\n *\n * @internal\n */\nexport const transferHandler = async (amplify, options, signingServiceInfo) => {\n const { url, method, headers, body, withCredentials, abortSignal } = options;\n const resolvedBody = body\n ? body instanceof FormData\n ? body\n : JSON.stringify(body ?? '')\n : undefined;\n const resolvedHeaders = resolveHeaders(headers, body);\n const request = {\n url,\n headers: resolvedHeaders,\n method,\n body: resolvedBody,\n };\n const baseOptions = {\n retryDecider: getRetryDecider(parseRestApiServiceError),\n computeDelay: jitteredBackoff,\n withCrossDomainCredentials: withCredentials,\n abortSignal,\n };\n const isIamAuthApplicable = iamAuthApplicable(request, signingServiceInfo);\n let response;\n const credentials = await resolveCredentials(amplify);\n if (isIamAuthApplicable && credentials) {\n const signingInfoFromUrl = parseSigningInfo(url);\n const signingService = signingServiceInfo?.service ?? signingInfoFromUrl.service;\n const signingRegion = signingServiceInfo?.region ?? signingInfoFromUrl.region;\n response = await authenticatedHandler(request, {\n ...baseOptions,\n credentials,\n region: signingRegion,\n service: signingService,\n });\n }\n else {\n response = await unauthenticatedHandler(request, {\n ...baseOptions,\n });\n }\n // Clean-up un-modeled properties from response.\n return {\n statusCode: response.statusCode,\n headers: response.headers,\n body: response.body,\n };\n};\nconst iamAuthApplicable = ({ headers }, signingServiceInfo) => !headers.authorization && !headers['x-api-key'] && !!signingServiceInfo;\nconst resolveCredentials = async (amplify) => {\n try {\n const { credentials } = await amplify.Auth.fetchAuthSession();\n if (credentials) {\n return credentials;\n }\n }\n catch (e) {\n logger.debug('No credentials available, the request will be unsigned.');\n }\n return null;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const resolveHeaders = (headers, body) => {\n const normalizedHeaders = {};\n for (const key in headers) {\n normalizedHeaders[key.toLowerCase()] = headers[key];\n }\n if (body) {\n normalizedHeaders['content-type'] = 'application/json; charset=UTF-8';\n if (body instanceof FormData) {\n /**\n * If body is a FormData we should not allow setting content-type.\n * It's because runtime HTTP handlers(xhr, fetch, undici, node-fetch,\n * etc.) will modify the content-type value when setting multipart\n * boundary.\n */\n delete normalizedHeaders['content-type'];\n }\n }\n return normalizedHeaders;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { APIG_HOSTNAME_PATTERN, DEFAULT_IAM_SIGNING_REGION, DEFAULT_REST_IAM_SIGNING_SERVICE, } from './constants';\n/**\n * Infer the signing service and region from the given URL, and for REST API only, from the Amplify configuration.\n * It supports raw API Gateway endpoint and AppSync endpoint.\n *\n * @internal\n */\nexport const parseSigningInfo = (url, restApiOptions) => {\n const { service: signingService = DEFAULT_REST_IAM_SIGNING_SERVICE, region: signingRegion = DEFAULT_IAM_SIGNING_REGION, } = restApiOptions?.amplify.getConfig()?.API?.REST?.[restApiOptions?.apiName] ??\n {};\n const { hostname } = url;\n const [, service, region] = APIG_HOSTNAME_PATTERN.exec(hostname) ?? [];\n if (service === DEFAULT_REST_IAM_SIGNING_SERVICE) {\n // The configured endpoint is an API Gateway endpoint\n // @see: https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-call-api.html\n return {\n service,\n region: region ?? signingRegion,\n };\n }\n else if (service === 'appsync-api') {\n // AppSync endpoint is internally supported because GraphQL operation will send request using POST handler.\n // example: https://xxxx.appsync-api.us-east-1.amazonaws.com/graphql\n return {\n service: 'appsync',\n region: region ?? signingRegion,\n };\n }\n else {\n return {\n service: signingService,\n region: signingRegion,\n };\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { createCancellableOperation } from '../../utils';\nimport { transferHandler } from './handler';\n/**\n * This weak map provides functionality to cancel a request given the promise containing the `post` request.\n *\n * 1. For every GraphQL POST request, an abort controller is created and supplied to the request.\n * 2. The promise fulfilled by GraphGL POST request is then mapped to that abort controller.\n * 3. The promise is returned to the external caller.\n * 4. The caller can either wait for the promise to fulfill or call `cancel(promise)` to cancel the request.\n * 5. If `cancel(promise)` is called, then the corresponding abort controller is retrieved from the map below.\n * 6. GraphQL POST request will be rejected with the error message provided during cancel.\n * 7. Caller can check if the error is because of cancelling by calling `isCancelError(error)`.\n */\nconst cancelTokenMap = new WeakMap();\n/**\n * @internal\n *\n * REST POST handler to send GraphQL request to given endpoint. By default, it will use IAM to authorize\n * the request. In some auth modes, the IAM auth has to be disabled. Here's how to set up the request auth correctly:\n * * If auth mode is 'iam', you MUST NOT set 'authorization' header and 'x-api-key' header, since it would disable IAM\n * auth. You MUST also set 'input.options.signingServiceInfo' option.\n * * The including 'input.options.signingServiceInfo.service' and 'input.options.signingServiceInfo.region' are\n * optional. If omitted, the signing service and region will be inferred from url.\n * * If auth mode is 'none', you MUST NOT set 'options.signingServiceInfo' option.\n * * If auth mode is 'apiKey', you MUST set 'x-api-key' custom header.\n * * If auth mode is 'oidc' or 'lambda' or 'userPool', you MUST set 'authorization' header.\n *\n * To make the internal post cancellable, you must also call `updateRequestToBeCancellable()` with the promise from\n * internal post call and the abort controller supplied to the internal post call.\n *\n * @param amplify the AmplifyClassV6 instance - it may be the singleton used on Web, or an instance created within\n * a context created by `runWithAmplifyServerContext`\n * @param postInput an object of {@link InternalPostInput}\n * @param postInput.url The URL that the POST request sends to\n * @param postInput.options Options of the POST request\n * @param postInput.abortController The abort controller used to cancel the POST request\n * @returns a {@link RestApiResponse}\n *\n * @throws an {@link Error} with `Network error` as the `message` when the external resource is unreachable due to one\n * of the following reasons:\n * 1. no network connection\n * 2. CORS error\n * @throws a {@link CanceledError} when the ongoing POST request get cancelled\n */\nexport const post = (amplify, { url, options, abortController }) => {\n const controller = abortController ?? new AbortController();\n const responsePromise = createCancellableOperation(async () => {\n const response = transferHandler(amplify, {\n url,\n method: 'POST',\n ...options,\n abortSignal: controller.signal,\n }, options?.signingServiceInfo);\n return response;\n }, controller);\n const responseWithCleanUp = responsePromise.finally(() => {\n cancelTokenMap.delete(responseWithCleanUp);\n });\n return responseWithCleanUp;\n};\n/**\n * Cancels a request given the promise returned by `post`.\n * If the request is already completed, this function does nothing.\n * It MUST be used after `updateRequestToBeCancellable` is called.\n */\nexport const cancel = (promise, message) => {\n const controller = cancelTokenMap.get(promise);\n if (controller) {\n controller.abort(message);\n if (message && controller.signal.reason !== message) {\n // In runtimes where `AbortSignal.reason` is not supported, we track the reason ourselves.\n // @ts-expect-error reason is read-only property.\n controller.signal.reason = message;\n }\n return true;\n }\n return false;\n};\n/**\n * MUST be used to make a promise including internal `post` API call cancellable.\n */\nexport const updateRequestToBeCancellable = (promise, controller) => {\n cancelTokenMap.set(promise, controller);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { CanceledError } from '../errors';\nimport { parseRestApiServiceError } from './serviceError';\nimport { logger } from './logger';\n/**\n * @internal\n */\nexport function createCancellableOperation(handler, abortController) {\n const isInternalPost = (targetHandler) => !!abortController;\n // For creating a cancellable operation for public REST APIs, we need to create an AbortController\n // internally. Whereas for internal POST APIs, we need to accept in the AbortController from the\n // callers.\n const publicApisAbortController = new AbortController();\n const publicApisAbortSignal = publicApisAbortController.signal;\n const internalPostAbortSignal = abortController?.signal;\n let abortReason;\n const job = async () => {\n try {\n const response = await (isInternalPost(handler)\n ? handler()\n : handler(publicApisAbortSignal));\n if (response.statusCode >= 300) {\n throw await parseRestApiServiceError(response);\n }\n return response;\n }\n catch (error) {\n const abortSignal = internalPostAbortSignal ?? publicApisAbortSignal;\n const message = abortReason ?? abortSignal.reason;\n if (error.name === 'AbortError' || abortSignal?.aborted === true) {\n const canceledError = new CanceledError({\n ...(message && { message }),\n underlyingError: error,\n recoverySuggestion: 'The API request was explicitly canceled. If this is not intended, validate if you called the `cancel()` function on the API request erroneously.',\n });\n logger.debug(error);\n throw canceledError;\n }\n logger.debug(error);\n throw error;\n }\n };\n if (isInternalPost(handler)) {\n return job();\n }\n else {\n const cancel = (abortMessage) => {\n if (publicApisAbortSignal.aborted === true) {\n return;\n }\n publicApisAbortController.abort(abortMessage);\n // If abort reason is not supported, set a scoped reasons instead. The reason property inside an\n // AbortSignal is a readonly property and trying to set it would throw an error.\n if (abortMessage && publicApisAbortSignal.reason !== abortMessage) {\n abortReason = abortMessage;\n }\n };\n return { response: job(), cancel };\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const deepFreeze = (object) => {\n const propNames = Reflect.ownKeys(object);\n for (const name of propNames) {\n const value = object[name];\n if ((value && typeof value === 'object') || typeof value === 'function') {\n deepFreeze(value);\n }\n }\n return Object.freeze(object);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const ADD_OAUTH_LISTENER = Symbol('oauth-listener');\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from './Logger';\nimport { AmplifyError } from './errors';\nconst logger = new ConsoleLogger('parseAWSExports');\nconst authTypeMapping = {\n API_KEY: 'apiKey',\n AWS_IAM: 'iam',\n AMAZON_COGNITO_USER_POOLS: 'userPool',\n OPENID_CONNECT: 'oidc',\n NONE: 'none',\n AWS_LAMBDA: 'lambda',\n // `LAMBDA` is an incorrect value that was added during the v6 rewrite.\n // Keeping it as a valid value until v7 to prevent breaking customers who might\n // be relying on it as a workaround.\n // ref: https://github.com/aws-amplify/amplify-js/pull/12922\n // TODO: @v7 remove next line\n LAMBDA: 'lambda',\n};\n/**\n * Converts the object imported from `aws-exports.js` or `amplifyconfiguration.json` files generated by\n * the Amplify CLI into an object that conforms to the {@link ResourcesConfig}.\n *\n * @param config A configuration object imported from `aws-exports.js` or `amplifyconfiguration.json`.\n *\n * @returns An object that conforms to the {@link ResourcesConfig} .\n */\nexport const parseAWSExports = (config = {}) => {\n if (!Object.prototype.hasOwnProperty.call(config, 'aws_project_region')) {\n throw new AmplifyError({\n name: 'InvalidParameterException',\n message: 'Invalid config parameter.',\n recoverySuggestion: 'Ensure passing the config object imported from `amplifyconfiguration.json`.',\n });\n }\n const { aws_appsync_apiKey, aws_appsync_authenticationType, aws_appsync_graphqlEndpoint, aws_appsync_region, aws_bots_config, aws_cognito_identity_pool_id, aws_cognito_sign_up_verification_method, aws_cognito_mfa_configuration, aws_cognito_mfa_types, aws_cognito_password_protection_settings, aws_cognito_verification_mechanisms, aws_cognito_signup_attributes, aws_cognito_social_providers, aws_cognito_username_attributes, aws_mandatory_sign_in, aws_mobile_analytics_app_id, aws_mobile_analytics_app_region, aws_user_files_s3_bucket, aws_user_files_s3_bucket_region, aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing, aws_user_pools_id, aws_user_pools_web_client_id, geo, oauth, predictions, aws_cloud_logic_custom, Notifications, modelIntrospection, } = config;\n const amplifyConfig = {};\n // Analytics\n if (aws_mobile_analytics_app_id) {\n amplifyConfig.Analytics = {\n Pinpoint: {\n appId: aws_mobile_analytics_app_id,\n region: aws_mobile_analytics_app_region,\n },\n };\n }\n // Notifications\n const { InAppMessaging, Push } = Notifications ?? {};\n if (InAppMessaging?.AWSPinpoint || Push?.AWSPinpoint) {\n if (InAppMessaging?.AWSPinpoint) {\n const { appId, region } = InAppMessaging.AWSPinpoint;\n amplifyConfig.Notifications = {\n InAppMessaging: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n if (Push?.AWSPinpoint) {\n const { appId, region } = Push.AWSPinpoint;\n amplifyConfig.Notifications = {\n ...amplifyConfig.Notifications,\n PushNotification: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n }\n // Interactions\n if (Array.isArray(aws_bots_config)) {\n amplifyConfig.Interactions = {\n LexV1: Object.fromEntries(aws_bots_config.map(bot => [bot.name, bot])),\n };\n }\n // API\n if (aws_appsync_graphqlEndpoint) {\n const defaultAuthMode = authTypeMapping[aws_appsync_authenticationType];\n if (!defaultAuthMode) {\n logger.debug(`Invalid authentication type ${aws_appsync_authenticationType}. Falling back to IAM.`);\n }\n amplifyConfig.API = {\n GraphQL: {\n endpoint: aws_appsync_graphqlEndpoint,\n apiKey: aws_appsync_apiKey,\n region: aws_appsync_region,\n defaultAuthMode: defaultAuthMode ?? 'iam',\n },\n };\n if (modelIntrospection) {\n amplifyConfig.API.GraphQL.modelIntrospection = modelIntrospection;\n }\n }\n // Auth\n const mfaConfig = aws_cognito_mfa_configuration\n ? {\n status: aws_cognito_mfa_configuration &&\n aws_cognito_mfa_configuration.toLowerCase(),\n totpEnabled: aws_cognito_mfa_types?.includes('TOTP') ?? false,\n smsEnabled: aws_cognito_mfa_types?.includes('SMS') ?? false,\n }\n : undefined;\n const passwordFormatConfig = aws_cognito_password_protection_settings\n ? {\n minLength: aws_cognito_password_protection_settings.passwordPolicyMinLength,\n requireLowercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_LOWERCASE') ?? false,\n requireUppercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_UPPERCASE') ?? false,\n requireNumbers: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_NUMBERS') ?? false,\n requireSpecialCharacters: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_SYMBOLS') ?? false,\n }\n : undefined;\n const mergedUserAttributes = Array.from(new Set([\n ...(aws_cognito_verification_mechanisms ?? []),\n ...(aws_cognito_signup_attributes ?? []),\n ]));\n const userAttributes = mergedUserAttributes.reduce((attributes, key) => ({\n ...attributes,\n // All user attributes generated by the CLI are required\n [key.toLowerCase()]: { required: true },\n }), {});\n const loginWithEmailEnabled = aws_cognito_username_attributes?.includes('EMAIL') ?? false;\n const loginWithPhoneEnabled = aws_cognito_username_attributes?.includes('PHONE_NUMBER') ?? false;\n if (aws_cognito_identity_pool_id || aws_user_pools_id) {\n amplifyConfig.Auth = {\n Cognito: {\n identityPoolId: aws_cognito_identity_pool_id,\n allowGuestAccess: aws_mandatory_sign_in !== 'enable',\n signUpVerificationMethod: aws_cognito_sign_up_verification_method,\n userAttributes,\n userPoolClientId: aws_user_pools_web_client_id,\n userPoolId: aws_user_pools_id,\n mfa: mfaConfig,\n passwordFormat: passwordFormatConfig,\n loginWith: {\n username: !(loginWithEmailEnabled || loginWithPhoneEnabled),\n email: loginWithEmailEnabled,\n phone: loginWithPhoneEnabled,\n },\n },\n };\n }\n const hasOAuthConfig = oauth ? Object.keys(oauth).length > 0 : false;\n const hasSocialProviderConfig = aws_cognito_social_providers\n ? aws_cognito_social_providers.length > 0\n : false;\n if (amplifyConfig.Auth && hasOAuthConfig) {\n amplifyConfig.Auth.Cognito.loginWith = {\n ...amplifyConfig.Auth.Cognito.loginWith,\n oauth: {\n ...getOAuthConfig(oauth),\n ...(hasSocialProviderConfig && {\n providers: parseSocialProviders(aws_cognito_social_providers),\n }),\n },\n };\n }\n // Storage\n if (aws_user_files_s3_bucket) {\n amplifyConfig.Storage = {\n S3: {\n bucket: aws_user_files_s3_bucket,\n region: aws_user_files_s3_bucket_region,\n dangerouslyConnectToHttpEndpointForTesting: aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing,\n },\n };\n }\n // Geo\n if (geo) {\n const { amazon_location_service } = geo;\n amplifyConfig.Geo = {\n LocationService: {\n maps: amazon_location_service.maps,\n geofenceCollections: amazon_location_service.geofenceCollections,\n searchIndices: amazon_location_service.search_indices,\n region: amazon_location_service.region,\n },\n };\n }\n // REST API\n if (aws_cloud_logic_custom) {\n amplifyConfig.API = {\n ...amplifyConfig.API,\n REST: aws_cloud_logic_custom.reduce((acc, api) => {\n const { name, endpoint, region, service } = api;\n return {\n ...acc,\n [name]: {\n endpoint,\n ...(service ? { service } : undefined),\n ...(region ? { region } : undefined),\n },\n };\n }, {}),\n };\n }\n // Predictions\n if (predictions) {\n // map VoiceId from speechGenerator defaults to voiceId\n const { VoiceId: voiceId } = predictions?.convert?.speechGenerator?.defaults ?? {};\n amplifyConfig.Predictions = voiceId\n ? {\n ...predictions,\n convert: {\n ...predictions.convert,\n speechGenerator: {\n ...predictions.convert.speechGenerator,\n defaults: { voiceId },\n },\n },\n }\n : predictions;\n }\n return amplifyConfig;\n};\nconst getRedirectUrl = (redirectStr) => redirectStr?.split(',') ?? [];\nconst getOAuthConfig = ({ domain, scope, redirectSignIn, redirectSignOut, responseType, }) => ({\n domain,\n scopes: scope,\n redirectSignIn: getRedirectUrl(redirectSignIn),\n redirectSignOut: getRedirectUrl(redirectSignOut),\n responseType,\n});\nconst parseSocialProviders = (aws_cognito_social_providers) => {\n return aws_cognito_social_providers.map((provider) => {\n const updatedProvider = provider.toLowerCase();\n return updatedProvider.charAt(0).toUpperCase() + updatedProvider.slice(1);\n });\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function isAmplifyOutputs(config) {\n // version format initially will be '1' but is expected to be something like x.y where x is major and y minor version\n const { version } = config;\n if (!version) {\n return false;\n }\n return version.startsWith('1');\n}\nfunction parseStorage(amplifyOutputsStorageProperties) {\n if (!amplifyOutputsStorageProperties) {\n return undefined;\n }\n const { bucket_name, aws_region } = amplifyOutputsStorageProperties;\n return {\n S3: {\n bucket: bucket_name,\n region: aws_region,\n },\n };\n}\nfunction parseAuth(amplifyOutputsAuthProperties) {\n if (!amplifyOutputsAuthProperties) {\n return undefined;\n }\n const { user_pool_id, user_pool_client_id, identity_pool_id, password_policy, mfa_configuration, mfa_methods, unauthenticated_identities_enabled, oauth, username_attributes, standard_required_attributes, } = amplifyOutputsAuthProperties;\n const authConfig = {\n Cognito: {\n userPoolId: user_pool_id,\n userPoolClientId: user_pool_client_id,\n },\n };\n if (identity_pool_id) {\n authConfig.Cognito = {\n ...authConfig.Cognito,\n identityPoolId: identity_pool_id,\n };\n }\n if (password_policy) {\n authConfig.Cognito.passwordFormat = {\n requireLowercase: password_policy.require_lowercase,\n requireNumbers: password_policy.require_numbers,\n requireUppercase: password_policy.require_uppercase,\n requireSpecialCharacters: password_policy.require_symbols,\n minLength: password_policy.min_length ?? 6,\n };\n }\n if (mfa_configuration) {\n authConfig.Cognito.mfa = {\n status: getMfaStatus(mfa_configuration),\n smsEnabled: mfa_methods?.includes('SMS'),\n totpEnabled: mfa_methods?.includes('TOTP'),\n };\n }\n if (unauthenticated_identities_enabled) {\n authConfig.Cognito.allowGuestAccess = unauthenticated_identities_enabled;\n }\n if (oauth) {\n authConfig.Cognito.loginWith = {\n oauth: {\n domain: oauth.domain,\n redirectSignIn: oauth.redirect_sign_in_uri,\n redirectSignOut: oauth.redirect_sign_out_uri,\n responseType: oauth.response_type === 'token' ? 'token' : 'code',\n scopes: oauth.scopes,\n providers: getOAuthProviders(oauth.identity_providers),\n },\n };\n }\n if (username_attributes) {\n authConfig.Cognito.loginWith = {\n ...authConfig.Cognito.loginWith,\n email: username_attributes.includes('email'),\n phone: username_attributes.includes('phone_number'),\n // Signing in with a username is not currently supported in Gen2, this should always evaluate to false\n username: username_attributes.includes('username'),\n };\n }\n if (standard_required_attributes) {\n authConfig.Cognito.userAttributes = standard_required_attributes.reduce((acc, curr) => ({ ...acc, [curr]: { required: true } }), {});\n }\n return authConfig;\n}\nexport function parseAnalytics(amplifyOutputsAnalyticsProperties) {\n if (!amplifyOutputsAnalyticsProperties?.amazon_pinpoint) {\n return undefined;\n }\n const { amazon_pinpoint } = amplifyOutputsAnalyticsProperties;\n return {\n Pinpoint: {\n appId: amazon_pinpoint.app_id,\n region: amazon_pinpoint.aws_region,\n },\n };\n}\nfunction parseGeo(amplifyOutputsAnalyticsProperties) {\n if (!amplifyOutputsAnalyticsProperties) {\n return undefined;\n }\n const { aws_region, geofence_collections, maps, search_indices } = amplifyOutputsAnalyticsProperties;\n return {\n LocationService: {\n region: aws_region,\n searchIndices: search_indices,\n geofenceCollections: geofence_collections,\n maps,\n },\n };\n}\nfunction parseData(amplifyOutputsDataProperties) {\n if (!amplifyOutputsDataProperties) {\n return undefined;\n }\n const { aws_region, default_authorization_type, url, api_key, model_introspection, } = amplifyOutputsDataProperties;\n const GraphQL = {\n endpoint: url,\n defaultAuthMode: getGraphQLAuthMode(default_authorization_type),\n region: aws_region,\n apiKey: api_key,\n modelIntrospection: model_introspection,\n };\n return {\n GraphQL,\n };\n}\nfunction parseNotifications(amplifyOutputsNotificationsProperties) {\n if (!amplifyOutputsNotificationsProperties) {\n return undefined;\n }\n const { aws_region, channels, amazon_pinpoint_app_id } = amplifyOutputsNotificationsProperties;\n const hasInAppMessaging = channels.includes('IN_APP_MESSAGING');\n const hasPushNotification = channels.includes('APNS') || channels.includes('FCM');\n if (!(hasInAppMessaging || hasPushNotification)) {\n return undefined;\n }\n // At this point, we know the Amplify outputs contains at least one supported channel\n const notificationsConfig = {};\n if (hasInAppMessaging) {\n notificationsConfig.InAppMessaging = {\n Pinpoint: {\n appId: amazon_pinpoint_app_id,\n region: aws_region,\n },\n };\n }\n if (hasPushNotification) {\n notificationsConfig.PushNotification = {\n Pinpoint: {\n appId: amazon_pinpoint_app_id,\n region: aws_region,\n },\n };\n }\n return notificationsConfig;\n}\nexport function parseAmplifyOutputs(amplifyOutputs) {\n const resourcesConfig = {};\n if (amplifyOutputs.storage) {\n resourcesConfig.Storage = parseStorage(amplifyOutputs.storage);\n }\n if (amplifyOutputs.auth) {\n resourcesConfig.Auth = parseAuth(amplifyOutputs.auth);\n }\n if (amplifyOutputs.analytics) {\n resourcesConfig.Analytics = parseAnalytics(amplifyOutputs.analytics);\n }\n if (amplifyOutputs.geo) {\n resourcesConfig.Geo = parseGeo(amplifyOutputs.geo);\n }\n if (amplifyOutputs.data) {\n resourcesConfig.API = parseData(amplifyOutputs.data);\n }\n if (amplifyOutputs.notifications) {\n resourcesConfig.Notifications = parseNotifications(amplifyOutputs.notifications);\n }\n return resourcesConfig;\n}\nconst authModeNames = {\n AMAZON_COGNITO_USER_POOLS: 'userPool',\n API_KEY: 'apiKey',\n AWS_IAM: 'iam',\n AWS_LAMBDA: 'lambda',\n OPENID_CONNECT: 'oidc',\n};\nfunction getGraphQLAuthMode(authType) {\n return authModeNames[authType];\n}\nconst providerNames = {\n GOOGLE: 'Google',\n LOGIN_WITH_AMAZON: 'Amazon',\n FACEBOOK: 'Facebook',\n SIGN_IN_WITH_APPLE: 'Apple',\n};\nfunction getOAuthProviders(providers = []) {\n return providers.map(provider => providerNames[provider]);\n}\nfunction getMfaStatus(mfaConfiguration) {\n if (mfaConfiguration === 'OPTIONAL')\n return 'optional';\n if (mfaConfiguration === 'REQUIRED')\n return 'on';\n return 'off';\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseAWSExports } from '../parseAWSExports';\nimport { isAmplifyOutputs, parseAmplifyOutputs } from '../parseAmplifyOutputs';\n/**\n * Parses the variety of configuration shapes that Amplify can accept into a ResourcesConfig.\n *\n * @param amplifyConfig An Amplify configuration object conforming to one of the supported schemas.\n * @return A ResourcesConfig for the provided configuration object.\n */\nexport const parseAmplifyConfig = (amplifyConfig) => {\n if (Object.keys(amplifyConfig).some(key => key.startsWith('aws_'))) {\n return parseAWSExports(amplifyConfig);\n }\n else if (isAmplifyOutputs(amplifyConfig)) {\n return parseAmplifyOutputs(amplifyConfig);\n }\n else {\n return amplifyConfig;\n }\n};\n","export function isTokenExpired({ expiresAt, clockDrift, }) {\n const currentTime = Date.now();\n return currentTime + clockDrift > expiresAt;\n}\nexport class AuthClass {\n /**\n * Configure Auth category\n *\n * @internal\n *\n * @param authResourcesConfig - Resources configurations required by Auth providers.\n * @param authOptions - Client options used by library\n *\n * @returns void\n */\n configure(authResourcesConfig, authOptions) {\n this.authConfig = authResourcesConfig;\n this.authOptions = authOptions;\n }\n /**\n * Fetch the auth tokens, and the temporary AWS credentials and identity if they are configured. By default it\n * does not refresh the auth tokens or credentials if they are loaded in storage already. You can force a refresh\n * with `{ forceRefresh: true }` input.\n *\n * @param options - Options configuring the fetch behavior.\n *\n * @returns Promise of current auth session {@link AuthSession}.\n */\n async fetchAuthSession(options = {}) {\n let credentialsAndIdentityId;\n let userSub;\n // Get tokens will throw if session cannot be refreshed (network or service error) or return null if not available\n const tokens = await this.getTokens(options);\n if (tokens) {\n userSub = tokens.accessToken?.payload?.sub;\n // getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)\n credentialsAndIdentityId =\n await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({\n authConfig: this.authConfig,\n tokens,\n authenticated: true,\n forceRefresh: options.forceRefresh,\n });\n }\n else {\n // getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)\n credentialsAndIdentityId =\n await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({\n authConfig: this.authConfig,\n authenticated: false,\n forceRefresh: options.forceRefresh,\n });\n }\n return {\n tokens,\n credentials: credentialsAndIdentityId?.credentials,\n identityId: credentialsAndIdentityId?.identityId,\n userSub,\n };\n }\n async clearCredentials() {\n await this.authOptions?.credentialsProvider?.clearCredentialsAndIdentityId();\n }\n async getTokens(options) {\n return ((await this.authOptions?.tokenProvider?.getTokens(options)) ?? undefined);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AMPLIFY_SYMBOL, Hub } from '../Hub';\nimport { deepFreeze } from '../utils';\nimport { parseAmplifyConfig } from '../libraryUtils';\nimport { AuthClass } from './Auth';\nimport { ADD_OAUTH_LISTENER } from './constants';\nexport class AmplifyClass {\n constructor() {\n this.oAuthListener = undefined;\n this.resourcesConfig = {};\n this.libraryOptions = {};\n this.Auth = new AuthClass();\n }\n /**\n * Configures Amplify for use with your back-end resources.\n *\n * @remarks\n * This API does not perform any merging of either `resourcesConfig` or `libraryOptions`. The most recently\n * provided values will be used after configuration.\n *\n * @remarks\n * `configure` can be used to specify additional library options where available for supported categories.\n *\n * @param resourceConfig - Back-end resource configuration. Typically provided via the `aws-exports.js` file.\n * @param libraryOptions - Additional options for customizing the behavior of the library.\n */\n configure(resourcesConfig, libraryOptions) {\n const resolvedResourceConfig = parseAmplifyConfig(resourcesConfig);\n this.resourcesConfig = resolvedResourceConfig;\n if (libraryOptions) {\n this.libraryOptions = libraryOptions;\n }\n // Make resource config immutable\n this.resourcesConfig = deepFreeze(this.resourcesConfig);\n this.Auth.configure(this.resourcesConfig.Auth, this.libraryOptions.Auth);\n Hub.dispatch('core', {\n event: 'configure',\n data: this.resourcesConfig,\n }, 'Configure', AMPLIFY_SYMBOL);\n this.notifyOAuthListener();\n }\n /**\n * Provides access to the current back-end resource configuration for the Library.\n *\n * @returns Returns the immutable back-end resource configuration.\n */\n getConfig() {\n return this.resourcesConfig;\n }\n /** @internal */\n [ADD_OAUTH_LISTENER](listener) {\n if (this.resourcesConfig.Auth?.Cognito.loginWith?.oauth) {\n // when Amplify has been configured with a valid OAuth config while adding the listener, run it directly\n listener(this.resourcesConfig.Auth?.Cognito);\n }\n else {\n // otherwise register the listener and run it later when Amplify gets configured with a valid oauth config\n this.oAuthListener = listener;\n }\n }\n notifyOAuthListener() {\n if (!this.resourcesConfig.Auth?.Cognito.loginWith?.oauth ||\n !this.oAuthListener) {\n return;\n }\n this.oAuthListener(this.resourcesConfig.Auth?.Cognito);\n // the listener should only be notified once with a valid oauth config\n this.oAuthListener = undefined;\n }\n}\n/**\n * The `Amplify` utility is used to configure the library.\n *\n * @remarks\n * `Amplify` is responsible for orchestrating cross-category communication within the library.\n */\nexport const Amplify = new AmplifyClass();\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const fetchAuthSession = (amplify, options) => {\n return amplify.Auth.fetchAuthSession(options);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '../Amplify';\nimport { fetchAuthSession as fetchAuthSessionInternal } from './internal/fetchAuthSession';\nexport const fetchAuthSession = (options) => {\n return fetchAuthSessionInternal(Amplify, options);\n};\n","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { v4 } from 'uuid';\nconst amplifyUuid = v4;\nexport { amplifyUuid };\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const isNonRetryableError = (obj) => {\n const key = 'nonRetryable';\n return obj && obj[key];\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError } from '../../errors';\nexport const getCrypto = () => {\n if (typeof window === 'object' && typeof window.crypto === 'object') {\n return window.crypto;\n }\n // Next.js global polyfill\n if (typeof crypto === 'object') {\n return crypto;\n }\n throw new AmplifyError({\n name: 'MissingPolyfill',\n message: 'Cannot resolve the `crypto` function from the environment.',\n });\n};\nexport const getBtoa = () => {\n // browser\n if (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n return window.btoa;\n }\n // Next.js global polyfill\n if (typeof btoa === 'function') {\n return btoa;\n }\n throw new AmplifyError({\n name: 'Base64EncoderError',\n message: 'Cannot resolve the `btoa` function from the environment.',\n });\n};\nexport const getAtob = () => {\n // browser\n if (typeof window !== 'undefined' && typeof window.atob === 'function') {\n return window.atob;\n }\n // Next.js global polyfill\n if (typeof atob === 'function') {\n return atob;\n }\n throw new AmplifyError({\n name: 'Base64EncoderError',\n message: 'Cannot resolve the `atob` function from the environment.',\n });\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getBtoa } from '../../globalHelpers';\nimport { bytesToString } from './bytesToString';\nexport const base64Encoder = {\n convert(input, { urlSafe } = { urlSafe: false }) {\n const inputStr = typeof input === 'string' ? input : bytesToString(input);\n const encodedStr = getBtoa()(inputStr);\n // see details about the char replacing at https://datatracker.ietf.org/doc/html/rfc4648#section-5\n return urlSafe\n ? encodedStr.replace(/\\+/g, '-').replace(/\\//g, '_')\n : encodedStr;\n },\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function bytesToString(input) {\n return Array.from(input, byte => String.fromCodePoint(byte)).join('');\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '../../Logger/ConsoleLogger';\nimport { isNonRetryableError } from './isNonRetryableError';\nconst logger = new ConsoleLogger('retryUtil');\n/**\n * @private\n * Internal use of Amplify only\n */\nexport async function retry(functionToRetry, args, delayFn, onTerminate) {\n if (typeof functionToRetry !== 'function') {\n throw Error('functionToRetry must be a function');\n }\n // TODO(eslint): remove this linter suppression with refactoring.\n // eslint-disable-next-line no-async-promise-executor\n return new Promise(async (resolve, reject) => {\n let attempt = 0;\n let terminated = false;\n let timeout;\n let wakeUp = () => {\n // no-op\n }; // will be replaced with a resolver()\n // used after the loop if terminated while waiting for a timer.\n let lastError;\n onTerminate &&\n onTerminate.then(() => {\n // signal not to try anymore.\n terminated = true;\n // stop sleeping if we're sleeping.\n clearTimeout(timeout);\n wakeUp();\n });\n // TODO(eslint): remove this linter suppression with refactoring.\n // eslint-disable-next-line no-unmodified-loop-condition\n while (!terminated) {\n attempt++;\n logger.debug(`${functionToRetry.name} attempt #${attempt} with this vars: ${JSON.stringify(args)}`);\n try {\n resolve(await functionToRetry(...args));\n return;\n }\n catch (err) {\n lastError = err;\n logger.debug(`error on ${functionToRetry.name}`, err);\n if (isNonRetryableError(err)) {\n logger.debug(`${functionToRetry.name} non retryable error`, err);\n reject(err);\n return;\n }\n const retryIn = delayFn(attempt, args, err);\n logger.debug(`${functionToRetry.name} retrying in ${retryIn} ms`);\n // we check `terminated` again here because it could have flipped\n // in the time it took `functionToRetry` to return.\n if (retryIn === false || terminated) {\n reject(err);\n return;\n }\n else {\n await new Promise(_resolve => {\n wakeUp = _resolve; // export wakeUp for onTerminate handling\n timeout = setTimeout(wakeUp, retryIn);\n });\n }\n }\n }\n // reached if terminated while waiting for a timer.\n reject(lastError);\n });\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { MAX_DELAY_MS } from './constants';\nimport { jitteredBackoff } from './jitteredBackoff';\nimport { retry } from './retry';\n/**\n * @private\n * Internal use of Amplify only\n */\nexport const jitteredExponentialRetry = (functionToRetry, args, maxDelayMs = MAX_DELAY_MS, onTerminate) => retry(functionToRetry, args, jitteredBackoff(maxDelayMs), onTerminate);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport class NonRetryableError extends Error {\n constructor() {\n super(...arguments);\n this.nonRetryable = true;\n }\n}\n","export var CONTROL_MSG;\n(function (CONTROL_MSG) {\n CONTROL_MSG[\"CONNECTION_CLOSED\"] = \"Connection closed\";\n CONTROL_MSG[\"CONNECTION_FAILED\"] = \"Connection failed\";\n CONTROL_MSG[\"REALTIME_SUBSCRIPTION_INIT_ERROR\"] = \"AppSync Realtime subscription init error\";\n CONTROL_MSG[\"SUBSCRIPTION_ACK\"] = \"Subscription ack\";\n CONTROL_MSG[\"TIMEOUT_DISCONNECT\"] = \"Timeout disconnect\";\n})(CONTROL_MSG || (CONTROL_MSG = {}));\n/** @enum {string} */\nexport var ConnectionState;\n(function (ConnectionState) {\n /*\n * The connection is alive and healthy\n */\n ConnectionState[\"Connected\"] = \"Connected\";\n /*\n * The connection is alive, but the connection is offline\n */\n ConnectionState[\"ConnectedPendingNetwork\"] = \"ConnectedPendingNetwork\";\n /*\n * The connection has been disconnected while in use\n */\n ConnectionState[\"ConnectionDisrupted\"] = \"ConnectionDisrupted\";\n /*\n * The connection has been disconnected and the network is offline\n */\n ConnectionState[\"ConnectionDisruptedPendingNetwork\"] = \"ConnectionDisruptedPendingNetwork\";\n /*\n * The connection is in the process of connecting\n */\n ConnectionState[\"Connecting\"] = \"Connecting\";\n /*\n * The connection is not in use and is being disconnected\n */\n ConnectionState[\"ConnectedPendingDisconnect\"] = \"ConnectedPendingDisconnect\";\n /*\n * The connection is not in use and has been disconnected\n */\n ConnectionState[\"Disconnected\"] = \"Disconnected\";\n /*\n * The connection is alive, but a keep alive message has been missed\n */\n ConnectionState[\"ConnectedPendingKeepAlive\"] = \"ConnectedPendingKeepAlive\";\n})(ConnectionState || (ConnectionState = {}));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport { AMPLIFY_SYMBOL } from '@aws-amplify/core/internals/utils';\nexport const MAX_DELAY_MS = 5000;\nexport const NON_RETRYABLE_CODES = [400, 401, 403];\nexport const CONNECTION_STATE_CHANGE = 'ConnectionStateChange';\nexport var MESSAGE_TYPES;\n(function (MESSAGE_TYPES) {\n /**\n * Client -> Server message.\n * This message type is the first message after handshake and this will initialize AWS AppSync RealTime communication\n */\n MESSAGE_TYPES[\"GQL_CONNECTION_INIT\"] = \"connection_init\";\n /**\n * Server -> Client message\n * This message type is in case there is an issue with AWS AppSync RealTime when establishing connection\n */\n MESSAGE_TYPES[\"GQL_CONNECTION_ERROR\"] = \"connection_error\";\n /**\n * Server -> Client message.\n * This message type is for the ack response from AWS AppSync RealTime for GQL_CONNECTION_INIT message\n */\n MESSAGE_TYPES[\"GQL_CONNECTION_ACK\"] = \"connection_ack\";\n /**\n * Client -> Server message.\n * This message type is for register subscriptions with AWS AppSync RealTime\n */\n MESSAGE_TYPES[\"GQL_START\"] = \"start\";\n /**\n * Server -> Client message.\n * This message type is for the ack response from AWS AppSync RealTime for GQL_START message\n */\n MESSAGE_TYPES[\"GQL_START_ACK\"] = \"start_ack\";\n /**\n * Server -> Client message.\n * This message type is for subscription message from AWS AppSync RealTime\n */\n MESSAGE_TYPES[\"GQL_DATA\"] = \"data\";\n /**\n * Server -> Client message.\n * This message type helps the client to know is still receiving messages from AWS AppSync RealTime\n */\n MESSAGE_TYPES[\"GQL_CONNECTION_KEEP_ALIVE\"] = \"ka\";\n /**\n * Client -> Server message.\n * This message type is for unregister subscriptions with AWS AppSync RealTime\n */\n MESSAGE_TYPES[\"GQL_STOP\"] = \"stop\";\n /**\n * Server -> Client message.\n * This message type is for the ack response from AWS AppSync RealTime for GQL_STOP message\n */\n MESSAGE_TYPES[\"GQL_COMPLETE\"] = \"complete\";\n /**\n * Server -> Client message.\n * This message type is for sending error messages from AWS AppSync RealTime to the client\n */\n MESSAGE_TYPES[\"GQL_ERROR\"] = \"error\";\n})(MESSAGE_TYPES || (MESSAGE_TYPES = {}));\nexport var SUBSCRIPTION_STATUS;\n(function (SUBSCRIPTION_STATUS) {\n SUBSCRIPTION_STATUS[SUBSCRIPTION_STATUS[\"PENDING\"] = 0] = \"PENDING\";\n SUBSCRIPTION_STATUS[SUBSCRIPTION_STATUS[\"CONNECTED\"] = 1] = \"CONNECTED\";\n SUBSCRIPTION_STATUS[SUBSCRIPTION_STATUS[\"FAILED\"] = 2] = \"FAILED\";\n})(SUBSCRIPTION_STATUS || (SUBSCRIPTION_STATUS = {}));\nexport var SOCKET_STATUS;\n(function (SOCKET_STATUS) {\n SOCKET_STATUS[SOCKET_STATUS[\"CLOSED\"] = 0] = \"CLOSED\";\n SOCKET_STATUS[SOCKET_STATUS[\"READY\"] = 1] = \"READY\";\n SOCKET_STATUS[SOCKET_STATUS[\"CONNECTING\"] = 2] = \"CONNECTING\";\n})(SOCKET_STATUS || (SOCKET_STATUS = {}));\nexport const AWS_APPSYNC_REALTIME_HEADERS = {\n accept: 'application/json, text/javascript',\n 'content-encoding': 'amz-1.0',\n 'content-type': 'application/json; charset=UTF-8',\n};\n/**\n * Time in milleseconds to wait for GQL_CONNECTION_INIT message\n */\nexport const CONNECTION_INIT_TIMEOUT = 15000;\n/**\n * Time in milleseconds to wait for GQL_START_ACK message\n */\nexport const START_ACK_TIMEOUT = 15000;\n/**\n * Default Time in milleseconds to wait for GQL_CONNECTION_KEEP_ALIVE message\n */\nexport const DEFAULT_KEEP_ALIVE_TIMEOUT = 5 * 60 * 1000;\n/**\n * Default Time in milleseconds to alert for missed GQL_CONNECTION_KEEP_ALIVE message\n */\nexport const DEFAULT_KEEP_ALIVE_ALERT_TIMEOUT = 65 * 1000;\n/**\n * Default delay time in milleseconds between when reconnect is triggered vs when it is attempted\n */\nexport const RECONNECT_DELAY = 5 * 1000;\n/**\n * Default interval time in milleseconds between when reconnect is re-attempted\n */\nexport const RECONNECT_INTERVAL = 60 * 1000;\n","import { Subscription } from '../Subscription';\nimport { SchedulerAction, SchedulerLike } from '../types';\n\nexport function executeSchedule(\n parentSubscription: Subscription,\n scheduler: SchedulerLike,\n work: () => void,\n delay: number,\n repeat: true\n): void;\nexport function executeSchedule(\n parentSubscription: Subscription,\n scheduler: SchedulerLike,\n work: () => void,\n delay?: number,\n repeat?: false\n): Subscription;\n\nexport function executeSchedule(\n parentSubscription: Subscription,\n scheduler: SchedulerLike,\n work: () => void,\n delay = 0,\n repeat = false\n): Subscription | void {\n const scheduleSubscription = scheduler.schedule(function (this: SchedulerAction<any>) {\n work();\n if (repeat) {\n parentSubscription.add(this.schedule(null, delay));\n } else {\n this.unsubscribe();\n }\n }, delay);\n\n parentSubscription.add(scheduleSubscription);\n\n if (!repeat) {\n // Because user-land scheduler implementations are unlikely to properly reuse\n // Actions for repeat scheduling, we can't trust that the returned subscription\n // will control repeat subscription scenarios. So we're trying to avoid using them\n // incorrectly within this library.\n return scheduleSubscription;\n }\n}\n","/** @prettier */\nimport { MonoTypeOperatorFunction, SchedulerLike } from '../types';\nimport { executeSchedule } from '../util/executeSchedule';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\n\n/**\n * Re-emits all notifications from source Observable with specified scheduler.\n *\n * <span class=\"informal\">Ensure a specific scheduler is used, from outside of an Observable.</span>\n *\n * `observeOn` is an operator that accepts a scheduler as a first parameter, which will be used to reschedule\n * notifications emitted by the source Observable. It might be useful, if you do not have control over\n * internal scheduler of a given Observable, but want to control when its values are emitted nevertheless.\n *\n * Returned Observable emits the same notifications (nexted values, complete and error events) as the source Observable,\n * but rescheduled with provided scheduler. Note that this doesn't mean that source Observables internal\n * scheduler will be replaced in any way. Original scheduler still will be used, but when the source Observable emits\n * notification, it will be immediately scheduled again - this time with scheduler passed to `observeOn`.\n * An anti-pattern would be calling `observeOn` on Observable that emits lots of values synchronously, to split\n * that emissions into asynchronous chunks. For this to happen, scheduler would have to be passed into the source\n * Observable directly (usually into the operator that creates it). `observeOn` simply delays notifications a\n * little bit more, to ensure that they are emitted at expected moments.\n *\n * As a matter of fact, `observeOn` accepts second parameter, which specifies in milliseconds with what delay notifications\n * will be emitted. The main difference between {@link delay} operator and `observeOn` is that `observeOn`\n * will delay all notifications - including error notifications - while `delay` will pass through error\n * from source Observable immediately when it is emitted. In general it is highly recommended to use `delay` operator\n * for any kind of delaying of values in the stream, while using `observeOn` to specify which scheduler should be used\n * for notification emissions in general.\n *\n * ## Example\n *\n * Ensure values in subscribe are called just before browser repaint\n *\n * ```ts\n * import { interval, observeOn, animationFrameScheduler } from 'rxjs';\n *\n * const someDiv = document.createElement('div');\n * someDiv.style.cssText = 'width: 200px;background: #09c';\n * document.body.appendChild(someDiv);\n * const intervals = interval(10); // Intervals are scheduled\n * // with async scheduler by default...\n * intervals.pipe(\n * observeOn(animationFrameScheduler) // ...but we will observe on animationFrame\n * ) // scheduler to ensure smooth animation.\n * .subscribe(val => {\n * someDiv.style.height = val + 'px';\n * });\n * ```\n *\n * @see {@link delay}\n *\n * @param scheduler Scheduler that will be used to reschedule notifications from source Observable.\n * @param delay Number of milliseconds that states with what delay every notification should be rescheduled.\n * @return A function that returns an Observable that emits the same\n * notifications as the source Observable, but with provided scheduler.\n */\nexport function observeOn<T>(scheduler: SchedulerLike, delay = 0): MonoTypeOperatorFunction<T> {\n return operate((source, subscriber) => {\n source.subscribe(\n createOperatorSubscriber(\n subscriber,\n (value) => executeSchedule(subscriber, scheduler, () => subscriber.next(value), delay),\n () => executeSchedule(subscriber, scheduler, () => subscriber.complete(), delay),\n (err) => executeSchedule(subscriber, scheduler, () => subscriber.error(err), delay)\n )\n );\n });\n}\n","import { MonoTypeOperatorFunction, SchedulerLike } from '../types';\nimport { operate } from '../util/lift';\n\n/**\n * Asynchronously subscribes Observers to this Observable on the specified {@link SchedulerLike}.\n *\n * With `subscribeOn` you can decide what type of scheduler a specific Observable will be using when it is subscribed to.\n *\n * Schedulers control the speed and order of emissions to observers from an Observable stream.\n *\n * \n *\n * ## Example\n *\n * Given the following code:\n *\n * ```ts\n * import { of, merge } from 'rxjs';\n *\n * const a = of(1, 2, 3);\n * const b = of(4, 5, 6);\n *\n * merge(a, b).subscribe(console.log);\n *\n * // Outputs\n * // 1\n * // 2\n * // 3\n * // 4\n * // 5\n * // 6\n * ```\n *\n * Both Observable `a` and `b` will emit their values directly and synchronously once they are subscribed to.\n *\n * If we instead use the `subscribeOn` operator declaring that we want to use the {@link asyncScheduler} for values emitted by Observable `a`:\n *\n * ```ts\n * import { of, subscribeOn, asyncScheduler, merge } from 'rxjs';\n *\n * const a = of(1, 2, 3).pipe(subscribeOn(asyncScheduler));\n * const b = of(4, 5, 6);\n *\n * merge(a, b).subscribe(console.log);\n *\n * // Outputs\n * // 4\n * // 5\n * // 6\n * // 1\n * // 2\n * // 3\n * ```\n *\n * The reason for this is that Observable `b` emits its values directly and synchronously like before\n * but the emissions from `a` are scheduled on the event loop because we are now using the {@link asyncScheduler} for that specific Observable.\n *\n * @param scheduler The {@link SchedulerLike} to perform subscription actions on.\n * @param delay A delay to pass to the scheduler to delay subscriptions\n * @return A function that returns an Observable modified so that its\n * subscriptions happen on the specified {@link SchedulerLike}.\n */\nexport function subscribeOn<T>(scheduler: SchedulerLike, delay: number = 0): MonoTypeOperatorFunction<T> {\n return operate((source, subscriber) => {\n subscriber.add(scheduler.schedule(() => source.subscribe(subscriber), delay));\n });\n}\n","import { SchedulerLike } from '../types';\nimport { Observable } from '../Observable';\nimport { executeSchedule } from '../util/executeSchedule';\n\nexport function scheduleAsyncIterable<T>(input: AsyncIterable<T>, scheduler: SchedulerLike) {\n if (!input) {\n throw new Error('Iterable cannot be null');\n }\n return new Observable<T>((subscriber) => {\n executeSchedule(subscriber, scheduler, () => {\n const iterator = input[Symbol.asyncIterator]();\n executeSchedule(\n subscriber,\n scheduler,\n () => {\n iterator.next().then((result) => {\n if (result.done) {\n // This will remove the subscriptions from\n // the parent subscription.\n subscriber.complete();\n } else {\n subscriber.next(result.value);\n }\n });\n },\n 0,\n true\n );\n });\n });\n}\n","import { scheduleObservable } from './scheduleObservable';\nimport { schedulePromise } from './schedulePromise';\nimport { scheduleArray } from './scheduleArray';\nimport { scheduleIterable } from './scheduleIterable';\nimport { scheduleAsyncIterable } from './scheduleAsyncIterable';\nimport { isInteropObservable } from '../util/isInteropObservable';\nimport { isPromise } from '../util/isPromise';\nimport { isArrayLike } from '../util/isArrayLike';\nimport { isIterable } from '../util/isIterable';\nimport { ObservableInput, SchedulerLike } from '../types';\nimport { Observable } from '../Observable';\nimport { isAsyncIterable } from '../util/isAsyncIterable';\nimport { createInvalidObservableTypeError } from '../util/throwUnobservableError';\nimport { isReadableStreamLike } from '../util/isReadableStreamLike';\nimport { scheduleReadableStreamLike } from './scheduleReadableStreamLike';\n\n/**\n * Converts from a common {@link ObservableInput} type to an observable where subscription and emissions\n * are scheduled on the provided scheduler.\n *\n * @see {@link from}\n * @see {@link of}\n *\n * @param input The observable, array, promise, iterable, etc you would like to schedule\n * @param scheduler The scheduler to use to schedule the subscription and emissions from\n * the returned observable.\n */\nexport function scheduled<T>(input: ObservableInput<T>, scheduler: SchedulerLike): Observable<T> {\n if (input != null) {\n if (isInteropObservable(input)) {\n return scheduleObservable(input, scheduler);\n }\n if (isArrayLike(input)) {\n return scheduleArray(input, scheduler);\n }\n if (isPromise(input)) {\n return schedulePromise(input, scheduler);\n }\n if (isAsyncIterable(input)) {\n return scheduleAsyncIterable(input, scheduler);\n }\n if (isIterable(input)) {\n return scheduleIterable(input, scheduler);\n }\n if (isReadableStreamLike(input)) {\n return scheduleReadableStreamLike(input, scheduler);\n }\n }\n throw createInvalidObservableTypeError(input);\n}\n","import { innerFrom } from '../observable/innerFrom';\nimport { observeOn } from '../operators/observeOn';\nimport { subscribeOn } from '../operators/subscribeOn';\nimport { InteropObservable, SchedulerLike } from '../types';\n\nexport function scheduleObservable<T>(input: InteropObservable<T>, scheduler: SchedulerLike) {\n return innerFrom(input).pipe(subscribeOn(scheduler), observeOn(scheduler));\n}\n","import { Observable } from '../Observable';\nimport { SchedulerLike } from '../types';\n\nexport function scheduleArray<T>(input: ArrayLike<T>, scheduler: SchedulerLike) {\n return new Observable<T>((subscriber) => {\n // The current array index.\n let i = 0;\n // Start iterating over the array like on a schedule.\n return scheduler.schedule(function () {\n if (i === input.length) {\n // If we have hit the end of the array like in the\n // previous job, we can complete.\n subscriber.complete();\n } else {\n // Otherwise let's next the value at the current index,\n // then increment our index.\n subscriber.next(input[i++]);\n // If the last emission didn't cause us to close the subscriber\n // (via take or some side effect), reschedule the job and we'll\n // make another pass.\n if (!subscriber.closed) {\n this.schedule();\n }\n }\n });\n });\n}\n","import { innerFrom } from '../observable/innerFrom';\nimport { observeOn } from '../operators/observeOn';\nimport { subscribeOn } from '../operators/subscribeOn';\nimport { SchedulerLike } from '../types';\n\nexport function schedulePromise<T>(input: PromiseLike<T>, scheduler: SchedulerLike) {\n return innerFrom(input).pipe(subscribeOn(scheduler), observeOn(scheduler));\n}\n","import { Observable } from '../Observable';\nimport { SchedulerLike } from '../types';\nimport { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from '../util/isFunction';\nimport { executeSchedule } from '../util/executeSchedule';\n\n/**\n * Used in {@link scheduled} to create an observable from an Iterable.\n * @param input The iterable to create an observable from\n * @param scheduler The scheduler to use\n */\nexport function scheduleIterable<T>(input: Iterable<T>, scheduler: SchedulerLike) {\n return new Observable<T>((subscriber) => {\n let iterator: Iterator<T, T>;\n\n // Schedule the initial creation of the iterator from\n // the iterable. This is so the code in the iterable is\n // not called until the scheduled job fires.\n executeSchedule(subscriber, scheduler, () => {\n // Create the iterator.\n iterator = (input as any)[Symbol_iterator]();\n\n executeSchedule(\n subscriber,\n scheduler,\n () => {\n let value: T;\n let done: boolean | undefined;\n try {\n // Pull the value out of the iterator\n ({ value, done } = iterator.next());\n } catch (err) {\n // We got an error while pulling from the iterator\n subscriber.error(err);\n return;\n }\n\n if (done) {\n // If it is \"done\" we just complete. This mimics the\n // behavior of JavaScript's `for..of` consumption of\n // iterables, which will not emit the value from an iterator\n // result of `{ done: true: value: 'here' }`.\n subscriber.complete();\n } else {\n // The iterable is not done, emit the value.\n subscriber.next(value);\n }\n },\n 0,\n true\n );\n });\n\n // During finalization, if we see this iterator has a `return` method,\n // then we know it is a Generator, and not just an Iterator. So we call\n // the `return()` function. This will ensure that any `finally { }` blocks\n // inside of the generator we can hit will be hit properly.\n return () => isFunction(iterator?.return) && iterator.return();\n });\n}\n","import { SchedulerLike, ReadableStreamLike } from '../types';\nimport { Observable } from '../Observable';\nimport { scheduleAsyncIterable } from './scheduleAsyncIterable';\nimport { readableStreamLikeToAsyncGenerator } from '../util/isReadableStreamLike';\n\nexport function scheduleReadableStreamLike<T>(input: ReadableStreamLike<T>, scheduler: SchedulerLike): Observable<T> {\n return scheduleAsyncIterable(readableStreamLikeToAsyncGenerator(input), scheduler);\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Observable, from } from 'rxjs';\nimport { isWebWorker } from '../utils';\nexport class Reachability {\n networkMonitor(_) {\n const globalObj = isWebWorker()\n ? self\n : typeof window !== 'undefined' && window;\n if (!globalObj) {\n return from([{ online: true }]);\n }\n return new Observable(observer => {\n observer.next({ online: globalObj.navigator.onLine });\n const notifyOnline = () => {\n observer.next({ online: true });\n };\n const notifyOffline = () => {\n observer.next({ online: false });\n };\n globalObj.addEventListener('online', notifyOnline);\n globalObj.addEventListener('offline', notifyOffline);\n Reachability._observers.push(observer);\n return () => {\n globalObj.removeEventListener('online', notifyOnline);\n globalObj.removeEventListener('offline', notifyOffline);\n Reachability._observers = Reachability._observers.filter(_observer => _observer !== observer);\n };\n });\n }\n // expose observers to simulate offline mode for integration testing\n static _observerOverride(status) {\n for (const observer of this._observers) {\n if (observer.closed) {\n this._observers = this._observers.filter(_observer => _observer !== observer);\n continue;\n }\n observer?.next && observer.next(status);\n }\n }\n}\nReachability._observers = [];\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const isWebWorker = () => {\n if (typeof self === 'undefined') {\n return false;\n }\n const selfContext = self;\n return (typeof selfContext.WorkerGlobalScope !== 'undefined' &&\n self instanceof selfContext.WorkerGlobalScope);\n};\n","import { Observable } from '../Observable';\nimport { ObservableInput, SchedulerLike, ObservedValueOf } from '../types';\nimport { scheduled } from '../scheduled/scheduled';\nimport { innerFrom } from './innerFrom';\n\nexport function from<O extends ObservableInput<any>>(input: O): Observable<ObservedValueOf<O>>;\n/** @deprecated The `scheduler` parameter will be removed in v8. Use `scheduled`. Details: https://rxjs.dev/deprecations/scheduler-argument */\nexport function from<O extends ObservableInput<any>>(input: O, scheduler: SchedulerLike | undefined): Observable<ObservedValueOf<O>>;\n\n/**\n * Creates an Observable from an Array, an array-like object, a Promise, an iterable object, or an Observable-like object.\n *\n * <span class=\"informal\">Converts almost anything to an Observable.</span>\n *\n * \n *\n * `from` converts various other objects and data types into Observables. It also converts a Promise, an array-like, or an\n * <a href=\"https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols#iterable\" target=\"_blank\">iterable</a>\n * object into an Observable that emits the items in that promise, array, or iterable. A String, in this context, is treated\n * as an array of characters. Observable-like objects (contains a function named with the ES2015 Symbol for Observable) can also be\n * converted through this operator.\n *\n * ## Examples\n *\n * Converts an array to an Observable\n *\n * ```ts\n * import { from } from 'rxjs';\n *\n * const array = [10, 20, 30];\n * const result = from(array);\n *\n * result.subscribe(x => console.log(x));\n *\n * // Logs:\n * // 10\n * // 20\n * // 30\n * ```\n *\n * Convert an infinite iterable (from a generator) to an Observable\n *\n * ```ts\n * import { from, take } from 'rxjs';\n *\n * function* generateDoubles(seed) {\n * let i = seed;\n * while (true) {\n * yield i;\n * i = 2 * i; // double it\n * }\n * }\n *\n * const iterator = generateDoubles(3);\n * const result = from(iterator).pipe(take(10));\n *\n * result.subscribe(x => console.log(x));\n *\n * // Logs:\n * // 3\n * // 6\n * // 12\n * // 24\n * // 48\n * // 96\n * // 192\n * // 384\n * // 768\n * // 1536\n * ```\n *\n * With `asyncScheduler`\n *\n * ```ts\n * import { from, asyncScheduler } from 'rxjs';\n *\n * console.log('start');\n *\n * const array = [10, 20, 30];\n * const result = from(array, asyncScheduler);\n *\n * result.subscribe(x => console.log(x));\n *\n * console.log('end');\n *\n * // Logs:\n * // 'start'\n * // 'end'\n * // 10\n * // 20\n * // 30\n * ```\n *\n * @see {@link fromEvent}\n * @see {@link fromEventPattern}\n *\n * @param {ObservableInput<T>} A subscription object, a Promise, an Observable-like,\n * an Array, an iterable, or an array-like object to be converted.\n * @param {SchedulerLike} An optional {@link SchedulerLike} on which to schedule the emission of values.\n * @return {Observable<T>}\n */\nexport function from<T>(input: ObservableInput<T>, scheduler?: SchedulerLike): Observable<T> {\n return scheduler ? scheduled(input, scheduler) : innerFrom(input);\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Reachability } from '@aws-amplify/core/internals/utils';\nexport const ReachabilityMonitor = () => new Reachability().networkMonitor();\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Observable, filter, map } from 'rxjs';\nimport { ConnectionState } from '../types/PubSub';\nimport { ReachabilityMonitor } from './ReachabilityMonitor';\nexport const CONNECTION_CHANGE = {\n KEEP_ALIVE_MISSED: { keepAliveState: 'unhealthy' },\n KEEP_ALIVE: { keepAliveState: 'healthy' },\n CONNECTION_ESTABLISHED: { connectionState: 'connected' },\n CONNECTION_FAILED: {\n intendedConnectionState: 'disconnected',\n connectionState: 'disconnected',\n },\n CLOSING_CONNECTION: { intendedConnectionState: 'disconnected' },\n OPENING_CONNECTION: {\n intendedConnectionState: 'connected',\n connectionState: 'connecting',\n },\n CLOSED: { connectionState: 'disconnected' },\n ONLINE: { networkState: 'connected' },\n OFFLINE: { networkState: 'disconnected' },\n};\nexport class ConnectionStateMonitor {\n constructor() {\n this._networkMonitoringSubscription = undefined;\n this._linkedConnectionState = {\n networkState: 'connected',\n connectionState: 'disconnected',\n intendedConnectionState: 'disconnected',\n keepAliveState: 'healthy',\n };\n // Attempt to update the state with the current actual network state\n this._initialNetworkStateSubscription = ReachabilityMonitor().subscribe(({ online }) => {\n this.record(online ? CONNECTION_CHANGE.ONLINE : CONNECTION_CHANGE.OFFLINE);\n this._initialNetworkStateSubscription?.unsubscribe();\n });\n this._linkedConnectionStateObservable =\n new Observable(connectionStateObserver => {\n connectionStateObserver.next(this._linkedConnectionState);\n this._linkedConnectionStateObserver = connectionStateObserver;\n });\n }\n /**\n * Turn network state monitoring on if it isn't on already\n */\n enableNetworkMonitoring() {\n // If no initial network state was discovered, stop trying\n this._initialNetworkStateSubscription?.unsubscribe();\n // Maintain the network state based on the reachability monitor\n if (this._networkMonitoringSubscription === undefined) {\n this._networkMonitoringSubscription = ReachabilityMonitor().subscribe(({ online }) => {\n this.record(online ? CONNECTION_CHANGE.ONLINE : CONNECTION_CHANGE.OFFLINE);\n });\n }\n }\n /**\n * Turn network state monitoring off if it isn't off already\n */\n disableNetworkMonitoring() {\n this._networkMonitoringSubscription?.unsubscribe();\n this._networkMonitoringSubscription = undefined;\n }\n /**\n * Get the observable that allows us to monitor the connection state\n *\n * @returns {Observable<ConnectionState>} - The observable that emits ConnectionState updates\n */\n get connectionStateObservable() {\n let previous;\n // The linked state aggregates state changes to any of the network, connection,\n // intendedConnection and keepAliveHealth. Some states will change these independent\n // states without changing the overall connection state.\n // After translating from linked states to ConnectionState, then remove any duplicates\n return this._linkedConnectionStateObservable\n .pipe(map(value => {\n return this.connectionStatesTranslator(value);\n }))\n .pipe(filter(current => {\n const toInclude = current !== previous;\n previous = current;\n return toInclude;\n }));\n }\n /*\n * Updates local connection state and emits the full state to the observer.\n */\n record(statusUpdates) {\n // Maintain the network monitor\n if (statusUpdates.intendedConnectionState === 'connected') {\n this.enableNetworkMonitoring();\n }\n else if (statusUpdates.intendedConnectionState === 'disconnected') {\n this.disableNetworkMonitoring();\n }\n // Maintain the socket state\n const newSocketStatus = {\n ...this._linkedConnectionState,\n ...statusUpdates,\n };\n this._linkedConnectionState = { ...newSocketStatus };\n this._linkedConnectionStateObserver?.next(this._linkedConnectionState);\n }\n /*\n * Translate the ConnectionState structure into a specific ConnectionState string literal union\n */\n connectionStatesTranslator({ connectionState, networkState, intendedConnectionState, keepAliveState, }) {\n if (connectionState === 'connected' && networkState === 'disconnected')\n return ConnectionState.ConnectedPendingNetwork;\n if (connectionState === 'connected' &&\n intendedConnectionState === 'disconnected')\n return ConnectionState.ConnectedPendingDisconnect;\n if (connectionState === 'disconnected' &&\n intendedConnectionState === 'connected' &&\n networkState === 'disconnected')\n return ConnectionState.ConnectionDisruptedPendingNetwork;\n if (connectionState === 'disconnected' &&\n intendedConnectionState === 'connected')\n return ConnectionState.ConnectionDisrupted;\n if (connectionState === 'connected' && keepAliveState === 'unhealthy')\n return ConnectionState.ConnectedPendingKeepAlive;\n // All remaining states directly correspond to the connection state\n if (connectionState === 'connecting')\n return ConnectionState.Connecting;\n if (connectionState === 'disconnected')\n return ConnectionState.Disconnected;\n return ConnectionState.Connected;\n }\n}\n","import { OperatorFunction, MonoTypeOperatorFunction, TruthyTypesOf } from '../types';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\n\n/** @deprecated Use a closure instead of a `thisArg`. Signatures accepting a `thisArg` will be removed in v8. */\nexport function filter<T, S extends T, A>(predicate: (this: A, value: T, index: number) => value is S, thisArg: A): OperatorFunction<T, S>;\nexport function filter<T, S extends T>(predicate: (value: T, index: number) => value is S): OperatorFunction<T, S>;\nexport function filter<T>(predicate: BooleanConstructor): OperatorFunction<T, TruthyTypesOf<T>>;\n/** @deprecated Use a closure instead of a `thisArg`. Signatures accepting a `thisArg` will be removed in v8. */\nexport function filter<T, A>(predicate: (this: A, value: T, index: number) => boolean, thisArg: A): MonoTypeOperatorFunction<T>;\nexport function filter<T>(predicate: (value: T, index: number) => boolean): MonoTypeOperatorFunction<T>;\n\n/**\n * Filter items emitted by the source Observable by only emitting those that\n * satisfy a specified predicate.\n *\n * <span class=\"informal\">Like\n * [Array.prototype.filter()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter),\n * it only emits a value from the source if it passes a criterion function.</span>\n *\n * \n *\n * Similar to the well-known `Array.prototype.filter` method, this operator\n * takes values from the source Observable, passes them through a `predicate`\n * function and only emits those values that yielded `true`.\n *\n * ## Example\n *\n * Emit only click events whose target was a DIV element\n *\n * ```ts\n * import { fromEvent, filter } from 'rxjs';\n *\n * const div = document.createElement('div');\n * div.style.cssText = 'width: 200px; height: 200px; background: #09c;';\n * document.body.appendChild(div);\n *\n * const clicks = fromEvent(document, 'click');\n * const clicksOnDivs = clicks.pipe(filter(ev => (<HTMLElement>ev.target).tagName === 'DIV'));\n * clicksOnDivs.subscribe(x => console.log(x));\n * ```\n *\n * @see {@link distinct}\n * @see {@link distinctUntilChanged}\n * @see {@link distinctUntilKeyChanged}\n * @see {@link ignoreElements}\n * @see {@link partition}\n * @see {@link skip}\n *\n * @param predicate A function that\n * evaluates each value emitted by the source Observable. If it returns `true`,\n * the value is emitted, if `false` the value is not passed to the output\n * Observable. The `index` parameter is the number `i` for the i-th source\n * emission that has happened since the subscription, starting from the number\n * `0`.\n * @param thisArg An optional argument to determine the value of `this`\n * in the `predicate` function.\n * @return A function that returns an Observable that emits items from the\n * source Observable that satisfy the specified `predicate`.\n */\nexport function filter<T>(predicate: (value: T, index: number) => boolean, thisArg?: any): MonoTypeOperatorFunction<T> {\n return operate((source, subscriber) => {\n // An index passed to our predicate function on each call.\n let index = 0;\n\n // Subscribe to the source, all errors and completions are\n // forwarded to the consumer.\n source.subscribe(\n // Call the predicate with the appropriate `this` context,\n // if the predicate returns `true`, then send the value\n // to the consumer.\n createOperatorSubscriber(subscriber, (value) => predicate.call(thisArg, value, index++) && subscriber.next(value))\n );\n });\n}\n","import { RECONNECT_DELAY, RECONNECT_INTERVAL } from '../Providers/constants';\nexport var ReconnectEvent;\n(function (ReconnectEvent) {\n ReconnectEvent[\"START_RECONNECT\"] = \"START_RECONNECT\";\n ReconnectEvent[\"HALT_RECONNECT\"] = \"HALT_RECONNECT\";\n})(ReconnectEvent || (ReconnectEvent = {}));\n/**\n * Captures the reconnect event logic used to determine when to reconnect to PubSub providers.\n * Reconnnect attempts are delayed by 5 seconds to let the interface settle.\n * Attempting to reconnect only once creates unrecoverable states when the network state isn't\n * supported by the browser, so this keeps retrying every minute until halted.\n */\nexport class ReconnectionMonitor {\n constructor() {\n this.reconnectObservers = [];\n }\n /**\n * Add reconnect observer to the list of observers to alert on reconnect\n */\n addObserver(reconnectObserver) {\n this.reconnectObservers.push(reconnectObserver);\n }\n /**\n * Given a reconnect event, start the appropriate behavior\n */\n record(event) {\n if (event === ReconnectEvent.START_RECONNECT) {\n // If the reconnection hasn't been started\n if (this.reconnectSetTimeoutId === undefined &&\n this.reconnectIntervalId === undefined) {\n this.reconnectSetTimeoutId = setTimeout(() => {\n // Reconnect now\n this._triggerReconnect();\n // Retry reconnect every periodically until it works\n this.reconnectIntervalId = setInterval(() => {\n this._triggerReconnect();\n }, RECONNECT_INTERVAL);\n }, RECONNECT_DELAY);\n }\n }\n if (event === ReconnectEvent.HALT_RECONNECT) {\n if (this.reconnectIntervalId) {\n clearInterval(this.reconnectIntervalId);\n this.reconnectIntervalId = undefined;\n }\n if (this.reconnectSetTimeoutId) {\n clearTimeout(this.reconnectSetTimeoutId);\n this.reconnectSetTimeoutId = undefined;\n }\n }\n }\n /**\n * Complete all reconnect observers\n */\n close() {\n this.reconnectObservers.forEach(reconnectObserver => {\n reconnectObserver.complete?.();\n });\n }\n _triggerReconnect() {\n this.reconnectObservers.forEach(reconnectObserver => {\n reconnectObserver.next?.();\n });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Observable } from 'rxjs';\nimport { GraphQLError } from 'graphql';\nimport { ConsoleLogger, Hub, fetchAuthSession, } from '@aws-amplify/core';\nimport { signRequest } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, NonRetryableError, USER_AGENT_HEADER, amplifyUuid, base64Encoder, getAmplifyUserAgent, isNonRetryableError, jitteredExponentialRetry, } from '@aws-amplify/core/internals/utils';\nimport { CONTROL_MSG, ConnectionState, } from '../../types/PubSub';\nimport { AMPLIFY_SYMBOL, AWS_APPSYNC_REALTIME_HEADERS, CONNECTION_INIT_TIMEOUT, CONNECTION_STATE_CHANGE, DEFAULT_KEEP_ALIVE_ALERT_TIMEOUT, DEFAULT_KEEP_ALIVE_TIMEOUT, MAX_DELAY_MS, MESSAGE_TYPES, NON_RETRYABLE_CODES, SOCKET_STATUS, START_ACK_TIMEOUT, SUBSCRIPTION_STATUS, } from '../constants';\nimport { CONNECTION_CHANGE, ConnectionStateMonitor, } from '../../utils/ConnectionStateMonitor';\nimport { ReconnectEvent, ReconnectionMonitor, } from '../../utils/ReconnectionMonitor';\nconst logger = new ConsoleLogger('AWSAppSyncRealTimeProvider');\nconst dispatchApiEvent = (payload) => {\n Hub.dispatch('api', payload, 'PubSub', AMPLIFY_SYMBOL);\n};\nconst standardDomainPattern = /^https:\\/\\/\\w{26}\\.appsync-api\\.\\w{2}(?:(?:-\\w{2,})+)-\\d\\.amazonaws.com(?:\\.cn)?\\/graphql$/i;\nconst customDomainPath = '/realtime';\nexport class AWSAppSyncRealTimeProvider {\n constructor() {\n this.socketStatus = SOCKET_STATUS.CLOSED;\n this.keepAliveTimeout = DEFAULT_KEEP_ALIVE_TIMEOUT;\n this.subscriptionObserverMap = new Map();\n this.promiseArray = [];\n this.connectionStateMonitor = new ConnectionStateMonitor();\n this.reconnectionMonitor = new ReconnectionMonitor();\n // Monitor the connection state and pass changes along to Hub\n this.connectionStateMonitorSubscription =\n this.connectionStateMonitor.connectionStateObservable.subscribe(connectionState => {\n dispatchApiEvent({\n event: CONNECTION_STATE_CHANGE,\n data: {\n provider: this,\n connectionState,\n },\n message: `Connection state is ${connectionState}`,\n });\n this.connectionState = connectionState;\n // Trigger START_RECONNECT when the connection is disrupted\n if (connectionState === ConnectionState.ConnectionDisrupted) {\n this.reconnectionMonitor.record(ReconnectEvent.START_RECONNECT);\n }\n // Trigger HALT_RECONNECT to halt reconnection attempts when the state is anything other than\n // ConnectionDisrupted or Connecting\n if ([\n ConnectionState.Connected,\n ConnectionState.ConnectedPendingDisconnect,\n ConnectionState.ConnectedPendingKeepAlive,\n ConnectionState.ConnectedPendingNetwork,\n ConnectionState.ConnectionDisruptedPendingNetwork,\n ConnectionState.Disconnected,\n ].includes(connectionState)) {\n this.reconnectionMonitor.record(ReconnectEvent.HALT_RECONNECT);\n }\n });\n }\n /**\n * Mark the socket closed and release all active listeners\n */\n close() {\n // Mark the socket closed both in status and the connection monitor\n this.socketStatus = SOCKET_STATUS.CLOSED;\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CONNECTION_FAILED);\n // Turn off the subscription monitor Hub publishing\n this.connectionStateMonitorSubscription.unsubscribe();\n // Complete all reconnect observers\n this.reconnectionMonitor.close();\n }\n getNewWebSocket(url, protocol) {\n return new WebSocket(url, protocol);\n }\n getProviderName() {\n return 'AWSAppSyncRealTimeProvider';\n }\n // Check if url matches standard domain pattern\n isCustomDomain(url) {\n return url.match(standardDomainPattern) === null;\n }\n subscribe(options, customUserAgentDetails) {\n const { appSyncGraphqlEndpoint, region, query, variables, authenticationType, additionalHeaders, apiKey, authToken, libraryConfigHeaders, } = options || {};\n return new Observable(observer => {\n if (!options || !appSyncGraphqlEndpoint) {\n observer.error({\n errors: [\n {\n ...new GraphQLError(`Subscribe only available for AWS AppSync endpoint`),\n },\n ],\n });\n observer.complete();\n }\n else {\n let subscriptionStartActive = false;\n const subscriptionId = amplifyUuid();\n const startSubscription = () => {\n if (!subscriptionStartActive) {\n subscriptionStartActive = true;\n const startSubscriptionPromise = this._startSubscriptionWithAWSAppSyncRealTime({\n options: {\n query,\n variables,\n region,\n authenticationType,\n appSyncGraphqlEndpoint,\n additionalHeaders,\n apiKey,\n authToken,\n libraryConfigHeaders,\n },\n observer,\n subscriptionId,\n customUserAgentDetails,\n }).catch(err => {\n logger.debug(`${CONTROL_MSG.REALTIME_SUBSCRIPTION_INIT_ERROR}: ${err}`);\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSED);\n });\n startSubscriptionPromise.finally(() => {\n subscriptionStartActive = false;\n });\n }\n };\n // Add an observable to the reconnection list to manage reconnection for this subscription\n const reconnectSubscription = new Observable(reconnectSubscriptionObserver => {\n this.reconnectionMonitor.addObserver(reconnectSubscriptionObserver);\n }).subscribe(() => {\n startSubscription();\n });\n startSubscription();\n return async () => {\n // Cleanup reconnection subscription\n reconnectSubscription?.unsubscribe();\n // Cleanup after unsubscribing or observer.complete was called after _startSubscriptionWithAWSAppSyncRealTime\n try {\n // Waiting that subscription has been connected before trying to unsubscribe\n await this._waitForSubscriptionToBeConnected(subscriptionId);\n const { subscriptionState } = this.subscriptionObserverMap.get(subscriptionId) || {};\n if (!subscriptionState) {\n // subscription already unsubscribed\n return;\n }\n if (subscriptionState === SUBSCRIPTION_STATUS.CONNECTED) {\n this._sendUnsubscriptionMessage(subscriptionId);\n }\n else {\n throw new Error('Subscription never connected');\n }\n }\n catch (err) {\n logger.debug(`Error while unsubscribing ${err}`);\n }\n finally {\n this._removeSubscriptionObserver(subscriptionId);\n }\n };\n }\n });\n }\n async _startSubscriptionWithAWSAppSyncRealTime({ options, observer, subscriptionId, customUserAgentDetails, }) {\n const { appSyncGraphqlEndpoint, authenticationType, query, variables, apiKey, region, libraryConfigHeaders = () => ({}), additionalHeaders = {}, authToken, } = options;\n let additionalCustomHeaders = {};\n if (typeof additionalHeaders === 'function') {\n const requestOptions = {\n url: appSyncGraphqlEndpoint || '',\n queryString: query || '',\n };\n additionalCustomHeaders = await additionalHeaders(requestOptions);\n }\n else {\n additionalCustomHeaders = additionalHeaders;\n }\n // if an authorization header is set, have the explicit authToken take precedence\n if (authToken) {\n additionalCustomHeaders = {\n ...additionalCustomHeaders,\n Authorization: authToken,\n };\n }\n const subscriptionState = SUBSCRIPTION_STATUS.PENDING;\n const data = {\n query,\n variables,\n };\n // Having a subscription id map will make it simple to forward messages received\n this.subscriptionObserverMap.set(subscriptionId, {\n observer,\n query: query ?? '',\n variables: variables ?? {},\n subscriptionState,\n startAckTimeoutId: undefined,\n });\n // Preparing payload for subscription message\n const dataString = JSON.stringify(data);\n const headerObj = {\n ...(await this._awsRealTimeHeaderBasedAuth({\n apiKey,\n appSyncGraphqlEndpoint,\n authenticationType,\n payload: dataString,\n canonicalUri: '',\n region,\n additionalCustomHeaders,\n })),\n ...(await libraryConfigHeaders()),\n ...additionalCustomHeaders,\n [USER_AGENT_HEADER]: getAmplifyUserAgent(customUserAgentDetails),\n };\n const subscriptionMessage = {\n id: subscriptionId,\n payload: {\n data: dataString,\n extensions: {\n authorization: {\n ...headerObj,\n },\n },\n },\n type: MESSAGE_TYPES.GQL_START,\n };\n const stringToAWSRealTime = JSON.stringify(subscriptionMessage);\n try {\n this.connectionStateMonitor.record(CONNECTION_CHANGE.OPENING_CONNECTION);\n await this._initializeWebSocketConnection({\n apiKey,\n appSyncGraphqlEndpoint,\n authenticationType,\n region,\n additionalCustomHeaders,\n });\n }\n catch (err) {\n this._logStartSubscriptionError(subscriptionId, observer, err);\n return;\n }\n // Potential race condition can occur when unsubscribe is called during _initializeWebSocketConnection.\n // E.g.unsubscribe gets invoked prior to finishing WebSocket handshake or START_ACK.\n // Both subscriptionFailedCallback and subscriptionReadyCallback are used to synchronized this.\n const { subscriptionFailedCallback, subscriptionReadyCallback } = this.subscriptionObserverMap.get(subscriptionId) ?? {};\n // This must be done before sending the message in order to be listening immediately\n this.subscriptionObserverMap.set(subscriptionId, {\n observer,\n subscriptionState,\n query: query ?? '',\n variables: variables ?? {},\n subscriptionReadyCallback,\n subscriptionFailedCallback,\n startAckTimeoutId: setTimeout(() => {\n this._timeoutStartSubscriptionAck(subscriptionId);\n }, START_ACK_TIMEOUT),\n });\n if (this.awsRealTimeSocket) {\n this.awsRealTimeSocket.send(stringToAWSRealTime);\n }\n }\n // Log logic for start subscription failures\n _logStartSubscriptionError(subscriptionId, observer, err) {\n logger.debug({ err });\n const message = String(err.message ?? '');\n // Resolving to give the state observer time to propogate the update\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSED);\n // Capture the error only when the network didn't cause disruption\n if (this.connectionState !== ConnectionState.ConnectionDisruptedPendingNetwork) {\n // When the error is non-retriable, error out the observable\n if (isNonRetryableError(err)) {\n observer.error({\n errors: [\n {\n ...new GraphQLError(`${CONTROL_MSG.CONNECTION_FAILED}: ${message}`),\n },\n ],\n });\n }\n else {\n logger.debug(`${CONTROL_MSG.CONNECTION_FAILED}: ${message}`);\n }\n const { subscriptionFailedCallback } = this.subscriptionObserverMap.get(subscriptionId) || {};\n // Notify concurrent unsubscription\n if (typeof subscriptionFailedCallback === 'function') {\n subscriptionFailedCallback();\n }\n }\n }\n // Waiting that subscription has been connected before trying to unsubscribe\n async _waitForSubscriptionToBeConnected(subscriptionId) {\n const subscriptionObserver = this.subscriptionObserverMap.get(subscriptionId);\n if (subscriptionObserver) {\n const { subscriptionState } = subscriptionObserver;\n // This in case unsubscribe is invoked before sending start subscription message\n if (subscriptionState === SUBSCRIPTION_STATUS.PENDING) {\n return new Promise((resolve, reject) => {\n const { observer, subscriptionState: observedSubscriptionState, variables, query, } = subscriptionObserver;\n this.subscriptionObserverMap.set(subscriptionId, {\n observer,\n subscriptionState: observedSubscriptionState,\n variables,\n query,\n subscriptionReadyCallback: resolve,\n subscriptionFailedCallback: reject,\n });\n });\n }\n }\n }\n _sendUnsubscriptionMessage(subscriptionId) {\n try {\n if (this.awsRealTimeSocket &&\n this.awsRealTimeSocket.readyState === WebSocket.OPEN &&\n this.socketStatus === SOCKET_STATUS.READY) {\n // Preparing unsubscribe message to stop receiving messages for that subscription\n const unsubscribeMessage = {\n id: subscriptionId,\n type: MESSAGE_TYPES.GQL_STOP,\n };\n const stringToAWSRealTime = JSON.stringify(unsubscribeMessage);\n this.awsRealTimeSocket.send(stringToAWSRealTime);\n }\n }\n catch (err) {\n // If GQL_STOP is not sent because of disconnection issue, then there is nothing the client can do\n logger.debug({ err });\n }\n }\n _removeSubscriptionObserver(subscriptionId) {\n this.subscriptionObserverMap.delete(subscriptionId);\n // Verifying 1000ms after removing subscription in case there are new subscription unmount/mount\n setTimeout(this._closeSocketIfRequired.bind(this), 1000);\n }\n _closeSocketIfRequired() {\n if (this.subscriptionObserverMap.size > 0) {\n // Active subscriptions on the WebSocket\n return;\n }\n if (!this.awsRealTimeSocket) {\n this.socketStatus = SOCKET_STATUS.CLOSED;\n return;\n }\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSING_CONNECTION);\n if (this.awsRealTimeSocket.bufferedAmount > 0) {\n // Still data on the WebSocket\n setTimeout(this._closeSocketIfRequired.bind(this), 1000);\n }\n else {\n logger.debug('closing WebSocket...');\n if (this.keepAliveTimeoutId) {\n clearTimeout(this.keepAliveTimeoutId);\n }\n if (this.keepAliveAlertTimeoutId) {\n clearTimeout(this.keepAliveAlertTimeoutId);\n }\n const tempSocket = this.awsRealTimeSocket;\n // Cleaning callbacks to avoid race condition, socket still exists\n tempSocket.onclose = null;\n tempSocket.onerror = null;\n tempSocket.close(1000);\n this.awsRealTimeSocket = undefined;\n this.socketStatus = SOCKET_STATUS.CLOSED;\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSED);\n }\n }\n _handleIncomingSubscriptionMessage(message) {\n if (typeof message.data !== 'string') {\n return;\n }\n logger.debug(`subscription message from AWS AppSync RealTime: ${message.data}`);\n const { id = '', payload, type, } = JSON.parse(String(message.data));\n const { observer = null, query = '', variables = {}, startAckTimeoutId, subscriptionReadyCallback, subscriptionFailedCallback, } = this.subscriptionObserverMap.get(id) || {};\n logger.debug({ id, observer, query, variables });\n if (type === MESSAGE_TYPES.GQL_DATA && payload && payload.data) {\n if (observer) {\n observer.next(payload);\n }\n else {\n logger.debug(`observer not found for id: ${id}`);\n }\n return;\n }\n if (type === MESSAGE_TYPES.GQL_START_ACK) {\n logger.debug(`subscription ready for ${JSON.stringify({ query, variables })}`);\n if (typeof subscriptionReadyCallback === 'function') {\n subscriptionReadyCallback();\n }\n if (startAckTimeoutId)\n clearTimeout(startAckTimeoutId);\n dispatchApiEvent({\n event: CONTROL_MSG.SUBSCRIPTION_ACK,\n data: { query, variables },\n message: 'Connection established for subscription',\n });\n const subscriptionState = SUBSCRIPTION_STATUS.CONNECTED;\n if (observer) {\n this.subscriptionObserverMap.set(id, {\n observer,\n query,\n variables,\n startAckTimeoutId: undefined,\n subscriptionState,\n subscriptionReadyCallback,\n subscriptionFailedCallback,\n });\n }\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CONNECTION_ESTABLISHED);\n return;\n }\n if (type === MESSAGE_TYPES.GQL_CONNECTION_KEEP_ALIVE) {\n if (this.keepAliveTimeoutId)\n clearTimeout(this.keepAliveTimeoutId);\n if (this.keepAliveAlertTimeoutId)\n clearTimeout(this.keepAliveAlertTimeoutId);\n this.keepAliveTimeoutId = setTimeout(() => {\n this._errorDisconnect(CONTROL_MSG.TIMEOUT_DISCONNECT);\n }, this.keepAliveTimeout);\n this.keepAliveAlertTimeoutId = setTimeout(() => {\n this.connectionStateMonitor.record(CONNECTION_CHANGE.KEEP_ALIVE_MISSED);\n }, DEFAULT_KEEP_ALIVE_ALERT_TIMEOUT);\n this.connectionStateMonitor.record(CONNECTION_CHANGE.KEEP_ALIVE);\n return;\n }\n if (type === MESSAGE_TYPES.GQL_ERROR) {\n const subscriptionState = SUBSCRIPTION_STATUS.FAILED;\n if (observer) {\n this.subscriptionObserverMap.set(id, {\n observer,\n query,\n variables,\n startAckTimeoutId,\n subscriptionReadyCallback,\n subscriptionFailedCallback,\n subscriptionState,\n });\n logger.debug(`${CONTROL_MSG.CONNECTION_FAILED}: ${JSON.stringify(payload)}`);\n observer.error({\n errors: [\n {\n ...new GraphQLError(`${CONTROL_MSG.CONNECTION_FAILED}: ${JSON.stringify(payload)}`),\n },\n ],\n });\n if (startAckTimeoutId)\n clearTimeout(startAckTimeoutId);\n if (typeof subscriptionFailedCallback === 'function') {\n subscriptionFailedCallback();\n }\n }\n }\n }\n _errorDisconnect(msg) {\n logger.debug(`Disconnect error: ${msg}`);\n if (this.awsRealTimeSocket) {\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSED);\n this.awsRealTimeSocket.close();\n }\n this.socketStatus = SOCKET_STATUS.CLOSED;\n }\n _timeoutStartSubscriptionAck(subscriptionId) {\n const subscriptionObserver = this.subscriptionObserverMap.get(subscriptionId);\n if (subscriptionObserver) {\n const { observer, query, variables } = subscriptionObserver;\n if (!observer) {\n return;\n }\n this.subscriptionObserverMap.set(subscriptionId, {\n observer,\n query,\n variables,\n subscriptionState: SUBSCRIPTION_STATUS.FAILED,\n });\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSED);\n logger.debug('timeoutStartSubscription', JSON.stringify({ query, variables }));\n }\n }\n _initializeWebSocketConnection({ appSyncGraphqlEndpoint, authenticationType, apiKey, region, additionalCustomHeaders, }) {\n if (this.socketStatus === SOCKET_STATUS.READY) {\n return;\n }\n // TODO(Eslint): refactor to now use async function as the promise executor\n // eslint-disable-next-line no-async-promise-executor\n return new Promise(async (resolve, reject) => {\n this.promiseArray.push({ res: resolve, rej: reject });\n if (this.socketStatus === SOCKET_STATUS.CLOSED) {\n try {\n this.socketStatus = SOCKET_STATUS.CONNECTING;\n const payloadString = '{}';\n const authHeader = await this._awsRealTimeHeaderBasedAuth({\n authenticationType,\n payload: payloadString,\n canonicalUri: '/connect',\n apiKey,\n appSyncGraphqlEndpoint,\n region,\n additionalCustomHeaders,\n });\n const headerString = authHeader ? JSON.stringify(authHeader) : '';\n const headerQs = base64Encoder.convert(headerString);\n const payloadQs = base64Encoder.convert(payloadString);\n let discoverableEndpoint = appSyncGraphqlEndpoint ?? '';\n if (this.isCustomDomain(discoverableEndpoint)) {\n discoverableEndpoint =\n discoverableEndpoint.concat(customDomainPath);\n }\n else {\n discoverableEndpoint = discoverableEndpoint\n .replace('appsync-api', 'appsync-realtime-api')\n .replace('gogi-beta', 'grt-beta');\n }\n // Creating websocket url with required query strings\n const protocol = 'wss://';\n discoverableEndpoint = discoverableEndpoint\n .replace('https://', protocol)\n .replace('http://', protocol);\n const awsRealTimeUrl = `${discoverableEndpoint}?header=${headerQs}&payload=${payloadQs}`;\n await this._initializeRetryableHandshake(awsRealTimeUrl);\n this.promiseArray.forEach(({ res }) => {\n logger.debug('Notifying connection successful');\n res();\n });\n this.socketStatus = SOCKET_STATUS.READY;\n this.promiseArray = [];\n }\n catch (err) {\n logger.debug('Connection exited with', err);\n this.promiseArray.forEach(({ rej }) => {\n rej(err);\n });\n this.promiseArray = [];\n if (this.awsRealTimeSocket &&\n this.awsRealTimeSocket.readyState === WebSocket.OPEN) {\n this.awsRealTimeSocket.close(3001);\n }\n this.awsRealTimeSocket = undefined;\n this.socketStatus = SOCKET_STATUS.CLOSED;\n }\n }\n });\n }\n async _initializeRetryableHandshake(awsRealTimeUrl) {\n logger.debug(`Initializaling retryable Handshake`);\n await jitteredExponentialRetry(this._initializeHandshake.bind(this), [awsRealTimeUrl], MAX_DELAY_MS);\n }\n async _initializeHandshake(awsRealTimeUrl) {\n logger.debug(`Initializing handshake ${awsRealTimeUrl}`);\n // Because connecting the socket is async, is waiting until connection is open\n // Step 1: connect websocket\n try {\n await (() => {\n return new Promise((resolve, reject) => {\n const newSocket = this.getNewWebSocket(awsRealTimeUrl, 'graphql-ws');\n newSocket.onerror = () => {\n logger.debug(`WebSocket connection error`);\n };\n newSocket.onclose = () => {\n reject(new Error('Connection handshake error'));\n };\n newSocket.onopen = () => {\n this.awsRealTimeSocket = newSocket;\n resolve();\n };\n });\n })();\n // Step 2: wait for ack from AWS AppSyncReaTime after sending init\n await (() => {\n return new Promise((resolve, reject) => {\n if (this.awsRealTimeSocket) {\n let ackOk = false;\n this.awsRealTimeSocket.onerror = error => {\n logger.debug(`WebSocket error ${JSON.stringify(error)}`);\n };\n this.awsRealTimeSocket.onclose = event => {\n logger.debug(`WebSocket closed ${event.reason}`);\n reject(new Error(JSON.stringify(event)));\n };\n this.awsRealTimeSocket.onmessage = (message) => {\n if (typeof message.data !== 'string') {\n return;\n }\n logger.debug(`subscription message from AWS AppSyncRealTime: ${message.data} `);\n const data = JSON.parse(message.data);\n const { type, payload: { connectionTimeoutMs = DEFAULT_KEEP_ALIVE_TIMEOUT, } = {}, } = data;\n if (type === MESSAGE_TYPES.GQL_CONNECTION_ACK) {\n ackOk = true;\n if (this.awsRealTimeSocket) {\n this.keepAliveTimeout = connectionTimeoutMs;\n this.awsRealTimeSocket.onmessage =\n this._handleIncomingSubscriptionMessage.bind(this);\n this.awsRealTimeSocket.onerror = err => {\n logger.debug(err);\n this._errorDisconnect(CONTROL_MSG.CONNECTION_CLOSED);\n };\n this.awsRealTimeSocket.onclose = event => {\n logger.debug(`WebSocket closed ${event.reason}`);\n this._errorDisconnect(CONTROL_MSG.CONNECTION_CLOSED);\n };\n }\n resolve('Cool, connected to AWS AppSyncRealTime');\n return;\n }\n if (type === MESSAGE_TYPES.GQL_CONNECTION_ERROR) {\n const { payload: { errors: [{ errorType = '', errorCode = 0 } = {}] = [], } = {}, } = data;\n // TODO(Eslint): refactor to reject an Error object instead of a plain object\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({ errorType, errorCode });\n }\n };\n const gqlInit = {\n type: MESSAGE_TYPES.GQL_CONNECTION_INIT,\n };\n this.awsRealTimeSocket.send(JSON.stringify(gqlInit));\n const checkAckOk = (targetAckOk) => {\n if (!targetAckOk) {\n this.connectionStateMonitor.record(CONNECTION_CHANGE.CONNECTION_FAILED);\n reject(new Error(`Connection timeout: ack from AWSAppSyncRealTime was not received after ${CONNECTION_INIT_TIMEOUT} ms`));\n }\n };\n setTimeout(() => {\n checkAckOk(ackOk);\n }, CONNECTION_INIT_TIMEOUT);\n }\n });\n })();\n }\n catch (err) {\n const { errorType, errorCode } = err;\n if (NON_RETRYABLE_CODES.includes(errorCode)) {\n throw new NonRetryableError(errorType);\n }\n else if (errorType) {\n throw new Error(errorType);\n }\n else {\n throw err;\n }\n }\n }\n async _awsRealTimeHeaderBasedAuth({ apiKey, authenticationType, payload, canonicalUri, appSyncGraphqlEndpoint, region, additionalCustomHeaders, }) {\n const headerHandler = {\n apiKey: this._awsRealTimeApiKeyHeader.bind(this),\n iam: this._awsRealTimeIAMHeader.bind(this),\n oidc: this._awsAuthTokenHeader.bind(this),\n userPool: this._awsAuthTokenHeader.bind(this),\n lambda: this._customAuthHeader,\n none: this._customAuthHeader,\n };\n if (!authenticationType || !headerHandler[authenticationType]) {\n logger.debug(`Authentication type ${authenticationType} not supported`);\n return undefined;\n }\n else {\n const handler = headerHandler[authenticationType];\n const host = appSyncGraphqlEndpoint\n ? new AmplifyUrl(appSyncGraphqlEndpoint).host\n : undefined;\n logger.debug(`Authenticating with ${JSON.stringify(authenticationType)}`);\n let resolvedApiKey;\n if (authenticationType === 'apiKey') {\n resolvedApiKey = apiKey;\n }\n const result = await handler({\n payload,\n canonicalUri,\n appSyncGraphqlEndpoint,\n apiKey: resolvedApiKey,\n region,\n host,\n additionalCustomHeaders,\n });\n return result;\n }\n }\n async _awsAuthTokenHeader({ host }) {\n const session = await fetchAuthSession();\n return {\n Authorization: session?.tokens?.accessToken?.toString(),\n host,\n };\n }\n async _awsRealTimeApiKeyHeader({ apiKey, host, }) {\n const dt = new Date();\n const dtStr = dt.toISOString().replace(/[:-]|\\.\\d{3}/g, '');\n return {\n host,\n 'x-amz-date': dtStr,\n 'x-api-key': apiKey,\n };\n }\n async _awsRealTimeIAMHeader({ payload, canonicalUri, appSyncGraphqlEndpoint, region, }) {\n const endpointInfo = {\n region,\n service: 'appsync',\n };\n const creds = (await fetchAuthSession()).credentials;\n const request = {\n url: `${appSyncGraphqlEndpoint}${canonicalUri}`,\n data: payload,\n method: 'POST',\n headers: { ...AWS_APPSYNC_REALTIME_HEADERS },\n };\n const signedParams = signRequest({\n headers: request.headers,\n method: request.method,\n url: new AmplifyUrl(request.url),\n body: request.data,\n }, {\n // TODO: What do we need to do to remove these !'s?\n credentials: creds,\n signingRegion: endpointInfo.region,\n signingService: endpointInfo.service,\n });\n return signedParams.headers;\n }\n _customAuthHeader({ host, additionalCustomHeaders, }) {\n /**\n * If `additionalHeaders` was provided to the subscription as a function,\n * the headers that are returned by that function will already have been\n * provided before this function is called.\n */\n if (!additionalCustomHeaders?.Authorization) {\n throw new Error('No auth token specified');\n }\n return {\n Authorization: additionalCustomHeaders.Authorization,\n host,\n };\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError, } from '@aws-amplify/core/internals/utils';\n/**\n * @internal\n */\nexport class GraphQLApiError extends AmplifyError {\n constructor(params) {\n super(params);\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = GraphQLApiError;\n Object.setPrototypeOf(this, GraphQLApiError.prototype);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var APIValidationErrorCode;\n(function (APIValidationErrorCode) {\n APIValidationErrorCode[\"NoAuthSession\"] = \"NoAuthSession\";\n APIValidationErrorCode[\"NoRegion\"] = \"NoRegion\";\n APIValidationErrorCode[\"NoCustomEndpoint\"] = \"NoCustomEndpoint\";\n})(APIValidationErrorCode || (APIValidationErrorCode = {}));\nexport const validationErrorMap = {\n [APIValidationErrorCode.NoAuthSession]: {\n message: 'Auth session should not be empty.',\n },\n // TODO: re-enable when working in all test environments:\n // [APIValidationErrorCode.NoEndpoint]: {\n // \tmessage: 'Missing endpoint',\n // },\n [APIValidationErrorCode.NoRegion]: {\n message: 'Missing region.',\n },\n [APIValidationErrorCode.NoCustomEndpoint]: {\n message: 'Custom endpoint region is present without custom endpoint.',\n },\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '@aws-amplify/core';\nimport { APIValidationErrorCode, assertValidationError } from './errors';\nconst logger = new ConsoleLogger('GraphQLAPI resolveConfig');\n/**\n * @internal\n */\nexport const resolveConfig = (amplify) => {\n const config = amplify.getConfig();\n if (!config.API?.GraphQL) {\n logger.warn('The API configuration is missing. This is likely due to Amplify.configure() not being called prior to generateClient().');\n }\n const { apiKey, customEndpoint, customEndpointRegion, defaultAuthMode, endpoint, region, } = config.API?.GraphQL ?? {};\n // TODO: re-enable when working in all test environments:\n // assertValidationError(!!endpoint, APIValidationErrorCode.NoEndpoint);\n assertValidationError(!(!customEndpoint && customEndpointRegion), APIValidationErrorCode.NoCustomEndpoint);\n return {\n apiKey,\n customEndpoint,\n customEndpointRegion,\n defaultAuthMode,\n endpoint,\n region,\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { GraphQLApiError } from './GraphQLApiError';\nimport { validationErrorMap } from './validation';\n/**\n * @internal\n */\nexport function assertValidationError(assertion, name) {\n const { message, recoverySuggestion } = validationErrorMap[name];\n if (!assertion) {\n throw new GraphQLApiError({ name, message, recoverySuggestion });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */\nexport const resolveLibraryOptions = (amplify) => {\n const headers = amplify.libraryOptions?.API?.GraphQL?.headers;\n const withCredentials = amplify.libraryOptions?.API?.GraphQL?.withCredentials;\n return { headers, withCredentials };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Checks to see if the given response or subscription message contains an\n * Unauthorized error. If it does, it changes the error message to include instructions\n * for the app developer.\n */\nexport function repackageUnauthorizedError(content) {\n if (content.errors && Array.isArray(content.errors)) {\n content.errors.forEach(e => {\n if (isUnauthorizedError(e)) {\n e.message = 'Unauthorized';\n e.recoverySuggestion =\n `If you're calling an Amplify-generated API, make sure ` +\n `to set the \"authMode\" in generateClient({ authMode: '...' }) to the backend authorization ` +\n `rule's auth provider ('apiKey', 'userPool', 'iam', 'oidc', 'lambda')`;\n }\n });\n }\n return content;\n}\nfunction isUnauthorizedError(error) {\n // Error pattern corresponding to appsync calls\n if (error?.originalError?.name?.startsWith('UnauthorizedException')) {\n return true;\n }\n // Error pattern corresponding to appsync subscriptions\n if (error.message?.startsWith('Connection failed:') &&\n error.message?.includes('Permission denied')) {\n return true;\n }\n return false;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { GraphQLAuthError } from '../../types';\nexport const NO_API_KEY = {\n name: 'NoApiKey',\n // ideal: No API key configured.\n message: GraphQLAuthError.NO_API_KEY,\n recoverySuggestion: 'The API request was made with `authMode: \"apiKey\"` but no API Key was passed into `Amplify.configure()`. Review if your API key is passed into the `Amplify.configure()` function.',\n};\nexport const NO_VALID_CREDENTIALS = {\n name: 'NoCredentials',\n // ideal: No auth credentials available.\n message: GraphQLAuthError.NO_CREDENTIALS,\n recoverySuggestion: `The API request was made with \\`authMode: \"iam\"\\` but no authentication credentials are available.\n\nIf you intended to make a request using an authenticated role, review if your user is signed in before making the request.\n\nIf you intend to make a request using an unauthenticated role or also known as \"guest access\", verify if \"Auth.Cognito.allowGuestAccess\" is set to \"true\" in the \\`Amplify.configure()\\` function.`,\n};\nexport const NO_VALID_AUTH_TOKEN = {\n name: 'NoValidAuthTokens',\n // ideal: No valid JWT auth token provided to make the API request..\n message: GraphQLAuthError.NO_FEDERATED_JWT,\n recoverySuggestion: 'If you intended to make an authenticated API request, review if the current user is signed in.',\n};\nexport const NO_SIGNED_IN_USER = {\n name: 'NoSignedUser',\n // ideal: Couldn't retrieve authentication credentials to make the API request.\n message: GraphQLAuthError.NO_CURRENT_USER,\n recoverySuggestion: 'Review the underlying exception field for more details. If you intended to make an authenticated API request, review if the current user is signed in.',\n};\nexport const NO_AUTH_TOKEN_HEADER = {\n name: 'NoAuthorizationHeader',\n // ideal: Authorization header not specified.\n message: GraphQLAuthError.NO_AUTH_TOKEN,\n recoverySuggestion: 'The API request was made with `authMode: \"lambda\"` but no `authToken` is set. Review if a valid authToken is passed into the request options or in the `Amplify.configure()` function.',\n};\nexport const NO_ENDPOINT = {\n name: 'NoEndpoint',\n message: 'No GraphQL endpoint configured in `Amplify.configure()`.',\n recoverySuggestion: 'Review if the GraphQL API endpoint is set in the `Amplify.configure()` function.',\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { GraphQLError } from 'graphql';\nexport const createGraphQLResultWithError = (error) => {\n return {\n data: {},\n errors: [new GraphQLError(error.message, null, null, null, null, error)],\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parse, print, } from 'graphql';\nimport { catchError } from 'rxjs';\nimport { AmplifyUrl, getAmplifyUserAgent, } from '@aws-amplify/core/internals/utils';\nimport { isCancelError as isCancelErrorREST } from '@aws-amplify/api-rest';\nimport { cancel as cancelREST, post, updateRequestToBeCancellable, } from '@aws-amplify/api-rest/internals';\nimport { AWSAppSyncRealTimeProvider } from '../Providers/AWSAppSyncRealTimeProvider';\nimport { resolveConfig, resolveLibraryOptions } from '../utils';\nimport { repackageUnauthorizedError } from '../utils/errors/repackageAuthError';\nimport { NO_API_KEY, NO_AUTH_TOKEN_HEADER, NO_ENDPOINT, NO_SIGNED_IN_USER, NO_VALID_AUTH_TOKEN, NO_VALID_CREDENTIALS, } from '../utils/errors/constants';\nimport { GraphQLApiError, createGraphQLResultWithError } from '../utils/errors';\nimport { isGraphQLResponseWithErrors } from './utils/runtimeTypeGuards/isGraphQLResponseWithErrors';\nconst USER_AGENT_HEADER = 'x-amz-user-agent';\nconst isAmplifyInstance = (amplify) => {\n return typeof amplify !== 'function';\n};\n/**\n * Export Cloud Logic APIs\n */\nexport class InternalGraphQLAPIClass {\n constructor() {\n /**\n * @private\n */\n this.appSyncRealTime = new AWSAppSyncRealTimeProvider();\n this._api = {\n post,\n cancelREST,\n isCancelErrorREST,\n updateRequestToBeCancellable,\n };\n }\n getModuleName() {\n return 'InternalGraphQLAPI';\n }\n async _headerBasedAuth(amplify, authMode, additionalHeaders = {}) {\n const { apiKey } = resolveConfig(amplify);\n let headers = {};\n switch (authMode) {\n case 'apiKey':\n if (!apiKey) {\n throw new GraphQLApiError(NO_API_KEY);\n }\n headers = {\n 'X-Api-Key': apiKey,\n };\n break;\n case 'iam': {\n const session = await amplify.Auth.fetchAuthSession();\n if (session.credentials === undefined) {\n throw new GraphQLApiError(NO_VALID_CREDENTIALS);\n }\n break;\n }\n case 'oidc':\n case 'userPool': {\n let token;\n try {\n token = (await amplify.Auth.fetchAuthSession()).tokens?.accessToken.toString();\n }\n catch (e) {\n // fetchAuthSession failed\n throw new GraphQLApiError({\n ...NO_SIGNED_IN_USER,\n underlyingError: e,\n });\n }\n // `fetchAuthSession()` succeeded but didn't return `tokens`.\n // This may happen when unauthenticated access is enabled and there is\n // no user signed in.\n if (!token) {\n throw new GraphQLApiError(NO_VALID_AUTH_TOKEN);\n }\n headers = {\n Authorization: token,\n };\n break;\n }\n case 'lambda':\n if (typeof additionalHeaders === 'object' &&\n !additionalHeaders.Authorization) {\n throw new GraphQLApiError(NO_AUTH_TOKEN_HEADER);\n }\n headers = {\n Authorization: additionalHeaders.Authorization,\n };\n break;\n case 'none':\n break;\n default:\n break;\n }\n return headers;\n }\n /**\n * to get the operation type\n * @param operation\n */\n getGraphqlOperationType(operation) {\n const doc = parse(operation);\n const definitions = doc.definitions;\n const [{ operation: operationType }] = definitions;\n return operationType;\n }\n /**\n * Executes a GraphQL operation\n *\n * @param options - GraphQL Options\n * @param [additionalHeaders] - headers to merge in after any `libraryConfigHeaders` set in the config\n * @returns An Observable if the query is a subscription query, else a promise of the graphql result.\n */\n graphql(amplify, { query: paramQuery, variables = {}, authMode, authToken }, additionalHeaders, customUserAgentDetails) {\n const query = typeof paramQuery === 'string'\n ? parse(paramQuery)\n : parse(print(paramQuery));\n const [operationDef = {}] = query.definitions.filter(def => def.kind === 'OperationDefinition');\n const { operation: operationType } = operationDef;\n const headers = additionalHeaders || {};\n switch (operationType) {\n case 'query':\n case 'mutation': {\n const abortController = new AbortController();\n let responsePromise;\n if (isAmplifyInstance(amplify)) {\n responsePromise = this._graphql(amplify, { query, variables, authMode }, headers, abortController, customUserAgentDetails, authToken);\n }\n else {\n // NOTE: this wrapper function must be await-able so the Amplify server context manager can\n // destroy the context only after it completes\n const wrapper = async (amplifyInstance) => {\n const result = await this._graphql(amplifyInstance, { query, variables, authMode }, headers, abortController, customUserAgentDetails, authToken);\n return result;\n };\n responsePromise = amplify(wrapper);\n }\n this._api.updateRequestToBeCancellable(responsePromise, abortController);\n return responsePromise;\n }\n case 'subscription':\n return this._graphqlSubscribe(amplify, { query, variables, authMode }, headers, customUserAgentDetails, authToken);\n default:\n throw new Error(`invalid operation type: ${operationType}`);\n }\n }\n async _graphql(amplify, { query, variables, authMode: explicitAuthMode }, additionalHeaders = {}, abortController, customUserAgentDetails, authToken) {\n const { region, endpoint: appSyncGraphqlEndpoint, customEndpoint, customEndpointRegion, defaultAuthMode, } = resolveConfig(amplify);\n const initialAuthMode = explicitAuthMode || defaultAuthMode || 'iam';\n // identityPool is an alias for iam. TODO: remove 'iam' in v7\n const authMode = initialAuthMode === 'identityPool' ? 'iam' : initialAuthMode;\n /**\n * Retrieve library options from Amplify configuration.\n * `customHeaders` here are from the Amplify configuration options,\n * and are for non-AppSync endpoints only. These are *not* the same as\n * `additionalHeaders`, which are custom headers that are either 1)\n * included when configuring the API client or 2) passed along with\n * individual requests.\n */\n const { headers: customHeaders, withCredentials } = resolveLibraryOptions(amplify);\n /**\n * Client or request-specific custom headers that may or may not be\n * returned by a function:\n */\n let additionalCustomHeaders;\n if (typeof additionalHeaders === 'function') {\n const requestOptions = {\n method: 'POST',\n url: new AmplifyUrl(customEndpoint || appSyncGraphqlEndpoint || '').toString(),\n queryString: print(query),\n };\n additionalCustomHeaders = await additionalHeaders(requestOptions);\n }\n else {\n additionalCustomHeaders = additionalHeaders;\n }\n // if an authorization header is set, have the explicit authToken take precedence\n if (authToken) {\n additionalCustomHeaders = {\n ...additionalCustomHeaders,\n Authorization: authToken,\n };\n }\n // TODO: Figure what we need to do to remove `!`'s.\n const headers = {\n ...(!customEndpoint &&\n (await this._headerBasedAuth(amplify, authMode, additionalCustomHeaders))),\n /**\n * Custom endpoint headers.\n * If there is both a custom endpoint and custom region present, we get the headers.\n * If there is a custom endpoint but no region, we return an empty object.\n * If neither are present, we return an empty object.\n */\n ...((customEndpoint &&\n (customEndpointRegion\n ? await this._headerBasedAuth(amplify, authMode, additionalCustomHeaders)\n : {})) ||\n {}),\n // Custom headers included in Amplify configuration options:\n ...(customHeaders &&\n (await customHeaders({\n query: print(query),\n variables,\n }))),\n // Custom headers from individual requests or API client configuration:\n ...additionalCustomHeaders,\n // User agent headers:\n ...(!customEndpoint && {\n [USER_AGENT_HEADER]: getAmplifyUserAgent(customUserAgentDetails),\n }),\n };\n const body = {\n query: print(query),\n variables: variables || null,\n };\n let signingServiceInfo;\n /**\n * We do not send the signing service info to the REST API under the\n * following conditions (i.e. it will not sign the request):\n * - there is a custom endpoint but no region\n * - the auth mode is `none`, or `apiKey`\n * - the auth mode is a type other than the types listed below\n */\n if ((customEndpoint && !customEndpointRegion) ||\n (authMode !== 'oidc' &&\n authMode !== 'userPool' &&\n authMode !== 'iam' &&\n authMode !== 'lambda')) {\n signingServiceInfo = undefined;\n }\n else {\n signingServiceInfo = {\n service: !customEndpointRegion ? 'appsync' : 'execute-api',\n region: !customEndpointRegion ? region : customEndpointRegion,\n };\n }\n const endpoint = customEndpoint || appSyncGraphqlEndpoint;\n if (!endpoint) {\n throw createGraphQLResultWithError(new GraphQLApiError(NO_ENDPOINT));\n }\n let response;\n try {\n // See the inline doc of the REST `post()` API for possible errors to be thrown.\n // As these errors are catastrophic they should be caught and handled by GraphQL\n // API consumers.\n const { body: responseBody } = await this._api.post(amplify, {\n url: new AmplifyUrl(endpoint),\n options: {\n headers,\n body,\n signingServiceInfo,\n withCredentials,\n },\n abortController,\n });\n response = await responseBody.json();\n }\n catch (error) {\n if (this.isCancelError(error)) {\n throw error;\n }\n response = createGraphQLResultWithError(error);\n }\n if (isGraphQLResponseWithErrors(response)) {\n throw repackageUnauthorizedError(response);\n }\n return response;\n }\n /**\n * Checks to see if an error thrown is from an api request cancellation\n * @param {any} error - Any error\n * @return {boolean} - A boolean indicating if the error was from an api request cancellation\n */\n isCancelError(error) {\n return this._api.isCancelErrorREST(error);\n }\n /**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns - A boolean indicating if the request was cancelled\n */\n cancel(request, message) {\n return this._api.cancelREST(request, message);\n }\n _graphqlSubscribe(amplify, { query, variables, authMode: explicitAuthMode }, additionalHeaders = {}, customUserAgentDetails, authToken) {\n const config = resolveConfig(amplify);\n const initialAuthMode = explicitAuthMode || config?.defaultAuthMode || 'iam';\n // identityPool is an alias for iam. TODO: remove 'iam' in v7\n const authMode = initialAuthMode === 'identityPool' ? 'iam' : initialAuthMode;\n /**\n * Retrieve library options from Amplify configuration.\n * `libraryConfigHeaders` are from the Amplify configuration options,\n * and will not be overwritten by other custom headers. These are *not*\n * the same as `additionalHeaders`, which are custom headers that are\n * either 1)included when configuring the API client or 2) passed along\n * with individual requests.\n */\n const { headers: libraryConfigHeaders } = resolveLibraryOptions(amplify);\n return this.appSyncRealTime\n .subscribe({\n query: print(query),\n variables,\n appSyncGraphqlEndpoint: config?.endpoint,\n region: config?.region,\n authenticationType: authMode,\n apiKey: config?.apiKey,\n additionalHeaders,\n authToken,\n libraryConfigHeaders,\n }, customUserAgentDetails)\n .pipe(catchError(e => {\n if (e.errors) {\n throw repackageUnauthorizedError(e);\n }\n throw e;\n }));\n }\n}\nexport const InternalGraphQLAPI = new InternalGraphQLAPIClass();\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function isGraphQLResponseWithErrors(response) {\n if (!response) {\n return false;\n }\n const r = response;\n return Array.isArray(r.errors) && r.errors.length > 0;\n}\n","import { ApiAction, Category } from '@aws-amplify/core/internals/utils';\nimport { InternalGraphQLAPIClass } from './internals/InternalGraphQLAPI';\nexport const graphqlOperation = (query, variables = {}, authToken) => ({\n query,\n variables,\n authToken,\n});\n/**\n * Export Cloud Logic APIs\n */\nexport class GraphQLAPIClass extends InternalGraphQLAPIClass {\n getModuleName() {\n return 'GraphQLAPI';\n }\n /**\n * Executes a GraphQL operation\n *\n * @param options - GraphQL Options\n * @param [additionalHeaders] - headers to merge in after any `libraryConfigHeaders` set in the config\n * @returns An Observable if the query is a subscription query, else a promise of the graphql result.\n */\n graphql(amplify, options, additionalHeaders) {\n return super.graphql(amplify, options, additionalHeaders, {\n category: Category.API,\n action: ApiAction.GraphQl,\n });\n }\n /**\n * Checks to see if an error thrown is from an api request cancellation\n * @param error - Any error\n * @returns A boolean indicating if the error was from an api request cancellation\n */\n isCancelError(error) {\n return super.isCancelError(error);\n }\n /**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns A boolean indicating if the request was cancelled\n */\n cancel(request, message) {\n return super.cancel(request, message);\n }\n}\nexport const GraphQLAPI = new GraphQLAPIClass();\n","import { GraphQLAPI } from '../GraphQLAPI';\nimport { getInternals, } from '../types';\n/**\n * Invokes graphql operations against a graphql service, providing correct input and\n * output types if Amplify-generated graphql from a recent version of the CLI/codegen\n * are used *or* correct typing is provided via the type argument.\n *\n * Amplify-generated \"branded\" graphql queries will look similar to this:\n *\n * ```ts\n * //\n * // |-- branding\n * // v\n * export const getModel = `...` as GeneratedQuery<\n * \tGetModelQueryVariables,\n * \tGetModelQuery\n * >;\n * ```\n *\n * If this branding is not in your generated graphql, update to a newer version of\n * CLI/codegen and regenerate your graphql using `amplify codegen`.\n *\n * ## Using Amplify-generated graphql\n *\n * ```ts\n * import * as queries from './graphql/queries';\n *\n * //\n * // |-- correctly typed graphql response containing a Widget\n * // v\n * const queryResult = await graphql({\n * \tquery: queries.getWidget,\n * \tvariables: {\n * \t\tid: \"abc\", // <-- type hinted/enforced\n * \t},\n * });\n *\n * //\n * // |-- a correctly typed Widget\n * // v\n * const fetchedWidget = queryResult.data?.getWidget!;\n * ```\n *\n * ## Custom input + result types\n *\n * To provide input types (`variables`) and result types:\n *\n * ```ts\n * type GetById_NameOnly = {\n * \tvariables: {\n * \t\tid: string\n * \t},\n * \tresult: Promise<{\n * \t\tdata: { getWidget: { name: string } }\n * \t}>\n * }\n *\n * //\n * // |-- type is GetById_NameOnly[\"result\"]\n * // v\n * const result = graphql<GetById_NameOnly>({\n * \tquery: \"...\",\n * \tvariables: { id: \"abc\" } // <-- type of GetById_NameOnly[\"variables\"]\n * });\n * ```\n *\n * ## Custom result type only\n *\n * To specify result types only, use a type that is *not* in the `{variables, result}` shape:\n *\n * ```ts\n * type MyResultType = Promise<{\n * \tdata: {\n * \t\tgetWidget: { name: string }\n * \t}\n * }>\n *\n * //\n * // |-- type is MyResultType\n * // v\n * const result = graphql<MyResultType>({query: \"...\"});\n * ```\n *\n * @param options\n * @param additionalHeaders\n */\nexport function graphql(options, additionalHeaders) {\n // inject client-level auth\n const internals = getInternals(this);\n options.authMode = options.authMode || internals.authMode;\n options.authToken = options.authToken || internals.authToken;\n /**\n * The correctness of these typings depends on correct string branding or overrides.\n * Neither of these can actually be validated at runtime. Hence, we don't perform\n * any validation or type-guarding here.\n */\n const result = GraphQLAPI.graphql(\n // TODO: move V6Client back into this package?\n internals.amplify, options, additionalHeaders);\n return result;\n}\n/**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns - A boolean indicating if the request was cancelled\n */\nexport function cancel(promise, message) {\n return GraphQLAPI.cancel(promise, message);\n}\n/**\n * Checks to see if an error thrown is from an api request cancellation\n * @param {any} error - Any error\n * @returns - A boolean indicating if the error was from an api request cancellation\n */\nexport function isCancelError(error) {\n return GraphQLAPI.isCancelError(error);\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Hub } from '@aws-amplify/core';\nimport { addSchemaToClient, } from '@aws-amplify/data-schema/runtime';\nimport { __amplify, __authMode, __authToken, __headers, getInternals, } from '../types';\nimport { isApiGraphQLConfig } from './utils/runtimeTypeGuards/isApiGraphQLProviderConfig';\nimport { isConfigureEventWithResourceConfig } from './utils/runtimeTypeGuards/isConfigureEventWithResourceConfig';\nimport { cancel, graphql, isCancelError } from './v6';\n/**\n * @private\n *\n * Creates a client that can be used to make GraphQL requests, using a provided `AmplifyClassV6`\n * compatible context object for config and auth fetching.\n *\n * @param params\n * @returns\n */\nexport function generateClient(params) {\n const client = {\n [__amplify]: params.amplify,\n [__authMode]: params.authMode,\n [__authToken]: params.authToken,\n [__headers]: params.headers,\n graphql,\n cancel,\n isCancelError,\n models: emptyProperty,\n enums: emptyProperty,\n queries: emptyProperty,\n mutations: emptyProperty,\n subscriptions: emptyProperty,\n };\n const apiGraphqlConfig = params.amplify.getConfig().API?.GraphQL;\n if (isApiGraphQLConfig(apiGraphqlConfig)) {\n addSchemaToClient(client, apiGraphqlConfig, getInternals);\n }\n else {\n // This happens when the `Amplify.configure()` call gets evaluated after the `generateClient()` call.\n //\n // Cause: when the `generateClient()` and the `Amplify.configure()` calls are located in\n // different source files, script bundlers may randomly arrange their orders in the production\n // bundle.\n //\n // With the current implementation, the `client.models` instance created by `generateClient()`\n // will be rebuilt on every `Amplify.configure()` call that's provided with a valid GraphQL\n // provider configuration.\n //\n // TODO: revisit, and reverify this approach when enabling multiple clients for multi-endpoints\n // configuration.\n generateModelsPropertyOnAmplifyConfigure(client);\n }\n return client;\n}\nconst generateModelsPropertyOnAmplifyConfigure = (clientRef) => {\n Hub.listen('core', coreEvent => {\n if (!isConfigureEventWithResourceConfig(coreEvent.payload)) {\n return;\n }\n const apiGraphQLConfig = coreEvent.payload.data.API?.GraphQL;\n if (isApiGraphQLConfig(apiGraphQLConfig)) {\n addSchemaToClient(clientRef, apiGraphQLConfig, getInternals);\n }\n });\n};\nconst emptyProperty = new Proxy({}, {\n get() {\n throw new Error('Client could not be generated. This is likely due to `Amplify.configure()` not being called prior to `generateClient()` or because the configuration passed to `Amplify.configure()` is missing GraphQL provider configuration.');\n },\n});\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function isConfigureEventWithResourceConfig(payload) {\n return payload.event === 'configure';\n}\n","import { generateClient as internalGenerateClient } from '@aws-amplify/api-graphql/internals';\nimport { Amplify } from '@aws-amplify/core';\n/**\n * Generates an API client that can work with models or raw GraphQL\n */\nexport function generateClient(options = {}) {\n return internalGenerateClient({\n ...options,\n amplify: Amplify,\n });\n}\n","/* eslint-disable */\n// this is an auto generated file. This will be overwritten\n\nexport const createHands = /* GraphQL */ `\n mutation CreateHands(\n $input: CreateHandsInput!\n $condition: ModelHandsConditionInput\n ) {\n createHands(input: $input, condition: $condition) {\n id\n playerId\n tableType\n handTags\n heroPosition\n handTitle\n myHand_1\n myHand_2\n preflopNotes\n preflopAction\n preflopHeroRange\n preflopVillainRange\n flopNotes\n flopAction\n flopHeroRange\n flopVillainRange\n turnNotes\n turnAction\n turnHeroRange\n turnVillainRange\n riverNotes\n riverAction\n riverHeroRange\n flopCards_1\n flopCards_3\n flopCards_2\n turnCard\n riverCard\n villainPosition\n riverVillainRange\n stake\n share\n description\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const updateHands = /* GraphQL */ `\n mutation UpdateHands(\n $input: UpdateHandsInput!\n $condition: ModelHandsConditionInput\n ) {\n updateHands(input: $input, condition: $condition) {\n id\n playerId\n tableType\n handTags\n heroPosition\n handTitle\n myHand_1\n myHand_2\n preflopNotes\n preflopAction\n preflopHeroRange\n preflopVillainRange\n flopNotes\n flopAction\n flopHeroRange\n flopVillainRange\n turnNotes\n turnAction\n turnHeroRange\n turnVillainRange\n riverNotes\n riverAction\n riverHeroRange\n flopCards_1\n flopCards_3\n flopCards_2\n turnCard\n riverCard\n villainPosition\n riverVillainRange\n stake\n share\n description\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const deleteHands = /* GraphQL */ `\n mutation DeleteHands(\n $input: DeleteHandsInput!\n $condition: ModelHandsConditionInput\n ) {\n deleteHands(input: $input, condition: $condition) {\n id\n playerId\n tableType\n handTags\n heroPosition\n handTitle\n myHand_1\n myHand_2\n preflopNotes\n preflopAction\n preflopHeroRange\n preflopVillainRange\n flopNotes\n flopAction\n flopHeroRange\n flopVillainRange\n turnNotes\n turnAction\n turnHeroRange\n turnVillainRange\n riverNotes\n riverAction\n riverHeroRange\n flopCards_1\n flopCards_3\n flopCards_2\n turnCard\n riverCard\n villainPosition\n riverVillainRange\n stake\n share\n description\n createdAt\n updatedAt\n __typename\n }\n }\n`;\n\nexport const createMembers = /* GraphQL */ `\n mutation CreateMembers(\n $input: CreateMembersInput!\n $condition: ModelMembersConditionInput\n ) {\n createMembers(input: $input, condition: $condition) {\n id\n playerId\n memberPlan\n endDate\n skipTutorial\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const updateMembers = /* GraphQL */ `\n mutation UpdateMembers(\n $input: UpdateMembersInput!\n $condition: ModelMembersConditionInput\n ) {\n updateMembers(input: $input, condition: $condition) {\n id\n playerId\n memberPlan\n endDate\n skipTutorial\n createdAt\n updatedAt\n __typename\n }\n }\n`;\n\nexport const createTrainings = /* GraphQL */ `\n mutation CreateTrainings(\n $input: CreateTrainingsInput!\n $condition: ModelTrainingsConditionInput\n ) {\n createTrainings(input: $input, condition: $condition) {\n id\n handId\n playerId\n score\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const updateTrainings = /* GraphQL */ `\n mutation UpdateTrainings(\n $input: UpdateTrainingsInput!\n $condition: ModelTrainingsConditionInput\n ) {\n updateTrainings(input: $input, condition: $condition) {\n id\n handId\n playerId\n score\n createdAt\n updatedAt\n __typename\n }\n }\n`;\n\nexport const createRanges = /* GraphQL */ `\n mutation CreateRanges(\n $input: CreateRangesInput!\n $condition: ModelRangesConditionInput\n ) {\n createRanges(input: $input, condition: $condition) {\n id\n palyerId\n rangeId\n title\n range\n colors\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const updateRanges = /* GraphQL */ `\n mutation UpdateRanges(\n $input: UpdateRangesInput!\n $condition: ModelRangesConditionInput\n ) {\n updateRanges(input: $input, condition: $condition) {\n id\n palyerId\n rangeId\n title\n range\n colors\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const deleteRanges = /* GraphQL */ `\n mutation DeleteRanges(\n $input: DeleteRangesInput!\n $condition: ModelRangesConditionInput\n ) {\n deleteRanges(input: $input, condition: $condition) {\n id\n palyerId\n rangeId\n title\n range\n colors\n createdAt\n updatedAt\n __typename\n }\n }\n`;","/* eslint-disable */\n// this is an auto generated file. This will be overwritten\n\nexport const getHands = /* GraphQL */ `\n query GetHands($id: ID!) {\n getHands(id: $id) {\n id\n playerId\n tableType\n handTags\n heroPosition\n handTitle\n myHand_1\n myHand_2\n preflopNotes\n preflopAction\n preflopHeroRange\n preflopVillainRange\n flopNotes\n flopAction\n flopHeroRange\n flopVillainRange\n turnNotes\n turnAction\n turnHeroRange\n turnVillainRange\n riverNotes\n riverAction\n riverHeroRange\n flopCards_1\n flopCards_3\n flopCards_2\n turnCard\n riverCard\n villainPosition\n riverVillainRange\n stake\n share\n description\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const listHands = /* GraphQL */ `\n query ListHands(\n $filter: ModelHandsFilterInput\n $limit: Int\n $nextToken: String\n ) {\n listHands(filter: $filter, limit: $limit, nextToken: $nextToken) {\n items {\n id\n playerId\n tableType\n handTags\n heroPosition\n handTitle\n myHand_1\n myHand_2\n preflopNotes\n preflopAction\n preflopHeroRange\n preflopVillainRange\n flopNotes\n flopAction\n flopHeroRange\n flopVillainRange\n turnNotes\n turnAction\n turnHeroRange\n turnVillainRange\n riverNotes\n riverAction\n riverHeroRange\n flopCards_1\n flopCards_3\n flopCards_2\n turnCard\n riverCard\n villainPosition\n riverVillainRange\n stake\n share\n description\n }\n nextToken\n __typename\n }\n }\n`;\n\n\nexport const getMembers = /* GraphQL */ `\n query GetMembers($id: ID!) {\n getMembers(id: $id) {\n id\n playerId\n memberPlan\n endDate\n skipTutorial\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const listMembers = /* GraphQL */ `\n query ListMembers(\n $filter: ModelMembersFilterInput\n $limit: Int\n $nextToken: String\n ) {\n listMembers(filter: $filter, limit: $limit, nextToken: $nextToken) {\n items {\n id\n playerId\n memberPlan\n endDate\n skipTutorial\n createdAt\n updatedAt\n __typename\n }\n nextToken\n __typename\n }\n }\n`;\n\nexport const getTrainings = /* GraphQL */ `\n query GetTrainings($id: ID!) {\n getTrainings(id: $id) {\n id\n handId\n playerId\n score\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const listTrainings = /* GraphQL */ `\n query ListTrainings(\n $filter: ModelTrainingsFilterInput\n $limit: Int\n $nextToken: String\n ) {\n listTrainings(filter: $filter, limit: $limit, nextToken: $nextToken) {\n items {\n id\n handId\n playerId\n score\n createdAt\n updatedAt\n __typename\n }\n nextToken\n __typename\n }\n }\n`;\nexport const getRanges = /* GraphQL */ `\n query GetRanges($id: ID!) {\n getRanges(id: $id) {\n id\n palyerId\n rangeId\n title\n range\n colors\n createdAt\n updatedAt\n __typename\n }\n }\n`;\nexport const listRanges = /* GraphQL */ `\n query ListRanges(\n $filter: ModelRangesFilterInput\n $limit: Int\n $nextToken: String\n ) {\n listRanges(filter: $filter, limit: $limit, nextToken: $nextToken) {\n items {\n id\n palyerId\n rangeId\n title\n range\n colors\n createdAt\n updatedAt\n __typename\n }\n nextToken\n __typename\n }\n }\n`;","import React, { createContext, useState } from 'react';\nimport { generateClient } from \"aws-amplify/api\";\n\nimport {\n createHands as createHandMutation,\n updateHands as updateHandMutation\n} from \"../../graphql/mutations\";\nimport {\n listHands as listHandsQuery,\n} from \"../../graphql/queries\";\n\n\nconst client = generateClient();\nexport const PokerHandContext = createContext();\n\nconst initialPokerHandState = {\n id: '',\n playerId: '',\n tableType: '6',\n handTags: '', // Asegúrate de que esto sea un array vacÃo\n heroPosition: '9',\n handTitle: '',\n myHand_1: '',\n myHand_2: '',\n preflopNotes: '',\n preflopAction: '{}',\n preflopHeroRange: '{}',\n preflopVillainRange: '{}',\n flopNotes: '',\n flopAction: '{}',\n flopHeroRange: '{}',\n flopVillainRange: '{}',\n turnNotes: '',\n turnAction: '{}',\n turnHeroRange: '{}',\n turnVillainRange: '{}',\n riverNotes: '',\n riverAction: '{}',\n riverHeroRange: '{}',\n riverVillainRange: '{}',\n flopCards_1: '',\n flopCards_2: '',\n flopCards_3: '',\n turnCard: '',\n riverCard: '',\n villainPosition: '9',\n stake: '',\n description: '',\n share: false\n};\n\n\nexport const PokerHandProvider = ({ children }) => {\n\n\n const [pokerHand, setPokerHand] = useState(initialPokerHandState);\n\n const [pokerHandList, setPokerHandList] = useState([]);\n const [pokerHandHistory, setPokerHandHistory] = useState([]);\n\n const updatePokerHand = (key, value) => {\n setPokerHand(prevState => ({\n ...prevState,\n [key]: value,\n }));\n\n\n\n };\n\n const resetPokerHand = () => {\n setPokerHand(initialPokerHandState);\n };\n\n const resetPokerHandList = () => {\n setPokerHandList([]);\n };\n\n const createPokerHandDB = async () => {\n\n\n if (!pokerHand.handTitle.trim() || !pokerHand.description.trim()) {\n\n return { success: false, error: 'El titulo o descripción no puede estar en blanco' };\n }\n\n const newHandId = Date.now();\n\n try {\n\n const result = await client.graphql({\n query: createHandMutation,\n variables: { input: {\n id: newHandId,\n playerId: pokerHand.playerId,\n tableType: pokerHand.tableType,\n handTags: pokerHand.handTags, // Asegúrate de que esto sea un array vacÃo\n heroPosition: pokerHand.heroPosition,\n handTitle: pokerHand.handTitle,\n myHand_1: pokerHand.myHand_1,\n myHand_2: pokerHand.myHand_2,\n preflopNotes: pokerHand.preflopNotes,\n preflopAction: pokerHand.preflopAction,\n preflopHeroRange: pokerHand.preflopHeroRange,\n preflopVillainRange: pokerHand.preflopVillainRange,\n flopNotes: pokerHand.flopNotes,\n flopAction: pokerHand.flopAction,\n flopHeroRange: pokerHand.flopHeroRange,\n flopVillainRange: pokerHand.flopVillainRange,\n turnNotes: pokerHand.turnNotes,\n turnAction: pokerHand.turnAction,\n turnHeroRange: pokerHand.turnHeroRange,\n turnVillainRange: pokerHand.turnVillainRange,\n riverNotes: pokerHand.riverNotes,\n riverAction: pokerHand.riverAction,\n riverHeroRange: pokerHand.riverHeroRange,\n riverVillainRange: pokerHand.riverVillainRange,\n flopCards_1: pokerHand.flopCards_1,\n flopCards_2: pokerHand.flopCards_2,\n flopCards_3: pokerHand.flopCards_3,\n turnCard: pokerHand.turnCard,\n riverCard: pokerHand.riverCard,\n villainPosition: pokerHand.villainPosition,\n stake: pokerHand.stake,\n description: pokerHand.description,\n share: pokerHand.share\n\n } }\n });\n updatePokerHand('id', newHandId);\n return { success: true, data: result };\n\n } catch (error) {\n\n return { success: false, error: error.message };\n }\n };\n\n const updatePokerHandDB = async () => {\n\n\n\n if (!pokerHand.handTitle.trim() || !pokerHand.description.trim()) {\n\n return { success: false, error: 'El titulo o descripción no puede estar en blanco' };\n }\n\n\n\n try {\n\n const result = await client.graphql({\n query: updateHandMutation,\n variables: { input: {\n id: pokerHand.id,\n playerId: pokerHand.playerId,\n tableType: pokerHand.tableType,\n handTags: pokerHand.handTags, // Asegúrate de que esto sea un array vacÃo\n heroPosition: pokerHand.heroPosition,\n handTitle: pokerHand.handTitle,\n myHand_1: pokerHand.myHand_1,\n myHand_2: pokerHand.myHand_2,\n preflopNotes: pokerHand.preflopNotes,\n preflopAction: pokerHand.preflopAction,\n preflopHeroRange: pokerHand.preflopHeroRange,\n preflopVillainRange: pokerHand.preflopVillainRange,\n flopNotes: pokerHand.flopNotes,\n flopAction: pokerHand.flopAction,\n flopHeroRange: pokerHand.flopHeroRange,\n flopVillainRange: pokerHand.flopVillainRange,\n turnNotes: pokerHand.turnNotes,\n turnAction: pokerHand.turnAction,\n turnHeroRange: pokerHand.turnHeroRange,\n turnVillainRange: pokerHand.turnVillainRange,\n riverNotes: pokerHand.riverNotes,\n riverAction: pokerHand.riverAction,\n riverHeroRange: pokerHand.riverHeroRange,\n riverVillainRange: pokerHand.riverVillainRange,\n flopCards_1: pokerHand.flopCards_1,\n flopCards_2: pokerHand.flopCards_2,\n flopCards_3: pokerHand.flopCards_3,\n turnCard: pokerHand.turnCard,\n riverCard: pokerHand.riverCard,\n villainPosition: pokerHand.villainPosition,\n stake: pokerHand.stake,\n description: pokerHand.description,\n share: pokerHand.share\n } }\n });\n return { success: true, data: result };\n } catch (error) {\n\n return { success: false, error: error.message };\n }\n };\n\n const fetchPokerHands = async (playerId=null, stake = null, handTitle = null) => {\n try {\n const filter = { };\n\n if (playerId) {\n filter.playerId = { eq: playerId };\n }\n if (stake) {\n filter.stake = { eq: stake };\n }\n if (handTitle) {\n filter.handTitle = { eq: handTitle };\n }\n\n const result = await client.graphql({\n query: listHandsQuery,\n variables: { filter }\n });\n\n\n setPokerHandList(result.data.listHands.items);\n } catch (error) {\n console.log(error);\n }\n };\n\n const fetchPokerHandsTrainer = async ( stake = null, handTitle = null, share) => {\n try {\n const filter = {};\n\n if (stake) {\n filter.stake = { eq: stake };\n }\n if (handTitle) {\n filter.handTitle = { eq: handTitle };\n }\n\n\n filter.share = { eq: share };\n\n\n //console.log(filter);\n\n const result = await client.graphql({\n query: listHandsQuery,\n variables: { filter }\n });\n //console.log(result);\n setPokerHandList(result.data.listHands.items);\n\n } catch (error) {\n console.log(error);\n }\n };\n\n return (\n <PokerHandContext.Provider value={{ pokerHand,pokerHandList,createPokerHandDB, updatePokerHandDB, updatePokerHand, fetchPokerHands,fetchPokerHandsTrainer, resetPokerHandList, setPokerHand,resetPokerHand }}>\n {children}\n </PokerHandContext.Provider>\n );\n};\n","/**\n * Some libraries may not follow Node ES module spec and could be loaded as CommonJS modules,\n * To ensure the interoperability between ESM and CJS, modules from those libraries have to be loaded via namespace import\n * And sanitized by the function below because unlike ESM namespace, CJS namespace set `module.exports` object on the `default` key\n * https://nodejs.org/api/esm.html#interoperability-with-commonjs\n */\nconst sanitizeNamespaceImport = (namespaceModule) => {\n const sanitizedNamespaceModule = { default: undefined, ...namespaceModule };\n return sanitizedNamespaceModule.default ?? sanitizedNamespaceModule;\n};\n/**\n * Checks if `value` is an Object (non-primitive, non-array, non-function)\n * Will return false for Arrays and functions\n *\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is an object, `false` otherwise\n */\nfunction isObject(value) {\n return value != null && !Array.isArray(value) && typeof value === 'object';\n}\n/**\n * Checks if `value` is a string primitive or object\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is a string, `false` otherwise\n */\nfunction isString(value) {\n return (typeof value === 'string' ||\n (typeof value === 'object' &&\n Object.prototype.toString.call(value) === '[object String]'));\n}\n/**\n * Checks if `value` is a Map\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is a Map, `false` otherwise\n */\nfunction isMap(value) {\n return (isObject(value) && Object.prototype.toString.call(value) === '[object Map]');\n}\n/**\n * Checks if `value` is a Set\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is a Set, `false` otherwise\n */\nfunction isSet(value) {\n return (isObject(value) && Object.prototype.toString.call(value) === '[object Set]');\n}\n/**\n * Checks if `value` is undefined\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is undefined, `false` otherwise\n */\nfunction isUndefined(value) {\n return value === undefined;\n}\n/**\n * Checks if `value` is nullish\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is nullish, `false` otherwise\n */\nfunction isNil(value) {\n return value == null;\n}\n/**\n * Checks if `value` is empty\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is empty, `false` otherwise\n */\nfunction isEmpty(value) {\n if (value === null || value === undefined)\n return true;\n if (isObject(value) && (isMap(value) || isSet(value))) {\n return !value.size;\n }\n if (isObject(value) && (isString(value) || Array.isArray(value))) {\n return !value.length;\n }\n for (const key in value) {\n if (has(value, key)) {\n return false;\n }\n }\n return true;\n}\n/**\n * Checks if `value` is an empty array\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is a empty, `false` otherwise\n */\nfunction isEmptyArray(value) {\n return Array.isArray(value) && isEmpty(value);\n}\n/**\n * Checks if all members of the `values` param are empty arrays\n *\n * @param {unknown} value The values to check\n * @returns {boolean} Returns `true` if all members of `values` are empty, `false` otherwise\n */\nfunction areEmptyArrays(...values) {\n return values.every(isEmptyArray);\n}\n/**\n * Checks if `value` is an empty object\n *\n * @param {unknown} value The value to check\n * @returns {boolean} Returns `true` if `value` is empty, `false` otherwise\n */\nfunction isEmptyObject(value) {\n return isObject(value) && isEmpty(value);\n}\n/**\n * Checks if all members of the `values` param are empty objects\n *\n * @param {unknown} values The values to check\n * @returns {boolean} Returns `true` if all members of the `values` param are empty, `false` otherwise\n */\nfunction areEmptyObjects(...values) {\n return values.every(isEmptyObject);\n}\n/**\n * Capitalizes `value` and its return type\n *\n * @param {string} value string to capitalize\n * @returns {string} capitalized string\n */\nfunction capitalize(value) {\n return (isString(value) ? value.charAt(0).toUpperCase() + value.slice(1) : '');\n}\n/**\n * Checks if `key` is a direct property of `value`\n *\n * @param {unknown} value `object` potentially containing property\n * @param {string} key property key\n * @returns whether `key` param is a property of the `obj` param\n */\nfunction has(value, key) {\n return value != null && Object.prototype.hasOwnProperty.call(value, key);\n}\n/**\n * Checks if `value` is a function\n *\n * @param {unknown} value param to check\n * @returns {boolean} whether `value` is a function\n */\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n/**\n * This helper function creates modifier class names that are used for our flat BEM styling\n * it takes in a base and modifier and returns the modified class if a modifier was passed in and null otherwise\n * @param base The base class of the output\n * @param modifier The modifier to add onto the base\n * @returns the modified class name or empty string\n */\nconst classNameModifier = (base, modifier) => {\n return modifier ? `${base}--${modifier}` : '';\n};\n/**\n * This helper function creates modified class names that are used for our flat BEM styling\n * it takes in a base, modifier, and flag and returns the modified class name if the flag is true and null if the flag is false\n * @param base\n * @param modifier\n * @param flag\n * @returns the modified class name or empty string\n */\nconst classNameModifierByFlag = (base, modifier, flag) => {\n return flag ? `${base}--${modifier}` : '';\n};\n/**\n * `isFunction` but types the param with its function signature\n *\n * @param {unknown} value param to check\n * @returns {boolean} whether `value` is a function\n */\nfunction isTypedFunction(value) {\n return isFunction(value);\n}\n/**\n * Similar to `Array.join`, with an optional callback/template param\n * for formatting returned string values\n *\n * @param {string[]} values string array\n * @param {(value: string) => string} template callback format param\n * @returns formatted string array\n */\nfunction templateJoin(values, template) {\n return values.reduce((acc, curr) => `${acc}${isString(curr) ? template(curr) : ''}`, '');\n}\n/**\n * A function that does nothing\n *\n * @param {any[]} _ accepts any parameters\n * @returns nothing\n */\nfunction noop(..._) {\n return;\n}\n/**\n * @param {string} groupName name of group\n * @param events string values related to group\n */\nfunction groupLog(groupName, ...events) {\n const hasEvents = !!events?.length;\n if (hasEvents) {\n // eslint-disable-next-line no-console\n console.groupCollapsed(groupName);\n events?.forEach((event) => {\n // eslint-disable-next-line no-console\n console.log(event);\n });\n // eslint-disable-next-line no-console\n console.groupEnd();\n }\n else {\n // eslint-disable-next-line no-console\n console.log(groupName);\n }\n}\n\nexport { areEmptyArrays, areEmptyObjects, capitalize, classNameModifier, classNameModifierByFlag, groupLog, has, isEmpty, isEmptyObject, isFunction, isMap, isNil, isObject, isSet, isString, isTypedFunction, isUndefined, noop, sanitizeNamespaceImport, templateJoin };\n","import { useLayoutEffect } from 'react';\n\nvar index = useLayoutEffect ;\n\nexport default index;\n","import { useRef, useCallback } from 'react';\nimport useIsomorphicLayoutEffect from 'use-isomorphic-layout-effect';\nimport useConstant from './useConstant';\nimport { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';\nimport { getServiceSnapshot, isInterpreterStateEqual, isService } from './utils';\nfunction identity(a) {\n return a;\n}\nexport function isActorWithState(actorRef) {\n return 'state' in actorRef;\n}\nfunction isDeferredActor(actorRef) {\n return 'deferred' in actorRef;\n}\nfunction defaultGetSnapshot(actorRef) {\n return 'getSnapshot' in actorRef\n ? isService(actorRef)\n ? getServiceSnapshot(actorRef)\n : actorRef.getSnapshot()\n : isActorWithState(actorRef)\n ? actorRef.state\n : undefined;\n}\nexport function useActor(actorRef, getSnapshot) {\n if (getSnapshot === void 0) { getSnapshot = defaultGetSnapshot; }\n var actorRefRef = useRef(actorRef);\n var deferredEventsRef = useRef([]);\n var subscribe = useCallback(function (handleStoreChange) {\n var unsubscribe = actorRef.subscribe(handleStoreChange).unsubscribe;\n return unsubscribe;\n }, [actorRef]);\n var boundGetSnapshot = useCallback(function () { return getSnapshot(actorRef); }, [actorRef, getSnapshot]);\n var isEqual = useCallback(function (prevState, nextState) {\n if (isService(actorRef)) {\n return isInterpreterStateEqual(actorRef, prevState, nextState);\n }\n return prevState === nextState;\n }, [actorRef]);\n var storeSnapshot = useSyncExternalStoreWithSelector(subscribe, boundGetSnapshot, boundGetSnapshot, identity, isEqual);\n var send = useConstant(function () { return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var event = args[0];\n if (process.env.NODE_ENV !== 'production' && args.length > 1) {\n console.warn(\"Unexpected payload: \".concat(JSON.stringify(args[1]), \". Only a single event object can be sent to actor send() functions.\"));\n }\n var currentActorRef = actorRefRef.current;\n // If the previous actor is a deferred actor,\n // queue the events so that they can be replayed\n // on the non-deferred actor.\n if (isDeferredActor(currentActorRef) && currentActorRef.deferred) {\n deferredEventsRef.current.push(event);\n }\n else {\n currentActorRef.send(event);\n }\n }; });\n useIsomorphicLayoutEffect(function () {\n actorRefRef.current = actorRef;\n // Dequeue deferred events from the previous deferred actorRef\n while (deferredEventsRef.current.length > 0) {\n var deferredEvent = deferredEventsRef.current.shift();\n actorRef.send(deferredEvent);\n }\n }, [actorRef]);\n return [storeSnapshot, send];\n}\n","import { useCallback, useRef } from 'react';\nimport { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';\nimport { isActorWithState } from './useActor';\nimport { getServiceSnapshot, isService } from './utils';\nvar defaultCompare = function (a, b) { return a === b; };\nvar defaultGetSnapshot = function (a, initialStateCacheRef) {\n if (isService(a)) {\n // A status of 0 = interpreter not started\n if (a.status === 0 && initialStateCacheRef.current) {\n return initialStateCacheRef.current;\n }\n var snapshot = getServiceSnapshot(a);\n initialStateCacheRef.current = a.status === 0 ? snapshot : null;\n return snapshot;\n }\n return isActorWithState(a) ? a.state : undefined;\n};\nexport function useSelector(actor, selector, compare, getSnapshot) {\n if (compare === void 0) { compare = defaultCompare; }\n var initialStateCacheRef = useRef(null);\n var subscribe = useCallback(function (handleStoreChange) {\n var unsubscribe = actor.subscribe(handleStoreChange).unsubscribe;\n return unsubscribe;\n }, [actor]);\n var boundGetSnapshot = useCallback(function () {\n if (getSnapshot) {\n return getSnapshot(actor);\n }\n return defaultGetSnapshot(actor, initialStateCacheRef);\n }, [actor, getSnapshot]);\n var selectedSnapshot = useSyncExternalStoreWithSelector(subscribe, boundGetSnapshot, boundGetSnapshot, selector, compare);\n return selectedSnapshot;\n}\n","var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nimport { InterpreterStatus } from 'xstate';\nexport function partition(items, predicate) {\n var e_1, _a;\n var _b = __read([[], []], 2), truthy = _b[0], falsy = _b[1];\n try {\n for (var items_1 = __values(items), items_1_1 = items_1.next(); !items_1_1.done; items_1_1 = items_1.next()) {\n var item = items_1_1.value;\n if (predicate(item)) {\n truthy.push(item);\n }\n else {\n falsy.push(item);\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (items_1_1 && !items_1_1.done && (_a = items_1.return)) _a.call(items_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return [truthy, falsy];\n}\nexport function getServiceSnapshot(service) {\n return service.status !== 0\n ? service.getSnapshot()\n : service.machine.initialState;\n}\n// From https://github.com/reduxjs/react-redux/blob/master/src/utils/shallowEqual.ts\nfunction is(x, y) {\n if (x === y) {\n return x !== 0 || y !== 0 || 1 / x === 1 / y;\n }\n else {\n return x !== x && y !== y;\n }\n}\nexport function shallowEqual(objA, objB) {\n if (is(objA, objB))\n return true;\n if (typeof objA !== 'object' ||\n objA === null ||\n typeof objB !== 'object' ||\n objB === null) {\n return false;\n }\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n if (keysA.length !== keysB.length)\n return false;\n for (var i = 0; i < keysA.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) ||\n !is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n return true;\n}\nexport function isService(actor) {\n return 'state' in actor && 'machine' in actor;\n}\nexport function isInterpreterStateEqual(service, prevState, nextState) {\n if (service.status === InterpreterStatus.NotStarted) {\n return true;\n }\n // Only change the current state if:\n // - the incoming state is the \"live\" initial state (since it might have new actors)\n // - OR the incoming state actually changed.\n //\n // The \"live\" initial state will have .changed === undefined.\n var initialStateChanged = nextState.changed === undefined &&\n (Object.keys(nextState.children).length > 0 ||\n typeof prevState.changed === 'boolean');\n return !(nextState.changed || initialStateChanged);\n}\n","/**\n * This file contains helpers that lets you easily access current actor's state\n * and context.\n */\n/**\n * Get the state of current actor. This is useful for checking which screen\n * to render: e.g. `getActorState(state).matches('confirmSignUp.edit').\n */\nconst getActorState = (state) => {\n return state.context.actorRef?.getSnapshot();\n};\n/**\n * Get the context of current actor. Useful for getting any nested context\n * like remoteError.\n */\nconst getActorContext = (state) => {\n return getActorState(state)?.context;\n};\n\nexport { getActorContext, getActorState };\n","import { getActorContext, getActorState } from './actor.mjs';\nimport { NAVIGABLE_ROUTE_EVENT } from './constants.mjs';\nimport { getRoute } from './getRoute.mjs';\n\n/**\n * This file contains helpers that translates xstate internals to more\n * understandable authenticator contexts. We provide these contexts with\n * `useAuthenticator` hook/composable/service.\n */\n/**\n * Creates public facing auth helpers that abstracts out xstate implementation\n * detail. Each framework implementation can export these helpers so that\n * developers can send events without having to learn internals.\n *\n * ```\n * const [state, send] = useActor(...);\n * const { submit } = getSendEventAliases(send);\n * submit({ username, password})\n * ```\n */\nconst getSendEventAliases = (send) => {\n const sendToMachine = (type) => {\n // TODO If these were created during the creation of the machine & provider,\n // then invalid transitions could be caught via https://xstate.js.org/docs/guides/states.html#state-can-event\n return (data) => send({ type, data });\n };\n return {\n initializeMachine: sendToMachine('INIT'),\n resendCode: sendToMachine('RESEND'),\n signOut: sendToMachine('SIGN_OUT'),\n submitForm: sendToMachine('SUBMIT'),\n updateForm: sendToMachine('CHANGE'),\n updateBlur: sendToMachine('BLUR'),\n // Actions that don't immediately invoke a service but instead transition to a screen\n // are prefixed with `to*`\n toFederatedSignIn: sendToMachine('FEDERATED_SIGN_IN'),\n toForgotPassword: sendToMachine('FORGOT_PASSWORD'),\n toSignIn: sendToMachine('SIGN_IN'),\n toSignUp: sendToMachine('SIGN_UP'),\n skipVerification: sendToMachine('SKIP'),\n };\n};\nconst getNextSendEventAliases = (send) => {\n const { toFederatedSignIn, submitForm, resendCode, skipVerification } = getSendEventAliases(send);\n return {\n handleSubmit: submitForm,\n resendConfirmationCode: resendCode,\n // manual \"route\" navigation\n setRoute: (route) => send({ type: NAVIGABLE_ROUTE_EVENT[route] }),\n skipAttributeVerification: skipVerification,\n toFederatedSignIn,\n };\n};\nconst getServiceContextFacade = (state) => {\n const actorContext = (getActorContext(state) ?? {});\n const { challengeName, codeDeliveryDetails, remoteError: error, validationError: validationErrors, totpSecretCode = null, unverifiedUserAttributes, username, } = actorContext;\n const { socialProviders = [] } = state.context?.config ?? {};\n // check for user in actorContext prior to state context. actorContext is more \"up to date\",\n // but is not available on all states\n const user = actorContext?.user ?? state.context?.user;\n const hasValidationErrors = !!(validationErrors && Object.keys(validationErrors).length > 0);\n const actorState = getActorState(state);\n const isPending = state.hasTag('pending') || actorState?.hasTag('pending');\n const route = getRoute(state, actorState);\n // Auth status represents the current state of the auth flow\n // The `configuring` state is used to indicate when the xState machine is loading\n const authStatus = ((route) => {\n switch (route) {\n case 'idle':\n case 'setup':\n return 'configuring';\n case 'authenticated':\n return 'authenticated';\n default:\n return 'unauthenticated';\n }\n })(route);\n const facade = {\n authStatus,\n challengeName,\n codeDeliveryDetails,\n error,\n hasValidationErrors,\n isPending,\n route,\n socialProviders,\n totpSecretCode,\n unverifiedUserAttributes,\n user,\n username,\n validationErrors,\n // @v6-migration-note\n // While most of the properties\n // on `AuthenticatorServiceContextFacade` can resolve to `undefined`, updating\n // the interface requires material changes in consumers (namely `useAuthenticator`)\n // which will have implications on the UI layer as typeguards and non-null checks\n // are required to pass type checking. As the `Authenticator` is behaving as expected\n // with the `AuthenticatorServiceContextFacade` interface, prefer to cast\n };\n return facade;\n};\nconst getNextServiceContextFacade = (state) => {\n const actorContext = (getActorContext(state) ?? {});\n const { challengeName, codeDeliveryDetails, remoteError: errorMessage, totpSecretCode, unverifiedUserAttributes, username, } = actorContext;\n const { socialProviders: federatedProviders, loginMechanisms } = state.context?.config ?? {};\n const loginMechanism = loginMechanisms?.[0];\n const actorState = getActorState(state);\n const isPending = state.hasTag('pending') || actorState?.hasTag('pending');\n // @todo-migration remove this cast for Authenticator.Next\n const route = getRoute(state, actorState);\n return {\n challengeName,\n codeDeliveryDetails,\n errorMessage,\n federatedProviders,\n isPending,\n loginMechanism,\n route,\n totpSecretCode,\n unverifiedUserAttributes,\n username,\n };\n};\nconst getServiceFacade = ({ send, state, }) => {\n const sendEventAliases = getSendEventAliases(send);\n const serviceContext = getServiceContextFacade(state);\n return {\n ...sendEventAliases,\n ...serviceContext,\n };\n};\nconst getNextServiceFacade = ({ send, state, }) => ({\n ...getNextSendEventAliases(send),\n ...getNextServiceContextFacade(state),\n});\n\nexport { getNextServiceContextFacade, getNextServiceFacade, getSendEventAliases, getServiceContextFacade, getServiceFacade };\n","const getRoute = (state, actorState) => {\n // 'federatedSignIn' exists as a state on both the 'signInActor' and 'signUpActor',\n // match against the `actorState` initially to determine if the federated sign in flow\n // has begun, then which actor has begun the flow and return the corresponding `route`\n if (actorState?.matches('federatedSignIn')) {\n if (state.matches('signUpActor')) {\n return 'signUp';\n }\n if (state.matches('signInActor')) {\n return 'signIn';\n }\n }\n switch (true) {\n case state.matches('idle'):\n return 'idle';\n case state.matches('setup'):\n return 'setup';\n case state.matches('signOut'):\n return 'signOut';\n case state.matches('authenticated'):\n return 'authenticated';\n case actorState?.matches('confirmSignUp'):\n case actorState?.matches('resendSignUpCode'):\n return 'confirmSignUp';\n case actorState?.matches('confirmSignIn'):\n return 'confirmSignIn';\n case actorState?.matches('setupTotp.edit'):\n case actorState?.matches('setupTotp.submit'):\n return 'setupTotp';\n case actorState?.matches('signIn'):\n return 'signIn';\n case actorState?.matches('signUp'):\n case actorState?.matches('autoSignIn'):\n return 'signUp';\n case actorState?.matches('forceChangePassword'):\n return 'forceNewPassword';\n case actorState?.matches('forgotPassword'):\n return 'forgotPassword';\n case actorState?.matches('confirmResetPassword'):\n return 'confirmResetPassword';\n case actorState?.matches('selectUserAttributes'):\n return 'verifyUser';\n case actorState?.matches('confirmVerifyUserAttribute'):\n return 'confirmVerifyUser';\n case state.matches('getCurrentUser'):\n case actorState?.matches('fetchUserAttributes'):\n /**\n * This route is needed for autoSignIn to capture both the\n * autoSignIn.pending and the resolved states when the\n * signIn actor is running.\n */\n return 'transition';\n default:\n return null;\n }\n};\n\nexport { getRoute };\n","import React__default from 'react';\n\n/**\n * AuthenticatorContext serves static reference to the auth machine service.\n *\n * https://xstate.js.org/docs/recipes/react.html#context-provider\n */\nconst AuthenticatorContext = React__default.createContext(null);\n\nexport { AuthenticatorContext };\n","const USE_AUTHENTICATOR_ERROR = '`useAuthenticator` must be used inside an `Authenticator.Provider`.';\n\nexport { USE_AUTHENTICATOR_ERROR };\n","/** Array of auth fields that we supply defaults with */\nconst signUpFieldsWithDefault = [\n 'birthdate',\n 'email',\n 'family_name',\n 'given_name',\n 'middle_name',\n 'name',\n 'nickname',\n 'phone_number',\n 'preferred_username',\n 'profile',\n 'website',\n];\n/** Array of auth fields that we do not supply defaults with */\nconst signUpFieldsWithoutDefault = [\n 'address',\n 'gender',\n 'locale',\n 'picture',\n 'updated_at',\n 'zoneinfo',\n];\n/** Array of known login mechanisms */\nconst LoginMechanismArray = [\n 'username',\n 'email',\n 'phone_number',\n];\nconst authFieldsWithDefaults = [\n ...LoginMechanismArray,\n ...signUpFieldsWithDefault,\n 'confirmation_code',\n 'password',\n 'confirm_password',\n];\nconst isAuthFieldsWithDefaults = (field) => {\n return authFieldsWithDefaults.includes(field);\n};\n\nexport { LoginMechanismArray, authFieldsWithDefaults, isAuthFieldsWithDefaults, signUpFieldsWithDefault, signUpFieldsWithoutDefault };\n","const countryDialCodes = [\n '+1',\n '+7',\n '+20',\n '+27',\n '+30',\n '+31',\n '+32',\n '+33',\n '+34',\n '+36',\n '+39',\n '+40',\n '+41',\n '+43',\n '+44',\n '+45',\n '+46',\n '+47',\n '+48',\n '+49',\n '+51',\n '+52',\n '+53',\n '+54',\n '+55',\n '+56',\n '+57',\n '+58',\n '+60',\n '+61',\n '+62',\n '+63',\n '+64',\n '+65',\n '+66',\n '+81',\n '+82',\n '+84',\n '+86',\n '+90',\n '+91',\n '+92',\n '+93',\n '+94',\n '+95',\n '+98',\n '+212',\n '+213',\n '+216',\n '+218',\n '+220',\n '+221',\n '+222',\n '+223',\n '+224',\n '+225',\n '+226',\n '+227',\n '+228',\n '+229',\n '+230',\n '+231',\n '+232',\n '+233',\n '+234',\n '+235',\n '+236',\n '+237',\n '+238',\n '+239',\n '+240',\n '+241',\n '+242',\n '+243',\n '+244',\n '+245',\n '+246',\n '+248',\n '+249',\n '+250',\n '+251',\n '+252',\n '+253',\n '+254',\n '+255',\n '+256',\n '+257',\n '+258',\n '+260',\n '+261',\n '+262',\n '+263',\n '+264',\n '+265',\n '+266',\n '+267',\n '+268',\n '+269',\n '+290',\n '+291',\n '+297',\n '+298',\n '+299',\n '+345',\n '+350',\n '+351',\n '+352',\n '+353',\n '+354',\n '+355',\n '+356',\n '+357',\n '+358',\n '+359',\n '+370',\n '+371',\n '+372',\n '+373',\n '+374',\n '+375',\n '+376',\n '+377',\n '+378',\n '+379',\n '+380',\n '+381',\n '+382',\n '+385',\n '+386',\n '+387',\n '+389',\n '+420',\n '+421',\n '+423',\n '+500',\n '+501',\n '+502',\n '+503',\n '+504',\n '+505',\n '+506',\n '+507',\n '+508',\n '+509',\n '+537',\n '+590',\n '+591',\n '+593',\n '+594',\n '+595',\n '+596',\n '+597',\n '+598',\n '+599',\n '+670',\n '+672',\n '+673',\n '+674',\n '+675',\n '+676',\n '+677',\n '+678',\n '+679',\n '+680',\n '+681',\n '+682',\n '+683',\n '+685',\n '+686',\n '+687',\n '+688',\n '+689',\n '+690',\n '+691',\n '+692',\n '+850',\n '+852',\n '+853',\n '+855',\n '+856',\n '+872',\n '+880',\n '+886',\n '+960',\n '+961',\n '+962',\n '+963',\n '+964',\n '+965',\n '+966',\n '+967',\n '+968',\n '+970',\n '+971',\n '+972',\n '+973',\n '+974',\n '+975',\n '+976',\n '+977',\n '+992',\n '+993',\n '+994',\n '+995',\n '+996',\n '+998',\n];\n\nexport { countryDialCodes };\n","import { countryDialCodes } from '../../i18n/country-dial-codes.mjs';\nimport 'aws-amplify/utils';\n\n/**\n * This file contains helpers related to forms and input attributes.\n */\nconst defaultFormFieldOptions = {\n birthdate: {\n label: 'Birthdate',\n placeholder: 'Enter your Birthdate',\n type: 'date',\n autocomplete: 'bday',\n isRequired: true,\n },\n confirmation_code: {\n label: 'Confirmation Code',\n placeholder: 'Enter your Confirmation Code',\n type: 'text',\n autocomplete: 'one-time-code',\n isRequired: true,\n },\n confirm_password: {\n label: 'Confirm Password',\n placeholder: 'Please confirm your Password',\n type: 'password',\n autocomplete: 'new-password',\n isRequired: true,\n },\n email: {\n label: 'Email',\n placeholder: 'Enter your Email',\n type: 'email',\n autocomplete: 'username',\n isRequired: true,\n },\n family_name: {\n label: 'Family Name',\n placeholder: 'Enter your Family Name',\n type: 'text',\n autocomplete: 'family-name',\n isRequired: true,\n },\n given_name: {\n label: 'Given Name',\n placeholder: 'Enter your Given Name',\n type: 'text',\n autocomplete: 'given-name',\n isRequired: true,\n },\n middle_name: {\n label: 'Middle Name',\n placeholder: 'Enter your Middle Name',\n type: 'text',\n autocomplete: 'additional-name',\n isRequired: true,\n },\n name: {\n label: 'Name',\n placeholder: 'Enter your Name',\n type: 'text',\n autocomplete: 'name',\n isRequired: true,\n },\n nickname: {\n label: 'Nickname',\n placeholder: 'Enter your Nickname',\n type: 'text',\n autocomplete: 'tel',\n isRequired: true,\n },\n password: {\n label: 'Password',\n placeholder: 'Enter your Password',\n type: 'password',\n autocomplete: 'new-password',\n isRequired: true,\n },\n phone_number: {\n label: 'Phone Number',\n placeholder: 'Enter your Phone Number',\n type: 'tel',\n autocomplete: 'tel',\n dialCode: '+1',\n dialCodeList: countryDialCodes,\n isRequired: true,\n },\n preferred_username: {\n label: 'Preferred Username',\n placeholder: 'Enter your Preferred Username',\n type: 'text',\n isRequired: true,\n },\n profile: {\n label: 'Profile',\n placeholder: 'Add your Profile',\n type: 'url',\n autocomplete: 'url',\n isRequired: true,\n },\n website: {\n label: 'Website',\n placeholder: 'Add your Website',\n type: 'url',\n autocomplete: 'url',\n isRequired: true,\n },\n username: {\n label: 'Username',\n placeholder: 'Enter your Username',\n type: 'text',\n autocomplete: 'username',\n isRequired: true,\n },\n};\n/**\n * List of special characters that Cognito allows.\n *\n * Adapted from https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-policies.html\n */\n// prettier-ignore\nconst ALLOWED_SPECIAL_CHARACTERS = [\n '^', '$', '*', '.', '[', ']',\n '{', '}', '(', ')', '?', '\"',\n '!', '@', '#', '%', '&', '/',\n '\\\\', ',', '>', '<', \"'\", ':',\n ';', '|', '_', '~', '`', '=',\n '+', '-', ' '\n];\n/**\n * Email validation regex\n *\n * source: HTML5 spec https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address\n */\nconst emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;\n/**\n+ * map navigable route keys to auth event names\n+ */\nconst NAVIGABLE_ROUTE_EVENT = {\n forgotPassword: 'FORGOT_PASSWORD',\n signIn: 'SIGN_IN',\n signUp: 'SIGN_UP',\n};\n\nexport { ALLOWED_SPECIAL_CHARACTERS, NAVIGABLE_ROUTE_EVENT, defaultFormFieldOptions, emailRegex };\n","import '../../types/authenticator/user.mjs';\nimport { authFieldsWithDefaults } from '../../types/authenticator/attributes.mjs';\n\nconst getFormDataFromEvent = (event) => {\n const formData = new FormData(event.target);\n return Object.fromEntries(formData);\n};\nconst setFormOrder = (formOverrides, fieldNames) => {\n let orderedKeys = [];\n if (formOverrides) {\n orderedKeys = Object.keys(formOverrides)\n .reduce((prev, key) => {\n // reduce to array that can be sorted\n prev.push([key, formOverrides[key]?.order]);\n return prev;\n }, [])\n .sort((a, b) => \n //sort them based on order\n a[1] - b[1]) // returned just key\n .filter((a) => a[1] !== undefined)\n .map((a) => a[0]);\n }\n // remove duplicates\n return Array.from(new Set([...orderedKeys, ...fieldNames]));\n};\nconst isAuthFieldWithDefaults = (field) => {\n return authFieldsWithDefaults.includes(field);\n};\nconst isArray = (val) => {\n return Array.isArray(val);\n};\nconst getErrors = (errors) => {\n if (!errors)\n return null;\n if (isArray(errors)) {\n return errors;\n }\n else {\n return [errors];\n }\n};\n\nexport { getErrors, getFormDataFromEvent, isAuthFieldWithDefaults, setFormOrder };\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '../Logger';\nconst logger = new ConsoleLogger('I18n');\n/**\n * Language translation utility.\n */\nexport class I18n {\n constructor() {\n /**\n * @private\n */\n this._options = null;\n /**\n * @private\n */\n this._lang = null;\n /**\n * @private\n */\n this._dict = {};\n }\n /**\n * Sets the default language from the configuration when required.\n */\n setDefaultLanguage() {\n // Default to window language if not set in instance\n if (!this._lang &&\n typeof window !== 'undefined' &&\n window &&\n window.navigator) {\n this._lang = window.navigator.language;\n }\n logger.debug(this._lang);\n }\n /**\n * @method\n * Explicitly setting language\n * @param {String} lang\n */\n setLanguage(lang) {\n this._lang = lang;\n }\n /**\n * @method\n * Get value\n * @param {String} key\n * @param {String} defVal - Default value\n */\n get(key, defVal = undefined) {\n this.setDefaultLanguage();\n if (!this._lang) {\n return typeof defVal !== 'undefined' ? defVal : key;\n }\n const lang = this._lang;\n let val = this.getByLanguage(key, lang);\n if (val) {\n return val;\n }\n if (lang.indexOf('-') > 0) {\n val = this.getByLanguage(key, lang.split('-')[0]);\n }\n if (val) {\n return val;\n }\n return typeof defVal !== 'undefined' ? defVal : key;\n }\n /**\n * @method\n * Get value according to specified language\n * @param {String} key\n * @param {String} language - Specified langurage to be used\n * @param {String} defVal - Default value\n */\n getByLanguage(key, language, defVal = null) {\n if (!language) {\n return defVal;\n }\n const langDict = this._dict[language];\n if (!langDict) {\n return defVal;\n }\n return langDict[key];\n }\n /**\n * @method\n * Add vocabularies for one language\n * @param {String} language - Language of the dictionary\n * @param {Object} vocabularies - Object that has key-value as dictionary entry\n */\n putVocabulariesForLanguage(language, vocabularies) {\n let langDict = this._dict[language];\n if (!langDict) {\n langDict = this._dict[language] = {};\n }\n this._dict[language] = { ...langDict, ...vocabularies };\n }\n /**\n * @method\n * Add vocabularies for one language\n * @param {Object} vocabularies - Object that has language as key,\n * vocabularies of each language as value\n */\n putVocabularies(vocabularies) {\n Object.keys(vocabularies).forEach(key => {\n this.putVocabulariesForLanguage(key, vocabularies[key]);\n });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError } from './AmplifyError';\nexport const createAssertionFunction = (errorMap, AssertionError = AmplifyError) => (assertion, name, additionalContext) => {\n const { message, recoverySuggestion } = errorMap[name];\n if (!assertion) {\n throw new AssertionError({\n name,\n message: additionalContext\n ? `${message} ${additionalContext}`\n : message,\n recoverySuggestion,\n });\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { createAssertionFunction } from '../errors';\nexport var I18nErrorCode;\n(function (I18nErrorCode) {\n I18nErrorCode[\"NotConfigured\"] = \"NotConfigured\";\n})(I18nErrorCode || (I18nErrorCode = {}));\nconst i18nErrorMap = {\n [I18nErrorCode.NotConfigured]: {\n message: 'i18n is not configured.',\n },\n};\nexport const assert = createAssertionFunction(i18nErrorMap);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '../Logger';\nimport { I18n as I18nClass } from './I18n';\nimport { I18nErrorCode, assert } from './errorHelpers';\nconst logger = new ConsoleLogger('I18n');\nlet _config = { language: null };\nlet _i18n = null;\n/**\n * Export I18n APIs\n */\nexport class I18n {\n /**\n * @static\n * @method\n * Configure I18n part\n * @param {Object} config - Configuration of the I18n\n */\n static configure(config) {\n logger.debug('configure I18n');\n if (!config) {\n return _config;\n }\n _config = Object.assign({}, _config, config.I18n || config);\n I18n.createInstance();\n return _config;\n }\n static getModuleName() {\n return 'I18n';\n }\n /**\n * @static\n * @method\n * Create an instance of I18n for the library\n */\n static createInstance() {\n logger.debug('create I18n instance');\n if (_i18n) {\n return;\n }\n _i18n = new I18nClass();\n }\n /**\n * @static @method\n * Explicitly setting language\n * @param {String} lang\n */\n static setLanguage(lang) {\n I18n.checkConfig();\n assert(!!_i18n, I18nErrorCode.NotConfigured);\n _i18n.setLanguage(lang);\n }\n /**\n * @static @method\n * Get value\n * @param {String} key\n * @param {String} defVal - Default value\n */\n static get(key, defVal) {\n if (!I18n.checkConfig()) {\n return typeof defVal === 'undefined' ? key : defVal;\n }\n assert(!!_i18n, I18nErrorCode.NotConfigured);\n return _i18n.get(key, defVal);\n }\n /**\n * @static\n * @method\n * Add vocabularies for one language\n * @param {String} language - Language of the dictionary\n * @param {Object} vocabularies - Object that has key-value as dictionary entry\n */\n static putVocabulariesForLanguage(language, vocabularies) {\n I18n.checkConfig();\n assert(!!_i18n, I18nErrorCode.NotConfigured);\n _i18n.putVocabulariesForLanguage(language, vocabularies);\n }\n /**\n * @static\n * @method\n * Add vocabularies for one language\n * @param {Object} vocabularies - Object that has language as key,\n * vocabularies of each language as value\n */\n static putVocabularies(vocabularies) {\n I18n.checkConfig();\n assert(!!_i18n, I18nErrorCode.NotConfigured);\n _i18n.putVocabularies(vocabularies);\n }\n static checkConfig() {\n if (!_i18n) {\n I18n.createInstance();\n }\n return true;\n }\n}\n// Create an instance of I18n in the static class\nI18n.createInstance();\n","const deDict = {\n 'Account recovery requires verified contact information': 'Zurücksetzen des Accounts benötigt einen verifizierten Account',\n 'Add your Profile': 'Ihr Profil hinzufügen',\n 'Add your Website': 'Ihre Website hinzufügen',\n 'Back to Sign In': 'Zurück zur Anmeldung',\n 'Change Password': 'Passwort ändern',\n Changing: 'Ändern von',\n Code: 'Code',\n 'Confirm Password': 'Passwort bestätigen',\n 'Please confirm your Password': 'Bitte bestätigen Sie Ihr Passwort',\n 'Confirm Sign Up': 'Registrierung bestätigen',\n 'Confirm SMS Code': 'SMS-Code bestätigen',\n 'Confirm TOTP Code': 'TOTP-Code bestätigen',\n Confirm: 'Bestätigen',\n 'Confirmation Code': 'Bestätigungs-Code',\n Confirming: 'Wird bestätigt',\n 'Create a new account': 'Einen neuen Account erstellen',\n 'Create Account': 'Account erstellen',\n 'Creating Account': 'Account wird erstellt',\n 'Dismiss alert': 'Warnung verwerfen',\n Email: 'Email',\n 'Enter your Birthdate': 'Geben Sie Ihr Geburtsdatum ein',\n 'Enter your code': 'Geben Sie Ihren Code ein',\n 'Enter your Confirmation Code': 'Geben Sie Ihren Bestätigungs-Code ein',\n 'Enter your Email': 'Geben Sie Ihre E-Mail ein',\n 'Enter your Family Name': 'Geben Sie Ihren Nachnamen ein',\n 'Enter your Given Name': 'Geben Sie Ihren Vornamen ein',\n 'Enter your Middle Name': 'Geben Sie Ihren zweiten Vornamen ein',\n 'Enter your Name': 'Geben Sie Ihren Namen ein',\n 'Enter your Nickname': 'Geben Sie Ihren Spitznamen ein',\n 'Enter your Password': 'Geben Sie Ihr Passwort ein',\n 'Enter your password': 'Geben Sie Ihr Passwort ein',\n 'Enter your email': 'Geben Sie Ihre e-mail ein',\n 'Enter your phone number': 'Geben Sie Ihre Telefonnummer ein',\n 'Enter your Preferred Username': 'Geben Sie Ihren bevorzugten Benutzernamen ein',\n 'Enter your username': 'Geben Sie Ihren Benutzernamen ein',\n 'Forgot password?': 'Passwort vergessen?',\n 'Forgot your password?': 'Passwort vergessen? ',\n 'Hide password': 'Passwort verbergen',\n 'It may take a minute to arrive': 'Es kann eine Minute dauern, bis er ankommt',\n Loading: 'Wird geladen',\n 'New password': 'Neues Passwort',\n or: 'oder',\n Password: 'Passwort',\n 'Phone Number': 'Telefonnummer',\n 'Resend Code': 'Code erneut senden',\n 'Reset your Password': 'Zurücksetzen des Passworts',\n 'Reset your password': 'Zurücksetzen des passworts',\n 'Send code': 'Code senden',\n 'Send Code': 'Code senden',\n Sending: 'Wird gesendet',\n 'Setup TOTP': 'TOTP einrichten',\n 'Show password': 'Passwort anzeigen',\n 'Sign in to your account': 'Melden Sie sich mit Ihrem Account an',\n 'Sign In with Amazon': 'Mit Amazon anmelden',\n 'Sign In with Apple': 'Mit Apple anmelden',\n 'Sign In with Facebook': 'Mit Facebook anmelden',\n 'Sign In with Google': 'Mit Google anmelden',\n 'Sign in': 'Anmelden',\n 'Sign In': 'Anmelden',\n 'Signing in': 'Wird angemeldet',\n Skip: 'Ãœberspringen',\n Submit: 'Abschicken',\n Submitting: 'Wird gesendet',\n Username: 'Benutzername',\n 'Verify Contact': 'Kontakt verifizieren',\n Verify: 'Verifizieren',\n 'We Emailed You': 'Email wurde versendet',\n 'We Sent A Code': 'Wir haben einen Code gesendet',\n 'We Texted You': 'Wir haben Ihnen eine SMS gesendet',\n 'Your code is on the way. To log in, enter the code we emailed to': 'Ihr Bestätigungscode ist unterwegs. Um sich einzuloggen geben Sie den Code ein, den wir per E-Mail verschickt haben',\n 'Your code is on the way. To log in, enter the code we sent you': 'Ihr Code ist unterwegs. Um sich anzumelden, geben Sie den Code ein, den wir Ihnen gesendet haben',\n 'Your code is on the way. To log in, enter the code we texted to': 'Ihr Bestätigungscode ist unterwegs. Um sich einzuloggen geben Sie den Code ein, den wir per SMS verschickt haben',\n // Additional translations provided by customers\n 'An account with the given email already exists.': 'Ein Account mit dieser Email existiert bereits.',\n 'Confirm a Code': 'Code bestätigen',\n 'Confirm Sign In': 'Anmeldung bestätigen',\n 'Create account': 'Hier registrieren',\n 'Sign Up with Facebook': 'Mit Facebook registrieren',\n 'Sign Up with Google': 'Mit Google registrieren',\n 'Forgot Password': 'Passwort vergessen',\n 'Have an account? ': 'Schon registriert? ',\n 'Incorrect username or password': 'Falscher Benutzername oder falsches Passwort',\n 'Invalid password format': 'Ungültiges Passwort-Format',\n 'Invalid phone number format': `Ungültiges Telefonummern-Format. Benutze eine Nummer im Format: +12345678900`,\n 'It may take a minute to arrive.': 'Es könnte eine Minute dauern, bis der Code eintrifft.',\n 'Lost your code? ': 'Code verloren? ',\n 'New Password': 'Neues Passwort',\n 'No account? ': 'Kein Account? ',\n 'Password attempts exceeded': 'Die maximale Anzahl der fehlerhaften Anmeldeversuche wurde erreicht',\n 'Reset password': 'Passwort zurücksetzen',\n 'Reset Password': 'Passwort Zurücksetzen',\n 'Sign Out': 'Abmelden',\n 'Sign Up': 'Registrieren',\n 'User already exists': 'Dieser Benutzer existiert bereits',\n 'User does not exist': 'Dieser Benutzer existiert nicht',\n 'Username cannot be empty': 'Benutzername darf nicht leer sein',\n};\n\nexport { deDict };\n","import { I18n } from 'aws-amplify/utils';\nimport { defaultTexts, deDict, enDict, esDict, frDict, idDict, itDict, jaDict, krDict, nbDict, nlDict, plDict, ptDict, zhDict, svDict, trDict, ruDict, heDict, uaDict } from './dictionaries/index.mjs';\n\n/*\n * Copyright 2017-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\"). You may not use this file except in compliance with\n * the License. A copy of the License is located at\n *\n * http://aws.amazon.com/apache2.0/\n *\n * or in the \"license\" file accompanying this file. This file is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions\n * and limitations under the License.\n */\n/**\n * Contains translatable strings that authenticator provides by default. Customers\n * can use this to add custom vocabularies:\n *\n * ```\n * I18n.putVocabulariesForLanguage(\"en\", {\n * [DefaultTexts.SIGN_IN]: \"Custom Sign In Text\",\n * [DefaultTexts.SIGN_IN_BUTTON]: \"Custom Click Here to Sign In\"\n * });\n * ```\n */\nconst DefaultTexts = { ...defaultTexts };\n/**\n * This helper type checks that given phrase is one of the texts @aws-amplify/ui\n * provides by default. This enables vscode autocompletion to help catch typos\n * during development.\n *\n * You can also use translate<string> to handle custom strings or dynamic content.\n */\nfunction translate(phrase) {\n return I18n.get(phrase);\n}\n/**\n * Whether I18n has a translation entry for given phrase\n */\nfunction hasTranslation(phrase) {\n return I18n.get(phrase) !== phrase;\n}\nconst translations = {\n de: deDict,\n en: enDict,\n es: esDict,\n fr: frDict,\n id: idDict,\n it: itDict,\n ja: jaDict,\n // TODO: remove kr in next major release\n kr: krDict,\n ko: krDict,\n nb: nbDict,\n nl: nlDict,\n pl: plDict,\n pt: ptDict,\n zh: zhDict,\n sv: svDict,\n tr: trDict,\n ru: ruDict,\n he: heDict,\n ua: uaDict,\n};\n\nexport { DefaultTexts, hasTranslation, translate, translations };\n","import { deDict as deDict$1 } from './authenticator/de.mjs';\nimport { enDict as enDict$1 } from './authenticator/en.mjs';\nimport { esDict as esDict$1 } from './authenticator/es.mjs';\nimport { frDict as frDict$1 } from './authenticator/fr.mjs';\nimport { itDict as itDict$1 } from './authenticator/it.mjs';\nimport { jaDict as jaDict$1 } from './authenticator/ja.mjs';\nimport { krDict as krDict$1 } from './authenticator/kr.mjs';\nimport { nbDict as nbDict$1 } from './authenticator/nb.mjs';\nimport { nlDict as nlDict$1 } from './authenticator/nl.mjs';\nimport { plDict as plDict$1 } from './authenticator/pl.mjs';\nimport { ptDict as ptDict$1 } from './authenticator/pt.mjs';\nimport { zhDict as zhDict$1 } from './authenticator/zh.mjs';\nimport { svDict as svDict$1 } from './authenticator/sv.mjs';\nimport { idDict as idDict$1 } from './authenticator/id.mjs';\nimport { trDict as trDict$1 } from './authenticator/tr.mjs';\nimport { ruDict as ruDict$1 } from './authenticator/ru.mjs';\nimport { heDict as heDict$1 } from './authenticator/he.mjs';\nimport { uaDict as uaDict$1 } from './authenticator/ua.mjs';\nimport { defaultTexts as defaultTexts$1 } from './authenticator/defaultTexts.mjs';\n\n//merge all the new module translations in respective locale constants\nconst deDict = { ...deDict$1 };\nconst enDict = {\n ...enDict$1,\n};\nconst esDict = { ...esDict$1 };\nconst frDict = { ...frDict$1 };\nconst itDict = { ...itDict$1 };\nconst jaDict = { ...jaDict$1 };\nconst krDict = { ...krDict$1 };\nconst nbDict = { ...nbDict$1 };\nconst nlDict = { ...nlDict$1 };\nconst plDict = { ...plDict$1 };\nconst ptDict = { ...ptDict$1 };\nconst zhDict = { ...zhDict$1 };\nconst svDict = { ...svDict$1 };\nconst idDict = { ...idDict$1 };\nconst trDict = { ...trDict$1 };\nconst ruDict = { ...ruDict$1 };\nconst heDict = { ...heDict$1 };\nconst uaDict = { ...uaDict$1 };\nconst defaultTexts = {\n ...defaultTexts$1,\n // new module related default texts goes here\n};\n\nexport { deDict, defaultTexts, enDict, esDict, frDict, heDict, idDict, itDict, jaDict, krDict, nbDict, nlDict, plDict, ptDict, ruDict, svDict, trDict, uaDict, zhDict };\n","const defaultTexts = {\n ADD_PROFILE: 'Add your Profile',\n ADD_WEBSITE: 'Add your Website',\n BACK_SIGN_IN: 'Back to Sign In',\n BIRTHDATE: 'Birthdate',\n CHANGE_PASSWORD: 'Change Password',\n CHANGING_PASSWORD: 'Changing',\n CODE: 'Code',\n CODE_ARRIVAL: 'It may take a minute to arrive',\n CODE_EMAILED: 'Your code is on the way. To log in, enter the code we emailed to',\n CODE_SENT: 'Your code is on the way. To log in, enter the code we sent you',\n CODE_TEXTED: 'Your code is on the way. To log in, enter the code we texted to',\n CONFIRM_PASSWORD: 'Confirm Password',\n CONFIRM_PASSWORD_PLACEHOLDER: 'Please confirm your Password',\n CONFIRM_RESET_PASSWORD_HEADING: 'Reset your Password',\n CONFIRM_SIGNUP_HEADING: 'Confirm Sign Up',\n CONFIRM_SMS: 'Confirm SMS Code',\n // If challenge name is not returned\n CONFIRM_MFA_DEFAULT: 'Confirm MFA Code',\n CONFIRM_TOTP: 'Confirm TOTP Code',\n CONFIRM: 'Confirm',\n CONFIRMATION_CODE: 'Confirmation Code',\n CONFIRMING: 'Confirming',\n CREATE_ACCOUNT: 'Create Account',\n CREATING_ACCOUNT: 'Creating Account',\n EMAIL_ADDRESS: 'Email',\n ENTER_BIRTHDATE: 'Enter your Birthdate',\n ENTER_CODE: 'Enter your code',\n ENTER_CONFIRMATION_CODE: 'Enter your Confirmation Code',\n ENTER_EMAIL: 'Enter your Email',\n ENTER_FAMILY_NAME: 'Enter your Family Name',\n ENTER_GIVEN_NAME: 'Enter your Given Name',\n ENTER_MIDDLE_NAME: 'Enter your Middle Name',\n ENTER_NAME: 'Enter your Name',\n ENTER_NICK_NAME: 'Enter your Nickname',\n ENTER_PASSWORD: 'Enter your Password',\n ENTER_PHONE_NUMBER: 'Enter your Phone Number',\n ENTER_PREFERRED_USERNAME: 'Enter your Preferred Username',\n ENTER_USERNAME: 'Enter your username',\n FAMILY_NAME: 'Family Name',\n GIVEN_NAME: 'Given Name',\n FORGOT_PASSWORD: 'Forgot Password?',\n FORGOT_YOUR_PASSWORD: 'Forgot your password?',\n HIDE_PASSWORD: 'Hide password',\n LOADING: 'Loading',\n LOGIN_NAME: 'Username',\n MIDDLE_NAME: 'Middle Name',\n NAME: 'Name',\n NICKNAME: 'Nickname',\n NEW_PASSWORD: 'New password',\n OR: 'or',\n PASSWORD: 'Password',\n PHONE_NUMBER: 'Phone Number',\n PREFERRED_USERNAME: 'Preferred Username',\n PROFILE: 'Profile',\n RESEND_CODE: 'Resend Code',\n RESET_PASSWORD_HEADING: 'Reset your password',\n RESET_PASSWORD: 'Reset Password',\n SEND_CODE: 'Send code',\n SENDING: 'Sending',\n SETUP_TOTP: 'Setup TOTP',\n SHOW_PASSWORD: 'Show password',\n SIGN_IN_BUTTON: 'Sign in',\n SIGN_IN_TAB: 'Sign In',\n SIGN_IN_WITH_AMAZON: 'Sign In with Amazon',\n SIGN_IN_WITH_APPLE: 'Sign In with Apple',\n SIGN_IN_WITH_FACEBOOK: 'Sign In with Facebook',\n SIGN_IN_WITH_GOOGLE: 'Sign In with Google',\n SIGN_IN: 'Sign in to your account',\n SIGN_UP_BUTTON: 'Create a new account',\n SIGNING_IN_BUTTON: 'Signing in',\n SKIP: 'Skip',\n SUBMIT: 'Submit',\n SUBMITTING: 'Submitting',\n UPPERCASE_COPY: 'COPY',\n VERIFY_CONTACT: 'Verify Contact',\n VERIFY_HEADING: 'Account recovery requires verified contact information',\n VERIFY: 'Verify',\n WE_EMAILED: 'We Emailed You',\n WE_SENT_CODE: 'We Sent A Code',\n WE_TEXTED: 'We Texted You',\n WEBSITE: 'Website',\n};\n\nexport { defaultTexts };\n","import { translate } from '../../../i18n/translations.mjs';\n\nconst getPrimaryAlias = (state) => {\n const loginMechanisms = state?.context.config?.loginMechanisms;\n /**\n * @migration this is where we grab only the first index of `aws_cognito_username_attributes`\n */\n const [primaryAlias] = loginMechanisms ?? ['username'];\n return primaryAlias;\n};\n/** Applies translations to label and placeholder */\nconst applyTranslation = (formFields) => {\n const newFormFields = { ...formFields };\n for (const [name, options] of Object.entries(formFields)) {\n const { label, placeholder } = options;\n newFormFields[name] = {\n ...options,\n label: label ? translate(label) : undefined,\n placeholder: placeholder ? translate(placeholder) : undefined,\n };\n }\n return newFormFields;\n};\n/** Sorts formFields according to their `order`. */\nconst sortFormFields = (formFields) => {\n return Object.entries(formFields)\n .sort((a, b) => {\n const orderA = a[1].order || Number.MAX_VALUE;\n const orderB = b[1].order || Number.MAX_VALUE;\n return orderA - orderB;\n })\n .filter((formFieldEntry) => formFieldEntry[1] !== undefined);\n};\n\nexport { applyTranslation, getPrimaryAlias, sortFormFields };\n","import { getActorState } from '../actor.mjs';\nimport { defaultFormFieldOptions } from '../constants.mjs';\nimport { isAuthFieldWithDefaults } from '../form.mjs';\nimport { getPrimaryAlias } from './utils.mjs';\n\n/**\n * This file contains helpers that generate default formFields for each screen\n */\nconst DEFAULT_COUNTRY_CODE = '+1';\n/** Helper function that gets the default formField for given field name */\nconst getDefaultFormField = (fieldName) => {\n let options = defaultFormFieldOptions[fieldName];\n const { type } = options;\n if (type === 'tel') {\n options = { ...options, dialCode: DEFAULT_COUNTRY_CODE };\n }\n return options;\n};\n// Helper function that returns default form field for configured primary alias\nconst getAliasDefaultFormField = (state) => {\n const primaryAlias = getPrimaryAlias(state);\n return {\n ...getDefaultFormField(primaryAlias),\n autocomplete: 'username',\n };\n};\n/** Reusable confirmation code form fields. */\nconst getConfirmationCodeFormFields = (state) => ({\n confirmation_code: {\n ...getDefaultFormField('confirmation_code'),\n label: 'Code *',\n placeholder: 'Code',\n },\n});\nconst getSignInFormFields = (state) => ({\n username: { ...getAliasDefaultFormField(state) },\n password: {\n ...getDefaultFormField('password'),\n autocomplete: 'current-password',\n },\n});\nconst getSignUpFormFields = (state) => {\n const { loginMechanisms, signUpAttributes } = state.context.config;\n const primaryAlias = getPrimaryAlias(state);\n /**\n * @migration signUp Fields created here\n */\n const fieldNames = Array.from(new Set([\n ...loginMechanisms,\n 'password',\n 'confirm_password',\n ...signUpAttributes,\n ]));\n const formField = {};\n for (const fieldName of fieldNames) {\n if (isAuthFieldWithDefaults(fieldName)) {\n const fieldAttrs = fieldName === primaryAlias\n ? getAliasDefaultFormField(state)\n : getDefaultFormField(fieldName);\n formField[fieldName] = { ...fieldAttrs };\n }\n else {\n // There's a `custom:*` attribute or one we don't already have an implementation for\n console.debug(`Authenticator does not have a default implementation for ${fieldName}. Customize SignUp FormFields to add your own.`);\n }\n }\n return formField;\n};\nconst getConfirmSignUpFormFields = (state) => ({\n confirmation_code: {\n ...getDefaultFormField('confirmation_code'),\n placeholder: 'Enter your code',\n },\n});\nconst getForgotPasswordFormFields = (state) => {\n const primaryAlias = getPrimaryAlias(state);\n const { label } = defaultFormFieldOptions[primaryAlias];\n return {\n username: {\n ...getAliasDefaultFormField(state),\n label: `Enter your ${label.toLowerCase()}`,\n placeholder: `Enter your ${label.toLowerCase()}`,\n },\n };\n};\nconst getConfirmResetPasswordFormFields = (state) => ({\n ...getConfirmationCodeFormFields(),\n password: {\n ...getDefaultFormField('password'),\n label: 'New Password',\n placeholder: 'New Password',\n },\n confirm_password: {\n ...getDefaultFormField('confirm_password'),\n label: 'Confirm Password',\n placeholder: 'Confirm Password',\n },\n});\nconst getForceNewPasswordFormFields = (state) => {\n const actorState = getActorState(state);\n const { missingAttributes } = actorState.context;\n const fieldNames = Array.from(new Set([\n 'password',\n 'confirm_password',\n ...(missingAttributes ?? []),\n ]));\n const formField = {};\n for (const fieldName of fieldNames) {\n if (isAuthFieldWithDefaults(fieldName)) {\n formField[fieldName] = { ...getDefaultFormField(fieldName) };\n }\n else {\n // There's a `custom:*` attribute or one we don't already have an implementation for\n console.debug(`Authenticator does not have a default implementation for ${fieldName}. Customize ForceNewPassword FormFields to add your own.`);\n }\n }\n return formField;\n};\n/** Collect all the defaultFormFields getters */\nconst defaultFormFieldsGetters = {\n signIn: getSignInFormFields,\n signUp: getSignUpFormFields,\n confirmSignUp: getConfirmSignUpFormFields,\n confirmSignIn: getConfirmationCodeFormFields,\n forceNewPassword: getForceNewPasswordFormFields,\n forgotPassword: getForgotPasswordFormFields,\n confirmResetPassword: getConfirmResetPasswordFormFields,\n confirmVerifyUser: getConfirmationCodeFormFields,\n setupTotp: getConfirmationCodeFormFields,\n};\n\nexport { DEFAULT_COUNTRY_CODE, defaultFormFieldsGetters, getAliasDefaultFormField };\n","import '../../../types/authenticator/user.mjs';\nimport { isAuthFieldsWithDefaults } from '../../../types/authenticator/attributes.mjs';\nimport { getActorContext } from '../actor.mjs';\nimport { defaultFormFieldOptions } from '../constants.mjs';\nimport { defaultFormFieldsGetters, getAliasDefaultFormField } from './defaults.mjs';\nimport { applyTranslation, sortFormFields } from './utils.mjs';\n\n// Gets the default formFields for given route\nconst getDefaultFormFields = (route, state) => {\n const formFieldGetter = defaultFormFieldsGetters[route];\n return formFieldGetter(state);\n};\n// Gets custom formFields, and applies default values\nconst getCustomFormFields = (route, state) => {\n const customFormFields = getActorContext(state)?.formFields?.[route];\n if (!customFormFields || Object.keys(customFormFields).length === 0) {\n return {};\n }\n return Object.entries(customFormFields).reduce((acc, [fieldName, customOptions]) => {\n if ((route === 'signIn' || route === 'forgotPassword') &&\n fieldName === 'username') {\n // Unlike other screens, `signIn` and `forgotPassword` screens default login\n // alias field names to \"username\", even if it's a phone number or email.\n // In this case, we get the default formFieldOptions based on loginMechanism.\n const defaultOptions = getAliasDefaultFormField(state);\n // apply default to fill any gaps that are not present in customOptions\n const mergedOptions = { ...defaultOptions, ...customOptions };\n return { ...acc, [fieldName]: mergedOptions };\n }\n else if (isAuthFieldsWithDefaults(fieldName)) {\n // if this field is a known auth attribute that we have defaults for,\n // apply defaults to customOptions.\n const defaultOptions = defaultFormFieldOptions[fieldName];\n const mergedOptions = { ...defaultOptions, ...customOptions };\n return { ...acc, [fieldName]: mergedOptions };\n }\n else {\n // if this is not a known field, use customOptions as is.\n return { ...acc, [fieldName]: customOptions };\n }\n }, {});\n};\nconst getFormFields = (route, state) => {\n const defaultFormFields = getDefaultFormFields(route, state);\n const customFormFields = getCustomFormFields(route, state);\n const formFields = { ...defaultFormFields, ...customFormFields };\n delete formFields['QR'];\n return applyTranslation(formFields);\n};\nconst removeOrderKeys = (formFields) => formFields.map((field) => {\n const key = field[0];\n // Drop order key to prevent passing to form field UI components\n const values = { ...field[1], order: undefined };\n return [key, values];\n});\n/** Calls `getFormFields` above, then sorts it into an indexed array */\nconst getSortedFormFields = (route, state) => {\n const formFields = getFormFields(route, state);\n return removeOrderKeys(sortFormFields(formFields));\n};\n\nexport { getCustomFormFields, getDefaultFormFields, getFormFields, getSortedFormFields, removeOrderKeys };\n","const COMPONENT_ROUTE_KEYS = [\n 'confirmResetPassword',\n 'confirmSignIn',\n 'confirmSignUp',\n 'confirmVerifyUser',\n 'forceNewPassword',\n 'forgotPassword',\n 'setupTotp',\n 'signIn',\n 'signUp',\n 'verifyUser',\n];\nconst COMPONENT_ROUTE_NAMES = [\n 'ConfirmResetPassword',\n 'ConfirmSignIn',\n 'ConfirmSignUp',\n 'ConfirmVerifyUser',\n 'ForceNewPassword',\n 'ForgotPassword',\n 'SetupTotp',\n 'SignIn',\n 'SignUp',\n 'VerifyUser',\n];\n\nexport { COMPONENT_ROUTE_KEYS, COMPONENT_ROUTE_NAMES };\n","import { getActorContext, getSortedFormFields, isString, areEmptyArrays, areEmptyObjects } from '@aws-amplify/ui';\nimport { isComponentRouteKey } from '../utils.mjs';\n\nconst defaultComparator = () => false;\n/**\n * Does an ordering and shallow comparison of each array value,\n * plus a value equality check for empty objects and arrays.\n */\nfunction areSelectorDepsEqual(currentDeps, nextDeps) {\n if (currentDeps.length !== nextDeps.length) {\n return false;\n }\n return currentDeps.every((currentDep, index) => {\n const nextDep = nextDeps[index];\n if (areEmptyArrays(currentDep, nextDep) ||\n areEmptyObjects(currentDep, nextDep)) {\n return true;\n }\n return currentDep === nextDep;\n });\n}\nconst getComparator = (selector) => (currentFacade, nextFacade) => {\n const currentSelectorDeps = selector(currentFacade);\n const nextSelectorDeps = selector(nextFacade);\n // Shallow compare the array values\n return areSelectorDepsEqual(currentSelectorDeps, nextSelectorDeps);\n};\nconst getQRFields = (state) => ({\n ...getActorContext(state)?.formFields?.setupTotp?.QR,\n});\nconst flattenFormFields = (fields) => fields.flatMap(([name, options]) => ({ name, ...options }));\nconst convertContactMethodsToFields = (unverifiedUserAttributes) => {\n return (unverifiedUserAttributes &&\n Object.entries(unverifiedUserAttributes).map(([name, value]) => {\n const valueIsString = isString(value);\n if (!valueIsString || !name) {\n return {};\n }\n return { name, label: value, type: 'radio', value };\n }));\n};\n/**\n * Retrieves default and custom (RWA only, to be updated) form field values from state machine\n * for subcomponent routes that render fields\n */\nconst getMachineFields = (route, state, unverifiedUserAttributes) => {\n if (isComponentRouteKey(route)) {\n return route === 'verifyUser'\n ? convertContactMethodsToFields(unverifiedUserAttributes)\n : flattenFormFields(getSortedFormFields(route, state));\n }\n return [];\n};\n\nexport { areSelectorDepsEqual, defaultComparator, getComparator, getMachineFields, getQRFields };\n","import { COMPONENT_ROUTE_KEYS, COMPONENT_ROUTE_NAMES } from './constants.mjs';\n\nconst isComponentRouteKey = (route) => COMPONENT_ROUTE_KEYS.some((componentRoute) => componentRoute === route);\nfunction resolveAuthenticatorComponents(defaults, overrides) {\n if (!overrides) {\n return defaults;\n }\n return COMPONENT_ROUTE_NAMES.reduce((components, route) => {\n const Default = defaults[route];\n const Override = overrides[route];\n if (typeof Override !== 'function') {\n return { ...components, [route]: Default };\n }\n const { Footer, FormFields, Header } = Default;\n // cast to allow assigning of component slots\n const Component = Override;\n Component.Footer = Footer;\n Component.FormFields = FormFields;\n Component.Header = Header;\n return { ...components, [route]: Component };\n }, {});\n}\n\nexport { isComponentRouteKey, resolveAuthenticatorComponents };\n","import React__default, { useCallback } from 'react';\nimport { useSelector } from '@xstate/react';\nimport { getServiceFacade } from '@aws-amplify/ui';\nimport 'aws-amplify/auth';\nimport { AuthenticatorContext } from '../../context/AuthenticatorContext.mjs';\nimport { USE_AUTHENTICATOR_ERROR } from './constants.mjs';\nimport { getQRFields, getMachineFields, getComparator, defaultComparator } from './utils.mjs';\n\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/connected-components/authenticator/headless#useauthenticator-hook)\n */\nfunction useAuthenticator(selector) {\n const context = React__default.useContext(AuthenticatorContext);\n if (!context) {\n throw new Error(USE_AUTHENTICATOR_ERROR);\n }\n const { service } = context;\n const { send } = service;\n const xstateSelector = useCallback((state) => ({ ...getServiceFacade({ send, state }) }), [send]);\n const comparator = selector ? getComparator(selector) : defaultComparator;\n // the purpose of `context.authStatus`is to intentionally override `facade.authStatus`. `facade.authStatus` does\n // not update on external sign in events (for example when a user is not using the `Authenticator`).\n const { authStatus } = context;\n const facade = useSelector(service, xstateSelector, comparator);\n const { route, totpSecretCode, unverifiedUserAttributes, user, ...rest } = facade;\n // do not memoize output. `service.getSnapshot` reference remains stable preventing\n // `fields` from updating with current form state on value changes\n const serviceSnapshot = service.getSnapshot();\n // legacy `QRFields` values only used for SetupTotp page to retrieve issuer information, will be removed in future\n const QRFields = route === 'setupTotp' ? getQRFields(serviceSnapshot) : null;\n // legacy `formFields` values required until form state is removed from state machine\n const fields = getMachineFields(route, serviceSnapshot, unverifiedUserAttributes);\n return {\n ...rest,\n authStatus,\n route,\n totpSecretCode,\n unverifiedUserAttributes,\n user,\n /** @deprecated For internal use only */\n fields,\n QRFields,\n };\n}\n\nexport { useAuthenticator as default };\n","import React__default from 'react';\nimport useAuthenticator from '../useAuthenticator/useAuthenticator.mjs';\n\n// only select `route` from machine context\nconst routeSelector = ({ route }) => [route];\nfunction useAuthenticatorInitMachine(data) {\n const { route, initializeMachine } = useAuthenticator(routeSelector);\n const hasInitialized = React__default.useRef(false);\n React__default.useEffect(() => {\n if (!hasInitialized.current && route === 'setup') {\n initializeMachine(data);\n hasInitialized.current = true;\n }\n }, [initializeMachine, route, data]);\n}\n\nexport { useAuthenticatorInitMachine as default, routeSelector };\n","import { AuthAction, Category, InAppMessagingAction, GeoAction, StorageAction } from '@aws-amplify/core/internals/utils';\n\nconst ACCOUNT_SETTINGS_INPUT_BASE = {\n apis: [AuthAction.DeleteUser, AuthAction.UpdatePassword],\n category: Category.Auth,\n};\nconst AUTHENTICATOR_INPUT_BASE = {\n apis: [\n AuthAction.SignUp,\n AuthAction.ConfirmSignUp,\n AuthAction.ResendSignUpCode,\n AuthAction.SignIn,\n AuthAction.ConfirmSignIn,\n AuthAction.FetchUserAttributes,\n AuthAction.SignOut,\n AuthAction.ResetPassword,\n AuthAction.ConfirmResetPassword,\n AuthAction.SignInWithRedirect,\n ],\n category: Category.Auth,\n};\nconst IN_APP_MESSAGING_INPUT_BASE = {\n apis: [InAppMessagingAction.NotifyMessageInteraction],\n category: Category.InAppMessaging,\n};\nconst LOCATION_SEARCH_INPUT_BASE = {\n category: Category.Geo,\n apis: [\n GeoAction.SearchByText,\n GeoAction.SearchForSuggestions,\n GeoAction.SearchByPlaceId,\n ],\n};\nconst MAP_VIEW_INPUT_BASE = {\n category: Category.Geo,\n apis: [],\n};\nconst STORAGE_MANAGER_INPUT_BASE = {\n apis: [StorageAction.UploadData],\n category: Category.Storage,\n};\n\nexport { ACCOUNT_SETTINGS_INPUT_BASE, AUTHENTICATOR_INPUT_BASE, IN_APP_MESSAGING_INPUT_BASE, LOCATION_SEARCH_INPUT_BASE, MAP_VIEW_INPUT_BASE, STORAGE_MANAGER_INPUT_BASE };\n","import { setCustomUserAgent } from '@aws-amplify/core/internals/utils';\nimport { STORAGE_MANAGER_INPUT_BASE, MAP_VIEW_INPUT_BASE, LOCATION_SEARCH_INPUT_BASE, IN_APP_MESSAGING_INPUT_BASE, ACCOUNT_SETTINGS_INPUT_BASE, AUTHENTICATOR_INPUT_BASE } from './constants.mjs';\nimport { noop } from '../utils.mjs';\n\n/**\n * @example\n * ```ts\n * // set user agent options\n * const clear = setUserAgent(input);\n *\n * // clear user agent options\n * clear();\n * ```\n */\nconst setUserAgent = ({ componentName, packageName, version, }) => {\n const packageData = [`ui-${packageName}`, version];\n switch (componentName) {\n case 'Authenticator': {\n setCustomUserAgent({\n ...AUTHENTICATOR_INPUT_BASE,\n additionalDetails: [[componentName], packageData],\n });\n break;\n }\n case 'ChangePassword':\n case 'DeleteUser': {\n setCustomUserAgent({\n ...ACCOUNT_SETTINGS_INPUT_BASE,\n additionalDetails: [['AccountSettings'], packageData],\n });\n break;\n }\n case 'InAppMessaging': {\n setCustomUserAgent({\n ...IN_APP_MESSAGING_INPUT_BASE,\n additionalDetails: [[componentName], packageData],\n });\n break;\n }\n case 'LocationSearch': {\n setCustomUserAgent({\n ...LOCATION_SEARCH_INPUT_BASE,\n additionalDetails: [[componentName], packageData],\n });\n break;\n }\n case 'MapView': {\n setCustomUserAgent({\n ...MAP_VIEW_INPUT_BASE,\n additionalDetails: [[componentName], packageData],\n });\n break;\n }\n case 'StorageManager': {\n setCustomUserAgent({\n ...STORAGE_MANAGER_INPUT_BASE,\n additionalDetails: [[componentName], packageData],\n });\n break;\n }\n }\n return noop;\n};\n\nexport { setUserAgent };\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nfunction __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nfunction __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nfunction __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\n\nexport { __assign, __read, __rest, __spreadArray, __values };\n","var ActionTypes;\n\n(function (ActionTypes) {\n ActionTypes[\"Start\"] = \"xstate.start\";\n ActionTypes[\"Stop\"] = \"xstate.stop\";\n ActionTypes[\"Raise\"] = \"xstate.raise\";\n ActionTypes[\"Send\"] = \"xstate.send\";\n ActionTypes[\"Cancel\"] = \"xstate.cancel\";\n ActionTypes[\"NullEvent\"] = \"\";\n ActionTypes[\"Assign\"] = \"xstate.assign\";\n ActionTypes[\"After\"] = \"xstate.after\";\n ActionTypes[\"DoneState\"] = \"done.state\";\n ActionTypes[\"DoneInvoke\"] = \"done.invoke\";\n ActionTypes[\"Log\"] = \"xstate.log\";\n ActionTypes[\"Init\"] = \"xstate.init\";\n ActionTypes[\"Invoke\"] = \"xstate.invoke\";\n ActionTypes[\"ErrorExecution\"] = \"error.execution\";\n ActionTypes[\"ErrorCommunication\"] = \"error.communication\";\n ActionTypes[\"ErrorPlatform\"] = \"error.platform\";\n ActionTypes[\"ErrorCustom\"] = \"xstate.error\";\n ActionTypes[\"Update\"] = \"xstate.update\";\n ActionTypes[\"Pure\"] = \"xstate.pure\";\n ActionTypes[\"Choose\"] = \"xstate.choose\";\n})(ActionTypes || (ActionTypes = {}));\n\nvar SpecialTargets;\n\n(function (SpecialTargets) {\n SpecialTargets[\"Parent\"] = \"#_parent\";\n SpecialTargets[\"Internal\"] = \"#_internal\";\n})(SpecialTargets || (SpecialTargets = {}));\n\nexport { ActionTypes, SpecialTargets };\n","var STATE_DELIMITER = '.';\nvar EMPTY_ACTIVITY_MAP = {};\nvar DEFAULT_GUARD_TYPE = 'xstate.guard';\nvar TARGETLESS_KEY = '';\n\nexport { DEFAULT_GUARD_TYPE, EMPTY_ACTIVITY_MAP, STATE_DELIMITER, TARGETLESS_KEY };\n","import { __values, __spreadArray, __read, __assign } from './_virtual/_tslib.js';\nimport { SpecialTargets } from './types.js';\nimport { raise, send } from './actionTypes.js';\nimport { DEFAULT_GUARD_TYPE, TARGETLESS_KEY, STATE_DELIMITER } from './constants.js';\nimport { IS_PRODUCTION } from './environment.js';\n\nvar _a;\nfunction keys(value) {\n return Object.keys(value);\n}\nfunction matchesState(parentStateId, childStateId, delimiter) {\n if (delimiter === void 0) {\n delimiter = STATE_DELIMITER;\n }\n\n var parentStateValue = toStateValue(parentStateId, delimiter);\n var childStateValue = toStateValue(childStateId, delimiter);\n\n if (isString(childStateValue)) {\n if (isString(parentStateValue)) {\n return childStateValue === parentStateValue;\n } // Parent more specific than child\n\n\n return false;\n }\n\n if (isString(parentStateValue)) {\n return parentStateValue in childStateValue;\n }\n\n return Object.keys(parentStateValue).every(function (key) {\n if (!(key in childStateValue)) {\n return false;\n }\n\n return matchesState(parentStateValue[key], childStateValue[key]);\n });\n}\nfunction getEventType(event) {\n try {\n return isString(event) || typeof event === 'number' ? \"\".concat(event) : event.type;\n } catch (e) {\n throw new Error('Events must be strings or objects with a string event.type property.');\n }\n}\nfunction getActionType(action) {\n try {\n return isString(action) || typeof action === 'number' ? \"\".concat(action) : isFunction(action) ? action.name : action.type;\n } catch (e) {\n throw new Error('Actions must be strings or objects with a string action.type property.');\n }\n}\nfunction toStatePath(stateId, delimiter) {\n try {\n if (isArray(stateId)) {\n return stateId;\n }\n\n return stateId.toString().split(delimiter);\n } catch (e) {\n throw new Error(\"'\".concat(stateId, \"' is not a valid state path.\"));\n }\n}\nfunction isStateLike(state) {\n return typeof state === 'object' && 'value' in state && 'context' in state && 'event' in state && '_event' in state;\n}\nfunction toStateValue(stateValue, delimiter) {\n if (isStateLike(stateValue)) {\n return stateValue.value;\n }\n\n if (isArray(stateValue)) {\n return pathToStateValue(stateValue);\n }\n\n if (typeof stateValue !== 'string') {\n return stateValue;\n }\n\n var statePath = toStatePath(stateValue, delimiter);\n return pathToStateValue(statePath);\n}\nfunction pathToStateValue(statePath) {\n if (statePath.length === 1) {\n return statePath[0];\n }\n\n var value = {};\n var marker = value;\n\n for (var i = 0; i < statePath.length - 1; i++) {\n if (i === statePath.length - 2) {\n marker[statePath[i]] = statePath[i + 1];\n } else {\n marker[statePath[i]] = {};\n marker = marker[statePath[i]];\n }\n }\n\n return value;\n}\nfunction mapValues(collection, iteratee) {\n var result = {};\n var collectionKeys = Object.keys(collection);\n\n for (var i = 0; i < collectionKeys.length; i++) {\n var key = collectionKeys[i];\n result[key] = iteratee(collection[key], key, collection, i);\n }\n\n return result;\n}\nfunction mapFilterValues(collection, iteratee, predicate) {\n var e_1, _a;\n\n var result = {};\n\n try {\n for (var _b = __values(Object.keys(collection)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var item = collection[key];\n\n if (!predicate(item)) {\n continue;\n }\n\n result[key] = iteratee(item, key, collection);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n\n return result;\n}\n/**\r\n * Retrieves a value at the given path.\r\n * @param props The deep path to the prop of the desired value\r\n */\n\nvar path = function (props) {\n return function (object) {\n var e_2, _a;\n\n var result = object;\n\n try {\n for (var props_1 = __values(props), props_1_1 = props_1.next(); !props_1_1.done; props_1_1 = props_1.next()) {\n var prop = props_1_1.value;\n result = result[prop];\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (props_1_1 && !props_1_1.done && (_a = props_1.return)) _a.call(props_1);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n\n return result;\n };\n};\n/**\r\n * Retrieves a value at the given path via the nested accessor prop.\r\n * @param props The deep path to the prop of the desired value\r\n */\n\nfunction nestedPath(props, accessorProp) {\n return function (object) {\n var e_3, _a;\n\n var result = object;\n\n try {\n for (var props_2 = __values(props), props_2_1 = props_2.next(); !props_2_1.done; props_2_1 = props_2.next()) {\n var prop = props_2_1.value;\n result = result[accessorProp][prop];\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (props_2_1 && !props_2_1.done && (_a = props_2.return)) _a.call(props_2);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n\n return result;\n };\n}\nfunction toStatePaths(stateValue) {\n if (!stateValue) {\n return [[]];\n }\n\n if (isString(stateValue)) {\n return [[stateValue]];\n }\n\n var result = flatten(Object.keys(stateValue).map(function (key) {\n var subStateValue = stateValue[key];\n\n if (typeof subStateValue !== 'string' && (!subStateValue || !Object.keys(subStateValue).length)) {\n return [[key]];\n }\n\n return toStatePaths(stateValue[key]).map(function (subPath) {\n return [key].concat(subPath);\n });\n }));\n return result;\n}\nfunction pathsToStateValue(paths) {\n var e_4, _a;\n\n var result = {};\n\n if (paths && paths.length === 1 && paths[0].length === 1) {\n return paths[0][0];\n }\n\n try {\n for (var paths_1 = __values(paths), paths_1_1 = paths_1.next(); !paths_1_1.done; paths_1_1 = paths_1.next()) {\n var currentPath = paths_1_1.value;\n var marker = result; // tslint:disable-next-line:prefer-for-of\n\n for (var i = 0; i < currentPath.length; i++) {\n var subPath = currentPath[i];\n\n if (i === currentPath.length - 2) {\n marker[subPath] = currentPath[i + 1];\n break;\n }\n\n marker[subPath] = marker[subPath] || {};\n marker = marker[subPath];\n }\n }\n } catch (e_4_1) {\n e_4 = {\n error: e_4_1\n };\n } finally {\n try {\n if (paths_1_1 && !paths_1_1.done && (_a = paths_1.return)) _a.call(paths_1);\n } finally {\n if (e_4) throw e_4.error;\n }\n }\n\n return result;\n}\nfunction flatten(array) {\n var _a;\n\n return (_a = []).concat.apply(_a, __spreadArray([], __read(array), false));\n}\nfunction toArrayStrict(value) {\n if (isArray(value)) {\n return value;\n }\n\n return [value];\n}\nfunction toArray(value) {\n if (value === undefined) {\n return [];\n }\n\n return toArrayStrict(value);\n}\nfunction mapContext(mapper, context, _event) {\n var e_5, _a;\n\n if (isFunction(mapper)) {\n return mapper(context, _event.data);\n }\n\n var result = {};\n\n try {\n for (var _b = __values(Object.keys(mapper)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var subMapper = mapper[key];\n\n if (isFunction(subMapper)) {\n result[key] = subMapper(context, _event.data);\n } else {\n result[key] = subMapper;\n }\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n\n return result;\n}\nfunction isBuiltInEvent(eventType) {\n return /^(done|error)\\./.test(eventType);\n}\nfunction isPromiseLike(value) {\n if (value instanceof Promise) {\n return true;\n } // Check if shape matches the Promise/A+ specification for a \"thenable\".\n\n\n if (value !== null && (isFunction(value) || typeof value === 'object') && isFunction(value.then)) {\n return true;\n }\n\n return false;\n}\nfunction isBehavior(value) {\n return value !== null && typeof value === 'object' && 'transition' in value && typeof value.transition === 'function';\n}\nfunction partition(items, predicate) {\n var e_6, _a;\n\n var _b = __read([[], []], 2),\n truthy = _b[0],\n falsy = _b[1];\n\n try {\n for (var items_1 = __values(items), items_1_1 = items_1.next(); !items_1_1.done; items_1_1 = items_1.next()) {\n var item = items_1_1.value;\n\n if (predicate(item)) {\n truthy.push(item);\n } else {\n falsy.push(item);\n }\n }\n } catch (e_6_1) {\n e_6 = {\n error: e_6_1\n };\n } finally {\n try {\n if (items_1_1 && !items_1_1.done && (_a = items_1.return)) _a.call(items_1);\n } finally {\n if (e_6) throw e_6.error;\n }\n }\n\n return [truthy, falsy];\n}\nfunction updateHistoryStates(hist, stateValue) {\n return mapValues(hist.states, function (subHist, key) {\n if (!subHist) {\n return undefined;\n }\n\n var subStateValue = (isString(stateValue) ? undefined : stateValue[key]) || (subHist ? subHist.current : undefined);\n\n if (!subStateValue) {\n return undefined;\n }\n\n return {\n current: subStateValue,\n states: updateHistoryStates(subHist, subStateValue)\n };\n });\n}\nfunction updateHistoryValue(hist, stateValue) {\n return {\n current: stateValue,\n states: updateHistoryStates(hist, stateValue)\n };\n}\nfunction updateContext(context, _event, assignActions, state) {\n if (!IS_PRODUCTION) {\n warn(!!context, 'Attempting to update undefined context');\n }\n\n var updatedContext = context ? assignActions.reduce(function (acc, assignAction) {\n var e_7, _a;\n\n var assignment = assignAction.assignment;\n var meta = {\n state: state,\n action: assignAction,\n _event: _event\n };\n var partialUpdate = {};\n\n if (isFunction(assignment)) {\n partialUpdate = assignment(acc, _event.data, meta);\n } else {\n try {\n for (var _b = __values(Object.keys(assignment)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var propAssignment = assignment[key];\n partialUpdate[key] = isFunction(propAssignment) ? propAssignment(acc, _event.data, meta) : propAssignment;\n }\n } catch (e_7_1) {\n e_7 = {\n error: e_7_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_7) throw e_7.error;\n }\n }\n }\n\n return Object.assign({}, acc, partialUpdate);\n }, context) : context;\n return updatedContext;\n} // tslint:disable-next-line:no-empty\n\nvar warn = function () {};\n\nif (!IS_PRODUCTION) {\n warn = function (condition, message) {\n var error = condition instanceof Error ? condition : undefined;\n\n if (!error && condition) {\n return;\n }\n\n if (console !== undefined) {\n var args = [\"Warning: \".concat(message)];\n\n if (error) {\n args.push(error);\n } // tslint:disable-next-line:no-console\n\n\n console.warn.apply(console, args);\n }\n };\n}\nfunction isArray(value) {\n return Array.isArray(value);\n} // tslint:disable-next-line:ban-types\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\nfunction isString(value) {\n return typeof value === 'string';\n}\nfunction toGuard(condition, guardMap) {\n if (!condition) {\n return undefined;\n }\n\n if (isString(condition)) {\n return {\n type: DEFAULT_GUARD_TYPE,\n name: condition,\n predicate: guardMap ? guardMap[condition] : undefined\n };\n }\n\n if (isFunction(condition)) {\n return {\n type: DEFAULT_GUARD_TYPE,\n name: condition.name,\n predicate: condition\n };\n }\n\n return condition;\n}\nfunction isObservable(value) {\n try {\n return 'subscribe' in value && isFunction(value.subscribe);\n } catch (e) {\n return false;\n }\n}\nvar symbolObservable = /*#__PURE__*/function () {\n return typeof Symbol === 'function' && Symbol.observable || '@@observable';\n}(); // TODO: to be removed in v5, left it out just to minimize the scope of the change and maintain compatibility with older versions of integration paackages\n\nvar interopSymbols = (_a = {}, _a[symbolObservable] = function () {\n return this;\n}, _a[Symbol.observable] = function () {\n return this;\n}, _a);\nfunction isMachine(value) {\n return !!value && '__xstatenode' in value;\n}\nfunction isActor(value) {\n return !!value && typeof value.send === 'function';\n}\nvar uniqueId = /*#__PURE__*/function () {\n var currentId = 0;\n return function () {\n currentId++;\n return currentId.toString(16);\n };\n}();\nfunction toEventObject(event, payload // id?: TEvent['type']\n) {\n if (isString(event) || typeof event === 'number') {\n return __assign({\n type: event\n }, payload);\n }\n\n return event;\n}\nfunction toSCXMLEvent(event, scxmlEvent) {\n if (!isString(event) && '$$type' in event && event.$$type === 'scxml') {\n return event;\n }\n\n var eventObject = toEventObject(event);\n return __assign({\n name: eventObject.type,\n data: eventObject,\n $$type: 'scxml',\n type: 'external'\n }, scxmlEvent);\n}\nfunction toTransitionConfigArray(event, configLike) {\n var transitions = toArrayStrict(configLike).map(function (transitionLike) {\n if (typeof transitionLike === 'undefined' || typeof transitionLike === 'string' || isMachine(transitionLike)) {\n return {\n target: transitionLike,\n event: event\n };\n }\n\n return __assign(__assign({}, transitionLike), {\n event: event\n });\n });\n return transitions;\n}\nfunction normalizeTarget(target) {\n if (target === undefined || target === TARGETLESS_KEY) {\n return undefined;\n }\n\n return toArray(target);\n}\nfunction reportUnhandledExceptionOnInvocation(originalError, currentError, id) {\n if (!IS_PRODUCTION) {\n var originalStackTrace = originalError.stack ? \" Stacktrace was '\".concat(originalError.stack, \"'\") : '';\n\n if (originalError === currentError) {\n // tslint:disable-next-line:no-console\n console.error(\"Missing onError handler for invocation '\".concat(id, \"', error was '\").concat(originalError, \"'.\").concat(originalStackTrace));\n } else {\n var stackTrace = currentError.stack ? \" Stacktrace was '\".concat(currentError.stack, \"'\") : ''; // tslint:disable-next-line:no-console\n\n console.error(\"Missing onError handler and/or unhandled exception/promise rejection for invocation '\".concat(id, \"'. \") + \"Original error: '\".concat(originalError, \"'. \").concat(originalStackTrace, \" Current error is '\").concat(currentError, \"'.\").concat(stackTrace));\n }\n }\n}\nfunction evaluateGuard(machine, guard, context, _event, state) {\n var guards = machine.options.guards;\n var guardMeta = {\n state: state,\n cond: guard,\n _event: _event\n }; // TODO: do not hardcode!\n\n if (guard.type === DEFAULT_GUARD_TYPE) {\n return ((guards === null || guards === void 0 ? void 0 : guards[guard.name]) || guard.predicate)(context, _event.data, guardMeta);\n }\n\n var condFn = guards === null || guards === void 0 ? void 0 : guards[guard.type];\n\n if (!condFn) {\n throw new Error(\"Guard '\".concat(guard.type, \"' is not implemented on machine '\").concat(machine.id, \"'.\"));\n }\n\n return condFn(context, _event.data, guardMeta);\n}\nfunction toInvokeSource(src) {\n if (typeof src === 'string') {\n return {\n type: src\n };\n }\n\n return src;\n}\nfunction toObserver(nextHandler, errorHandler, completionHandler) {\n var noop = function () {};\n\n var isObserver = typeof nextHandler === 'object';\n var self = isObserver ? nextHandler : null;\n return {\n next: ((isObserver ? nextHandler.next : nextHandler) || noop).bind(self),\n error: ((isObserver ? nextHandler.error : errorHandler) || noop).bind(self),\n complete: ((isObserver ? nextHandler.complete : completionHandler) || noop).bind(self)\n };\n}\nfunction createInvokeId(stateNodeId, index) {\n return \"\".concat(stateNodeId, \":invocation[\").concat(index, \"]\");\n}\nfunction isRaisableAction(action) {\n return (action.type === raise || action.type === send && action.to === SpecialTargets.Internal) && typeof action.delay !== 'number';\n}\n\nexport { createInvokeId, evaluateGuard, flatten, getActionType, getEventType, interopSymbols, isActor, isArray, isBehavior, isBuiltInEvent, isFunction, isMachine, isObservable, isPromiseLike, isRaisableAction, isStateLike, isString, keys, mapContext, mapFilterValues, mapValues, matchesState, nestedPath, normalizeTarget, partition, path, pathToStateValue, pathsToStateValue, reportUnhandledExceptionOnInvocation, symbolObservable, toArray, toArrayStrict, toEventObject, toGuard, toInvokeSource, toObserver, toSCXMLEvent, toStatePath, toStatePaths, toStateValue, toTransitionConfigArray, uniqueId, updateContext, updateHistoryStates, updateHistoryValue, warn };\n","import { ActionTypes } from './types.js';\n\nvar start = ActionTypes.Start;\nvar stop = ActionTypes.Stop;\nvar raise = ActionTypes.Raise;\nvar send = ActionTypes.Send;\nvar cancel = ActionTypes.Cancel;\nvar nullEvent = ActionTypes.NullEvent;\nvar assign = ActionTypes.Assign;\nvar after = ActionTypes.After;\nvar doneState = ActionTypes.DoneState;\nvar log = ActionTypes.Log;\nvar init = ActionTypes.Init;\nvar invoke = ActionTypes.Invoke;\nvar errorExecution = ActionTypes.ErrorExecution;\nvar errorPlatform = ActionTypes.ErrorPlatform;\nvar error = ActionTypes.ErrorCustom;\nvar update = ActionTypes.Update;\nvar choose = ActionTypes.Choose;\nvar pure = ActionTypes.Pure;\n\nexport { after, assign, cancel, choose, doneState, error, errorExecution, errorPlatform, init, invoke, log, nullEvent, pure, raise, send, start, stop, update };\n","var IS_PRODUCTION = process.env.NODE_ENV === 'production';\n\nexport { IS_PRODUCTION };\n","import { __values, __spreadArray, __read } from './_virtual/_tslib.js';\nimport { flatten } from './utils.js';\n\nvar isLeafNode = function (stateNode) {\n return stateNode.type === 'atomic' || stateNode.type === 'final';\n};\nfunction getAllChildren(stateNode) {\n return Object.keys(stateNode.states).map(function (key) {\n return stateNode.states[key];\n });\n}\nfunction getChildren(stateNode) {\n return getAllChildren(stateNode).filter(function (sn) {\n return sn.type !== 'history';\n });\n}\nfunction getAllStateNodes(stateNode) {\n var stateNodes = [stateNode];\n\n if (isLeafNode(stateNode)) {\n return stateNodes;\n }\n\n return stateNodes.concat(flatten(getChildren(stateNode).map(getAllStateNodes)));\n}\nfunction getConfiguration(prevStateNodes, stateNodes) {\n var e_1, _a, e_2, _b, e_3, _c, e_4, _d;\n\n var prevConfiguration = new Set(prevStateNodes);\n var prevAdjList = getAdjList(prevConfiguration);\n var configuration = new Set(stateNodes);\n\n try {\n // add all ancestors\n for (var configuration_1 = __values(configuration), configuration_1_1 = configuration_1.next(); !configuration_1_1.done; configuration_1_1 = configuration_1.next()) {\n var s = configuration_1_1.value;\n var m = s.parent;\n\n while (m && !configuration.has(m)) {\n configuration.add(m);\n m = m.parent;\n }\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (configuration_1_1 && !configuration_1_1.done && (_a = configuration_1.return)) _a.call(configuration_1);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n\n var adjList = getAdjList(configuration);\n\n try {\n // add descendants\n for (var configuration_2 = __values(configuration), configuration_2_1 = configuration_2.next(); !configuration_2_1.done; configuration_2_1 = configuration_2.next()) {\n var s = configuration_2_1.value; // if previously active, add existing child nodes\n\n if (s.type === 'compound' && (!adjList.get(s) || !adjList.get(s).length)) {\n if (prevAdjList.get(s)) {\n prevAdjList.get(s).forEach(function (sn) {\n return configuration.add(sn);\n });\n } else {\n s.initialStateNodes.forEach(function (sn) {\n return configuration.add(sn);\n });\n }\n } else {\n if (s.type === 'parallel') {\n try {\n for (var _e = (e_3 = void 0, __values(getChildren(s))), _f = _e.next(); !_f.done; _f = _e.next()) {\n var child = _f.value;\n\n if (!configuration.has(child)) {\n configuration.add(child);\n\n if (prevAdjList.get(child)) {\n prevAdjList.get(child).forEach(function (sn) {\n return configuration.add(sn);\n });\n } else {\n child.initialStateNodes.forEach(function (sn) {\n return configuration.add(sn);\n });\n }\n }\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_c = _e.return)) _c.call(_e);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n }\n }\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (configuration_2_1 && !configuration_2_1.done && (_b = configuration_2.return)) _b.call(configuration_2);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n\n try {\n // add all ancestors\n for (var configuration_3 = __values(configuration), configuration_3_1 = configuration_3.next(); !configuration_3_1.done; configuration_3_1 = configuration_3.next()) {\n var s = configuration_3_1.value;\n var m = s.parent;\n\n while (m && !configuration.has(m)) {\n configuration.add(m);\n m = m.parent;\n }\n }\n } catch (e_4_1) {\n e_4 = {\n error: e_4_1\n };\n } finally {\n try {\n if (configuration_3_1 && !configuration_3_1.done && (_d = configuration_3.return)) _d.call(configuration_3);\n } finally {\n if (e_4) throw e_4.error;\n }\n }\n\n return configuration;\n}\n\nfunction getValueFromAdj(baseNode, adjList) {\n var childStateNodes = adjList.get(baseNode);\n\n if (!childStateNodes) {\n return {}; // todo: fix?\n }\n\n if (baseNode.type === 'compound') {\n var childStateNode = childStateNodes[0];\n\n if (childStateNode) {\n if (isLeafNode(childStateNode)) {\n return childStateNode.key;\n }\n } else {\n return {};\n }\n }\n\n var stateValue = {};\n childStateNodes.forEach(function (csn) {\n stateValue[csn.key] = getValueFromAdj(csn, adjList);\n });\n return stateValue;\n}\n\nfunction getAdjList(configuration) {\n var e_5, _a;\n\n var adjList = new Map();\n\n try {\n for (var configuration_4 = __values(configuration), configuration_4_1 = configuration_4.next(); !configuration_4_1.done; configuration_4_1 = configuration_4.next()) {\n var s = configuration_4_1.value;\n\n if (!adjList.has(s)) {\n adjList.set(s, []);\n }\n\n if (s.parent) {\n if (!adjList.has(s.parent)) {\n adjList.set(s.parent, []);\n }\n\n adjList.get(s.parent).push(s);\n }\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (configuration_4_1 && !configuration_4_1.done && (_a = configuration_4.return)) _a.call(configuration_4);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n\n return adjList;\n}\nfunction getValue(rootNode, configuration) {\n var config = getConfiguration([rootNode], configuration);\n return getValueFromAdj(rootNode, getAdjList(config));\n}\nfunction has(iterable, item) {\n if (Array.isArray(iterable)) {\n return iterable.some(function (member) {\n return member === item;\n });\n }\n\n if (iterable instanceof Set) {\n return iterable.has(item);\n }\n\n return false; // TODO: fix\n}\nfunction nextEvents(configuration) {\n return __spreadArray([], __read(new Set(flatten(__spreadArray([], __read(configuration.map(function (sn) {\n return sn.ownEvents;\n })), false)))), false);\n}\nfunction isInFinalState(configuration, stateNode) {\n if (stateNode.type === 'compound') {\n return getChildren(stateNode).some(function (s) {\n return s.type === 'final' && has(configuration, s);\n });\n }\n\n if (stateNode.type === 'parallel') {\n return getChildren(stateNode).every(function (sn) {\n return isInFinalState(configuration, sn);\n });\n }\n\n return false;\n}\nfunction getMeta(configuration) {\n if (configuration === void 0) {\n configuration = [];\n }\n\n return configuration.reduce(function (acc, stateNode) {\n if (stateNode.meta !== undefined) {\n acc[stateNode.id] = stateNode.meta;\n }\n\n return acc;\n }, {});\n}\nfunction getTagsFromConfiguration(configuration) {\n return new Set(flatten(configuration.map(function (sn) {\n return sn.tags;\n })));\n}\n\nexport { getAdjList, getAllChildren, getAllStateNodes, getChildren, getConfiguration, getMeta, getTagsFromConfiguration, getValue, has, isInFinalState, isLeafNode, nextEvents };\n","import { __assign, __spreadArray, __read, __values } from './_virtual/_tslib.js';\nimport { SpecialTargets, ActionTypes } from './types.js';\nimport { init, raise as raise$1, send as send$1, update, log as log$1, cancel as cancel$1, assign as assign$1, error as error$1, stop as stop$1, pure as pure$1, choose as choose$1 } from './actionTypes.js';\nimport * as actionTypes from './actionTypes.js';\nexport { actionTypes };\nimport { toSCXMLEvent, isString, isFunction, toEventObject, getEventType, updateContext, flatten, isArray, toArray, toGuard, evaluateGuard, warn } from './utils.js';\nimport { IS_PRODUCTION } from './environment.js';\n\nvar initEvent = /*#__PURE__*/toSCXMLEvent({\n type: init\n});\nfunction getActionFunction(actionType, actionFunctionMap) {\n return actionFunctionMap ? actionFunctionMap[actionType] || undefined : undefined;\n}\nfunction toActionObject(action, actionFunctionMap) {\n var actionObject;\n\n if (isString(action) || typeof action === 'number') {\n var exec = getActionFunction(action, actionFunctionMap);\n\n if (isFunction(exec)) {\n actionObject = {\n type: action,\n exec: exec\n };\n } else if (exec) {\n actionObject = exec;\n } else {\n actionObject = {\n type: action,\n exec: undefined\n };\n }\n } else if (isFunction(action)) {\n actionObject = {\n // Convert action to string if unnamed\n type: action.name || action.toString(),\n exec: action\n };\n } else {\n var exec = getActionFunction(action.type, actionFunctionMap);\n\n if (isFunction(exec)) {\n actionObject = __assign(__assign({}, action), {\n exec: exec\n });\n } else if (exec) {\n var actionType = exec.type || action.type;\n actionObject = __assign(__assign(__assign({}, exec), action), {\n type: actionType\n });\n } else {\n actionObject = action;\n }\n }\n\n return actionObject;\n}\nvar toActionObjects = function (action, actionFunctionMap) {\n if (!action) {\n return [];\n }\n\n var actions = isArray(action) ? action : [action];\n return actions.map(function (subAction) {\n return toActionObject(subAction, actionFunctionMap);\n });\n};\nfunction toActivityDefinition(action) {\n var actionObject = toActionObject(action);\n return __assign(__assign({\n id: isString(action) ? action : actionObject.id\n }, actionObject), {\n type: actionObject.type\n });\n}\n/**\r\n * Raises an event. This places the event in the internal event queue, so that\r\n * the event is immediately consumed by the machine in the current step.\r\n *\r\n * @param eventType The event to raise.\r\n */\n\nfunction raise(event, options) {\n return {\n type: raise$1,\n event: typeof event === 'function' ? event : toEventObject(event),\n delay: options ? options.delay : undefined,\n id: options === null || options === void 0 ? void 0 : options.id\n };\n}\nfunction resolveRaise(action, ctx, _event, delaysMap) {\n var meta = {\n _event: _event\n };\n var resolvedEvent = toSCXMLEvent(isFunction(action.event) ? action.event(ctx, _event.data, meta) : action.event);\n var resolvedDelay;\n\n if (isString(action.delay)) {\n var configDelay = delaysMap && delaysMap[action.delay];\n resolvedDelay = isFunction(configDelay) ? configDelay(ctx, _event.data, meta) : configDelay;\n } else {\n resolvedDelay = isFunction(action.delay) ? action.delay(ctx, _event.data, meta) : action.delay;\n }\n\n return __assign(__assign({}, action), {\n type: raise$1,\n _event: resolvedEvent,\n delay: resolvedDelay\n });\n}\n/**\r\n * Sends an event. This returns an action that will be read by an interpreter to\r\n * send the event in the next step, after the current step is finished executing.\r\n *\r\n * @deprecated Use the `sendTo(...)` action creator instead.\r\n *\r\n * @param event The event to send.\r\n * @param options Options to pass into the send event:\r\n * - `id` - The unique send event identifier (used with `cancel()`).\r\n * - `delay` - The number of milliseconds to delay the sending of the event.\r\n * - `to` - The target of this event (by default, the machine the event was sent from).\r\n */\n\nfunction send(event, options) {\n return {\n to: options ? options.to : undefined,\n type: send$1,\n event: isFunction(event) ? event : toEventObject(event),\n delay: options ? options.delay : undefined,\n // TODO: don't auto-generate IDs here like that\n // there is too big chance of the ID collision\n id: options && options.id !== undefined ? options.id : isFunction(event) ? event.name : getEventType(event)\n };\n}\nfunction resolveSend(action, ctx, _event, delaysMap) {\n var meta = {\n _event: _event\n }; // TODO: helper function for resolving Expr\n\n var resolvedEvent = toSCXMLEvent(isFunction(action.event) ? action.event(ctx, _event.data, meta) : action.event);\n var resolvedDelay;\n\n if (isString(action.delay)) {\n var configDelay = delaysMap && delaysMap[action.delay];\n resolvedDelay = isFunction(configDelay) ? configDelay(ctx, _event.data, meta) : configDelay;\n } else {\n resolvedDelay = isFunction(action.delay) ? action.delay(ctx, _event.data, meta) : action.delay;\n }\n\n var resolvedTarget = isFunction(action.to) ? action.to(ctx, _event.data, meta) : action.to;\n return __assign(__assign({}, action), {\n to: resolvedTarget,\n _event: resolvedEvent,\n event: resolvedEvent.data,\n delay: resolvedDelay\n });\n}\n/**\r\n * Sends an event to this machine's parent.\r\n *\r\n * @param event The event to send to the parent machine.\r\n * @param options Options to pass into the send event.\r\n */\n\nfunction sendParent(event, options) {\n return send(event, __assign(__assign({}, options), {\n to: SpecialTargets.Parent\n }));\n}\n/**\r\n * Sends an event to an actor.\r\n *\r\n * @param actor The `ActorRef` to send the event to.\r\n * @param event The event to send, or an expression that evaluates to the event to send\r\n * @param options Send action options\r\n * @returns An XState send action object\r\n */\n\nfunction sendTo(actor, event, options) {\n return send(event, __assign(__assign({}, options), {\n to: actor\n }));\n}\n/**\r\n * Sends an update event to this machine's parent.\r\n */\n\nfunction sendUpdate() {\n return sendParent(update);\n}\n/**\r\n * Sends an event back to the sender of the original event.\r\n *\r\n * @param event The event to send back to the sender\r\n * @param options Options to pass into the send event\r\n */\n\nfunction respond(event, options) {\n return send(event, __assign(__assign({}, options), {\n to: function (_, __, _a) {\n var _event = _a._event;\n return _event.origin; // TODO: handle when _event.origin is undefined\n }\n }));\n}\n\nvar defaultLogExpr = function (context, event) {\n return {\n context: context,\n event: event\n };\n};\n/**\r\n *\r\n * @param expr The expression function to evaluate which will be logged.\r\n * Takes in 2 arguments:\r\n * - `ctx` - the current state context\r\n * - `event` - the event that caused this action to be executed.\r\n * @param label The label to give to the logged expression.\r\n */\n\n\nfunction log(expr, label) {\n if (expr === void 0) {\n expr = defaultLogExpr;\n }\n\n return {\n type: log$1,\n label: label,\n expr: expr\n };\n}\nvar resolveLog = function (action, ctx, _event) {\n return __assign(__assign({}, action), {\n value: isString(action.expr) ? action.expr : action.expr(ctx, _event.data, {\n _event: _event\n })\n });\n};\n/**\r\n * Cancels an in-flight `send(...)` action. A canceled sent action will not\r\n * be executed, nor will its event be sent, unless it has already been sent\r\n * (e.g., if `cancel(...)` is called after the `send(...)` action's `delay`).\r\n *\r\n * @param sendId The `id` of the `send(...)` action to cancel.\r\n */\n\nvar cancel = function (sendId) {\n return {\n type: cancel$1,\n sendId: sendId\n };\n};\n/**\r\n * Starts an activity.\r\n *\r\n * @param activity The activity to start.\r\n */\n\nfunction start(activity) {\n var activityDef = toActivityDefinition(activity);\n return {\n type: ActionTypes.Start,\n activity: activityDef,\n exec: undefined\n };\n}\n/**\r\n * Stops an activity.\r\n *\r\n * @param actorRef The activity to stop.\r\n */\n\nfunction stop(actorRef) {\n var activity = isFunction(actorRef) ? actorRef : toActivityDefinition(actorRef);\n return {\n type: ActionTypes.Stop,\n activity: activity,\n exec: undefined\n };\n}\nfunction resolveStop(action, context, _event) {\n var actorRefOrString = isFunction(action.activity) ? action.activity(context, _event.data) : action.activity;\n var resolvedActorRef = typeof actorRefOrString === 'string' ? {\n id: actorRefOrString\n } : actorRefOrString;\n var actionObject = {\n type: ActionTypes.Stop,\n activity: resolvedActorRef\n };\n return actionObject;\n}\n/**\r\n * Updates the current context of the machine.\r\n *\r\n * @param assignment An object that represents the partial context to update.\r\n */\n\nvar assign = function (assignment) {\n return {\n type: assign$1,\n assignment: assignment\n };\n};\nfunction isActionObject(action) {\n return typeof action === 'object' && 'type' in action;\n}\n/**\r\n * Returns an event type that represents an implicit event that\r\n * is sent after the specified `delay`.\r\n *\r\n * @param delayRef The delay in milliseconds\r\n * @param id The state node ID where this event is handled\r\n */\n\nfunction after(delayRef, id) {\n var idSuffix = id ? \"#\".concat(id) : '';\n return \"\".concat(ActionTypes.After, \"(\").concat(delayRef, \")\").concat(idSuffix);\n}\n/**\r\n * Returns an event that represents that a final state node\r\n * has been reached in the parent state node.\r\n *\r\n * @param id The final state node's parent state node `id`\r\n * @param data The data to pass into the event\r\n */\n\nfunction done(id, data) {\n var type = \"\".concat(ActionTypes.DoneState, \".\").concat(id);\n var eventObject = {\n type: type,\n data: data\n };\n\n eventObject.toString = function () {\n return type;\n };\n\n return eventObject;\n}\n/**\r\n * Returns an event that represents that an invoked service has terminated.\r\n *\r\n * An invoked service is terminated when it has reached a top-level final state node,\r\n * but not when it is canceled.\r\n *\r\n * @param id The final state node ID\r\n * @param data The data to pass into the event\r\n */\n\nfunction doneInvoke(id, data) {\n var type = \"\".concat(ActionTypes.DoneInvoke, \".\").concat(id);\n var eventObject = {\n type: type,\n data: data\n };\n\n eventObject.toString = function () {\n return type;\n };\n\n return eventObject;\n}\nfunction error(id, data) {\n var type = \"\".concat(ActionTypes.ErrorPlatform, \".\").concat(id);\n var eventObject = {\n type: type,\n data: data\n };\n\n eventObject.toString = function () {\n return type;\n };\n\n return eventObject;\n}\nfunction pure(getActions) {\n return {\n type: ActionTypes.Pure,\n get: getActions\n };\n}\n/**\r\n * Forwards (sends) an event to a specified service.\r\n *\r\n * @param target The target service to forward the event to.\r\n * @param options Options to pass into the send action creator.\r\n */\n\nfunction forwardTo(target, options) {\n if (!IS_PRODUCTION && (!target || typeof target === 'function')) {\n var originalTarget_1 = target;\n\n target = function () {\n var args = [];\n\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n\n var resolvedTarget = typeof originalTarget_1 === 'function' ? originalTarget_1.apply(void 0, __spreadArray([], __read(args), false)) : originalTarget_1;\n\n if (!resolvedTarget) {\n throw new Error(\"Attempted to forward event to undefined actor. This risks an infinite loop in the sender.\");\n }\n\n return resolvedTarget;\n };\n }\n\n return send(function (_, event) {\n return event;\n }, __assign(__assign({}, options), {\n to: target\n }));\n}\n/**\r\n * Escalates an error by sending it as an event to this machine's parent.\r\n *\r\n * @param errorData The error data to send, or the expression function that\r\n * takes in the `context`, `event`, and `meta`, and returns the error data to send.\r\n * @param options Options to pass into the send action creator.\r\n */\n\nfunction escalate(errorData, options) {\n return sendParent(function (context, event, meta) {\n return {\n type: error$1,\n data: isFunction(errorData) ? errorData(context, event, meta) : errorData\n };\n }, __assign(__assign({}, options), {\n to: SpecialTargets.Parent\n }));\n}\nfunction choose(conds) {\n return {\n type: ActionTypes.Choose,\n conds: conds\n };\n}\n\nvar pluckAssigns = function (actionBlocks) {\n var e_1, _a;\n\n var assignActions = [];\n\n try {\n for (var actionBlocks_1 = __values(actionBlocks), actionBlocks_1_1 = actionBlocks_1.next(); !actionBlocks_1_1.done; actionBlocks_1_1 = actionBlocks_1.next()) {\n var block = actionBlocks_1_1.value;\n var i = 0;\n\n while (i < block.actions.length) {\n if (block.actions[i].type === assign$1) {\n assignActions.push(block.actions[i]);\n block.actions.splice(i, 1);\n continue;\n }\n\n i++;\n }\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (actionBlocks_1_1 && !actionBlocks_1_1.done && (_a = actionBlocks_1.return)) _a.call(actionBlocks_1);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n\n return assignActions;\n};\n\nfunction resolveActions(machine, currentState, currentContext, _event, actionBlocks, predictableExec, preserveActionOrder) {\n if (preserveActionOrder === void 0) {\n preserveActionOrder = false;\n }\n\n var assignActions = preserveActionOrder ? [] : pluckAssigns(actionBlocks);\n var updatedContext = assignActions.length ? updateContext(currentContext, _event, assignActions, currentState) : currentContext;\n var preservedContexts = preserveActionOrder ? [currentContext] : undefined;\n var deferredToBlockEnd = [];\n\n function handleAction(blockType, actionObject) {\n var _a;\n\n switch (actionObject.type) {\n case raise$1:\n {\n var raisedAction = resolveRaise(actionObject, updatedContext, _event, machine.options.delays);\n\n if (predictableExec && typeof raisedAction.delay === 'number') {\n predictableExec(raisedAction, updatedContext, _event);\n }\n\n return raisedAction;\n }\n\n case send$1:\n var sendAction = resolveSend(actionObject, updatedContext, _event, machine.options.delays); // TODO: fix ActionTypes.Init\n\n if (!IS_PRODUCTION) {\n var configuredDelay = actionObject.delay; // warn after resolving as we can create better contextual message here\n\n warn(!isString(configuredDelay) || typeof sendAction.delay === 'number', // tslint:disable-next-line:max-line-length\n \"No delay reference for delay expression '\".concat(configuredDelay, \"' was found on machine '\").concat(machine.id, \"'\"));\n }\n\n if (predictableExec && sendAction.to !== SpecialTargets.Internal) {\n if (blockType === 'entry') {\n deferredToBlockEnd.push(sendAction);\n } else {\n predictableExec(sendAction, updatedContext, _event);\n }\n }\n\n return sendAction;\n\n case log$1:\n {\n var resolved = resolveLog(actionObject, updatedContext, _event);\n predictableExec === null || predictableExec === void 0 ? void 0 : predictableExec(resolved, updatedContext, _event);\n return resolved;\n }\n\n case choose$1:\n {\n var chooseAction = actionObject;\n var matchedActions = (_a = chooseAction.conds.find(function (condition) {\n var guard = toGuard(condition.cond, machine.options.guards);\n return !guard || evaluateGuard(machine, guard, updatedContext, _event, !predictableExec ? currentState : undefined);\n })) === null || _a === void 0 ? void 0 : _a.actions;\n\n if (!matchedActions) {\n return [];\n }\n\n var _b = __read(resolveActions(machine, currentState, updatedContext, _event, [{\n type: blockType,\n actions: toActionObjects(toArray(matchedActions), machine.options.actions)\n }], predictableExec, preserveActionOrder), 2),\n resolvedActionsFromChoose = _b[0],\n resolvedContextFromChoose = _b[1];\n\n updatedContext = resolvedContextFromChoose;\n preservedContexts === null || preservedContexts === void 0 ? void 0 : preservedContexts.push(updatedContext);\n return resolvedActionsFromChoose;\n }\n\n case pure$1:\n {\n var matchedActions = actionObject.get(updatedContext, _event.data);\n\n if (!matchedActions) {\n return [];\n }\n\n var _c = __read(resolveActions(machine, currentState, updatedContext, _event, [{\n type: blockType,\n actions: toActionObjects(toArray(matchedActions), machine.options.actions)\n }], predictableExec, preserveActionOrder), 2),\n resolvedActionsFromPure = _c[0],\n resolvedContext = _c[1];\n\n updatedContext = resolvedContext;\n preservedContexts === null || preservedContexts === void 0 ? void 0 : preservedContexts.push(updatedContext);\n return resolvedActionsFromPure;\n }\n\n case stop$1:\n {\n var resolved = resolveStop(actionObject, updatedContext, _event);\n predictableExec === null || predictableExec === void 0 ? void 0 : predictableExec(resolved, currentContext, _event);\n return resolved;\n }\n\n case assign$1:\n {\n updatedContext = updateContext(updatedContext, _event, [actionObject], !predictableExec ? currentState : undefined);\n preservedContexts === null || preservedContexts === void 0 ? void 0 : preservedContexts.push(updatedContext);\n break;\n }\n\n default:\n var resolvedActionObject = toActionObject(actionObject, machine.options.actions);\n var exec_1 = resolvedActionObject.exec;\n\n if (predictableExec) {\n predictableExec(resolvedActionObject, updatedContext, _event);\n } else if (exec_1 && preservedContexts) {\n var contextIndex_1 = preservedContexts.length - 1;\n\n var wrapped = __assign(__assign({}, resolvedActionObject), {\n exec: function (_ctx) {\n var args = [];\n\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n\n exec_1.apply(void 0, __spreadArray([preservedContexts[contextIndex_1]], __read(args), false));\n }\n });\n\n resolvedActionObject = wrapped;\n }\n\n return resolvedActionObject;\n }\n }\n\n function processBlock(block) {\n var e_2, _a;\n\n var resolvedActions = [];\n\n try {\n for (var _b = __values(block.actions), _c = _b.next(); !_c.done; _c = _b.next()) {\n var action = _c.value;\n var resolved = handleAction(block.type, action);\n\n if (resolved) {\n resolvedActions = resolvedActions.concat(resolved);\n }\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n\n deferredToBlockEnd.forEach(function (action) {\n predictableExec(action, updatedContext, _event);\n });\n deferredToBlockEnd.length = 0;\n return resolvedActions;\n }\n\n var resolvedActions = flatten(actionBlocks.map(processBlock));\n return [resolvedActions, updatedContext];\n}\n\nexport { after, assign, cancel, choose, done, doneInvoke, error, escalate, forwardTo, getActionFunction, initEvent, isActionObject, log, pure, raise, resolveActions, resolveLog, resolveRaise, resolveSend, resolveStop, respond, send, sendParent, sendTo, sendUpdate, start, stop, toActionObject, toActionObjects, toActivityDefinition };\n","import { __assign, __spreadArray, __read, __rest } from './_virtual/_tslib.js';\nimport { EMPTY_ACTIVITY_MAP } from './constants.js';\nimport { isString, matchesState, warn } from './utils.js';\nimport { getMeta, nextEvents } from './stateUtils.js';\nimport { initEvent } from './actions.js';\nimport { IS_PRODUCTION } from './environment.js';\n\nfunction stateValuesEqual(a, b) {\n if (a === b) {\n return true;\n }\n\n if (a === undefined || b === undefined) {\n return false;\n }\n\n if (isString(a) || isString(b)) {\n return a === b;\n }\n\n var aKeys = Object.keys(a);\n var bKeys = Object.keys(b);\n return aKeys.length === bKeys.length && aKeys.every(function (key) {\n return stateValuesEqual(a[key], b[key]);\n });\n}\nfunction isStateConfig(state) {\n if (typeof state !== 'object' || state === null) {\n return false;\n }\n\n return 'value' in state && '_event' in state;\n}\n/**\r\n * @deprecated Use `isStateConfig(object)` or `state instanceof State` instead.\r\n */\n\nvar isState = isStateConfig;\nfunction bindActionToState(action, state) {\n var exec = action.exec;\n\n var boundAction = __assign(__assign({}, action), {\n exec: exec !== undefined ? function () {\n return exec(state.context, state.event, {\n action: action,\n state: state,\n _event: state._event\n });\n } : undefined\n });\n\n return boundAction;\n}\n\nvar State =\n/*#__PURE__*/\n\n/** @class */\nfunction () {\n /**\r\n * Creates a new State instance.\r\n * @param value The state value\r\n * @param context The extended state\r\n * @param historyValue The tree representing historical values of the state nodes\r\n * @param history The previous state\r\n * @param actions An array of action objects to execute as side-effects\r\n * @param activities A mapping of activities and whether they are started (`true`) or stopped (`false`).\r\n * @param meta\r\n * @param events Internal event queue. Should be empty with run-to-completion semantics.\r\n * @param configuration\r\n */\n function State(config) {\n var _this = this;\n\n var _a;\n\n this.actions = [];\n this.activities = EMPTY_ACTIVITY_MAP;\n this.meta = {};\n this.events = [];\n this.value = config.value;\n this.context = config.context;\n this._event = config._event;\n this._sessionid = config._sessionid;\n this.event = this._event.data;\n this.historyValue = config.historyValue;\n this.history = config.history;\n this.actions = config.actions || [];\n this.activities = config.activities || EMPTY_ACTIVITY_MAP;\n this.meta = getMeta(config.configuration);\n this.events = config.events || [];\n this.matches = this.matches.bind(this);\n this.toStrings = this.toStrings.bind(this);\n this.configuration = config.configuration;\n this.transitions = config.transitions;\n this.children = config.children;\n this.done = !!config.done;\n this.tags = (_a = Array.isArray(config.tags) ? new Set(config.tags) : config.tags) !== null && _a !== void 0 ? _a : new Set();\n this.machine = config.machine;\n Object.defineProperty(this, 'nextEvents', {\n get: function () {\n return nextEvents(_this.configuration);\n }\n });\n }\n /**\r\n * Creates a new State instance for the given `stateValue` and `context`.\r\n * @param stateValue\r\n * @param context\r\n */\n\n\n State.from = function (stateValue, context) {\n if (stateValue instanceof State) {\n if (stateValue.context !== context) {\n return new State({\n value: stateValue.value,\n context: context,\n _event: stateValue._event,\n _sessionid: null,\n historyValue: stateValue.historyValue,\n history: stateValue.history,\n actions: [],\n activities: stateValue.activities,\n meta: {},\n events: [],\n configuration: [],\n transitions: [],\n children: {}\n });\n }\n\n return stateValue;\n }\n\n var _event = initEvent;\n return new State({\n value: stateValue,\n context: context,\n _event: _event,\n _sessionid: null,\n historyValue: undefined,\n history: undefined,\n actions: [],\n activities: undefined,\n meta: undefined,\n events: [],\n configuration: [],\n transitions: [],\n children: {}\n });\n };\n /**\r\n * Creates a new State instance for the given `config`.\r\n * @param config The state config\r\n */\n\n\n State.create = function (config) {\n return new State(config);\n };\n /**\r\n * Creates a new `State` instance for the given `stateValue` and `context` with no actions (side-effects).\r\n * @param stateValue\r\n * @param context\r\n */\n\n\n State.inert = function (stateValue, context) {\n if (stateValue instanceof State) {\n if (!stateValue.actions.length) {\n return stateValue;\n }\n\n var _event = initEvent;\n return new State({\n value: stateValue.value,\n context: context,\n _event: _event,\n _sessionid: null,\n historyValue: stateValue.historyValue,\n history: stateValue.history,\n activities: stateValue.activities,\n configuration: stateValue.configuration,\n transitions: [],\n children: {}\n });\n }\n\n return State.from(stateValue, context);\n };\n /**\r\n * Returns an array of all the string leaf state node paths.\r\n * @param stateValue\r\n * @param delimiter The character(s) that separate each subpath in the string state node path.\r\n */\n\n\n State.prototype.toStrings = function (stateValue, delimiter) {\n var _this = this;\n\n if (stateValue === void 0) {\n stateValue = this.value;\n }\n\n if (delimiter === void 0) {\n delimiter = '.';\n }\n\n if (isString(stateValue)) {\n return [stateValue];\n }\n\n var valueKeys = Object.keys(stateValue);\n return valueKeys.concat.apply(valueKeys, __spreadArray([], __read(valueKeys.map(function (key) {\n return _this.toStrings(stateValue[key], delimiter).map(function (s) {\n return key + delimiter + s;\n });\n })), false));\n };\n\n State.prototype.toJSON = function () {\n var _a = this;\n _a.configuration;\n _a.transitions;\n var tags = _a.tags;\n _a.machine;\n var jsonValues = __rest(_a, [\"configuration\", \"transitions\", \"tags\", \"machine\"]);\n\n return __assign(__assign({}, jsonValues), {\n tags: Array.from(tags)\n });\n };\n\n State.prototype.matches = function (parentStateValue) {\n return matchesState(parentStateValue, this.value);\n };\n /**\r\n * Whether the current state configuration has a state node with the specified `tag`.\r\n * @param tag\r\n */\n\n\n State.prototype.hasTag = function (tag) {\n return this.tags.has(tag);\n };\n /**\r\n * Determines whether sending the `event` will cause a non-forbidden transition\r\n * to be selected, even if the transitions have no actions nor\r\n * change the state value.\r\n *\r\n * @param event The event to test\r\n * @returns Whether the event will cause a transition\r\n */\n\n\n State.prototype.can = function (event) {\n var _a;\n\n if (IS_PRODUCTION) {\n warn(!!this.machine, \"state.can(...) used outside of a machine-created State object; this will always return false.\");\n }\n\n var transitionData = (_a = this.machine) === null || _a === void 0 ? void 0 : _a.getTransitionData(this, event);\n return !!(transitionData === null || transitionData === void 0 ? void 0 : transitionData.transitions.length) && // Check that at least one transition is not forbidden\n transitionData.transitions.some(function (t) {\n return t.target !== undefined || t.actions.length;\n });\n };\n\n return State;\n}();\n\nexport { State, bindActionToState, isState, isStateConfig, stateValuesEqual };\n","import { __assign } from './_virtual/_tslib.js';\n\nvar defaultOptions = {\n deferEvents: false\n};\n\nvar Scheduler =\n/*#__PURE__*/\n\n/** @class */\nfunction () {\n function Scheduler(options) {\n this.processingEvent = false;\n this.queue = [];\n this.initialized = false;\n this.options = __assign(__assign({}, defaultOptions), options);\n }\n\n Scheduler.prototype.initialize = function (callback) {\n this.initialized = true;\n\n if (callback) {\n if (!this.options.deferEvents) {\n this.schedule(callback);\n return;\n }\n\n this.process(callback);\n }\n\n this.flushEvents();\n };\n\n Scheduler.prototype.schedule = function (task) {\n if (!this.initialized || this.processingEvent) {\n this.queue.push(task);\n return;\n }\n\n if (this.queue.length !== 0) {\n throw new Error('Event queue should be empty when it is not processing events');\n }\n\n this.process(task);\n this.flushEvents();\n };\n\n Scheduler.prototype.clear = function () {\n this.queue = [];\n };\n\n Scheduler.prototype.flushEvents = function () {\n var nextCallback = this.queue.shift();\n\n while (nextCallback) {\n this.process(nextCallback);\n nextCallback = this.queue.shift();\n }\n };\n\n Scheduler.prototype.process = function (callback) {\n this.processingEvent = true;\n\n try {\n callback();\n } catch (e) {\n // there is no use to keep the future events\n // as the situation is not anymore the same\n this.clear();\n throw e;\n } finally {\n this.processingEvent = false;\n }\n };\n\n return Scheduler;\n}();\n\nexport { Scheduler };\n","/**\r\n * Maintains a stack of the current service in scope.\r\n * This is used to provide the correct service to spawn().\r\n */\nvar serviceStack = [];\nvar provide = function (service, fn) {\n serviceStack.push(service);\n var result = fn(service);\n serviceStack.pop();\n return result;\n};\nvar consume = function (fn) {\n return fn(serviceStack[serviceStack.length - 1]);\n};\n\nexport { consume, provide };\n","import { __assign } from './_virtual/_tslib.js';\nimport { symbolObservable, toInvokeSource, mapContext, isMachine } from './utils.js';\nimport { provide } from './serviceScope.js';\n\nfunction createNullActor(id) {\n var _a;\n\n return _a = {\n id: id,\n send: function () {\n return void 0;\n },\n subscribe: function () {\n return {\n unsubscribe: function () {\n return void 0;\n }\n };\n },\n getSnapshot: function () {\n return undefined;\n },\n toJSON: function () {\n return {\n id: id\n };\n }\n }, _a[symbolObservable] = function () {\n return this;\n }, _a;\n}\n/**\r\n * Creates a deferred actor that is able to be invoked given the provided\r\n * invocation information in its `.meta` value.\r\n *\r\n * @param invokeDefinition The meta information needed to invoke the actor.\r\n */\n\nfunction createInvocableActor(invokeDefinition, machine, context, _event) {\n var _a;\n\n var invokeSrc = toInvokeSource(invokeDefinition.src);\n var serviceCreator = (_a = machine === null || machine === void 0 ? void 0 : machine.options.services) === null || _a === void 0 ? void 0 : _a[invokeSrc.type];\n var resolvedData = invokeDefinition.data ? mapContext(invokeDefinition.data, context, _event) : undefined;\n var tempActor = serviceCreator ? createDeferredActor(serviceCreator, invokeDefinition.id, resolvedData) : createNullActor(invokeDefinition.id); // @ts-ignore\n\n tempActor.meta = invokeDefinition;\n return tempActor;\n}\nfunction createDeferredActor(entity, id, data) {\n var tempActor = createNullActor(id); // @ts-ignore\n\n tempActor.deferred = true;\n\n if (isMachine(entity)) {\n // \"mute\" the existing service scope so potential spawned actors within the `.initialState` stay deferred here\n var initialState_1 = tempActor.state = provide(undefined, function () {\n return (data ? entity.withContext(data) : entity).initialState;\n });\n\n tempActor.getSnapshot = function () {\n return initialState_1;\n };\n }\n\n return tempActor;\n}\nfunction isActor(item) {\n try {\n return typeof item.send === 'function';\n } catch (e) {\n return false;\n }\n}\nfunction isSpawnedActor(item) {\n return isActor(item) && 'id' in item;\n} // TODO: refactor the return type, this could be written in a better way but it's best to avoid unneccessary breaking changes now\n\nfunction toActorRef(actorRefLike) {\n var _a;\n\n return __assign((_a = {\n subscribe: function () {\n return {\n unsubscribe: function () {\n return void 0;\n }\n };\n },\n id: 'anonymous',\n getSnapshot: function () {\n return undefined;\n }\n }, _a[symbolObservable] = function () {\n return this;\n }, _a), actorRefLike);\n}\n\nexport { createDeferredActor, createInvocableActor, createNullActor, isActor, isSpawnedActor, toActorRef };\n","var children = /*#__PURE__*/new Map();\nvar sessionIdIndex = 0;\nvar registry = {\n bookId: function () {\n return \"x:\".concat(sessionIdIndex++);\n },\n register: function (id, actor) {\n children.set(id, actor);\n return id;\n },\n get: function (id) {\n return children.get(id);\n },\n free: function (id) {\n children.delete(id);\n }\n};\n\nexport { registry };\n","import { IS_PRODUCTION } from './environment.js';\n\nfunction getGlobal() {\n if (typeof globalThis !== 'undefined') {\n return globalThis;\n }\n\n if (typeof self !== 'undefined') {\n return self;\n }\n\n if (typeof window !== 'undefined') {\n return window;\n }\n\n if (typeof global !== 'undefined') {\n return global;\n }\n\n if (!IS_PRODUCTION) {\n console.warn('XState could not find a global object in this environment. Please let the maintainers know and raise an issue here: https://github.com/statelyai/xstate/issues');\n }\n}\n\nfunction getDevTools() {\n var global = getGlobal();\n\n if (global && '__xstate__' in global) {\n return global.__xstate__;\n }\n\n return undefined;\n}\n\nfunction registerService(service) {\n if (!getGlobal()) {\n return;\n }\n\n var devTools = getDevTools();\n\n if (devTools) {\n devTools.register(service);\n }\n}\n\nexport { getGlobal, registerService };\n","import { error, doneInvoke } from './actions.js';\nimport { toActorRef } from './Actor.js';\nimport { toObserver } from './utils.js';\n\n/**\r\n * Returns an actor behavior from a reducer and its initial state.\r\n *\r\n * @param transition The pure reducer that returns the next state given the current state and event.\r\n * @param initialState The initial state of the reducer.\r\n * @returns An actor behavior\r\n */\n\nfunction fromReducer(transition, initialState) {\n return {\n transition: transition,\n initialState: initialState\n };\n}\nfunction fromPromise(promiseFn) {\n var initialState = {\n error: undefined,\n data: undefined,\n status: 'pending'\n };\n return {\n transition: function (state, event, _a) {\n var parent = _a.parent,\n id = _a.id,\n observers = _a.observers;\n\n switch (event.type) {\n case 'fulfill':\n parent === null || parent === void 0 ? void 0 : parent.send(doneInvoke(id, event.data));\n return {\n error: undefined,\n data: event.data,\n status: 'fulfilled'\n };\n\n case 'reject':\n parent === null || parent === void 0 ? void 0 : parent.send(error(id, event.error));\n observers.forEach(function (observer) {\n observer.error(event.error);\n });\n return {\n error: event.error,\n data: undefined,\n status: 'rejected'\n };\n\n default:\n return state;\n }\n },\n initialState: initialState,\n start: function (_a) {\n var self = _a.self;\n promiseFn().then(function (data) {\n self.send({\n type: 'fulfill',\n data: data\n });\n }, function (reason) {\n self.send({\n type: 'reject',\n error: reason\n });\n });\n return initialState;\n }\n };\n}\nfunction spawnBehavior(behavior, options) {\n if (options === void 0) {\n options = {};\n }\n\n var state = behavior.initialState;\n var observers = new Set();\n var mailbox = [];\n var flushing = false;\n\n var flush = function () {\n if (flushing) {\n return;\n }\n\n flushing = true;\n\n while (mailbox.length > 0) {\n var event_1 = mailbox.shift();\n state = behavior.transition(state, event_1, actorCtx);\n observers.forEach(function (observer) {\n return observer.next(state);\n });\n }\n\n flushing = false;\n };\n\n var actor = toActorRef({\n id: options.id,\n send: function (event) {\n mailbox.push(event);\n flush();\n },\n getSnapshot: function () {\n return state;\n },\n subscribe: function (next, handleError, complete) {\n var observer = toObserver(next, handleError, complete);\n observers.add(observer);\n observer.next(state);\n return {\n unsubscribe: function () {\n observers.delete(observer);\n }\n };\n }\n });\n var actorCtx = {\n parent: options.parent,\n self: actor,\n id: options.id || 'anonymous',\n observers: observers\n };\n state = behavior.start ? behavior.start(actorCtx) : state;\n return actor;\n}\n\nexport { fromPromise, fromReducer, spawnBehavior };\n","import { __values, __spreadArray, __read, __assign } from './_virtual/_tslib.js';\nimport { SpecialTargets, ActionTypes } from './types.js';\nimport { isStateConfig, State, bindActionToState } from './State.js';\nimport { errorPlatform, update, error as error$1, log, stop, start, cancel, send, raise } from './actionTypes.js';\nimport { initEvent, doneInvoke, toActionObjects, resolveActions, error, getActionFunction } from './actions.js';\nimport { IS_PRODUCTION } from './environment.js';\nimport { warn, mapContext, toObserver, isFunction, toSCXMLEvent, flatten, isRaisableAction, isPromiseLike, isObservable, isMachine, isBehavior, reportUnhandledExceptionOnInvocation, symbolObservable, isArray, toEventObject, isString, isActor, toInvokeSource, uniqueId } from './utils.js';\nimport { Scheduler } from './scheduler.js';\nimport { createDeferredActor, isSpawnedActor } from './Actor.js';\nimport { registry } from './registry.js';\nimport { getGlobal, registerService } from './devTools.js';\nimport { provide, consume } from './serviceScope.js';\nimport { spawnBehavior } from './behaviors.js';\n\nvar DEFAULT_SPAWN_OPTIONS = {\n sync: false,\n autoForward: false\n};\nvar InterpreterStatus;\n\n(function (InterpreterStatus) {\n InterpreterStatus[InterpreterStatus[\"NotStarted\"] = 0] = \"NotStarted\";\n InterpreterStatus[InterpreterStatus[\"Running\"] = 1] = \"Running\";\n InterpreterStatus[InterpreterStatus[\"Stopped\"] = 2] = \"Stopped\";\n})(InterpreterStatus || (InterpreterStatus = {}));\n\nvar Interpreter =\n/*#__PURE__*/\n\n/** @class */\nfunction () {\n /**\r\n * Creates a new Interpreter instance (i.e., service) for the given machine with the provided options, if any.\r\n *\r\n * @param machine The machine to be interpreted\r\n * @param options Interpreter options\r\n */\n function Interpreter(machine, options) {\n if (options === void 0) {\n options = Interpreter.defaultOptions;\n }\n\n var _this = this;\n\n this.machine = machine;\n this.delayedEventsMap = {};\n this.listeners = new Set();\n this.contextListeners = new Set();\n this.stopListeners = new Set();\n this.doneListeners = new Set();\n this.eventListeners = new Set();\n this.sendListeners = new Set();\n /**\r\n * Whether the service is started.\r\n */\n\n this.initialized = false;\n this.status = InterpreterStatus.NotStarted;\n this.children = new Map();\n this.forwardTo = new Set();\n this._outgoingQueue = [];\n /**\r\n * Alias for Interpreter.prototype.start\r\n */\n\n this.init = this.start;\n /**\r\n * Sends an event to the running interpreter to trigger a transition.\r\n *\r\n * An array of events (batched) can be sent as well, which will send all\r\n * batched events to the running interpreter. The listeners will be\r\n * notified only **once** when all events are processed.\r\n *\r\n * @param event The event(s) to send\r\n */\n\n this.send = function (event, payload) {\n if (isArray(event)) {\n _this.batch(event);\n\n return _this.state;\n }\n\n var _event = toSCXMLEvent(toEventObject(event, payload));\n\n if (_this.status === InterpreterStatus.Stopped) {\n // do nothing\n if (!IS_PRODUCTION) {\n warn(false, \"Event \\\"\".concat(_event.name, \"\\\" was sent to stopped service \\\"\").concat(_this.machine.id, \"\\\". This service has already reached its final state, and will not transition.\\nEvent: \").concat(JSON.stringify(_event.data)));\n }\n\n return _this.state;\n }\n\n if (_this.status !== InterpreterStatus.Running && !_this.options.deferEvents) {\n throw new Error(\"Event \\\"\".concat(_event.name, \"\\\" was sent to uninitialized service \\\"\").concat(_this.machine.id // tslint:disable-next-line:max-line-length\n , \"\\\". Make sure .start() is called for this service, or set { deferEvents: true } in the service options.\\nEvent: \").concat(JSON.stringify(_event.data)));\n }\n\n _this.scheduler.schedule(function () {\n // Forward copy of event to child actors\n _this.forward(_event);\n\n var nextState = _this._nextState(_event);\n\n _this.update(nextState, _event);\n });\n\n return _this._state; // TODO: deprecate (should return void)\n // tslint:disable-next-line:semicolon\n };\n\n this.sendTo = function (event, to, immediate) {\n var isParent = _this.parent && (to === SpecialTargets.Parent || _this.parent.id === to);\n var target = isParent ? _this.parent : isString(to) ? to === SpecialTargets.Internal ? _this : _this.children.get(to) || registry.get(to) : isActor(to) ? to : undefined;\n\n if (!target) {\n if (!isParent) {\n throw new Error(\"Unable to send event to child '\".concat(to, \"' from service '\").concat(_this.id, \"'.\"));\n } // tslint:disable-next-line:no-console\n\n\n if (!IS_PRODUCTION) {\n warn(false, \"Service '\".concat(_this.id, \"' has no parent: unable to send event \").concat(event.type));\n }\n\n return;\n }\n\n if ('machine' in target) {\n // perhaps those events should be rejected in the parent\n // but atm it doesn't have easy access to all of the information that is required to do it reliably\n if (_this.status !== InterpreterStatus.Stopped || _this.parent !== target || // we need to send events to the parent from exit handlers of a machine that reached its final state\n _this.state.done) {\n // Send SCXML events to machines\n var scxmlEvent = __assign(__assign({}, event), {\n name: event.name === error$1 ? \"\".concat(error(_this.id)) : event.name,\n origin: _this.sessionId\n });\n\n if (!immediate && _this.machine.config.predictableActionArguments) {\n _this._outgoingQueue.push([target, scxmlEvent]);\n } else {\n target.send(scxmlEvent);\n }\n }\n } else {\n // Send normal events to other targets\n if (!immediate && _this.machine.config.predictableActionArguments) {\n _this._outgoingQueue.push([target, event.data]);\n } else {\n target.send(event.data);\n }\n }\n };\n\n this._exec = function (action, context, _event, actionFunctionMap) {\n if (actionFunctionMap === void 0) {\n actionFunctionMap = _this.machine.options.actions;\n }\n\n var actionOrExec = action.exec || getActionFunction(action.type, actionFunctionMap);\n var exec = isFunction(actionOrExec) ? actionOrExec : actionOrExec ? actionOrExec.exec : action.exec;\n\n if (exec) {\n try {\n return exec(context, _event.data, !_this.machine.config.predictableActionArguments ? {\n action: action,\n state: _this.state,\n _event: _event\n } : {\n action: action,\n _event: _event\n });\n } catch (err) {\n if (_this.parent) {\n _this.parent.send({\n type: 'xstate.error',\n data: err\n });\n }\n\n throw err;\n }\n }\n\n switch (action.type) {\n case raise:\n {\n // if raise action reached the interpreter then it's a delayed one\n var sendAction_1 = action;\n\n _this.defer(sendAction_1);\n\n break;\n }\n\n case send:\n var sendAction = action;\n\n if (typeof sendAction.delay === 'number') {\n _this.defer(sendAction);\n\n return;\n } else {\n if (sendAction.to) {\n _this.sendTo(sendAction._event, sendAction.to, _event === initEvent);\n } else {\n _this.send(sendAction._event);\n }\n }\n\n break;\n\n case cancel:\n _this.cancel(action.sendId);\n\n break;\n\n case start:\n {\n if (_this.status !== InterpreterStatus.Running) {\n return;\n }\n\n var activity = action.activity; // If the activity will be stopped right after it's started\n // (such as in transient states)\n // don't bother starting the activity.\n\n if ( // in v4 with `predictableActionArguments` invokes are called eagerly when the `this.state` still points to the previous state\n !_this.machine.config.predictableActionArguments && !_this.state.activities[activity.id || activity.type]) {\n break;\n } // Invoked services\n\n\n if (activity.type === ActionTypes.Invoke) {\n var invokeSource = toInvokeSource(activity.src);\n var serviceCreator = _this.machine.options.services ? _this.machine.options.services[invokeSource.type] : undefined;\n var id = activity.id,\n data = activity.data;\n\n if (!IS_PRODUCTION) {\n warn(!('forward' in activity), // tslint:disable-next-line:max-line-length\n \"`forward` property is deprecated (found in invocation of '\".concat(activity.src, \"' in in machine '\").concat(_this.machine.id, \"'). \") + \"Please use `autoForward` instead.\");\n }\n\n var autoForward = 'autoForward' in activity ? activity.autoForward : !!activity.forward;\n\n if (!serviceCreator) {\n // tslint:disable-next-line:no-console\n if (!IS_PRODUCTION) {\n warn(false, \"No service found for invocation '\".concat(activity.src, \"' in machine '\").concat(_this.machine.id, \"'.\"));\n }\n\n return;\n }\n\n var resolvedData = data ? mapContext(data, context, _event) : undefined;\n\n if (typeof serviceCreator === 'string') {\n // TODO: warn\n return;\n }\n\n var source = isFunction(serviceCreator) ? serviceCreator(context, _event.data, {\n data: resolvedData,\n src: invokeSource,\n meta: activity.meta\n }) : serviceCreator;\n\n if (!source) {\n // TODO: warn?\n return;\n }\n\n var options = void 0;\n\n if (isMachine(source)) {\n source = resolvedData ? source.withContext(resolvedData) : source;\n options = {\n autoForward: autoForward\n };\n }\n\n _this.spawn(source, id, options);\n } else {\n _this.spawnActivity(activity);\n }\n\n break;\n }\n\n case stop:\n {\n _this.stopChild(action.activity.id);\n\n break;\n }\n\n case log:\n var _a = action,\n label = _a.label,\n value = _a.value;\n\n if (label) {\n _this.logger(label, value);\n } else {\n _this.logger(value);\n }\n\n break;\n\n default:\n if (!IS_PRODUCTION) {\n warn(false, \"No implementation found for action type '\".concat(action.type, \"'\"));\n }\n\n break;\n }\n };\n\n var resolvedOptions = __assign(__assign({}, Interpreter.defaultOptions), options);\n\n var clock = resolvedOptions.clock,\n logger = resolvedOptions.logger,\n parent = resolvedOptions.parent,\n id = resolvedOptions.id;\n var resolvedId = id !== undefined ? id : machine.id;\n this.id = resolvedId;\n this.logger = logger;\n this.clock = clock;\n this.parent = parent;\n this.options = resolvedOptions;\n this.scheduler = new Scheduler({\n deferEvents: this.options.deferEvents\n });\n this.sessionId = registry.bookId();\n }\n\n Object.defineProperty(Interpreter.prototype, \"initialState\", {\n get: function () {\n var _this = this;\n\n if (this._initialState) {\n return this._initialState;\n }\n\n return provide(this, function () {\n _this._initialState = _this.machine.initialState;\n return _this._initialState;\n });\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Interpreter.prototype, \"state\", {\n /**\r\n * @deprecated Use `.getSnapshot()` instead.\r\n */\n get: function () {\n if (!IS_PRODUCTION) {\n warn(this.status !== InterpreterStatus.NotStarted, \"Attempted to read state from uninitialized service '\".concat(this.id, \"'. Make sure the service is started first.\"));\n }\n\n return this._state;\n },\n enumerable: false,\n configurable: true\n });\n /**\r\n * Executes the actions of the given state, with that state's `context` and `event`.\r\n *\r\n * @param state The state whose actions will be executed\r\n * @param actionsConfig The action implementations to use\r\n */\n\n Interpreter.prototype.execute = function (state, actionsConfig) {\n var e_1, _a;\n\n try {\n for (var _b = __values(state.actions), _c = _b.next(); !_c.done; _c = _b.next()) {\n var action = _c.value;\n this.exec(action, state, actionsConfig);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n };\n\n Interpreter.prototype.update = function (state, _event) {\n var e_2, _a, e_3, _b, e_4, _c, e_5, _d;\n\n var _this = this; // Attach session ID to state\n\n\n state._sessionid = this.sessionId; // Update state\n\n this._state = state; // Execute actions\n\n if ((!this.machine.config.predictableActionArguments || // this is currently required to execute initial actions as the `initialState` gets cached\n // we can't just recompute it (and execute actions while doing so) because we try to preserve identity of actors created within initial assigns\n _event === initEvent) && this.options.execute) {\n this.execute(this.state);\n } else {\n var item = void 0;\n\n while (item = this._outgoingQueue.shift()) {\n item[0].send(item[1]);\n }\n } // Update children\n\n\n this.children.forEach(function (child) {\n _this.state.children[child.id] = child;\n }); // Dev tools\n\n if (this.devTools) {\n this.devTools.send(_event.data, state);\n } // Execute listeners\n\n\n if (state.event) {\n try {\n for (var _e = __values(this.eventListeners), _f = _e.next(); !_f.done; _f = _e.next()) {\n var listener = _f.value;\n listener(state.event);\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_a = _e.return)) _a.call(_e);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n }\n\n try {\n for (var _g = __values(this.listeners), _h = _g.next(); !_h.done; _h = _g.next()) {\n var listener = _h.value;\n listener(state, state.event);\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (_h && !_h.done && (_b = _g.return)) _b.call(_g);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n\n try {\n for (var _j = __values(this.contextListeners), _k = _j.next(); !_k.done; _k = _j.next()) {\n var contextListener = _k.value;\n contextListener(this.state.context, this.state.history ? this.state.history.context : undefined);\n }\n } catch (e_4_1) {\n e_4 = {\n error: e_4_1\n };\n } finally {\n try {\n if (_k && !_k.done && (_c = _j.return)) _c.call(_j);\n } finally {\n if (e_4) throw e_4.error;\n }\n }\n\n if (this.state.done) {\n // get final child state node\n var finalChildStateNode = state.configuration.find(function (sn) {\n return sn.type === 'final' && sn.parent === _this.machine;\n });\n var doneData = finalChildStateNode && finalChildStateNode.doneData ? mapContext(finalChildStateNode.doneData, state.context, _event) : undefined;\n this._doneEvent = doneInvoke(this.id, doneData);\n\n try {\n for (var _l = __values(this.doneListeners), _m = _l.next(); !_m.done; _m = _l.next()) {\n var listener = _m.value;\n listener(this._doneEvent);\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (_m && !_m.done && (_d = _l.return)) _d.call(_l);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n\n this._stop();\n\n this._stopChildren();\n\n registry.free(this.sessionId);\n }\n };\n /*\r\n * Adds a listener that is notified whenever a state transition happens. The listener is called with\r\n * the next state and the event object that caused the state transition.\r\n *\r\n * @param listener The state listener\r\n */\n\n\n Interpreter.prototype.onTransition = function (listener) {\n this.listeners.add(listener); // Send current state to listener\n\n if (this.status === InterpreterStatus.Running) {\n listener(this.state, this.state.event);\n }\n\n return this;\n };\n\n Interpreter.prototype.subscribe = function (nextListenerOrObserver, _, // TODO: error listener\n completeListener) {\n var _this = this;\n\n var observer = toObserver(nextListenerOrObserver, _, completeListener);\n this.listeners.add(observer.next); // Send current state to listener\n\n if (this.status !== InterpreterStatus.NotStarted) {\n observer.next(this.state);\n }\n\n var completeOnce = function () {\n _this.doneListeners.delete(completeOnce);\n\n _this.stopListeners.delete(completeOnce);\n\n observer.complete();\n };\n\n if (this.status === InterpreterStatus.Stopped) {\n observer.complete();\n } else {\n this.onDone(completeOnce);\n this.onStop(completeOnce);\n }\n\n return {\n unsubscribe: function () {\n _this.listeners.delete(observer.next);\n\n _this.doneListeners.delete(completeOnce);\n\n _this.stopListeners.delete(completeOnce);\n }\n };\n };\n /**\r\n * Adds an event listener that is notified whenever an event is sent to the running interpreter.\r\n * @param listener The event listener\r\n */\n\n\n Interpreter.prototype.onEvent = function (listener) {\n this.eventListeners.add(listener);\n return this;\n };\n /**\r\n * Adds an event listener that is notified whenever a `send` event occurs.\r\n * @param listener The event listener\r\n */\n\n\n Interpreter.prototype.onSend = function (listener) {\n this.sendListeners.add(listener);\n return this;\n };\n /**\r\n * Adds a context listener that is notified whenever the state context changes.\r\n * @param listener The context listener\r\n */\n\n\n Interpreter.prototype.onChange = function (listener) {\n this.contextListeners.add(listener);\n return this;\n };\n /**\r\n * Adds a listener that is notified when the machine is stopped.\r\n * @param listener The listener\r\n */\n\n\n Interpreter.prototype.onStop = function (listener) {\n this.stopListeners.add(listener);\n return this;\n };\n /**\r\n * Adds a state listener that is notified when the statechart has reached its final state.\r\n * @param listener The state listener\r\n */\n\n\n Interpreter.prototype.onDone = function (listener) {\n if (this.status === InterpreterStatus.Stopped && this._doneEvent) {\n listener(this._doneEvent);\n } else {\n this.doneListeners.add(listener);\n }\n\n return this;\n };\n /**\r\n * Removes a listener.\r\n * @param listener The listener to remove\r\n */\n\n\n Interpreter.prototype.off = function (listener) {\n this.listeners.delete(listener);\n this.eventListeners.delete(listener);\n this.sendListeners.delete(listener);\n this.stopListeners.delete(listener);\n this.doneListeners.delete(listener);\n this.contextListeners.delete(listener);\n return this;\n };\n /**\r\n * Starts the interpreter from the given state, or the initial state.\r\n * @param initialState The state to start the statechart from\r\n */\n\n\n Interpreter.prototype.start = function (initialState) {\n var _this = this;\n\n if (this.status === InterpreterStatus.Running) {\n // Do not restart the service if it is already started\n return this;\n } // yes, it's a hack but we need the related cache to be populated for some things to work (like delayed transitions)\n // this is usually called by `machine.getInitialState` but if we rehydrate from a state we might bypass this call\n // we also don't want to call this method here as it resolves the full initial state which might involve calling assign actions\n // and that could potentially lead to some unwanted side-effects (even such as creating some rogue actors)\n\n\n this.machine._init();\n\n registry.register(this.sessionId, this);\n this.initialized = true;\n this.status = InterpreterStatus.Running;\n var resolvedState = initialState === undefined ? this.initialState : provide(this, function () {\n return isStateConfig(initialState) ? _this.machine.resolveState(initialState) : _this.machine.resolveState(State.from(initialState, _this.machine.context));\n });\n\n if (this.options.devTools) {\n this.attachDev();\n }\n\n this.scheduler.initialize(function () {\n _this.update(resolvedState, initEvent);\n });\n return this;\n };\n\n Interpreter.prototype._stopChildren = function () {\n // TODO: think about converting those to actions\n this.children.forEach(function (child) {\n if (isFunction(child.stop)) {\n child.stop();\n }\n });\n this.children.clear();\n };\n\n Interpreter.prototype._stop = function () {\n var e_6, _a, e_7, _b, e_8, _c, e_9, _d, e_10, _e;\n\n try {\n for (var _f = __values(this.listeners), _g = _f.next(); !_g.done; _g = _f.next()) {\n var listener = _g.value;\n this.listeners.delete(listener);\n }\n } catch (e_6_1) {\n e_6 = {\n error: e_6_1\n };\n } finally {\n try {\n if (_g && !_g.done && (_a = _f.return)) _a.call(_f);\n } finally {\n if (e_6) throw e_6.error;\n }\n }\n\n try {\n for (var _h = __values(this.stopListeners), _j = _h.next(); !_j.done; _j = _h.next()) {\n var listener = _j.value; // call listener, then remove\n\n listener();\n this.stopListeners.delete(listener);\n }\n } catch (e_7_1) {\n e_7 = {\n error: e_7_1\n };\n } finally {\n try {\n if (_j && !_j.done && (_b = _h.return)) _b.call(_h);\n } finally {\n if (e_7) throw e_7.error;\n }\n }\n\n try {\n for (var _k = __values(this.contextListeners), _l = _k.next(); !_l.done; _l = _k.next()) {\n var listener = _l.value;\n this.contextListeners.delete(listener);\n }\n } catch (e_8_1) {\n e_8 = {\n error: e_8_1\n };\n } finally {\n try {\n if (_l && !_l.done && (_c = _k.return)) _c.call(_k);\n } finally {\n if (e_8) throw e_8.error;\n }\n }\n\n try {\n for (var _m = __values(this.doneListeners), _o = _m.next(); !_o.done; _o = _m.next()) {\n var listener = _o.value;\n this.doneListeners.delete(listener);\n }\n } catch (e_9_1) {\n e_9 = {\n error: e_9_1\n };\n } finally {\n try {\n if (_o && !_o.done && (_d = _m.return)) _d.call(_m);\n } finally {\n if (e_9) throw e_9.error;\n }\n }\n\n if (!this.initialized) {\n // Interpreter already stopped; do nothing\n return this;\n }\n\n this.initialized = false;\n this.status = InterpreterStatus.Stopped;\n this._initialState = undefined;\n\n try {\n // we are going to stop within the current sync frame\n // so we can safely just cancel this here as nothing async should be fired anyway\n for (var _p = __values(Object.keys(this.delayedEventsMap)), _q = _p.next(); !_q.done; _q = _p.next()) {\n var key = _q.value;\n this.clock.clearTimeout(this.delayedEventsMap[key]);\n }\n } catch (e_10_1) {\n e_10 = {\n error: e_10_1\n };\n } finally {\n try {\n if (_q && !_q.done && (_e = _p.return)) _e.call(_p);\n } finally {\n if (e_10) throw e_10.error;\n }\n } // clear everything that might be enqueued\n\n\n this.scheduler.clear();\n this.scheduler = new Scheduler({\n deferEvents: this.options.deferEvents\n });\n };\n /**\r\n * Stops the interpreter and unsubscribe all listeners.\r\n *\r\n * This will also notify the `onStop` listeners.\r\n */\n\n\n Interpreter.prototype.stop = function () {\n // TODO: add warning for stopping non-root interpreters\n var _this = this; // grab the current scheduler as it will be replaced in _stop\n\n\n var scheduler = this.scheduler;\n\n this._stop(); // let what is currently processed to be finished\n\n\n scheduler.schedule(function () {\n var _a;\n\n if ((_a = _this._state) === null || _a === void 0 ? void 0 : _a.done) {\n return;\n } // it feels weird to handle this here but we need to handle this even slightly \"out of band\"\n\n\n var _event = toSCXMLEvent({\n type: 'xstate.stop'\n });\n\n var nextState = provide(_this, function () {\n var exitActions = flatten(__spreadArray([], __read(_this.state.configuration), false).sort(function (a, b) {\n return b.order - a.order;\n }).map(function (stateNode) {\n return toActionObjects(stateNode.onExit, _this.machine.options.actions);\n }));\n\n var _a = __read(resolveActions(_this.machine, _this.state, _this.state.context, _event, [{\n type: 'exit',\n actions: exitActions\n }], _this.machine.config.predictableActionArguments ? _this._exec : undefined, _this.machine.config.predictableActionArguments || _this.machine.config.preserveActionOrder), 2),\n resolvedActions = _a[0],\n updatedContext = _a[1];\n\n var newState = new State({\n value: _this.state.value,\n context: updatedContext,\n _event: _event,\n _sessionid: _this.sessionId,\n historyValue: undefined,\n history: _this.state,\n actions: resolvedActions.filter(function (action) {\n return !isRaisableAction(action);\n }),\n activities: {},\n events: [],\n configuration: [],\n transitions: [],\n children: {},\n done: _this.state.done,\n tags: _this.state.tags,\n machine: _this.machine\n });\n newState.changed = true;\n return newState;\n });\n\n _this.update(nextState, _event);\n\n _this._stopChildren();\n\n registry.free(_this.sessionId);\n });\n return this;\n };\n\n Interpreter.prototype.batch = function (events) {\n var _this = this;\n\n if (this.status === InterpreterStatus.NotStarted && this.options.deferEvents) {\n // tslint:disable-next-line:no-console\n if (!IS_PRODUCTION) {\n warn(false, \"\".concat(events.length, \" event(s) were sent to uninitialized service \\\"\").concat(this.machine.id, \"\\\" and are deferred. Make sure .start() is called for this service.\\nEvent: \").concat(JSON.stringify(event)));\n }\n } else if (this.status !== InterpreterStatus.Running) {\n throw new Error( // tslint:disable-next-line:max-line-length\n \"\".concat(events.length, \" event(s) were sent to uninitialized service \\\"\").concat(this.machine.id, \"\\\". Make sure .start() is called for this service, or set { deferEvents: true } in the service options.\"));\n }\n\n if (!events.length) {\n return;\n }\n\n var exec = !!this.machine.config.predictableActionArguments && this._exec;\n this.scheduler.schedule(function () {\n var e_11, _a;\n\n var nextState = _this.state;\n var batchChanged = false;\n var batchedActions = [];\n\n var _loop_1 = function (event_1) {\n var _event = toSCXMLEvent(event_1);\n\n _this.forward(_event);\n\n nextState = provide(_this, function () {\n return _this.machine.transition(nextState, _event, undefined, exec || undefined);\n });\n batchedActions.push.apply(batchedActions, __spreadArray([], __read(_this.machine.config.predictableActionArguments ? nextState.actions : nextState.actions.map(function (a) {\n return bindActionToState(a, nextState);\n })), false));\n batchChanged = batchChanged || !!nextState.changed;\n };\n\n try {\n for (var events_1 = __values(events), events_1_1 = events_1.next(); !events_1_1.done; events_1_1 = events_1.next()) {\n var event_1 = events_1_1.value;\n\n _loop_1(event_1);\n }\n } catch (e_11_1) {\n e_11 = {\n error: e_11_1\n };\n } finally {\n try {\n if (events_1_1 && !events_1_1.done && (_a = events_1.return)) _a.call(events_1);\n } finally {\n if (e_11) throw e_11.error;\n }\n }\n\n nextState.changed = batchChanged;\n nextState.actions = batchedActions;\n\n _this.update(nextState, toSCXMLEvent(events[events.length - 1]));\n });\n };\n /**\r\n * Returns a send function bound to this interpreter instance.\r\n *\r\n * @param event The event to be sent by the sender.\r\n */\n\n\n Interpreter.prototype.sender = function (event) {\n return this.send.bind(this, event);\n };\n\n Interpreter.prototype._nextState = function (event, exec) {\n var _this = this;\n\n if (exec === void 0) {\n exec = !!this.machine.config.predictableActionArguments && this._exec;\n }\n\n var _event = toSCXMLEvent(event);\n\n if (_event.name.indexOf(errorPlatform) === 0 && !this.state.nextEvents.some(function (nextEvent) {\n return nextEvent.indexOf(errorPlatform) === 0;\n })) {\n throw _event.data.data;\n }\n\n var nextState = provide(this, function () {\n return _this.machine.transition(_this.state, _event, undefined, exec || undefined);\n });\n return nextState;\n };\n /**\r\n * Returns the next state given the interpreter's current state and the event.\r\n *\r\n * This is a pure method that does _not_ update the interpreter's state.\r\n *\r\n * @param event The event to determine the next state\r\n */\n\n\n Interpreter.prototype.nextState = function (event) {\n return this._nextState(event, false);\n };\n\n Interpreter.prototype.forward = function (event) {\n var e_12, _a;\n\n try {\n for (var _b = __values(this.forwardTo), _c = _b.next(); !_c.done; _c = _b.next()) {\n var id = _c.value;\n var child = this.children.get(id);\n\n if (!child) {\n throw new Error(\"Unable to forward event '\".concat(event, \"' from interpreter '\").concat(this.id, \"' to nonexistant child '\").concat(id, \"'.\"));\n }\n\n child.send(event);\n }\n } catch (e_12_1) {\n e_12 = {\n error: e_12_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_12) throw e_12.error;\n }\n }\n };\n\n Interpreter.prototype.defer = function (sendAction) {\n var _this = this;\n\n var timerId = this.clock.setTimeout(function () {\n if ('to' in sendAction && sendAction.to) {\n _this.sendTo(sendAction._event, sendAction.to, true);\n } else {\n _this.send(sendAction._event);\n }\n }, sendAction.delay);\n\n if (sendAction.id) {\n this.delayedEventsMap[sendAction.id] = timerId;\n }\n };\n\n Interpreter.prototype.cancel = function (sendId) {\n this.clock.clearTimeout(this.delayedEventsMap[sendId]);\n delete this.delayedEventsMap[sendId];\n };\n\n Interpreter.prototype.exec = function (action, state, actionFunctionMap) {\n if (actionFunctionMap === void 0) {\n actionFunctionMap = this.machine.options.actions;\n }\n\n this._exec(action, state.context, state._event, actionFunctionMap);\n };\n\n Interpreter.prototype.removeChild = function (childId) {\n var _a;\n\n this.children.delete(childId);\n this.forwardTo.delete(childId); // this.state might not exist at the time this is called,\n // such as when a child is added then removed while initializing the state\n\n (_a = this.state) === null || _a === void 0 ? true : delete _a.children[childId];\n };\n\n Interpreter.prototype.stopChild = function (childId) {\n var child = this.children.get(childId);\n\n if (!child) {\n return;\n }\n\n this.removeChild(childId);\n\n if (isFunction(child.stop)) {\n child.stop();\n }\n };\n\n Interpreter.prototype.spawn = function (entity, name, options) {\n if (this.status !== InterpreterStatus.Running) {\n return createDeferredActor(entity, name);\n }\n\n if (isPromiseLike(entity)) {\n return this.spawnPromise(Promise.resolve(entity), name);\n } else if (isFunction(entity)) {\n return this.spawnCallback(entity, name);\n } else if (isSpawnedActor(entity)) {\n return this.spawnActor(entity, name);\n } else if (isObservable(entity)) {\n return this.spawnObservable(entity, name);\n } else if (isMachine(entity)) {\n return this.spawnMachine(entity, __assign(__assign({}, options), {\n id: name\n }));\n } else if (isBehavior(entity)) {\n return this.spawnBehavior(entity, name);\n } else {\n throw new Error(\"Unable to spawn entity \\\"\".concat(name, \"\\\" of type \\\"\").concat(typeof entity, \"\\\".\"));\n }\n };\n\n Interpreter.prototype.spawnMachine = function (machine, options) {\n var _this = this;\n\n if (options === void 0) {\n options = {};\n }\n\n var childService = new Interpreter(machine, __assign(__assign({}, this.options), {\n parent: this,\n id: options.id || machine.id\n }));\n\n var resolvedOptions = __assign(__assign({}, DEFAULT_SPAWN_OPTIONS), options);\n\n if (resolvedOptions.sync) {\n childService.onTransition(function (state) {\n _this.send(update, {\n state: state,\n id: childService.id\n });\n });\n }\n\n var actor = childService;\n this.children.set(childService.id, actor);\n\n if (resolvedOptions.autoForward) {\n this.forwardTo.add(childService.id);\n }\n\n childService.onDone(function (doneEvent) {\n _this.removeChild(childService.id);\n\n _this.send(toSCXMLEvent(doneEvent, {\n origin: childService.id\n }));\n }).start();\n return actor;\n };\n\n Interpreter.prototype.spawnBehavior = function (behavior, id) {\n var actorRef = spawnBehavior(behavior, {\n id: id,\n parent: this\n });\n this.children.set(id, actorRef);\n return actorRef;\n };\n\n Interpreter.prototype.spawnPromise = function (promise, id) {\n var _a;\n\n var _this = this;\n\n var canceled = false;\n var resolvedData;\n promise.then(function (response) {\n if (!canceled) {\n resolvedData = response;\n\n _this.removeChild(id);\n\n _this.send(toSCXMLEvent(doneInvoke(id, response), {\n origin: id\n }));\n }\n }, function (errorData) {\n if (!canceled) {\n _this.removeChild(id);\n\n var errorEvent = error(id, errorData);\n\n try {\n // Send \"error.platform.id\" to this (parent).\n _this.send(toSCXMLEvent(errorEvent, {\n origin: id\n }));\n } catch (error) {\n reportUnhandledExceptionOnInvocation(errorData, error, id);\n\n if (_this.devTools) {\n _this.devTools.send(errorEvent, _this.state);\n }\n\n if (_this.machine.strict) {\n // it would be better to always stop the state machine if unhandled\n // exception/promise rejection happens but because we don't want to\n // break existing code so enforce it on strict mode only especially so\n // because documentation says that onError is optional\n _this.stop();\n }\n }\n }\n });\n var actor = (_a = {\n id: id,\n send: function () {\n return void 0;\n },\n subscribe: function (next, handleError, complete) {\n var observer = toObserver(next, handleError, complete);\n var unsubscribed = false;\n promise.then(function (response) {\n if (unsubscribed) {\n return;\n }\n\n observer.next(response);\n\n if (unsubscribed) {\n return;\n }\n\n observer.complete();\n }, function (err) {\n if (unsubscribed) {\n return;\n }\n\n observer.error(err);\n });\n return {\n unsubscribe: function () {\n return unsubscribed = true;\n }\n };\n },\n stop: function () {\n canceled = true;\n },\n toJSON: function () {\n return {\n id: id\n };\n },\n getSnapshot: function () {\n return resolvedData;\n }\n }, _a[symbolObservable] = function () {\n return this;\n }, _a);\n this.children.set(id, actor);\n return actor;\n };\n\n Interpreter.prototype.spawnCallback = function (callback, id) {\n var _a;\n\n var _this = this;\n\n var canceled = false;\n var receivers = new Set();\n var listeners = new Set();\n var emitted;\n\n var receive = function (e) {\n emitted = e;\n listeners.forEach(function (listener) {\n return listener(e);\n });\n\n if (canceled) {\n return;\n }\n\n _this.send(toSCXMLEvent(e, {\n origin: id\n }));\n };\n\n var callbackStop;\n\n try {\n callbackStop = callback(receive, function (newListener) {\n receivers.add(newListener);\n });\n } catch (err) {\n this.send(error(id, err));\n }\n\n if (isPromiseLike(callbackStop)) {\n // it turned out to be an async function, can't reliably check this before calling `callback`\n // because transpiled async functions are not recognizable\n return this.spawnPromise(callbackStop, id);\n }\n\n var actor = (_a = {\n id: id,\n send: function (event) {\n return receivers.forEach(function (receiver) {\n return receiver(event);\n });\n },\n subscribe: function (next) {\n var observer = toObserver(next);\n listeners.add(observer.next);\n return {\n unsubscribe: function () {\n listeners.delete(observer.next);\n }\n };\n },\n stop: function () {\n canceled = true;\n\n if (isFunction(callbackStop)) {\n callbackStop();\n }\n },\n toJSON: function () {\n return {\n id: id\n };\n },\n getSnapshot: function () {\n return emitted;\n }\n }, _a[symbolObservable] = function () {\n return this;\n }, _a);\n this.children.set(id, actor);\n return actor;\n };\n\n Interpreter.prototype.spawnObservable = function (source, id) {\n var _a;\n\n var _this = this;\n\n var emitted;\n var subscription = source.subscribe(function (value) {\n emitted = value;\n\n _this.send(toSCXMLEvent(value, {\n origin: id\n }));\n }, function (err) {\n _this.removeChild(id);\n\n _this.send(toSCXMLEvent(error(id, err), {\n origin: id\n }));\n }, function () {\n _this.removeChild(id);\n\n _this.send(toSCXMLEvent(doneInvoke(id), {\n origin: id\n }));\n });\n var actor = (_a = {\n id: id,\n send: function () {\n return void 0;\n },\n subscribe: function (next, handleError, complete) {\n return source.subscribe(next, handleError, complete);\n },\n stop: function () {\n return subscription.unsubscribe();\n },\n getSnapshot: function () {\n return emitted;\n },\n toJSON: function () {\n return {\n id: id\n };\n }\n }, _a[symbolObservable] = function () {\n return this;\n }, _a);\n this.children.set(id, actor);\n return actor;\n };\n\n Interpreter.prototype.spawnActor = function (actor, name) {\n this.children.set(name, actor);\n return actor;\n };\n\n Interpreter.prototype.spawnActivity = function (activity) {\n var implementation = this.machine.options && this.machine.options.activities ? this.machine.options.activities[activity.type] : undefined;\n\n if (!implementation) {\n if (!IS_PRODUCTION) {\n warn(false, \"No implementation found for activity '\".concat(activity.type, \"'\"));\n } // tslint:disable-next-line:no-console\n\n\n return;\n } // Start implementation\n\n\n var dispose = implementation(this.state.context, activity);\n this.spawnEffect(activity.id, dispose);\n };\n\n Interpreter.prototype.spawnEffect = function (id, dispose) {\n var _a;\n\n this.children.set(id, (_a = {\n id: id,\n send: function () {\n return void 0;\n },\n subscribe: function () {\n return {\n unsubscribe: function () {\n return void 0;\n }\n };\n },\n stop: dispose || undefined,\n getSnapshot: function () {\n return undefined;\n },\n toJSON: function () {\n return {\n id: id\n };\n }\n }, _a[symbolObservable] = function () {\n return this;\n }, _a));\n };\n\n Interpreter.prototype.attachDev = function () {\n var global = getGlobal();\n\n if (this.options.devTools && global) {\n if (global.__REDUX_DEVTOOLS_EXTENSION__) {\n var devToolsOptions = typeof this.options.devTools === 'object' ? this.options.devTools : undefined;\n this.devTools = global.__REDUX_DEVTOOLS_EXTENSION__.connect(__assign(__assign({\n name: this.id,\n autoPause: true,\n stateSanitizer: function (state) {\n return {\n value: state.value,\n context: state.context,\n actions: state.actions\n };\n }\n }, devToolsOptions), {\n features: __assign({\n jump: false,\n skip: false\n }, devToolsOptions ? devToolsOptions.features : undefined)\n }), this.machine);\n this.devTools.init(this.state);\n } // add XState-specific dev tooling hook\n\n\n registerService(this);\n }\n };\n\n Interpreter.prototype.toJSON = function () {\n return {\n id: this.id\n };\n };\n\n Interpreter.prototype[symbolObservable] = function () {\n return this;\n };\n\n Interpreter.prototype.getSnapshot = function () {\n if (this.status === InterpreterStatus.NotStarted) {\n return this.initialState;\n }\n\n return this._state;\n };\n /**\r\n * The default interpreter options:\r\n *\r\n * - `clock` uses the global `setTimeout` and `clearTimeout` functions\r\n * - `logger` uses the global `console.log()` method\r\n */\n\n\n Interpreter.defaultOptions = {\n execute: true,\n deferEvents: true,\n clock: {\n setTimeout: function (fn, ms) {\n return setTimeout(fn, ms);\n },\n clearTimeout: function (id) {\n return clearTimeout(id);\n }\n },\n logger: /*#__PURE__*/console.log.bind(console),\n devTools: false\n };\n Interpreter.interpret = interpret;\n return Interpreter;\n}();\n\nvar resolveSpawnOptions = function (nameOrOptions) {\n if (isString(nameOrOptions)) {\n return __assign(__assign({}, DEFAULT_SPAWN_OPTIONS), {\n name: nameOrOptions\n });\n }\n\n return __assign(__assign(__assign({}, DEFAULT_SPAWN_OPTIONS), {\n name: uniqueId()\n }), nameOrOptions);\n};\n\nfunction spawn(entity, nameOrOptions) {\n var resolvedOptions = resolveSpawnOptions(nameOrOptions);\n return consume(function (service) {\n if (!IS_PRODUCTION) {\n var isLazyEntity = isMachine(entity) || isFunction(entity);\n warn(!!service || isLazyEntity, \"Attempted to spawn an Actor (ID: \\\"\".concat(isMachine(entity) ? entity.id : 'undefined', \"\\\") outside of a service. This will have no effect.\"));\n }\n\n if (service) {\n return service.spawn(entity, resolvedOptions.name, resolvedOptions);\n } else {\n return createDeferredActor(entity, resolvedOptions.name);\n }\n });\n}\n/**\r\n * Creates a new Interpreter instance for the given machine with the provided options, if any.\r\n *\r\n * @param machine The machine to interpret\r\n * @param options Interpreter options\r\n */\n\nfunction interpret(machine, options) {\n var interpreter = new Interpreter(machine, options);\n return interpreter;\n}\n\nexport { Interpreter, InterpreterStatus, interpret, spawn };\n","import * as React from 'react';\nexport default function useConstant(fn) {\n var ref = React.useRef();\n if (!ref.current) {\n ref.current = { v: fn() };\n }\n return ref.current.v;\n}\n","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nimport { useEffect, useState } from 'react';\nimport useIsomorphicLayoutEffect from 'use-isomorphic-layout-effect';\nimport { interpret, InterpreterStatus, State, toObserver } from 'xstate';\nimport useConstant from './useConstant';\nexport function useIdleInterpreter(getMachine, options) {\n var machine = useConstant(function () {\n return typeof getMachine === 'function' ? getMachine() : getMachine;\n });\n if (process.env.NODE_ENV !== 'production' &&\n typeof getMachine !== 'function') {\n var _a = __read(useState(machine), 1), initialMachine = _a[0];\n if (getMachine !== initialMachine) {\n console.warn('Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\\n' +\n 'Please make sure that you pass the same Machine as argument each time.');\n }\n }\n var context = options.context, guards = options.guards, actions = options.actions, activities = options.activities, services = options.services, delays = options.delays, rehydratedState = options.state, interpreterOptions = __rest(options, [\"context\", \"guards\", \"actions\", \"activities\", \"services\", \"delays\", \"state\"]);\n var service = useConstant(function () {\n var machineConfig = {\n context: context,\n guards: guards,\n actions: actions,\n activities: activities,\n services: services,\n delays: delays\n };\n var machineWithConfig = machine.withConfig(machineConfig, function () { return (__assign(__assign({}, machine.context), context)); });\n return interpret(machineWithConfig, interpreterOptions);\n });\n // Make sure options are kept updated when they change.\n // This mutation assignment is safe because the service instance is only used\n // in one place -- this hook's caller.\n useIsomorphicLayoutEffect(function () {\n Object.assign(service.machine.options.actions, actions);\n Object.assign(service.machine.options.guards, guards);\n Object.assign(service.machine.options.activities, activities);\n Object.assign(service.machine.options.services, services);\n Object.assign(service.machine.options.delays, delays);\n }, [actions, guards, activities, services, delays]);\n return service;\n}\nexport function useInterpret(getMachine) {\n var _a = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n _a[_i - 1] = arguments[_i];\n }\n var _b = __read(_a, 2), _c = _b[0], options = _c === void 0 ? {} : _c, observerOrListener = _b[1];\n var service = useIdleInterpreter(getMachine, options);\n useEffect(function () {\n if (!observerOrListener) {\n return;\n }\n var sub = service.subscribe(toObserver(observerOrListener));\n return function () {\n sub.unsubscribe();\n };\n }, [observerOrListener]);\n useEffect(function () {\n var rehydratedState = options.state;\n service.start(rehydratedState ? State.create(rehydratedState) : undefined);\n return function () {\n service.stop();\n service.status = InterpreterStatus.NotStarted;\n };\n }, []);\n return service;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getAtob } from '../../globalHelpers';\nexport const base64Decoder = {\n convert(input) {\n return getAtob()(input);\n },\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { createAssertionFunction } from '../../../errors';\nexport var AuthConfigurationErrorCode;\n(function (AuthConfigurationErrorCode) {\n AuthConfigurationErrorCode[\"AuthTokenConfigException\"] = \"AuthTokenConfigException\";\n AuthConfigurationErrorCode[\"AuthUserPoolAndIdentityPoolException\"] = \"AuthUserPoolAndIdentityPoolException\";\n AuthConfigurationErrorCode[\"AuthUserPoolException\"] = \"AuthUserPoolException\";\n AuthConfigurationErrorCode[\"InvalidIdentityPoolIdException\"] = \"InvalidIdentityPoolIdException\";\n AuthConfigurationErrorCode[\"OAuthNotConfigureException\"] = \"OAuthNotConfigureException\";\n})(AuthConfigurationErrorCode || (AuthConfigurationErrorCode = {}));\nconst authConfigurationErrorMap = {\n [AuthConfigurationErrorCode.AuthTokenConfigException]: {\n message: 'Auth Token Provider not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app.',\n },\n [AuthConfigurationErrorCode.AuthUserPoolAndIdentityPoolException]: {\n message: 'Auth UserPool or IdentityPool not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app with UserPoolId and IdentityPoolId.',\n },\n [AuthConfigurationErrorCode.AuthUserPoolException]: {\n message: 'Auth UserPool not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app with userPoolId and userPoolClientId.',\n },\n [AuthConfigurationErrorCode.InvalidIdentityPoolIdException]: {\n message: 'Invalid identity pool id provided.',\n recoverySuggestion: 'Make sure a valid identityPoolId is given in the config.',\n },\n [AuthConfigurationErrorCode.OAuthNotConfigureException]: {\n message: 'oauth param not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure with oauth parameter in your app.',\n },\n};\nexport const assert = createAssertionFunction(authConfigurationErrorMap);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { base64Decoder } from '../../../utils/convert';\nimport { AuthConfigurationErrorCode, assert } from './errorHelpers';\nexport function assertTokenProviderConfig(cognitoConfig) {\n let assertionValid = true; // assume valid until otherwise proveed\n if (!cognitoConfig) {\n assertionValid = false;\n }\n else {\n assertionValid =\n !!cognitoConfig.userPoolId && !!cognitoConfig.userPoolClientId;\n }\n assert(assertionValid, AuthConfigurationErrorCode.AuthUserPoolException);\n}\nexport function assertOAuthConfig(cognitoConfig) {\n const validOAuthConfig = !!cognitoConfig?.loginWith?.oauth?.domain &&\n !!cognitoConfig?.loginWith?.oauth?.redirectSignOut &&\n !!cognitoConfig?.loginWith?.oauth?.redirectSignIn &&\n !!cognitoConfig?.loginWith?.oauth?.responseType;\n assert(validOAuthConfig, AuthConfigurationErrorCode.OAuthNotConfigureException);\n}\nexport function assertIdentityPoolIdConfig(cognitoConfig) {\n const validConfig = !!cognitoConfig?.identityPoolId;\n assert(validConfig, AuthConfigurationErrorCode.InvalidIdentityPoolIdException);\n}\nexport function decodeJWT(token) {\n const tokenParts = token.split('.');\n if (tokenParts.length !== 3) {\n throw new Error('Invalid token');\n }\n try {\n const base64WithUrlSafe = tokenParts[1];\n const base64 = base64WithUrlSafe.replace(/-/g, '+').replace(/_/g, '/');\n const jsonStr = decodeURIComponent(base64Decoder\n .convert(base64)\n .split('')\n .map(char => `%${`00${char.charCodeAt(0).toString(16)}`.slice(-2)}`)\n .join(''));\n const payload = JSON.parse(jsonStr);\n return {\n toString: () => token,\n payload,\n };\n }\n catch (err) {\n throw new Error('Invalid token payload');\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError, } from '@aws-amplify/core/internals/utils';\nexport class AuthError extends AmplifyError {\n constructor(params) {\n super(params);\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = AuthError;\n Object.setPrototypeOf(this, AuthError.prototype);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from './AuthError';\nexport const USER_UNAUTHENTICATED_EXCEPTION = 'UserUnAuthenticatedException';\nexport const USER_ALREADY_AUTHENTICATED_EXCEPTION = 'UserAlreadyAuthenticatedException';\nexport const DEVICE_METADATA_NOT_FOUND_EXCEPTION = 'DeviceMetadataNotFoundException';\nexport const AUTO_SIGN_IN_EXCEPTION = 'AutoSignInException';\nexport const INVALID_REDIRECT_EXCEPTION = 'InvalidRedirectException';\nexport const invalidRedirectException = new AuthError({\n name: INVALID_REDIRECT_EXCEPTION,\n message: 'signInRedirect or signOutRedirect had an invalid format or was not found.',\n recoverySuggestion: 'Please make sure the signIn/Out redirect in your oauth config is valid.',\n});\nexport const INVALID_ORIGIN_EXCEPTION = 'InvalidOriginException';\nexport const invalidOriginException = new AuthError({\n name: INVALID_ORIGIN_EXCEPTION,\n message: 'redirect is coming from a different origin. The oauth flow needs to be initiated from the same origin',\n recoverySuggestion: 'Please call signInWithRedirect from the same origin.',\n});\nexport const OAUTH_SIGNOUT_EXCEPTION = 'OAuthSignOutException';\nexport const TOKEN_REFRESH_EXCEPTION = 'TokenRefreshException';\nexport const UNEXPECTED_SIGN_IN_INTERRUPTION_EXCEPTION = 'UnexpectedSignInInterruptionException';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from '../../../errors/AuthError';\nimport { DEVICE_METADATA_NOT_FOUND_EXCEPTION, TOKEN_REFRESH_EXCEPTION, USER_UNAUTHENTICATED_EXCEPTION, } from '../../../errors/constants';\nexport function isTypeUserPoolConfig(authConfig) {\n if (authConfig &&\n authConfig.Cognito.userPoolId &&\n authConfig.Cognito.userPoolClientId) {\n return true;\n }\n return false;\n}\nexport function assertAuthTokens(tokens) {\n if (!tokens || !tokens.accessToken) {\n throw new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n });\n }\n}\nexport function assertIdTokenInAuthTokens(tokens) {\n if (!tokens || !tokens.idToken) {\n throw new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n });\n }\n}\nexport const oAuthTokenRefreshException = new AuthError({\n name: TOKEN_REFRESH_EXCEPTION,\n message: `Token refresh is not supported when authenticated with the 'implicit grant' (token) oauth flow. \n\tPlease change your oauth configuration to use 'code grant' flow.`,\n recoverySuggestion: `Please logout and change your Amplify configuration to use \"code grant\" flow. \n\tE.g { responseType: 'code' }`,\n});\nexport const tokenRefreshException = new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n});\nexport function assertAuthTokensWithRefreshToken(tokens) {\n if (isAuthenticatedWithImplicitOauthFlow(tokens)) {\n throw oAuthTokenRefreshException;\n }\n if (!isAuthenticatedWithRefreshToken(tokens)) {\n throw tokenRefreshException;\n }\n}\nexport function assertDeviceMetadata(deviceMetadata) {\n if (!deviceMetadata ||\n !deviceMetadata.deviceKey ||\n !deviceMetadata.deviceGroupKey ||\n !deviceMetadata.randomPassword) {\n throw new AuthError({\n name: DEVICE_METADATA_NOT_FOUND_EXCEPTION,\n message: 'Either deviceKey, deviceGroupKey or secretPassword were not found during the sign-in process.',\n recoverySuggestion: 'Make sure to not clear storage after calling the signIn API.',\n });\n }\n}\nexport const OAuthStorageKeys = {\n inflightOAuth: 'inflightOAuth',\n oauthSignIn: 'oauthSignIn',\n oauthPKCE: 'oauthPKCE',\n oauthState: 'oauthState',\n};\nfunction isAuthenticated(tokens) {\n return tokens?.accessToken || tokens?.idToken;\n}\nfunction isAuthenticatedWithRefreshToken(tokens) {\n return isAuthenticated(tokens) && tokens?.refreshToken;\n}\nfunction isAuthenticatedWithImplicitOauthFlow(tokens) {\n return isAuthenticated(tokens) && !tokens?.refreshToken;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { getCurrentUser as getCurrentUserInternal } from './internal/getCurrentUser';\n/**\n * Gets the current user from the idToken.\n *\n * @param input - The GetCurrentUserInput object.\n * @returns GetCurrentUserOutput\n * @throws - {@link InitiateAuthException} - Thrown when the service fails to refresh the tokens.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport const getCurrentUser = async () => {\n return getCurrentUserInternal(Amplify);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { assertTokenProviderConfig } from '@aws-amplify/core/internals/utils';\nimport { assertAuthTokens } from '../../utils/types';\nexport const getCurrentUser = async (amplify) => {\n const authConfig = amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const tokens = await amplify.Auth.getTokens({ forceRefresh: false });\n assertAuthTokens(tokens);\n const { 'cognito:username': username, sub } = tokens.idToken?.payload ?? {};\n const authUser = {\n username: username,\n userId: sub,\n };\n const signInDetails = getSignInDetailsFromTokens(tokens);\n if (signInDetails) {\n authUser.signInDetails = signInDetails;\n }\n return authUser;\n};\nfunction getSignInDetailsFromTokens(tokens) {\n return tokens?.signInDetails;\n}\n","import { Hub } from 'aws-amplify/utils';\nimport '@aws-amplify/core/internals/utils';\nimport '../../utils/setUserAgent/constants.mjs';\nimport { isFunction } from '../../utils/utils.mjs';\n\n/**\n * Handles Amplify JS Auth hub events, by forwarding hub events as appropriate\n * xstate events.\n */\nconst defaultAuthHubHandler = ({ payload }, service, options) => {\n const { event } = payload;\n const { send } = service;\n const { onSignIn, onSignOut } = options ?? {};\n switch (event) {\n case 'signedIn': {\n if (isFunction(onSignIn)) {\n onSignIn(payload);\n }\n break;\n }\n case 'signInWithRedirect': {\n send('SIGN_IN_WITH_REDIRECT');\n break;\n }\n case 'signedOut':\n case 'tokenRefresh_failure': {\n if (event === 'signedOut' && isFunction(onSignOut)) {\n onSignOut();\n }\n send('SIGN_OUT');\n break;\n }\n }\n};\n/**\n * Listens to external auth Hub events and sends corresponding event to\n * the `service.send` of interest\n *\n * @param service - contains state machine `send` function\n * @param handler - auth event handler\n * @returns function that unsubscribes to the hub evenmt\n */\nconst listenToAuthHub = (service, handler = defaultAuthHubHandler) => {\n const eventHandler = (data) => handler(data, service);\n return Hub.listen('auth', eventHandler, 'authenticator-hub-handler');\n};\n\nexport { defaultAuthHubHandler, listenToAuthHub };\n","import { __assign, __rest } from './_virtual/_tslib.js';\nimport './types.js';\nimport { invoke } from './actionTypes.js';\nimport './utils.js';\nimport './environment.js';\n\nfunction toInvokeSource(src) {\n if (typeof src === 'string') {\n var simpleSrc = {\n type: src\n };\n\n simpleSrc.toString = function () {\n return src;\n }; // v4 compat - TODO: remove in v5\n\n\n return simpleSrc;\n }\n\n return src;\n}\nfunction toInvokeDefinition(invokeConfig) {\n return __assign(__assign({\n type: invoke\n }, invokeConfig), {\n toJSON: function () {\n invokeConfig.onDone;\n invokeConfig.onError;\n var invokeDef = __rest(invokeConfig, [\"onDone\", \"onError\"]);\n\n return __assign(__assign({}, invokeDef), {\n type: invoke,\n src: toInvokeSource(invokeConfig.src)\n });\n }\n });\n}\n\nexport { toInvokeDefinition, toInvokeSource };\n","import { __assign, __spreadArray, __read, __values, __rest } from './_virtual/_tslib.js';\nimport { isFunction, mapValues, isArray, flatten, toArray, toStateValue, isString, getEventType, toSCXMLEvent, matchesState, path, evaluateGuard, mapContext, isRaisableAction, pathToStateValue, isBuiltInEvent, partition, updateHistoryValue, toStatePath, mapFilterValues, warn, toStatePaths, nestedPath, normalizeTarget, toGuard, toTransitionConfigArray, isMachine, createInvokeId } from './utils.js';\nimport { State, stateValuesEqual } from './State.js';\nimport { start as start$1, stop as stop$1, invoke, update, nullEvent } from './actionTypes.js';\nimport { done, start, toActionObjects, raise, stop, resolveActions, doneInvoke, error, toActionObject, toActivityDefinition, after, send, cancel, initEvent } from './actions.js';\nimport { IS_PRODUCTION } from './environment.js';\nimport { STATE_DELIMITER } from './constants.js';\nimport { getAllStateNodes, getConfiguration, isInFinalState, getTagsFromConfiguration, has, getChildren, getValue, isLeafNode, getAllChildren } from './stateUtils.js';\nimport { createInvocableActor } from './Actor.js';\nimport { toInvokeDefinition } from './invokeUtils.js';\n\nvar NULL_EVENT = '';\nvar STATE_IDENTIFIER = '#';\nvar WILDCARD = '*';\nvar EMPTY_OBJECT = {};\n\nvar isStateId = function (str) {\n return str[0] === STATE_IDENTIFIER;\n};\n\nvar createDefaultOptions = function () {\n return {\n actions: {},\n guards: {},\n services: {},\n activities: {},\n delays: {}\n };\n};\n\nvar validateArrayifiedTransitions = function (stateNode, event, transitions) {\n var hasNonLastUnguardedTarget = transitions.slice(0, -1).some(function (transition) {\n return !('cond' in transition) && !('in' in transition) && (isString(transition.target) || isMachine(transition.target));\n });\n var eventText = event === NULL_EVENT ? 'the transient event' : \"event '\".concat(event, \"'\");\n warn(!hasNonLastUnguardedTarget, \"One or more transitions for \".concat(eventText, \" on state '\").concat(stateNode.id, \"' are unreachable. \") + \"Make sure that the default transition is the last one defined.\");\n};\n\nvar StateNode =\n/*#__PURE__*/\n\n/** @class */\nfunction () {\n function StateNode(\n /**\r\n * The raw config used to create the machine.\r\n */\n config, options,\n /**\r\n * The initial extended state\r\n */\n _context, // TODO: this is unsafe, but we're removing it in v5 anyway\n _stateInfo) {\n if (_context === void 0) {\n _context = 'context' in config ? config.context : undefined;\n }\n\n var _this = this;\n\n var _a;\n\n this.config = config;\n this._context = _context;\n /**\r\n * The order this state node appears. Corresponds to the implicit SCXML document order.\r\n */\n\n this.order = -1;\n this.__xstatenode = true;\n this.__cache = {\n events: undefined,\n relativeValue: new Map(),\n initialStateValue: undefined,\n initialState: undefined,\n on: undefined,\n transitions: undefined,\n candidates: {},\n delayedTransitions: undefined\n };\n this.idMap = {};\n this.tags = [];\n this.options = Object.assign(createDefaultOptions(), options);\n this.parent = _stateInfo === null || _stateInfo === void 0 ? void 0 : _stateInfo.parent;\n this.key = this.config.key || (_stateInfo === null || _stateInfo === void 0 ? void 0 : _stateInfo.key) || this.config.id || '(machine)';\n this.machine = this.parent ? this.parent.machine : this;\n this.path = this.parent ? this.parent.path.concat(this.key) : [];\n this.delimiter = this.config.delimiter || (this.parent ? this.parent.delimiter : STATE_DELIMITER);\n this.id = this.config.id || __spreadArray([this.machine.key], __read(this.path), false).join(this.delimiter);\n this.version = this.parent ? this.parent.version : this.config.version;\n this.type = this.config.type || (this.config.parallel ? 'parallel' : this.config.states && Object.keys(this.config.states).length ? 'compound' : this.config.history ? 'history' : 'atomic');\n this.schema = this.parent ? this.machine.schema : (_a = this.config.schema) !== null && _a !== void 0 ? _a : {};\n this.description = this.config.description;\n\n if (!IS_PRODUCTION) {\n warn(!('parallel' in this.config), \"The \\\"parallel\\\" property is deprecated and will be removed in version 4.1. \".concat(this.config.parallel ? \"Replace with `type: 'parallel'`\" : \"Use `type: '\".concat(this.type, \"'`\"), \" in the config for state node '\").concat(this.id, \"' instead.\"));\n }\n\n this.initial = this.config.initial;\n this.states = this.config.states ? mapValues(this.config.states, function (stateConfig, key) {\n var _a;\n\n var stateNode = new StateNode(stateConfig, {}, undefined, {\n parent: _this,\n key: key\n });\n Object.assign(_this.idMap, __assign((_a = {}, _a[stateNode.id] = stateNode, _a), stateNode.idMap));\n return stateNode;\n }) : EMPTY_OBJECT; // Document order\n\n var order = 0;\n\n function dfs(stateNode) {\n var e_1, _a;\n\n stateNode.order = order++;\n\n try {\n for (var _b = __values(getAllChildren(stateNode)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var child = _c.value;\n dfs(child);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n }\n\n dfs(this); // History config\n\n this.history = this.config.history === true ? 'shallow' : this.config.history || false;\n this._transient = !!this.config.always || (!this.config.on ? false : Array.isArray(this.config.on) ? this.config.on.some(function (_a) {\n var event = _a.event;\n return event === NULL_EVENT;\n }) : NULL_EVENT in this.config.on);\n this.strict = !!this.config.strict; // TODO: deprecate (entry)\n\n this.onEntry = toArray(this.config.entry || this.config.onEntry).map(function (action) {\n return toActionObject(action);\n }); // TODO: deprecate (exit)\n\n this.onExit = toArray(this.config.exit || this.config.onExit).map(function (action) {\n return toActionObject(action);\n });\n this.meta = this.config.meta;\n this.doneData = this.type === 'final' ? this.config.data : undefined;\n this.invoke = toArray(this.config.invoke).map(function (invokeConfig, i) {\n var _a, _b;\n\n if (isMachine(invokeConfig)) {\n var invokeId = createInvokeId(_this.id, i);\n _this.machine.options.services = __assign((_a = {}, _a[invokeId] = invokeConfig, _a), _this.machine.options.services);\n return toInvokeDefinition({\n src: invokeId,\n id: invokeId\n });\n } else if (isString(invokeConfig.src)) {\n var invokeId = invokeConfig.id || createInvokeId(_this.id, i);\n return toInvokeDefinition(__assign(__assign({}, invokeConfig), {\n id: invokeId,\n src: invokeConfig.src\n }));\n } else if (isMachine(invokeConfig.src) || isFunction(invokeConfig.src)) {\n var invokeId = invokeConfig.id || createInvokeId(_this.id, i);\n _this.machine.options.services = __assign((_b = {}, _b[invokeId] = invokeConfig.src, _b), _this.machine.options.services);\n return toInvokeDefinition(__assign(__assign({\n id: invokeId\n }, invokeConfig), {\n src: invokeId\n }));\n } else {\n var invokeSource = invokeConfig.src;\n return toInvokeDefinition(__assign(__assign({\n id: createInvokeId(_this.id, i)\n }, invokeConfig), {\n src: invokeSource\n }));\n }\n });\n this.activities = toArray(this.config.activities).concat(this.invoke).map(function (activity) {\n return toActivityDefinition(activity);\n });\n this.transition = this.transition.bind(this);\n this.tags = toArray(this.config.tags); // TODO: this is the real fix for initialization once\n // state node getters are deprecated\n // if (!this.parent) {\n // this._init();\n // }\n }\n\n StateNode.prototype._init = function () {\n if (this.__cache.transitions) {\n return;\n }\n\n getAllStateNodes(this).forEach(function (stateNode) {\n return stateNode.on;\n });\n };\n /**\r\n * Clones this state machine with custom options and context.\r\n *\r\n * @param options Options (actions, guards, activities, services) to recursively merge with the existing options.\r\n * @param context Custom context (will override predefined context)\r\n */\n\n\n StateNode.prototype.withConfig = function (options, context) {\n var _a = this.options,\n actions = _a.actions,\n activities = _a.activities,\n guards = _a.guards,\n services = _a.services,\n delays = _a.delays;\n return new StateNode(this.config, {\n actions: __assign(__assign({}, actions), options.actions),\n activities: __assign(__assign({}, activities), options.activities),\n guards: __assign(__assign({}, guards), options.guards),\n services: __assign(__assign({}, services), options.services),\n delays: __assign(__assign({}, delays), options.delays)\n }, context !== null && context !== void 0 ? context : this.context);\n };\n /**\r\n * Clones this state machine with custom context.\r\n *\r\n * @param context Custom context (will override predefined context, not recursive)\r\n */\n\n\n StateNode.prototype.withContext = function (context) {\n return new StateNode(this.config, this.options, context);\n };\n\n Object.defineProperty(StateNode.prototype, \"context\", {\n get: function () {\n return isFunction(this._context) ? this._context() : this._context;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"definition\", {\n /**\r\n * The well-structured state node definition.\r\n */\n get: function () {\n return {\n id: this.id,\n key: this.key,\n version: this.version,\n context: this.context,\n type: this.type,\n initial: this.initial,\n history: this.history,\n states: mapValues(this.states, function (state) {\n return state.definition;\n }),\n on: this.on,\n transitions: this.transitions,\n entry: this.onEntry,\n exit: this.onExit,\n activities: this.activities || [],\n meta: this.meta,\n order: this.order || -1,\n data: this.doneData,\n invoke: this.invoke,\n description: this.description,\n tags: this.tags\n };\n },\n enumerable: false,\n configurable: true\n });\n\n StateNode.prototype.toJSON = function () {\n return this.definition;\n };\n\n Object.defineProperty(StateNode.prototype, \"on\", {\n /**\r\n * The mapping of events to transitions.\r\n */\n get: function () {\n if (this.__cache.on) {\n return this.__cache.on;\n }\n\n var transitions = this.transitions;\n return this.__cache.on = transitions.reduce(function (map, transition) {\n map[transition.eventType] = map[transition.eventType] || [];\n map[transition.eventType].push(transition);\n return map;\n }, {});\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"after\", {\n get: function () {\n return this.__cache.delayedTransitions || (this.__cache.delayedTransitions = this.getDelayedTransitions(), this.__cache.delayedTransitions);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"transitions\", {\n /**\r\n * All the transitions that can be taken from this state node.\r\n */\n get: function () {\n return this.__cache.transitions || (this.__cache.transitions = this.formatTransitions(), this.__cache.transitions);\n },\n enumerable: false,\n configurable: true\n });\n\n StateNode.prototype.getCandidates = function (eventName) {\n if (this.__cache.candidates[eventName]) {\n return this.__cache.candidates[eventName];\n }\n\n var transient = eventName === NULL_EVENT;\n var candidates = this.transitions.filter(function (transition) {\n var sameEventType = transition.eventType === eventName; // null events should only match against eventless transitions\n\n return transient ? sameEventType : sameEventType || transition.eventType === WILDCARD;\n });\n this.__cache.candidates[eventName] = candidates;\n return candidates;\n };\n /**\r\n * All delayed transitions from the config.\r\n */\n\n\n StateNode.prototype.getDelayedTransitions = function () {\n var _this = this;\n\n var afterConfig = this.config.after;\n\n if (!afterConfig) {\n return [];\n }\n\n var mutateEntryExit = function (delay, i) {\n var delayRef = isFunction(delay) ? \"\".concat(_this.id, \":delay[\").concat(i, \"]\") : delay;\n var eventType = after(delayRef, _this.id);\n\n _this.onEntry.push(send(eventType, {\n delay: delay\n }));\n\n _this.onExit.push(cancel(eventType));\n\n return eventType;\n };\n\n var delayedTransitions = isArray(afterConfig) ? afterConfig.map(function (transition, i) {\n var eventType = mutateEntryExit(transition.delay, i);\n return __assign(__assign({}, transition), {\n event: eventType\n });\n }) : flatten(Object.keys(afterConfig).map(function (delay, i) {\n var configTransition = afterConfig[delay];\n var resolvedTransition = isString(configTransition) ? {\n target: configTransition\n } : configTransition;\n var resolvedDelay = !isNaN(+delay) ? +delay : delay;\n var eventType = mutateEntryExit(resolvedDelay, i);\n return toArray(resolvedTransition).map(function (transition) {\n return __assign(__assign({}, transition), {\n event: eventType,\n delay: resolvedDelay\n });\n });\n }));\n return delayedTransitions.map(function (delayedTransition) {\n var delay = delayedTransition.delay;\n return __assign(__assign({}, _this.formatTransition(delayedTransition)), {\n delay: delay\n });\n });\n };\n /**\r\n * Returns the state nodes represented by the current state value.\r\n *\r\n * @param state The state value or State instance\r\n */\n\n\n StateNode.prototype.getStateNodes = function (state) {\n var _a;\n\n var _this = this;\n\n if (!state) {\n return [];\n }\n\n var stateValue = state instanceof State ? state.value : toStateValue(state, this.delimiter);\n\n if (isString(stateValue)) {\n var initialStateValue = this.getStateNode(stateValue).initial;\n return initialStateValue !== undefined ? this.getStateNodes((_a = {}, _a[stateValue] = initialStateValue, _a)) : [this, this.states[stateValue]];\n }\n\n var subStateKeys = Object.keys(stateValue);\n var subStateNodes = [this];\n subStateNodes.push.apply(subStateNodes, __spreadArray([], __read(flatten(subStateKeys.map(function (subStateKey) {\n return _this.getStateNode(subStateKey).getStateNodes(stateValue[subStateKey]);\n }))), false));\n return subStateNodes;\n };\n /**\r\n * Returns `true` if this state node explicitly handles the given event.\r\n *\r\n * @param event The event in question\r\n */\n\n\n StateNode.prototype.handles = function (event) {\n var eventType = getEventType(event);\n return this.events.includes(eventType);\n };\n /**\r\n * Resolves the given `state` to a new `State` instance relative to this machine.\r\n *\r\n * This ensures that `.events` and `.nextEvents` represent the correct values.\r\n *\r\n * @param state The state to resolve\r\n */\n\n\n StateNode.prototype.resolveState = function (state) {\n var stateFromConfig = state instanceof State ? state : State.create(state);\n var configuration = Array.from(getConfiguration([], this.getStateNodes(stateFromConfig.value)));\n return new State(__assign(__assign({}, stateFromConfig), {\n value: this.resolve(stateFromConfig.value),\n configuration: configuration,\n done: isInFinalState(configuration, this),\n tags: getTagsFromConfiguration(configuration),\n machine: this.machine\n }));\n };\n\n StateNode.prototype.transitionLeafNode = function (stateValue, state, _event) {\n var stateNode = this.getStateNode(stateValue);\n var next = stateNode.next(state, _event);\n\n if (!next || !next.transitions.length) {\n return this.next(state, _event);\n }\n\n return next;\n };\n\n StateNode.prototype.transitionCompoundNode = function (stateValue, state, _event) {\n var subStateKeys = Object.keys(stateValue);\n var stateNode = this.getStateNode(subStateKeys[0]);\n\n var next = stateNode._transition(stateValue[subStateKeys[0]], state, _event);\n\n if (!next || !next.transitions.length) {\n return this.next(state, _event);\n }\n\n return next;\n };\n\n StateNode.prototype.transitionParallelNode = function (stateValue, state, _event) {\n var e_2, _a;\n\n var transitionMap = {};\n\n try {\n for (var _b = __values(Object.keys(stateValue)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var subStateKey = _c.value;\n var subStateValue = stateValue[subStateKey];\n\n if (!subStateValue) {\n continue;\n }\n\n var subStateNode = this.getStateNode(subStateKey);\n\n var next = subStateNode._transition(subStateValue, state, _event);\n\n if (next) {\n transitionMap[subStateKey] = next;\n }\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n\n var stateTransitions = Object.keys(transitionMap).map(function (key) {\n return transitionMap[key];\n });\n var enabledTransitions = flatten(stateTransitions.map(function (st) {\n return st.transitions;\n }));\n var willTransition = stateTransitions.some(function (st) {\n return st.transitions.length > 0;\n });\n\n if (!willTransition) {\n return this.next(state, _event);\n }\n\n var configuration = flatten(Object.keys(transitionMap).map(function (key) {\n return transitionMap[key].configuration;\n }));\n return {\n transitions: enabledTransitions,\n exitSet: flatten(stateTransitions.map(function (t) {\n return t.exitSet;\n })),\n configuration: configuration,\n source: state,\n actions: flatten(Object.keys(transitionMap).map(function (key) {\n return transitionMap[key].actions;\n }))\n };\n };\n\n StateNode.prototype._transition = function (stateValue, state, _event) {\n // leaf node\n if (isString(stateValue)) {\n return this.transitionLeafNode(stateValue, state, _event);\n } // hierarchical node\n\n\n if (Object.keys(stateValue).length === 1) {\n return this.transitionCompoundNode(stateValue, state, _event);\n } // orthogonal node\n\n\n return this.transitionParallelNode(stateValue, state, _event);\n };\n\n StateNode.prototype.getTransitionData = function (state, event) {\n return this._transition(state.value, state, toSCXMLEvent(event));\n };\n\n StateNode.prototype.next = function (state, _event) {\n var e_3, _a;\n\n var _this = this;\n\n var eventName = _event.name;\n var actions = [];\n var nextStateNodes = [];\n var selectedTransition;\n\n try {\n for (var _b = __values(this.getCandidates(eventName)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var candidate = _c.value;\n var cond = candidate.cond,\n stateIn = candidate.in;\n var resolvedContext = state.context;\n var isInState = stateIn ? isString(stateIn) && isStateId(stateIn) ? // Check if in state by ID\n state.matches(toStateValue(this.getStateNodeById(stateIn).path, this.delimiter)) : // Check if in state by relative grandparent\n matchesState(toStateValue(stateIn, this.delimiter), path(this.path.slice(0, -2))(state.value)) : true;\n var guardPassed = false;\n\n try {\n guardPassed = !cond || evaluateGuard(this.machine, cond, resolvedContext, _event, state);\n } catch (err) {\n throw new Error(\"Unable to evaluate guard '\".concat(cond.name || cond.type, \"' in transition for event '\").concat(eventName, \"' in state node '\").concat(this.id, \"':\\n\").concat(err.message));\n }\n\n if (guardPassed && isInState) {\n if (candidate.target !== undefined) {\n nextStateNodes = candidate.target;\n }\n\n actions.push.apply(actions, __spreadArray([], __read(candidate.actions), false));\n selectedTransition = candidate;\n break;\n }\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n\n if (!selectedTransition) {\n return undefined;\n }\n\n if (!nextStateNodes.length) {\n return {\n transitions: [selectedTransition],\n exitSet: [],\n configuration: state.value ? [this] : [],\n source: state,\n actions: actions\n };\n }\n\n var allNextStateNodes = flatten(nextStateNodes.map(function (stateNode) {\n return _this.getRelativeStateNodes(stateNode, state.historyValue);\n }));\n var isInternal = !!selectedTransition.internal;\n return {\n transitions: [selectedTransition],\n exitSet: isInternal ? [] : flatten(nextStateNodes.map(function (targetNode) {\n return _this.getPotentiallyReenteringNodes(targetNode);\n })),\n configuration: allNextStateNodes,\n source: state,\n actions: actions\n };\n }; // even though the name of this function mentions reentry nodes\n // we are pushing its result into `exitSet`\n // that's because what we exit might be reentered (it's an invariant of reentrancy)\n\n\n StateNode.prototype.getPotentiallyReenteringNodes = function (targetNode) {\n if (this.order < targetNode.order) {\n return [this];\n }\n\n var nodes = [];\n var marker = this;\n var possibleAncestor = targetNode;\n\n while (marker && marker !== possibleAncestor) {\n nodes.push(marker);\n marker = marker.parent;\n }\n\n if (marker !== possibleAncestor) {\n // we never got to `possibleAncestor`, therefore the initial `marker` \"escapes\" it\n // it's in a different part of the tree so no states will be reentered for such an external transition\n return [];\n }\n\n nodes.push(possibleAncestor);\n return nodes;\n };\n\n StateNode.prototype.getActions = function (resolvedConfig, isDone, transition, currentContext, _event, prevState, predictableExec) {\n var e_4, _a, e_5, _b;\n\n var _this = this;\n\n var prevConfig = prevState ? getConfiguration([], this.getStateNodes(prevState.value)) : [];\n var entrySet = new Set();\n\n try {\n for (var _c = __values(Array.from(resolvedConfig).sort(function (a, b) {\n return a.order - b.order;\n })), _d = _c.next(); !_d.done; _d = _c.next()) {\n var sn = _d.value;\n\n if (!has(prevConfig, sn) || has(transition.exitSet, sn) || sn.parent && entrySet.has(sn.parent)) {\n entrySet.add(sn);\n }\n }\n } catch (e_4_1) {\n e_4 = {\n error: e_4_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_4) throw e_4.error;\n }\n }\n\n try {\n for (var prevConfig_1 = __values(prevConfig), prevConfig_1_1 = prevConfig_1.next(); !prevConfig_1_1.done; prevConfig_1_1 = prevConfig_1.next()) {\n var sn = prevConfig_1_1.value;\n\n if (!has(resolvedConfig, sn) || has(transition.exitSet, sn.parent)) {\n transition.exitSet.push(sn);\n }\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (prevConfig_1_1 && !prevConfig_1_1.done && (_b = prevConfig_1.return)) _b.call(prevConfig_1);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n\n transition.exitSet.sort(function (a, b) {\n return b.order - a.order;\n });\n var entryStates = Array.from(entrySet).sort(function (a, b) {\n return a.order - b.order;\n });\n var exitStates = new Set(transition.exitSet);\n var doneEvents = flatten(entryStates.map(function (sn) {\n var events = [];\n\n if (sn.type !== 'final') {\n return events;\n }\n\n var parent = sn.parent;\n\n if (!parent.parent) {\n return events;\n }\n\n events.push(done(sn.id, sn.doneData), // TODO: deprecate - final states should not emit done events for their own state.\n done(parent.id, sn.doneData ? mapContext(sn.doneData, currentContext, _event) : undefined));\n var grandparent = parent.parent;\n\n if (grandparent.type === 'parallel') {\n if (getChildren(grandparent).every(function (parentNode) {\n return isInFinalState(transition.configuration, parentNode);\n })) {\n events.push(done(grandparent.id));\n }\n }\n\n return events;\n }));\n var entryActions = entryStates.map(function (stateNode) {\n var entryActions = stateNode.onEntry;\n var invokeActions = stateNode.activities.map(function (activity) {\n return start(activity);\n });\n return {\n type: 'entry',\n actions: toActionObjects(predictableExec ? __spreadArray(__spreadArray([], __read(entryActions), false), __read(invokeActions), false) : __spreadArray(__spreadArray([], __read(invokeActions), false), __read(entryActions), false), _this.machine.options.actions)\n };\n }).concat({\n type: 'state_done',\n actions: doneEvents.map(function (event) {\n return raise(event);\n })\n });\n var exitActions = Array.from(exitStates).map(function (stateNode) {\n return {\n type: 'exit',\n actions: toActionObjects(__spreadArray(__spreadArray([], __read(stateNode.onExit), false), __read(stateNode.activities.map(function (activity) {\n return stop(activity);\n })), false), _this.machine.options.actions)\n };\n });\n var actions = exitActions.concat({\n type: 'transition',\n actions: toActionObjects(transition.actions, this.machine.options.actions)\n }).concat(entryActions);\n\n if (isDone) {\n var stopActions = toActionObjects(flatten(__spreadArray([], __read(resolvedConfig), false).sort(function (a, b) {\n return b.order - a.order;\n }).map(function (stateNode) {\n return stateNode.onExit;\n })), this.machine.options.actions).filter(function (action) {\n return !isRaisableAction(action);\n });\n return actions.concat({\n type: 'stop',\n actions: stopActions\n });\n }\n\n return actions;\n };\n /**\r\n * Determines the next state given the current `state` and sent `event`.\r\n *\r\n * @param state The current State instance or state value\r\n * @param event The event that was sent at the current state\r\n * @param context The current context (extended state) of the current state\r\n */\n\n\n StateNode.prototype.transition = function (state, event, context, exec) {\n if (state === void 0) {\n state = this.initialState;\n }\n\n var _event = toSCXMLEvent(event);\n\n var currentState;\n\n if (state instanceof State) {\n currentState = context === undefined ? state : this.resolveState(State.from(state, context));\n } else {\n var resolvedStateValue = isString(state) ? this.resolve(pathToStateValue(this.getResolvedPath(state))) : this.resolve(state);\n var resolvedContext = context !== null && context !== void 0 ? context : this.machine.context;\n currentState = this.resolveState(State.from(resolvedStateValue, resolvedContext));\n }\n\n if (!IS_PRODUCTION && _event.name === WILDCARD) {\n throw new Error(\"An event cannot have the wildcard type ('\".concat(WILDCARD, \"')\"));\n }\n\n if (this.strict) {\n if (!this.events.includes(_event.name) && !isBuiltInEvent(_event.name)) {\n throw new Error(\"Machine '\".concat(this.id, \"' does not accept event '\").concat(_event.name, \"'\"));\n }\n }\n\n var stateTransition = this._transition(currentState.value, currentState, _event) || {\n transitions: [],\n configuration: [],\n exitSet: [],\n source: currentState,\n actions: []\n };\n var prevConfig = getConfiguration([], this.getStateNodes(currentState.value));\n var resolvedConfig = stateTransition.configuration.length ? getConfiguration(prevConfig, stateTransition.configuration) : prevConfig;\n stateTransition.configuration = __spreadArray([], __read(resolvedConfig), false);\n return this.resolveTransition(stateTransition, currentState, currentState.context, exec, _event);\n };\n\n StateNode.prototype.resolveRaisedTransition = function (state, _event, originalEvent, predictableExec) {\n var _a;\n\n var currentActions = state.actions;\n state = this.transition(state, _event, undefined, predictableExec); // Save original event to state\n // TODO: this should be the raised event! Delete in V5 (breaking)\n\n state._event = originalEvent;\n state.event = originalEvent.data;\n\n (_a = state.actions).unshift.apply(_a, __spreadArray([], __read(currentActions), false));\n\n return state;\n };\n\n StateNode.prototype.resolveTransition = function (stateTransition, currentState, context, predictableExec, _event) {\n var e_6, _a, e_7, _b;\n\n var _this = this;\n\n if (_event === void 0) {\n _event = initEvent;\n }\n\n var configuration = stateTransition.configuration; // Transition will \"apply\" if:\n // - this is the initial state (there is no current state)\n // - OR there are transitions\n\n var willTransition = !currentState || stateTransition.transitions.length > 0;\n var resolvedConfiguration = willTransition ? stateTransition.configuration : currentState ? currentState.configuration : [];\n var isDone = isInFinalState(resolvedConfiguration, this);\n var resolvedStateValue = willTransition ? getValue(this.machine, configuration) : undefined;\n var historyValue = currentState ? currentState.historyValue ? currentState.historyValue : stateTransition.source ? this.machine.historyValue(currentState.value) : undefined : undefined;\n var actionBlocks = this.getActions(new Set(resolvedConfiguration), isDone, stateTransition, context, _event, currentState, predictableExec);\n var activities = currentState ? __assign({}, currentState.activities) : {};\n\n try {\n for (var actionBlocks_1 = __values(actionBlocks), actionBlocks_1_1 = actionBlocks_1.next(); !actionBlocks_1_1.done; actionBlocks_1_1 = actionBlocks_1.next()) {\n var block = actionBlocks_1_1.value;\n\n try {\n for (var _c = (e_7 = void 0, __values(block.actions)), _d = _c.next(); !_d.done; _d = _c.next()) {\n var action = _d.value;\n\n if (action.type === start$1) {\n activities[action.activity.id || action.activity.type] = action;\n } else if (action.type === stop$1) {\n activities[action.activity.id || action.activity.type] = false;\n }\n }\n } catch (e_7_1) {\n e_7 = {\n error: e_7_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_b = _c.return)) _b.call(_c);\n } finally {\n if (e_7) throw e_7.error;\n }\n }\n }\n } catch (e_6_1) {\n e_6 = {\n error: e_6_1\n };\n } finally {\n try {\n if (actionBlocks_1_1 && !actionBlocks_1_1.done && (_a = actionBlocks_1.return)) _a.call(actionBlocks_1);\n } finally {\n if (e_6) throw e_6.error;\n }\n }\n\n var _e = __read(resolveActions(this, currentState, context, _event, actionBlocks, predictableExec, this.machine.config.predictableActionArguments || this.machine.config.preserveActionOrder), 2),\n resolvedActions = _e[0],\n updatedContext = _e[1];\n\n var _f = __read(partition(resolvedActions, isRaisableAction), 2),\n raisedEvents = _f[0],\n nonRaisedActions = _f[1];\n\n var invokeActions = resolvedActions.filter(function (action) {\n var _a;\n\n return action.type === start$1 && ((_a = action.activity) === null || _a === void 0 ? void 0 : _a.type) === invoke;\n });\n var children = invokeActions.reduce(function (acc, action) {\n acc[action.activity.id] = createInvocableActor(action.activity, _this.machine, updatedContext, _event);\n return acc;\n }, currentState ? __assign({}, currentState.children) : {});\n var nextState = new State({\n value: resolvedStateValue || currentState.value,\n context: updatedContext,\n _event: _event,\n // Persist _sessionid between states\n _sessionid: currentState ? currentState._sessionid : null,\n historyValue: resolvedStateValue ? historyValue ? updateHistoryValue(historyValue, resolvedStateValue) : undefined : currentState ? currentState.historyValue : undefined,\n history: !resolvedStateValue || stateTransition.source ? currentState : undefined,\n actions: resolvedStateValue ? nonRaisedActions : [],\n activities: resolvedStateValue ? activities : currentState ? currentState.activities : {},\n events: [],\n configuration: resolvedConfiguration,\n transitions: stateTransition.transitions,\n children: children,\n done: isDone,\n tags: getTagsFromConfiguration(resolvedConfiguration),\n machine: this\n });\n var didUpdateContext = context !== updatedContext;\n nextState.changed = _event.name === update || didUpdateContext; // Dispose of penultimate histories to prevent memory leaks\n\n var history = nextState.history;\n\n if (history) {\n delete history.history;\n } // There are transient transitions if the machine is not in a final state\n // and if some of the state nodes have transient (\"always\") transitions.\n\n\n var hasAlwaysTransitions = !isDone && (this._transient || configuration.some(function (stateNode) {\n return stateNode._transient;\n })); // If there are no enabled transitions, check if there are transient transitions.\n // If there are transient transitions, continue checking for more transitions\n // because an transient transition should be triggered even if there are no\n // enabled transitions.\n //\n // If we're already working on an transient transition then stop to prevent an infinite loop.\n //\n // Otherwise, if there are no enabled nor transient transitions, we are done.\n\n if (!willTransition && (!hasAlwaysTransitions || _event.name === NULL_EVENT)) {\n return nextState;\n }\n\n var maybeNextState = nextState;\n\n if (!isDone) {\n if (hasAlwaysTransitions) {\n maybeNextState = this.resolveRaisedTransition(maybeNextState, {\n type: nullEvent\n }, _event, predictableExec);\n }\n\n while (raisedEvents.length) {\n var raisedEvent = raisedEvents.shift();\n maybeNextState = this.resolveRaisedTransition(maybeNextState, raisedEvent._event, _event, predictableExec);\n }\n } // Detect if state changed\n\n\n var changed = maybeNextState.changed || (history ? !!maybeNextState.actions.length || didUpdateContext || typeof history.value !== typeof maybeNextState.value || !stateValuesEqual(maybeNextState.value, history.value) : undefined);\n maybeNextState.changed = changed; // Preserve original history after raised events\n\n maybeNextState.history = history;\n return maybeNextState;\n };\n /**\r\n * Returns the child state node from its relative `stateKey`, or throws.\r\n */\n\n\n StateNode.prototype.getStateNode = function (stateKey) {\n if (isStateId(stateKey)) {\n return this.machine.getStateNodeById(stateKey);\n }\n\n if (!this.states) {\n throw new Error(\"Unable to retrieve child state '\".concat(stateKey, \"' from '\").concat(this.id, \"'; no child states exist.\"));\n }\n\n var result = this.states[stateKey];\n\n if (!result) {\n throw new Error(\"Child state '\".concat(stateKey, \"' does not exist on '\").concat(this.id, \"'\"));\n }\n\n return result;\n };\n /**\r\n * Returns the state node with the given `stateId`, or throws.\r\n *\r\n * @param stateId The state ID. The prefix \"#\" is removed.\r\n */\n\n\n StateNode.prototype.getStateNodeById = function (stateId) {\n var resolvedStateId = isStateId(stateId) ? stateId.slice(STATE_IDENTIFIER.length) : stateId;\n\n if (resolvedStateId === this.id) {\n return this;\n }\n\n var stateNode = this.machine.idMap[resolvedStateId];\n\n if (!stateNode) {\n throw new Error(\"Child state node '#\".concat(resolvedStateId, \"' does not exist on machine '\").concat(this.id, \"'\"));\n }\n\n return stateNode;\n };\n /**\r\n * Returns the relative state node from the given `statePath`, or throws.\r\n *\r\n * @param statePath The string or string array relative path to the state node.\r\n */\n\n\n StateNode.prototype.getStateNodeByPath = function (statePath) {\n if (typeof statePath === 'string' && isStateId(statePath)) {\n try {\n return this.getStateNodeById(statePath.slice(1));\n } catch (e) {// try individual paths\n // throw e;\n }\n }\n\n var arrayStatePath = toStatePath(statePath, this.delimiter).slice();\n var currentStateNode = this;\n\n while (arrayStatePath.length) {\n var key = arrayStatePath.shift();\n\n if (!key.length) {\n break;\n }\n\n currentStateNode = currentStateNode.getStateNode(key);\n }\n\n return currentStateNode;\n };\n /**\r\n * Resolves a partial state value with its full representation in this machine.\r\n *\r\n * @param stateValue The partial state value to resolve.\r\n */\n\n\n StateNode.prototype.resolve = function (stateValue) {\n var _a;\n\n var _this = this;\n\n if (!stateValue) {\n return this.initialStateValue || EMPTY_OBJECT; // TODO: type-specific properties\n }\n\n switch (this.type) {\n case 'parallel':\n return mapValues(this.initialStateValue, function (subStateValue, subStateKey) {\n return subStateValue ? _this.getStateNode(subStateKey).resolve(stateValue[subStateKey] || subStateValue) : EMPTY_OBJECT;\n });\n\n case 'compound':\n if (isString(stateValue)) {\n var subStateNode = this.getStateNode(stateValue);\n\n if (subStateNode.type === 'parallel' || subStateNode.type === 'compound') {\n return _a = {}, _a[stateValue] = subStateNode.initialStateValue, _a;\n }\n\n return stateValue;\n }\n\n if (!Object.keys(stateValue).length) {\n return this.initialStateValue || {};\n }\n\n return mapValues(stateValue, function (subStateValue, subStateKey) {\n return subStateValue ? _this.getStateNode(subStateKey).resolve(subStateValue) : EMPTY_OBJECT;\n });\n\n default:\n return stateValue || EMPTY_OBJECT;\n }\n };\n\n StateNode.prototype.getResolvedPath = function (stateIdentifier) {\n if (isStateId(stateIdentifier)) {\n var stateNode = this.machine.idMap[stateIdentifier.slice(STATE_IDENTIFIER.length)];\n\n if (!stateNode) {\n throw new Error(\"Unable to find state node '\".concat(stateIdentifier, \"'\"));\n }\n\n return stateNode.path;\n }\n\n return toStatePath(stateIdentifier, this.delimiter);\n };\n\n Object.defineProperty(StateNode.prototype, \"initialStateValue\", {\n get: function () {\n var _a;\n\n if (this.__cache.initialStateValue) {\n return this.__cache.initialStateValue;\n }\n\n var initialStateValue;\n\n if (this.type === 'parallel') {\n initialStateValue = mapFilterValues(this.states, function (state) {\n return state.initialStateValue || EMPTY_OBJECT;\n }, function (stateNode) {\n return !(stateNode.type === 'history');\n });\n } else if (this.initial !== undefined) {\n if (!this.states[this.initial]) {\n throw new Error(\"Initial state '\".concat(this.initial, \"' not found on '\").concat(this.key, \"'\"));\n }\n\n initialStateValue = isLeafNode(this.states[this.initial]) ? this.initial : (_a = {}, _a[this.initial] = this.states[this.initial].initialStateValue, _a);\n } else {\n // The finite state value of a machine without child states is just an empty object\n initialStateValue = {};\n }\n\n this.__cache.initialStateValue = initialStateValue;\n return this.__cache.initialStateValue;\n },\n enumerable: false,\n configurable: true\n });\n\n StateNode.prototype.getInitialState = function (stateValue, context) {\n this._init(); // TODO: this should be in the constructor (see note in constructor)\n\n\n var configuration = this.getStateNodes(stateValue);\n return this.resolveTransition({\n configuration: configuration,\n exitSet: [],\n transitions: [],\n source: undefined,\n actions: []\n }, undefined, context !== null && context !== void 0 ? context : this.machine.context, undefined);\n };\n\n Object.defineProperty(StateNode.prototype, \"initialState\", {\n /**\r\n * The initial State instance, which includes all actions to be executed from\r\n * entering the initial state.\r\n */\n get: function () {\n var initialStateValue = this.initialStateValue;\n\n if (!initialStateValue) {\n throw new Error(\"Cannot retrieve initial state from simple state '\".concat(this.id, \"'.\"));\n }\n\n return this.getInitialState(initialStateValue);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"target\", {\n /**\r\n * The target state value of the history state node, if it exists. This represents the\r\n * default state value to transition to if no history value exists yet.\r\n */\n get: function () {\n var target;\n\n if (this.type === 'history') {\n var historyConfig = this.config;\n\n if (isString(historyConfig.target)) {\n target = isStateId(historyConfig.target) ? pathToStateValue(this.machine.getStateNodeById(historyConfig.target).path.slice(this.path.length - 1)) : historyConfig.target;\n } else {\n target = historyConfig.target;\n }\n }\n\n return target;\n },\n enumerable: false,\n configurable: true\n });\n /**\r\n * Returns the leaf nodes from a state path relative to this state node.\r\n *\r\n * @param relativeStateId The relative state path to retrieve the state nodes\r\n * @param history The previous state to retrieve history\r\n * @param resolve Whether state nodes should resolve to initial child state nodes\r\n */\n\n StateNode.prototype.getRelativeStateNodes = function (relativeStateId, historyValue, resolve) {\n if (resolve === void 0) {\n resolve = true;\n }\n\n return resolve ? relativeStateId.type === 'history' ? relativeStateId.resolveHistory(historyValue) : relativeStateId.initialStateNodes : [relativeStateId];\n };\n\n Object.defineProperty(StateNode.prototype, \"initialStateNodes\", {\n get: function () {\n var _this = this;\n\n if (isLeafNode(this)) {\n return [this];\n } // Case when state node is compound but no initial state is defined\n\n\n if (this.type === 'compound' && !this.initial) {\n if (!IS_PRODUCTION) {\n warn(false, \"Compound state node '\".concat(this.id, \"' has no initial state.\"));\n }\n\n return [this];\n }\n\n var initialStateNodePaths = toStatePaths(this.initialStateValue);\n return flatten(initialStateNodePaths.map(function (initialPath) {\n return _this.getFromRelativePath(initialPath);\n }));\n },\n enumerable: false,\n configurable: true\n });\n /**\r\n * Retrieves state nodes from a relative path to this state node.\r\n *\r\n * @param relativePath The relative path from this state node\r\n * @param historyValue\r\n */\n\n StateNode.prototype.getFromRelativePath = function (relativePath) {\n if (!relativePath.length) {\n return [this];\n }\n\n var _a = __read(relativePath),\n stateKey = _a[0],\n childStatePath = _a.slice(1);\n\n if (!this.states) {\n throw new Error(\"Cannot retrieve subPath '\".concat(stateKey, \"' from node with no states\"));\n }\n\n var childStateNode = this.getStateNode(stateKey);\n\n if (childStateNode.type === 'history') {\n return childStateNode.resolveHistory();\n }\n\n if (!this.states[stateKey]) {\n throw new Error(\"Child state '\".concat(stateKey, \"' does not exist on '\").concat(this.id, \"'\"));\n }\n\n return this.states[stateKey].getFromRelativePath(childStatePath);\n };\n\n StateNode.prototype.historyValue = function (relativeStateValue) {\n if (!Object.keys(this.states).length) {\n return undefined;\n }\n\n return {\n current: relativeStateValue || this.initialStateValue,\n states: mapFilterValues(this.states, function (stateNode, key) {\n if (!relativeStateValue) {\n return stateNode.historyValue();\n }\n\n var subStateValue = isString(relativeStateValue) ? undefined : relativeStateValue[key];\n return stateNode.historyValue(subStateValue || stateNode.initialStateValue);\n }, function (stateNode) {\n return !stateNode.history;\n })\n };\n };\n /**\r\n * Resolves to the historical value(s) of the parent state node,\r\n * represented by state nodes.\r\n *\r\n * @param historyValue\r\n */\n\n\n StateNode.prototype.resolveHistory = function (historyValue) {\n var _this = this;\n\n if (this.type !== 'history') {\n return [this];\n }\n\n var parent = this.parent;\n\n if (!historyValue) {\n var historyTarget = this.target;\n return historyTarget ? flatten(toStatePaths(historyTarget).map(function (relativeChildPath) {\n return parent.getFromRelativePath(relativeChildPath);\n })) : parent.initialStateNodes;\n }\n\n var subHistoryValue = nestedPath(parent.path, 'states')(historyValue).current;\n\n if (isString(subHistoryValue)) {\n return [parent.getStateNode(subHistoryValue)];\n }\n\n return flatten(toStatePaths(subHistoryValue).map(function (subStatePath) {\n return _this.history === 'deep' ? parent.getFromRelativePath(subStatePath) : [parent.states[subStatePath[0]]];\n }));\n };\n\n Object.defineProperty(StateNode.prototype, \"stateIds\", {\n /**\r\n * All the state node IDs of this state node and its descendant state nodes.\r\n */\n get: function () {\n var _this = this;\n\n var childStateIds = flatten(Object.keys(this.states).map(function (stateKey) {\n return _this.states[stateKey].stateIds;\n }));\n return [this.id].concat(childStateIds);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"events\", {\n /**\r\n * All the event types accepted by this state node and its descendants.\r\n */\n get: function () {\n var e_8, _a, e_9, _b;\n\n if (this.__cache.events) {\n return this.__cache.events;\n }\n\n var states = this.states;\n var events = new Set(this.ownEvents);\n\n if (states) {\n try {\n for (var _c = __values(Object.keys(states)), _d = _c.next(); !_d.done; _d = _c.next()) {\n var stateId = _d.value;\n var state = states[stateId];\n\n if (state.states) {\n try {\n for (var _e = (e_9 = void 0, __values(state.events)), _f = _e.next(); !_f.done; _f = _e.next()) {\n var event_1 = _f.value;\n events.add(\"\".concat(event_1));\n }\n } catch (e_9_1) {\n e_9 = {\n error: e_9_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n } finally {\n if (e_9) throw e_9.error;\n }\n }\n }\n }\n } catch (e_8_1) {\n e_8 = {\n error: e_8_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_8) throw e_8.error;\n }\n }\n }\n\n return this.__cache.events = Array.from(events);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"ownEvents\", {\n /**\r\n * All the events that have transitions directly from this state node.\r\n *\r\n * Excludes any inert events.\r\n */\n get: function () {\n var events = new Set(this.transitions.filter(function (transition) {\n return !(!transition.target && !transition.actions.length && transition.internal);\n }).map(function (transition) {\n return transition.eventType;\n }));\n return Array.from(events);\n },\n enumerable: false,\n configurable: true\n });\n\n StateNode.prototype.resolveTarget = function (_target) {\n var _this = this;\n\n if (_target === undefined) {\n // an undefined target signals that the state node should not transition from that state when receiving that event\n return undefined;\n }\n\n return _target.map(function (target) {\n if (!isString(target)) {\n return target;\n }\n\n var isInternalTarget = target[0] === _this.delimiter; // If internal target is defined on machine,\n // do not include machine key on target\n\n if (isInternalTarget && !_this.parent) {\n return _this.getStateNodeByPath(target.slice(1));\n }\n\n var resolvedTarget = isInternalTarget ? _this.key + target : target;\n\n if (_this.parent) {\n try {\n var targetStateNode = _this.parent.getStateNodeByPath(resolvedTarget);\n\n return targetStateNode;\n } catch (err) {\n throw new Error(\"Invalid transition definition for state node '\".concat(_this.id, \"':\\n\").concat(err.message));\n }\n } else {\n return _this.getStateNodeByPath(resolvedTarget);\n }\n });\n };\n\n StateNode.prototype.formatTransition = function (transitionConfig) {\n var _this = this;\n\n var normalizedTarget = normalizeTarget(transitionConfig.target);\n var internal = 'internal' in transitionConfig ? transitionConfig.internal : normalizedTarget ? normalizedTarget.some(function (_target) {\n return isString(_target) && _target[0] === _this.delimiter;\n }) : true;\n var guards = this.machine.options.guards;\n var target = this.resolveTarget(normalizedTarget);\n\n var transition = __assign(__assign({}, transitionConfig), {\n actions: toActionObjects(toArray(transitionConfig.actions)),\n cond: toGuard(transitionConfig.cond, guards),\n target: target,\n source: this,\n internal: internal,\n eventType: transitionConfig.event,\n toJSON: function () {\n return __assign(__assign({}, transition), {\n target: transition.target ? transition.target.map(function (t) {\n return \"#\".concat(t.id);\n }) : undefined,\n source: \"#\".concat(_this.id)\n });\n }\n });\n\n return transition;\n };\n\n StateNode.prototype.formatTransitions = function () {\n var e_10, _a;\n\n var _this = this;\n\n var onConfig;\n\n if (!this.config.on) {\n onConfig = [];\n } else if (Array.isArray(this.config.on)) {\n onConfig = this.config.on;\n } else {\n var _b = this.config.on,\n _c = WILDCARD,\n _d = _b[_c],\n wildcardConfigs = _d === void 0 ? [] : _d,\n strictTransitionConfigs_1 = __rest(_b, [typeof _c === \"symbol\" ? _c : _c + \"\"]);\n\n onConfig = flatten(Object.keys(strictTransitionConfigs_1).map(function (key) {\n if (!IS_PRODUCTION && key === NULL_EVENT) {\n warn(false, \"Empty string transition configs (e.g., `{ on: { '': ... }}`) for transient transitions are deprecated. Specify the transition in the `{ always: ... }` property instead. \" + \"Please check the `on` configuration for \\\"#\".concat(_this.id, \"\\\".\"));\n }\n\n var transitionConfigArray = toTransitionConfigArray(key, strictTransitionConfigs_1[key]);\n\n if (!IS_PRODUCTION) {\n validateArrayifiedTransitions(_this, key, transitionConfigArray);\n }\n\n return transitionConfigArray;\n }).concat(toTransitionConfigArray(WILDCARD, wildcardConfigs)));\n }\n\n var eventlessConfig = this.config.always ? toTransitionConfigArray('', this.config.always) : [];\n var doneConfig = this.config.onDone ? toTransitionConfigArray(String(done(this.id)), this.config.onDone) : [];\n\n if (!IS_PRODUCTION) {\n warn(!(this.config.onDone && !this.parent), \"Root nodes cannot have an \\\".onDone\\\" transition. Please check the config of \\\"\".concat(this.id, \"\\\".\"));\n }\n\n var invokeConfig = flatten(this.invoke.map(function (invokeDef) {\n var settleTransitions = [];\n\n if (invokeDef.onDone) {\n settleTransitions.push.apply(settleTransitions, __spreadArray([], __read(toTransitionConfigArray(String(doneInvoke(invokeDef.id)), invokeDef.onDone)), false));\n }\n\n if (invokeDef.onError) {\n settleTransitions.push.apply(settleTransitions, __spreadArray([], __read(toTransitionConfigArray(String(error(invokeDef.id)), invokeDef.onError)), false));\n }\n\n return settleTransitions;\n }));\n var delayedTransitions = this.after;\n var formattedTransitions = flatten(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(doneConfig), false), __read(invokeConfig), false), __read(onConfig), false), __read(eventlessConfig), false).map(function (transitionConfig) {\n return toArray(transitionConfig).map(function (transition) {\n return _this.formatTransition(transition);\n });\n }));\n\n try {\n for (var delayedTransitions_1 = __values(delayedTransitions), delayedTransitions_1_1 = delayedTransitions_1.next(); !delayedTransitions_1_1.done; delayedTransitions_1_1 = delayedTransitions_1.next()) {\n var delayedTransition = delayedTransitions_1_1.value;\n formattedTransitions.push(delayedTransition);\n }\n } catch (e_10_1) {\n e_10 = {\n error: e_10_1\n };\n } finally {\n try {\n if (delayedTransitions_1_1 && !delayedTransitions_1_1.done && (_a = delayedTransitions_1.return)) _a.call(delayedTransitions_1);\n } finally {\n if (e_10) throw e_10.error;\n }\n }\n\n return formattedTransitions;\n };\n\n return StateNode;\n}();\n\nexport { StateNode };\n","import { StateNode } from './StateNode.js';\nimport { IS_PRODUCTION } from './environment.js';\n\nvar warned = false;\nfunction Machine(config, options, initialContext) {\n if (initialContext === void 0) {\n initialContext = config.context;\n }\n\n return new StateNode(config, options, initialContext);\n}\nfunction createMachine(config, options) {\n if (!IS_PRODUCTION && !('predictableActionArguments' in config) && !warned) {\n warned = true;\n console.warn('It is highly recommended to set `predictableActionArguments` to `true` when using `createMachine`. https://xstate.js.org/docs/guides/actions.html');\n }\n\n return new StateNode(config, options);\n}\n\nexport { Machine, createMachine };\n","import { assign as assign$1, cancel as cancel$1, send as send$1, sendTo as sendTo$1, sendParent as sendParent$1, sendUpdate as sendUpdate$1, forwardTo as forwardTo$1, doneInvoke as doneInvoke$1, raise as raise$1, log as log$1, pure as pure$1, choose as choose$1, stop as stop$1 } from './actions.js';\nimport * as actions from './actions.js';\nexport { actions };\nexport { toActorRef } from './Actor.js';\nexport { Interpreter, InterpreterStatus, interpret, spawn } from './interpreter.js';\nexport { Machine, createMachine } from './Machine.js';\nexport { mapState } from './mapState.js';\nexport { matchState } from './match.js';\nexport { createSchema, t } from './schema.js';\nexport { State } from './State.js';\nexport { StateNode } from './StateNode.js';\nexport { spawnBehavior } from './behaviors.js';\nexport { ActionTypes, SpecialTargets } from './types.js';\nexport { matchesState, toEventObject, toObserver, toSCXMLEvent } from './utils.js';\n\nvar assign = assign$1,\n cancel = cancel$1,\n send = send$1,\n sendTo = sendTo$1,\n sendParent = sendParent$1,\n sendUpdate = sendUpdate$1,\n forwardTo = forwardTo$1,\n doneInvoke = doneInvoke$1,\n raise = raise$1,\n log = log$1,\n pure = pure$1,\n choose = choose$1,\n stop = stop$1;\n\nexport { assign, cancel, choose, doneInvoke, forwardTo, log, pure, raise, send, sendParent, sendTo, sendUpdate, stop };\n","import pickBy from 'lodash/pickBy.js';\nimport '@aws-amplify/core/internals/utils';\nimport '../../utils/setUserAgent/constants.mjs';\nimport { isString } from '../../utils/utils.mjs';\n\n// default `autoSignIn` flag is `true`\nconst DEFAULT_AUTO_SIGN_IN = true;\nconst EMPTY_STRING = '';\nconst sanitizePhoneNumber = (dialCode, phoneNumber) => `${dialCode}${phoneNumber}`.replace(/[^A-Z0-9+]/gi, '');\nconst selectUserAttributes = (_, key) => {\n // Allowlist of Cognito User Pool Attributes (from OpenID Connect specification)\n // See: https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html\n switch (key) {\n case 'address':\n case 'birthdate':\n case 'email':\n case 'family_name':\n case 'gender':\n case 'given_name':\n case 'locale':\n case 'middle_name':\n case 'name':\n case 'nickname':\n case 'phone_number':\n case 'picture':\n case 'preferred_username':\n case 'profile':\n case 'updated_at':\n case 'website':\n case 'zoneinfo':\n return true;\n // Otherwise, it's a custom attribute\n default:\n return key.startsWith('custom:');\n }\n};\nconst getUserAttributes = (formValues) => {\n const { phone_number, ...userAttributes } = pickBy(formValues, selectUserAttributes);\n // only include `phone_number` attribute in `userAttributes` if it has a value\n if (isString(phone_number) && phone_number !== EMPTY_STRING) {\n const { country_code } = formValues;\n return {\n ...userAttributes,\n phone_number: sanitizePhoneNumber(country_code, phone_number),\n };\n }\n return userAttributes;\n};\nconst getSignUpInput = (username, formValues, loginMechanism) => {\n const { password, ...values } = formValues;\n const attributes = getUserAttributes(values);\n const options = {\n autoSignIn: DEFAULT_AUTO_SIGN_IN,\n userAttributes: {\n // use `username` value for `phone_number`\n ...(loginMechanism === 'phone_number'\n ? { ...attributes, phone_number: username }\n : attributes),\n },\n };\n return { username, password, options };\n};\nconst getUsernameSignUp = ({ formValues, loginMechanisms, }) => {\n const loginMechanism = loginMechanisms[0];\n if (loginMechanism === 'phone_number') {\n const { country_code, phone_number } = formValues;\n return sanitizePhoneNumber(country_code, phone_number);\n }\n return formValues[loginMechanism];\n};\n\nexport { getSignUpInput, getUserAttributes, getUsernameSignUp, sanitizePhoneNumber };\n","import { actions } from 'xstate';\nimport 'aws-amplify/utils';\nimport '@aws-amplify/core/internals/utils';\nimport '../../utils/setUserAgent/constants.mjs';\nimport '../../types/authenticator/user.mjs';\nimport '../../types/authenticator/attributes.mjs';\nimport { trimValues } from '../../helpers/authenticator/utils.mjs';\nimport '../../helpers/accountSettings/utils.mjs';\nimport 'aws-amplify';\nimport { sanitizePhoneNumber, getUsernameSignUp } from './utils.mjs';\n\nconst { assign } = actions;\nconst clearActorDoneData = assign({ actorDoneData: undefined });\nconst clearChallengeName = assign({ challengeName: undefined });\nconst clearMissingAttributes = assign({ missingAttributes: undefined });\nconst clearError = assign({ remoteError: undefined });\nconst clearFormValues = assign({ formValues: {} });\nconst clearTouched = assign({ touched: {} });\nconst clearUser = assign({ user: undefined });\nconst clearValidationError = assign({ validationError: {} });\n/**\n * \"set\" actions\n */\nconst setTotpSecretCode = assign({\n totpSecretCode: (_, { data }) => {\n const { sharedSecret } = (data.nextStep?.totpSetupDetails ??\n {});\n return sharedSecret;\n },\n});\nconst setSignInStep = assign({ step: 'SIGN_IN' });\nconst setShouldVerifyUserAttributeStep = assign({\n step: 'SHOULD_CONFIRM_USER_ATTRIBUTE',\n});\nconst setConfirmAttributeCompleteStep = assign({\n step: 'CONFIRM_ATTRIBUTE_COMPLETE',\n});\n// map v6 `signInStep` to v5 `challengeName`\nconst setChallengeName = assign({\n challengeName: (_, { data }) => {\n const { signInStep } = data.nextStep;\n return signInStep === 'CONFIRM_SIGN_IN_WITH_SMS_CODE'\n ? 'SMS_MFA'\n : signInStep === 'CONFIRM_SIGN_IN_WITH_TOTP_CODE'\n ? 'SOFTWARE_TOKEN_MFA'\n : undefined;\n },\n});\nconst setUsernameForgotPassword = assign({\n username: ({ formValues, loginMechanisms }) => {\n const loginMechanism = loginMechanisms[0];\n const { username, country_code } = formValues;\n if (loginMechanism === 'phone_number') {\n // forgot password `formValues` uses `username` for base phone number value\n // prefix `country_code` for full `username`\n return sanitizePhoneNumber(country_code, username);\n }\n // default username field for loginMechanism === 'email' is \"username\" for SignIn\n return username;\n },\n});\nconst setUsernameSignUp = assign({ username: getUsernameSignUp });\nconst setUsernameSignIn = assign({\n username: ({ formValues, loginMechanisms }) => {\n const loginMechanism = loginMechanisms[0];\n const { username, country_code } = formValues;\n if (loginMechanism === 'phone_number') {\n // sign in `formValues` uses `username` for base phone number value\n // prefix `country_code` for full `username`\n return sanitizePhoneNumber(country_code, username);\n }\n // return `email` and `username`\n return username;\n },\n});\nconst setNextSignInStep = assign({\n step: (_, { data }) => data.nextStep.signInStep === 'DONE'\n ? 'SIGN_IN_COMPLETE'\n : data.nextStep.signInStep,\n});\nconst setNextSignUpStep = assign({\n step: (_, { data }) => data.nextStep.signUpStep === 'DONE'\n ? 'SIGN_UP_COMPLETE'\n : data.nextStep.signUpStep,\n});\nconst setNextResetPasswordStep = assign({\n step: (_, { data }) => data.nextStep.resetPasswordStep === 'DONE'\n ? 'RESET_PASSWORD_COMPLETE'\n : data.nextStep.resetPasswordStep,\n});\nconst setMissingAttributes = assign({\n missingAttributes: (_, { data }) => data.nextStep?.missingAttributes,\n});\nconst setFieldErrors = assign({\n validationError: (_, { data }) => data,\n});\nconst setRemoteError = assign({\n remoteError: (_, { data }) => {\n if (data.name === 'NoUserPoolError') {\n return `Configuration error (see console) – please contact the administrator`;\n }\n return data?.message || data;\n },\n});\nconst setUser = assign({ user: (_, { data }) => data });\nconst resolveCodeDeliveryDetails = (details) => ({\n Destination: details.destination,\n DeliveryMedium: details.deliveryMedium,\n AttributeName: details.attributName,\n});\nconst setCodeDeliveryDetails = assign({\n codeDeliveryDetails: (_, { data }) => {\n if (data\n ?.nextStep?.codeDeliveryDetails) {\n return resolveCodeDeliveryDetails(data\n .nextStep.codeDeliveryDetails);\n }\n return resolveCodeDeliveryDetails(data);\n },\n});\nconst handleInput = assign({\n formValues: (context, { data }) => {\n const { name, value } = data;\n return { ...context['formValues'], [name]: value };\n },\n});\nconst handleSubmit = assign({\n formValues: (context, { data }) => \n // do not trim password\n trimValues({ ...context['formValues'], ...data }, 'password'),\n});\nconst handleBlur = assign({\n touched: (context, { data }) => ({\n ...context['touched'],\n [data.name]: true,\n }),\n});\nconst setUnverifiedUserAttributes = assign({\n unverifiedUserAttributes: (_, { data }) => {\n const { email, phone_number } = data;\n const unverifiedUserAttributes = {\n ...(email && { email }),\n ...(phone_number && { phone_number }),\n };\n return unverifiedUserAttributes;\n },\n});\nconst clearSelectedUserAttribute = assign({ selectedUserAttribute: undefined });\nconst setSelectedUserAttribute = assign({\n selectedUserAttribute: (context) => context.formValues?.unverifiedAttr,\n});\n// Maps to unexposed `ConfirmSignUpSignUpStep`\nconst setConfirmSignUpSignUpStep = assign({ step: 'CONFIRM_SIGN_UP' });\nconst ACTIONS = {\n clearActorDoneData,\n clearChallengeName,\n clearError,\n clearFormValues,\n clearMissingAttributes,\n clearSelectedUserAttribute,\n clearTouched,\n clearUser,\n clearValidationError,\n handleBlur,\n handleInput,\n handleSubmit,\n setChallengeName,\n setCodeDeliveryDetails,\n setFieldErrors,\n setMissingAttributes,\n setNextResetPasswordStep,\n setNextSignInStep,\n setNextSignUpStep,\n setRemoteError,\n setConfirmAttributeCompleteStep,\n setConfirmSignUpSignUpStep,\n setShouldVerifyUserAttributeStep,\n setSelectedUserAttribute,\n setSignInStep,\n setTotpSecretCode,\n setUser,\n setUnverifiedUserAttributes,\n setUsernameForgotPassword,\n setUsernameSignIn,\n setUsernameSignUp,\n};\n\nexport { ACTIONS as default };\n","import { ALLOWED_SPECIAL_CHARACTERS, emailRegex } from './constants.mjs';\n\n// replaces all characters in a string with '*', except for the first and last char\nconst censorAllButFirstAndLast = (value) => {\n const split = value.trim().split('');\n for (let i = 0; i < split.length; i++) {\n if (i > 0 && i < split.length - 1) {\n split[i] = '*';\n }\n }\n return split.join('');\n};\n// censors all but the last four characters of a phone number\nconst censorPhoneNumber = (val) => {\n if (val.length < 4) {\n return val;\n }\n const split = val.split('');\n for (let i = 0; i < split.length - 4; i++) {\n split[i] = '*';\n }\n return split.join('');\n};\n// censors all but the first and last of the name of an email and keeps domain\nconst censorEmail = (val) => {\n const splitEmail = val.split('@');\n const censoredName = censorAllButFirstAndLast(splitEmail[0]);\n return `${censoredName}@${splitEmail[1]}`;\n};\n// based on the ContactMethod type, returns a censored contact value\nconst censorContactMethod = (type, value) => {\n return type === 'Phone Number'\n ? censorPhoneNumber(value)\n : censorEmail(value);\n};\nconst hasSpecialChars = (password) => ALLOWED_SPECIAL_CHARACTERS.some((char) => password.includes(char));\nconst getTotpCodeURL = (issuer, username, secret) => encodeURI(`otpauth://totp/${issuer}:${username}?secret=${secret}&issuer=${issuer}`);\nfunction trimValues(values, ...ignored) {\n return Object.entries(values).reduce((acc, [name, value]) => ({\n ...acc,\n [name]: ignored.includes(name) ? value : value?.trim(),\n }), {});\n}\nconst isValidEmail = (value) => {\n if (!value)\n return false;\n return emailRegex.test(value);\n};\n\nexport { censorAllButFirstAndLast, censorContactMethod, censorEmail, censorPhoneNumber, getTotpCodeURL, hasSpecialChars, isValidEmail, trimValues };\n","const SIGN_IN_STEP_MFA_CONFIRMATION = [\n 'CONFIRM_SIGN_IN_WITH_SMS_CODE',\n 'CONFIRM_SIGN_IN_WITH_TOTP_CODE',\n];\n// response next step guards\nconst shouldConfirmSignInWithNewPassword = (_, { data }) => data?.nextStep.signInStep ===\n 'CONFIRM_SIGN_IN_WITH_NEW_PASSWORD_REQUIRED';\nconst shouldResetPasswordFromSignIn = (_, { data }) => data?.nextStep?.signInStep === 'RESET_PASSWORD';\nconst shouldConfirmSignUpFromSignIn = (_, { data }) => data?.nextStep.signInStep === 'CONFIRM_SIGN_UP';\nconst shouldAutoSignIn = (_, { data }) => data?.nextStep.signUpStep === 'COMPLETE_AUTO_SIGN_IN';\nconst hasCompletedSignIn = (_, { data }) => data?.nextStep.signInStep === 'DONE';\nconst hasCompletedSignUp = (_, { data }) => data?.nextStep.signUpStep === 'DONE';\nconst hasCompletedResetPassword = (_, { data }) => data?.nextStep.resetPasswordStep === 'DONE';\n// actor done guards read `step` from actor exit event\nconst hasCompletedAttributeConfirmation = (_, { data }) => data?.step === 'CONFIRM_ATTRIBUTE_COMPLETE';\nconst isConfirmUserAttributeStep = (_, { data }) => data?.step === 'CONFIRM_ATTRIBUTE_WITH_CODE';\nconst isShouldConfirmUserAttributeStep = (_, { data }) => data?.step === 'SHOULD_CONFIRM_USER_ATTRIBUTE';\nconst isResetPasswordStep = (_, { data }) => data?.step === 'RESET_PASSWORD';\nconst isConfirmSignUpStep = (_, { data }) => data?.step === 'CONFIRM_SIGN_UP';\n// actor entry guards read `step` from actor context\nconst shouldConfirmSignIn = ({ step }) => SIGN_IN_STEP_MFA_CONFIRMATION.includes(step);\nconst shouldSetupTotp = ({ step }) => step === 'CONTINUE_SIGN_IN_WITH_TOTP_SETUP';\nconst shouldResetPassword = ({ step }) => step === 'RESET_PASSWORD';\nconst shouldConfirmResetPassword = ({ step }) => step === 'CONFIRM_RESET_PASSWORD_WITH_CODE';\nconst shouldConfirmSignUp = ({ step }) => step === 'CONFIRM_SIGN_UP';\n// miscellaneous guards\nconst shouldVerifyAttribute = (_, { data }) => {\n const { phone_number_verified, email_verified } = data;\n // email/phone_verified is returned as a string\n const emailNotVerified = email_verified === undefined || email_verified === 'false';\n const phoneNotVerified = phone_number_verified === undefined || phone_number_verified === 'false';\n // only request verification if both email and phone are not verified\n return emailNotVerified && phoneNotVerified;\n};\n/**\n * This guard covers an edge case that exists in the current state of the UI.\n * As of now, our ConfirmSignUp screen only supports showing an input for a\n * confirmation code. However, a Cognito UserPool can instead verify users\n * through a link that gets emailed to them. If a user verifies through the\n * link and then they click on the \"Resend Code\" button, they will get an error\n * saying that the user has already been confirmed. If we encounter that error,\n * we want to just funnel them through the rest of the flow. In the future, we will\n * want to update our UI to support both confirmation codes and links.\n *\n * https://github.com/aws-amplify/amplify-ui/issues/219\n */\nconst isUserAlreadyConfirmed = (_, { data }) => data.message === 'User is already confirmed.';\nconst GUARDS = {\n hasCompletedAttributeConfirmation,\n hasCompletedResetPassword,\n hasCompletedSignIn,\n hasCompletedSignUp,\n isConfirmSignUpStep,\n isConfirmUserAttributeStep,\n isResetPasswordStep,\n isShouldConfirmUserAttributeStep,\n isUserAlreadyConfirmed,\n shouldAutoSignIn,\n shouldConfirmResetPassword,\n shouldConfirmSignIn,\n shouldConfirmSignInWithNewPassword,\n shouldConfirmSignUp,\n shouldConfirmSignUpFromSignIn,\n shouldResetPassword,\n shouldResetPasswordFromSignIn,\n shouldSetupTotp,\n shouldVerifyAttribute,\n};\n\nexport { GUARDS as default };\n","import merge from 'lodash/merge.js';\nimport '@aws-amplify/core/internals/utils';\nimport '../utils/setUserAgent/constants.mjs';\nimport { isEmpty } from '../utils/utils.mjs';\n\n// Runs all validators given. Resolves if there are no error. Rejects otherwise.\nconst runValidators = async (formData, touchData, passwordSettings, validators) => {\n const errors = await Promise.all(validators.map((validator) => validator(formData, touchData, passwordSettings)));\n const mergedError = merge({}, ...errors);\n if (isEmpty(mergedError)) {\n // no errors were found\n return Promise.resolve();\n }\n else {\n return Promise.reject(mergedError);\n }\n};\n\nexport { runValidators };\n","/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var AmplifyErrorCode;\n(function (AmplifyErrorCode) {\n AmplifyErrorCode[\"NoEndpointId\"] = \"NoEndpointId\";\n AmplifyErrorCode[\"PlatformNotSupported\"] = \"PlatformNotSupported\";\n AmplifyErrorCode[\"Unknown\"] = \"Unknown\";\n})(AmplifyErrorCode || (AmplifyErrorCode = {}));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport JsCookie from 'js-cookie';\nexport class CookieStorage {\n constructor(data = {}) {\n const { path, domain, expires, sameSite, secure } = data;\n this.domain = domain;\n this.path = path || '/';\n this.expires = Object.prototype.hasOwnProperty.call(data, 'expires')\n ? expires\n : 365;\n this.secure = Object.prototype.hasOwnProperty.call(data, 'secure')\n ? secure\n : true;\n if (Object.prototype.hasOwnProperty.call(data, 'sameSite')) {\n if (!sameSite || !['strict', 'lax', 'none'].includes(sameSite)) {\n throw new Error('The sameSite value of cookieStorage must be \"lax\", \"strict\" or \"none\".');\n }\n if (sameSite === 'none' && !this.secure) {\n throw new Error('sameSite = None requires the Secure attribute in latest browser versions.');\n }\n this.sameSite = sameSite;\n }\n }\n async setItem(key, value) {\n JsCookie.set(key, value, this.getData());\n }\n async getItem(key) {\n const item = JsCookie.get(key);\n return item ?? null;\n }\n async removeItem(key) {\n JsCookie.remove(key, this.getData());\n }\n async clear() {\n const cookie = JsCookie.get();\n const promises = Object.keys(cookie).map(key => this.removeItem(key));\n await Promise.all(promises);\n }\n getData() {\n return {\n path: this.path,\n expires: this.expires,\n domain: this.domain,\n secure: this.secure,\n ...(this.sameSite && { sameSite: this.sameSite }),\n };\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyErrorCode } from '../types';\nimport { AmplifyError } from './AmplifyError';\nexport class PlatformNotSupportedError extends AmplifyError {\n constructor() {\n super({\n name: AmplifyErrorCode.PlatformNotSupported,\n message: 'Function not supported on current platform',\n });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { PlatformNotSupportedError } from '../errors';\n/**\n * @internal\n */\nexport class KeyValueStorage {\n constructor(storage) {\n this.storage = storage;\n }\n /**\n * This is used to set a specific item in storage\n * @param {string} key - the key for the item\n * @param {object} value - the value\n * @returns {string} value that was set\n */\n async setItem(key, value) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.setItem(key, value);\n }\n /**\n * This is used to get a specific key from storage\n * @param {string} key - the key for the item\n * This is used to clear the storage\n * @returns {string} the data item\n */\n async getItem(key) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n return this.storage.getItem(key);\n }\n /**\n * This is used to remove an item from storage\n * @param {string} key - the key being set\n * @returns {string} value - value that was deleted\n */\n async removeItem(key) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.removeItem(key);\n }\n /**\n * This is used to clear the storage\n * @returns {string} nothing\n */\n async clear() {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.clear();\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */\nexport class InMemoryStorage {\n constructor() {\n this.storage = new Map();\n }\n get length() {\n return this.storage.size;\n }\n key(index) {\n if (index > this.length - 1) {\n return null;\n }\n return Array.from(this.storage.keys())[index];\n }\n setItem(key, value) {\n this.storage.set(key, value);\n }\n getItem(key) {\n return this.storage.get(key) ?? null;\n }\n removeItem(key) {\n this.storage.delete(key);\n }\n clear() {\n this.storage.clear();\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { DefaultStorage } from './DefaultStorage';\nimport { InMemoryStorage } from './InMemoryStorage';\nimport { KeyValueStorage } from './KeyValueStorage';\nimport { SessionStorage } from './SessionStorage';\nexport { CookieStorage } from './CookieStorage';\nexport const defaultStorage = new DefaultStorage();\nexport const sessionStorage = new SessionStorage();\nexport const sharedInMemoryStorage = new KeyValueStorage(new InMemoryStorage());\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { KeyValueStorage } from './KeyValueStorage';\nimport { getLocalStorageWithFallback } from './utils';\n/**\n * @internal\n */\nexport class DefaultStorage extends KeyValueStorage {\n constructor() {\n super(getLocalStorageWithFallback());\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { InMemoryStorage } from './InMemoryStorage';\n/**\n * @internal\n * @returns Either a reference to window.localStorage or an in-memory storage as fallback\n */\nexport const getLocalStorageWithFallback = () => typeof window !== 'undefined' && window.localStorage\n ? window.localStorage\n : new InMemoryStorage();\n/**\n * @internal\n * @returns Either a reference to window.sessionStorage or an in-memory storage as fallback\n */\nexport const getSessionStorageWithFallback = () => typeof window !== 'undefined' && window.sessionStorage\n ? window.sessionStorage\n : new InMemoryStorage();\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const composeServiceApi = (transferHandler, serializer, deserializer, defaultConfig) => {\n return async (config, input) => {\n const resolvedConfig = {\n ...defaultConfig,\n ...config,\n };\n // We may want to allow different endpoints from given config(other than region) and input.\n // Currently S3 supports additional `useAccelerateEndpoint` option to use accelerate endpoint.\n const endpoint = await resolvedConfig.endpointResolver(resolvedConfig, input);\n // Unlike AWS SDK clients, a serializer should NOT populate the `host` or `content-length` headers.\n // Both of these headers are prohibited per Spec(https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name).\n // They will be populated automatically by browser, or node-fetch polyfill.\n const request = await serializer(input, endpoint);\n const response = await transferHandler(request, {\n ...resolvedConfig,\n });\n return deserializer(response);\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { KeyValueStorage } from './KeyValueStorage';\nimport { getSessionStorageWithFallback } from './utils';\n/**\n * @internal\n */\nexport class SessionStorage extends KeyValueStorage {\n constructor() {\n super(getSessionStorageWithFallback());\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyErrorCode, } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../AuthError';\nexport function assertServiceError(error) {\n if (!error ||\n error.name === 'Error' ||\n error instanceof TypeError) {\n throw new AuthError({\n name: AmplifyErrorCode.Unknown,\n message: 'An unknown error has occurred.',\n underlyingError: error,\n });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Default partition for AWS services. This is used when the region is not provided or the region is not recognized.\n *\n * @internal\n */\nexport const defaultPartition = {\n id: 'aws',\n outputs: {\n dnsSuffix: 'amazonaws.com',\n },\n regionRegex: '^(us|eu|ap|sa|ca|me|af)\\\\-\\\\w+\\\\-\\\\d+$',\n regions: ['aws-global'],\n};\n/**\n * This data is adapted from the partition file from AWS SDK shared utilities but remove some contents for bundle size\n * concern. Information removed are `dualStackDnsSuffix`, `supportDualStack`, `supportFIPS`, restricted partitions, and\n * list of regions for each partition other than global regions.\n *\n * * Ref: https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints\n * * Ref: https://github.com/aws/aws-sdk-js-v3/blob/0201baef03c2379f1f6f7150b9d401d4b230d488/packages/util-endpoints/src/lib/aws/partitions.json#L1\n *\n * @internal\n */\nexport const partitionsInfo = {\n partitions: [\n defaultPartition,\n {\n id: 'aws-cn',\n outputs: {\n dnsSuffix: 'amazonaws.com.cn',\n },\n regionRegex: '^cn\\\\-\\\\w+\\\\-\\\\d+$',\n regions: ['aws-cn-global'],\n },\n ],\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { defaultPartition, partitionsInfo } from './partitions';\n/**\n * Get the AWS Services endpoint URL's DNS suffix for a given region. A typical AWS regional service endpoint URL will\n * follow this pattern: {endpointPrefix}.{region}.{dnsSuffix}. For example, the endpoint URL for Cognito Identity in\n * us-east-1 will be cognito-identity.us-east-1.amazonaws.com. Here the DnsSuffix is `amazonaws.com`.\n *\n * @param region\n * @returns The DNS suffix\n *\n * @internal\n */\nexport const getDnsSuffix = (region) => {\n const { partitions } = partitionsInfo;\n for (const { regions, outputs, regionRegex } of partitions) {\n const regex = new RegExp(regionRegex);\n if (regions.includes(region) || regex.test(region)) {\n return outputs.dnsSuffix;\n }\n }\n return defaultPartition.outputs.dnsSuffix;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { getDnsSuffix, getRetryDecider, jitteredBackoff, parseJsonError, unauthenticatedHandler, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, getAmplifyUserAgent, } from '@aws-amplify/core/internals/utils';\nimport { composeTransferHandler } from '@aws-amplify/core/internals/aws-client-utils/composers';\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nconst SERVICE_NAME = 'cognito-idp';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */\nconst endpointResolver = ({ region }) => {\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n const customURL = authConfig?.userPoolEndpoint;\n const defaultURL = new AmplifyUrl(`https://${SERVICE_NAME}.${region}.${getDnsSuffix(region)}`);\n return {\n url: customURL ? new AmplifyUrl(customURL) : defaultURL,\n };\n};\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */\nconst disableCacheMiddlewareFactory = () => (next, _) => async function disableCacheMiddleware(request) {\n request.headers['cache-control'] = 'no-store';\n return next(request);\n};\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */\nexport const cognitoUserPoolTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddlewareFactory]);\n/**\n * @internal\n */\nexport const defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider: getRetryDecider(parseJsonError),\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n cache: 'no-store',\n};\n/**\n * @internal\n */\nexport const getSharedHeaders = (operation) => ({\n 'content-type': 'application/x-amz-json-1.1',\n 'x-amz-target': `AWSCognitoIdentityProviderService.${operation}`,\n});\n/**\n * @internal\n */\nexport const buildHttpRpcRequest = ({ url }, headers, body) => ({\n headers,\n url,\n body,\n method: 'POST',\n});\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { parseJsonBody, parseJsonError, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { assertServiceError } from '../../../../../errors/utils/assertServiceError';\nimport { AuthError } from '../../../../../errors/AuthError';\nimport { buildHttpRpcRequest, cognitoUserPoolTransferHandler, defaultConfig, getSharedHeaders, } from './base';\nconst buildUserPoolSerializer = (operation) => (input, endpoint) => {\n const headers = getSharedHeaders(operation);\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst buildUserPoolDeserializer = () => {\n return async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n assertServiceError(error);\n throw new AuthError({ name: error.name, message: error.message });\n }\n else {\n const body = await parseJsonBody(response);\n return body;\n }\n };\n};\nconst handleEmptyResponseDeserializer = () => {\n return async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n assertServiceError(error);\n throw new AuthError({ name: error.name, message: error.message });\n }\n else {\n return undefined;\n }\n };\n};\nexport const initiateAuth = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('InitiateAuth'), buildUserPoolDeserializer(), defaultConfig);\nexport const revokeToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('RevokeToken'), buildUserPoolDeserializer(), defaultConfig);\nexport const signUp = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('SignUp'), buildUserPoolDeserializer(), defaultConfig);\nexport const confirmSignUp = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmSignUp'), buildUserPoolDeserializer(), defaultConfig);\nexport const forgotPassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ForgotPassword'), buildUserPoolDeserializer(), defaultConfig);\nexport const confirmForgotPassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmForgotPassword'), buildUserPoolDeserializer(), defaultConfig);\nexport const respondToAuthChallenge = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('RespondToAuthChallenge'), buildUserPoolDeserializer(), defaultConfig);\nexport const resendConfirmationCode = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ResendConfirmationCode'), buildUserPoolDeserializer(), defaultConfig);\nexport const verifySoftwareToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('VerifySoftwareToken'), buildUserPoolDeserializer(), defaultConfig);\nexport const associateSoftwareToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('AssociateSoftwareToken'), buildUserPoolDeserializer(), defaultConfig);\nexport const setUserMFAPreference = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('SetUserMFAPreference'), buildUserPoolDeserializer(), defaultConfig);\nexport const getUser = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GetUser'), buildUserPoolDeserializer(), defaultConfig);\nexport const changePassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ChangePassword'), buildUserPoolDeserializer(), defaultConfig);\nexport const confirmDevice = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmDevice'), buildUserPoolDeserializer(), defaultConfig);\nexport const forgetDevice = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ForgetDevice'), handleEmptyResponseDeserializer(), defaultConfig);\nexport const deleteUser = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('DeleteUser'), handleEmptyResponseDeserializer(), defaultConfig);\nexport const getUserAttributeVerificationCode = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GetUserAttributeVerificationCode'), buildUserPoolDeserializer(), defaultConfig);\nexport const globalSignOut = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GlobalSignOut'), buildUserPoolDeserializer(), defaultConfig);\nexport const updateUserAttributes = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('UpdateUserAttributes'), buildUserPoolDeserializer(), defaultConfig);\nexport const verifyUserAttribute = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('VerifyUserAttribute'), buildUserPoolDeserializer(), defaultConfig);\nexport const updateDeviceStatus = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('UpdateDeviceStatus'), buildUserPoolDeserializer(), defaultConfig);\nexport const listDevices = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ListDevices'), buildUserPoolDeserializer(), defaultConfig);\nexport const deleteUserAttributes = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('DeleteUserAttributes'), buildUserPoolDeserializer(), defaultConfig);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from '../../../../../errors/AuthError';\nexport function getRegion(userPoolId) {\n const region = userPoolId?.split('_')[0];\n if (!userPoolId ||\n userPoolId.indexOf('_') < 0 ||\n !region ||\n typeof region !== 'string')\n throw new AuthError({\n name: 'InvalidUserPoolId',\n message: 'Invalid user pool id provided.',\n });\n return region;\n}\nexport function getRegionFromIdentityPoolId(identityPoolId) {\n if (!identityPoolId || !identityPoolId.includes(':')) {\n throw new AuthError({\n name: 'InvalidIdentityPoolIdException',\n message: 'Invalid identity pool id provided.',\n recoverySuggestion: 'Make sure a valid identityPoolId is given in the config.',\n });\n }\n return identityPoolId.split(':')[0];\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function getUserContextData({ username, userPoolId, userPoolClientId, }) {\n if (typeof window === 'undefined') {\n return undefined;\n }\n const amazonCognitoAdvancedSecurityData = window\n .AmazonCognitoAdvancedSecurityData;\n if (typeof amazonCognitoAdvancedSecurityData === 'undefined') {\n return undefined;\n }\n const advancedSecurityData = amazonCognitoAdvancedSecurityData.getData(username, userPoolId, userPoolClientId);\n if (advancedSecurityData) {\n const userContextData = {\n EncodedData: advancedSecurityData,\n };\n return userContextData;\n }\n return {};\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { assertTokenProviderConfig, deDupeAsyncFunction, decodeJWT, } from '@aws-amplify/core/internals/utils';\nimport { initiateAuth } from '../utils/clients/CognitoIdentityProvider';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { assertAuthTokensWithRefreshToken } from '../utils/types';\nimport { AuthError } from '../../../errors/AuthError';\nimport { getUserContextData } from './userContextData';\nconst refreshAuthTokensFunction = async ({ tokens, authConfig, username, }) => {\n assertTokenProviderConfig(authConfig?.Cognito);\n const region = getRegion(authConfig.Cognito.userPoolId);\n assertAuthTokensWithRefreshToken(tokens);\n const refreshTokenString = tokens.refreshToken;\n const AuthParameters = {\n REFRESH_TOKEN: refreshTokenString,\n };\n if (tokens.deviceMetadata?.deviceKey) {\n AuthParameters.DEVICE_KEY = tokens.deviceMetadata.deviceKey;\n }\n const UserContextData = getUserContextData({\n username,\n userPoolId: authConfig.Cognito.userPoolId,\n userPoolClientId: authConfig.Cognito.userPoolClientId,\n });\n const { AuthenticationResult } = await initiateAuth({ region }, {\n ClientId: authConfig?.Cognito?.userPoolClientId,\n AuthFlow: 'REFRESH_TOKEN_AUTH',\n AuthParameters,\n UserContextData,\n });\n const accessToken = decodeJWT(AuthenticationResult?.AccessToken ?? '');\n const idToken = AuthenticationResult?.IdToken\n ? decodeJWT(AuthenticationResult.IdToken)\n : undefined;\n const { iat } = accessToken.payload;\n // This should never happen. If it does, it's a bug from the service.\n if (!iat) {\n throw new AuthError({\n name: 'iatNotFoundException',\n message: 'iat not found in access token',\n });\n }\n const clockDrift = iat * 1000 - new Date().getTime();\n return {\n accessToken,\n idToken,\n clockDrift,\n refreshToken: refreshTokenString,\n username,\n };\n};\nexport const refreshAuthTokens = deDupeAsyncFunction(refreshAuthTokensFunction);\nexport const refreshAuthTokensWithoutDedupe = refreshAuthTokensFunction;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * returns in-flight promise if there is one\n *\n * @param asyncFunction - asyncFunction to be deduped.\n * @returns - the return type of the callback\n */\nexport const deDupeAsyncFunction = (asyncFunction) => {\n let inflightPromise;\n return async (...args) => {\n if (inflightPromise)\n return inflightPromise;\n inflightPromise = new Promise((resolve, reject) => {\n asyncFunction(...args)\n .then(result => {\n resolve(result);\n })\n .catch(error => {\n reject(error);\n })\n .finally(() => {\n inflightPromise = undefined;\n });\n });\n return inflightPromise;\n };\n};\n","export const AuthTokenStorageKeys = {\n accessToken: 'accessToken',\n idToken: 'idToken',\n oidcProvider: 'oidcProvider',\n clockDrift: 'clockDrift',\n refreshToken: 'refreshToken',\n deviceKey: 'deviceKey',\n randomPasswordKey: 'randomPasswordKey',\n deviceGroupKey: 'deviceGroupKey',\n signInDetails: 'signInDetails',\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { createAssertionFunction, } from '@aws-amplify/core/internals/utils';\nexport var TokenProviderErrorCode;\n(function (TokenProviderErrorCode) {\n TokenProviderErrorCode[\"InvalidAuthTokens\"] = \"InvalidAuthTokens\";\n})(TokenProviderErrorCode || (TokenProviderErrorCode = {}));\nconst tokenValidationErrorMap = {\n [TokenProviderErrorCode.InvalidAuthTokens]: {\n message: 'Invalid tokens.',\n recoverySuggestion: 'Make sure the tokens are valid.',\n },\n};\nexport const assert = createAssertionFunction(tokenValidationErrorMap);\n","import { assertTokenProviderConfig, decodeJWT, } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError';\nimport { AuthTokenStorageKeys, } from './types';\nimport { TokenProviderErrorCode, assert } from './errorHelpers';\nexport class DefaultTokenStore {\n constructor() {\n this.name = 'CognitoIdentityServiceProvider'; // To be backwards compatible with V5, no migration needed\n }\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = decodeJWT(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? decodeJWT(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n assert(tokens !== undefined, TokenProviderErrorCode.InvalidAuthTokens);\n await this.clearTokens();\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n if (tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n if (tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return randomPassword && deviceGroupKey && deviceKey\n ? {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return createKeysForAuthStorage(this.name, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${this.name}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n}\nexport const createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nexport function getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const isBrowser = () => typeof window !== 'undefined' && typeof window.document !== 'undefined';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { assertTokenProviderConfig } from '@aws-amplify/core/internals/utils';\nimport { getAuthStorageKeys } from '../tokenProvider/TokenStore';\nimport { OAuthStorageKeys } from './types';\nconst V5_HOSTED_UI_KEY = 'amplify-signin-with-hostedUI';\nconst name = 'CognitoIdentityServiceProvider';\nexport class DefaultOAuthStore {\n constructor(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n async clearOAuthInflightData() {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n await Promise.all([\n this.keyValueStorage.removeItem(authKeys.inflightOAuth),\n this.keyValueStorage.removeItem(authKeys.oauthPKCE),\n this.keyValueStorage.removeItem(authKeys.oauthState),\n ]);\n }\n async clearOAuthData() {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n await this.clearOAuthInflightData();\n await this.keyValueStorage.removeItem(V5_HOSTED_UI_KEY); // remove in case a customer migrated an App from v5 to v6\n return this.keyValueStorage.removeItem(authKeys.oauthSignIn);\n }\n loadOAuthState() {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n return this.keyValueStorage.getItem(authKeys.oauthState);\n }\n storeOAuthState(state) {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n return this.keyValueStorage.setItem(authKeys.oauthState, state);\n }\n loadPKCE() {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n return this.keyValueStorage.getItem(authKeys.oauthPKCE);\n }\n storePKCE(pkce) {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n return this.keyValueStorage.setItem(authKeys.oauthPKCE, pkce);\n }\n setAuthConfig(authConfigParam) {\n this.cognitoConfig = authConfigParam;\n }\n async loadOAuthInFlight() {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n return ((await this.keyValueStorage.getItem(authKeys.inflightOAuth)) === 'true');\n }\n async storeOAuthInFlight(inflight) {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n await this.keyValueStorage.setItem(authKeys.inflightOAuth, `${inflight}`);\n }\n async loadOAuthSignIn() {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n const isLegacyHostedUISignIn = await this.keyValueStorage.getItem(V5_HOSTED_UI_KEY);\n const [isOAuthSignIn, preferPrivateSession] = (await this.keyValueStorage.getItem(authKeys.oauthSignIn))?.split(',') ??\n [];\n return {\n isOAuthSignIn: isOAuthSignIn === 'true' || isLegacyHostedUISignIn === 'true',\n preferPrivateSession: preferPrivateSession === 'true',\n };\n }\n async storeOAuthSignIn(oauthSignIn, preferPrivateSession = false) {\n assertTokenProviderConfig(this.cognitoConfig);\n const authKeys = createKeysForAuthStorage(name, this.cognitoConfig.userPoolClientId);\n await this.keyValueStorage.setItem(authKeys.oauthSignIn, `${oauthSignIn},${preferPrivateSession}`);\n }\n}\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(OAuthStorageKeys)(provider, identifier);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { defaultStorage } from '@aws-amplify/core';\nimport { DefaultOAuthStore } from '../signInWithRedirectStore';\nexport const oAuthStore = new DefaultOAuthStore(defaultStorage);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst inflightPromises = [];\nexport const addInflightPromise = (resolver) => {\n inflightPromises.push(resolver);\n};\nexport const resolveAndClearInflightPromises = () => {\n while (inflightPromises.length) {\n inflightPromises.pop()?.();\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Hub, } from '@aws-amplify/core';\nimport { AMPLIFY_SYMBOL, assertTokenProviderConfig, isBrowser, isTokenExpired, } from '@aws-amplify/core/internals/utils';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { AuthError } from '../../../errors/AuthError';\nimport { oAuthStore } from '../utils/oauth/oAuthStore';\nimport { addInflightPromise } from '../utils/oauth/inflightPromise';\nexport class TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = isBrowser()\n ? async () => {\n if (!(await oAuthStore.loadOAuthInFlight())) {\n return;\n }\n if (this.inflightPromise) {\n return this.inflightPromise;\n }\n // when there is valid oauth config and there is an inflight oauth flow, try\n // to block async calls that require fetching tokens before the oauth flow completes\n // e.g. getCurrentUser, fetchAuthSession etc.\n this.inflightPromise = new Promise((resolve, _reject) => {\n addInflightPromise(resolve);\n });\n return this.inflightPromise;\n }\n : async () => {\n // no-op for non-browser environments\n };\n }\n setAuthConfig(authConfig) {\n oAuthStore.setAuthConfig(authConfig.Cognito);\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\n }\n getTokenStore() {\n if (!this.tokenStore) {\n throw new AuthError({\n name: 'EmptyTokenStoreException',\n message: 'TokenStore not set',\n });\n }\n return this.tokenStore;\n }\n getTokenRefresher() {\n if (!this.tokenRefresher) {\n throw new AuthError({\n name: 'EmptyTokenRefresherException',\n message: 'TokenRefresher not set',\n });\n }\n return this.tokenRefresher;\n }\n async getTokens(options) {\n let tokens;\n try {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n }\n catch (_err) {\n // Token provider not configured\n return null;\n }\n await this.waitForInflightOAuth();\n this.inflightPromise = undefined;\n tokens = await this.getTokenStore().loadTokens();\n const username = await this.getTokenStore().getLastAuthUser();\n if (tokens === null) {\n return null;\n }\n const idTokenExpired = !!tokens?.idToken &&\n isTokenExpired({\n expiresAt: (tokens.idToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n const accessTokenExpired = isTokenExpired({\n expiresAt: (tokens.accessToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n if (options?.forceRefresh || idTokenExpired || accessTokenExpired) {\n tokens = await this.refreshTokens({\n tokens,\n username,\n });\n if (tokens === null) {\n return null;\n }\n }\n return {\n accessToken: tokens?.accessToken,\n idToken: tokens?.idToken,\n signInDetails: tokens?.signInDetails,\n };\n }\n async refreshTokens({ tokens, username, }) {\n try {\n const { signInDetails } = tokens;\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n newTokens.signInDetails = signInDetails;\n await this.setTokens({ tokens: newTokens });\n Hub.dispatch('auth', { event: 'tokenRefresh' }, 'Auth', AMPLIFY_SYMBOL);\n return newTokens;\n }\n catch (err) {\n return this.handleErrors(err);\n }\n }\n handleErrors(err) {\n assertServiceError(err);\n if (err.message !== 'Network error') {\n // TODO(v6): Check errors on client\n this.clearTokens();\n }\n Hub.dispatch('auth', {\n event: 'tokenRefresh_failure',\n data: { error: err },\n }, 'Auth', AMPLIFY_SYMBOL);\n if (err.name.startsWith('NotAuthorizedException')) {\n return null;\n }\n throw err;\n }\n async setTokens({ tokens }) {\n return this.getTokenStore().storeTokens(tokens);\n }\n async clearTokens() {\n return this.getTokenStore().clearTokens();\n }\n getDeviceMetadata(username) {\n return this.getTokenStore().getDeviceMetadata(username);\n }\n clearDeviceMetadata(username) {\n return this.getTokenStore().clearDeviceMetadata(username);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { CognitoUserPoolsTokenProvider } from './CognitoUserPoolsTokenProvider';\n/**\n * The default provider for the JWT access token and ID token issued from the configured Cognito user pool. It manages\n * the refresh and storage of the tokens. It stores the tokens in `window.localStorage` if available, and falls back to\n * in-memory storage if not.\n */\nexport const cognitoUserPoolsTokenProvider = new CognitoUserPoolsTokenProvider();\nexport const { tokenOrchestrator } = cognitoUserPoolsTokenProvider;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { defaultStorage, } from '@aws-amplify/core';\nimport { refreshAuthTokens } from '../utils/refreshAuthTokens';\nimport { DefaultTokenStore } from './TokenStore';\nimport { TokenOrchestrator } from './TokenOrchestrator';\nexport class CognitoUserPoolsTokenProvider {\n constructor() {\n this.authTokenStore = new DefaultTokenStore();\n this.authTokenStore.setKeyValueStorage(defaultStorage);\n this.tokenOrchestrator = new TokenOrchestrator();\n this.tokenOrchestrator.setAuthTokenStore(this.authTokenStore);\n this.tokenOrchestrator.setTokenRefresher(refreshAuthTokens);\n }\n getTokens({ forceRefresh } = { forceRefresh: false }) {\n return this.tokenOrchestrator.getTokens({ forceRefresh });\n }\n setKeyValueStorage(keyValueStorage) {\n this.authTokenStore.setKeyValueStorage(keyValueStorage);\n }\n setAuthConfig(authConfig) {\n this.authTokenStore.setAuthConfig(authConfig);\n this.tokenOrchestrator.setAuthConfig(authConfig);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const IdentityIdStorageKeys = {\n identityId: 'identityId',\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger, } from '@aws-amplify/core';\nimport { assertIdentityPoolIdConfig } from '@aws-amplify/core/internals/utils';\nimport { getAuthStorageKeys } from '../tokenProvider/TokenStore';\nimport { IdentityIdStorageKeys } from './types';\nconst logger = new ConsoleLogger('DefaultIdentityIdStore');\nexport class DefaultIdentityIdStore {\n setAuthConfig(authConfigParam) {\n assertIdentityPoolIdConfig(authConfigParam.Cognito);\n this.authConfig = authConfigParam;\n this._authKeys = createKeysForAuthStorage('Cognito', authConfigParam.Cognito.identityPoolId);\n }\n constructor(keyValueStorage) {\n this._authKeys = {};\n this.keyValueStorage = keyValueStorage;\n }\n async loadIdentityId() {\n assertIdentityPoolIdConfig(this.authConfig?.Cognito);\n try {\n if (this._primaryIdentityId) {\n return {\n id: this._primaryIdentityId,\n type: 'primary',\n };\n }\n else {\n const storedIdentityId = await this.keyValueStorage.getItem(this._authKeys.identityId);\n if (storedIdentityId) {\n return {\n id: storedIdentityId,\n type: 'guest',\n };\n }\n return null;\n }\n }\n catch (err) {\n logger.log('Error getting stored IdentityId.', err);\n return null;\n }\n }\n async storeIdentityId(identity) {\n assertIdentityPoolIdConfig(this.authConfig?.Cognito);\n if (identity.type === 'guest') {\n this.keyValueStorage.setItem(this._authKeys.identityId, identity.id);\n // Clear in-memory storage of primary identityId\n this._primaryIdentityId = undefined;\n }\n else {\n this._primaryIdentityId = identity.id;\n // Clear locally stored guest id\n this.keyValueStorage.removeItem(this._authKeys.identityId);\n }\n }\n async clearIdentityId() {\n this._primaryIdentityId = undefined;\n await this.keyValueStorage.removeItem(this._authKeys.identityId);\n }\n}\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(IdentityIdStorageKeys)(`com.amplify.${provider}`, identifier);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getDnsSuffix, parseJsonError, unauthenticatedHandler, } from '../../clients';\nimport { composeTransferHandler } from '../../clients/internal/composeTransferHandler';\nimport { getRetryDecider, jitteredBackoff, } from '../../clients/middleware/retry';\nimport { getAmplifyUserAgent } from '../../Platform';\nimport { observeFrameworkChanges } from '../../Platform/detectFramework';\nimport { AmplifyUrl } from '../../utils/amplifyUrl';\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nconst SERVICE_NAME = 'cognito-identity';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */\nconst endpointResolver = ({ region }) => ({\n url: new AmplifyUrl(`https://cognito-identity.${region}.${getDnsSuffix(region)}`),\n});\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */\nconst disableCacheMiddlewareFactory = () => next => async function disableCacheMiddleware(request) {\n request.headers['cache-control'] = 'no-store';\n return next(request);\n};\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */\nexport const cognitoIdentityTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddlewareFactory]);\n/**\n * @internal\n */\nexport const defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider: getRetryDecider(parseJsonError),\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n cache: 'no-store',\n};\nobserveFrameworkChanges(() => {\n defaultConfig.userAgentValue = getAmplifyUserAgent();\n});\n/**\n * @internal\n */\nexport const getSharedHeaders = (operation) => ({\n 'content-type': 'application/x-amz-json-1.1',\n 'x-amz-target': `AWSCognitoIdentityService.${operation}`,\n});\n/**\n * @internal\n */\nexport const buildHttpRpcRequest = ({ url }, headers, body) => ({\n headers,\n url,\n body,\n method: 'POST',\n});\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients';\nimport { composeServiceApi } from '../../clients/internal';\nimport { buildHttpRpcRequest, cognitoIdentityTransferHandler, defaultConfig, getSharedHeaders, } from './base';\nconst getCredentialsForIdentitySerializer = (input, endpoint) => {\n const headers = getSharedHeaders('GetCredentialsForIdentity');\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst getCredentialsForIdentityDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const body = await parseJsonBody(response);\n return {\n IdentityId: body.IdentityId,\n Credentials: deserializeCredentials(body.Credentials),\n $metadata: parseMetadata(response),\n };\n }\n};\nconst deserializeCredentials = ({ AccessKeyId, SecretKey, SessionToken, Expiration, } = {}) => {\n return {\n AccessKeyId,\n SecretKey,\n SessionToken,\n Expiration: Expiration && new Date(Expiration * 1000),\n };\n};\n/**\n * @internal\n */\nexport const getCredentialsForIdentity = composeServiceApi(cognitoIdentityTransferHandler, getCredentialsForIdentitySerializer, getCredentialsForIdentityDeserializer, defaultConfig);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients';\nimport { composeServiceApi } from '../../clients/internal';\nimport { buildHttpRpcRequest, cognitoIdentityTransferHandler, defaultConfig, getSharedHeaders, } from './base';\nconst getIdSerializer = (input, endpoint) => {\n const headers = getSharedHeaders('GetId');\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst getIdDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const body = await parseJsonBody(response);\n return {\n IdentityId: body.IdentityId,\n $metadata: parseMetadata(response),\n };\n }\n};\n/**\n * @internal\n */\nexport const getId = composeServiceApi(cognitoIdentityTransferHandler, getIdSerializer, getIdDeserializer, defaultConfig);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { decodeJWT } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError';\nexport function formLoginsMap(idToken) {\n const issuer = decodeJWT(idToken).payload.iss;\n const res = {};\n if (!issuer) {\n throw new AuthError({\n name: 'InvalidIdTokenException',\n message: 'Invalid Idtoken.',\n });\n }\n const domainName = issuer.replace(/(^\\w+:|^)\\/\\//, '');\n res[domainName] = idToken;\n return res;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger, getId } from '@aws-amplify/core';\nimport { AuthError } from '../../../errors/AuthError';\nimport { getRegionFromIdentityPoolId } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { formLoginsMap } from './utils';\nconst logger = new ConsoleLogger('CognitoIdentityIdProvider');\n/**\n * Provides a Cognito identityId\n *\n * @param tokens - The AuthTokens received after SignIn\n * @returns string\n * @throws configuration exceptions: {@link InvalidIdentityPoolIdException }\n * - Auth errors that may arise from misconfiguration.\n * @throws service exceptions: {@link GetIdException }\n */\nexport async function cognitoIdentityIdProvider({ tokens, authConfig, identityIdStore, }) {\n identityIdStore.setAuthConfig({ Cognito: authConfig });\n // will return null only if there is no identityId cached or if there is an error retrieving it\n let identityId = await identityIdStore.loadIdentityId();\n // Tokens are available so return primary identityId\n if (tokens) {\n // If there is existing primary identityId in-memory return that\n if (identityId && identityId.type === 'primary') {\n return identityId.id;\n }\n else {\n const logins = tokens.idToken\n ? formLoginsMap(tokens.idToken.toString())\n : {};\n const generatedIdentityId = await generateIdentityId(logins, authConfig);\n if (identityId && identityId.id === generatedIdentityId) {\n logger.debug(`The guest identity ${identityId.id} has become the primary identity.`);\n }\n identityId = {\n id: generatedIdentityId,\n type: 'primary',\n };\n }\n }\n else {\n // If there is existing guest identityId cached return that\n if (identityId && identityId.type === 'guest') {\n return identityId.id;\n }\n else {\n identityId = {\n id: await generateIdentityId({}, authConfig),\n type: 'guest',\n };\n }\n }\n // Store in-memory or local storage depending on guest or primary identityId\n identityIdStore.storeIdentityId(identityId);\n return identityId.id;\n}\nasync function generateIdentityId(logins, authConfig) {\n const identityPoolId = authConfig?.identityPoolId;\n const region = getRegionFromIdentityPoolId(identityPoolId);\n // IdentityId is absent so get it using IdentityPoolId with Cognito's GetId API\n const idResult = \n // for a first-time user, this will return a brand new identity\n // for a returning user, this will retrieve the previous identity assocaited with the logins\n (await getId({\n region,\n }, {\n IdentityPoolId: identityPoolId,\n Logins: logins,\n })).IdentityId;\n if (!idResult) {\n throw new AuthError({\n name: 'GetIdResponseException',\n message: 'Received undefined response from getId operation',\n recoverySuggestion: 'Make sure to pass a valid identityPoolId in the configuration.',\n });\n }\n return idResult;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger, getCredentialsForIdentity, } from '@aws-amplify/core';\nimport { assertIdentityPoolIdConfig, } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError';\nimport { getRegionFromIdentityPoolId } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { assertIdTokenInAuthTokens } from '../utils/types';\nimport { cognitoIdentityIdProvider } from './IdentityIdProvider';\nimport { formLoginsMap } from './utils';\nconst logger = new ConsoleLogger('CognitoCredentialsProvider');\nconst CREDENTIALS_TTL = 50 * 60 * 1000; // 50 min, can be modified on config if required in the future\nexport class CognitoAWSCredentialsAndIdentityIdProvider {\n constructor(identityIdStore) {\n this._nextCredentialsRefresh = 0;\n this._identityIdStore = identityIdStore;\n }\n async clearCredentialsAndIdentityId() {\n logger.debug('Clearing out credentials and identityId');\n this._credentialsAndIdentityId = undefined;\n await this._identityIdStore.clearIdentityId();\n }\n async clearCredentials() {\n logger.debug('Clearing out in-memory credentials');\n this._credentialsAndIdentityId = undefined;\n }\n async getCredentialsAndIdentityId(getCredentialsOptions) {\n const isAuthenticated = getCredentialsOptions.authenticated;\n const { tokens } = getCredentialsOptions;\n const { authConfig } = getCredentialsOptions;\n try {\n assertIdentityPoolIdConfig(authConfig?.Cognito);\n }\n catch {\n // No identity pool configured, skipping\n return;\n }\n if (!isAuthenticated && !authConfig.Cognito.allowGuestAccess) {\n // TODO(V6): return partial result like Native platforms\n return;\n }\n const { forceRefresh } = getCredentialsOptions;\n const tokenHasChanged = this.hasTokenChanged(tokens);\n const identityId = await cognitoIdentityIdProvider({\n tokens,\n authConfig: authConfig.Cognito,\n identityIdStore: this._identityIdStore,\n });\n // Clear cached credentials when forceRefresh is true OR the cache token has changed\n if (forceRefresh || tokenHasChanged) {\n this.clearCredentials();\n }\n if (!isAuthenticated) {\n return this.getGuestCredentials(identityId, authConfig.Cognito);\n }\n else {\n assertIdTokenInAuthTokens(tokens);\n return this.credsForOIDCTokens(authConfig.Cognito, tokens, identityId);\n }\n }\n async getGuestCredentials(identityId, authConfig) {\n // Return existing in-memory cached credentials only if it exists, is not past it's lifetime and is unauthenticated credentials\n if (this._credentialsAndIdentityId &&\n !this.isPastTTL() &&\n this._credentialsAndIdentityId.isAuthenticatedCreds === false) {\n logger.info('returning stored credentials as they neither past TTL nor expired.');\n return this._credentialsAndIdentityId;\n }\n // Clear to discard if any authenticated credentials are set and start with a clean slate\n this.clearCredentials();\n const region = getRegionFromIdentityPoolId(authConfig.identityPoolId);\n // use identityId to obtain guest credentials\n // save credentials in-memory\n // No logins params should be passed for guest creds:\n // https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html\n const clientResult = await getCredentialsForIdentity({ region }, {\n IdentityId: identityId,\n });\n if (clientResult.Credentials &&\n clientResult.Credentials.AccessKeyId &&\n clientResult.Credentials.SecretKey) {\n this._nextCredentialsRefresh = new Date().getTime() + CREDENTIALS_TTL;\n const res = {\n credentials: {\n accessKeyId: clientResult.Credentials.AccessKeyId,\n secretAccessKey: clientResult.Credentials.SecretKey,\n sessionToken: clientResult.Credentials.SessionToken,\n expiration: clientResult.Credentials.Expiration,\n },\n identityId,\n };\n const identityIdRes = clientResult.IdentityId;\n if (identityIdRes) {\n res.identityId = identityIdRes;\n this._identityIdStore.storeIdentityId({\n id: identityIdRes,\n type: 'guest',\n });\n }\n this._credentialsAndIdentityId = {\n ...res,\n isAuthenticatedCreds: false,\n };\n return res;\n }\n else {\n throw new AuthError({\n name: 'CredentialsNotFoundException',\n message: `Cognito did not respond with either Credentials, AccessKeyId or SecretKey.`,\n });\n }\n }\n async credsForOIDCTokens(authConfig, authTokens, identityId) {\n if (this._credentialsAndIdentityId &&\n !this.isPastTTL() &&\n this._credentialsAndIdentityId.isAuthenticatedCreds === true) {\n logger.debug('returning stored credentials as they neither past TTL nor expired.');\n return this._credentialsAndIdentityId;\n }\n // Clear to discard if any unauthenticated credentials are set and start with a clean slate\n this.clearCredentials();\n const logins = authTokens.idToken\n ? formLoginsMap(authTokens.idToken.toString())\n : {};\n const region = getRegionFromIdentityPoolId(authConfig.identityPoolId);\n const clientResult = await getCredentialsForIdentity({ region }, {\n IdentityId: identityId,\n Logins: logins,\n });\n if (clientResult.Credentials &&\n clientResult.Credentials.AccessKeyId &&\n clientResult.Credentials.SecretKey) {\n const res = {\n credentials: {\n accessKeyId: clientResult.Credentials.AccessKeyId,\n secretAccessKey: clientResult.Credentials.SecretKey,\n sessionToken: clientResult.Credentials.SessionToken,\n expiration: clientResult.Credentials.Expiration,\n },\n identityId,\n };\n // Store the credentials in-memory along with the expiration\n this._credentialsAndIdentityId = {\n ...res,\n isAuthenticatedCreds: true,\n associatedIdToken: authTokens.idToken?.toString(),\n };\n this._nextCredentialsRefresh = new Date().getTime() + CREDENTIALS_TTL;\n const identityIdRes = clientResult.IdentityId;\n if (identityIdRes) {\n res.identityId = identityIdRes;\n this._identityIdStore.storeIdentityId({\n id: identityIdRes,\n type: 'primary',\n });\n }\n return res;\n }\n else {\n throw new AuthError({\n name: 'CredentialsException',\n message: `Cognito did not respond with either Credentials, AccessKeyId or SecretKey.`,\n });\n }\n }\n isPastTTL() {\n return this._nextCredentialsRefresh === undefined\n ? true\n : this._nextCredentialsRefresh <= Date.now();\n }\n hasTokenChanged(tokens) {\n return (!!tokens &&\n !!this._credentialsAndIdentityId?.associatedIdToken &&\n tokens.idToken?.toString() !==\n this._credentialsAndIdentityId.associatedIdToken);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { defaultStorage } from '@aws-amplify/core';\nimport { DefaultIdentityIdStore } from './IdentityIdStore';\nimport { CognitoAWSCredentialsAndIdentityIdProvider } from './credentialsProvider';\n/**\n * Cognito specific implmentation of the CredentialsProvider interface\n * that manages setting and getting of AWS Credentials.\n *\n * @throws configuration expections: {@link InvalidIdentityPoolIdException }\n * - Auth errors that may arise from misconfiguration.\n * @throws service expections: {@link GetCredentialsForIdentityException}, {@link GetIdException}\n *\n */\nexport const cognitoCredentialsProvider = new CognitoAWSCredentialsAndIdentityIdProvider(new DefaultIdentityIdStore(defaultStorage));\nexport { CognitoAWSCredentialsAndIdentityIdProvider, DefaultIdentityIdStore };\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify, CookieStorage, defaultStorage, } from '@aws-amplify/core';\nimport { parseAmplifyConfig, } from '@aws-amplify/core/internals/utils';\nimport { cognitoCredentialsProvider, cognitoUserPoolsTokenProvider, } from './auth/cognito';\nexport const DefaultAmplify = {\n /**\n * Configures Amplify with the {@link resourceConfig} and {@link libraryOptions}.\n *\n * @param resourceConfig The {@link ResourcesConfig} object that is typically imported from the\n * `amplifyconfiguration.json` file. It can also be an object literal created inline when calling `Amplify.configure`.\n * @param libraryOptions The {@link LibraryOptions} additional options for the library.\n *\n * @example\n * import config from './amplifyconfiguration.json';\n *\n * Amplify.configure(config);\n */\n configure(resourceConfig, libraryOptions) {\n const resolvedResourceConfig = parseAmplifyConfig(resourceConfig);\n // If no Auth config is provided, no special handling will be required, configure as is.\n // Otherwise, we can assume an Auth config is provided from here on.\n if (!resolvedResourceConfig.Auth) {\n Amplify.configure(resolvedResourceConfig, libraryOptions);\n return;\n }\n // If Auth options are provided, always just configure as is.\n // Otherwise, we can assume no Auth libraryOptions were provided from here on.\n if (libraryOptions?.Auth) {\n Amplify.configure(resolvedResourceConfig, libraryOptions);\n return;\n }\n // If no Auth libraryOptions were previously configured, then always add default providers.\n if (!Amplify.libraryOptions.Auth) {\n cognitoUserPoolsTokenProvider.setAuthConfig(resolvedResourceConfig.Auth);\n cognitoUserPoolsTokenProvider.setKeyValueStorage(\n // TODO: allow configure with a public interface\n libraryOptions?.ssr\n ? new CookieStorage({ sameSite: 'lax' })\n : defaultStorage);\n Amplify.configure(resolvedResourceConfig, {\n ...libraryOptions,\n Auth: {\n tokenProvider: cognitoUserPoolsTokenProvider,\n credentialsProvider: cognitoCredentialsProvider,\n },\n });\n return;\n }\n // At this point, Auth libraryOptions would have been previously configured and no overriding\n // Auth options were given, so we should preserve the currently configured Auth libraryOptions.\n if (libraryOptions) {\n // If ssr is provided through libraryOptions, we should respect the intentional reconfiguration.\n if (libraryOptions.ssr !== undefined) {\n cognitoUserPoolsTokenProvider.setKeyValueStorage(\n // TODO: allow configure with a public interface\n libraryOptions.ssr\n ? new CookieStorage({ sameSite: 'lax' })\n : defaultStorage);\n }\n Amplify.configure(resolvedResourceConfig, {\n Auth: Amplify.libraryOptions.Auth,\n ...libraryOptions,\n });\n return;\n }\n // Finally, if there were no libraryOptions given at all, we should simply not touch the currently\n // configured libraryOptions.\n Amplify.configure(resolvedResourceConfig);\n },\n /**\n * Returns the {@link ResourcesConfig} object passed in as the `resourceConfig` parameter when calling\n * `Amplify.configure`.\n *\n * @returns An {@link ResourcesConfig} object.\n */\n getConfig() {\n return Amplify.getConfig();\n },\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Retrieves the device name using the User-Agent Client Hints API if available,\n * falling back to the traditional userAgent string if not.\n *\n * @returns {Promise<string>} A promise that resolves with a string representing the device name.\n *\n * Example Output:\n * navigator.userAgentData:\n * 'macOS 14.2.1 arm macOS Not A(Brand/99.0.0.0;Google Chrome/121.0.6167.160;Chromium/121.0.6167.160'\n * navigator.userAgent:\n * 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/115.0'\n */\nexport const getDeviceName = async () => {\n const { userAgentData } = navigator;\n if (!userAgentData)\n return navigator.userAgent;\n const { platform = '', platformVersion = '', model = '', architecture = '', fullVersionList = [], } = await userAgentData.getHighEntropyValues([\n 'platform',\n 'platformVersion',\n 'architecture',\n 'model',\n 'fullVersionList',\n ]);\n const versionList = fullVersionList\n .map((v) => `${v.brand}/${v.version}`)\n .join(';');\n const deviceName = [\n platform,\n platformVersion,\n architecture,\n model,\n platform,\n versionList,\n ]\n .filter(value => value)\n .join(' ');\n return deviceName;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var AssociateSoftwareTokenException;\n(function (AssociateSoftwareTokenException) {\n AssociateSoftwareTokenException[\"ConcurrentModificationException\"] = \"ConcurrentModificationException\";\n AssociateSoftwareTokenException[\"ForbiddenException\"] = \"ForbiddenException\";\n AssociateSoftwareTokenException[\"InternalErrorException\"] = \"InternalErrorException\";\n AssociateSoftwareTokenException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n AssociateSoftwareTokenException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n AssociateSoftwareTokenException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n AssociateSoftwareTokenException[\"SoftwareTokenMFANotFoundException\"] = \"SoftwareTokenMFANotFoundException\";\n})(AssociateSoftwareTokenException || (AssociateSoftwareTokenException = {}));\nexport var ChangePasswordException;\n(function (ChangePasswordException) {\n ChangePasswordException[\"ForbiddenException\"] = \"ForbiddenException\";\n ChangePasswordException[\"InternalErrorException\"] = \"InternalErrorException\";\n ChangePasswordException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n ChangePasswordException[\"InvalidPasswordException\"] = \"InvalidPasswordException\";\n ChangePasswordException[\"LimitExceededException\"] = \"LimitExceededException\";\n ChangePasswordException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n ChangePasswordException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n ChangePasswordException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n ChangePasswordException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n ChangePasswordException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n ChangePasswordException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(ChangePasswordException || (ChangePasswordException = {}));\nexport var ConfirmDeviceException;\n(function (ConfirmDeviceException) {\n ConfirmDeviceException[\"ForbiddenException\"] = \"ForbiddenException\";\n ConfirmDeviceException[\"InternalErrorException\"] = \"InternalErrorException\";\n ConfirmDeviceException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n ConfirmDeviceException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n ConfirmDeviceException[\"InvalidPasswordException\"] = \"InvalidPasswordException\";\n ConfirmDeviceException[\"InvalidUserPoolConfigurationException\"] = \"InvalidUserPoolConfigurationException\";\n ConfirmDeviceException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n ConfirmDeviceException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n ConfirmDeviceException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n ConfirmDeviceException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n ConfirmDeviceException[\"UsernameExistsException\"] = \"UsernameExistsException\";\n ConfirmDeviceException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n ConfirmDeviceException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(ConfirmDeviceException || (ConfirmDeviceException = {}));\nexport var ConfirmForgotPasswordException;\n(function (ConfirmForgotPasswordException) {\n ConfirmForgotPasswordException[\"CodeMismatchException\"] = \"CodeMismatchException\";\n ConfirmForgotPasswordException[\"ExpiredCodeException\"] = \"ExpiredCodeException\";\n ConfirmForgotPasswordException[\"ForbiddenException\"] = \"ForbiddenException\";\n ConfirmForgotPasswordException[\"InternalErrorException\"] = \"InternalErrorException\";\n ConfirmForgotPasswordException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n ConfirmForgotPasswordException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n ConfirmForgotPasswordException[\"InvalidPasswordException\"] = \"InvalidPasswordException\";\n ConfirmForgotPasswordException[\"LimitExceededException\"] = \"LimitExceededException\";\n ConfirmForgotPasswordException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n ConfirmForgotPasswordException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n ConfirmForgotPasswordException[\"TooManyFailedAttemptsException\"] = \"TooManyFailedAttemptsException\";\n ConfirmForgotPasswordException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n ConfirmForgotPasswordException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n ConfirmForgotPasswordException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n ConfirmForgotPasswordException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n ConfirmForgotPasswordException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(ConfirmForgotPasswordException || (ConfirmForgotPasswordException = {}));\nexport var ConfirmSignUpException;\n(function (ConfirmSignUpException) {\n ConfirmSignUpException[\"AliasExistsException\"] = \"AliasExistsException\";\n ConfirmSignUpException[\"CodeMismatchException\"] = \"CodeMismatchException\";\n ConfirmSignUpException[\"ExpiredCodeException\"] = \"ExpiredCodeException\";\n ConfirmSignUpException[\"ForbiddenException\"] = \"ForbiddenException\";\n ConfirmSignUpException[\"InternalErrorException\"] = \"InternalErrorException\";\n ConfirmSignUpException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n ConfirmSignUpException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n ConfirmSignUpException[\"LimitExceededException\"] = \"LimitExceededException\";\n ConfirmSignUpException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n ConfirmSignUpException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n ConfirmSignUpException[\"TooManyFailedAttemptsException\"] = \"TooManyFailedAttemptsException\";\n ConfirmSignUpException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n ConfirmSignUpException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n ConfirmSignUpException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n ConfirmSignUpException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(ConfirmSignUpException || (ConfirmSignUpException = {}));\nexport var DeleteUserAttributesException;\n(function (DeleteUserAttributesException) {\n DeleteUserAttributesException[\"ForbiddenException\"] = \"ForbiddenException\";\n DeleteUserAttributesException[\"InternalErrorException\"] = \"InternalErrorException\";\n DeleteUserAttributesException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n DeleteUserAttributesException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n DeleteUserAttributesException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n DeleteUserAttributesException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n DeleteUserAttributesException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n DeleteUserAttributesException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n DeleteUserAttributesException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(DeleteUserAttributesException || (DeleteUserAttributesException = {}));\nexport var DeleteUserException;\n(function (DeleteUserException) {\n DeleteUserException[\"ForbiddenException\"] = \"ForbiddenException\";\n DeleteUserException[\"InternalErrorException\"] = \"InternalErrorException\";\n DeleteUserException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n DeleteUserException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n DeleteUserException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n DeleteUserException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n DeleteUserException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n DeleteUserException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n DeleteUserException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(DeleteUserException || (DeleteUserException = {}));\nexport var ForgetDeviceException;\n(function (ForgetDeviceException) {\n ForgetDeviceException[\"ForbiddenException\"] = \"ForbiddenException\";\n ForgetDeviceException[\"InternalErrorException\"] = \"InternalErrorException\";\n ForgetDeviceException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n ForgetDeviceException[\"InvalidUserPoolConfigurationException\"] = \"InvalidUserPoolConfigurationException\";\n ForgetDeviceException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n ForgetDeviceException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n ForgetDeviceException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n ForgetDeviceException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n ForgetDeviceException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n ForgetDeviceException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(ForgetDeviceException || (ForgetDeviceException = {}));\nexport var ForgotPasswordException;\n(function (ForgotPasswordException) {\n ForgotPasswordException[\"CodeDeliveryFailureException\"] = \"CodeDeliveryFailureException\";\n ForgotPasswordException[\"ForbiddenException\"] = \"ForbiddenException\";\n ForgotPasswordException[\"InternalErrorException\"] = \"InternalErrorException\";\n ForgotPasswordException[\"InvalidEmailRoleAccessPolicyException\"] = \"InvalidEmailRoleAccessPolicyException\";\n ForgotPasswordException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n ForgotPasswordException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n ForgotPasswordException[\"InvalidSmsRoleAccessPolicyException\"] = \"InvalidSmsRoleAccessPolicyException\";\n ForgotPasswordException[\"InvalidSmsRoleTrustRelationshipException\"] = \"InvalidSmsRoleTrustRelationshipException\";\n ForgotPasswordException[\"LimitExceededException\"] = \"LimitExceededException\";\n ForgotPasswordException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n ForgotPasswordException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n ForgotPasswordException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n ForgotPasswordException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n ForgotPasswordException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n ForgotPasswordException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(ForgotPasswordException || (ForgotPasswordException = {}));\nexport var GetUserException;\n(function (GetUserException) {\n GetUserException[\"ForbiddenException\"] = \"ForbiddenException\";\n GetUserException[\"InternalErrorException\"] = \"InternalErrorException\";\n GetUserException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n GetUserException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n GetUserException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n GetUserException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n GetUserException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n GetUserException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n GetUserException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(GetUserException || (GetUserException = {}));\nexport var GetIdException;\n(function (GetIdException) {\n GetIdException[\"ExternalServiceException\"] = \"ExternalServiceException\";\n GetIdException[\"InternalErrorException\"] = \"InternalErrorException\";\n GetIdException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n GetIdException[\"LimitExceededException\"] = \"LimitExceededException\";\n GetIdException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n GetIdException[\"ResourceConflictException\"] = \"ResourceConflictException\";\n GetIdException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n GetIdException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n})(GetIdException || (GetIdException = {}));\nexport var GetCredentialsForIdentityException;\n(function (GetCredentialsForIdentityException) {\n GetCredentialsForIdentityException[\"ExternalServiceException\"] = \"ExternalServiceException\";\n GetCredentialsForIdentityException[\"InternalErrorException\"] = \"InternalErrorException\";\n GetCredentialsForIdentityException[\"InvalidIdentityPoolConfigurationException\"] = \"InvalidIdentityPoolConfigurationException\";\n GetCredentialsForIdentityException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n GetCredentialsForIdentityException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n GetCredentialsForIdentityException[\"ResourceConflictException\"] = \"ResourceConflictException\";\n GetCredentialsForIdentityException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n GetCredentialsForIdentityException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n})(GetCredentialsForIdentityException || (GetCredentialsForIdentityException = {}));\nexport var GetUserAttributeVerificationException;\n(function (GetUserAttributeVerificationException) {\n GetUserAttributeVerificationException[\"CodeDeliveryFailureException\"] = \"CodeDeliveryFailureException\";\n GetUserAttributeVerificationException[\"ForbiddenException\"] = \"ForbiddenException\";\n GetUserAttributeVerificationException[\"InternalErrorException\"] = \"InternalErrorException\";\n GetUserAttributeVerificationException[\"InvalidEmailRoleAccessPolicyException\"] = \"InvalidEmailRoleAccessPolicyException\";\n GetUserAttributeVerificationException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n GetUserAttributeVerificationException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n GetUserAttributeVerificationException[\"InvalidSmsRoleAccessPolicyException\"] = \"InvalidSmsRoleAccessPolicyException\";\n GetUserAttributeVerificationException[\"InvalidSmsRoleTrustRelationshipException\"] = \"InvalidSmsRoleTrustRelationshipException\";\n GetUserAttributeVerificationException[\"LimitExceededException\"] = \"LimitExceededException\";\n GetUserAttributeVerificationException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n GetUserAttributeVerificationException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n GetUserAttributeVerificationException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n GetUserAttributeVerificationException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n GetUserAttributeVerificationException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n GetUserAttributeVerificationException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n GetUserAttributeVerificationException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n GetUserAttributeVerificationException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(GetUserAttributeVerificationException || (GetUserAttributeVerificationException = {}));\nexport var GlobalSignOutException;\n(function (GlobalSignOutException) {\n GlobalSignOutException[\"ForbiddenException\"] = \"ForbiddenException\";\n GlobalSignOutException[\"InternalErrorException\"] = \"InternalErrorException\";\n GlobalSignOutException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n GlobalSignOutException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n GlobalSignOutException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n GlobalSignOutException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n GlobalSignOutException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n GlobalSignOutException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n})(GlobalSignOutException || (GlobalSignOutException = {}));\nexport var InitiateAuthException;\n(function (InitiateAuthException) {\n InitiateAuthException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n InitiateAuthException[\"ForbiddenException\"] = \"ForbiddenException\";\n InitiateAuthException[\"InternalErrorException\"] = \"InternalErrorException\";\n InitiateAuthException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n InitiateAuthException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n InitiateAuthException[\"InvalidSmsRoleAccessPolicyException\"] = \"InvalidSmsRoleAccessPolicyException\";\n InitiateAuthException[\"InvalidSmsRoleTrustRelationshipException\"] = \"InvalidSmsRoleTrustRelationshipException\";\n InitiateAuthException[\"InvalidUserPoolConfigurationException\"] = \"InvalidUserPoolConfigurationException\";\n InitiateAuthException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n InitiateAuthException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n InitiateAuthException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n InitiateAuthException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n InitiateAuthException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n InitiateAuthException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n InitiateAuthException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(InitiateAuthException || (InitiateAuthException = {}));\nexport var ResendConfirmationException;\n(function (ResendConfirmationException) {\n ResendConfirmationException[\"CodeDeliveryFailureException\"] = \"CodeDeliveryFailureException\";\n ResendConfirmationException[\"ForbiddenException\"] = \"ForbiddenException\";\n ResendConfirmationException[\"InternalErrorException\"] = \"InternalErrorException\";\n ResendConfirmationException[\"InvalidEmailRoleAccessPolicyException\"] = \"InvalidEmailRoleAccessPolicyException\";\n ResendConfirmationException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n ResendConfirmationException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n ResendConfirmationException[\"InvalidSmsRoleAccessPolicyException\"] = \"InvalidSmsRoleAccessPolicyException\";\n ResendConfirmationException[\"InvalidSmsRoleTrustRelationshipException\"] = \"InvalidSmsRoleTrustRelationshipException\";\n ResendConfirmationException[\"LimitExceededException\"] = \"LimitExceededException\";\n ResendConfirmationException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n ResendConfirmationException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n ResendConfirmationException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n ResendConfirmationException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n ResendConfirmationException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n ResendConfirmationException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(ResendConfirmationException || (ResendConfirmationException = {}));\nexport var RespondToAuthChallengeException;\n(function (RespondToAuthChallengeException) {\n RespondToAuthChallengeException[\"AliasExistsException\"] = \"AliasExistsException\";\n RespondToAuthChallengeException[\"CodeMismatchException\"] = \"CodeMismatchException\";\n RespondToAuthChallengeException[\"ExpiredCodeException\"] = \"ExpiredCodeException\";\n RespondToAuthChallengeException[\"ForbiddenException\"] = \"ForbiddenException\";\n RespondToAuthChallengeException[\"InternalErrorException\"] = \"InternalErrorException\";\n RespondToAuthChallengeException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n RespondToAuthChallengeException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n RespondToAuthChallengeException[\"InvalidPasswordException\"] = \"InvalidPasswordException\";\n RespondToAuthChallengeException[\"InvalidSmsRoleAccessPolicyException\"] = \"InvalidSmsRoleAccessPolicyException\";\n RespondToAuthChallengeException[\"InvalidSmsRoleTrustRelationshipException\"] = \"InvalidSmsRoleTrustRelationshipException\";\n RespondToAuthChallengeException[\"InvalidUserPoolConfigurationException\"] = \"InvalidUserPoolConfigurationException\";\n RespondToAuthChallengeException[\"MFAMethodNotFoundException\"] = \"MFAMethodNotFoundException\";\n RespondToAuthChallengeException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n RespondToAuthChallengeException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n RespondToAuthChallengeException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n RespondToAuthChallengeException[\"SoftwareTokenMFANotFoundException\"] = \"SoftwareTokenMFANotFoundException\";\n RespondToAuthChallengeException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n RespondToAuthChallengeException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n RespondToAuthChallengeException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n RespondToAuthChallengeException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n RespondToAuthChallengeException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(RespondToAuthChallengeException || (RespondToAuthChallengeException = {}));\nexport var SetUserMFAPreferenceException;\n(function (SetUserMFAPreferenceException) {\n SetUserMFAPreferenceException[\"ForbiddenException\"] = \"ForbiddenException\";\n SetUserMFAPreferenceException[\"InternalErrorException\"] = \"InternalErrorException\";\n SetUserMFAPreferenceException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n SetUserMFAPreferenceException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n SetUserMFAPreferenceException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n SetUserMFAPreferenceException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n SetUserMFAPreferenceException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n SetUserMFAPreferenceException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(SetUserMFAPreferenceException || (SetUserMFAPreferenceException = {}));\nexport var SignUpException;\n(function (SignUpException) {\n SignUpException[\"CodeDeliveryFailureException\"] = \"CodeDeliveryFailureException\";\n SignUpException[\"InternalErrorException\"] = \"InternalErrorException\";\n SignUpException[\"InvalidEmailRoleAccessPolicyException\"] = \"InvalidEmailRoleAccessPolicyException\";\n SignUpException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n SignUpException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n SignUpException[\"InvalidPasswordException\"] = \"InvalidPasswordException\";\n SignUpException[\"InvalidSmsRoleAccessPolicyException\"] = \"InvalidSmsRoleAccessPolicyException\";\n SignUpException[\"InvalidSmsRoleTrustRelationshipException\"] = \"InvalidSmsRoleTrustRelationshipException\";\n SignUpException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n SignUpException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n SignUpException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n SignUpException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n SignUpException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n SignUpException[\"UsernameExistsException\"] = \"UsernameExistsException\";\n})(SignUpException || (SignUpException = {}));\nexport var UpdateUserAttributesException;\n(function (UpdateUserAttributesException) {\n UpdateUserAttributesException[\"AliasExistsException\"] = \"AliasExistsException\";\n UpdateUserAttributesException[\"CodeDeliveryFailureException\"] = \"CodeDeliveryFailureException\";\n UpdateUserAttributesException[\"CodeMismatchException\"] = \"CodeMismatchException\";\n UpdateUserAttributesException[\"ExpiredCodeException\"] = \"ExpiredCodeException\";\n UpdateUserAttributesException[\"ForbiddenException\"] = \"ForbiddenException\";\n UpdateUserAttributesException[\"InternalErrorException\"] = \"InternalErrorException\";\n UpdateUserAttributesException[\"InvalidEmailRoleAccessPolicyException\"] = \"InvalidEmailRoleAccessPolicyException\";\n UpdateUserAttributesException[\"InvalidLambdaResponseException\"] = \"InvalidLambdaResponseException\";\n UpdateUserAttributesException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n UpdateUserAttributesException[\"InvalidSmsRoleAccessPolicyException\"] = \"InvalidSmsRoleAccessPolicyException\";\n UpdateUserAttributesException[\"InvalidSmsRoleTrustRelationshipException\"] = \"InvalidSmsRoleTrustRelationshipException\";\n UpdateUserAttributesException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n UpdateUserAttributesException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n UpdateUserAttributesException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n UpdateUserAttributesException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n UpdateUserAttributesException[\"UnexpectedLambdaException\"] = \"UnexpectedLambdaException\";\n UpdateUserAttributesException[\"UserLambdaValidationException\"] = \"UserLambdaValidationException\";\n UpdateUserAttributesException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n UpdateUserAttributesException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(UpdateUserAttributesException || (UpdateUserAttributesException = {}));\nexport var VerifySoftwareTokenException;\n(function (VerifySoftwareTokenException) {\n VerifySoftwareTokenException[\"CodeMismatchException\"] = \"CodeMismatchException\";\n VerifySoftwareTokenException[\"EnableSoftwareTokenMFAException\"] = \"EnableSoftwareTokenMFAException\";\n VerifySoftwareTokenException[\"ForbiddenException\"] = \"ForbiddenException\";\n VerifySoftwareTokenException[\"InternalErrorException\"] = \"InternalErrorException\";\n VerifySoftwareTokenException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n VerifySoftwareTokenException[\"InvalidUserPoolConfigurationException\"] = \"InvalidUserPoolConfigurationException\";\n VerifySoftwareTokenException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n VerifySoftwareTokenException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n VerifySoftwareTokenException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n VerifySoftwareTokenException[\"SoftwareTokenMFANotFoundException\"] = \"SoftwareTokenMFANotFoundException\";\n VerifySoftwareTokenException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n VerifySoftwareTokenException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n VerifySoftwareTokenException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(VerifySoftwareTokenException || (VerifySoftwareTokenException = {}));\nexport var VerifyUserAttributeException;\n(function (VerifyUserAttributeException) {\n VerifyUserAttributeException[\"AliasExistsException\"] = \"AliasExistsException\";\n VerifyUserAttributeException[\"CodeMismatchException\"] = \"CodeMismatchException\";\n VerifyUserAttributeException[\"ExpiredCodeException\"] = \"ExpiredCodeException\";\n VerifyUserAttributeException[\"ForbiddenException\"] = \"ForbiddenException\";\n VerifyUserAttributeException[\"InternalErrorException\"] = \"InternalErrorException\";\n VerifyUserAttributeException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n VerifyUserAttributeException[\"LimitExceededException\"] = \"LimitExceededException\";\n VerifyUserAttributeException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n VerifyUserAttributeException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n VerifyUserAttributeException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n VerifyUserAttributeException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n VerifyUserAttributeException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n VerifyUserAttributeException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(VerifyUserAttributeException || (VerifyUserAttributeException = {}));\nexport var UpdateDeviceStatusException;\n(function (UpdateDeviceStatusException) {\n UpdateDeviceStatusException[\"ForbiddenException\"] = \"ForbiddenException\";\n UpdateDeviceStatusException[\"InternalErrorException\"] = \"InternalErrorException\";\n UpdateDeviceStatusException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n UpdateDeviceStatusException[\"InvalidUserPoolConfigurationException\"] = \"InvalidUserPoolConfigurationException\";\n UpdateDeviceStatusException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n UpdateDeviceStatusException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n UpdateDeviceStatusException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n UpdateDeviceStatusException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n UpdateDeviceStatusException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n UpdateDeviceStatusException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(UpdateDeviceStatusException || (UpdateDeviceStatusException = {}));\nexport var ListDevicesException;\n(function (ListDevicesException) {\n ListDevicesException[\"ForbiddenException\"] = \"ForbiddenException\";\n ListDevicesException[\"InternalErrorException\"] = \"InternalErrorException\";\n ListDevicesException[\"InvalidParameterException\"] = \"InvalidParameterException\";\n ListDevicesException[\"InvalidUserPoolConfigurationException\"] = \"InvalidUserPoolConfigurationException\";\n ListDevicesException[\"NotAuthorizedException\"] = \"NotAuthorizedException\";\n ListDevicesException[\"PasswordResetRequiredException\"] = \"PasswordResetRequiredException\";\n ListDevicesException[\"ResourceNotFoundException\"] = \"ResourceNotFoundException\";\n ListDevicesException[\"TooManyRequestsException\"] = \"TooManyRequestsException\";\n ListDevicesException[\"UserNotConfirmedException\"] = \"UserNotConfirmedException\";\n ListDevicesException[\"UserNotFoundException\"] = \"UserNotFoundException\";\n})(ListDevicesException || (ListDevicesException = {}));\nexport const SETUP_TOTP_EXCEPTION = 'SetUpTOTPException';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var AuthValidationErrorCode;\n(function (AuthValidationErrorCode) {\n AuthValidationErrorCode[\"EmptySignInUsername\"] = \"EmptySignInUsername\";\n AuthValidationErrorCode[\"EmptySignInPassword\"] = \"EmptySignInPassword\";\n AuthValidationErrorCode[\"CustomAuthSignInPassword\"] = \"CustomAuthSignInPassword\";\n AuthValidationErrorCode[\"EmptySignUpUsername\"] = \"EmptySignUpUsername\";\n AuthValidationErrorCode[\"EmptySignUpPassword\"] = \"EmptySignUpPassword\";\n AuthValidationErrorCode[\"EmptyConfirmSignUpUsername\"] = \"EmptyConfirmSignUpUsername\";\n AuthValidationErrorCode[\"EmptyConfirmSignUpCode\"] = \"EmptyConfirmSignUpCode\";\n AuthValidationErrorCode[\"EmptyResendSignUpCodeUsername\"] = \"EmptyresendSignUpCodeUsername\";\n AuthValidationErrorCode[\"EmptyChallengeResponse\"] = \"EmptyChallengeResponse\";\n AuthValidationErrorCode[\"EmptyConfirmResetPasswordUsername\"] = \"EmptyConfirmResetPasswordUsername\";\n AuthValidationErrorCode[\"EmptyConfirmResetPasswordNewPassword\"] = \"EmptyConfirmResetPasswordNewPassword\";\n AuthValidationErrorCode[\"EmptyConfirmResetPasswordConfirmationCode\"] = \"EmptyConfirmResetPasswordConfirmationCode\";\n AuthValidationErrorCode[\"EmptyResetPasswordUsername\"] = \"EmptyResetPasswordUsername\";\n AuthValidationErrorCode[\"EmptyVerifyTOTPSetupCode\"] = \"EmptyVerifyTOTPSetupCode\";\n AuthValidationErrorCode[\"EmptyConfirmUserAttributeCode\"] = \"EmptyConfirmUserAttributeCode\";\n AuthValidationErrorCode[\"IncorrectMFAMethod\"] = \"IncorrectMFAMethod\";\n AuthValidationErrorCode[\"EmptyUpdatePassword\"] = \"EmptyUpdatePassword\";\n})(AuthValidationErrorCode || (AuthValidationErrorCode = {}));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthValidationErrorCode } from '../errors/types/validation';\nexport const validationErrorMap = {\n [AuthValidationErrorCode.EmptyChallengeResponse]: {\n message: 'challengeResponse is required to confirmSignIn',\n },\n [AuthValidationErrorCode.EmptyConfirmResetPasswordUsername]: {\n message: 'username is required to confirmResetPassword',\n },\n [AuthValidationErrorCode.EmptyConfirmSignUpCode]: {\n message: 'code is required to confirmSignUp',\n },\n [AuthValidationErrorCode.EmptyConfirmSignUpUsername]: {\n message: 'username is required to confirmSignUp',\n },\n [AuthValidationErrorCode.EmptyConfirmResetPasswordConfirmationCode]: {\n message: 'confirmationCode is required to confirmResetPassword',\n },\n [AuthValidationErrorCode.EmptyConfirmResetPasswordNewPassword]: {\n message: 'newPassword is required to confirmResetPassword',\n },\n [AuthValidationErrorCode.EmptyResendSignUpCodeUsername]: {\n message: 'username is required to confirmSignUp',\n },\n [AuthValidationErrorCode.EmptyResetPasswordUsername]: {\n message: 'username is required to resetPassword',\n },\n [AuthValidationErrorCode.EmptySignInPassword]: {\n message: 'password is required to signIn',\n },\n [AuthValidationErrorCode.EmptySignInUsername]: {\n message: 'username is required to signIn',\n },\n [AuthValidationErrorCode.EmptySignUpPassword]: {\n message: 'password is required to signUp',\n },\n [AuthValidationErrorCode.EmptySignUpUsername]: {\n message: 'username is required to signUp',\n },\n [AuthValidationErrorCode.CustomAuthSignInPassword]: {\n message: 'A password is not needed when signing in with CUSTOM_WITHOUT_SRP',\n recoverySuggestion: 'Do not include a password in your signIn call.',\n },\n [AuthValidationErrorCode.IncorrectMFAMethod]: {\n message: 'Incorrect MFA method was chosen. It should be either SMS or TOTP',\n recoverySuggestion: 'Try to pass TOTP or SMS as the challengeResponse',\n },\n [AuthValidationErrorCode.EmptyVerifyTOTPSetupCode]: {\n message: 'code is required to verifyTotpSetup',\n },\n [AuthValidationErrorCode.EmptyUpdatePassword]: {\n message: 'oldPassword and newPassword are required to changePassword',\n },\n [AuthValidationErrorCode.EmptyConfirmUserAttributeCode]: {\n message: 'confirmation code is required to confirmUserAttribute',\n },\n};\n// TODO: delete this code when the Auth class is removed.\nexport var AuthErrorStrings;\n(function (AuthErrorStrings) {\n AuthErrorStrings[\"DEFAULT_MSG\"] = \"Authentication Error\";\n AuthErrorStrings[\"EMPTY_EMAIL\"] = \"Email cannot be empty\";\n AuthErrorStrings[\"EMPTY_PHONE\"] = \"Phone number cannot be empty\";\n AuthErrorStrings[\"EMPTY_USERNAME\"] = \"Username cannot be empty\";\n AuthErrorStrings[\"INVALID_USERNAME\"] = \"The username should either be a string or one of the sign in types\";\n AuthErrorStrings[\"EMPTY_PASSWORD\"] = \"Password cannot be empty\";\n AuthErrorStrings[\"EMPTY_CODE\"] = \"Confirmation code cannot be empty\";\n AuthErrorStrings[\"SIGN_UP_ERROR\"] = \"Error creating account\";\n AuthErrorStrings[\"NO_MFA\"] = \"No valid MFA method provided\";\n AuthErrorStrings[\"INVALID_MFA\"] = \"Invalid MFA type\";\n AuthErrorStrings[\"EMPTY_CHALLENGE\"] = \"Challenge response cannot be empty\";\n AuthErrorStrings[\"NO_USER_SESSION\"] = \"Failed to get the session because the user is empty\";\n AuthErrorStrings[\"NETWORK_ERROR\"] = \"Network Error\";\n AuthErrorStrings[\"DEVICE_CONFIG\"] = \"Device tracking has not been configured in this User Pool\";\n AuthErrorStrings[\"AUTOSIGNIN_ERROR\"] = \"Please use your credentials to sign in\";\n AuthErrorStrings[\"OAUTH_ERROR\"] = \"Couldn't finish OAuth flow, check your User Pool HostedUI settings\";\n})(AuthErrorStrings || (AuthErrorStrings = {}));\nexport var AuthErrorCodes;\n(function (AuthErrorCodes) {\n AuthErrorCodes[\"SignInException\"] = \"SignInException\";\n AuthErrorCodes[\"OAuthSignInError\"] = \"OAuthSignInException\";\n})(AuthErrorCodes || (AuthErrorCodes = {}));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { validationErrorMap } from '../../common/AuthErrorStrings';\nimport { AuthError } from '../AuthError';\nexport function assertValidationError(assertion, name) {\n const { message, recoverySuggestion } = validationErrorMap[name];\n if (!assertion) {\n throw new AuthError({ name, message, recoverySuggestion });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Category, getAmplifyUserAgent, } from '@aws-amplify/core/internals/utils';\nexport const getAuthUserAgentValue = (action, customUserAgentDetails) => getAmplifyUserAgent({\n category: Category.Auth,\n action,\n ...customUserAgentDetails,\n});\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst signInReducer = (state, action) => {\n switch (action.type) {\n case 'SET_SIGN_IN_SESSION':\n return {\n ...state,\n signInSession: action.value,\n };\n case 'SET_SIGN_IN_STATE':\n return {\n ...action.value,\n };\n case 'SET_CHALLENGE_NAME':\n return {\n ...state,\n challengeName: action.value,\n };\n case 'SET_USERNAME':\n return {\n ...state,\n username: action.value,\n };\n case 'SET_INITIAL_STATE':\n return defaultState();\n default:\n return state;\n }\n};\nfunction defaultState() {\n return {\n username: undefined,\n challengeName: undefined,\n signInSession: undefined,\n };\n}\nconst createStore = reducer => {\n let currentState = reducer(defaultState(), { type: 'SET_INITIAL_STATE' });\n return {\n getState: () => currentState,\n dispatch: action => {\n currentState = reducer(currentState, action);\n },\n };\n};\nexport const signInStore = createStore(signInReducer);\nexport function setActiveSignInState(state) {\n signInStore.dispatch({\n type: 'SET_SIGN_IN_STATE',\n value: state,\n });\n}\nexport function cleanActiveSignInState() {\n signInStore.dispatch({ type: 'SET_INITIAL_STATE' });\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const textEncoder = {\n convert(input) {\n return new TextEncoder().encode(input);\n },\n};\n","/* eslint-disable */\n// @ts-nocheck -> BigInteger is already a vended utility\n// A small implementation of BigInteger based on http://www-cs-students.stanford.edu/~tjw/jsbn/\n//\n// All public methods have been removed except the following:\n// new BigInteger(a, b) (only radix 2, 4, 8, 16 and 32 supported)\n// toString (only radix 2, 4, 8, 16 and 32 supported)\n// negate\n// abs\n// compareTo\n// bitLength\n// mod\n// equals\n// add\n// subtract\n// multiply\n// divide\n// modPow\nexport default BigInteger;\n/*\n * Copyright (c) 2003-2005 Tom Wu\n * All Rights Reserved.\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS-IS\" AND WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY\n * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.\n *\n * IN NO EVENT SHALL TOM WU BE LIABLE FOR ANY SPECIAL, INCIDENTAL,\n * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER\n * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF\n * THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT\n * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n *\n * In addition, the following condition applies:\n *\n * All redistributions must retain an intact copy of this copyright notice\n * and disclaimer.\n */\n// (public) Constructor\nfunction BigInteger(a, b) {\n if (a != null)\n this.fromString(a, b);\n}\n// return new, unset BigInteger\nfunction nbi() {\n return new BigInteger(null, null);\n}\n// Bits per digit\nlet dbits;\n// JavaScript engine analysis\nconst canary = 0xdeadbeefcafe;\nconst j_lm = (canary & 0xffffff) === 0xefcafe;\n// am: Compute w_j += (x*this_i), propagate carries,\n// c is initial carry, returns final carry.\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\n// We need to select the fastest one that works in this environment.\n// am1: use a single mult and divide to get the high bits,\n// max digit bits should be 26 because\n// max internal value = 2*dvalue^2-2*dvalue (< 2^53)\nfunction am1(i, x, w, j, c, n) {\n while (--n >= 0) {\n const v = x * this[i++] + w[j] + c;\n c = Math.floor(v / 0x4000000);\n w[j++] = v & 0x3ffffff;\n }\n return c;\n}\n// am2 avoids a big mult-and-extract completely.\n// Max digit bits should be <= 30 because we do bitwise ops\n// on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\nfunction am2(i, x, w, j, c, n) {\n const xl = x & 0x7fff;\n const xh = x >> 15;\n while (--n >= 0) {\n let l = this[i] & 0x7fff;\n const h = this[i++] >> 15;\n const m = xh * l + h * xl;\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\n w[j++] = l & 0x3fffffff;\n }\n return c;\n}\n// Alternately, set max digit bits to 28 since some\n// browsers slow down when dealing with 32-bit numbers.\nfunction am3(i, x, w, j, c, n) {\n const xl = x & 0x3fff;\n const xh = x >> 14;\n while (--n >= 0) {\n let l = this[i] & 0x3fff;\n const h = this[i++] >> 14;\n const m = xh * l + h * xl;\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\n c = (l >> 28) + (m >> 14) + xh * h;\n w[j++] = l & 0xfffffff;\n }\n return c;\n}\nconst inBrowser = typeof navigator !== 'undefined';\nif (inBrowser && j_lm && navigator.appName === 'Microsoft Internet Explorer') {\n BigInteger.prototype.am = am2;\n dbits = 30;\n}\nelse if (inBrowser && j_lm && navigator.appName !== 'Netscape') {\n BigInteger.prototype.am = am1;\n dbits = 26;\n}\nelse {\n // Mozilla/Netscape seems to prefer am3\n BigInteger.prototype.am = am3;\n dbits = 28;\n}\nBigInteger.prototype.DB = dbits;\nBigInteger.prototype.DM = (1 << dbits) - 1;\nBigInteger.prototype.DV = 1 << dbits;\nconst BI_FP = 52;\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\nBigInteger.prototype.F1 = BI_FP - dbits;\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\n// Digit conversions\nconst BI_RM = '0123456789abcdefghijklmnopqrstuvwxyz';\nconst BI_RC = [];\nlet rr, vv;\nrr = '0'.charCodeAt(0);\nfor (vv = 0; vv <= 9; ++vv)\n BI_RC[rr++] = vv;\nrr = 'a'.charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv)\n BI_RC[rr++] = vv;\nrr = 'A'.charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv)\n BI_RC[rr++] = vv;\nfunction int2char(n) {\n return BI_RM.charAt(n);\n}\nfunction intAt(s, i) {\n const c = BI_RC[s.charCodeAt(i)];\n return c == null ? -1 : c;\n}\n// (protected) copy this to r\nfunction bnpCopyTo(r) {\n for (let i = this.t - 1; i >= 0; --i)\n r[i] = this[i];\n r.t = this.t;\n r.s = this.s;\n}\n// (protected) set from integer value x, -DV <= x < DV\nfunction bnpFromInt(x) {\n this.t = 1;\n this.s = x < 0 ? -1 : 0;\n if (x > 0)\n this[0] = x;\n else if (x < -1)\n this[0] = x + this.DV;\n else\n this.t = 0;\n}\n// return bigint initialized to value\nfunction nbv(i) {\n const r = nbi();\n r.fromInt(i);\n return r;\n}\n// (protected) set from string and radix\nfunction bnpFromString(s, b) {\n let k;\n if (b === 16)\n k = 4;\n else if (b === 8)\n k = 3;\n else if (b === 2)\n k = 1;\n else if (b === 32)\n k = 5;\n else if (b === 4)\n k = 2;\n else\n throw new Error('Only radix 2, 4, 8, 16, 32 are supported');\n this.t = 0;\n this.s = 0;\n let i = s.length;\n let mi = false;\n let sh = 0;\n while (--i >= 0) {\n const x = intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) === '-')\n mi = true;\n continue;\n }\n mi = false;\n if (sh === 0)\n this[this.t++] = x;\n else if (sh + k > this.DB) {\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\n this[this.t++] = x >> (this.DB - sh);\n }\n else\n this[this.t - 1] |= x << sh;\n sh += k;\n if (sh >= this.DB)\n sh -= this.DB;\n }\n this.clamp();\n if (mi)\n BigInteger.ZERO.subTo(this, this);\n}\n// (protected) clamp off excess high words\nfunction bnpClamp() {\n const c = this.s & this.DM;\n while (this.t > 0 && this[this.t - 1] == c)\n --this.t;\n}\n// (public) return string representation in given radix\nfunction bnToString(b) {\n if (this.s < 0)\n return '-' + this.negate().toString(b);\n let k;\n if (b == 16)\n k = 4;\n else if (b === 8)\n k = 3;\n else if (b === 2)\n k = 1;\n else if (b === 32)\n k = 5;\n else if (b === 4)\n k = 2;\n else\n throw new Error('Only radix 2, 4, 8, 16, 32 are supported');\n const km = (1 << k) - 1;\n let d;\n let m = false;\n let r = '';\n let i = this.t;\n let p = this.DB - ((i * this.DB) % k);\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) > 0) {\n m = true;\n r = int2char(d);\n }\n while (i >= 0) {\n if (p < k) {\n d = (this[i] & ((1 << p) - 1)) << (k - p);\n d |= this[--i] >> (p += this.DB - k);\n }\n else {\n d = (this[i] >> (p -= k)) & km;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if (d > 0)\n m = true;\n if (m)\n r += int2char(d);\n }\n }\n return m ? r : '0';\n}\n// (public) -this\nfunction bnNegate() {\n const r = nbi();\n BigInteger.ZERO.subTo(this, r);\n return r;\n}\n// (public) |this|\nfunction bnAbs() {\n return this.s < 0 ? this.negate() : this;\n}\n// (public) return + if this > a, - if this < a, 0 if equal\nfunction bnCompareTo(a) {\n let r = this.s - a.s;\n if (r != 0)\n return r;\n let i = this.t;\n r = i - a.t;\n if (r != 0)\n return this.s < 0 ? -r : r;\n while (--i >= 0)\n if ((r = this[i] - a[i]) != 0)\n return r;\n return 0;\n}\n// returns bit length of the integer x\nfunction nbits(x) {\n let r = 1;\n let t;\n if ((t = x >>> 16) !== 0) {\n x = t;\n r += 16;\n }\n if ((t = x >> 8) !== 0) {\n x = t;\n r += 8;\n }\n if ((t = x >> 4) !== 0) {\n x = t;\n r += 4;\n }\n if ((t = x >> 2) !== 0) {\n x = t;\n r += 2;\n }\n if ((t = x >> 1) !== 0) {\n x = t;\n r += 1;\n }\n return r;\n}\n// (public) return the number of bits in \"this\"\nfunction bnBitLength() {\n if (this.t <= 0)\n return 0;\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\n}\n// (protected) r = this << n*DB\nfunction bnpDLShiftTo(n, r) {\n let i;\n for (i = this.t - 1; i >= 0; --i)\n r[i + n] = this[i];\n for (i = n - 1; i >= 0; --i)\n r[i] = 0;\n r.t = this.t + n;\n r.s = this.s;\n}\n// (protected) r = this >> n*DB\nfunction bnpDRShiftTo(n, r) {\n for (let i = n; i < this.t; ++i)\n r[i - n] = this[i];\n r.t = Math.max(this.t - n, 0);\n r.s = this.s;\n}\n// (protected) r = this << n\nfunction bnpLShiftTo(n, r) {\n const bs = n % this.DB;\n const cbs = this.DB - bs;\n const bm = (1 << cbs) - 1;\n const ds = Math.floor(n / this.DB);\n let c = (this.s << bs) & this.DM;\n let i;\n for (i = this.t - 1; i >= 0; --i) {\n r[i + ds + 1] = (this[i] >> cbs) | c;\n c = (this[i] & bm) << bs;\n }\n for (i = ds - 1; i >= 0; --i)\n r[i] = 0;\n r[ds] = c;\n r.t = this.t + ds + 1;\n r.s = this.s;\n r.clamp();\n}\n// (protected) r = this >> n\nfunction bnpRShiftTo(n, r) {\n r.s = this.s;\n const ds = Math.floor(n / this.DB);\n if (ds >= this.t) {\n r.t = 0;\n return;\n }\n const bs = n % this.DB;\n const cbs = this.DB - bs;\n const bm = (1 << bs) - 1;\n r[0] = this[ds] >> bs;\n for (let i = ds + 1; i < this.t; ++i) {\n r[i - ds - 1] |= (this[i] & bm) << cbs;\n r[i - ds] = this[i] >> bs;\n }\n if (bs > 0)\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\n r.t = this.t - ds;\n r.clamp();\n}\n// (protected) r = this - a\nfunction bnpSubTo(a, r) {\n let i = 0;\n let c = 0;\n const m = Math.min(a.t, this.t);\n while (i < m) {\n c += this[i] - a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n if (a.t < this.t) {\n c -= a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c -= a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c -= a.s;\n }\n r.s = c < 0 ? -1 : 0;\n if (c < -1)\n r[i++] = this.DV + c;\n else if (c > 0)\n r[i++] = c;\n r.t = i;\n r.clamp();\n}\n// (protected) r = this * a, r != this,a (HAC 14.12)\n// \"this\" should be the larger one if appropriate.\nfunction bnpMultiplyTo(a, r) {\n const x = this.abs();\n const y = a.abs();\n let i = x.t;\n r.t = i + y.t;\n while (--i >= 0)\n r[i] = 0;\n for (i = 0; i < y.t; ++i)\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\n r.s = 0;\n r.clamp();\n if (this.s !== a.s)\n BigInteger.ZERO.subTo(r, r);\n}\n// (protected) r = this^2, r != this (HAC 14.16)\nfunction bnpSquareTo(r) {\n const x = this.abs();\n let i = (r.t = 2 * x.t);\n while (--i >= 0)\n r[i] = 0;\n for (i = 0; i < x.t - 1; ++i) {\n const c = x.am(i, x[i], r, 2 * i, 0, 1);\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >=\n x.DV) {\n r[i + x.t] -= x.DV;\n r[i + x.t + 1] = 1;\n }\n }\n if (r.t > 0)\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\n r.s = 0;\n r.clamp();\n}\n// (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\n// r != q, this != m. q or r may be null.\nfunction bnpDivRemTo(m, q, r) {\n const pm = m.abs();\n if (pm.t <= 0)\n return;\n const pt = this.abs();\n if (pt.t < pm.t) {\n if (q != null)\n q.fromInt(0);\n if (r != null)\n this.copyTo(r);\n return;\n }\n if (r === null)\n r = nbi();\n const y = nbi();\n const ts = this.s;\n const ms = m.s;\n const nsh = this.DB - nbits(pm[pm.t - 1]);\n // normalize modulus\n if (nsh > 0) {\n pm.lShiftTo(nsh, y);\n pt.lShiftTo(nsh, r);\n }\n else {\n pm.copyTo(y);\n pt.copyTo(r);\n }\n const ys = y.t;\n const y0 = y[ys - 1];\n if (y0 === 0)\n return;\n const yt = y0 * (1 << this.F1) + (ys > 1 ? y[ys - 2] >> this.F2 : 0);\n const d1 = this.FV / yt;\n const d2 = (1 << this.F1) / yt;\n const e = 1 << this.F2;\n let i = r.t;\n let j = i - ys;\n const t = q === null ? nbi() : q;\n y.dlShiftTo(j, t);\n if (r.compareTo(t) >= 0) {\n r[r.t++] = 1;\n r.subTo(t, r);\n }\n BigInteger.ONE.dlShiftTo(ys, t);\n t.subTo(y, y);\n // \"negative\" y so we can replace sub with am later\n while (y.t < ys)\n y[y.t++] = 0;\n while (--j >= 0) {\n // Estimate quotient digit\n let qd = r[--i] === y0 ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) {\n // Try it out\n y.dlShiftTo(j, t);\n r.subTo(t, r);\n while (r[i] < --qd)\n r.subTo(t, r);\n }\n }\n if (q !== null) {\n r.drShiftTo(ys, q);\n if (ts !== ms)\n BigInteger.ZERO.subTo(q, q);\n }\n r.t = ys;\n r.clamp();\n if (nsh > 0)\n r.rShiftTo(nsh, r);\n // Denormalize remainder\n if (ts < 0)\n BigInteger.ZERO.subTo(r, r);\n}\n// (public) this mod a\nfunction bnMod(a) {\n const r = nbi();\n this.abs().divRemTo(a, null, r);\n if (this.s < 0 && r.compareTo(BigInteger.ZERO) > 0)\n a.subTo(r, r);\n return r;\n}\n// (protected) return \"-1/this % 2^DB\"; useful for Mont. reduction\n// justification:\n// xy == 1 (mod m)\n// xy = 1+km\n// xy(2-xy) = (1+km)(1-km)\n// x[y(2-xy)] = 1-k^2m^2\n// x[y(2-xy)] == 1 (mod m^2)\n// if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\n// should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\n// JS multiply \"overflows\" differently from C/C++, so care is needed here.\nfunction bnpInvDigit() {\n if (this.t < 1)\n return 0;\n const x = this[0];\n if ((x & 1) === 0)\n return 0;\n let y = x & 3;\n // y == 1/x mod 2^2\n y = (y * (2 - (x & 0xf) * y)) & 0xf;\n // y == 1/x mod 2^4\n y = (y * (2 - (x & 0xff) * y)) & 0xff;\n // y == 1/x mod 2^8\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff;\n // y == 1/x mod 2^16\n // last step - calculate inverse mod DV directly;\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\n y = (y * (2 - ((x * y) % this.DV))) % this.DV;\n // y == 1/x mod 2^dbits\n // we really want the negative inverse, and -DV < y < DV\n return y > 0 ? this.DV - y : -y;\n}\nfunction bnEquals(a) {\n return this.compareTo(a) === 0;\n}\n// (protected) r = this + a\nfunction bnpAddTo(a, r) {\n let i = 0;\n let c = 0;\n const m = Math.min(a.t, this.t);\n while (i < m) {\n c += this[i] + a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n if (a.t < this.t) {\n c += a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c += a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += a.s;\n }\n r.s = c < 0 ? -1 : 0;\n if (c > 0)\n r[i++] = c;\n else if (c < -1)\n r[i++] = this.DV + c;\n r.t = i;\n r.clamp();\n}\n// (public) this + a\nfunction bnAdd(a) {\n const r = nbi();\n this.addTo(a, r);\n return r;\n}\n// (public) this - a\nfunction bnSubtract(a) {\n const r = nbi();\n this.subTo(a, r);\n return r;\n}\n// (public) this * a\nfunction bnMultiply(a) {\n const r = nbi();\n this.multiplyTo(a, r);\n return r;\n}\n// (public) this / a\nfunction bnDivide(a) {\n const r = nbi();\n this.divRemTo(a, r, null);\n return r;\n}\n// Montgomery reduction\nfunction Montgomery(m) {\n this.m = m;\n this.mp = m.invDigit();\n this.mpl = this.mp & 0x7fff;\n this.mph = this.mp >> 15;\n this.um = (1 << (m.DB - 15)) - 1;\n this.mt2 = 2 * m.t;\n}\n// xR mod m\nfunction montConvert(x) {\n const r = nbi();\n x.abs().dlShiftTo(this.m.t, r);\n r.divRemTo(this.m, null, r);\n if (x.s < 0 && r.compareTo(BigInteger.ZERO) > 0)\n this.m.subTo(r, r);\n return r;\n}\n// x/R mod m\nfunction montRevert(x) {\n const r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n}\n// x = x/R mod m (HAC 14.32)\nfunction montReduce(x) {\n while (x.t <= this.mt2)\n // pad x so am has enough room later\n x[x.t++] = 0;\n for (let i = 0; i < this.m.t; ++i) {\n // faster way of calculating u0 = x[i]*mp mod DV\n let j = x[i] & 0x7fff;\n const u0 = (j * this.mpl +\n (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) &\n x.DM;\n // use am to combine the multiply-shift-add into one call\n j = i + this.m.t;\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\n // propagate carry\n while (x[j] >= x.DV) {\n x[j] -= x.DV;\n x[++j]++;\n }\n }\n x.clamp();\n x.drShiftTo(this.m.t, x);\n if (x.compareTo(this.m) >= 0)\n x.subTo(this.m, x);\n}\n// r = \"x^2/R mod m\"; x != r\nfunction montSqrTo(x, r) {\n x.squareTo(r);\n this.reduce(r);\n}\n// r = \"xy/R mod m\"; x,y != r\nfunction montMulTo(x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n}\nMontgomery.prototype.convert = montConvert;\nMontgomery.prototype.revert = montRevert;\nMontgomery.prototype.reduce = montReduce;\nMontgomery.prototype.mulTo = montMulTo;\nMontgomery.prototype.sqrTo = montSqrTo;\n// (public) this^e % m (HAC 14.85)\nfunction bnModPow(e, m, callback) {\n let i = e.bitLength();\n let k;\n let r = nbv(1);\n const z = new Montgomery(m);\n if (i <= 0)\n return r;\n else if (i < 18)\n k = 1;\n else if (i < 48)\n k = 3;\n else if (i < 144)\n k = 4;\n else if (i < 768)\n k = 5;\n else\n k = 6;\n // precomputation\n const g = [];\n let n = 3;\n const k1 = k - 1;\n const km = (1 << k) - 1;\n g[1] = z.convert(this);\n if (k > 1) {\n const g2 = nbi();\n z.sqrTo(g[1], g2);\n while (n <= km) {\n g[n] = nbi();\n z.mulTo(g2, g[n - 2], g[n]);\n n += 2;\n }\n }\n let j = e.t - 1;\n let w;\n let is1 = true;\n let r2 = nbi();\n let t;\n i = nbits(e[j]) - 1;\n while (j >= 0) {\n if (i >= k1)\n w = (e[j] >> (i - k1)) & km;\n else {\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\n if (j > 0)\n w |= e[j - 1] >> (this.DB + i - k1);\n }\n n = k;\n while ((w & 1) === 0) {\n w >>= 1;\n --n;\n }\n if ((i -= n) < 0) {\n i += this.DB;\n --j;\n }\n if (is1) {\n // ret == 1, don't bother squaring or multiplying it\n g[w].copyTo(r);\n is1 = false;\n }\n else {\n while (n > 1) {\n z.sqrTo(r, r2);\n z.sqrTo(r2, r);\n n -= 2;\n }\n if (n > 0)\n z.sqrTo(r, r2);\n else {\n t = r;\n r = r2;\n r2 = t;\n }\n z.mulTo(r2, g[w], r);\n }\n while (j >= 0 && (e[j] & (1 << i)) === 0) {\n z.sqrTo(r, r2);\n t = r;\n r = r2;\n r2 = t;\n if (--i < 0) {\n i = this.DB - 1;\n --j;\n }\n }\n }\n const result = z.revert(r);\n callback(null, result);\n return result;\n}\n// protected\nBigInteger.prototype.copyTo = bnpCopyTo;\nBigInteger.prototype.fromInt = bnpFromInt;\nBigInteger.prototype.fromString = bnpFromString;\nBigInteger.prototype.clamp = bnpClamp;\nBigInteger.prototype.dlShiftTo = bnpDLShiftTo;\nBigInteger.prototype.drShiftTo = bnpDRShiftTo;\nBigInteger.prototype.lShiftTo = bnpLShiftTo;\nBigInteger.prototype.rShiftTo = bnpRShiftTo;\nBigInteger.prototype.subTo = bnpSubTo;\nBigInteger.prototype.multiplyTo = bnpMultiplyTo;\nBigInteger.prototype.squareTo = bnpSquareTo;\nBigInteger.prototype.divRemTo = bnpDivRemTo;\nBigInteger.prototype.invDigit = bnpInvDigit;\nBigInteger.prototype.addTo = bnpAddTo;\n// public\nBigInteger.prototype.toString = bnToString;\nBigInteger.prototype.negate = bnNegate;\nBigInteger.prototype.abs = bnAbs;\nBigInteger.prototype.compareTo = bnCompareTo;\nBigInteger.prototype.bitLength = bnBitLength;\nBigInteger.prototype.mod = bnMod;\nBigInteger.prototype.equals = bnEquals;\nBigInteger.prototype.add = bnAdd;\nBigInteger.prototype.subtract = bnSubtract;\nBigInteger.prototype.multiply = bnMultiply;\nBigInteger.prototype.divide = bnDivide;\nBigInteger.prototype.modPow = bnModPow;\n// \"constants\"\nBigInteger.ZERO = nbv(0);\nBigInteger.ONE = nbv(1);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */\nexport const calculateS = async ({ a, g, k, x, B, N, U, }) => {\n return new Promise((resolve, reject) => {\n g.modPow(x, N, (outerErr, outerResult) => {\n if (outerErr) {\n reject(outerErr);\n return;\n }\n B.subtract(k.multiply(outerResult)).modPow(a.add(U.multiply(x)), N, (innerErr, innerResult) => {\n if (innerErr) {\n reject(innerErr);\n return;\n }\n resolve(innerResult.mod(N));\n });\n });\n });\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const INIT_N = 'FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1' +\n '29024E088A67CC74020BBEA63B139B22514A08798E3404DD' +\n 'EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245' +\n 'E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED' +\n 'EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D' +\n 'C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F' +\n '83655D23DCA3AD961C62F356208552BB9ED529077096966D' +\n '670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B' +\n 'E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9' +\n 'DE2BCBF6955817183995497CEA956AE515D2261898FA0510' +\n '15728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64' +\n 'ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7' +\n 'ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6B' +\n 'F12FFA06D98A0864D87602733EC86A64521F2B18177B200C' +\n 'BBE117577A615D6C770988C0BAD946E208E24FA074E5AB31' +\n '43DB5BFCE0FD108E4B82D120A93AD2CAFFFFFFFFFFFFFFFF';\nexport const SHORT_TO_HEX = {};\nexport const HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { HEX_TO_SHORT } from './constants';\n/**\n * Converts a hexadecimal encoded string to a Uint8Array of bytes.\n *\n * @param encoded The hexadecimal encoded string\n */\nexport const getBytesFromHex = (encoded) => {\n if (encoded.length % 2 !== 0) {\n throw new Error('Hex encoded strings must have an even number length');\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n }\n else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { SHORT_TO_HEX } from './constants';\n/**\n * Converts a Uint8Array of binary data to a hexadecimal encoded string.\n *\n * @param bytes The binary data to encode\n */\nexport const getHexFromBytes = (bytes) => {\n let out = '';\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Sha256 } from '@aws-crypto/sha256-js';\nimport { getHexFromBytes } from './getHexFromBytes';\n/**\n * Calculate a hash from a `SourceData`\n * @param {SourceData} data Value to hash.\n * @returns {string} Hex-encoded hash.\n * @private\n */\nexport const getHashFromData = (data) => {\n const sha256 = new Sha256();\n sha256.update(data);\n const hashedData = sha256.digestSync();\n const hashHexFromUint8 = getHexFromBytes(hashedData);\n return new Array(64 - hashHexFromUint8.length).join('0') + hashHexFromUint8;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getBytesFromHex } from './getBytesFromHex';\nimport { getHashFromData } from './getHashFromData';\n/**\n * Calculate a hash from a hex string\n * @param {string} hexStr Value to hash.\n * @returns {string} Hex-encoded hash.\n * @private\n */\nexport const getHashFromHex = (hexStr) => getHashFromData(getBytesFromHex(hexStr));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { BigInteger } from './BigInteger';\n/**\n * Tests if a hex string has it most significant bit set (case-insensitive regex)\n */\nconst HEX_MSB_REGEX = /^[89a-f]/i;\n/**\n * Returns an unambiguous, even-length hex string of the two's complement encoding of an integer.\n *\n * It is compatible with the hex encoding of Java's BigInteger's toByteArray(), wich returns a\n * byte array containing the two's-complement representation of a BigInteger. The array contains\n * the minimum number of bytes required to represent the BigInteger, including at least one sign bit.\n *\n * Examples showing how ambiguity is avoided by left padding with:\n * \t\"00\" (for positive values where the most-significant-bit is set)\n * \"FF\" (for negative values where the most-significant-bit is set)\n *\n * padHex(bigInteger.fromInt(-236)) === \"FF14\"\n * padHex(bigInteger.fromInt(20)) === \"14\"\n *\n * padHex(bigInteger.fromInt(-200)) === \"FF38\"\n * padHex(bigInteger.fromInt(56)) === \"38\"\n *\n * padHex(bigInteger.fromInt(-20)) === \"EC\"\n * padHex(bigInteger.fromInt(236)) === \"00EC\"\n *\n * padHex(bigInteger.fromInt(-56)) === \"C8\"\n * padHex(bigInteger.fromInt(200)) === \"00C8\"\n *\n * @param {AuthBigInteger} bigInt Number to encode.\n * @returns {String} even-length hex string of the two's complement encoding.\n */\nexport const getPaddedHex = (bigInt) => {\n if (!(bigInt instanceof BigInteger)) {\n throw new Error('Not a BigInteger');\n }\n const isNegative = bigInt.compareTo(BigInteger.ZERO) < 0;\n /* Get a hex string for abs(bigInt) */\n let hexStr = bigInt.abs().toString(16);\n /* Pad hex to even length if needed */\n hexStr = hexStr.length % 2 !== 0 ? `0${hexStr}` : hexStr;\n /* Prepend \"00\" if the most significant bit is set */\n hexStr = HEX_MSB_REGEX.test(hexStr) ? `00${hexStr}` : hexStr;\n if (isNegative) {\n /* Flip the bits of the representation */\n const invertedNibbles = hexStr\n .split('')\n .map((x) => {\n const invertedNibble = ~parseInt(x, 16) & 0xf;\n return '0123456789ABCDEF'.charAt(invertedNibble);\n })\n .join('');\n /* After flipping the bits, add one to get the 2's complement representation */\n const flippedBitsBI = new BigInteger(invertedNibbles, 16).add(BigInteger.ONE);\n hexStr = flippedBitsBI.toString(16);\n /*\n For hex strings starting with 'FF8', 'FF' can be dropped, e.g. 0xFFFF80=0xFF80=0x80=-128\n\n Any sequence of '1' bits on the left can always be substituted with a single '1' bit\n without changing the represented value.\n\n This only happens in the case when the input is 80...00\n */\n if (hexStr.toUpperCase().startsWith('FF8')) {\n hexStr = hexStr.substring(2);\n }\n }\n return hexStr;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { cryptoSecureRandomInt } from './cryptoSecureRandomInt';\n/**\n * Hex encoding strategy.\n * Converts a word array to a hex string.\n * @param {WordArray} wordArray The word array.\n * @return {string} The hex string.\n * @static\n */\nfunction hexStringify(wordArray) {\n // Shortcuts\n const { words } = wordArray;\n const { sigBytes } = wordArray;\n // Convert\n const hexChars = [];\n for (let i = 0; i < sigBytes; i++) {\n const bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n hexChars.push((bite >>> 4).toString(16));\n hexChars.push((bite & 0x0f).toString(16));\n }\n return hexChars.join('');\n}\nexport class WordArray {\n constructor(words, sigBytes) {\n this.words = [];\n let Words = words;\n Words = this.words = Words || [];\n if (sigBytes !== undefined) {\n this.sigBytes = sigBytes;\n }\n else {\n this.sigBytes = Words.length * 4;\n }\n }\n random(nBytes) {\n const words = [];\n for (let i = 0; i < nBytes; i += 4) {\n words.push(cryptoSecureRandomInt());\n }\n return new WordArray(words, nBytes);\n }\n toString() {\n return hexStringify(this);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getCrypto } from './globalHelpers';\n/*\n * Cryptographically secure pseudorandom number generator\n * As Math.random() is cryptographically not safe to use\n */\nexport function cryptoSecureRandomInt() {\n const crypto = getCrypto();\n const randomResult = crypto.getRandomValues(new Uint32Array(1))[0];\n return randomResult;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { WordArray } from '@aws-amplify/core/internals/utils';\nimport { getBytesFromHex } from './getBytesFromHex';\n/**\n * Returns a Uint8Array with a sequence of random nBytes\n *\n * @param {number} nBytes\n * @returns {Uint8Array} fixed-length sequence of random bytes\n */\nexport const getRandomBytes = (nBytes) => {\n const str = new WordArray().random(nBytes).toString();\n return getBytesFromHex(str);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from '../../../../../errors/AuthError';\nimport { textEncoder } from '../../textEncoder';\nimport { BigInteger } from '../BigInteger';\nimport { calculateS, calculateU } from '../calculate';\nimport { getBytesFromHex } from '../getBytesFromHex';\nimport { getHashFromData } from '../getHashFromData';\nimport { getHashFromHex } from '../getHashFromHex';\nimport { getHexFromBytes } from '../getHexFromBytes';\nimport { getHkdfKey } from '../getHkdfKey';\nimport { getPaddedHex } from '../getPaddedHex';\nimport { getRandomBytes } from '../getRandomBytes';\nimport { getRandomString } from '../getRandomString';\n/** @class */\nexport default class AuthenticationHelper {\n constructor({ userPoolName, a, g, A, N, }) {\n this.encoder = textEncoder;\n this.userPoolName = userPoolName;\n this.a = a;\n this.g = g;\n this.A = A;\n this.N = N;\n this.k = new BigInteger(getHashFromHex(`${getPaddedHex(N)}${getPaddedHex(g)}`), 16);\n }\n /**\n * @returns {string} Generated random value included in password hash.\n */\n getRandomPassword() {\n if (!this.randomPassword) {\n throw new AuthError({\n name: 'EmptyBigIntegerRandomPassword',\n message: 'random password is empty',\n });\n }\n return this.randomPassword;\n }\n /**\n * @returns {string} Generated random value included in devices hash.\n */\n getSaltToHashDevices() {\n if (!this.saltToHashDevices) {\n throw new AuthError({\n name: 'EmptyBigIntegersaltToHashDevices',\n message: 'saltToHashDevices is empty',\n });\n }\n return this.saltToHashDevices;\n }\n /**\n * @returns {string} Value used to verify devices.\n */\n getVerifierDevices() {\n if (!this.verifierDevices) {\n throw new AuthError({\n name: 'EmptyBigIntegerVerifierDevices',\n message: 'verifyDevices is empty',\n });\n }\n return this.verifierDevices;\n }\n /**\n * Generate salts and compute verifier.\n *\n * @param {string} deviceGroupKey Devices to generate verifier for.\n * @param {string} username User to generate verifier for.\n *\n * @returns {Promise<void>}\n */\n async generateHashDevice(deviceGroupKey, username) {\n this.randomPassword = getRandomString();\n const combinedString = `${deviceGroupKey}${username}:${this.randomPassword}`;\n const hashedString = getHashFromData(combinedString);\n const hexRandom = getHexFromBytes(getRandomBytes(16));\n // The random hex will be unambiguously represented as a postive integer\n this.saltToHashDevices = getPaddedHex(new BigInteger(hexRandom, 16));\n return new Promise((resolve, reject) => {\n this.g.modPow(new BigInteger(getHashFromHex(this.saltToHashDevices + hashedString), 16), this.N, (err, result) => {\n if (err) {\n reject(err);\n return;\n }\n this.verifierDevices = getPaddedHex(result);\n resolve();\n });\n });\n }\n /**\n * Calculates the final HKDF key based on computed S value, computed U value and the key\n *\n * @param {String} username Username.\n * @param {String} password Password.\n * @param {AuthBigInteger} B Server B value.\n * @param {AuthBigInteger} salt Generated salt.\n */\n async getPasswordAuthenticationKey({ username, password, serverBValue, salt, }) {\n if (serverBValue.mod(this.N).equals(BigInteger.ZERO)) {\n throw new Error('B cannot be zero.');\n }\n const U = calculateU({\n A: this.A,\n B: serverBValue,\n });\n const usernamePassword = `${this.userPoolName}${username}:${password}`;\n const usernamePasswordHash = getHashFromData(usernamePassword);\n const x = new BigInteger(getHashFromHex(getPaddedHex(salt) + usernamePasswordHash), 16);\n const S = await calculateS({\n a: this.a,\n g: this.g,\n k: this.k,\n x,\n B: serverBValue,\n N: this.N,\n U,\n });\n const context = this.encoder.convert('Caldera Derived Key');\n const spacer = this.encoder.convert(String.fromCharCode(1));\n const info = new Uint8Array(context.byteLength + spacer.byteLength);\n info.set(context, 0);\n info.set(spacer, context.byteLength);\n const hkdfKey = getHkdfKey(getBytesFromHex(getPaddedHex(S)), getBytesFromHex(getPaddedHex(U)), info);\n return hkdfKey;\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { base64Encoder } from '@aws-amplify/core/internals/utils';\nimport { getRandomBytes } from './getRandomBytes';\n/**\n * Helper function to generate a random string\n * @returns {string} a random value.\n *\n * @internal\n */\nexport const getRandomString = () => base64Encoder.convert(getRandomBytes(40));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { BigInteger } from '../BigInteger';\nimport { getHashFromHex } from '../getHashFromHex';\nimport { getPaddedHex } from '../getPaddedHex';\n/**\n * @internal\n */\nexport const calculateU = ({ A, B, }) => {\n const U = new BigInteger(getHashFromHex(getPaddedHex(A) + getPaddedHex(B)), 16);\n if (U.equals(BigInteger.ZERO)) {\n throw new Error('U cannot be zero.');\n }\n return U;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Sha256 } from '@aws-crypto/sha256-js';\n/**\n * Standard HKDF algorithm.\n *\n * @param {Uint8Array} ikm Input key material.\n * @param {Uint8Array} salt Salt value.\n * @param {Uint8Array} info Context and application specific info.\n *\n * @returns {Uint8Array} Strong key material.\n *\n * @internal\n */\nexport const getHkdfKey = (ikm, salt, info) => {\n const awsCryptoHash = new Sha256(salt);\n awsCryptoHash.update(ikm);\n const resultFromAWSCryptoPrk = awsCryptoHash.digestSync();\n const awsCryptoHashHmac = new Sha256(resultFromAWSCryptoPrk);\n awsCryptoHashHmac.update(info);\n const resultFromAWSCryptoHmac = awsCryptoHashHmac.digestSync();\n const hashHexFromAWSCrypto = resultFromAWSCryptoHmac;\n return hashHexFromAWSCrypto.slice(0, 16);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { BigInteger } from '../BigInteger';\n/**\n * @internal\n */\nexport const calculateA = async ({ a, g, N, }) => {\n return new Promise((resolve, reject) => {\n g.modPow(a, N, (err, A) => {\n if (err) {\n reject(err);\n return;\n }\n if (A.mod(N).equals(BigInteger.ZERO)) {\n reject(new Error('Illegal parameter. A mod N cannot be 0.'));\n return;\n }\n resolve(A);\n });\n });\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthenticationHelper } from './AuthenticationHelper';\nimport { BigInteger } from './BigInteger';\nimport { calculateA } from './calculate';\nimport { INIT_N } from './constants';\nimport { getHexFromBytes } from './getHexFromBytes';\nimport { getRandomBytes } from './getRandomBytes';\n/**\n * Returns a new {@link AuthenticationHelper} instance with randomly generated BigInteger seed\n *\n * @param userPoolName Cognito user pool name.\n * @returns An {@link AuthenticationHelper} instance.\n *\n * @internal\n */\nexport const getAuthenticationHelper = async (userPoolName) => {\n const N = new BigInteger(INIT_N, 16);\n const g = new BigInteger('2', 16);\n const a = generateRandomBigInteger();\n const A = await calculateA({ a, g, N });\n return new AuthenticationHelper({ userPoolName, a, g, A, N });\n};\n/**\n * Generates a random BigInteger.\n *\n * @returns {BigInteger} a random value.\n */\nconst generateRandomBigInteger = () => {\n // This will be interpreted as a postive 128-bit integer\n const hexRandom = getHexFromBytes(getRandomBytes(128));\n // There is no need to do randomBigInt.mod(this.N - 1) as N (3072-bit) is > 128 bytes (1024-bit)\n return new BigInteger(hexRandom, 16);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst MONTH_NAMES = [\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n];\nconst WEEK_NAMES = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];\nexport const getNowString = () => {\n const now = new Date();\n const weekDay = WEEK_NAMES[now.getUTCDay()];\n const month = MONTH_NAMES[now.getUTCMonth()];\n const day = now.getUTCDate();\n let hours = now.getUTCHours();\n if (hours < 10) {\n hours = `0${hours}`;\n }\n let minutes = now.getUTCMinutes();\n if (minutes < 10) {\n minutes = `0${minutes}`;\n }\n let seconds = now.getUTCSeconds();\n if (seconds < 10) {\n seconds = `0${seconds}`;\n }\n const year = now.getUTCFullYear();\n // ddd MMM D HH:mm:ss UTC YYYY\n const dateNow = `${weekDay} ${month} ${day} ${hours}:${minutes}:${seconds} UTC ${year}`;\n return dateNow;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Sha256 } from '@aws-crypto/sha256-js';\nimport { base64Decoder, base64Encoder, } from '@aws-amplify/core/internals/utils';\nimport { textEncoder } from '../textEncoder';\nexport const getSignatureString = ({ userPoolName, username, challengeParameters, dateNow, hkdf, }) => {\n const bufUPIDaToB = textEncoder.convert(userPoolName);\n const bufUNaToB = textEncoder.convert(username);\n const bufSBaToB = urlB64ToUint8Array(challengeParameters.SECRET_BLOCK);\n const bufDNaToB = textEncoder.convert(dateNow);\n const bufConcat = new Uint8Array(bufUPIDaToB.byteLength +\n bufUNaToB.byteLength +\n bufSBaToB.byteLength +\n bufDNaToB.byteLength);\n bufConcat.set(bufUPIDaToB, 0);\n bufConcat.set(bufUNaToB, bufUPIDaToB.byteLength);\n bufConcat.set(bufSBaToB, bufUPIDaToB.byteLength + bufUNaToB.byteLength);\n bufConcat.set(bufDNaToB, bufUPIDaToB.byteLength + bufUNaToB.byteLength + bufSBaToB.byteLength);\n const awsCryptoHash = new Sha256(hkdf);\n awsCryptoHash.update(bufConcat);\n const resultFromAWSCrypto = awsCryptoHash.digestSync();\n const signatureString = base64Encoder.convert(resultFromAWSCrypto);\n return signatureString;\n};\nconst urlB64ToUint8Array = (base64String) => {\n const padding = '='.repeat((4 - (base64String.length % 4)) % 4);\n const base64 = (base64String + padding).replace(/-/g, '+').replace(/_/g, '/');\n const rawData = base64Decoder.convert(base64);\n const outputArray = new Uint8Array(rawData.length);\n for (let i = 0; i < rawData.length; ++i) {\n outputArray[i] = rawData.charCodeAt(i);\n }\n return outputArray;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { AmplifyUrl, AuthAction, assertTokenProviderConfig, base64Encoder, getDeviceName, } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError';\nimport { InitiateAuthException } from '../types/errors';\nimport { AuthErrorCodes } from '../../../common/AuthErrorStrings';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { USER_ALREADY_AUTHENTICATED_EXCEPTION } from '../../../errors/constants';\nimport { getCurrentUser } from '../apis/getCurrentUser';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { signInStore } from './signInStore';\nimport { associateSoftwareToken, confirmDevice, initiateAuth, respondToAuthChallenge, verifySoftwareToken, } from './clients/CognitoIdentityProvider';\nimport { getRegion } from './clients/CognitoIdentityProvider/utils';\nimport { assertDeviceMetadata } from './types';\nimport { getAuthenticationHelper, getBytesFromHex, getNowString, getSignatureString, } from './srp';\nimport { BigInteger } from './srp/BigInteger';\nimport { getUserContextData } from './userContextData';\nconst USER_ATTRIBUTES = 'userAttributes.';\nexport async function handleCustomChallenge({ challengeResponse, clientMetadata, session, username, config, tokenOrchestrator, }) {\n const { userPoolId, userPoolClientId } = config;\n const challengeResponses = {\n USERNAME: username,\n ANSWER: challengeResponse,\n };\n const deviceMetadata = await tokenOrchestrator?.getDeviceMetadata(username);\n if (deviceMetadata && deviceMetadata.deviceKey) {\n challengeResponses.DEVICE_KEY = deviceMetadata.deviceKey;\n }\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n ChallengeName: 'CUSTOM_CHALLENGE',\n ChallengeResponses: challengeResponses,\n Session: session,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n UserContextData,\n };\n const response = await respondToAuthChallenge({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),\n }, jsonReq);\n if (response.ChallengeName === 'DEVICE_SRP_AUTH') {\n return handleDeviceSRPAuth({\n username,\n config,\n clientMetadata,\n session: response.Session,\n tokenOrchestrator,\n });\n }\n return response;\n}\nexport async function handleMFASetupChallenge({ challengeResponse, username, clientMetadata, session, deviceName, config, }) {\n const { userPoolId, userPoolClientId } = config;\n const challengeResponses = {\n USERNAME: username,\n };\n const { Session } = await verifySoftwareToken({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),\n }, {\n UserCode: challengeResponse,\n Session: session,\n FriendlyDeviceName: deviceName,\n });\n signInStore.dispatch({\n type: 'SET_SIGN_IN_SESSION',\n value: Session,\n });\n const jsonReq = {\n ChallengeName: 'MFA_SETUP',\n ChallengeResponses: challengeResponses,\n Session,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n };\n return respondToAuthChallenge({ region: getRegion(userPoolId) }, jsonReq);\n}\nexport async function handleSelectMFATypeChallenge({ challengeResponse, username, clientMetadata, session, config, }) {\n const { userPoolId, userPoolClientId } = config;\n assertValidationError(challengeResponse === 'TOTP' || challengeResponse === 'SMS', AuthValidationErrorCode.IncorrectMFAMethod);\n const challengeResponses = {\n USERNAME: username,\n ANSWER: mapMfaType(challengeResponse),\n };\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n ChallengeName: 'SELECT_MFA_TYPE',\n ChallengeResponses: challengeResponses,\n Session: session,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n UserContextData,\n };\n return respondToAuthChallenge({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),\n }, jsonReq);\n}\nexport async function handleSMSMFAChallenge({ challengeResponse, clientMetadata, session, username, config, }) {\n const { userPoolId, userPoolClientId } = config;\n const challengeResponses = {\n USERNAME: username,\n SMS_MFA_CODE: challengeResponse,\n };\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n ChallengeName: 'SMS_MFA',\n ChallengeResponses: challengeResponses,\n Session: session,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n UserContextData,\n };\n return respondToAuthChallenge({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),\n }, jsonReq);\n}\nexport async function handleSoftwareTokenMFAChallenge({ challengeResponse, clientMetadata, session, username, config, }) {\n const { userPoolId, userPoolClientId } = config;\n const challengeResponses = {\n USERNAME: username,\n SOFTWARE_TOKEN_MFA_CODE: challengeResponse,\n };\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n ChallengeName: 'SOFTWARE_TOKEN_MFA',\n ChallengeResponses: challengeResponses,\n Session: session,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n UserContextData,\n };\n return respondToAuthChallenge({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),\n }, jsonReq);\n}\nexport async function handleCompleteNewPasswordChallenge({ challengeResponse, clientMetadata, session, username, requiredAttributes, config, }) {\n const { userPoolId, userPoolClientId } = config;\n const challengeResponses = {\n ...createAttributes(requiredAttributes),\n NEW_PASSWORD: challengeResponse,\n USERNAME: username,\n };\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n ChallengeName: 'NEW_PASSWORD_REQUIRED',\n ChallengeResponses: challengeResponses,\n ClientMetadata: clientMetadata,\n Session: session,\n ClientId: userPoolClientId,\n UserContextData,\n };\n return respondToAuthChallenge({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),\n }, jsonReq);\n}\nexport async function handleUserPasswordAuthFlow(username, password, clientMetadata, config, tokenOrchestrator) {\n const { userPoolClientId, userPoolId } = config;\n const authParameters = {\n USERNAME: username,\n PASSWORD: password,\n };\n const deviceMetadata = await tokenOrchestrator.getDeviceMetadata(username);\n if (deviceMetadata && deviceMetadata.deviceKey) {\n authParameters.DEVICE_KEY = deviceMetadata.deviceKey;\n }\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n AuthFlow: 'USER_PASSWORD_AUTH',\n AuthParameters: authParameters,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n UserContextData,\n };\n const response = await initiateAuth({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SignIn),\n }, jsonReq);\n const activeUsername = response.ChallengeParameters?.USERNAME ??\n response.ChallengeParameters?.USER_ID_FOR_SRP ??\n username;\n setActiveSignInUsername(activeUsername);\n if (response.ChallengeName === 'DEVICE_SRP_AUTH')\n return handleDeviceSRPAuth({\n username: activeUsername,\n config,\n clientMetadata,\n session: response.Session,\n tokenOrchestrator,\n });\n return response;\n}\nexport async function handleUserSRPAuthFlow(username, password, clientMetadata, config, tokenOrchestrator) {\n const { userPoolId, userPoolClientId } = config;\n const userPoolName = userPoolId?.split('_')[1] || '';\n const authenticationHelper = await getAuthenticationHelper(userPoolName);\n const authParameters = {\n USERNAME: username,\n SRP_A: authenticationHelper.A.toString(16),\n };\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n AuthFlow: 'USER_SRP_AUTH',\n AuthParameters: authParameters,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n UserContextData,\n };\n const resp = await initiateAuth({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SignIn),\n }, jsonReq);\n const { ChallengeParameters: challengeParameters, Session: session } = resp;\n const activeUsername = challengeParameters?.USERNAME ?? username;\n setActiveSignInUsername(activeUsername);\n return retryOnResourceNotFoundException(handlePasswordVerifierChallenge, [\n password,\n challengeParameters,\n clientMetadata,\n session,\n authenticationHelper,\n config,\n tokenOrchestrator,\n ], activeUsername, tokenOrchestrator);\n}\nexport async function handleCustomAuthFlowWithoutSRP(username, clientMetadata, config, tokenOrchestrator) {\n const { userPoolClientId, userPoolId } = config;\n const authParameters = {\n USERNAME: username,\n };\n const deviceMetadata = await tokenOrchestrator.getDeviceMetadata(username);\n if (deviceMetadata && deviceMetadata.deviceKey) {\n authParameters.DEVICE_KEY = deviceMetadata.deviceKey;\n }\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n AuthFlow: 'CUSTOM_AUTH',\n AuthParameters: authParameters,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n UserContextData,\n };\n const response = await initiateAuth({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SignIn),\n }, jsonReq);\n const activeUsername = response.ChallengeParameters?.USERNAME ?? username;\n setActiveSignInUsername(activeUsername);\n if (response.ChallengeName === 'DEVICE_SRP_AUTH')\n return handleDeviceSRPAuth({\n username: activeUsername,\n config,\n clientMetadata,\n session: response.Session,\n tokenOrchestrator,\n });\n return response;\n}\nexport async function handleCustomSRPAuthFlow(username, password, clientMetadata, config, tokenOrchestrator) {\n assertTokenProviderConfig(config);\n const { userPoolId, userPoolClientId } = config;\n const userPoolName = userPoolId?.split('_')[1] || '';\n const authenticationHelper = await getAuthenticationHelper(userPoolName);\n const authParameters = {\n USERNAME: username,\n SRP_A: authenticationHelper.A.toString(16),\n CHALLENGE_NAME: 'SRP_A',\n };\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReq = {\n AuthFlow: 'CUSTOM_AUTH',\n AuthParameters: authParameters,\n ClientMetadata: clientMetadata,\n ClientId: userPoolClientId,\n UserContextData,\n };\n const { ChallengeParameters: challengeParameters, Session: session } = await initiateAuth({\n region: getRegion(userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SignIn),\n }, jsonReq);\n const activeUsername = challengeParameters?.USERNAME ?? username;\n setActiveSignInUsername(activeUsername);\n return retryOnResourceNotFoundException(handlePasswordVerifierChallenge, [\n password,\n challengeParameters,\n clientMetadata,\n session,\n authenticationHelper,\n config,\n tokenOrchestrator,\n ], activeUsername, tokenOrchestrator);\n}\nasync function handleDeviceSRPAuth({ username, config, clientMetadata, session, tokenOrchestrator, }) {\n const { userPoolId } = config;\n const clientId = config.userPoolClientId;\n const deviceMetadata = await tokenOrchestrator?.getDeviceMetadata(username);\n assertDeviceMetadata(deviceMetadata);\n const authenticationHelper = await getAuthenticationHelper(deviceMetadata.deviceGroupKey);\n const challengeResponses = {\n USERNAME: username,\n SRP_A: authenticationHelper.A.toString(16),\n DEVICE_KEY: deviceMetadata.deviceKey,\n };\n const jsonReqResponseChallenge = {\n ChallengeName: 'DEVICE_SRP_AUTH',\n ClientId: clientId,\n ChallengeResponses: challengeResponses,\n ClientMetadata: clientMetadata,\n Session: session,\n };\n const { ChallengeParameters: respondedChallengeParameters, Session } = await respondToAuthChallenge({ region: getRegion(userPoolId) }, jsonReqResponseChallenge);\n return handleDevicePasswordVerifier(username, respondedChallengeParameters, clientMetadata, Session, authenticationHelper, config, tokenOrchestrator);\n}\nasync function handleDevicePasswordVerifier(username, challengeParameters, clientMetadata, session, authenticationHelper, { userPoolId, userPoolClientId }, tokenOrchestrator) {\n const deviceMetadata = await tokenOrchestrator?.getDeviceMetadata(username);\n assertDeviceMetadata(deviceMetadata);\n const serverBValue = new BigInteger(challengeParameters?.SRP_B, 16);\n const salt = new BigInteger(challengeParameters?.SALT, 16);\n const { deviceKey } = deviceMetadata;\n const { deviceGroupKey } = deviceMetadata;\n const hkdf = await authenticationHelper.getPasswordAuthenticationKey({\n username: deviceMetadata.deviceKey,\n password: deviceMetadata.randomPassword,\n serverBValue,\n salt,\n });\n const dateNow = getNowString();\n const challengeResponses = {\n USERNAME: challengeParameters?.USERNAME ?? username,\n PASSWORD_CLAIM_SECRET_BLOCK: challengeParameters?.SECRET_BLOCK,\n TIMESTAMP: dateNow,\n PASSWORD_CLAIM_SIGNATURE: getSignatureString({\n username: deviceKey,\n userPoolName: deviceGroupKey,\n challengeParameters,\n dateNow,\n hkdf,\n }),\n DEVICE_KEY: deviceKey,\n };\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReqResponseChallenge = {\n ChallengeName: 'DEVICE_PASSWORD_VERIFIER',\n ClientId: userPoolClientId,\n ChallengeResponses: challengeResponses,\n Session: session,\n ClientMetadata: clientMetadata,\n UserContextData,\n };\n return respondToAuthChallenge({ region: getRegion(userPoolId) }, jsonReqResponseChallenge);\n}\nexport async function handlePasswordVerifierChallenge(password, challengeParameters, clientMetadata, session, authenticationHelper, config, tokenOrchestrator) {\n const { userPoolId, userPoolClientId } = config;\n const userPoolName = userPoolId?.split('_')[1] || '';\n const serverBValue = new BigInteger(challengeParameters?.SRP_B, 16);\n const salt = new BigInteger(challengeParameters?.SALT, 16);\n const username = challengeParameters?.USER_ID_FOR_SRP;\n if (!username)\n throw new AuthError({\n name: 'EmptyUserIdForSRPException',\n message: 'USER_ID_FOR_SRP was not found in challengeParameters',\n });\n const hkdf = await authenticationHelper.getPasswordAuthenticationKey({\n username,\n password,\n serverBValue,\n salt,\n });\n const dateNow = getNowString();\n const challengeResponses = {\n USERNAME: username,\n PASSWORD_CLAIM_SECRET_BLOCK: challengeParameters?.SECRET_BLOCK,\n TIMESTAMP: dateNow,\n PASSWORD_CLAIM_SIGNATURE: getSignatureString({\n username,\n userPoolName,\n challengeParameters,\n dateNow,\n hkdf,\n }),\n };\n const deviceMetadata = await tokenOrchestrator.getDeviceMetadata(username);\n if (deviceMetadata && deviceMetadata.deviceKey) {\n challengeResponses.DEVICE_KEY = deviceMetadata.deviceKey;\n }\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReqResponseChallenge = {\n ChallengeName: 'PASSWORD_VERIFIER',\n ChallengeResponses: challengeResponses,\n ClientMetadata: clientMetadata,\n Session: session,\n ClientId: userPoolClientId,\n UserContextData,\n };\n const response = await respondToAuthChallenge({ region: getRegion(userPoolId) }, jsonReqResponseChallenge);\n if (response.ChallengeName === 'DEVICE_SRP_AUTH')\n return handleDeviceSRPAuth({\n username,\n config,\n clientMetadata,\n session: response.Session,\n tokenOrchestrator,\n });\n return response;\n}\nexport async function getSignInResult(params) {\n const { challengeName, challengeParameters } = params;\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n switch (challengeName) {\n case 'CUSTOM_CHALLENGE':\n return {\n isSignedIn: false,\n nextStep: {\n signInStep: 'CONFIRM_SIGN_IN_WITH_CUSTOM_CHALLENGE',\n additionalInfo: challengeParameters,\n },\n };\n case 'MFA_SETUP': {\n const { signInSession, username } = signInStore.getState();\n if (!isMFATypeEnabled(challengeParameters, 'TOTP'))\n throw new AuthError({\n name: AuthErrorCodes.SignInException,\n message: `Cannot initiate MFA setup from available types: ${getMFATypes(parseMFATypes(challengeParameters.MFAS_CAN_SETUP))}`,\n });\n const { Session, SecretCode: secretCode } = await associateSoftwareToken({ region: getRegion(authConfig.userPoolId) }, {\n Session: signInSession,\n });\n signInStore.dispatch({\n type: 'SET_SIGN_IN_SESSION',\n value: Session,\n });\n return {\n isSignedIn: false,\n nextStep: {\n signInStep: 'CONTINUE_SIGN_IN_WITH_TOTP_SETUP',\n totpSetupDetails: getTOTPSetupDetails(secretCode, username),\n },\n };\n }\n case 'NEW_PASSWORD_REQUIRED':\n return {\n isSignedIn: false,\n nextStep: {\n signInStep: 'CONFIRM_SIGN_IN_WITH_NEW_PASSWORD_REQUIRED',\n missingAttributes: parseAttributes(challengeParameters.requiredAttributes),\n },\n };\n case 'SELECT_MFA_TYPE':\n return {\n isSignedIn: false,\n nextStep: {\n signInStep: 'CONTINUE_SIGN_IN_WITH_MFA_SELECTION',\n allowedMFATypes: getMFATypes(parseMFATypes(challengeParameters.MFAS_CAN_CHOOSE)),\n },\n };\n case 'SMS_MFA':\n return {\n isSignedIn: false,\n nextStep: {\n signInStep: 'CONFIRM_SIGN_IN_WITH_SMS_CODE',\n codeDeliveryDetails: {\n deliveryMedium: challengeParameters.CODE_DELIVERY_DELIVERY_MEDIUM,\n destination: challengeParameters.CODE_DELIVERY_DESTINATION,\n },\n },\n };\n case 'SOFTWARE_TOKEN_MFA':\n return {\n isSignedIn: false,\n nextStep: {\n signInStep: 'CONFIRM_SIGN_IN_WITH_TOTP_CODE',\n },\n };\n case 'ADMIN_NO_SRP_AUTH':\n break;\n case 'DEVICE_PASSWORD_VERIFIER':\n break;\n case 'DEVICE_SRP_AUTH':\n break;\n case 'PASSWORD_VERIFIER':\n break;\n }\n // TODO: remove this error message for production apps\n throw new AuthError({\n name: AuthErrorCodes.SignInException,\n message: 'An error occurred during the sign in process. ' +\n `${challengeName} challengeName returned by the underlying service was not addressed.`,\n });\n}\nexport function getTOTPSetupDetails(secretCode, username) {\n return {\n sharedSecret: secretCode,\n getSetupUri: (appName, accountName) => {\n const totpUri = `otpauth://totp/${appName}:${accountName ?? username}?secret=${secretCode}&issuer=${appName}`;\n return new AmplifyUrl(totpUri);\n },\n };\n}\nexport function getSignInResultFromError(errorName) {\n if (errorName === InitiateAuthException.PasswordResetRequiredException) {\n return {\n isSignedIn: false,\n nextStep: { signInStep: 'RESET_PASSWORD' },\n };\n }\n else if (errorName === InitiateAuthException.UserNotConfirmedException) {\n return {\n isSignedIn: false,\n nextStep: { signInStep: 'CONFIRM_SIGN_UP' },\n };\n }\n}\nexport function parseAttributes(attributes) {\n if (!attributes)\n return [];\n const parsedAttributes = JSON.parse(attributes).map(att => att.includes(USER_ATTRIBUTES) ? att.replace(USER_ATTRIBUTES, '') : att);\n return parsedAttributes;\n}\nexport function createAttributes(attributes) {\n if (!attributes)\n return {};\n const newAttributes = {};\n Object.entries(attributes).forEach(([key, value]) => {\n if (value)\n newAttributes[`${USER_ATTRIBUTES}${key}`] = value;\n });\n return newAttributes;\n}\nexport async function handleChallengeName(username, challengeName, session, challengeResponse, config, tokenOrchestrator, clientMetadata, options) {\n const userAttributes = options?.userAttributes;\n const deviceName = options?.friendlyDeviceName;\n switch (challengeName) {\n case 'SMS_MFA':\n return handleSMSMFAChallenge({\n challengeResponse,\n clientMetadata,\n session,\n username,\n config,\n });\n case 'SELECT_MFA_TYPE':\n return handleSelectMFATypeChallenge({\n challengeResponse,\n clientMetadata,\n session,\n username,\n config,\n });\n case 'MFA_SETUP':\n return handleMFASetupChallenge({\n challengeResponse,\n clientMetadata,\n session,\n username,\n deviceName,\n config,\n });\n case 'NEW_PASSWORD_REQUIRED':\n return handleCompleteNewPasswordChallenge({\n challengeResponse,\n clientMetadata,\n session,\n username,\n requiredAttributes: userAttributes,\n config,\n });\n case 'CUSTOM_CHALLENGE':\n return retryOnResourceNotFoundException(handleCustomChallenge, [\n {\n challengeResponse,\n clientMetadata,\n session,\n username,\n config,\n tokenOrchestrator,\n },\n ], username, tokenOrchestrator);\n case 'SOFTWARE_TOKEN_MFA':\n return handleSoftwareTokenMFAChallenge({\n challengeResponse,\n clientMetadata,\n session,\n username,\n config,\n });\n }\n // TODO: remove this error message for production apps\n throw new AuthError({\n name: AuthErrorCodes.SignInException,\n message: `An error occurred during the sign in process. \n\t\t${challengeName} challengeName returned by the underlying service was not addressed.`,\n });\n}\nexport function mapMfaType(mfa) {\n let mfaType = 'SMS_MFA';\n if (mfa === 'TOTP')\n mfaType = 'SOFTWARE_TOKEN_MFA';\n return mfaType;\n}\nexport function getMFAType(type) {\n if (type === 'SMS_MFA')\n return 'SMS';\n if (type === 'SOFTWARE_TOKEN_MFA')\n return 'TOTP';\n // TODO: log warning for unknown MFA type\n}\nexport function getMFATypes(types) {\n if (!types)\n return undefined;\n return types.map(getMFAType).filter(Boolean);\n}\nexport function parseMFATypes(mfa) {\n if (!mfa)\n return [];\n return JSON.parse(mfa);\n}\nexport function isMFATypeEnabled(challengeParams, mfaType) {\n const { MFAS_CAN_SETUP } = challengeParams;\n const mfaTypes = getMFATypes(parseMFATypes(MFAS_CAN_SETUP));\n if (!mfaTypes)\n return false;\n return mfaTypes.includes(mfaType);\n}\nexport async function assertUserNotAuthenticated() {\n let authUser;\n try {\n authUser = await getCurrentUser();\n }\n catch (error) { }\n if (authUser && authUser.userId && authUser.username) {\n throw new AuthError({\n name: USER_ALREADY_AUTHENTICATED_EXCEPTION,\n message: 'There is already a signed in user.',\n recoverySuggestion: 'Call signOut before calling signIn again.',\n });\n }\n}\n/**\n * This function is used to kick off the device management flow.\n *\n * If an error is thrown while generating a hash device or calling the `ConfirmDevice`\n * client, then this API will ignore the error and return undefined. Otherwise the authentication\n * flow will not complete and the user won't be able to be signed in.\n *\n * @returns DeviceMetadata | undefined\n */\nexport async function getNewDeviceMetatada(userPoolId, newDeviceMetadata, accessToken) {\n if (!newDeviceMetadata)\n return undefined;\n const userPoolName = userPoolId.split('_')[1] || '';\n const authenticationHelper = await getAuthenticationHelper(userPoolName);\n const deviceKey = newDeviceMetadata?.DeviceKey;\n const deviceGroupKey = newDeviceMetadata?.DeviceGroupKey;\n try {\n await authenticationHelper.generateHashDevice(deviceGroupKey ?? '', deviceKey ?? '');\n }\n catch (errGenHash) {\n // TODO: log error here\n return undefined;\n }\n const deviceSecretVerifierConfig = {\n Salt: base64Encoder.convert(getBytesFromHex(authenticationHelper.getSaltToHashDevices())),\n PasswordVerifier: base64Encoder.convert(getBytesFromHex(authenticationHelper.getVerifierDevices())),\n };\n const randomPassword = authenticationHelper.getRandomPassword();\n try {\n await confirmDevice({ region: getRegion(userPoolId) }, {\n AccessToken: accessToken,\n DeviceName: await getDeviceName(),\n DeviceKey: newDeviceMetadata?.DeviceKey,\n DeviceSecretVerifierConfig: deviceSecretVerifierConfig,\n });\n return {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n };\n }\n catch (error) {\n // TODO: log error here\n return undefined;\n }\n}\n/**\n * It will retry the function if the error is a `ResourceNotFoundException` and\n * will clean the device keys stored in the storage mechanism.\n *\n */\nexport async function retryOnResourceNotFoundException(func, args, username, tokenOrchestrator) {\n try {\n return await func(...args);\n }\n catch (error) {\n if (error instanceof AuthError &&\n error.name === 'ResourceNotFoundException' &&\n error.message.includes('Device does not exist.')) {\n await tokenOrchestrator.clearDeviceMetadata(username);\n return func(...args);\n }\n throw error;\n }\n}\nexport function setActiveSignInUsername(username) {\n const { dispatch } = signInStore;\n dispatch({ type: 'SET_USERNAME', value: username });\n}\nexport function getActiveSignInUsername(username) {\n const state = signInStore.getState();\n return state.username ?? username;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError, decodeJWT } from '@aws-amplify/core/internals/utils';\nimport { tokenOrchestrator } from './tokenProvider';\nexport async function cacheCognitoTokens(AuthenticationResult) {\n if (AuthenticationResult.AccessToken) {\n const accessToken = decodeJWT(AuthenticationResult.AccessToken);\n const accessTokenIssuedAtInMillis = (accessToken.payload.iat || 0) * 1000;\n const currentTime = new Date().getTime();\n const clockDrift = accessTokenIssuedAtInMillis > 0\n ? accessTokenIssuedAtInMillis - currentTime\n : 0;\n let idToken;\n let refreshToken;\n let deviceMetadata;\n if (AuthenticationResult.RefreshToken) {\n refreshToken = AuthenticationResult.RefreshToken;\n }\n if (AuthenticationResult.IdToken) {\n idToken = decodeJWT(AuthenticationResult.IdToken);\n }\n if (AuthenticationResult?.NewDeviceMetadata) {\n deviceMetadata = AuthenticationResult.NewDeviceMetadata;\n }\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n clockDrift,\n deviceMetadata,\n username: AuthenticationResult.username,\n };\n if (AuthenticationResult?.signInDetails) {\n tokens.signInDetails = AuthenticationResult.signInDetails;\n }\n await tokenOrchestrator.setTokens({\n tokens,\n });\n }\n else {\n // This would be a service error\n throw new AmplifyError({\n message: 'Invalid tokens',\n name: 'InvalidTokens',\n recoverySuggestion: 'Check Cognito UserPool settings',\n });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Hub } from '@aws-amplify/core';\nimport { AMPLIFY_SYMBOL } from '@aws-amplify/core/internals/utils';\nimport { getCurrentUser } from '../apis/getCurrentUser';\nimport { UNEXPECTED_SIGN_IN_INTERRUPTION_EXCEPTION, USER_UNAUTHENTICATED_EXCEPTION, } from '../../../errors/constants';\nimport { AuthError } from '../../../errors/AuthError';\nexport const ERROR_MESSAGE = 'Unable to get user session following successful sign-in.';\nexport const dispatchSignedInHubEvent = async () => {\n try {\n Hub.dispatch('auth', {\n event: 'signedIn',\n data: await getCurrentUser(),\n }, 'Auth', AMPLIFY_SYMBOL);\n }\n catch (error) {\n if (error.name === USER_UNAUTHENTICATED_EXCEPTION) {\n throw new AuthError({\n name: UNEXPECTED_SIGN_IN_INTERRUPTION_EXCEPTION,\n message: ERROR_MESSAGE,\n recoverySuggestion: 'This most likely is due to auth tokens not being persisted. If you are using cookie store, please ensure cookies can be correctly set from your server.',\n });\n }\n throw error;\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { assertTokenProviderConfig } from '@aws-amplify/core/internals/utils';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { getActiveSignInUsername, getNewDeviceMetatada, getSignInResult, getSignInResultFromError, handleCustomSRPAuthFlow, } from '../utils/signInHelpers';\nimport { cleanActiveSignInState, setActiveSignInState, } from '../utils/signInStore';\nimport { cacheCognitoTokens } from '../tokenProvider/cacheTokens';\nimport { tokenOrchestrator } from '../tokenProvider';\nimport { dispatchSignedInHubEvent } from '../utils/dispatchSignedInHubEvent';\n/**\n * Signs a user in using a custom authentication flow with SRP\n *\n * @param input - The SignInWithCustomSRPAuthInput object\n * @returns SignInWithCustomSRPAuthOutput\n * @throws service: {@link InitiateAuthException }, {@link RespondToAuthChallengeException } - Cognito\n * service errors thrown during the sign-in process.\n * @throws validation: {@link AuthValidationErrorCode } - Validation errors thrown when either username or password\n * are not defined.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function signInWithCustomSRPAuth(input) {\n const { username, password, options } = input;\n const signInDetails = {\n loginId: username,\n authFlowType: 'CUSTOM_WITH_SRP',\n };\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const metadata = options?.clientMetadata;\n assertValidationError(!!username, AuthValidationErrorCode.EmptySignInUsername);\n assertValidationError(!!password, AuthValidationErrorCode.EmptySignInPassword);\n try {\n const { ChallengeName: handledChallengeName, ChallengeParameters: handledChallengeParameters, AuthenticationResult, Session, } = await handleCustomSRPAuthFlow(username, password, metadata, authConfig, tokenOrchestrator);\n const activeUsername = getActiveSignInUsername(username);\n // sets up local state used during the sign-in process\n setActiveSignInState({\n signInSession: Session,\n username: activeUsername,\n challengeName: handledChallengeName,\n signInDetails,\n });\n if (AuthenticationResult) {\n await cacheCognitoTokens({\n username: activeUsername,\n ...AuthenticationResult,\n NewDeviceMetadata: await getNewDeviceMetatada(authConfig.userPoolId, AuthenticationResult.NewDeviceMetadata, AuthenticationResult.AccessToken),\n signInDetails,\n });\n cleanActiveSignInState();\n await dispatchSignedInHubEvent();\n return {\n isSignedIn: true,\n nextStep: { signInStep: 'DONE' },\n };\n }\n return getSignInResult({\n challengeName: handledChallengeName,\n challengeParameters: handledChallengeParameters,\n });\n }\n catch (error) {\n cleanActiveSignInState();\n assertServiceError(error);\n const result = getSignInResultFromError(error.name);\n if (result)\n return result;\n throw error;\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { assertTokenProviderConfig } from '@aws-amplify/core/internals/utils';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { getActiveSignInUsername, getNewDeviceMetatada, getSignInResult, getSignInResultFromError, handleUserSRPAuthFlow, } from '../utils/signInHelpers';\nimport { cleanActiveSignInState, setActiveSignInState, } from '../utils/signInStore';\nimport { cacheCognitoTokens } from '../tokenProvider/cacheTokens';\nimport { tokenOrchestrator } from '../tokenProvider';\nimport { dispatchSignedInHubEvent } from '../utils/dispatchSignedInHubEvent';\n/**\n * Signs a user in\n *\n * @param input - The SignInWithSRPInput object\n * @returns SignInWithSRPOutput\n * @throws service: {@link InitiateAuthException }, {@link RespondToAuthChallengeException } - Cognito service errors\n * thrown during the sign-in process.\n * @throws validation: {@link AuthValidationErrorCode } - Validation errors thrown when either username or password\n * are not defined.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function signInWithSRP(input) {\n const { username, password } = input;\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n const signInDetails = {\n loginId: username,\n authFlowType: 'USER_SRP_AUTH',\n };\n assertTokenProviderConfig(authConfig);\n const clientMetaData = input.options?.clientMetadata;\n assertValidationError(!!username, AuthValidationErrorCode.EmptySignInUsername);\n assertValidationError(!!password, AuthValidationErrorCode.EmptySignInPassword);\n try {\n const { ChallengeName: handledChallengeName, ChallengeParameters: handledChallengeParameters, AuthenticationResult, Session, } = await handleUserSRPAuthFlow(username, password, clientMetaData, authConfig, tokenOrchestrator);\n const activeUsername = getActiveSignInUsername(username);\n // sets up local state used during the sign-in process\n setActiveSignInState({\n signInSession: Session,\n username: activeUsername,\n challengeName: handledChallengeName,\n signInDetails,\n });\n if (AuthenticationResult) {\n cleanActiveSignInState();\n await cacheCognitoTokens({\n username: activeUsername,\n ...AuthenticationResult,\n NewDeviceMetadata: await getNewDeviceMetatada(authConfig.userPoolId, AuthenticationResult.NewDeviceMetadata, AuthenticationResult.AccessToken),\n signInDetails,\n });\n await dispatchSignedInHubEvent();\n return {\n isSignedIn: true,\n nextStep: { signInStep: 'DONE' },\n };\n }\n return getSignInResult({\n challengeName: handledChallengeName,\n challengeParameters: handledChallengeParameters,\n });\n }\n catch (error) {\n cleanActiveSignInState();\n assertServiceError(error);\n const result = getSignInResultFromError(error.name);\n if (result)\n return result;\n throw error;\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { assertUserNotAuthenticated } from '../utils/signInHelpers';\nimport { signInWithCustomAuth } from './signInWithCustomAuth';\nimport { signInWithCustomSRPAuth } from './signInWithCustomSRPAuth';\nimport { signInWithSRP } from './signInWithSRP';\nimport { signInWithUserPassword } from './signInWithUserPassword';\n/**\n * Signs a user in\n *\n * @param input - The SignInInput object\n * @returns SignInOutput\n * @throws service: {@link InitiateAuthException }, {@link RespondToAuthChallengeException }\n * - Cognito service errors thrown during the sign-in process.\n * @throws validation: {@link AuthValidationErrorCode } - Validation errors thrown when either username or password\n * are not defined.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function signIn(input) {\n const authFlowType = input.options?.authFlowType;\n await assertUserNotAuthenticated();\n switch (authFlowType) {\n case 'USER_SRP_AUTH':\n return signInWithSRP(input);\n case 'USER_PASSWORD_AUTH':\n return signInWithUserPassword(input);\n case 'CUSTOM_WITHOUT_SRP':\n return signInWithCustomAuth(input);\n case 'CUSTOM_WITH_SRP':\n return signInWithCustomSRPAuth(input);\n default:\n return signInWithSRP(input);\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { assertTokenProviderConfig } from '@aws-amplify/core/internals/utils';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { getActiveSignInUsername, getNewDeviceMetatada, getSignInResult, getSignInResultFromError, handleUserPasswordAuthFlow, retryOnResourceNotFoundException, } from '../utils/signInHelpers';\nimport { cleanActiveSignInState, setActiveSignInState, } from '../utils/signInStore';\nimport { cacheCognitoTokens } from '../tokenProvider/cacheTokens';\nimport { tokenOrchestrator } from '../tokenProvider';\nimport { dispatchSignedInHubEvent } from '../utils/dispatchSignedInHubEvent';\n/**\n * Signs a user in using USER_PASSWORD_AUTH AuthFlowType\n *\n * @param input - The SignInWithUserPasswordInput object\n * @returns SignInWithUserPasswordOutput\n * @throws service: {@link InitiateAuthException } - Cognito service error thrown during the sign-in process.\n * @throws validation: {@link AuthValidationErrorCode } - Validation errors thrown when either username or password\n * are not defined.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function signInWithUserPassword(input) {\n const { username, password, options } = input;\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n const signInDetails = {\n loginId: username,\n authFlowType: 'USER_PASSWORD_AUTH',\n };\n assertTokenProviderConfig(authConfig);\n const metadata = options?.clientMetadata;\n assertValidationError(!!username, AuthValidationErrorCode.EmptySignInUsername);\n assertValidationError(!!password, AuthValidationErrorCode.EmptySignInPassword);\n try {\n const { ChallengeName: retiredChallengeName, ChallengeParameters: retriedChallengeParameters, AuthenticationResult, Session, } = await retryOnResourceNotFoundException(handleUserPasswordAuthFlow, [username, password, metadata, authConfig, tokenOrchestrator], username, tokenOrchestrator);\n const activeUsername = getActiveSignInUsername(username);\n // sets up local state used during the sign-in process\n setActiveSignInState({\n signInSession: Session,\n username: activeUsername,\n challengeName: retiredChallengeName,\n signInDetails,\n });\n if (AuthenticationResult) {\n await cacheCognitoTokens({\n ...AuthenticationResult,\n username: activeUsername,\n NewDeviceMetadata: await getNewDeviceMetatada(authConfig.userPoolId, AuthenticationResult.NewDeviceMetadata, AuthenticationResult.AccessToken),\n signInDetails,\n });\n cleanActiveSignInState();\n await dispatchSignedInHubEvent();\n return {\n isSignedIn: true,\n nextStep: { signInStep: 'DONE' },\n };\n }\n return getSignInResult({\n challengeName: retiredChallengeName,\n challengeParameters: retriedChallengeParameters,\n });\n }\n catch (error) {\n cleanActiveSignInState();\n assertServiceError(error);\n const result = getSignInResultFromError(error.name);\n if (result)\n return result;\n throw error;\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { assertTokenProviderConfig } from '@aws-amplify/core/internals/utils';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { getActiveSignInUsername, getNewDeviceMetatada, getSignInResult, getSignInResultFromError, handleCustomAuthFlowWithoutSRP, retryOnResourceNotFoundException, } from '../utils/signInHelpers';\nimport { cleanActiveSignInState, setActiveSignInState, } from '../utils/signInStore';\nimport { cacheCognitoTokens } from '../tokenProvider/cacheTokens';\nimport { tokenOrchestrator } from '../tokenProvider';\nimport { dispatchSignedInHubEvent } from '../utils/dispatchSignedInHubEvent';\n/**\n * Signs a user in using a custom authentication flow without password\n *\n * @param input - The SignInWithCustomAuthInput object\n * @returns AuthSignInResult\n * @throws service: {@link InitiateAuthException } - Cognito service errors thrown during the sign-in process.\n * @throws validation: {@link AuthValidationErrorCode } - Validation errors thrown when either username or password\n * are not defined.\n * @throws SignInWithCustomAuthOutput - Thrown when the token provider config is invalid.\n */\nexport async function signInWithCustomAuth(input) {\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const { username, password, options } = input;\n const signInDetails = {\n loginId: username,\n authFlowType: 'CUSTOM_WITHOUT_SRP',\n };\n const metadata = options?.clientMetadata;\n assertValidationError(!!username, AuthValidationErrorCode.EmptySignInUsername);\n assertValidationError(!password, AuthValidationErrorCode.CustomAuthSignInPassword);\n try {\n const { ChallengeName: retriedChallengeName, ChallengeParameters: retiredChallengeParameters, AuthenticationResult, Session, } = await retryOnResourceNotFoundException(handleCustomAuthFlowWithoutSRP, [username, metadata, authConfig, tokenOrchestrator], username, tokenOrchestrator);\n const activeUsername = getActiveSignInUsername(username);\n // sets up local state used during the sign-in process\n setActiveSignInState({\n signInSession: Session,\n username: activeUsername,\n challengeName: retriedChallengeName,\n signInDetails,\n });\n if (AuthenticationResult) {\n cleanActiveSignInState();\n await cacheCognitoTokens({\n username: activeUsername,\n ...AuthenticationResult,\n NewDeviceMetadata: await getNewDeviceMetatada(authConfig.userPoolId, AuthenticationResult.NewDeviceMetadata, AuthenticationResult.AccessToken),\n signInDetails,\n });\n await dispatchSignedInHubEvent();\n return {\n isSignedIn: true,\n nextStep: { signInStep: 'DONE' },\n };\n }\n return getSignInResult({\n challengeName: retriedChallengeName,\n challengeParameters: retiredChallengeParameters,\n });\n }\n catch (error) {\n cleanActiveSignInState();\n assertServiceError(error);\n const result = getSignInResultFromError(error.name);\n if (result)\n return result;\n throw error;\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Transforms a user attributes object into an array of AttributeType objects.\n * @param attributes user attributes to be mapped to AttributeType objects.\n * @returns an array of AttributeType objects.\n */\nexport function toAttributeType(attributes) {\n return Object.entries(attributes).map(([key, value]) => ({\n Name: key,\n Value: value,\n }));\n}\n/**\n * Transforms an array of AttributeType objects into a user attributes object.\n *\n * @param attributes - an array of AttributeType objects.\n * @returns AuthUserAttributes object.\n */\nexport function toAuthUserAttribute(attributes) {\n const userAttributes = {};\n attributes?.forEach(attribute => {\n if (attribute.Name)\n userAttributes[attribute.Name] = attribute.Value;\n });\n return userAttributes;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from '../../../errors/AuthError';\nimport { AUTO_SIGN_IN_EXCEPTION } from '../../../errors/constants';\nconst initialAutoSignIn = async () => {\n throw new AuthError({\n name: AUTO_SIGN_IN_EXCEPTION,\n message: 'The autoSignIn flow has not started, or has been cancelled/completed.',\n recoverySuggestion: 'Please try to use the signIn API or log out before starting a new autoSignIn flow.',\n });\n};\n/**\n * Signs a user in automatically after finishing the sign-up process.\n *\n * This API will automatically sign a user in if the autoSignIn flow has been completed in the following cases:\n * - User confirmed their account with a verification code sent to their phone or email (default option).\n * - User confirmed their account with a verification link sent to their phone or email. In order to\n * enable this option you need to go to the Amazon Cognito [console](https://aws.amazon.com/pm/cognito),\n * look for your userpool, then go to the `Messaging` tab and enable `link` mode inside the `Verification message` option.\n * Finally you need to define the `signUpVerificationMethod` in your `Auth` config.\n *\n * @example\n * ```typescript\n * Amplify.configure({\n * Auth: {\n * Cognito: {\n * ...cognitoConfig,\n * signUpVerificationMethod: \"link\" // the default value is \"code\"\n * }\n *\t}});\n * ```\n *\n * @throws AutoSignInException - Thrown when the autoSignIn flow has not started, or has been cancelled/completed.\n * @returns The signInOutput.\n *\n * @example\n * ```typescript\n * // handleSignUp.ts\n * async function handleSignUp(\n * username:string,\n * password:string\n * ){\n * try {\n * const { nextStep } = await signUp({\n * username,\n * password,\n * options: {\n * userAttributes:{ email:'email@email.com'},\n * autoSignIn: true // This enables the auto sign-in flow.\n * },\n * });\n *\n * handleSignUpStep(nextStep);\n *\n * } catch (error) {\n * console.log(error);\n * }\n * }\n *\n * // handleConfirmSignUp.ts\n * async function handleConfirmSignUp(username:string, confirmationCode:string) {\n * try {\n * const { nextStep } = await confirmSignUp({\n * username,\n * confirmationCode,\n * });\n *\n * handleSignUpStep(nextStep);\n * } catch (error) {\n * console.log(error);\n * }\n * }\n *\n * // signUpUtils.ts\n * async function handleSignUpStep( step: SignUpOutput[\"nextStep\"]) {\n * switch (step.signUpStep) {\n * case \"CONFIRM_SIGN_UP\":\n *\n * // Redirect end-user to confirm-sign up screen.\n *\n * case \"COMPLETE_AUTO_SIGN_IN\":\n *\t const codeDeliveryDetails = step.codeDeliveryDetails;\n * if (codeDeliveryDetails) {\n * // Redirect user to confirm-sign-up with link screen.\n * }\n * const signInOutput = await autoSignIn();\n * // handle sign-in steps\n * }\n *\n * ```\n */\n// TODO(Eslint): can this be refactored not using `let` on exported member?\n// eslint-disable-next-line import/no-mutable-exports\nexport let autoSignIn = initialAutoSignIn;\n/**\n * Sets the context of autoSignIn at run time.\n * @internal\n */\nexport function setAutoSignIn(callback) {\n autoSignIn = callback;\n}\n/**\n * Resets the context\n *\n * @internal\n */\nexport function resetAutoSignIn() {\n autoSignIn = initialAutoSignIn;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { HubInternal } from '@aws-amplify/core/internals/utils';\nimport { signIn } from '../apis/signIn';\nimport { AuthError } from '../../../errors/AuthError';\nimport { resetAutoSignIn, setAutoSignIn } from '../apis/autoSignIn';\nimport { AUTO_SIGN_IN_EXCEPTION } from '../../../errors/constants';\nconst MAX_AUTOSIGNIN_POLLING_MS = 3 * 60 * 1000;\nexport function handleCodeAutoSignIn(signInInput) {\n const stopHubListener = HubInternal.listen('auth-internal', async ({ payload }) => {\n switch (payload.event) {\n case 'confirmSignUp': {\n const response = payload.data;\n if (response?.isSignUpComplete) {\n HubInternal.dispatch('auth-internal', {\n event: 'autoSignIn',\n });\n setAutoSignIn(autoSignInWithCode(signInInput));\n stopHubListener();\n }\n }\n }\n });\n // This will stop the listener if confirmSignUp is not resolved.\n const timeOutId = setTimeout(() => {\n stopHubListener();\n setAutoSignInStarted(false);\n clearTimeout(timeOutId);\n resetAutoSignIn();\n }, MAX_AUTOSIGNIN_POLLING_MS);\n}\nfunction debounce(fun, delay) {\n let timer;\n return (args) => {\n if (!timer) {\n fun(...args);\n }\n clearTimeout(timer);\n timer = setTimeout(() => {\n timer = undefined;\n }, delay);\n };\n}\nfunction handleAutoSignInWithLink(signInInput, resolve, reject) {\n const start = Date.now();\n const autoSignInPollingIntervalId = setInterval(async () => {\n const elapsedTime = Date.now() - start;\n const maxTime = MAX_AUTOSIGNIN_POLLING_MS;\n if (elapsedTime > maxTime) {\n clearInterval(autoSignInPollingIntervalId);\n setAutoSignInStarted(false);\n reject(new AuthError({\n name: AUTO_SIGN_IN_EXCEPTION,\n message: 'The account was not confirmed on time.',\n recoverySuggestion: 'Try to verify your account by clicking the link sent your email or phone and then login manually.',\n }));\n resetAutoSignIn();\n }\n else {\n try {\n const signInOutput = await signIn(signInInput);\n if (signInOutput.nextStep.signInStep !== 'CONFIRM_SIGN_UP') {\n resolve(signInOutput);\n clearInterval(autoSignInPollingIntervalId);\n setAutoSignInStarted(false);\n resetAutoSignIn();\n }\n }\n catch (error) {\n clearInterval(autoSignInPollingIntervalId);\n setAutoSignInStarted(false);\n reject(error);\n resetAutoSignIn();\n }\n }\n }, 5000);\n}\nconst debouncedAutoSignInWithLink = debounce(handleAutoSignInWithLink, 300);\nconst debouncedAutoSignWithCodeOrUserConfirmed = debounce(handleAutoSignInWithCodeOrUserConfirmed, 300);\nlet autoSignInStarted = false;\nlet usernameUsedForAutoSignIn;\nexport function setUsernameUsedForAutoSignIn(username) {\n usernameUsedForAutoSignIn = username;\n}\nexport function isAutoSignInUserUsingConfirmSignUp(username) {\n return usernameUsedForAutoSignIn === username;\n}\nexport function isAutoSignInStarted() {\n return autoSignInStarted;\n}\nexport function setAutoSignInStarted(value) {\n if (value === false) {\n setUsernameUsedForAutoSignIn(undefined);\n }\n autoSignInStarted = value;\n}\nexport function isSignUpComplete(output) {\n return !!output.UserConfirmed;\n}\nexport function autoSignInWhenUserIsConfirmedWithLink(signInInput) {\n return async () => {\n return new Promise((resolve, reject) => {\n debouncedAutoSignInWithLink([signInInput, resolve, reject]);\n });\n };\n}\nasync function handleAutoSignInWithCodeOrUserConfirmed(signInInput, resolve, reject) {\n try {\n const output = await signIn(signInInput);\n resolve(output);\n resetAutoSignIn();\n }\n catch (error) {\n reject(error);\n resetAutoSignIn();\n }\n}\nfunction autoSignInWithCode(signInInput) {\n return async () => {\n return new Promise((resolve, reject) => {\n debouncedAutoSignWithCodeOrUserConfirmed([signInInput, resolve, reject]);\n });\n };\n}\nexport const autoSignInUserConfirmed = autoSignInWithCode;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { assertTokenProviderConfig } from '@aws-amplify/core/internals/utils';\nimport { cleanActiveSignInState, setActiveSignInState, signInStore, } from '../utils/signInStore';\nimport { AuthError } from '../../../errors/AuthError';\nimport { getNewDeviceMetatada, getSignInResult, getSignInResultFromError, handleChallengeName, } from '../utils/signInHelpers';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { AuthErrorCodes } from '../../../common/AuthErrorStrings';\nimport { cacheCognitoTokens } from '../tokenProvider/cacheTokens';\nimport { tokenOrchestrator } from '../tokenProvider';\nimport { dispatchSignedInHubEvent } from '../utils/dispatchSignedInHubEvent';\n/**\n * Continues or completes the sign in process when required by the initial call to `signIn`.\n *\n * @param input - The ConfirmSignInInput object\n * @returns ConfirmSignInOutput\n * @throws -{@link VerifySoftwareTokenException }:\n * Thrown due to an invalid MFA token.\n * @throws -{@link RespondToAuthChallengeException }:\n * Thrown due to an invalid auth challenge response.\n * @throws -{@link AssociateSoftwareTokenException}:\n * Thrown due to a service error during the MFA setup process.\n * @throws -{@link AuthValidationErrorCode }:\n * Thrown when `challengeResponse` is not defined.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function confirmSignIn(input) {\n const { challengeResponse, options } = input;\n const { username, challengeName, signInSession, signInDetails } = signInStore.getState();\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const clientMetaData = options?.clientMetadata;\n assertValidationError(!!challengeResponse, AuthValidationErrorCode.EmptyChallengeResponse);\n if (!username || !challengeName || !signInSession)\n // TODO: remove this error message for production apps\n throw new AuthError({\n name: AuthErrorCodes.SignInException,\n message: `\n\t\t\tAn error occurred during the sign in process. \n\t\t\t\n\t\t\tThis most likely occurred due to:\n\t\t\t1. signIn was not called before confirmSignIn.\n\t\t\t2. signIn threw an exception.\n\t\t\t3. page was refreshed during the sign in flow.\n\t\t\t`,\n recoverySuggestion: 'Make sure a successful call to signIn is made before calling confirmSignIn' +\n 'and that the page is not refreshed until the sign in process is done.',\n });\n try {\n const { Session, ChallengeName: handledChallengeName, AuthenticationResult, ChallengeParameters: handledChallengeParameters, } = await handleChallengeName(username, challengeName, signInSession, challengeResponse, authConfig, tokenOrchestrator, clientMetaData, options);\n // sets up local state used during the sign-in process\n setActiveSignInState({\n signInSession: Session,\n username,\n challengeName: handledChallengeName,\n signInDetails,\n });\n if (AuthenticationResult) {\n cleanActiveSignInState();\n await cacheCognitoTokens({\n username,\n ...AuthenticationResult,\n NewDeviceMetadata: await getNewDeviceMetatada(authConfig.userPoolId, AuthenticationResult.NewDeviceMetadata, AuthenticationResult.AccessToken),\n signInDetails,\n });\n await dispatchSignedInHubEvent();\n return {\n isSignedIn: true,\n nextStep: { signInStep: 'DONE' },\n };\n }\n return getSignInResult({\n challengeName: handledChallengeName,\n challengeParameters: handledChallengeParameters,\n });\n }\n catch (error) {\n assertServiceError(error);\n const result = getSignInResultFromError(error.name);\n if (result)\n return result;\n throw error;\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { AuthAction, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { forgotPassword } from '../utils/clients/CognitoIdentityProvider';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { getUserContextData } from '../utils/userContextData';\n/**\n * Resets a user's password.\n *\n * @param input - The ResetPasswordInput object.\n * @returns ResetPasswordOutput\n * @throws -{@link ForgotPasswordException }\n * Thrown due to an invalid confirmation code or password.\n * @throws -{@link AuthValidationErrorCode }\n * Thrown due to an empty username.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n **/\nexport async function resetPassword(input) {\n const { username } = input;\n assertValidationError(!!username, AuthValidationErrorCode.EmptyResetPasswordUsername);\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const { userPoolClientId, userPoolId } = authConfig;\n const clientMetadata = input.options?.clientMetadata;\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const res = await forgotPassword({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ResetPassword),\n }, {\n Username: username,\n ClientMetadata: clientMetadata,\n ClientId: authConfig.userPoolClientId,\n UserContextData,\n });\n const codeDeliveryDetails = res.CodeDeliveryDetails;\n return {\n isPasswordReset: false,\n nextStep: {\n resetPasswordStep: 'CONFIRM_RESET_PASSWORD_WITH_CODE',\n codeDeliveryDetails: {\n deliveryMedium: codeDeliveryDetails?.DeliveryMedium,\n destination: codeDeliveryDetails?.Destination,\n attributeName: codeDeliveryDetails?.AttributeName,\n },\n },\n };\n}\n","import { Amplify } from 'aws-amplify';\nimport { getCurrentUser, signIn, signUp, confirmSignIn, confirmSignUp, confirmResetPassword, resetPassword } from 'aws-amplify/auth';\nimport 'aws-amplify/utils';\nimport '@aws-amplify/core/internals/utils';\nimport '../../utils/setUserAgent/constants.mjs';\nimport '../../types/authenticator/user.mjs';\nimport '../../types/authenticator/attributes.mjs';\nimport { hasSpecialChars } from '../../helpers/authenticator/utils.mjs';\nimport '../../helpers/accountSettings/utils.mjs';\n\n// Cognito does not allow a password length less then 8 characters\nconst DEFAULT_COGNITO_PASSWORD_MIN_LENGTH = 8;\nconst isInvalidUserAtributes = (userAttributes) => Array.isArray(userAttributes);\nconst parseUserAttributes = (userAttributes) => {\n if (!userAttributes) {\n return undefined;\n }\n // `aws-amplify` versions <= 6.0.5 return an array of `userAttributes` rather than an object\n if (isInvalidUserAtributes(userAttributes)) {\n return Object.entries(userAttributes).map(([_, value]) => Object.keys(value)[0]);\n }\n return Object.keys(userAttributes);\n};\nconst defaultServices = {\n async getAmplifyConfig() {\n const result = Amplify.getConfig();\n const cliConfig = result.Auth?.Cognito;\n const { loginWith, userAttributes } = result.Auth?.Cognito ?? {};\n const parsedLoginMechanisms = loginWith\n ? Object.entries(loginWith)\n .filter(([key, _value]) => key !== 'oauth')\n .filter(([_key, value]) => !!value)\n .map((keyValueArray) => {\n return keyValueArray[0] === 'phone' // the key for phone_number is phone in getConfig but everywhere else we treat is as phone_number\n ? 'phone_number'\n : keyValueArray[0];\n })\n : undefined;\n const parsedSignupAttributes = parseUserAttributes(userAttributes);\n const parsedSocialProviders = loginWith?.oauth?.providers\n ? loginWith.oauth.providers?.map((provider) => provider.toString().toLowerCase())\n : undefined;\n return {\n ...cliConfig,\n loginMechanisms: parsedLoginMechanisms,\n signUpAttributes: parsedSignupAttributes,\n socialProviders: parsedSocialProviders,\n };\n },\n getCurrentUser,\n handleSignIn: signIn,\n handleSignUp: signUp,\n handleConfirmSignIn: confirmSignIn,\n handleConfirmSignUp: confirmSignUp,\n handleForgotPasswordSubmit: confirmResetPassword,\n handleForgotPassword: resetPassword,\n // Validation hooks for overriding\n async validateCustomSignUp(formData, touchData) { },\n async validateFormPassword(formData, touchData, passwordSettings) {\n const { password } = formData;\n const { password: touched_password } = touchData;\n /**\n * If the password is not touched,\n * or if the password settings are not set, we don't need to validate it.\n */\n if (!touched_password || !passwordSettings)\n return null;\n const password_complexity = [];\n const policyMinLength = passwordSettings.minLength ?? DEFAULT_COGNITO_PASSWORD_MIN_LENGTH;\n if (password.length < policyMinLength) {\n password_complexity.push(`Password must have at least ${policyMinLength} characters`);\n }\n if (passwordSettings.requireLowercase && !/[a-z]/.test(password))\n password_complexity.push('Password must have lower case letters');\n if (passwordSettings.requireUppercase && !/[A-Z]/.test(password))\n password_complexity.push('Password must have upper case letters');\n if (passwordSettings.requireNumbers && !/[0-9]/.test(password))\n password_complexity.push('Password must have numbers');\n // https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-policies.html\n if (passwordSettings.requireSpecialCharacters && !hasSpecialChars(password))\n password_complexity.push('Password must have special characters');\n /**\n * Only return an error if there is at least one error.\n */\n return password_complexity.length !== 0\n ? { password: password_complexity }\n : null;\n },\n async validateConfirmPassword(formData, touchData) {\n const { password, confirm_password } = formData;\n const { confirm_password: touched_confirm_password, password: touched_password, } = touchData;\n if (!password && !confirm_password) {\n // these inputs are clean, don't complain yet\n return null;\n }\n else if ((password || confirm_password) &&\n password !== confirm_password &&\n ((touched_confirm_password && touched_password) ||\n (password?.length >= 6 && confirm_password?.length >= 6))) {\n // Only return an error if both fields have text entered,\n // the passwords do not match, and the fields have been\n // touched or the password and confirm password is longer then or equal to 6.\n return {\n confirm_password: 'Your passwords must match',\n };\n }\n },\n async validatePreferredUsername(formData, touchData) { },\n};\n\nexport { defaultServices };\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { AuthAction, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { signUp as signUpClient } from '../utils/clients/CognitoIdentityProvider';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { toAttributeType } from '../utils/apiHelpers';\nimport { autoSignInUserConfirmed, autoSignInWhenUserIsConfirmedWithLink, handleCodeAutoSignIn, isAutoSignInStarted, isSignUpComplete, setAutoSignInStarted, setUsernameUsedForAutoSignIn, } from '../utils/signUpHelpers';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { setAutoSignIn } from './autoSignIn';\n/**\n * Creates a user\n *\n * @param input - The SignUpInput object\n * @returns SignUpOutput\n * @throws service: {@link SignUpException } - Cognito service errors thrown during the sign-up process.\n * @throws validation: {@link AuthValidationErrorCode } - Validation errors thrown either username or password\n * are not defined.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function signUp(input) {\n const { username, password, options } = input;\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n const signUpVerificationMethod = authConfig?.signUpVerificationMethod ?? 'code';\n const { clientMetadata, validationData, autoSignIn } = input.options ?? {};\n assertTokenProviderConfig(authConfig);\n assertValidationError(!!username, AuthValidationErrorCode.EmptySignUpUsername);\n assertValidationError(!!password, AuthValidationErrorCode.EmptySignUpPassword);\n const signInServiceOptions = typeof autoSignIn !== 'boolean' ? autoSignIn : undefined;\n const signInInput = {\n username,\n options: signInServiceOptions,\n };\n // if the authFlowType is 'CUSTOM_WITHOUT_SRP' then we don't include the password\n if (signInServiceOptions?.authFlowType !== 'CUSTOM_WITHOUT_SRP') {\n signInInput.password = password;\n }\n if (signInServiceOptions || autoSignIn === true) {\n setUsernameUsedForAutoSignIn(username);\n setAutoSignInStarted(true);\n }\n const clientOutput = await signUpClient({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SignUp),\n }, {\n Username: username,\n Password: password,\n UserAttributes: options?.userAttributes && toAttributeType(options?.userAttributes),\n ClientMetadata: clientMetadata,\n ValidationData: validationData && toAttributeType(validationData),\n ClientId: authConfig.userPoolClientId,\n });\n const { UserSub, CodeDeliveryDetails } = clientOutput;\n if (isSignUpComplete(clientOutput) && isAutoSignInStarted()) {\n setAutoSignIn(autoSignInUserConfirmed(signInInput));\n return {\n isSignUpComplete: true,\n nextStep: {\n signUpStep: 'COMPLETE_AUTO_SIGN_IN',\n },\n userId: UserSub,\n };\n }\n else if (isSignUpComplete(clientOutput) && !isAutoSignInStarted()) {\n return {\n isSignUpComplete: true,\n nextStep: {\n signUpStep: 'DONE',\n },\n userId: UserSub,\n };\n }\n else if (!isSignUpComplete(clientOutput) &&\n isAutoSignInStarted() &&\n signUpVerificationMethod === 'code') {\n handleCodeAutoSignIn(signInInput);\n }\n else if (!isSignUpComplete(clientOutput) &&\n isAutoSignInStarted() &&\n signUpVerificationMethod === 'link') {\n setAutoSignIn(autoSignInWhenUserIsConfirmedWithLink(signInInput));\n return {\n isSignUpComplete: false,\n nextStep: {\n signUpStep: 'COMPLETE_AUTO_SIGN_IN',\n codeDeliveryDetails: {\n deliveryMedium: CodeDeliveryDetails?.DeliveryMedium,\n destination: CodeDeliveryDetails?.Destination,\n attributeName: CodeDeliveryDetails?.AttributeName,\n },\n },\n userId: UserSub,\n };\n }\n return {\n isSignUpComplete: false,\n nextStep: {\n signUpStep: 'CONFIRM_SIGN_UP',\n codeDeliveryDetails: {\n deliveryMedium: CodeDeliveryDetails?.DeliveryMedium,\n destination: CodeDeliveryDetails?.Destination,\n attributeName: CodeDeliveryDetails?.AttributeName,\n },\n },\n userId: UserSub,\n };\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { AuthAction, HubInternal, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { confirmSignUp as confirmSignUpClient } from '../utils/clients/CognitoIdentityProvider';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { isAutoSignInStarted, isAutoSignInUserUsingConfirmSignUp, setAutoSignInStarted, } from '../utils/signUpHelpers';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { getUserContextData } from '../utils/userContextData';\n/**\n * Confirms a new user account.\n *\n * @param input - The ConfirmSignUpInput object.\n * @returns ConfirmSignUpOutput\n * @throws -{@link ConfirmSignUpException }\n * Thrown due to an invalid confirmation code.\n * @throws -{@link AuthValidationErrorCode }\n * Thrown due to an empty confirmation code\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function confirmSignUp(input) {\n const { username, confirmationCode, options } = input;\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const { userPoolId, userPoolClientId } = authConfig;\n const clientMetadata = options?.clientMetadata;\n assertValidationError(!!username, AuthValidationErrorCode.EmptyConfirmSignUpUsername);\n assertValidationError(!!confirmationCode, AuthValidationErrorCode.EmptyConfirmSignUpCode);\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n await confirmSignUpClient({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignUp),\n }, {\n Username: username,\n ConfirmationCode: confirmationCode,\n ClientMetadata: clientMetadata,\n ForceAliasCreation: options?.forceAliasCreation,\n ClientId: authConfig.userPoolClientId,\n UserContextData,\n });\n return new Promise((resolve, reject) => {\n try {\n const signUpOut = {\n isSignUpComplete: true,\n nextStep: {\n signUpStep: 'DONE',\n },\n };\n if (!isAutoSignInStarted() ||\n !isAutoSignInUserUsingConfirmSignUp(username)) {\n resolve(signUpOut);\n return;\n }\n const stopListener = HubInternal.listen('auth-internal', ({ payload }) => {\n switch (payload.event) {\n case 'autoSignIn':\n resolve({\n isSignUpComplete: true,\n nextStep: {\n signUpStep: 'COMPLETE_AUTO_SIGN_IN',\n },\n });\n setAutoSignInStarted(false);\n stopListener();\n }\n });\n HubInternal.dispatch('auth-internal', {\n event: 'confirmSignUp',\n data: signUpOut,\n });\n }\n catch (error) {\n reject(error);\n }\n });\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { AuthAction, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { confirmForgotPassword } from '../utils/clients/CognitoIdentityProvider';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { getUserContextData } from '../utils/userContextData';\n/**\n * Confirms the new password and verification code to reset the password.\n *\n * @param input - The ConfirmResetPasswordInput object.\n * @throws -{@link ConfirmForgotPasswordException }\n * Thrown due to an invalid confirmation code or password.\n * @throws -{@link AuthValidationErrorCode }\n * Thrown due to an empty confirmation code, password or username.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function confirmResetPassword(input) {\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const { userPoolClientId, userPoolId } = authConfig;\n const { username, newPassword } = input;\n assertValidationError(!!username, AuthValidationErrorCode.EmptyConfirmResetPasswordUsername);\n assertValidationError(!!newPassword, AuthValidationErrorCode.EmptyConfirmResetPasswordNewPassword);\n const code = input.confirmationCode;\n assertValidationError(!!code, AuthValidationErrorCode.EmptyConfirmResetPasswordConfirmationCode);\n const metadata = input.options?.clientMetadata;\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n await confirmForgotPassword({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmResetPassword),\n }, {\n Username: username,\n ConfirmationCode: code,\n Password: newPassword,\n ClientMetadata: metadata,\n ClientId: authConfig.userPoolClientId,\n UserContextData,\n });\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthAction, assertTokenProviderConfig, fetchAuthSession, } from '@aws-amplify/core/internals/utils';\nimport { getUser } from '../../utils/clients/CognitoIdentityProvider';\nimport { getRegion } from '../../utils/clients/CognitoIdentityProvider/utils';\nimport { assertAuthTokens } from '../../utils/types';\nimport { toAuthUserAttribute } from '../../utils/apiHelpers';\nimport { getAuthUserAgentValue } from '../../../../utils';\nexport const fetchUserAttributes = async (amplify) => {\n const authConfig = amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const { tokens } = await fetchAuthSession(amplify, {\n forceRefresh: false,\n });\n assertAuthTokens(tokens);\n const { UserAttributes } = await getUser({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.FetchUserAttributes),\n }, {\n AccessToken: tokens.accessToken.toString(),\n });\n return toAuthUserAttribute(UserAttributes);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { fetchUserAttributes as fetchUserAttributesInternal } from './internal/fetchUserAttributes';\n/**\n * Fetches the current user attributes while authenticated.\n *\n * @throws - {@link GetUserException} - Cognito service errors thrown when the service is not able to get the user.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport const fetchUserAttributes = () => {\n return fetchUserAttributesInternal(Amplify);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { AuthAction, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { resendConfirmationCode } from '../utils/clients/CognitoIdentityProvider';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { getUserContextData } from '../utils/userContextData';\n/**\n * Resend the confirmation code while signing up\n *\n * @param input - The ResendSignUpCodeInput object\n * @returns ResendSignUpCodeOutput\n * @throws service: {@link ResendConfirmationException } - Cognito service errors thrown when resending the code.\n * @throws validation: {@link AuthValidationErrorCode } - Validation errors thrown either username are not defined.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function resendSignUpCode(input) {\n const { username } = input;\n assertValidationError(!!username, AuthValidationErrorCode.EmptySignUpUsername);\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const { userPoolClientId, userPoolId } = authConfig;\n const clientMetadata = input.options?.clientMetadata;\n const UserContextData = getUserContextData({\n username,\n userPoolId,\n userPoolClientId,\n });\n const { CodeDeliveryDetails } = await resendConfirmationCode({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ResendSignUpCode),\n }, {\n Username: username,\n ClientMetadata: clientMetadata,\n ClientId: authConfig.userPoolClientId,\n UserContextData,\n });\n const { DeliveryMedium, AttributeName, Destination } = {\n ...CodeDeliveryDetails,\n };\n return {\n destination: Destination,\n deliveryMedium: DeliveryMedium,\n attributeName: AttributeName\n ? AttributeName\n : undefined,\n };\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// TODO: delete this module when the Auth class is removed.\nimport { ConsoleLogger } from '@aws-amplify/core';\nimport { AuthErrorStrings } from './common/AuthErrorStrings';\nconst logger = new ConsoleLogger('AuthError');\nexport class AuthError extends Error {\n constructor(type) {\n const { message, log } = authErrorMessages[type];\n super(message);\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = AuthError;\n Object.setPrototypeOf(this, AuthError.prototype);\n this.name = 'AuthError';\n this.log = log || message;\n logger.error(this.log);\n }\n}\nexport class NoUserPoolError extends AuthError {\n constructor(type) {\n super(type);\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = NoUserPoolError;\n Object.setPrototypeOf(this, NoUserPoolError.prototype);\n this.name = 'NoUserPoolError';\n }\n}\nexport const authErrorMessages = {\n oauthSignInError: {\n message: AuthErrorStrings.OAUTH_ERROR,\n log: 'Make sure Cognito Hosted UI has been configured correctly',\n },\n noConfig: {\n message: AuthErrorStrings.DEFAULT_MSG,\n log: `\n Error: Amplify has not been configured correctly.\n This error is typically caused by one of the following scenarios:\n\n 1. Make sure you're passing the awsconfig object to Amplify.configure() in your app's entry point\n See https://aws-amplify.github.io/docs/js/authentication#configure-your-app for more information\n \n 2. There might be multiple conflicting versions of amplify packages in your node_modules.\n\t\t\t\tRefer to our docs site for help upgrading Amplify packages (https://docs.amplify.aws/lib/troubleshooting/upgrading/q/platform/js)\n `,\n },\n missingAuthConfig: {\n message: AuthErrorStrings.DEFAULT_MSG,\n log: `\n Error: Amplify has not been configured correctly. \n The configuration object is missing required auth properties.\n This error is typically caused by one of the following scenarios:\n\n 1. Did you run \\`amplify push\\` after adding auth via \\`amplify add auth\\`?\n See https://aws-amplify.github.io/docs/js/authentication#amplify-project-setup for more information\n\n 2. This could also be caused by multiple conflicting versions of amplify packages, see (https://docs.amplify.aws/lib/troubleshooting/upgrading/q/platform/js) for help upgrading Amplify packages.\n `,\n },\n emptyUsername: {\n message: AuthErrorStrings.EMPTY_USERNAME,\n },\n // TODO: should include a list of valid sign-in types\n invalidUsername: {\n message: AuthErrorStrings.INVALID_USERNAME,\n },\n emptyPassword: {\n message: AuthErrorStrings.EMPTY_PASSWORD,\n },\n emptyCode: {\n message: AuthErrorStrings.EMPTY_CODE,\n },\n signUpError: {\n message: AuthErrorStrings.SIGN_UP_ERROR,\n log: 'The first parameter should either be non-null string or object',\n },\n noMFA: {\n message: AuthErrorStrings.NO_MFA,\n },\n invalidMFA: {\n message: AuthErrorStrings.INVALID_MFA,\n },\n emptyChallengeResponse: {\n message: AuthErrorStrings.EMPTY_CHALLENGE,\n },\n noUserSession: {\n message: AuthErrorStrings.NO_USER_SESSION,\n },\n deviceConfig: {\n message: AuthErrorStrings.DEVICE_CONFIG,\n },\n networkError: {\n message: AuthErrorStrings.NETWORK_ERROR,\n },\n autoSignInError: {\n message: AuthErrorStrings.AUTOSIGNIN_ERROR,\n },\n default: {\n message: AuthErrorStrings.DEFAULT_MSG,\n },\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { authErrorMessages } from '../../../../Errors';\nimport { AuthErrorCodes } from '../../../../common/AuthErrorStrings';\nimport { AuthError } from '../../../../errors/AuthError';\nexport const createOAuthError = (message, recoverySuggestion) => new AuthError({\n message: message ?? 'An error has occurred during the oauth process.',\n name: AuthErrorCodes.OAuthSignInError,\n recoverySuggestion: recoverySuggestion ?? authErrorMessages.oauthSignInError.log,\n});\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var AuthErrorTypes;\n(function (AuthErrorTypes) {\n AuthErrorTypes[\"NoConfig\"] = \"noConfig\";\n AuthErrorTypes[\"MissingAuthConfig\"] = \"missingAuthConfig\";\n AuthErrorTypes[\"EmptyUsername\"] = \"emptyUsername\";\n AuthErrorTypes[\"InvalidUsername\"] = \"invalidUsername\";\n AuthErrorTypes[\"EmptyPassword\"] = \"emptyPassword\";\n AuthErrorTypes[\"EmptyCode\"] = \"emptyCode\";\n AuthErrorTypes[\"SignUpError\"] = \"signUpError\";\n AuthErrorTypes[\"NoMFA\"] = \"noMFA\";\n AuthErrorTypes[\"InvalidMFA\"] = \"invalidMFA\";\n AuthErrorTypes[\"EmptyChallengeResponse\"] = \"emptyChallengeResponse\";\n AuthErrorTypes[\"NoUserSession\"] = \"noUserSession\";\n AuthErrorTypes[\"Default\"] = \"default\";\n AuthErrorTypes[\"DeviceConfig\"] = \"deviceConfig\";\n AuthErrorTypes[\"NetworkError\"] = \"networkError\";\n AuthErrorTypes[\"AutoSignInError\"] = \"autoSignInError\";\n AuthErrorTypes[\"OAuthSignInError\"] = \"oauthSignInError\";\n})(AuthErrorTypes || (AuthErrorTypes = {}));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from '../../../../errors/AuthError';\nimport { AuthErrorTypes } from '../../../../types/Auth';\nimport { oAuthStore } from './oAuthStore';\nexport const flowCancelledMessage = '`signInWithRedirect` has been canceled.';\nexport const validationFailedMessage = 'An error occurred while validating the state.';\nexport const validationRecoverySuggestion = 'Try to initiate an OAuth flow from Amplify';\nexport const validateState = async (state) => {\n const savedState = await oAuthStore.loadOAuthState();\n // This is because savedState only exists if the flow was initiated by Amplify\n const validatedState = state === savedState ? savedState : undefined;\n if (!validatedState) {\n throw new AuthError({\n name: AuthErrorTypes.OAuthSignInError,\n message: state === null ? flowCancelledMessage : validationFailedMessage,\n recoverySuggestion: state === null ? undefined : validationRecoverySuggestion,\n });\n }\n return validatedState;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AMPLIFY_SYMBOL, AmplifyUrl, USER_AGENT_HEADER, urlSafeDecode, } from '@aws-amplify/core/internals/utils';\nimport { Hub, decodeJWT } from '@aws-amplify/core';\nimport { cacheCognitoTokens } from '../../tokenProvider/cacheTokens';\nimport { dispatchSignedInHubEvent } from '../dispatchSignedInHubEvent';\nimport { createOAuthError } from './createOAuthError';\nimport { resolveAndClearInflightPromises } from './inflightPromise';\nimport { validateState } from './validateState';\nimport { oAuthStore } from './oAuthStore';\nexport const completeOAuthFlow = async ({ currentUrl, userAgentValue, clientId, redirectUri, responseType, domain, preferPrivateSession, }) => {\n const urlParams = new AmplifyUrl(currentUrl);\n const error = urlParams.searchParams.get('error');\n const errorMessage = urlParams.searchParams.get('error_description');\n if (error) {\n throw createOAuthError(errorMessage ?? error);\n }\n if (responseType === 'code') {\n return handleCodeFlow({\n currentUrl,\n userAgentValue,\n clientId,\n redirectUri,\n domain,\n preferPrivateSession,\n });\n }\n return handleImplicitFlow({\n currentUrl,\n redirectUri,\n preferPrivateSession,\n });\n};\nconst handleCodeFlow = async ({ currentUrl, userAgentValue, clientId, redirectUri, domain, preferPrivateSession, }) => {\n /* Convert URL into an object with parameters as keys\n{ redirect_uri: 'http://localhost:3000/', response_type: 'code', ...} */\n const url = new AmplifyUrl(currentUrl);\n const code = url.searchParams.get('code');\n const state = url.searchParams.get('state');\n // if `code` or `state` is not presented in the redirect url, most likely\n // that the end user cancelled the inflight oauth flow by:\n // 1. clicking the back button of browser\n // 2. closing the provider hosted UI page and coming back to the app\n if (!code || !state) {\n throw createOAuthError('User cancelled OAuth flow.');\n }\n // may throw error is being caught in attemptCompleteOAuthFlow.ts\n const validatedState = await validateState(state);\n const oAuthTokenEndpoint = 'https://' + domain + '/oauth2/token';\n // TODO(v6): check hub events\n // dispatchAuthEvent(\n // \t'codeFlow',\n // \t{},\n // \t`Retrieving tokens from ${oAuthTokenEndpoint}`\n // );\n const codeVerifier = await oAuthStore.loadPKCE();\n const oAuthTokenBody = {\n grant_type: 'authorization_code',\n code,\n client_id: clientId,\n redirect_uri: redirectUri,\n ...(codeVerifier ? { code_verifier: codeVerifier } : {}),\n };\n const body = Object.entries(oAuthTokenBody)\n .map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`)\n .join('&');\n const { access_token, refresh_token: refreshToken, id_token, error, error_message: errorMessage, token_type, expires_in, } = await (await fetch(oAuthTokenEndpoint, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n [USER_AGENT_HEADER]: userAgentValue,\n },\n body,\n })).json();\n if (error) {\n // error is being caught in attemptCompleteOAuthFlow.ts\n throw createOAuthError(errorMessage ?? error);\n }\n const username = (access_token && decodeJWT(access_token).payload.username) ?? 'username';\n await cacheCognitoTokens({\n username,\n AccessToken: access_token,\n IdToken: id_token,\n RefreshToken: refreshToken,\n TokenType: token_type,\n ExpiresIn: expires_in,\n });\n return completeFlow({\n redirectUri,\n state: validatedState,\n preferPrivateSession,\n });\n};\nconst handleImplicitFlow = async ({ currentUrl, redirectUri, preferPrivateSession, }) => {\n // hash is `null` if `#` doesn't exist on URL\n const url = new AmplifyUrl(currentUrl);\n const { id_token, access_token, state, token_type, expires_in, error_description, error, } = (url.hash ?? '#')\n .substring(1) // Remove # from returned code\n .split('&')\n .map(pairings => pairings.split('='))\n .reduce((accum, [k, v]) => ({ ...accum, [k]: v }), {\n id_token: undefined,\n access_token: undefined,\n state: undefined,\n token_type: undefined,\n expires_in: undefined,\n error_description: undefined,\n error: undefined,\n });\n if (error) {\n throw createOAuthError(error_description ?? error);\n }\n if (!access_token) {\n // error is being caught in attemptCompleteOAuthFlow.ts\n throw createOAuthError('No access token returned from OAuth flow.');\n }\n const validatedState = await validateState(state);\n const username = (access_token && decodeJWT(access_token).payload.username) ?? 'username';\n await cacheCognitoTokens({\n username,\n AccessToken: access_token,\n IdToken: id_token,\n TokenType: token_type,\n ExpiresIn: expires_in,\n });\n return completeFlow({\n redirectUri,\n state: validatedState,\n preferPrivateSession,\n });\n};\nconst completeFlow = async ({ redirectUri, state, preferPrivateSession, }) => {\n await oAuthStore.clearOAuthData();\n await oAuthStore.storeOAuthSignIn(true, preferPrivateSession);\n // this should be called before any call that involves `fetchAuthSession`\n // e.g. `getCurrentUser()` below, so it allows every inflight async calls to\n // `fetchAuthSession` can be resolved\n resolveAndClearInflightPromises();\n if (isCustomState(state)) {\n Hub.dispatch('auth', {\n event: 'customOAuthState',\n data: urlSafeDecode(getCustomState(state)),\n }, 'Auth', AMPLIFY_SYMBOL);\n }\n Hub.dispatch('auth', { event: 'signInWithRedirect' }, 'Auth', AMPLIFY_SYMBOL);\n await dispatchSignedInHubEvent();\n clearHistory(redirectUri);\n};\nconst isCustomState = (state) => {\n return /-/.test(state);\n};\nconst getCustomState = (state) => {\n return state.split('-').splice(1).join('-');\n};\nconst clearHistory = (redirectUri) => {\n if (typeof window !== 'undefined' && typeof window.history !== 'undefined') {\n window.history.replaceState(window.history.state, '', redirectUri);\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function urlSafeDecode(hex) {\n const matchArr = hex.match(/.{2}/g) || [];\n return matchArr.map(char => String.fromCharCode(parseInt(char, 16))).join('');\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { invalidOriginException, invalidRedirectException, } from '../../../../errors/constants';\n/** @internal */\nexport function getRedirectUrl(redirects) {\n const redirectUrlFromTheSameOrigin = redirects?.find(isSameOriginAndPathName) ??\n redirects?.find(isTheSameDomain);\n const redirectUrlFromDifferentOrigin = redirects?.find(isHttps) ?? redirects?.find(isHttp);\n if (redirectUrlFromTheSameOrigin) {\n return redirectUrlFromTheSameOrigin;\n }\n else if (redirectUrlFromDifferentOrigin) {\n throw invalidOriginException;\n }\n throw invalidRedirectException;\n}\n// origin + pathname => https://example.com/app\nconst isSameOriginAndPathName = (redirect) => redirect.startsWith(String(window.location.origin + window.location.pathname ?? '/'));\n// domain => outlook.live.com, github.com\nconst isTheSameDomain = (redirect) => redirect.includes(String(window.location.hostname));\nconst isHttp = (redirect) => redirect.startsWith('http://');\nconst isHttps = (redirect) => redirect.startsWith('https://');\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Hub } from '@aws-amplify/core';\nimport { AMPLIFY_SYMBOL } from '@aws-amplify/core/internals/utils';\nimport { oAuthStore } from './oAuthStore';\nimport { resolveAndClearInflightPromises } from './inflightPromise';\nexport const handleFailure = async (error) => {\n resolveAndClearInflightPromises();\n await oAuthStore.clearOAuthInflightData();\n Hub.dispatch('auth', { event: 'signInWithRedirect_failure', data: { error } }, 'Auth', AMPLIFY_SYMBOL);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthAction, assertOAuthConfig, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { getAuthUserAgentValue } from '../../../../utils';\nimport { oAuthStore } from './oAuthStore';\nimport { completeOAuthFlow } from './completeOAuthFlow';\nimport { getRedirectUrl } from './getRedirectUrl';\nimport { handleFailure } from './handleFailure';\nexport const attemptCompleteOAuthFlow = async (authConfig) => {\n try {\n assertTokenProviderConfig(authConfig);\n assertOAuthConfig(authConfig);\n oAuthStore.setAuthConfig(authConfig);\n }\n catch (_) {\n // no-op\n // This should not happen as Amplify singleton checks the oauth config key\n // unless the oauth config object doesn't contain required properties\n return;\n }\n // No inflight OAuth\n if (!(await oAuthStore.loadOAuthInFlight())) {\n return;\n }\n try {\n const currentUrl = window.location.href;\n const { loginWith, userPoolClientId } = authConfig;\n const { domain, redirectSignIn, responseType } = loginWith.oauth;\n const redirectUri = getRedirectUrl(redirectSignIn);\n await completeOAuthFlow({\n currentUrl,\n clientId: userPoolClientId,\n domain,\n redirectUri,\n responseType,\n userAgentValue: getAuthUserAgentValue(AuthAction.SignInWithRedirect),\n });\n }\n catch (err) {\n await handleFailure(err);\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { ADD_OAUTH_LISTENER, isBrowser, } from '@aws-amplify/core/internals/utils';\nimport { attemptCompleteOAuthFlow } from './attemptCompleteOAuthFlow';\n// attach the side effect for handling the completion of an inflight oauth flow\n// this side effect works only on Web\nisBrowser() &&\n (() => {\n // add the listener to the singleton for triggering\n Amplify[ADD_OAUTH_LISTENER](attemptCompleteOAuthFlow);\n })();\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const cognitoHostedUIIdentityProviderMap = {\n Google: 'Google',\n Facebook: 'Facebook',\n Amazon: 'LoginWithAmazon',\n Apple: 'SignInWithApple',\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const openAuthSession = async (url) => {\n if (!window?.location) {\n return;\n }\n // enforce HTTPS\n window.location.href = url.replace('http://', 'https://');\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Sha256 } from '@aws-crypto/sha256-js';\nimport { base64Encoder, getCrypto } from '@aws-amplify/core/internals/utils';\nconst CODE_VERIFIER_CHARSET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n/**\n *\n * @param length Desired length of the code verifier.\n *\n * **NOTE:** According to the [RFC 7636](https://datatracker.ietf.org/doc/html/rfc7636#section-4.1)\n * A code verifier must be with a length >= 43 and <= 128.\n *\n * @returns An object that contains the generated `codeVerifier` and a method\n * `toCodeChallenge` to generate the code challenge from the `codeVerifier`\n * following the spec of [RFC 7636](https://datatracker.ietf.org/doc/html/rfc7636#section-4.2).\n */\nexport const generateCodeVerifier = (length) => {\n const randomBytes = new Uint8Array(length);\n getCrypto().getRandomValues(randomBytes);\n let value = '';\n let codeChallenge;\n for (const byte of randomBytes) {\n value += CODE_VERIFIER_CHARSET.charAt(byte % CODE_VERIFIER_CHARSET.length);\n }\n return {\n value,\n method: 'S256',\n toCodeChallenge() {\n if (codeChallenge) {\n return codeChallenge;\n }\n codeChallenge = generateCodeChallenge(value);\n return codeChallenge;\n },\n };\n};\nfunction generateCodeChallenge(codeVerifier) {\n const awsCryptoHash = new Sha256();\n awsCryptoHash.update(codeVerifier);\n const codeChallenge = removePaddingChar(base64Encoder.convert(awsCryptoHash.digestSync(), { urlSafe: true }));\n return codeChallenge;\n}\nfunction removePaddingChar(base64Encoded) {\n return base64Encoded.replace(/=/g, '');\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const generateRandomString = (length) => {\n const STATE_CHARSET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n let result = '';\n for (let i = 0; i < length; i++) {\n result += STATE_CHARSET.charAt(Math.floor(Math.random() * STATE_CHARSET.length));\n }\n return result;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { generateRandomString } from '@aws-amplify/core/internals/utils';\nexport const generateState = () => {\n return generateRandomString(32);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { AuthAction, assertOAuthConfig, assertTokenProviderConfig, isBrowser, urlSafeEncode, } from '@aws-amplify/core/internals/utils';\nimport '../utils/oauth/enableOAuthListener';\nimport { cognitoHostedUIIdentityProviderMap } from '../types/models';\nimport { getAuthUserAgentValue, openAuthSession } from '../../../utils';\nimport { assertUserNotAuthenticated } from '../utils/signInHelpers';\nimport { completeOAuthFlow, generateCodeVerifier, generateState, getRedirectUrl, handleFailure, oAuthStore, } from '../utils/oauth';\nimport { createOAuthError } from '../utils/oauth/createOAuthError';\nimport { listenForOAuthFlowCancellation } from '../utils/oauth/cancelOAuthFlow';\n/**\n * Signs in a user with OAuth. Redirects the application to an Identity Provider.\n *\n * @param input - The SignInWithRedirectInput object, if empty it will redirect to Cognito HostedUI\n *\n * @throws AuthTokenConfigException - Thrown when the user pool config is invalid.\n * @throws OAuthNotConfigureException - Thrown when the oauth config is invalid.\n */\nexport async function signInWithRedirect(input) {\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n assertOAuthConfig(authConfig);\n oAuthStore.setAuthConfig(authConfig);\n await assertUserNotAuthenticated();\n let provider = 'COGNITO'; // Default\n if (typeof input?.provider === 'string') {\n provider = cognitoHostedUIIdentityProviderMap[input.provider];\n }\n else if (input?.provider?.custom) {\n provider = input.provider.custom;\n }\n return oauthSignIn({\n oauthConfig: authConfig.loginWith.oauth,\n clientId: authConfig.userPoolClientId,\n provider,\n customState: input?.customState,\n preferPrivateSession: input?.options?.preferPrivateSession,\n });\n}\nconst oauthSignIn = async ({ oauthConfig, provider, clientId, customState, preferPrivateSession, }) => {\n const { domain, redirectSignIn, responseType, scopes } = oauthConfig;\n const randomState = generateState();\n /* encodeURIComponent is not URL safe, use urlSafeEncode instead. Cognito\n single-encodes/decodes url on first sign in and double-encodes/decodes url\n when user already signed in. Using encodeURIComponent, Base32, Base64 add\n characters % or = which on further encoding becomes unsafe. '=' create issue\n for parsing query params.\n Refer: https://github.com/aws-amplify/amplify-js/issues/5218 */\n const state = customState\n ? `${randomState}-${urlSafeEncode(customState)}`\n : randomState;\n const { value, method, toCodeChallenge } = generateCodeVerifier(128);\n const redirectUri = getRedirectUrl(oauthConfig.redirectSignIn);\n if (isBrowser())\n oAuthStore.storeOAuthInFlight(true);\n oAuthStore.storeOAuthState(state);\n oAuthStore.storePKCE(value);\n const queryString = Object.entries({\n redirect_uri: redirectUri,\n response_type: responseType,\n client_id: clientId,\n identity_provider: provider,\n scope: scopes.join(' '),\n state,\n ...(responseType === 'code' && {\n code_challenge: toCodeChallenge(),\n code_challenge_method: method,\n }),\n })\n .map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`)\n .join('&');\n // TODO(v6): use URL object instead\n const oAuthUrl = `https://${domain}/oauth2/authorize?${queryString}`;\n // this will only take effect in the following scenarios:\n // 1. the user cancels the OAuth flow on web via back button, and\n // 2. when bfcache is enabled\n listenForOAuthFlowCancellation(oAuthStore);\n // the following is effective only in react-native as openAuthSession resolves only in react-native\n const { type, error, url } = (await openAuthSession(oAuthUrl, redirectSignIn, preferPrivateSession)) ??\n {};\n try {\n if (type === 'error') {\n throw createOAuthError(String(error));\n }\n if (type === 'success' && url) {\n await completeOAuthFlow({\n currentUrl: url,\n clientId,\n domain,\n redirectUri,\n responseType,\n userAgentValue: getAuthUserAgentValue(AuthAction.SignInWithRedirect),\n preferPrivateSession,\n });\n }\n }\n catch (err) {\n await handleFailure(err);\n // rethrow the error so it can be caught by `await signInWithRedirect()` in react-native\n throw err;\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function urlSafeEncode(str) {\n return str\n .split('')\n .map(char => char.charCodeAt(0).toString(16).padStart(2, '0'))\n .join('');\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { createOAuthError } from './createOAuthError';\nimport { handleFailure } from './handleFailure';\nexport const listenForOAuthFlowCancellation = (store) => {\n async function handleCancelOAuthFlow(event) {\n const isBfcache = event.persisted;\n if (isBfcache && (await store.loadOAuthInFlight())) {\n const error = createOAuthError('User cancelled OAuth flow.');\n await handleFailure(error);\n }\n window.removeEventListener('pageshow', handleCancelOAuthFlow);\n }\n window.addEventListener('pageshow', handleCancelOAuthFlow);\n};\n","const getFederatedSignInState = (target) => ({\n entry: ['sendUpdate', 'clearError'],\n invoke: {\n src: 'signInWithRedirect',\n onDone: { target },\n onError: { actions: 'setRemoteError', target },\n },\n});\n\nexport { getFederatedSignInState };\n","import { createMachine, sendUpdate } from 'xstate';\nimport { fetchUserAttributes, resetPassword, resendSignUpCode, confirmSignIn, signInWithRedirect } from 'aws-amplify/auth';\nimport { runValidators } from '../../../validators/index.mjs';\nimport ACTIONS from '../actions.mjs';\nimport { defaultServices } from '../defaultServices.mjs';\nimport GUARDS from '../guards.mjs';\nimport { getFederatedSignInState } from './utils.mjs';\n\nconst handleSignInResponse = {\n onDone: [\n {\n cond: 'hasCompletedSignIn',\n actions: 'setNextSignInStep',\n target: '#signInActor.fetchUserAttributes',\n },\n {\n cond: 'shouldConfirmSignInWithNewPassword',\n actions: ['setMissingAttributes', 'setNextSignInStep'],\n target: '#signInActor.forceChangePassword',\n },\n {\n cond: 'shouldResetPasswordFromSignIn',\n actions: 'setNextSignInStep',\n target: '#signInActor.resetPassword',\n },\n {\n cond: 'shouldConfirmSignUpFromSignIn',\n actions: 'setNextSignInStep',\n target: '#signInActor.resendSignUpCode',\n },\n {\n actions: [\n 'setChallengeName',\n 'setMissingAttributes',\n 'setNextSignInStep',\n 'setTotpSecretCode',\n ],\n target: '#signInActor.init',\n },\n ],\n onError: { actions: 'setRemoteError', target: 'edit' },\n};\nconst handleFetchUserAttributesResponse = {\n onDone: [\n {\n cond: 'shouldVerifyAttribute',\n actions: [\n 'setShouldVerifyUserAttributeStep',\n 'setUnverifiedUserAttributes',\n ],\n target: '#signInActor.resolved',\n },\n {\n actions: 'setConfirmAttributeCompleteStep',\n target: '#signInActor.resolved',\n },\n ],\n onError: {\n actions: 'setConfirmAttributeCompleteStep',\n target: '#signInActor.resolved',\n },\n};\nfunction signInActor({ services }) {\n return createMachine({\n id: 'signInActor',\n initial: 'init',\n predictableActionArguments: true,\n states: {\n init: {\n always: [\n {\n cond: 'shouldConfirmSignIn',\n target: 'confirmSignIn',\n },\n {\n cond: 'shouldSetupTotp',\n target: 'setupTotp',\n },\n {\n cond: ({ step }) => step === 'CONFIRM_SIGN_IN_WITH_NEW_PASSWORD_REQUIRED',\n actions: 'setActorDoneData',\n target: 'forceChangePassword',\n },\n { target: 'signIn' },\n ],\n },\n federatedSignIn: getFederatedSignInState('signIn'),\n fetchUserAttributes: {\n invoke: {\n src: 'fetchUserAttributes',\n ...handleFetchUserAttributesResponse,\n },\n },\n resendSignUpCode: {\n invoke: {\n src: 'handleResendSignUpCode',\n onDone: {\n actions: 'setCodeDeliveryDetails',\n target: '#signInActor.resolved',\n },\n onError: {\n actions: 'setRemoteError',\n target: '#signInActor.signIn',\n },\n },\n },\n resetPassword: {\n invoke: {\n src: 'resetPassword',\n onDone: [\n {\n actions: 'setCodeDeliveryDetails',\n target: '#signInActor.resolved',\n },\n ],\n onError: { actions: ['setRemoteError', 'sendUpdate'] },\n },\n },\n signIn: {\n initial: 'edit',\n exit: 'clearTouched',\n states: {\n edit: {\n entry: 'sendUpdate',\n on: {\n CHANGE: { actions: 'handleInput' },\n FEDERATED_SIGN_IN: { target: '#signInActor.federatedSignIn' },\n SUBMIT: { actions: 'handleSubmit', target: 'submit' },\n },\n },\n submit: {\n tags: 'pending',\n entry: ['clearError', 'sendUpdate', 'setUsernameSignIn'],\n exit: 'clearFormValues',\n invoke: { src: 'handleSignIn', ...handleSignInResponse },\n },\n },\n },\n confirmSignIn: {\n initial: 'edit',\n exit: [\n 'clearChallengeName',\n 'clearFormValues',\n 'clearError',\n 'clearTouched',\n ],\n states: {\n edit: {\n entry: 'sendUpdate',\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'submit' },\n SIGN_IN: '#signInActor.signIn',\n CHANGE: { actions: 'handleInput' },\n },\n },\n submit: {\n tags: 'pending',\n entry: ['clearError', 'sendUpdate'],\n invoke: {\n src: 'confirmSignIn',\n ...handleSignInResponse,\n },\n },\n },\n },\n forceChangePassword: {\n entry: 'sendUpdate',\n type: 'parallel',\n exit: ['clearFormValues', 'clearError', 'clearTouched'],\n states: {\n validation: {\n initial: 'pending',\n states: {\n pending: {\n invoke: {\n src: 'validateFields',\n onDone: {\n target: 'valid',\n actions: 'clearValidationError',\n },\n onError: {\n target: 'invalid',\n actions: 'setFieldErrors',\n },\n },\n },\n valid: { entry: 'sendUpdate' },\n invalid: { entry: 'sendUpdate' },\n },\n on: {\n SIGN_IN: {\n actions: 'setSignInStep',\n target: '#signInActor.resolved',\n },\n CHANGE: {\n actions: 'handleInput',\n target: '.pending',\n },\n BLUR: {\n actions: 'handleBlur',\n target: '.pending',\n },\n },\n },\n submit: {\n initial: 'edit',\n entry: 'clearError',\n states: {\n edit: {\n entry: 'sendUpdate',\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'validate' },\n },\n },\n validate: {\n entry: 'sendUpdate',\n invoke: {\n src: 'validateFields',\n onDone: {\n actions: 'clearValidationError',\n target: 'pending',\n },\n onError: { actions: 'setFieldErrors', target: 'edit' },\n },\n },\n pending: {\n tags: 'pending',\n entry: ['sendUpdate', 'clearError'],\n invoke: {\n src: 'handleForceChangePassword',\n ...handleSignInResponse,\n },\n },\n },\n },\n },\n },\n setupTotp: {\n initial: 'edit',\n exit: ['clearFormValues', 'clearError', 'clearTouched'],\n states: {\n edit: {\n entry: 'sendUpdate',\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'submit' },\n SIGN_IN: '#signInActor.signIn',\n CHANGE: { actions: 'handleInput' },\n },\n },\n submit: {\n tags: 'pending',\n entry: ['sendUpdate', 'clearError'],\n invoke: { src: 'confirmSignIn', ...handleSignInResponse },\n },\n },\n },\n resolved: {\n type: 'final',\n data: (context) => ({\n codeDeliveryDetails: context.codeDeliveryDetails,\n remoteError: context.remoteError,\n step: context.step,\n unverifiedUserAttributes: context.unverifiedUserAttributes,\n username: context.username,\n }),\n },\n },\n }, {\n // sendUpdate is a HOC\n actions: { ...ACTIONS, sendUpdate: sendUpdate() },\n guards: GUARDS,\n services: {\n async fetchUserAttributes() {\n return fetchUserAttributes();\n },\n resetPassword({ username }) {\n return resetPassword({ username });\n },\n handleResendSignUpCode({ username }) {\n return resendSignUpCode({ username });\n },\n handleSignIn({ formValues, username }) {\n const { password } = formValues;\n return services.handleSignIn({ username, password });\n },\n confirmSignIn({ formValues }) {\n const { confirmation_code: challengeResponse } = formValues;\n return services.handleConfirmSignIn({ challengeResponse });\n },\n async handleForceChangePassword({ formValues }) {\n let { password: challengeResponse, phone_number, country_code, \n // destructure and toss UI confirm_password field\n // to prevent error from sending to confirmSignIn\n confirm_password, ...userAttributes } = formValues;\n let phoneNumberWithCountryCode;\n if (phone_number) {\n phoneNumberWithCountryCode =\n `${country_code}${phone_number}`.replace(/[^A-Z0-9+]/gi, '');\n userAttributes = {\n ...userAttributes,\n phone_number: phoneNumberWithCountryCode,\n };\n }\n const input = {\n challengeResponse,\n options: { userAttributes },\n };\n return confirmSignIn(input);\n },\n signInWithRedirect(_, { data }) {\n return signInWithRedirect(data);\n },\n async validateFields(context) {\n return runValidators(context.formValues, context.touched, context.passwordSettings, [\n defaultServices.validateFormPassword,\n defaultServices.validateConfirmPassword,\n ]);\n },\n },\n });\n}\n\nexport { signInActor };\n","import { createMachine, sendUpdate } from 'xstate';\nimport { autoSignIn, fetchUserAttributes, resendSignUpCode, signInWithRedirect } from 'aws-amplify/auth';\nimport { getSignUpInput } from '../utils.mjs';\nimport { runValidators } from '../../../validators/index.mjs';\nimport ACTIONS from '../actions.mjs';\nimport GUARDS from '../guards.mjs';\nimport { getFederatedSignInState } from './utils.mjs';\n\nconst handleResetPasswordResponse = {\n onDone: [\n { actions: 'setCodeDeliveryDetails', target: '#signUpActor.resolved' },\n ],\n onError: { actions: ['setRemoteError', 'sendUpdate'] },\n};\nconst handleAutoSignInResponse = {\n onDone: [\n {\n cond: 'hasCompletedSignIn',\n actions: 'setNextSignInStep',\n target: '#signUpActor.fetchUserAttributes',\n },\n {\n cond: 'shouldConfirmSignInWithNewPassword',\n actions: 'setNextSignInStep',\n target: '#signUpActor.resolved',\n },\n {\n cond: 'shouldResetPasswordFromSignIn',\n actions: 'setNextSignInStep',\n target: '#signUpActor.resetPassword',\n },\n {\n cond: 'shouldConfirmSignUpFromSignIn',\n actions: 'setNextSignInStep',\n target: '#signUpActor.resendSignUpCode',\n },\n {\n actions: [\n 'setNextSignInStep',\n 'setChallengeName',\n 'setMissingAttributes',\n 'setTotpSecretCode',\n ],\n target: '#signUpActor.resolved',\n },\n ],\n onError: {\n actions: 'setRemoteError',\n target: '#signUpActor.resolved',\n },\n};\nconst handleFetchUserAttributesResponse = {\n onDone: [\n {\n cond: 'shouldVerifyAttribute',\n actions: [\n 'setShouldVerifyUserAttributeStep',\n 'setUnverifiedUserAttributes',\n ],\n target: '#signUpActor.resolved',\n },\n {\n actions: 'setConfirmAttributeCompleteStep',\n target: '#signUpActor.resolved',\n },\n ],\n onError: {\n actions: 'setConfirmAttributeCompleteStep',\n target: '#signUpActor.resolved',\n },\n};\nfunction signUpActor({ services }) {\n return createMachine({\n id: 'signUpActor',\n initial: 'init',\n predictableActionArguments: true,\n states: {\n init: {\n always: [\n { cond: 'shouldConfirmSignUp', target: 'confirmSignUp' },\n { target: 'signUp' },\n ],\n },\n autoSignIn: {\n tags: 'pending',\n invoke: { src: 'autoSignIn', ...handleAutoSignInResponse },\n },\n fetchUserAttributes: {\n invoke: {\n src: 'fetchUserAttributes',\n ...handleFetchUserAttributesResponse,\n },\n },\n federatedSignIn: getFederatedSignInState('signUp'),\n resetPassword: {\n invoke: { src: 'resetPassword', ...handleResetPasswordResponse },\n },\n resendSignUpCode: {\n tags: 'pending',\n entry: 'sendUpdate',\n exit: 'sendUpdate',\n invoke: {\n src: 'resendSignUpCode',\n onDone: {\n actions: ['setCodeDeliveryDetails', 'sendUpdate'],\n target: '#signUpActor.confirmSignUp',\n },\n onError: [\n {\n cond: 'isUserAlreadyConfirmed',\n target: '#signUpActor.resolved',\n },\n { actions: ['setRemoteError', 'sendUpdate'] },\n ],\n },\n },\n signUp: {\n type: 'parallel',\n exit: 'clearTouched',\n on: {\n FEDERATED_SIGN_IN: { target: 'federatedSignIn' },\n },\n states: {\n validation: {\n initial: 'pending',\n states: {\n pending: {\n invoke: {\n src: 'validateSignUp',\n onDone: {\n actions: 'clearValidationError',\n target: 'valid',\n },\n onError: { actions: 'setFieldErrors', target: 'invalid' },\n },\n },\n valid: { entry: 'sendUpdate' },\n invalid: { entry: 'sendUpdate' },\n },\n on: {\n BLUR: { actions: 'handleBlur', target: '.pending' },\n CHANGE: { actions: 'handleInput', target: '.pending' },\n },\n },\n submission: {\n initial: 'idle',\n states: {\n idle: {\n entry: ['sendUpdate'],\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'validate' },\n },\n },\n validate: {\n entry: 'sendUpdate',\n invoke: {\n src: 'validateSignUp',\n onDone: {\n target: 'handleSignUp',\n actions: 'clearValidationError',\n },\n onError: { actions: 'setFieldErrors', target: 'idle' },\n },\n },\n handleSignUp: {\n tags: 'pending',\n entry: ['setUsernameSignUp', 'clearError'],\n exit: 'sendUpdate',\n invoke: {\n src: 'handleSignUp',\n onDone: [\n {\n cond: 'hasCompletedSignUp',\n actions: 'setNextSignUpStep',\n target: '#signUpActor.resolved',\n },\n {\n cond: 'shouldAutoSignIn',\n actions: 'setNextSignUpStep',\n target: '#signUpActor.autoSignIn',\n },\n {\n actions: [\n 'setCodeDeliveryDetails',\n 'setNextSignUpStep',\n ],\n target: '#signUpActor.init',\n },\n ],\n onError: {\n actions: ['sendUpdate', 'setRemoteError'],\n target: 'idle',\n },\n },\n },\n },\n },\n },\n },\n confirmSignUp: {\n initial: 'edit',\n entry: 'sendUpdate',\n states: {\n edit: {\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'submit' },\n CHANGE: { actions: 'handleInput' },\n BLUR: { actions: 'handleBlur' },\n RESEND: '#signUpActor.resendSignUpCode',\n },\n },\n submit: {\n tags: 'pending',\n entry: ['clearError', 'sendUpdate'],\n invoke: {\n src: 'confirmSignUp',\n onDone: [\n {\n cond: 'shouldAutoSignIn',\n actions: ['setNextSignUpStep', 'clearFormValues'],\n target: '#signUpActor.autoSignIn',\n },\n {\n actions: 'setNextSignUpStep',\n target: '#signUpActor.init',\n },\n ],\n onError: {\n actions: ['setRemoteError', 'sendUpdate'],\n target: 'edit',\n },\n },\n },\n },\n },\n resolved: {\n type: 'final',\n data: (context) => ({\n challengeName: context.challengeName,\n missingAttributes: context.missingAttributes,\n remoteError: context.remoteError,\n step: context.step,\n totpSecretCode: context.totpSecretCode,\n username: context.username,\n unverifiedUserAttributes: context.unverifiedUserAttributes,\n }),\n },\n },\n }, {\n // sendUpdate is a HOC\n actions: { ...ACTIONS, sendUpdate: sendUpdate() },\n guards: GUARDS,\n services: {\n autoSignIn() {\n return autoSignIn();\n },\n async fetchUserAttributes() {\n return fetchUserAttributes();\n },\n confirmSignUp({ formValues, username }) {\n const { confirmation_code: confirmationCode } = formValues;\n const input = { username, confirmationCode };\n return services.handleConfirmSignUp(input);\n },\n resendSignUpCode({ username }) {\n return resendSignUpCode({ username });\n },\n signInWithRedirect(_, { data }) {\n return signInWithRedirect(data);\n },\n handleSignUp(context) {\n const { formValues, loginMechanisms, username } = context;\n const loginMechanism = loginMechanisms[0];\n const input = getSignUpInput(username, formValues, loginMechanism);\n return services.handleSignUp(input);\n },\n async validateSignUp(context) {\n // This needs to exist in the machine to reference new `services`\n return runValidators(context.formValues, context.touched, context.passwordSettings, [\n // Validation of password\n services.validateFormPassword,\n // Validation for default form fields\n services.validateConfirmPassword,\n services.validatePreferredUsername,\n // Validation for any custom Sign Up fields\n services.validateCustomSignUp,\n ]);\n },\n },\n });\n}\n\nexport { signUpActor };\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '../Amplify';\nexport function clearCredentials() {\n return Amplify.Auth.clearCredentials();\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Hub, clearCredentials } from '@aws-amplify/core';\nimport { AMPLIFY_SYMBOL } from '@aws-amplify/core/internals/utils';\nimport { tokenOrchestrator } from '../../tokenProvider';\nexport const completeOAuthSignOut = async (store) => {\n await store.clearOAuthData();\n tokenOrchestrator.clearTokens();\n await clearCredentials();\n Hub.dispatch('auth', { event: 'signedOut' }, 'Auth', AMPLIFY_SYMBOL);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { completeOAuthSignOut } from './completeOAuthSignOut';\nimport { oAuthSignOutRedirect } from './oAuthSignOutRedirect';\nexport const handleOAuthSignOut = async (cognitoConfig, store) => {\n const { isOAuthSignIn } = await store.loadOAuthSignIn();\n // Clear everything before attempting to visted logout endpoint since the current application\n // state could be wiped away on redirect\n await completeOAuthSignOut(store);\n if (isOAuthSignIn) {\n // On web, this will always end up being a void action\n return oAuthSignOutRedirect(cognitoConfig);\n }\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { assertOAuthConfig } from '@aws-amplify/core/internals/utils';\nimport { openAuthSession } from '../../../../utils';\nimport { getRedirectUrl } from './getRedirectUrl';\nexport const oAuthSignOutRedirect = async (authConfig, preferPrivateSession = false) => {\n assertOAuthConfig(authConfig);\n const { loginWith, userPoolClientId } = authConfig;\n const { domain, redirectSignOut } = loginWith.oauth;\n const signoutUri = getRedirectUrl(redirectSignOut);\n const oAuthLogoutEndpoint = `https://${domain}/logout?${Object.entries({\n client_id: userPoolClientId,\n logout_uri: encodeURIComponent(signoutUri),\n })\n .map(([k, v]) => `${k}=${v}`)\n .join('&')}`;\n return openAuthSession(oAuthLogoutEndpoint, redirectSignOut, preferPrivateSession);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify, ConsoleLogger, Hub, clearCredentials, defaultStorage, } from '@aws-amplify/core';\nimport { AMPLIFY_SYMBOL, AuthAction, assertOAuthConfig, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { getAuthUserAgentValue } from '../../../utils';\nimport { tokenOrchestrator } from '../tokenProvider';\nimport { globalSignOut as globalSignOutClient, revokeToken, } from '../utils/clients/CognitoIdentityProvider';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { assertAuthTokens, assertAuthTokensWithRefreshToken, } from '../utils/types';\nimport { handleOAuthSignOut } from '../utils/oauth';\nimport { DefaultOAuthStore } from '../utils/signInWithRedirectStore';\nimport { AuthError } from '../../../errors/AuthError';\nimport { OAUTH_SIGNOUT_EXCEPTION } from '../../../errors/constants';\nconst logger = new ConsoleLogger('Auth');\n/**\n * Signs a user out\n *\n * @param input - The SignOutInput object\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function signOut(input) {\n const cognitoConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(cognitoConfig);\n if (input?.global) {\n await globalSignOut(cognitoConfig);\n }\n else {\n await clientSignOut(cognitoConfig);\n }\n let hasOAuthConfig;\n try {\n assertOAuthConfig(cognitoConfig);\n hasOAuthConfig = true;\n }\n catch (err) {\n hasOAuthConfig = false;\n }\n if (hasOAuthConfig) {\n const oAuthStore = new DefaultOAuthStore(defaultStorage);\n oAuthStore.setAuthConfig(cognitoConfig);\n const { type } = (await handleOAuthSignOut(cognitoConfig, oAuthStore)) ?? {};\n if (type === 'error') {\n throw new AuthError({\n name: OAUTH_SIGNOUT_EXCEPTION,\n message: 'An error occurred when attempting to log out from OAuth provider.',\n });\n }\n }\n else {\n // complete sign out\n tokenOrchestrator.clearTokens();\n await clearCredentials();\n Hub.dispatch('auth', { event: 'signedOut' }, 'Auth', AMPLIFY_SYMBOL);\n }\n}\nasync function clientSignOut(cognitoConfig) {\n try {\n const authTokens = await tokenOrchestrator.getTokenStore().loadTokens();\n assertAuthTokensWithRefreshToken(authTokens);\n if (isSessionRevocable(authTokens.accessToken)) {\n await revokeToken({\n region: getRegion(cognitoConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SignOut),\n }, {\n ClientId: cognitoConfig.userPoolClientId,\n Token: authTokens.refreshToken,\n });\n }\n }\n catch (err) {\n // this shouldn't throw\n logger.debug('Client signOut error caught but will proceed with token removal');\n }\n}\nasync function globalSignOut(cognitoConfig) {\n try {\n const authTokens = await tokenOrchestrator.getTokenStore().loadTokens();\n assertAuthTokens(authTokens);\n await globalSignOutClient({\n region: getRegion(cognitoConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SignOut),\n }, {\n AccessToken: authTokens.accessToken.toString(),\n });\n }\n catch (err) {\n // it should not throw\n logger.debug('Global signOut error caught but will proceed with token removal');\n }\n}\nconst isSessionRevocable = (token) => !!token?.payload?.origin_jti;\n","import { createMachine } from 'xstate';\nimport { signOut } from 'aws-amplify/auth';\n\nconst signOutActor = () => {\n return createMachine({\n initial: 'pending',\n id: 'signOutActor',\n predictableActionArguments: true,\n states: {\n pending: {\n tags: 'pending',\n invoke: {\n src: 'signOut',\n onDone: 'resolved',\n onError: 'rejected',\n },\n },\n resolved: { type: 'final' },\n rejected: { type: 'final' },\n },\n }, {\n services: {\n signOut: () => signOut(),\n },\n });\n};\n\nexport { signOutActor };\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify, fetchAuthSession } from '@aws-amplify/core';\nimport { AuthAction, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { getUserAttributeVerificationCode } from '../utils/clients/CognitoIdentityProvider';\nimport { assertAuthTokens } from '../utils/types';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { getAuthUserAgentValue } from '../../../utils';\n/**\n * Resends user's confirmation code when updating attributes while authenticated.\n *\n * @param input - The SendUserAttributeVerificationCodeInput object\n * @returns SendUserAttributeVerificationCodeOutput\n * @throws - {@link GetUserAttributeVerificationException}\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport const sendUserAttributeVerificationCode = async (input) => {\n const { userAttributeKey, options } = input;\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n const clientMetadata = options?.clientMetadata;\n assertTokenProviderConfig(authConfig);\n const { tokens } = await fetchAuthSession({ forceRefresh: false });\n assertAuthTokens(tokens);\n const { CodeDeliveryDetails } = await getUserAttributeVerificationCode({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.SendUserAttributeVerificationCode),\n }, {\n AccessToken: tokens.accessToken.toString(),\n ClientMetadata: clientMetadata,\n AttributeName: userAttributeKey,\n });\n const { DeliveryMedium, AttributeName, Destination } = {\n ...CodeDeliveryDetails,\n };\n return {\n destination: Destination,\n deliveryMedium: DeliveryMedium,\n attributeName: AttributeName,\n };\n};\n","import { createMachine, sendUpdate } from 'xstate';\nimport { sendUserAttributeVerificationCode, confirmUserAttribute } from 'aws-amplify/auth';\nimport { runValidators } from '../../../validators/index.mjs';\nimport ACTIONS from '../actions.mjs';\nimport { defaultServices } from '../defaultServices.mjs';\n\nfunction verifyUserAttributesActor() {\n return createMachine({\n id: 'verifyUserAttributesActor',\n initial: 'selectUserAttributes',\n predictableActionArguments: true,\n states: {\n selectUserAttributes: {\n initial: 'edit',\n exit: ['clearError', 'clearTouched', 'sendUpdate'],\n states: {\n edit: {\n entry: 'sendUpdate',\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'submit' },\n SKIP: { target: '#verifyUserAttributesActor.resolved' },\n CHANGE: { actions: 'handleInput' },\n },\n },\n submit: {\n tags: 'pending',\n entry: ['clearError', 'sendUpdate'],\n invoke: {\n src: 'sendUserAttributeVerificationCode',\n onDone: {\n actions: [\n 'setSelectedUserAttribute',\n 'setCodeDeliveryDetails',\n ],\n target: '#verifyUserAttributesActor.confirmVerifyUserAttribute',\n },\n onError: {\n actions: 'setRemoteError',\n target: 'edit',\n },\n },\n },\n },\n },\n confirmVerifyUserAttribute: {\n initial: 'edit',\n exit: ['clearError', 'clearFormValues', 'clearTouched'],\n states: {\n edit: {\n entry: 'sendUpdate',\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'submit' },\n SKIP: '#verifyUserAttributesActor.resolved',\n CHANGE: { actions: 'handleInput' },\n },\n },\n submit: {\n tags: 'pending',\n entry: ['clearError', 'sendUpdate'],\n invoke: {\n src: 'confirmVerifyUserAttribute',\n onDone: {\n actions: [\n 'setConfirmAttributeCompleteStep',\n 'clearSelectedUserAttribute',\n ],\n target: '#verifyUserAttributesActor.resolved',\n },\n onError: {\n actions: 'setRemoteError',\n target: 'edit',\n },\n },\n },\n },\n },\n resolved: { type: 'final', data: ({ step }) => ({ step }) },\n },\n }, {\n // sendUpdate is a HOC\n actions: { ...ACTIONS, sendUpdate: sendUpdate() },\n services: {\n sendUserAttributeVerificationCode({ formValues: { unverifiedAttr } }) {\n const input = {\n userAttributeKey: unverifiedAttr,\n };\n return sendUserAttributeVerificationCode(input);\n },\n async confirmVerifyUserAttribute({ formValues: { confirmation_code: confirmationCode }, selectedUserAttribute, }) {\n const input = {\n confirmationCode,\n userAttributeKey: selectedUserAttribute,\n };\n return confirmUserAttribute(input);\n },\n async validateFields(context) {\n return runValidators(context.formValues, context.touched, context.passwordSettings, [\n defaultServices.validateFormPassword,\n defaultServices.validateConfirmPassword,\n ]);\n },\n },\n });\n}\n\nexport { verifyUserAttributesActor };\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify, fetchAuthSession } from '@aws-amplify/core';\nimport { AuthAction, assertTokenProviderConfig, } from '@aws-amplify/core/internals/utils';\nimport { AuthValidationErrorCode } from '../../../errors/types/validation';\nimport { assertValidationError } from '../../../errors/utils/assertValidationError';\nimport { verifyUserAttribute } from '../utils/clients/CognitoIdentityProvider';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { assertAuthTokens } from '../utils/types';\nimport { getAuthUserAgentValue } from '../../../utils';\n/**\n * Confirms a user attribute with the confirmation code.\n *\n * @param input - The ConfirmUserAttributeInput object\n * @throws -{@link AuthValidationErrorCode } -\n * Thrown when `confirmationCode` is not defined.\n * @throws -{@link VerifyUserAttributeException } - Thrown due to an invalid confirmation code or attribute.\n * @throws AuthTokenConfigException - Thrown when the token provider config is invalid.\n */\nexport async function confirmUserAttribute(input) {\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n assertTokenProviderConfig(authConfig);\n const { confirmationCode, userAttributeKey } = input;\n assertValidationError(!!confirmationCode, AuthValidationErrorCode.EmptyConfirmUserAttributeCode);\n const { tokens } = await fetchAuthSession({ forceRefresh: false });\n assertAuthTokens(tokens);\n await verifyUserAttribute({\n region: getRegion(authConfig.userPoolId),\n userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmUserAttribute),\n }, {\n AccessToken: tokens.accessToken.toString(),\n AttributeName: userAttributeKey,\n Code: confirmationCode,\n });\n}\n","import { createMachine, forwardTo, assign, spawn, actions } from 'xstate';\nimport '@aws-amplify/core/internals/utils';\nimport '../../utils/setUserAgent/constants.mjs';\nimport { isEmptyObject } from '../../utils/utils.mjs';\nimport ACTIONS from './actions.mjs';\nimport GUARDS from './guards.mjs';\nimport { forgotPasswordActor } from './actors/forgotPassword.mjs';\nimport { signInActor } from './actors/signIn.mjs';\nimport { signUpActor } from './actors/signUp.mjs';\nimport { signOutActor } from './actors/signOut.mjs';\nimport { verifyUserAttributesActor } from './actors/verifyUserAttributes.mjs';\nimport { defaultServices } from './defaultServices.mjs';\n\nconst getActorContext = (context, defaultStep) => ({\n ...context.actorDoneData,\n step: context?.actorDoneData?.step ?? defaultStep,\n // initialize empty objects on actor start\n formValues: {},\n touched: {},\n validationError: {},\n // values included on `context.config` that should be available in actors\n formFields: context.config?.formFields,\n loginMechanisms: context.config?.loginMechanisms,\n passwordSettings: context.config?.passwordSettings,\n signUpAttributes: context.config?.signUpAttributes,\n socialProviders: context.config?.socialProviders,\n});\nconst { choose, stop } = actions;\nconst stopActor = (machineId) => stop(machineId);\n// setup step waits for ui to emit INIT action to proceed to configure\nconst LEGACY_WAIT_CONFIG = {\n on: {\n INIT: {\n actions: 'configure',\n target: 'getConfig',\n },\n SIGN_OUT: '#authenticator.signOut',\n },\n};\n// setup step proceeds directly to configure\nconst NEXT_WAIT_CONFIG = {\n always: { actions: 'configure', target: 'getConfig' },\n};\nfunction createAuthenticatorMachine(options) {\n const { useNextWaitConfig, ...overrideConfigServices } = options ?? {};\n const initConfig = useNextWaitConfig ? NEXT_WAIT_CONFIG : LEGACY_WAIT_CONFIG;\n return createMachine({\n id: 'authenticator',\n initial: 'idle',\n context: {\n user: undefined,\n config: {},\n services: defaultServices,\n actorRef: undefined,\n hasSetup: false,\n },\n predictableActionArguments: true,\n states: {\n // See: https://xstate.js.org/docs/guides/communication.html#invoking-promises\n idle: {\n invoke: {\n src: 'handleGetCurrentUser',\n onDone: { actions: 'setUser', target: 'setup' },\n onError: { target: 'setup' },\n },\n },\n setup: {\n initial: 'initConfig',\n states: {\n initConfig,\n getConfig: {\n invoke: {\n src: 'getAmplifyConfig',\n onDone: [\n {\n actions: ['applyAmplifyConfig', 'setHasSetup'],\n cond: 'hasUser',\n target: '#authenticator.authenticated',\n },\n {\n actions: ['applyAmplifyConfig', 'setHasSetup'],\n target: 'goToInitialState',\n },\n ],\n },\n },\n goToInitialState: {\n always: [\n {\n cond: 'isInitialStateSignUp',\n target: '#authenticator.signUpActor',\n },\n {\n cond: 'isInitialStateResetPassword',\n target: '#authenticator.forgotPasswordActor',\n },\n { target: '#authenticator.signInActor' },\n ],\n },\n },\n },\n getCurrentUser: {\n invoke: {\n src: 'handleGetCurrentUser',\n onDone: {\n actions: 'setUser',\n target: '#authenticator.authenticated',\n },\n onError: { target: '#authenticator.setup' },\n },\n },\n signInActor: {\n initial: 'spawnActor',\n states: {\n spawnActor: {\n always: { actions: 'spawnSignInActor', target: 'runActor' },\n },\n runActor: {\n entry: 'clearActorDoneData',\n exit: stopActor('signInActor'),\n },\n },\n on: {\n FORGOT_PASSWORD: 'forgotPasswordActor',\n SIGN_IN: 'signInActor',\n SIGN_UP: 'signUpActor',\n 'done.invoke.signInActor': [\n {\n cond: 'hasCompletedAttributeConfirmation',\n target: '#authenticator.getCurrentUser',\n },\n {\n cond: 'isShouldConfirmUserAttributeStep',\n actions: 'setActorDoneData',\n target: '#authenticator.verifyUserAttributesActor',\n },\n {\n cond: 'isResetPasswordStep',\n actions: 'setActorDoneData',\n target: '#authenticator.forgotPasswordActor',\n },\n {\n cond: 'isConfirmSignUpStep',\n actions: 'setActorDoneData',\n target: '#authenticator.signUpActor',\n },\n ],\n },\n },\n signUpActor: {\n initial: 'spawnActor',\n states: {\n spawnActor: {\n always: { actions: 'spawnSignUpActor', target: 'runActor' },\n },\n runActor: {\n entry: 'clearActorDoneData',\n exit: stopActor('signUpActor'),\n },\n },\n on: {\n SIGN_IN: 'signInActor',\n 'done.invoke.signUpActor': [\n {\n cond: 'hasCompletedAttributeConfirmation',\n target: '#authenticator.getCurrentUser',\n },\n {\n cond: 'isShouldConfirmUserAttributeStep',\n actions: 'setActorDoneData',\n target: '#authenticator.verifyUserAttributesActor',\n },\n {\n cond: 'isConfirmUserAttributeStep',\n target: '#authenticator.verifyUserAttributesActor',\n },\n {\n actions: 'setActorDoneData',\n target: '#authenticator.signInActor',\n },\n ],\n },\n },\n forgotPasswordActor: {\n initial: 'spawnActor',\n states: {\n spawnActor: {\n always: {\n actions: 'spawnForgotPasswordActor',\n target: 'runActor',\n },\n },\n runActor: {\n entry: 'clearActorDoneData',\n exit: stopActor('forgotPasswordActor'),\n },\n },\n on: {\n SIGN_IN: 'signInActor',\n 'done.invoke.forgotPasswordActor': [\n { target: '#authenticator.signInActor' },\n ],\n },\n },\n verifyUserAttributesActor: {\n initial: 'spawnActor',\n states: {\n spawnActor: {\n always: {\n actions: 'spawnVerifyUserAttributesActor',\n target: 'runActor',\n },\n },\n runActor: {\n entry: 'clearActorDoneData',\n exit: stopActor('verifyUserAttributesActor'),\n },\n },\n on: {\n 'done.invoke.verifyUserAttributesActor': [\n {\n actions: 'setActorDoneData',\n target: '#authenticator.getCurrentUser',\n },\n ],\n },\n },\n authenticated: {\n initial: 'idle',\n states: {\n idle: { on: { TOKEN_REFRESH: 'refreshUser' } },\n refreshUser: {\n invoke: {\n src: '#authenticator.getCurrentUser',\n onDone: { actions: 'setUser', target: 'idle' },\n onError: { target: '#authenticator.signOut' },\n },\n },\n },\n on: { SIGN_OUT: 'signOut' },\n },\n signOut: {\n initial: 'spawnActor',\n states: {\n spawnActor: {\n always: { actions: 'spawnSignOutActor', target: 'runActor' },\n },\n runActor: {\n entry: 'clearActorDoneData',\n exit: stopActor('signOutActor'),\n },\n },\n on: {\n 'done.invoke.signOutActor': {\n actions: 'clearUser',\n target: 'setup.getConfig',\n },\n },\n },\n },\n on: {\n SIGN_IN_WITH_REDIRECT: { target: '#authenticator.getCurrentUser' },\n CHANGE: { actions: 'forwardToActor' },\n BLUR: { actions: 'forwardToActor' },\n SUBMIT: { actions: 'forwardToActor' },\n FEDERATED_SIGN_IN: { actions: 'forwardToActor' },\n RESEND: { actions: 'forwardToActor' },\n SIGN_IN: { actions: 'forwardToActor' },\n SKIP: { actions: 'forwardToActor' },\n },\n }, {\n actions: {\n ...ACTIONS,\n forwardToActor: choose([\n { cond: 'hasActor', actions: forwardTo(({ actorRef }) => actorRef) },\n ]),\n setActorDoneData: assign({\n actorDoneData: (context, event) => ({\n challengeName: event.data.challengeName,\n codeDeliveryDetails: event.data.codeDeliveryDetails,\n missingAttributes: event.data.missingAttributes,\n remoteError: event.data.remoteError,\n username: event.data.username,\n step: event.data.step,\n totpSecretCode: event.data.totpSecretCode,\n unverifiedUserAttributes: event.data.unverifiedUserAttributes,\n }),\n }),\n applyAmplifyConfig: assign({\n config(context, { data: cliConfig }) {\n // Prefer explicitly configured settings over default CLI values\\\n const { loginMechanisms = cliConfig.loginMechanisms ?? [], signUpAttributes = cliConfig.signUpAttributes ?? [], socialProviders = cliConfig.socialProviders ?? [], initialState, formFields: _formFields, passwordSettings = cliConfig.passwordFormat ??\n {}, } = context.config;\n // By default, Cognito assumes `username`, so there isn't a different username attribute like `email`.\n // We explicitly add it as a login mechanism to be consistent with Admin UI's language.\n if (loginMechanisms.length === 0) {\n loginMechanisms.push('username');\n }\n const formFields = convertFormFields(_formFields) ?? {};\n return {\n formFields,\n initialState,\n loginMechanisms,\n passwordSettings,\n signUpAttributes,\n socialProviders,\n };\n },\n }),\n spawnSignInActor: assign({\n actorRef: (context, _) => {\n const { services } = context;\n const actor = signInActor({ services }).withContext(getActorContext(context, 'SIGN_IN'));\n return spawn(actor, { name: 'signInActor' });\n },\n }),\n spawnSignUpActor: assign({\n actorRef: (context, _) => {\n const { services } = context;\n const actor = signUpActor({ services }).withContext(getActorContext(context, 'SIGN_UP'));\n return spawn(actor, { name: 'signUpActor' });\n },\n }),\n spawnForgotPasswordActor: assign({\n actorRef: (context, _) => {\n const { services } = context;\n const actor = forgotPasswordActor({ services }).withContext(getActorContext(context, 'FORGOT_PASSWORD'));\n return spawn(actor, { name: 'forgotPasswordActor' });\n },\n }),\n spawnVerifyUserAttributesActor: assign({\n actorRef: (context) => {\n const actor = verifyUserAttributesActor().withContext(getActorContext(context));\n return spawn(actor, { name: 'verifyUserAttributesActor' });\n },\n }),\n spawnSignOutActor: assign({\n actorRef: (context) => {\n const actor = signOutActor().withContext({ user: context?.user });\n return spawn(actor, { name: 'signOutActor' });\n },\n }),\n configure: assign((_, event) => {\n const { services: customServices, ...config } = !isEmptyObject(overrideConfigServices)\n ? overrideConfigServices\n : event.data ?? {};\n return {\n services: { ...defaultServices, ...customServices },\n config,\n };\n }),\n setHasSetup: assign({ hasSetup: true }),\n },\n guards: {\n ...GUARDS,\n hasActor: ({ actorRef }) => !!actorRef,\n isInitialStateSignUp: ({ config }) => config.initialState === 'signUp',\n isInitialStateResetPassword: ({ config }) => config.initialState === 'forgotPassword',\n shouldSetup: ({ hasSetup }) => !hasSetup,\n hasUser: ({ user }) => {\n return !!user;\n },\n },\n services: {\n getAmplifyConfig: ({ services }) => services.getAmplifyConfig(),\n handleGetCurrentUser: ({ services }) => services.getCurrentUser(),\n },\n });\n}\nfunction convertFormFields(formFields) {\n if (formFields) {\n Object.keys(formFields).forEach((component) => {\n Object.keys(formFields[component]).forEach((inputName) => {\n let ff = formFields[component][inputName];\n ff.required = ff.isRequired;\n });\n });\n }\n return formFields;\n}\n\nexport { createAuthenticatorMachine };\n","import { createMachine, sendUpdate } from 'xstate';\nimport { runValidators } from '../../../validators/index.mjs';\nimport ACTIONS from '../actions.mjs';\nimport GUARDS from '../guards.mjs';\nimport { defaultServices } from '../defaultServices.mjs';\n\nfunction forgotPasswordActor({ services, }) {\n return createMachine({\n id: 'forgotPasswordActor',\n initial: 'init',\n predictableActionArguments: true,\n states: {\n init: {\n always: [\n {\n cond: 'shouldResetPassword',\n target: 'confirmResetPassword',\n },\n {\n cond: 'shouldConfirmResetPassword',\n target: 'confirmResetPassword',\n },\n {\n target: 'forgotPassword',\n },\n ],\n },\n forgotPassword: {\n initial: 'edit',\n entry: 'sendUpdate',\n exit: ['clearError', 'clearTouched'],\n states: {\n edit: {\n entry: 'sendUpdate',\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'submit' },\n CHANGE: { actions: 'handleInput' },\n BLUR: { actions: 'handleBlur' },\n },\n },\n submit: {\n tags: 'pending',\n entry: ['sendUpdate', 'clearError', 'setUsernameForgotPassword'],\n invoke: {\n src: 'handleResetPassword',\n onDone: {\n actions: [\n 'setCodeDeliveryDetails',\n 'setNextResetPasswordStep',\n ],\n target: '#forgotPasswordActor.confirmResetPassword',\n },\n onError: {\n actions: 'setRemoteError',\n target: 'edit',\n },\n },\n },\n },\n },\n confirmResetPassword: {\n type: 'parallel',\n exit: ['clearFormValues', 'clearError', 'clearTouched'],\n states: {\n validation: {\n initial: 'pending',\n states: {\n pending: {\n invoke: {\n src: 'validateFields',\n onDone: {\n target: 'valid',\n actions: 'clearValidationError',\n },\n onError: {\n target: 'invalid',\n actions: 'setFieldErrors',\n },\n },\n },\n valid: { entry: 'sendUpdate' },\n invalid: { entry: 'sendUpdate' },\n },\n on: {\n CHANGE: {\n actions: 'handleInput',\n target: '.pending',\n },\n BLUR: {\n actions: 'handleBlur',\n target: '.pending',\n },\n },\n },\n submission: {\n initial: 'idle',\n states: {\n idle: {\n entry: 'sendUpdate',\n on: {\n SUBMIT: { actions: 'handleSubmit', target: 'validate' },\n RESEND: 'resendCode',\n CHANGE: { actions: 'handleInput' },\n BLUR: { actions: 'handleBlur' },\n },\n },\n validate: {\n entry: 'sendUpdate',\n invoke: {\n src: 'validateFields',\n onDone: {\n target: 'pending',\n actions: 'clearValidationError',\n },\n onError: {\n target: 'idle',\n actions: 'setFieldErrors',\n },\n },\n },\n resendCode: {\n tags: 'pending',\n entry: ['clearError', 'sendUpdate'],\n invoke: {\n src: 'handleResetPassword',\n onDone: { target: 'idle' },\n onError: { actions: 'setRemoteError', target: 'idle' },\n },\n },\n pending: {\n tags: 'pending',\n entry: ['clearError', 'sendUpdate'],\n invoke: {\n src: 'handleConfirmResetPassword',\n onDone: [\n {\n cond: 'hasCompletedResetPassword',\n actions: 'setNextResetPasswordStep',\n target: '#forgotPasswordActor.resolved',\n },\n {\n actions: 'setSignInStep',\n target: '#forgotPasswordActor.resolved',\n },\n ],\n onError: { actions: 'setRemoteError', target: 'idle' },\n },\n },\n },\n },\n },\n },\n resolved: {\n type: 'final',\n data: ({ step }) => ({ step }),\n },\n },\n }, {\n // sendUpdate is a HOC\n actions: { ...ACTIONS, sendUpdate: sendUpdate() },\n guards: GUARDS,\n services: {\n handleResetPassword({ username }) {\n return services.handleForgotPassword({ username });\n },\n handleConfirmResetPassword({ formValues, username }) {\n const { confirmation_code: confirmationCode, password: newPassword } = formValues;\n return services.handleForgotPasswordSubmit({\n confirmationCode,\n newPassword,\n username,\n });\n },\n validateFields(context) {\n return runValidators(context.formValues, context.touched, context.passwordSettings, [\n defaultServices.validateFormPassword,\n defaultServices.validateConfirmPassword,\n ]);\n },\n },\n });\n}\n\nexport { forgotPasswordActor };\n","import React__default, { useContext, useMemo, useEffect } from 'react';\nimport { useInterpret } from '@xstate/react';\nimport { getCurrentUser } from 'aws-amplify/auth';\nimport { createAuthenticatorMachine, listenToAuthHub, defaultAuthHubHandler } from '@aws-amplify/ui';\nimport { AuthenticatorContext } from './AuthenticatorContext.mjs';\n\nconst createHubHandler = (options) => (data, service) => {\n defaultAuthHubHandler(data, service, options);\n};\nfunction AuthenticatorProvider({ children, }) {\n // `authStatus` is exposed by `useAuthenticator` but should not be derived directly from the\n // state machine as the machine only updates on `Authenticator` initiated events, which\n // leads to scenarios where the state machine `authStatus` gets \"stuck\". For exmample,\n // if a user was to sign in using `Auth.signIn` directly rather than using `Authenticator`\n const [authStatus, setAuthStatus] = React__default.useState('configuring');\n // only run on first render\n React__default.useEffect(() => {\n getCurrentUser()\n .then(() => {\n setAuthStatus('authenticated');\n })\n .catch(() => {\n setAuthStatus('unauthenticated');\n });\n }, []);\n /**\n * Based on use cases, developer might already have added another Provider\n * outside Authenticator. In that case, we sync the two providers by just\n * passing the parent value.\n *\n * TODO(BREAKING): enforce only one provider in App tree\n */\n const parentProviderVal = useContext(AuthenticatorContext);\n const service = useInterpret(createAuthenticatorMachine);\n const value = useMemo(() => (!parentProviderVal ? { authStatus, service } : parentProviderVal), [authStatus, parentProviderVal, service]);\n const { service: activeService } = value;\n useEffect(() => {\n const onSignIn = () => {\n setAuthStatus('authenticated');\n };\n const onSignOut = () => {\n setAuthStatus('unauthenticated');\n };\n const unsubscribe = listenToAuthHub(activeService, createHubHandler({ onSignIn, onSignOut }));\n return unsubscribe;\n }, [activeService]);\n return (React__default.createElement(AuthenticatorContext.Provider, { value: value }, children));\n}\n\nexport { AuthenticatorProvider as default };\n","const VERSION = '6.1.10';\n\nexport { VERSION };\n","import { useDeprecationWarning as useDeprecationWarning$1 } from '@aws-amplify/ui-react-core';\n\n/**\n * Logs a deprecation warning `message` to the console.\n */\nconst useDeprecationWarning = ({ message, shouldWarn: _shouldWarn, }) => {\n const shouldWarn = _shouldWarn &&\n // show message on builds without Node `process` polyfill\n // or with process.env.NODE_ENV not production\n (typeof process === 'undefined' ||\n (process && process.env.NODE_ENV !== 'production'));\n useDeprecationWarning$1({ message, shouldWarn });\n};\n\nexport { useDeprecationWarning };\n","import * as React from 'react';\n\n/**\n * Logs a deprecation warning message.\n *\n * @important Please use the React/React Native specific platform implementations.\n * This version of the hook is a base implementation that the others extend from due\n * to env differences between running in RN or the browser\n */\nconst useDeprecationWarning = ({ shouldWarn, message, }) => {\n React.useEffect(() => {\n if (shouldWarn) {\n // eslint-disable-next-line no-console\n console.warn(message);\n }\n }, [shouldWarn, message]);\n};\n\nexport { useDeprecationWarning as default };\n","import * as React from 'react';\n\nconst CustomComponentsContext = \n// @ts-ignore\nReact.createContext(null);\nconst useCustomComponents = () => {\n const context = React.useContext(CustomComponentsContext);\n if (!context) {\n throw new Error('`useCustomComponents` cannot be used outside of a `CustomComponentsContext.Provider`');\n }\n return context;\n};\n\nexport { CustomComponentsContext, useCustomComponents };\n","import { translate, DefaultTexts } from '../../i18n/translations.mjs';\n\n/**\n * ConfirmSignIn\n */\nconst getChallengeText = (challengeName) => {\n switch (challengeName) {\n case 'SMS_MFA':\n return translate(DefaultTexts.CONFIRM_SMS);\n case 'SOFTWARE_TOKEN_MFA':\n return translate(DefaultTexts.CONFIRM_TOTP);\n default:\n return translate(DefaultTexts.CONFIRM_MFA_DEFAULT);\n }\n};\n/**\n * ConfirmSignUp\n */\nconst getDeliveryMessageText = (codeDeliveryDetails) => {\n const { DeliveryMedium, Destination } = codeDeliveryDetails ?? {};\n const isEmailMessage = DeliveryMedium === 'EMAIL';\n const isTextMessage = DeliveryMedium === 'SMS';\n const arrivalMessage = translate(DefaultTexts.CODE_ARRIVAL);\n if (!(isEmailMessage || isTextMessage)) {\n return `${translate(DefaultTexts.CODE_SENT)}. ${arrivalMessage}.`;\n }\n const instructionMessage = isEmailMessage\n ? translate(DefaultTexts.CODE_EMAILED)\n : translate(DefaultTexts.CODE_TEXTED);\n return `${instructionMessage} ${Destination}. ${arrivalMessage}.`;\n};\nconst getDeliveryMethodText = (codeDeliveryDetails) => {\n const { DeliveryMedium } = codeDeliveryDetails ?? {};\n const isEmailMessage = DeliveryMedium === 'EMAIL';\n const isTextMessage = DeliveryMedium === 'SMS';\n if (!isEmailMessage && isTextMessage) {\n return translate(DefaultTexts.WE_SENT_CODE);\n }\n return isEmailMessage\n ? translate(DefaultTexts.WE_EMAILED)\n : translate(DefaultTexts.WE_TEXTED);\n};\n/**\n * FederatedSignIn\n */\nconst providerNameMap = {\n amazon: 'Amazon',\n apple: 'Apple',\n facebook: 'Facebook',\n google: 'Google',\n};\nconst getSignInWithFederationText = (route, provider) => {\n const isSignIn = route === 'signIn';\n return translate(`Sign ${isSignIn ? 'In' : 'Up'} with ${providerNameMap[provider]}`);\n};\nconst authenticatorTextUtil = {\n /** Shared */\n getBackToSignInText: () => translate(DefaultTexts.BACK_SIGN_IN),\n getChangePasswordText: () => translate(DefaultTexts.CHANGE_PASSWORD),\n getChangingText: () => translate(DefaultTexts.CHANGING_PASSWORD),\n getConfirmText: () => translate(DefaultTexts.CONFIRM),\n getConfirmingText: () => translate(DefaultTexts.CONFIRMING),\n getCopyText: () => translate(DefaultTexts.UPPERCASE_COPY),\n getHidePasswordText: () => translate(DefaultTexts.HIDE_PASSWORD),\n getLoadingText: () => translate(DefaultTexts.LOADING),\n getOrText: () => translate(DefaultTexts.OR),\n getResendCodeText: () => translate(DefaultTexts.RESEND_CODE),\n getSendCodeText: () => translate(DefaultTexts.SEND_CODE),\n getSendingText: () => translate(DefaultTexts.SENDING),\n getShowPasswordText: () => translate(DefaultTexts.SHOW_PASSWORD),\n getSubmitText: () => translate(DefaultTexts.SUBMIT),\n getSubmittingText: () => translate(DefaultTexts.SUBMITTING),\n /** SignInSignUpTabs */\n getSignInTabText: () => translate(DefaultTexts.SIGN_IN_TAB),\n getSignUpTabText: () => translate(DefaultTexts.CREATE_ACCOUNT),\n /** SignIn */\n getForgotPasswordText: (shortVersion) => translate(shortVersion\n ? DefaultTexts.FORGOT_PASSWORD\n : DefaultTexts.FORGOT_YOUR_PASSWORD),\n getSigningInText: () => translate(DefaultTexts.SIGNING_IN_BUTTON),\n getSignInText: () => translate(DefaultTexts.SIGN_IN_BUTTON),\n /** SignUp */\n getCreatingAccountText: () => translate(DefaultTexts.CREATING_ACCOUNT),\n getCreateAccountText: () => translate(DefaultTexts.CREATE_ACCOUNT),\n /** ConfirmSignUp */\n getDeliveryMessageText,\n getDeliveryMethodText,\n /** ConfirmSignIn */\n getChallengeText,\n /** ForgotPassword */\n getResetYourPasswordText: () => translate(DefaultTexts.RESET_PASSWORD),\n /** SetupTotp */\n getSetupTotpText: () => translate(DefaultTexts.SETUP_TOTP),\n // TODO: add defaultText for below\n getSetupTotpInstructionsText: () => translate('Copy and paste the secret key below into an authenticator app and then enter the code in the text field below.'),\n // TODO: add defaultText for \"COPIED\"\n getCopiedText: () => translate('COPIED'),\n /** FederatedSignIn */\n getSignInWithFederationText,\n /** VerifyUser */\n getSkipText: () => translate(DefaultTexts.SKIP),\n getVerifyText: () => translate(DefaultTexts.VERIFY),\n getVerifyContactText: () => translate(DefaultTexts.VERIFY_CONTACT),\n getAccountRecoveryInfoText: () => translate(DefaultTexts.VERIFY_HEADING),\n /** Validations */\n // TODO: add defaultText\n getInvalidEmailText: () => translate('Please enter a valid email'),\n // TODO: add defaultText\n getRequiredFieldText: () => translate('This field is required'),\n}; // using `as const` so that keys are strongly typed\n\nexport { authenticatorTextUtil };\n","import { isString, isObject, has } from './utils.mjs';\n\nconst classNames = (...args) => {\n const classes = [];\n for (const arg of args) {\n // skip falsey values\n if (!arg) {\n continue;\n }\n if (isString(arg)) {\n classes.push(arg);\n continue;\n }\n if (typeof arg === 'number') {\n classes.push(arg.toString());\n continue;\n }\n if (Array.isArray(arg)) {\n classes.push(classNames(...arg));\n continue;\n }\n if (isObject(arg)) {\n // check if the object has a valid .toString() method\n if (arg.toString !== Object.prototype.toString &&\n arg.toString() !== '[object Object]') {\n classes.push(arg.toString());\n continue;\n }\n for (const key in arg) {\n if (has(arg, key) && arg[key]) {\n classes.push(key);\n }\n }\n }\n }\n return classes.join(' ');\n};\n\nexport { classNames };\n","const ComponentClassName = {\n Accordion: 'amplify-accordion',\n AccordionItem: 'amplify-accordion__item',\n AccordionItemTrigger: 'amplify-accordion__item__trigger',\n AccordionItemContent: 'amplify-accordion__item__content',\n AccordionItemIcon: 'amplify-accordion__item__icon',\n Alert: 'amplify-alert',\n AlertIcon: 'amplify-alert__icon',\n AlertHeading: 'amplify-alert__heading',\n AlertBody: 'amplify-alert__body',\n AlertDismiss: 'amplify-alert__dismiss',\n Autocomplete: 'amplify-autocomplete',\n AutocompleteMenu: 'amplify-autocomplete__menu',\n AutocompleteMenuEmpty: 'amplify-autocomplete__menu--empty',\n AutocompleteMenuFooter: 'amplify-autocomplete__menu__footer',\n AutocompleteMenuHeader: 'amplify-autocomplete__menu__header',\n AutocompleteMenuLoading: 'amplify-autocomplete__menu--loading',\n AutocompleteMenuOption: 'amplify-autocomplete__menu__option',\n AutocompleteMenuOptions: 'amplify-autocomplete__menu__options',\n Badge: 'amplify-badge',\n Breadcrumbs: 'amplify-breadcrumbs',\n BreadcrumbsList: 'amplify-breadcrumbs__list',\n BreadcrumbsItem: 'amplify-breadcrumbs__item',\n BreadcrumbsSeparator: 'amplify-breadcrumbs__separator',\n BreadcrumbsLink: 'amplify-breadcrumbs__link',\n Button: 'amplify-button',\n ButtonGroup: 'amplify-buttongroup',\n ButtonLoaderWrapper: 'amplify-button__loader-wrapper',\n Card: 'amplify-card',\n Checkbox: 'amplify-checkbox',\n CheckboxButton: 'amplify-checkbox__button',\n CheckboxIcon: 'amplify-checkbox__icon',\n CheckboxInput: 'amplify-checkbox__input',\n CheckboxLabel: 'amplify-checkbox__label',\n CheckboxField: 'amplify-checkboxfield',\n Collection: 'amplify-collection',\n CollectionItems: 'amplify-collection-items',\n CollectionSearch: 'amplify-collection-search',\n CollectionPagination: 'amplify-collection-pagination',\n CountryCodeSelect: 'amplify-countrycodeselect',\n DialCodeSelect: 'amplify-dialcodeselect',\n Divider: 'amplify-divider',\n DividerLabel: 'amplify-divider--label',\n DropZone: 'amplify-dropzone',\n Field: 'amplify-field',\n FieldDescription: 'amplify-field__description',\n FieldErrorMessage: 'amplify-field__error-message',\n FieldGroup: 'amplify-field-group',\n FieldGroupControl: 'amplify-field-group__control',\n FieldGroupOuterEnd: 'amplify-field-group__outer-end',\n FieldGroupOuterStart: 'amplify-field-group__outer-start',\n FieldGroupInnerEnd: 'amplify-field-group__inner-end',\n FieldGroupInnerStart: 'amplify-field-group__inner-start',\n FieldGroupIcon: 'amplify-field-group__icon',\n FieldGroupIconButton: 'amplify-field-group__icon-button',\n FieldGroupHasInnerEnd: 'amplify-field-group--has-inner-end',\n FieldGroupHasInnerStart: 'amplify-field-group--has-inner-start',\n FieldShowPassword: 'amplify-field__show-password',\n FieldGroupFieldWrapper: 'amplify-field-group__field-wrapper',\n Fieldset: 'amplify-fieldset',\n FieldsetLegend: 'amplify-fieldset__legend',\n Flex: 'amplify-flex',\n Grid: 'amplify-grid',\n Heading: 'amplify-heading',\n HighlightMatch: 'amplify-highlightmatch',\n HighlightMatchHighlighted: 'amplify-highlightmatch__highlighted',\n Icon: 'amplify-icon',\n Image: 'amplify-image',\n Input: 'amplify-input',\n Label: 'amplify-label',\n Link: 'amplify-link',\n Loader: 'amplify-loader',\n LoaderLabel: 'amplify-loader__label',\n MenuContent: 'amplify-menu__content',\n MenuItem: 'amplify-menu__content__item',\n MenuTrigger: 'amplify-menu__trigger',\n MenuWrapper: 'amplify-menu__wrapper',\n Message: 'amplify-message',\n MessageIcon: 'amplify-message__icon',\n MessageHeading: 'amplify-message__heading',\n MessageBody: 'amplify-message__body',\n MessageContent: 'amplify-message__content',\n MessageDismiss: 'amplify-message__dismiss',\n Pagination: 'amplify-pagination',\n PaginationItem: 'amplify-pagination__item',\n PasswordField: 'amplify-passwordfield',\n PhoneNumberField: 'amplify-phonenumberfield',\n Placeholder: 'amplify-placeholder',\n Radio: 'amplify-radio',\n RadioButton: 'amplify-radio__button',\n RadioInput: 'amplify-radio__input',\n RadioLabel: 'amplify-radio__label',\n RadioGroupField: 'amplify-radiogroupfield',\n RadioGroup: 'amplify-radiogroup',\n Rating: 'amplify-rating',\n RatingItem: 'amplify-rating__item',\n RatingIcon: 'amplify-rating__icon',\n RatingLabel: 'amplify-rating__label',\n ScrollView: 'amplify-scrollview',\n SearchField: 'amplify-searchfield',\n SearchFieldClear: 'amplify-searchfield__clear',\n SearchFieldSearch: 'amplify-searchfield__search',\n Select: 'amplify-select',\n SelectField: 'amplify-selectfield',\n SelectWrapper: 'amplify-select__wrapper',\n SelectIcon: 'amplify-select__icon',\n SliderField: 'amplify-sliderfield',\n SliderFieldGroup: 'amplify-sliderfield__group',\n SliderFieldLabel: 'amplify-sliderfield__label',\n SliderFieldRange: 'amplify-sliderfield__range',\n SliderFieldRoot: 'amplify-sliderfield__root',\n SliderFieldThumb: 'amplify-sliderfield__thumb',\n SliderFieldTrack: 'amplify-sliderfield__track',\n StepperField: 'amplify-stepperfield',\n StepperFieldButtonDecrease: 'amplify-stepperfield__button--decrease',\n StepperFieldButtonIncrease: 'amplify-stepperfield__button--increase',\n StepperFieldInput: 'amplify-stepperfield__input',\n StorageImage: 'amplify-storageimage',\n StorageManager: 'amplify-storagemanager',\n StorageManagerDropZone: 'amplify-storagemanager__dropzone',\n StorageManagerDropZoneIcon: 'amplify-storagemanager__dropzone__icon',\n StorageManagerDropZoneText: 'amplify-storagemanager__dropzone__text',\n StorageManagerFilePicker: 'amplify-storagemanager__file__picker',\n StorageManagerFile: 'amplify-storagemanager__file',\n StorageManagerFileWrapper: 'amplify-storagemanager__file__wrapper',\n StorageManagerFileList: 'amplify-storagemanager__file__list',\n StorageManagerFileName: 'amplify-storagemanager__file__name',\n StorageManagerFileSize: 'amplify-storagemanager__file__size',\n StorageManagerFileInfo: 'amplify-storagemanager__file__info',\n StorageManagerFileImage: 'amplify-storagemanager__file__image',\n StorageManagerFileMain: 'amplify-storagemanager__file__main',\n StorageManagerFileStatus: 'amplify-storagemanager__file__status',\n StorageManagerLoader: 'amplify-storagemanager__loader',\n StorageManagerPreviewer: 'amplify-storagemanager__previewer',\n StorageManagerPreviewerText: 'amplify-storagemanager__previewer__text',\n StorageManagerPreviewerActions: 'amplify-storagemanager__previewer__actions',\n StorageManagerPreviewerFooter: 'amplify-storagemanager__previewer__footer',\n SwitchField: 'amplify-switchfield',\n SwitchLabel: 'amplify-switch__label',\n SwitchThumb: 'amplify-switch__thumb',\n SwitchTrack: 'amplify-switch__track',\n SwitchWrapper: 'amplify-switch__wrapper',\n Table: 'amplify-table',\n TableCaption: 'amplify-table__caption',\n TableBody: 'amplify-table__body',\n TableTd: 'amplify-table__td',\n TableTh: 'amplify-table__th',\n TableFoot: 'amplify-table__foot',\n TableHead: 'amplify-table__head',\n TableRow: 'amplify-table__row',\n Tabs: 'amplify-tabs',\n TabsList: 'amplify-tabs__list',\n TabsItem: 'amplify-tabs__item',\n TabsPanel: 'amplify-tabs__panel',\n Text: 'amplify-text',\n Textarea: 'amplify-textarea',\n TextAreaField: 'amplify-textareafield',\n TextField: 'amplify-textfield',\n ToggleButton: 'amplify-togglebutton',\n ToggleButtonGroup: 'amplify-togglebuttongroup',\n VisuallyHidden: 'amplify-visually-hidden',\n};\n\nexport { ComponentClassName };\n","import * as React from 'react';\n\n/**\n * Updates the return type for primitives wrapped in `React.forwardRef` to\n * `React.ReactElement`. In React 18 the return type of `React.ExoticComponent`\n * was changed from `React.ReactElement` to `React.ReactNode`, which breaks\n * clients using React 16 and 17.\n *\n * @param primitive UI Primitive to be wrapped with `React.forwardRef`\n * @returns ForwaredRef wrapped UI Primitive\n */\nconst primitiveWithForwardRef = (primitive) => React.forwardRef(primitive);\n\nexport { primitiveWithForwardRef };\n","import * as React from 'react';\n\nconst FieldsetContext = React.createContext({\n isFieldsetDisabled: false,\n});\n/**\n * @description Fieldsets in HTML can be disabled, which disables all child\n * fieldsets and input controls. `useFieldset` passes the disabled state down\n * via context.\n */\nconst useFieldset = () => React.useContext(FieldsetContext);\n\nexport { FieldsetContext, useFieldset };\n","import kebabCase from 'lodash/kebabCase.js';\nimport usesReference from 'style-dictionary/lib/utils/references/usesReference.js';\nimport '@aws-amplify/core/internals/utils';\nimport '../utils/setUserAgent/constants.mjs';\nimport { isObject, has, isString } from '../utils/utils.mjs';\n\nconst CSS_VARIABLE_PREFIX = 'amplify';\n// Important: these properties should not be altered in\n// order to maintain the expected order of the CSS `box-shadow` property\nconst SHADOW_PROPERTIES = [\n 'offsetX',\n 'offsetY',\n 'blurRadius',\n 'spreadRadius',\n 'color',\n];\nfunction referenceValue(value) {\n if (!value)\n return '';\n if (usesReference(value)) {\n const path = value.replace(/\\{|\\}/g, '').replace('.value', '').split('.');\n return `var(--${cssNameTransform({ path })})`;\n }\n return value;\n}\nfunction cssValue(token) {\n const { value } = token;\n if (isString(value)) {\n return referenceValue(value);\n }\n if (isShadowTokenObject(value)) {\n return SHADOW_PROPERTIES.map((property) => {\n return referenceValue(\n // lookup property against `token` first for custom non-nested value, then lookup\n // property against `value` for design token value\n isShadowTokenObject(token) ? token[property] : value[property]);\n }).join(' ');\n }\n return value;\n}\nfunction cssNameTransform({ path = [] }) {\n return `${kebabCase([CSS_VARIABLE_PREFIX, ...path].join(' '))}`;\n}\n/**\n * Helper function to test if something is a design token or not.\n * Used in the React component style props.\n *\n * @param value - thing to test if it is a design token or not\n * @returns boolean\n */\nfunction isDesignToken(value) {\n return isObject(value) && has(value, 'value');\n}\nfunction isShadowTokenObject(value) {\n return isObject(value) && has(value, 'offsetX');\n}\n/**\n * Recursive function that will walk down the token object\n * and perform the setupToken function on each token.\n * Similar to what Style Dictionary does.\n */\nfunction setupTokens({ tokens, path = [], setupToken, }) {\n if (has(tokens, 'value')) {\n return setupToken({ token: tokens, path });\n }\n const output = {};\n for (const name in tokens) {\n if (has(tokens, name)) {\n const value = tokens[name];\n const nextTokens = isObject(value) ? value : { value };\n output[name] = setupTokens({\n tokens: nextTokens,\n path: path.concat(name),\n setupToken,\n });\n }\n }\n return output;\n}\n\nexport { CSS_VARIABLE_PREFIX, cssNameTransform, cssValue, isDesignToken, isShadowTokenObject, setupTokens };\n","/**\n * @internal May be removed in a future version\n * Maps from component style props to React `style` props\n * Note: Primarily needed to map from component style props that don't match CSS Properties directly\n * such as wrap => flexWrap and direction => flexDirection\n */\nconst ComponentPropsToStylePropsMap = {\n alignContent: 'alignContent',\n alignItems: 'alignItems',\n alignSelf: 'alignSelf',\n area: 'gridArea',\n aspectRatio: 'aspectRatio',\n autoColumns: 'gridAutoColumns',\n autoFlow: 'gridAutoFlow',\n autoRows: 'gridAutoRows',\n backgroundColor: 'backgroundColor',\n backgroundImage: 'backgroundImage',\n basis: 'flexBasis',\n border: 'border',\n borderRadius: 'borderRadius',\n borderColor: 'borderColor',\n borderWidth: 'borderWidth',\n borderStyle: 'borderStyle',\n bottom: 'bottom',\n boxShadow: 'boxShadow',\n color: 'color',\n column: 'gridColumn',\n columnEnd: 'gridColumnEnd',\n columnGap: 'columnGap',\n columnSpan: 'gridColumn',\n columnStart: 'gridColumnStart',\n direction: 'flexDirection',\n display: 'display',\n flex: 'flex',\n fontFamily: 'fontFamily',\n fontSize: 'fontSize',\n fontStyle: 'fontStyle',\n fontWeight: 'fontWeight',\n gap: 'gap',\n grow: 'flexGrow',\n height: 'height',\n justifyContent: 'justifyContent',\n left: 'left',\n letterSpacing: 'letterSpacing',\n lineHeight: 'lineHeight',\n margin: 'margin',\n marginBlock: 'marginBlock',\n marginBlockEnd: 'marginBlockEnd',\n marginBlockStart: 'marginBlockStart',\n marginBottom: 'marginBlockEnd',\n marginInline: 'marginInline',\n marginInlineEnd: 'marginInlineEnd',\n marginInlineStart: 'marginInlineStart',\n marginLeft: 'marginInlineStart',\n marginRight: 'marginInlineEnd',\n marginTop: 'marginBlockStart',\n maxHeight: 'maxHeight',\n maxWidth: 'maxWidth',\n minHeight: 'minHeight',\n minWidth: 'minWidth',\n objectFit: 'objectFit',\n objectPosition: 'objectPosition',\n opacity: 'opacity',\n order: 'order',\n overflow: 'overflow',\n padding: 'padding',\n paddingBlock: 'paddingBlock',\n paddingBlockEnd: 'paddingBlockEnd',\n paddingBlockStart: 'paddingBlockStart',\n paddingBottom: 'paddingBlockEnd',\n paddingInline: 'paddingInline',\n paddingInlineEnd: 'paddingInlineEnd',\n paddingInlineStart: 'paddingInlineStart',\n paddingLeft: 'paddingInlineStart',\n paddingRight: 'paddingInlineEnd',\n paddingTop: 'paddingBlockStart',\n position: 'position',\n resize: 'resize',\n right: 'right',\n row: 'gridRow',\n rowEnd: 'gridRowEnd',\n rowGap: 'rowGap',\n rowSpan: 'gridRow',\n rowStart: 'gridRowStart',\n shrink: 'flexShrink',\n templateAreas: 'gridTemplateAreas',\n templateColumns: 'gridTemplateColumns',\n templateRows: 'gridTemplateRows',\n textAlign: 'textAlign',\n textDecoration: 'textDecoration',\n textTransform: 'textTransform',\n top: 'top',\n transform: 'transform',\n transformOrigin: 'transformOrigin',\n width: 'width',\n whiteSpace: 'whiteSpace',\n wrap: 'flexWrap',\n};\n/**\n * @internal May be removed in a future version\n */\nconst ComponentPropsToStylePropsMapKeys = Object.keys(ComponentPropsToStylePropsMap);\n\nexport { ComponentPropsToStylePropsMap, ComponentPropsToStylePropsMapKeys };\n","const borderWidths = {\n small: { value: '1px' },\n medium: { value: '2px' },\n large: { value: '3px' },\n};\n\nexport { borderWidths };\n","const colors = {\n red: {\n 10: { value: 'hsl(0, 75%, 95%)' },\n 20: { value: 'hsl(0, 75%, 85%)' },\n 40: { value: 'hsl(0, 75%, 75%)' },\n 60: { value: 'hsl(0, 50%, 50%)' },\n 80: { value: 'hsl(0, 95%, 30%)' },\n 90: { value: 'hsl(0, 100%, 20%)' },\n 100: { value: 'hsl(0, 100%, 15%)' },\n },\n orange: {\n 10: { value: 'hsl(30, 75%, 95%)' },\n 20: { value: 'hsl(30, 75%, 85%)' },\n 40: { value: 'hsl(30, 75%, 75%)' },\n 60: { value: 'hsl(30, 50%, 50%)' },\n 80: { value: 'hsl(30, 95%, 30%)' },\n 90: { value: 'hsl(30, 100%, 20%)' },\n 100: { value: 'hsl(30, 100%, 15%)' },\n },\n yellow: {\n 10: { value: 'hsl(60, 75%, 95%)' },\n 20: { value: 'hsl(60, 75%, 85%)' },\n 40: { value: 'hsl(60, 75%, 75%)' },\n 60: { value: 'hsl(60, 50%, 50%)' },\n 80: { value: 'hsl(60, 95%, 30%)' },\n 90: { value: 'hsl(60, 100%, 20%)' },\n 100: { value: 'hsl(60, 100%, 15%)' },\n },\n green: {\n 10: { value: 'hsl(130, 60%, 95%)' },\n 20: { value: 'hsl(130, 60%, 90%)' },\n 40: { value: 'hsl(130, 44%, 63%)' },\n 60: { value: 'hsl(130, 43%, 46%)' },\n 80: { value: 'hsl(130, 33%, 37%)' },\n 90: { value: 'hsl(130, 27%, 29%)' },\n 100: { value: 'hsl(130, 22%, 23%)' },\n },\n teal: {\n 10: { value: 'hsl(190, 75%, 95%)' },\n 20: { value: 'hsl(190, 75%, 85%)' },\n 40: { value: 'hsl(190, 70%, 70%)' },\n 60: { value: 'hsl(190, 50%, 50%)' },\n 80: { value: 'hsl(190, 95%, 30%)' },\n 90: { value: 'hsl(190, 100%, 20%)' },\n 100: { value: 'hsl(190, 100%, 15%)' },\n },\n blue: {\n 10: { value: 'hsl(220, 95%, 95%)' },\n 20: { value: 'hsl(220, 85%, 85%)' },\n 40: { value: 'hsl(220, 70%, 70%)' },\n 60: { value: 'hsl(220, 50%, 50%)' },\n 80: { value: 'hsl(220, 95%, 30%)' },\n 90: { value: 'hsl(220, 100%, 20%)' },\n 100: { value: 'hsl(220, 100%, 15%)' },\n },\n purple: {\n 10: { value: 'hsl(300, 95%, 95%)' },\n 20: { value: 'hsl(300, 85%, 85%)' },\n 40: { value: 'hsl(300, 70%, 70%)' },\n 60: { value: 'hsl(300, 50%, 50%)' },\n 80: { value: 'hsl(300, 95%, 30%)' },\n 90: { value: 'hsl(300, 100%, 20%)' },\n 100: { value: 'hsl(300, 100%, 15%)' },\n },\n pink: {\n 10: { value: 'hsl(340, 95%, 95%)' },\n 20: { value: 'hsl(340, 90%, 85%)' },\n 40: { value: 'hsl(340, 70%, 70%)' },\n 60: { value: 'hsl(340, 50%, 50%)' },\n 80: { value: 'hsl(340, 95%, 30%)' },\n 90: { value: 'hsl(340, 100%, 20%)' },\n 100: { value: 'hsl(340, 100%, 15%)' },\n },\n neutral: {\n 10: { value: 'hsl(210, 5%, 98%)' },\n 20: { value: 'hsl(210, 5%, 94%)' },\n 40: { value: 'hsl(210, 5%, 87%)' },\n 60: { value: 'hsl(210, 10%, 58%)' },\n 80: { value: 'hsl(210, 10%, 40%)' },\n 90: { value: 'hsl(210, 25%, 25%)' },\n 100: { value: 'hsl(210, 50%, 10%)' },\n },\n primary: {\n 10: { value: '{colors.teal.10.value}' },\n 20: { value: '{colors.teal.20.value}' },\n 40: { value: '{colors.teal.40.value}' },\n 60: { value: '{colors.teal.60.value}' },\n 80: { value: '{colors.teal.80.value}' },\n 90: { value: '{colors.teal.90.value}' },\n 100: { value: '{colors.teal.100.value}' },\n },\n secondary: {\n 10: { value: '{colors.purple.10.value}' },\n 20: { value: '{colors.purple.20.value}' },\n 40: { value: '{colors.purple.40.value}' },\n 60: { value: '{colors.purple.60.value}' },\n 80: { value: '{colors.purple.80.value}' },\n 90: { value: '{colors.purple.90.value}' },\n 100: { value: '{colors.purple.100.value}' },\n },\n font: {\n primary: { value: '{colors.neutral.100.value}' },\n secondary: { value: '{colors.neutral.90.value}' },\n tertiary: { value: '{colors.neutral.80.value}' },\n disabled: { value: '{colors.neutral.60.value}' },\n inverse: { value: '{colors.white.value}' },\n interactive: { value: '{colors.primary.80.value}' },\n // Hover and Focus colors are intentionally different colors.\n // This allows users to distinguish between the current keyboard focus\n // and the location of their pointer\n hover: { value: '{colors.primary.90.value}' },\n // Focus color is set to 100 to ensure enough contrast for accessibility\n focus: { value: '{colors.primary.100.value}' },\n active: { value: '{colors.primary.100.value}' },\n info: { value: '{colors.blue.90.value}' },\n warning: { value: '{colors.orange.90.value}' },\n error: { value: '{colors.red.90.value}' },\n success: { value: '{colors.green.90.value}' },\n },\n background: {\n primary: { value: '{colors.white.value}' },\n secondary: { value: '{colors.neutral.10.value}' },\n tertiary: { value: '{colors.neutral.20.value}' },\n quaternary: { value: '{colors.neutral.60.value}' },\n disabled: { value: '{colors.background.tertiary.value}' },\n info: { value: '{colors.blue.10.value}' },\n warning: { value: '{colors.orange.10.value}' },\n error: { value: '{colors.red.10.value}' },\n success: { value: '{colors.green.10.value}' },\n },\n border: {\n primary: { value: '{colors.neutral.60.value}' },\n secondary: { value: '{colors.neutral.40.value}' },\n tertiary: { value: '{colors.neutral.20.value}' },\n disabled: { value: '{colors.border.tertiary.value}' },\n pressed: { value: '{colors.primary.100.value}' },\n // Focus color is set to 100 to ensure enough contrast for accessibility\n focus: { value: '{colors.primary.100.value}' },\n error: { value: '{colors.red.80.value}' },\n info: { value: '{colors.blue.80.value}' },\n success: { value: '{colors.green.80.value}' },\n warning: { value: '{colors.orange.80.value}' },\n },\n shadow: {\n primary: { value: 'hsla(210, 50%, 10%, 0.25)' },\n secondary: { value: 'hsla(210, 50%, 10%, 0.15)' },\n tertiary: { value: 'hsla(210, 50%, 10%, 0.05)' },\n },\n overlay: {\n 5: { value: 'hsla(0, 0%, 0%, 0.05)' },\n 10: { value: 'hsla(0, 0%, 0%, 0.1)' },\n 20: { value: 'hsla(0, 0%, 0%, 0.2)' },\n 30: { value: 'hsla(0, 0%, 0%, 0.3)' },\n 40: { value: 'hsla(0, 0%, 0%, 0.4)' },\n 50: { value: 'hsla(0, 0%, 0%, 0.5)' },\n 60: { value: 'hsla(0, 0%, 0%, 0.6)' },\n 70: { value: 'hsla(0, 0%, 0%, 0.7)' },\n 80: { value: 'hsla(0, 0%, 0%, 0.8)' },\n 90: { value: 'hsla(0, 0%, 0%, 0.9)' },\n },\n black: { value: 'hsl(0, 0%, 0%)' },\n white: { value: 'hsl(0, 0%, 100%)' },\n transparent: { value: 'transparent' },\n};\n\nexport { colors };\n","const fontSizes = {\n xxxs: { value: '0.375rem' },\n xxs: { value: '0.5rem' },\n xs: { value: '0.75rem' },\n small: { value: '0.875rem' },\n medium: { value: '1rem' },\n large: { value: '1.25rem' },\n xl: { value: '1.5rem' },\n xxl: { value: '2rem' },\n xxxl: { value: '2.5rem' },\n xxxxl: { value: '3rem' },\n};\n\nexport { fontSizes };\n","const fontWeights = {\n hairline: { value: 100 },\n thin: { value: 200 },\n light: { value: 300 },\n normal: { value: 400 },\n medium: { value: 500 },\n semibold: { value: 600 },\n bold: { value: 700 },\n extrabold: { value: 800 },\n black: { value: 900 },\n};\n\nexport { fontWeights };\n","const opacities = {\n 0: { value: '0' },\n 10: { value: '0.1' },\n 20: { value: '0.2' },\n 30: { value: '0.3' },\n 40: { value: '0.4' },\n 50: { value: '0.5' },\n 60: { value: '0.6' },\n 70: { value: '0.7' },\n 80: { value: '0.8' },\n 90: { value: '0.9' },\n 100: { value: '1' },\n};\n\nexport { opacities };\n","const radii = {\n xs: { value: '0.125rem' },\n small: { value: '0.25rem' },\n medium: { value: '0.5rem' },\n large: { value: '1rem' },\n xl: { value: '2rem' },\n xxl: { value: '4rem' },\n xxxl: { value: '8rem' },\n};\n\nexport { radii };\n","const space = {\n zero: { value: '0' },\n xxxs: { value: '0.25rem' },\n xxs: { value: '0.375rem' },\n xs: { value: '0.5rem' },\n small: { value: '0.75rem' },\n medium: { value: '1rem' },\n large: { value: '1.5rem' },\n xl: { value: '2.0rem' },\n xxl: { value: '3.0rem' },\n xxxl: { value: '4.5rem' },\n relative: {\n //creating a second set of sizes using em which will be sized relative to a parent instead of the root\n xxxs: { value: '0.25em' },\n xxs: { value: '0.375em' },\n xs: { value: '0.5em' },\n small: { value: '0.75em' },\n medium: { value: '1em' },\n large: { value: '1.5em' },\n xl: { value: '2.0em' },\n xxl: { value: '3.0em' },\n xxxl: { value: '4.5em' },\n full: { value: '100%' },\n },\n};\n// I want to be able to pass in a Theme object that has extra tokens\n// and it returns that same object type WITH the extra tokens\n\nexport { space };\n","const time = {\n short: { value: '100ms' },\n medium: { value: '250ms' },\n long: { value: '500ms' },\n};\n\nexport { time };\n","import { tokens } from './tokens/index.mjs';\nimport { breakpoints } from './breakpoints.mjs';\n\nconst defaultTheme = {\n tokens,\n breakpoints,\n name: 'default-theme',\n};\n\nexport { defaultTheme };\n","import { borderWidths } from './borderWidths.mjs';\nimport { colors } from './colors.mjs';\nimport { components } from './components/index.mjs';\nimport { fonts } from './fonts.mjs';\nimport { fontSizes } from './fontSizes.mjs';\nimport { fontWeights } from './fontWeights.mjs';\nimport { lineHeights } from './lineHeights.mjs';\nimport { opacities } from './opacities.mjs';\nimport { outlineOffsets } from './outlineOffsets.mjs';\nimport { outlineWidths } from './outlineWidths.mjs';\nimport { radii } from './radii.mjs';\nimport { shadows } from './shadows.mjs';\nimport { space } from './space.mjs';\nimport { time } from './time.mjs';\nimport { transforms } from './transforms.mjs';\n\nconst tokens = {\n components,\n borderWidths,\n colors,\n fonts,\n fontSizes,\n fontWeights,\n lineHeights,\n opacities,\n outlineOffsets,\n outlineWidths,\n radii,\n shadows,\n space,\n time,\n transforms,\n};\nconst reactNativeTokens = {\n colors,\n borderWidths,\n fontSizes: {\n xxs: fontSizes.xxs,\n xs: fontSizes.xs,\n small: fontSizes.small,\n medium: fontSizes.medium,\n large: fontSizes.large,\n xl: fontSizes.xl,\n xxl: fontSizes.xxl,\n xxxl: fontSizes.xxxl,\n },\n fontWeights,\n opacities,\n // React Native doesn't need the relative space values\n space: {\n // use `space.xxxs` to output a value of `2` and avoid odd space numbers\n xxs: space.xxxs,\n xs: space.xs,\n small: space.small,\n medium: space.medium,\n large: space.large,\n xl: space.xl,\n xxl: space.xxl,\n xxxl: space.xxxl,\n },\n radii,\n time,\n};\n\nexport { reactNativeTokens, tokens };\n","import { alert } from './alert.mjs';\nimport { autocomplete } from './autocomplete.mjs';\nimport { authenticator } from './authenticator.mjs';\nimport { badge } from './badge.mjs';\nimport { breadcrumbs } from './breadcrumbs.mjs';\nimport { button } from './button.mjs';\nimport { card } from './card.mjs';\nimport { checkbox } from './checkbox.mjs';\nimport { checkboxfield } from './checkboxField.mjs';\nimport { collection } from './collection.mjs';\nimport { copy } from './copy.mjs';\nimport { dialcodeselect } from './dialCodeSelect.mjs';\nimport { divider } from './divider.mjs';\nimport { dropzone } from './dropZone.mjs';\nimport { accordion } from './accordion.mjs';\nimport { field } from './field.mjs';\nimport { fieldcontrol } from './fieldControl.mjs';\nimport { fieldgroup } from './fieldGroup.mjs';\nimport { fieldset } from './fieldset.mjs';\nimport { fieldmessages } from './fieldMessages.mjs';\nimport { flex } from './flex.mjs';\nimport { heading } from './heading.mjs';\nimport { highlightmatch } from './highlightMatch.mjs';\nimport { icon } from './icon.mjs';\nimport { input } from './input.mjs';\nimport { image } from './image.mjs';\nimport { inappmessaging } from './inAppMessaging.mjs';\nimport { link } from './link.mjs';\nimport { liveness } from './liveness.mjs';\nimport { loader } from './loader.mjs';\nimport { menu } from './menu.mjs';\nimport { message } from './message.mjs';\nimport { pagination } from './pagination.mjs';\nimport { passwordfield } from './passwordField.mjs';\nimport { phonenumberfield } from './phoneNumberField.mjs';\nimport { placeholder } from './placeholder.mjs';\nimport { radio } from './radio.mjs';\nimport { radiogroup } from './radioGroup.mjs';\nimport { rating } from './rating.mjs';\nimport { searchfield } from './searchField.mjs';\nimport { select } from './select.mjs';\nimport { selectfield } from './selectField.mjs';\nimport { sliderfield } from './sliderField.mjs';\nimport { stepperfield } from './stepperField.mjs';\nimport { storagemanager } from './storagemanager.mjs';\nimport { switchfield } from './switchField.mjs';\nimport { table } from './table.mjs';\nimport { tabs } from './tabs.mjs';\nimport { text } from './text.mjs';\nimport { textareafield } from './textAreaField.mjs';\nimport { textfield } from './textField.mjs';\nimport { togglebutton } from './toggleButton.mjs';\nimport { togglebuttongroup } from './toggleButtonGroup.mjs';\n\nconst components = {\n accordion,\n alert,\n authenticator,\n autocomplete,\n badge,\n breadcrumbs,\n button,\n card,\n checkbox,\n checkboxfield,\n collection,\n copy,\n countrycodeselect: dialcodeselect,\n divider,\n dropzone,\n field,\n fieldcontrol,\n fieldgroup,\n fieldmessages,\n fieldset,\n flex,\n heading,\n icon,\n highlightmatch,\n image,\n inappmessaging,\n input,\n link,\n liveness,\n loader,\n menu,\n message,\n pagination,\n passwordfield,\n phonenumberfield,\n placeholder,\n radio,\n radiogroup,\n rating,\n searchfield,\n select,\n selectfield,\n sliderfield,\n stepperfield,\n storagemanager,\n switchfield,\n table,\n tabs,\n text,\n textareafield,\n textfield,\n togglebutton,\n togglebuttongroup,\n};\n\nexport { components };\n","const accordion = {\n backgroundColor: { value: '{colors.background.primary.value}' },\n item: {\n borderColor: { value: '{colors.border.secondary.value}' },\n borderWidth: { value: '{borderWidths.small.value}' },\n borderStyle: { value: 'solid' },\n borderRadius: { value: '{radii.small.value}' },\n trigger: {\n alignItems: { value: 'center' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n color: { value: 'inherit' },\n gap: { value: '{space.small.value}' },\n justifyContent: { value: 'space-between' },\n paddingBlock: { value: '{space.xs.value}' },\n paddingInline: { value: '{space.small.value}' },\n _hover: {\n color: { value: 'inherit' },\n backgroundColor: { value: '{colors.overlay.5.value}' },\n },\n _focus: {\n borderColor: { value: '{colors.border.focus.value}' },\n boxShadow: {\n value: {\n offsetX: '0',\n offsetY: '0',\n blurRadius: '0',\n spreadRadius: '2px',\n color: '{colors.border.focus.value}',\n },\n },\n },\n },\n content: {\n color: { value: 'inherit' },\n paddingInline: { value: '{space.small.value}' },\n paddingBlockEnd: { value: '{space.small.value}' },\n paddingBlockStart: { value: '{space.xxxs.value}' },\n },\n icon: {\n color: { value: '{colors.font.tertiary.value}' },\n transitionDuration: { value: '{time.medium.value}' },\n transitionTimingFunction: { value: 'cubic-bezier(0.87, 0, 0.13, 1)' },\n },\n },\n};\n\nexport { accordion };\n","const alert = {\n // Default styles\n alignItems: { value: 'center' },\n justifyContent: { value: 'space-between' },\n color: { value: '{colors.font.primary.value}' },\n backgroundColor: { value: '{colors.background.tertiary.value}' },\n paddingBlock: { value: '{space.small.value}' },\n paddingInline: { value: '{space.medium.value}' },\n icon: {\n size: { value: '{fontSizes.xl.value}' },\n },\n heading: {\n fontSize: { value: '{fontSizes.medium.value}' },\n fontWeight: { value: '{fontWeights.bold.value}' },\n },\n // Variations\n info: {\n color: { value: '{colors.font.info.value}' },\n backgroundColor: { value: '{colors.background.info.value}' },\n },\n error: {\n color: { value: '{colors.font.error.value}' },\n backgroundColor: { value: '{colors.background.error.value}' },\n },\n warning: {\n color: { value: '{colors.font.warning.value}' },\n backgroundColor: { value: '{colors.background.warning.value}' },\n },\n success: {\n color: { value: '{colors.font.success.value}' },\n backgroundColor: { value: '{colors.background.success.value}' },\n },\n};\n\nexport { alert };\n","const authenticator = {\n maxWidth: { value: '60rem' },\n modal: {\n width: { value: '{space.relative.full}' },\n height: { value: '{space.relative.full}' },\n backgroundColor: { value: '{colors.overlay.50.value}' },\n top: { value: '{space.zero}' },\n left: { value: '{space.zero}' },\n },\n container: {\n widthMax: { value: '30rem' },\n },\n router: {\n borderWidth: { value: '{borderWidths.small.value}' },\n borderStyle: { value: 'solid' },\n borderColor: { value: '{colors.border.primary.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n boxShadow: { value: '{shadows.medium.value}' },\n },\n footer: {\n paddingBottom: { value: '{space.medium.value}' },\n },\n form: {\n padding: { value: '{space.xl.value}' },\n },\n state: {\n inactive: {\n backgroundColor: { value: '{colors.background.secondary.value}' },\n },\n },\n orContainer: {\n color: { value: '{colors.neutral.80.value}' },\n orLine: {\n backgroundColor: { value: '{colors.background.primary.value}' },\n },\n },\n};\n\nexport { authenticator };\n","const autocomplete = {\n menu: {\n width: { value: '100%' },\n marginBlockStart: { value: '{space.xxxs}' },\n backgroundColor: { value: '{colors.background.primary}' },\n borderColor: { value: '{colors.border.primary}' },\n borderWidth: { value: '{borderWidths.small}' },\n borderStyle: { value: 'solid' },\n borderRadius: { value: '{radii.small}' },\n options: {\n display: { value: 'flex' },\n flexDirection: { value: 'column' },\n maxHeight: { value: '300px' },\n },\n option: {\n backgroundColor: { value: '{colors.background.primary}' },\n color: { value: 'currentcolor' },\n cursor: { value: 'pointer' },\n transitionDuration: { value: '{time.short}' },\n transitionProperty: { value: 'background-color, color' },\n transitionTimingFunction: { value: 'ease' },\n _active: {\n backgroundColor: { value: '{colors.primary.80}' },\n color: { value: '{colors.white}' },\n },\n },\n _empty: {\n display: { value: 'flex' },\n },\n _loading: {\n alignItems: { value: 'center' },\n display: { value: 'flex' },\n gap: { value: '{space.xxxs}' },\n },\n spaceShared: {\n paddingBlock: { value: '{space.xs}' },\n paddingInline: { value: '{space.small}' },\n },\n },\n};\n\nexport { autocomplete };\n","const badge = {\n // Default styles\n color: { value: '{colors.font.primary.value}' },\n lineHeight: { value: 1 },\n fontWeight: { value: '{fontWeights.semibold.value}' },\n fontSize: { value: '{fontSizes.small.value}' },\n textAlign: { value: 'center' },\n paddingVertical: { value: '{space.xs.value}' },\n paddingHorizontal: { value: '{space.small.value}' },\n backgroundColor: { value: '{colors.background.tertiary.value}' },\n // An arbitrarily large value to ensure that the left and right sides of the badge are perfectly rounded for any size variation\n borderRadius: { value: '{radii.xl.value}' },\n // Variations\n info: {\n color: { value: '{colors.font.info.value}' },\n backgroundColor: { value: '{colors.background.info.value}' },\n },\n warning: {\n color: { value: '{colors.font.warning.value}' },\n backgroundColor: { value: '{colors.background.warning.value}' },\n },\n success: {\n color: { value: '{colors.font.success.value}' },\n backgroundColor: { value: '{colors.background.success.value}' },\n },\n error: {\n color: { value: '{colors.font.error.value}' },\n backgroundColor: { value: '{colors.background.error.value}' },\n },\n // Sizes\n small: {\n fontSize: { value: '{fontSizes.xs.value}' },\n paddingVertical: { value: '{space.xxs.value}' },\n paddingHorizontal: { value: '{space.xs.value}' },\n },\n // medium is the default size\n large: {\n fontSize: { value: '{fontSizes.medium.value}' },\n paddingVertical: { value: '{space.small.value}' },\n paddingHorizontal: { value: '{space.medium.value}' },\n },\n};\n\nexport { badge };\n","const breadcrumbs = {\n flexDirection: { value: 'row' },\n flexWrap: { value: 'wrap' },\n gap: { value: '0' },\n color: { value: '{colors.font.tertiary}' },\n item: {\n flexDirection: { value: 'row' },\n color: { value: 'inherit' },\n fontSize: { value: 'inherit' },\n alignItems: { value: 'center' },\n lineHeight: { value: '1' },\n },\n separator: {\n color: { value: 'inherit' },\n fontSize: { value: 'inherit' },\n paddingInline: { value: '{space.xxs}' },\n },\n link: {\n color: { value: '{components.link.color}' },\n fontSize: { value: 'inherit' },\n fontWeight: { value: 'normal' },\n textDecoration: { value: 'none' },\n paddingInline: { value: '{space.xs}' },\n paddingBlock: { value: '{space.xxs}' },\n current: {\n color: { value: 'inherit' },\n fontSize: { value: 'inherit' },\n fontWeight: { value: 'normal' },\n textDecoration: { value: 'none' },\n },\n },\n};\n\nexport { breadcrumbs };\n","const button = {\n // shared styles\n fontWeight: { value: '{fontWeights.bold.value}' },\n transitionDuration: {\n value: '{components.fieldcontrol.transitionDuration.value}',\n },\n fontSize: { value: '{components.fieldcontrol.fontSize.value}' },\n lineHeight: { value: '{components.fieldcontrol.lineHeight.value}' },\n paddingBlockStart: {\n value: '{components.fieldcontrol.paddingBlockStart.value}',\n },\n paddingBlockEnd: {\n value: '{components.fieldcontrol.paddingBlockEnd.value}',\n },\n paddingInlineStart: {\n value: '{components.fieldcontrol.paddingInlineStart.value}',\n },\n paddingInlineEnd: {\n value: '{components.fieldcontrol.paddingInlineEnd.value}',\n },\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{components.fieldcontrol.borderColor.value}' },\n borderWidth: { value: '{components.fieldcontrol.borderWidth.value}' },\n borderStyle: { value: '{components.fieldcontrol.borderStyle.value}' },\n borderRadius: { value: '{components.fieldcontrol.borderRadius.value}' },\n color: { value: '{colors.font.primary.value}' },\n _hover: {\n color: { value: '{colors.font.focus.value}' },\n backgroundColor: { value: '{colors.primary.10.value}' },\n borderColor: { value: '{colors.primary.60.value}' },\n },\n _focus: {\n color: { value: '{colors.font.focus.value}' },\n backgroundColor: { value: '{colors.primary.10.value}' },\n borderColor: { value: '{colors.border.focus.value}' },\n boxShadow: { value: '{components.fieldcontrol._focus.boxShadow.value}' },\n },\n _active: {\n color: { value: '{colors.font.active.value}' },\n backgroundColor: { value: '{colors.primary.20.value}' },\n borderColor: { value: '{colors.primary.100.value}' },\n },\n _loading: {\n color: { value: '{colors.font.disabled.value}' },\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.border.tertiary.value}' },\n },\n _disabled: {\n color: { value: '{colors.font.disabled.value}' },\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.border.tertiary.value}' },\n },\n // variations\n outlined: {\n info: {\n borderColor: { value: '{colors.blue.60.value}' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.blue.100}' },\n _hover: {\n borderColor: { value: '{colors.blue.60.value}' },\n backgroundColor: { value: '{colors.blue.10.value}' },\n color: { value: '{colors.blue.100.value}' },\n },\n _focus: {\n borderColor: { value: '{colors.blue.100.value}' },\n backgroundColor: { value: '{colors.blue.10.value}' },\n color: { value: '{colors.blue.100.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.info._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: '{colors.blue.100.value}' },\n backgroundColor: { value: '{colors.blue.20.value}' },\n color: { value: '{colors.blue.100.value}' },\n },\n },\n warning: {\n borderColor: { value: '{colors.orange.60.value}' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.orange.100}' },\n _hover: {\n borderColor: { value: '{colors.orange.60.value}' },\n backgroundColor: { value: '{colors.orange.10.value}' },\n color: { value: '{colors.orange.100.value}' },\n },\n _focus: {\n borderColor: { value: '{colors.orange.100.value}' },\n backgroundColor: { value: '{colors.orange.10.value}' },\n color: { value: '{colors.orange.100.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.warning._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: '{colors.orange.100.value}' },\n backgroundColor: { value: '{colors.orange.20.value}' },\n color: { value: '{colors.orange.100.value}' },\n },\n },\n success: {\n borderColor: { value: '{colors.green.60.value}' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.green.100}' },\n _hover: {\n borderColor: { value: '{colors.green.60.value}' },\n backgroundColor: { value: '{colors.green.10.value}' },\n color: { value: '{colors.green.100.value}' },\n },\n _focus: {\n borderColor: { value: '{colors.green.100.value}' },\n backgroundColor: { value: '{colors.green.10.value}' },\n color: { value: '{colors.green.100.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.success._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: '{colors.green.100.value}' },\n backgroundColor: { value: '{colors.green.20.value}' },\n color: { value: '{colors.green.100.value}' },\n },\n },\n error: {\n borderColor: { value: '{colors.red.80.value}' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.red.100}' },\n _hover: {\n borderColor: { value: '{colors.red.80.value}' },\n backgroundColor: { value: '{colors.red.10.value}' },\n color: { value: '{colors.red.100.value}' },\n },\n _focus: {\n borderColor: { value: '{colors.red.100.value}' },\n backgroundColor: { value: '{colors.red.10.value}' },\n color: { value: '{colors.red.100.value}' },\n boxShadow: {\n value: '{components.fieldcontrol._error._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: '{colors.red.100.value}' },\n backgroundColor: { value: '{colors.red.20.value}' },\n color: { value: '{colors.red.100.value}' },\n },\n },\n overlay: {\n borderColor: { value: '{colors.overlay.60.value}' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.font.primary.value}' },\n _hover: {\n borderColor: { value: '{colors.overlay.60.value}' },\n backgroundColor: { value: '{colors.overlay.5.value}' },\n color: { value: '{colors.neutral.90.value}' },\n },\n _focus: {\n borderColor: { value: '{colors.overlay.90.value}' },\n backgroundColor: { value: '{colors.overlay.5.value}' },\n color: { value: '{colors.neutral.90.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.overlay._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: '{colors.overlay.90.value}' },\n backgroundColor: { value: '{colors.overlay.10.value}' },\n color: { value: '{colors.neutral.100.value}' },\n },\n },\n },\n primary: {\n borderColor: { value: 'transparent' },\n borderWidth: { value: '{borderWidths.small.value}' },\n borderStyle: { value: 'solid' },\n backgroundColor: { value: '{colors.primary.80.value}' },\n color: { value: '{colors.font.inverse.value}' },\n _disabled: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.background.disabled.value}' },\n color: { value: '{colors.font.disabled.value}' },\n },\n _loading: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.background.disabled.value}' },\n color: { value: '{colors.font.disabled.value}' },\n },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.primary.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.primary.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n boxShadow: { value: '{components.fieldcontrol._focus.boxShadow.value}' },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.primary.100.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n info: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.blue.80}' },\n color: { value: '{colors.font.inverse.value}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.blue.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.blue.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.info._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.blue.100.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n },\n warning: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.orange.80}' },\n color: { value: '{colors.font.inverse.value}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.orange.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.orange.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.overlay._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.orange.100.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n },\n error: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.80}' },\n color: { value: '{colors.font.inverse.value}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n boxShadow: {\n value: '{components.fieldcontrol._error._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.100.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n },\n success: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.green.80}' },\n color: { value: '{colors.font.inverse.value}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.green.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.green.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.success._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.green.100.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n },\n overlay: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.overlay.70}' },\n color: { value: '{colors.font.inverse.value}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.overlay.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.overlay.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.overlay._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.overlay.90.value}' },\n color: { value: '{colors.font.inverse.value}' },\n },\n },\n },\n menu: {\n borderWidth: { value: '{space.zero.value}' },\n backgroundColor: { value: 'transparent' },\n justifyContent: { value: 'start' },\n // Focus and hover styles are identical for menu variation\n // because for Menu primitive, menu items are forced to be focused even\n // for mouse interactions, making it impossible to distinguish the two interactions\n _hover: {\n color: { value: '{colors.font.inverse.value}' },\n backgroundColor: { value: '{colors.primary.80.value}' },\n },\n _focus: {\n color: { value: '{colors.font.inverse.value}' },\n backgroundColor: { value: '{colors.primary.80.value}' },\n },\n _active: {\n color: { value: '{colors.font.inverse.value}' },\n backgroundColor: { value: '{colors.primary.90.value}' },\n },\n _disabled: {\n color: { value: '{colors.font.disabled.value}' },\n },\n },\n link: {\n backgroundColor: { value: 'transparent' },\n borderColor: { value: 'transparent' },\n borderWidth: { value: '{borderWidths.small.value}' },\n color: { value: '{colors.font.interactive.value}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.primary.10.value}' },\n color: { value: '{colors.font.hover.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.primary.10.value}' },\n color: { value: '{colors.font.focus.value}' },\n boxShadow: { value: '{components.fieldcontrol._focus.boxShadow.value}' },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.primary.20.value}' },\n color: { value: '{colors.font.active.value}' },\n },\n _disabled: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.font.disabled.value}' },\n },\n _loading: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.font.disabled.value}' },\n },\n info: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.blue.100}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.blue.10.value}' },\n color: { value: '{colors.blue.90.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.blue.10.value}' },\n color: { value: '{colors.blue.100.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.info._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.blue.20.value}' },\n color: { value: '{colors.blue.100.value}' },\n },\n },\n warning: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.orange.100}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.orange.10.value}' },\n color: { value: '{colors.orange.90.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.orange.10.value}' },\n color: { value: '{colors.orange.100.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.warning._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.orange.20.value}' },\n color: { value: '{colors.orange.100.value}' },\n },\n },\n success: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.green.100}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.green.10.value}' },\n color: { value: '{colors.green.90.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.green.10.value}' },\n color: { value: '{colors.green.100.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.success._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.green.20.value}' },\n color: { value: '{colors.green.100.value}' },\n },\n },\n error: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.red.100}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.10.value}' },\n color: { value: '{colors.red.90.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.10.value}' },\n color: { value: '{colors.red.100.value}' },\n boxShadow: {\n value: '{components.fieldcontrol._error._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.20.value}' },\n color: { value: '{colors.red.100.value}' },\n },\n },\n overlay: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.neutral.100}' },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.overlay.5.value}' },\n color: { value: '{colors.overlay.80.value}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.overlay.5.value}' },\n color: { value: '{colors.overlay.90.value}' },\n boxShadow: {\n value: '{components.fieldcontrol.overlay._focus.boxShadow.value}',\n },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.overlay.10.value}' },\n color: { value: '{colors.overlay.90.value}' },\n },\n },\n },\n warning: {\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.red.60}' },\n borderWidth: { value: '{borderWidths.small}' },\n color: { value: '{colors.red.60}' },\n _hover: {\n borderColor: { value: '{colors.red.80}' },\n backgroundColor: { value: '{colors.red.10}' },\n color: { value: '{colors.font.error}' },\n },\n _focus: {\n borderColor: { value: '{colors.red.80}' },\n backgroundColor: { value: '{colors.red.10}' },\n color: { value: '{colors.red.80}' },\n boxShadow: { value: '{components.fieldcontrol._error._focus.boxShadow}' },\n },\n _active: {\n borderColor: { value: '{colors.red.100}' },\n backgroundColor: { value: '{colors.red.20}' },\n color: { value: '{colors.red.100}' },\n },\n _disabled: {\n borderColor: { value: '{colors.border.tertiary}' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.font.disabled}' },\n },\n _loading: {\n borderColor: { value: '{colors.border.tertiary}' },\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.font.disabled}' },\n },\n },\n destructive: {\n borderColor: { value: 'transparent' },\n borderWidth: { value: '{borderWidths.small}' },\n borderStyle: { value: 'solid' },\n backgroundColor: { value: '{colors.red.60}' },\n color: { value: '{colors.font.inverse}' },\n _disabled: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.background.disabled}' },\n color: { value: '{colors.font.disabled}' },\n },\n _loading: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.background.disabled}' },\n color: { value: '{colors.font.disabled}' },\n },\n _hover: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.80}' },\n color: { value: '{colors.font.inverse}' },\n },\n _focus: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.80}' },\n color: { value: '{colors.font.inverse}' },\n boxShadow: { value: '{components.fieldcontrol._error._focus.boxShadow}' },\n },\n _active: {\n borderColor: { value: 'transparent' },\n backgroundColor: { value: '{colors.red.100}' },\n color: { value: '{colors.font.inverse}' },\n },\n },\n // sizes\n small: {\n fontSize: { value: '{components.fieldcontrol.small.fontSize.value}' },\n paddingBlockStart: {\n value: '{components.fieldcontrol.small.paddingBlockStart.value}',\n },\n paddingBlockEnd: {\n value: '{components.fieldcontrol.small.paddingBlockEnd.value}',\n },\n paddingInlineStart: {\n value: '{components.fieldcontrol.small.paddingInlineStart.value}',\n },\n paddingInlineEnd: {\n value: '{components.fieldcontrol.small.paddingInlineEnd.value}',\n },\n },\n large: {\n fontSize: { value: '{components.fieldcontrol.large.fontSize.value}' },\n paddingBlockStart: {\n value: '{components.fieldcontrol.large.paddingBlockStart.value}',\n },\n paddingBlockEnd: {\n value: '{components.fieldcontrol.large.paddingBlockEnd.value}',\n },\n paddingInlineStart: {\n value: '{components.fieldcontrol.large.paddingInlineStart.value}',\n },\n paddingInlineEnd: {\n value: '{components.fieldcontrol.large.paddingInlineEnd.value}',\n },\n },\n loaderWrapper: {\n alignItems: {\n value: 'center',\n },\n gap: {\n value: '{space.xs.value}',\n },\n },\n};\n\nexport { button };\n","const card = {\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderRadius: { value: '{radii.xs.value}' },\n borderWidth: { value: '0' },\n borderStyle: { value: 'solid' },\n borderColor: { value: 'transparent' },\n boxShadow: { value: 'none' },\n padding: { value: '{space.medium.value}' },\n outlined: {\n backgroundColor: { value: '{components.card.backgroundColor.value}' },\n borderRadius: { value: '{radii.xs.value}' },\n borderWidth: { value: '{borderWidths.small.value}' },\n borderStyle: { value: 'solid' },\n borderColor: { value: '{colors.border.primary.value}' },\n boxShadow: { value: '{components.card.boxShadow.value}' },\n },\n elevated: {\n backgroundColor: { value: '{components.card.backgroundColor.value}' },\n borderRadius: { value: '{radii.xs.value}' },\n borderWidth: { value: '0' },\n borderStyle: { value: 'solid' },\n borderColor: { value: 'transparent' },\n boxShadow: { value: '{shadows.medium.value}' },\n },\n};\n\nexport { card };\n","const checkbox = {\n cursor: { value: 'pointer' },\n alignItems: { value: 'center' },\n _disabled: {\n cursor: {\n value: 'not-allowed',\n },\n },\n button: {\n position: { value: 'relative' },\n alignItems: { value: 'center' },\n justifyContent: { value: 'center' },\n color: { value: '{colors.font.inverse.value}' },\n before: {\n width: { value: '100%' },\n height: { value: '100%' },\n borderWidth: { value: '{borderWidths.medium.value}' },\n borderRadius: { value: '20%' },\n borderStyle: { value: 'solid' },\n borderColor: { value: '{colors.border.primary.value}' },\n },\n _focus: {\n outlineColor: { value: '{colors.transparent.value}' },\n outlineStyle: { value: 'solid' },\n outlineWidth: { value: '{outlineWidths.medium.value}' },\n outlineOffset: { value: '{outlineOffsets.medium.value}' },\n borderColor: { value: '{colors.border.focus.value}' },\n boxShadow: { value: '{components.fieldcontrol._focus.boxShadow.value}' },\n },\n _disabled: {\n borderColor: { value: '{colors.border.disabled.value}' },\n },\n _error: {\n borderColor: { value: '{colors.border.error.value}' },\n _focus: {\n borderColor: { value: '{colors.border.error.value}' },\n boxShadow: {\n value: '{components.fieldcontrol._error._focus.boxShadow.value}',\n },\n },\n },\n },\n icon: {\n backgroundColor: { value: '{colors.primary.80.value}' },\n borderRadius: { value: '20%' },\n opacity: { value: '{opacities.0.value}' },\n transform: { value: 'scale(0)' },\n transitionProperty: { value: 'all' },\n transitionDuration: { value: '{time.short.value}' },\n transitionTimingFunction: { value: 'ease-in-out' },\n _checked: {\n opacity: { value: '{opacities.100.value}' },\n transform: { value: 'scale(1)' },\n _disabled: {\n backgroundColor: { value: '{colors.background.disabled.value}' },\n },\n },\n _indeterminate: {\n opacity: { value: '{opacities.100.value}' },\n transform: { value: 'scale(1)' },\n _disabled: {\n backgroundColor: { value: '{colors.background.disabled.value}' },\n },\n },\n },\n label: {\n color: { value: '{components.text.color.value}' },\n _disabled: {\n color: {\n value: '{colors.font.disabled.value}',\n },\n },\n },\n};\n\nexport { checkbox };\n","const checkboxfield = {\n alignItems: { value: 'flex-start' },\n alignContent: { value: 'center' },\n flexDirection: { value: 'column' },\n justifyContent: { value: 'center' },\n};\n\nexport { checkboxfield };\n","//we are reusing the types from the nested components but new tokens need to be created that reference the previous tokens so that they can inherit the needed values but can be overwritten and only effect the collection component.\n//only a subset of the design tokens of the nested components are being exposed, this can be expanded later.\nconst collection = {\n pagination: {\n current: {\n color: { value: '{components.pagination.current.color}' },\n backgroundColor: {\n value: '{components.pagination.current.backgroundColor}',\n },\n },\n button: {\n color: { value: '{components.pagination.button.color}' },\n _hover: {\n backgroundColor: {\n value: '{components.pagination.button.hover.backgroundColor}',\n },\n color: { value: '{components.pagination.button.hover.color}' },\n },\n _disabled: {\n color: { value: '{components.pagination.button.disabled.color}' },\n },\n },\n },\n search: {\n input: {\n color: { value: '{components.searchfield.color}' },\n },\n button: {\n color: { value: '{components.searchfield.button.color}' },\n _active: {\n backgroundColor: {\n value: '{components.searchfield.button._active.backgroundColor}',\n },\n borderColor: {\n value: '{components.searchfield.button._active.borderColor}',\n },\n color: { value: '{components.searchfield.button._active.color}' },\n },\n _disabled: {\n backgroundColor: {\n value: '{components.searchfield.button._disabled.backgroundColor}',\n },\n borderColor: {\n value: '{components.searchfield.button._disabled.borderColor}',\n },\n color: {\n value: '{components.searchfield.button._disabled.color}',\n },\n },\n _focus: {\n backgroundColor: {\n value: '{components.searchfield.button._focus.backgroundColor}',\n },\n borderColor: {\n value: '{components.searchfield.button._focus.borderColor}',\n },\n color: { value: '{components.searchfield.button._focus.color}' },\n },\n _hover: {\n backgroundColor: {\n value: '{components.searchfield.button._hover.backgroundColor}',\n },\n borderColor: {\n value: '{components.searchfield.button._hover.borderColor}',\n },\n color: { value: '{components.searchfield.button._hover.color}' },\n },\n },\n },\n};\n\nexport { collection };\n","const copy = {\n fontSize: { value: '{fontSizes.xs}' },\n gap: { value: '{space.relative.medium}' },\n svg: {\n path: {\n fill: {\n value: '{colors.font.primary}',\n },\n },\n },\n toolTip: {\n bottom: { value: '{space.large}' },\n color: { value: '{colors.teal.100}' },\n fontSize: { value: '{fontSizes.xxs}' },\n },\n};\n\nexport { copy };\n","const dialcodeselect = {\n height: {\n value: '{space.relative.full.value}',\n },\n};\n\nexport { dialcodeselect };\n","const divider = {\n borderStyle: { value: 'solid' },\n borderColor: { value: '{colors.border.primary.value}' },\n borderWidth: { value: '{borderWidths.medium.value}' },\n label: {\n color: { value: '{colors.font.tertiary.value}' },\n paddingInline: { value: '{space.medium.value}' },\n fontSize: { value: '{fontSizes.small.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n },\n small: {\n borderWidth: { value: '{borderWidths.small.value}' },\n },\n large: {\n borderWidth: { value: '{borderWidths.large.value}' },\n },\n opacity: {\n value: '{opacities.60.value}',\n },\n};\n\nexport { divider };\n","const dropzone = {\n backgroundColor: { value: '{colors.background.primary}' },\n borderRadius: { value: '{radii.small}' },\n borderColor: { value: '{colors.border.primary}' },\n borderStyle: { value: 'dashed' },\n borderWidth: { value: '{borderWidths.small}' },\n color: { value: '{colors.font.primary}' },\n gap: { value: '{space.small}' },\n paddingBlock: { value: '{space.xl}' },\n paddingInline: { value: '{space.large}' },\n textAlign: { value: 'center' },\n _active: {\n backgroundColor: { value: '{colors.primary.10}' },\n borderRadius: { value: '{components.dropzone.borderRadius}' },\n borderColor: { value: '{colors.border.pressed}' },\n borderStyle: { value: '{components.dropzone.borderStyle}' },\n borderWidth: { value: '{components.dropzone.borderWidth}' },\n color: { value: '{colors.font.primary}' },\n },\n _disabled: {\n backgroundColor: { value: '{colors.background.disabled}' },\n borderRadius: { value: '{components.dropzone.borderRadius}' },\n borderColor: { value: '{colors.border.disabled}' },\n borderStyle: { value: '{components.dropzone.borderStyle}' },\n borderWidth: { value: '{components.dropzone.borderWidth}' },\n color: { value: '{colors.font.disabled}' },\n },\n accepted: {\n backgroundColor: { value: '{colors.background.success}' },\n borderRadius: { value: '{components.dropzone.borderRadius}' },\n borderColor: { value: '{colors.border.success}' },\n borderStyle: { value: '{components.dropzone.borderStyle}' },\n borderWidth: { value: '{components.dropzone.borderWidth}' },\n color: { value: '{colors.font.success}' },\n },\n rejected: {\n backgroundColor: { value: '{colors.background.error}' },\n borderRadius: { value: '{components.dropzone.borderRadius}' },\n borderColor: { value: '{colors.border.pressed}' },\n borderStyle: { value: '{components.dropzone.borderStyle}' },\n borderWidth: { value: '{components.dropzone.borderWidth}' },\n color: { value: '{colors.font.error}' },\n },\n};\n\nexport { dropzone };\n","const field = {\n // default styles\n gap: { value: '{space.xs.value}' },\n fontSize: { value: '{fontSizes.medium.value}' },\n flexDirection: { value: 'column' },\n // Adjust base fontSize and gap for small and large sizes\n small: {\n gap: { value: '{space.xxxs.value}' },\n fontSize: { value: '{fontSizes.small.value}' },\n },\n large: {\n gap: { value: '{space.small.value}' },\n fontSize: { value: '{fontSizes.large.value}' },\n },\n label: {\n color: { value: '{colors.font.secondary.value}' },\n },\n};\n\nexport { field };\n","const fieldcontrol = {\n borderStyle: { value: 'solid' },\n borderColor: { value: '{colors.border.primary.value}' },\n borderWidth: { value: '{borderWidths.small.value}' },\n borderRadius: { value: '{radii.small.value}' },\n color: { value: '{colors.font.primary.value}' },\n paddingBlockStart: {\n value: '{space.xs.value}',\n },\n paddingBlockEnd: {\n value: '{space.xs.value}',\n },\n paddingInlineStart: {\n value: '{space.medium.value}',\n },\n paddingInlineEnd: {\n value: '{space.medium.value}',\n },\n fontSize: { value: '{components.field.fontSize.value}' },\n lineHeight: { value: '{lineHeights.medium.value}' },\n transitionDuration: { value: '{time.medium.value}' },\n outlineColor: { value: '{colors.transparent.value}' },\n outlineStyle: { value: 'solid' },\n outlineWidth: { value: '{outlineWidths.medium.value}' },\n outlineOffset: { value: '{outlineOffsets.medium.value}' },\n small: {\n fontSize: { value: '{components.field.small.fontSize.value}' },\n paddingBlockStart: {\n value: '{space.xxs.value}',\n },\n paddingBlockEnd: {\n value: '{space.xxs.value}',\n },\n paddingInlineStart: {\n value: '{space.small.value}',\n },\n paddingInlineEnd: {\n value: '{space.small.value}',\n },\n },\n large: {\n fontSize: { value: '{components.field.large.fontSize.value}' },\n paddingBlockStart: {\n value: '{space.xs.value}',\n },\n paddingBlockEnd: {\n value: '{space.xs.value}',\n },\n paddingInlineStart: {\n value: '{space.medium.value}',\n },\n paddingInlineEnd: {\n value: '{space.medium.value}',\n },\n },\n quiet: {\n borderStyle: { value: 'none' },\n borderInlineStart: { value: 'none' },\n borderInlineEnd: { value: 'none' },\n borderBlockStart: { value: 'none' },\n borderRadius: { value: '0' },\n _focus: {\n borderBlockEndColor: { value: 'transparent' },\n boxShadow: {\n value: '{components.fieldcontrol._focus.boxShadow.value}',\n },\n },\n _error: {\n borderBlockEndColor: { value: '{colors.border.error.value}' },\n _focus: {\n borderBlockEndColor: { value: 'transparent' },\n boxShadow: {\n value: '{components.fieldcontrol._error._focus.boxShadow.value}',\n },\n },\n },\n },\n _focus: {\n // These focus styles have been calibrated to create\n // a highly visible focus indicator per WCAG 2.2 guidlines:\n // See: https://www.w3.org/TR/WCAG22/#focus-appearance\n //\n // Key features:\n // * Focus indicator area is at least the 2 CSS px perimeter around the component.\n // * Contrast between focused and unfocused area of contrast has a ratio of 3:1\n //\n // IMPORTANT: Must recalibrate if `colors.border.focus` are changed\n borderColor: { value: '{colors.border.focus.value}' },\n boxShadow: {\n value: {\n offsetX: '0px',\n offsetY: '0px',\n blurRadius: '0px',\n spreadRadius: '2px',\n color: '{colors.border.focus.value}',\n },\n },\n },\n _disabled: {\n color: { value: '{colors.font.disabled.value}' },\n cursor: { value: 'not-allowed' },\n borderColor: { value: '{colors.transparent.value}' },\n backgroundColor: { value: '{colors.background.disabled.value}' },\n },\n _error: {\n borderColor: { value: '{colors.border.error.value}' },\n color: { value: '{colors.font.error.value}' },\n _focus: {\n boxShadow: {\n value: {\n offsetX: '0px',\n offsetY: '0px',\n blurRadius: '0px',\n spreadRadius: '2px',\n color: '{colors.border.error.value}',\n },\n },\n },\n },\n info: {\n _focus: {\n boxShadow: {\n value: {\n offsetX: '0px',\n offsetY: '0px',\n blurRadius: '0px',\n spreadRadius: '2px',\n color: '{colors.blue.100.value}',\n },\n },\n },\n },\n warning: {\n _focus: {\n boxShadow: {\n value: {\n offsetX: '0px',\n offsetY: '0px',\n blurRadius: '0px',\n spreadRadius: '2px',\n color: '{colors.orange.100.value}',\n },\n },\n },\n },\n success: {\n _focus: {\n boxShadow: {\n value: {\n offsetX: '0px',\n offsetY: '0px',\n blurRadius: '0px',\n spreadRadius: '2px',\n color: '{colors.green.100.value}',\n },\n },\n },\n },\n overlay: {\n _focus: {\n boxShadow: {\n value: {\n offsetX: '0px',\n offsetY: '0px',\n blurRadius: '0px',\n spreadRadius: '2px',\n color: '{colors.overlay.90.value}',\n },\n },\n },\n },\n};\n\nexport { fieldcontrol };\n","const fieldgroup = {\n gap: { value: '{space.zero.value}' },\n vertical: {\n alignItems: { value: 'center' },\n },\n outer: {\n alignItems: { value: 'center' },\n },\n};\n\nexport { fieldgroup };\n","const fieldmessages = {\n error: {\n color: { value: '{colors.font.error.value}' },\n fontSize: { value: '{fontSizes.small.value}' },\n },\n description: {\n color: { value: '{colors.font.secondary.value}' },\n fontStyle: { value: 'italic' },\n fontSize: { value: '{fontSizes.small.value}' },\n },\n};\n\nexport { fieldmessages };\n","const fieldset = {\n backgroundColor: { value: 'transparent' },\n borderRadius: { value: '{radii.xs.value}' },\n flexDirection: {\n value: 'column',\n },\n gap: { value: '{components.field.gap.value}' },\n legend: {\n color: { value: '{colors.font.primary.value}' },\n fontSize: { value: '{components.field.fontSize.value}' },\n fontWeight: { value: '{fontWeights.bold.value}' },\n lineHeight: { value: '{lineHeights.medium.value}' },\n small: {\n fontSize: '{components.field.small.fontSize.value}',\n },\n large: {\n fontSize: '{components.field.large.fontSize.value}',\n },\n },\n outlined: {\n padding: '{space.medium.value}',\n borderColor: '{colors.neutral.40.value}',\n borderWidth: '{borderWidths.small.value}',\n borderStyle: 'solid',\n small: {\n padding: '{space.small.value}',\n },\n large: {\n padding: '{space.large.value}',\n },\n },\n small: {\n gap: '{components.field.small.gap.value}',\n },\n large: {\n gap: '{components.field.large.gap.value}',\n },\n};\n\nexport { fieldset };\n","const flex = {\n gap: { value: '{space.medium.value}' },\n justifyContent: { value: 'normal' },\n alignItems: { value: 'stretch' },\n alignContent: { value: 'normal' },\n flexWrap: { value: 'nowrap' },\n};\n\nexport { flex };\n","const heading = {\n color: { value: '{colors.font.primary.value}' },\n lineHeight: { value: '{lineHeights.small.value}' },\n 1: {\n fontSize: { value: '{fontSizes.xxxxl.value}' },\n fontWeight: { value: '{fontWeights.light.value}' },\n },\n 2: {\n fontSize: { value: '{fontSizes.xxxl.value}' },\n fontWeight: { value: '{fontWeights.normal.value}' },\n },\n 3: {\n fontSize: { value: '{fontSizes.xxl.value}' },\n fontWeight: { value: '{fontWeights.medium.value}' },\n },\n 4: {\n fontSize: { value: '{fontSizes.xl.value}' },\n fontWeight: { value: '{fontWeights.semibold.value}' },\n },\n 5: {\n fontSize: { value: '{fontSizes.large.value}' },\n fontWeight: { value: '{fontWeights.bold.value}' },\n },\n 6: {\n fontSize: { value: '{fontSizes.medium.value}' },\n fontWeight: { value: '{fontWeights.extrabold.value}' },\n },\n};\n\nexport { heading };\n","const icon = {\n lineHeight: { value: 1 },\n height: { value: '1em' }, // Should match height of parent container font-size\n};\n\nexport { icon };\n","const highlightmatch = {\n highlighted: {\n fontWeight: { value: '{fontWeights.bold}' },\n },\n};\n\nexport { highlightmatch };\n","const image = {\n maxWidth: { value: '100%' },\n height: { value: 'auto' },\n objectFit: { value: 'initial' },\n objectPosition: { value: 'initial' },\n};\n\nexport { image };\n","const inappmessaging = {\n banner: {\n height: { value: '150px ' },\n width: { value: '400px ' },\n },\n button: {\n backgroundColor: { value: '#e8e8e8' },\n borderRadius: { value: '5px' },\n color: { value: 'black' },\n },\n dialog: {\n height: { value: '50vh' },\n minHeight: { value: '400px' },\n minWidth: { value: '400px' },\n width: { value: '30vw' },\n },\n header: {\n fontSize: { value: '{fontSizes.medium.value}' },\n fontWeight: { value: '{fontWeights.extrabold.value}' },\n },\n};\n\nexport { inappmessaging };\n","const input = {\n color: { value: '{components.fieldcontrol.color.value}' },\n borderColor: { value: '{components.fieldcontrol.borderColor.value}' },\n fontSize: { value: '{components.fieldcontrol.fontSize.value}' },\n _focus: {\n borderColor: {\n value: '{components.fieldcontrol._focus.borderColor.value}',\n },\n },\n};\n\nexport { input };\n","const link = {\n active: { color: { value: '{colors.font.active.value}' } },\n color: { value: '{colors.font.interactive.value}' },\n focus: { color: { value: '{colors.font.focus.value}' } },\n hover: { color: { value: '{colors.font.hover.value}' } },\n visited: { color: { value: '{colors.font.interactive.value}' } },\n};\n\nexport { link };\n","const liveness = {\n cameraModule: {\n backgroundColor: { value: '{colors.background.primary.value}' },\n },\n};\n\nexport { liveness };\n","const loader = {\n width: { value: '{fontSizes.medium.value}' },\n height: { value: '{fontSizes.medium.value}' },\n fontSize: { value: '{fontSizes.xs.value}' },\n strokeEmpty: { value: '{colors.neutral.20.value}' },\n strokeFilled: { value: '{colors.primary.80.value}' },\n strokeLinecap: { value: 'round' },\n animationDuration: { value: '1s' },\n small: {\n width: { value: '{fontSizes.small.value}' },\n height: { value: '{fontSizes.small.value}' },\n fontSize: { value: '{fontSizes.xxs.value}' },\n },\n large: {\n width: { value: '{fontSizes.large.value}' },\n height: { value: '{fontSizes.large.value}' },\n fontSize: { value: '{fontSizes.small.value}' },\n },\n linear: {\n width: { value: '100%' },\n minWidth: { value: '5rem' },\n fontSize: { value: '{fontSizes.xxs.value}' },\n strokeWidth: { value: '{fontSizes.xxs.value}' },\n strokeFilled: { value: '{colors.primary.80.value}' },\n strokeEmpty: { value: '{colors.neutral.20.value}' },\n strokeLinecap: { value: 'round' },\n animationDuration: { value: '1s' },\n small: {\n strokeWidth: { value: '{fontSizes.xxxs.value}' },\n fontSize: { value: '{fontSizes.xxxs.value}' },\n },\n large: {\n strokeWidth: { value: '{fontSizes.xs.value}' },\n fontSize: { value: '{fontSizes.xs.value}' },\n },\n },\n text: {\n fill: { value: '{colors.font.primary.value}' },\n },\n};\n\nexport { loader };\n","const menu = {\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderRadius: { value: '{radii.medium.value}' },\n borderWidth: { value: '{borderWidths.small.value}' },\n borderStyle: { value: 'solid' },\n borderColor: { value: '{colors.border.primary.value}' },\n boxShadow: { value: '{shadows.large.value}' },\n flexDirection: { value: 'column' },\n gap: { value: '{space.zero.value}' },\n maxWidth: { value: '30rem' },\n minWidth: { value: '14rem' },\n small: {\n width: { value: '{fontSizes.medium.value}' },\n height: { value: '{fontSizes.medium.value}' },\n },\n large: {\n width: { value: '{fontSizes.xxxl.value}' },\n height: { value: '{fontSizes.xxxl.value}' },\n },\n item: {\n minHeight: { value: '2.5rem' },\n paddingInlineStart: { value: '{space.medium.value}' },\n paddingInlineEnd: { value: '{space.medium.value}' },\n },\n};\n\nexport { menu };\n","const message = {\n // Default styles\n alignItems: { value: 'center' },\n backgroundColor: { value: '{colors.background.tertiary.value}' },\n borderColor: { value: 'transparent' },\n borderStyle: { value: 'solid' },\n borderWidth: { value: '{borderWidths.small.value}' },\n borderRadius: { value: '{radii.xs.value}' },\n color: { value: '{colors.font.primary.value}' },\n justifyContent: { value: 'flex-start' },\n paddingBlock: { value: '{space.small.value}' },\n paddingInline: { value: '{space.medium.value}' },\n lineHeight: { value: '{lineHeights.small.value}' },\n icon: {\n size: { value: '{fontSizes.xl.value}' },\n },\n heading: {\n fontSize: { value: '{fontSizes.medium.value}' },\n fontWeight: { value: '{fontWeights.bold.value}' },\n },\n dismiss: {\n gap: { value: '{space.xxs.value}' },\n },\n // Variations\n plain: {\n color: { value: '{colors.font.primary.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: 'transparent' },\n info: {\n color: { value: '{colors.font.info.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: 'transparent' },\n },\n error: {\n color: { value: '{colors.font.error.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: 'transparent' },\n },\n success: {\n color: { value: '{colors.font.success.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: 'transparent' },\n },\n warning: {\n color: { value: '{colors.font.warning.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: 'transparent' },\n },\n },\n outlined: {\n color: { value: '{colors.font.primary.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: '{colors.border.primary.value}' },\n info: {\n color: { value: '{colors.font.info.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: '{colors.border.info.value}' },\n },\n error: {\n color: { value: '{colors.font.error.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: '{colors.border.error.value}' },\n },\n success: {\n color: { value: '{colors.font.success.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: '{colors.border.success.value}' },\n },\n warning: {\n color: { value: '{colors.font.warning.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: '{colors.border.warning.value}' },\n },\n },\n filled: {\n color: { value: '{colors.font.primary.value}' },\n backgroundColor: { value: '{colors.background.secondary.value}' },\n borderColor: { value: 'transparent' },\n info: {\n color: { value: '{colors.font.info.value}' },\n backgroundColor: { value: '{colors.background.info.value}' },\n borderColor: { value: 'transparent' },\n },\n error: {\n color: { value: '{colors.font.error.value}' },\n backgroundColor: { value: '{colors.background.error.value}' },\n borderColor: { value: 'transparent' },\n },\n success: {\n color: { value: '{colors.font.success.value}' },\n backgroundColor: { value: '{colors.background.success.value}' },\n borderColor: { value: 'transparent' },\n },\n warning: {\n color: { value: '{colors.font.warning.value}' },\n backgroundColor: { value: '{colors.background.warning.value}' },\n borderColor: { value: 'transparent' },\n },\n },\n};\n\nexport { message };\n","const pagination = {\n current: {\n alignItems: { value: 'center' },\n justifyContent: { value: 'center' },\n color: { value: '{colors.font.inverse.value}' },\n fontSize: { value: '{fontSizes.small.value}' },\n backgroundColor: { value: '{colors.overlay.40.value}' },\n },\n button: {\n color: { value: '{colors.font.primary.value}' },\n paddingInlineStart: { value: '{space.xxs.value}' },\n paddingInlineEnd: { value: '{space.xxs.value}' },\n transitionProperty: { value: 'background-color' },\n transitionDuration: { value: '{time.medium.value}' },\n hover: {\n backgroundColor: { value: '{colors.overlay.10.value}' },\n color: { value: '{colors.font.primary.value}' },\n },\n disabled: {\n color: { value: '{colors.font.disabled.value}' },\n },\n },\n ellipsis: {\n alignItems: { value: 'baseline' },\n justifyContent: { value: 'center' },\n paddingInlineStart: { value: '{space.xs.value}' },\n paddingInlineEnd: { value: '{space.xs.value}' },\n },\n itemContainer: {\n marginLeft: { value: '{space.xxxs.value}' },\n marginRight: { value: '{space.xxxs.value}' },\n },\n itemShared: {\n height: { value: '{fontSizes.xxl.value}' },\n minWidth: { value: '{fontSizes.xxl.value}' },\n borderRadius: { value: '{fontSizes.medium.value}' },\n },\n};\n\nexport { pagination };\n","const passwordfield = {\n color: { value: '{components.fieldcontrol.color.value}' },\n button: {\n color: { value: '{components.button.color.value}' },\n _active: {\n backgroundColor: {\n value: '{components.button._active.backgroundColor.value}',\n },\n borderColor: { value: '{components.button._active.borderColor.value}' },\n color: { value: '{components.button._active.color.value}' },\n },\n _disabled: {\n backgroundColor: {\n value: '{components.button._disabled.backgroundColor.value}',\n },\n borderColor: {\n value: '{components.button._disabled.borderColor.value}',\n },\n color: { value: '{components.button._disabled.color.value}' },\n },\n _error: {\n color: { value: '{components.button.outlined.error.color.value}' },\n backgroundColor: {\n value: '{components.button.outlined.error.backgroundColor.value}',\n },\n borderColor: {\n value: '{components.button.outlined.error.borderColor.value}',\n },\n _active: {\n borderColor: {\n value: '{components.button.outlined.error._active.borderColor.value}',\n },\n backgroundColor: {\n value: '{components.button.outlined.error._active.backgroundColor.value}',\n },\n color: {\n value: '{components.button.outlined.error._active.color.value}',\n },\n },\n _focus: {\n borderColor: {\n value: '{components.button.outlined.error._focus.borderColor.value}',\n },\n backgroundColor: {\n value: '{components.button.outlined.error._focus.backgroundColor.value}',\n },\n color: {\n value: '{components.button.outlined.error._focus.color.value}',\n },\n boxShadow: {\n value: '{components.button.outlined.error._focus.boxShadow.value}',\n },\n },\n _hover: {\n borderColor: {\n value: '{components.button.outlined.error._hover.borderColor.value}',\n },\n backgroundColor: {\n value: '{components.button.outlined.error._hover.backgroundColor.value}',\n },\n color: {\n value: '{components.button.outlined.error._hover.color.value}',\n },\n },\n },\n _focus: {\n backgroundColor: {\n value: '{components.button._focus.backgroundColor.value}',\n },\n borderColor: { value: '{components.button._focus.borderColor.value}' },\n color: { value: '{components.button._focus.color.value}' },\n },\n _hover: {\n backgroundColor: {\n value: '{components.button._hover.backgroundColor.value}',\n },\n borderColor: { value: '{components.button._hover.borderColor.value}' },\n color: { value: '{components.button._hover.color.value}' },\n },\n },\n};\n\nexport { passwordfield };\n","const phonenumberfield = {\n color: { value: '{components.fieldcontrol.color}' },\n borderColor: { value: '{components.fieldcontrol.borderColor}' },\n fontSize: { value: '{components.fieldcontrol.fontSize}' },\n _focus: {\n borderColor: { value: '{components.fieldcontrol._focus.borderColor}' },\n },\n};\n\nexport { phonenumberfield };\n","const placeholder = {\n borderRadius: { value: '{radii.small.value}' },\n transitionDuration: { value: '{time.long.value}' },\n startColor: { value: '{colors.background.secondary.value}' },\n endColor: { value: '{colors.background.tertiary.value}' },\n // sizes\n small: {\n height: { value: '{space.small.value}' },\n },\n default: {\n height: { value: '{space.medium.value}' },\n },\n large: {\n height: { value: '{space.large.value}' },\n },\n};\n\nexport { placeholder };\n","const radio = {\n alignItems: { value: 'center' },\n justifyContent: { value: 'flex-start' },\n gap: { value: 'inherit' },\n _disabled: { cursor: { value: 'not-allowed' } },\n button: {\n alignItems: { value: 'center' },\n justifyContent: { value: 'center' },\n width: { value: '{fontSizes.medium.value}' },\n height: { value: '{fontSizes.medium.value}' },\n boxSizing: { value: 'border-box' },\n borderWidth: { value: '{borderWidths.medium.value}' },\n borderStyle: { value: 'solid' },\n borderRadius: { value: '50%' },\n borderColor: { value: '{colors.border.primary.value}' },\n color: { value: '{colors.background.primary.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n transitionProperty: { value: 'all' },\n transitionDuration: { value: '{time.medium.value}' },\n outlineColor: { value: '{colors.transparent.value}' },\n outlineStyle: { value: 'solid' },\n outlineWidth: { value: '{outlineWidths.medium.value}' },\n outlineOffset: { value: '{outlineOffsets.medium.value}' },\n // We want the dot inside the border to be a border-width from the border\n padding: { value: '{borderWidths.medium.value}' },\n small: {\n width: { value: '{fontSizes.small.value}' },\n height: { value: '{fontSizes.small.value}' },\n },\n large: {\n width: { value: '{fontSizes.large.value}' },\n height: { value: '{fontSizes.large.value}' },\n },\n _checked: {\n color: {\n value: '{colors.primary.80.value}',\n },\n _disabled: { color: { value: '{colors.background.disabled.value}' } },\n },\n _focus: {\n borderColor: { value: '{colors.border.focus.value}' },\n boxShadow: { value: '{components.fieldcontrol._focus.boxShadow.value}' },\n },\n _error: {\n borderColor: { value: '{colors.border.error.value}' },\n _focus: {\n boxShadow: {\n value: '{components.fieldcontrol._error._focus.boxShadow.value}',\n },\n },\n },\n _disabled: {\n borderColor: { value: '{colors.border.disabled.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n },\n },\n label: {\n color: { value: '{components.text.color.value}' },\n _disabled: {\n color: {\n value: '{colors.font.disabled.value}',\n },\n },\n },\n};\n\nexport { radio };\n","const radiogroup = {\n radio: {\n borderWidth: { value: '{components.radio.button.borderWidth}' },\n borderColor: { value: '{components.radio.button.borderColor}' },\n backgroundColor: { value: '{components.radio.button.backgroundColor}' },\n _checked: {\n color: { value: '{components.radio.button._checked.color}' },\n },\n label: {\n color: { value: '{components.radio.label.color}' },\n },\n },\n legend: {\n color: { value: '{components.fieldset.legend.color}' },\n fontWeight: { value: '{fontWeights.normal}' },\n },\n};\n\nexport { radiogroup };\n","const rating = {\n large: { size: { value: '{fontSizes.xxxl.value}' } },\n default: { size: { value: '{fontSizes.xl.value}' } },\n small: { size: { value: '{fontSizes.small.value}' } },\n filled: { color: { value: '{colors.secondary.80.value}' } },\n empty: { color: { value: '{colors.background.tertiary.value}' } },\n};\n\nexport { rating };\n","const searchfield = {\n color: { value: '{components.fieldcontrol.color.value}' },\n button: {\n color: { value: '{components.button.color.value}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n _active: {\n backgroundColor: {\n value: '{components.button._active.backgroundColor.value}',\n },\n borderColor: { value: '{components.button._active.borderColor.value}' },\n color: { value: '{components.button._active.color.value}' },\n },\n _disabled: {\n backgroundColor: {\n value: '{components.button._disabled.backgroundColor.value}',\n },\n borderColor: {\n value: '{components.button._disabled.borderColor.value}',\n },\n color: { value: '{components.button._disabled.color.value}' },\n },\n _focus: {\n backgroundColor: {\n value: '{components.button._focus.backgroundColor.value}',\n },\n borderColor: { value: '{components.button._focus.borderColor.value}' },\n color: { value: '{components.button._focus.color.value}' },\n },\n _hover: {\n backgroundColor: {\n value: '{components.button._hover.backgroundColor.value}',\n },\n borderColor: { value: '{components.button._hover.borderColor.value}' },\n color: { value: '{components.button._hover.color.value}' },\n },\n },\n};\n\nexport { searchfield };\n","const select = {\n color: { value: '{components.fieldcontrol.color}' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n paddingInlineEnd: { value: '{space.xxl.value}' },\n _disabled: {\n color: { value: '{colors.font.disabled.value}' },\n backgroundColor: { value: '{colors.background.disabled.value}' },\n },\n // wrappers\n wrapper: {\n flex: { value: '1' },\n display: { value: 'block' },\n position: { value: 'relative' },\n cursor: { value: 'pointer' },\n },\n iconWrapper: {\n alignItems: { value: 'center' },\n position: { value: 'absolute' },\n top: { value: '50%' },\n right: { value: '{space.medium.value}' },\n transform: { value: 'translateY(-50%)' },\n pointerEvents: { value: 'none' },\n small: {\n right: { value: '{space.xs.value}' },\n },\n large: {\n right: { value: '{space.medium.value}' },\n },\n },\n // It's important to test these option values on Chrome/FireFox/Edge\n // on Windows because they allow styling of the option element.\n // Chrome/Safari/Firefox on Mac uses the system ui.\n option: {\n backgroundColor: { value: 'transparent' },\n color: { value: '{colors.font.primary.value}' },\n _disabled: {\n color: { value: '{colors.font.disabled.value}' },\n backgroundColor: {\n value: 'transparent',\n },\n },\n },\n whiteSpace: { value: 'nowrap' },\n minWidth: { value: '6.5rem' },\n small: {\n minWidth: { value: '5.5rem' },\n paddingInlineEnd: { value: '{space.xl.value}' },\n },\n large: {\n minWidth: { value: '7.5rem' },\n paddingInlineEnd: { value: '{space.xxl.value}' },\n },\n expanded: {\n paddingBlock: { value: '{space.xs.value}' },\n paddingInline: { value: '{space.small.value}' },\n option: {\n paddingBlock: { value: '{space.xs.value}' },\n paddingInline: { value: '{space.small.value}' },\n },\n },\n};\n\nexport { select };\n","const selectfield = {\n borderColor: { value: '{components.fieldcontrol.borderColor}' },\n color: { value: '{components.fieldcontrol.color}' },\n flexDirection: {\n value: 'column',\n },\n fontSize: { value: '{components.fieldcontrol.fontSize}' },\n _focus: {\n borderColor: { value: '{components.fieldcontrol._focus.borderColor}' },\n },\n label: {\n color: { value: '{components.field.label.color}' },\n },\n};\n\nexport { selectfield };\n","const sliderfield = {\n paddingBlock: { value: '{space.xs.value}' },\n // The track is the thin background of the slider\n track: {\n backgroundColor: { value: '{colors.background.quaternary.value}' },\n borderRadius: { value: '9999px' },\n height: { value: '0.375rem' },\n minWidth: { value: '10rem' },\n },\n // The range is the filled part of the track\n range: {\n backgroundColor: { value: '{colors.primary.80.value}' },\n borderRadius: { value: '9999px' },\n _disabled: {\n backgroundColor: { value: '{colors.background.disabled.value}' },\n },\n },\n // The thumb is the circle above the track that the user drags\n thumb: {\n width: { value: '1.25rem' },\n height: { value: '1.25rem' },\n backgroundColor: { value: '{colors.background.primary.value}' },\n boxShadow: { value: '{shadows.small.value}' },\n borderRadius: { value: '50%' },\n borderWidth: { value: '{borderWidths.medium.value}' },\n borderColor: { value: '{colors.border.primary.value}' },\n borderStyle: { value: 'solid' },\n _disabled: {\n backgroundColor: { value: '{colors.background.disabled.value}' },\n borderColor: { value: 'transparent' },\n boxShadow: { value: 'none' },\n },\n _hover: {\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: '{colors.border.focus.value}' },\n },\n _focus: {\n borderColor: { value: '{colors.border.focus.value}' },\n boxShadow: { value: '{components.fieldcontrol._focus.boxShadow.value}' },\n },\n },\n small: {\n track: {\n height: { value: '0.25rem' },\n },\n thumb: {\n width: { value: '1rem' },\n height: { value: '1rem' },\n },\n },\n large: {\n track: {\n height: { value: '0.625rem' },\n },\n thumb: {\n width: { value: '1.5rem' },\n height: { value: '1.5rem' },\n },\n },\n};\n\nexport { sliderfield };\n","const stepperfield = {\n borderColor: { value: '{components.fieldcontrol.borderColor}' },\n flexDirection: { value: 'column' },\n input: {\n color: { value: '{components.fieldcontrol.color}' },\n fontSize: { value: '{components.fieldcontrol.fontSize}' },\n textAlign: { value: 'center' },\n },\n button: {\n color: { value: '{components.button.color}' },\n backgroundColor: { value: '{colors.transparent}' },\n _active: {\n color: { value: '{components.button._active.color}' },\n backgroundColor: { value: '{components.button._active.backgroundColor}' },\n },\n _focus: {\n color: { value: '{components.button._focus.color}' },\n backgroundColor: { value: '{components.button._focus.backgroundColor}' },\n },\n _disabled: {\n color: { value: '{components.button._disabled.color}' },\n backgroundColor: {\n value: '{components.fieldcontrol._disabled.backgroundColor}',\n },\n },\n _hover: {\n color: { value: '{components.button._hover.color}' },\n backgroundColor: { value: '{components.button._hover.backgroundColor}' },\n },\n },\n};\n\nexport { stepperfield };\n","const storagemanager = {\n dropzone: {\n backgroundColor: { value: '{colors.background.primary}' },\n borderRadius: { value: '{radii.small}' },\n borderColor: { value: '{colors.border.primary}' },\n borderStyle: { value: 'dashed' },\n borderWidth: { value: '{borderWidths.small}' },\n gap: { value: '{space.small}' },\n paddingBlock: { value: '{space.xl}' },\n paddingInline: { value: '{space.large}' },\n textAlign: { value: 'center' },\n _active: {\n backgroundColor: { value: '{colors.primary.10}' },\n borderRadius: {\n value: '{components.storagemanager.dropzone.borderRadius}',\n },\n borderColor: { value: '{colors.border.pressed}' },\n borderStyle: {\n value: '{components.storagemanager.dropzone.borderStyle}',\n },\n borderWidth: { value: '{borderWidths.medium}' },\n },\n icon: {\n color: { value: '{colors.border.primary}' },\n fontSize: { value: '{fontSizes.xxl}' },\n },\n text: {\n color: { value: '{colors.font.tertiary}' },\n fontSize: { value: '{fontSizes.medium}' },\n fontWeight: { value: '{fontWeights.bold}' },\n },\n },\n file: {\n backgroundColor: { value: '{colors.background.primary}' },\n borderRadius: { value: '{radii.small}' },\n borderColor: { value: '{colors.border.primary}' },\n borderStyle: { value: 'solid' },\n borderWidth: { value: '{borderWidths.small}' },\n paddingBlock: { value: '{space.xs}' },\n paddingInline: { value: '{space.small}' },\n gap: { value: '{space.small}' },\n alignItems: { value: 'baseline' },\n name: {\n fontSize: { value: '{fontSizes.medium}' },\n fontWeight: { value: '{fontWeights.bold}' },\n color: { value: '{colors.font.primary}' },\n },\n size: {\n fontSize: { value: '{fontSizes.small}' },\n fontWeight: { value: '{fontWeights.normal}' },\n color: { value: '{colors.font.tertiary}' },\n },\n image: {\n width: { value: '{space.xxl}' },\n height: { value: '{space.xxl}' },\n backgroundColor: { value: '{colors.background.secondary}' },\n color: { value: '{colors.font.tertiary}' },\n borderRadius: { value: '{radii.small}' },\n },\n },\n filelist: {\n flexDirection: { value: 'column' },\n gap: { value: '{space.small}' },\n },\n loader: {\n strokeLinecap: { value: 'round' },\n strokeEmpty: { value: '{colors.border.secondary}' },\n strokeFilled: { value: '{components.loader.strokeFilled}' },\n strokeWidth: { value: '{borderWidths.large}' },\n },\n previewer: {\n backgroundColor: { value: '{colors.background.primary}' },\n borderColor: { value: '{colors.border.primary}' },\n borderStyle: { value: 'solid' },\n borderWidth: { value: '{borderWidths.small}' },\n borderRadius: { value: '{radii.small}' },\n paddingBlock: { value: '{space.zero}' },\n paddingInline: { value: '{space.zero}' },\n maxHeight: { value: '40rem' },\n maxWidth: { value: 'auto' },\n text: {\n fontSize: { value: '{fontSizes.medium}' },\n fontWeight: { value: '{fontWeights.bold}' },\n color: { value: '{colors.font.primary}' },\n },\n body: {\n paddingBlock: { value: '{space.medium}' },\n paddingInline: { value: '{space.medium}' },\n gap: { value: '{space.small}' },\n },\n footer: {\n justifyContent: { value: 'flex-end' },\n },\n },\n};\n\nexport { storagemanager };\n","const switchfield = {\n // States\n _disabled: {\n opacity: { value: '{opacities.60.value}' },\n },\n _focused: {\n shadow: {\n value: '{components.fieldcontrol._focus.boxShadow.value}',\n },\n },\n // Sizes\n fontSize: { value: '{fontSizes.medium.value}' },\n large: {\n fontSize: { value: '{fontSizes.large.value}' },\n },\n small: {\n fontSize: { value: '{fontSizes.small.value}' },\n },\n // Child elements\n label: {\n padding: { value: '{space.xs.value}' },\n },\n thumb: {\n backgroundColor: { value: '{colors.background.primary.value}' },\n borderColor: { value: 'transparent' },\n borderWidth: { value: '{borderWidths.small.value}' },\n borderStyle: { value: 'solid' },\n borderRadius: { value: '{radii.xxxl.value}' },\n checked: {\n transform: { value: '{transforms.slideX.medium.value}' },\n },\n transition: {\n duration: { value: '{time.medium.value}' },\n },\n width: { value: '{space.relative.medium.value}' },\n },\n track: {\n backgroundColor: { value: '{colors.background.quaternary.value}' },\n borderRadius: { value: '{radii.xxxl.value}' },\n checked: {\n backgroundColor: { value: '{colors.primary.80.value}' },\n },\n height: { value: '{space.relative.medium.value}' },\n padding: { value: '{outlineWidths.medium.value}' },\n transition: {\n duration: { value: '{time.short.value}' },\n },\n width: { value: '{space.relative.xl.value}' },\n _error: {\n backgroundColor: { value: '{colors.background.error.value}' },\n },\n },\n};\n\nexport { switchfield };\n","const table = {\n /**\n * Default table styles\n */\n borderCollapse: { value: 'collapse' },\n display: { value: 'table' },\n width: { value: '100%' },\n /**\n * Default table head styles\n */\n head: {\n display: { value: 'table-header-group' },\n verticalAlign: { value: 'middle' },\n },\n /**\n * Default table body styles\n */\n body: {\n display: { value: 'table-row-group' },\n verticalAlign: { value: 'middle' },\n },\n /**\n * Default table foot styles\n */\n foot: {\n display: { value: 'table-footer-group' },\n verticalAlign: { value: 'middle' },\n },\n /**\n * Default table row styles\n */\n row: {\n display: { value: 'table-row' },\n verticalAlign: { value: 'middle' },\n hover: {\n backgroundColor: { value: '{colors.background.tertiary.value}' },\n },\n striped: {\n backgroundColor: { value: '{colors.background.secondary.value}' },\n },\n },\n /**\n * Default table header cell styles\n */\n header: {\n borderColor: { value: '{colors.border.tertiary.value}' },\n borderStyle: { value: 'solid' },\n borderWidth: { value: '{borderWidths.small.value}' },\n color: { value: '{colors.font.primary.value}' },\n display: { value: 'table-cell' },\n fontSize: { value: '{fontSizes.medium.value}' },\n fontWeight: { value: '{fontWeights.bold.value}' },\n padding: { value: '{space.medium.value}' },\n verticalAlign: { value: 'middle' },\n large: {\n fontSize: { value: '{fontSizes.large.value}' },\n padding: { value: '{space.large.value}' },\n },\n small: {\n fontSize: { value: '{fontSizes.small.value}' },\n padding: { value: '{space.xs.value}' },\n },\n },\n /**\n * Default table data cell styles\n */\n data: {\n borderColor: { value: '{colors.border.tertiary.value}' },\n borderStyle: { value: 'solid' },\n borderWidth: { value: '{borderWidths.small.value}' },\n color: { value: '{colors.font.primary.value}' },\n display: { value: 'table-cell' },\n fontSize: { value: '{fontSizes.medium.value}' },\n fontWeight: { value: '{fontWeights.normal.value}' },\n padding: { value: '{space.medium.value}' },\n verticalAlign: { value: 'middle' },\n large: {\n fontSize: { value: '{fontSizes.large.value}' },\n padding: { value: '{space.large.value}' },\n },\n small: {\n fontSize: { value: '{fontSizes.small.value}' },\n padding: { value: '{space.xs.value}' },\n },\n },\n /**\n * Default table caption styles\n */\n caption: {\n captionSide: { value: 'bottom' },\n color: { value: '{colors.font.primary.value}' },\n display: { value: 'table-caption' },\n fontSize: { value: '{fontSizes.medium.value}' },\n textAlign: { value: 'center' },\n wordBreak: { value: 'break-all' },\n large: {\n fontSize: { value: '{fontSizes.large.value}' },\n },\n small: {\n fontSize: { value: '{fontSizes.small.value}' },\n },\n },\n};\n\nexport { table };\n","const tabs = {\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.border.secondary.value}' },\n borderStyle: { value: 'solid' },\n borderWidth: { value: '{borderWidths.medium.value}' },\n gap: { value: '0' },\n item: {\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.border.secondary.value}' },\n borderStyle: { value: 'solid' },\n borderWidth: { value: '{borderWidths.medium.value}' },\n color: { value: '{colors.font.secondary.value}' },\n fontSize: { value: '{fontSizes.medium.value}' },\n fontWeight: { value: '{fontWeights.bold.value}' },\n paddingVertical: { value: '{space.small.value}' },\n paddingHorizontal: { value: '{space.medium.value}' },\n textAlign: { value: 'center' },\n transitionDuration: { value: '{time.medium.value}' },\n _hover: {\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.border.focus.value}' },\n boxShadow: { value: 'none' },\n color: { value: '{colors.font.hover.value}' },\n },\n _focus: {\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.border.focus.value}' },\n boxShadow: {\n value: {\n offsetX: '0px',\n offsetY: '0px',\n blurRadius: '0px',\n spreadRadius: '{borderWidths.medium}',\n color: '{colors.border.focus.value}',\n },\n },\n color: { value: '{colors.font.focus.value}' },\n },\n _active: {\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.font.interactive.value}' },\n boxShadow: { value: 'none' },\n color: { value: '{colors.font.interactive.value}' },\n },\n _disabled: {\n backgroundColor: { value: 'transparent' },\n borderColor: { value: '{colors.border.tertiary.value}' },\n boxShadow: { value: 'none' },\n color: { value: '{colors.font.disabled.value}' },\n },\n },\n panel: {\n backgroundColor: { value: 'transparent' },\n paddingInline: { value: '0' },\n paddingBlock: { value: '{space.small.value}' },\n },\n};\n\nexport { tabs };\n","const text = {\n // default styles\n color: { value: '{colors.font.primary.value}' },\n // variations\n primary: {\n color: { value: '{colors.font.primary.value}' },\n },\n secondary: {\n color: { value: '{colors.font.secondary.value}' },\n },\n tertiary: {\n color: { value: '{colors.font.tertiary.value}' },\n },\n error: {\n color: { value: '{colors.font.error.value}' },\n },\n warning: {\n color: { value: '{colors.font.warning.value}' },\n },\n success: {\n color: { value: '{colors.font.success.value}' },\n },\n info: {\n color: { value: '{colors.font.info.value}' },\n },\n};\n\nexport { text };\n","const textareafield = {\n color: { value: '{components.fieldcontrol.color.value}' },\n borderColor: { value: '{components.fieldcontrol.borderColor.value}' },\n _focus: {\n borderColor: {\n value: '{components.fieldcontrol._focus.borderColor.value}',\n },\n },\n};\n\nexport { textareafield };\n","const textfield = {\n color: { value: '{components.fieldcontrol.color.value}' },\n borderColor: { value: '{components.fieldcontrol.borderColor.value}' },\n fontSize: { value: '{components.fieldcontrol.fontSize.value}' },\n _focus: {\n borderColor: {\n value: '{components.fieldcontrol._focus.borderColor.value}',\n },\n },\n};\n\nexport { textfield };\n","const togglebutton = {\n borderColor: { value: '{colors.border.primary.value}' },\n color: { value: '{colors.font.primary.value}' },\n _hover: {\n backgroundColor: { value: '{colors.overlay.10.value}' },\n },\n _focus: {\n borderColor: { value: '{colors.border.focus.value}' },\n color: { value: '{colors.font.primary.value}' },\n },\n _active: {\n backgroundColor: { value: '{colors.transparent.value}' },\n },\n _disabled: {\n backgroundColor: { value: '{colors.transparent.value}' },\n borderColor: { value: '{colors.border.disabled.value}' },\n color: { value: '{colors.font.disabled.value}' },\n },\n _pressed: {\n borderColor: { value: '{colors.border.pressed.value}' },\n color: { value: '{colors.font.primary.value}' },\n backgroundColor: { value: '{colors.overlay.20.value}' },\n _hover: {\n backgroundColor: { value: '{colors.overlay.30.value}' },\n },\n },\n primary: {\n backgroundColor: { value: '{colors.transparent.value}' },\n borderWidth: { value: '{borderWidths.small.value}' },\n _focus: {\n borderColor: { value: '{colors.border.focus.value}' },\n backgroundColor: { value: '{colors.transparent.value}' },\n boxShadow: { value: '{components.fieldcontrol._focus.boxShadow.value}' },\n color: { value: '{colors.font.primary.value}' },\n },\n _hover: {\n backgroundColor: { value: '{colors.overlay.10.value}' },\n color: { value: '{colors.font.primary.value}' },\n },\n _disabled: {\n borderColor: { value: '{colors.border.disabled.value}' },\n backgroundColor: { value: '{colors.background.disabled.value}' },\n color: { value: '{colors.font.disabled.value}' },\n },\n _pressed: {\n backgroundColor: { value: '{colors.primary.80.value}' },\n borderColor: { value: '{colors.primary.80.value}' },\n color: { value: '{colors.background.primary.value}' },\n _focus: {\n backgroundColor: {\n value: '{colors.border.focus.value}',\n },\n borderColor: { value: '{colors.border.focus.value}' },\n color: { value: '{colors.background.primary.value}' },\n },\n _hover: {\n borderColor: { value: '{colors.primary.60.value}' },\n backgroundColor: {\n value: '{colors.primary.60.value}',\n },\n boxShadow: { value: '{colors.primary.60.value}' },\n color: { value: '{colors.background.primary.value}' },\n },\n },\n },\n link: {\n backgroundColor: { value: '{colors.transparent.value}' },\n color: { value: '{colors.overlay.50.value}' },\n _hover: {\n backgroundColor: { value: '{colors.transparent.value}' },\n color: { value: '{colors.overlay.50.value}' },\n },\n _focus: {\n backgroundColor: { value: '{colors.transparent.value}' },\n color: { value: '{colors.overlay.50.value}' },\n },\n _disabled: {\n backgroundColor: { value: '{colors.transparent.value}' },\n color: { value: '{colors.font.disabled.value}' },\n },\n _pressed: {\n backgroundColor: { value: '{colors.transparent.value}' },\n color: { value: '{colors.overlay.90.value}' },\n _focus: {\n backgroundColor: { value: '{colors.transparent.value}' },\n color: { value: '{colors.overlay.90.value}' },\n },\n _hover: {\n color: { value: '{colors.overlay.90.value}' },\n backgroundColor: { value: '{colors.transparent.value}' },\n },\n },\n },\n};\n\nexport { togglebutton };\n","const togglebuttongroup = {\n alignItems: { value: 'center' },\n alignContent: { value: 'center' },\n justifyContent: { value: 'flex-start' },\n};\n\nexport { togglebuttongroup };\n","// TODO: update the design tokens to use an array\n// export interface FontDesignToken {\n// value: Array<string>\n// }\nconst fonts = {\n default: {\n variable: {\n value: `'InterVariable', 'Inter var', 'Inter', -apple-system, BlinkMacSystemFont,\n 'Helvetica Neue', 'Segoe UI', Oxygen, Ubuntu, Cantarell, 'Open Sans',\n sans-serif`,\n },\n static: {\n value: `'Inter', -apple-system, BlinkMacSystemFont, 'Helvetica Neue',\n 'Segoe UI', Oxygen, Ubuntu, Cantarell, 'Open Sans', sans-serif`,\n },\n },\n};\n\nexport { fonts };\n","const lineHeights = {\n small: { value: '1.25' },\n medium: { value: '1.5' },\n large: { value: '2' },\n};\n\nexport { lineHeights };\n","const outlineOffsets = {\n small: { value: '1px' },\n medium: { value: '2px' },\n large: { value: '3px' },\n};\n\nexport { outlineOffsets };\n","const outlineWidths = {\n small: { value: '1px' },\n medium: { value: '2px' },\n large: { value: '3px' },\n};\n\nexport { outlineWidths };\n","const shadows = {\n small: {\n value: {\n offsetX: '0px',\n offsetY: '2px',\n blurRadius: '4px',\n color: '{colors.shadow.tertiary.value}',\n },\n },\n medium: {\n value: {\n offsetX: '0px',\n offsetY: '2px',\n blurRadius: '6px',\n color: '{colors.shadow.secondary.value}',\n },\n },\n large: {\n value: {\n offsetX: '0px',\n offsetY: '4px',\n blurRadius: '12px',\n color: '{colors.shadow.primary.value}',\n },\n },\n};\n\nexport { shadows };\n","const transforms = {\n // TODO: make this more generic and cross-platform\n slideX: {\n small: { value: 'translateX(0.5em)' },\n medium: { value: 'translateX(1em)' },\n large: { value: 'translateX(2em)' },\n },\n};\n\nexport { transforms };\n","// Breakpoint unit is in pixels\nconst breakpoints = {\n values: {\n base: 0,\n small: 480,\n medium: 768,\n large: 992,\n xl: 1280,\n xxl: 1536,\n },\n defaultBreakpoint: 'base',\n};\n\nexport { breakpoints };\n","// For internal use, no need to export\nconst ComponentText = {\n Alert: {\n dismissButtonLabel: 'Dismiss alert',\n },\n Autocomplete: {\n emptyText: 'No options found',\n loadingText: 'Loading options...',\n },\n Collection: {\n searchButtonLabel: 'Search',\n searchNoResultsFound: 'No results found',\n },\n Fields: {\n clearButtonLabel: 'Clear input',\n },\n Message: {\n dismissLabel: 'Dismiss message',\n },\n PaginationItem: {\n currentPageLabel: 'Page',\n nextLabel: 'Go to next page',\n pageLabel: 'Go to page',\n previousLabel: 'Go to previous page',\n },\n PhoneNumberField: {\n countryCodeLabel: 'Country code',\n },\n SearchField: {\n searchButtonLabel: 'Search',\n },\n PasswordField: {\n passwordIsHidden: 'Password is hidden',\n passwordIsShown: 'Password is shown',\n showPassword: 'Show password',\n },\n StepperField: {\n increaseButtonLabel: 'Increase to',\n decreaseButtonLabel: 'Decrease to',\n },\n};\nconst stylePropsToThemeKeys = {\n backgroundColor: 'colors',\n borderColor: 'colors',\n borderWidth: 'borderWidths',\n color: 'colors',\n borderRadius: 'radii',\n fontSize: 'fontSizes',\n fontWeight: 'fontWeights',\n fontFamily: 'fonts',\n lineHeight: 'lineHeights',\n opacity: 'opacities',\n boxShadow: 'shadows',\n transform: 'transforms',\n left: 'space',\n right: 'space',\n top: 'space',\n bottom: 'space',\n height: 'space',\n width: 'space',\n letterSpacing: 'space',\n margin: 'space',\n marginBlock: 'space',\n marginBlockEnd: 'space',\n marginBlockStart: 'space',\n marginInline: 'space',\n marginInlineEnd: 'space',\n marginInlineStart: 'space',\n marginLeft: 'space',\n marginRight: 'space',\n marginTop: 'space',\n marginBottom: 'space',\n maxHeight: 'space',\n maxWidth: 'space',\n minHeight: 'space',\n minWidth: 'space',\n padding: 'space',\n paddingBlock: 'space',\n paddingBlockEnd: 'space',\n paddingBlockStart: 'space',\n paddingInline: 'space',\n paddingInlineEnd: 'space',\n paddingInlineStart: 'space',\n paddingLeft: 'space',\n paddingRight: 'space',\n paddingTop: 'space',\n paddingBottom: 'space',\n gap: 'space',\n columnGap: 'space',\n rowGap: 'space',\n};\n// key name\nconst ESCAPE_KEY = 'Escape';\nconst ENTER_KEY = 'Enter';\nconst ARROW_UP = 'ArrowUp';\nconst ARROW_DOWN = 'ArrowDown';\n\nexport { ARROW_DOWN, ARROW_UP, ComponentText, ENTER_KEY, ESCAPE_KEY, stylePropsToThemeKeys };\n","import { isDesignToken, cssNameTransform } from '@aws-amplify/ui';\nexport { classNameModifier, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { isThemeStylePropKey } from '../types/theme.mjs';\nimport { stylePropsToThemeKeys } from './constants.mjs';\n\nconst strHasLength = (str) => typeof str === 'string' && str.length > 0;\nconst isEmptyString = (value) => typeof value === 'string' && value.length === 0;\nconst isNullOrEmptyString = (value) => value == null || isEmptyString(value);\n/**\n * Create a consecutive integer array from start value to end value.\n * @param start start value\n * @param end end value\n * @returns an integer array with elements from start to end consecutively\n */\nconst getConsecutiveIntArray = (start, end) => {\n const length = end - start + 1;\n return Array.from({ length }, (_, idx) => idx + start);\n};\n/**\n * TS helper function to make using Object.keys more typesafe\n */\nconst objectKeys = (obj) => {\n return Object.keys(obj);\n};\nconst getCSSVariableIfValueIsThemeKey = (propKey, value, tokens) => {\n if (typeof value !== 'string') {\n return value;\n }\n // For shorthand properties like `padding` which can accept 1, 2, 3, or 4 values\n // run this function on each value. This would not work on CSS shorthands that\n // mix types, like border which is a composite of borderWidth, borderStyle, and\n // borderColor.\n if (value.includes(' ')) {\n return value\n .split(' ')\n .map((val) => getCSSVariableIfValueIsThemeKey(propKey, val, tokens))\n .join(' ');\n }\n if (isThemeStylePropKey(propKey)) {\n const path = value.split('.');\n const tokenKey = stylePropsToThemeKeys[propKey];\n let tokenProps = tokens[tokenKey];\n for (let i = 0; i < path.length; i++) {\n if (tokenProps) {\n // overwrite tokenProps with next nested value of tokenProps\n tokenProps = tokenProps[path[i]];\n continue;\n }\n break;\n }\n return isDesignToken(tokenProps)\n ? `var(--${cssNameTransform({\n path: [stylePropsToThemeKeys[propKey], ...path],\n })})`\n : value;\n }\n return value;\n};\n\nexport { getCSSVariableIfValueIsThemeKey, getConsecutiveIntArray, isEmptyString, isNullOrEmptyString, objectKeys, strHasLength };\n","import { stylePropsToThemeKeys } from '../shared/constants.mjs';\n\nconst isThemeStylePropKey = (key) => {\n return key in stylePropsToThemeKeys;\n};\n\nexport { isThemeStylePropKey };\n","import { defaultTheme } from '@aws-amplify/ui';\nimport { objectKeys } from '../utils.mjs';\n\nconst getClosestValueByBreakpoint = ({ breakpoint, breakpoints, values, }) => {\n const value = values[breakpoint];\n // Check if breakpoint exists in values\n if (value !== undefined) {\n return value;\n }\n // Otherwise use a lower breakpoint value\n const breakpointsDesc = objectKeys(breakpoints).sort((a, b) => breakpoints[b] - breakpoints[a]);\n const lowerBreakpoints = breakpointsDesc.slice(breakpointsDesc.indexOf(breakpoint));\n for (const breakpoint of lowerBreakpoints) {\n // Check if breakpoint exists in values\n const value = values[breakpoint];\n if (value !== undefined) {\n return value;\n }\n }\n return null;\n};\n/**\n * This takes an object and will return an object that only has the\n * breakpoint keys\n * @param obj\n * @returns\n */\nconst valueObjToBreakpoints = (obj) => {\n return objectKeys(obj).reduce((acc, key) => key in defaultTheme.breakpoints.values\n ? { ...acc, [key]: obj[key] }\n : acc, {});\n};\nconst getValueAtCurrentBreakpoint = ({ breakpoint, breakpoints, values, }) => {\n let breakpointCompatValues = {};\n const breakpointsAscending = objectKeys(breakpoints).sort((a, b) => breakpoints[a] - breakpoints[b]);\n if (Array.isArray(values)) {\n values.forEach((value, index) => {\n breakpointCompatValues[breakpointsAscending[index]] = value;\n });\n }\n else if (typeof values === 'object') {\n breakpointCompatValues = valueObjToBreakpoints(values);\n }\n return getClosestValueByBreakpoint({\n breakpoint,\n breakpoints,\n values: breakpointCompatValues,\n });\n};\n\nexport { getValueAtCurrentBreakpoint };\n","import * as React from 'react';\nimport { getMediaQueries } from './getMediaQueries.mjs';\n\n// Inspiration for getMediaQueries and useBreakpoint\nconst useIsomorphicEffect = typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect;\nconst useBreakpoint = ({ breakpoints, defaultBreakpoint, }) => {\n const supportMatchMedia = typeof window !== 'undefined' && typeof window.matchMedia !== 'undefined';\n const matchMedia = supportMatchMedia ? window.matchMedia : null;\n const mediaQueries = React.useMemo(() => getMediaQueries({ breakpoints }), [breakpoints]);\n const [breakpoint, setBreakpoint] = React.useState(defaultBreakpoint);\n const updateBreakpoint = React.useCallback((matches, breakpoint) => {\n if (matches) {\n setBreakpoint(breakpoint);\n }\n }, [setBreakpoint]);\n useIsomorphicEffect(() => {\n if (!matchMedia)\n return;\n const unsubscribeList = mediaQueries.map(({ query, breakpoint }) => {\n const queryList = matchMedia(query);\n updateBreakpoint(queryList.matches, breakpoint);\n const handleMediaChange = (event) => {\n if (event.matches) {\n setBreakpoint(breakpoint);\n }\n };\n queryList.addEventListener('change', handleMediaChange);\n return () => queryList.removeEventListener('change', handleMediaChange);\n });\n return () => {\n unsubscribeList.forEach((unsubscribe) => unsubscribe());\n };\n }, [breakpoints, setBreakpoint, matchMedia, mediaQueries]);\n /** Print a nice debug value for React Devtools */\n React.useDebugValue(breakpoint, (breakpoint) => breakpoint);\n return breakpoint;\n};\n\nexport { useBreakpoint };\n","import { objectKeys } from '../utils.mjs';\n\n// Inspiration for getMediaQueries and useBreakpoint\nconst getMediaQueries = ({ breakpoints }) => {\n const sortedBreakpoints = objectKeys(breakpoints).sort((a, b) => breakpoints[b] - breakpoints[a]);\n return sortedBreakpoints.map((breakpoint, index) => {\n let query = '';\n const minWidth = breakpoints[breakpoint];\n const nextBreakpoint = sortedBreakpoints[index - 1];\n const maxWidth = nextBreakpoint ? breakpoints[nextBreakpoint] - 1 : null;\n if (minWidth >= 0) {\n query = `(min-width: ${minWidth}px)`;\n }\n if (maxWidth !== null) {\n if (query) {\n query += ' and ';\n }\n query += `(max-width: ${maxWidth}px)`;\n }\n return {\n breakpoint,\n query,\n maxWidth,\n minWidth,\n };\n });\n};\n\nexport { getMediaQueries };\n","import deepExtend from 'style-dictionary/lib/utils/deepExtend.js';\nimport flattenProperties from 'style-dictionary/lib/utils/flattenProperties.js';\nimport { defaultTheme } from './defaultTheme.mjs';\nimport { setupTokens, cssNameTransform, cssValue } from './utils.mjs';\nimport '@aws-amplify/core/internals/utils';\nimport '../utils/setUserAgent/constants.mjs';\nimport { isString } from '../utils/utils.mjs';\n\n// Internal Style Dictionary methods\n/**\n * This will take a design token and add some data to it for it\n * to be used in JS/CSS. It will create its CSS var name and update\n * the value to use a CSS var if it is a reference. It will also\n * add a `.toString()` method to make it easier to use in JS.\n *\n * We should see if there is a way to share this logic with style dictionary...\n */\nconst setupToken = ({ token, path }) => {\n const name = `--${cssNameTransform({ path })}`;\n const { value: original } = token;\n const value = cssValue(token);\n return { name, original, path, value, toString: () => `var(${name})` };\n};\n/**\n * Takes a set of keys and a color name and returns an object of design tokens,\n * used for applying a primary color at the theme level to our tokens.\n *\n * createColorPalette({keys: ['10','20',...], value: 'red'})\n * returns {\n * 10: { value: '{colors.red.10.value}' },\n * 20: { value: '{colors.red.20.value}' },\n * ...\n * }\n */\nfunction createColorPalette({ keys, value }) {\n return keys.reduce((acc, key) => {\n return {\n ...acc,\n [key]: { value: `{colors.${value}.${key}.value}` },\n };\n }, {});\n}\n/**\n * This will be used like `const myTheme = createTheme({})`\n * `myTheme` can then be passed to a Provider or the generated CSS\n * can be passed to a stylesheet at build-time or run-time.\n * const myTheme = createTheme({})\n * const myOtherTheme = createTheme({}, myTheme);\n */\nfunction createTheme(theme, DefaultTheme = defaultTheme) {\n // merge theme and DefaultTheme to get a complete theme\n // deepExtend is an internal Style Dictionary method\n // that performs a deep merge on n objects. We could change\n // this to another 3p deep merge solution too.\n const mergedTheme = deepExtend([{}, DefaultTheme, theme]);\n const { primaryColor, secondaryColor } = mergedTheme;\n // apply primaryColor and secondaryColor if present\n if (isString(primaryColor)) {\n mergedTheme.tokens.colors.primary = createColorPalette({\n keys: Object.keys(mergedTheme.tokens.colors[primaryColor]),\n value: primaryColor,\n });\n }\n if (isString(secondaryColor)) {\n mergedTheme.tokens.colors.secondary = createColorPalette({\n keys: Object.keys(mergedTheme.tokens.colors[secondaryColor]),\n value: secondaryColor,\n });\n }\n // Setting up the tokens. This is similar to what Style Dictionary\n // does. At the end of this, each token should have:\n // - CSS variable name of itself\n // - its value (reference to another CSS variable or raw value)\n const tokens = setupTokens({\n tokens: mergedTheme.tokens,\n setupToken,\n }); // Setting the type here because setupTokens is recursive\n const { breakpoints, name } = mergedTheme;\n // flattenProperties is another internal Style Dictionary function\n // that creates an array of all tokens.\n let cssText = `[data-amplify-theme=\"${name}\"] {\\n` +\n flattenProperties(tokens)\n .map((token) => `${token.name}: ${token.value};`)\n .join('\\n') +\n `\\n}\\n`;\n let overrides = [];\n /**\n * For each override, we setup the tokens and then generate the CSS.\n * This allows us to have one single CSS string for all possible overrides\n * and avoid re-renders in React, but also support other frameworks as well.\n */\n if (mergedTheme.overrides) {\n overrides = mergedTheme.overrides.map((override) => {\n const tokens = setupTokens({\n tokens: override.tokens,\n setupToken,\n });\n const customProperties = flattenProperties(tokens)\n .map((token) => `${token.name}: ${token.value};`)\n .join('\\n');\n // Overrides can have a selector, media query, breakpoint, or color mode\n // for creating the selector\n if ('selector' in override) {\n cssText += `\\n${override.selector} {\\n${customProperties}\\n}\\n`;\n }\n if ('mediaQuery' in override) {\n cssText += `\\n@media (${override.mediaQuery}) {\n [data-amplify-theme=\"${name}\"] {\n ${customProperties}\n }\n}\\n`;\n }\n if ('breakpoint' in override) {\n const breakpoint = mergedTheme.breakpoints.values[override.breakpoint];\n cssText += `\\n@media (min-width: ${breakpoint}px) {\n [data-amplify-theme=\"${name}\"] {\n ${customProperties}\n }\n}\\n`;\n }\n if ('colorMode' in override) {\n cssText += `\\n@media (prefers-color-scheme: ${override.colorMode}) {\n [data-amplify-theme=\"${name}\"][data-amplify-color-mode=\"system\"] {\n ${customProperties}\n color-scheme: ${override.colorMode};\n }\n }\\n`;\n cssText += `\\n[data-amplify-theme=\"${name}\"][data-amplify-color-mode=\"${override.colorMode}\"] {\n ${customProperties}\n color-scheme: ${override.colorMode};\n }\\n`;\n }\n return {\n ...override,\n tokens,\n };\n });\n }\n return {\n tokens,\n breakpoints,\n name,\n cssText,\n // keep overrides separate from base theme\n // this allows web platforms to use plain CSS scoped to a\n // selector and only override the CSS vars needed. This\n // means we could generate CSS at build-time in a postcss\n // plugin, or do it at runtime and inject the CSS into a\n // style tag.\n // This also allows RN to dynamically switch themes in a\n // provider.\n overrides,\n };\n}\n\nexport { createTheme };\n","import * as React from 'react';\nimport { createTheme } from '@aws-amplify/ui';\n\nconst ThemeContext = React.createContext({\n theme: createTheme(),\n colorMode: undefined,\n});\n\nexport { ThemeContext };\n","import * as React from 'react';\nimport { createTheme } from '@aws-amplify/ui';\nimport { ThemeContext } from '../components/ThemeProvider/ThemeContext.mjs';\n\n/**\n * Get current Theme object value from Amplify context.\n * Returns a default theme if context is not available\n */\nconst getThemeFromContext = (context) => {\n if (typeof context === 'undefined' || typeof context.theme === 'undefined') {\n return createTheme();\n }\n return context.theme;\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/theming)\n */\nconst useTheme = () => {\n const context = React.useContext(ThemeContext);\n return getThemeFromContext(context);\n};\n/**\n * Internal use only\n */\nconst useColorMode = () => {\n const context = React.useContext(ThemeContext);\n return context.colorMode;\n};\n\nexport { getThemeFromContext, useColorMode, useTheme };\n","import * as React from 'react';\nimport { isDesignToken } from '@aws-amplify/ui';\nimport { ComponentPropsToStylePropsMap } from '../types/style.mjs';\nimport { getValueAtCurrentBreakpoint } from './responsive/utils.mjs';\nimport { useBreakpoint } from './responsive/useBreakpoint.mjs';\nimport { useTheme } from '../../hooks/useTheme.mjs';\nimport { getStyleValue } from './getStyleValue.mjs';\nimport { isNullOrEmptyString, isEmptyString, getCSSVariableIfValueIsThemeKey } from './utils.mjs';\n\nconst isSpanPrimitiveValue = (spanValue) => {\n return (spanValue === 'auto' ||\n (typeof spanValue === 'number' && !isNaN(spanValue)) ||\n (typeof spanValue === 'string' && !isNaN(parseFloat(spanValue))));\n};\nconst getGridSpan = (spanValue) => {\n return spanValue === 'auto' ? 'auto' : `span ${spanValue}`;\n};\nconst convertGridSpan = (spanValue) => {\n // PropertyType\n if (isSpanPrimitiveValue(spanValue)) {\n return getGridSpan(spanValue);\n }\n // PropertyType[]\n if (Array.isArray(spanValue)) {\n return spanValue.map((value) => getGridSpan(value));\n }\n // ResponsiveObject<PropertyType>\n if (typeof spanValue === 'object' && spanValue != null) {\n return Object.entries(spanValue).reduce((acc, [key, value]) => ({ ...acc, [key]: getGridSpan(value) }), {});\n }\n return null;\n};\n/**\n * Transforms style props to another target prop\n * where the original is a simpler API than the target.\n * This function will remove the original prop and\n * replace target prop values with calculated\n * E.g. rowSpan => row, columnSpan => column\n */\nconst useTransformStyleProps = (props) => {\n const { rowSpan, columnSpan, row, column, ...rest } = props;\n const { rowFromSpanValue, columnFromSpanValue } = React.useMemo(() => {\n return {\n rowFromSpanValue: convertGridSpan(rowSpan),\n columnFromSpanValue: convertGridSpan(columnSpan),\n };\n }, [rowSpan, columnSpan]);\n return {\n row: !isNullOrEmptyString(row) ? row : rowFromSpanValue,\n column: !isNullOrEmptyString(column) ? column : columnFromSpanValue,\n ...rest,\n };\n};\nconst isComponentStyleProp = (key) => {\n return key in ComponentPropsToStylePropsMap;\n};\n/**\n * Convert style props to CSS variables for React style prop\n * Note: Will filter out undefined, null, and empty string prop values\n */\nconst convertStylePropsToStyleObj = ({ props = {}, style = {}, breakpoint, breakpoints, tokens, }) => {\n const nonStyleProps = {};\n Object.keys(props)\n .filter((propKey) => props[propKey] !== null)\n .forEach((propKey) => {\n if (isComponentStyleProp(propKey)) {\n const values = props[propKey];\n if (!values || isEmptyString(values))\n return;\n const reactStyleProp = ComponentPropsToStylePropsMap[propKey];\n // short circuit the style prop here if it is a string or design token\n // so we don't have to call getValueAtCurrentBreakpoint every time\n let value = '';\n if (isDesignToken(values)) {\n value = values.toString();\n }\n else if (typeof values === 'string') {\n value = getCSSVariableIfValueIsThemeKey(propKey, values, tokens);\n }\n else if (typeof values === 'number') {\n value = values;\n }\n else if (typeof values === 'object') {\n // here values should be a responsive array or object\n value = getStyleValue({\n propKey,\n tokens,\n value: getValueAtCurrentBreakpoint({\n values,\n breakpoint,\n breakpoints,\n }),\n });\n }\n style = {\n ...style,\n [reactStyleProp]: value,\n };\n }\n else if (typeof props[propKey] !== 'undefined') {\n nonStyleProps[propKey] = props[propKey];\n }\n });\n return { propStyles: style, nonStyleProps };\n};\nconst useStyles = (props, style) => {\n const { breakpoints: { values: breakpoints, defaultBreakpoint }, tokens, } = useTheme();\n const breakpoint = useBreakpoint({\n breakpoints,\n defaultBreakpoint,\n });\n const propStyles = useTransformStyleProps(props);\n return React.useMemo(() => convertStylePropsToStyleObj({\n props: propStyles,\n style,\n breakpoint,\n breakpoints,\n tokens,\n }), [propStyles, style, breakpoints, breakpoint, tokens]);\n};\n\nexport { convertGridSpan, convertStylePropsToStyleObj, getGridSpan, isSpanPrimitiveValue, useStyles, useTransformStyleProps };\n","import { isDesignToken, isString } from '@aws-amplify/ui';\nimport { getCSSVariableIfValueIsThemeKey } from './utils.mjs';\n\n/**\n * This takes an unknown value, which could be a:\n * - design token: `color={tokens.colors.font.primary}`\n * - string, which could be a:\n * - theme key: `color='font.primary'`\n * - plain style: `color='red'`\n * - or a number: `padding={10}`\n * and returns the appropriate and resolved value\n */\nconst getStyleValue = ({ value, propKey, tokens, }) => {\n if (isDesignToken(value)) {\n return value.toString();\n }\n if (isString(value)) {\n return isString(propKey)\n ? getCSSVariableIfValueIsThemeKey(propKey, value, tokens)\n : value;\n }\n return null;\n};\n\nexport { getStyleValue };\n","import * as React from 'react';\nimport { useStyles } from '../shared/styleUtils.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst ViewPrimitive = ({ as = 'div', children, testId, ariaLabel, isDisabled, style, inert, ...rest }, ref) => {\n const { propStyles, nonStyleProps } = useStyles(rest, style);\n return React.createElement(as, {\n 'aria-label': ariaLabel,\n 'data-testid': testId,\n disabled: isDisabled,\n ref,\n inert: inert ? '' : null,\n style: propStyles,\n ...nonStyleProps,\n }, children);\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/view)\n */\nconst View = primitiveWithForwardRef(ViewPrimitive);\nView.displayName = 'View';\n\nexport { View };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst FlexPrimitive = ({ className, children, ...rest }, ref) => (React.createElement(View, { className: classNames(ComponentClassName.Flex, className), ref: ref, ...rest }, children));\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/flex)\n */\nconst Flex = primitiveWithForwardRef(FlexPrimitive);\nFlex.displayName = 'Flex';\n\nexport { Flex };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst LINEAR_EMPTY = 'linear-empty';\nconst LINEAR_FILLED = 'linear-filled';\nconst CIRCULAR_EMPTY = 'circular-empty';\nconst CIRCULAR_FILLED = 'circular-filled';\n// radius + strokeWidth = 50\nconst CIRCULAR_STROKE_WIDTH = 8;\nconst RADIUS = 42;\n// circumference = 2 * r * PI (r = 42)\nconst CIRCUMFERENCE = 2 * RADIUS * Math.PI;\nconst LoaderPrimitive = ({ className, filledColor, emptyColor, size, variation, isDeterminate = false, isPercentageTextHidden = false, percentage = 0, ...rest }, ref) => {\n percentage = Math.min(percentage, 100);\n percentage = Math.max(percentage, 0);\n const percent = `${percentage}%`;\n const componentClasses = classNames(ComponentClassName.Loader, classNameModifier(ComponentClassName.Loader, size), classNameModifier(ComponentClassName.Loader, variation), classNameModifierByFlag(ComponentClassName.Loader, 'determinate', isDeterminate), className);\n const linearLoader = (React.createElement(\"g\", null,\n React.createElement(\"line\", { x1: \"0\", x2: \"100%\", y1: \"50%\", y2: \"50%\", style: { stroke: String(emptyColor) }, \"data-testid\": LINEAR_EMPTY }),\n React.createElement(\"line\", { x1: \"0\", x2: isDeterminate ? percent : '100%', y1: \"50%\", y2: \"50%\", style: {\n // To get rid of the visible stroke linecap when percentage is 0\n stroke: isDeterminate && percentage === 0\n ? 'none'\n : filledColor\n ? String(filledColor)\n : undefined,\n }, \"data-testid\": LINEAR_FILLED }),\n isDeterminate ? (React.createElement(\"text\", { \"aria-live\": \"polite\", className: classNames(ComponentClassName.LoaderLabel, isPercentageTextHidden ? ComponentClassName.VisuallyHidden : null), \n // -1% offset makes the text position look nicest\n x: `${-1 + percentage}%`, y: \"200%\" }, percent)) : null));\n // r + stroke-width should add up to 50% to avoid overflow\n const circularLoader = (React.createElement(\"g\", null,\n React.createElement(\"circle\", { cx: \"50%\", cy: \"50%\", r: `${RADIUS}%`, strokeWidth: `${CIRCULAR_STROKE_WIDTH}%`, style: { stroke: String(emptyColor) }, \"data-testid\": CIRCULAR_EMPTY }),\n React.createElement(\"circle\", { cx: \"50%\", cy: \"50%\", r: `${RADIUS}%`, strokeWidth: `${CIRCULAR_STROKE_WIDTH}%`, style: {\n stroke: String(filledColor),\n strokeDasharray: isDeterminate\n ? `${CIRCUMFERENCE}% ${CIRCUMFERENCE}%`\n : undefined,\n strokeDashoffset: isDeterminate\n ? `${CIRCUMFERENCE - (CIRCUMFERENCE * percentage) / 100}%`\n : undefined,\n }, \"data-testid\": CIRCULAR_FILLED }),\n isDeterminate ? (React.createElement(\"text\", { \"aria-live\": \"polite\", className: classNames(ComponentClassName.LoaderLabel, isPercentageTextHidden ? ComponentClassName.VisuallyHidden : null), \n // this x and y make text position look nicest\n x: \"130%\", y: \"80%\" }, percent)) : null));\n return (React.createElement(View, { as: \"svg\", className: componentClasses, ref: ref, role: \"img\", ...rest }, variation === 'linear' ? linearLoader : circularLoader));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/loader)\n */\nconst Loader = primitiveWithForwardRef(LoaderPrimitive);\nLoader.displayName = 'Loader';\n\nexport { CIRCULAR_EMPTY, CIRCULAR_FILLED, CIRCULAR_STROKE_WIDTH, CIRCUMFERENCE, LINEAR_EMPTY, LINEAR_FILLED, Loader, RADIUS };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { useFieldset } from '../Fieldset/useFieldset.mjs';\nimport { Flex } from '../Flex/Flex.mjs';\nimport { Loader } from '../Loader/Loader.mjs';\nimport { View } from '../View/View.mjs';\n\n// These variations support colorThemes. 'undefined' accounts for our\n// 'default' variation which is not named.\nconst supportedVariations = ['link', 'primary', undefined];\nconst ButtonPrimitive = ({ className, children, colorTheme, isFullWidth = false, isDisabled, isLoading, loadingText = '', size, type = 'button', variation, ...rest }, ref) => {\n // Creates our colorTheme modifier string based on if the variation\n // supports colorThemes and a colorTheme is used.\n const colorThemeModifier = supportedVariations.includes(variation) && colorTheme\n ? `${variation ?? 'outlined'}--${colorTheme}`\n : undefined;\n const { isFieldsetDisabled } = useFieldset();\n const shouldBeDisabled = isFieldsetDisabled\n ? isFieldsetDisabled\n : isDisabled ?? isLoading ?? rest['disabled'];\n const componentClasses = classNames(ComponentClassName.Button, ComponentClassName.FieldGroupControl, classNameModifier(ComponentClassName.Button, variation), classNameModifier(ComponentClassName.Button, colorThemeModifier), classNameModifier(ComponentClassName.Button, size), classNameModifierByFlag(ComponentClassName.Button, 'disabled', shouldBeDisabled), classNameModifierByFlag(ComponentClassName.Button, 'loading', isLoading), classNameModifierByFlag(ComponentClassName.Button, 'fullwidth', isFullWidth), className);\n return (React.createElement(View, { ref: ref, as: \"button\", className: componentClasses, isDisabled: shouldBeDisabled, type: type, ...rest }, isLoading ? (React.createElement(Flex, { as: \"span\", className: ComponentClassName.ButtonLoaderWrapper },\n React.createElement(Loader, { size: size }),\n loadingText ? loadingText : null)) : (children)));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/button)\n */\nconst Button = primitiveWithForwardRef(ButtonPrimitive);\nButton.displayName = 'Button';\n\nexport { Button };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst headingLevels = {\n 1: 'h1',\n 2: 'h2',\n 3: 'h3',\n 4: 'h4',\n 5: 'h5',\n 6: 'h6',\n};\nconst HeadingPrimitive = ({ className, children, isTruncated, level = 6, ...rest }, ref) => (React.createElement(View, { as: headingLevels[level], className: classNames(ComponentClassName.Heading, classNameModifier(ComponentClassName.Heading, level), classNameModifierByFlag(ComponentClassName.Heading, 'truncated', isTruncated), className), ref: ref, ...rest }, children));\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/heading)\n */\nconst Heading = primitiveWithForwardRef(HeadingPrimitive);\nHeading.displayName = 'Heading';\n\nexport { Heading };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst TextPrimitive = ({ as = 'p', className, children, isTruncated, variation, ...rest }, ref) => {\n const componentClasses = classNames(ComponentClassName.Text, classNameModifier(ComponentClassName.Text, variation), classNameModifierByFlag(ComponentClassName.Text, 'truncated', isTruncated), className);\n return (React.createElement(View, { as: as, className: componentClasses, ref: ref, ...rest }, children));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/text)\n */\nconst Text = primitiveWithForwardRef(TextPrimitive);\nText.displayName = 'Text';\n\nexport { Text };\n","const getFormDataFromEvent = (event) => {\n const formData = new FormData(event.target);\n return Object.fromEntries(formData);\n};\n\nexport { getFormDataFromEvent };\n","import { useCallback } from 'react';\nimport { getFormDataFromEvent } from '../../../../helpers/utils.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\n\nfunction useFormHandlers() {\n const { submitForm, updateBlur, updateForm } = useAuthenticator((context) => [\n context.submitForm,\n context.updateBlur,\n context.updateForm,\n ]);\n const handleBlur = useCallback(({ target: { name } }) => {\n updateBlur({ name });\n }, [updateBlur]);\n // @TODO: align multiple input type handling with react docs example for 3.0 release\n // example: https://reactjs.org/docs/forms.html#handling-multiple-inputs\n const handleChange = useCallback(({ target: { checked, name, type, value }, }) => {\n const isUncheckedCheckbox = type === 'checkbox' && !checked;\n updateForm({\n name,\n value: isUncheckedCheckbox ? undefined : value,\n });\n }, [updateForm]);\n const handleSubmit = useCallback((event) => {\n event.preventDefault();\n submitForm(getFormDataFromEvent(event));\n }, [submitForm]);\n return { handleBlur, handleChange, handleSubmit };\n}\n\nexport { useFormHandlers };\n","import * as React from 'react';\n\nconst IconsContext = React.createContext({});\n\nexport { IconsContext };\n","import * as React from 'react';\nimport { IconsContext } from './IconsContext.mjs';\n\nfunction useIcons(component) {\n const context = React.useContext(IconsContext);\n if (component && context) {\n return context[component];\n }\n return undefined;\n}\n\nexport { useIcons };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { View } from '../../View/View.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst IconCheckCircle = (props) => {\n const { className, ...rest } = props;\n return (React.createElement(View, { as: \"span\", width: \"1em\", height: \"1em\", className: classNames(ComponentClassName.Icon, className), ...rest },\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"path\", { d: \"M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20ZM16.59 7.58L10 14.17L7.41 11.59L6 13L10 17L18 9L16.59 7.58Z\", fill: \"currentColor\" }))));\n};\n\nexport { IconCheckCircle };\n","import { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { View } from '../../View/View.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst IconError = (props) => {\n const { className, ...rest } = props;\n return (React.createElement(View, { as: \"span\", width: \"1em\", height: \"1em\", className: classNames(ComponentClassName.Icon, className), ...rest },\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"path\", { d: \"M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM13 17H11V15H13V17ZM13 13H11V7H13V13Z\", fill: \"currentColor\" }))));\n};\n\nexport { IconError };\n","import { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { View } from '../../View/View.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst IconInfo = (props) => {\n const { className, ...rest } = props;\n return (React.createElement(View, { as: \"span\", width: \"1em\", height: \"1em\", className: classNames(ComponentClassName.Icon, className), ...rest },\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"path\", { d: \"M11 7H13V9H11V7ZM11 11H13V17H11V11ZM12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20Z\", fill: \"currentColor\" }))));\n};\n\nexport { IconInfo };\n","import { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { View } from '../../View/View.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst IconWarning = (props) => {\n const { className, ...rest } = props;\n return (React.createElement(View, { as: \"span\", width: \"1em\", height: \"1em\", className: classNames(ComponentClassName.Icon, className), ...rest },\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"path\", { d: \"M1 21H23L12 2L1 21ZM13 18H11V16H13V18ZM13 14H11V10H13V14Z\", fill: \"currentColor\" }))));\n};\n\nexport { IconWarning };\n","import * as React from 'react';\nimport { ComponentClassName } from '@aws-amplify/ui';\nimport '../Icon/Icon.mjs';\nimport '../Icon/context/IconsContext.mjs';\nimport { useIcons } from '../Icon/context/useIcons.mjs';\nimport '../View/View.mjs';\nimport { IconCheckCircle } from '../Icon/icons/IconCheckCircle.mjs';\nimport { IconError } from '../Icon/icons/IconError.mjs';\nimport { IconInfo } from '../Icon/icons/IconInfo.mjs';\nimport { IconWarning } from '../Icon/icons/IconWarning.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst AlertIcon = ({ variation, ariaHidden, ariaLabel, role, }) => {\n const icons = useIcons('alert');\n let icon;\n switch (variation) {\n case 'info':\n icon = icons?.info ?? (React.createElement(IconInfo, { \"aria-hidden\": ariaHidden, \"aria-label\": ariaLabel, role: role }));\n break;\n case 'error':\n icon = icons?.error ?? (React.createElement(IconError, { \"aria-hidden\": ariaHidden, \"aria-label\": ariaLabel, role: role }));\n break;\n case 'warning':\n icon = icons?.warning ?? (React.createElement(IconWarning, { \"aria-hidden\": ariaHidden, \"aria-label\": ariaLabel, role: role }));\n break;\n case 'success':\n icon = icons?.success ?? (React.createElement(IconCheckCircle, { \"aria-hidden\": ariaHidden, \"aria-label\": ariaLabel, role: role }));\n break;\n }\n return icon ? (React.createElement(\"span\", { className: ComponentClassName.AlertIcon }, icon)) : null;\n};\nAlertIcon.displayName = 'AlertIcon';\n\nexport { AlertIcon };\n","import { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { View } from '../../View/View.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst IconClose = (props) => {\n const { className, size, ...rest } = props;\n return (React.createElement(View, { as: \"span\", width: size ?? '1em', height: size ?? '1em', className: classNames(ComponentClassName.Icon, className), ...rest },\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", style: size ? { width: size, height: size } : undefined },\n React.createElement(\"path\", { d: \"M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z\", fill: \"currentColor\" }))));\n};\n\nexport { IconClose };\n","import * as React from 'react';\nimport { isFunction, classNames, ComponentClassName, classNameModifier } from '@aws-amplify/ui';\nimport { ComponentText } from '../shared/constants.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { View } from '../View/View.mjs';\nimport { Flex } from '../Flex/Flex.mjs';\nimport { Button } from '../Button/Button.mjs';\nimport { AlertIcon } from './AlertIcon.mjs';\nimport '../Icon/Icon.mjs';\nimport '../Icon/context/IconsContext.mjs';\nimport { useIcons } from '../Icon/context/useIcons.mjs';\nimport { IconClose } from '../Icon/icons/IconClose.mjs';\n\nconst AlertPrimitive = ({ buttonRef, children, className, dismissButtonLabel = ComponentText.Alert.dismissButtonLabel, hasIcon = true, heading, isDismissible = false, onDismiss, variation, ...rest }, ref) => {\n const [dismissed, setDismissed] = React.useState(false);\n const icons = useIcons('alert');\n const dismissAlert = React.useCallback(() => {\n setDismissed(!dismissed);\n if (isFunction(onDismiss)) {\n onDismiss();\n }\n }, [setDismissed, onDismiss, dismissed]);\n return !dismissed ? (React.createElement(Flex, { className: classNames(ComponentClassName.Alert, className, classNameModifier(ComponentClassName.Alert, variation)), ref: ref, role: \"alert\", ...rest },\n hasIcon && React.createElement(AlertIcon, { variation: variation, ariaHidden: true }),\n React.createElement(View, { flex: \"1\" },\n heading && (React.createElement(View, { className: ComponentClassName.AlertHeading }, heading)),\n React.createElement(View, { className: ComponentClassName.AlertBody }, children)),\n isDismissible && (React.createElement(Button, { ariaLabel: dismissButtonLabel, variation: \"link\", className: ComponentClassName.AlertDismiss, onClick: dismissAlert, ref: buttonRef }, icons?.close ?? React.createElement(IconClose, { \"aria-hidden\": \"true\" }))))) : null;\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/alert)\n */\nconst Alert = primitiveWithForwardRef(AlertPrimitive);\nAlert.displayName = 'Alert';\n\nexport { Alert };\n","import React__default from 'react';\nimport { translate } from '@aws-amplify/ui';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { Alert } from '../../../primitives/Alert/Alert.mjs';\n\nconst RemoteErrorMessage = () => {\n const { error } = useAuthenticator((context) => [context.error]);\n return (React__default.createElement(React__default.Fragment, null, error ? (React__default.createElement(Alert, { variation: \"error\", isDismissible: true }, translate(error))) : null));\n};\n\nexport { RemoteErrorMessage };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst VisuallyHiddenPrimitive = ({ as = 'span', children, className, ...rest }, ref) => (React.createElement(View, { as: as, className: classNames(ComponentClassName.VisuallyHidden, className), ref: ref, ...rest }, children));\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/visuallyhidden)\n */\nconst VisuallyHidden = primitiveWithForwardRef(VisuallyHiddenPrimitive);\nVisuallyHidden.displayName = 'VisuallyHidden';\n\nexport { VisuallyHidden };\n","import { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { View } from '../../View/View.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst IconVisibilityOff = (props) => {\n const { className, ...rest } = props;\n return (React.createElement(View, { as: \"span\", width: \"1em\", height: \"1em\", className: classNames(ComponentClassName.Icon, className), ...rest },\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"path\", { d: \"M12 6.0002C15.79 6.0002 19.17 8.1302 20.82 11.5002C20.23 12.7202 19.4 13.7702 18.41 14.6202L19.82 16.0302C21.21 14.8002 22.31 13.2602 23 11.5002C21.27 7.1102 17 4.0002 12 4.0002C10.73 4.0002 9.51 4.2002 8.36 4.5702L10.01 6.2202C10.66 6.0902 11.32 6.0002 12 6.0002ZM10.93 7.14019L13 9.2102C13.57 9.4602 14.03 9.9202 14.28 10.4902L16.35 12.5602C16.43 12.2202 16.49 11.8602 16.49 11.4902C16.5 9.0102 14.48 7.0002 12 7.0002C11.63 7.0002 11.28 7.05019 10.93 7.14019ZM2.01 3.8702L4.69 6.5502C3.06 7.8302 1.77 9.5302 1 11.5002C2.73 15.8902 7 19.0002 12 19.0002C13.52 19.0002 14.98 18.7102 16.32 18.1802L19.74 21.6002L21.15 20.1902L3.42 2.4502L2.01 3.8702ZM9.51 11.3702L12.12 13.9802C12.08 13.9902 12.04 14.0002 12 14.0002C10.62 14.0002 9.5 12.8802 9.5 11.5002C9.5 11.4502 9.51 11.4202 9.51 11.3702V11.3702ZM6.11 7.97019L7.86 9.7202C7.63 10.2702 7.5 10.8702 7.5 11.5002C7.5 13.9802 9.52 16.0002 12 16.0002C12.63 16.0002 13.23 15.8702 13.77 15.6402L14.75 16.6202C13.87 16.8602 12.95 17.0002 12 17.0002C8.21 17.0002 4.83 14.8702 3.18 11.5002C3.88 10.0702 4.9 8.89019 6.11 7.97019Z\", fill: \"currentColor\" }))));\n};\n\nexport { IconVisibilityOff };\n","import { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { View } from '../../View/View.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst IconVisibility = (props) => {\n const { className, ...rest } = props;\n return (React.createElement(View, { as: \"span\", width: \"1em\", height: \"1em\", className: classNames(ComponentClassName.Icon, className), ...rest },\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"path\", { d: \"M12 6C15.79 6 19.17 8.13 20.82 11.5C19.17 14.87 15.79 17 12 17C8.21 17 4.83 14.87 3.18 11.5C4.83 8.13 8.21 6 12 6ZM12 4C7 4 2.73 7.11 1 11.5C2.73 15.89 7 19 12 19C17 19 21.27 15.89 23 11.5C21.27 7.11 17 4 12 4ZM12 9C13.38 9 14.5 10.12 14.5 11.5C14.5 12.88 13.38 14 12 14C10.62 14 9.5 12.88 9.5 11.5C9.5 10.12 10.62 9 12 9ZM12 7C9.52 7 7.5 9.02 7.5 11.5C7.5 13.98 9.52 16 12 16C14.48 16 16.5 13.98 16.5 11.5C16.5 9.02 14.48 7 12 7Z\", fill: \"currentColor\" }))));\n};\n\nexport { IconVisibility };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { Button } from '../Button/Button.mjs';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden.mjs';\nimport { ComponentText } from '../shared/constants.mjs';\nimport '../Icon/Icon.mjs';\nimport '../Icon/context/IconsContext.mjs';\nimport { useIcons } from '../Icon/context/useIcons.mjs';\nimport '../View/View.mjs';\nimport { IconVisibilityOff } from '../Icon/icons/IconVisibilityOff.mjs';\nimport { IconVisibility } from '../Icon/icons/IconVisibility.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst { passwordIsHidden, passwordIsShown, showPassword } = ComponentText.PasswordField;\nconst ShowPasswordButtonPrimitive = ({ fieldType, passwordIsHiddenLabel = passwordIsHidden, passwordIsShownLabel = passwordIsShown, showPasswordButtonLabel = showPassword, size, hasError, ...rest }, ref) => {\n const icons = useIcons('passwordField');\n const showPasswordButtonClass = classNames(ComponentClassName.FieldShowPassword, classNameModifierByFlag(ComponentClassName.FieldShowPassword, 'error', hasError));\n const icon = fieldType === 'password'\n ? icons?.visibility ?? React.createElement(IconVisibility, { \"aria-hidden\": \"true\" })\n : icons?.visibilityOff ?? React.createElement(IconVisibilityOff, { \"aria-hidden\": \"true\" });\n return (React.createElement(Button, { \"aria-checked\": fieldType !== 'password', ariaLabel: showPasswordButtonLabel, className: showPasswordButtonClass, colorTheme: hasError ? 'error' : undefined, ref: ref, role: \"switch\", size: size, ...rest },\n React.createElement(VisuallyHidden, { \"aria-live\": \"polite\" }, fieldType === 'password'\n ? passwordIsHiddenLabel\n : passwordIsShownLabel),\n icon));\n};\nconst ShowPasswordButton = primitiveWithForwardRef(ShowPasswordButtonPrimitive);\nShowPasswordButton.displayName = 'ShowPasswordButton';\n\nexport { ShowPasswordButton };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { Text } from '../Text/Text.mjs';\n\nconst QA_FIELD_DESCRIPTION = 'qa-field-description';\nconst FieldDescription = ({ descriptiveText, labelHidden, ...rest }) => descriptiveText ? (React.createElement(Text, { \"data-testid\": QA_FIELD_DESCRIPTION, className: classNames(ComponentClassName.FieldDescription, {\n [ComponentClassName.VisuallyHidden]: labelHidden,\n }), ...rest }, descriptiveText)) : null;\nFieldDescription.displayName = 'FieldDescription';\n\nexport { FieldDescription, QA_FIELD_DESCRIPTION };\n","import * as React from 'react';\nimport { Text } from '../Text/Text.mjs';\nimport { ComponentClassName } from '@aws-amplify/ui';\n\nconst FieldErrorMessage = ({ errorMessage, hasError, ...rest }) => {\n return hasError && errorMessage ? (React.createElement(Text, { className: ComponentClassName.FieldErrorMessage, ...rest }, errorMessage)) : null;\n};\nFieldErrorMessage.displayName = 'FieldErrorMessage';\n\nexport { FieldErrorMessage };\n","import * as React from 'react';\nimport { ComponentClassName, classNames, classNameModifier } from '@aws-amplify/ui';\nimport { Flex } from '../Flex/Flex.mjs';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst FieldGroupPrimitive = ({ children, className, innerEndComponent, innerStartComponent, orientation = 'horizontal', outerEndComponent, outerStartComponent, variation, ...rest }, ref) => {\n // Don't apply hasInner classnames unless a component was provided\n const hasInnerStartComponent = innerStartComponent != null;\n const hasInnerEndComponent = innerEndComponent != null;\n const fieldGroupHasInnerStartClassName = hasInnerStartComponent\n ? ComponentClassName.FieldGroupHasInnerStart\n : null;\n const fieldGroupHasInnerEndClassName = hasInnerEndComponent\n ? ComponentClassName.FieldGroupHasInnerEnd\n : null;\n const componentClasses = classNames(ComponentClassName.FieldGroup, fieldGroupHasInnerStartClassName, fieldGroupHasInnerEndClassName, classNameModifier(ComponentClassName.FieldGroup, orientation), className);\n return (React.createElement(Flex, { className: componentClasses, ref: ref, ...rest },\n outerStartComponent && (React.createElement(View, { className: classNames(ComponentClassName.FieldGroupOuterStart, classNameModifier(ComponentClassName.FieldGroupOuterStart, variation)) }, outerStartComponent)),\n React.createElement(View, { className: classNames(ComponentClassName.FieldGroupFieldWrapper, classNameModifier(ComponentClassName.FieldGroupFieldWrapper, orientation)) },\n innerStartComponent && (React.createElement(View, { className: ComponentClassName.FieldGroupInnerStart }, innerStartComponent)),\n children,\n innerEndComponent && (React.createElement(View, { className: ComponentClassName.FieldGroupInnerEnd }, innerEndComponent))),\n outerEndComponent && (React.createElement(View, { className: classNames(ComponentClassName.FieldGroupOuterEnd, classNameModifier(ComponentClassName.FieldGroupOuterEnd, variation)) }, outerEndComponent))));\n};\nconst FieldGroup = primitiveWithForwardRef(FieldGroupPrimitive);\nFieldGroup.displayName = 'FieldGroup';\n\nexport { FieldGroup };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { useFieldset } from '../Fieldset/useFieldset.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst InputPrimitive = ({ autoComplete, checked, className, defaultChecked, defaultValue, id, isDisabled, isReadOnly, isRequired, size, type = 'text', hasError = false, value, variation, ...rest }, ref) => {\n const componentClasses = classNames(ComponentClassName.Input, ComponentClassName.FieldGroupControl, classNameModifier(ComponentClassName.Input, variation), classNameModifierByFlag(ComponentClassName.Input, 'error', hasError), classNameModifier(ComponentClassName.Input, size), className);\n const { isFieldsetDisabled } = useFieldset();\n return (React.createElement(View, { \"aria-invalid\": hasError, as: \"input\", autoComplete: autoComplete, checked: checked, className: componentClasses, defaultChecked: defaultChecked, defaultValue: defaultValue, isDisabled: isFieldsetDisabled ? isFieldsetDisabled : isDisabled, id: id, readOnly: isReadOnly, ref: ref, required: isRequired, type: type, value: value, ...rest }));\n};\nconst Input = primitiveWithForwardRef(InputPrimitive);\nInput.displayName = 'Input';\n\nexport { Input };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst LabelPrimitive = ({ children, className, visuallyHidden, ...rest }, ref) => {\n return (React.createElement(View, { as: \"label\", className: classNames(ComponentClassName.Label, className, {\n [ComponentClassName.VisuallyHidden]: visuallyHidden,\n }), ref: ref, ...rest }, children));\n};\nconst Label = primitiveWithForwardRef(LabelPrimitive);\nLabel.displayName = 'Label';\n\nexport { Label };\n","import { ComponentPropsToStylePropsMap } from '../types/style.mjs';\n\nconst isStyleKey = (prop) => {\n return prop in ComponentPropsToStylePropsMap;\n};\n/**\n * This function splits props into style props and non-style props. This is used\n * on Field primitives so we can apply style props on the wrapper element and\n * the rest on the input.\n * @param props this should be a destructured `rest` from the component's props\n */\nconst splitPrimitiveProps = (props) => {\n const splitProps = {\n styleProps: {},\n rest: {},\n };\n Object.keys(props).forEach((prop) => {\n if (isStyleKey(prop)) {\n // we know it is a style key\n // so we know we can assign the key in styleProps\n splitProps.styleProps = {\n ...splitProps.styleProps,\n [prop]: props[prop],\n };\n }\n else {\n splitProps.rest = {\n ...splitProps.rest,\n [prop]: props[prop],\n };\n }\n });\n return splitProps;\n};\n\nexport { splitPrimitiveProps };\n","import * as React from 'react';\n\n// Source: https://github.com/radix-ui/primitives/blob/7ae63b6cce6ea53ea5d65b6d411894c004b38f47/packages/react/use-layout-effect/src/useLayoutEffect.tsx\n/**\n * On the server, React emits a warning when calling `useLayoutEffect`.\n * This is because neither `useLayoutEffect` nor `useEffect` run on the server.\n * We use this safe version which suppresses the warning by replacing it with a noop on the server.\n *\n * See: https://reactjs.org/docs/hooks-reference.html#uselayouteffect\n */\nconst useLayoutEffect = globalThis?.document ? React.useLayoutEffect : () => { };\n\nexport { useLayoutEffect };\n","import * as React from 'react';\nimport { useLayoutEffect } from './useLayoutEffect.mjs';\n\n// Adapted from https://github.com/radix-ui/primitives/blob/main/packages/react/id/src/id.tsx#L8\n// Prefixed autogenerated id created by useStableId\nconst AUTO_GENERATED_ID_PREFIX = 'amplify-id';\n// Create a local version of React.useId which will reference React.useId for React 18\n// and fallback to noop for React 17 and below\n// Note: We use `toString()` to prevent bundlers from trying to `import { useId } from 'react';`\n// since it doesn't exist in React 17 and below (prevents https://github.com/aws-amplify/amplify-ui/issues/1154)\nconst useReactId = \n// disable eslint below to allow usage of casting React to `any`, which ensures that TS\n// does not get confused about the existence of `useId` in React 17 and below\n// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\nReact['useId'.toString()] || (() => undefined);\nlet count = 0;\n/**\n * Create a uuid to use with amplify fields unless\n * an id is provided\n * @param id user specified id\n * @returns string\n */\nconst useStableId = (id) => {\n const [stableId, setStableId] = React.useState(useReactId());\n // React versions older than 18 will have client-side ids only\n useLayoutEffect(() => {\n if (!id) {\n setStableId((reactId) => reactId ?? String(count++));\n }\n }, [id]);\n return id ?? (stableId ? `${AUTO_GENERATED_ID_PREFIX}-${stableId}` : '');\n};\n\nexport { AUTO_GENERATED_ID_PREFIX, useStableId };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier } from '@aws-amplify/ui';\nimport '../Field/FieldClearButton.mjs';\nimport { FieldDescription } from '../Field/FieldDescription.mjs';\nimport { FieldErrorMessage } from '../Field/FieldErrorMessage.mjs';\nimport '../Field/Field.mjs';\nimport { FieldGroup } from '../FieldGroup/FieldGroup.mjs';\nimport { Flex } from '../Flex/Flex.mjs';\nimport { Input } from '../Input/Input.mjs';\nimport { Label } from '../Label/Label.mjs';\nimport { splitPrimitiveProps } from '../utils/splitPrimitiveProps.mjs';\nimport { useStableId } from '../utils/useStableId.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst TextFieldPrimitive = (props, ref) => {\n const { className, descriptiveText, errorMessage, hasError = false, id, innerEndComponent, innerStartComponent, label, labelHidden = false, outerEndComponent, outerStartComponent, size, testId, variation, inputStyles, ..._rest } = props;\n const fieldId = useStableId(id);\n const descriptionId = useStableId();\n const ariaDescribedBy = descriptiveText ? descriptionId : undefined;\n const { styleProps, rest } = splitPrimitiveProps(_rest);\n return (React.createElement(Flex, { className: classNames(ComponentClassName.Field, classNameModifier(ComponentClassName.Field, size), ComponentClassName.TextField, className), testId: testId, ...styleProps },\n React.createElement(Label, { htmlFor: fieldId, visuallyHidden: labelHidden }, label),\n React.createElement(FieldDescription, { id: descriptionId, labelHidden: labelHidden, descriptiveText: descriptiveText }),\n React.createElement(FieldGroup, { outerStartComponent: outerStartComponent, outerEndComponent: outerEndComponent, innerStartComponent: innerStartComponent, innerEndComponent: innerEndComponent, variation: variation },\n React.createElement(Input, { \"aria-describedby\": ariaDescribedBy, hasError: hasError, id: fieldId, ref: ref, size: size, variation: variation, ...inputStyles, ...rest })),\n React.createElement(FieldErrorMessage, { hasError: hasError, errorMessage: errorMessage })));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/textfield)\n */\nconst TextField = primitiveWithForwardRef(TextFieldPrimitive);\nTextField.displayName = 'TextField';\n\nexport { TextField };\n","import { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { ShowPasswordButton } from './ShowPasswordButton.mjs';\nimport { TextField } from '../TextField/TextField.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst PasswordFieldPrimitive = ({ autoComplete = 'current-password', label, className, hideShowPassword = false, passwordIsHiddenLabel, passwordIsShownLabel, showPasswordButtonLabel, showPasswordButtonRef, size, hasError, ...rest }, ref) => {\n const [type, setType] = React.useState('password');\n const showPasswordOnClick = React.useCallback(() => {\n if (type === 'password') {\n setType('text');\n }\n else {\n setType('password');\n }\n }, [setType, type]);\n return (React.createElement(TextField, { autoComplete: autoComplete, outerEndComponent: hideShowPassword ? null : (React.createElement(ShowPasswordButton, { fieldType: type, onClick: showPasswordOnClick, passwordIsHiddenLabel: passwordIsHiddenLabel, passwordIsShownLabel: passwordIsShownLabel, ref: showPasswordButtonRef, size: size, showPasswordButtonLabel: showPasswordButtonLabel, hasError: hasError })), size: size, type: type, label: label, className: classNames(ComponentClassName.PasswordField, className), ref: ref, hasError: hasError, ...rest }));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/passwordfield)\n */\nconst PasswordField = primitiveWithForwardRef(PasswordFieldPrimitive);\nPasswordField.displayName = 'PasswordField';\n\nexport { PasswordField };\n","import { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { View } from '../../View/View.mjs';\n\n/**\n * @internal For internal Amplify UI use only. May be removed in a future release.\n */\nconst IconExpandMore = (props) => {\n const { className, ...rest } = props;\n return (React.createElement(View, { as: \"span\", width: \"1em\", height: \"1em\", className: classNames(ComponentClassName.Icon, className), ...rest },\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"path\", { d: \"M16.59 8.58984L12 13.1698L7.41 8.58984L6 9.99984L12 15.9998L18 9.99984L16.59 8.58984Z\", fill: \"currentColor\" }))));\n};\n\nexport { IconExpandMore };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { Flex } from '../Flex/Flex.mjs';\nimport '../Icon/Icon.mjs';\nimport '../Icon/context/IconsContext.mjs';\nimport { useIcons } from '../Icon/context/useIcons.mjs';\nimport { View } from '../View/View.mjs';\nimport { IconExpandMore } from '../Icon/icons/IconExpandMore.mjs';\nimport { useFieldset } from '../Fieldset/useFieldset.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst SelectPrimitive = ({ autoComplete, className, size, variation, value, defaultValue, hasError, icon, iconColor, children, placeholder, isDisabled, isRequired, isMultiple = false, selectSize = 1, ...rest }, ref) => {\n const DEFAULT_PLACEHOLDER_VALUE = '';\n // value === undefined is to make sure that component is used in uncontrolled way so that setting defaultValue is valid\n const shouldSetDefaultPlaceholderValue = value === undefined && defaultValue === undefined && placeholder;\n const isExpanded = isMultiple || selectSize > 1;\n const componentClasses = classNames(ComponentClassName.Select, ComponentClassName.FieldGroupControl, classNameModifier(ComponentClassName.Select, size), classNameModifier(ComponentClassName.Select, variation), classNameModifierByFlag(ComponentClassName.Select, 'error', hasError), classNameModifierByFlag(ComponentClassName.Select, 'expanded', isExpanded), className);\n const icons = useIcons('select');\n const { isFieldsetDisabled } = useFieldset();\n return (React.createElement(View, { className: ComponentClassName.SelectWrapper },\n React.createElement(View, { \"aria-invalid\": hasError, as: \"select\", autoComplete: autoComplete, value: value, defaultValue: shouldSetDefaultPlaceholderValue\n ? DEFAULT_PLACEHOLDER_VALUE\n : defaultValue, isDisabled: isFieldsetDisabled ? isFieldsetDisabled : isDisabled, multiple: isMultiple, size: selectSize, required: isRequired, className: componentClasses, ref: ref, ...rest },\n placeholder && React.createElement(\"option\", { value: \"\" }, placeholder),\n children),\n isExpanded ? null : (React.createElement(Flex, { className: classNames(ComponentClassName.SelectIcon, classNameModifier(ComponentClassName.SelectIcon, size)), color: iconColor }, icon ?? icons?.expand ?? React.createElement(IconExpandMore, null)))));\n};\nconst Select = primitiveWithForwardRef(SelectPrimitive);\nSelect.displayName = 'Select';\n\nexport { Select };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier } from '@aws-amplify/ui';\nimport '../Field/FieldClearButton.mjs';\nimport { FieldDescription } from '../Field/FieldDescription.mjs';\nimport { FieldErrorMessage } from '../Field/FieldErrorMessage.mjs';\nimport '../Field/Field.mjs';\nimport { Flex } from '../Flex/Flex.mjs';\nimport { Label } from '../Label/Label.mjs';\nimport { Select } from '../Select/Select.mjs';\nimport { splitPrimitiveProps } from '../utils/splitPrimitiveProps.mjs';\nimport { useStableId } from '../utils/useStableId.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst selectFieldChildren = ({ children, options, }) => {\n if (children) {\n if (options?.length) {\n // eslint-disable-next-line no-console\n console.warn('Amplify UI: <SelectField> component defaults to rendering children over `options`. When using the `options` prop, omit children.');\n }\n return children;\n }\n return options?.map((option, index) => (React.createElement(\"option\", { label: option, value: option, key: `${option}-${index}` }, option)));\n};\nconst SelectFieldPrimitive = (props, ref) => {\n const { children, className, descriptiveText, errorMessage, hasError = false, id, label, labelHidden = false, options, size, testId, inputStyles, ..._rest } = props;\n const fieldId = useStableId(id);\n const descriptionId = useStableId();\n const ariaDescribedBy = descriptiveText ? descriptionId : undefined;\n const { styleProps, rest } = splitPrimitiveProps(_rest);\n return (React.createElement(Flex, { className: classNames(ComponentClassName.Field, classNameModifier(ComponentClassName.Field, size), ComponentClassName.SelectField, className), testId: testId, ...styleProps },\n React.createElement(Label, { htmlFor: fieldId, visuallyHidden: labelHidden }, label),\n React.createElement(FieldDescription, { id: descriptionId, labelHidden: labelHidden, descriptiveText: descriptiveText }),\n React.createElement(Select, { \"aria-describedby\": ariaDescribedBy, hasError: hasError, id: fieldId, ref: ref, size: size, ...rest, ...inputStyles }, selectFieldChildren({ children, options })),\n React.createElement(FieldErrorMessage, { hasError: hasError, errorMessage: errorMessage })));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/selectfield)\n */\nconst SelectField = primitiveWithForwardRef(SelectFieldPrimitive);\nSelectField.displayName = 'SelectField';\n\nexport { SelectField };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, countryDialCodes } from '@aws-amplify/ui';\nimport { SelectField } from '../SelectField/SelectField.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst DialCodeSelectPrimitive = ({ className, dialCodeList, isReadOnly, ...props }, ref) => {\n const dialList = dialCodeList ?? countryDialCodes;\n const dialCodeOptions = React.useMemo(() => dialList.map((dialCode) => (\n // Regarding the `disabled` attribute, see comment in SelectField below\n React.createElement(\"option\", { key: dialCode, value: dialCode, disabled: isReadOnly }, dialCode))), [dialList, isReadOnly]);\n return (React.createElement(SelectField\n /*\n Since <select> elements do not support the `readonly` html attribute, it is suggested to use the `disabled` html attribute\n so that a screen reader will announce something to the user about the interactivity of the options list ( https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/readonly)\n */\n , { \"aria-disabled\": isReadOnly, autoComplete: \"tel-country-code\", className: classNames(ComponentClassName.CountryCodeSelect, ComponentClassName.DialCodeSelect, className), labelHidden: true, ref: ref, ...props }, dialCodeOptions));\n};\nconst DialCodeSelect = primitiveWithForwardRef(DialCodeSelectPrimitive);\nDialCodeSelect.displayName = 'DialCodeSelect';\n\nexport { DialCodeSelect };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { DialCodeSelect } from './DialCodeSelect.mjs';\nimport { ComponentText } from '../shared/constants.mjs';\nimport { TextField } from '../TextField/TextField.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst PhoneNumberFieldPrimitive = ({ autoComplete = 'tel-national', className, defaultDialCode, dialCodeLabel = ComponentText.PhoneNumberField.countryCodeLabel, dialCodeList, dialCodeName, dialCodeRef, hasError, isDisabled, isReadOnly, onDialCodeChange, onInput, size, variation, ...rest }, ref) => {\n return (React.createElement(TextField, { outerStartComponent: React.createElement(DialCodeSelect, { defaultValue: defaultDialCode, dialCodeList: dialCodeList, className: className, hasError: hasError, isDisabled: isDisabled, isReadOnly: isReadOnly, label: dialCodeLabel, name: dialCodeName, onChange: onDialCodeChange, ref: dialCodeRef, size: size, variation: variation }), autoComplete: autoComplete, className: classNames(ComponentClassName.PhoneNumberField, className), hasError: hasError, isDisabled: isDisabled, isReadOnly: isReadOnly, onInput: onInput, ref: ref, size: size, type: \"tel\", variation: variation, ...rest }));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/phonenumberfield)\n */\nconst PhoneNumberField = primitiveWithForwardRef(PhoneNumberFieldPrimitive);\nPhoneNumberField.displayName = 'PhoneNumberField';\n\nexport { PhoneNumberField };\n","import React__default from 'react';\nimport { translate } from '@aws-amplify/ui';\nimport { View } from '../../primitives/View/View.mjs';\nimport { Text } from '../../primitives/Text/Text.mjs';\n\nconst ValidationErrors = ({ errors, id, dataAttr, }) => {\n if (!(errors?.length > 0))\n return null;\n const dataAttrProp = dataAttr ? { [dataAttr]: true } : {};\n return (React__default.createElement(View, { ...dataAttrProp, id: id }, errors.map((error) => {\n return (React__default.createElement(Text, { key: error, role: \"alert\", variation: \"error\" }, translate(error)));\n })));\n};\n\nexport { ValidationErrors };\n","import * as React from 'react';\nimport { getErrors } from '@aws-amplify/ui';\nimport { PasswordField } from '../../../primitives/PasswordField/PasswordField.mjs';\nimport { PhoneNumberField } from '../../../primitives/PhoneNumberField/PhoneNumberField.mjs';\nimport { TextField } from '../../../primitives/TextField/TextField.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useStableId } from '../../../primitives/utils/useStableId.mjs';\nimport { ValidationErrors } from '../../shared/ValidationErrors.mjs';\n\nfunction FormField({ autocomplete: autoComplete, dialCode, name, type, ...props }) {\n const { validationErrors } = useAuthenticator(({ validationErrors }) => [\n validationErrors,\n ]);\n const errors = React.useMemo(() => getErrors(validationErrors[name]), [name, validationErrors]);\n const hasError = errors?.length > 0;\n const errorId = useStableId();\n const ariaDescribedBy = hasError ? errorId : undefined;\n if (type === 'tel') {\n return (React.createElement(React.Fragment, null,\n React.createElement(PhoneNumberField, { ...props, name: name, defaultDialCode: dialCode, dialCodeName: \"country_code\", autoComplete: autoComplete, hasError: hasError, \"aria-describedby\": ariaDescribedBy }),\n React.createElement(ValidationErrors, { dataAttr: \"data-amplify-sign-up-errors\", errors: errors, id: errorId })));\n }\n else if (type === 'password') {\n return (React.createElement(React.Fragment, null,\n React.createElement(PasswordField, { ...props, name: name, autoCapitalize: \"off\", autoComplete: autoComplete, hasError: hasError, \"aria-describedby\": ariaDescribedBy }),\n React.createElement(ValidationErrors, { dataAttr: \"data-amplify-sign-up-errors\", errors: errors, id: errorId })));\n }\n else {\n return (React.createElement(React.Fragment, null,\n React.createElement(TextField, { ...props, name: name, autoCapitalize: \"off\", autoComplete: autoComplete, hasError: hasError, type: type, \"aria-describedby\": ariaDescribedBy }),\n React.createElement(ValidationErrors, { dataAttr: \"data-amplify-sign-up-errors\", errors: errors, id: errorId })));\n }\n}\n\nexport { FormField };\n","import * as React from 'react';\nimport { FormField } from './FormField.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\n\nfunction FormFields() {\n const { fields } = useAuthenticator(({ route }) => [route]);\n const formFields = React.useRef(fields.map((field, index) => (React.createElement(FormField\n // use index for key, field order is static\n , { \n // use index for key, field order is static\n key: index, ...field })))).current;\n return React.createElement(React.Fragment, null, formFields);\n}\n\nexport { FormFields };\n","import React__default from 'react';\nimport { View } from '../../../primitives/View/View.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\n\n// TODO replace usage of this util with the `isSignInOrSignUpRoute` util in v3.\n// Currently `hasTabs` always returns `undefined` as the right condition always\n// resolves to truthy. This prevents the \"data-amplify-router-content\" attribute\n// from being applied below. Fixing it will cause consumer snapshot tests to break,\n// so wait to update.\nconst hasTabs = (route) => {\n return route === 'signIn' || 'signUp';\n};\nfunction RouteContainer({ children, className, variation = 'default', }) {\n const { route } = useAuthenticator(({ route }) => [route]);\n const { \n // @ts-ignore\n components: { Header, Footer }, } = useCustomComponents();\n return (React__default.createElement(View, { className: className, \"data-amplify-authenticator\": \"\", \"data-variation\": variation },\n React__default.createElement(View, { \"data-amplify-container\": \"\" },\n React__default.createElement(Header, null),\n React__default.createElement(View, { \"data-amplify-router\": \"\", \"data-amplify-router-content\": hasTabs(route) ? undefined : '' }, children),\n React__default.createElement(Footer, null))));\n}\n\nexport { RouteContainer };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Button } from '../../../primitives/Button/Button.mjs';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { Heading } from '../../../primitives/Heading/Heading.mjs';\nimport { Text } from '../../../primitives/Text/Text.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst { getDeliveryMessageText, getDeliveryMethodText, getConfirmingText, getConfirmText, getResendCodeText, } = authenticatorTextUtil;\nfunction ConfirmSignUp({ className, variation, }) {\n const { isPending, resendCode, codeDeliveryDetails } = useAuthenticator((context) => [\n context.isPending,\n context.resendCode,\n context.codeDeliveryDetails,\n ]);\n const { handleChange, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n ConfirmSignUp: { Header = ConfirmSignUp.Header, Footer = ConfirmSignUp.Footer, }, }, } = useCustomComponents();\n return (\n // TODO Automatically add these namespaces again from `useAmplify`\n React__default.createElement(RouteContainer, { className: className, variation: variation },\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-confirmsignup\": \"\", method: \"post\", onChange: handleChange, onSubmit: handleSubmit },\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(Header, null),\n React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(Text, { className: \"amplify-authenticator__subtitle\" }, getDeliveryMessageText(codeDeliveryDetails)),\n React__default.createElement(FormFields, null),\n React__default.createElement(RemoteErrorMessage, null),\n React__default.createElement(Button, { variation: \"primary\", isDisabled: isPending, type: \"submit\", loadingText: getConfirmingText(), isLoading: isPending, fontWeight: \"normal\" }, getConfirmText()),\n React__default.createElement(Button, { onClick: resendCode, type: \"button\", fontWeight: \"normal\" }, getResendCodeText())),\n React__default.createElement(Footer, null)))));\n}\nconst DefaultHeader = () => {\n const { codeDeliveryDetails } = useAuthenticator((context) => [\n context.codeDeliveryDetails,\n ]);\n return (React__default.createElement(Heading, { level: 4 }, getDeliveryMethodText(codeDeliveryDetails)));\n};\nConfirmSignUp.Header = DefaultHeader;\nConfirmSignUp.Footer = function Footer() {\n // @ts-ignore\n return null;\n};\n\nexport { ConfirmSignUp };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Button } from '../../../primitives/Button/Button.mjs';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { Heading } from '../../../primitives/Heading/Heading.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst { getChangePasswordText, getChangingText, getBackToSignInText } = authenticatorTextUtil;\nconst ForceNewPassword = ({ className, variation, }) => {\n const { isPending, toSignIn } = useAuthenticator((context) => [\n context.isPending,\n context.toSignIn,\n ]);\n const { handleBlur, handleChange, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n ForceNewPassword: { FormFields = ForceNewPassword.FormFields, Header = ForceNewPassword.Header, Footer = ForceNewPassword.Footer, }, }, } = useCustomComponents();\n return (React__default.createElement(RouteContainer, { className: className, variation: variation },\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-forcenewpassword\": \"\", method: \"post\", onChange: handleChange, onSubmit: handleSubmit, onBlur: handleBlur },\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(Header, null),\n React__default.createElement(FormFields, null),\n React__default.createElement(RemoteErrorMessage, null),\n React__default.createElement(Button, { isDisabled: isPending, type: \"submit\", variation: \"primary\", isLoading: isPending, loadingText: getChangingText(), fontWeight: \"normal\" }, getChangePasswordText()),\n React__default.createElement(Button, { onClick: toSignIn, type: \"button\", fontWeight: \"normal\", variation: \"link\", size: \"small\" }, getBackToSignInText()),\n React__default.createElement(Footer, null)))));\n};\nForceNewPassword.FormFields = function FormFields$1() {\n return React__default.createElement(FormFields, null);\n};\nForceNewPassword.Header = function Header() {\n return React__default.createElement(Heading, { level: 4 }, getChangePasswordText());\n};\nForceNewPassword.Footer = function Footer() {\n return null;\n};\n\nexport { ForceNewPassword };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { Button } from '../../../primitives/Button/Button.mjs';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\n\nconst { getConfirmText, getConfirmingText, getBackToSignInText } = authenticatorTextUtil;\nconst ConfirmSignInFooter = () => {\n const { isPending, toSignIn } = useAuthenticator((context) => [\n context.isPending,\n context.toSignIn,\n ]);\n return (React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(Button, { isDisabled: isPending, type: \"submit\", variation: \"primary\", fontWeight: \"normal\", isLoading: isPending, loadingText: getConfirmingText() }, getConfirmText()),\n React__default.createElement(Button, { onClick: toSignIn, type: \"button\", variation: \"link\", fontWeight: \"normal\", size: \"small\" }, getBackToSignInText())));\n};\n\nexport { ConfirmSignInFooter };\n","import QRCode from 'qrcode';\nimport * as React from 'react';\nimport { ConsoleLogger } from 'aws-amplify/utils';\nimport { authenticatorTextUtil, getTotpCodeURL } from '@aws-amplify/ui';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { Heading } from '../../../primitives/Heading/Heading.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { ConfirmSignInFooter } from '../shared/ConfirmSignInFooter.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst logger = new ConsoleLogger('SetupTotp-logger');\nconst { getSetupTotpText, getCopiedText, getLoadingText } = authenticatorTextUtil;\nconst SetupTotp = ({ className, variation, }) => {\n const { totpSecretCode, isPending, username, QRFields } = useAuthenticator((context) => [context.isPending, context.totpSecretCode, context.username]);\n const { handleChange, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n SetupTotp: { Header = SetupTotp.Header, Footer = SetupTotp.Footer }, }, } = useCustomComponents();\n const [isLoading, setIsLoading] = React.useState(true);\n const [qrCode, setQrCode] = React.useState();\n const [copyTextLabel, setCopyTextLabel] = React.useState('COPY');\n const { totpIssuer = 'AWSCognito', totpUsername = username } = QRFields ?? {};\n const generateQRCode = React.useCallback(async () => {\n try {\n const totpCode = getTotpCodeURL(totpIssuer, totpUsername, totpSecretCode);\n const qrCodeImageSource = await QRCode.toDataURL(totpCode);\n setQrCode(qrCodeImageSource);\n }\n catch (error) {\n logger.error(error);\n }\n finally {\n setIsLoading(false);\n }\n }, [totpIssuer, totpUsername, totpSecretCode]);\n React.useEffect(() => {\n if (!qrCode) {\n generateQRCode();\n }\n }, [generateQRCode, qrCode]);\n const copyText = () => {\n navigator.clipboard.writeText(totpSecretCode);\n setCopyTextLabel(getCopiedText());\n };\n return (React.createElement(RouteContainer, { className: className, variation: variation },\n React.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-setup-totp\": \"\", method: \"post\", onChange: handleChange, onSubmit: handleSubmit },\n React.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React.createElement(Header, null),\n React.createElement(Flex, { direction: \"column\" },\n isLoading ? (React.createElement(\"p\", null,\n getLoadingText(),\n \"\\u2026\")) : (React.createElement(\"img\", { \"data-amplify-qrcode\": true, src: qrCode, alt: \"qr code\", width: \"228\", height: \"228\" })),\n React.createElement(Flex, { \"data-amplify-copy\": true },\n React.createElement(\"div\", null, totpSecretCode),\n React.createElement(Flex, { \"data-amplify-copy-svg\": true, onClick: copyText },\n React.createElement(\"div\", { \"data-amplify-copy-tooltip\": true }, copyTextLabel),\n React.createElement(\"svg\", { width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"path\", { d: \"M16 1H4C2.9 1 2 1.9 2 3V17H4V3H16V1ZM15 5H8C6.9 5 6.01 5.9 6.01 7L6 21C6 22.1 6.89 23 7.99 23H19C20.1 23 21 22.1 21 21V11L15 5ZM8 21V7H14V12H19V21H8Z\" })))),\n React.createElement(FormFields, null),\n React.createElement(RemoteErrorMessage, null)),\n React.createElement(ConfirmSignInFooter, null),\n React.createElement(Footer, null)))));\n};\nSetupTotp.Header = function Header() {\n return React.createElement(Heading, { level: 3 }, getSetupTotpText());\n};\nSetupTotp.Footer = function Footer() {\n // @ts-ignore\n return null;\n};\n\nexport { SetupTotp };\n","import * as React from 'react';\n\nconst TabsContext = React.createContext({\n activeTab: '',\n setActiveTab: () => { },\n});\n\nexport { TabsContext };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifierByFlag, isTypedFunction } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { TabsContext } from './TabsContext.mjs';\n\nconst TabsItemPrimitive = ({ className, value, children, onClick, as = 'button', role = 'tab', ...rest }, ref) => {\n const { activeTab, setActiveTab } = React.useContext(TabsContext);\n const isActive = activeTab === value;\n const handleOnClick = (e) => {\n if (isTypedFunction(onClick)) {\n onClick?.(e);\n }\n setActiveTab(value);\n };\n return (React.createElement(View, { ...rest, role: role, as: as, id: `${value}-tab`, \"aria-selected\": isActive, \"aria-controls\": `${value}-panel`, tabIndex: !isActive ? -1 : undefined, className: classNames(ComponentClassName.TabsItem, classNameModifierByFlag(ComponentClassName.TabsItem, 'active', activeTab === value), className), ref: ref, onClick: handleOnClick }, children));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/tabs)\n */\nconst TabsItem = primitiveWithForwardRef(TabsItemPrimitive);\nTabsItem.displayName = 'Tabs.Item';\n\nexport { TabsItem };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { TabsContext } from './TabsContext.mjs';\n\nconst isValidTab = (child) => React.isValidElement(child);\nconst TabListPrimitive = ({ className, children, indicatorPosition, spacing, role = 'tablist', ...rest }, ref) => {\n const internalRef = React.useRef(null);\n const { activeTab, setActiveTab } = React.useContext(TabsContext);\n React.useImperativeHandle(ref, () => internalRef.current);\n const values = React.useMemo(() => React.Children.toArray(children)\n .map((child) => {\n if (child && isValidTab(child)) {\n return child.props.value;\n }\n })\n .filter((child) => !!child), [children]);\n const currentIndex = values.indexOf(activeTab);\n const nextTab = React.useCallback(() => {\n let nextIndex = currentIndex === values.length - 1 ? 0 : currentIndex + 1;\n const elems = internalRef.current?.querySelectorAll('button') ?? [];\n while (elems[nextIndex].disabled) {\n if (nextIndex === values.length - 1) {\n nextIndex = 0;\n }\n else {\n nextIndex++;\n }\n }\n const value = values[nextIndex];\n if (value) {\n setActiveTab(value);\n const elem = elems[nextIndex];\n elem?.focus();\n elem?.click();\n }\n }, [currentIndex, setActiveTab, values]);\n const prevTab = React.useCallback(() => {\n let prevIndex = currentIndex === 0 ? values.length - 1 : currentIndex - 1;\n const elems = internalRef.current?.querySelectorAll('button') ?? [];\n while (elems[prevIndex].disabled) {\n if (prevIndex === 0) {\n prevIndex = values.length - 1;\n }\n else {\n prevIndex--;\n }\n }\n const value = values[prevIndex];\n if (value) {\n setActiveTab(value);\n const elem = elems[prevIndex];\n elem?.focus();\n elem?.click();\n }\n }, [currentIndex, setActiveTab, values]);\n const onKeyDown = React.useCallback((event) => {\n switch (event.key) {\n case 'ArrowLeft':\n event.preventDefault();\n event.stopPropagation();\n prevTab();\n break;\n case 'ArrowUp':\n case 'ArrowRight':\n event.preventDefault();\n event.stopPropagation();\n nextTab();\n break;\n }\n }, [prevTab, nextTab]);\n return (React.createElement(View, { ...rest, role: role, onKeyDown: onKeyDown, className: classNames(ComponentClassName.TabsList, indicatorPosition\n ? classNameModifier(ComponentClassName.TabsList, indicatorPosition)\n : null, spacing\n ? classNameModifier(ComponentClassName.TabsList, spacing)\n : null, className), ref: internalRef }, children));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/tabs)\n */\nconst TabList = primitiveWithForwardRef(TabListPrimitive);\nTabList.displayName = 'Tabs.List';\n\nexport { TabList };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifierByFlag } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { TabsContext } from './TabsContext.mjs';\n\nconst TabPanelPrimitive = ({ className, value, children, role = 'tabpanel', ...rest }, ref) => {\n const { activeTab, isLazy } = React.useContext(TabsContext);\n if (isLazy && activeTab !== value)\n return null;\n return (React.createElement(View, { ...rest, role: role, id: `${value}-panel`, \"aria-labelledby\": `${value}-tab`, className: classNames(ComponentClassName.TabsPanel, classNameModifierByFlag(ComponentClassName.TabsPanel, 'active', activeTab === value), className), ref: ref }, children));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/tabs)\n */\nconst TabPanel = primitiveWithForwardRef(TabPanelPrimitive);\nTabPanel.displayName = 'Tabs.Panel';\n\nexport { TabPanel };\n","import * as React from 'react';\nimport { isFunction, classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { View } from '../View/View.mjs';\nimport { TabsContext } from './TabsContext.mjs';\n\nconst TabsContainerPrimitive = ({ children, defaultValue, className, value: controlledValue, onValueChange, isLazy, ...rest }, ref) => {\n const isControlled = controlledValue !== undefined;\n const [localValue, setLocalValue] = React.useState(() => isControlled ? controlledValue : defaultValue);\n const activeTab = isControlled ? controlledValue : localValue ?? '';\n const setActiveTab = React.useCallback((newValue) => {\n if (isFunction(onValueChange)) {\n onValueChange(newValue);\n }\n if (!isControlled) {\n setLocalValue(newValue);\n }\n }, [onValueChange, isControlled]);\n const _value = React.useMemo(() => {\n return {\n activeTab,\n isLazy,\n setActiveTab,\n };\n }, [activeTab, setActiveTab, isLazy]);\n return (React.createElement(TabsContext.Provider, { value: _value },\n React.createElement(View, { ...rest, ref: ref, className: classNames(className, ComponentClassName.Tabs) }, children)));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/tabs)\n */\nconst TabsContainer = primitiveWithForwardRef(TabsContainerPrimitive);\nTabsContainer.displayName = 'Tabs.Container';\n\nexport { TabsContainer };\n","import * as React from 'react';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { TabsItem } from './TabsItem.mjs';\nimport { TabList } from './TabsList.mjs';\nimport { TabPanel } from './TabsPanel.mjs';\nimport { TabsContainer } from './TabsContainer.mjs';\n\nconst TabsPrimitive = ({ items, indicatorPosition, justifyContent, spacing, ...rest }, ref) => {\n return (React.createElement(TabsContainer, { ...rest, ref: ref },\n React.createElement(TabList, { indicatorPosition: indicatorPosition, justifyContent: justifyContent, spacing: spacing }, items?.map(({ value, label, content, ...rest }) => (React.createElement(TabsItem, { ...rest, key: value, value: value }, label)))),\n items?.map(({ value, content, isDisabled }) => (React.createElement(TabPanel, { key: value, value: value, isDisabled: isDisabled }, content)))));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/tabs)\n */\nconst Tabs = Object.assign(primitiveWithForwardRef(TabsPrimitive), {\n Item: TabsItem,\n List: TabList,\n Panel: TabPanel,\n Container: TabsContainer,\n});\nTabs.displayName = 'Tabs';\n\nexport { Tabs };\n","/** Federated IDPs that Authenticator supports */\nvar FederatedIdentityProviders;\n(function (FederatedIdentityProviders) {\n FederatedIdentityProviders[\"Apple\"] = \"Apple\";\n FederatedIdentityProviders[\"Amazon\"] = \"Amazon\";\n FederatedIdentityProviders[\"Facebook\"] = \"Facebook\";\n FederatedIdentityProviders[\"Google\"] = \"Google\";\n})(FederatedIdentityProviders || (FederatedIdentityProviders = {}));\n/**\n * Cognito user contact method types that have not been verified as valid\n */\nvar UnverifiedContactMethodType;\n(function (UnverifiedContactMethodType) {\n UnverifiedContactMethodType[\"Email\"] = \"email\";\n UnverifiedContactMethodType[\"PhoneNumber\"] = \"phone_number\";\n})(UnverifiedContactMethodType || (UnverifiedContactMethodType = {}));\n\nexport { FederatedIdentityProviders, UnverifiedContactMethodType };\n","import { classNames, ComponentClassName, classNameModifier } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { View } from '../View/View.mjs';\n\nconst DividerPrimitive = ({ className, orientation = 'horizontal', size, label, ...rest }, ref) => {\n const componentClasses = classNames(ComponentClassName.Divider, classNameModifier(ComponentClassName.Divider, orientation), classNameModifier(ComponentClassName.Divider, size), className);\n return (React.createElement(View, { \"aria-orientation\": orientation, as: \"hr\", className: componentClasses, \"data-label\": label, ref: ref, ...rest }));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/divider)\n */\nconst Divider = primitiveWithForwardRef(DividerPrimitive);\nDivider.displayName = 'Divider';\n\nexport { Divider };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst defaultViewBox = { minX: 0, minY: 0, width: 24, height: 24 };\nconst IconPrimitive = ({ className, \n// as can be used to render other icon react components too\nas = 'svg', fill = 'currentColor', pathData, viewBox = defaultViewBox, children, paths, ...rest }, ref) => {\n const minX = viewBox.minX ? viewBox.minX : defaultViewBox.minX;\n const minY = viewBox.minY ? viewBox.minY : defaultViewBox.minY;\n const width = viewBox.width ? viewBox.width : defaultViewBox.width;\n const height = viewBox.height ? viewBox.height : defaultViewBox.height;\n // An icon can be drawn in 3 ways:\n // 1. Pass it children which should be valid SVG elements\n // 2. Pass an array of path-like objects to `paths` prop\n // 3. Supply `pathData` for a simple icons\n let _children;\n if (children) {\n _children = children;\n }\n if (paths) {\n _children = paths.map((path, index) => React.createElement(\"path\", { ...path, key: index }));\n }\n if (pathData) {\n _children = React.createElement(\"path\", { d: pathData, fill: fill });\n }\n return (React.createElement(View, { as: as, className: classNames(ComponentClassName.Icon, className), ref: ref, viewBox: `${minX} ${minY} ${width} ${height}`, ...rest }, _children));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/icon)\n */\nconst Icon = primitiveWithForwardRef(IconPrimitive);\nIcon.displayName = 'Icon';\n\nexport { Icon };\n","import React__default from 'react';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { Button } from '../../../../primitives/Button/Button.mjs';\nimport { Icon } from '../../../../primitives/Icon/Icon.mjs';\nimport '../../../../primitives/Icon/context/IconsContext.mjs';\nimport '@aws-amplify/ui';\nimport '../../../../primitives/View/View.mjs';\nimport { Text } from '../../../../primitives/Text/Text.mjs';\n\nconst AppleIcon = () => {\n return (React__default.createElement(\"svg\", { \"aria-label\": \"Apple icon\", className: \"amplify-icon federated-sign-in-icon\", fill: \"#000\", preserveAspectRatio: \"xMidYMid\", stroke: \"#000\", strokeWidth: \"0\", viewBox: \"0 0 1024 1024\", xmlns: \"http://www.w3.org/2000/svg\" },\n React__default.createElement(\"path\", { d: \"M747.4 535.7c-.4-68.2 30.5-119.6 92.9-157.5-34.9-50-87.7-77.5-157.3-82.8-65.9-5.2-138 38.4-164.4 38.4-27.9 0-91.7-36.6-141.9-36.6C273.1 298.8 163 379.8 163 544.6c0 48.7 8.9 99 26.7 150.8 23.8 68.2 109.6 235.3 199.1 232.6 46.8-1.1 79.9-33.2 140.8-33.2 59.1 0 89.7 33.2 141.9 33.2 90.3-1.3 167.9-153.2 190.5-221.6-121.1-57.1-114.6-167.2-114.6-170.7zm-105.1-305c50.7-60.2 46.1-115 44.6-134.7-44.8 2.6-96.6 30.5-126.1 64.8-32.5 36.8-51.6 82.3-47.5 133.6 48.4 3.7 92.6-21.2 129-63.7z\" })));\n};\nconst GoogleIcon = () => {\n return (React__default.createElement(\"svg\", { \"aria-label\": \"Google icon\", className: \"amplify-icon federated-sign-in-icon\", viewBox: \"0 0 256 262\", xmlns: \"http://www.w3.org/2000/svg\", preserveAspectRatio: \"xMidYMid\" },\n React__default.createElement(\"path\", { d: \"M255.878 133.451c0-10.734-.871-18.567-2.756-26.69H130.55v48.448h71.947c-1.45 12.04-9.283 30.172-26.69 42.356l-.244 1.622 38.755 30.023 2.685.268c24.659-22.774 38.875-56.282 38.875-96.027\", fill: \"#4285F4\" }),\n React__default.createElement(\"path\", { d: \"M130.55 261.1c35.248 0 64.839-11.605 86.453-31.622l-41.196-31.913c-11.024 7.688-25.82 13.055-45.257 13.055-34.523 0-63.824-22.773-74.269-54.25l-1.531.13-40.298 31.187-.527 1.465C35.393 231.798 79.49 261.1 130.55 261.1\", fill: \"#34A853\" }),\n React__default.createElement(\"path\", { d: \"M56.281 156.37c-2.756-8.123-4.351-16.827-4.351-25.82 0-8.994 1.595-17.697 4.206-25.82l-.073-1.73L15.26 71.312l-1.335.635C5.077 89.644 0 109.517 0 130.55s5.077 40.905 13.925 58.602l42.356-32.782\", fill: \"#FBBC05\" }),\n React__default.createElement(\"path\", { d: \"M130.55 50.479c24.514 0 41.05 10.589 50.479 19.438l36.844-35.974C195.245 12.91 165.798 0 130.55 0 79.49 0 35.393 29.301 13.925 71.947l42.211 32.783c10.59-31.477 39.891-54.251 74.414-54.251\", fill: \"#EB4335\" })));\n};\nconst FacebookIcon = () => {\n return (React__default.createElement(Icon, { className: \"federated-sign-in-icon\", ariaLabel: \"Facebook icon\", viewBox: { minX: 0, minY: 0, width: 279, height: 538 }, pathData: \"M82.3409742,538 L82.3409742,292.936652 L0,292.936652 L0,196.990154 L82.2410458,196.990154 L82.2410458,126.4295 C82.2410458,44.575144 132.205229,0 205.252865,0 C240.227794,0 270.306232,2.59855099 279,3.79788222 L279,89.2502322 L228.536175,89.2502322 C188.964542,89.2502322 181.270057,108.139699 181.270057,135.824262 L181.270057,196.89021 L276.202006,196.89021 L263.810888,292.836708 L181.16913,292.836708 L181.16913,538 L82.3409742,538 Z\", fill: \"#1877F2\" }));\n};\nconst AmazonIcon = () => {\n return (React__default.createElement(\"svg\", { \"aria-label\": \"Amazon icon\", className: \"amplify-icon federated-sign-in-icon\", viewBox: \"0 0 243 264\", xmlns: \"http://www.w3.org/2000/svg\", preserveAspectRatio: \"xMidYMid\" },\n React__default.createElement(\"path\", { d: \"M230.826 208.039C227.468 203.683 208.551 205.982 200.056 206.998C197.471 207.321 197.076 205.042 199.407 203.405C214.475 192.665 239.201 195.766 242.082 199.364C244.966 202.982 241.337 228.071 227.173 240.049C225.001 241.888 222.93 240.904 223.898 238.468C227.077 230.431 234.205 212.419 230.826 208.039ZM123.769 264C71.0234 264 39.0764 241.955 14.7853 217.542C9.97339 212.706 3.71799 206.296 0.311513 200.691C-1.09773 198.372 2.59096 195.022 5.04421 196.844C35.239 219.268 79.1012 239.538 122.53 239.538C151.82 239.538 188.046 227.47 217.669 214.868C222.147 212.966 222.147 219.18 221.512 221.061C221.183 222.032 206.515 236.221 186.247 247.047C167.304 257.166 143.397 264 123.769 264Z\", fill: \"#F2541B\" }),\n React__default.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M142.943 111.185C142.943 124.756 143.268 136.054 136.406 148.123C130.856 157.913 122.027 163.95 112.222 163.95C98.8288 163.95 90.9806 153.772 90.9806 138.693C90.9806 109.036 117.677 103.647 142.943 103.647V111.185ZM178.166 196.081C175.858 198.15 171.635 198.22 169.914 196.894C157.974 187.684 149.89 173.688 149.89 173.688C130.706 193.156 117.127 199 92.2879 199C62.8772 199 40 180.905 40 144.729C40 116.461 55.3552 97.2408 77.2563 87.823C96.2094 79.5256 122.684 78.0173 142.943 75.7517C142.943 75.7517 144.633 53.933 138.699 45.9806C134.098 39.8163 126.272 36.9329 119.089 36.9329C106.127 36.8829 93.61 43.9051 91.1262 57.4188C90.4136 61.2829 87.5533 64.5261 84.54 64.206L51.0823 60.5922C48.5156 60.2951 45.0381 57.6639 45.8636 53.3081C53.644 12.3684 90.7373 0 123.989 0C140.983 0 163.21 4.51651 176.608 17.3349C193.597 33.1648 191.969 54.2755 191.969 77.2722V131.51C191.969 147.835 198.768 154.987 205.151 163.775C207.376 166.953 207.886 170.714 205.04 173.032C197.902 178.999 178.166 196.081 178.166 196.081Z\", fill: \"#F2541B\" })));\n};\nconst FederatedSignInButton = (props) => {\n const { icon, provider, text } = props;\n const { toFederatedSignIn } = useAuthenticator();\n const handleClick = (event) => {\n event.preventDefault();\n toFederatedSignIn({ provider });\n };\n let iconComponent;\n if (icon === 'facebook') {\n iconComponent = React__default.createElement(FacebookIcon, null);\n }\n else if (icon === 'google') {\n iconComponent = React__default.createElement(GoogleIcon, null);\n }\n else if (icon === 'amazon') {\n iconComponent = React__default.createElement(AmazonIcon, null);\n }\n else if (icon === 'apple') {\n iconComponent = React__default.createElement(AppleIcon, null);\n }\n return (React__default.createElement(Button, { onClick: handleClick, className: \"federated-sign-in-button\", fontWeight: \"normal\", gap: \"1rem\" },\n iconComponent,\n React__default.createElement(Text, { as: \"span\" }, text)));\n};\n\nexport { FederatedSignInButton };\n","import React__default from 'react';\nimport { FederatedIdentityProviders, authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Divider } from '../../../primitives/Divider/Divider.mjs';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { FederatedSignInButton } from './FederatedSignInButtons/FederatedSignInButton.mjs';\n\nconst { getSignInWithFederationText, getOrText } = authenticatorTextUtil;\nfunction FederatedSignIn() {\n const { route, socialProviders } = useAuthenticator(({ route, socialProviders }) => [route, socialProviders]);\n if (socialProviders.length === 0) {\n // @ts-ignore\n return null;\n }\n return (React__default.createElement(Flex, { direction: \"column\", padding: `0 0 1rem 0`, className: \"federated-sign-in-container\" },\n socialProviders.map((provider) => {\n switch (provider) {\n case 'amazon':\n return (React__default.createElement(FederatedSignInButton, { icon: \"amazon\", key: provider, provider: FederatedIdentityProviders.Amazon, text: getSignInWithFederationText(route, provider) }));\n case 'apple':\n return (React__default.createElement(FederatedSignInButton, { icon: \"apple\", key: provider, provider: FederatedIdentityProviders.Apple, text: getSignInWithFederationText(route, provider) }));\n case 'facebook':\n return (React__default.createElement(FederatedSignInButton, { icon: \"facebook\", key: provider, provider: FederatedIdentityProviders.Facebook, text: getSignInWithFederationText(route, provider) }));\n case 'google':\n return (React__default.createElement(FederatedSignInButton, { icon: \"google\", key: provider, provider: FederatedIdentityProviders.Google, text: getSignInWithFederationText(route, provider) }));\n default:\n // eslint-disable-next-line no-console\n console.error(`Authenticator does not support ${provider}. Please open an issue: https://github.com/aws-amplify/amplify-ui/issues/choose`);\n }\n }),\n React__default.createElement(Divider, { size: \"small\", label: getOrText() })));\n}\n\nexport { FederatedSignIn };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Button } from '../../../primitives/Button/Button.mjs';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { View } from '../../../primitives/View/View.mjs';\nimport { VisuallyHidden } from '../../../primitives/VisuallyHidden/VisuallyHidden.mjs';\nimport { FederatedSignIn } from '../FederatedSignIn/FederatedSignIn.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\n\nconst { getSignInText, getSigningInText, getForgotPasswordText } = authenticatorTextUtil;\nfunction SignIn() {\n const { isPending } = useAuthenticator((context) => [context.isPending]);\n const { handleChange, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n SignIn: { Header = SignIn.Header, Footer = SignIn.Footer }, }, } = useCustomComponents();\n return (React__default.createElement(View, null,\n React__default.createElement(Header, null),\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-signin\": \"\", method: \"post\", onSubmit: handleSubmit, onChange: handleChange },\n React__default.createElement(FederatedSignIn, null),\n React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(VisuallyHidden, null,\n React__default.createElement(\"legend\", null, getSignInText())),\n React__default.createElement(FormFields, null)),\n React__default.createElement(RemoteErrorMessage, null),\n React__default.createElement(Button, { isDisabled: isPending, isFullWidth: true, type: \"submit\", variation: \"primary\", isLoading: isPending, loadingText: getSigningInText() }, getSignInText()))),\n React__default.createElement(Footer, null)));\n}\nconst DefaultFooter = () => {\n const { toForgotPassword } = useAuthenticator((context) => [\n context.toForgotPassword,\n ]);\n return (React__default.createElement(View, { \"data-amplify-footer\": \"\" },\n React__default.createElement(Button, { fontWeight: \"normal\", onClick: toForgotPassword, size: \"small\", variation: \"link\" }, getForgotPasswordText())));\n};\nSignIn.Footer = DefaultFooter;\nSignIn.Header = function Header() {\n // @ts-ignore\n return null;\n};\n\nexport { SignIn };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Button } from '../../../primitives/Button/Button.mjs';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { View } from '../../../primitives/View/View.mjs';\nimport { FederatedSignIn } from '../FederatedSignIn/FederatedSignIn.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\n\nconst { getCreateAccountText, getCreatingAccountText } = authenticatorTextUtil;\nfunction SignUp() {\n const { hasValidationErrors, isPending } = useAuthenticator((context) => [\n context.hasValidationErrors,\n context.isPending,\n ]);\n const { handleChange, handleBlur, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n SignUp: { Header = SignUp.Header, FormFields = SignUp.FormFields, Footer = SignUp.Footer, }, }, } = useCustomComponents();\n return (React__default.createElement(View, null,\n React__default.createElement(Header, null),\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-signup\": \"\", method: \"post\", onChange: handleChange, onSubmit: handleSubmit, onBlur: handleBlur },\n React__default.createElement(FederatedSignIn, null),\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(FormFields, null),\n React__default.createElement(RemoteErrorMessage, null)),\n React__default.createElement(Button, { isDisabled: hasValidationErrors || isPending, isFullWidth: true, type: \"submit\", variation: \"primary\", isLoading: isPending, loadingText: getCreatingAccountText() }, getCreateAccountText()))),\n React__default.createElement(Footer, null)));\n}\nSignUp.Header = function Header() {\n // @ts-ignore\n return null;\n};\nSignUp.FormFields = function FormFields$1() {\n return React__default.createElement(FormFields, null);\n};\nSignUp.Footer = function Footer() {\n // @ts-ignore\n return null;\n};\n\nexport { SignUp };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { Tabs } from '../../../primitives/Tabs/Tabs.mjs';\nimport { View } from '../../../primitives/View/View.mjs';\nimport { SignIn } from '../SignIn/SignIn.mjs';\nimport { SignUp } from '../SignUp/SignUp.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst { getSignInTabText, getSignUpTabText } = authenticatorTextUtil;\nconst SignInSignUpTabs = ({ className, hideSignUp, variation, }) => {\n const { route, toSignIn, toSignUp } = useAuthenticator((context) => [\n context.route,\n context.toSignIn,\n context.toSignUp,\n ]);\n return (React__default.createElement(RouteContainer, { className: className, variation: variation }, hideSignUp ? (React__default.createElement(View, { \"data-amplify-router-content\": \"\" }, route === 'signIn' && React__default.createElement(SignIn, null))) : (React__default.createElement(Tabs.Container, { value: route, isLazy: true, onValueChange: () => (route === 'signIn' ? toSignUp() : toSignIn()) },\n React__default.createElement(Tabs.List, { spacing: \"equal\", indicatorPosition: \"top\" },\n React__default.createElement(Tabs.Item, { value: \"signIn\" }, getSignInTabText()),\n React__default.createElement(Tabs.Item, { value: \"signUp\" }, getSignUpTabText())),\n React__default.createElement(Tabs.Panel, { value: \"signIn\", \"data-amplify-router-content\": \"\" },\n React__default.createElement(SignIn, null)),\n React__default.createElement(Tabs.Panel, { value: \"signUp\", \"data-amplify-router-content\": \"\" },\n React__default.createElement(SignUp, null))))));\n};\n\nexport { SignInSignUpTabs };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { Button } from '../../../primitives/Button/Button.mjs';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\n\nconst { getSubmitText, getSubmittingText } = authenticatorTextUtil;\nconst TwoButtonSubmitFooter = (props) => {\n const { cancelButtonSendType, cancelButtonText, submitButtonText } = props;\n const { isPending, resendCode, skipVerification, toSignIn } = useAuthenticator((context) => [context.isPending]);\n const onClick = () => {\n switch (cancelButtonSendType) {\n case 'SKIP':\n skipVerification();\n break;\n case 'RESEND':\n resendCode();\n break;\n case 'SIGN_IN':\n toSignIn();\n break;\n default:\n return;\n }\n };\n const defaultSubmitText = isPending ? (React__default.createElement(React__default.Fragment, null,\n getSubmittingText(),\n \"\\u2026\")) : (React__default.createElement(React__default.Fragment, null, getSubmitText()));\n const submitText = submitButtonText ?? defaultSubmitText;\n return (React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(Button, { fontWeight: \"normal\", variation: \"primary\", isDisabled: isPending, type: \"submit\" }, submitText),\n React__default.createElement(Button, { onClick: onClick, type: \"button\", variation: \"link\", fontWeight: \"normal\", size: \"small\" }, cancelButtonText)));\n};\n\nexport { TwoButtonSubmitFooter };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { Heading } from '../../../primitives/Heading/Heading.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { TwoButtonSubmitFooter } from '../shared/TwoButtonSubmitFooter.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst { getAccountRecoveryInfoText, getSkipText } = authenticatorTextUtil;\nconst ConfirmVerifyUser = ({ className, variation, }) => {\n const { isPending } = useAuthenticator((context) => [context.isPending]);\n const { handleChange, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n ConfirmVerifyUser: { Header = ConfirmVerifyUser.Header, Footer = ConfirmVerifyUser.Footer, }, }, } = useCustomComponents();\n return (React__default.createElement(RouteContainer, { className: className, variation: variation },\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-confirmverifyuser\": \"\", method: \"post\", onChange: handleChange, onSubmit: handleSubmit },\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(Header, null),\n React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(FormFields, null)),\n React__default.createElement(RemoteErrorMessage, null),\n React__default.createElement(TwoButtonSubmitFooter, { cancelButtonText: getSkipText(), cancelButtonSendType: \"SKIP\" }),\n React__default.createElement(Footer, null)))));\n};\nConfirmVerifyUser.Header = function Header() {\n return React__default.createElement(Heading, { level: 3 }, getAccountRecoveryInfoText());\n};\nConfirmVerifyUser.Footer = function Footer() {\n return null;\n};\n\nexport { ConfirmVerifyUser };\n","import React__default, { useContext } from 'react';\n\nconst defaultValue = { name: 'default' };\nconst RadioGroupContext = React__default.createContext(defaultValue);\nconst useRadioGroupContext = () => {\n return useContext(RadioGroupContext);\n};\n\nexport { RadioGroupContext, useRadioGroupContext };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifierByFlag, classNameModifier } from '@aws-amplify/ui';\nimport { Flex } from '../Flex/Flex.mjs';\nimport { Input } from '../Input/Input.mjs';\nimport { Text } from '../Text/Text.mjs';\nimport { useRadioGroupContext } from '../RadioGroupField/context.mjs';\nimport { useFieldset } from '../Fieldset/useFieldset.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst RadioPrimitive = ({ children, className, id, isDisabled = false, testId, value, labelPosition: radioLabelPosition, ...rest }, ref) => {\n const { currentValue, defaultValue, name, hasError, isGroupDisabled = false, isRequired, isReadOnly, onChange, size, labelPosition: groupLabelPosition, } = useRadioGroupContext();\n const { isFieldsetDisabled } = useFieldset();\n const shouldBeDisabled = isFieldsetDisabled\n ? isFieldsetDisabled\n : isGroupDisabled || isDisabled || (isReadOnly && defaultValue !== value);\n // for controlled component\n const checked = currentValue !== undefined ? value === currentValue : undefined;\n // for uncontrolled component\n const defaultChecked = defaultValue !== undefined ? value === defaultValue : undefined;\n const labelPosition = radioLabelPosition\n ? radioLabelPosition\n : groupLabelPosition;\n return (React.createElement(Flex, { as: \"label\", className: classNames(ComponentClassName.Radio, classNameModifierByFlag(ComponentClassName.Radio, `disabled`, shouldBeDisabled), labelPosition ? `amplify-label-${labelPosition}` : null, className) },\n children && (React.createElement(Text, { as: \"span\", className: classNames(ComponentClassName.RadioLabel, classNameModifierByFlag(ComponentClassName.RadioLabel, `disabled`, shouldBeDisabled)) }, children)),\n React.createElement(Input, { checked: checked, className: classNames(ComponentClassName.VisuallyHidden, ComponentClassName.RadioInput), defaultChecked: defaultChecked, hasError: hasError, id: id, isDisabled: shouldBeDisabled, isReadOnly: isReadOnly, isRequired: isRequired, onChange: onChange, ref: ref, type: \"radio\", name: name, value: value, ...rest }),\n React.createElement(Flex, { \"aria-hidden\": \"true\", as: \"span\", className: classNames(ComponentClassName.RadioButton, classNameModifier(ComponentClassName.RadioButton, size)), testId: testId })));\n};\nconst Radio = primitiveWithForwardRef(RadioPrimitive);\nRadio.displayName = 'Radio';\n\nexport { Radio, RadioPrimitive };\n","import * as React from 'react';\nimport { classNames, ComponentClassName, classNameModifier } from '@aws-amplify/ui';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\nimport { Flex } from '../Flex/Flex.mjs';\nimport { View } from '../View/View.mjs';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden.mjs';\nimport { useFieldset, FieldsetContext } from './useFieldset.mjs';\n\nconst FieldsetPrimitive = ({ children, className, isDisabled, legend, legendHidden, size, testId, variation = 'plain', ...rest }, ref) => {\n const { isFieldsetDisabled } = useFieldset();\n // Fieldsets that are nested within a disabled Fieldset should\n // also be disabled.\n const shouldBeDisabled = isFieldsetDisabled ? isFieldsetDisabled : isDisabled;\n const value = React.useMemo(() => ({\n isFieldsetDisabled: shouldBeDisabled,\n }), [shouldBeDisabled]);\n const fieldsetClasses = classNames(ComponentClassName.Fieldset, classNameModifier(ComponentClassName.Fieldset, variation), classNameModifier(ComponentClassName.Fieldset, size), className);\n const legendClasses = classNames(ComponentClassName.FieldsetLegend, classNameModifier(ComponentClassName.FieldsetLegend, size), {\n [ComponentClassName.VisuallyHidden]: legendHidden,\n });\n return (React.createElement(FieldsetContext.Provider, { value: value },\n React.createElement(Flex, { as: \"fieldset\", className: fieldsetClasses, ref: ref, disabled: shouldBeDisabled, testId: testId, ...rest },\n React.createElement(VisuallyHidden, { as: \"legend\" }, legend),\n React.createElement(View, { as: \"div\", \"aria-hidden\": \"true\", className: legendClasses }, legend),\n children)));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/fieldset)\n */\nconst Fieldset = primitiveWithForwardRef(FieldsetPrimitive);\nFieldset.displayName = 'Fieldset';\n\nexport { Fieldset };\n","const getTestId = (testId, component) => testId && component ? `${testId}-${component}` : undefined;\n\nexport { getTestId };\n","import * as React from 'react';\nimport { ComponentClassName, classNames, classNameModifier } from '@aws-amplify/ui';\nimport '../Field/FieldClearButton.mjs';\nimport { FieldDescription } from '../Field/FieldDescription.mjs';\nimport { FieldErrorMessage } from '../Field/FieldErrorMessage.mjs';\nimport '../Field/Field.mjs';\nimport { Fieldset } from '../Fieldset/Fieldset.mjs';\nimport '../Fieldset/useFieldset.mjs';\nimport { Flex } from '../Flex/Flex.mjs';\nimport { RadioGroupContext } from './context.mjs';\nimport { getTestId } from '../utils/getTestId.mjs';\nimport { useStableId } from '../utils/useStableId.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst RadioGroupFieldPrimitive = ({ children, className, defaultValue, descriptiveText, errorMessage, hasError = false, id, isDisabled, isRequired, isReadOnly, legend, legendHidden = false, labelPosition, onChange, name, size, testId, value, variation, ...rest }, ref) => {\n const fieldId = useStableId(id);\n const descriptionId = useStableId();\n const ariaDescribedBy = descriptiveText ? descriptionId : undefined;\n const radioGroupTestId = getTestId(testId, ComponentClassName.RadioGroup);\n const radioGroupContextValue = React.useMemo(() => ({\n currentValue: value,\n defaultValue,\n hasError,\n isRequired,\n isReadOnly,\n isGroupDisabled: isDisabled,\n onChange,\n size,\n name,\n labelPosition,\n }), [\n defaultValue,\n hasError,\n isDisabled,\n isRequired,\n isReadOnly,\n onChange,\n size,\n name,\n value,\n labelPosition,\n ]);\n return (React.createElement(Fieldset, { className: classNames(ComponentClassName.Field, classNameModifier(ComponentClassName.Field, size), ComponentClassName.RadioGroupField, className), isDisabled: isDisabled, legend: legend, legendHidden: legendHidden, ref: ref, role: \"radiogroup\", size: size, testId: testId, variation: variation, ...rest },\n React.createElement(FieldDescription, { id: descriptionId, labelHidden: legendHidden, descriptiveText: descriptiveText }),\n React.createElement(Flex, { \"aria-describedby\": ariaDescribedBy, className: ComponentClassName.RadioGroup, id: fieldId, testId: radioGroupTestId },\n React.createElement(RadioGroupContext.Provider, { value: radioGroupContextValue }, children)),\n React.createElement(FieldErrorMessage, { hasError: hasError, errorMessage: errorMessage })));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/radiogroupfield)\n */\nconst RadioGroupField = primitiveWithForwardRef(RadioGroupFieldPrimitive);\nRadioGroupField.displayName = 'RadioGroupField';\n\nexport { RadioGroupField };\n","import React__default from 'react';\nimport { authenticatorTextUtil, defaultFormFieldOptions, translate, censorContactMethod } from '@aws-amplify/ui';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { Heading } from '../../../primitives/Heading/Heading.mjs';\nimport { Radio } from '../../../primitives/Radio/Radio.mjs';\nimport { RadioGroupField } from '../../../primitives/RadioGroupField/RadioGroupField.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { TwoButtonSubmitFooter } from '../shared/TwoButtonSubmitFooter.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst { getSkipText, getVerifyText, getVerifyContactText, getAccountRecoveryInfoText, } = authenticatorTextUtil;\nconst generateRadioGroup = (attributes) => {\n return Object.entries(attributes).map(([key, value]) => {\n const verificationType = defaultFormFieldOptions[key].label;\n return (React__default.createElement(Radio, { name: \"unverifiedAttr\", value: key, key: key },\n translate(verificationType),\n \":\",\n ' ',\n censorContactMethod(verificationType, value)));\n });\n};\nconst VerifyUser = ({ className, variation, }) => {\n const { components: { \n // @ts-ignore\n VerifyUser: { Header = VerifyUser.Header, Footer = VerifyUser.Footer }, }, } = useCustomComponents();\n const { isPending, unverifiedUserAttributes } = useAuthenticator(({ isPending, unverifiedUserAttributes }) => [\n isPending,\n unverifiedUserAttributes,\n ]);\n const { handleChange, handleSubmit } = useFormHandlers();\n const footerSubmitText = isPending ? (React__default.createElement(React__default.Fragment, null, \"Verifying\\u2026\")) : (React__default.createElement(React__default.Fragment, null, getVerifyText()));\n const verificationRadioGroup = (React__default.createElement(RadioGroupField, { legend: getVerifyContactText(), name: \"verify_context\", isDisabled: isPending, legendHidden: true }, generateRadioGroup(unverifiedUserAttributes)));\n return (React__default.createElement(RouteContainer, { className: className, variation: variation },\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-verifyuser\": \"\", method: \"post\", onChange: handleChange, onSubmit: handleSubmit },\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(Header, null),\n verificationRadioGroup,\n React__default.createElement(RemoteErrorMessage, null),\n React__default.createElement(TwoButtonSubmitFooter, { cancelButtonText: getSkipText(), cancelButtonSendType: \"SKIP\", submitButtonText: footerSubmitText }),\n React__default.createElement(Footer, null)))));\n};\nVerifyUser.Header = function Header() {\n return React__default.createElement(Heading, { level: 3 }, getAccountRecoveryInfoText());\n};\nVerifyUser.Footer = function Footer() {\n // @ts-ignore\n return null;\n};\n\nexport { VerifyUser };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { Heading } from '../../../primitives/Heading/Heading.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\nimport { ConfirmSignInFooter } from '../shared/ConfirmSignInFooter.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst { getChallengeText } = authenticatorTextUtil;\nconst ConfirmSignIn = ({ className, variation, }) => {\n const { isPending } = useAuthenticator((context) => [context.isPending]);\n const { handleChange, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n ConfirmSignIn: { Header = ConfirmSignIn.Header, Footer = ConfirmSignIn.Footer, }, }, } = useCustomComponents();\n return (React__default.createElement(RouteContainer, { className: className, variation: variation },\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-confirmsignin\": \"\", method: \"post\", onChange: handleChange, onSubmit: handleSubmit },\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(Header, null),\n React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(FormFields, null),\n React__default.createElement(RemoteErrorMessage, null)),\n React__default.createElement(ConfirmSignInFooter, null),\n React__default.createElement(Footer, null)))));\n};\nfunction Header() {\n const { challengeName } = useAuthenticator(({ challengeName }) => [\n challengeName,\n ]);\n return React__default.createElement(Heading, { level: 3 }, getChallengeText(challengeName));\n}\nConfirmSignIn.Header = Header;\nConfirmSignIn.Footer = function Footer() {\n // @ts-ignore\n return null;\n};\n\nexport { ConfirmSignIn };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { Heading } from '../../../primitives/Heading/Heading.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { TwoButtonSubmitFooter } from '../shared/TwoButtonSubmitFooter.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst { getResendCodeText, getResetYourPasswordText } = authenticatorTextUtil;\nconst ConfirmResetPassword = ({ className, variation, }) => {\n const { isPending } = useAuthenticator((context) => [context.isPending]);\n const { handleBlur, handleChange, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n ConfirmResetPassword: { Header = ConfirmResetPassword.Header, Footer = ConfirmResetPassword.Footer, }, }, } = useCustomComponents();\n return (React__default.createElement(RouteContainer, { className: className, variation: variation },\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-confirmresetpassword\": \"\", method: \"post\", onSubmit: handleSubmit, onChange: handleChange, onBlur: handleBlur },\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(Header, null),\n React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(FormFields, null)),\n React__default.createElement(RemoteErrorMessage, null),\n React__default.createElement(TwoButtonSubmitFooter, { cancelButtonSendType: \"RESEND\", cancelButtonText: getResendCodeText() }),\n React__default.createElement(Footer, null)))));\n};\nConfirmResetPassword.Header = function Header() {\n const headerText = getResetYourPasswordText();\n return React__default.createElement(Heading, { level: 3 }, headerText);\n};\nConfirmResetPassword.Footer = function Footer() {\n // @ts-ignore\n return null;\n};\n\nexport { ConfirmResetPassword };\n","import React__default from 'react';\nimport { authenticatorTextUtil } from '@aws-amplify/ui';\nimport { Flex } from '../../../primitives/Flex/Flex.mjs';\nimport { Heading } from '../../../primitives/Heading/Heading.mjs';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { useCustomComponents } from '../hooks/useCustomComponents/useCustomComponents.mjs';\nimport { useFormHandlers } from '../hooks/useFormHandlers/useFormHandlers.mjs';\nimport { RemoteErrorMessage } from '../shared/RemoteErrorMessage.mjs';\nimport { TwoButtonSubmitFooter } from '../shared/TwoButtonSubmitFooter.mjs';\nimport { FormFields } from '../shared/FormFields.mjs';\nimport { RouteContainer } from '../RouteContainer/RouteContainer.mjs';\n\nconst { getBackToSignInText, getSendingText, getSendCodeText, getResetYourPasswordText, } = authenticatorTextUtil;\nconst ForgotPassword = ({ className, variation, }) => {\n const { isPending } = useAuthenticator((context) => [context.isPending]);\n const { handleChange, handleSubmit } = useFormHandlers();\n const { components: { \n // @ts-ignore\n ForgotPassword: { Header = ForgotPassword.Header, Footer = ForgotPassword.Footer, }, }, } = useCustomComponents();\n return (React__default.createElement(RouteContainer, { className: className, variation: variation },\n React__default.createElement(\"form\", { \"data-amplify-form\": \"\", \"data-amplify-authenticator-forgotpassword\": \"\", method: \"post\", onChange: handleChange, onSubmit: handleSubmit },\n React__default.createElement(Flex, { as: \"fieldset\", direction: \"column\", isDisabled: isPending },\n React__default.createElement(Header, null),\n React__default.createElement(Flex, { direction: \"column\" },\n React__default.createElement(FormFields, null)),\n React__default.createElement(RemoteErrorMessage, null),\n React__default.createElement(TwoButtonSubmitFooter, { cancelButtonText: getBackToSignInText(), cancelButtonSendType: \"SIGN_IN\", submitButtonText: isPending ? (React__default.createElement(React__default.Fragment, null,\n getSendingText(),\n \"\\u2026\")) : (React__default.createElement(React__default.Fragment, null, getSendCodeText())) }),\n React__default.createElement(Footer, null)))));\n};\nForgotPassword.Header = function Header() {\n return React__default.createElement(Heading, { level: 3 }, getResetYourPasswordText());\n};\nForgotPassword.Footer = function Footer() {\n // @ts-ignore\n return null;\n};\n\nexport { ForgotPassword };\n","const isSignInOrSignUpRoute = (route) => route === 'signIn' || route === 'signUp';\n\nexport { isSignInOrSignUpRoute };\n","import React__default, { useMemo } from 'react';\nimport { useAuthenticator } from '@aws-amplify/ui-react-core';\nimport { ConfirmSignUp } from '../ConfirmSignUp/ConfirmSignUp.mjs';\nimport { ForceNewPassword } from '../ForceNewPassword/ForceNewPassword.mjs';\nimport { SetupTotp } from '../SetupTotp/SetupTotp.mjs';\nimport '@aws-amplify/ui';\nimport '../../../primitives/TextField/TextField.mjs';\nimport '../../../primitives/Button/Button.mjs';\nimport '../../../primitives/Flex/Flex.mjs';\nimport '../../../primitives/Alert/Alert.mjs';\nimport { SignInSignUpTabs } from '../shared/SignInSignUpTabs.mjs';\nimport { ConfirmVerifyUser } from '../VerifyUser/ConfirmVerifyUser.mjs';\nimport { VerifyUser } from '../VerifyUser/VerifyUser.mjs';\nimport { ConfirmSignIn } from '../ConfirmSignIn/ConfirmSignIn.mjs';\nimport { ConfirmResetPassword } from '../ForgotPassword/ConfirmResetPassword.mjs';\nimport { ForgotPassword } from '../ForgotPassword/ForgotPassword.mjs';\nimport { isSignInOrSignUpRoute } from '../utils.mjs';\n\nfunction RenderNothing() {\n // @ts-ignore\n return null;\n}\nconst getRouteComponent = (route) => {\n switch (route) {\n case 'authenticated':\n case 'idle':\n case 'setup':\n case 'transition':\n return RenderNothing;\n case 'confirmSignUp':\n return ConfirmSignUp;\n case 'confirmSignIn':\n return ConfirmSignIn;\n case 'setupTotp':\n return SetupTotp;\n case 'signIn':\n case 'signUp':\n return SignInSignUpTabs;\n case 'forceNewPassword':\n return ForceNewPassword;\n case 'forgotPassword':\n return ForgotPassword;\n case 'confirmResetPassword':\n return ConfirmResetPassword;\n case 'verifyUser':\n return VerifyUser;\n case 'confirmVerifyUser':\n return ConfirmVerifyUser;\n default:\n // eslint-disable-next-line no-console\n console.warn(`Unhandled Authenticator route - please open an issue: ${route}`);\n return RenderNothing;\n }\n};\nfunction Router({ className, hideSignUp, variation, }) {\n const { route } = useAuthenticator(({ route }) => [route]);\n const RouterChildren = useMemo(() => getRouteComponent(route), [route]);\n return (React__default.createElement(RouterChildren, { className: className, \n // @ts-ignore\n hideSignUp: isSignInOrSignUpRoute(route) ? hideSignUp : undefined, variation: variation }));\n}\n\nexport { Router };\n","import { SignIn } from '../../SignIn/SignIn.mjs';\nimport { SignUp } from '../../SignUp/SignUp.mjs';\nimport { ConfirmSignUp } from '../../ConfirmSignUp/ConfirmSignUp.mjs';\nimport { ForceNewPassword } from '../../ForceNewPassword/ForceNewPassword.mjs';\nimport { SetupTotp } from '../../SetupTotp/SetupTotp.mjs';\nimport { ConfirmSignIn } from '../../ConfirmSignIn/ConfirmSignIn.mjs';\nimport { ConfirmVerifyUser } from '../../VerifyUser/ConfirmVerifyUser.mjs';\nimport { VerifyUser } from '../../VerifyUser/VerifyUser.mjs';\nimport { ConfirmResetPassword } from '../../ForgotPassword/ConfirmResetPassword.mjs';\nimport { ForgotPassword } from '../../ForgotPassword/ForgotPassword.mjs';\n\nconst defaultComponents = {\n // @ts-ignore\n Header: () => null,\n SignIn: {\n Header: SignIn.Header,\n Footer: SignIn.Footer,\n },\n SignUp: {\n Header: SignUp.Header,\n FormFields: SignUp.FormFields,\n Footer: SignUp.Footer,\n },\n ConfirmSignUp: {\n Header: ConfirmSignUp.Header,\n Footer: ConfirmSignUp.Footer,\n },\n SetupTotp: {\n Header: SetupTotp.Header,\n Footer: SetupTotp.Footer,\n },\n ConfirmResetPassword: {\n Header: ConfirmResetPassword.Header,\n Footer: ConfirmResetPassword.Footer,\n },\n ConfirmSignIn: {\n Header: ConfirmSignIn.Header,\n Footer: ConfirmSignIn.Footer,\n },\n VerifyUser: {\n Header: VerifyUser.Header,\n Footer: VerifyUser.Footer,\n },\n ConfirmVerifyUser: {\n Header: ConfirmVerifyUser.Header,\n // @ts-ignore\n Footer: ConfirmVerifyUser.Footer,\n },\n ForceNewPassword: {\n Header: ForceNewPassword.Header,\n Footer: ForceNewPassword.Footer,\n FormFields: ForceNewPassword.FormFields,\n },\n ForgotPassword: {\n Header: ForgotPassword.Header,\n Footer: ForgotPassword.Footer,\n },\n // @ts-ignore\n Footer: () => null,\n};\n\nexport { defaultComponents };\n","import * as React from 'react';\nimport { isFunction } from '@aws-amplify/ui';\nimport { useSetUserAgent, AuthenticatorProvider, useAuthenticator, useAuthenticatorInitMachine } from '@aws-amplify/ui-react-core';\nimport { VERSION } from '../../version.mjs';\nimport { useDeprecationWarning } from '../../hooks/useDeprecationWarning.mjs';\nimport { CustomComponentsContext } from './hooks/useCustomComponents/useCustomComponents.mjs';\nimport '../../primitives/View/View.mjs';\nimport { Router } from './Router/Router.mjs';\nimport { SetupTotp } from './SetupTotp/SetupTotp.mjs';\nimport { SignIn } from './SignIn/SignIn.mjs';\nimport { SignUp } from './SignUp/SignUp.mjs';\nimport { ForceNewPassword } from './ForceNewPassword/ForceNewPassword.mjs';\nimport './ForgotPassword/ConfirmResetPassword.mjs';\nimport { ForgotPassword } from './ForgotPassword/ForgotPassword.mjs';\nimport { defaultComponents } from './hooks/useCustomComponents/defaultComponents.mjs';\n\n// `AuthenticatorInternal` exists to give access to the context returned via `useAuthenticator`,\n// which allows the `Authenticator` to just return `children` if a user is authenticated.\n// Once the `Provider` is removed from the `Authenticator` component and exported as\n// `AuthenticatorProvider`, this component should be renamed to `Authenticator`.\nfunction AuthenticatorInternal({ children, className, components: customComponents, formFields, hideSignUp, initialState, loginMechanisms, passwordSettings, signUpAttributes, services, socialProviders, variation, }) {\n useDeprecationWarning({\n message: 'The `passwordSettings` prop has been deprecated and will be removed in a future major version of Amplify UI.',\n // shouldWarn: !!passwordSettings,\n /**\n * @migration turn off until getConfig returns zero config\n */\n shouldWarn: false,\n });\n const { route, signOut, user } = useAuthenticator(({ route, signOut, user }) => [route, signOut, user]);\n useAuthenticatorInitMachine({\n initialState,\n loginMechanisms,\n passwordSettings,\n services,\n signUpAttributes,\n socialProviders,\n formFields,\n });\n const value = React.useMemo(() => ({ components: { ...defaultComponents, ...customComponents } }), [customComponents]);\n const isAuthenticatedRoute = route === 'authenticated' || route === 'signOut';\n if (isAuthenticatedRoute) {\n // `Authenticator` might not have user defined `children` for non SPA use cases.\n if (!children) {\n // @ts-ignore\n return null;\n }\n return (React.createElement(React.Fragment, null, isFunction(children)\n ? children({ signOut, user }) // children is a render prop\n : children));\n }\n return (React.createElement(CustomComponentsContext.Provider, { value: value },\n React.createElement(Router, { className: className, hideSignUp: hideSignUp, variation: variation })));\n}\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/connected-components/authenticator)\n */\nfunction Authenticator(props) {\n useSetUserAgent({\n componentName: 'Authenticator',\n packageName: 'react',\n version: VERSION,\n });\n return (React.createElement(AuthenticatorProvider, null,\n React.createElement(AuthenticatorInternal, { ...props })));\n}\nAuthenticator.Provider = AuthenticatorProvider;\nAuthenticator.ForgotPassword = ForgotPassword;\nAuthenticator.SetupTotp = SetupTotp;\nAuthenticator.SignIn = SignIn;\nAuthenticator.SignUp = SignUp;\nAuthenticator.ForceNewPassword = ForceNewPassword;\n\nexport { Authenticator, AuthenticatorInternal };\n","import { useEffect } from 'react';\nimport { setUserAgent } from '@aws-amplify/ui';\n\nfunction useSetUserAgent({ componentName, packageName, version, }) {\n useEffect(() => {\n const clearUserAgent = setUserAgent({\n componentName,\n packageName,\n version,\n });\n return clearUserAgent;\n }, [componentName, packageName, version]);\n}\n\nexport { useSetUserAgent as default };\n","function ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _wrapRegExp() {\n _wrapRegExp = function (re, groups) {\n return new BabelRegExp(re, void 0, groups);\n };\n\n var _super = RegExp.prototype,\n _groups = new WeakMap();\n\n function BabelRegExp(re, flags, groups) {\n var _this = new RegExp(re, flags);\n\n return _groups.set(_this, groups || _groups.get(re)), _setPrototypeOf(_this, BabelRegExp.prototype);\n }\n\n function buildGroups(result, re) {\n var g = _groups.get(re);\n\n return Object.keys(g).reduce(function (groups, name) {\n return groups[name] = result[g[name]], groups;\n }, Object.create(null));\n }\n\n return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (str) {\n var result = _super.exec.call(this, str);\n\n return result && (result.groups = buildGroups(result, this)), result;\n }, BabelRegExp.prototype[Symbol.replace] = function (str, substitution) {\n if (\"string\" == typeof substitution) {\n var groups = _groups.get(this);\n\n return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) {\n return \"$\" + groups[name];\n }));\n }\n\n if (\"function\" == typeof substitution) {\n var _this = this;\n\n return _super[Symbol.replace].call(this, str, function () {\n var args = arguments;\n return \"object\" != typeof args[args.length - 1] && (args = [].slice.call(args)).push(buildGroups(args, _this)), substitution.apply(this, args);\n });\n }\n\n return _super[Symbol.replace].call(this, str, substitution);\n }, _wrapRegExp.apply(this, arguments);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar noop = function noop() {};\n\nvar _WINDOW = {};\nvar _DOCUMENT = {};\nvar _MUTATION_OBSERVER = null;\nvar _PERFORMANCE = {\n mark: noop,\n measure: noop\n};\n\ntry {\n if (typeof window !== 'undefined') _WINDOW = window;\n if (typeof document !== 'undefined') _DOCUMENT = document;\n if (typeof MutationObserver !== 'undefined') _MUTATION_OBSERVER = MutationObserver;\n if (typeof performance !== 'undefined') _PERFORMANCE = performance;\n} catch (e) {}\n\nvar _ref = _WINDOW.navigator || {},\n _ref$userAgent = _ref.userAgent,\n userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;\nvar WINDOW = _WINDOW;\nvar DOCUMENT = _DOCUMENT;\nvar MUTATION_OBSERVER = _MUTATION_OBSERVER;\nvar PERFORMANCE = _PERFORMANCE;\nvar IS_BROWSER = !!WINDOW.document;\nvar IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';\nvar IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');\n\nvar _familyProxy, _familyProxy2, _familyProxy3, _familyProxy4, _familyProxy5;\n\nvar NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';\nvar UNITS_IN_GRID = 16;\nvar DEFAULT_CSS_PREFIX = 'fa';\nvar DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';\nvar DATA_FA_I2SVG = 'data-fa-i2svg';\nvar DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';\nvar DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';\nvar DATA_PREFIX = 'data-prefix';\nvar DATA_ICON = 'data-icon';\nvar HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';\nvar MUTATION_APPROACH_ASYNC = 'async';\nvar TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];\nvar PRODUCTION = function () {\n try {\n return process.env.NODE_ENV === 'production';\n } catch (e) {\n return false;\n }\n}();\nvar FAMILY_CLASSIC = 'classic';\nvar FAMILY_SHARP = 'sharp';\nvar FAMILIES = [FAMILY_CLASSIC, FAMILY_SHARP];\n\nfunction familyProxy(obj) {\n // Defaults to the classic family if family is not available\n return new Proxy(obj, {\n get: function get(target, prop) {\n return prop in target ? target[prop] : target[FAMILY_CLASSIC];\n }\n });\n}\nvar PREFIX_TO_STYLE = familyProxy((_familyProxy = {}, _defineProperty(_familyProxy, FAMILY_CLASSIC, {\n 'fa': 'solid',\n 'fas': 'solid',\n 'fa-solid': 'solid',\n 'far': 'regular',\n 'fa-regular': 'regular',\n 'fal': 'light',\n 'fa-light': 'light',\n 'fat': 'thin',\n 'fa-thin': 'thin',\n 'fad': 'duotone',\n 'fa-duotone': 'duotone',\n 'fab': 'brands',\n 'fa-brands': 'brands',\n 'fak': 'kit',\n 'fakd': 'kit',\n 'fa-kit': 'kit',\n 'fa-kit-duotone': 'kit'\n}), _defineProperty(_familyProxy, FAMILY_SHARP, {\n 'fa': 'solid',\n 'fass': 'solid',\n 'fa-solid': 'solid',\n 'fasr': 'regular',\n 'fa-regular': 'regular',\n 'fasl': 'light',\n 'fa-light': 'light',\n 'fast': 'thin',\n 'fa-thin': 'thin'\n}), _familyProxy));\nvar STYLE_TO_PREFIX = familyProxy((_familyProxy2 = {}, _defineProperty(_familyProxy2, FAMILY_CLASSIC, {\n solid: 'fas',\n regular: 'far',\n light: 'fal',\n thin: 'fat',\n duotone: 'fad',\n brands: 'fab',\n kit: 'fak'\n}), _defineProperty(_familyProxy2, FAMILY_SHARP, {\n solid: 'fass',\n regular: 'fasr',\n light: 'fasl',\n thin: 'fast'\n}), _familyProxy2));\nvar PREFIX_TO_LONG_STYLE = familyProxy((_familyProxy3 = {}, _defineProperty(_familyProxy3, FAMILY_CLASSIC, {\n fab: 'fa-brands',\n fad: 'fa-duotone',\n fak: 'fa-kit',\n fal: 'fa-light',\n far: 'fa-regular',\n fas: 'fa-solid',\n fat: 'fa-thin'\n}), _defineProperty(_familyProxy3, FAMILY_SHARP, {\n fass: 'fa-solid',\n fasr: 'fa-regular',\n fasl: 'fa-light',\n fast: 'fa-thin'\n}), _familyProxy3));\nvar LONG_STYLE_TO_PREFIX = familyProxy((_familyProxy4 = {}, _defineProperty(_familyProxy4, FAMILY_CLASSIC, {\n 'fa-brands': 'fab',\n 'fa-duotone': 'fad',\n 'fa-kit': 'fak',\n 'fa-light': 'fal',\n 'fa-regular': 'far',\n 'fa-solid': 'fas',\n 'fa-thin': 'fat'\n}), _defineProperty(_familyProxy4, FAMILY_SHARP, {\n 'fa-solid': 'fass',\n 'fa-regular': 'fasr',\n 'fa-light': 'fasl',\n 'fa-thin': 'fast'\n}), _familyProxy4));\nvar ICON_SELECTION_SYNTAX_PATTERN = /fa(s|r|l|t|d|b|k|ss|sr|sl|st)?[\\-\\ ]/; // eslint-disable-line no-useless-escape\n\nvar LAYERS_TEXT_CLASSNAME = 'fa-layers-text';\nvar FONT_FAMILY_PATTERN = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp|Kit)?.*/i;\nvar FONT_WEIGHT_TO_PREFIX = familyProxy((_familyProxy5 = {}, _defineProperty(_familyProxy5, FAMILY_CLASSIC, {\n 900: 'fas',\n 400: 'far',\n normal: 'far',\n 300: 'fal',\n 100: 'fat'\n}), _defineProperty(_familyProxy5, FAMILY_SHARP, {\n 900: 'fass',\n 400: 'fasr',\n 300: 'fasl',\n 100: 'fast'\n}), _familyProxy5));\nvar oneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\nvar oneToTwenty = oneToTen.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]);\nvar ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];\nvar DUOTONE_CLASSES = {\n GROUP: 'duotone-group',\n SWAP_OPACITY: 'swap-opacity',\n PRIMARY: 'primary',\n SECONDARY: 'secondary'\n};\nvar prefixes = new Set();\nObject.keys(STYLE_TO_PREFIX[FAMILY_CLASSIC]).map(prefixes.add.bind(prefixes));\nObject.keys(STYLE_TO_PREFIX[FAMILY_SHARP]).map(prefixes.add.bind(prefixes));\nvar RESERVED_CLASSES = [].concat(FAMILIES, _toConsumableArray(prefixes), ['2xs', 'xs', 'sm', 'lg', 'xl', '2xl', 'beat', 'border', 'fade', 'beat-fade', 'bounce', 'flip-both', 'flip-horizontal', 'flip-vertical', 'flip', 'fw', 'inverse', 'layers-counter', 'layers-text', 'layers', 'li', 'pull-left', 'pull-right', 'pulse', 'rotate-180', 'rotate-270', 'rotate-90', 'rotate-by', 'shake', 'spin-pulse', 'spin-reverse', 'spin', 'stack-1x', 'stack-2x', 'stack', 'ul', DUOTONE_CLASSES.GROUP, DUOTONE_CLASSES.SWAP_OPACITY, DUOTONE_CLASSES.PRIMARY, DUOTONE_CLASSES.SECONDARY]).concat(oneToTen.map(function (n) {\n return \"\".concat(n, \"x\");\n})).concat(oneToTwenty.map(function (n) {\n return \"w-\".concat(n);\n}));\n\nvar initial = WINDOW.FontAwesomeConfig || {};\n\nfunction getAttrConfig(attr) {\n var element = DOCUMENT.querySelector('script[' + attr + ']');\n\n if (element) {\n return element.getAttribute(attr);\n }\n}\n\nfunction coerce(val) {\n // Getting an empty string will occur if the attribute is set on the HTML tag but without a value\n // We'll assume that this is an indication that it should be toggled to true\n if (val === '') return true;\n if (val === 'false') return false;\n if (val === 'true') return true;\n return val;\n}\n\nif (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {\n var attrs = [['data-family-prefix', 'familyPrefix'], ['data-css-prefix', 'cssPrefix'], ['data-family-default', 'familyDefault'], ['data-style-default', 'styleDefault'], ['data-replacement-class', 'replacementClass'], ['data-auto-replace-svg', 'autoReplaceSvg'], ['data-auto-add-css', 'autoAddCss'], ['data-auto-a11y', 'autoA11y'], ['data-search-pseudo-elements', 'searchPseudoElements'], ['data-observe-mutations', 'observeMutations'], ['data-mutate-approach', 'mutateApproach'], ['data-keep-original-source', 'keepOriginalSource'], ['data-measure-performance', 'measurePerformance'], ['data-show-missing-icons', 'showMissingIcons']];\n attrs.forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n attr = _ref2[0],\n key = _ref2[1];\n\n var val = coerce(getAttrConfig(attr));\n\n if (val !== undefined && val !== null) {\n initial[key] = val;\n }\n });\n}\n\nvar _default = {\n styleDefault: 'solid',\n familyDefault: 'classic',\n cssPrefix: DEFAULT_CSS_PREFIX,\n replacementClass: DEFAULT_REPLACEMENT_CLASS,\n autoReplaceSvg: true,\n autoAddCss: true,\n autoA11y: true,\n searchPseudoElements: false,\n observeMutations: true,\n mutateApproach: 'async',\n keepOriginalSource: true,\n measurePerformance: false,\n showMissingIcons: true\n}; // familyPrefix is deprecated but we must still support it if present\n\nif (initial.familyPrefix) {\n initial.cssPrefix = initial.familyPrefix;\n}\n\nvar _config = _objectSpread2(_objectSpread2({}, _default), initial);\n\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\nvar config = {};\nObject.keys(_default).forEach(function (key) {\n Object.defineProperty(config, key, {\n enumerable: true,\n set: function set(val) {\n _config[key] = val;\n\n _onChangeCb.forEach(function (cb) {\n return cb(config);\n });\n },\n get: function get() {\n return _config[key];\n }\n });\n}); // familyPrefix is deprecated as of 6.2.0 and should be removed in 7.0.0\n\nObject.defineProperty(config, 'familyPrefix', {\n enumerable: true,\n set: function set(val) {\n _config.cssPrefix = val;\n\n _onChangeCb.forEach(function (cb) {\n return cb(config);\n });\n },\n get: function get() {\n return _config.cssPrefix;\n }\n});\nWINDOW.FontAwesomeConfig = config;\nvar _onChangeCb = [];\nfunction onChange(cb) {\n _onChangeCb.push(cb);\n\n return function () {\n _onChangeCb.splice(_onChangeCb.indexOf(cb), 1);\n };\n}\n\nvar d = UNITS_IN_GRID;\nvar meaninglessTransform = {\n size: 16,\n x: 0,\n y: 0,\n rotate: 0,\n flipX: false,\n flipY: false\n};\nfunction insertCss(css) {\n if (!css || !IS_DOM) {\n return;\n }\n\n var style = DOCUMENT.createElement('style');\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n var headChildren = DOCUMENT.head.childNodes;\n var beforeChild = null;\n\n for (var i = headChildren.length - 1; i > -1; i--) {\n var child = headChildren[i];\n var tagName = (child.tagName || '').toUpperCase();\n\n if (['STYLE', 'LINK'].indexOf(tagName) > -1) {\n beforeChild = child;\n }\n }\n\n DOCUMENT.head.insertBefore(style, beforeChild);\n return css;\n}\nvar idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\nfunction nextUniqueId() {\n var size = 12;\n var id = '';\n\n while (size-- > 0) {\n id += idPool[Math.random() * 62 | 0];\n }\n\n return id;\n}\nfunction toArray(obj) {\n var array = [];\n\n for (var i = (obj || []).length >>> 0; i--;) {\n array[i] = obj[i];\n }\n\n return array;\n}\nfunction classArray(node) {\n if (node.classList) {\n return toArray(node.classList);\n } else {\n return (node.getAttribute('class') || '').split(' ').filter(function (i) {\n return i;\n });\n }\n}\nfunction htmlEscape(str) {\n return \"\".concat(str).replace(/&/g, '&').replace(/\"/g, '"').replace(/'/g, ''').replace(/</g, '<').replace(/>/g, '>');\n}\nfunction joinAttributes(attributes) {\n return Object.keys(attributes || {}).reduce(function (acc, attributeName) {\n return acc + \"\".concat(attributeName, \"=\\\"\").concat(htmlEscape(attributes[attributeName]), \"\\\" \");\n }, '').trim();\n}\nfunction joinStyles(styles) {\n return Object.keys(styles || {}).reduce(function (acc, styleName) {\n return acc + \"\".concat(styleName, \": \").concat(styles[styleName].trim(), \";\");\n }, '');\n}\nfunction transformIsMeaningful(transform) {\n return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;\n}\nfunction transformForSvg(_ref) {\n var transform = _ref.transform,\n containerWidth = _ref.containerWidth,\n iconWidth = _ref.iconWidth;\n var outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n var innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n var innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n var innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n var inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n var path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n return {\n outer: outer,\n inner: inner,\n path: path\n };\n}\nfunction transformForCss(_ref2) {\n var transform = _ref2.transform,\n _ref2$width = _ref2.width,\n width = _ref2$width === void 0 ? UNITS_IN_GRID : _ref2$width,\n _ref2$height = _ref2.height,\n height = _ref2$height === void 0 ? UNITS_IN_GRID : _ref2$height,\n _ref2$startCentered = _ref2.startCentered,\n startCentered = _ref2$startCentered === void 0 ? false : _ref2$startCentered;\n var val = '';\n\n if (startCentered && IS_IE) {\n val += \"translate(\".concat(transform.x / d - width / 2, \"em, \").concat(transform.y / d - height / 2, \"em) \");\n } else if (startCentered) {\n val += \"translate(calc(-50% + \".concat(transform.x / d, \"em), calc(-50% + \").concat(transform.y / d, \"em)) \");\n } else {\n val += \"translate(\".concat(transform.x / d, \"em, \").concat(transform.y / d, \"em) \");\n }\n\n val += \"scale(\".concat(transform.size / d * (transform.flipX ? -1 : 1), \", \").concat(transform.size / d * (transform.flipY ? -1 : 1), \") \");\n val += \"rotate(\".concat(transform.rotate, \"deg) \");\n return val;\n}\n\nvar baseStyles = \":root, :host {\\n --fa-font-solid: normal 900 1em/1 \\\"Font Awesome 6 Solid\\\";\\n --fa-font-regular: normal 400 1em/1 \\\"Font Awesome 6 Regular\\\";\\n --fa-font-light: normal 300 1em/1 \\\"Font Awesome 6 Light\\\";\\n --fa-font-thin: normal 100 1em/1 \\\"Font Awesome 6 Thin\\\";\\n --fa-font-duotone: normal 900 1em/1 \\\"Font Awesome 6 Duotone\\\";\\n --fa-font-sharp-solid: normal 900 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-regular: normal 400 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-light: normal 300 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-thin: normal 100 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-brands: normal 400 1em/1 \\\"Font Awesome 6 Brands\\\";\\n}\\n\\nsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\\n overflow: visible;\\n box-sizing: content-box;\\n}\\n\\n.svg-inline--fa {\\n display: var(--fa-display, inline-block);\\n height: 1em;\\n overflow: visible;\\n vertical-align: -0.125em;\\n}\\n.svg-inline--fa.fa-2xs {\\n vertical-align: 0.1em;\\n}\\n.svg-inline--fa.fa-xs {\\n vertical-align: 0em;\\n}\\n.svg-inline--fa.fa-sm {\\n vertical-align: -0.0714285705em;\\n}\\n.svg-inline--fa.fa-lg {\\n vertical-align: -0.2em;\\n}\\n.svg-inline--fa.fa-xl {\\n vertical-align: -0.25em;\\n}\\n.svg-inline--fa.fa-2xl {\\n vertical-align: -0.3125em;\\n}\\n.svg-inline--fa.fa-pull-left {\\n margin-right: var(--fa-pull-margin, 0.3em);\\n width: auto;\\n}\\n.svg-inline--fa.fa-pull-right {\\n margin-left: var(--fa-pull-margin, 0.3em);\\n width: auto;\\n}\\n.svg-inline--fa.fa-li {\\n width: var(--fa-li-width, 2em);\\n top: 0.25em;\\n}\\n.svg-inline--fa.fa-fw {\\n width: var(--fa-fw-width, 1.25em);\\n}\\n\\n.fa-layers svg.svg-inline--fa {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n\\n.fa-layers-counter, .fa-layers-text {\\n display: inline-block;\\n position: absolute;\\n text-align: center;\\n}\\n\\n.fa-layers {\\n display: inline-block;\\n height: 1em;\\n position: relative;\\n text-align: center;\\n vertical-align: -0.125em;\\n width: 1em;\\n}\\n.fa-layers svg.svg-inline--fa {\\n -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-text {\\n left: 50%;\\n top: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-counter {\\n background-color: var(--fa-counter-background-color, #ff253a);\\n border-radius: var(--fa-counter-border-radius, 1em);\\n box-sizing: border-box;\\n color: var(--fa-inverse, #fff);\\n line-height: var(--fa-counter-line-height, 1);\\n max-width: var(--fa-counter-max-width, 5em);\\n min-width: var(--fa-counter-min-width, 1.5em);\\n overflow: hidden;\\n padding: var(--fa-counter-padding, 0.25em 0.5em);\\n right: var(--fa-right, 0);\\n text-overflow: ellipsis;\\n top: var(--fa-top, 0);\\n -webkit-transform: scale(var(--fa-counter-scale, 0.25));\\n transform: scale(var(--fa-counter-scale, 0.25));\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-bottom-right {\\n bottom: var(--fa-bottom, 0);\\n right: var(--fa-right, 0);\\n top: auto;\\n -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: bottom right;\\n transform-origin: bottom right;\\n}\\n\\n.fa-layers-bottom-left {\\n bottom: var(--fa-bottom, 0);\\n left: var(--fa-left, 0);\\n right: auto;\\n top: auto;\\n -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: bottom left;\\n transform-origin: bottom left;\\n}\\n\\n.fa-layers-top-right {\\n top: var(--fa-top, 0);\\n right: var(--fa-right, 0);\\n -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-top-left {\\n left: var(--fa-left, 0);\\n right: auto;\\n top: var(--fa-top, 0);\\n -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: top left;\\n transform-origin: top left;\\n}\\n\\n.fa-1x {\\n font-size: 1em;\\n}\\n\\n.fa-2x {\\n font-size: 2em;\\n}\\n\\n.fa-3x {\\n font-size: 3em;\\n}\\n\\n.fa-4x {\\n font-size: 4em;\\n}\\n\\n.fa-5x {\\n font-size: 5em;\\n}\\n\\n.fa-6x {\\n font-size: 6em;\\n}\\n\\n.fa-7x {\\n font-size: 7em;\\n}\\n\\n.fa-8x {\\n font-size: 8em;\\n}\\n\\n.fa-9x {\\n font-size: 9em;\\n}\\n\\n.fa-10x {\\n font-size: 10em;\\n}\\n\\n.fa-2xs {\\n font-size: 0.625em;\\n line-height: 0.1em;\\n vertical-align: 0.225em;\\n}\\n\\n.fa-xs {\\n font-size: 0.75em;\\n line-height: 0.0833333337em;\\n vertical-align: 0.125em;\\n}\\n\\n.fa-sm {\\n font-size: 0.875em;\\n line-height: 0.0714285718em;\\n vertical-align: 0.0535714295em;\\n}\\n\\n.fa-lg {\\n font-size: 1.25em;\\n line-height: 0.05em;\\n vertical-align: -0.075em;\\n}\\n\\n.fa-xl {\\n font-size: 1.5em;\\n line-height: 0.0416666682em;\\n vertical-align: -0.125em;\\n}\\n\\n.fa-2xl {\\n font-size: 2em;\\n line-height: 0.03125em;\\n vertical-align: -0.1875em;\\n}\\n\\n.fa-fw {\\n text-align: center;\\n width: 1.25em;\\n}\\n\\n.fa-ul {\\n list-style-type: none;\\n margin-left: var(--fa-li-margin, 2.5em);\\n padding-left: 0;\\n}\\n.fa-ul > li {\\n position: relative;\\n}\\n\\n.fa-li {\\n left: calc(var(--fa-li-width, 2em) * -1);\\n position: absolute;\\n text-align: center;\\n width: var(--fa-li-width, 2em);\\n line-height: inherit;\\n}\\n\\n.fa-border {\\n border-color: var(--fa-border-color, #eee);\\n border-radius: var(--fa-border-radius, 0.1em);\\n border-style: var(--fa-border-style, solid);\\n border-width: var(--fa-border-width, 0.08em);\\n padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);\\n}\\n\\n.fa-pull-left {\\n float: left;\\n margin-right: var(--fa-pull-margin, 0.3em);\\n}\\n\\n.fa-pull-right {\\n float: right;\\n margin-left: var(--fa-pull-margin, 0.3em);\\n}\\n\\n.fa-beat {\\n -webkit-animation-name: fa-beat;\\n animation-name: fa-beat;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-bounce {\\n -webkit-animation-name: fa-bounce;\\n animation-name: fa-bounce;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\\n}\\n\\n.fa-fade {\\n -webkit-animation-name: fa-fade;\\n animation-name: fa-fade;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-beat-fade {\\n -webkit-animation-name: fa-beat-fade;\\n animation-name: fa-beat-fade;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-flip {\\n -webkit-animation-name: fa-flip;\\n animation-name: fa-flip;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-shake {\\n -webkit-animation-name: fa-shake;\\n animation-name: fa-shake;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, linear);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin {\\n -webkit-animation-name: fa-spin;\\n animation-name: fa-spin;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 2s);\\n animation-duration: var(--fa-animation-duration, 2s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, linear);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin-reverse {\\n --fa-animation-direction: reverse;\\n}\\n\\n.fa-pulse,\\n.fa-spin-pulse {\\n -webkit-animation-name: fa-spin;\\n animation-name: fa-spin;\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, steps(8));\\n animation-timing-function: var(--fa-animation-timing, steps(8));\\n}\\n\\n@media (prefers-reduced-motion: reduce) {\\n .fa-beat,\\n.fa-bounce,\\n.fa-fade,\\n.fa-beat-fade,\\n.fa-flip,\\n.fa-pulse,\\n.fa-shake,\\n.fa-spin,\\n.fa-spin-pulse {\\n -webkit-animation-delay: -1ms;\\n animation-delay: -1ms;\\n -webkit-animation-duration: 1ms;\\n animation-duration: 1ms;\\n -webkit-animation-iteration-count: 1;\\n animation-iteration-count: 1;\\n -webkit-transition-delay: 0s;\\n transition-delay: 0s;\\n -webkit-transition-duration: 0s;\\n transition-duration: 0s;\\n }\\n}\\n@-webkit-keyframes fa-beat {\\n 0%, 90% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 45% {\\n -webkit-transform: scale(var(--fa-beat-scale, 1.25));\\n transform: scale(var(--fa-beat-scale, 1.25));\\n }\\n}\\n@keyframes fa-beat {\\n 0%, 90% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 45% {\\n -webkit-transform: scale(var(--fa-beat-scale, 1.25));\\n transform: scale(var(--fa-beat-scale, 1.25));\\n }\\n}\\n@-webkit-keyframes fa-bounce {\\n 0% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 10% {\\n -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n }\\n 30% {\\n -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n }\\n 50% {\\n -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n }\\n 57% {\\n -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n }\\n 64% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 100% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n}\\n@keyframes fa-bounce {\\n 0% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 10% {\\n -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n }\\n 30% {\\n -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n }\\n 50% {\\n -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n }\\n 57% {\\n -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n }\\n 64% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 100% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n}\\n@-webkit-keyframes fa-fade {\\n 50% {\\n opacity: var(--fa-fade-opacity, 0.4);\\n }\\n}\\n@keyframes fa-fade {\\n 50% {\\n opacity: var(--fa-fade-opacity, 0.4);\\n }\\n}\\n@-webkit-keyframes fa-beat-fade {\\n 0%, 100% {\\n opacity: var(--fa-beat-fade-opacity, 0.4);\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 50% {\\n opacity: 1;\\n -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));\\n transform: scale(var(--fa-beat-fade-scale, 1.125));\\n }\\n}\\n@keyframes fa-beat-fade {\\n 0%, 100% {\\n opacity: var(--fa-beat-fade-opacity, 0.4);\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 50% {\\n opacity: 1;\\n -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));\\n transform: scale(var(--fa-beat-fade-scale, 1.125));\\n }\\n}\\n@-webkit-keyframes fa-flip {\\n 50% {\\n -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n }\\n}\\n@keyframes fa-flip {\\n 50% {\\n -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n }\\n}\\n@-webkit-keyframes fa-shake {\\n 0% {\\n -webkit-transform: rotate(-15deg);\\n transform: rotate(-15deg);\\n }\\n 4% {\\n -webkit-transform: rotate(15deg);\\n transform: rotate(15deg);\\n }\\n 8%, 24% {\\n -webkit-transform: rotate(-18deg);\\n transform: rotate(-18deg);\\n }\\n 12%, 28% {\\n -webkit-transform: rotate(18deg);\\n transform: rotate(18deg);\\n }\\n 16% {\\n -webkit-transform: rotate(-22deg);\\n transform: rotate(-22deg);\\n }\\n 20% {\\n -webkit-transform: rotate(22deg);\\n transform: rotate(22deg);\\n }\\n 32% {\\n -webkit-transform: rotate(-12deg);\\n transform: rotate(-12deg);\\n }\\n 36% {\\n -webkit-transform: rotate(12deg);\\n transform: rotate(12deg);\\n }\\n 40%, 100% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n}\\n@keyframes fa-shake {\\n 0% {\\n -webkit-transform: rotate(-15deg);\\n transform: rotate(-15deg);\\n }\\n 4% {\\n -webkit-transform: rotate(15deg);\\n transform: rotate(15deg);\\n }\\n 8%, 24% {\\n -webkit-transform: rotate(-18deg);\\n transform: rotate(-18deg);\\n }\\n 12%, 28% {\\n -webkit-transform: rotate(18deg);\\n transform: rotate(18deg);\\n }\\n 16% {\\n -webkit-transform: rotate(-22deg);\\n transform: rotate(-22deg);\\n }\\n 20% {\\n -webkit-transform: rotate(22deg);\\n transform: rotate(22deg);\\n }\\n 32% {\\n -webkit-transform: rotate(-12deg);\\n transform: rotate(-12deg);\\n }\\n 36% {\\n -webkit-transform: rotate(12deg);\\n transform: rotate(12deg);\\n }\\n 40%, 100% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n}\\n@-webkit-keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n@keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n.fa-rotate-90 {\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n}\\n\\n.fa-rotate-180 {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n\\n.fa-rotate-270 {\\n -webkit-transform: rotate(270deg);\\n transform: rotate(270deg);\\n}\\n\\n.fa-flip-horizontal {\\n -webkit-transform: scale(-1, 1);\\n transform: scale(-1, 1);\\n}\\n\\n.fa-flip-vertical {\\n -webkit-transform: scale(1, -1);\\n transform: scale(1, -1);\\n}\\n\\n.fa-flip-both,\\n.fa-flip-horizontal.fa-flip-vertical {\\n -webkit-transform: scale(-1, -1);\\n transform: scale(-1, -1);\\n}\\n\\n.fa-rotate-by {\\n -webkit-transform: rotate(var(--fa-rotate-angle, 0));\\n transform: rotate(var(--fa-rotate-angle, 0));\\n}\\n\\n.fa-stack {\\n display: inline-block;\\n vertical-align: middle;\\n height: 2em;\\n position: relative;\\n width: 2.5em;\\n}\\n\\n.fa-stack-1x,\\n.fa-stack-2x {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n z-index: var(--fa-stack-z-index, auto);\\n}\\n\\n.svg-inline--fa.fa-stack-1x {\\n height: 1em;\\n width: 1.25em;\\n}\\n.svg-inline--fa.fa-stack-2x {\\n height: 2em;\\n width: 2.5em;\\n}\\n\\n.fa-inverse {\\n color: var(--fa-inverse, #fff);\\n}\\n\\n.sr-only,\\n.fa-sr-only {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n margin: -1px;\\n overflow: hidden;\\n clip: rect(0, 0, 0, 0);\\n white-space: nowrap;\\n border-width: 0;\\n}\\n\\n.sr-only-focusable:not(:focus),\\n.fa-sr-only-focusable:not(:focus) {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n margin: -1px;\\n overflow: hidden;\\n clip: rect(0, 0, 0, 0);\\n white-space: nowrap;\\n border-width: 0;\\n}\\n\\n.svg-inline--fa .fa-primary {\\n fill: var(--fa-primary-color, currentColor);\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa .fa-secondary {\\n fill: var(--fa-secondary-color, currentColor);\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-primary {\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa mask .fa-primary,\\n.svg-inline--fa mask .fa-secondary {\\n fill: black;\\n}\\n\\n.fad.fa-inverse,\\n.fa-duotone.fa-inverse {\\n color: var(--fa-inverse, #fff);\\n}\";\n\nfunction css() {\n var dcp = DEFAULT_CSS_PREFIX;\n var drc = DEFAULT_REPLACEMENT_CLASS;\n var fp = config.cssPrefix;\n var rc = config.replacementClass;\n var s = baseStyles;\n\n if (fp !== dcp || rc !== drc) {\n var dPatt = new RegExp(\"\\\\.\".concat(dcp, \"\\\\-\"), 'g');\n var customPropPatt = new RegExp(\"\\\\--\".concat(dcp, \"\\\\-\"), 'g');\n var rPatt = new RegExp(\"\\\\.\".concat(drc), 'g');\n s = s.replace(dPatt, \".\".concat(fp, \"-\")).replace(customPropPatt, \"--\".concat(fp, \"-\")).replace(rPatt, \".\".concat(rc));\n }\n\n return s;\n}\n\nvar _cssInserted = false;\n\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n _cssInserted = true;\n }\n}\n\nvar InjectCSS = {\n mixout: function mixout() {\n return {\n dom: {\n css: css,\n insertCss: ensureCss\n }\n };\n },\n hooks: function hooks() {\n return {\n beforeDOMElementCreation: function beforeDOMElementCreation() {\n ensureCss();\n },\n beforeI2svg: function beforeI2svg() {\n ensureCss();\n }\n };\n }\n};\n\nvar w = WINDOW || {};\nif (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};\nif (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};\nif (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};\nif (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];\nvar namespace = w[NAMESPACE_IDENTIFIER];\n\nvar functions = [];\n\nvar listener = function listener() {\n DOCUMENT.removeEventListener('DOMContentLoaded', listener);\n loaded = 1;\n functions.map(function (fn) {\n return fn();\n });\n};\n\nvar loaded = false;\n\nif (IS_DOM) {\n loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);\n if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener);\n}\n\nfunction domready (fn) {\n if (!IS_DOM) return;\n loaded ? setTimeout(fn, 0) : functions.push(fn);\n}\n\nfunction toHtml(abstractNodes) {\n var tag = abstractNodes.tag,\n _abstractNodes$attrib = abstractNodes.attributes,\n attributes = _abstractNodes$attrib === void 0 ? {} : _abstractNodes$attrib,\n _abstractNodes$childr = abstractNodes.children,\n children = _abstractNodes$childr === void 0 ? [] : _abstractNodes$childr;\n\n if (typeof abstractNodes === 'string') {\n return htmlEscape(abstractNodes);\n } else {\n return \"<\".concat(tag, \" \").concat(joinAttributes(attributes), \">\").concat(children.map(toHtml).join(''), \"</\").concat(tag, \">\");\n }\n}\n\nfunction iconFromMapping(mapping, prefix, iconName) {\n if (mapping && mapping[prefix] && mapping[prefix][iconName]) {\n return {\n prefix: prefix,\n iconName: iconName,\n icon: mapping[prefix][iconName]\n };\n }\n}\n\n/**\n * Internal helper to bind a function known to have 4 arguments\n * to a given context.\n */\n\nvar bindInternal4 = function bindInternal4(func, thisContext) {\n return function (a, b, c, d) {\n return func.call(thisContext, a, b, c, d);\n };\n};\n\n/**\n * # Reduce\n *\n * A fast object `.reduce()` implementation.\n *\n * @param {Object} subject The object to reduce over.\n * @param {Function} fn The reducer function.\n * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].\n * @param {Object} thisContext The context for the reducer.\n * @return {mixed} The final result.\n */\n\n\nvar reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {\n var keys = Object.keys(subject),\n length = keys.length,\n iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,\n i,\n key,\n result;\n\n if (initialValue === undefined) {\n i = 1;\n result = subject[keys[0]];\n } else {\n i = 0;\n result = initialValue;\n }\n\n for (; i < length; i++) {\n key = keys[i];\n result = iterator(result, subject[key], key, subject);\n }\n\n return result;\n};\n\n/**\n * ucs2decode() and codePointAt() are both works of Mathias Bynens and licensed under MIT\n *\n * Copyright Mathias Bynens <https://mathiasbynens.be/>\n\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\nfunction ucs2decode(string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n var extra = string.charCodeAt(counter++);\n\n if ((extra & 0xFC00) == 0xDC00) {\n // eslint-disable-line eqeqeq\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n\n return output;\n}\n\nfunction toHex(unicode) {\n var decoded = ucs2decode(unicode);\n return decoded.length === 1 ? decoded[0].toString(16) : null;\n}\nfunction codePointAt(string, index) {\n var size = string.length;\n var first = string.charCodeAt(index);\n var second;\n\n if (first >= 0xD800 && first <= 0xDBFF && size > index + 1) {\n second = string.charCodeAt(index + 1);\n\n if (second >= 0xDC00 && second <= 0xDFFF) {\n return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;\n }\n }\n\n return first;\n}\n\nfunction normalizeIcons(icons) {\n return Object.keys(icons).reduce(function (acc, iconName) {\n var icon = icons[iconName];\n var expanded = !!icon.icon;\n\n if (expanded) {\n acc[icon.iconName] = icon.icon;\n } else {\n acc[iconName] = icon;\n }\n\n return acc;\n }, {});\n}\n\nfunction defineIcons(prefix, icons) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var _params$skipHooks = params.skipHooks,\n skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;\n var normalized = normalizeIcons(icons);\n\n if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalizeIcons(icons));\n } else {\n namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);\n }\n /**\n * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction\n * of new styles we needed to differentiate between them. Prefix `fa` is now an alias\n * for `fas` so we'll ease the upgrade process for our users by automatically defining\n * this as well.\n */\n\n\n if (prefix === 'fas') {\n defineIcons('fa', icons);\n }\n}\n\nvar duotonePathRe = [/*#__PURE__*/_wrapRegExp(/path d=\"((?:(?!\")[\\s\\S])+)\".*path d=\"((?:(?!\")[\\s\\S])+)\"/, {\n d1: 1,\n d2: 2\n}), /*#__PURE__*/_wrapRegExp(/path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\".*path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\"/, {\n cls1: 1,\n d1: 2,\n cls2: 3,\n d2: 4\n}), /*#__PURE__*/_wrapRegExp(/path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\"/, {\n cls1: 1,\n d1: 2\n})];\n\nvar _LONG_STYLE, _PREFIXES, _PREFIXES_FOR_FAMILY;\nvar styles = namespace.styles,\n shims = namespace.shims;\nvar LONG_STYLE = (_LONG_STYLE = {}, _defineProperty(_LONG_STYLE, FAMILY_CLASSIC, Object.values(PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC])), _defineProperty(_LONG_STYLE, FAMILY_SHARP, Object.values(PREFIX_TO_LONG_STYLE[FAMILY_SHARP])), _LONG_STYLE);\nvar _defaultUsablePrefix = null;\nvar _byUnicode = {};\nvar _byLigature = {};\nvar _byOldName = {};\nvar _byOldUnicode = {};\nvar _byAlias = {};\nvar PREFIXES = (_PREFIXES = {}, _defineProperty(_PREFIXES, FAMILY_CLASSIC, Object.keys(PREFIX_TO_STYLE[FAMILY_CLASSIC])), _defineProperty(_PREFIXES, FAMILY_SHARP, Object.keys(PREFIX_TO_STYLE[FAMILY_SHARP])), _PREFIXES);\n\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\n}\n\nfunction getIconName(cssPrefix, cls) {\n var parts = cls.split('-');\n var prefix = parts[0];\n var iconName = parts.slice(1).join('-');\n\n if (prefix === cssPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nvar build = function build() {\n var lookup = function lookup(reducer) {\n return reduce(styles, function (o, style, prefix) {\n o[prefix] = reduce(style, reducer, {});\n return o;\n }, {});\n };\n\n _byUnicode = lookup(function (acc, icon, iconName) {\n if (icon[3]) {\n acc[icon[3]] = iconName;\n }\n\n if (icon[2]) {\n var aliases = icon[2].filter(function (a) {\n return typeof a === 'number';\n });\n aliases.forEach(function (alias) {\n acc[alias.toString(16)] = iconName;\n });\n }\n\n return acc;\n });\n _byLigature = lookup(function (acc, icon, iconName) {\n acc[iconName] = iconName;\n\n if (icon[2]) {\n var aliases = icon[2].filter(function (a) {\n return typeof a === 'string';\n });\n aliases.forEach(function (alias) {\n acc[alias] = iconName;\n });\n }\n\n return acc;\n });\n _byAlias = lookup(function (acc, icon, iconName) {\n var aliases = icon[2];\n acc[iconName] = iconName;\n aliases.forEach(function (alias) {\n acc[alias] = iconName;\n });\n return acc;\n }); // If we have a Kit, we can't determine if regular is available since we\n // could be auto-fetching it. We'll have to assume that it is available.\n\n var hasRegular = 'far' in styles || config.autoFetchSvg;\n var shimLookups = reduce(shims, function (acc, shim) {\n var maybeNameMaybeUnicode = shim[0];\n var prefix = shim[1];\n var iconName = shim[2];\n\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n\n if (typeof maybeNameMaybeUnicode === 'string') {\n acc.names[maybeNameMaybeUnicode] = {\n prefix: prefix,\n iconName: iconName\n };\n }\n\n if (typeof maybeNameMaybeUnicode === 'number') {\n acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {\n prefix: prefix,\n iconName: iconName\n };\n }\n\n return acc;\n }, {\n names: {},\n unicodes: {}\n });\n _byOldName = shimLookups.names;\n _byOldUnicode = shimLookups.unicodes;\n _defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {\n family: config.familyDefault\n });\n};\nonChange(function (c) {\n _defaultUsablePrefix = getCanonicalPrefix(c.styleDefault, {\n family: config.familyDefault\n });\n});\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byAlias(prefix, alias) {\n return (_byAlias[prefix] || {})[alias];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\nfunction byOldUnicode(unicode) {\n var oldUnicode = _byOldUnicode[unicode];\n var newUnicode = byUnicode('fas', unicode);\n return oldUnicode || (newUnicode ? {\n prefix: 'fas',\n iconName: newUnicode\n } : null) || {\n prefix: null,\n iconName: null\n };\n}\nfunction getDefaultUsablePrefix() {\n return _defaultUsablePrefix;\n}\nvar emptyCanonicalIcon = function emptyCanonicalIcon() {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getCanonicalPrefix(styleOrPrefix) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$family = params.family,\n family = _params$family === void 0 ? FAMILY_CLASSIC : _params$family;\n var style = PREFIX_TO_STYLE[family][styleOrPrefix];\n var prefix = STYLE_TO_PREFIX[family][styleOrPrefix] || STYLE_TO_PREFIX[family][style];\n var defined = styleOrPrefix in namespace.styles ? styleOrPrefix : null;\n return prefix || defined || null;\n}\nvar PREFIXES_FOR_FAMILY = (_PREFIXES_FOR_FAMILY = {}, _defineProperty(_PREFIXES_FOR_FAMILY, FAMILY_CLASSIC, Object.keys(PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC])), _defineProperty(_PREFIXES_FOR_FAMILY, FAMILY_SHARP, Object.keys(PREFIX_TO_LONG_STYLE[FAMILY_SHARP])), _PREFIXES_FOR_FAMILY);\nfunction getCanonicalIcon(values) {\n var _famProps;\n\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$skipLookups = params.skipLookups,\n skipLookups = _params$skipLookups === void 0 ? false : _params$skipLookups;\n var famProps = (_famProps = {}, _defineProperty(_famProps, FAMILY_CLASSIC, \"\".concat(config.cssPrefix, \"-\").concat(FAMILY_CLASSIC)), _defineProperty(_famProps, FAMILY_SHARP, \"\".concat(config.cssPrefix, \"-\").concat(FAMILY_SHARP)), _famProps);\n var givenPrefix = null;\n var family = FAMILY_CLASSIC;\n\n if (values.includes(famProps[FAMILY_CLASSIC]) || values.some(function (v) {\n return PREFIXES_FOR_FAMILY[FAMILY_CLASSIC].includes(v);\n })) {\n family = FAMILY_CLASSIC;\n }\n\n if (values.includes(famProps[FAMILY_SHARP]) || values.some(function (v) {\n return PREFIXES_FOR_FAMILY[FAMILY_SHARP].includes(v);\n })) {\n family = FAMILY_SHARP;\n }\n\n var canonical = values.reduce(function (acc, cls) {\n var iconName = getIconName(config.cssPrefix, cls);\n\n if (styles[cls]) {\n cls = LONG_STYLE[family].includes(cls) ? LONG_STYLE_TO_PREFIX[family][cls] : cls;\n givenPrefix = cls;\n acc.prefix = cls;\n } else if (PREFIXES[family].indexOf(cls) > -1) {\n givenPrefix = cls;\n acc.prefix = getCanonicalPrefix(cls, {\n family: family\n });\n } else if (iconName) {\n acc.iconName = iconName;\n } else if (cls !== config.replacementClass && cls !== famProps[FAMILY_CLASSIC] && cls !== famProps[FAMILY_SHARP]) {\n acc.rest.push(cls);\n }\n\n if (!skipLookups && acc.prefix && acc.iconName) {\n var shim = givenPrefix === 'fa' ? byOldName(acc.iconName) : {};\n var aliasIconName = byAlias(acc.prefix, acc.iconName);\n\n if (shim.prefix) {\n givenPrefix = null;\n }\n\n acc.iconName = shim.iconName || aliasIconName || acc.iconName;\n acc.prefix = shim.prefix || acc.prefix;\n\n if (acc.prefix === 'far' && !styles['far'] && styles['fas'] && !config.autoFetchSvg) {\n // Allow a fallback from the regular style to solid if regular is not available\n // but only if we aren't auto-fetching SVGs\n acc.prefix = 'fas';\n }\n }\n\n return acc;\n }, emptyCanonicalIcon());\n\n if (values.includes('fa-brands') || values.includes('fab')) {\n canonical.prefix = 'fab';\n }\n\n if (values.includes('fa-duotone') || values.includes('fad')) {\n canonical.prefix = 'fad';\n }\n\n if (!canonical.prefix && family === FAMILY_SHARP && (styles['fass'] || config.autoFetchSvg)) {\n canonical.prefix = 'fass';\n canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;\n }\n\n if (canonical.prefix === 'fa' || givenPrefix === 'fa') {\n // The fa prefix is not canonical. So if it has made it through until this point\n // we will shift it to the correct prefix.\n canonical.prefix = getDefaultUsablePrefix() || 'fas';\n }\n\n return canonical;\n}\n\nvar Library = /*#__PURE__*/function () {\n function Library() {\n _classCallCheck(this, Library);\n\n this.definitions = {};\n }\n\n _createClass(Library, [{\n key: \"add\",\n value: function add() {\n var _this = this;\n\n for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {\n definitions[_key] = arguments[_key];\n }\n\n var additions = definitions.reduce(this._pullDefinitions, {});\n Object.keys(additions).forEach(function (key) {\n _this.definitions[key] = _objectSpread2(_objectSpread2({}, _this.definitions[key] || {}), additions[key]);\n defineIcons(key, additions[key]); // TODO can we stop doing this? We can't get the icons by 'fa-solid' any longer so this probably needs to change\n\n var longPrefix = PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC][key];\n if (longPrefix) defineIcons(longPrefix, additions[key]);\n build();\n });\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.definitions = {};\n }\n }, {\n key: \"_pullDefinitions\",\n value: function _pullDefinitions(additions, definition) {\n var normalized = definition.prefix && definition.iconName && definition.icon ? {\n 0: definition\n } : definition;\n Object.keys(normalized).map(function (key) {\n var _normalized$key = normalized[key],\n prefix = _normalized$key.prefix,\n iconName = _normalized$key.iconName,\n icon = _normalized$key.icon;\n var aliases = icon[2];\n if (!additions[prefix]) additions[prefix] = {};\n\n if (aliases.length > 0) {\n aliases.forEach(function (alias) {\n if (typeof alias === 'string') {\n additions[prefix][alias] = icon;\n }\n });\n }\n\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n }]);\n\n return Library;\n}();\n\nvar _plugins = [];\nvar _hooks = {};\nvar providers = {};\nvar defaultProviderKeys = Object.keys(providers);\nfunction registerPlugins(nextPlugins, _ref) {\n var obj = _ref.mixoutsTo;\n _plugins = nextPlugins;\n _hooks = {};\n Object.keys(providers).forEach(function (k) {\n if (defaultProviderKeys.indexOf(k) === -1) {\n delete providers[k];\n }\n });\n\n _plugins.forEach(function (plugin) {\n var mixout = plugin.mixout ? plugin.mixout() : {};\n Object.keys(mixout).forEach(function (tk) {\n if (typeof mixout[tk] === 'function') {\n obj[tk] = mixout[tk];\n }\n\n if (_typeof(mixout[tk]) === 'object') {\n Object.keys(mixout[tk]).forEach(function (sk) {\n if (!obj[tk]) {\n obj[tk] = {};\n }\n\n obj[tk][sk] = mixout[tk][sk];\n });\n }\n });\n\n if (plugin.hooks) {\n var hooks = plugin.hooks();\n Object.keys(hooks).forEach(function (hook) {\n if (!_hooks[hook]) {\n _hooks[hook] = [];\n }\n\n _hooks[hook].push(hooks[hook]);\n });\n }\n\n if (plugin.provides) {\n plugin.provides(providers);\n }\n });\n\n return obj;\n}\nfunction chainHooks(hook, accumulator) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var hookFns = _hooks[hook] || [];\n hookFns.forEach(function (hookFn) {\n accumulator = hookFn.apply(null, [accumulator].concat(args)); // eslint-disable-line no-useless-call\n });\n return accumulator;\n}\nfunction callHooks(hook) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n var hookFns = _hooks[hook] || [];\n hookFns.forEach(function (hookFn) {\n hookFn.apply(null, args);\n });\n return undefined;\n}\nfunction callProvided() {\n var hook = arguments[0];\n var args = Array.prototype.slice.call(arguments, 1);\n return providers[hook] ? providers[hook].apply(null, args) : undefined;\n}\n\nfunction findIconDefinition(iconLookup) {\n if (iconLookup.prefix === 'fa') {\n iconLookup.prefix = 'fas';\n }\n\n var iconName = iconLookup.iconName;\n var prefix = iconLookup.prefix || getDefaultUsablePrefix();\n if (!iconName) return;\n iconName = byAlias(prefix, iconName) || iconName;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\n}\nvar library = new Library();\nvar noAuto = function noAuto() {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n callHooks('noAuto');\n};\nvar dom = {\n i2svg: function i2svg() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (IS_DOM) {\n callHooks('beforeI2svg', params);\n callProvided('pseudoElements2svg', params);\n return callProvided('i2svg', params);\n } else {\n return Promise.reject('Operation requires a DOM of some kind.');\n }\n },\n watch: function watch() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var autoReplaceSvgRoot = params.autoReplaceSvgRoot;\n\n if (config.autoReplaceSvg === false) {\n config.autoReplaceSvg = true;\n }\n\n config.observeMutations = true;\n domready(function () {\n autoReplace({\n autoReplaceSvgRoot: autoReplaceSvgRoot\n });\n callHooks('watch', params);\n });\n }\n};\nvar parse = {\n icon: function icon(_icon) {\n if (_icon === null) {\n return null;\n }\n\n if (_typeof(_icon) === 'object' && _icon.prefix && _icon.iconName) {\n return {\n prefix: _icon.prefix,\n iconName: byAlias(_icon.prefix, _icon.iconName) || _icon.iconName\n };\n }\n\n if (Array.isArray(_icon) && _icon.length === 2) {\n var iconName = _icon[1].indexOf('fa-') === 0 ? _icon[1].slice(3) : _icon[1];\n var prefix = getCanonicalPrefix(_icon[0]);\n return {\n prefix: prefix,\n iconName: byAlias(prefix, iconName) || iconName\n };\n }\n\n if (typeof _icon === 'string' && (_icon.indexOf(\"\".concat(config.cssPrefix, \"-\")) > -1 || _icon.match(ICON_SELECTION_SYNTAX_PATTERN))) {\n var canonicalIcon = getCanonicalIcon(_icon.split(' '), {\n skipLookups: true\n });\n return {\n prefix: canonicalIcon.prefix || getDefaultUsablePrefix(),\n iconName: byAlias(canonicalIcon.prefix, canonicalIcon.iconName) || canonicalIcon.iconName\n };\n }\n\n if (typeof _icon === 'string') {\n var _prefix = getDefaultUsablePrefix();\n\n return {\n prefix: _prefix,\n iconName: byAlias(_prefix, _icon) || _icon\n };\n }\n }\n};\nvar api = {\n noAuto: noAuto,\n config: config,\n dom: dom,\n parse: parse,\n library: library,\n findIconDefinition: findIconDefinition,\n toHtml: toHtml\n};\n\nvar autoReplace = function autoReplace() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _params$autoReplaceSv = params.autoReplaceSvgRoot,\n autoReplaceSvgRoot = _params$autoReplaceSv === void 0 ? DOCUMENT : _params$autoReplaceSv;\n if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({\n node: autoReplaceSvgRoot\n });\n};\n\nfunction domVariants(val, abstractCreator) {\n Object.defineProperty(val, 'abstract', {\n get: abstractCreator\n });\n Object.defineProperty(val, 'html', {\n get: function get() {\n return val.abstract.map(function (a) {\n return toHtml(a);\n });\n }\n });\n Object.defineProperty(val, 'node', {\n get: function get() {\n if (!IS_DOM) return;\n var container = DOCUMENT.createElement('div');\n container.innerHTML = val.html;\n return container.children;\n }\n });\n return val;\n}\n\nfunction asIcon (_ref) {\n var children = _ref.children,\n main = _ref.main,\n mask = _ref.mask,\n attributes = _ref.attributes,\n styles = _ref.styles,\n transform = _ref.transform;\n\n if (transformIsMeaningful(transform) && main.found && !mask.found) {\n var width = main.width,\n height = main.height;\n var offset = {\n x: width / height / 2,\n y: 0.5\n };\n attributes['style'] = joinStyles(_objectSpread2(_objectSpread2({}, styles), {}, {\n 'transform-origin': \"\".concat(offset.x + transform.x / 16, \"em \").concat(offset.y + transform.y / 16, \"em\")\n }));\n }\n\n return [{\n tag: 'svg',\n attributes: attributes,\n children: children\n }];\n}\n\nfunction asSymbol (_ref) {\n var prefix = _ref.prefix,\n iconName = _ref.iconName,\n children = _ref.children,\n attributes = _ref.attributes,\n symbol = _ref.symbol;\n var id = symbol === true ? \"\".concat(prefix, \"-\").concat(config.cssPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: _objectSpread2(_objectSpread2({}, attributes), {}, {\n id: id\n }),\n children: children\n }]\n }];\n}\n\nfunction makeInlineSvgAbstract(params) {\n var _params$icons = params.icons,\n main = _params$icons.main,\n mask = _params$icons.mask,\n prefix = params.prefix,\n iconName = params.iconName,\n transform = params.transform,\n symbol = params.symbol,\n title = params.title,\n maskId = params.maskId,\n titleId = params.titleId,\n extra = params.extra,\n _params$watchable = params.watchable,\n watchable = _params$watchable === void 0 ? false : _params$watchable;\n\n var _ref = mask.found ? mask : main,\n width = _ref.width,\n height = _ref.height;\n\n var isUploadedIcon = prefix === 'fak';\n var attrClass = [config.replacementClass, iconName ? \"\".concat(config.cssPrefix, \"-\").concat(iconName) : ''].filter(function (c) {\n return extra.classes.indexOf(c) === -1;\n }).filter(function (c) {\n return c !== '' || !!c;\n }).concat(extra.classes).join(' ');\n var content = {\n children: [],\n attributes: _objectSpread2(_objectSpread2({}, extra.attributes), {}, {\n 'data-prefix': prefix,\n 'data-icon': iconName,\n 'class': attrClass,\n 'role': extra.attributes.role || 'img',\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': \"0 0 \".concat(width, \" \").concat(height)\n })\n };\n var uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf('fa-fw') ? {\n width: \"\".concat(width / height * 16 * 0.0625, \"em\")\n } : {};\n\n if (watchable) {\n content.attributes[DATA_FA_I2SVG] = '';\n }\n\n if (title) {\n content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n delete content.attributes.title;\n }\n\n var args = _objectSpread2(_objectSpread2({}, content), {}, {\n prefix: prefix,\n iconName: iconName,\n main: main,\n mask: mask,\n maskId: maskId,\n transform: transform,\n symbol: symbol,\n styles: _objectSpread2(_objectSpread2({}, uploadedIconWidthStyle), extra.styles)\n });\n\n var _ref2 = mask.found && main.found ? callProvided('generateAbstractMask', args) || {\n children: [],\n attributes: {}\n } : callProvided('generateAbstractIcon', args) || {\n children: [],\n attributes: {}\n },\n children = _ref2.children,\n attributes = _ref2.attributes;\n\n args.children = children;\n args.attributes = attributes;\n\n if (symbol) {\n return asSymbol(args);\n } else {\n return asIcon(args);\n }\n}\nfunction makeLayersTextAbstract(params) {\n var content = params.content,\n width = params.width,\n height = params.height,\n transform = params.transform,\n title = params.title,\n extra = params.extra,\n _params$watchable2 = params.watchable,\n watchable = _params$watchable2 === void 0 ? false : _params$watchable2;\n\n var attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n\n if (watchable) {\n attributes[DATA_FA_I2SVG] = '';\n }\n\n var styles = _objectSpread2({}, extra.styles);\n\n if (transformIsMeaningful(transform)) {\n styles['transform'] = transformForCss({\n transform: transform,\n startCentered: true,\n width: width,\n height: height\n });\n styles['-webkit-transform'] = styles['transform'];\n }\n\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\nfunction makeLayersCounterAbstract(params) {\n var content = params.content,\n title = params.title,\n extra = params.extra;\n\n var attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n\n var styleString = joinStyles(extra.styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\n\nvar styles$1 = namespace.styles;\nfunction asFoundIcon(icon) {\n var width = icon[0];\n var height = icon[1];\n\n var _icon$slice = icon.slice(4),\n _icon$slice2 = _slicedToArray(_icon$slice, 1),\n vectorData = _icon$slice2[0];\n\n var element = null;\n\n if (Array.isArray(vectorData)) {\n element = {\n tag: 'g',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.PRIMARY),\n fill: 'currentColor',\n d: vectorData[1]\n }\n }]\n };\n } else {\n element = {\n tag: 'path',\n attributes: {\n fill: 'currentColor',\n d: vectorData\n }\n };\n }\n\n return {\n found: true,\n width: width,\n height: height,\n icon: element\n };\n}\nvar missingIconResolutionMixin = {\n found: false,\n width: 512,\n height: 512\n};\n\nfunction maybeNotifyMissing(iconName, prefix) {\n if (!PRODUCTION && !config.showMissingIcons && iconName) {\n console.error(\"Icon with name \\\"\".concat(iconName, \"\\\" and prefix \\\"\").concat(prefix, \"\\\" is missing.\"));\n }\n}\n\nfunction findIcon(iconName, prefix) {\n var givenPrefix = prefix;\n\n if (prefix === 'fa' && config.styleDefault !== null) {\n prefix = getDefaultUsablePrefix();\n }\n\n return new Promise(function (resolve, reject) {\n var val = {\n found: false,\n width: 512,\n height: 512,\n icon: callProvided('missingIconAbstract') || {}\n };\n\n if (givenPrefix === 'fa') {\n var shim = byOldName(iconName) || {};\n iconName = shim.iconName || iconName;\n prefix = shim.prefix || prefix;\n }\n\n if (iconName && prefix && styles$1[prefix] && styles$1[prefix][iconName]) {\n var icon = styles$1[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n\n maybeNotifyMissing(iconName, prefix);\n resolve(_objectSpread2(_objectSpread2({}, missingIconResolutionMixin), {}, {\n icon: config.showMissingIcons && iconName ? callProvided('missingIconAbstract') || {} : {}\n }));\n });\n}\n\nvar noop$1 = function noop() {};\n\nvar p = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {\n mark: noop$1,\n measure: noop$1\n};\nvar preamble = \"FA \\\"6.5.2\\\"\";\n\nvar begin = function begin(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" begins\"));\n return function () {\n return end(name);\n };\n};\n\nvar end = function end(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" ends\"));\n p.measure(\"\".concat(preamble, \" \").concat(name), \"\".concat(preamble, \" \").concat(name, \" begins\"), \"\".concat(preamble, \" \").concat(name, \" ends\"));\n};\n\nvar perf = {\n begin: begin,\n end: end\n};\n\nvar noop$2 = function noop() {};\n\nfunction isWatched(node) {\n var i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;\n return typeof i2svg === 'string';\n}\n\nfunction hasPrefixAndIcon(node) {\n var prefix = node.getAttribute ? node.getAttribute(DATA_PREFIX) : null;\n var icon = node.getAttribute ? node.getAttribute(DATA_ICON) : null;\n return prefix && icon;\n}\n\nfunction hasBeenReplaced(node) {\n return node && node.classList && node.classList.contains && node.classList.contains(config.replacementClass);\n}\n\nfunction getMutator() {\n if (config.autoReplaceSvg === true) {\n return mutators.replace;\n }\n\n var mutator = mutators[config.autoReplaceSvg];\n return mutator || mutators.replace;\n}\n\nfunction createElementNS(tag) {\n return DOCUMENT.createElementNS('http://www.w3.org/2000/svg', tag);\n}\n\nfunction createElement(tag) {\n return DOCUMENT.createElement(tag);\n}\n\nfunction convertSVG(abstractObj) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$ceFn = params.ceFn,\n ceFn = _params$ceFn === void 0 ? abstractObj.tag === 'svg' ? createElementNS : createElement : _params$ceFn;\n\n if (typeof abstractObj === 'string') {\n return DOCUMENT.createTextNode(abstractObj);\n }\n\n var tag = ceFn(abstractObj.tag);\n Object.keys(abstractObj.attributes || []).forEach(function (key) {\n tag.setAttribute(key, abstractObj.attributes[key]);\n });\n var children = abstractObj.children || [];\n children.forEach(function (child) {\n tag.appendChild(convertSVG(child, {\n ceFn: ceFn\n }));\n });\n return tag;\n}\n\nfunction nodeAsComment(node) {\n var comment = \" \".concat(node.outerHTML, \" \");\n /* BEGIN.ATTRIBUTION */\n\n comment = \"\".concat(comment, \"Font Awesome fontawesome.com \");\n /* END.ATTRIBUTION */\n\n return comment;\n}\n\nvar mutators = {\n replace: function replace(mutation) {\n var node = mutation[0];\n\n if (node.parentNode) {\n mutation[1].forEach(function (_abstract) {\n node.parentNode.insertBefore(convertSVG(_abstract), node);\n });\n\n if (node.getAttribute(DATA_FA_I2SVG) === null && config.keepOriginalSource) {\n var comment = DOCUMENT.createComment(nodeAsComment(node));\n node.parentNode.replaceChild(comment, node);\n } else {\n node.remove();\n }\n }\n },\n nest: function nest(mutation) {\n var node = mutation[0];\n var _abstract2 = mutation[1]; // If we already have a replaced node we do not want to continue nesting within it.\n // Short-circuit to the standard replacement\n\n if (~classArray(node).indexOf(config.replacementClass)) {\n return mutators.replace(mutation);\n }\n\n var forSvg = new RegExp(\"\".concat(config.cssPrefix, \"-.*\"));\n delete _abstract2[0].attributes.id;\n\n if (_abstract2[0].attributes.class) {\n var splitClasses = _abstract2[0].attributes.class.split(' ').reduce(function (acc, cls) {\n if (cls === config.replacementClass || cls.match(forSvg)) {\n acc.toSvg.push(cls);\n } else {\n acc.toNode.push(cls);\n }\n\n return acc;\n }, {\n toNode: [],\n toSvg: []\n });\n\n _abstract2[0].attributes.class = splitClasses.toSvg.join(' ');\n\n if (splitClasses.toNode.length === 0) {\n node.removeAttribute('class');\n } else {\n node.setAttribute('class', splitClasses.toNode.join(' '));\n }\n }\n\n var newInnerHTML = _abstract2.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n\n node.setAttribute(DATA_FA_I2SVG, '');\n node.innerHTML = newInnerHTML;\n }\n};\n\nfunction performOperationSync(op) {\n op();\n}\n\nfunction perform(mutations, callback) {\n var callbackFunction = typeof callback === 'function' ? callback : noop$2;\n\n if (mutations.length === 0) {\n callbackFunction();\n } else {\n var frame = performOperationSync;\n\n if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {\n frame = WINDOW.requestAnimationFrame || performOperationSync;\n }\n\n frame(function () {\n var mutator = getMutator();\n var mark = perf.begin('mutate');\n mutations.map(mutator);\n mark();\n callbackFunction();\n });\n }\n}\nvar disabled = false;\nfunction disableObservation() {\n disabled = true;\n}\nfunction enableObservation() {\n disabled = false;\n}\nvar mo = null;\nfunction observe(options) {\n if (!MUTATION_OBSERVER) {\n return;\n }\n\n if (!config.observeMutations) {\n return;\n }\n\n var _options$treeCallback = options.treeCallback,\n treeCallback = _options$treeCallback === void 0 ? noop$2 : _options$treeCallback,\n _options$nodeCallback = options.nodeCallback,\n nodeCallback = _options$nodeCallback === void 0 ? noop$2 : _options$nodeCallback,\n _options$pseudoElemen = options.pseudoElementsCallback,\n pseudoElementsCallback = _options$pseudoElemen === void 0 ? noop$2 : _options$pseudoElemen,\n _options$observeMutat = options.observeMutationsRoot,\n observeMutationsRoot = _options$observeMutat === void 0 ? DOCUMENT : _options$observeMutat;\n mo = new MUTATION_OBSERVER(function (objects) {\n if (disabled) return;\n var defaultPrefix = getDefaultUsablePrefix();\n toArray(objects).forEach(function (mutationRecord) {\n if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {\n if (config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target);\n }\n\n treeCallback(mutationRecord.target);\n }\n\n if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target.parentNode);\n }\n\n if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {\n if (mutationRecord.attributeName === 'class' && hasPrefixAndIcon(mutationRecord.target)) {\n var _getCanonicalIcon = getCanonicalIcon(classArray(mutationRecord.target)),\n prefix = _getCanonicalIcon.prefix,\n iconName = _getCanonicalIcon.iconName;\n\n mutationRecord.target.setAttribute(DATA_PREFIX, prefix || defaultPrefix);\n if (iconName) mutationRecord.target.setAttribute(DATA_ICON, iconName);\n } else if (hasBeenReplaced(mutationRecord.target)) {\n nodeCallback(mutationRecord.target);\n }\n }\n });\n });\n if (!IS_DOM) return;\n mo.observe(observeMutationsRoot, {\n childList: true,\n attributes: true,\n characterData: true,\n subtree: true\n });\n}\nfunction disconnect() {\n if (!mo) return;\n mo.disconnect();\n}\n\nfunction styleParser (node) {\n var style = node.getAttribute('style');\n var val = [];\n\n if (style) {\n val = style.split(';').reduce(function (acc, style) {\n var styles = style.split(':');\n var prop = styles[0];\n var value = styles.slice(1);\n\n if (prop && value.length > 0) {\n acc[prop] = value.join(':').trim();\n }\n\n return acc;\n }, {});\n }\n\n return val;\n}\n\nfunction classParser (node) {\n var existingPrefix = node.getAttribute('data-prefix');\n var existingIconName = node.getAttribute('data-icon');\n var innerText = node.innerText !== undefined ? node.innerText.trim() : '';\n var val = getCanonicalIcon(classArray(node));\n\n if (!val.prefix) {\n val.prefix = getDefaultUsablePrefix();\n }\n\n if (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n\n if (val.iconName && val.prefix) {\n return val;\n }\n\n if (val.prefix && innerText.length > 0) {\n val.iconName = byLigature(val.prefix, node.innerText) || byUnicode(val.prefix, toHex(node.innerText));\n }\n\n if (!val.iconName && config.autoFetchSvg && node.firstChild && node.firstChild.nodeType === Node.TEXT_NODE) {\n val.iconName = node.firstChild.data;\n }\n\n return val;\n}\n\nfunction attributesParser (node) {\n var extraAttributes = toArray(node.attributes).reduce(function (acc, attr) {\n if (acc.name !== 'class' && acc.name !== 'style') {\n acc[attr.name] = attr.value;\n }\n\n return acc;\n }, {});\n var title = node.getAttribute('title');\n var titleId = node.getAttribute('data-fa-title-id');\n\n if (config.autoA11y) {\n if (title) {\n extraAttributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n extraAttributes['aria-hidden'] = 'true';\n extraAttributes['focusable'] = 'false';\n }\n }\n\n return extraAttributes;\n}\n\nfunction blankMeta() {\n return {\n iconName: null,\n title: null,\n titleId: null,\n prefix: null,\n transform: meaninglessTransform,\n symbol: false,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n var parser = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n styleParser: true\n };\n\n var _classParser = classParser(node),\n iconName = _classParser.iconName,\n prefix = _classParser.prefix,\n extraClasses = _classParser.rest;\n\n var extraAttributes = attributesParser(node);\n var pluginMeta = chainHooks('parseNodeAttributes', {}, node);\n var extraStyles = parser.styleParser ? styleParser(node) : [];\n return _objectSpread2({\n iconName: iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix: prefix,\n transform: meaninglessTransform,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n symbol: false,\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n }\n }, pluginMeta);\n}\n\nvar styles$2 = namespace.styles;\n\nfunction generateMutation(node) {\n var nodeMeta = config.autoReplaceSvg === 'nest' ? parseMeta(node, {\n styleParser: false\n }) : parseMeta(node);\n\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return callProvided('generateLayersText', node, nodeMeta);\n } else {\n return callProvided('generateSvgReplacementMutation', node, nodeMeta);\n }\n}\n\nvar knownPrefixes = new Set();\nFAMILIES.map(function (family) {\n knownPrefixes.add(\"fa-\".concat(family));\n});\nObject.keys(PREFIX_TO_STYLE[FAMILY_CLASSIC]).map(knownPrefixes.add.bind(knownPrefixes));\nObject.keys(PREFIX_TO_STYLE[FAMILY_SHARP]).map(knownPrefixes.add.bind(knownPrefixes));\nknownPrefixes = _toConsumableArray(knownPrefixes);\n\nfunction onTree(root) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return Promise.resolve();\n var htmlClassList = DOCUMENT.documentElement.classList;\n\n var hclAdd = function hclAdd(suffix) {\n return htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var hclRemove = function hclRemove(suffix) {\n return htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var prefixes = config.autoFetchSvg ? knownPrefixes : FAMILIES.map(function (f) {\n return \"fa-\".concat(f);\n }).concat(Object.keys(styles$2));\n\n if (!prefixes.includes('fa')) {\n prefixes.push('fa');\n }\n\n var prefixesDomQuery = [\".\".concat(LAYERS_TEXT_CLASSNAME, \":not([\").concat(DATA_FA_I2SVG, \"])\")].concat(prefixes.map(function (p) {\n return \".\".concat(p, \":not([\").concat(DATA_FA_I2SVG, \"])\");\n })).join(', ');\n\n if (prefixesDomQuery.length === 0) {\n return Promise.resolve();\n }\n\n var candidates = [];\n\n try {\n candidates = toArray(root.querySelectorAll(prefixesDomQuery));\n } catch (e) {// noop\n }\n\n if (candidates.length > 0) {\n hclAdd('pending');\n hclRemove('complete');\n } else {\n return Promise.resolve();\n }\n\n var mark = perf.begin('onTree');\n var mutations = candidates.reduce(function (acc, node) {\n try {\n var mutation = generateMutation(node);\n\n if (mutation) {\n acc.push(mutation);\n }\n } catch (e) {\n if (!PRODUCTION) {\n if (e.name === 'MissingIcon') {\n console.error(e);\n }\n }\n }\n\n return acc;\n }, []);\n return new Promise(function (resolve, reject) {\n Promise.all(mutations).then(function (resolvedMutations) {\n perform(resolvedMutations, function () {\n hclAdd('active');\n hclAdd('complete');\n hclRemove('pending');\n if (typeof callback === 'function') callback();\n mark();\n resolve();\n });\n }).catch(function (e) {\n mark();\n reject(e);\n });\n });\n}\n\nfunction onNode(node) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n generateMutation(node).then(function (mutation) {\n if (mutation) {\n perform([mutation], callback);\n }\n });\n}\n\nfunction resolveIcons(next) {\n return function (maybeIconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});\n var mask = params.mask;\n\n if (mask) {\n mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});\n }\n\n return next(iconDefinition, _objectSpread2(_objectSpread2({}, params), {}, {\n mask: mask\n }));\n };\n}\n\nvar render = function render(iconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform = params.transform,\n transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,\n _params$symbol = params.symbol,\n symbol = _params$symbol === void 0 ? false : _params$symbol,\n _params$mask = params.mask,\n mask = _params$mask === void 0 ? null : _params$mask,\n _params$maskId = params.maskId,\n maskId = _params$maskId === void 0 ? null : _params$maskId,\n _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$titleId = params.titleId,\n titleId = _params$titleId === void 0 ? null : _params$titleId,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n if (!iconDefinition) return;\n var prefix = iconDefinition.prefix,\n iconName = iconDefinition.iconName,\n icon = iconDefinition.icon;\n return domVariants(_objectSpread2({\n type: 'icon'\n }, iconDefinition), function () {\n callHooks('beforeDOMElementCreation', {\n iconDefinition: iconDefinition,\n params: params\n });\n\n if (config.autoA11y) {\n if (title) {\n attributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n attributes['aria-hidden'] = 'true';\n attributes['focusable'] = 'false';\n }\n }\n\n return makeInlineSvgAbstract({\n icons: {\n main: asFoundIcon(icon),\n mask: mask ? asFoundIcon(mask.icon) : {\n found: false,\n width: null,\n height: null,\n icon: {}\n }\n },\n prefix: prefix,\n iconName: iconName,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n symbol: symbol,\n title: title,\n maskId: maskId,\n titleId: titleId,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: classes\n }\n });\n });\n};\nvar ReplaceElements = {\n mixout: function mixout() {\n return {\n icon: resolveIcons(render)\n };\n },\n hooks: function hooks() {\n return {\n mutationObserverCallbacks: function mutationObserverCallbacks(accumulator) {\n accumulator.treeCallback = onTree;\n accumulator.nodeCallback = onNode;\n return accumulator;\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.i2svg = function (params) {\n var _params$node = params.node,\n node = _params$node === void 0 ? DOCUMENT : _params$node,\n _params$callback = params.callback,\n callback = _params$callback === void 0 ? function () {} : _params$callback;\n return onTree(node, callback);\n };\n\n providers$$1.generateSvgReplacementMutation = function (node, nodeMeta) {\n var iconName = nodeMeta.iconName,\n title = nodeMeta.title,\n titleId = nodeMeta.titleId,\n prefix = nodeMeta.prefix,\n transform = nodeMeta.transform,\n symbol = nodeMeta.symbol,\n mask = nodeMeta.mask,\n maskId = nodeMeta.maskId,\n extra = nodeMeta.extra;\n return new Promise(function (resolve, reject) {\n Promise.all([findIcon(iconName, prefix), mask.iconName ? findIcon(mask.iconName, mask.prefix) : Promise.resolve({\n found: false,\n width: 512,\n height: 512,\n icon: {}\n })]).then(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n main = _ref2[0],\n mask = _ref2[1];\n\n resolve([node, makeInlineSvgAbstract({\n icons: {\n main: main,\n mask: mask\n },\n prefix: prefix,\n iconName: iconName,\n transform: transform,\n symbol: symbol,\n maskId: maskId,\n title: title,\n titleId: titleId,\n extra: extra,\n watchable: true\n })]);\n }).catch(reject);\n });\n };\n\n providers$$1.generateAbstractIcon = function (_ref3) {\n var children = _ref3.children,\n attributes = _ref3.attributes,\n main = _ref3.main,\n transform = _ref3.transform,\n styles = _ref3.styles;\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var nextChild;\n\n if (transformIsMeaningful(transform)) {\n nextChild = callProvided('generateAbstractTransformGrouping', {\n main: main,\n transform: transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n }\n\n children.push(nextChild || main.icon);\n return {\n children: children,\n attributes: attributes\n };\n };\n }\n};\n\nvar Layers = {\n mixout: function mixout() {\n return {\n layer: function layer(assembler) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes;\n return domVariants({\n type: 'layer'\n }, function () {\n callHooks('beforeDOMElementCreation', {\n assembler: assembler,\n params: params\n });\n var children = [];\n assembler(function (args) {\n Array.isArray(args) ? args.map(function (a) {\n children = children.concat(a.abstract);\n }) : children = children.concat(args.abstract);\n });\n return [{\n tag: 'span',\n attributes: {\n class: [\"\".concat(config.cssPrefix, \"-layers\")].concat(_toConsumableArray(classes)).join(' ')\n },\n children: children\n }];\n });\n }\n };\n }\n};\n\nvar LayersCounter = {\n mixout: function mixout() {\n return {\n counter: function counter(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n return domVariants({\n type: 'counter',\n content: content\n }, function () {\n callHooks('beforeDOMElementCreation', {\n content: content,\n params: params\n });\n return makeLayersCounterAbstract({\n content: content.toString(),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-counter\")].concat(_toConsumableArray(classes))\n }\n });\n });\n }\n };\n }\n};\n\nvar LayersText = {\n mixout: function mixout() {\n return {\n text: function text(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform = params.transform,\n transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,\n _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n return domVariants({\n type: 'text',\n content: content\n }, function () {\n callHooks('beforeDOMElementCreation', {\n content: content,\n params: params\n });\n return makeLayersTextAbstract({\n content: content,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-text\")].concat(_toConsumableArray(classes))\n }\n });\n });\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.generateLayersText = function (node, nodeMeta) {\n var title = nodeMeta.title,\n transform = nodeMeta.transform,\n extra = nodeMeta.extra;\n var width = null;\n var height = null;\n\n if (IS_IE) {\n var computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);\n var boundingClientRect = node.getBoundingClientRect();\n width = boundingClientRect.width / computedFontSize;\n height = boundingClientRect.height / computedFontSize;\n }\n\n if (config.autoA11y && !title) {\n extra.attributes['aria-hidden'] = 'true';\n }\n\n return Promise.resolve([node, makeLayersTextAbstract({\n content: node.innerHTML,\n width: width,\n height: height,\n transform: transform,\n title: title,\n extra: extra,\n watchable: true\n })]);\n };\n }\n};\n\nvar CLEAN_CONTENT_PATTERN = new RegExp(\"\\\"\", 'ug');\nvar SECONDARY_UNICODE_RANGE = [1105920, 1112319];\nfunction hexValueFromContent(content) {\n var cleaned = content.replace(CLEAN_CONTENT_PATTERN, '');\n var codePoint = codePointAt(cleaned, 0);\n var isPrependTen = codePoint >= SECONDARY_UNICODE_RANGE[0] && codePoint <= SECONDARY_UNICODE_RANGE[1];\n var isDoubled = cleaned.length === 2 ? cleaned[0] === cleaned[1] : false;\n return {\n value: isDoubled ? toHex(cleaned[0]) : toHex(cleaned),\n isSecondary: isPrependTen || isDoubled\n };\n}\n\nfunction replaceForPosition(node, position) {\n var pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new Promise(function (resolve, reject) {\n if (node.getAttribute(pendingAttribute) !== null) {\n // This node is already being processed\n return resolve();\n }\n\n var children = toArray(node.children);\n var alreadyProcessedPseudoElement = children.filter(function (c) {\n return c.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position;\n })[0];\n var styles = WINDOW.getComputedStyle(node, position);\n var fontFamily = styles.getPropertyValue('font-family').match(FONT_FAMILY_PATTERN);\n var fontWeight = styles.getPropertyValue('font-weight');\n var content = styles.getPropertyValue('content');\n\n if (alreadyProcessedPseudoElement && !fontFamily) {\n // If we've already processed it but the current computed style does not result in a font-family,\n // that probably means that a class name that was previously present to make the icon has been\n // removed. So we now should delete the icon.\n node.removeChild(alreadyProcessedPseudoElement);\n return resolve();\n } else if (fontFamily && content !== 'none' && content !== '') {\n var _content = styles.getPropertyValue('content');\n\n var family = ~['Sharp'].indexOf(fontFamily[2]) ? FAMILY_SHARP : FAMILY_CLASSIC;\n var prefix = ~['Solid', 'Regular', 'Light', 'Thin', 'Duotone', 'Brands', 'Kit'].indexOf(fontFamily[2]) ? STYLE_TO_PREFIX[family][fontFamily[2].toLowerCase()] : FONT_WEIGHT_TO_PREFIX[family][fontWeight];\n\n var _hexValueFromContent = hexValueFromContent(_content),\n hexValue = _hexValueFromContent.value,\n isSecondary = _hexValueFromContent.isSecondary;\n\n var isV4 = fontFamily[0].startsWith('FontAwesome');\n var iconName = byUnicode(prefix, hexValue);\n var iconIdentifier = iconName;\n\n if (isV4) {\n var iconName4 = byOldUnicode(hexValue);\n\n if (iconName4.iconName && iconName4.prefix) {\n iconName = iconName4.iconName;\n prefix = iconName4.prefix;\n }\n } // Only convert the pseudo element in this ::before/::after position into an icon if we haven't\n // already done so with the same prefix and iconName\n\n\n if (iconName && !isSecondary && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {\n node.setAttribute(pendingAttribute, iconIdentifier);\n\n if (alreadyProcessedPseudoElement) {\n // Delete the old one, since we're replacing it with a new one\n node.removeChild(alreadyProcessedPseudoElement);\n }\n\n var meta = blankMeta();\n var extra = meta.extra;\n extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;\n findIcon(iconName, prefix).then(function (main) {\n var _abstract = makeInlineSvgAbstract(_objectSpread2(_objectSpread2({}, meta), {}, {\n icons: {\n main: main,\n mask: emptyCanonicalIcon()\n },\n prefix: prefix,\n iconName: iconIdentifier,\n extra: extra,\n watchable: true\n }));\n\n var element = DOCUMENT.createElementNS('http://www.w3.org/2000/svg', 'svg');\n\n if (position === '::before') {\n node.insertBefore(element, node.firstChild);\n } else {\n node.appendChild(element);\n }\n\n element.outerHTML = _abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.removeAttribute(pendingAttribute);\n resolve();\n }).catch(reject);\n } else {\n resolve();\n }\n } else {\n resolve();\n }\n });\n}\n\nfunction replace(node) {\n return Promise.all([replaceForPosition(node, '::before'), replaceForPosition(node, '::after')]);\n}\n\nfunction processable(node) {\n return node.parentNode !== document.head && !~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(node.tagName.toUpperCase()) && !node.getAttribute(DATA_FA_PSEUDO_ELEMENT) && (!node.parentNode || node.parentNode.tagName !== 'svg');\n}\n\nfunction searchPseudoElements(root) {\n if (!IS_DOM) return;\n return new Promise(function (resolve, reject) {\n var operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n var end = perf.begin('searchPseudoElements');\n disableObservation();\n Promise.all(operations).then(function () {\n end();\n enableObservation();\n resolve();\n }).catch(function () {\n end();\n enableObservation();\n reject();\n });\n });\n}\n\nvar PseudoElements = {\n hooks: function hooks() {\n return {\n mutationObserverCallbacks: function mutationObserverCallbacks(accumulator) {\n accumulator.pseudoElementsCallback = searchPseudoElements;\n return accumulator;\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.pseudoElements2svg = function (params) {\n var _params$node = params.node,\n node = _params$node === void 0 ? DOCUMENT : _params$node;\n\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n };\n }\n};\n\nvar _unwatched = false;\nvar MutationObserver$1 = {\n mixout: function mixout() {\n return {\n dom: {\n unwatch: function unwatch() {\n disableObservation();\n _unwatched = true;\n }\n }\n };\n },\n hooks: function hooks() {\n return {\n bootstrap: function bootstrap() {\n observe(chainHooks('mutationObserverCallbacks', {}));\n },\n noAuto: function noAuto() {\n disconnect();\n },\n watch: function watch(params) {\n var observeMutationsRoot = params.observeMutationsRoot;\n\n if (_unwatched) {\n enableObservation();\n } else {\n observe(chainHooks('mutationObserverCallbacks', {\n observeMutationsRoot: observeMutationsRoot\n }));\n }\n }\n };\n }\n};\n\nvar parseTransformString = function parseTransformString(transformString) {\n var transform = {\n size: 16,\n x: 0,\n y: 0,\n flipX: false,\n flipY: false,\n rotate: 0\n };\n return transformString.toLowerCase().split(' ').reduce(function (acc, n) {\n var parts = n.toLowerCase().split('-');\n var first = parts[0];\n var rest = parts.slice(1).join('-');\n\n if (first && rest === 'h') {\n acc.flipX = true;\n return acc;\n }\n\n if (first && rest === 'v') {\n acc.flipY = true;\n return acc;\n }\n\n rest = parseFloat(rest);\n\n if (isNaN(rest)) {\n return acc;\n }\n\n switch (first) {\n case 'grow':\n acc.size = acc.size + rest;\n break;\n\n case 'shrink':\n acc.size = acc.size - rest;\n break;\n\n case 'left':\n acc.x = acc.x - rest;\n break;\n\n case 'right':\n acc.x = acc.x + rest;\n break;\n\n case 'up':\n acc.y = acc.y - rest;\n break;\n\n case 'down':\n acc.y = acc.y + rest;\n break;\n\n case 'rotate':\n acc.rotate = acc.rotate + rest;\n break;\n }\n\n return acc;\n }, transform);\n};\nvar PowerTransforms = {\n mixout: function mixout() {\n return {\n parse: {\n transform: function transform(transformString) {\n return parseTransformString(transformString);\n }\n }\n };\n },\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var transformString = node.getAttribute('data-fa-transform');\n\n if (transformString) {\n accumulator.transform = parseTransformString(transformString);\n }\n\n return accumulator;\n }\n };\n },\n provides: function provides(providers) {\n providers.generateAbstractTransformGrouping = function (_ref) {\n var main = _ref.main,\n transform = _ref.transform,\n containerWidth = _ref.containerWidth,\n iconWidth = _ref.iconWidth;\n var outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n var innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n var innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n var innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n var inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n var path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n var operations = {\n outer: outer,\n inner: inner,\n path: path\n };\n return {\n tag: 'g',\n attributes: _objectSpread2({}, operations.outer),\n children: [{\n tag: 'g',\n attributes: _objectSpread2({}, operations.inner),\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: _objectSpread2(_objectSpread2({}, main.icon.attributes), operations.path)\n }]\n }]\n };\n };\n }\n};\n\nvar ALL_SPACE = {\n x: 0,\n y: 0,\n width: '100%',\n height: '100%'\n};\n\nfunction fillBlack(_abstract) {\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (_abstract.attributes && (_abstract.attributes.fill || force)) {\n _abstract.attributes.fill = 'black';\n }\n\n return _abstract;\n}\n\nfunction deGroup(_abstract2) {\n if (_abstract2.tag === 'g') {\n return _abstract2.children;\n } else {\n return [_abstract2];\n }\n}\n\nvar Masks = {\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var maskData = node.getAttribute('data-fa-mask');\n var mask = !maskData ? emptyCanonicalIcon() : getCanonicalIcon(maskData.split(' ').map(function (i) {\n return i.trim();\n }));\n\n if (!mask.prefix) {\n mask.prefix = getDefaultUsablePrefix();\n }\n\n accumulator.mask = mask;\n accumulator.maskId = node.getAttribute('data-fa-mask-id');\n return accumulator;\n }\n };\n },\n provides: function provides(providers) {\n providers.generateAbstractMask = function (_ref) {\n var children = _ref.children,\n attributes = _ref.attributes,\n main = _ref.main,\n mask = _ref.mask,\n explicitMaskId = _ref.maskId,\n transform = _ref.transform;\n var mainWidth = main.width,\n mainPath = main.icon;\n var maskWidth = mask.width,\n maskPath = mask.icon;\n var trans = transformForSvg({\n transform: transform,\n containerWidth: maskWidth,\n iconWidth: mainWidth\n });\n var maskRect = {\n tag: 'rect',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n fill: 'white'\n })\n };\n var maskInnerGroupChildrenMixin = mainPath.children ? {\n children: mainPath.children.map(fillBlack)\n } : {};\n var maskInnerGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.inner),\n children: [fillBlack(_objectSpread2({\n tag: mainPath.tag,\n attributes: _objectSpread2(_objectSpread2({}, mainPath.attributes), trans.path)\n }, maskInnerGroupChildrenMixin))]\n };\n var maskOuterGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.outer),\n children: [maskInnerGroup]\n };\n var maskId = \"mask-\".concat(explicitMaskId || nextUniqueId());\n var clipId = \"clip-\".concat(explicitMaskId || nextUniqueId());\n var maskTag = {\n tag: 'mask',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n id: maskId,\n maskUnits: 'userSpaceOnUse',\n maskContentUnits: 'userSpaceOnUse'\n }),\n children: [maskRect, maskOuterGroup]\n };\n var defs = {\n tag: 'defs',\n children: [{\n tag: 'clipPath',\n attributes: {\n id: clipId\n },\n children: deGroup(maskPath)\n }, maskTag]\n };\n children.push(defs, {\n tag: 'rect',\n attributes: _objectSpread2({\n fill: 'currentColor',\n 'clip-path': \"url(#\".concat(clipId, \")\"),\n mask: \"url(#\".concat(maskId, \")\")\n }, ALL_SPACE)\n });\n return {\n children: children,\n attributes: attributes\n };\n };\n }\n};\n\nvar MissingIconIndicator = {\n provides: function provides(providers) {\n var reduceMotion = false;\n\n if (WINDOW.matchMedia) {\n reduceMotion = WINDOW.matchMedia('(prefers-reduced-motion: reduce)').matches;\n }\n\n providers.missingIconAbstract = function () {\n var gChildren = [];\n var FILL = {\n fill: 'currentColor'\n };\n var ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n }; // Ring\n\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n d: 'M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z'\n })\n });\n\n var OPACITY_ANIMATE = _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'opacity'\n });\n\n var dot = {\n tag: 'circle',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n cx: '256',\n cy: '364',\n r: '28'\n }),\n children: []\n };\n\n if (!reduceMotion) {\n dot.children.push({\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n })\n }, {\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;1;1;0;1;'\n })\n });\n }\n\n gChildren.push(dot);\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '1',\n d: 'M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z'\n }),\n children: reduceMotion ? [] : [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;0;0;0;1;'\n })\n }]\n });\n\n if (!reduceMotion) {\n // Exclamation\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '0',\n d: 'M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '0;0;1;1;0;0;'\n })\n }]\n });\n }\n\n return {\n tag: 'g',\n attributes: {\n 'class': 'missing'\n },\n children: gChildren\n };\n };\n }\n};\n\nvar SvgSymbols = {\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var symbolData = node.getAttribute('data-fa-symbol');\n var symbol = symbolData === null ? false : symbolData === '' ? true : symbolData;\n accumulator['symbol'] = symbol;\n return accumulator;\n }\n };\n }\n};\n\nvar plugins = [InjectCSS, ReplaceElements, Layers, LayersCounter, LayersText, PseudoElements, MutationObserver$1, PowerTransforms, Masks, MissingIconIndicator, SvgSymbols];\n\nregisterPlugins(plugins, {\n mixoutsTo: api\n});\nvar noAuto$1 = api.noAuto;\nvar config$1 = api.config;\nvar library$1 = api.library;\nvar dom$1 = api.dom;\nvar parse$1 = api.parse;\nvar findIconDefinition$1 = api.findIconDefinition;\nvar toHtml$1 = api.toHtml;\nvar icon = api.icon;\nvar layer = api.layer;\nvar text = api.text;\nvar counter = api.counter;\n\nexport { noAuto$1 as noAuto, config$1 as config, library$1 as library, dom$1 as dom, parse$1 as parse, findIconDefinition$1 as findIconDefinition, toHtml$1 as toHtml, icon, layer, text, counter, api };\n","import { parse, icon } from '@fortawesome/fontawesome-svg-core';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\n// Get CSS class list from a props object\nfunction classList(props) {\n var _classes;\n\n var beat = props.beat,\n fade = props.fade,\n beatFade = props.beatFade,\n bounce = props.bounce,\n shake = props.shake,\n flash = props.flash,\n spin = props.spin,\n spinPulse = props.spinPulse,\n spinReverse = props.spinReverse,\n pulse = props.pulse,\n fixedWidth = props.fixedWidth,\n inverse = props.inverse,\n border = props.border,\n listItem = props.listItem,\n flip = props.flip,\n size = props.size,\n rotation = props.rotation,\n pull = props.pull; // map of CSS class names to properties\n\n var classes = (_classes = {\n 'fa-beat': beat,\n 'fa-fade': fade,\n 'fa-beat-fade': beatFade,\n 'fa-bounce': bounce,\n 'fa-shake': shake,\n 'fa-flash': flash,\n 'fa-spin': spin,\n 'fa-spin-reverse': spinReverse,\n 'fa-spin-pulse': spinPulse,\n 'fa-pulse': pulse,\n 'fa-fw': fixedWidth,\n 'fa-inverse': inverse,\n 'fa-border': border,\n 'fa-li': listItem,\n 'fa-flip': flip === true,\n 'fa-flip-horizontal': flip === 'horizontal' || flip === 'both',\n 'fa-flip-vertical': flip === 'vertical' || flip === 'both'\n }, _defineProperty(_classes, \"fa-\".concat(size), typeof size !== 'undefined' && size !== null), _defineProperty(_classes, \"fa-rotate-\".concat(rotation), typeof rotation !== 'undefined' && rotation !== null && rotation !== 0), _defineProperty(_classes, \"fa-pull-\".concat(pull), typeof pull !== 'undefined' && pull !== null), _defineProperty(_classes, 'fa-swap-opacity', props.swapOpacity), _classes); // map over all the keys in the classes object\n // return an array of the keys where the value for the key is not null\n\n return Object.keys(classes).map(function (key) {\n return classes[key] ? key : null;\n }).filter(function (key) {\n return key;\n });\n}\n\n// Camelize taken from humps\n// humps is copyright © 2012+ Dom Christie\n// Released under the MIT license.\n// Performant way to determine if object coerces to a number\nfunction _isNumerical(obj) {\n obj = obj - 0; // eslint-disable-next-line no-self-compare\n\n return obj === obj;\n}\n\nfunction camelize(string) {\n if (_isNumerical(string)) {\n return string;\n } // eslint-disable-next-line no-useless-escape\n\n\n string = string.replace(/[\\-_\\s]+(.)?/g, function (match, chr) {\n return chr ? chr.toUpperCase() : '';\n }); // Ensure 1st char is always lowercase\n\n return string.substr(0, 1).toLowerCase() + string.substr(1);\n}\n\nvar _excluded = [\"style\"];\n\nfunction capitalize(val) {\n return val.charAt(0).toUpperCase() + val.slice(1);\n}\n\nfunction styleToObject(style) {\n return style.split(';').map(function (s) {\n return s.trim();\n }).filter(function (s) {\n return s;\n }).reduce(function (acc, pair) {\n var i = pair.indexOf(':');\n var prop = camelize(pair.slice(0, i));\n var value = pair.slice(i + 1).trim();\n prop.startsWith('webkit') ? acc[capitalize(prop)] = value : acc[prop] = value;\n return acc;\n }, {});\n}\n\nfunction convert(createElement, element) {\n var extraProps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (typeof element === 'string') {\n return element;\n }\n\n var children = (element.children || []).map(function (child) {\n return convert(createElement, child);\n });\n /* eslint-disable dot-notation */\n\n var mixins = Object.keys(element.attributes || {}).reduce(function (acc, key) {\n var val = element.attributes[key];\n\n switch (key) {\n case 'class':\n acc.attrs['className'] = val;\n delete element.attributes['class'];\n break;\n\n case 'style':\n acc.attrs['style'] = styleToObject(val);\n break;\n\n default:\n if (key.indexOf('aria-') === 0 || key.indexOf('data-') === 0) {\n acc.attrs[key.toLowerCase()] = val;\n } else {\n acc.attrs[camelize(key)] = val;\n }\n\n }\n\n return acc;\n }, {\n attrs: {}\n });\n\n var _extraProps$style = extraProps.style,\n existingStyle = _extraProps$style === void 0 ? {} : _extraProps$style,\n remaining = _objectWithoutProperties(extraProps, _excluded);\n\n mixins.attrs['style'] = _objectSpread2(_objectSpread2({}, mixins.attrs['style']), existingStyle);\n /* eslint-enable */\n\n return createElement.apply(void 0, [element.tag, _objectSpread2(_objectSpread2({}, mixins.attrs), remaining)].concat(_toConsumableArray(children)));\n}\n\nvar PRODUCTION = false;\n\ntry {\n PRODUCTION = process.env.NODE_ENV === 'production';\n} catch (e) {}\n\nfunction log () {\n if (!PRODUCTION && console && typeof console.error === 'function') {\n var _console;\n\n (_console = console).error.apply(_console, arguments);\n }\n}\n\nfunction normalizeIconArgs(icon) {\n // this has everything that it needs to be rendered which means it was probably imported\n // directly from an icon svg package\n if (icon && _typeof(icon) === 'object' && icon.prefix && icon.iconName && icon.icon) {\n return icon;\n }\n\n if (parse.icon) {\n return parse.icon(icon);\n } // if the icon is null, there's nothing to do\n\n\n if (icon === null) {\n return null;\n } // if the icon is an object and has a prefix and an icon name, return it\n\n\n if (icon && _typeof(icon) === 'object' && icon.prefix && icon.iconName) {\n return icon;\n } // if it's an array with length of two\n\n\n if (Array.isArray(icon) && icon.length === 2) {\n // use the first item as prefix, second as icon name\n return {\n prefix: icon[0],\n iconName: icon[1]\n };\n } // if it's a string, use it as the icon name\n\n\n if (typeof icon === 'string') {\n return {\n prefix: 'fas',\n iconName: icon\n };\n }\n}\n\n// creates an object with a key of key\n// and a value of value\n// if certain conditions are met\nfunction objectWithKey(key, value) {\n // if the value is a non-empty array\n // or it's not an array but it is truthy\n // then create the object with the key and the value\n // if not, return an empty array\n return Array.isArray(value) && value.length > 0 || !Array.isArray(value) && value ? _defineProperty({}, key, value) : {};\n}\n\nvar defaultProps = {\n border: false,\n className: '',\n mask: null,\n maskId: null,\n fixedWidth: false,\n inverse: false,\n flip: false,\n icon: null,\n listItem: false,\n pull: null,\n pulse: false,\n rotation: null,\n size: null,\n spin: false,\n spinPulse: false,\n spinReverse: false,\n beat: false,\n fade: false,\n beatFade: false,\n bounce: false,\n shake: false,\n symbol: false,\n title: '',\n titleId: null,\n transform: null,\n swapOpacity: false\n};\nvar FontAwesomeIcon = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var allProps = _objectSpread2(_objectSpread2({}, defaultProps), props);\n\n var iconArgs = allProps.icon,\n maskArgs = allProps.mask,\n symbol = allProps.symbol,\n className = allProps.className,\n title = allProps.title,\n titleId = allProps.titleId,\n maskId = allProps.maskId;\n var iconLookup = normalizeIconArgs(iconArgs);\n var classes = objectWithKey('classes', [].concat(_toConsumableArray(classList(allProps)), _toConsumableArray(className.split(' '))));\n var transform = objectWithKey('transform', typeof allProps.transform === 'string' ? parse.transform(allProps.transform) : allProps.transform);\n var mask = objectWithKey('mask', normalizeIconArgs(maskArgs));\n var renderedIcon = icon(iconLookup, _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, classes), transform), mask), {}, {\n symbol: symbol,\n title: title,\n titleId: titleId,\n maskId: maskId\n }));\n\n if (!renderedIcon) {\n log('Could not find icon', iconLookup);\n return null;\n }\n\n var abstract = renderedIcon.abstract;\n var extraProps = {\n ref: ref\n };\n Object.keys(allProps).forEach(function (key) {\n // eslint-disable-next-line no-prototype-builtins\n if (!defaultProps.hasOwnProperty(key)) {\n extraProps[key] = allProps[key];\n }\n });\n return convertCurry(abstract[0], extraProps);\n});\nFontAwesomeIcon.displayName = 'FontAwesomeIcon';\nFontAwesomeIcon.propTypes = {\n beat: PropTypes.bool,\n border: PropTypes.bool,\n beatFade: PropTypes.bool,\n bounce: PropTypes.bool,\n className: PropTypes.string,\n fade: PropTypes.bool,\n flash: PropTypes.bool,\n mask: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),\n maskId: PropTypes.string,\n fixedWidth: PropTypes.bool,\n inverse: PropTypes.bool,\n flip: PropTypes.oneOf([true, false, 'horizontal', 'vertical', 'both']),\n icon: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),\n listItem: PropTypes.bool,\n pull: PropTypes.oneOf(['right', 'left']),\n pulse: PropTypes.bool,\n rotation: PropTypes.oneOf([0, 90, 180, 270]),\n shake: PropTypes.bool,\n size: PropTypes.oneOf(['2xs', 'xs', 'sm', 'lg', 'xl', '2xl', '1x', '2x', '3x', '4x', '5x', '6x', '7x', '8x', '9x', '10x']),\n spin: PropTypes.bool,\n spinPulse: PropTypes.bool,\n spinReverse: PropTypes.bool,\n symbol: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),\n title: PropTypes.string,\n titleId: PropTypes.string,\n transform: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n swapOpacity: PropTypes.bool\n};\nvar convertCurry = convert.bind(null, React.createElement);\n\nexport { FontAwesomeIcon };\n","var prefix = \"fas\";\nvar fa0 = {\n prefix: 'fas',\n iconName: '0',\n icon: [320, 512, [], \"30\", \"M0 192C0 103.6 71.6 32 160 32s160 71.6 160 160V320c0 88.4-71.6 160-160 160S0 408.4 0 320V192zM160 96c-53 0-96 43-96 96V320c0 53 43 96 96 96s96-43 96-96V192c0-53-43-96-96-96z\"]\n};\nvar fa1 = {\n prefix: 'fas',\n iconName: '1',\n icon: [256, 512, [], \"31\", \"M160 64c0-11.8-6.5-22.6-16.9-28.2s-23-5-32.8 1.6l-96 64C-.5 111.2-4.4 131 5.4 145.8s29.7 18.7 44.4 8.9L96 123.8V416H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h96 96c17.7 0 32-14.3 32-32s-14.3-32-32-32H160V64z\"]\n};\nvar fa2 = {\n prefix: 'fas',\n iconName: '2',\n icon: [320, 512, [], \"32\", \"M142.9 96c-21.5 0-42.2 8.5-57.4 23.8L54.6 150.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L40.2 74.5C67.5 47.3 104.4 32 142.9 32C223 32 288 97 288 177.1c0 38.5-15.3 75.4-42.5 102.6L109.3 416H288c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9L200.2 234.5c15.2-15.2 23.8-35.9 23.8-57.4c0-44.8-36.3-81.1-81.1-81.1z\"]\n};\nvar fa3 = {\n prefix: 'fas',\n iconName: '3',\n icon: [320, 512, [], \"33\", \"M0 64C0 46.3 14.3 32 32 32H272c13.2 0 25 8.1 29.8 20.4s1.5 26.3-8.2 35.2L162.3 208H184c75.1 0 136 60.9 136 136s-60.9 136-136 136H105.4C63 480 24.2 456 5.3 418.1l-1.9-3.8c-7.9-15.8-1.5-35 14.3-42.9s35-1.5 42.9 14.3l1.9 3.8c8.1 16.3 24.8 26.5 42.9 26.5H184c39.8 0 72-32.2 72-72s-32.2-72-72-72H80c-13.2 0-25-8.1-29.8-20.4s-1.5-26.3 8.2-35.2L189.7 96H32C14.3 96 0 81.7 0 64z\"]\n};\nvar fa4 = {\n prefix: 'fas',\n iconName: '4',\n icon: [384, 512, [], \"34\", \"M189 77.6c7.5-16 .7-35.1-15.3-42.6s-35.1-.7-42.6 15.3L3 322.4c-4.7 9.9-3.9 21.5 1.9 30.8S21 368 32 368H256v80c0 17.7 14.3 32 32 32s32-14.3 32-32V368h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H320V160c0-17.7-14.3-32-32-32s-32 14.3-32 32V304H82.4L189 77.6z\"]\n};\nvar fa5 = {\n prefix: 'fas',\n iconName: '5',\n icon: [320, 512, [], \"35\", \"M32.5 58.3C35.3 43.1 48.5 32 64 32H256c17.7 0 32 14.3 32 32s-14.3 32-32 32H90.7L70.3 208H184c75.1 0 136 60.9 136 136s-60.9 136-136 136H100.5c-39.4 0-75.4-22.3-93-57.5l-4.1-8.2c-7.9-15.8-1.5-35 14.3-42.9s35-1.5 42.9 14.3l4.1 8.2c6.8 13.6 20.6 22.1 35.8 22.1H184c39.8 0 72-32.2 72-72s-32.2-72-72-72H32c-9.5 0-18.5-4.2-24.6-11.5s-8.6-16.9-6.9-26.2l32-176z\"]\n};\nvar fa6 = {\n prefix: 'fas',\n iconName: '6',\n icon: [320, 512, [], \"36\", \"M232.4 84.7c11.4-13.5 9.7-33.7-3.8-45.1s-33.7-9.7-45.1 3.8L38.6 214.7C14.7 242.9 1.1 278.4 .1 315.2c0 1.4-.1 2.9-.1 4.3c0 .2 0 .3 0 .5c0 88.4 71.6 160 160 160s160-71.6 160-160c0-85.5-67.1-155.4-151.5-159.8l63.9-75.6zM256 320A96 96 0 1 1 64 320a96 96 0 1 1 192 0z\"]\n};\nvar fa7 = {\n prefix: 'fas',\n iconName: '7',\n icon: [320, 512, [], \"37\", \"M0 64C0 46.3 14.3 32 32 32H288c11.5 0 22 6.1 27.7 16.1s5.7 22.2-.1 32.1l-224 384c-8.9 15.3-28.5 20.4-43.8 11.5s-20.4-28.5-11.5-43.8L232.3 96H32C14.3 96 0 81.7 0 64z\"]\n};\nvar fa8 = {\n prefix: 'fas',\n iconName: '8',\n icon: [320, 512, [], \"38\", \"M304 160c0-70.7-57.3-128-128-128H144C73.3 32 16 89.3 16 160c0 34.6 13.7 66 36 89C20.5 272.3 0 309.8 0 352c0 70.7 57.3 128 128 128h64c70.7 0 128-57.3 128-128c0-42.2-20.5-79.7-52-103c22.3-23 36-54.4 36-89zM176.1 288H192c35.3 0 64 28.7 64 64s-28.7 64-64 64H128c-35.3 0-64-28.7-64-64s28.7-64 64-64h15.9c0 0 .1 0 .1 0h32c0 0 .1 0 .1 0zm0-64c0 0 0 0 0 0H144c0 0 0 0 0 0c-35.3 0-64-28.7-64-64c0-35.3 28.7-64 64-64h32c35.3 0 64 28.7 64 64c0 35.3-28.6 64-64 64z\"]\n};\nvar fa9 = {\n prefix: 'fas',\n iconName: '9',\n icon: [320, 512, [], \"39\", \"M64 192a96 96 0 1 0 192 0A96 96 0 1 0 64 192zm87.5 159.8C67.1 347.4 0 277.5 0 192C0 103.6 71.6 32 160 32s160 71.6 160 160c0 2.6-.1 5.3-.2 7.9c-1.7 35.7-15.2 70-38.4 97.4l-145 171.4c-11.4 13.5-31.6 15.2-45.1 3.8s-15.2-31.6-3.8-45.1l63.9-75.6z\"]\n};\nvar faFillDrip = {\n prefix: 'fas',\n iconName: 'fill-drip',\n icon: [576, 512, [], \"f576\", \"M41.4 9.4C53.9-3.1 74.1-3.1 86.6 9.4L168 90.7l53.1-53.1c28.1-28.1 73.7-28.1 101.8 0L474.3 189.1c28.1 28.1 28.1 73.7 0 101.8L283.9 481.4c-37.5 37.5-98.3 37.5-135.8 0L30.6 363.9c-37.5-37.5-37.5-98.3 0-135.8L122.7 136 41.4 54.6c-12.5-12.5-12.5-32.8 0-45.3zm176 221.3L168 181.3 75.9 273.4c-4.2 4.2-7 9.3-8.4 14.6H386.7l42.3-42.3c3.1-3.1 3.1-8.2 0-11.3L277.7 82.9c-3.1-3.1-8.2-3.1-11.3 0L213.3 136l49.4 49.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0zM512 512c-35.3 0-64-28.7-64-64c0-25.2 32.6-79.6 51.2-108.7c6-9.4 19.5-9.4 25.5 0C543.4 368.4 576 422.8 576 448c0 35.3-28.7 64-64 64z\"]\n};\nvar faArrowsToCircle = {\n prefix: 'fas',\n iconName: 'arrows-to-circle',\n icon: [640, 512, [], \"e4bd\", \"M9.4 9.4C21.9-3.1 42.1-3.1 54.6 9.4L160 114.7V96c0-17.7 14.3-32 32-32s32 14.3 32 32v96c0 4.3-.9 8.5-2.4 12.2c-1.6 3.7-3.8 7.3-6.9 10.3l-.1 .1c-3.1 3-6.6 5.3-10.3 6.9c-3.8 1.6-7.9 2.4-12.2 2.4H96c-17.7 0-32-14.3-32-32s14.3-32 32-32h18.7L9.4 54.6C-3.1 42.1-3.1 21.9 9.4 9.4zM256 256a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM114.7 352H96c-17.7 0-32-14.3-32-32s14.3-32 32-32h96 0l.1 0c8.8 0 16.7 3.6 22.5 9.3l.1 .1c3 3.1 5.3 6.6 6.9 10.3c1.6 3.8 2.4 7.9 2.4 12.2v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V397.3L54.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L114.7 352zM416 96c0-17.7 14.3-32 32-32s32 14.3 32 32v18.7L585.4 9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L525.3 160H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H448c-8.8 0-16.8-3.6-22.6-9.3l-.1-.1c-3-3.1-5.3-6.6-6.9-10.3s-2.4-7.8-2.4-12.2l0-.1v0V96zM525.3 352L630.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L480 397.3V416c0 17.7-14.3 32-32 32s-32-14.3-32-32V320v0c0 0 0-.1 0-.1c0-4.3 .9-8.4 2.4-12.2c1.6-3.8 3.9-7.3 6.9-10.4c5.8-5.8 13.7-9.3 22.5-9.4c0 0 .1 0 .1 0h0 96c17.7 0 32 14.3 32 32s-14.3 32-32 32H525.3z\"]\n};\nvar faCircleChevronRight = {\n prefix: 'fas',\n iconName: 'circle-chevron-right',\n icon: [512, 512, [\"chevron-circle-right\"], \"f138\", \"M0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM241 377c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l87-87-87-87c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L345 239c9.4 9.4 9.4 24.6 0 33.9L241 377z\"]\n};\nvar faChevronCircleRight = faCircleChevronRight;\nvar faAt = {\n prefix: 'fas',\n iconName: 'at',\n icon: [512, 512, [61946], \"40\", \"M256 64C150 64 64 150 64 256s86 192 192 192c17.7 0 32 14.3 32 32s-14.3 32-32 32C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256v32c0 53-43 96-96 96c-29.3 0-55.6-13.2-73.2-33.9C320 371.1 289.5 384 256 384c-70.7 0-128-57.3-128-128s57.3-128 128-128c27.9 0 53.7 8.9 74.7 24.1c5.7-5 13.1-8.1 21.3-8.1c17.7 0 32 14.3 32 32v80 32c0 17.7 14.3 32 32 32s32-14.3 32-32V256c0-106-86-192-192-192zm64 192a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"]\n};\nvar faTrashCan = {\n prefix: 'fas',\n iconName: 'trash-can',\n icon: [448, 512, [61460, \"trash-alt\"], \"f2ed\", \"M135.2 17.7C140.6 6.8 151.7 0 163.8 0H284.2c12.1 0 23.2 6.8 28.6 17.7L320 32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32h96l7.2-14.3zM32 128H416V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V128zm96 64c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16z\"]\n};\nvar faTrashAlt = faTrashCan;\nvar faTextHeight = {\n prefix: 'fas',\n iconName: 'text-height',\n icon: [576, 512, [], \"f034\", \"M64 128V96h64l0 320H96c-17.7 0-32 14.3-32 32s14.3 32 32 32H224c17.7 0 32-14.3 32-32s-14.3-32-32-32H192l0-320h64v32c0 17.7 14.3 32 32 32s32-14.3 32-32V80c0-26.5-21.5-48-48-48H160 48C21.5 32 0 53.5 0 80v48c0 17.7 14.3 32 32 32s32-14.3 32-32zM502.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-64 64c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8h32V352H416c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l64 64c12.5 12.5 32.8 12.5 45.3 0l64-64c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8H512V160h32c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-64-64z\"]\n};\nvar faUserXmark = {\n prefix: 'fas',\n iconName: 'user-xmark',\n icon: [640, 512, [\"user-times\"], \"f235\", \"M96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM0 482.3C0 383.8 79.8 304 178.3 304h91.4C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3zM471 143c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z\"]\n};\nvar faUserTimes = faUserXmark;\nvar faStethoscope = {\n prefix: 'fas',\n iconName: 'stethoscope',\n icon: [576, 512, [129658], \"f0f1\", \"M142.4 21.9c5.6 16.8-3.5 34.9-20.2 40.5L96 71.1V192c0 53 43 96 96 96s96-43 96-96V71.1l-26.1-8.7c-16.8-5.6-25.8-23.7-20.2-40.5s23.7-25.8 40.5-20.2l26.1 8.7C334.4 19.1 352 43.5 352 71.1V192c0 77.2-54.6 141.6-127.3 156.7C231 404.6 278.4 448 336 448c61.9 0 112-50.1 112-112V265.3c-28.3-12.3-48-40.5-48-73.3c0-44.2 35.8-80 80-80s80 35.8 80 80c0 32.8-19.7 61-48 73.3V336c0 97.2-78.8 176-176 176c-92.9 0-168.9-71.9-175.5-163.1C87.2 334.2 32 269.6 32 192V71.1c0-27.5 17.6-52 43.8-60.7l26.1-8.7c16.8-5.6 34.9 3.5 40.5 20.2zM480 224a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faMessage = {\n prefix: 'fas',\n iconName: 'message',\n icon: [512, 512, [\"comment-alt\"], \"f27a\", \"M64 0C28.7 0 0 28.7 0 64V352c0 35.3 28.7 64 64 64h96v80c0 6.1 3.4 11.6 8.8 14.3s11.9 2.1 16.8-1.5L309.3 416H448c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64z\"]\n};\nvar faCommentAlt = faMessage;\nvar faInfo = {\n prefix: 'fas',\n iconName: 'info',\n icon: [192, 512, [], \"f129\", \"M48 80a48 48 0 1 1 96 0A48 48 0 1 1 48 80zM0 224c0-17.7 14.3-32 32-32H96c17.7 0 32 14.3 32 32V448h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H64V256H32c-17.7 0-32-14.3-32-32z\"]\n};\nvar faDownLeftAndUpRightToCenter = {\n prefix: 'fas',\n iconName: 'down-left-and-up-right-to-center',\n icon: [512, 512, [\"compress-alt\"], \"f422\", \"M439 7c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8H296c-13.3 0-24-10.7-24-24V72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l39 39L439 7zM72 272H216c13.3 0 24 10.7 24 24V440c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39L73 505c-9.4 9.4-24.6 9.4-33.9 0L7 473c-9.4-9.4-9.4-24.6 0-33.9l87-87L55 313c-6.9-6.9-8.9-17.2-5.2-26.2s12.5-14.8 22.2-14.8z\"]\n};\nvar faCompressAlt = faDownLeftAndUpRightToCenter;\nvar faExplosion = {\n prefix: 'fas',\n iconName: 'explosion',\n icon: [576, 512, [], \"e4e9\", \"M499.6 11.3c6.7-10.7 20.5-14.5 31.7-8.5s15.8 19.5 10.6 31L404.8 338.6c2.2 2.3 4.3 4.7 6.3 7.1l97.2-54.7c10.5-5.9 23.6-3.1 30.9 6.4s6.3 23-2.2 31.5l-87 87H378.5c-13.2-37.3-48.7-64-90.5-64s-77.4 26.7-90.5 64H117.8L42.3 363.7c-9.7-6.7-13.1-19.6-7.9-30.3s17.4-15.9 28.7-12.4l97.2 30.4c3-3.9 6.1-7.7 9.4-11.3L107.4 236.3c-6.1-10.1-3.9-23.1 5.1-30.7s22.2-7.5 31.1 .1L246 293.6c1.5-.4 3-.8 4.5-1.1l13.6-142.7c1.2-12.3 11.5-21.7 23.9-21.7s22.7 9.4 23.9 21.7l13.5 141.9L499.6 11.3zM64 448v0H512v0h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H64zM288 0c13.3 0 24 10.7 24 24V72c0 13.3-10.7 24-24 24s-24-10.7-24-24V24c0-13.3 10.7-24 24-24z\"]\n};\nvar faFileLines = {\n prefix: 'fas',\n iconName: 'file-lines',\n icon: [384, 512, [128441, 128462, 61686, \"file-alt\", \"file-text\"], \"f15c\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM112 256H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faFileAlt = faFileLines;\nvar faFileText = faFileLines;\nvar faWaveSquare = {\n prefix: 'fas',\n iconName: 'wave-square',\n icon: [640, 512, [], \"f83e\", \"M128 64c0-17.7 14.3-32 32-32H320c17.7 0 32 14.3 32 32V416h96V256c0-17.7 14.3-32 32-32H608c17.7 0 32 14.3 32 32s-14.3 32-32 32H512V448c0 17.7-14.3 32-32 32H320c-17.7 0-32-14.3-32-32V96H192V256c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h96V64z\"]\n};\nvar faRing = {\n prefix: 'fas',\n iconName: 'ring',\n icon: [512, 512, [], \"f70b\", \"M64 208c0 7.8 4.4 18.7 17.1 30.3C126.5 214.1 188.9 200 256 200s129.5 14.1 174.9 38.3C443.6 226.7 448 215.8 448 208c0-12.3-10.8-32-47.9-50.6C364.9 139.8 314 128 256 128s-108.9 11.8-144.1 29.4C74.8 176 64 195.7 64 208zm192 40c-47 0-89.3 7.6-122.9 19.7C166.3 280.2 208.8 288 256 288s89.7-7.8 122.9-20.3C345.3 255.6 303 248 256 248zM0 208c0-49.6 39.4-85.8 83.3-107.8C129.1 77.3 190.3 64 256 64s126.9 13.3 172.7 36.2c43.9 22 83.3 58.2 83.3 107.8v96c0 49.6-39.4 85.8-83.3 107.8C382.9 434.7 321.7 448 256 448s-126.9-13.3-172.7-36.2C39.4 389.8 0 353.6 0 304V208z\"]\n};\nvar faBuildingUn = {\n prefix: 'fas',\n iconName: 'building-un',\n icon: [384, 512, [], \"e4d9\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM237.3 71.1l34.7 52V80c0-8.8 7.2-16 16-16s16 7.2 16 16v96c0 7.1-4.6 13.3-11.4 15.3s-14-.6-17.9-6.4l-34.7-52V176c0 8.8-7.2 16-16 16s-16-7.2-16-16V80c0-7.1 4.6-13.3 11.4-15.3s14 .6 17.9 6.4zM112 80v64c0 8.8 7.2 16 16 16s16-7.2 16-16V80c0-8.8 7.2-16 16-16s16 7.2 16 16v64c0 26.5-21.5 48-48 48s-48-21.5-48-48V80c0-8.8 7.2-16 16-16s16 7.2 16 16z\"]\n};\nvar faDiceThree = {\n prefix: 'fas',\n iconName: 'dice-three',\n icon: [448, 512, [9858], \"f527\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm64 96a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm64 128a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm128 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faCalendarDays = {\n prefix: 'fas',\n iconName: 'calendar-days',\n icon: [448, 512, [\"calendar-alt\"], \"f073\", \"M128 0c17.7 0 32 14.3 32 32V64H288V32c0-17.7 14.3-32 32-32s32 14.3 32 32V64h48c26.5 0 48 21.5 48 48v48H0V112C0 85.5 21.5 64 48 64H96V32c0-17.7 14.3-32 32-32zM0 192H448V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V192zm64 80v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16zm128 0v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H336zM64 400v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V400c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V400c0-8.8-7.2-16-16-16H208zm112 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V400c0-8.8-7.2-16-16-16H336c-8.8 0-16 7.2-16 16z\"]\n};\nvar faCalendarAlt = faCalendarDays;\nvar faAnchorCircleCheck = {\n prefix: 'fas',\n iconName: 'anchor-circle-check',\n icon: [640, 512, [], \"e4aa\", \"M320 96a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm21.1 80C367 158.8 384 129.4 384 96c0-53-43-96-96-96s-96 43-96 96c0 33.4 17 62.8 42.9 80H224c-17.7 0-32 14.3-32 32s14.3 32 32 32h32V448H208c-53 0-96-43-96-96v-6.1l7 7c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L97 263c-9.4-9.4-24.6-9.4-33.9 0L7 319c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l7-7V352c0 88.4 71.6 160 160 160h80 80c8.2 0 16.3-.6 24.2-1.8c-22.2-16.2-40.4-37.5-53-62.2H320V368 240h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H341.1zM640 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-76.7-43.3c6.2 6.2 6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L480 385.4l60.7-60.7c6.2-6.2 16.4-6.2 22.6 0z\"]\n};\nvar faBuildingCircleArrowRight = {\n prefix: 'fas',\n iconName: 'building-circle-arrow-right',\n icon: [640, 512, [], \"e4d1\", \"M0 48C0 21.5 21.5 0 48 0H336c26.5 0 48 21.5 48 48V232.2c-39.1 32.3-64 81.1-64 135.8c0 49.5 20.4 94.2 53.3 126.2C364.5 505.1 351.1 512 336 512H240V432c0-26.5-21.5-48-48-48s-48 21.5-48 48v80H48c-26.5 0-48-21.5-48-48V48zM80 224c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H80zm80 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H176c-8.8 0-16 7.2-16 16zm112-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H272zM64 112v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16zM176 96c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H176zm80 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H272c-8.8 0-16 7.2-16 16zm96 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm140.7-67.3c-6.2 6.2-6.2 16.4 0 22.6L521.4 352H432c-8.8 0-16 7.2-16 16s7.2 16 16 16h89.4l-28.7 28.7c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l56-56c6.2-6.2 6.2-16.4 0-22.6l-56-56c-6.2-6.2-16.4-6.2-22.6 0z\"]\n};\nvar faVolleyball = {\n prefix: 'fas',\n iconName: 'volleyball',\n icon: [512, 512, [127952, \"volleyball-ball\"], \"f45f\", \"M511.8 267.4c-26.1 8.7-53.4 13.8-81 15.1c9.2-105.3-31.5-204.2-103.2-272.4C434.1 41.1 512 139.5 512 256c0 3.8-.1 7.6-.2 11.4zm-3.9 34.7c-5.8 32-17.6 62-34.2 88.7c-97.5 48.5-217.7 42.6-311.9-24.5c23.7-36.2 55.4-67.7 94.5-91.8c79.9 43.2 170.1 50.8 251.6 27.6zm-236-55.5c-2.5-90.9-41.1-172.7-101.9-231.7C196.8 5.2 225.8 0 256 0c2.7 0 5.3 0 7.9 .1c90.8 60.2 145.7 167.2 134.7 282.3c-43.1-2.4-86.4-14.1-126.8-35.9zM138 28.8c20.6 18.3 38.7 39.4 53.7 62.6C95.9 136.1 30.6 220.8 7.3 316.9C2.5 297.4 0 277 0 256C0 157.2 56 71.5 138 28.8zm69.6 90.5c19.5 38.6 31 81.9 32.3 127.7C162.5 294.6 110.9 368.9 90.2 451C66 430.4 45.6 405.4 30.4 377.2c6.7-108.7 71.9-209.9 177.1-257.9zM256 512c-50.7 0-98-14.7-137.8-40.2c5.6-27 14.8-53.1 27.4-77.7C232.2 454.6 338.1 468.8 433 441c-46 44-108.3 71-177 71z\"]\n};\nvar faVolleyballBall = faVolleyball;\nvar faArrowsUpToLine = {\n prefix: 'fas',\n iconName: 'arrows-up-to-line',\n icon: [576, 512, [], \"e4c2\", \"M32 96l512 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 32C14.3 32 0 46.3 0 64S14.3 96 32 96zM9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L96 237.3 96 448c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0l-96 96zm320 45.3c12.5 12.5 32.8 12.5 45.3 0L416 237.3 416 448c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3z\"]\n};\nvar faSortDown = {\n prefix: 'fas',\n iconName: 'sort-down',\n icon: [320, 512, [\"sort-desc\"], \"f0dd\", \"M182.6 470.6c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-9.2-9.2-11.9-22.9-6.9-34.9s16.6-19.8 29.6-19.8H288c12.9 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9l-128 128z\"]\n};\nvar faSortDesc = faSortDown;\nvar faCircleMinus = {\n prefix: 'fas',\n iconName: 'circle-minus',\n icon: [512, 512, [\"minus-circle\"], \"f056\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM184 232H328c13.3 0 24 10.7 24 24s-10.7 24-24 24H184c-13.3 0-24-10.7-24-24s10.7-24 24-24z\"]\n};\nvar faMinusCircle = faCircleMinus;\nvar faDoorOpen = {\n prefix: 'fas',\n iconName: 'door-open',\n icon: [576, 512, [], \"f52b\", \"M320 32c0-9.9-4.5-19.2-12.3-25.2S289.8-1.4 280.2 1l-179.9 45C79 51.3 64 70.5 64 92.5V448H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H96 288h32V480 32zM256 256c0 17.7-10.7 32-24 32s-24-14.3-24-32s10.7-32 24-32s24 14.3 24 32zm96-128h96V480c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H512V128c0-35.3-28.7-64-64-64H352v64z\"]\n};\nvar faRightFromBracket = {\n prefix: 'fas',\n iconName: 'right-from-bracket',\n icon: [512, 512, [\"sign-out-alt\"], \"f2f5\", \"M377.9 105.9L500.7 228.7c7.2 7.2 11.3 17.1 11.3 27.3s-4.1 20.1-11.3 27.3L377.9 406.1c-6.4 6.4-15 9.9-24 9.9c-18.7 0-33.9-15.2-33.9-33.9l0-62.1-128 0c-17.7 0-32-14.3-32-32l0-64c0-17.7 14.3-32 32-32l128 0 0-62.1c0-18.7 15.2-33.9 33.9-33.9c9 0 17.6 3.6 24 9.9zM160 96L96 96c-17.7 0-32 14.3-32 32l0 256c0 17.7 14.3 32 32 32l64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-64 0c-53 0-96-43-96-96L0 128C0 75 43 32 96 32l64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32z\"]\n};\nvar faSignOutAlt = faRightFromBracket;\nvar faAtom = {\n prefix: 'fas',\n iconName: 'atom',\n icon: [512, 512, [9883], \"f5d2\", \"M256 398.8c-11.8 5.1-23.4 9.7-34.9 13.5c16.7 33.8 31 35.7 34.9 35.7s18.1-1.9 34.9-35.7c-11.4-3.9-23.1-8.4-34.9-13.5zM446 256c33 45.2 44.3 90.9 23.6 128c-20.2 36.3-62.5 49.3-115.2 43.2c-22 52.1-55.6 84.8-98.4 84.8s-76.4-32.7-98.4-84.8c-52.7 6.1-95-6.8-115.2-43.2C21.7 346.9 33 301.2 66 256c-33-45.2-44.3-90.9-23.6-128c20.2-36.3 62.5-49.3 115.2-43.2C179.6 32.7 213.2 0 256 0s76.4 32.7 98.4 84.8c52.7-6.1 95 6.8 115.2 43.2c20.7 37.1 9.4 82.8-23.6 128zm-65.8 67.4c-1.7 14.2-3.9 28-6.7 41.2c31.8 1.4 38.6-8.7 40.2-11.7c2.3-4.2 7-17.9-11.9-48.1c-6.8 6.3-14 12.5-21.6 18.6zm-6.7-175.9c2.8 13.1 5 26.9 6.7 41.2c7.6 6.1 14.8 12.3 21.6 18.6c18.9-30.2 14.2-44 11.9-48.1c-1.6-2.9-8.4-13-40.2-11.7zM290.9 99.7C274.1 65.9 259.9 64 256 64s-18.1 1.9-34.9 35.7c11.4 3.9 23.1 8.4 34.9 13.5c11.8-5.1 23.4-9.7 34.9-13.5zm-159 88.9c1.7-14.3 3.9-28 6.7-41.2c-31.8-1.4-38.6 8.7-40.2 11.7c-2.3 4.2-7 17.9 11.9 48.1c6.8-6.3 14-12.5 21.6-18.6zM110.2 304.8C91.4 335 96 348.7 98.3 352.9c1.6 2.9 8.4 13 40.2 11.7c-2.8-13.1-5-26.9-6.7-41.2c-7.6-6.1-14.8-12.3-21.6-18.6zM336 256a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zm-80-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faSoap = {\n prefix: 'fas',\n iconName: 'soap',\n icon: [512, 512, [129532], \"e06e\", \"M208 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM320 256a64 64 0 1 0 0-128 64 64 0 1 0 0 128zM416 32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm0 160c0 27.6-11.7 52.5-30.4 70.1C422.1 275.7 448 310.8 448 352c0 53-43 96-96 96H160c-53 0-96-43-96-96s43-96 96-96h88.4c-15.2-17-24.4-39.4-24.4-64H96c-53 0-96 43-96 96V416c0 53 43 96 96 96H416c53 0 96-43 96-96V288c0-53-43-96-96-96zM160 288c-35.3 0-64 28.7-64 64s28.7 64 64 64H352c35.3 0 64-28.7 64-64s-28.7-64-64-64H320 160z\"]\n};\nvar faIcons = {\n prefix: 'fas',\n iconName: 'icons',\n icon: [512, 512, [\"heart-music-camera-bolt\"], \"f86d\", \"M500.3 7.3C507.7 13.3 512 22.4 512 32V176c0 26.5-28.7 48-64 48s-64-21.5-64-48s28.7-48 64-48V71L352 90.2V208c0 26.5-28.7 48-64 48s-64-21.5-64-48s28.7-48 64-48V64c0-15.3 10.8-28.4 25.7-31.4l160-32c9.4-1.9 19.1 .6 26.6 6.6zM74.7 304l11.8-17.8c5.9-8.9 15.9-14.2 26.6-14.2h61.7c10.7 0 20.7 5.3 26.6 14.2L213.3 304H240c26.5 0 48 21.5 48 48V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V352c0-26.5 21.5-48 48-48H74.7zM192 408a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM478.7 278.3L440.3 368H496c6.7 0 12.6 4.1 15 10.4s.6 13.3-4.4 17.7l-128 112c-5.6 4.9-13.9 5.3-19.9 .9s-8.2-12.4-5.3-19.2L391.7 400H336c-6.7 0-12.6-4.1-15-10.4s-.6-13.3 4.4-17.7l128-112c5.6-4.9 13.9-5.3 19.9-.9s8.2 12.4 5.3 19.2zm-339-59.2c-6.5 6.5-17 6.5-23 0L19.9 119.2c-28-29-26.5-76.9 5-103.9c27-23.5 68.4-19 93.4 6.5l10 10.5 9.5-10.5c25-25.5 65.9-30 93.9-6.5c31 27 32.5 74.9 4.5 103.9l-96.4 99.9z\"]\n};\nvar faHeartMusicCameraBolt = faIcons;\nvar faMicrophoneLinesSlash = {\n prefix: 'fas',\n iconName: 'microphone-lines-slash',\n icon: [640, 512, [\"microphone-alt-slash\"], \"f539\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L472.1 344.7c15.2-26 23.9-56.3 23.9-88.7V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v24 16c0 21.2-5.1 41.1-14.2 58.7L416 300.8V256H358.9l-34.5-27c2.9-3.1 7-5 11.6-5h80V192H336c-8.8 0-16-7.2-16-16s7.2-16 16-16h80V128H336c-8.8 0-16-7.2-16-16s7.2-16 16-16h80c0-53-43-96-96-96s-96 43-96 96v54.3L38.8 5.1zM358.2 378.2C346.1 382 333.3 384 320 384c-70.7 0-128-57.3-128-128v-8.7L144.7 210c-.5 1.9-.7 3.9-.7 6v40c0 89.1 66.2 162.7 152 174.4V464H248c-13.3 0-24 10.7-24 24s10.7 24 24 24h72 72c13.3 0 24-10.7 24-24s-10.7-24-24-24H344V430.4c20.4-2.8 39.7-9.1 57.3-18.2l-43.1-33.9z\"]\n};\nvar faMicrophoneAltSlash = faMicrophoneLinesSlash;\nvar faBridgeCircleCheck = {\n prefix: 'fas',\n iconName: 'bridge-circle-check',\n icon: [640, 512, [], \"e4c9\", \"M64 32C46.3 32 32 46.3 32 64s14.3 32 32 32h40v64H32V288c53 0 96 43 96 96v64c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V384c0-53 43-96 96-96c6.3 0 12.4 .6 18.3 1.7C367.1 231.8 426.9 192 496 192c42.5 0 81.6 15.1 112 40.2V160H536V96h40c17.7 0 32-14.3 32-32s-14.3-32-32-32H64zM488 96v64H408V96h80zM360 96v64H280V96h80zM232 96v64H152V96h80zM640 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-76.7-43.3c6.2 6.2 6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L480 385.4l60.7-60.7c6.2-6.2 16.4-6.2 22.6 0z\"]\n};\nvar faPumpMedical = {\n prefix: 'fas',\n iconName: 'pump-medical',\n icon: [448, 512, [], \"e06a\", \"M128 32v96H256V96h60.1c4.2 0 8.3 1.7 11.3 4.7l33.9 33.9c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L372.7 55.4c-15-15-35.4-23.4-56.6-23.4H256c0-17.7-14.3-32-32-32H160c-17.7 0-32 14.3-32 32zM117.4 160c-33.3 0-61 25.5-63.8 58.7L35 442.7C31.9 480 61.3 512 98.8 512H285.2c37.4 0 66.9-32 63.8-69.3l-18.7-224c-2.8-33.2-30.5-58.7-63.8-58.7H117.4zM216 280v32h32c13.3 0 24 10.7 24 24s-10.7 24-24 24H216v32c0 13.3-10.7 24-24 24s-24-10.7-24-24V360H136c-13.3 0-24-10.7-24-24s10.7-24 24-24h32V280c0-13.3 10.7-24 24-24s24 10.7 24 24z\"]\n};\nvar faFingerprint = {\n prefix: 'fas',\n iconName: 'fingerprint',\n icon: [512, 512, [], \"f577\", \"M48 256C48 141.1 141.1 48 256 48c63.1 0 119.6 28.1 157.8 72.5c8.6 10.1 23.8 11.2 33.8 2.6s11.2-23.8 2.6-33.8C403.3 34.6 333.7 0 256 0C114.6 0 0 114.6 0 256v40c0 13.3 10.7 24 24 24s24-10.7 24-24V256zm458.5-52.9c-2.7-13-15.5-21.3-28.4-18.5s-21.3 15.5-18.5 28.4c2.9 13.9 4.5 28.3 4.5 43.1v40c0 13.3 10.7 24 24 24s24-10.7 24-24V256c0-18.1-1.9-35.8-5.5-52.9zM256 80c-19 0-37.4 3-54.5 8.6c-15.2 5-18.7 23.7-8.3 35.9c7.1 8.3 18.8 10.8 29.4 7.9c10.6-2.9 21.8-4.4 33.4-4.4c70.7 0 128 57.3 128 128v24.9c0 25.2-1.5 50.3-4.4 75.3c-1.7 14.6 9.4 27.8 24.2 27.8c11.8 0 21.9-8.6 23.3-20.3c3.3-27.4 5-55 5-82.7V256c0-97.2-78.8-176-176-176zM150.7 148.7c-9.1-10.6-25.3-11.4-33.9-.4C93.7 178 80 215.4 80 256v24.9c0 24.2-2.6 48.4-7.8 71.9C68.8 368.4 80.1 384 96.1 384c10.5 0 19.9-7 22.2-17.3c6.4-28.1 9.7-56.8 9.7-85.8V256c0-27.2 8.5-52.4 22.9-73.1c7.2-10.4 8-24.6-.2-34.2zM256 160c-53 0-96 43-96 96v24.9c0 35.9-4.6 71.5-13.8 106.1c-3.8 14.3 6.7 29 21.5 29c9.5 0 17.9-6.2 20.4-15.4c10.5-39 15.9-79.2 15.9-119.7V256c0-28.7 23.3-52 52-52s52 23.3 52 52v24.9c0 36.3-3.5 72.4-10.4 107.9c-2.7 13.9 7.7 27.2 21.8 27.2c10.2 0 19-7 21-17c7.7-38.8 11.6-78.3 11.6-118.1V256c0-53-43-96-96-96zm24 96c0-13.3-10.7-24-24-24s-24 10.7-24 24v24.9c0 59.9-11 119.3-32.5 175.2l-5.9 15.3c-4.8 12.4 1.4 26.3 13.8 31s26.3-1.4 31-13.8l5.9-15.3C267.9 411.9 280 346.7 280 280.9V256z\"]\n};\nvar faHandPointRight = {\n prefix: 'fas',\n iconName: 'hand-point-right',\n icon: [512, 512, [], \"f0a4\", \"M480 96c17.7 0 32 14.3 32 32s-14.3 32-32 32l-208 0 0-64 208 0zM320 288c17.7 0 32 14.3 32 32s-14.3 32-32 32l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0zm64-64c0 17.7-14.3 32-32 32l-48 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l48 0c17.7 0 32 14.3 32 32zM288 384c17.7 0 32 14.3 32 32s-14.3 32-32 32l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0zm-88-96l.6 0c-5.4 9.4-8.6 20.3-8.6 32c0 13.2 4 25.4 10.8 35.6C177.9 364.3 160 388.1 160 416c0 11.7 3.1 22.6 8.6 32l-8.6 0C71.6 448 0 376.4 0 288l0-61.7c0-42.4 16.9-83.1 46.9-113.1l11.6-11.6C82.5 77.5 115.1 64 149 64l27 0c35.3 0 64 28.7 64 64l0 88c0 22.1-17.9 40-40 40s-40-17.9-40-40l0-56c0-8.8-7.2-16-16-16s-16 7.2-16 16l0 56c0 39.8 32.2 72 72 72z\"]\n};\nvar faMagnifyingGlassLocation = {\n prefix: 'fas',\n iconName: 'magnifying-glass-location',\n icon: [512, 512, [\"search-location\"], \"f689\", \"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM288 176c0-44.2-35.8-80-80-80s-80 35.8-80 80c0 48.8 46.5 111.6 68.6 138.6c6 7.3 16.8 7.3 22.7 0c22.1-27 68.6-89.8 68.6-138.6zm-112 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faSearchLocation = faMagnifyingGlassLocation;\nvar faForwardStep = {\n prefix: 'fas',\n iconName: 'forward-step',\n icon: [320, 512, [\"step-forward\"], \"f051\", \"M52.5 440.6c-9.5 7.9-22.8 9.7-34.1 4.4S0 428.4 0 416V96C0 83.6 7.2 72.3 18.4 67s24.5-3.6 34.1 4.4l192 160L256 241V96c0-17.7 14.3-32 32-32s32 14.3 32 32V416c0 17.7-14.3 32-32 32s-32-14.3-32-32V271l-11.5 9.6-192 160z\"]\n};\nvar faStepForward = faForwardStep;\nvar faFaceSmileBeam = {\n prefix: 'fas',\n iconName: 'face-smile-beam',\n icon: [512, 512, [128522, \"smile-beam\"], \"f5b8\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.1 325.5C182 346.2 212.6 368 256 368s74-21.8 91.9-42.5c5.8-6.7 15.9-7.4 22.6-1.6s7.4 15.9 1.6 22.6C349.8 372.1 311.1 400 256 400s-93.8-27.9-116.1-53.5c-5.8-6.7-5.1-16.8 1.6-22.6s16.8-5.1 22.6 1.6zm53.5-96.7l0 0 0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0zm160 0l0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0 0 0z\"]\n};\nvar faSmileBeam = faFaceSmileBeam;\nvar faFlagCheckered = {\n prefix: 'fas',\n iconName: 'flag-checkered',\n icon: [448, 512, [127937], \"f11e\", \"M32 0C49.7 0 64 14.3 64 32V48l69-17.2c38.1-9.5 78.3-5.1 113.5 12.5c46.3 23.2 100.8 23.2 147.1 0l9.6-4.8C423.8 28.1 448 43.1 448 66.1V345.8c0 13.3-8.3 25.3-20.8 30l-34.7 13c-46.2 17.3-97.6 14.6-141.7-7.4c-37.9-19-81.3-23.7-122.5-13.4L64 384v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V400 334 64 32C0 14.3 14.3 0 32 0zM64 187.1l64-13.9v65.5L64 252.6V318l48.8-12.2c5.1-1.3 10.1-2.4 15.2-3.3V238.7l38.9-8.4c8.3-1.8 16.7-2.5 25.1-2.1l0-64c13.6 .4 27.2 2.6 40.4 6.4l23.6 6.9v66.7l-41.7-12.3c-7.3-2.1-14.8-3.4-22.3-3.8v71.4c21.8 1.9 43.3 6.7 64 14.4V244.2l22.7 6.7c13.5 4 27.3 6.4 41.3 7.4V194c-7.8-.8-15.6-2.3-23.2-4.5l-40.8-12v-62c-13-3.8-25.8-8.8-38.2-15c-8.2-4.1-16.9-7-25.8-8.8v72.4c-13-.4-26 .8-38.7 3.6L128 173.2V98L64 114v73.1zM320 335.7c16.8 1.5 33.9-.7 50-6.8l14-5.2V251.9l-7.9 1.8c-18.4 4.3-37.3 5.7-56.1 4.5v77.4zm64-149.4V115.4c-20.9 6.1-42.4 9.1-64 9.1V194c13.9 1.4 28 .5 41.7-2.6l22.3-5.2z\"]\n};\nvar faFootball = {\n prefix: 'fas',\n iconName: 'football',\n icon: [512, 512, [127944, \"football-ball\"], \"f44e\", \"M247.5 25.4c-13.5 3.3-26.4 7.2-38.6 11.7C142.9 61.6 96.7 103.6 66 153.6c-18.3 29.8-30.9 62.3-39.2 95.4L264.5 486.6c13.5-3.3 26.4-7.2 38.6-11.7c66-24.5 112.2-66.5 142.9-116.5c18.3-29.8 30.9-62.3 39.1-95.3L247.5 25.4zM495.2 205.3c6.1-56.8 1.4-112.2-7.7-156.4c-2.7-12.9-13-22.9-26.1-25.1c-58.2-9.7-109.9-12-155.6-7.9L495.2 205.3zM206.1 496L16.8 306.7c-6.1 56.8-1.4 112.2 7.7 156.4c2.7 12.9 13 22.9 26.1 25.1c58.2 9.7 109.9 12 155.6 7.9zm54.6-331.3c6.2-6.2 16.4-6.2 22.6 0l64 64c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0l-64-64c-6.2-6.2-6.2-16.4 0-22.6zm-48 48c6.2-6.2 16.4-6.2 22.6 0l64 64c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0l-64-64c-6.2-6.2-6.2-16.4 0-22.6zm-48 48c6.2-6.2 16.4-6.2 22.6 0l64 64c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0l-64-64c-6.2-6.2-6.2-16.4 0-22.6z\"]\n};\nvar faFootballBall = faFootball;\nvar faSchoolCircleExclamation = {\n prefix: 'fas',\n iconName: 'school-circle-exclamation',\n icon: [640, 512, [], \"e56c\", \"M337.8 5.4C327-1.8 313-1.8 302.2 5.4L166.3 96H48C21.5 96 0 117.5 0 144V464c0 26.5 21.5 48 48 48H320v0H256V416c0-35.3 28.7-64 64-64l.3 0h.5c3.4-37.7 18.7-72.1 42.2-99.1C350.2 260 335.6 264 320 264c-48.6 0-88-39.4-88-88s39.4-88 88-88s88 39.4 88 88c0 18.3-5.6 35.3-15.1 49.4c29-21 64.6-33.4 103.1-33.4c59.5 0 112.1 29.6 144 74.8V144c0-26.5-21.5-48-48-48H473.7L337.8 5.4zM96 192h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16V208c0-8.8 7.2-16 16-16zm0 128h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16V336c0-8.8 7.2-16 16-16zM320 128c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H336V144c0-8.8-7.2-16-16-16zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faCrop = {\n prefix: 'fas',\n iconName: 'crop',\n icon: [512, 512, [], \"f125\", \"M448 109.3l54.6-54.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L402.7 64 160 64v64l178.7 0L128 338.7V32c0-17.7-14.3-32-32-32S64 14.3 64 32V64H32C14.3 64 0 78.3 0 96s14.3 32 32 32H64V384c0 35.3 28.7 64 64 64H352V384H173.3L384 173.3 384 480c0 17.7 14.3 32 32 32s32-14.3 32-32V448h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H448l0-274.7z\"]\n};\nvar faAnglesDown = {\n prefix: 'fas',\n iconName: 'angles-down',\n icon: [448, 512, [\"angle-double-down\"], \"f103\", \"M246.6 470.6c-12.5 12.5-32.8 12.5-45.3 0l-160-160c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L224 402.7 361.4 265.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-160 160zm160-352l-160 160c-12.5 12.5-32.8 12.5-45.3 0l-160-160c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L224 210.7 361.4 73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3z\"]\n};\nvar faAngleDoubleDown = faAnglesDown;\nvar faUsersRectangle = {\n prefix: 'fas',\n iconName: 'users-rectangle',\n icon: [640, 512, [], \"e594\", \"M96 0C43 0 0 43 0 96V416c0 53 43 96 96 96H544c53 0 96-43 96-96V96c0-53-43-96-96-96H96zM64 96c0-17.7 14.3-32 32-32H544c17.7 0 32 14.3 32 32V416c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V96zm159.8 80a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM96 309.3c0 14.7 11.9 26.7 26.7 26.7h56.1c8-34.1 32.8-61.7 65.2-73.6c-7.5-4.1-16.2-6.4-25.3-6.4H149.3C119.9 256 96 279.9 96 309.3zM461.2 336h56.1c14.7 0 26.7-11.9 26.7-26.7c0-29.5-23.9-53.3-53.3-53.3H421.3c-9.2 0-17.8 2.3-25.3 6.4c32.4 11.9 57.2 39.5 65.2 73.6zM372 289c-3.9-.7-7.9-1-12-1H280c-4.1 0-8.1 .3-12 1c-26 4.4-47.3 22.7-55.9 47c-2.7 7.5-4.1 15.6-4.1 24c0 13.3 10.7 24 24 24H408c13.3 0 24-10.7 24-24c0-8.4-1.4-16.5-4.1-24c-8.6-24.3-29.9-42.6-55.9-47zM512 176a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM320 256a64 64 0 1 0 0-128 64 64 0 1 0 0 128z\"]\n};\nvar faPeopleRoof = {\n prefix: 'fas',\n iconName: 'people-roof',\n icon: [640, 512, [], \"e537\", \"M335.5 4l288 160c15.4 8.6 21 28.1 12.4 43.5s-28.1 21-43.5 12.4L320 68.6 47.5 220c-15.4 8.6-34.9 3-43.5-12.4s-3-34.9 12.4-43.5L304.5 4c9.7-5.4 21.4-5.4 31.1 0zM320 160a40 40 0 1 1 0 80 40 40 0 1 1 0-80zM144 256a40 40 0 1 1 0 80 40 40 0 1 1 0-80zm312 40a40 40 0 1 1 80 0 40 40 0 1 1 -80 0zM226.9 491.4L200 441.5V480c0 17.7-14.3 32-32 32H120c-17.7 0-32-14.3-32-32V441.5L61.1 491.4c-6.3 11.7-20.8 16-32.5 9.8s-16-20.8-9.8-32.5l37.9-70.3c15.3-28.5 45.1-46.3 77.5-46.3h19.5c16.3 0 31.9 4.5 45.4 12.6l33.6-62.3c15.3-28.5 45.1-46.3 77.5-46.3h19.5c32.4 0 62.1 17.8 77.5 46.3l33.6 62.3c13.5-8.1 29.1-12.6 45.4-12.6h19.5c32.4 0 62.1 17.8 77.5 46.3l37.9 70.3c6.3 11.7 1.9 26.2-9.8 32.5s-26.2 1.9-32.5-9.8L552 441.5V480c0 17.7-14.3 32-32 32H472c-17.7 0-32-14.3-32-32V441.5l-26.9 49.9c-6.3 11.7-20.8 16-32.5 9.8s-16-20.8-9.8-32.5l36.3-67.5c-1.7-1.7-3.2-3.6-4.3-5.8L376 345.5V400c0 17.7-14.3 32-32 32H296c-17.7 0-32-14.3-32-32V345.5l-26.9 49.9c-1.2 2.2-2.6 4.1-4.3 5.8l36.3 67.5c6.3 11.7 1.9 26.2-9.8 32.5s-26.2 1.9-32.5-9.8z\"]\n};\nvar faPeopleLine = {\n prefix: 'fas',\n iconName: 'people-line',\n icon: [640, 512, [], \"e534\", \"M360 72a40 40 0 1 0 -80 0 40 40 0 1 0 80 0zM144 208a40 40 0 1 0 0-80 40 40 0 1 0 0 80zM32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H32zM496 208a40 40 0 1 0 0-80 40 40 0 1 0 0 80zM200 313.5l26.9 49.9c6.3 11.7 20.8 16 32.5 9.8s16-20.8 9.8-32.5l-36.3-67.5c1.7-1.7 3.2-3.6 4.3-5.8L264 217.5V272c0 17.7 14.3 32 32 32h48c17.7 0 32-14.3 32-32V217.5l26.9 49.9c1.2 2.2 2.6 4.1 4.3 5.8l-36.3 67.5c-6.3 11.7-1.9 26.2 9.8 32.5s26.2 1.9 32.5-9.8L440 313.5V352c0 17.7 14.3 32 32 32h48c17.7 0 32-14.3 32-32V313.5l26.9 49.9c6.3 11.7 20.8 16 32.5 9.8s16-20.8 9.8-32.5l-37.9-70.3c-15.3-28.5-45.1-46.3-77.5-46.3H486.2c-16.3 0-31.9 4.5-45.4 12.6l-33.6-62.3c-15.3-28.5-45.1-46.3-77.5-46.3H310.2c-32.4 0-62.1 17.8-77.5 46.3l-33.6 62.3c-13.5-8.1-29.1-12.6-45.4-12.6H134.2c-32.4 0-62.1 17.8-77.5 46.3L18.9 340.6c-6.3 11.7-1.9 26.2 9.8 32.5s26.2 1.9 32.5-9.8L88 313.5V352c0 17.7 14.3 32 32 32h48c17.7 0 32-14.3 32-32V313.5z\"]\n};\nvar faBeerMugEmpty = {\n prefix: 'fas',\n iconName: 'beer-mug-empty',\n icon: [512, 512, [\"beer\"], \"f0fc\", \"M32 64c0-17.7 14.3-32 32-32H352c17.7 0 32 14.3 32 32V96h51.2c42.4 0 76.8 34.4 76.8 76.8V274.9c0 30.4-17.9 57.9-45.6 70.2L384 381.7V416c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V64zM384 311.6l56.4-25.1c4.6-2.1 7.6-6.6 7.6-11.7V172.8c0-7.1-5.7-12.8-12.8-12.8H384V311.6zM160 144c0-8.8-7.2-16-16-16s-16 7.2-16 16V368c0 8.8 7.2 16 16 16s16-7.2 16-16V144zm64 0c0-8.8-7.2-16-16-16s-16 7.2-16 16V368c0 8.8 7.2 16 16 16s16-7.2 16-16V144zm64 0c0-8.8-7.2-16-16-16s-16 7.2-16 16V368c0 8.8 7.2 16 16 16s16-7.2 16-16V144z\"]\n};\nvar faBeer = faBeerMugEmpty;\nvar faDiagramPredecessor = {\n prefix: 'fas',\n iconName: 'diagram-predecessor',\n icon: [512, 512, [], \"e477\", \"M448 416l0-64L64 352l0 64 384 0zm0 64L64 480c-35.3 0-64-28.7-64-64l0-64c0-35.3 28.7-64 64-64l384 0c35.3 0 64 28.7 64 64l0 64c0 35.3-28.7 64-64 64zM288 160c0 35.3-28.7 64-64 64L64 224c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l144 0 16 0 144 0c44.2 0 80 35.8 80 80l0 16 38.1 0c21.4 0 32.1 25.9 17 41L433 239c-9.4 9.4-24.6 9.4-33.9 0L329 169c-15.1-15.1-4.4-41 17-41l38.1 0 0-16c0-8.8-7.2-16-16-16l-80 0 0 64z\"]\n};\nvar faArrowUpLong = {\n prefix: 'fas',\n iconName: 'arrow-up-long',\n icon: [384, 512, [\"long-arrow-up\"], \"f176\", \"M214.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3V480c0 17.7 14.3 32 32 32s32-14.3 32-32V109.3l73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128z\"]\n};\nvar faLongArrowUp = faArrowUpLong;\nvar faFireFlameSimple = {\n prefix: 'fas',\n iconName: 'fire-flame-simple',\n icon: [384, 512, [\"burn\"], \"f46a\", \"M372.5 256.5l-.7-1.9C337.8 160.8 282 76.5 209.1 8.5l-3.3-3C202.1 2 197.1 0 192 0s-10.1 2-13.8 5.5l-3.3 3C102 76.5 46.2 160.8 12.2 254.6l-.7 1.9C3.9 277.3 0 299.4 0 321.6C0 426.7 86.8 512 192 512s192-85.3 192-190.4c0-22.2-3.9-44.2-11.5-65.1zm-90.8 49.5c4.1 9.3 6.2 19.4 6.2 29.5c0 53-43 96.5-96 96.5s-96-43.5-96-96.5c0-10.1 2.1-20.3 6.2-29.5l1.9-4.3c15.8-35.4 37.9-67.7 65.3-95.1l8.9-8.9c3.6-3.6 8.5-5.6 13.6-5.6s10 2 13.6 5.6l8.9 8.9c27.4 27.4 49.6 59.7 65.3 95.1l1.9 4.3z\"]\n};\nvar faBurn = faFireFlameSimple;\nvar faPerson = {\n prefix: 'fas',\n iconName: 'person',\n icon: [320, 512, [129485, \"male\"], \"f183\", \"M112 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V256.9L59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c17.4-28.9 48.6-46.6 82.3-46.6h29.7c33.7 0 64.9 17.7 82.3 46.6l58.3 97c9.1 15.1 4.2 34.8-10.9 43.9s-34.8 4.2-43.9-10.9L232 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H152z\"]\n};\nvar faMale = faPerson;\nvar faLaptop = {\n prefix: 'fas',\n iconName: 'laptop',\n icon: [640, 512, [128187], \"f109\", \"M128 32C92.7 32 64 60.7 64 96V352h64V96H512V352h64V96c0-35.3-28.7-64-64-64H128zM19.2 384C8.6 384 0 392.6 0 403.2C0 445.6 34.4 480 76.8 480H563.2c42.4 0 76.8-34.4 76.8-76.8c0-10.6-8.6-19.2-19.2-19.2H19.2z\"]\n};\nvar faFileCsv = {\n prefix: 'fas',\n iconName: 'file-csv',\n icon: [512, 512, [], \"f6dd\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V304H176c-35.3 0-64 28.7-64 64V512H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zM200 352h16c22.1 0 40 17.9 40 40v8c0 8.8-7.2 16-16 16s-16-7.2-16-16v-8c0-4.4-3.6-8-8-8H200c-4.4 0-8 3.6-8 8v80c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8v-8c0-8.8 7.2-16 16-16s16 7.2 16 16v8c0 22.1-17.9 40-40 40H200c-22.1 0-40-17.9-40-40V392c0-22.1 17.9-40 40-40zm133.1 0H368c8.8 0 16 7.2 16 16s-7.2 16-16 16H333.1c-7.2 0-13.1 5.9-13.1 13.1c0 5.2 3 9.9 7.8 12l37.4 16.6c16.3 7.2 26.8 23.4 26.8 41.2c0 24.9-20.2 45.1-45.1 45.1H304c-8.8 0-16-7.2-16-16s7.2-16 16-16h42.9c7.2 0 13.1-5.9 13.1-13.1c0-5.2-3-9.9-7.8-12l-37.4-16.6c-16.3-7.2-26.8-23.4-26.8-41.2c0-24.9 20.2-45.1 45.1-45.1zm98.9 0c8.8 0 16 7.2 16 16v31.6c0 23 5.5 45.6 16 66c10.5-20.3 16-42.9 16-66V368c0-8.8 7.2-16 16-16s16 7.2 16 16v31.6c0 34.7-10.3 68.7-29.6 97.6l-5.1 7.7c-3 4.5-8 7.1-13.3 7.1s-10.3-2.7-13.3-7.1l-5.1-7.7c-19.3-28.9-29.6-62.9-29.6-97.6V368c0-8.8 7.2-16 16-16z\"]\n};\nvar faMenorah = {\n prefix: 'fas',\n iconName: 'menorah',\n icon: [640, 512, [], \"f676\", \"M20.8 7.4C22.8 2.9 27.1 0 32 0s9.2 2.9 11.2 7.4L61.3 49.7c1.8 4.1 2.7 8.6 2.7 13.1V64c0 17.7-14.3 32-32 32S0 81.7 0 64V62.8c0-4.5 .9-8.9 2.7-13.1L20.8 7.4zm96 0C118.8 2.9 123.1 0 128 0s9.2 2.9 11.2 7.4l18.2 42.4c1.8 4.1 2.7 8.6 2.7 13.1V64c0 17.7-14.3 32-32 32s-32-14.3-32-32V62.8c0-4.5 .9-8.9 2.7-13.1L116.8 7.4zm77.8 42.4L212.8 7.4C214.8 2.9 219.1 0 224 0s9.2 2.9 11.2 7.4l18.2 42.4c1.8 4.1 2.7 8.6 2.7 13.1V64c0 17.7-14.3 32-32 32s-32-14.3-32-32V62.8c0-4.5 .9-8.9 2.7-13.1zM308.8 7.4C310.8 2.9 315.1 0 320 0s9.2 2.9 11.2 7.4l18.2 42.4c1.8 4.1 2.7 8.6 2.7 13.1V64c0 17.7-14.3 32-32 32s-32-14.3-32-32V62.8c0-4.5 .9-8.9 2.7-13.1L308.8 7.4zm77.8 42.4L404.8 7.4C406.8 2.9 411.1 0 416 0s9.2 2.9 11.2 7.4l18.2 42.4c1.8 4.1 2.7 8.6 2.7 13.1V64c0 17.7-14.3 32-32 32s-32-14.3-32-32V62.8c0-4.5 .9-8.9 2.7-13.1zM500.8 7.4C502.8 2.9 507.1 0 512 0s9.2 2.9 11.2 7.4l18.2 42.4c1.8 4.1 2.7 8.6 2.7 13.1V64c0 17.7-14.3 32-32 32s-32-14.3-32-32V62.8c0-4.5 .9-8.9 2.7-13.1L500.8 7.4zm77.8 42.4L596.8 7.4C598.8 2.9 603.1 0 608 0s9.2 2.9 11.2 7.4l18.2 42.4c1.8 4.1 2.7 8.6 2.7 13.1V64c0 17.7-14.3 32-32 32s-32-14.3-32-32V62.8c0-4.5 .9-8.9 2.7-13.1zM32 128c17.7 0 32 14.3 32 32V288c0 17.7 14.3 32 32 32H288V160c0-17.7 14.3-32 32-32s32 14.3 32 32V320H544c17.7 0 32-14.3 32-32V160c0-17.7 14.3-32 32-32s32 14.3 32 32V288c0 53-43 96-96 96H352v64H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H320 160c-17.7 0-32-14.3-32-32s14.3-32 32-32H288V384H96c-53 0-96-43-96-96V160c0-17.7 14.3-32 32-32zm96 0c17.7 0 32 14.3 32 32v96 32H96V256 160c0-17.7 14.3-32 32-32zm96 0c17.7 0 32 14.3 32 32v96 32H192V256 160c0-17.7 14.3-32 32-32zm192 0c17.7 0 32 14.3 32 32v96 32H384V256 160c0-17.7 14.3-32 32-32zm96 0c17.7 0 32 14.3 32 32v96 32H480V256 160c0-17.7 14.3-32 32-32z\"]\n};\nvar faTruckPlane = {\n prefix: 'fas',\n iconName: 'truck-plane',\n icon: [640, 512, [], \"e58f\", \"M200 0c-30.6 0-56 54.7-56 86.1V192.5L7.8 274.3C2.9 277.2 0 282.4 0 288v64c0 5.1 2.4 9.8 6.4 12.8s9.3 3.9 14.1 2.5l123.4-37v81.2l-50 40c-3.8 3-6 7.6-6 12.5v32c0 5.1 2.5 10 6.6 13s9.5 3.8 14.4 2.2L200 480.9 290.4 511c-1.6-4.7-2.4-9.8-2.4-15V463.4c-18.2-10.5-30.7-29.7-31.9-51.8l-.1-.1V408 325.5 184l0-1.1 0 0V86.1C256 54.7 231.5 0 200 0zm88 176V400c0 20.9 13.4 38.7 32 45.3V488c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24V448H544v40c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24V445.3c18.6-6.6 32-24.4 32-45.3V176c0-26.5-21.5-48-48-48H336c-26.5 0-48 21.5-48 48zm79.8 78.7c3.3-8.7 11.2-14.7 20.5-14.7H539.7c9.2 0 17.2 6 20.5 14.7L576 304H352l15.8-49.3zM568 352a24 24 0 1 1 0 48 24 24 0 1 1 0-48zM336 376a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faRecordVinyl = {\n prefix: 'fas',\n iconName: 'record-vinyl',\n icon: [512, 512, [], \"f8d9\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm256-96a96 96 0 1 1 0 192 96 96 0 1 1 0-192zm0 224a128 128 0 1 0 0-256 128 128 0 1 0 0 256zm0-96a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faFaceGrinStars = {\n prefix: 'fas',\n iconName: 'face-grin-stars',\n icon: [512, 512, [129321, \"grin-stars\"], \"f587\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm407.4 75.5c5-11.8-7-22.5-19.3-18.7c-39.7 12.2-84.5 19-131.8 19s-92.1-6.8-131.8-19c-12.3-3.8-24.3 6.9-19.3 18.7c25 59.1 83.2 100.5 151.1 100.5s126.2-41.4 151.1-100.5zM160 120c-3.1 0-5.9 1.8-7.2 4.6l-16.6 34.7-38.1 5c-3.1 .4-5.6 2.5-6.6 5.5s-.1 6.2 2.1 8.3l27.9 26.5-7 37.8c-.6 3 .7 6.1 3.2 7.9s5.8 2 8.5 .6L160 232.5l33.8 18.3c2.7 1.5 6 1.3 8.5-.6s3.7-4.9 3.2-7.9l-7-37.8L226.4 178c2.2-2.1 3.1-5.3 2.1-8.3s-3.5-5.1-6.6-5.5l-38.1-5-16.6-34.7c-1.3-2.8-4.1-4.6-7.2-4.6zm192 0c-3.1 0-5.9 1.8-7.2 4.6l-16.6 34.7-38.1 5c-3.1 .4-5.6 2.5-6.6 5.5s-.1 6.2 2.1 8.3l27.9 26.5-7 37.8c-.6 3 .7 6.1 3.2 7.9s5.8 2 8.5 .6L352 232.5l33.8 18.3c2.7 1.5 6 1.3 8.5-.6s3.7-4.9 3.2-7.9l-7-37.8L418.4 178c2.2-2.1 3.1-5.3 2.1-8.3s-3.5-5.1-6.6-5.5l-38.1-5-16.6-34.7c-1.3-2.8-4.1-4.6-7.2-4.6z\"]\n};\nvar faGrinStars = faFaceGrinStars;\nvar faBong = {\n prefix: 'fas',\n iconName: 'bong',\n icon: [448, 512, [], \"f55c\", \"M160 208.5c0 29.1-15.6 53.9-37.2 67.8c-17.2 11.1-31.5 26.1-41.7 43.7H302.9c-10.2-17.6-24.5-32.6-41.7-43.7c-21.6-13.9-37.2-38.7-37.2-67.8V64H160V208.5zM288 64V208.5c0 5.7 3.1 10.9 7.9 14c11.2 7.2 21.5 15.5 30.9 24.8L366.1 208l-7-7c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l24 24 24 24c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-7-7-43.3 43.3C374 314.1 384 347.9 384 384c0 39.4-11.9 76.1-32.2 106.5c-9.6 14.4-26.5 21.5-43.8 21.5H76.1c-17.3 0-34.2-7.1-43.8-21.5C11.9 460.1 0 423.4 0 384c0-67.8 35.1-127.3 88.1-161.5c4.8-3.1 7.9-8.3 7.9-14V64C78.3 64 64 49.7 64 32S78.3 0 96 0h16H272h16c17.7 0 32 14.3 32 32s-14.3 32-32 32z\"]\n};\nvar faSpaghettiMonsterFlying = {\n prefix: 'fas',\n iconName: 'spaghetti-monster-flying',\n icon: [640, 512, [\"pastafarianism\"], \"f67b\", \"M208 64a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm48 0c0 16.2-6 31.1-16 42.3l15.6 31.2c18.7-6 39.9-9.5 64.4-9.5s45.8 3.5 64.4 9.5L400 106.3C390 95.1 384 80.2 384 64c0-35.3 28.7-64 64-64s64 28.7 64 64s-28.7 64-64 64c-1.7 0-3.4-.1-5.1-.2L427.8 158c21.1 13.6 37.7 30.2 51.4 46.4c7.1 8.3 13.5 16.6 19.3 24l1.4 1.8c6.3 8.1 11.6 14.8 16.7 20.4C527.3 262.3 532.7 264 536 264c2.5 0 4.3-.6 7.1-3.3c3.7-3.5 7.1-8.8 12.5-17.4l.6-.9c4.6-7.4 11-17.6 19.4-25.7c9.7-9.3 22.9-16.7 40.4-16.7c13.3 0 24 10.7 24 24s-10.7 24-24 24c-2.5 0-4.3 .6-7.1 3.3c-3.7 3.5-7.1 8.8-12.5 17.4l-.6 .9c-4.6 7.4-11 17.6-19.4 25.7c-9.7 9.3-22.9 16.7-40.4 16.7c-18.5 0-32.9-8.5-44.3-18.6c-3.1 4-6.6 8.3-10.5 12.7c1.4 4.3 2.8 8.5 4 12.5c.9 3 1.8 5.8 2.6 8.6c3 9.8 5.5 18.2 8.6 25.9c3.9 9.8 7.4 15.4 10.8 18.5c2.6 2.4 5.9 4.3 12.8 4.3c8.7 0 16.9-4.2 33.7-13.2c15-8 35.7-18.8 62.3-18.8c13.3 0 24 10.7 24 24s-10.7 24-24 24c-13.4 0-24.7 5.2-39.7 13.2c-1 .6-2.1 1.1-3.2 1.7C559.9 414 541.4 424 520 424c-18.4 0-33.6-6.1-45.5-17.2c-11.1-10.3-17.9-23.7-22.7-36c-3.6-9-6.7-19.1-9.5-28.5c-16.4 12.3-36.1 23.6-58.9 31.3c3.6 10.8 8.4 23.5 14.4 36.2c7.5 15.9 16.2 30.4 25.8 40.5C433 460.5 441.2 464 448 464c13.3 0 24 10.7 24 24s-10.7 24-24 24c-25.2 0-45-13.5-59.5-28.8c-14.5-15.4-25.7-34.9-34.2-53c-8-17-14.1-33.8-18.3-46.9c-5.2 .4-10.6 .6-16 .6s-10.8-.2-16-.6c-4.2 13-10.3 29.9-18.3 46.9c-8.5 18.1-19.8 37.6-34.2 53C237 498.5 217.2 512 192 512c-13.3 0-24-10.7-24-24s10.7-24 24-24c6.8 0 15-3.5 24.5-13.7c9.5-10.1 18.3-24.6 25.8-40.5c5.9-12.6 10.7-25.4 14.4-36.2c-22.8-7.7-42.5-19-58.9-31.3c-2.9 9.4-6 19.5-9.5 28.5c-4.8 12.2-11.6 25.6-22.7 36C153.6 417.9 138.4 424 120 424c-21.4 0-39.9-10-53.1-17.1l0 0c-1.1-.6-2.2-1.2-3.2-1.7c-15-8-26.3-13.2-39.7-13.2c-13.3 0-24-10.7-24-24s10.7-24 24-24c26.6 0 47.3 10.8 62.3 18.8c16.8 9 25 13.2 33.7 13.2c6.8 0 10.2-1.9 12.8-4.3c3.4-3.2 7-8.8 10.8-18.5c3-7.7 5.6-16.1 8.6-25.9c.8-2.7 1.7-5.6 2.6-8.6c1.2-4 2.6-8.2 4-12.5c-3.9-4.5-7.4-8.8-10.5-12.7C136.9 303.5 122.5 312 104 312c-17.5 0-30.7-7.4-40.4-16.7c-8.4-8.1-14.8-18.3-19.4-25.7l-.6-.9c-5.4-8.6-8.8-13.9-12.5-17.4c-2.8-2.7-4.6-3.3-7.1-3.3c-13.3 0-24-10.7-24-24s10.7-24 24-24c17.5 0 30.7 7.4 40.4 16.7c8.4 8.1 14.8 18.3 19.4 25.7l.6 .9c5.4 8.6 8.8 13.9 12.5 17.4c2.8 2.7 4.6 3.3 7.1 3.3c3.3 0 8.7-1.7 19.4-13.4c5.1-5.6 10.4-12.3 16.7-20.4l1.4-1.8c5.8-7.4 12.2-15.7 19.3-24c13.8-16.2 30.3-32.8 51.4-46.4l-15.1-30.2c-1.7 .1-3.4 .2-5.1 .2c-35.3 0-64-28.7-64-64s28.7-64 64-64s64 28.7 64 64zm208 0a16 16 0 1 0 -32 0 16 16 0 1 0 32 0z\"]\n};\nvar faPastafarianism = faSpaghettiMonsterFlying;\nvar faArrowDownUpAcrossLine = {\n prefix: 'fas',\n iconName: 'arrow-down-up-across-line',\n icon: [576, 512, [], \"e4af\", \"M137.4 502.6c12.5 12.5 32.8 12.5 45.3 0l96-96c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 402.7V288H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H448V109.3l41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L384 109.3V224H192 128 32c-17.7 0-32 14.3-32 32s14.3 32 32 32h96V402.7L86.6 361.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96zM128 192h64V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V192zM448 320H384V448c0 17.7 14.3 32 32 32s32-14.3 32-32V320z\"]\n};\nvar faSpoon = {\n prefix: 'fas',\n iconName: 'spoon',\n icon: [512, 512, [129348, 61873, \"utensil-spoon\"], \"f2e5\", \"M245.8 220.9c-14.5-17.6-21.8-39.2-21.8-60.8C224 80 320 0 416 0c53 0 96 43 96 96c0 96-80 192-160.2 192c-21.6 0-43.2-7.3-60.8-21.8L54.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L245.8 220.9z\"]\n};\nvar faUtensilSpoon = faSpoon;\nvar faJarWheat = {\n prefix: 'fas',\n iconName: 'jar-wheat',\n icon: [320, 512, [], \"e517\", \"M32 32C32 14.3 46.3 0 64 0H256c17.7 0 32 14.3 32 32s-14.3 32-32 32H64C46.3 64 32 49.7 32 32zM0 160c0-35.3 28.7-64 64-64H256c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V160zm112 0H69.8c-3.2 0-5.8 2.6-5.8 5.8C64 198 90 224 122.2 224H144h32 21.8c32.1 0 58.2-26 58.2-58.2c0-3.2-2.6-5.8-5.8-5.8H208c-19.1 0-36.3 8.4-48 21.7c-11.7-13.3-28.9-21.7-48-21.7zm48 117.7c-11.7-13.3-28.9-21.7-48-21.7H69.8c-3.2 0-5.8 2.6-5.8 5.8C64 294 90 320 122.2 320H144h32 21.8c32.1 0 58.2-26 58.2-58.2c0-3.2-2.6-5.8-5.8-5.8H208c-19.1 0-36.3 8.4-48 21.7zM112 352H69.8c-3.2 0-5.8 2.6-5.8 5.8C64 390 90 416 122.2 416H144v32c0 8.8 7.2 16 16 16s16-7.2 16-16V416h21.8c32.1 0 58.2-26 58.2-58.2c0-3.2-2.6-5.8-5.8-5.8H208c-19.1 0-36.3 8.4-48 21.7c-11.7-13.3-28.9-21.7-48-21.7z\"]\n};\nvar faEnvelopesBulk = {\n prefix: 'fas',\n iconName: 'envelopes-bulk',\n icon: [640, 512, [\"mail-bulk\"], \"f674\", \"M128 0C110.3 0 96 14.3 96 32V224h96V192c0-35.3 28.7-64 64-64H480V32c0-17.7-14.3-32-32-32H128zM256 160c-17.7 0-32 14.3-32 32v32h96c35.3 0 64 28.7 64 64V416H576c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32H256zm240 64h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H496c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zM64 256c-17.7 0-32 14.3-32 32v13L187.1 415.9c1.4 1 3.1 1.6 4.9 1.6s3.5-.6 4.9-1.6L352 301V288c0-17.7-14.3-32-32-32H64zm288 84.8L216 441.6c-6.9 5.1-15.3 7.9-24 7.9s-17-2.8-24-7.9L32 340.8V480c0 17.7 14.3 32 32 32H320c17.7 0 32-14.3 32-32V340.8z\"]\n};\nvar faMailBulk = faEnvelopesBulk;\nvar faFileCircleExclamation = {\n prefix: 'fas',\n iconName: 'file-circle-exclamation',\n icon: [576, 512, [], \"e4eb\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384v38.6C310.1 219.5 256 287.4 256 368c0 59.1 29.1 111.3 73.7 143.3c-3.2 .5-6.4 .7-9.7 .7H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zm48 96a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm0 240a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm0-192c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16V288c0-8.8-7.2-16-16-16z\"]\n};\nvar faCircleH = {\n prefix: 'fas',\n iconName: 'circle-h',\n icon: [512, 512, [9405, \"hospital-symbol\"], \"f47e\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM368 152V256 360c0 13.3-10.7 24-24 24s-24-10.7-24-24V280H192l0 80c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-208c0-13.3 10.7-24 24-24s24 10.7 24 24v80H320V152c0-13.3 10.7-24 24-24s24 10.7 24 24z\"]\n};\nvar faHospitalSymbol = faCircleH;\nvar faPager = {\n prefix: 'fas',\n iconName: 'pager',\n icon: [512, 512, [128223], \"f815\", \"M0 128C0 92.7 28.7 64 64 64H448c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128zm64 32v64c0 17.7 14.3 32 32 32H416c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32H96c-17.7 0-32 14.3-32 32zM80 320c-13.3 0-24 10.7-24 24s10.7 24 24 24h56c13.3 0 24-10.7 24-24s-10.7-24-24-24H80zm136 0c-13.3 0-24 10.7-24 24s10.7 24 24 24h48c13.3 0 24-10.7 24-24s-10.7-24-24-24H216z\"]\n};\nvar faAddressBook = {\n prefix: 'fas',\n iconName: 'address-book',\n icon: [512, 512, [62138, \"contact-book\"], \"f2b9\", \"M96 0C60.7 0 32 28.7 32 64V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H96zM208 288h64c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16H144c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80zm-32-96a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM512 80c0-8.8-7.2-16-16-16s-16 7.2-16 16v64c0 8.8 7.2 16 16 16s16-7.2 16-16V80zM496 192c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm16 144c0-8.8-7.2-16-16-16s-16 7.2-16 16v64c0 8.8 7.2 16 16 16s16-7.2 16-16V336z\"]\n};\nvar faContactBook = faAddressBook;\nvar faStrikethrough = {\n prefix: 'fas',\n iconName: 'strikethrough',\n icon: [512, 512, [], \"f0cc\", \"M161.3 144c3.2-17.2 14-30.1 33.7-38.6c21.1-9 51.8-12.3 88.6-6.5c11.9 1.9 48.8 9.1 60.1 12c17.1 4.5 34.6-5.6 39.2-22.7s-5.6-34.6-22.7-39.2c-14.3-3.8-53.6-11.4-66.6-13.4c-44.7-7-88.3-4.2-123.7 10.9c-36.5 15.6-64.4 44.8-71.8 87.3c-.1 .6-.2 1.1-.2 1.7c-2.8 23.9 .5 45.6 10.1 64.6c4.5 9 10.2 16.9 16.7 23.9H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H270.1c-.1 0-.3-.1-.4-.1l-1.1-.3c-36-10.8-65.2-19.6-85.2-33.1c-9.3-6.3-15-12.6-18.2-19.1c-3.1-6.1-5.2-14.6-3.8-27.4zM348.9 337.2c2.7 6.5 4.4 15.8 1.9 30.1c-3 17.6-13.8 30.8-33.9 39.4c-21.1 9-51.7 12.3-88.5 6.5c-18-2.9-49.1-13.5-74.4-22.1c-5.6-1.9-11-3.7-15.9-5.4c-16.8-5.6-34.9 3.5-40.5 20.3s3.5 34.9 20.3 40.5c3.6 1.2 7.9 2.7 12.7 4.3l0 0 0 0c24.9 8.5 63.6 21.7 87.6 25.6l0 0 .2 0c44.7 7 88.3 4.2 123.7-10.9c36.5-15.6 64.4-44.8 71.8-87.3c3.6-21 2.7-40.4-3.1-58.1H335.1c7 5.6 11.4 11.2 13.9 17.2z\"]\n};\nvar faK = {\n prefix: 'fas',\n iconName: 'k',\n icon: [320, 512, [107], \"4b\", \"M311 86.3c12.3-12.7 12-32.9-.7-45.2s-32.9-12-45.2 .7l-155.2 160L64 249V64c0-17.7-14.3-32-32-32S0 46.3 0 64V328 448c0 17.7 14.3 32 32 32s32-14.3 32-32V341l64.7-66.7 133 192c10.1 14.5 30 18.1 44.5 8.1s18.1-30 8.1-44.5L174.1 227.4 311 86.3z\"]\n};\nvar faLandmarkFlag = {\n prefix: 'fas',\n iconName: 'landmark-flag',\n icon: [512, 512, [], \"e51c\", \"M272 0h80c8.8 0 16 7.2 16 16V80c0 8.8-7.2 16-16 16H272v32H464c17.7 0 32 14.3 32 32s-14.3 32-32 32H48c-17.7 0-32-14.3-32-32s14.3-32 32-32H240V16c0-8.8 7.2-16 16-16h16zM64 224h64V416h40V224h64V416h48V224h64V416h40V224h64V420.3c.6 .3 1.2 .7 1.8 1.1l48 32c11.7 7.8 17 22.4 12.9 35.9S494.1 512 480 512H32c-14.1 0-26.5-9.2-30.6-22.7s1.1-28.1 12.9-35.9l48-32c.6-.4 1.2-.7 1.8-1.1V224z\"]\n};\nvar faPencil = {\n prefix: 'fas',\n iconName: 'pencil',\n icon: [512, 512, [9999, 61504, \"pencil-alt\"], \"f303\", \"M410.3 231l11.3-11.3-33.9-33.9-62.1-62.1L291.7 89.8l-11.3 11.3-22.6 22.6L58.6 322.9c-10.4 10.4-18 23.3-22.2 37.4L1 480.7c-2.5 8.4-.2 17.5 6.1 23.7s15.3 8.5 23.7 6.1l120.3-35.4c14.1-4.2 27-11.8 37.4-22.2L387.7 253.7 410.3 231zM160 399.4l-9.1 22.7c-4 3.1-8.5 5.4-13.3 6.9L59.4 452l23-78.1c1.4-4.9 3.8-9.4 6.9-13.3l22.7-9.1v32c0 8.8 7.2 16 16 16h32zM362.7 18.7L348.3 33.2 325.7 55.8 314.3 67.1l33.9 33.9 62.1 62.1 33.9 33.9 11.3-11.3 22.6-22.6 14.5-14.5c25-25 25-65.5 0-90.5L453.3 18.7c-25-25-65.5-25-90.5 0zm-47.4 168l-144 144c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6l144-144c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faPencilAlt = faPencil;\nvar faBackward = {\n prefix: 'fas',\n iconName: 'backward',\n icon: [512, 512, [9194], \"f04a\", \"M459.5 440.6c9.5 7.9 22.8 9.7 34.1 4.4s18.4-16.6 18.4-29V96c0-12.4-7.2-23.7-18.4-29s-24.5-3.6-34.1 4.4L288 214.3V256v41.7L459.5 440.6zM256 352V256 128 96c0-12.4-7.2-23.7-18.4-29s-24.5-3.6-34.1 4.4l-192 160C4.2 237.5 0 246.5 0 256s4.2 18.5 11.5 24.6l192 160c9.5 7.9 22.8 9.7 34.1 4.4s18.4-16.6 18.4-29V352z\"]\n};\nvar faCaretRight = {\n prefix: 'fas',\n iconName: 'caret-right',\n icon: [256, 512, [], \"f0da\", \"M246.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-9.2-9.2-22.9-11.9-34.9-6.9s-19.8 16.6-19.8 29.6l0 256c0 12.9 7.8 24.6 19.8 29.6s25.7 2.2 34.9-6.9l128-128z\"]\n};\nvar faComments = {\n prefix: 'fas',\n iconName: 'comments',\n icon: [640, 512, [128490, 61670], \"f086\", \"M208 352c114.9 0 208-78.8 208-176S322.9 0 208 0S0 78.8 0 176c0 38.6 14.7 74.3 39.6 103.4c-3.5 9.4-8.7 17.7-14.2 24.7c-4.8 6.2-9.7 11-13.3 14.3c-1.8 1.6-3.3 2.9-4.3 3.7c-.5 .4-.9 .7-1.1 .8l-.2 .2 0 0 0 0C1 327.2-1.4 334.4 .8 340.9S9.1 352 16 352c21.8 0 43.8-5.6 62.1-12.5c9.2-3.5 17.8-7.4 25.3-11.4C134.1 343.3 169.8 352 208 352zM448 176c0 112.3-99.1 196.9-216.5 207C255.8 457.4 336.4 512 432 512c38.2 0 73.9-8.7 104.7-23.9c7.5 4 16 7.9 25.2 11.4c18.3 6.9 40.3 12.5 62.1 12.5c6.9 0 13.1-4.5 15.2-11.1c2.1-6.6-.2-13.8-5.8-17.9l0 0 0 0-.2-.2c-.2-.2-.6-.4-1.1-.8c-1-.8-2.5-2-4.3-3.7c-3.6-3.3-8.5-8.1-13.3-14.3c-5.5-7-10.7-15.4-14.2-24.7c24.9-29 39.6-64.7 39.6-103.4c0-92.8-84.9-168.9-192.6-175.5c.4 5.1 .6 10.3 .6 15.5z\"]\n};\nvar faPaste = {\n prefix: 'fas',\n iconName: 'paste',\n icon: [512, 512, [\"file-clipboard\"], \"f0ea\", \"M160 0c-23.7 0-44.4 12.9-55.4 32H48C21.5 32 0 53.5 0 80V400c0 26.5 21.5 48 48 48H192V176c0-44.2 35.8-80 80-80h48V80c0-26.5-21.5-48-48-48H215.4C204.4 12.9 183.7 0 160 0zM272 128c-26.5 0-48 21.5-48 48V448v16c0 26.5 21.5 48 48 48H464c26.5 0 48-21.5 48-48V243.9c0-12.7-5.1-24.9-14.1-33.9l-67.9-67.9c-9-9-21.2-14.1-33.9-14.1H320 272zM160 40a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faFileClipboard = faPaste;\nvar faCodePullRequest = {\n prefix: 'fas',\n iconName: 'code-pull-request',\n icon: [512, 512, [], \"e13c\", \"M305.8 2.1C314.4 5.9 320 14.5 320 24V64h16c70.7 0 128 57.3 128 128V358.7c28.3 12.3 48 40.5 48 73.3c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-32.8 19.7-61 48-73.3V192c0-35.3-28.7-64-64-64H320v40c0 9.5-5.6 18.1-14.2 21.9s-18.8 2.3-25.8-4.1l-80-72c-5.1-4.6-7.9-11-7.9-17.8s2.9-13.3 7.9-17.8l80-72c7-6.3 17.2-7.9 25.8-4.1zM104 80A24 24 0 1 0 56 80a24 24 0 1 0 48 0zm8 73.3V358.7c28.3 12.3 48 40.5 48 73.3c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-32.8 19.7-61 48-73.3V153.3C19.7 141 0 112.8 0 80C0 35.8 35.8 0 80 0s80 35.8 80 80c0 32.8-19.7 61-48 73.3zM104 432a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zm328 24a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faClipboardList = {\n prefix: 'fas',\n iconName: 'clipboard-list',\n icon: [384, 512, [], \"f46d\", \"M192 0c-41.8 0-77.4 26.7-90.5 64H64C28.7 64 0 92.7 0 128V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H282.5C269.4 26.7 233.8 0 192 0zm0 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM72 272a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zm104-16H304c8.8 0 16 7.2 16 16s-7.2 16-16 16H176c-8.8 0-16-7.2-16-16s7.2-16 16-16zM72 368a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zm88 0c0-8.8 7.2-16 16-16H304c8.8 0 16 7.2 16 16s-7.2 16-16 16H176c-8.8 0-16-7.2-16-16z\"]\n};\nvar faTruckRampBox = {\n prefix: 'fas',\n iconName: 'truck-ramp-box',\n icon: [640, 512, [\"truck-loading\"], \"f4de\", \"M640 0V400c0 61.9-50.1 112-112 112c-61 0-110.5-48.7-112-109.3L48.4 502.9c-17.1 4.6-34.6-5.4-39.3-22.5s5.4-34.6 22.5-39.3L352 353.8V64c0-35.3 28.7-64 64-64H640zM576 400a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM23.1 207.7c-4.6-17.1 5.6-34.6 22.6-39.2l46.4-12.4 20.7 77.3c2.3 8.5 11.1 13.6 19.6 11.3l30.9-8.3c8.5-2.3 13.6-11.1 11.3-19.6l-20.7-77.3 46.4-12.4c17.1-4.6 34.6 5.6 39.2 22.6l41.4 154.5c4.6 17.1-5.6 34.6-22.6 39.2L103.7 384.9c-17.1 4.6-34.6-5.6-39.2-22.6L23.1 207.7z\"]\n};\nvar faTruckLoading = faTruckRampBox;\nvar faUserCheck = {\n prefix: 'fas',\n iconName: 'user-check',\n icon: [640, 512, [], \"f4fc\", \"M96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM0 482.3C0 383.8 79.8 304 178.3 304h91.4C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3zM625 177L497 305c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L591 143c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z\"]\n};\nvar faVialVirus = {\n prefix: 'fas',\n iconName: 'vial-virus',\n icon: [512, 512, [], \"e597\", \"M32 32C14.3 32 0 46.3 0 64S14.3 96 32 96V384c0 53 43 96 96 96c28.6 0 54.2-12.5 71.8-32.3c.1-14.2 5.6-28.3 16.4-39.1c.2-.2 .1-.6-.2-.6c-30.9 0-56-25.1-56-56s25.1-56 56-56c.3 0 .4-.4 .2-.6c-21.9-21.9-21.9-57.3 0-79.2c2.4-2.4 5-4.6 7.8-6.5V96c17.7 0 32-14.3 32-32s-14.3-32-32-32H160 96 32zM96 192V96h64v96H96zM216 376c28.8 0 43.2 34.8 22.9 55.2c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0c20.4-20.4 55.2-5.9 55.2 22.9c0 13.3 10.7 24 24 24s24-10.7 24-24c0-28.8 34.8-43.2 55.2-22.9c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9C444.8 410.8 459.2 376 488 376c13.3 0 24-10.7 24-24s-10.7-24-24-24c-28.8 0-43.2-34.8-22.9-55.2c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0C410.8 259.2 376 244.8 376 216c0-13.3-10.7-24-24-24s-24 10.7-24 24c0 28.8-34.8 43.2-55.2 22.9c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9c20.4 20.4 5.9 55.2-22.9 55.2c-13.3 0-24 10.7-24 24s10.7 24 24 24zm104-88a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm40 96a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faSheetPlastic = {\n prefix: 'fas',\n iconName: 'sheet-plastic',\n icon: [384, 512, [], \"e571\", \"M0 448c0 35.3 28.7 64 64 64H224V384c0-17.7 14.3-32 32-32H384V64c0-35.3-28.7-64-64-64H64C28.7 0 0 28.7 0 64V448zM171.3 75.3l-96 96c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6l96-96c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6zm96 32l-160 160c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6l160-160c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6zM384 384H256V512L384 384z\"]\n};\nvar faBlog = {\n prefix: 'fas',\n iconName: 'blog',\n icon: [512, 512, [], \"f781\", \"M192 32c0 17.7 14.3 32 32 32c123.7 0 224 100.3 224 224c0 17.7 14.3 32 32 32s32-14.3 32-32C512 128.9 383.1 0 224 0c-17.7 0-32 14.3-32 32zm0 96c0 17.7 14.3 32 32 32c70.7 0 128 57.3 128 128c0 17.7 14.3 32 32 32s32-14.3 32-32c0-106-86-192-192-192c-17.7 0-32 14.3-32 32zM96 144c0-26.5-21.5-48-48-48S0 117.5 0 144V368c0 79.5 64.5 144 144 144s144-64.5 144-144s-64.5-144-144-144H128v96h16c26.5 0 48 21.5 48 48s-21.5 48-48 48s-48-21.5-48-48V144z\"]\n};\nvar faUserNinja = {\n prefix: 'fas',\n iconName: 'user-ninja',\n icon: [448, 512, [129399], \"f504\", \"M224 256c-57.2 0-105.6-37.5-122-89.3c-1.1 1.3-2.2 2.6-3.5 3.8c-15.8 15.8-38.8 20.7-53.6 22.1c-8.1 .8-14.6-5.7-13.8-13.8c1.4-14.7 6.3-37.8 22.1-53.6c5.8-5.8 12.6-10.1 19.6-13.4c-7-3.2-13.8-7.6-19.6-13.4C37.4 82.7 32.6 59.7 31.1 44.9c-.8-8.1 5.7-14.6 13.8-13.8c14.7 1.4 37.8 6.3 53.6 22.1c4.8 4.8 8.7 10.4 11.7 16.1C131.4 28.2 174.4 0 224 0c70.7 0 128 57.3 128 128s-57.3 128-128 128zM0 482.3C0 399.5 56.4 330 132.8 309.9c6-1.6 12.2 .9 15.9 5.8l62.5 83.3c6.4 8.5 19.2 8.5 25.6 0l62.5-83.3c3.7-4.9 9.9-7.4 15.9-5.8C391.6 330 448 399.5 448 482.3c0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3zM160 96c-8.8 0-16 7.2-16 16s7.2 16 16 16H288c8.8 0 16-7.2 16-16s-7.2-16-16-16H160z\"]\n};\nvar faPersonArrowUpFromLine = {\n prefix: 'fas',\n iconName: 'person-arrow-up-from-line',\n icon: [640, 512, [], \"e539\", \"M192 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-8 352V352h16v96H184zm-64 0H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H152h80H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H264V256.9l28.6 47.5c9.1 15.1 28.8 20 43.9 10.9s20-28.8 10.9-43.9l-58.3-97c-17.4-28.9-48.6-46.6-82.3-46.6H177.1c-33.7 0-64.9 17.7-82.3 46.6l-58.3 97c-9.1 15.1-4.2 34.8 10.9 43.9s34.8 4.2 43.9-10.9L120 256.9V448zM598.6 121.4l-80-80c-12.5-12.5-32.8-12.5-45.3 0l-80 80c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L464 141.3 464 384c0 17.7 14.3 32 32 32s32-14.3 32-32V141.3l25.4 25.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3z\"]\n};\nvar faScrollTorah = {\n prefix: 'fas',\n iconName: 'scroll-torah',\n icon: [640, 512, [\"torah\"], \"f6a0\", \"M96 480V32C96 14.3 74.5 0 48 0S0 14.3 0 32V480c0 17.7 21.5 32 48 32s48-14.3 48-32zM512 32H128V480H512V32zM592 0c-26.5 0-48 14.3-48 32V480c0 17.7 21.5 32 48 32s48-14.3 48-32V32c0-17.7-21.5-32-48-32zM196 313.7c0-3.2 .9-6.4 2.5-9.2L226.7 256l-28.3-48.5c-1.6-2.8-2.5-6-2.5-9.2c0-10.1 8.2-18.3 18.3-18.3H271l31.4-53.9c3.6-6.3 10.3-10.1 17.6-10.1s13.9 3.8 17.6 10.1L369 180h56.7c10.1 0 18.3 8.2 18.3 18.3c0 3.2-.9 6.4-2.5 9.2L413.3 256l28.3 48.5c1.6 2.8 2.5 6 2.5 9.2c0 10.1-8.2 18.3-18.3 18.3H369l-31.4 53.9c-3.6 6.3-10.3 10.1-17.6 10.1s-13.9-3.8-17.6-10.1L271 332H214.3c-10.1 0-18.3-8.2-18.3-18.3zm124 54.7L341.2 332H298.8L320 368.4zM254.5 256l30.3 52h70.4l30.3-52-30.3-52H284.8l-30.3 52zm144.9 23.8L383 308h32.8l-16.4-28.2zM415.8 204H383l16.4 28.2L415.8 204zM320 143.6L298.8 180h42.4L320 143.6zM224.2 204l16.4 28.2L257 204H224.2zM257 308l-16.4-28.2L224.2 308H257z\"]\n};\nvar faTorah = faScrollTorah;\nvar faBroomBall = {\n prefix: 'fas',\n iconName: 'broom-ball',\n icon: [576, 512, [\"quidditch\", \"quidditch-broom-ball\"], \"f458\", \"M566.6 9.4c12.5 12.5 12.5 32.8 0 45.3l-192 192 34.7 34.7c4.2 4.2 6.6 10 6.6 16c0 12.5-10.1 22.6-22.6 22.6H364.3L256 211.7V182.6c0-12.5 10.1-22.6 22.6-22.6c6 0 11.8 2.4 16 6.6l34.7 34.7 192-192c12.5-12.5 32.8-12.5 45.3 0zm-344 225.5L341.1 353.4c3.7 42.7-11.7 85.2-42.3 115.8C271.4 496.6 234.2 512 195.5 512L22.1 512C9.9 512 0 502.1 0 489.9c0-6.3 2.7-12.3 7.3-16.5L133.7 359.7c4.2-3.7-.4-10.4-5.4-7.9L77.2 377.4c-6.1 3-13.2-1.4-13.2-8.2c0-31.5 12.5-61.7 34.8-84l8-8c30.6-30.6 73.1-45.9 115.8-42.3zM464 352a80 80 0 1 1 0 160 80 80 0 1 1 0-160z\"]\n};\nvar faQuidditch = faBroomBall;\nvar faQuidditchBroomBall = faBroomBall;\nvar faToggleOff = {\n prefix: 'fas',\n iconName: 'toggle-off',\n icon: [576, 512, [], \"f204\", \"M384 128c70.7 0 128 57.3 128 128s-57.3 128-128 128H192c-70.7 0-128-57.3-128-128s57.3-128 128-128H384zM576 256c0-106-86-192-192-192H192C86 64 0 150 0 256S86 448 192 448H384c106 0 192-86 192-192zM192 352a96 96 0 1 0 0-192 96 96 0 1 0 0 192z\"]\n};\nvar faBoxArchive = {\n prefix: 'fas',\n iconName: 'box-archive',\n icon: [512, 512, [\"archive\"], \"f187\", \"M32 32H480c17.7 0 32 14.3 32 32V96c0 17.7-14.3 32-32 32H32C14.3 128 0 113.7 0 96V64C0 46.3 14.3 32 32 32zm0 128H480V416c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V160zm128 80c0 8.8 7.2 16 16 16H336c8.8 0 16-7.2 16-16s-7.2-16-16-16H176c-8.8 0-16 7.2-16 16z\"]\n};\nvar faArchive = faBoxArchive;\nvar faPersonDrowning = {\n prefix: 'fas',\n iconName: 'person-drowning',\n icon: [576, 512, [], \"e545\", \"M192 64c0-17.7-14.3-32-32-32s-32 14.3-32 32V96.2c0 54.1 23.5 104 62.2 138.3l-21 146.7c7.8 2.1 15.5 3.3 22.8 3.3c21.1 0 42-8.5 59.2-20.3c22.1-15.5 51.6-15.5 73.7 0c12.4 8.5 26.1 14.8 39.7 18l17.7-97.6c10.7-1.2 21.3-3.1 31.9-5.5l105-23.9c17.2-3.9 28-21.1 24.1-38.3s-21.1-28-38.3-24.1L400 216.6c-41 9.3-83.7 7.5-123.7-5.2c-50.2-16-84.3-62.6-84.3-115.3V64zM320 192a64 64 0 1 0 0-128 64 64 0 1 0 0 128zM306.5 389.9c-11.1-7.9-25.9-7.9-37 0C247 405.4 219.5 416 192 416c-26.9 0-55.3-10.8-77.4-26.1l0 0c-11.9-8.5-28.1-7.8-39.2 1.7c-14.4 11.9-32.5 21-50.6 25.2c-17.2 4-27.9 21.2-23.9 38.4s21.2 27.9 38.4 23.9c24.5-5.7 44.9-16.5 58.2-25C126.5 469.7 159 480 192 480c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.5 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.4-27.3-10.1-39.2-1.7l0 0C439.4 405.2 410.9 416 384 416c-27.5 0-55-10.6-77.5-26.1z\"]\n};\nvar faArrowDown91 = {\n prefix: 'fas',\n iconName: 'arrow-down-9-1',\n icon: [576, 512, [\"sort-numeric-desc\", \"sort-numeric-down-alt\"], \"f886\", \"M160 480c9 0 17.5-3.8 23.6-10.4l88-96c11.9-13 11.1-33.3-2-45.2s-33.3-11.1-45.2 2L192 365.7V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V365.7L95.6 330.4c-11.9-13-32.2-13.9-45.2-2s-13.9 32.2-2 45.2l88 96C142.5 476.2 151 480 160 480zM450.7 294c-8.3-6-19.1-7.7-28.8-4.4l-48 16c-16.8 5.6-25.8 23.7-20.2 40.5s23.7 25.8 40.5 20.2l5.9-2V416H384c-17.7 0-32 14.3-32 32s14.3 32 32 32h48 48c17.7 0 32-14.3 32-32s-14.3-32-32-32H464V320c0-10.3-4.9-19.9-13.3-26zM418.3 91a32 32 0 1 1 27.4 57.9A32 32 0 1 1 418.3 91zM405.1 203.8l-6.8 9.2c-10.5 14.2-7.5 34.2 6.7 44.8s34.2 7.5 44.8-6.7l48.8-65.8c14-18.9 21.5-41.7 21.5-65.2c0-48.6-39.4-88-88-88s-88 39.4-88 88c0 39.2 25.6 72.4 61.1 83.8z\"]\n};\nvar faSortNumericDesc = faArrowDown91;\nvar faSortNumericDownAlt = faArrowDown91;\nvar faFaceGrinTongueSquint = {\n prefix: 'fas',\n iconName: 'face-grin-tongue-squint',\n icon: [512, 512, [128541, \"grin-tongue-squint\"], \"f58a\", \"M0 256C0 368.9 73.1 464.7 174.5 498.8C165.3 484 160 466.6 160 448V400.7c-24-17.5-43.1-41.4-54.8-69.2c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19c12.3-3.8 24.3 6.9 19.3 18.7c-11.8 28-31.1 52-55.4 69.6V448c0 18.6-5.3 36-14.5 50.8C438.9 464.7 512 368.9 512 256C512 114.6 397.4 0 256 0S0 114.6 0 256zM116 141.1c0-9 9.6-14.7 17.5-10.5l89.9 47.9c10.7 5.7 10.7 21.1 0 26.8l-89.9 47.9c-7.9 4.2-17.5-1.5-17.5-10.5c0-2.8 1-5.5 2.8-7.6l36-43.2-36-43.2c-1.8-2.1-2.8-4.8-2.8-7.6zm262.5-10.5c7.9-4.2 17.5 1.5 17.5 10.5c0 2.8-1 5.5-2.8 7.6l-36 43.2 36 43.2c1.8 2.1 2.8 4.8 2.8 7.6c0 9-9.6 14.7-17.5 10.5l-89.9-47.9c-10.7-5.7-10.7-21.1 0-26.8l89.9-47.9zM320 448V402.6c0-14.7-11.9-26.6-26.6-26.6h-2c-11.3 0-21.1 7.9-23.6 18.9c-2.8 12.6-20.8 12.6-23.6 0c-2.5-11.1-12.3-18.9-23.6-18.9h-2c-14.7 0-26.6 11.9-26.6 26.6V448c0 35.3 28.7 64 64 64s64-28.7 64-64z\"]\n};\nvar faGrinTongueSquint = faFaceGrinTongueSquint;\nvar faSprayCan = {\n prefix: 'fas',\n iconName: 'spray-can',\n icon: [512, 512, [], \"f5bd\", \"M128 0h64c17.7 0 32 14.3 32 32v96H96V32c0-17.7 14.3-32 32-32zM0 256c0-53 43-96 96-96H224c53 0 96 43 96 96V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V256zm240 80A80 80 0 1 0 80 336a80 80 0 1 0 160 0zM256 64a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM384 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm64 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm32 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM448 256a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM384 128a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faTruckMonster = {\n prefix: 'fas',\n iconName: 'truck-monster',\n icon: [640, 512, [], \"f63b\", \"M288 64v64H416L368 64H288zM419.2 25.6L496 128h80c17.7 0 32 14.3 32 32v64c17.7 0 32 14.3 32 32s-14.3 32-32 32c-29.2-38.9-75.7-64-128-64s-98.8 25.1-128 64H288c-29.2-38.9-75.7-64-128-64s-98.8 25.1-128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32V160c0-17.7 14.3-32 32-32H224V48c0-26.5 21.5-48 48-48h96c20.1 0 39.1 9.5 51.2 25.6zM152 256h16c12.1 0 22.1 8.9 23.8 20.6c7.6 2.2 14.9 5.3 21.7 9c9.4-7 22.8-6.3 31.3 2.3l11.3 11.3c8.6 8.6 9.3 21.9 2.3 31.3c3.7 6.8 6.8 14.1 9 21.7c11.6 1.7 20.6 11.7 20.6 23.8v16c0 12.1-8.9 22.1-20.6 23.8c-2.2 7.6-5.3 14.9-9 21.7c7 9.4 6.3 22.8-2.3 31.3l-11.3 11.3c-8.6 8.6-21.9 9.3-31.3 2.2c-6.8 3.7-14.1 6.8-21.7 9C190.1 503.1 180.1 512 168 512H152c-12.1 0-22.1-8.9-23.8-20.6c-7.6-2.2-14.9-5.3-21.7-9c-9.4 7.1-22.8 6.3-31.3-2.2L63.8 468.9c-8.6-8.6-9.3-21.9-2.3-31.3c-3.7-6.9-6.8-14.1-9-21.8C40.9 414.1 32 404.1 32 392V376c0-12.1 8.9-22.1 20.6-23.8c2.2-7.6 5.3-14.9 9-21.8c-7-9.4-6.3-22.8 2.3-31.3l11.3-11.3c8.6-8.6 21.9-9.3 31.3-2.3c6.8-3.7 14.1-6.8 21.7-9c1.7-11.6 11.7-20.6 23.8-20.6zm8 176a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM448.2 276.6c1.7-11.6 11.7-20.6 23.8-20.6h16c12.1 0 22.1 8.9 23.8 20.6c7.6 2.2 14.9 5.3 21.8 9c9.4-7 22.8-6.3 31.3 2.3l11.3 11.3c8.6 8.6 9.3 21.9 2.2 31.3c3.7 6.8 6.8 14.1 9 21.7c11.6 1.7 20.6 11.7 20.6 23.8v16c0 12.1-8.9 22.1-20.6 23.8c-2.2 7.6-5.3 14.9-9 21.7c7 9.4 6.3 22.8-2.2 31.3l-11.3 11.3c-8.6 8.6-21.9 9.3-31.3 2.2c-6.9 3.7-14.1 6.8-21.8 9C510.1 503.1 500.1 512 488 512H472c-12.1 0-22.1-8.9-23.8-20.6c-7.6-2.2-14.9-5.3-21.7-9c-9.4 7.1-22.8 6.3-31.3-2.2l-11.3-11.3c-8.6-8.6-9.3-21.9-2.2-31.3c-3.7-6.9-6.8-14.1-9-21.8C360.9 414.1 352 404.1 352 392V376c0-12.1 8.9-22.1 20.6-23.8c2.2-7.6 5.3-14.9 9-21.8c-7-9.4-6.3-22.8 2.2-31.3l11.3-11.3c8.6-8.6 21.9-9.3 31.3-2.3c6.8-3.7 14.1-6.8 21.7-9zM528 384a48 48 0 1 0 -96 0 48 48 0 1 0 96 0z\"]\n};\nvar faW = {\n prefix: 'fas',\n iconName: 'w',\n icon: [576, 512, [119], \"57\", \"M20.8 34c16.5-6.2 35 2.2 41.2 18.7l110.2 294L257.3 55c4-13.7 16.5-23 30.7-23s26.7 9.4 30.7 23l85.1 291.7L514 52.8c6.2-16.5 24.6-24.9 41.2-18.7s24.9 24.7 18.7 41.2l-144 384c-4.8 12.9-17.4 21.3-31.2 20.7s-25.7-9.8-29.5-23L288 178.3 206.7 457c-3.9 13.2-15.8 22.5-29.5 23s-26.3-7.8-31.2-20.7L2 75.2C-4.2 58.7 4.2 40.2 20.8 34z\"]\n};\nvar faEarthAfrica = {\n prefix: 'fas',\n iconName: 'earth-africa',\n icon: [512, 512, [127757, \"globe-africa\"], \"f57c\", \"M177.8 63.2l10 17.4c2.8 4.8 4.2 10.3 4.2 15.9v41.4c0 3.9 1.6 7.7 4.3 10.4c6.2 6.2 16.5 5.7 22-1.2l13.6-17c4.7-5.9 12.9-7.7 19.6-4.3l15.2 7.6c3.4 1.7 7.2 2.6 11 2.6c6.5 0 12.8-2.6 17.4-7.2l3.9-3.9c2.9-2.9 7.3-3.6 11-1.8l29.2 14.6c7.8 3.9 12.6 11.8 12.6 20.5c0 10.5-7.1 19.6-17.3 22.2l-35.4 8.8c-7.4 1.8-15.1 1.5-22.4-.9l-32-10.7c-3.3-1.1-6.7-1.7-10.2-1.7c-7 0-13.8 2.3-19.4 6.5L176 212c-10.1 7.6-16 19.4-16 32v28c0 26.5 21.5 48 48 48h32c8.8 0 16 7.2 16 16v48c0 17.7 14.3 32 32 32c10.1 0 19.6-4.7 25.6-12.8l25.6-34.1c8.3-11.1 12.8-24.6 12.8-38.4V318.6c0-3.9 2.6-7.3 6.4-8.2l5.3-1.3c11.9-3 20.3-13.7 20.3-26c0-7.1-2.8-13.9-7.8-18.9l-33.5-33.5c-3.7-3.7-3.7-9.7 0-13.4c5.7-5.7 14.1-7.7 21.8-5.1l14.1 4.7c12.3 4.1 25.7-1.5 31.5-13c3.5-7 11.2-10.8 18.9-9.2l27.4 5.5C432 112.4 351.5 48 256 48c-27.7 0-54 5.4-78.2 15.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z\"]\n};\nvar faGlobeAfrica = faEarthAfrica;\nvar faRainbow = {\n prefix: 'fas',\n iconName: 'rainbow',\n icon: [640, 512, [127752], \"f75b\", \"M320 96C178.6 96 64 210.6 64 352v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V352C0 175.3 143.3 32 320 32s320 143.3 320 320v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V352C576 210.6 461.4 96 320 96zm0 192c-35.3 0-64 28.7-64 64v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V352c0-70.7 57.3-128 128-128s128 57.3 128 128v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V352c0-35.3-28.7-64-64-64zM160 352v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V352c0-123.7 100.3-224 224-224s224 100.3 224 224v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V352c0-88.4-71.6-160-160-160s-160 71.6-160 160z\"]\n};\nvar faCircleNotch = {\n prefix: 'fas',\n iconName: 'circle-notch',\n icon: [512, 512, [], \"f1ce\", \"M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8C121.8 95.6 64 169.1 64 256c0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1c-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256c0 141.4-114.6 256-256 256S0 397.4 0 256C0 140 77.1 42.1 182.9 10.6c16.9-5 34.8 4.6 39.8 21.5z\"]\n};\nvar faTabletScreenButton = {\n prefix: 'fas',\n iconName: 'tablet-screen-button',\n icon: [448, 512, [\"tablet-alt\"], \"f3fa\", \"M0 64C0 28.7 28.7 0 64 0H384c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zM256 448a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM384 64H64V384H384V64z\"]\n};\nvar faTabletAlt = faTabletScreenButton;\nvar faPaw = {\n prefix: 'fas',\n iconName: 'paw',\n icon: [512, 512, [], \"f1b0\", \"M226.5 92.9c14.3 42.9-.3 86.2-32.6 96.8s-70.1-15.6-84.4-58.5s.3-86.2 32.6-96.8s70.1 15.6 84.4 58.5zM100.4 198.6c18.9 32.4 14.3 70.1-10.2 84.1s-59.7-.9-78.5-33.3S-2.7 179.3 21.8 165.3s59.7 .9 78.5 33.3zM69.2 401.2C121.6 259.9 214.7 224 256 224s134.4 35.9 186.8 177.2c3.6 9.7 5.2 20.1 5.2 30.5v1.6c0 25.8-20.9 46.7-46.7 46.7c-11.5 0-22.9-1.4-34-4.2l-88-22c-15.3-3.8-31.3-3.8-46.6 0l-88 22c-11.1 2.8-22.5 4.2-34 4.2C84.9 480 64 459.1 64 433.3v-1.6c0-10.4 1.6-20.8 5.2-30.5zM421.8 282.7c-24.5-14-29.1-51.7-10.2-84.1s54-47.3 78.5-33.3s29.1 51.7 10.2 84.1s-54 47.3-78.5 33.3zM310.1 189.7c-32.3-10.6-46.9-53.9-32.6-96.8s52.1-69.1 84.4-58.5s46.9 53.9 32.6 96.8s-52.1 69.1-84.4 58.5z\"]\n};\nvar faCloud = {\n prefix: 'fas',\n iconName: 'cloud',\n icon: [640, 512, [9729], \"f0c2\", \"M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z\"]\n};\nvar faTrowelBricks = {\n prefix: 'fas',\n iconName: 'trowel-bricks',\n icon: [512, 512, [], \"e58a\", \"M240.8 4.8C250.3 10.6 256 20.9 256 32v72h89c3.6-13.8 16.1-24 31-24h88c26.5 0 48 21.5 48 48s-21.5 48-48 48H376c-14.9 0-27.4-10.2-31-24H256v72c0 11.1-5.7 21.4-15.2 27.2s-21.2 6.4-31.1 1.4l-192-96C6.8 151.2 0 140.1 0 128s6.8-23.2 17.7-28.6l192-96c9.9-5 21.7-4.4 31.1 1.4zM288 256c0-17.7 14.3-32 32-32H480c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32H320c-17.7 0-32-14.3-32-32V256zM32 384h96c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32zm192 0H480c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32H224c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32z\"]\n};\nvar faFaceFlushed = {\n prefix: 'fas',\n iconName: 'face-flushed',\n icon: [512, 512, [128563, \"flushed\"], \"f579\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM176 384c0 8.8 7.2 16 16 16H320c8.8 0 16-7.2 16-16s-7.2-16-16-16H192c-8.8 0-16 7.2-16 16zm-16-88a72 72 0 1 0 0-144 72 72 0 1 0 0 144zm264-72a72 72 0 1 0 -144 0 72 72 0 1 0 144 0zm-288 0a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zm192 0a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faFlushed = faFaceFlushed;\nvar faHospitalUser = {\n prefix: 'fas',\n iconName: 'hospital-user',\n icon: [576, 512, [], \"f80d\", \"M48 0C21.5 0 0 21.5 0 48V256H144c8.8 0 16 7.2 16 16s-7.2 16-16 16H0v64H144c8.8 0 16 7.2 16 16s-7.2 16-16 16H0v80c0 26.5 21.5 48 48 48H265.9c-6.3-10.2-9.9-22.2-9.9-35.1c0-46.9 25.8-87.8 64-109.2V271.8 48c0-26.5-21.5-48-48-48H48zM152 64h16c8.8 0 16 7.2 16 16v24h24c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16H184v24c0 8.8-7.2 16-16 16H152c-8.8 0-16-7.2-16-16V152H112c-8.8 0-16-7.2-16-16V120c0-8.8 7.2-16 16-16h24V80c0-8.8 7.2-16 16-16zM512 272a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM288 477.1c0 19.3 15.6 34.9 34.9 34.9H541.1c19.3 0 34.9-15.6 34.9-34.9c0-51.4-41.7-93.1-93.1-93.1H381.1c-51.4 0-93.1 41.7-93.1 93.1z\"]\n};\nvar faTentArrowLeftRight = {\n prefix: 'fas',\n iconName: 'tent-arrow-left-right',\n icon: [576, 512, [], \"e57f\", \"M488.1 6.2c-9.9-8.9-25-8.1-33.9 1.8s-8.1 25 1.8 33.9L489.5 72 86.5 72l33.5-30.2c9.9-8.9 10.7-24 1.8-33.9S97.8-2.7 87.9 6.2l-80 72C2.9 82.7 0 89.2 0 96s2.9 13.3 7.9 17.8l80 72c9.9 8.9 25 8.1 33.9-1.8s8.1-25-1.8-33.9L86.5 120l402.9 0-33.5 30.2c-9.9 8.9-10.7 24-1.8 33.9s24 10.7 33.9 1.8l80-72c5.1-4.6 7.9-11 7.9-17.8s-2.9-13.3-7.9-17.8l-80-72zM307.4 166.5c-11.5-8.7-27.3-8.7-38.8 0l-168 128c-6.6 5-11 12.5-12.3 20.7l-24 160c-1.4 9.2 1.3 18.6 7.4 25.6S86.7 512 96 512H240h16c17.7 0 32-14.3 32-32V361.9c0-5.5 4.4-9.9 9.9-9.9c3.7 0 7.2 2.1 8.8 5.5l68.4 136.8c5.4 10.8 16.5 17.7 28.6 17.7H464h16c9.3 0 18.2-4.1 24.2-11.1s8.8-16.4 7.4-25.6l-24-160c-1.2-8.2-5.6-15.7-12.3-20.7l-168-128z\"]\n};\nvar faGavel = {\n prefix: 'fas',\n iconName: 'gavel',\n icon: [512, 512, [\"legal\"], \"f0e3\", \"M318.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-120 120c-12.5 12.5-12.5 32.8 0 45.3l16 16c12.5 12.5 32.8 12.5 45.3 0l4-4L325.4 293.4l-4 4c-12.5 12.5-12.5 32.8 0 45.3l16 16c12.5 12.5 32.8 12.5 45.3 0l120-120c12.5-12.5 12.5-32.8 0-45.3l-16-16c-12.5-12.5-32.8-12.5-45.3 0l-4 4L330.6 74.6l4-4c12.5-12.5 12.5-32.8 0-45.3l-16-16zm-152 288c-12.5-12.5-32.8-12.5-45.3 0l-112 112c-12.5 12.5-12.5 32.8 0 45.3l48 48c12.5 12.5 32.8 12.5 45.3 0l112-112c12.5-12.5 12.5-32.8 0-45.3l-1.4-1.4L272 285.3 226.7 240 168 298.7l-1.4-1.4z\"]\n};\nvar faLegal = faGavel;\nvar faBinoculars = {\n prefix: 'fas',\n iconName: 'binoculars',\n icon: [512, 512, [], \"f1e5\", \"M128 32h32c17.7 0 32 14.3 32 32V96H96V64c0-17.7 14.3-32 32-32zm64 96V448c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32V388.9c0-34.6 9.4-68.6 27.2-98.3C40.9 267.8 49.7 242.4 53 216L60.5 156c2-16 15.6-28 31.8-28H192zm227.8 0c16.1 0 29.8 12 31.8 28L459 216c3.3 26.4 12.1 51.8 25.8 74.6c17.8 29.7 27.2 63.7 27.2 98.3V448c0 17.7-14.3 32-32 32H352c-17.7 0-32-14.3-32-32V128h99.8zM320 64c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32V96H320V64zm-32 64V288H224V128h64z\"]\n};\nvar faMicrophoneSlash = {\n prefix: 'fas',\n iconName: 'microphone-slash',\n icon: [640, 512, [], \"f131\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L472.1 344.7c15.2-26 23.9-56.3 23.9-88.7V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 21.2-5.1 41.1-14.2 58.7L416 300.8V96c0-53-43-96-96-96s-96 43-96 96v54.3L38.8 5.1zm362.5 407l-43.1-33.9C346.1 382 333.3 384 320 384c-70.7 0-128-57.3-128-128v-8.7L144.7 210c-.5 1.9-.7 3.9-.7 6v40c0 89.1 66.2 162.7 152 174.4V464H248c-13.3 0-24 10.7-24 24s10.7 24 24 24h72 72c13.3 0 24-10.7 24-24s-10.7-24-24-24H344V430.4c20.4-2.8 39.7-9.1 57.3-18.2z\"]\n};\nvar faBoxTissue = {\n prefix: 'fas',\n iconName: 'box-tissue',\n icon: [512, 512, [], \"e05b\", \"M92.5 0H208c40 0 52 24 64 48s24 48 64 48h85.2C436 96 448 108 448 122.8c0 3.4-.7 6.8-1.9 10L409.6 224 384 288H128l-16-64L64.9 35.4c-.6-2.3-.9-4.6-.9-6.9C64 12.8 76.8 0 92.5 0zM79 224l16 64H80c-8.8 0-16 7.2-16 16s7.2 16 16 16h48H384h48c8.8 0 16-7.2 16-16s-7.2-16-16-16H418.5l25.6-64H464c26.5 0 48 21.5 48 48V384H0V272c0-26.5 21.5-48 48-48H79zM0 416H512v48c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V416z\"]\n};\nvar faMotorcycle = {\n prefix: 'fas',\n iconName: 'motorcycle',\n icon: [640, 512, [127949], \"f21c\", \"M280 32c-13.3 0-24 10.7-24 24s10.7 24 24 24h57.7l16.4 30.3L256 192l-45.3-45.3c-12-12-28.3-18.7-45.3-18.7H64c-17.7 0-32 14.3-32 32v32h96c88.4 0 160 71.6 160 160c0 11-1.1 21.7-3.2 32h70.4c-2.1-10.3-3.2-21-3.2-32c0-52.2 25-98.6 63.7-127.8l15.4 28.6C402.4 276.3 384 312 384 352c0 70.7 57.3 128 128 128s128-57.3 128-128s-57.3-128-128-128c-13.5 0-26.5 2.1-38.7 6L418.2 128H480c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32H459.6c-7.5 0-14.7 2.6-20.5 7.4L391.7 78.9l-14-26c-7-12.9-20.5-21-35.2-21H280zM462.7 311.2l28.2 52.2c6.3 11.7 20.9 16 32.5 9.7s16-20.9 9.7-32.5l-28.2-52.2c2.3-.3 4.7-.4 7.1-.4c35.3 0 64 28.7 64 64s-28.7 64-64 64s-64-28.7-64-64c0-15.5 5.5-29.7 14.7-40.8zM187.3 376c-9.5 23.5-32.5 40-59.3 40c-35.3 0-64-28.7-64-64s28.7-64 64-64c26.9 0 49.9 16.5 59.3 40h66.4C242.5 268.8 190.5 224 128 224C57.3 224 0 281.3 0 352s57.3 128 128 128c62.5 0 114.5-44.8 125.8-104H187.3zM128 384a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faBellConcierge = {\n prefix: 'fas',\n iconName: 'bell-concierge',\n icon: [512, 512, [128718, \"concierge-bell\"], \"f562\", \"M216 64c-13.3 0-24 10.7-24 24s10.7 24 24 24h16v33.3C119.6 157.2 32 252.4 32 368H480c0-115.6-87.6-210.8-200-222.7V112h16c13.3 0 24-10.7 24-24s-10.7-24-24-24H256 216zM24 400c-13.3 0-24 10.7-24 24s10.7 24 24 24H488c13.3 0 24-10.7 24-24s-10.7-24-24-24H24z\"]\n};\nvar faConciergeBell = faBellConcierge;\nvar faPenRuler = {\n prefix: 'fas',\n iconName: 'pen-ruler',\n icon: [512, 512, [\"pencil-ruler\"], \"f5ae\", \"M469.3 19.3l23.4 23.4c25 25 25 65.5 0 90.5l-56.4 56.4L322.3 75.7l56.4-56.4c25-25 65.5-25 90.5 0zM44.9 353.2L299.7 98.3 413.7 212.3 158.8 467.1c-6.7 6.7-15.1 11.6-24.2 14.2l-104 29.7c-8.4 2.4-17.4 .1-23.6-6.1s-8.5-15.2-6.1-23.6l29.7-104c2.6-9.2 7.5-17.5 14.2-24.2zM249.4 103.4L103.4 249.4 16 161.9c-18.7-18.7-18.7-49.1 0-67.9L94.1 16c18.7-18.7 49.1-18.7 67.9 0l19.8 19.8c-.3 .3-.7 .6-1 .9l-64 64c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l64-64c.3-.3 .6-.7 .9-1l45.1 45.1zM408.6 262.6l45.1 45.1c-.3 .3-.7 .6-1 .9l-64 64c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l64-64c.3-.3 .6-.7 .9-1L496 350.1c18.7 18.7 18.7 49.1 0 67.9L417.9 496c-18.7 18.7-49.1 18.7-67.9 0l-87.4-87.4L408.6 262.6z\"]\n};\nvar faPencilRuler = faPenRuler;\nvar faPeopleArrows = {\n prefix: 'fas',\n iconName: 'people-arrows',\n icon: [640, 512, [\"people-arrows-left-right\"], \"e068\", \"M64 64a64 64 0 1 1 128 0A64 64 0 1 1 64 64zM25.9 233.4C29.3 191.9 64 160 105.6 160h44.8c27 0 51 13.4 65.5 34.1c-2.7 1.9-5.2 4-7.5 6.3l-64 64c-21.9 21.9-21.9 57.3 0 79.2L192 391.2V464c0 26.5-21.5 48-48 48H112c-26.5 0-48-21.5-48-48V348.3c-26.5-9.5-44.7-35.8-42.2-65.6l4.1-49.3zM448 64a64 64 0 1 1 128 0A64 64 0 1 1 448 64zM431.6 200.4c-2.3-2.3-4.9-4.4-7.5-6.3c14.5-20.7 38.6-34.1 65.5-34.1h44.8c41.6 0 76.3 31.9 79.7 73.4l4.1 49.3c2.5 29.8-15.7 56.1-42.2 65.6V464c0 26.5-21.5 48-48 48H496c-26.5 0-48-21.5-48-48V391.2l47.6-47.6c21.9-21.9 21.9-57.3 0-79.2l-64-64zM272 240v32h96V240c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l64 64c9.4 9.4 9.4 24.6 0 33.9l-64 64c-6.9 6.9-17.2 8.9-26.2 5.2s-14.8-12.5-14.8-22.2V336H272v32c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-64-64c-9.4-9.4-9.4-24.6 0-33.9l64-64c6.9-6.9 17.2-8.9 26.2-5.2s14.8 12.5 14.8 22.2z\"]\n};\nvar faPeopleArrowsLeftRight = faPeopleArrows;\nvar faMarsAndVenusBurst = {\n prefix: 'fas',\n iconName: 'mars-and-venus-burst',\n icon: [640, 512, [], \"e523\", \"M504 0c-9.7 0-18.5 5.8-22.2 14.8s-1.7 19.3 5.2 26.2l39 39-22.2 22.2C475.9 78.4 439.6 64 400 64c-88.4 0-160 71.6-160 160c0 80.2 59 146.6 136 158.2V408H352c-13.3 0-24 10.7-24 24s10.7 24 24 24h24v32c0 13.3 10.7 24 24 24s24-10.7 24-24V456h24c13.3 0 24-10.7 24-24s-10.7-24-24-24H424V382.2c77-11.6 136-78 136-158.2c0-31.4-9-60.7-24.7-85.4L560 113.9l39 39c6.9 6.9 17.2 8.9 26.2 5.2s14.8-12.5 14.8-22.2V24c0-13.3-10.7-24-24-24H504zM400 128a96 96 0 1 1 0 192 96 96 0 1 1 0-192zM190.9 18.1C188.4 12 182.6 8 176 8s-12.4 4-14.9 10.1l-29.4 74L55.6 68.9c-6.3-1.9-13.1 .2-17.2 5.3s-4.6 12.2-1.4 17.9l39.5 69.1L10.9 206.4c-5.4 3.7-8 10.3-6.5 16.7s6.7 11.2 13.1 12.2l78.7 12.2L90.6 327c-.5 6.5 3.1 12.7 9 15.5s12.9 1.8 17.8-2.6L176 286.1l58.6 53.9c4.1 3.8 9.9 5.1 15.2 3.6C223.6 310.8 208 269.2 208 224c0-60.8 28.3-115 72.4-150.2L220.3 92.1l-29.4-74z\"]\n};\nvar faSquareCaretRight = {\n prefix: 'fas',\n iconName: 'square-caret-right',\n icon: [448, 512, [\"caret-square-right\"], \"f152\", \"M448 96c0-35.3-28.7-64-64-64L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320zM320 256c0 6.7-2.8 13-7.7 17.6l-112 104c-7 6.5-17.2 8.2-25.9 4.4s-14.4-12.5-14.4-22l0-208c0-9.5 5.7-18.2 14.4-22s18.9-2.1 25.9 4.4l112 104c4.9 4.5 7.7 10.9 7.7 17.6z\"]\n};\nvar faCaretSquareRight = faSquareCaretRight;\nvar faScissors = {\n prefix: 'fas',\n iconName: 'scissors',\n icon: [512, 512, [9984, 9986, 9988, \"cut\"], \"f0c4\", \"M256 192l-39.5-39.5c4.9-12.6 7.5-26.2 7.5-40.5C224 50.1 173.9 0 112 0S0 50.1 0 112s50.1 112 112 112c14.3 0 27.9-2.7 40.5-7.5L192 256l-39.5 39.5c-12.6-4.9-26.2-7.5-40.5-7.5C50.1 288 0 338.1 0 400s50.1 112 112 112s112-50.1 112-112c0-14.3-2.7-27.9-7.5-40.5L499.2 76.8c7.1-7.1 7.1-18.5 0-25.6c-28.3-28.3-74.1-28.3-102.4 0L256 192zm22.6 150.6L396.8 460.8c28.3 28.3 74.1 28.3 102.4 0c7.1-7.1 7.1-18.5 0-25.6L342.6 278.6l-64 64zM64 112a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm48 240a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faCut = faScissors;\nvar faSunPlantWilt = {\n prefix: 'fas',\n iconName: 'sun-plant-wilt',\n icon: [640, 512, [], \"e57a\", \"M160 0c-6.3 0-12 3.7-14.6 9.5L120.6 64.9 63.9 43.2c-5.9-2.3-12.6-.8-17 3.6s-5.9 11.1-3.6 17l21.7 56.7L9.5 145.4C3.7 148 0 153.7 0 160s3.7 12 9.5 14.6l55.4 24.8L43.2 256.1c-2.3 5.9-.8 12.6 3.6 17s11.1 5.9 17 3.6l56.7-21.7 24.8 55.4c2.6 5.8 8.3 9.5 14.6 9.5s12-3.7 14.6-9.5l24.8-55.4 56.7 21.7c5.9 2.3 12.6 .8 17-3.6s5.9-11.1 3.6-17l-21.7-56.7 55.4-24.8c5.8-2.6 9.5-8.3 9.5-14.6s-3.7-12-9.5-14.6l-55.4-24.8 21.7-56.7c2.3-5.9 .8-12.6-3.6-17s-11.1-5.9-17-3.6L199.4 64.9 174.6 9.5C172 3.7 166.3 0 160 0zm0 96a64 64 0 1 1 0 128 64 64 0 1 1 0-128zm32 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm312 16c0-17.7 14.3-32 32-32s32 14.3 32 32v53.4c-14.8 7.7-24 23.1-24 44.6c0 16.8 16 44 37.4 67.2c5.8 6.2 15.5 6.2 21.2 0C624 318 640 290.7 640 274c0-21.5-9.2-37-24-44.6V176c0-44.2-35.8-80-80-80s-80 35.8-80 80v22.7c-9.8-4.3-20.6-6.7-32-6.7c-44.2 0-80 35.8-80 80v21.4c-14.8 7.7-24 23.1-24 44.6c0 16.8 16 44 37.4 67.2c5.8 6.2 15.5 6.2 21.2 0C400 382 416 354.7 416 338c0-21.5-9.2-37-24-44.6V272c0-17.7 14.3-32 32-32s32 14.3 32 32v8V448H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H504V280v-8V176z\"]\n};\nvar faToiletsPortable = {\n prefix: 'fas',\n iconName: 'toilets-portable',\n icon: [576, 512, [], \"e584\", \"M32 0H224c17.7 0 32 14.3 32 32V64H0V32C0 14.3 14.3 0 32 0zM0 96H24 232h24v24V488c0 13.3-10.7 24-24 24s-24-10.7-24-24v-8H48v8c0 13.3-10.7 24-24 24s-24-10.7-24-24V120 96zM192 224c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16s16-7.2 16-16V240c0-8.8-7.2-16-16-16zM352 0H544c17.7 0 32 14.3 32 32V64H320V32c0-17.7 14.3-32 32-32zM320 96h24H552h24v24V488c0 13.3-10.7 24-24 24s-24-10.7-24-24v-8H368v8c0 13.3-10.7 24-24 24s-24-10.7-24-24V120 96zM512 224c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16s16-7.2 16-16V240c0-8.8-7.2-16-16-16z\"]\n};\nvar faHockeyPuck = {\n prefix: 'fas',\n iconName: 'hockey-puck',\n icon: [512, 512, [], \"f453\", \"M256 256C114.6 256 0 213 0 160s114.6-96 256-96s256 43 256 96s-114.6 96-256 96zm192.3 1.8c24.7-9.3 46.9-21 63.7-35.6V352c0 53-114.6 96-256 96S0 405 0 352V222.3c16.8 14.6 39 26.3 63.7 35.6C114.5 276.9 182.5 288 256 288s141.5-11.1 192.3-30.2z\"]\n};\nvar faTable = {\n prefix: 'fas',\n iconName: 'table',\n icon: [512, 512, [], \"f0ce\", \"M64 256V160H224v96H64zm0 64H224v96H64V320zm224 96V320H448v96H288zM448 256H288V160H448v96zM64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z\"]\n};\nvar faMagnifyingGlassArrowRight = {\n prefix: 'fas',\n iconName: 'magnifying-glass-arrow-right',\n icon: [512, 512, [], \"e521\", \"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM241 119c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l31 31H120c-13.3 0-24 10.7-24 24s10.7 24 24 24H238.1l-31 31c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l72-72c9.4-9.4 9.4-24.6 0-33.9l-72-72z\"]\n};\nvar faTachographDigital = {\n prefix: 'fas',\n iconName: 'tachograph-digital',\n icon: [640, 512, [\"digital-tachograph\"], \"f566\", \"M64 64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H576c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H64zm32 64H320c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32zM64 368c0-8.8 7.2-16 16-16H336c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16zm320 0c0-8.8 7.2-16 16-16H560c8.8 0 16 7.2 16 16s-7.2 16-16 16H400c-8.8 0-16-7.2-16-16zM80 288a16 16 0 1 1 0 32 16 16 0 1 1 0-32zm48 16a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zm80-16a16 16 0 1 1 0 32 16 16 0 1 1 0-32zm48 16a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zm80-16a16 16 0 1 1 0 32 16 16 0 1 1 0-32z\"]\n};\nvar faDigitalTachograph = faTachographDigital;\nvar faUsersSlash = {\n prefix: 'fas',\n iconName: 'users-slash',\n icon: [640, 512, [], \"e073\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L440.6 320H618.7c11.8 0 21.3-9.6 21.3-21.3C640 239.8 592.2 192 533.3 192H490.7c-15.9 0-31 3.5-44.6 9.7c1.3 7.2 1.9 14.7 1.9 22.3c0 30.2-10.5 58-28 79.9l-25.2-19.7C408.1 267.7 416 246.8 416 224c0-53-43-96-96-96c-31.1 0-58.7 14.8-76.3 37.7l-40.6-31.8c13-14.2 20.9-33.1 20.9-53.9c0-44.2-35.8-80-80-80C116.3 0 91.9 14.1 77.5 35.5L38.8 5.1zM106.7 192C47.8 192 0 239.8 0 298.7C0 310.4 9.6 320 21.3 320H234.7c.2 0 .4 0 .7 0c-20.6-18.2-35.2-42.8-40.8-70.8L121.8 192H106.7zM261.3 352C187.7 352 128 411.7 128 485.3c0 14.7 11.9 26.7 26.7 26.7H485.3c10.5 0 19.5-6 23.9-14.8L324.9 352H261.3zM512 160A80 80 0 1 0 512 0a80 80 0 1 0 0 160z\"]\n};\nvar faClover = {\n prefix: 'fas',\n iconName: 'clover',\n icon: [448, 512, [], \"e139\", \"M216.6 49.9C205.1 38.5 189.5 32 173.3 32C139.4 32 112 59.4 112 93.3v4.9c0 12 3.3 23.7 9.4 34l18.8 31.3c1.1 1.8 1.2 3.1 1 4.2c-.2 1.2-.8 2.5-2 3.6s-2.4 1.8-3.6 2c-1 .2-2.4 .1-4.2-1l-31.3-18.8c-10.3-6.2-22-9.4-34-9.4H61.3C27.4 144 0 171.4 0 205.3c0 16.2 6.5 31.8 17.9 43.3l1.2 1.2c3.4 3.4 3.4 9 0 12.4l-1.2 1.2C6.5 274.9 0 290.5 0 306.7C0 340.6 27.4 368 61.3 368h4.9c12 0 23.7-3.3 34-9.4l31.3-18.8c1.8-1.1 3.1-1.2 4.2-1c1.2 .2 2.5 .8 3.6 2s1.8 2.4 2 3.6c.2 1 .1 2.4-1 4.2l-18.8 31.3c-6.2 10.3-9.4 22-9.4 34v4.9c0 33.8 27.4 61.3 61.3 61.3c16.2 0 31.8-6.5 43.3-17.9l1.2-1.2c3.4-3.4 9-3.4 12.4 0l1.2 1.2c11.5 11.5 27.1 17.9 43.3 17.9c33.8 0 61.3-27.4 61.3-61.3v-4.9c0-12-3.3-23.7-9.4-34l-18.8-31.3c-1.1-1.8-1.2-3.1-1-4.2c.2-1.2 .8-2.5 2-3.6s2.4-1.8 3.6-2c1-.2 2.4-.1 4.2 1l31.3 18.8c10.3 6.2 22 9.4 34 9.4h4.9c33.8 0 61.3-27.4 61.3-61.3c0-16.2-6.5-31.8-17.9-43.3l-1.2-1.2c-3.4-3.4-3.4-9 0-12.4l1.2-1.2c11.5-11.5 17.9-27.1 17.9-43.3c0-33.8-27.4-61.3-61.3-61.3h-4.9c-12 0-23.7 3.3-34 9.4l-31.3 18.8c-1.8 1.1-3.1 1.2-4.2 1c-1.2-.2-2.5-.8-3.6-2s-1.8-2.4-2-3.6c-.2-1-.1-2.4 1-4.2l18.8-31.3c6.2-10.3 9.4-22 9.4-34V93.3C336 59.4 308.6 32 274.7 32c-16.2 0-31.8 6.5-43.3 17.9l-1.2 1.2c-3.4 3.4-9 3.4-12.4 0l-1.2-1.2z\"]\n};\nvar faReply = {\n prefix: 'fas',\n iconName: 'reply',\n icon: [512, 512, [61714, \"mail-reply\"], \"f3e5\", \"M205 34.8c11.5 5.1 19 16.6 19 29.2v64H336c97.2 0 176 78.8 176 176c0 113.3-81.5 163.9-100.2 174.1c-2.5 1.4-5.3 1.9-8.1 1.9c-10.9 0-19.7-8.9-19.7-19.7c0-7.5 4.3-14.4 9.8-19.5c9.4-8.8 22.2-26.4 22.2-56.7c0-53-43-96-96-96H224v64c0 12.6-7.4 24.1-19 29.2s-25 3-34.4-5.4l-160-144C3.9 225.7 0 217.1 0 208s3.9-17.7 10.6-23.8l160-144c9.4-8.5 22.9-10.6 34.4-5.4z\"]\n};\nvar faMailReply = faReply;\nvar faStarAndCrescent = {\n prefix: 'fas',\n iconName: 'star-and-crescent',\n icon: [512, 512, [9770], \"f699\", \"M0 256C0 114.6 114.6 0 256 0c33 0 64.6 6.3 93.6 17.7c7.4 2.9 11.5 10.7 9.8 18.4s-8.8 13-16.7 12.4c-4.8-.3-9.7-.5-14.6-.5c-114.9 0-208 93.1-208 208s93.1 208 208 208c4.9 0 9.8-.2 14.6-.5c7.9-.5 15 4.7 16.7 12.4s-2.4 15.5-9.8 18.4C320.6 505.7 289 512 256 512C114.6 512 0 397.4 0 256zM375.4 137.4c3.5-7.1 13.7-7.1 17.2 0l31.5 63.8c1.4 2.8 4.1 4.8 7.2 5.3l70.4 10.2c7.9 1.1 11 10.8 5.3 16.4l-50.9 49.6c-2.3 2.2-3.3 5.4-2.8 8.5l12 70.1c1.3 7.8-6.9 13.8-13.9 10.1l-63-33.1c-2.8-1.5-6.1-1.5-8.9 0l-63 33.1c-7 3.7-15.3-2.3-13.9-10.1l12-70.1c.5-3.1-.5-6.3-2.8-8.5L261 233.1c-5.7-5.6-2.6-15.2 5.3-16.4l70.4-10.2c3.1-.5 5.8-2.4 7.2-5.3l31.5-63.8z\"]\n};\nvar faHouseFire = {\n prefix: 'fas',\n iconName: 'house-fire',\n icon: [640, 512, [], \"e50c\", \"M288 350.1l0 1.9H256c-17.7 0-32 14.3-32 32v64 24c0 22.1-17.9 40-40 40H160 128.1c-1.5 0-3-.1-4.5-.2c-1.2 .1-2.4 .2-3.6 .2H104c-22.1 0-40-17.9-40-40V360c0-.9 0-1.9 .1-2.8V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L447.3 128.1c-12.3-1-25 3-34.8 11.7c-35.4 31.6-65.6 67.7-87.3 102.8C304.3 276.5 288 314.9 288 350.1zM480 512c-88.4 0-160-71.6-160-160c0-76.7 62.5-144.7 107.2-179.4c5-3.9 10.9-5.8 16.8-5.8c7.9-.1 16 3.1 22 9.2l46 46 11.3-11.3c11.7-11.7 30.6-12.7 42.3-1C624.5 268 640 320.2 640 352c0 88.4-71.6 160-160 160zm64-111.8c0-36.5-37-73-54.8-88.4c-5.4-4.7-13.1-4.7-18.5 0C453 327.1 416 363.6 416 400.2c0 35.3 28.7 64 64 64s64-28.7 64-64z\"]\n};\nvar faSquareMinus = {\n prefix: 'fas',\n iconName: 'square-minus',\n icon: [448, 512, [61767, \"minus-square\"], \"f146\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm88 200H296c13.3 0 24 10.7 24 24s-10.7 24-24 24H152c-13.3 0-24-10.7-24-24s10.7-24 24-24z\"]\n};\nvar faMinusSquare = faSquareMinus;\nvar faHelicopter = {\n prefix: 'fas',\n iconName: 'helicopter',\n icon: [640, 512, [128641], \"f533\", \"M128 32c0-17.7 14.3-32 32-32H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H384v64h32c88.4 0 160 71.6 160 160v64c0 17.7-14.3 32-32 32H384 320c-20.1 0-39.1-9.5-51.2-25.6l-71.4-95.2c-3.5-4.7-8.3-8.3-13.7-10.5L47.2 198.1c-9.5-3.8-16.7-12-19.2-22L5 83.9C2.4 73.8 10.1 64 20.5 64H48c10.1 0 19.6 4.7 25.6 12.8L112 128H320V64H160c-17.7 0-32-14.3-32-32zM384 320H512V288c0-53-43-96-96-96H384V320zM630.6 425.4c12.5 12.5 12.5 32.8 0 45.3l-3.9 3.9c-24 24-56.6 37.5-90.5 37.5H256c-17.7 0-32-14.3-32-32s14.3-32 32-32H536.2c17 0 33.3-6.7 45.3-18.7l3.9-3.9c12.5-12.5 32.8-12.5 45.3 0z\"]\n};\nvar faCompass = {\n prefix: 'fas',\n iconName: 'compass',\n icon: [512, 512, [129517], \"f14e\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm50.7-186.9L162.4 380.6c-19.4 7.5-38.5-11.6-31-31l55.5-144.3c3.3-8.5 9.9-15.1 18.4-18.4l144.3-55.5c19.4-7.5 38.5 11.6 31 31L325.1 306.7c-3.2 8.5-9.9 15.1-18.4 18.4zM288 256a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"]\n};\nvar faSquareCaretDown = {\n prefix: 'fas',\n iconName: 'square-caret-down',\n icon: [448, 512, [\"caret-square-down\"], \"f150\", \"M384 480c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0zM224 352c-6.7 0-13-2.8-17.6-7.7l-104-112c-6.5-7-8.2-17.2-4.4-25.9s12.5-14.4 22-14.4l208 0c9.5 0 18.2 5.7 22 14.4s2.1 18.9-4.4 25.9l-104 112c-4.5 4.9-10.9 7.7-17.6 7.7z\"]\n};\nvar faCaretSquareDown = faSquareCaretDown;\nvar faFileCircleQuestion = {\n prefix: 'fas',\n iconName: 'file-circle-question',\n icon: [576, 512, [], \"e4ef\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384v38.6C310.1 219.5 256 287.4 256 368c0 59.1 29.1 111.3 73.7 143.3c-3.2 .5-6.4 .7-9.7 .7H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zm48 96a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm0 240a24 24 0 1 0 0-48 24 24 0 1 0 0 48zM368 321.6V328c0 8.8 7.2 16 16 16s16-7.2 16-16v-6.4c0-5.3 4.3-9.6 9.6-9.6h40.5c7.7 0 13.9 6.2 13.9 13.9c0 5.2-2.9 9.9-7.4 12.3l-32 16.8c-5.3 2.8-8.6 8.2-8.6 14.2V384c0 8.8 7.2 16 16 16s16-7.2 16-16v-5.1l23.5-12.3c15.1-7.9 24.5-23.6 24.5-40.6c0-25.4-20.6-45.9-45.9-45.9H409.6c-23 0-41.6 18.6-41.6 41.6z\"]\n};\nvar faLaptopCode = {\n prefix: 'fas',\n iconName: 'laptop-code',\n icon: [640, 512, [], \"f5fc\", \"M64 96c0-35.3 28.7-64 64-64H512c35.3 0 64 28.7 64 64V352H512V96H128V352H64V96zM0 403.2C0 392.6 8.6 384 19.2 384H620.8c10.6 0 19.2 8.6 19.2 19.2c0 42.4-34.4 76.8-76.8 76.8H76.8C34.4 480 0 445.6 0 403.2zM281 209l-31 31 31 31c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-48-48c-9.4-9.4-9.4-24.6 0-33.9l48-48c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9zM393 175l48 48c9.4 9.4 9.4 24.6 0 33.9l-48 48c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l31-31-31-31c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0z\"]\n};\nvar faSwatchbook = {\n prefix: 'fas',\n iconName: 'swatchbook',\n icon: [512, 512, [], \"f5c3\", \"M0 32C0 14.3 14.3 0 32 0H160c17.7 0 32 14.3 32 32V416c0 53-43 96-96 96s-96-43-96-96V32zM223.6 425.9c.3-3.3 .4-6.6 .4-9.9V154l75.4-75.4c12.5-12.5 32.8-12.5 45.3 0l90.5 90.5c12.5 12.5 12.5 32.8 0 45.3L223.6 425.9zM182.8 512l192-192H480c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32H182.8zM128 64H64v64h64V64zM64 192v64h64V192H64zM96 440a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faPrescriptionBottle = {\n prefix: 'fas',\n iconName: 'prescription-bottle',\n icon: [384, 512, [], \"f485\", \"M0 32C0 14.3 14.3 0 32 0H352c17.7 0 32 14.3 32 32V64c0 17.7-14.3 32-32 32H32C14.3 96 0 81.7 0 64V32zm32 96H352V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V416H144c8.8 0 16-7.2 16-16s-7.2-16-16-16H32V320H144c8.8 0 16-7.2 16-16s-7.2-16-16-16H32V224H144c8.8 0 16-7.2 16-16s-7.2-16-16-16H32V128z\"]\n};\nvar faBars = {\n prefix: 'fas',\n iconName: 'bars',\n icon: [448, 512, [\"navicon\"], \"f0c9\", \"M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z\"]\n};\nvar faNavicon = faBars;\nvar faPeopleGroup = {\n prefix: 'fas',\n iconName: 'people-group',\n icon: [640, 512, [], \"e533\", \"M72 88a56 56 0 1 1 112 0A56 56 0 1 1 72 88zM64 245.7C54 256.9 48 271.8 48 288s6 31.1 16 42.3V245.7zm144.4-49.3C178.7 222.7 160 261.2 160 304c0 34.3 12 65.8 32 90.5V416c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V389.2C26.2 371.2 0 332.7 0 288c0-61.9 50.1-112 112-112h32c24 0 46.2 7.5 64.4 20.3zM448 416V394.5c20-24.7 32-56.2 32-90.5c0-42.8-18.7-81.3-48.4-107.7C449.8 183.5 472 176 496 176h32c61.9 0 112 50.1 112 112c0 44.7-26.2 83.2-64 101.2V416c0 17.7-14.3 32-32 32H480c-17.7 0-32-14.3-32-32zm8-328a56 56 0 1 1 112 0A56 56 0 1 1 456 88zM576 245.7v84.7c10-11.3 16-26.1 16-42.3s-6-31.1-16-42.3zM320 32a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM240 304c0 16.2 6 31 16 42.3V261.7c-10 11.3-16 26.1-16 42.3zm144-42.3v84.7c10-11.3 16-26.1 16-42.3s-6-31.1-16-42.3zM448 304c0 44.7-26.2 83.2-64 101.2V448c0 17.7-14.3 32-32 32H288c-17.7 0-32-14.3-32-32V405.2c-37.8-18-64-56.5-64-101.2c0-61.9 50.1-112 112-112h32c61.9 0 112 50.1 112 112z\"]\n};\nvar faHourglassEnd = {\n prefix: 'fas',\n iconName: 'hourglass-end',\n icon: [384, 512, [8987, \"hourglass-3\"], \"f253\", \"M32 0C14.3 0 0 14.3 0 32S14.3 64 32 64V75c0 42.4 16.9 83.1 46.9 113.1L146.7 256 78.9 323.9C48.9 353.9 32 394.6 32 437v11c-17.7 0-32 14.3-32 32s14.3 32 32 32H64 320h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V437c0-42.4-16.9-83.1-46.9-113.1L237.3 256l67.9-67.9c30-30 46.9-70.7 46.9-113.1V64c17.7 0 32-14.3 32-32s-14.3-32-32-32H320 64 32zM96 75V64H288V75c0 25.5-10.1 49.9-28.1 67.9L192 210.7l-67.9-67.9C106.1 124.9 96 100.4 96 75z\"]\n};\nvar faHourglass3 = faHourglassEnd;\nvar faHeartCrack = {\n prefix: 'fas',\n iconName: 'heart-crack',\n icon: [512, 512, [128148, \"heart-broken\"], \"f7a9\", \"M119.4 44.1c23.3-3.9 46.8-1.9 68.6 5.3l49.8 77.5-75.4 75.4c-1.5 1.5-2.4 3.6-2.3 5.8s1 4.2 2.6 5.7l112 104c2.9 2.7 7.4 2.9 10.5 .3s3.8-7 1.7-10.4l-60.4-98.1 90.7-75.6c2.6-2.1 3.5-5.7 2.4-8.8L296.8 61.8c28.5-16.7 62.4-23.2 95.7-17.6C461.5 55.6 512 115.2 512 185.1v5.8c0 41.5-17.2 81.2-47.6 109.5L283.7 469.1c-7.5 7-17.4 10.9-27.7 10.9s-20.2-3.9-27.7-10.9L47.6 300.4C17.2 272.1 0 232.4 0 190.9v-5.8c0-69.9 50.5-129.5 119.4-141z\"]\n};\nvar faHeartBroken = faHeartCrack;\nvar faSquareUpRight = {\n prefix: 'fas',\n iconName: 'square-up-right',\n icon: [448, 512, [8599, \"external-link-square-alt\"], \"f360\", \"M384 32c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96C0 60.7 28.7 32 64 32H384zM320 313.4V176c0-8.8-7.2-16-16-16H166.6c-12.5 0-22.6 10.1-22.6 22.6c0 6 2.4 11.8 6.6 16L184 232l-66.3 66.3C114 302 112 306.9 112 312s2 10 5.7 13.7l36.7 36.7c3.6 3.6 8.5 5.7 13.7 5.7s10-2 13.7-5.7L248 296l33.4 33.4c4.2 4.2 10 6.6 16 6.6c12.5 0 22.6-10.1 22.6-22.6z\"]\n};\nvar faExternalLinkSquareAlt = faSquareUpRight;\nvar faFaceKissBeam = {\n prefix: 'fas',\n iconName: 'face-kiss-beam',\n icon: [512, 512, [128537, \"kiss-beam\"], \"f597\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm48.7-198.3c4.3 5.1 7.3 11.4 7.3 18.3s-3.1 13.2-7.3 18.3c-4.3 5.2-10.1 9.7-16.7 13.4c-2.7 1.5-5.7 3-8.7 4.3c3.1 1.3 6 2.7 8.7 4.3c6.6 3.7 12.5 8.2 16.7 13.4c4.3 5.1 7.3 11.4 7.3 18.3s-3.1 13.2-7.3 18.3c-4.3 5.2-10.1 9.7-16.7 13.4C274.7 443.1 257.4 448 240 448c-3.6 0-6.8-2.5-7.7-6s.6-7.2 3.8-9l0 0 0 0 0 0 0 0 .2-.1c.2-.1 .5-.3 .9-.5c.8-.5 2-1.2 3.4-2.1c2.8-1.9 6.5-4.5 10.2-7.6c3.7-3.1 7.2-6.6 9.6-10.1c2.5-3.5 3.5-6.4 3.5-8.6s-1-5-3.5-8.6c-2.5-3.5-5.9-6.9-9.6-10.1c-3.7-3.1-7.4-5.7-10.2-7.6c-1.4-.9-2.6-1.6-3.4-2.1c-.4-.2-.7-.4-.9-.5l-.2-.1 0 0 0 0 0 0c-2.5-1.4-4.1-4.1-4.1-7s1.6-5.6 4.1-7l0 0 0 0 0 0 0 0 0 0 .2-.1 .3-.2 .6-.4c.8-.5 2-1.2 3.4-2.1c2.8-1.9 6.5-4.5 10.2-7.6c3.7-3.1 7.2-6.6 9.6-10.1c2.5-3.5 3.5-6.4 3.5-8.6s-1-5-3.5-8.6c-2.5-3.5-5.9-6.9-9.6-10.1c-3.7-3.1-7.4-5.7-10.2-7.6c-1.4-.9-2.6-1.6-3.4-2.1l-.4-.3-.5-.3-.2-.1 0 0 0 0 0 0c-3.2-1.8-4.7-5.5-3.8-9s4.1-6 7.7-6c17.4 0 34.7 4.9 47.9 12.3c6.6 3.7 12.5 8.2 16.7 13.4zm-87.1-84.9l0 0 0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0zm160 0l0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0 0 0z\"]\n};\nvar faKissBeam = faFaceKissBeam;\nvar faFilm = {\n prefix: 'fas',\n iconName: 'film',\n icon: [512, 512, [127902], \"f008\", \"M0 96C0 60.7 28.7 32 64 32H448c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zM48 368v32c0 8.8 7.2 16 16 16H96c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16H64c-8.8 0-16 7.2-16 16zm368-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16H416zM48 240v32c0 8.8 7.2 16 16 16H96c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H64c-8.8 0-16 7.2-16 16zm368-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H416zM48 112v32c0 8.8 7.2 16 16 16H96c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H64c-8.8 0-16 7.2-16 16zM416 96c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H416zM160 128v64c0 17.7 14.3 32 32 32H320c17.7 0 32-14.3 32-32V128c0-17.7-14.3-32-32-32H192c-17.7 0-32 14.3-32 32zm32 160c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32H320c17.7 0 32-14.3 32-32V320c0-17.7-14.3-32-32-32H192z\"]\n};\nvar faRulerHorizontal = {\n prefix: 'fas',\n iconName: 'ruler-horizontal',\n icon: [640, 512, [], \"f547\", \"M0 336c0 26.5 21.5 48 48 48l544 0c26.5 0 48-21.5 48-48l0-160c0-26.5-21.5-48-48-48l-64 0 0 80c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-80-64 0 0 80c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-80-64 0 0 80c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-80-64 0 0 80c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-80-64 0 0 80c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-80-64 0c-26.5 0-48 21.5-48 48L0 336z\"]\n};\nvar faPeopleRobbery = {\n prefix: 'fas',\n iconName: 'people-robbery',\n icon: [576, 512, [], \"e536\", \"M488.2 59.1C478.1 99.6 441.7 128 400 128s-78.1-28.4-88.2-68.9L303 24.2C298.8 7.1 281.4-3.3 264.2 1S236.7 22.6 241 39.8l8.7 34.9c11 44 40.2 79.6 78.3 99.6V480c0 17.7 14.3 32 32 32s32-14.3 32-32V352h16V480c0 17.7 14.3 32 32 32s32-14.3 32-32V174.3c38.1-20 67.3-55.6 78.3-99.6L559 39.8c4.3-17.1-6.1-34.5-23.3-38.8S501.2 7.1 497 24.2l-8.7 34.9zM400 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM80 96A48 48 0 1 0 80 0a48 48 0 1 0 0 96zm-8 32c-35.3 0-64 28.7-64 64v96l0 .6V480c0 17.7 14.3 32 32 32s32-14.3 32-32V352H88V480c0 17.7 14.3 32 32 32s32-14.3 32-32V252.7l13 20.5c5.9 9.2 16.1 14.9 27 14.9h48c17.7 0 32-14.3 32-32s-14.3-32-32-32H209.6l-37.4-58.9C157.6 142 132.1 128 104.7 128H72z\"]\n};\nvar faLightbulb = {\n prefix: 'fas',\n iconName: 'lightbulb',\n icon: [384, 512, [128161], \"f0eb\", \"M272 384c9.6-31.9 29.5-59.1 49.2-86.2l0 0c5.2-7.1 10.4-14.2 15.4-21.4c19.8-28.5 31.4-63 31.4-100.3C368 78.8 289.2 0 192 0S16 78.8 16 176c0 37.3 11.6 71.9 31.4 100.3c5 7.2 10.2 14.3 15.4 21.4l0 0c19.8 27.1 39.7 54.4 49.2 86.2H272zM192 512c44.2 0 80-35.8 80-80V416H112v16c0 44.2 35.8 80 80 80zM112 176c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-61.9 50.1-112 112-112c8.8 0 16 7.2 16 16s-7.2 16-16 16c-44.2 0-80 35.8-80 80z\"]\n};\nvar faCaretLeft = {\n prefix: 'fas',\n iconName: 'caret-left',\n icon: [256, 512, [], \"f0d9\", \"M9.4 278.6c-12.5-12.5-12.5-32.8 0-45.3l128-128c9.2-9.2 22.9-11.9 34.9-6.9s19.8 16.6 19.8 29.6l0 256c0 12.9-7.8 24.6-19.8 29.6s-25.7 2.2-34.9-6.9l-128-128z\"]\n};\nvar faCircleExclamation = {\n prefix: 'fas',\n iconName: 'circle-exclamation',\n icon: [512, 512, [\"exclamation-circle\"], \"f06a\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24V264c0 13.3-10.7 24-24 24s-24-10.7-24-24V152c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faExclamationCircle = faCircleExclamation;\nvar faSchoolCircleXmark = {\n prefix: 'fas',\n iconName: 'school-circle-xmark',\n icon: [640, 512, [], \"e56d\", \"M337.8 5.4C327-1.8 313-1.8 302.2 5.4L166.3 96H48C21.5 96 0 117.5 0 144V464c0 26.5 21.5 48 48 48H320v0H256V416c0-35.3 28.7-64 64-64l.3 0h.5c3.4-37.7 18.7-72.1 42.2-99.1C350.2 260 335.6 264 320 264c-48.6 0-88-39.4-88-88s39.4-88 88-88s88 39.4 88 88c0 18.3-5.6 35.3-15.1 49.4c29-21 64.6-33.4 103.1-33.4c59.5 0 112.1 29.6 144 74.8V144c0-26.5-21.5-48-48-48H473.7L337.8 5.4zM96 192h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16V208c0-8.8 7.2-16 16-16zm0 128h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16V336c0-8.8 7.2-16 16-16zM320 128c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H336V144c0-8.8-7.2-16-16-16zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm22.6-144l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L496 390.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L473.4 368l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L496 345.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6L518.6 368z\"]\n};\nvar faArrowRightFromBracket = {\n prefix: 'fas',\n iconName: 'arrow-right-from-bracket',\n icon: [512, 512, [\"sign-out\"], \"f08b\", \"M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 192 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128zM160 96c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 32C43 32 0 75 0 128L0 384c0 53 43 96 96 96l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l64 0z\"]\n};\nvar faSignOut = faArrowRightFromBracket;\nvar faCircleChevronDown = {\n prefix: 'fas',\n iconName: 'circle-chevron-down',\n icon: [512, 512, [\"chevron-circle-down\"], \"f13a\", \"M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM135 241c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l87 87 87-87c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L273 345c-9.4 9.4-24.6 9.4-33.9 0L135 241z\"]\n};\nvar faChevronCircleDown = faCircleChevronDown;\nvar faUnlockKeyhole = {\n prefix: 'fas',\n iconName: 'unlock-keyhole',\n icon: [448, 512, [\"unlock-alt\"], \"f13e\", \"M224 64c-44.2 0-80 35.8-80 80v48H384c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V256c0-35.3 28.7-64 64-64H80V144C80 64.5 144.5 0 224 0c57.5 0 107 33.7 130.1 82.3c7.6 16 .8 35.1-15.2 42.6s-35.1 .8-42.6-15.2C283.4 82.6 255.9 64 224 64zm32 320c17.7 0 32-14.3 32-32s-14.3-32-32-32H192c-17.7 0-32 14.3-32 32s14.3 32 32 32h64z\"]\n};\nvar faUnlockAlt = faUnlockKeyhole;\nvar faCloudShowersHeavy = {\n prefix: 'fas',\n iconName: 'cloud-showers-heavy',\n icon: [512, 512, [], \"f740\", \"M96 320c-53 0-96-43-96-96c0-42.5 27.6-78.6 65.9-91.2C64.7 126.1 64 119.1 64 112C64 50.1 114.1 0 176 0c43.1 0 80.5 24.3 99.2 60c14.7-17.1 36.5-28 60.8-28c44.2 0 80 35.8 80 80c0 5.5-.6 10.8-1.6 16c.5 0 1.1 0 1.6 0c53 0 96 43 96 96s-43 96-96 96H96zM81.5 353.9c12.2 5.2 17.8 19.3 12.6 31.5l-48 112c-5.2 12.2-19.3 17.8-31.5 12.6S-3.3 490.7 1.9 478.5l48-112c5.2-12.2 19.3-17.8 31.5-12.6zm120 0c12.2 5.2 17.8 19.3 12.6 31.5l-48 112c-5.2 12.2-19.3 17.8-31.5 12.6s-17.8-19.3-12.6-31.5l48-112c5.2-12.2 19.3-17.8 31.5-12.6zm244.6 31.5l-48 112c-5.2 12.2-19.3 17.8-31.5 12.6s-17.8-19.3-12.6-31.5l48-112c5.2-12.2 19.3-17.8 31.5-12.6s17.8 19.3 12.6 31.5zM313.5 353.9c12.2 5.2 17.8 19.3 12.6 31.5l-48 112c-5.2 12.2-19.3 17.8-31.5 12.6s-17.8-19.3-12.6-31.5l48-112c5.2-12.2 19.3-17.8 31.5-12.6z\"]\n};\nvar faHeadphonesSimple = {\n prefix: 'fas',\n iconName: 'headphones-simple',\n icon: [512, 512, [\"headphones-alt\"], \"f58f\", \"M256 80C141.1 80 48 173.1 48 288V392c0 13.3-10.7 24-24 24s-24-10.7-24-24V288C0 146.6 114.6 32 256 32s256 114.6 256 256V392c0 13.3-10.7 24-24 24s-24-10.7-24-24V288c0-114.9-93.1-208-208-208zM80 352c0-35.3 28.7-64 64-64h16c17.7 0 32 14.3 32 32V448c0 17.7-14.3 32-32 32H144c-35.3 0-64-28.7-64-64V352zm288-64c35.3 0 64 28.7 64 64v64c0 35.3-28.7 64-64 64H352c-17.7 0-32-14.3-32-32V320c0-17.7 14.3-32 32-32h16z\"]\n};\nvar faHeadphonesAlt = faHeadphonesSimple;\nvar faSitemap = {\n prefix: 'fas',\n iconName: 'sitemap',\n icon: [576, 512, [], \"f0e8\", \"M208 80c0-26.5 21.5-48 48-48h64c26.5 0 48 21.5 48 48v64c0 26.5-21.5 48-48 48h-8v40H464c30.9 0 56 25.1 56 56v32h8c26.5 0 48 21.5 48 48v64c0 26.5-21.5 48-48 48H464c-26.5 0-48-21.5-48-48V368c0-26.5 21.5-48 48-48h8V288c0-4.4-3.6-8-8-8H312v40h8c26.5 0 48 21.5 48 48v64c0 26.5-21.5 48-48 48H256c-26.5 0-48-21.5-48-48V368c0-26.5 21.5-48 48-48h8V280H112c-4.4 0-8 3.6-8 8v32h8c26.5 0 48 21.5 48 48v64c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V368c0-26.5 21.5-48 48-48h8V288c0-30.9 25.1-56 56-56H264V192h-8c-26.5 0-48-21.5-48-48V80z\"]\n};\nvar faCircleDollarToSlot = {\n prefix: 'fas',\n iconName: 'circle-dollar-to-slot',\n icon: [512, 512, [\"donate\"], \"f4b9\", \"M326.7 403.7c-22.1 8-45.9 12.3-70.7 12.3s-48.7-4.4-70.7-12.3c-.3-.1-.5-.2-.8-.3c-30-11-56.8-28.7-78.6-51.4C70 314.6 48 263.9 48 208C48 93.1 141.1 0 256 0S464 93.1 464 208c0 55.9-22 106.6-57.9 144c-1 1-2 2.1-3 3.1c-21.4 21.4-47.4 38.1-76.3 48.6zM256 84c-11 0-20 9-20 20v14c-7.6 1.7-15.2 4.4-22.2 8.5c-13.9 8.3-25.9 22.8-25.8 43.9c.1 20.3 12 33.1 24.7 40.7c11 6.6 24.7 10.8 35.6 14l1.7 .5c12.6 3.8 21.8 6.8 28 10.7c5.1 3.2 5.8 5.4 5.9 8.2c.1 5-1.8 8-5.9 10.5c-5 3.1-12.9 5-21.4 4.7c-11.1-.4-21.5-3.9-35.1-8.5c-2.3-.8-4.7-1.6-7.2-2.4c-10.5-3.5-21.8 2.2-25.3 12.6s2.2 21.8 12.6 25.3c1.9 .6 4 1.3 6.1 2.1l0 0 0 0c8.3 2.9 17.9 6.2 28.2 8.4V312c0 11 9 20 20 20s20-9 20-20V298.2c8-1.7 16-4.5 23.2-9c14.3-8.9 25.1-24.1 24.8-45c-.3-20.3-11.7-33.4-24.6-41.6c-11.5-7.2-25.9-11.6-37.1-15l-.7-.2c-12.8-3.9-21.9-6.7-28.3-10.5c-5.2-3.1-5.3-4.9-5.3-6.7c0-3.7 1.4-6.5 6.2-9.3c5.4-3.2 13.6-5.1 21.5-5c9.6 .1 20.2 2.2 31.2 5.2c10.7 2.8 21.6-3.5 24.5-14.2s-3.5-21.6-14.2-24.5c-6.5-1.7-13.7-3.4-21.1-4.7V104c0-11-9-20-20-20zM48 352H64c19.5 25.9 44 47.7 72.2 64H64v32H256 448V416H375.8c28.2-16.3 52.8-38.1 72.2-64h16c26.5 0 48 21.5 48 48v64c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V400c0-26.5 21.5-48 48-48z\"]\n};\nvar faDonate = faCircleDollarToSlot;\nvar faMemory = {\n prefix: 'fas',\n iconName: 'memory',\n icon: [576, 512, [], \"f538\", \"M64 64C28.7 64 0 92.7 0 128v7.4c0 6.8 4.4 12.6 10.1 16.3C23.3 160.3 32 175.1 32 192s-8.7 31.7-21.9 40.3C4.4 236 0 241.8 0 248.6V320H576V248.6c0-6.8-4.4-12.6-10.1-16.3C552.7 223.7 544 208.9 544 192s8.7-31.7 21.9-40.3c5.7-3.7 10.1-9.5 10.1-16.3V128c0-35.3-28.7-64-64-64H64zM576 352H0v64c0 17.7 14.3 32 32 32H80V416c0-8.8 7.2-16 16-16s16 7.2 16 16v32h96V416c0-8.8 7.2-16 16-16s16 7.2 16 16v32h96V416c0-8.8 7.2-16 16-16s16 7.2 16 16v32h96V416c0-8.8 7.2-16 16-16s16 7.2 16 16v32h48c17.7 0 32-14.3 32-32V352zM192 160v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V160c0-17.7 14.3-32 32-32s32 14.3 32 32zm128 0v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V160c0-17.7 14.3-32 32-32s32 14.3 32 32zm128 0v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V160c0-17.7 14.3-32 32-32s32 14.3 32 32z\"]\n};\nvar faRoadSpikes = {\n prefix: 'fas',\n iconName: 'road-spikes',\n icon: [640, 512, [], \"e568\", \"M64 116.8c0-15.8 20.5-22 29.3-8.9L192 256V116.8c0-15.8 20.5-22 29.3-8.9L320 256V116.8c0-15.8 20.5-22 29.3-8.9L448 256V116.8c0-15.8 20.5-22 29.3-8.9L606.8 302.2c14.2 21.3-1.1 49.7-26.6 49.7H512 448 384 320 256 192 64V116.8zM32 384H608c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faFireBurner = {\n prefix: 'fas',\n iconName: 'fire-burner',\n icon: [640, 512, [], \"e4f1\", \"M345.7 48.3L358 34.5c5.4-6.1 13.3-8.8 20.9-8.9c7.2 0 14.3 2.6 19.9 7.8c19.7 18.3 39.8 43.2 55 70.6C469 131.2 480 162.2 480 192.2C480 280.8 408.7 352 320 352c-89.6 0-160-71.3-160-159.8c0-37.3 16-73.4 36.8-104.5c20.9-31.3 47.5-59 70.9-80.2C273.4 2.3 280.7-.2 288 0c14.1 .3 23.8 11.4 32.7 21.6c0 0 0 0 0 0c2 2.3 4 4.6 6 6.7l19 19.9zM384 240.2c0-36.5-37-73-54.8-88.4c-5.4-4.7-13.1-4.7-18.5 0C293 167.1 256 203.6 256 240.2c0 35.3 28.7 64 64 64s64-28.7 64-64zM32 288c0-17.7 14.3-32 32-32l32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l0 64 448 0 0-64c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0c17.7 0 32 14.3 32 32l0 96c17.7 0 32 14.3 32 32l0 64c0 17.7-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32l0-64c0-17.7 14.3-32 32-32l0-96zM320 480a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm160-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM192 480a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faFlag = {\n prefix: 'fas',\n iconName: 'flag',\n icon: [448, 512, [127988, 61725], \"f024\", \"M64 32C64 14.3 49.7 0 32 0S0 14.3 0 32V64 368 480c0 17.7 14.3 32 32 32s32-14.3 32-32V352l64.3-16.1c41.1-10.3 84.6-5.5 122.5 13.4c44.2 22.1 95.5 24.8 141.7 7.4l34.7-13c12.5-4.7 20.8-16.6 20.8-30V66.1c0-23-24.2-38-44.8-27.7l-9.6 4.8c-46.3 23.2-100.8 23.2-147.1 0c-35.1-17.6-75.4-22-113.5-12.5L64 48V32z\"]\n};\nvar faHanukiah = {\n prefix: 'fas',\n iconName: 'hanukiah',\n icon: [640, 512, [128334], \"f6e6\", \"M314.2 3.3C309.1 12.1 296 36.6 296 56c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7C324.6 1.2 322.4 0 320 0s-4.6 1.2-5.8 3.3zm-288 48C21.1 60.1 8 84.6 8 104c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7C36.6 49.2 34.4 48 32 48s-4.6 1.2-5.8 3.3zM88 104c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7c-1.2-2.1-3.4-3.3-5.8-3.3s-4.6 1.2-5.8 3.3C101.1 60.1 88 84.6 88 104zm82.2-52.7C165.1 60.1 152 84.6 152 104c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7c-1.2-2.1-3.4-3.3-5.8-3.3s-4.6 1.2-5.8 3.3zM216 104c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7c-1.2-2.1-3.4-3.3-5.8-3.3s-4.6 1.2-5.8 3.3C229.1 60.1 216 84.6 216 104zM394.2 51.3C389.1 60.1 376 84.6 376 104c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7c-1.2-2.1-3.4-3.3-5.8-3.3s-4.6 1.2-5.8 3.3zM440 104c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7c-1.2-2.1-3.4-3.3-5.8-3.3s-4.6 1.2-5.8 3.3C453.1 60.1 440 84.6 440 104zm82.2-52.7C517.1 60.1 504 84.6 504 104c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7c-1.2-2.1-3.4-3.3-5.8-3.3s-4.6 1.2-5.8 3.3zM584 104c0 13.3 10.7 24 24 24s24-10.7 24-24c0-19.4-13.1-43.9-18.2-52.7c-1.2-2.1-3.4-3.3-5.8-3.3s-4.6 1.2-5.8 3.3C597.1 60.1 584 84.6 584 104zM112 160c-8.8 0-16 7.2-16 16v96 16h32V272 176c0-8.8-7.2-16-16-16zm64 0c-8.8 0-16 7.2-16 16v96 16h32V272 176c0-8.8-7.2-16-16-16zm64 0c-8.8 0-16 7.2-16 16v96 16h32V272 176c0-8.8-7.2-16-16-16zm160 0c-8.8 0-16 7.2-16 16v96 16h32V272 176c0-8.8-7.2-16-16-16zm64 0c-8.8 0-16 7.2-16 16v96 16h32V272 176c0-8.8-7.2-16-16-16zm64 0c-8.8 0-16 7.2-16 16v96 16h32V272 176c0-8.8-7.2-16-16-16zM352 144c0-17.7-14.3-32-32-32s-32 14.3-32 32V320H96c-17.7 0-32-14.3-32-32V192c0-17.7-14.3-32-32-32s-32 14.3-32 32v96c0 53 43 96 96 96H288v64H160c-17.7 0-32 14.3-32 32s14.3 32 32 32H320 480c17.7 0 32-14.3 32-32s-14.3-32-32-32H352V384H544c53 0 96-43 96-96V192c0-17.7-14.3-32-32-32s-32 14.3-32 32v96c0 17.7-14.3 32-32 32H352V144z\"]\n};\nvar faFeather = {\n prefix: 'fas',\n iconName: 'feather',\n icon: [512, 512, [129718], \"f52d\", \"M278.5 215.6L23 471c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l57-57h68c49.7 0 97.9-14.4 139-41c11.1-7.2 5.5-23-7.8-23c-5.1 0-9.2-4.1-9.2-9.2c0-4.1 2.7-7.6 6.5-8.8l81-24.3c2.5-.8 4.8-2.1 6.7-4l22.4-22.4c10.1-10.1 2.9-27.3-11.3-27.3l-32.2 0c-5.1 0-9.2-4.1-9.2-9.2c0-4.1 2.7-7.6 6.5-8.8l112-33.6c4-1.2 7.4-3.9 9.3-7.7C506.4 207.6 512 184.1 512 160c0-41-16.3-80.3-45.3-109.3l-5.5-5.5C432.3 16.3 393 0 352 0s-80.3 16.3-109.3 45.3L139 149C91 197 64 262.1 64 330v55.3L253.6 195.8c6.2-6.2 16.4-6.2 22.6 0c5.4 5.4 6.1 13.6 2.2 19.8z\"]\n};\nvar faVolumeLow = {\n prefix: 'fas',\n iconName: 'volume-low',\n icon: [448, 512, [128264, \"volume-down\"], \"f027\", \"M301.1 34.8C312.6 40 320 51.4 320 64V448c0 12.6-7.4 24-18.9 29.2s-25 3.1-34.4-5.3L131.8 352H64c-35.3 0-64-28.7-64-64V224c0-35.3 28.7-64 64-64h67.8L266.7 40.1c9.4-8.4 22.9-10.4 34.4-5.3zM412.6 181.5C434.1 199.1 448 225.9 448 256s-13.9 56.9-35.4 74.5c-10.3 8.4-25.4 6.8-33.8-3.5s-6.8-25.4 3.5-33.8C393.1 284.4 400 271 400 256s-6.9-28.4-17.7-37.3c-10.3-8.4-11.8-23.5-3.5-33.8s23.5-11.8 33.8-3.5z\"]\n};\nvar faVolumeDown = faVolumeLow;\nvar faCommentSlash = {\n prefix: 'fas',\n iconName: 'comment-slash',\n icon: [640, 512, [], \"f4b3\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L512.9 376.7C552.2 340.2 576 292.3 576 240C576 125.1 461.4 32 320 32c-67.7 0-129.3 21.4-175.1 56.3L38.8 5.1zm385.2 425L82.9 161.3C70.7 185.6 64 212.2 64 240c0 45.1 17.7 86.8 47.7 120.9c-1.9 24.5-11.4 46.3-21.4 62.9c-5.5 9.2-11.1 16.6-15.2 21.6c-2.1 2.5-3.7 4.4-4.9 5.7c-.6 .6-1 1.1-1.3 1.4l-.3 .3 0 0 0 0 0 0 0 0c-4.6 4.6-5.9 11.4-3.4 17.4c2.5 6 8.3 9.9 14.8 9.9c28.7 0 57.6-8.9 81.6-19.3c22.9-10 42.4-21.9 54.3-30.6c31.8 11.5 67 17.9 104.1 17.9c37 0 72.3-6.4 104.1-17.9z\"]\n};\nvar faCloudSunRain = {\n prefix: 'fas',\n iconName: 'cloud-sun-rain',\n icon: [640, 512, [127782], \"f743\", \"M294.2 1.2c5.1 2.1 8.7 6.7 9.6 12.1l10.4 62.4c-23.3 10.8-42.9 28.4-56 50.3c-14.6-9-31.8-14.1-50.2-14.1c-53 0-96 43-96 96c0 35.5 19.3 66.6 48 83.2c.8 31.8 13.2 60.7 33.1 82.7l-56 39.2c-4.5 3.2-10.3 3.8-15.4 1.6s-8.7-6.7-9.6-12.1L98.1 317.9 13.4 303.8c-5.4-.9-10-4.5-12.1-9.6s-1.5-10.9 1.6-15.4L52.5 208 2.9 137.2c-3.2-4.5-3.8-10.3-1.6-15.4s6.7-8.7 12.1-9.6L98.1 98.1l14.1-84.7c.9-5.4 4.5-10 9.6-12.1s10.9-1.5 15.4 1.6L208 52.5 278.8 2.9c4.5-3.2 10.3-3.8 15.4-1.6zM208 144c13.8 0 26.7 4.4 37.1 11.9c-1.2 4.1-2.2 8.3-3 12.6c-37.9 14.6-67.2 46.6-77.8 86.4C151.8 243.1 144 226.5 144 208c0-35.3 28.7-64 64-64zm69.4 276c11 7.4 14 22.3 6.7 33.3l-32 48c-7.4 11-22.3 14-33.3 6.7s-14-22.3-6.7-33.3l32-48c7.4-11 22.3-14 33.3-6.7zm96 0c11 7.4 14 22.3 6.7 33.3l-32 48c-7.4 11-22.3 14-33.3 6.7s-14-22.3-6.7-33.3l32-48c7.4-11 22.3-14 33.3-6.7zm96 0c11 7.4 14 22.3 6.7 33.3l-32 48c-7.4 11-22.3 14-33.3 6.7s-14-22.3-6.7-33.3l32-48c7.4-11 22.3-14 33.3-6.7zm96 0c11 7.4 14 22.3 6.7 33.3l-32 48c-7.4 11-22.3 14-33.3 6.7s-14-22.3-6.7-33.3l32-48c7.4-11 22.3-14 33.3-6.7zm74.5-116.1c0 44.2-35.8 80-80 80H288c-53 0-96-43-96-96c0-47.6 34.6-87 80-94.6l0-1.3c0-53 43-96 96-96c34.9 0 65.4 18.6 82.2 46.4c13-9.1 28.8-14.4 45.8-14.4c44.2 0 80 35.8 80 80c0 5.9-.6 11.7-1.9 17.2c37.4 6.7 65.8 39.4 65.8 78.7z\"]\n};\nvar faCompress = {\n prefix: 'fas',\n iconName: 'compress',\n icon: [448, 512, [], \"f066\", \"M160 64c0-17.7-14.3-32-32-32s-32 14.3-32 32v64H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32V64zM32 320c-17.7 0-32 14.3-32 32s14.3 32 32 32H96v64c0 17.7 14.3 32 32 32s32-14.3 32-32V352c0-17.7-14.3-32-32-32H32zM352 64c0-17.7-14.3-32-32-32s-32 14.3-32 32v96c0 17.7 14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H352V64zM320 320c-17.7 0-32 14.3-32 32v96c0 17.7 14.3 32 32 32s32-14.3 32-32V384h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H320z\"]\n};\nvar faWheatAwn = {\n prefix: 'fas',\n iconName: 'wheat-awn',\n icon: [512, 512, [\"wheat-alt\"], \"e2cd\", \"M505 41c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L383 95c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l88-88zM305.5 27.3c-6.2-6.2-16.4-6.2-22.6 0L271.5 38.6c-37.5 37.5-37.5 98.3 0 135.8l10.4 10.4-30.5 30.5c-3.4-27.3-15.5-53.8-36.5-74.8l-11.3-11.3c-6.2-6.2-16.4-6.2-22.6 0l-11.3 11.3c-37.5 37.5-37.5 98.3 0 135.8l10.4 10.4-30.5 30.5c-3.4-27.3-15.5-53.8-36.5-74.8L101.8 231c-6.2-6.2-16.4-6.2-22.6 0L67.9 242.3c-37.5 37.5-37.5 98.3 0 135.8l10.4 10.4L9.4 457.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l68.9-68.9 12.2 12.2c37.5 37.5 98.3 37.5 135.8 0l11.3-11.3c6.2-6.2 6.2-16.4 0-22.6l-11.3-11.3c-21.8-21.8-49.6-34.1-78.1-36.9l31.9-31.9 12.2 12.2c37.5 37.5 98.3 37.5 135.8 0l11.3-11.3c6.2-6.2 6.2-16.4 0-22.6l-11.3-11.3c-21.8-21.8-49.6-34.1-78.1-36.9l31.9-31.9 12.2 12.2c37.5 37.5 98.3 37.5 135.8 0L486.5 231c6.2-6.2 6.2-16.4 0-22.6L475.2 197c-5.2-5.2-10.6-9.8-16.4-13.9L505 137c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-59.4 59.4c-20.6-4.4-42-3.7-62.3 2.1c6.1-21.3 6.6-43.8 1.4-65.3L409 41c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L329.1 52.9c-3.7-5-7.8-9.8-12.4-14.3L305.5 27.3z\"]\n};\nvar faWheatAlt = faWheatAwn;\nvar faAnkh = {\n prefix: 'fas',\n iconName: 'ankh',\n icon: [320, 512, [9765], \"f644\", \"M96 128c0-35.3 28.7-64 64-64s64 28.7 64 64c0 41.6-20.7 76.6-46.6 104.1c-5.9 6.2-11.8 11.8-17.4 16.7c-5.6-4.9-11.5-10.5-17.4-16.7C116.7 204.6 96 169.6 96 128zM160 0C89.3 0 32 57.3 32 128c0 52.4 21.5 95.5 46.8 128H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h96V480c0 17.7 14.3 32 32 32s32-14.3 32-32V320h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H241.2c25.4-32.5 46.8-75.6 46.8-128C288 57.3 230.7 0 160 0z\"]\n};\nvar faHandsHoldingChild = {\n prefix: 'fas',\n iconName: 'hands-holding-child',\n icon: [640, 512, [], \"e4fa\", \"M320 0a40 40 0 1 1 0 80 40 40 0 1 1 0-80zm44.7 164.3L375.8 253c1.6 13.2-7.7 25.1-20.8 26.8s-25.1-7.7-26.8-20.8l-4.4-35h-7.6l-4.4 35c-1.6 13.2-13.6 22.5-26.8 20.8s-22.5-13.6-20.8-26.8l11.1-88.8L255.5 181c-10.1 8.6-25.3 7.3-33.8-2.8s-7.3-25.3 2.8-33.8l27.9-23.6C271.3 104.8 295.3 96 320 96s48.7 8.8 67.6 24.7l27.9 23.6c10.1 8.6 11.4 23.7 2.8 33.8s-23.7 11.4-33.8 2.8l-19.8-16.7zM40 64c22.1 0 40 17.9 40 40v40 80 40.2c0 17 6.7 33.3 18.7 45.3l51.1 51.1c8.3 8.3 21.3 9.6 31 3.1c12.9-8.6 14.7-26.9 3.7-37.8l-15.2-15.2-32-32c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l32 32 15.2 15.2 0 0 25.3 25.3c21 21 32.8 49.5 32.8 79.2V464c0 26.5-21.5 48-48 48H173.3c-17 0-33.3-6.7-45.3-18.7L28.1 393.4C10.1 375.4 0 351 0 325.5V224 160 104C0 81.9 17.9 64 40 64zm560 0c22.1 0 40 17.9 40 40v56 64V325.5c0 25.5-10.1 49.9-28.1 67.9L512 493.3c-12 12-28.3 18.7-45.3 18.7H400c-26.5 0-48-21.5-48-48V385.1c0-29.7 11.8-58.2 32.8-79.2l25.3-25.3 0 0 15.2-15.2 32-32c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-32 32-15.2 15.2c-11 11-9.2 29.2 3.7 37.8c9.7 6.5 22.7 5.2 31-3.1l51.1-51.1c12-12 18.7-28.3 18.7-45.3V224 144 104c0-22.1 17.9-40 40-40z\"]\n};\nvar faAsterisk = {\n prefix: 'fas',\n iconName: 'asterisk',\n icon: [384, 512, [10033, 61545], \"2a\", \"M192 32c17.7 0 32 14.3 32 32V199.5l111.5-66.9c15.2-9.1 34.8-4.2 43.9 11s4.2 34.8-11 43.9L254.2 256l114.3 68.6c15.2 9.1 20.1 28.7 11 43.9s-28.7 20.1-43.9 11L224 312.5V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V312.5L48.5 379.4c-15.2 9.1-34.8 4.2-43.9-11s-4.2-34.8 11-43.9L129.8 256 15.5 187.4c-15.2-9.1-20.1-28.7-11-43.9s28.7-20.1 43.9-11L160 199.5V64c0-17.7 14.3-32 32-32z\"]\n};\nvar faSquareCheck = {\n prefix: 'fas',\n iconName: 'square-check',\n icon: [448, 512, [9745, 9989, 61510, \"check-square\"], \"f14a\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM337 209L209 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L303 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z\"]\n};\nvar faCheckSquare = faSquareCheck;\nvar faPesetaSign = {\n prefix: 'fas',\n iconName: 'peseta-sign',\n icon: [384, 512, [], \"e221\", \"M64 32C46.3 32 32 46.3 32 64v96c-17.7 0-32 14.3-32 32s14.3 32 32 32l0 96V448c0 17.7 14.3 32 32 32s32-14.3 32-32V352h96c77.4 0 142-55 156.8-128H352c17.7 0 32-14.3 32-32s-14.3-32-32-32h-3.2C334 87 269.4 32 192 32H64zM282.5 160H96V96h96c41.8 0 77.4 26.7 90.5 64zM96 224H282.5c-13.2 37.3-48.7 64-90.5 64H96V224z\"]\n};\nvar faHeading = {\n prefix: 'fas',\n iconName: 'heading',\n icon: [448, 512, [\"header\"], \"f1dc\", \"M0 64C0 46.3 14.3 32 32 32H80h48c17.7 0 32 14.3 32 32s-14.3 32-32 32H112V208H336V96H320c-17.7 0-32-14.3-32-32s14.3-32 32-32h48 48c17.7 0 32 14.3 32 32s-14.3 32-32 32H400V240 416h16c17.7 0 32 14.3 32 32s-14.3 32-32 32H368 320c-17.7 0-32-14.3-32-32s14.3-32 32-32h16V272H112V416h16c17.7 0 32 14.3 32 32s-14.3 32-32 32H80 32c-17.7 0-32-14.3-32-32s14.3-32 32-32H48V240 96H32C14.3 96 0 81.7 0 64z\"]\n};\nvar faHeader = faHeading;\nvar faGhost = {\n prefix: 'fas',\n iconName: 'ghost',\n icon: [384, 512, [128123], \"f6e2\", \"M40.1 467.1l-11.2 9c-3.2 2.5-7.1 3.9-11.1 3.9C8 480 0 472 0 462.2V192C0 86 86 0 192 0S384 86 384 192V462.2c0 9.8-8 17.8-17.8 17.8c-4 0-7.9-1.4-11.1-3.9l-11.2-9c-13.4-10.7-32.8-9-44.1 3.9L269.3 506c-3.3 3.8-8.2 6-13.3 6s-9.9-2.2-13.3-6l-26.6-30.5c-12.7-14.6-35.4-14.6-48.2 0L141.3 506c-3.3 3.8-8.2 6-13.3 6s-9.9-2.2-13.3-6L84.2 471c-11.3-12.9-30.7-14.6-44.1-3.9zM160 192a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm96 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faList = {\n prefix: 'fas',\n iconName: 'list',\n icon: [512, 512, [\"list-squares\"], \"f03a\", \"M40 48C26.7 48 16 58.7 16 72v48c0 13.3 10.7 24 24 24H88c13.3 0 24-10.7 24-24V72c0-13.3-10.7-24-24-24H40zM192 64c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zM16 232v48c0 13.3 10.7 24 24 24H88c13.3 0 24-10.7 24-24V232c0-13.3-10.7-24-24-24H40c-13.3 0-24 10.7-24 24zM40 368c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24H88c13.3 0 24-10.7 24-24V392c0-13.3-10.7-24-24-24H40z\"]\n};\nvar faListSquares = faList;\nvar faSquarePhoneFlip = {\n prefix: 'fas',\n iconName: 'square-phone-flip',\n icon: [448, 512, [\"phone-square-alt\"], \"f87b\", \"M384 32c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96C0 60.7 28.7 32 64 32H384zm-90.7 96.7c-9.7-2.6-19.9 2.3-23.7 11.6l-20 48c-3.4 8.2-1 17.6 5.8 23.2L280 231.7c-16.6 35.2-45.1 63.7-80.3 80.3l-20.2-24.7c-5.6-6.8-15-9.2-23.2-5.8l-48 20c-9.3 3.9-14.2 14-11.6 23.7l12 44C111.1 378 119 384 128 384c123.7 0 224-100.3 224-224c0-9-6-16.9-14.7-19.3l-44-12z\"]\n};\nvar faPhoneSquareAlt = faSquarePhoneFlip;\nvar faCartPlus = {\n prefix: 'fas',\n iconName: 'cart-plus',\n icon: [576, 512, [], \"f217\", \"M0 24C0 10.7 10.7 0 24 0H69.5c22 0 41.5 12.8 50.6 32h411c26.3 0 45.5 25 38.6 50.4l-41 152.3c-8.5 31.4-37 53.3-69.5 53.3H170.7l5.4 28.5c2.2 11.3 12.1 19.5 23.6 19.5H488c13.3 0 24 10.7 24 24s-10.7 24-24 24H199.7c-34.6 0-64.3-24.6-70.7-58.5L77.4 54.5c-.7-3.8-4-6.5-7.9-6.5H24C10.7 48 0 37.3 0 24zM128 464a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm336-48a48 48 0 1 1 0 96 48 48 0 1 1 0-96zM252 160c0 11 9 20 20 20h44v44c0 11 9 20 20 20s20-9 20-20V180h44c11 0 20-9 20-20s-9-20-20-20H356V96c0-11-9-20-20-20s-20 9-20 20v44H272c-11 0-20 9-20 20z\"]\n};\nvar faGamepad = {\n prefix: 'fas',\n iconName: 'gamepad',\n icon: [640, 512, [], \"f11b\", \"M192 64C86 64 0 150 0 256S86 448 192 448H448c106 0 192-86 192-192s-86-192-192-192H192zM496 168a40 40 0 1 1 0 80 40 40 0 1 1 0-80zM392 304a40 40 0 1 1 80 0 40 40 0 1 1 -80 0zM168 200c0-13.3 10.7-24 24-24s24 10.7 24 24v32h32c13.3 0 24 10.7 24 24s-10.7 24-24 24H216v32c0 13.3-10.7 24-24 24s-24-10.7-24-24V280H136c-13.3 0-24-10.7-24-24s10.7-24 24-24h32V200z\"]\n};\nvar faCircleDot = {\n prefix: 'fas',\n iconName: 'circle-dot',\n icon: [512, 512, [128280, \"dot-circle\"], \"f192\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-352a96 96 0 1 1 0 192 96 96 0 1 1 0-192z\"]\n};\nvar faDotCircle = faCircleDot;\nvar faFaceDizzy = {\n prefix: 'fas',\n iconName: 'face-dizzy',\n icon: [512, 512, [\"dizzy\"], \"f567\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-224a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM100.7 132.7c6.2-6.2 16.4-6.2 22.6 0L160 169.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6L182.6 192l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L160 214.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L137.4 192l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6zm192 0c6.2-6.2 16.4-6.2 22.6 0L352 169.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6L374.6 192l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L352 214.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L329.4 192l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6z\"]\n};\nvar faDizzy = faFaceDizzy;\nvar faEgg = {\n prefix: 'fas',\n iconName: 'egg',\n icon: [384, 512, [129370], \"f7fb\", \"M192 496C86 496 0 394 0 288C0 176 64 16 192 16s192 160 192 272c0 106-86 208-192 208zM154.8 134c6.5-6 7-16.1 1-22.6s-16.1-7-22.6-1c-23.9 21.8-41.1 52.7-52.3 84.2C69.7 226.1 64 259.7 64 288c0 8.8 7.2 16 16 16s16-7.2 16-16c0-24.5 5-54.4 15.1-82.8c10.1-28.5 25-54.1 43.7-71.2z\"]\n};\nvar faHouseMedicalCircleXmark = {\n prefix: 'fas',\n iconName: 'house-medical-circle-xmark',\n icon: [640, 512, [], \"e513\", \"M320 368c0 59.5 29.5 112.1 74.8 144H128.1c-35.3 0-64-28.7-64-64V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L522.1 193.9c-8.5-1.3-17.3-1.9-26.1-1.9c-54.7 0-103.5 24.9-135.8 64H320V208c0-8.8-7.2-16-16-16H272c-8.8 0-16 7.2-16 16v48H208c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16zM496 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm22.6 144l36.7-36.7c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0L496 345.4l-36.7-36.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L473.4 368l-36.7 36.7c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L496 390.6l36.7 36.7c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6L518.6 368z\"]\n};\nvar faCampground = {\n prefix: 'fas',\n iconName: 'campground',\n icon: [576, 512, [9978], \"f6bb\", \"M377 52c11-13.8 8.8-33.9-5-45s-33.9-8.8-45 5L288 60.8 249 12c-11-13.8-31.2-16-45-5s-16 31.2-5 45l48 60L12.3 405.4C4.3 415.4 0 427.7 0 440.4V464c0 26.5 21.5 48 48 48H288 528c26.5 0 48-21.5 48-48V440.4c0-12.7-4.3-25.1-12.3-35L329 112l48-60zM288 448H168.5L288 291.7 407.5 448H288z\"]\n};\nvar faFolderPlus = {\n prefix: 'fas',\n iconName: 'folder-plus',\n icon: [512, 512, [], \"f65e\", \"M512 416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96C0 60.7 28.7 32 64 32H192c20.1 0 39.1 9.5 51.2 25.6l19.2 25.6c6 8.1 15.5 12.8 25.6 12.8H448c35.3 0 64 28.7 64 64V416zM232 376c0 13.3 10.7 24 24 24s24-10.7 24-24V312h64c13.3 0 24-10.7 24-24s-10.7-24-24-24H280V200c0-13.3-10.7-24-24-24s-24 10.7-24 24v64H168c-13.3 0-24 10.7-24 24s10.7 24 24 24h64v64z\"]\n};\nvar faFutbol = {\n prefix: 'fas',\n iconName: 'futbol',\n icon: [512, 512, [9917, \"futbol-ball\", \"soccer-ball\"], \"f1e3\", \"M417.3 360.1l-71.6-4.8c-5.2-.3-10.3 1.1-14.5 4.2s-7.2 7.4-8.4 12.5l-17.6 69.6C289.5 445.8 273 448 256 448s-33.5-2.2-49.2-6.4L189.2 372c-1.3-5-4.3-9.4-8.4-12.5s-9.3-4.5-14.5-4.2l-71.6 4.8c-17.6-27.2-28.5-59.2-30.4-93.6L125 228.3c4.4-2.8 7.6-7 9.2-11.9s1.4-10.2-.5-15l-26.7-66.6C128 109.2 155.3 89 186.7 76.9l55.2 46c4 3.3 9 5.1 14.1 5.1s10.2-1.8 14.1-5.1l55.2-46c31.3 12.1 58.7 32.3 79.6 57.9l-26.7 66.6c-1.9 4.8-2.1 10.1-.5 15s4.9 9.1 9.2 11.9l60.7 38.2c-1.9 34.4-12.8 66.4-30.4 93.6zM256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm14.1-325.7c-8.4-6.1-19.8-6.1-28.2 0L194 221c-8.4 6.1-11.9 16.9-8.7 26.8l18.3 56.3c3.2 9.9 12.4 16.6 22.8 16.6h59.2c10.4 0 19.6-6.7 22.8-16.6l18.3-56.3c3.2-9.9-.3-20.7-8.7-26.8l-47.9-34.8z\"]\n};\nvar faFutbolBall = faFutbol;\nvar faSoccerBall = faFutbol;\nvar faPaintbrush = {\n prefix: 'fas',\n iconName: 'paintbrush',\n icon: [576, 512, [128396, \"paint-brush\"], \"f1fc\", \"M339.3 367.1c27.3-3.9 51.9-19.4 67.2-42.9L568.2 74.1c12.6-19.5 9.4-45.3-7.6-61.2S517.7-4.4 499.1 9.6L262.4 187.2c-24 18-38.2 46.1-38.4 76.1L339.3 367.1zm-19.6 25.4l-116-104.4C143.9 290.3 96 339.6 96 400c0 3.9 .2 7.8 .6 11.6C98.4 429.1 86.4 448 68.8 448H64c-17.7 0-32 14.3-32 32s14.3 32 32 32H208c61.9 0 112-50.1 112-112c0-2.5-.1-5-.2-7.5z\"]\n};\nvar faPaintBrush = faPaintbrush;\nvar faLock = {\n prefix: 'fas',\n iconName: 'lock',\n icon: [448, 512, [128274], \"f023\", \"M144 144v48H304V144c0-44.2-35.8-80-80-80s-80 35.8-80 80zM80 192V144C80 64.5 144.5 0 224 0s144 64.5 144 144v48h16c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V256c0-35.3 28.7-64 64-64H80z\"]\n};\nvar faGasPump = {\n prefix: 'fas',\n iconName: 'gas-pump',\n icon: [512, 512, [9981], \"f52f\", \"M32 64C32 28.7 60.7 0 96 0H256c35.3 0 64 28.7 64 64V256h8c48.6 0 88 39.4 88 88v32c0 13.3 10.7 24 24 24s24-10.7 24-24V222c-27.6-7.1-48-32.2-48-62V96L384 64c-8.8-8.8-8.8-23.2 0-32s23.2-8.8 32 0l77.3 77.3c12 12 18.7 28.3 18.7 45.3V168v24 32V376c0 39.8-32.2 72-72 72s-72-32.2-72-72V344c0-22.1-17.9-40-40-40h-8V448c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32V64zM96 80v96c0 8.8 7.2 16 16 16H240c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H112c-8.8 0-16 7.2-16 16z\"]\n};\nvar faHotTubPerson = {\n prefix: 'fas',\n iconName: 'hot-tub-person',\n icon: [512, 512, [\"hot-tub\"], \"f593\", \"M272 24c0-13.3-10.7-24-24-24s-24 10.7-24 24v5.2c0 34 14.4 66.4 39.7 89.2l16.4 14.8c15.2 13.7 23.8 33.1 23.8 53.5V200c0 13.3 10.7 24 24 24s24-10.7 24-24V186.8c0-34-14.4-66.4-39.7-89.2L295.8 82.8C280.7 69.1 272 49.7 272 29.2V24zM0 320v16V448c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V320c0-35.3-28.7-64-64-64H277.3c-13.8 0-27.3-4.5-38.4-12.8l-85.3-64C137 166.7 116.8 160 96 160c-53 0-96 43-96 96v64zm128 16v96c0 8.8-7.2 16-16 16s-16-7.2-16-16V336c0-8.8 7.2-16 16-16s16 7.2 16 16zm80-16c8.8 0 16 7.2 16 16v96c0 8.8-7.2 16-16 16s-16-7.2-16-16V336c0-8.8 7.2-16 16-16zm112 16v96c0 8.8-7.2 16-16 16s-16-7.2-16-16V336c0-8.8 7.2-16 16-16s16 7.2 16 16zm80-16c8.8 0 16 7.2 16 16v96c0 8.8-7.2 16-16 16s-16-7.2-16-16V336c0-8.8 7.2-16 16-16zM360 0c-13.3 0-24 10.7-24 24v5.2c0 34 14.4 66.4 39.7 89.2l16.4 14.8c15.2 13.7 23.8 33.1 23.8 53.5V200c0 13.3 10.7 24 24 24s24-10.7 24-24V186.8c0-34-14.4-66.4-39.7-89.2L407.8 82.8C392.7 69.1 384 49.7 384 29.2V24c0-13.3-10.7-24-24-24zM64 128A64 64 0 1 0 64 0a64 64 0 1 0 0 128z\"]\n};\nvar faHotTub = faHotTubPerson;\nvar faMapLocation = {\n prefix: 'fas',\n iconName: 'map-location',\n icon: [576, 512, [\"map-marked\"], \"f59f\", \"M302.8 312C334.9 271.9 408 174.6 408 120C408 53.7 354.3 0 288 0S168 53.7 168 120c0 54.6 73.1 151.9 105.2 192c7.7 9.6 22 9.6 29.6 0zM416 503l144.9-58c9.1-3.6 15.1-12.5 15.1-22.3V152c0-17-17.1-28.6-32.9-22.3l-116 46.4c-.5 1.2-1 2.5-1.5 3.7c-2.9 6.8-6.1 13.7-9.6 20.6V503zM15.1 187.3C6 191 0 199.8 0 209.6V480.4c0 17 17.1 28.6 32.9 22.3L160 451.8V200.4c-3.5-6.9-6.7-13.8-9.6-20.6c-5.6-13.2-10.4-27.4-12.8-41.5l-122.6 49zM384 255c-20.5 31.3-42.3 59.6-56.2 77c-20.5 25.6-59.1 25.6-79.6 0c-13.9-17.4-35.7-45.7-56.2-77V449.4l192 54.9V255z\"]\n};\nvar faMapMarked = faMapLocation;\nvar faHouseFloodWater = {\n prefix: 'fas',\n iconName: 'house-flood-water',\n icon: [576, 512, [], \"e50e\", \"M306.8 6.1C295.6-2 280.4-2 269.2 6.1l-176 128c-11.2 8.2-15.9 22.6-11.6 35.8S98.1 192 112 192h16v73c1.7 1 3.3 2 4.9 3.1c18 12.4 40.1 20.3 59.2 20.3c21.1 0 42-8.5 59.2-20.3c22.1-15.5 51.6-15.5 73.7 0c18.4 12.7 39.6 20.3 59.2 20.3c19 0 41.2-7.9 59.2-20.3c1.5-1 3-2 4.5-2.9l-.3-73.2H464c13.9 0 26.1-8.9 30.4-22.1s-.4-27.6-11.6-35.8l-176-128zM269.5 309.9C247 325.4 219.5 336 192 336c-26.9 0-55.3-10.8-77.4-26.1l0 0c-11.9-8.5-28.1-7.8-39.2 1.7c-14.4 11.9-32.5 21-50.6 25.2c-17.2 4-27.9 21.2-23.9 38.4s21.2 27.9 38.4 23.9c24.5-5.7 44.9-16.5 58.2-25C126.5 389.7 159 400 192 400c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.5 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.5-27.3-10.1-39.2-1.7l0 0C439.4 325.2 410.9 336 384 336c-27.5 0-55-10.6-77.5-26.1c-11.1-7.9-25.9-7.9-37 0zM384 448c-27.5 0-55-10.6-77.5-26.1c-11.1-7.9-25.9-7.9-37 0C247 437.4 219.5 448 192 448c-26.9 0-55.3-10.8-77.4-26.1l0 0c-11.9-8.5-28.1-7.8-39.2 1.7c-14.4 11.9-32.5 21-50.6 25.2c-17.2 4-27.9 21.2-23.9 38.4s21.2 27.9 38.4 23.9c24.5-5.7 44.9-16.5 58.2-25C126.5 501.7 159 512 192 512c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.5 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.4-27.3-10.1-39.2-1.7l0 0C439.4 437.2 410.9 448 384 448z\"]\n};\nvar faTree = {\n prefix: 'fas',\n iconName: 'tree',\n icon: [448, 512, [127794], \"f1bb\", \"M210.6 5.9L62 169.4c-3.9 4.2-6 9.8-6 15.5C56 197.7 66.3 208 79.1 208H104L30.6 281.4c-4.2 4.2-6.6 10-6.6 16C24 309.9 34.1 320 46.6 320H80L5.4 409.5C1.9 413.7 0 419 0 424.5c0 13 10.5 23.5 23.5 23.5H192v32c0 17.7 14.3 32 32 32s32-14.3 32-32V448H424.5c13 0 23.5-10.5 23.5-23.5c0-5.5-1.9-10.8-5.4-15L368 320h33.4c12.5 0 22.6-10.1 22.6-22.6c0-6-2.4-11.8-6.6-16L344 208h24.9c12.7 0 23.1-10.3 23.1-23.1c0-5.7-2.1-11.3-6-15.5L237.4 5.9C234 2.1 229.1 0 224 0s-10 2.1-13.4 5.9z\"]\n};\nvar faBridgeLock = {\n prefix: 'fas',\n iconName: 'bridge-lock',\n icon: [640, 512, [], \"e4cc\", \"M32 64c0-17.7 14.3-32 32-32H576c17.7 0 32 14.3 32 32s-14.3 32-32 32H536v64h-8c-61.9 0-112 50.1-112 112v24.6c-9.9 5.8-18.2 14.1-23.8 24.1c-17.6-20-43.4-32.7-72.2-32.7c-53 0-96 43-96 96v64c0 17.7-14.3 32-32 32H160c-17.7 0-32-14.3-32-32V384c0-53-43-96-96-96V160h72V96H64C46.3 96 32 81.7 32 64zM408 96v64h80V96H408zm-48 64V96H280v64h80zM152 96v64h80V96H152zM528 240c-17.7 0-32 14.3-32 32v48h64V272c0-17.7-14.3-32-32-32zm-80 32c0-44.2 35.8-80 80-80s80 35.8 80 80v48c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32H448c-17.7 0-32-14.3-32-32V352c0-17.7 14.3-32 32-32V272z\"]\n};\nvar faSackDollar = {\n prefix: 'fas',\n iconName: 'sack-dollar',\n icon: [512, 512, [128176], \"f81d\", \"M320 96H192L144.6 24.9C137.5 14.2 145.1 0 157.9 0H354.1c12.8 0 20.4 14.2 13.3 24.9L320 96zM192 128H320c3.8 2.5 8.1 5.3 13 8.4C389.7 172.7 512 250.9 512 416c0 53-43 96-96 96H96c-53 0-96-43-96-96C0 250.9 122.3 172.7 179 136.4l0 0 0 0c4.8-3.1 9.2-5.9 13-8.4zm84 88c0-11-9-20-20-20s-20 9-20 20v14c-7.6 1.7-15.2 4.4-22.2 8.5c-13.9 8.3-25.9 22.8-25.8 43.9c.1 20.3 12 33.1 24.7 40.7c11 6.6 24.7 10.8 35.6 14l1.7 .5c12.6 3.8 21.8 6.8 28 10.7c5.1 3.2 5.8 5.4 5.9 8.2c.1 5-1.8 8-5.9 10.5c-5 3.1-12.9 5-21.4 4.7c-11.1-.4-21.5-3.9-35.1-8.5c-2.3-.8-4.7-1.6-7.2-2.4c-10.5-3.5-21.8 2.2-25.3 12.6s2.2 21.8 12.6 25.3c1.9 .6 4 1.3 6.1 2.1l0 0 0 0c8.3 2.9 17.9 6.2 28.2 8.4V424c0 11 9 20 20 20s20-9 20-20V410.2c8-1.7 16-4.5 23.2-9c14.3-8.9 25.1-24.1 24.8-45c-.3-20.3-11.7-33.4-24.6-41.6c-11.5-7.2-25.9-11.6-37.1-15l0 0-.7-.2c-12.8-3.9-21.9-6.7-28.3-10.5c-5.2-3.1-5.3-4.9-5.3-6.7c0-3.7 1.4-6.5 6.2-9.3c5.4-3.2 13.6-5.1 21.5-5c9.6 .1 20.2 2.2 31.2 5.2c10.7 2.8 21.6-3.5 24.5-14.2s-3.5-21.6-14.2-24.5c-6.5-1.7-13.7-3.4-21.1-4.7V216z\"]\n};\nvar faPenToSquare = {\n prefix: 'fas',\n iconName: 'pen-to-square',\n icon: [512, 512, [\"edit\"], \"f044\", \"M471.6 21.7c-21.9-21.9-57.3-21.9-79.2 0L362.3 51.7l97.9 97.9 30.1-30.1c21.9-21.9 21.9-57.3 0-79.2L471.6 21.7zm-299.2 220c-6.1 6.1-10.8 13.6-13.5 21.9l-29.6 88.8c-2.9 8.6-.6 18.1 5.8 24.6s15.9 8.7 24.6 5.8l88.8-29.6c8.2-2.7 15.7-7.4 21.9-13.5L437.7 172.3 339.7 74.3 172.4 241.7zM96 64C43 64 0 107 0 160V416c0 53 43 96 96 96H352c53 0 96-43 96-96V320c0-17.7-14.3-32-32-32s-32 14.3-32 32v96c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H96z\"]\n};\nvar faEdit = faPenToSquare;\nvar faCarSide = {\n prefix: 'fas',\n iconName: 'car-side',\n icon: [640, 512, [128663], \"f5e4\", \"M171.3 96H224v96H111.3l30.4-75.9C146.5 104 158.2 96 171.3 96zM272 192V96h81.2c9.7 0 18.9 4.4 25 12l67.2 84H272zm256.2 1L428.2 68c-18.2-22.8-45.8-36-75-36H171.3c-39.3 0-74.6 23.9-89.1 60.3L40.6 196.4C16.8 205.8 0 228.9 0 256V368c0 17.7 14.3 32 32 32H65.3c7.6 45.4 47.1 80 94.7 80s87.1-34.6 94.7-80H385.3c7.6 45.4 47.1 80 94.7 80s87.1-34.6 94.7-80H608c17.7 0 32-14.3 32-32V320c0-65.2-48.8-119-111.8-127zM434.7 368a48 48 0 1 1 90.5 32 48 48 0 1 1 -90.5-32zM160 336a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faShareNodes = {\n prefix: 'fas',\n iconName: 'share-nodes',\n icon: [448, 512, [\"share-alt\"], \"f1e0\", \"M352 224c53 0 96-43 96-96s-43-96-96-96s-96 43-96 96c0 4 .2 8 .7 11.9l-94.1 47C145.4 170.2 121.9 160 96 160c-53 0-96 43-96 96s43 96 96 96c25.9 0 49.4-10.2 66.6-26.9l94.1 47c-.5 3.9-.7 7.8-.7 11.9c0 53 43 96 96 96s96-43 96-96s-43-96-96-96c-25.9 0-49.4 10.2-66.6 26.9l-94.1-47c.5-3.9 .7-7.8 .7-11.9s-.2-8-.7-11.9l94.1-47C302.6 213.8 326.1 224 352 224z\"]\n};\nvar faShareAlt = faShareNodes;\nvar faHeartCircleMinus = {\n prefix: 'fas',\n iconName: 'heart-circle-minus',\n icon: [576, 512, [], \"e4ff\", \"M47.6 300.4L228.3 469.1c7.5 7 17.4 10.9 27.7 10.9s20.2-3.9 27.7-10.9l2.6-2.4C267.2 438.6 256 404.6 256 368c0-97.2 78.8-176 176-176c28.3 0 55 6.7 78.7 18.5c.9-6.5 1.3-13 1.3-19.6v-5.8c0-69.9-50.5-129.5-119.4-141C347 36.5 300.6 51.4 268 84L256 96 244 84c-32.6-32.6-79-47.5-124.6-39.9C50.5 55.6 0 115.2 0 185.1v5.8c0 41.5 17.2 81.2 47.6 109.5zM576 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-64 0c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s7.2-16 16-16H496c8.8 0 16 7.2 16 16z\"]\n};\nvar faHourglassHalf = {\n prefix: 'fas',\n iconName: 'hourglass-half',\n icon: [384, 512, [\"hourglass-2\"], \"f252\", \"M32 0C14.3 0 0 14.3 0 32S14.3 64 32 64V75c0 42.4 16.9 83.1 46.9 113.1L146.7 256 78.9 323.9C48.9 353.9 32 394.6 32 437v11c-17.7 0-32 14.3-32 32s14.3 32 32 32H64 320h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V437c0-42.4-16.9-83.1-46.9-113.1L237.3 256l67.9-67.9c30-30 46.9-70.7 46.9-113.1V64c17.7 0 32-14.3 32-32s-14.3-32-32-32H320 64 32zM96 75V64H288V75c0 19-5.6 37.4-16 53H112c-10.3-15.6-16-34-16-53zm16 309c3.5-5.3 7.6-10.3 12.1-14.9L192 301.3l67.9 67.9c4.6 4.6 8.6 9.6 12.1 14.9H112z\"]\n};\nvar faHourglass2 = faHourglassHalf;\nvar faMicroscope = {\n prefix: 'fas',\n iconName: 'microscope',\n icon: [512, 512, [128300], \"f610\", \"M160 32c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32c17.7 0 32 14.3 32 32V288c0 17.7-14.3 32-32 32c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32c-17.7 0-32-14.3-32-32V64c0-17.7 14.3-32 32-32zM32 448H320c70.7 0 128-57.3 128-128s-57.3-128-128-128V128c106 0 192 86 192 192c0 49.2-18.5 94-48.9 128H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H320 32c-17.7 0-32-14.3-32-32s14.3-32 32-32zm80-64H304c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faSink = {\n prefix: 'fas',\n iconName: 'sink',\n icon: [512, 512, [], \"e06d\", \"M288 96c0-17.7 14.3-32 32-32s32 14.3 32 32s14.3 32 32 32s32-14.3 32-32c0-53-43-96-96-96s-96 43-96 96V288H160V264c0-30.9-25.1-56-56-56H56c-13.3 0-24 10.7-24 24s10.7 24 24 24h48c4.4 0 8 3.6 8 8v24H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H256 480c17.7 0 32-14.3 32-32s-14.3-32-32-32H400V264c0-4.4 3.6-8 8-8h56c13.3 0 24-10.7 24-24s-10.7-24-24-24H408c-30.9 0-56 25.1-56 56v24H288V96zM480 416V384H32v32c0 53 43 96 96 96H384c53 0 96-43 96-96z\"]\n};\nvar faBagShopping = {\n prefix: 'fas',\n iconName: 'bag-shopping',\n icon: [448, 512, [\"shopping-bag\"], \"f290\", \"M160 112c0-35.3 28.7-64 64-64s64 28.7 64 64v48H160V112zm-48 48H48c-26.5 0-48 21.5-48 48V416c0 53 43 96 96 96H352c53 0 96-43 96-96V208c0-26.5-21.5-48-48-48H336V112C336 50.1 285.9 0 224 0S112 50.1 112 112v48zm24 48a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm152 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faShoppingBag = faBagShopping;\nvar faArrowDownZA = {\n prefix: 'fas',\n iconName: 'arrow-down-z-a',\n icon: [576, 512, [\"sort-alpha-desc\", \"sort-alpha-down-alt\"], \"f881\", \"M183.6 469.6C177.5 476.2 169 480 160 480s-17.5-3.8-23.6-10.4l-88-96c-11.9-13-11.1-33.3 2-45.2s33.3-11.1 45.2 2L128 365.7V64c0-17.7 14.3-32 32-32s32 14.3 32 32V365.7l32.4-35.4c11.9-13 32.2-13.9 45.2-2s13.9 32.2 2 45.2l-88 96zM320 64c0-17.7 14.3-32 32-32H480c12.9 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9L429.3 160H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H352c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9L402.7 96H352c-17.7 0-32-14.3-32-32zm96 192c12.1 0 23.2 6.8 28.6 17.7l64 128 16 32c7.9 15.8 1.5 35-14.3 42.9s-35 1.5-42.9-14.3L460.2 448H371.8l-7.2 14.3c-7.9 15.8-27.1 22.2-42.9 14.3s-22.2-27.1-14.3-42.9l16-32 64-128c5.4-10.8 16.5-17.7 28.6-17.7zM395.8 400h40.4L416 359.6 395.8 400z\"]\n};\nvar faSortAlphaDesc = faArrowDownZA;\nvar faSortAlphaDownAlt = faArrowDownZA;\nvar faMitten = {\n prefix: 'fas',\n iconName: 'mitten',\n icon: [448, 512, [], \"f7b5\", \"M352 384H64L5.4 178.9C1.8 166.4 0 153.4 0 140.3C0 62.8 62.8 0 140.3 0h3.4c66 0 123.5 44.9 139.5 108.9l31.4 125.8 17.6-20.1C344.8 200.2 362.9 192 382 192h2.8c34.9 0 63.3 28.3 63.3 63.3c0 15.9-6 31.2-16.8 42.9L352 384zM32 448c0-17.7 14.3-32 32-32H352c17.7 0 32 14.3 32 32v32c0 17.7-14.3 32-32 32H64c-17.7 0-32-14.3-32-32V448z\"]\n};\nvar faPersonRays = {\n prefix: 'fas',\n iconName: 'person-rays',\n icon: [512, 512, [], \"e54d\", \"M208 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V256.9l-28.6 47.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c17.4-28.9 48.6-46.6 82.3-46.6h29.7c33.7 0 64.9 17.7 82.3 46.6l58.3 97c9.1 15.1 4.2 34.8-10.9 43.9s-34.8 4.2-43.9-10.9L328 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H248zM7 7C16.4-2.3 31.6-2.3 41 7l80 80c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L7 41C-2.3 31.6-2.3 16.4 7 7zM471 7c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-80 80c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9L471 7zM7 505c-9.4-9.4-9.4-24.6 0-33.9l80-80c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L41 505c-9.4 9.4-24.6 9.4-33.9 0zm464 0l-80-80c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l80 80c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0z\"]\n};\nvar faUsers = {\n prefix: 'fas',\n iconName: 'users',\n icon: [640, 512, [], \"f0c0\", \"M144 0a80 80 0 1 1 0 160A80 80 0 1 1 144 0zM512 0a80 80 0 1 1 0 160A80 80 0 1 1 512 0zM0 298.7C0 239.8 47.8 192 106.7 192h42.7c15.9 0 31 3.5 44.6 9.7c-1.3 7.2-1.9 14.7-1.9 22.3c0 38.2 16.8 72.5 43.3 96c-.2 0-.4 0-.7 0H21.3C9.6 320 0 310.4 0 298.7zM405.3 320c-.2 0-.4 0-.7 0c26.6-23.5 43.3-57.8 43.3-96c0-7.6-.7-15-1.9-22.3c13.6-6.3 28.7-9.7 44.6-9.7h42.7C592.2 192 640 239.8 640 298.7c0 11.8-9.6 21.3-21.3 21.3H405.3zM224 224a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zM128 485.3C128 411.7 187.7 352 261.3 352H378.7C452.3 352 512 411.7 512 485.3c0 14.7-11.9 26.7-26.7 26.7H154.7c-14.7 0-26.7-11.9-26.7-26.7z\"]\n};\nvar faEyeSlash = {\n prefix: 'fas',\n iconName: 'eye-slash',\n icon: [640, 512, [], \"f070\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L525.6 386.7c39.6-40.6 66.4-86.1 79.9-118.4c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C465.5 68.8 400.8 32 320 32c-68.2 0-125 26.3-169.3 60.8L38.8 5.1zM223.1 149.5C248.6 126.2 282.7 112 320 112c79.5 0 144 64.5 144 144c0 24.9-6.3 48.3-17.4 68.7L408 294.5c8.4-19.3 10.6-41.4 4.8-63.3c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3c0 10.2-2.4 19.8-6.6 28.3l-90.3-70.8zM373 389.9c-16.4 6.5-34.3 10.1-53 10.1c-79.5 0-144-64.5-144-144c0-6.9 .5-13.6 1.4-20.2L83.1 161.5C60.3 191.2 44 220.8 34.5 243.7c-3.3 7.9-3.3 16.7 0 24.6c14.9 35.7 46.2 87.7 93 131.1C174.5 443.2 239.2 480 320 480c47.8 0 89.9-12.9 126.2-32.5L373 389.9z\"]\n};\nvar faFlaskVial = {\n prefix: 'fas',\n iconName: 'flask-vial',\n icon: [640, 512, [], \"e4f3\", \"M175 389.4c-9.8 16-15 34.3-15 53.1c-10 3.5-20.8 5.5-32 5.5c-53 0-96-43-96-96V64C14.3 64 0 49.7 0 32S14.3 0 32 0H96h64 64c17.7 0 32 14.3 32 32s-14.3 32-32 32V309.9l-49 79.6zM96 64v96h64V64H96zM352 0H480h32c17.7 0 32 14.3 32 32s-14.3 32-32 32V214.9L629.7 406.2c6.7 10.9 10.3 23.5 10.3 36.4c0 38.3-31.1 69.4-69.4 69.4H261.4c-38.3 0-69.4-31.1-69.4-69.4c0-12.8 3.6-25.4 10.3-36.4L320 214.9V64c-17.7 0-32-14.3-32-32s14.3-32 32-32h32zm32 64V224c0 5.9-1.6 11.7-4.7 16.8L330.5 320h171l-48.8-79.2c-3.1-5-4.7-10.8-4.7-16.8V64H384z\"]\n};\nvar faHand = {\n prefix: 'fas',\n iconName: 'hand',\n icon: [512, 512, [129306, 9995, \"hand-paper\"], \"f256\", \"M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V240c0 8.8-7.2 16-16 16s-16-7.2-16-16V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V336c0 1.5 0 3.1 .1 4.6L67.6 283c-16-15.2-41.3-14.6-56.6 1.4s-14.6 41.3 1.4 56.6L124.8 448c43.1 41.1 100.4 64 160 64H304c97.2 0 176-78.8 176-176V128c0-17.7-14.3-32-32-32s-32 14.3-32 32V240c0 8.8-7.2 16-16 16s-16-7.2-16-16V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V240c0 8.8-7.2 16-16 16s-16-7.2-16-16V32z\"]\n};\nvar faHandPaper = faHand;\nvar faOm = {\n prefix: 'fas',\n iconName: 'om',\n icon: [512, 512, [128329], \"f679\", \"M379.3 4.7c-6.2-6.2-16.4-6.2-22.6 0l-16 16c-6.2 6.2-6.2 16.4 0 22.6l16 16c6.2 6.2 16.4 6.2 22.6 0l16-16c6.2-6.2 6.2-16.4 0-22.6l-16-16zM281 66.7c-2.2-1.5-4.9-2.5-7.7-2.7c-.6 0-1.3-.1-1.9 0c-3.9 .2-7.4 1.7-10.1 4.2c-.9 .8-1.6 1.7-2.3 2.6c-1.7 2.4-2.7 5.3-2.9 8.5c0 .7 0 1.4 0 2.1c.2 2.2 .9 4.3 1.9 6.2l.3 .6c.3 .6 .8 1.4 1.4 2.4c1.2 2 2.9 4.8 5.1 8.2c4.4 6.7 11.1 15.5 20 24.4C302.4 141.1 330.3 160 368 160c31.2 0 56.6-10.4 73.9-20.2c8.7-5 15.6-9.9 20.4-13.8c2.4-1.9 4.3-3.6 5.7-4.9c.7-.6 1.3-1.2 1.7-1.6l.6-.5 .1-.1 .1-.1 0 0 0 0c5.9-5.8 9.5-13.9 9.5-22.8c0-17.7-14.3-32-32-32c-8.7 0-16.7 3.5-22.4 9.2c-.1 .1-.2 .2-.5 .4c-.5 .5-1.5 1.3-2.8 2.4c-2.7 2.2-6.8 5.2-12.1 8.2C399.4 90.4 384.8 96 368 96c-20.8 0-42.4-7-59.5-14.6c-8.4-3.7-15.4-7.5-20.3-10.3c-2.4-1.4-4.3-2.5-5.6-3.3c-.6-.4-1.1-.7-1.4-.9l-.3-.2zM115.2 169.6c8-6 17.9-9.6 28.8-9.6c26.5 0 48 21.5 48 48s-21.5 48-48 48H109.8c-7.6 0-13.8 6.2-13.8 13.8c0 1.5 .2 2.9 .7 4.4l8 24c4.4 13.1 16.6 21.9 30.4 21.9H144h16c35.3 0 64 28.7 64 64s-28.7 64-64 64c-50.8 0-82.7-21.5-102.2-42.8c-9.9-10.8-16.6-21.6-20.9-29.7c-2.1-4-3.6-7.3-4.5-9.6c-.5-1.1-.8-2-1-2.5l-.2-.5c-.3-.9-.7-1.8-1.1-2.6c-1.2-2.2-2.8-4-4.7-5.4c-1.9-1.4-4.1-2.3-6.5-2.8c-1.4-.3-2.9-.3-4.4-.2c-2.5 .2-4.8 1-6.8 2.3c-1.1 .7-2.2 1.5-3.1 2.5c-2.4 2.5-4.1 5.8-4.5 9.5c-.1 .6-.1 1.1-.1 1.7c0 0 0 0 0 0c0 .8 .1 1.7 .2 2.5l0 .1c0 .3 .1 .8 .2 1.3c.2 1.1 .4 2.7 .8 4.6c.8 3.9 2 9.4 3.9 15.9c3.8 13 10.3 30.4 21.3 48C48.7 476.2 89.4 512 160 512c70.7 0 128-57.3 128-128c0-23.3-6.2-45.2-17.1-64h22.6c25.5 0 49.9-10.1 67.9-28.1l26.5-26.5c6-6 14.1-9.4 22.6-9.4H416c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32c-25.7 0-41.4-12.5-51.2-25.6c-5-6.7-8.4-13.4-10.5-18.6c-1.1-2.5-1.8-4.6-2.2-6c-.2-.7-.4-1.2-.5-1.5l-.1-.2c-.3-1.3-.8-2.6-1.5-3.8c-1.1-2-2.6-3.8-4.4-5.1c-2.7-2-6-3.2-9.6-3.2l-.2 0c-8 .1-14.6 6.1-15.6 13.9l0 0c0 .3-.1 .6-.2 1.1c-.1 .9-.3 2.1-.4 3.6c-.3 3-.6 7.3-.6 12.4c0 10.1 1.1 23.9 5.8 38.1c4.8 14.3 13.4 29.3 28.6 40.7C368.7 473.3 389.3 480 416 480c53 0 96-43 96-96V288c0-53-43-96-96-96h-5.5c-25.5 0-49.9 10.1-67.9 28.1l-26.5 26.5c-6 6-14.1 9.4-22.6 9.4H245.2c6.9-14.5 10.8-30.8 10.8-48c0-61.9-50.1-112-112-112c-25.2 0-48.5 8.3-67.2 22.4c-14.1 10.6-17 30.7-6.4 44.8s30.7 17 44.8 6.4z\"]\n};\nvar faWorm = {\n prefix: 'fas',\n iconName: 'worm',\n icon: [512, 512, [], \"e599\", \"M256 96c0-53 43-96 96-96h38.4C439.9 0 480 40.1 480 89.6V176v16V376c0 75.1-60.9 136-136 136s-136-60.9-136-136V296c0-22.1-17.9-40-40-40s-40 17.9-40 40V464c0 26.5-21.5 48-48 48s-48-21.5-48-48V296c0-75.1 60.9-136 136-136s136 60.9 136 136v80c0 22.1 17.9 40 40 40s40-17.9 40-40V192H352c-53 0-96-43-96-96zm144-8a24 24 0 1 0 -48 0 24 24 0 1 0 48 0z\"]\n};\nvar faHouseCircleXmark = {\n prefix: 'fas',\n iconName: 'house-circle-xmark',\n icon: [640, 512, [], \"e50b\", \"M320.7 352c8.1-89.7 83.5-160 175.3-160c8.9 0 17.6 .7 26.1 1.9L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1h32v69.7c-.1 .9-.1 1.8-.1 2.8V472c0 22.1 17.9 40 40 40h16c1.2 0 2.4-.1 3.6-.2c1.5 .1 3 .2 4.5 .2H160h24c22.1 0 40-17.9 40-40V448 384c0-17.7 14.3-32 32-32h64l.7 0zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm59.3-180.7L518.6 368l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L496 390.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L473.4 368l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L496 345.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faPlug = {\n prefix: 'fas',\n iconName: 'plug',\n icon: [384, 512, [128268], \"f1e6\", \"M96 0C78.3 0 64 14.3 64 32v96h64V32c0-17.7-14.3-32-32-32zM288 0c-17.7 0-32 14.3-32 32v96h64V32c0-17.7-14.3-32-32-32zM32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32v32c0 77.4 55 142 128 156.8V480c0 17.7 14.3 32 32 32s32-14.3 32-32V412.8C297 398 352 333.4 352 256V224c17.7 0 32-14.3 32-32s-14.3-32-32-32H32z\"]\n};\nvar faChevronUp = {\n prefix: 'fas',\n iconName: 'chevron-up',\n icon: [512, 512, [], \"f077\", \"M233.4 105.4c12.5-12.5 32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L256 173.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l192-192z\"]\n};\nvar faHandSpock = {\n prefix: 'fas',\n iconName: 'hand-spock',\n icon: [576, 512, [128406], \"f259\", \"M246.9 23.7C242.3 6.6 224.8-3.5 207.7 1.1s-27.2 22.1-22.6 39.2L238 237.8c2.5 9.2-4.5 18.2-14 18.2c-6.4 0-12-4.2-13.9-10.3L166.6 102.7c-5.1-16.9-23-26.4-39.9-21.3s-26.4 23-21.3 39.9l62.8 206.4c2.4 7.9-7.2 13.8-13.2 8.1L99.6 283c-16-15.2-41.3-14.6-56.6 1.4s-14.6 41.3 1.4 56.6L156.8 448c43.1 41.1 100.4 64 160 64h10.9 8.2c.1 0 .1-.1 .1-.1s.1-.1 .1-.1c58.3-3.5 108.6-43.2 125.3-99.7l81.2-275c5-16.9-4.7-34.7-21.6-39.8s-34.7 4.7-39.8 21.6L443.5 247.1c-1.6 5.3-6.4 8.9-12 8.9c-7.9 0-13.8-7.3-12.2-15.1l36-170.3c3.7-17.3-7.4-34.3-24.7-37.9s-34.3 7.4-37.9 24.7L355.1 235.1c-2.6 12.2-13.3 20.9-25.8 20.9c-11.9 0-22.4-8-25.4-19.5l-57-212.8z\"]\n};\nvar faStopwatch = {\n prefix: 'fas',\n iconName: 'stopwatch',\n icon: [448, 512, [9201], \"f2f2\", \"M176 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h16V98.4C92.3 113.8 16 200 16 304c0 114.9 93.1 208 208 208s208-93.1 208-208c0-41.8-12.3-80.7-33.5-113.2l24.1-24.1c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L355.7 143c-28.1-23-62.2-38.8-99.7-44.6V64h16c17.7 0 32-14.3 32-32s-14.3-32-32-32H224 176zm72 192V320c0 13.3-10.7 24-24 24s-24-10.7-24-24V192c0-13.3 10.7-24 24-24s24 10.7 24 24z\"]\n};\nvar faFaceKiss = {\n prefix: 'fas',\n iconName: 'face-kiss',\n icon: [512, 512, [128535, \"kiss\"], \"f596\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm48.7-198.3c4.3 5.1 7.3 11.4 7.3 18.3s-3.1 13.2-7.3 18.3c-4.3 5.2-10.1 9.7-16.7 13.4c-2.7 1.5-5.7 3-8.7 4.3c3.1 1.3 6 2.7 8.7 4.3c6.6 3.7 12.5 8.2 16.7 13.4c4.3 5.1 7.3 11.4 7.3 18.3s-3.1 13.2-7.3 18.3c-4.3 5.2-10.1 9.7-16.7 13.4C274.7 443.1 257.4 448 240 448c-3.6 0-6.8-2.5-7.7-6s.6-7.2 3.8-9l0 0 0 0 0 0 0 0 .2-.1c.2-.1 .5-.3 .9-.5c.8-.5 2-1.2 3.4-2.1c2.8-1.9 6.5-4.5 10.2-7.6c3.7-3.1 7.2-6.6 9.6-10.1c2.5-3.5 3.5-6.4 3.5-8.6s-1-5-3.5-8.6c-2.5-3.5-5.9-6.9-9.6-10.1c-3.7-3.1-7.4-5.7-10.2-7.6c-1.4-.9-2.6-1.6-3.4-2.1c-.4-.2-.7-.4-.9-.5l-.2-.1 0 0 0 0 0 0c-2.5-1.4-4.1-4.1-4.1-7s1.6-5.6 4.1-7l0 0 0 0 0 0 0 0 0 0 .2-.1 .3-.2 .6-.4c.8-.5 2-1.2 3.4-2.1c2.8-1.9 6.5-4.5 10.2-7.6c3.7-3.1 7.2-6.6 9.6-10.1c2.5-3.5 3.5-6.4 3.5-8.6s-1-5-3.5-8.6c-2.5-3.5-5.9-6.9-9.6-10.1c-3.7-3.1-7.4-5.7-10.2-7.6c-1.4-.9-2.6-1.6-3.4-2.1l-.4-.3-.5-.3-.2-.1 0 0 0 0 0 0c-3.2-1.8-4.7-5.5-3.8-9s4.1-6 7.7-6c17.4 0 34.7 4.9 47.9 12.3c6.6 3.7 12.5 8.2 16.7 13.4zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faKiss = faFaceKiss;\nvar faBridgeCircleXmark = {\n prefix: 'fas',\n iconName: 'bridge-circle-xmark',\n icon: [640, 512, [], \"e4cb\", \"M64 32C46.3 32 32 46.3 32 64s14.3 32 32 32h40v64H32V288c53 0 96 43 96 96v64c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V384c0-53 43-96 96-96c6.3 0 12.4 .6 18.3 1.7C367.1 231.8 426.9 192 496 192c42.5 0 81.6 15.1 112 40.2V160H536V96h40c17.7 0 32-14.3 32-32s-14.3-32-32-32H64zM488 96v64H408V96h80zM360 96v64H280V96h80zM232 96v64H152V96h80zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm59.3-180.7L518.6 368l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L496 390.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L473.4 368l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L496 345.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faFaceGrinTongue = {\n prefix: 'fas',\n iconName: 'face-grin-tongue',\n icon: [512, 512, [128539, \"grin-tongue\"], \"f589\", \"M0 256C0 368.9 73.1 464.7 174.5 498.8C165.3 484 160 466.6 160 448V400.7c-24-17.5-43.1-41.4-54.8-69.2c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19c12.3-3.8 24.3 6.9 19.3 18.7c-11.8 28-31.1 52-55.4 69.6V448c0 18.6-5.3 36-14.5 50.8C438.9 464.7 512 368.9 512 256C512 114.6 397.4 0 256 0S0 114.6 0 256zm176.4-80a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM320 448V402.6c0-14.7-11.9-26.6-26.6-26.6h-2c-11.3 0-21.1 7.9-23.6 18.9c-2.8 12.6-20.8 12.6-23.6 0c-2.5-11.1-12.3-18.9-23.6-18.9h-2c-14.7 0-26.6 11.9-26.6 26.6V448c0 35.3 28.7 64 64 64s64-28.7 64-64z\"]\n};\nvar faGrinTongue = faFaceGrinTongue;\nvar faChessBishop = {\n prefix: 'fas',\n iconName: 'chess-bishop',\n icon: [320, 512, [9821], \"f43a\", \"M128 0C110.3 0 96 14.3 96 32c0 16.1 11.9 29.4 27.4 31.7C78.4 106.8 8 190 8 288c0 47.4 30.8 72.3 56 84.7V400H256V372.7c25.2-12.5 56-37.4 56-84.7c0-37.3-10.2-72.4-25.3-104.1l-99.4 99.4c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L270.8 154.6c-23.2-38.1-51.8-69.5-74.2-90.9C212.1 61.4 224 48.1 224 32c0-17.7-14.3-32-32-32H128zM48 432L6.6 473.4c-4.2 4.2-6.6 10-6.6 16C0 501.9 10.1 512 22.6 512H297.4c12.5 0 22.6-10.1 22.6-22.6c0-6-2.4-11.8-6.6-16L272 432H48z\"]\n};\nvar faFaceGrinWink = {\n prefix: 'fas',\n iconName: 'face-grin-wink',\n icon: [512, 512, [\"grin-wink\"], \"f58c\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zm-16.9-79.2c-17.6-23.5-52.8-23.5-70.4 0c-5.3 7.1-15.3 8.5-22.4 3.2s-8.5-15.3-3.2-22.4c30.4-40.5 91.2-40.5 121.6 0c5.3 7.1 3.9 17.1-3.2 22.4s-17.1 3.9-22.4-3.2zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faGrinWink = faFaceGrinWink;\nvar faEarDeaf = {\n prefix: 'fas',\n iconName: 'ear-deaf',\n icon: [512, 512, [\"deaf\", \"deafness\", \"hard-of-hearing\"], \"f2a4\", \"M502.6 54.6l-40 40c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l40-40c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zm-320 320l-128 128c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zM240 128c-57.6 0-105.1 43.6-111.3 99.5c-1.9 17.6-17.8 30.2-35.3 28.3s-30.2-17.8-28.3-35.3C74.8 132.5 149.4 64 240 64c97.2 0 176 78.8 176 176c0 46-17.7 87.9-46.6 119.3c-12 13-17.4 24.8-17.4 34.7V400c0 61.9-50.1 112-112 112c-17.7 0-32-14.3-32-32s14.3-32 32-32c26.5 0 48-21.5 48-48v-6.1c0-32.9 17.4-59.6 34.4-78c18.4-20 29.6-46.6 29.6-75.9c0-61.9-50.1-112-112-112zm0 80c-17.7 0-32 14.3-32 32c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-44.2 35.8-80 80-80s80 35.8 80 80c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-17.7-14.3-32-32-32z\"]\n};\nvar faDeaf = faEarDeaf;\nvar faDeafness = faEarDeaf;\nvar faHardOfHearing = faEarDeaf;\nvar faRoadCircleCheck = {\n prefix: 'fas',\n iconName: 'road-circle-check',\n icon: [640, 512, [], \"e564\", \"M213.2 32H288V96c0 17.7 14.3 32 32 32s32-14.3 32-32V32h74.8c27.1 0 51.3 17.1 60.3 42.6l42.7 120.6c-10.9-2.1-22.2-3.2-33.8-3.2c-59.5 0-112.1 29.6-144 74.8V224c0-17.7-14.3-32-32-32s-32 14.3-32 32v64c0 17.7 14.3 32 32 32c2.3 0 4.6-.3 6.8-.7c-4.5 15.5-6.8 31.8-6.8 48.7c0 5.4 .2 10.7 .7 16l-.7 0c-17.7 0-32 14.3-32 32v64H86.6C56.5 480 32 455.5 32 425.4c0-6.2 1.1-12.4 3.1-18.2L152.9 74.6C162 49.1 186.1 32 213.2 32zM352 368a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm211.3-43.3c-6.2-6.2-16.4-6.2-22.6 0L480 385.4l-28.7-28.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l40 40c6.2 6.2 16.4 6.2 22.6 0l72-72c6.2-6.2 6.2-16.4 0-22.6z\"]\n};\nvar faDiceFive = {\n prefix: 'fas',\n iconName: 'dice-five',\n icon: [448, 512, [9860], \"f523\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm64 96a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM96 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM224 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm64-64a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm32 160a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faSquareRss = {\n prefix: 'fas',\n iconName: 'square-rss',\n icon: [448, 512, [\"rss-square\"], \"f143\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM96 136c0-13.3 10.7-24 24-24c137 0 248 111 248 248c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-110.5-89.5-200-200-200c-13.3 0-24-10.7-24-24zm0 96c0-13.3 10.7-24 24-24c83.9 0 152 68.1 152 152c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-57.4-46.6-104-104-104c-13.3 0-24-10.7-24-24zm0 120a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faRssSquare = faSquareRss;\nvar faLandMineOn = {\n prefix: 'fas',\n iconName: 'land-mine-on',\n icon: [640, 512, [], \"e51b\", \"M344 24V168c0 13.3-10.7 24-24 24s-24-10.7-24-24V24c0-13.3 10.7-24 24-24s24 10.7 24 24zM192 320c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32v32H192V320zm-77.3 90.5c8.1-16.3 24.8-26.5 42.9-26.5H482.3c18.2 0 34.8 10.3 42.9 26.5l27.6 55.2C563.5 487 548 512 524.2 512H115.8c-23.8 0-39.3-25-28.6-46.3l27.6-55.2zM36.3 138.3c7.5-10.9 22.5-13.6 33.4-6.1l104 72c10.9 7.5 13.6 22.5 6.1 33.4s-22.5 13.6-33.4 6.1l-104-72c-10.9-7.5-13.6-22.5-6.1-33.4zm534.1-6.1c10.9-7.5 25.8-4.8 33.4 6.1s4.8 25.8-6.1 33.4l-104 72c-10.9 7.5-25.8 4.8-33.4-6.1s-4.8-25.8 6.1-33.4l104-72z\"]\n};\nvar faICursor = {\n prefix: 'fas',\n iconName: 'i-cursor',\n icon: [256, 512, [], \"f246\", \"M.1 29.3C-1.4 47 11.7 62.4 29.3 63.9l8 .7C70.5 67.3 96 95 96 128.3V224H64c-17.7 0-32 14.3-32 32s14.3 32 32 32H96v95.7c0 33.3-25.5 61-58.7 63.8l-8 .7C11.7 449.6-1.4 465 .1 482.7s16.9 30.7 34.5 29.2l8-.7c34.1-2.8 64.2-18.9 85.4-42.9c21.2 24 51.2 40.1 85.4 42.9l8 .7c17.6 1.5 33.1-11.6 34.5-29.2s-11.6-33.1-29.2-34.5l-8-.7C185.5 444.7 160 417 160 383.7V288h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H160V128.3c0-33.3 25.5-61 58.7-63.8l8-.7c17.6-1.5 30.7-16.9 29.2-34.5S239-1.4 221.3 .1l-8 .7C179.2 3.6 149.2 19.7 128 43.7c-21.2-24-51.2-40-85.4-42.9l-8-.7C17-1.4 1.6 11.7 .1 29.3z\"]\n};\nvar faStamp = {\n prefix: 'fas',\n iconName: 'stamp',\n icon: [512, 512, [], \"f5bf\", \"M312 201.8c0-17.4 9.2-33.2 19.9-47C344.5 138.5 352 118.1 352 96c0-53-43-96-96-96s-96 43-96 96c0 22.1 7.5 42.5 20.1 58.8c10.7 13.8 19.9 29.6 19.9 47c0 29.9-24.3 54.2-54.2 54.2H112C50.1 256 0 306.1 0 368c0 20.9 13.4 38.7 32 45.3V464c0 26.5 21.5 48 48 48H432c26.5 0 48-21.5 48-48V413.3c18.6-6.6 32-24.4 32-45.3c0-61.9-50.1-112-112-112H366.2c-29.9 0-54.2-24.3-54.2-54.2zM416 416v32H96V416H416z\"]\n};\nvar faStairs = {\n prefix: 'fas',\n iconName: 'stairs',\n icon: [576, 512, [], \"e289\", \"M384 64c0-17.7 14.3-32 32-32H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H448v96c0 17.7-14.3 32-32 32H320v96c0 17.7-14.3 32-32 32H192v96c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h96V320c0-17.7 14.3-32 32-32h96V192c0-17.7 14.3-32 32-32h96V64z\"]\n};\nvar faI = {\n prefix: 'fas',\n iconName: 'i',\n icon: [320, 512, [105], \"49\", \"M32 32C14.3 32 0 46.3 0 64S14.3 96 32 96h96V416H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H192V96h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H160 32z\"]\n};\nvar faHryvniaSign = {\n prefix: 'fas',\n iconName: 'hryvnia-sign',\n icon: [384, 512, [8372, \"hryvnia\"], \"f6f2\", \"M121.9 116.2C138.3 103.1 158.7 96 179.6 96H223c27.1 0 49 21.9 49 49c0 11.5-4 22.4-11.1 31H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H155.5l-50.6 28.9c-1.7 1-3.4 2-5.1 3.1H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H52.3c-2.8 9.9-4.3 20.4-4.3 31c0 62.4 50.6 113 113 113h43.4c35.5 0 70-12.1 97.7-34.3L308 441c13.8-11 16-31.2 5-45s-31.2-16-45-5l-5.9 4.7c-16.4 13.1-36.7 20.2-57.7 20.2H161c-27.1 0-49-21.9-49-49c0-11.5 4-22.4 11.1-31H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H228.5l50.6-28.9c1.7-1 3.4-2 5.1-3.1H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H331.7c2.8-10 4.3-20.4 4.3-31c0-62.4-50.6-113-113-113H179.6c-35.5 0-70 12.1-97.7 34.3L76 71c-13.8 11-16 31.2-5 45s31.2 16 45 5l5.9-4.7z\"]\n};\nvar faHryvnia = faHryvniaSign;\nvar faPills = {\n prefix: 'fas',\n iconName: 'pills',\n icon: [576, 512, [], \"f484\", \"M112 96c-26.5 0-48 21.5-48 48V256h96V144c0-26.5-21.5-48-48-48zM0 144C0 82.1 50.1 32 112 32s112 50.1 112 112V368c0 61.9-50.1 112-112 112S0 429.9 0 368V144zM554.9 399.4c-7.1 12.3-23.7 13.1-33.8 3.1L333.5 214.9c-10-10-9.3-26.7 3.1-33.8C360 167.7 387.1 160 416 160c88.4 0 160 71.6 160 160c0 28.9-7.7 56-21.1 79.4zm-59.5 59.5C472 472.3 444.9 480 416 480c-88.4 0-160-71.6-160-160c0-28.9 7.7-56 21.1-79.4c7.1-12.3 23.7-13.1 33.8-3.1L498.5 425.1c10 10 9.3 26.7-3.1 33.8z\"]\n};\nvar faFaceGrinWide = {\n prefix: 'fas',\n iconName: 'face-grin-wide',\n icon: [512, 512, [128515, \"grin-alt\"], \"f581\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zM208 192c0 35.3-14.3 64-32 64s-32-28.7-32-64s14.3-64 32-64s32 28.7 32 64zm128 64c-17.7 0-32-28.7-32-64s14.3-64 32-64s32 28.7 32 64s-14.3 64-32 64z\"]\n};\nvar faGrinAlt = faFaceGrinWide;\nvar faTooth = {\n prefix: 'fas',\n iconName: 'tooth',\n icon: [448, 512, [129463], \"f5c9\", \"M186.1 52.1C169.3 39.1 148.7 32 127.5 32C74.7 32 32 74.7 32 127.5v6.2c0 15.8 3.7 31.3 10.7 45.5l23.5 47.1c4.5 8.9 7.6 18.4 9.4 28.2l36.7 205.8c2 11.2 11.6 19.4 22.9 19.8s21.4-7.4 24-18.4l28.9-121.3C192.2 323.7 207 312 224 312s31.8 11.7 35.8 28.3l28.9 121.3c2.6 11.1 12.7 18.8 24 18.4s20.9-8.6 22.9-19.8l36.7-205.8c1.8-9.8 4.9-19.3 9.4-28.2l23.5-47.1c7.1-14.1 10.7-29.7 10.7-45.5v-2.1c0-55-44.6-99.6-99.6-99.6c-24.1 0-47.4 8.8-65.6 24.6l-3.2 2.8 19.5 15.2c7 5.4 8.2 15.5 2.8 22.5s-15.5 8.2-22.5 2.8l-24.4-19-37-28.8z\"]\n};\nvar faV = {\n prefix: 'fas',\n iconName: 'v',\n icon: [384, 512, [118], \"56\", \"M19.7 34.5c16.3-6.8 35 .9 41.8 17.2L192 364.8 322.5 51.7c6.8-16.3 25.5-24 41.8-17.2s24 25.5 17.2 41.8l-160 384c-5 11.9-16.6 19.7-29.5 19.7s-24.6-7.8-29.5-19.7L2.5 76.3c-6.8-16.3 .9-35 17.2-41.8z\"]\n};\nvar faBangladeshiTakaSign = {\n prefix: 'fas',\n iconName: 'bangladeshi-taka-sign',\n icon: [384, 512, [], \"e2e6\", \"M36 32.2C18.4 30.1 2.4 42.5 .2 60S10.5 93.6 28 95.8l7.9 1c16 2 28 15.6 28 31.8V160H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64V384c0 53 43 96 96 96h32c106 0 192-86 192-192V256c0-53-43-96-96-96H272c-17.7 0-32 14.3-32 32s14.3 32 32 32h16c17.7 0 32 14.3 32 32v32c0 70.7-57.3 128-128 128H160c-17.7 0-32-14.3-32-32V224h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H128V128.5c0-48.4-36.1-89.3-84.1-95.3l-7.9-1z\"]\n};\nvar faBicycle = {\n prefix: 'fas',\n iconName: 'bicycle',\n icon: [640, 512, [128690], \"f206\", \"M312 32c-13.3 0-24 10.7-24 24s10.7 24 24 24h25.7l34.6 64H222.9l-27.4-38C191 99.7 183.7 96 176 96H120c-13.3 0-24 10.7-24 24s10.7 24 24 24h43.7l22.1 30.7-26.6 53.1c-10-2.5-20.5-3.8-31.2-3.8C57.3 224 0 281.3 0 352s57.3 128 128 128c65.3 0 119.1-48.9 127-112h49c8.5 0 16.3-4.5 20.7-11.8l84.8-143.5 21.7 40.1C402.4 276.3 384 312 384 352c0 70.7 57.3 128 128 128s128-57.3 128-128s-57.3-128-128-128c-13.5 0-26.5 2.1-38.7 6L375.4 48.8C369.8 38.4 359 32 347.2 32H312zM458.6 303.7l32.3 59.7c6.3 11.7 20.9 16 32.5 9.7s16-20.9 9.7-32.5l-32.3-59.7c3.6-.6 7.4-.9 11.2-.9c39.8 0 72 32.2 72 72s-32.2 72-72 72s-72-32.2-72-72c0-18.6 7-35.5 18.6-48.3zM133.2 368h65c-7.3 32.1-36 56-70.2 56c-39.8 0-72-32.2-72-72s32.2-72 72-72c1.7 0 3.4 .1 5.1 .2l-24.2 48.5c-9 18.1 4.1 39.4 24.3 39.4zm33.7-48l50.7-101.3 72.9 101.2-.1 .1H166.8zm90.6-128H365.9L317 274.8 257.4 192z\"]\n};\nvar faStaffSnake = {\n prefix: 'fas',\n iconName: 'staff-snake',\n icon: [384, 512, [\"rod-asclepius\", \"rod-snake\", \"staff-aesculapius\"], \"e579\", \"M222.6 43.2l-.1 4.8H288c53 0 96 43 96 96s-43 96-96 96H248V160h40c8.8 0 16-7.2 16-16s-7.2-16-16-16H248 220l-4.5 144H256c53 0 96 43 96 96s-43 96-96 96H240V384h16c8.8 0 16-7.2 16-16s-7.2-16-16-16H213l-3.1 99.5L208.5 495l0 1c-.3 8.9-7.6 16-16.5 16s-16.2-7.1-16.5-16l0-1-1-31H136c-22.1 0-40-17.9-40-40s17.9-40 40-40h36l-1-32H152c-53 0-96-43-96-96c0-47.6 34.6-87.1 80-94.7V256c0 8.8 7.2 16 16 16h16.5L164 128H136 122.6c-9 18.9-28.3 32-50.6 32H56c-30.9 0-56-25.1-56-56S25.1 48 56 48h8 8 89.5l-.1-4.8L161 32c0-.7 0-1.3 0-1.9c.5-16.6 14.1-30 31-30s30.5 13.4 31 30c0 .6 0 1.3 0 1.9l-.4 11.2zM64 112a16 16 0 1 0 0-32 16 16 0 1 0 0 32z\"]\n};\nvar faRodAsclepius = faStaffSnake;\nvar faRodSnake = faStaffSnake;\nvar faStaffAesculapius = faStaffSnake;\nvar faHeadSideCoughSlash = {\n prefix: 'fas',\n iconName: 'head-side-cough-slash',\n icon: [640, 512, [], \"e062\", \"M448 325.8l44 34.5c8.1 1.4 14.8 6.8 18 14.1L552.9 408c10.6 .4 19.5 7.6 22.2 17.4l39.1 30.6c.6 0 1.2-.1 1.8-.1c11.1 0 20.4 7.5 23.2 17.8h-3.9c6.2 8.5 6.4 20.4-.4 29c-8.2 10.4-23.3 12.3-33.7 4.1L9.2 42.9C-1.2 34.7-3.1 19.6 5.1 9.2S28.4-3.1 38.8 5.1L89.6 44.9C127 16.7 173.5 0 224 0h24c95.2 0 181.2 69.3 197.3 160.2c2.3 13 6.8 25.7 15.1 36l42 52.6c6.2 7.8 9.6 17.4 9.6 27.4c0 24.2-19.6 43.8-43.8 43.8H448v0 5.8zM0 224.2c0-38.7 9.8-75.1 27.1-106.9L341.8 365.3l-2.5 .3c-11 1.4-19.2 10.7-19.2 21.8c0 11.6 9 21.2 20.6 21.9l62 3.9 43 33.9C439.3 466.2 421.2 480 400 480H320v8c0 13.3-10.7 24-24 24H256v0H96c-17.7 0-32-14.3-32-32V407.3c0-16.7-6.9-32.5-17.1-45.8C16.6 322.4 0 274.1 0 224.2zM616 360a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm-64-48a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm40-24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faTruckMedical = {\n prefix: 'fas',\n iconName: 'truck-medical',\n icon: [640, 512, [128657, \"ambulance\"], \"f0f9\", \"M0 48C0 21.5 21.5 0 48 0H368c26.5 0 48 21.5 48 48V96h50.7c17 0 33.3 6.7 45.3 18.7L589.3 192c12 12 18.7 28.3 18.7 45.3V256v32 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H576c0 53-43 96-96 96s-96-43-96-96H256c0 53-43 96-96 96s-96-43-96-96H48c-26.5 0-48-21.5-48-48V48zM416 256H544V237.3L466.7 160H416v96zM160 464a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm368-48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM176 80v48l-48 0c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V192h48c8.8 0 16-7.2 16-16V144c0-8.8-7.2-16-16-16H240V80c0-8.8-7.2-16-16-16H192c-8.8 0-16 7.2-16 16z\"]\n};\nvar faAmbulance = faTruckMedical;\nvar faWheatAwnCircleExclamation = {\n prefix: 'fas',\n iconName: 'wheat-awn-circle-exclamation',\n icon: [640, 512, [], \"e598\", \"M505 41c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L383 95c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l88-88zM305.5 27.3c-6.2-6.2-16.4-6.2-22.6 0L271.5 38.6c-37.5 37.5-37.5 98.3 0 135.8l10.4 10.4-30.5 30.5c-3.4-27.3-15.5-53.8-36.5-74.8l-11.3-11.3c-6.2-6.2-16.4-6.2-22.6 0l-11.3 11.3c-37.5 37.5-37.5 98.3 0 135.8l10.4 10.4-30.5 30.5c-3.4-27.3-15.5-53.8-36.5-74.8L101.8 231c-6.2-6.2-16.4-6.2-22.6 0L67.9 242.3c-37.5 37.5-37.5 98.3 0 135.8l10.4 10.4L9.4 457.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l68.9-68.9 12.2 12.2c37.5 37.5 98.3 37.5 135.8 0l11.3-11.3c6.2-6.2 6.2-16.4 0-22.6l-11.3-11.3c-21.8-21.8-49.6-34.1-78.1-36.9l31.9-31.9 12.2 12.2c22.5 22.5 53.3 31.5 82.4 27c0-1 0-2.1 0-3.1c0-33.1 9.1-64.1 25-90.6c-15.5-8.7-32.5-13.8-49.8-15.5l31.9-31.9 12.2 12.2c6 6 12.6 11.1 19.7 15.2c27.5-34 67.3-57.5 112.6-63.8c-4.1-3.8-8.4-7.3-12.9-10.5L505 137c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-59.4 59.4c-20.6-4.4-42-3.7-62.3 2.1c6.1-21.3 6.6-43.8 1.4-65.3L409 41c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L329.1 52.9c-3.7-5-7.8-9.8-12.4-14.3L305.5 27.3zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faSnowman = {\n prefix: 'fas',\n iconName: 'snowman',\n icon: [512, 512, [9731, 9924], \"f7d0\", \"M341.1 140.6c-2 3.9-1.6 8.6 1.2 12c7 8.5 12.9 18.1 17.2 28.4L408 160.2V120c0-13.3 10.7-24 24-24s24 10.7 24 24v19.6l22.5-9.7c12.2-5.2 26.3 .4 31.5 12.6s-.4 26.3-12.6 31.5l-56 24-73.6 31.5c-.5 9.5-2.1 18.6-4.8 27.3c-1.2 3.8-.1 8 2.8 10.8C396.7 296.9 416 338.2 416 384c0 44.7-18.3 85-47.8 114.1c-9.9 9.7-23.7 13.9-37.5 13.9H181.3c-13.9 0-27.7-4.2-37.5-13.9C114.3 469 96 428.7 96 384c0-45.8 19.3-87.1 50.1-116.3c2.9-2.8 4-6.9 2.8-10.8c-2.7-8.7-4.3-17.9-4.8-27.3L70.5 198.1l-56-24C2.4 168.8-3.3 154.7 1.9 142.5s19.3-17.8 31.5-12.6L56 139.6V120c0-13.3 10.7-24 24-24s24 10.7 24 24v40.2L152.6 181c4.3-10.3 10.1-19.9 17.2-28.4c2.8-3.4 3.3-8.1 1.2-12C164 127.2 160 112.1 160 96c0-53 43-96 96-96s96 43 96 96c0 16.1-4 31.2-10.9 44.6zM224 96a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm48 128a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm-16 80a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm16 48a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zM288 96a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm-48 24v3.2c0 3.2 .8 6.3 2.3 9l9 16.9c.9 1.7 2.7 2.8 4.7 2.8s3.8-1.1 4.7-2.8l9-16.9c1.5-2.8 2.3-5.9 2.3-9V120c0-8.8-7.2-16-16-16s-16 7.2-16 16z\"]\n};\nvar faMortarPestle = {\n prefix: 'fas',\n iconName: 'mortar-pestle',\n icon: [512, 512, [], \"f5a7\", \"M504.3 11.1C493.3-1.6 474.5-3.7 461 6.2L252.3 160H397.3L502.6 54.6c11.8-11.8 12.6-30.8 1.6-43.5zM32 192c-17.7 0-32 14.3-32 32s14.3 32 32 32c0 82.5 43.4 147.7 123.9 176.2c-11.1 13.9-19.4 30.3-23.9 48.1C127.6 497.4 142.3 512 160 512H352c17.7 0 32.4-14.6 28.1-31.7c-4.5-17.8-12.8-34.1-23.9-48.1C436.6 403.7 480 338.5 480 256c17.7 0 32-14.3 32-32s-14.3-32-32-32H32z\"]\n};\nvar faRoadBarrier = {\n prefix: 'fas',\n iconName: 'road-barrier',\n icon: [640, 512, [], \"e562\", \"M32 32C14.3 32 0 46.3 0 64V448c0 17.7 14.3 32 32 32s32-14.3 32-32V266.3L149.2 96H64V64c0-17.7-14.3-32-32-32zM405.2 96H330.8l-5.4 10.7L234.8 288h74.3l5.4-10.7L405.2 96zM362.8 288h74.3l5.4-10.7L533.2 96H458.8l-5.4 10.7L362.8 288zM202.8 96l-5.4 10.7L106.8 288h74.3l5.4-10.7L277.2 96H202.8zm288 192H576V448c0 17.7 14.3 32 32 32s32-14.3 32-32V64c0-17.7-14.3-32-32-32s-32 14.3-32 32v53.7L490.8 288z\"]\n};\nvar faSchool = {\n prefix: 'fas',\n iconName: 'school',\n icon: [640, 512, [127979], \"f549\", \"M337.8 5.4C327-1.8 313-1.8 302.2 5.4L166.3 96H48C21.5 96 0 117.5 0 144V464c0 26.5 21.5 48 48 48H256V416c0-35.3 28.7-64 64-64s64 28.7 64 64v96H592c26.5 0 48-21.5 48-48V144c0-26.5-21.5-48-48-48H473.7L337.8 5.4zM96 192h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16V208c0-8.8 7.2-16 16-16zm400 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H512c-8.8 0-16-7.2-16-16V208zM96 320h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16V336c0-8.8 7.2-16 16-16zm400 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H512c-8.8 0-16-7.2-16-16V336zM232 176a88 88 0 1 1 176 0 88 88 0 1 1 -176 0zm88-48c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H336V144c0-8.8-7.2-16-16-16z\"]\n};\nvar faIgloo = {\n prefix: 'fas',\n iconName: 'igloo',\n icon: [576, 512, [], \"f7ae\", \"M320 33.8V160H48.5C100.2 82.8 188.1 32 288 32c10.8 0 21.5 .6 32 1.8zM352 160V39.1C424.9 55.7 487.2 99.8 527.5 160H352zM29.9 192H96V320H0c0-46 10.8-89.4 29.9-128zM192 320H128V192H448V320H384v32H576v80c0 26.5-21.5 48-48 48H352V352c0-35.3-28.7-64-64-64s-64 28.7-64 64V480H48c-26.5 0-48-21.5-48-48V352H192V320zm288 0V192h66.1c19.2 38.6 29.9 82 29.9 128H480z\"]\n};\nvar faJoint = {\n prefix: 'fas',\n iconName: 'joint',\n icon: [640, 512, [], \"f595\", \"M448 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V43c0 55.2 21.9 108.1 60.9 147.1l21 21c9 9 14.1 21.2 14.1 33.9v11c0 17.7 14.3 32 32 32s32-14.3 32-32V245c0-29.7-11.8-58.2-32.8-79.2l-21-21C463.2 117.8 448 81.2 448 43V32zM576 256c0 17.7 14.3 32 32 32s32-14.3 32-32V245c0-55.2-21.9-108.1-60.9-147.1l-21-21c-9-9-14.1-21.2-14.1-33.9V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V43c0 29.7 11.8 58.2 32.8 79.2l21 21c27 27 42.2 63.6 42.2 101.8v11zM229.8 360c-4.7-2.3-10-2.7-15.2-2c-37.8 5.6-75.2 14.3-106.9 22.8C81.3 388 58.3 395.1 42 400.4c-8.2 2.7-14.7 4.9-19.2 6.5c-2.3 .8-4 1.4-5.2 1.8l-1.3 .5C6.8 412.5 0 421.4 0 432s6.8 19.5 16.3 22.7l1.3 .5c1.2 .4 3 1.1 5.2 1.8c4.5 1.6 11 3.8 19.2 6.5c16.3 5.4 39.2 12.5 65.7 19.6C160.3 497.3 228.8 512 288 512h67.3c4.1 0 6.3-5.1 3.6-8.3L256.5 380.8c-7.4-8.9-16.5-15.9-26.7-20.8zM445 512h19 51.3c4.1 0 6.3-5.1 3.6-8.3L416.5 380.8C401.3 362.5 378.8 352 355 352H336 288c-1.1 0-2.3 0-3.4 0c-4.1 0-6.2 5.1-3.5 8.3L383.5 483.2C398.7 501.5 421.2 512 445 512zm-3.9-151.7L543.5 483.2c14.6 17.5 35.9 27.9 58.6 28.7c21.1-1.1 37.9-18.6 37.9-39.9V392c0-22.1-17.9-40-40-40H444.7c-4.1 0-6.3 5.1-3.6 8.3z\"]\n};\nvar faAngleRight = {\n prefix: 'fas',\n iconName: 'angle-right',\n icon: [320, 512, [8250], \"f105\", \"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z\"]\n};\nvar faHorse = {\n prefix: 'fas',\n iconName: 'horse',\n icon: [576, 512, [128014], \"f6f0\", \"M448 238.1V160h16l9.8 19.6c12.5 25.1 42.2 36.4 68.3 26c20.5-8.2 33.9-28 33.9-50.1V80c0-19.1-8.4-36.3-21.7-48H560c8.8 0 16-7.2 16-16s-7.2-16-16-16H480 448C377.3 0 320 57.3 320 128H224 203.2 148.8c-30.7 0-57.6 16.3-72.5 40.8C33.2 174.5 0 211.4 0 256v56c0 13.3 10.7 24 24 24s24-10.7 24-24V256c0-13.4 6.6-25.2 16.7-32.5c1.6 13 6.3 25.4 13.6 36.4l28.2 42.4c8.3 12.4 6.4 28.7-1.2 41.6c-16.5 28-20.6 62.2-10 93.9l17.5 52.4c4.4 13.1 16.6 21.9 30.4 21.9h33.7c21.8 0 37.3-21.4 30.4-42.1l-20.8-62.5c-2.1-6.4-.5-13.4 4.3-18.2l12.7-12.7c13.2-13.2 20.6-31.1 20.6-49.7c0-2.3-.1-4.6-.3-6.9l84 24c4.1 1.2 8.2 2.1 12.3 2.8V480c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V315.7c19.2-19.2 31.5-45.7 32-75.7h0v-1.9zM496 64a16 16 0 1 1 0 32 16 16 0 1 1 0-32z\"]\n};\nvar faQ = {\n prefix: 'fas',\n iconName: 'q',\n icon: [448, 512, [113], \"51\", \"M64 256c0 88.4 71.6 160 160 160c28.9 0 56-7.7 79.4-21.1l-72-86.4c-11.3-13.6-9.5-33.8 4.1-45.1s33.8-9.5 45.1 4.1l70.9 85.1C371.9 325.8 384 292.3 384 256c0-88.4-71.6-160-160-160S64 167.6 64 256zM344.9 444.6C310 467 268.5 480 224 480C100.3 480 0 379.7 0 256S100.3 32 224 32s224 100.3 224 224c0 56.1-20.6 107.4-54.7 146.7l47.3 56.8c11.3 13.6 9.5 33.8-4.1 45.1s-33.8 9.5-45.1-4.1l-46.6-55.9z\"]\n};\nvar faG = {\n prefix: 'fas',\n iconName: 'g',\n icon: [448, 512, [103], \"47\", \"M224 96C135.6 96 64 167.6 64 256s71.6 160 160 160c77.4 0 142-55 156.8-128H256c-17.7 0-32-14.3-32-32s14.3-32 32-32H400c25.8 0 49.6 21.4 47.2 50.6C437.8 389.6 341.4 480 224 480C100.3 480 0 379.7 0 256S100.3 32 224 32c57.4 0 109.7 21.6 149.3 57c13.2 11.8 14.3 32 2.5 45.2s-32 14.3-45.2 2.5C302.3 111.4 265 96 224 96z\"]\n};\nvar faNotesMedical = {\n prefix: 'fas',\n iconName: 'notes-medical',\n icon: [512, 512, [], \"f481\", \"M96 352V96c0-35.3 28.7-64 64-64H416c35.3 0 64 28.7 64 64V293.5c0 17-6.7 33.3-18.7 45.3l-58.5 58.5c-12 12-28.3 18.7-45.3 18.7H160c-35.3 0-64-28.7-64-64zM272 128c-8.8 0-16 7.2-16 16v48H208c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V256h48c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16H320V144c0-8.8-7.2-16-16-16H272zm24 336c13.3 0 24 10.7 24 24s-10.7 24-24 24H136C60.9 512 0 451.1 0 376V152c0-13.3 10.7-24 24-24s24 10.7 24 24l0 224c0 48.6 39.4 88 88 88H296z\"]\n};\nvar faTemperatureHalf = {\n prefix: 'fas',\n iconName: 'temperature-half',\n icon: [320, 512, [127777, \"temperature-2\", \"thermometer-2\", \"thermometer-half\"], \"f2c9\", \"M160 64c-26.5 0-48 21.5-48 48V276.5c0 17.3-7.1 31.9-15.3 42.5C86.2 332.6 80 349.5 80 368c0 44.2 35.8 80 80 80s80-35.8 80-80c0-18.5-6.2-35.4-16.7-48.9c-8.2-10.6-15.3-25.2-15.3-42.5V112c0-26.5-21.5-48-48-48zM48 112C48 50.2 98.1 0 160 0s112 50.1 112 112V276.5c0 .1 .1 .3 .2 .6c.2 .6 .8 1.6 1.7 2.8c18.9 24.4 30.1 55 30.1 88.1c0 79.5-64.5 144-144 144S16 447.5 16 368c0-33.2 11.2-63.8 30.1-88.1c.9-1.2 1.5-2.2 1.7-2.8c.1-.3 .2-.5 .2-.6V112zM208 368c0 26.5-21.5 48-48 48s-48-21.5-48-48c0-20.9 13.4-38.7 32-45.3V208c0-8.8 7.2-16 16-16s16 7.2 16 16V322.7c18.6 6.6 32 24.4 32 45.3z\"]\n};\nvar faTemperature2 = faTemperatureHalf;\nvar faThermometer2 = faTemperatureHalf;\nvar faThermometerHalf = faTemperatureHalf;\nvar faDongSign = {\n prefix: 'fas',\n iconName: 'dong-sign',\n icon: [384, 512, [], \"e169\", \"M288 32c-17.7 0-32 14.3-32 32l-32 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h32v49.1c-18.8-10.9-40.7-17.1-64-17.1c-70.7 0-128 57.3-128 128s57.3 128 128 128c24.5 0 47.4-6.9 66.8-18.8c5 11.1 16.2 18.8 29.2 18.8c17.7 0 32-14.3 32-32V288 128c17.7 0 32-14.3 32-32s-14.3-32-32-32c0-17.7-14.3-32-32-32zM128 288a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM32 448c-17.7 0-32 14.3-32 32s14.3 32 32 32H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H32z\"]\n};\nvar faCapsules = {\n prefix: 'fas',\n iconName: 'capsules',\n icon: [576, 512, [], \"f46b\", \"M64 144c0-26.5 21.5-48 48-48s48 21.5 48 48V256H64V144zM0 144V368c0 61.9 50.1 112 112 112s112-50.1 112-112V189.6c1.8 19.1 8.2 38 19.8 54.8L372.3 431.7c35.5 51.7 105.3 64.3 156 28.1s63-107.5 27.5-159.2L427.3 113.3C391.8 61.5 321.9 49 271.3 85.2c-28 20-44.3 50.8-47.3 83V144c0-61.9-50.1-112-112-112S0 82.1 0 144zm296.6 64.2c-16-23.3-10-55.3 11.9-71c21.2-15.1 50.5-10.3 66 12.2l67 97.6L361.6 303l-65-94.8zM491 407.7c-.8 .6-1.6 1.1-2.4 1.6l4-2.8c-.5 .4-1 .8-1.6 1.2z\"]\n};\nvar faPooStorm = {\n prefix: 'fas',\n iconName: 'poo-storm',\n icon: [448, 512, [\"poo-bolt\"], \"f75a\", \"M236.9 .2c-5.5-.7-11 1.4-14.5 5.7s-4.6 10.1-2.8 15.3c2.8 8.2 4.3 16.9 4.3 26.1c0 21.7-8.5 37.2-21.9 47.6c-13.8 10.8-34 17-57.8 17H128c-35.3 0-64 28.7-64 64c0 12.2 3.4 23.5 9.3 33.2C31.7 216.2 0 252.4 0 296c0 40.9 28 75.4 65.8 85.2c-5.3-18.5 1-38.5 16.2-50.7l160-128c17.6-14.1 42.6-14 60.2 .2s22.8 38.6 12.8 58.8L285.7 320H304c20.4 0 38.5 12.9 45.3 32.1c3.7 10.6 3.5 21.8 0 31.9H360c48.6 0 88-39.4 88-88c0-43.6-31.7-79.8-73.3-86.8c5.9-9.7 9.3-21.1 9.3-33.2c0-35.3-28.7-64-64-64h-1.4c.9-5.4 1.4-10.9 1.4-16.6c0-48.7-36.1-88.9-83.1-95.2zm45.1 227.4c-5.8-4.7-14.2-4.7-20.1-.1l-160 128c-5.3 4.2-7.4 11.4-5.1 17.8s8.3 10.7 15.1 10.7h70.1L129.7 488.8c-3.4 6.7-1.6 14.9 4.3 19.6s14.2 4.7 20.1 .1l160-128c5.3-4.2 7.4-11.4 5.1-17.8s-8.3-10.7-15.1-10.7H233.9l52.4-104.8c3.4-6.7 1.6-14.9-4.3-19.6z\"]\n};\nvar faPooBolt = faPooStorm;\nvar faFaceFrownOpen = {\n prefix: 'fas',\n iconName: 'face-frown-open',\n icon: [512, 512, [128550, \"frown-open\"], \"f57a\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm-122 174.5c-12.4 5.2-26.5-4.1-21.1-16.4c16-36.6 52.4-62.1 94.8-62.1s78.8 25.6 94.8 62.1c5.4 12.3-8.7 21.6-21.1 16.4c-22.4-9.5-47.4-14.8-73.7-14.8s-51.3 5.3-73.7 14.8z\"]\n};\nvar faFrownOpen = faFaceFrownOpen;\nvar faHandPointUp = {\n prefix: 'fas',\n iconName: 'hand-point-up',\n icon: [384, 512, [9757], \"f0a6\", \"M32 32C32 14.3 46.3 0 64 0S96 14.3 96 32V240H32V32zM224 192c0-17.7 14.3-32 32-32s32 14.3 32 32v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V192zm-64-64c17.7 0 32 14.3 32 32v48c0 17.7-14.3 32-32 32s-32-14.3-32-32V160c0-17.7 14.3-32 32-32zm160 96c0-17.7 14.3-32 32-32s32 14.3 32 32v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V224zm-96 88l0-.6c9.4 5.4 20.3 8.6 32 8.6c13.2 0 25.4-4 35.6-10.8c8.7 24.9 32.5 42.8 60.4 42.8c11.7 0 22.6-3.1 32-8.6V352c0 88.4-71.6 160-160 160H162.3c-42.4 0-83.1-16.9-113.1-46.9L37.5 453.5C13.5 429.5 0 396.9 0 363V336c0-35.3 28.7-64 64-64h88c22.1 0 40 17.9 40 40s-17.9 40-40 40H96c-8.8 0-16 7.2-16 16s7.2 16 16 16h56c39.8 0 72-32.2 72-72z\"]\n};\nvar faMoneyBill = {\n prefix: 'fas',\n iconName: 'money-bill',\n icon: [576, 512, [], \"f0d6\", \"M64 64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H64zm64 320H64V320c35.3 0 64 28.7 64 64zM64 192V128h64c0 35.3-28.7 64-64 64zM448 384c0-35.3 28.7-64 64-64v64H448zm64-192c-35.3 0-64-28.7-64-64h64v64zM288 160a96 96 0 1 1 0 192 96 96 0 1 1 0-192z\"]\n};\nvar faBookmark = {\n prefix: 'fas',\n iconName: 'bookmark',\n icon: [384, 512, [128278, 61591], \"f02e\", \"M0 48V487.7C0 501.1 10.9 512 24.3 512c5 0 9.9-1.5 14-4.4L192 400 345.7 507.6c4.1 2.9 9 4.4 14 4.4c13.4 0 24.3-10.9 24.3-24.3V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48z\"]\n};\nvar faAlignJustify = {\n prefix: 'fas',\n iconName: 'align-justify',\n icon: [448, 512, [], \"f039\", \"M448 64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32zm0 256c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32zM0 192c0 17.7 14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM448 448c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32z\"]\n};\nvar faUmbrellaBeach = {\n prefix: 'fas',\n iconName: 'umbrella-beach',\n icon: [576, 512, [127958], \"f5ca\", \"M346.3 271.8l-60.1-21.9L214 448H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H282.1l64.1-176.2zm121.1-.2l-3.3 9.1 67.7 24.6c18.1 6.6 38-4.2 39.6-23.4c6.5-78.5-23.9-155.5-80.8-208.5c2 8 3.2 16.3 3.4 24.8l.2 6c1.8 57-7.3 113.8-26.8 167.4zM462 99.1c-1.1-34.4-22.5-64.8-54.4-77.4c-.9-.4-1.9-.7-2.8-1.1c-33-11.7-69.8-2.4-93.1 23.8l-4 4.5C272.4 88.3 245 134.2 226.8 184l-3.3 9.1L434 269.7l3.3-9.1c18.1-49.8 26.6-102.5 24.9-155.5l-.2-6zM107.2 112.9c-11.1 15.7-2.8 36.8 15.3 43.4l71 25.8 3.3-9.1c19.5-53.6 49.1-103 87.1-145.5l4-4.5c6.2-6.9 13.1-13 20.5-18.2c-79.6 2.5-154.7 42.2-201.2 108z\"]\n};\nvar faHelmetUn = {\n prefix: 'fas',\n iconName: 'helmet-un',\n icon: [512, 512, [], \"e503\", \"M479.5 224C471.2 98.9 367.2 0 240 0C107.5 0 0 107.5 0 240v56.3C0 344.8 39.2 384 87.7 384H200h14.9L343.5 505.4c4.5 4.2 10.4 6.6 16.5 6.6h96c13.3 0 24-10.7 24-24s-10.7-24-24-24H369.5l-1.5-1.5V288h80 32c17.7 0 32-14.3 32-32s-14.3-32-32-32h-.5zM320 417.2l-78-73.7L274.4 288H320V417.2zM285.3 103.1l34.7 52V112c0-8.8 7.2-16 16-16s16 7.2 16 16v96c0 7.1-4.6 13.3-11.4 15.3s-14-.6-17.9-6.4l-34.7-52V208c0 8.8-7.2 16-16 16s-16-7.2-16-16V112c0-7.1 4.6-13.3 11.4-15.3s14 .6 17.9 6.4zM160 112v64c0 8.8 7.2 16 16 16s16-7.2 16-16V112c0-8.8 7.2-16 16-16s16 7.2 16 16v64c0 26.5-21.5 48-48 48s-48-21.5-48-48V112c0-8.8 7.2-16 16-16s16 7.2 16 16z\"]\n};\nvar faBullseye = {\n prefix: 'fas',\n iconName: 'bullseye',\n icon: [512, 512, [], \"f140\", \"M448 256A192 192 0 1 0 64 256a192 192 0 1 0 384 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm256 80a80 80 0 1 0 0-160 80 80 0 1 0 0 160zm0-224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zM224 256a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faBacon = {\n prefix: 'fas',\n iconName: 'bacon',\n icon: [576, 512, [129363], \"f7e5\", \"M439.2 1.2c11.2-3.2 23.2-.1 31.4 8.1L518 56.7l-26.5 7.9c-58 16.6-98.1 39.6-129.6 67.4c-31.2 27.5-53.2 59.1-75.1 90.9l-2.3 3.3C241.6 288.7 195 356.6 72.8 417.7L37.9 435.2 9.4 406.6c-7.3-7.3-10.6-17.6-9-27.8s8.1-18.9 17.3-23.5C136.1 296.2 180.9 231 223.3 169.3l2.3-3.4c21.8-31.8 44.9-64.9 77.7-93.9c33.4-29.5 75.8-53.6 135.9-70.8zM61.8 459l25.4-12.7c129.5-64.7 179.9-138.1 223.8-202l2.2-3.3c22.1-32.1 42.1-60.5 69.9-85.1c27.5-24.3 63.4-45.2 117.3-60.6l0 0 .2-.1 43.1-12.9 23 23c8 8 11.2 19.7 8.3 30.7s-11.3 19.6-22.2 22.7c-51.9 14.8-85.6 34.7-111.1 57.2c-26.1 23-45.1 49.9-67.3 82.1l-2.2 3.2C327.8 365.9 275.5 442 142.3 508.6c-12.3 6.2-27.2 3.7-36.9-6L61.8 459z\"]\n};\nvar faHandPointDown = {\n prefix: 'fas',\n iconName: 'hand-point-down',\n icon: [384, 512, [], \"f0a7\", \"M32 480c0 17.7 14.3 32 32 32s32-14.3 32-32V272H32V480zM224 320c0 17.7 14.3 32 32 32s32-14.3 32-32V256c0-17.7-14.3-32-32-32s-32 14.3-32 32v64zm-64 64c17.7 0 32-14.3 32-32V304c0-17.7-14.3-32-32-32s-32 14.3-32 32v48c0 17.7 14.3 32 32 32zm160-96c0 17.7 14.3 32 32 32s32-14.3 32-32V224c0-17.7-14.3-32-32-32s-32 14.3-32 32v64zm-96-88l0 .6c9.4-5.4 20.3-8.6 32-8.6c13.2 0 25.4 4 35.6 10.8c8.7-24.9 32.5-42.8 60.4-42.8c11.7 0 22.6 3.1 32 8.6V160C384 71.6 312.4 0 224 0H162.3C119.8 0 79.1 16.9 49.1 46.9L37.5 58.5C13.5 82.5 0 115.1 0 149v27c0 35.3 28.7 64 64 64h88c22.1 0 40-17.9 40-40s-17.9-40-40-40H96c-8.8 0-16-7.2-16-16s7.2-16 16-16h56c39.8 0 72 32.2 72 72z\"]\n};\nvar faArrowUpFromBracket = {\n prefix: 'fas',\n iconName: 'arrow-up-from-bracket',\n icon: [448, 512, [], \"e09a\", \"M246.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 109.3 192 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128zM64 352c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 64c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 64c0 17.7-14.3 32-32 32L96 448c-17.7 0-32-14.3-32-32l0-64z\"]\n};\nvar faFolder = {\n prefix: 'fas',\n iconName: 'folder',\n icon: [512, 512, [128193, 128447, 61716, \"folder-blank\"], \"f07b\", \"M64 480H448c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64H288c-10.1 0-19.6-4.7-25.6-12.8L243.2 57.6C231.1 41.5 212.1 32 192 32H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64z\"]\n};\nvar faFolderBlank = faFolder;\nvar faFileWaveform = {\n prefix: 'fas',\n iconName: 'file-waveform',\n icon: [448, 512, [\"file-medical-alt\"], \"f478\", \"M96 0C60.7 0 32 28.7 32 64V288H144c6.1 0 11.6 3.4 14.3 8.8L176 332.2l49.7-99.4c2.7-5.4 8.3-8.8 14.3-8.8s11.6 3.4 14.3 8.8L281.9 288H352c8.8 0 16 7.2 16 16s-7.2 16-16 16H272c-6.1 0-11.6-3.4-14.3-8.8L240 275.8l-49.7 99.4c-2.7 5.4-8.3 8.8-14.3 8.8s-11.6-3.4-14.3-8.8L134.1 320H32V448c0 35.3 28.7 64 64 64H352c35.3 0 64-28.7 64-64V160H288c-17.7 0-32-14.3-32-32V0H96zM288 0V128H416L288 0z\"]\n};\nvar faFileMedicalAlt = faFileWaveform;\nvar faRadiation = {\n prefix: 'fas',\n iconName: 'radiation',\n icon: [512, 512, [], \"f7b9\", \"M216 186.7c-23.9 13.8-40 39.7-40 69.3L32 256C14.3 256-.2 241.6 2 224.1C10.7 154 47.8 92.7 101.3 52c14.1-10.7 33.8-5.3 42.7 10l72 124.7zM256 336c14.6 0 28.2-3.9 40-10.7l72 124.8c8.8 15.3 3.7 35.1-12.6 41.9c-30.6 12.9-64.2 20-99.4 20s-68.9-7.1-99.4-20c-16.3-6.9-21.4-26.6-12.6-41.9l72-124.8c11.8 6.8 25.4 10.7 40 10.7zm224-80l-144 0c0-29.6-16.1-55.5-40-69.3L368 62c8.8-15.3 28.6-20.7 42.7-10c53.6 40.7 90.6 102 99.4 172.1c2.2 17.5-12.4 31.9-30 31.9zM256 208a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faChartSimple = {\n prefix: 'fas',\n iconName: 'chart-simple',\n icon: [448, 512, [], \"e473\", \"M160 80c0-26.5 21.5-48 48-48h32c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H208c-26.5 0-48-21.5-48-48V80zM0 272c0-26.5 21.5-48 48-48H80c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V272zM368 96h32c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H368c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48z\"]\n};\nvar faMarsStroke = {\n prefix: 'fas',\n iconName: 'mars-stroke',\n icon: [512, 512, [9894], \"f229\", \"M376 0c-9.7 0-18.5 5.8-22.2 14.8s-1.7 19.3 5.2 26.2l33.4 33.4L370.3 96.4 345 71c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l25.4 25.4L307.8 159c-28.4-19.5-62.7-31-99.8-31c-97.2 0-176 78.8-176 176s78.8 176 176 176s176-78.8 176-176c0-37-11.4-71.4-31-99.8l28.6-28.6L407 201c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-25.4-25.4 22.1-22.1L471 153c6.9 6.9 17.2 8.9 26.2 5.2s14.8-12.5 14.8-22.2V24c0-13.3-10.7-24-24-24H376zm88 48h0v0l0 0zM96 304a112 112 0 1 1 224 0A112 112 0 1 1 96 304z\"]\n};\nvar faVial = {\n prefix: 'fas',\n iconName: 'vial',\n icon: [512, 512, [129514], \"f492\", \"M342.6 9.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l9.4 9.4L28.1 342.6C10.1 360.6 0 385 0 410.5V416c0 53 43 96 96 96h5.5c25.5 0 49.9-10.1 67.9-28.1L448 205.3l9.4 9.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-32-32-96-96-32-32zM205.3 256L352 109.3 402.7 160l-96 96H205.3z\"]\n};\nvar faGauge = {\n prefix: 'fas',\n iconName: 'gauge',\n icon: [512, 512, [\"dashboard\", \"gauge-med\", \"tachometer-alt-average\"], \"f624\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm320 96c0-26.9-16.5-49.9-40-59.3V88c0-13.3-10.7-24-24-24s-24 10.7-24 24V292.7c-23.5 9.5-40 32.5-40 59.3c0 35.3 28.7 64 64 64s64-28.7 64-64zM144 176a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm-16 80a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm288 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM400 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"]\n};\nvar faDashboard = faGauge;\nvar faGaugeMed = faGauge;\nvar faTachometerAltAverage = faGauge;\nvar faWandMagicSparkles = {\n prefix: 'fas',\n iconName: 'wand-magic-sparkles',\n icon: [576, 512, [\"magic-wand-sparkles\"], \"e2ca\", \"M234.7 42.7L197 56.8c-3 1.1-5 4-5 7.2s2 6.1 5 7.2l37.7 14.1L248.8 123c1.1 3 4 5 7.2 5s6.1-2 7.2-5l14.1-37.7L315 71.2c3-1.1 5-4 5-7.2s-2-6.1-5-7.2L277.3 42.7 263.2 5c-1.1-3-4-5-7.2-5s-6.1 2-7.2 5L234.7 42.7zM46.1 395.4c-18.7 18.7-18.7 49.1 0 67.9l34.6 34.6c18.7 18.7 49.1 18.7 67.9 0L529.9 116.5c18.7-18.7 18.7-49.1 0-67.9L495.3 14.1c-18.7-18.7-49.1-18.7-67.9 0L46.1 395.4zM484.6 82.6l-105 105-23.3-23.3 105-105 23.3 23.3zM7.5 117.2C3 118.9 0 123.2 0 128s3 9.1 7.5 10.8L64 160l21.2 56.5c1.7 4.5 6 7.5 10.8 7.5s9.1-3 10.8-7.5L128 160l56.5-21.2c4.5-1.7 7.5-6 7.5-10.8s-3-9.1-7.5-10.8L128 96 106.8 39.5C105.1 35 100.8 32 96 32s-9.1 3-10.8 7.5L64 96 7.5 117.2zm352 256c-4.5 1.7-7.5 6-7.5 10.8s3 9.1 7.5 10.8L416 416l21.2 56.5c1.7 4.5 6 7.5 10.8 7.5s9.1-3 10.8-7.5L480 416l56.5-21.2c4.5-1.7 7.5-6 7.5-10.8s-3-9.1-7.5-10.8L480 352l-21.2-56.5c-1.7-4.5-6-7.5-10.8-7.5s-9.1 3-10.8 7.5L416 352l-56.5 21.2z\"]\n};\nvar faMagicWandSparkles = faWandMagicSparkles;\nvar faE = {\n prefix: 'fas',\n iconName: 'e',\n icon: [320, 512, [101], \"45\", \"M64 32C28.7 32 0 60.7 0 96V256 416c0 35.3 28.7 64 64 64H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H64V288H224c17.7 0 32-14.3 32-32s-14.3-32-32-32H64V96H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H64z\"]\n};\nvar faPenClip = {\n prefix: 'fas',\n iconName: 'pen-clip',\n icon: [512, 512, [\"pen-alt\"], \"f305\", \"M453.3 19.3l39.4 39.4c25 25 25 65.5 0 90.5l-52.1 52.1 0 0-1-1 0 0-16-16-96-96-17-17 52.1-52.1c25-25 65.5-25 90.5 0zM241 114.9c-9.4-9.4-24.6-9.4-33.9 0L105 217c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9L173.1 81c28.1-28.1 73.7-28.1 101.8 0L288 94.1l17 17 96 96 16 16 1 1-17 17L229.5 412.5c-48 48-109.2 80.8-175.8 94.1l-25 5c-7.9 1.6-16-.9-21.7-6.6s-8.1-13.8-6.6-21.7l5-25c13.3-66.6 46.1-127.8 94.1-175.8L254.1 128 241 114.9z\"]\n};\nvar faPenAlt = faPenClip;\nvar faBridgeCircleExclamation = {\n prefix: 'fas',\n iconName: 'bridge-circle-exclamation',\n icon: [640, 512, [], \"e4ca\", \"M64 32C46.3 32 32 46.3 32 64s14.3 32 32 32h40v64H32V288c53 0 96 43 96 96v64c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V384c0-53 43-96 96-96c6.3 0 12.4 .6 18.3 1.7C367.1 231.8 426.9 192 496 192c42.5 0 81.6 15.1 112 40.2V160H536V96h40c17.7 0 32-14.3 32-32s-14.3-32-32-32H64zM488 96v64H408V96h80zM360 96v64H280V96h80zM232 96v64H152V96h80zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faUser = {\n prefix: 'fas',\n iconName: 'user',\n icon: [448, 512, [128100, 62144], \"f007\", \"M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304H178.3z\"]\n};\nvar faSchoolCircleCheck = {\n prefix: 'fas',\n iconName: 'school-circle-check',\n icon: [640, 512, [], \"e56b\", \"M337.8 5.4C327-1.8 313-1.8 302.2 5.4L166.3 96H48C21.5 96 0 117.5 0 144V464c0 26.5 21.5 48 48 48H320v0H256V416c0-35.3 28.7-64 64-64l.3 0h.5c3.4-37.7 18.7-72.1 42.2-99.1C350.2 260 335.6 264 320 264c-48.6 0-88-39.4-88-88s39.4-88 88-88s88 39.4 88 88c0 18.3-5.6 35.3-15.1 49.4c29-21 64.6-33.4 103.1-33.4c59.5 0 112.1 29.6 144 74.8V144c0-26.5-21.5-48-48-48H473.7L337.8 5.4zM96 192h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16V208c0-8.8 7.2-16 16-16zm0 128h32c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16V336c0-8.8 7.2-16 16-16zM320 128c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H336V144c0-8.8-7.2-16-16-16zM640 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-99.3-43.3c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L480 385.4l60.7-60.7z\"]\n};\nvar faDumpster = {\n prefix: 'fas',\n iconName: 'dumpster',\n icon: [576, 512, [], \"f793\", \"M49.7 32c-10.5 0-19.8 6.9-22.9 16.9L.9 133c-.6 2-.9 4.1-.9 6.1C0 150.7 9.3 160 20.9 160h94L140.5 32H49.7zM272 160V32H173.1L147.5 160H272zm32 0H428.5L402.9 32H304V160zm157.1 0h94c11.5 0 20.9-9.3 20.9-20.9c0-2.1-.3-4.1-.9-6.1L549.2 48.9C546.1 38.9 536.8 32 526.3 32H435.5l25.6 128zM32 192l4 32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H44L64 448c0 17.7 14.3 32 32 32s32-14.3 32-32H448c0 17.7 14.3 32 32 32s32-14.3 32-32l20-160h12c17.7 0 32-14.3 32-32s-14.3-32-32-32h-4l4-32H32z\"]\n};\nvar faVanShuttle = {\n prefix: 'fas',\n iconName: 'van-shuttle',\n icon: [640, 512, [128656, \"shuttle-van\"], \"f5b6\", \"M64 104v88h96V96H72c-4.4 0-8 3.6-8 8zm482 88L465.1 96H384v96H546zm-226 0V96H224v96h96zM592 384H576c0 53-43 96-96 96s-96-43-96-96H256c0 53-43 96-96 96s-96-43-96-96H48c-26.5 0-48-21.5-48-48V104C0 64.2 32.2 32 72 32H192 352 465.1c18.9 0 36.8 8.3 49 22.8L625 186.5c9.7 11.5 15 26.1 15 41.2V336c0 26.5-21.5 48-48 48zm-64 0a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM160 432a48 48 0 1 0 0-96 48 48 0 1 0 0 96z\"]\n};\nvar faShuttleVan = faVanShuttle;\nvar faBuildingUser = {\n prefix: 'fas',\n iconName: 'building-user',\n icon: [640, 512, [], \"e4da\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h89.9c-6.3-10.2-9.9-22.2-9.9-35.1c0-46.9 25.8-87.8 64-109.2V271.8 48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zM576 272a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM352 477.1c0 19.3 15.6 34.9 34.9 34.9H605.1c19.3 0 34.9-15.6 34.9-34.9c0-51.4-41.7-93.1-93.1-93.1H445.1c-51.4 0-93.1 41.7-93.1 93.1z\"]\n};\nvar faSquareCaretLeft = {\n prefix: 'fas',\n iconName: 'square-caret-left',\n icon: [448, 512, [\"caret-square-left\"], \"f191\", \"M0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32C28.7 32 0 60.7 0 96L0 416zM128 256c0-6.7 2.8-13 7.7-17.6l112-104c7-6.5 17.2-8.2 25.9-4.4s14.4 12.5 14.4 22l0 208c0 9.5-5.7 18.2-14.4 22s-18.9 2.1-25.9-4.4l-112-104c-4.9-4.5-7.7-10.9-7.7-17.6z\"]\n};\nvar faCaretSquareLeft = faSquareCaretLeft;\nvar faHighlighter = {\n prefix: 'fas',\n iconName: 'highlighter',\n icon: [576, 512, [], \"f591\", \"M315 315l158.4-215L444.1 70.6 229 229 315 315zm-187 5l0 0V248.3c0-15.3 7.2-29.6 19.5-38.6L420.6 8.4C428 2.9 437 0 446.2 0c11.4 0 22.4 4.5 30.5 12.6l54.8 54.8c8.1 8.1 12.6 19 12.6 30.5c0 9.2-2.9 18.2-8.4 25.6L334.4 396.5c-9 12.3-23.4 19.5-38.6 19.5H224l-25.4 25.4c-12.5 12.5-32.8 12.5-45.3 0l-50.7-50.7c-12.5-12.5-12.5-32.8 0-45.3L128 320zM7 466.3l63-63 70.6 70.6-31 31c-4.5 4.5-10.6 7-17 7H24c-13.3 0-24-10.7-24-24v-4.7c0-6.4 2.5-12.5 7-17z\"]\n};\nvar faKey = {\n prefix: 'fas',\n iconName: 'key',\n icon: [512, 512, [128273], \"f084\", \"M336 352c97.2 0 176-78.8 176-176S433.2 0 336 0S160 78.8 160 176c0 18.7 2.9 36.8 8.3 53.7L7 391c-4.5 4.5-7 10.6-7 17v80c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24V448h40c13.3 0 24-10.7 24-24V384h40c6.4 0 12.5-2.5 17-7l33.3-33.3c16.9 5.4 35 8.3 53.7 8.3zM376 96a40 40 0 1 1 0 80 40 40 0 1 1 0-80z\"]\n};\nvar faBullhorn = {\n prefix: 'fas',\n iconName: 'bullhorn',\n icon: [512, 512, [128226, 128363], \"f0a1\", \"M480 32c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9L381.7 53c-48 48-113.1 75-181 75H192 160 64c-35.3 0-64 28.7-64 64v96c0 35.3 28.7 64 64 64l0 128c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V352l8.7 0c67.9 0 133 27 181 75l43.6 43.6c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6V300.4c18.6-8.8 32-32.5 32-60.4s-13.4-51.6-32-60.4V32zm-64 76.7V240 371.3C357.2 317.8 280.5 288 200.7 288H192V192h8.7c79.8 0 156.5-29.8 215.3-83.3z\"]\n};\nvar faGlobe = {\n prefix: 'fas',\n iconName: 'globe',\n icon: [512, 512, [127760], \"f0ac\", \"M352 256c0 22.2-1.2 43.6-3.3 64H163.3c-2.2-20.4-3.3-41.8-3.3-64s1.2-43.6 3.3-64H348.7c2.2 20.4 3.3 41.8 3.3 64zm28.8-64H503.9c5.3 20.5 8.1 41.9 8.1 64s-2.8 43.5-8.1 64H380.8c2.1-20.6 3.2-42 3.2-64s-1.1-43.4-3.2-64zm112.6-32H376.7c-10-63.9-29.8-117.4-55.3-151.6c78.3 20.7 142 77.5 171.9 151.6zm-149.1 0H167.7c6.1-36.4 15.5-68.6 27-94.7c10.5-23.6 22.2-40.7 33.5-51.5C239.4 3.2 248.7 0 256 0s16.6 3.2 27.8 13.8c11.3 10.8 23 27.9 33.5 51.5c11.6 26 20.9 58.2 27 94.7zm-209 0H18.6C48.6 85.9 112.2 29.1 190.6 8.4C165.1 42.6 145.3 96.1 135.3 160zM8.1 192H131.2c-2.1 20.6-3.2 42-3.2 64s1.1 43.4 3.2 64H8.1C2.8 299.5 0 278.1 0 256s2.8-43.5 8.1-64zM194.7 446.6c-11.6-26-20.9-58.2-27-94.6H344.3c-6.1 36.4-15.5 68.6-27 94.6c-10.5 23.6-22.2 40.7-33.5 51.5C272.6 508.8 263.3 512 256 512s-16.6-3.2-27.8-13.8c-11.3-10.8-23-27.9-33.5-51.5zM135.3 352c10 63.9 29.8 117.4 55.3 151.6C112.2 482.9 48.6 426.1 18.6 352H135.3zm358.1 0c-30 74.1-93.6 130.9-171.9 151.6c25.5-34.2 45.2-87.7 55.3-151.6H493.4z\"]\n};\nvar faSynagogue = {\n prefix: 'fas',\n iconName: 'synagogue',\n icon: [640, 512, [128333], \"f69b\", \"M309.8 3.7c5.9-4.9 14.6-4.9 20.5 0l121 100.8C469.5 119.7 480 142.2 480 166V280.1 512H464 352V416c0-17.7-14.3-32-32-32s-32 14.3-32 32v96H176 160V280.1 166c0-23.7 10.5-46.3 28.8-61.5L309.8 3.7zM512 512V244.5l28.1-31.2c3-3.4 7.4-5.3 11.9-5.3s8.9 1.9 11.9 5.3l63.8 70.9c7.9 8.8 12.3 20.3 12.3 32.1V448c0 35.3-28.7 64-64 64H512zM128 244.5V512H64c-35.3 0-64-28.7-64-64V316.3c0-11.9 4.4-23.3 12.3-32.1l63.8-70.9c3-3.4 7.4-5.3 11.9-5.3s8.9 1.9 11.9 5.3L128 244.5zM327 124.3c-3.1-5.4-10.9-5.4-13.9 0l-15.9 28.1-32.3-.3c-6.2-.1-10.1 6.7-7 12.1L274.3 192l-16.4 27.8c-3.2 5.4 .7 12.1 7 12.1l32.3-.3L313 259.7c3.1 5.4 10.9 5.4 13.9 0l15.9-28.1 32.3 .3c6.2 .1 10.1-6.7 7-12.1L365.7 192l16.4-27.8c3.2-5.4-.7-12.1-7-12.1l-32.3 .3L327 124.3z\"]\n};\nvar faPersonHalfDress = {\n prefix: 'fas',\n iconName: 'person-half-dress',\n icon: [320, 512, [], \"e548\", \"M160 0a48 48 0 1 1 0 96 48 48 0 1 1 0-96zm8 352V128h6.9c33.7 0 64.9 17.7 82.3 46.6l58.3 97c9.1 15.1 4.2 34.8-10.9 43.9s-34.8 4.2-43.9-10.9L232 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352h0zM58.2 182.3c19.9-33.1 55.3-53.5 93.8-54.3V384h0v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384H70.2c-10.9 0-18.6-10.7-15.2-21.1L93.3 248.1 59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l53.6-89.2z\"]\n};\nvar faRoadBridge = {\n prefix: 'fas',\n iconName: 'road-bridge',\n icon: [640, 512, [], \"e563\", \"M352 0H608c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32H352c-17.7 0-32-14.3-32-32V32c0-17.7 14.3-32 32-32zM480 200c-13.3 0-24 10.7-24 24v64c0 13.3 10.7 24 24 24s24-10.7 24-24V224c0-13.3-10.7-24-24-24zm24 184c0-13.3-10.7-24-24-24s-24 10.7-24 24v64c0 13.3 10.7 24 24 24s24-10.7 24-24V384zM480 40c-13.3 0-24 10.7-24 24v64c0 13.3 10.7 24 24 24s24-10.7 24-24V64c0-13.3-10.7-24-24-24zM32 96H288v64H248v64h40v96c-53 0-96 43-96 96v64c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32V416c0-53-43-96-96-96V224H72V160H32c-17.7 0-32-14.3-32-32s14.3-32 32-32zm168 64H120v64h80V160z\"]\n};\nvar faLocationArrow = {\n prefix: 'fas',\n iconName: 'location-arrow',\n icon: [448, 512, [], \"f124\", \"M429.6 92.1c4.9-11.9 2.1-25.6-7-34.7s-22.8-11.9-34.7-7l-352 144c-14.2 5.8-22.2 20.8-19.3 35.8s16.1 25.8 31.4 25.8H224V432c0 15.3 10.8 28.4 25.8 31.4s30-5.1 35.8-19.3l144-352z\"]\n};\nvar faC = {\n prefix: 'fas',\n iconName: 'c',\n icon: [384, 512, [99], \"43\", \"M329.1 142.9c-62.5-62.5-155.8-62.5-218.3 0s-62.5 163.8 0 226.3s155.8 62.5 218.3 0c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3c-87.5 87.5-221.3 87.5-308.8 0s-87.5-229.3 0-316.8s221.3-87.5 308.8 0c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0z\"]\n};\nvar faTabletButton = {\n prefix: 'fas',\n iconName: 'tablet-button',\n icon: [448, 512, [], \"f10a\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64zM224 400a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faBuildingLock = {\n prefix: 'fas',\n iconName: 'building-lock',\n icon: [576, 512, [], \"e4d6\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h88.6c-5.4-9.4-8.6-20.3-8.6-32V352c0-23.7 12.9-44.4 32-55.4V272c0-30.5 12.2-58.2 32-78.4V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zM464 240c17.7 0 32 14.3 32 32v48H432V272c0-17.7 14.3-32 32-32zm-80 32v48c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H544c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32V272c0-44.2-35.8-80-80-80s-80 35.8-80 80z\"]\n};\nvar faPizzaSlice = {\n prefix: 'fas',\n iconName: 'pizza-slice',\n icon: [512, 512, [], \"f818\", \"M169.7 .9c-22.8-1.6-41.9 14-47.5 34.7L110.4 80c.5 0 1.1 0 1.6 0c176.7 0 320 143.3 320 320c0 .5 0 1.1 0 1.6l44.4-11.8c20.8-5.5 36.3-24.7 34.7-47.5C498.5 159.5 352.5 13.5 169.7 .9zM399.8 410.2c.1-3.4 .2-6.8 .2-10.2c0-159.1-128.9-288-288-288c-3.4 0-6.8 .1-10.2 .2L.5 491.9c-1.5 5.5 .1 11.4 4.1 15.4s9.9 5.6 15.4 4.1L399.8 410.2zM176 208a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm64 128a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM96 384a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faMoneyBillWave = {\n prefix: 'fas',\n iconName: 'money-bill-wave',\n icon: [576, 512, [], \"f53a\", \"M0 112.5V422.3c0 18 10.1 35 27 41.3c87 32.5 174 10.3 261-11.9c79.8-20.3 159.6-40.7 239.3-18.9c23 6.3 48.7-9.5 48.7-33.4V89.7c0-18-10.1-35-27-41.3C462 15.9 375 38.1 288 60.3C208.2 80.6 128.4 100.9 48.7 79.1C25.6 72.8 0 88.6 0 112.5zM288 352c-44.2 0-80-43-80-96s35.8-96 80-96s80 43 80 96s-35.8 96-80 96zM64 352c35.3 0 64 28.7 64 64H64V352zm64-208c0 35.3-28.7 64-64 64V144h64zM512 304v64H448c0-35.3 28.7-64 64-64zM448 96h64v64c-35.3 0-64-28.7-64-64z\"]\n};\nvar faChartArea = {\n prefix: 'fas',\n iconName: 'chart-area',\n icon: [512, 512, [\"area-chart\"], \"f1fe\", \"M64 64c0-17.7-14.3-32-32-32S0 46.3 0 64V400c0 44.2 35.8 80 80 80H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H80c-8.8 0-16-7.2-16-16V64zm96 288H448c17.7 0 32-14.3 32-32V251.8c0-7.6-2.7-15-7.7-20.8l-65.8-76.8c-12.1-14.2-33.7-15-46.9-1.8l-21 21c-10 10-26.4 9.2-35.4-1.6l-39.2-47c-12.6-15.1-35.7-15.4-48.7-.6L135.9 215c-5.1 5.8-7.9 13.3-7.9 21.1v84c0 17.7 14.3 32 32 32z\"]\n};\nvar faAreaChart = faChartArea;\nvar faHouseFlag = {\n prefix: 'fas',\n iconName: 'house-flag',\n icon: [640, 512, [], \"e50d\", \"M480 0c-17.7 0-32 14.3-32 32V192 512h64V192H624c8.8 0 16-7.2 16-16V48c0-8.8-7.2-16-16-16H512c0-17.7-14.3-32-32-32zM416 159L276.8 39.7c-12-10.3-29.7-10.3-41.7 0l-224 192C1 240.4-2.7 254.5 2 267.1S18.6 288 32 288H64V480c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V384c0-17.7 14.3-32 32-32h64c17.7 0 32 14.3 32 32v96c0 17.7 14.3 32 32 32h64.7l.2 0h-1V159z\"]\n};\nvar faPersonCircleMinus = {\n prefix: 'fas',\n iconName: 'person-circle-minus',\n icon: [576, 512, [], \"e540\", \"M112 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V256.9L59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c17.4-28.9 48.6-46.6 82.3-46.6h29.7c33.7 0 64.9 17.7 82.3 46.6l44.9 74.7c-16.1 17.6-28.6 38.5-36.6 61.5c-1.9-1.8-3.5-3.9-4.9-6.3L232 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H152zm136 16a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm224 0c0-8.8-7.2-16-16-16H368c-8.8 0-16 7.2-16 16s7.2 16 16 16H496c8.8 0 16-7.2 16-16z\"]\n};\nvar faBan = {\n prefix: 'fas',\n iconName: 'ban',\n icon: [512, 512, [128683, \"cancel\"], \"f05e\", \"M367.2 412.5L99.5 144.8C77.1 176.1 64 214.5 64 256c0 106 86 192 192 192c41.5 0 79.9-13.1 111.2-35.5zm45.3-45.3C434.9 335.9 448 297.5 448 256c0-106-86-192-192-192c-41.5 0-79.9 13.1-111.2 35.5L412.5 367.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z\"]\n};\nvar faCancel = faBan;\nvar faCameraRotate = {\n prefix: 'fas',\n iconName: 'camera-rotate',\n icon: [640, 512, [], \"e0d8\", \"M213.1 64.8L202.7 96H128c-35.3 0-64 28.7-64 64V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64H437.3L426.9 64.8C420.4 45.2 402.1 32 381.4 32H258.6c-20.7 0-39 13.2-45.5 32.8zM448 256c0 8.8-7.2 16-16 16H355.3c-6.2 0-11.3-5.1-11.3-11.3c0-3 1.2-5.9 3.3-8L371 229c-13.6-13.4-31.9-21-51-21c-19.2 0-37.7 7.6-51.3 21.3L249 249c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l19.7-19.7C257.4 172.7 288 160 320 160c31.8 0 62.4 12.6 85 35l23.7-23.7c2.1-2.1 5-3.3 8-3.3c6.2 0 11.3 5.1 11.3 11.3V256zM192 320c0-8.8 7.2-16 16-16h76.7c6.2 0 11.3 5.1 11.3 11.3c0 3-1.2 5.9-3.3 8L269 347c13.6 13.4 31.9 21 51 21c19.2 0 37.7-7.6 51.3-21.3L391 327c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-19.7 19.7C382.6 403.3 352 416 320 416c-31.8 0-62.4-12.6-85-35l-23.7 23.7c-2.1 2.1-5 3.3-8 3.3c-6.2 0-11.3-5.1-11.3-11.3V320z\"]\n};\nvar faSprayCanSparkles = {\n prefix: 'fas',\n iconName: 'spray-can-sparkles',\n icon: [512, 512, [\"air-freshener\"], \"f5d0\", \"M96 32v96H224V32c0-17.7-14.3-32-32-32H128C110.3 0 96 14.3 96 32zm0 128c-53 0-96 43-96 96V464c0 26.5 21.5 48 48 48H272c26.5 0 48-21.5 48-48V256c0-53-43-96-96-96H96zm64 96a80 80 0 1 1 0 160 80 80 0 1 1 0-160zM384 48c0-1.4-1-3-2.2-3.6L352 32 339.6 2.2C339 1 337.4 0 336 0s-3 1-3.6 2.2L320 32 290.2 44.4C289 45 288 46.6 288 48c0 1.4 1 3 2.2 3.6L320 64l12.4 29.8C333 95 334.6 96 336 96s3-1 3.6-2.2L352 64l29.8-12.4C383 51 384 49.4 384 48zm76.4 45.8C461 95 462.6 96 464 96s3-1 3.6-2.2L480 64l29.8-12.4C511 51 512 49.4 512 48c0-1.4-1-3-2.2-3.6L480 32 467.6 2.2C467 1 465.4 0 464 0s-3 1-3.6 2.2L448 32 418.2 44.4C417 45 416 46.6 416 48c0 1.4 1 3 2.2 3.6L448 64l12.4 29.8zm7.2 100.4c-.6-1.2-2.2-2.2-3.6-2.2s-3 1-3.6 2.2L448 224l-29.8 12.4c-1.2 .6-2.2 2.2-2.2 3.6c0 1.4 1 3 2.2 3.6L448 256l12.4 29.8c.6 1.2 2.2 2.2 3.6 2.2s3-1 3.6-2.2L480 256l29.8-12.4c1.2-.6 2.2-2.2 2.2-3.6c0-1.4-1-3-2.2-3.6L480 224l-12.4-29.8zM448 144c0-1.4-1-3-2.2-3.6L416 128 403.6 98.2C403 97 401.4 96 400 96s-3 1-3.6 2.2L384 128l-29.8 12.4c-1.2 .6-2.2 2.2-2.2 3.6c0 1.4 1 3 2.2 3.6L384 160l12.4 29.8c.6 1.2 2.2 2.2 3.6 2.2s3-1 3.6-2.2L416 160l29.8-12.4c1.2-.6 2.2-2.2 2.2-3.6z\"]\n};\nvar faAirFreshener = faSprayCanSparkles;\nvar faStar = {\n prefix: 'fas',\n iconName: 'star',\n icon: [576, 512, [11088, 61446], \"f005\", \"M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z\"]\n};\nvar faRepeat = {\n prefix: 'fas',\n iconName: 'repeat',\n icon: [512, 512, [128257], \"f363\", \"M0 224c0 17.7 14.3 32 32 32s32-14.3 32-32c0-53 43-96 96-96H320v32c0 12.9 7.8 24.6 19.8 29.6s25.7 2.2 34.9-6.9l64-64c12.5-12.5 12.5-32.8 0-45.3l-64-64c-9.2-9.2-22.9-11.9-34.9-6.9S320 19.1 320 32V64H160C71.6 64 0 135.6 0 224zm512 64c0-17.7-14.3-32-32-32s-32 14.3-32 32c0 53-43 96-96 96H192V352c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9l-64 64c-12.5 12.5-12.5 32.8 0 45.3l64 64c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6V448H352c88.4 0 160-71.6 160-160z\"]\n};\nvar faCross = {\n prefix: 'fas',\n iconName: 'cross',\n icon: [384, 512, [128327, 10013], \"f654\", \"M176 0c-26.5 0-48 21.5-48 48v80H48c-26.5 0-48 21.5-48 48v32c0 26.5 21.5 48 48 48h80V464c0 26.5 21.5 48 48 48h32c26.5 0 48-21.5 48-48V256h80c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48H256V48c0-26.5-21.5-48-48-48H176z\"]\n};\nvar faBox = {\n prefix: 'fas',\n iconName: 'box',\n icon: [448, 512, [128230], \"f466\", \"M50.7 58.5L0 160H208V32H93.7C75.5 32 58.9 42.3 50.7 58.5zM240 160H448L397.3 58.5C389.1 42.3 372.5 32 354.3 32H240V160zm208 32H0V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192z\"]\n};\nvar faVenusMars = {\n prefix: 'fas',\n iconName: 'venus-mars',\n icon: [640, 512, [9892], \"f228\", \"M176 288a112 112 0 1 0 0-224 112 112 0 1 0 0 224zM352 176c0 86.3-62.1 158.1-144 173.1V384h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H208v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H112c-17.7 0-32-14.3-32-32s14.3-32 32-32h32V349.1C62.1 334.1 0 262.3 0 176C0 78.8 78.8 0 176 0s176 78.8 176 176zM271.9 360.6c19.3-10.1 36.9-23.1 52.1-38.4c20 18.5 46.7 29.8 76.1 29.8c61.9 0 112-50.1 112-112s-50.1-112-112-112c-7.2 0-14.3 .7-21.1 2c-4.9-21.5-13-41.7-24-60.2C369.3 66 384.4 64 400 64c37 0 71.4 11.4 99.8 31l20.6-20.6L487 41c-6.9-6.9-8.9-17.2-5.2-26.2S494.3 0 504 0H616c13.3 0 24 10.7 24 24V136c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-33.4-33.4L545 140.2c19.5 28.4 31 62.7 31 99.8c0 97.2-78.8 176-176 176c-50.5 0-96-21.3-128.1-55.4z\"]\n};\nvar faArrowPointer = {\n prefix: 'fas',\n iconName: 'arrow-pointer',\n icon: [320, 512, [\"mouse-pointer\"], \"f245\", \"M0 55.2V426c0 12.2 9.9 22 22 22c6.3 0 12.4-2.7 16.6-7.5L121.2 346l58.1 116.3c7.9 15.8 27.1 22.2 42.9 14.3s22.2-27.1 14.3-42.9L179.8 320H297.9c12.2 0 22.1-9.9 22.1-22.1c0-6.3-2.7-12.3-7.4-16.5L38.6 37.9C34.3 34.1 28.9 32 23.2 32C10.4 32 0 42.4 0 55.2z\"]\n};\nvar faMousePointer = faArrowPointer;\nvar faMaximize = {\n prefix: 'fas',\n iconName: 'maximize',\n icon: [512, 512, [\"expand-arrows-alt\"], \"f31e\", \"M200 32H56C42.7 32 32 42.7 32 56V200c0 9.7 5.8 18.5 14.8 22.2s19.3 1.7 26.2-5.2l40-40 79 79-79 79L73 295c-6.9-6.9-17.2-8.9-26.2-5.2S32 302.3 32 312V456c0 13.3 10.7 24 24 24H200c9.7 0 18.5-5.8 22.2-14.8s1.7-19.3-5.2-26.2l-40-40 79-79 79 79-40 40c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8H456c13.3 0 24-10.7 24-24V312c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2l-40 40-79-79 79-79 40 40c6.9 6.9 17.2 8.9 26.2 5.2s14.8-12.5 14.8-22.2V56c0-13.3-10.7-24-24-24H312c-9.7 0-18.5 5.8-22.2 14.8s-1.7 19.3 5.2 26.2l40 40-79 79-79-79 40-40c6.9-6.9 8.9-17.2 5.2-26.2S209.7 32 200 32z\"]\n};\nvar faExpandArrowsAlt = faMaximize;\nvar faChargingStation = {\n prefix: 'fas',\n iconName: 'charging-station',\n icon: [576, 512, [], \"f5e7\", \"M96 0C60.7 0 32 28.7 32 64V448c-17.7 0-32 14.3-32 32s14.3 32 32 32H320c17.7 0 32-14.3 32-32s-14.3-32-32-32V304h16c22.1 0 40 17.9 40 40v32c0 39.8 32.2 72 72 72s72-32.2 72-72V252.3c32.5-10.2 56-40.5 56-76.3V144c0-8.8-7.2-16-16-16H544V80c0-8.8-7.2-16-16-16s-16 7.2-16 16v48H480V80c0-8.8-7.2-16-16-16s-16 7.2-16 16v48H432c-8.8 0-16 7.2-16 16v32c0 35.8 23.5 66.1 56 76.3V376c0 13.3-10.7 24-24 24s-24-10.7-24-24V344c0-48.6-39.4-88-88-88H320V64c0-35.3-28.7-64-64-64H96zM216.9 82.7c6 4 8.5 11.5 6.3 18.3l-25 74.9H256c6.7 0 12.7 4.2 15 10.4s.5 13.3-4.6 17.7l-112 96c-5.5 4.7-13.4 5.1-19.3 1.1s-8.5-11.5-6.3-18.3l25-74.9H96c-6.7 0-12.7-4.2-15-10.4s-.5-13.3 4.6-17.7l112-96c5.5-4.7 13.4-5.1 19.3-1.1z\"]\n};\nvar faShapes = {\n prefix: 'fas',\n iconName: 'shapes',\n icon: [512, 512, [\"triangle-circle-square\"], \"f61f\", \"M315.4 15.5C309.7 5.9 299.2 0 288 0s-21.7 5.9-27.4 15.5l-96 160c-5.9 9.9-6.1 22.2-.4 32.2s16.3 16.2 27.8 16.2H384c11.5 0 22.2-6.2 27.8-16.2s5.5-22.3-.4-32.2l-96-160zM288 312V456c0 22.1 17.9 40 40 40H472c22.1 0 40-17.9 40-40V312c0-22.1-17.9-40-40-40H328c-22.1 0-40 17.9-40 40zM128 512a128 128 0 1 0 0-256 128 128 0 1 0 0 256z\"]\n};\nvar faTriangleCircleSquare = faShapes;\nvar faShuffle = {\n prefix: 'fas',\n iconName: 'shuffle',\n icon: [512, 512, [128256, \"random\"], \"f074\", \"M403.8 34.4c12-5 25.7-2.2 34.9 6.9l64 64c6 6 9.4 14.1 9.4 22.6s-3.4 16.6-9.4 22.6l-64 64c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6V160H352c-10.1 0-19.6 4.7-25.6 12.8L284 229.3 244 176l31.2-41.6C293.3 110.2 321.8 96 352 96h32V64c0-12.9 7.8-24.6 19.8-29.6zM164 282.7L204 336l-31.2 41.6C154.7 401.8 126.2 416 96 416H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H96c10.1 0 19.6-4.7 25.6-12.8L164 282.7zm274.6 188c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6V416H352c-30.2 0-58.7-14.2-76.8-38.4L121.6 172.8c-6-8.1-15.5-12.8-25.6-12.8H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H96c30.2 0 58.7 14.2 76.8 38.4L326.4 339.2c6 8.1 15.5 12.8 25.6 12.8h32V320c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l64 64c6 6 9.4 14.1 9.4 22.6s-3.4 16.6-9.4 22.6l-64 64z\"]\n};\nvar faRandom = faShuffle;\nvar faPersonRunning = {\n prefix: 'fas',\n iconName: 'person-running',\n icon: [448, 512, [127939, \"running\"], \"f70c\", \"M320 48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM125.7 175.5c9.9-9.9 23.4-15.5 37.5-15.5c1.9 0 3.8 .1 5.6 .3L137.6 254c-9.3 28 1.7 58.8 26.8 74.5l86.2 53.9-25.4 88.8c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l28.7-100.4c5.9-20.6-2.6-42.6-20.7-53.9L238 299l30.9-82.4 5.1 12.3C289 264.7 323.9 288 362.7 288H384c17.7 0 32-14.3 32-32s-14.3-32-32-32H362.7c-12.9 0-24.6-7.8-29.5-19.7l-6.3-15c-14.6-35.1-44.1-61.9-80.5-73.1l-48.7-15c-11.1-3.4-22.7-5.2-34.4-5.2c-31 0-60.8 12.3-82.7 34.3L57.4 153.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l23.1-23.1zM91.2 352H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h69.6c19 0 36.2-11.2 43.9-28.5L157 361.6l-9.5-6c-17.5-10.9-30.5-26.8-37.9-44.9L91.2 352z\"]\n};\nvar faRunning = faPersonRunning;\nvar faMobileRetro = {\n prefix: 'fas',\n iconName: 'mobile-retro',\n icon: [320, 512, [], \"e527\", \"M0 64C0 28.7 28.7 0 64 0H256c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zm64 96v64c0 17.7 14.3 32 32 32H224c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32H96c-17.7 0-32 14.3-32 32zM80 352a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm24 56a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zm56-56a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm24 56a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zm56-56a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm24 56a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zM128 48c-8.8 0-16 7.2-16 16s7.2 16 16 16h64c8.8 0 16-7.2 16-16s-7.2-16-16-16H128z\"]\n};\nvar faGripLinesVertical = {\n prefix: 'fas',\n iconName: 'grip-lines-vertical',\n icon: [192, 512, [], \"f7a5\", \"M64 64c0-17.7-14.3-32-32-32S0 46.3 0 64V448c0 17.7 14.3 32 32 32s32-14.3 32-32V64zm128 0c0-17.7-14.3-32-32-32s-32 14.3-32 32V448c0 17.7 14.3 32 32 32s32-14.3 32-32V64z\"]\n};\nvar faSpider = {\n prefix: 'fas',\n iconName: 'spider',\n icon: [512, 512, [128375], \"f717\", \"M158.4 32.6c4.8-12.4-1.4-26.3-13.8-31s-26.3 1.4-31 13.8L81.1 100c-7.9 20.7-3 44.1 12.7 59.7l57.4 57.4L70.8 190.3c-2.4-.8-4.3-2.7-5.1-5.1L46.8 128.4C42.6 115.8 29 109 16.4 113.2S-3 131 1.2 143.6l18.9 56.8c5.6 16.7 18.7 29.8 35.4 35.4L116.1 256 55.6 276.2c-16.7 5.6-29.8 18.7-35.4 35.4L1.2 368.4C-3 381 3.8 394.6 16.4 398.8s26.2-2.6 30.4-15.2l18.9-56.8c.8-2.4 2.7-4.3 5.1-5.1l80.4-26.8L93.7 352.3C78.1 368 73.1 391.4 81.1 412l32.5 84.6c4.8 12.4 18.6 18.5 31 13.8s18.5-18.6 13.8-31l-32.5-84.6c-1.1-3-.4-6.3 1.8-8.5L160 353.9c1 52.1 43.6 94.1 96 94.1s95-41.9 96-94.1l32.3 32.3c2.2 2.2 2.9 5.6 1.8 8.5l-32.5 84.6c-4.8 12.4 1.4 26.3 13.8 31s26.3-1.4 31-13.8L430.9 412c7.9-20.7 3-44.1-12.7-59.7l-57.4-57.4 80.4 26.8c2.4 .8 4.3 2.7 5.1 5.1l18.9 56.8c4.2 12.6 17.8 19.4 30.4 15.2s19.4-17.8 15.2-30.4l-18.9-56.8c-5.6-16.7-18.7-29.8-35.4-35.4L395.9 256l60.5-20.2c16.7-5.6 29.8-18.7 35.4-35.4l18.9-56.8c4.2-12.6-2.6-26.2-15.2-30.4s-26.2 2.6-30.4 15.2l-18.9 56.8c-.8 2.4-2.7 4.3-5.1 5.1l-80.4 26.8 57.4-57.4c15.6-15.6 20.6-39 12.7-59.7L398.4 15.4C393.6 3 379.8-3.2 367.4 1.6s-18.5 18.6-13.8 31l32.5 84.6c1.1 3 .4 6.3-1.8 8.5L336 174.1V160c0-31.8-18.6-59.3-45.5-72.2c-9.1-4.4-18.5 3.3-18.5 13.4V112c0 8.8-7.2 16-16 16s-16-7.2-16-16V101.2c0-10.1-9.4-17.7-18.5-13.4C194.6 100.7 176 128.2 176 160v14.1l-48.3-48.3c-2.2-2.2-2.9-5.6-1.8-8.5l32.5-84.6z\"]\n};\nvar faHandsBound = {\n prefix: 'fas',\n iconName: 'hands-bound',\n icon: [640, 512, [], \"e4f9\", \"M96 32C96 14.3 81.7 0 64 0S32 14.3 32 32V96v59.1 .7V192v21.9c0 14.2 5.1 27.9 14.3 38.7L131.6 352H128c-13.3 0-24 10.7-24 24s10.7 24 24 24h32H288h64H480h32c13.3 0 24-10.7 24-24s-10.7-24-24-24h-3.6l85.3-99.5c9.2-10.8 14.3-24.5 14.3-38.7V192 155.8v-.7V96 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V96v48.8l-69.3 92.4c-5.7 7.6-16.1 9.6-24.2 4.8c-9.7-5.7-12.1-18.7-5.1-27.5L473 180c10.8-13.5 8.9-33.3-4.4-44.5s-33-9.8-44.5 3.2l-46.7 52.5C361 209.7 352 233.4 352 258.1V320v32H288V320 258.1c0-24.6-9-48.4-25.4-66.8l-46.7-52.5c-11.5-13-31.3-14.4-44.5-3.2s-15.2 30.9-4.4 44.5l27.6 34.5c7 8.8 4.7 21.8-5.1 27.5c-8.1 4.8-18.6 2.7-24.2-4.8L96 144.8V96 32zm64 448v32H288V480h64v32H480V480h32c13.3 0 24-10.7 24-24s-10.7-24-24-24H480 352 288 160 128c-13.3 0-24 10.7-24 24s10.7 24 24 24h32z\"]\n};\nvar faFileInvoiceDollar = {\n prefix: 'fas',\n iconName: 'file-invoice-dollar',\n icon: [384, 512, [], \"f571\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM64 80c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16zm0 64c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16zm128 72c8.8 0 16 7.2 16 16v17.3c8.5 1.2 16.7 3.1 24.1 5.1c8.5 2.3 13.6 11 11.3 19.6s-11 13.6-19.6 11.3c-11.1-3-22-5.2-32.1-5.3c-8.4-.1-17.4 1.8-23.6 5.5c-5.7 3.4-8.1 7.3-8.1 12.8c0 3.7 1.3 6.5 7.3 10.1c6.9 4.1 16.6 7.1 29.2 10.9l.5 .1 0 0 0 0c11.3 3.4 25.3 7.6 36.3 14.6c12.1 7.6 22.4 19.7 22.7 38.2c.3 19.3-9.6 33.3-22.9 41.6c-7.7 4.8-16.4 7.6-25.1 9.1V440c0 8.8-7.2 16-16 16s-16-7.2-16-16V422.2c-11.2-2.1-21.7-5.7-30.9-8.9l0 0 0 0c-2.1-.7-4.2-1.4-6.2-2.1c-8.4-2.8-12.9-11.9-10.1-20.2s11.9-12.9 20.2-10.1c2.5 .8 4.8 1.6 7.1 2.4l0 0 0 0 0 0c13.6 4.6 24.6 8.4 36.3 8.7c9.1 .3 17.9-1.7 23.7-5.3c5.1-3.2 7.9-7.3 7.8-14c-.1-4.6-1.8-7.8-7.7-11.6c-6.8-4.3-16.5-7.4-29-11.2l-1.6-.5 0 0c-11-3.3-24.3-7.3-34.8-13.7c-12-7.2-22.6-18.9-22.7-37.3c-.1-19.4 10.8-32.8 23.8-40.5c7.5-4.4 15.8-7.2 24.1-8.7V232c0-8.8 7.2-16 16-16z\"]\n};\nvar faPlaneCircleExclamation = {\n prefix: 'fas',\n iconName: 'plane-circle-exclamation',\n icon: [640, 512, [], \"e556\", \"M256 0c-35 0-64 59.5-64 93.7v84.6L8.1 283.4c-5 2.8-8.1 8.2-8.1 13.9v65.5c0 10.6 10.2 18.3 20.4 15.4l171.6-49 0 70.9-57.6 43.2c-4 3-6.4 7.8-6.4 12.8v42c0 7.8 6.3 14 14 14c1.3 0 2.6-.2 3.9-.5L256 480l110.1 31.5c1.3 .4 2.6 .5 3.9 .5c6 0 11.1-3.7 13.1-9C344.5 470.7 320 422.2 320 368c0-60.6 30.6-114 77.1-145.6L320 178.3V93.7C320 59.5 292 0 256 0zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faXRay = {\n prefix: 'fas',\n iconName: 'x-ray',\n icon: [512, 512, [], \"f497\", \"M0 64C0 46.3 14.3 32 32 32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32V416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32V96C14.3 96 0 81.7 0 64zM256 96c-8.8 0-16 7.2-16 16v32H160c-8.8 0-16 7.2-16 16s7.2 16 16 16h80v48H128c-8.8 0-16 7.2-16 16s7.2 16 16 16H240v70.6L189.1 307c-5.2-2-10.6-3-16.2-3h-2.1c-23.6 0-42.8 19.2-42.8 42.8c0 9.6 3.2 18.9 9.1 26.4l18.2 23.2c9.7 12.4 24.6 19.6 40.3 19.6H316.4c15.7 0 30.6-7.2 40.3-19.6l18.2-23.2c5.9-7.5 9.1-16.8 9.1-26.4c0-23.6-19.2-42.8-42.8-42.8H339c-5.5 0-11 1-16.2 3L272 326.6V256H384c8.8 0 16-7.2 16-16s-7.2-16-16-16H272V176h80c8.8 0 16-7.2 16-16s-7.2-16-16-16H272V112c0-8.8-7.2-16-16-16zM208 352a16 16 0 1 1 0 32 16 16 0 1 1 0-32zm80 16a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z\"]\n};\nvar faSpellCheck = {\n prefix: 'fas',\n iconName: 'spell-check',\n icon: [576, 512, [], \"f891\", \"M112 0C99.1 0 87.4 7.8 82.5 19.7l-66.7 160-13.3 32c-6.8 16.3 .9 35 17.2 41.8s35-.9 41.8-17.2L66.7 224h90.7l5.1 12.3c6.8 16.3 25.5 24 41.8 17.2s24-25.5 17.2-41.8l-13.3-32-66.7-160C136.6 7.8 124.9 0 112 0zm18.7 160H93.3L112 115.2 130.7 160zM256 32v96 96c0 17.7 14.3 32 32 32h80c44.2 0 80-35.8 80-80c0-23.1-9.8-43.8-25.4-58.4c6-11.2 9.4-24 9.4-37.6c0-44.2-35.8-80-80-80H288c-17.7 0-32 14.3-32 32zm96 64H320V64h32c8.8 0 16 7.2 16 16s-7.2 16-16 16zm-32 64h32 16c8.8 0 16 7.2 16 16s-7.2 16-16 16H320V160zM566.6 310.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L352 434.7l-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0l192-192z\"]\n};\nvar faSlash = {\n prefix: 'fas',\n iconName: 'slash',\n icon: [640, 512, [], \"f715\", \"M5.1 9.2C13.3-1.2 28.4-3.1 38.8 5.1l592 464c10.4 8.2 12.3 23.3 4.1 33.7s-23.3 12.3-33.7 4.1L9.2 42.9C-1.2 34.7-3.1 19.6 5.1 9.2z\"]\n};\nvar faComputerMouse = {\n prefix: 'fas',\n iconName: 'computer-mouse',\n icon: [384, 512, [128433, \"mouse\"], \"f8cc\", \"M0 192H176V0H160C71.6 0 0 71.6 0 160v32zm0 32V352c0 88.4 71.6 160 160 160h64c88.4 0 160-71.6 160-160V224H192 0zm384-32V160C384 71.6 312.4 0 224 0H208V192H384z\"]\n};\nvar faMouse = faComputerMouse;\nvar faArrowRightToBracket = {\n prefix: 'fas',\n iconName: 'arrow-right-to-bracket',\n icon: [512, 512, [\"sign-in\"], \"f090\", \"M352 96l64 0c17.7 0 32 14.3 32 32l0 256c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c53 0 96-43 96-96l0-256c0-53-43-96-96-96l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32zm-9.4 182.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L242.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z\"]\n};\nvar faSignIn = faArrowRightToBracket;\nvar faShopSlash = {\n prefix: 'fas',\n iconName: 'shop-slash',\n icon: [640, 512, [\"store-alt-slash\"], \"e070\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-54.8-43V224H512V376L384 275.7V224H320v1.5L277.2 192H603.2c20.3 0 36.8-16.5 36.8-36.8c0-7.3-2.2-14.4-6.2-20.4L558.2 21.4C549.3 8 534.4 0 518.3 0H121.7c-16 0-31 8-39.9 21.4L74.1 32.8 38.8 5.1zM36.8 192h85L21 112.5 6.2 134.7c-4 6.1-6.2 13.2-6.2 20.4C0 175.5 16.5 192 36.8 192zM320 384H128V224H64V384v80c0 26.5 21.5 48 48 48H336c26.5 0 48-21.5 48-48V398.5l-64-50.4V384zM544 512l-.3 0h.6l-.3 0z\"]\n};\nvar faStoreAltSlash = faShopSlash;\nvar faServer = {\n prefix: 'fas',\n iconName: 'server',\n icon: [512, 512, [], \"f233\", \"M64 32C28.7 32 0 60.7 0 96v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm48 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM64 288c-35.3 0-64 28.7-64 64v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V352c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faVirusCovidSlash = {\n prefix: 'fas',\n iconName: 'virus-covid-slash',\n icon: [640, 512, [], \"e4a9\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L472.1 344.7c11.4-19.5 19.1-41.4 22.3-64.7H528v16c0 13.3 10.7 24 24 24s24-10.7 24-24V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v16H494.4c-4.2-30.7-16.3-58.8-34.1-82.3L484 125.9l11.3 11.3c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L472.7 46.7c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9L450.1 92l-23.8 23.8C402.8 97.9 374.7 85.8 344 81.6V48h16c13.3 0 24-10.7 24-24s-10.7-24-24-24H280c-13.3 0-24 10.7-24 24s10.7 24 24 24h16V81.6c-30.7 4.2-58.8 16.3-82.3 34.1L189.9 92l11.3-11.3c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L134.1 79.8 38.8 5.1zm362.5 407L149.2 213.5c-1.5 6-2.7 12.2-3.5 18.5H112V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v80c0 13.3 10.7 24 24 24s24-10.7 24-24V280h33.6c4.2 30.7 16.3 58.8 34.1 82.3L156 386.1l-11.3-11.3c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l56.6 56.6c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L189.9 420l23.8-23.8c23.5 17.9 51.7 29.9 82.3 34.1V464H280c-13.3 0-24 10.7-24 24s10.7 24 24 24h80c13.3 0 24-10.7 24-24s-10.7-24-24-24H344V430.4c20.4-2.8 39.7-9.1 57.3-18.2z\"]\n};\nvar faShopLock = {\n prefix: 'fas',\n iconName: 'shop-lock',\n icon: [640, 512, [], \"e4a5\", \"M36.8 192H449.6c20.2-19.8 47.9-32 78.4-32c30.5 0 58.1 12.2 78.3 31.9c18.9-1.6 33.7-17.4 33.7-36.7c0-7.3-2.2-14.4-6.2-20.4L558.2 21.4C549.3 8 534.4 0 518.3 0H121.7c-16 0-31 8-39.9 21.4L6.2 134.7c-4 6.1-6.2 13.2-6.2 20.4C0 175.5 16.5 192 36.8 192zM384 224H320V384H128V224H64V384v80c0 26.5 21.5 48 48 48H336c26.5 0 48-21.5 48-48V384 352 224zm144 16c17.7 0 32 14.3 32 32v48H496V272c0-17.7 14.3-32 32-32zm-80 32v48c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H608c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32V272c0-44.2-35.8-80-80-80s-80 35.8-80 80z\"]\n};\nvar faHourglassStart = {\n prefix: 'fas',\n iconName: 'hourglass-start',\n icon: [384, 512, [\"hourglass-1\"], \"f251\", \"M32 0C14.3 0 0 14.3 0 32S14.3 64 32 64V75c0 42.4 16.9 83.1 46.9 113.1L146.7 256 78.9 323.9C48.9 353.9 32 394.6 32 437v11c-17.7 0-32 14.3-32 32s14.3 32 32 32H64 320h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V437c0-42.4-16.9-83.1-46.9-113.1L237.3 256l67.9-67.9c30-30 46.9-70.7 46.9-113.1V64c17.7 0 32-14.3 32-32s-14.3-32-32-32H320 64 32zM288 437v11H96V437c0-25.5 10.1-49.9 28.1-67.9L192 301.3l67.9 67.9c18 18 28.1 42.4 28.1 67.9z\"]\n};\nvar faHourglass1 = faHourglassStart;\nvar faBlenderPhone = {\n prefix: 'fas',\n iconName: 'blender-phone',\n icon: [576, 512, [], \"f6b6\", \"M224 352L196.8 52.3C194.2 24.2 216.3 0 244.6 0H534.1c21.1 0 36.4 20.1 30.9 40.4L558.5 64H400c-8.8 0-16 7.2-16 16s7.2 16 16 16H549.8l-17.5 64H400c-8.8 0-16 7.2-16 16s7.2 16 16 16H523.6l-17.5 64H400c-8.8 0-16 7.2-16 16s7.2 16 16 16h97.5L480 352H224zm-16 32H496c26.5 0 48 21.5 48 48v32c0 26.5-21.5 48-48 48H208c-26.5 0-48-21.5-48-48V432c0-26.5 21.5-48 48-48zm144 96a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM147.5 30.7c10.8 6.7 15.3 21 10.6 33.4l-22 57.8c-4.2 10.9-14.5 17.6-25.3 16.4l-33.3-3.6c-13.6 42.2-13.6 88.4 0 130.7l33.3-3.6c10.9-1.2 21.2 5.5 25.3 16.4l22 57.8c4.7 12.4 .2 26.7-10.6 33.4l-44 27.2c-9.7 6-21.9 4.2-29.8-4.3C-24.6 286-24.6 114 73.7 7.8C81.6-.7 93.8-2.5 103.5 3.5l44 27.2z\"]\n};\nvar faBuildingWheat = {\n prefix: 'fas',\n iconName: 'building-wheat',\n icon: [640, 512, [], \"e4db\", \"M0 48C0 21.5 21.5 0 48 0H336c26.5 0 48 21.5 48 48V464c0 26.5-21.5 48-48 48H240V432c0-26.5-21.5-48-48-48s-48 21.5-48 48v80H48c-26.5 0-48-21.5-48-48V48zM80 224c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H80zm80 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H176c-8.8 0-16 7.2-16 16zm112-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H272zM64 112v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16zM176 96c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H176zm80 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H272c-8.8 0-16 7.2-16 16zm384 80v16c0 44.2-35.8 80-80 80H544V272c0-44.2 35.8-80 80-80h16zm0 128c0 44.2-35.8 80-80 80H544V384c0-44.2 35.8-80 80-80h16v16zm0 112c0 44.2-35.8 80-80 80H544V496c0-44.2 35.8-80 80-80h16v16zM512 496v16H496c-44.2 0-80-35.8-80-80V416h16c44.2 0 80 35.8 80 80zm0-96H496c-44.2 0-80-35.8-80-80V304h16c44.2 0 80 35.8 80 80v16zm0-128v16H496c-44.2 0-80-35.8-80-80V192h16c44.2 0 80 35.8 80 80zM528 32c13.3 0 24 10.7 24 24V160c0 13.3-10.7 24-24 24s-24-10.7-24-24V56c0-13.3 10.7-24 24-24zm96 64v32c0 13.3-10.7 24-24 24s-24-10.7-24-24V96c0-13.3 10.7-24 24-24s24 10.7 24 24zM456 72c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24s-24-10.7-24-24V96c0-13.3 10.7-24 24-24z\"]\n};\nvar faPersonBreastfeeding = {\n prefix: 'fas',\n iconName: 'person-breastfeeding',\n icon: [448, 512, [], \"e53a\", \"M224 0a80 80 0 1 1 0 160A80 80 0 1 1 224 0zM436.8 382.8L373.5 462c-16.6 20.7-46.8 24.1-67.5 7.5c-17.6-14.1-22.7-38.1-13.5-57.7l-.8-.1c-38.9-5.6-74.3-25.1-99.7-54.8V320c0-17.7-14.3-32-32-32s-32 14.3-32 32v48c0 .8 0 1.6 .1 2.4l101.4 50.7c23.7 11.9 33.3 40.7 21.5 64.4s-40.7 33.3-64.4 21.5L27.2 427.3c-1.1-.5-2.2-1.1-3.3-1.7c-4.9-2.8-9.2-6.4-12.6-10.6c-4.6-5.4-7.8-11.7-9.6-18.4c-3.3-12-1.9-25.2 4.8-36.6c.6-1.1 1.3-2.2 2-3.2L75.6 256.1c26.7-40.1 71.7-64.1 119.8-64.1h75.2c46.5 0 90.1 22.5 117.2 60.3l50.7 70.9c2.2 3 4 6.1 5.5 9.4c2.9 6.7 4.3 13.8 4 20.8c-.3 10.6-4.2 21-11.2 29.4zM320 332a44 44 0 1 0 -88 0 44 44 0 1 0 88 0z\"]\n};\nvar faRightToBracket = {\n prefix: 'fas',\n iconName: 'right-to-bracket',\n icon: [512, 512, [\"sign-in-alt\"], \"f2f6\", \"M217.9 105.9L340.7 228.7c7.2 7.2 11.3 17.1 11.3 27.3s-4.1 20.1-11.3 27.3L217.9 406.1c-6.4 6.4-15 9.9-24 9.9c-18.7 0-33.9-15.2-33.9-33.9l0-62.1L32 320c-17.7 0-32-14.3-32-32l0-64c0-17.7 14.3-32 32-32l128 0 0-62.1c0-18.7 15.2-33.9 33.9-33.9c9 0 17.6 3.6 24 9.9zM352 416l64 0c17.7 0 32-14.3 32-32l0-256c0-17.7-14.3-32-32-32l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0c53 0 96 43 96 96l0 256c0 53-43 96-96 96l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faSignInAlt = faRightToBracket;\nvar faVenus = {\n prefix: 'fas',\n iconName: 'venus',\n icon: [384, 512, [9792], \"f221\", \"M80 176a112 112 0 1 1 224 0A112 112 0 1 1 80 176zM224 349.1c81.9-15 144-86.8 144-173.1C368 78.8 289.2 0 192 0S16 78.8 16 176c0 86.3 62.1 158.1 144 173.1V384H128c-17.7 0-32 14.3-32 32s14.3 32 32 32h32v32c0 17.7 14.3 32 32 32s32-14.3 32-32V448h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H224V349.1z\"]\n};\nvar faPassport = {\n prefix: 'fas',\n iconName: 'passport',\n icon: [448, 512, [], \"f5ab\", \"M0 64C0 28.7 28.7 0 64 0H384c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zM183 278.8c-27.9-13.2-48.4-39.4-53.7-70.8h39.1c1.6 30.4 7.7 53.8 14.6 70.8zm41.3 9.2l-.3 0-.3 0c-2.4-3.5-5.7-8.9-9.1-16.5c-6-13.6-12.4-34.3-14.2-63.5h47.1c-1.8 29.2-8.1 49.9-14.2 63.5c-3.4 7.6-6.7 13-9.1 16.5zm40.7-9.2c6.8-17.1 12.9-40.4 14.6-70.8h39.1c-5.3 31.4-25.8 57.6-53.7 70.8zM279.6 176c-1.6-30.4-7.7-53.8-14.6-70.8c27.9 13.2 48.4 39.4 53.7 70.8H279.6zM223.7 96l.3 0 .3 0c2.4 3.5 5.7 8.9 9.1 16.5c6 13.6 12.4 34.3 14.2 63.5H200.5c1.8-29.2 8.1-49.9 14.2-63.5c3.4-7.6 6.7-13 9.1-16.5zM183 105.2c-6.8 17.1-12.9 40.4-14.6 70.8H129.3c5.3-31.4 25.8-57.6 53.7-70.8zM352 192A128 128 0 1 0 96 192a128 128 0 1 0 256 0zM112 384c-8.8 0-16 7.2-16 16s7.2 16 16 16H336c8.8 0 16-7.2 16-16s-7.2-16-16-16H112z\"]\n};\nvar faHeartPulse = {\n prefix: 'fas',\n iconName: 'heart-pulse',\n icon: [512, 512, [\"heartbeat\"], \"f21e\", \"M228.3 469.1L47.6 300.4c-4.2-3.9-8.2-8.1-11.9-12.4h87c22.6 0 43-13.6 51.7-34.5l10.5-25.2 49.3 109.5c3.8 8.5 12.1 14 21.4 14.1s17.8-5 22-13.3L320 253.7l1.7 3.4c9.5 19 28.9 31 50.1 31H476.3c-3.7 4.3-7.7 8.5-11.9 12.4L283.7 469.1c-7.5 7-17.4 10.9-27.7 10.9s-20.2-3.9-27.7-10.9zM503.7 240h-132c-3 0-5.8-1.7-7.2-4.4l-23.2-46.3c-4.1-8.1-12.4-13.3-21.5-13.3s-17.4 5.1-21.5 13.3l-41.4 82.8L205.9 158.2c-3.9-8.7-12.7-14.3-22.2-14.1s-18.1 5.9-21.8 14.8l-31.8 76.3c-1.2 3-4.2 4.9-7.4 4.9H16c-2.6 0-5 .4-7.3 1.1C3 225.2 0 208.2 0 190.9v-5.8c0-69.9 50.5-129.5 119.4-141C165 36.5 211.4 51.4 244 84l12 12 12-12c32.6-32.6 79-47.5 124.6-39.9C461.5 55.6 512 115.2 512 185.1v5.8c0 16.9-2.8 33.5-8.3 49.1z\"]\n};\nvar faHeartbeat = faHeartPulse;\nvar faPeopleCarryBox = {\n prefix: 'fas',\n iconName: 'people-carry-box',\n icon: [640, 512, [\"people-carry\"], \"f4ce\", \"M80 48a48 48 0 1 1 96 0A48 48 0 1 1 80 48zm64 193.7v65.1l51 51c7.1 7.1 11.8 16.2 13.4 26.1l15.2 90.9c2.9 17.4-8.9 33.9-26.3 36.8s-33.9-8.9-36.8-26.3l-14.3-85.9L66.8 320C54.8 308 48 291.7 48 274.7V186.6c0-32.4 26.2-58.6 58.6-58.6c24.1 0 46.5 12 59.9 32l47.4 71.1 10.1 5V160c0-17.7 14.3-32 32-32H384c17.7 0 32 14.3 32 32v76.2l10.1-5L473.5 160c13.3-20 35.8-32 59.9-32c32.4 0 58.6 26.2 58.6 58.6v88.1c0 17-6.7 33.3-18.7 45.3l-79.4 79.4-14.3 85.9c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8l15.2-90.9c1.6-9.9 6.3-19 13.4-26.1l51-51V241.7l-19 28.5c-4.6 7-11 12.6-18.5 16.3l-59.6 29.8c-2.4 1.3-4.9 2.2-7.6 2.8c-2.6 .6-5.3 .9-7.9 .8H256.7c-2.5 .1-5-.2-7.5-.7c-2.9-.6-5.6-1.6-8.1-3l-59.5-29.8c-7.5-3.7-13.8-9.4-18.5-16.3l-19-28.5zM2.3 468.1L50.1 348.6l49.2 49.2-37.6 94c-6.6 16.4-25.2 24.4-41.6 17.8S-4.3 484.5 2.3 468.1zM512 0a48 48 0 1 1 0 96 48 48 0 1 1 0-96zm77.9 348.6l47.8 119.5c6.6 16.4-1.4 35-17.8 41.6s-35-1.4-41.6-17.8l-37.6-94 49.2-49.2z\"]\n};\nvar faPeopleCarry = faPeopleCarryBox;\nvar faTemperatureHigh = {\n prefix: 'fas',\n iconName: 'temperature-high',\n icon: [512, 512, [], \"f769\", \"M416 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0 128A96 96 0 1 0 416 0a96 96 0 1 0 0 192zM96 112c0-26.5 21.5-48 48-48s48 21.5 48 48V276.5c0 17.3 7.1 31.9 15.3 42.5C217.8 332.6 224 349.5 224 368c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-18.5 6.2-35.4 16.7-48.9C88.9 308.4 96 293.8 96 276.5V112zM144 0C82.1 0 32 50.2 32 112V276.5c0 .1-.1 .3-.2 .6c-.2 .6-.8 1.6-1.7 2.8C11.2 304.2 0 334.8 0 368c0 79.5 64.5 144 144 144s144-64.5 144-144c0-33.2-11.2-63.8-30.1-88.1c-.9-1.2-1.5-2.2-1.7-2.8c-.1-.3-.2-.5-.2-.6V112C256 50.2 205.9 0 144 0zm0 416c26.5 0 48-21.5 48-48c0-20.9-13.4-38.7-32-45.3V112c0-8.8-7.2-16-16-16s-16 7.2-16 16V322.7c-18.6 6.6-32 24.4-32 45.3c0 26.5 21.5 48 48 48z\"]\n};\nvar faMicrochip = {\n prefix: 'fas',\n iconName: 'microchip',\n icon: [512, 512, [], \"f2db\", \"M176 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64c-35.3 0-64 28.7-64 64H24c-13.3 0-24 10.7-24 24s10.7 24 24 24H64v56H24c-13.3 0-24 10.7-24 24s10.7 24 24 24H64v56H24c-13.3 0-24 10.7-24 24s10.7 24 24 24H64c0 35.3 28.7 64 64 64v40c0 13.3 10.7 24 24 24s24-10.7 24-24V448h56v40c0 13.3 10.7 24 24 24s24-10.7 24-24V448h56v40c0 13.3 10.7 24 24 24s24-10.7 24-24V448c35.3 0 64-28.7 64-64h40c13.3 0 24-10.7 24-24s-10.7-24-24-24H448V280h40c13.3 0 24-10.7 24-24s-10.7-24-24-24H448V176h40c13.3 0 24-10.7 24-24s-10.7-24-24-24H448c0-35.3-28.7-64-64-64V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H280V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H176V24zM160 128H352c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32H160c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32zm192 32H160V352H352V160z\"]\n};\nvar faCrown = {\n prefix: 'fas',\n iconName: 'crown',\n icon: [576, 512, [128081], \"f521\", \"M309 106c11.4-7 19-19.7 19-34c0-22.1-17.9-40-40-40s-40 17.9-40 40c0 14.4 7.6 27 19 34L209.7 220.6c-9.1 18.2-32.7 23.4-48.6 10.7L72 160c5-6.7 8-15 8-24c0-22.1-17.9-40-40-40S0 113.9 0 136s17.9 40 40 40c.2 0 .5 0 .7 0L86.4 427.4c5.5 30.4 32 52.6 63 52.6H426.6c30.9 0 57.4-22.1 63-52.6L535.3 176c.2 0 .5 0 .7 0c22.1 0 40-17.9 40-40s-17.9-40-40-40s-40 17.9-40 40c0 9 3 17.3 8 24l-89.1 71.3c-15.9 12.7-39.5 7.5-48.6-10.7L309 106z\"]\n};\nvar faWeightHanging = {\n prefix: 'fas',\n iconName: 'weight-hanging',\n icon: [512, 512, [], \"f5cd\", \"M224 96a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm122.5 32c3.5-10 5.5-20.8 5.5-32c0-53-43-96-96-96s-96 43-96 96c0 11.2 1.9 22 5.5 32H120c-22 0-41.2 15-46.6 36.4l-72 288c-3.6 14.3-.4 29.5 8.7 41.2S33.2 512 48 512H464c14.8 0 28.7-6.8 37.8-18.5s12.3-26.8 8.7-41.2l-72-288C433.2 143 414 128 392 128H346.5z\"]\n};\nvar faXmarksLines = {\n prefix: 'fas',\n iconName: 'xmarks-lines',\n icon: [640, 512, [], \"e59a\", \"M32 32C14.3 32 0 46.3 0 64S14.3 96 32 96H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H32zm0 384c-17.7 0-32 14.3-32 32s14.3 32 32 32H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H32zM7 167c-9.4 9.4-9.4 24.6 0 33.9l55 55L7 311c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l55-55 55 55c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-55-55 55-55c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-55 55L41 167c-9.4-9.4-24.6-9.4-33.9 0zM265 167c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l55 55-55 55c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l55-55 55 55c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-55-55 55-55c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-55 55-55-55zM455 167c-9.4 9.4-9.4 24.6 0 33.9l55 55-55 55c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l55-55 55 55c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-55-55 55-55c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-55 55-55-55c-9.4-9.4-24.6-9.4-33.9 0z\"]\n};\nvar faFilePrescription = {\n prefix: 'fas',\n iconName: 'file-prescription',\n icon: [384, 512, [], \"f572\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM104 196h72c33.1 0 60 26.9 60 60c0 25.5-15.9 47.2-38.3 55.9l43 40.3 33.8-31c8.1-7.5 20.8-6.9 28.3 1.2s6.9 20.8-1.2 28.3L270 379.7l31.7 29.7c8.1 7.6 8.5 20.2 .9 28.3s-20.2 8.5-28.3 .9l-33.9-31.8-34.9 32c-8.1 7.5-20.8 6.9-28.3-1.2s-6.9-20.8 1.2-28.3l32.6-29.9-64.8-60.8c-.9-.8-1.6-1.7-2.3-2.6H124v44c0 11-9 20-20 20s-20-9-20-20V296 216c0-11 9-20 20-20zm72 80c11 0 20-9 20-20s-9-20-20-20H124v40h52z\"]\n};\nvar faWeightScale = {\n prefix: 'fas',\n iconName: 'weight-scale',\n icon: [512, 512, [\"weight\"], \"f496\", \"M128 176a128 128 0 1 1 256 0 128 128 0 1 1 -256 0zM391.8 64C359.5 24.9 310.7 0 256 0S152.5 24.9 120.2 64H64C28.7 64 0 92.7 0 128V448c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H391.8zM296 224c0-10.6-4.1-20.2-10.9-27.4l33.6-78.3c3.5-8.1-.3-17.5-8.4-21s-17.5 .3-21 8.4L255.7 184c-22 .1-39.7 18-39.7 40c0 22.1 17.9 40 40 40s40-17.9 40-40z\"]\n};\nvar faWeight = faWeightScale;\nvar faUserGroup = {\n prefix: 'fas',\n iconName: 'user-group',\n icon: [640, 512, [128101, \"user-friends\"], \"f500\", \"M96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM0 482.3C0 383.8 79.8 304 178.3 304h91.4C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3zM609.3 512H471.4c5.4-9.4 8.6-20.3 8.6-32v-8c0-60.7-27.1-115.2-69.8-151.8c2.4-.1 4.7-.2 7.1-.2h61.4C567.8 320 640 392.2 640 481.3c0 17-13.8 30.7-30.7 30.7zM432 256c-31 0-59-12.6-79.3-32.9C372.4 196.5 384 163.6 384 128c0-26.8-6.6-52.1-18.3-74.3C384.3 40.1 407.2 32 432 32c61.9 0 112 50.1 112 112s-50.1 112-112 112z\"]\n};\nvar faUserFriends = faUserGroup;\nvar faArrowUpAZ = {\n prefix: 'fas',\n iconName: 'arrow-up-a-z',\n icon: [576, 512, [\"sort-alpha-up\"], \"f15e\", \"M183.6 42.4C177.5 35.8 169 32 160 32s-17.5 3.8-23.6 10.4l-88 96c-11.9 13-11.1 33.3 2 45.2s33.3 11.1 45.2-2L128 146.3V448c0 17.7 14.3 32 32 32s32-14.3 32-32V146.3l32.4 35.4c11.9 13 32.2 13.9 45.2 2s13.9-32.2 2-45.2l-88-96zM320 320c0 17.7 14.3 32 32 32h50.7l-73.4 73.4c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H429.3l73.4-73.4c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8H352c-17.7 0-32 14.3-32 32zM416 32c-12.1 0-23.2 6.8-28.6 17.7l-64 128-16 32c-7.9 15.8-1.5 35 14.3 42.9s35 1.5 42.9-14.3l7.2-14.3h88.4l7.2 14.3c7.9 15.8 27.1 22.2 42.9 14.3s22.2-27.1 14.3-42.9l-16-32-64-128C439.2 38.8 428.1 32 416 32zM395.8 176L416 135.6 436.2 176H395.8z\"]\n};\nvar faSortAlphaUp = faArrowUpAZ;\nvar faChessKnight = {\n prefix: 'fas',\n iconName: 'chess-knight',\n icon: [448, 512, [9822], \"f441\", \"M96 48L82.7 61.3C70.7 73.3 64 89.5 64 106.5V238.9c0 10.7 5.3 20.7 14.2 26.6l10.6 7c14.3 9.6 32.7 10.7 48.1 3l3.2-1.6c2.6-1.3 5-2.8 7.3-4.5l49.4-37c6.6-5 15.7-5 22.3 0c10.2 7.7 9.9 23.1-.7 30.3L90.4 350C73.9 361.3 64 380 64 400H384l28.9-159c2.1-11.3 3.1-22.8 3.1-34.3V192C416 86 330 0 224 0H83.8C72.9 0 64 8.9 64 19.8c0 7.5 4.2 14.3 10.9 17.7L96 48zm24 68a20 20 0 1 1 40 0 20 20 0 1 1 -40 0zM22.6 473.4c-4.2 4.2-6.6 10-6.6 16C16 501.9 26.1 512 38.6 512H409.4c12.5 0 22.6-10.1 22.6-22.6c0-6-2.4-11.8-6.6-16L384 432H64L22.6 473.4z\"]\n};\nvar faFaceLaughSquint = {\n prefix: 'fas',\n iconName: 'face-laugh-squint',\n icon: [512, 512, [\"laugh-squint\"], \"f59b\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM96.8 314.1c-3.8-13.7 7.4-26.1 21.6-26.1H393.6c14.2 0 25.5 12.4 21.6 26.1C396.2 382 332.1 432 256 432s-140.2-50-159.2-117.9zm36.7-199.4l89.9 47.9c10.7 5.7 10.7 21.1 0 26.8l-89.9 47.9c-7.9 4.2-17.5-1.5-17.5-10.5c0-2.8 1-5.5 2.8-7.6l36-43.2-36-43.2c-1.8-2.1-2.8-4.8-2.8-7.6c0-9 9.6-14.7 17.5-10.5zM396 125.1c0 2.8-1 5.5-2.8 7.6l-36 43.2 36 43.2c1.8 2.1 2.8 4.8 2.8 7.6c0 9-9.6 14.7-17.5 10.5l-89.9-47.9c-10.7-5.7-10.7-21.1 0-26.8l89.9-47.9c7.9-4.2 17.5 1.5 17.5 10.5z\"]\n};\nvar faLaughSquint = faFaceLaughSquint;\nvar faWheelchair = {\n prefix: 'fas',\n iconName: 'wheelchair',\n icon: [512, 512, [], \"f193\", \"M192 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM120.5 247.2c12.4-4.7 18.7-18.5 14-30.9s-18.5-18.7-30.9-14C43.1 225.1 0 283.5 0 352c0 88.4 71.6 160 160 160c61.2 0 114.3-34.3 141.2-84.7c6.2-11.7 1.8-26.2-9.9-32.5s-26.2-1.8-32.5 9.9C240 440 202.8 464 160 464C98.1 464 48 413.9 48 352c0-47.9 30.1-88.8 72.5-104.8zM259.8 176l-1.9-9.7c-4.5-22.3-24-38.3-46.8-38.3c-30.1 0-52.7 27.5-46.8 57l23.1 115.5c6 29.9 32.2 51.4 62.8 51.4h5.1c.4 0 .8 0 1.3 0h94.1c6.7 0 12.6 4.1 15 10.4L402 459.2c6 16.1 23.8 24.6 40.1 19.1l48-16c16.8-5.6 25.8-23.7 20.2-40.5s-23.7-25.8-40.5-20.2l-18.7 6.2-25.5-68c-11.7-31.2-41.6-51.9-74.9-51.9H282.2l-9.6-48H336c17.7 0 32-14.3 32-32s-14.3-32-32-32H259.8z\"]\n};\nvar faCircleArrowUp = {\n prefix: 'fas',\n iconName: 'circle-arrow-up',\n icon: [512, 512, [\"arrow-circle-up\"], \"f0aa\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM385 231c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-71-71V376c0 13.3-10.7 24-24 24s-24-10.7-24-24V193.9l-71 71c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9L239 119c9.4-9.4 24.6-9.4 33.9 0L385 231z\"]\n};\nvar faArrowCircleUp = faCircleArrowUp;\nvar faToggleOn = {\n prefix: 'fas',\n iconName: 'toggle-on',\n icon: [576, 512, [], \"f205\", \"M192 64C86 64 0 150 0 256S86 448 192 448H384c106 0 192-86 192-192s-86-192-192-192H192zm192 96a96 96 0 1 1 0 192 96 96 0 1 1 0-192z\"]\n};\nvar faPersonWalking = {\n prefix: 'fas',\n iconName: 'person-walking',\n icon: [320, 512, [128694, \"walking\"], \"f554\", \"M160 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM126.5 199.3c-1 .4-1.9 .8-2.9 1.2l-8 3.5c-16.4 7.3-29 21.2-34.7 38.2l-2.6 7.8c-5.6 16.8-23.7 25.8-40.5 20.2s-25.8-23.7-20.2-40.5l2.6-7.8c11.4-34.1 36.6-61.9 69.4-76.5l8-3.5c20.8-9.2 43.3-14 66.1-14c44.6 0 84.8 26.8 101.9 67.9L281 232.7l21.4 10.7c15.8 7.9 22.2 27.1 14.3 42.9s-27.1 22.2-42.9 14.3L247 287.3c-10.3-5.2-18.4-13.8-22.8-24.5l-9.6-23-19.3 65.5 49.5 54c5.4 5.9 9.2 13 11.2 20.8l23 92.1c4.3 17.1-6.1 34.5-23.3 38.8s-34.5-6.1-38.8-23.3l-22-88.1-70.7-77.1c-14.8-16.1-20.3-38.6-14.7-59.7l16.9-63.5zM68.7 398l25-62.4c2.1 3 4.5 5.8 7 8.6l40.7 44.4-14.5 36.2c-2.4 6-6 11.5-10.6 16.1L54.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L68.7 398z\"]\n};\nvar faWalking = faPersonWalking;\nvar faL = {\n prefix: 'fas',\n iconName: 'l',\n icon: [320, 512, [108], \"4c\", \"M64 32c17.7 0 32 14.3 32 32V416H288c17.7 0 32 14.3 32 32s-14.3 32-32 32H64c-17.7 0-32-14.3-32-32V64c0-17.7 14.3-32 32-32z\"]\n};\nvar faFire = {\n prefix: 'fas',\n iconName: 'fire',\n icon: [448, 512, [128293], \"f06d\", \"M159.3 5.4c7.8-7.3 19.9-7.2 27.7 .1c27.6 25.9 53.5 53.8 77.7 84c11-14.4 23.5-30.1 37-42.9c7.9-7.4 20.1-7.4 28 .1c34.6 33 63.9 76.6 84.5 118c20.3 40.8 33.8 82.5 33.8 111.9C448 404.2 348.2 512 224 512C98.4 512 0 404.1 0 276.5c0-38.4 17.8-85.3 45.4-131.7C73.3 97.7 112.7 48.6 159.3 5.4zM225.7 416c25.3 0 47.7-7 68.8-21c42.1-29.4 53.4-88.2 28.1-134.4c-4.5-9-16-9.6-22.5-2l-25.2 29.3c-6.6 7.6-18.5 7.4-24.7-.5c-16.5-21-46-58.5-62.8-79.8c-6.3-8-18.3-8.1-24.7-.1c-33.8 42.5-50.8 69.3-50.8 99.4C112 375.4 162.6 416 225.7 416z\"]\n};\nvar faBedPulse = {\n prefix: 'fas',\n iconName: 'bed-pulse',\n icon: [640, 512, [\"procedures\"], \"f487\", \"M483.2 9.6L524 64h92c13.3 0 24 10.7 24 24s-10.7 24-24 24H512c-7.6 0-14.7-3.6-19.2-9.6L468.7 70.3l-47 99.9c-3.7 7.8-11.3 13.1-19.9 13.7s-16.9-3.4-21.7-10.6L339.2 112H216c-13.3 0-24-10.7-24-24s10.7-24 24-24H352c8 0 15.5 4 20 10.7l24.4 36.6 45.9-97.5C445.9 6.2 453.2 1 461.6 .1s16.6 2.7 21.6 9.5zM320 160h12.7l20.7 31.1c11.2 16.8 30.6 26.3 50.7 24.8s37.9-13.7 46.5-32L461.9 160H544c53 0 96 43 96 96V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H352 320 64v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V96C0 78.3 14.3 64 32 64s32 14.3 32 32V352H288V192c0-17.7 14.3-32 32-32zm-144 0a80 80 0 1 1 0 160 80 80 0 1 1 0-160z\"]\n};\nvar faProcedures = faBedPulse;\nvar faShuttleSpace = {\n prefix: 'fas',\n iconName: 'shuttle-space',\n icon: [640, 512, [\"space-shuttle\"], \"f197\", \"M130 480c40.6 0 80.4-11 115.2-31.9L352 384l-224 0 0 96h2zM352 128L245.2 63.9C210.4 43 170.6 32 130 32h-2v96l224 0zM96 128l0-96H80C53.5 32 32 53.5 32 80v48h8c-22.1 0-40 17.9-40 40v16V328v16c0 22.1 17.9 40 40 40H32v48c0 26.5 21.5 48 48 48H96l0-96h8c26.2 0 49.4-12.6 64-32H456c69.3 0 135-22.7 179.2-81.6c6.4-8.5 6.4-20.3 0-28.8C591 182.7 525.3 160 456 160H168c-14.6-19.4-37.8-32-64-32l-8 0zM512 243.6v24.9c0 19.6-15.9 35.6-35.6 35.6c-2.5 0-4.4-2-4.4-4.4V212.4c0-2.5 2-4.4 4.4-4.4c19.6 0 35.6 15.9 35.6 35.6z\"]\n};\nvar faSpaceShuttle = faShuttleSpace;\nvar faFaceLaugh = {\n prefix: 'fas',\n iconName: 'face-laugh',\n icon: [512, 512, [\"laugh\"], \"f599\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM96.8 314.1c-3.8-13.7 7.4-26.1 21.6-26.1H393.6c14.2 0 25.5 12.4 21.6 26.1C396.2 382 332.1 432 256 432s-140.2-50-159.2-117.9zM144.4 192a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faLaugh = faFaceLaugh;\nvar faFolderOpen = {\n prefix: 'fas',\n iconName: 'folder-open',\n icon: [576, 512, [128194, 128449, 61717], \"f07c\", \"M88.7 223.8L0 375.8V96C0 60.7 28.7 32 64 32H181.5c17 0 33.3 6.7 45.3 18.7l26.5 26.5c12 12 28.3 18.7 45.3 18.7H416c35.3 0 64 28.7 64 64v32H144c-22.8 0-43.8 12.1-55.3 31.8zm27.6 16.1C122.1 230 132.6 224 144 224H544c11.5 0 22 6.1 27.7 16.1s5.7 22.2-.1 32.1l-112 192C453.9 474 443.4 480 432 480H32c-11.5 0-22-6.1-27.7-16.1s-5.7-22.2 .1-32.1l112-192z\"]\n};\nvar faHeartCirclePlus = {\n prefix: 'fas',\n iconName: 'heart-circle-plus',\n icon: [576, 512, [], \"e500\", \"M47.6 300.4L228.3 469.1c7.5 7 17.4 10.9 27.7 10.9s20.2-3.9 27.7-10.9l2.6-2.4C267.2 438.6 256 404.6 256 368c0-97.2 78.8-176 176-176c28.3 0 55 6.7 78.7 18.5c.9-6.5 1.3-13 1.3-19.6v-5.8c0-69.9-50.5-129.5-119.4-141C347 36.5 300.6 51.4 268 84L256 96 244 84c-32.6-32.6-79-47.5-124.6-39.9C50.5 55.6 0 115.2 0 185.1v5.8c0 41.5 17.2 81.2 47.6 109.5zM432 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm16-208v48h48c8.8 0 16 7.2 16 16s-7.2 16-16 16H448v48c0 8.8-7.2 16-16 16s-16-7.2-16-16V384H368c-8.8 0-16-7.2-16-16s7.2-16 16-16h48V304c0-8.8 7.2-16 16-16s16 7.2 16 16z\"]\n};\nvar faCodeFork = {\n prefix: 'fas',\n iconName: 'code-fork',\n icon: [448, 512, [], \"e13b\", \"M80 104a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm80-24c0 32.8-19.7 61-48 73.3V192c0 17.7 14.3 32 32 32H304c17.7 0 32-14.3 32-32V153.3C307.7 141 288 112.8 288 80c0-44.2 35.8-80 80-80s80 35.8 80 80c0 32.8-19.7 61-48 73.3V192c0 53-43 96-96 96H256v70.7c28.3 12.3 48 40.5 48 73.3c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-32.8 19.7-61 48-73.3V288H144c-53 0-96-43-96-96V153.3C19.7 141 0 112.8 0 80C0 35.8 35.8 0 80 0s80 35.8 80 80zm208 24a24 24 0 1 0 0-48 24 24 0 1 0 0 48zM248 432a24 24 0 1 0 -48 0 24 24 0 1 0 48 0z\"]\n};\nvar faCity = {\n prefix: 'fas',\n iconName: 'city',\n icon: [640, 512, [127961], \"f64f\", \"M480 48c0-26.5-21.5-48-48-48H336c-26.5 0-48 21.5-48 48V96H224V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V96H112V24c0-13.3-10.7-24-24-24S64 10.7 64 24V96H48C21.5 96 0 117.5 0 144v96V464c0 26.5 21.5 48 48 48H304h32 96H592c26.5 0 48-21.5 48-48V240c0-26.5-21.5-48-48-48H480V48zm96 320v32c0 8.8-7.2 16-16 16H528c-8.8 0-16-7.2-16-16V368c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16zM240 416H208c-8.8 0-16-7.2-16-16V368c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16zM128 400c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V368c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32zM560 256c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H528c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h32zM256 176v32c0 8.8-7.2 16-16 16H208c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16zM112 160c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h32zM256 304c0 8.8-7.2 16-16 16H208c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32zM112 320H80c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16zm304-48v32c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16zM400 64c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16h32zm16 112v32c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16z\"]\n};\nvar faMicrophoneLines = {\n prefix: 'fas',\n iconName: 'microphone-lines',\n icon: [384, 512, [127897, \"microphone-alt\"], \"f3c9\", \"M96 96V256c0 53 43 96 96 96s96-43 96-96H208c-8.8 0-16-7.2-16-16s7.2-16 16-16h80V192H208c-8.8 0-16-7.2-16-16s7.2-16 16-16h80V128H208c-8.8 0-16-7.2-16-16s7.2-16 16-16h80c0-53-43-96-96-96S96 43 96 96zM320 240v16c0 70.7-57.3 128-128 128s-128-57.3-128-128V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464H120c-13.3 0-24 10.7-24 24s10.7 24 24 24h72 72c13.3 0 24-10.7 24-24s-10.7-24-24-24H216V430.4c85.8-11.7 152-85.3 152-174.4V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v24z\"]\n};\nvar faMicrophoneAlt = faMicrophoneLines;\nvar faPepperHot = {\n prefix: 'fas',\n iconName: 'pepper-hot',\n icon: [512, 512, [127798], \"f816\", \"M428.3 3c11.6-6.4 26.2-2.3 32.6 9.3l4.8 8.7c19.3 34.7 19.8 75.7 3.4 110C495.8 159.6 512 197.9 512 240c0 18.5-3.1 36.3-8.9 52.8c-6.1 17.3-28.5 16.3-36.8-.1l-11.7-23.4c-4.1-8.1-12.4-13.3-21.5-13.3H360c-13.3 0-24-10.7-24-24V152c0-13.3-10.7-24-24-24l-17.1 0c-21.3 0-30-23.9-10.8-32.9C304.7 85.4 327.7 80 352 80c28.3 0 54.8 7.3 77.8 20.2c5.5-18.2 3.7-38.4-6-55.8L419 35.7c-6.4-11.6-2.3-26.2 9.3-32.6zM171.2 345.5L264 160l40 0v80c0 26.5 21.5 48 48 48h76.2l23.9 47.8C372.3 443.9 244.3 512 103.2 512H44.4C19.9 512 0 492.1 0 467.6c0-20.8 14.5-38.8 34.8-43.3l49.8-11.1c37.6-8.4 69.5-33.2 86.7-67.7z\"]\n};\nvar faUnlock = {\n prefix: 'fas',\n iconName: 'unlock',\n icon: [448, 512, [128275], \"f09c\", \"M144 144c0-44.2 35.8-80 80-80c31.9 0 59.4 18.6 72.3 45.7c7.6 16 26.7 22.8 42.6 15.2s22.8-26.7 15.2-42.6C331 33.7 281.5 0 224 0C144.5 0 80 64.5 80 144v48H64c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V256c0-35.3-28.7-64-64-64H144V144z\"]\n};\nvar faColonSign = {\n prefix: 'fas',\n iconName: 'colon-sign',\n icon: [384, 512, [], \"e140\", \"M255 39.8c4.3-17.1-6.1-34.5-23.3-38.8S197.2 7.1 193 24.2L181.9 68.6C96.1 87.8 32 164.4 32 256c0 58.1 25.8 110.2 66.7 145.4L81 472.2c-4.3 17.1 6.1 34.5 23.3 38.8s34.5-6.1 38.8-23.3l13-52.1c9 3.4 18.4 6.2 28 8.2L177 472.2c-4.3 17.1 6.1 34.5 23.3 38.8s34.5-6.1 38.8-23.3l10.4-41.4c33.4-4.4 64.1-17.4 89.8-36.7c14.1-10.6 17-30.7 6.4-44.8s-30.7-17-44.8-6.4c-10.2 7.7-21.7 13.9-34 18.3L321 160c9.4-.3 18.5-4.7 24.6-12.8c10.6-14.1 7.8-34.2-6.4-44.8c-1.1-.8-2.2-1.6-3.3-2.4L351 39.8c4.3-17.1-6.1-34.5-23.3-38.8S293.2 7.1 289 24.2L277.2 71.5c-9.3-2.7-18.8-4.6-28.6-5.9L255 39.8zM163.2 143.3L117.3 326.8C103.9 306.5 96 282.2 96 256c0-48.7 27.2-91 67.2-112.7zm8.6 229.5l61.1-244.6c9.9 .7 19.5 2.5 28.7 5.3l-62 248.1c-9.7-1.9-19-4.8-27.8-8.8z\"]\n};\nvar faHeadset = {\n prefix: 'fas',\n iconName: 'headset',\n icon: [512, 512, [], \"f590\", \"M256 48C141.1 48 48 141.1 48 256v40c0 13.3-10.7 24-24 24s-24-10.7-24-24V256C0 114.6 114.6 0 256 0S512 114.6 512 256V400.1c0 48.6-39.4 88-88.1 88L313.6 488c-8.3 14.3-23.8 24-41.6 24H240c-26.5 0-48-21.5-48-48s21.5-48 48-48h32c17.8 0 33.3 9.7 41.6 24l110.4 .1c22.1 0 40-17.9 40-40V256c0-114.9-93.1-208-208-208zM144 208h16c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32H144c-35.3 0-64-28.7-64-64V272c0-35.3 28.7-64 64-64zm224 0c35.3 0 64 28.7 64 64v48c0 35.3-28.7 64-64 64H352c-17.7 0-32-14.3-32-32V240c0-17.7 14.3-32 32-32h16z\"]\n};\nvar faStoreSlash = {\n prefix: 'fas',\n iconName: 'store-slash',\n icon: [640, 512, [], \"e071\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-86.8-68V384 252.6c-4 1-8 1.8-12.3 2.3l-.1 0c-5.3 .7-10.7 1.1-16.2 1.1c-12.4 0-24.3-1.9-35.4-5.3V350.9L301.2 210.7c7-4.4 13.3-9.7 18.8-15.7c15.9 17.6 39.1 29 65.2 29c26.2 0 49.3-11.4 65.2-29c16 17.6 39.1 29 65.2 29c4.1 0 8.1-.3 12.1-.8c55.5-7.4 81.8-72.5 52.1-119.4L522.3 13.1C517.2 5 508.1 0 498.4 0H141.6c-9.7 0-18.8 5-23.9 13.1l-22.7 36L38.8 5.1zM514.9 501.7L365.5 384H160V250.6c-11.2 3.5-23.2 5.4-35.6 5.4c-5.5 0-11-.4-16.3-1.1l-.1 0c-4.1-.6-8.1-1.3-12-2.3V384v64c0 35.3 28.7 64 64 64H480c12.9 0 24.8-3.8 34.9-10.3zM155.3 218.4L48.9 134.5c-6.1 40.6 19.5 82.8 63.3 88.7c4 .5 8.1 .8 12.1 .8c11 0 21.4-2 31-5.6z\"]\n};\nvar faRoadCircleXmark = {\n prefix: 'fas',\n iconName: 'road-circle-xmark',\n icon: [640, 512, [], \"e566\", \"M213.2 32H288V96c0 17.7 14.3 32 32 32s32-14.3 32-32V32h74.8c27.1 0 51.3 17.1 60.3 42.6l42.7 120.6c-10.9-2.1-22.2-3.2-33.8-3.2c-59.5 0-112.1 29.6-144 74.8V224c0-17.7-14.3-32-32-32s-32 14.3-32 32v64c0 17.7 14.3 32 32 32c2.3 0 4.6-.3 6.8-.7c-4.5 15.5-6.8 31.8-6.8 48.7c0 5.4 .2 10.7 .7 16l-.7 0c-17.7 0-32 14.3-32 32v64H86.6C56.5 480 32 455.5 32 425.4c0-6.2 1.1-12.4 3.1-18.2L152.9 74.6C162 49.1 186.1 32 213.2 32zM496 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm22.6 144l36.7-36.7c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0L496 345.4l-36.7-36.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L473.4 368l-36.7 36.7c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L496 390.6l36.7 36.7c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6L518.6 368z\"]\n};\nvar faUserMinus = {\n prefix: 'fas',\n iconName: 'user-minus',\n icon: [640, 512, [], \"f503\", \"M96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM0 482.3C0 383.8 79.8 304 178.3 304h91.4C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3zM472 200H616c13.3 0 24 10.7 24 24s-10.7 24-24 24H472c-13.3 0-24-10.7-24-24s10.7-24 24-24z\"]\n};\nvar faMarsStrokeUp = {\n prefix: 'fas',\n iconName: 'mars-stroke-up',\n icon: [320, 512, [9896, \"mars-stroke-v\"], \"f22a\", \"M148.7 4.7c6.2-6.2 16.4-6.2 22.6 0l64 64c4.6 4.6 5.9 11.5 3.5 17.4s-8.3 9.9-14.8 9.9H184v24h32c13.3 0 24 10.7 24 24s-10.7 24-24 24H184v24c0 .6 0 1.2-.1 1.8c77 11.6 136.1 78 136.1 158.2c0 88.4-71.6 160-160 160S0 440.4 0 352c0-80.2 59.1-146.7 136.1-158.2c0-.6-.1-1.2-.1-1.8V168H104c-13.3 0-24-10.7-24-24s10.7-24 24-24h32V96H96c-6.5 0-12.3-3.9-14.8-9.9s-1.1-12.9 3.5-17.4l64-64zM256 352A96 96 0 1 0 64 352a96 96 0 1 0 192 0z\"]\n};\nvar faMarsStrokeV = faMarsStrokeUp;\nvar faChampagneGlasses = {\n prefix: 'fas',\n iconName: 'champagne-glasses',\n icon: [640, 512, [129346, \"glass-cheers\"], \"f79f\", \"M155.6 17.3C163 3 179.9-3.6 195 1.9L320 47.5l125-45.6c15.1-5.5 32 1.1 39.4 15.4l78.8 152.9c28.8 55.8 10.3 122.3-38.5 156.6L556.1 413l41-15c16.6-6 35 2.5 41 19.1s-2.5 35-19.1 41l-71.1 25.9L476.8 510c-16.6 6.1-35-2.5-41-19.1s2.5-35 19.1-41l41-15-31.3-86.2c-59.4 5.2-116.2-34-130-95.2L320 188.8l-14.6 64.7c-13.8 61.3-70.6 100.4-130 95.2l-31.3 86.2 41 15c16.6 6 25.2 24.4 19.1 41s-24.4 25.2-41 19.1L92.2 484.1 21.1 458.2c-16.6-6.1-25.2-24.4-19.1-41s24.4-25.2 41-19.1l41 15 31.3-86.2C66.5 292.5 48.1 226 76.9 170.2L155.6 17.3zm44 54.4l-27.2 52.8L261.6 157l13.1-57.9L199.6 71.7zm240.9 0L365.4 99.1 378.5 157l89.2-32.5L440.5 71.7z\"]\n};\nvar faGlassCheers = faChampagneGlasses;\nvar faClipboard = {\n prefix: 'fas',\n iconName: 'clipboard',\n icon: [384, 512, [128203], \"f328\", \"M192 0c-41.8 0-77.4 26.7-90.5 64H64C28.7 64 0 92.7 0 128V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H282.5C269.4 26.7 233.8 0 192 0zm0 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM112 192H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faHouseCircleExclamation = {\n prefix: 'fas',\n iconName: 'house-circle-exclamation',\n icon: [640, 512, [], \"e50a\", \"M320.7 352c8.1-89.7 83.5-160 175.3-160c8.9 0 17.6 .7 26.1 1.9L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1h32v69.7c-.1 .9-.1 1.8-.1 2.8V472c0 22.1 17.9 40 40 40h16c1.2 0 2.4-.1 3.6-.2c1.5 .1 3 .2 4.5 .2H160h24c22.1 0 40-17.9 40-40V448 384c0-17.7 14.3-32 32-32h64l.7 0zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faFileArrowUp = {\n prefix: 'fas',\n iconName: 'file-arrow-up',\n icon: [384, 512, [\"file-upload\"], \"f574\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM216 408c0 13.3-10.7 24-24 24s-24-10.7-24-24V305.9l-31 31c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l72-72c9.4-9.4 24.6-9.4 33.9 0l72 72c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-31-31V408z\"]\n};\nvar faFileUpload = faFileArrowUp;\nvar faWifi = {\n prefix: 'fas',\n iconName: 'wifi',\n icon: [640, 512, [\"wifi-3\", \"wifi-strong\"], \"f1eb\", \"M54.2 202.9C123.2 136.7 216.8 96 320 96s196.8 40.7 265.8 106.9c12.8 12.2 33 11.8 45.2-.9s11.8-33-.9-45.2C549.7 79.5 440.4 32 320 32S90.3 79.5 9.8 156.7C-2.9 169-3.3 189.2 8.9 202s32.5 13.2 45.2 .9zM320 256c56.8 0 108.6 21.1 148.2 56c13.3 11.7 33.5 10.4 45.2-2.8s10.4-33.5-2.8-45.2C459.8 219.2 393 192 320 192s-139.8 27.2-190.5 72c-13.3 11.7-14.5 31.9-2.8 45.2s31.9 14.5 45.2 2.8c39.5-34.9 91.3-56 148.2-56zm64 160a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"]\n};\nvar faWifi3 = faWifi;\nvar faWifiStrong = faWifi;\nvar faBath = {\n prefix: 'fas',\n iconName: 'bath',\n icon: [512, 512, [128705, \"bathtub\"], \"f2cd\", \"M96 77.3c0-7.3 5.9-13.3 13.3-13.3c3.5 0 6.9 1.4 9.4 3.9l14.9 14.9C130 91.8 128 101.7 128 112c0 19.9 7.2 38 19.2 52c-5.3 9.2-4 21.1 3.8 29c9.4 9.4 24.6 9.4 33.9 0L289 89c9.4-9.4 9.4-24.6 0-33.9c-7.9-7.9-19.8-9.1-29-3.8C246 39.2 227.9 32 208 32c-10.3 0-20.2 2-29.2 5.5L163.9 22.6C149.4 8.1 129.7 0 109.3 0C66.6 0 32 34.6 32 77.3V256c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H96V77.3zM32 352v16c0 28.4 12.4 54 32 71.6V480c0 17.7 14.3 32 32 32s32-14.3 32-32V464H384v16c0 17.7 14.3 32 32 32s32-14.3 32-32V439.6c19.6-17.6 32-43.1 32-71.6V352H32z\"]\n};\nvar faBathtub = faBath;\nvar faUnderline = {\n prefix: 'fas',\n iconName: 'underline',\n icon: [448, 512, [], \"f0cd\", \"M16 64c0-17.7 14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H128V224c0 53 43 96 96 96s96-43 96-96V96H304c-17.7 0-32-14.3-32-32s14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H384V224c0 88.4-71.6 160-160 160s-160-71.6-160-160V96H48C30.3 96 16 81.7 16 64zM0 448c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32z\"]\n};\nvar faUserPen = {\n prefix: 'fas',\n iconName: 'user-pen',\n icon: [640, 512, [\"user-edit\"], \"f4ff\", \"M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H322.8c-3.1-8.8-3.7-18.4-1.4-27.8l15-60.1c2.8-11.3 8.6-21.5 16.8-29.7l40.3-40.3c-32.1-31-75.7-50.1-123.9-50.1H178.3zm435.5-68.3c-15.6-15.6-40.9-15.6-56.6 0l-29.4 29.4 71 71 29.4-29.4c15.6-15.6 15.6-40.9 0-56.6l-14.4-14.4zM375.9 417c-4.1 4.1-7 9.2-8.4 14.9l-15 60.1c-1.4 5.5 .2 11.2 4.2 15.2s9.7 5.6 15.2 4.2l60.1-15c5.6-1.4 10.8-4.3 14.9-8.4L576.1 358.7l-71-71L375.9 417z\"]\n};\nvar faUserEdit = faUserPen;\nvar faSignature = {\n prefix: 'fas',\n iconName: 'signature',\n icon: [640, 512, [], \"f5b7\", \"M192 128c0-17.7 14.3-32 32-32s32 14.3 32 32v7.8c0 27.7-2.4 55.3-7.1 82.5l-84.4 25.3c-40.6 12.2-68.4 49.6-68.4 92v71.9c0 40 32.5 72.5 72.5 72.5c26 0 50-13.9 62.9-36.5l13.9-24.3c26.8-47 46.5-97.7 58.4-150.5l94.4-28.3-12.5 37.5c-3.3 9.8-1.6 20.5 4.4 28.8s15.7 13.3 26 13.3H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H460.4l18-53.9c3.8-11.3 .9-23.8-7.4-32.4s-20.7-11.8-32.2-8.4L316.4 198.1c2.4-20.7 3.6-41.4 3.6-62.3V128c0-53-43-96-96-96s-96 43-96 96v32c0 17.7 14.3 32 32 32s32-14.3 32-32V128zm-9.2 177l49-14.7c-10.4 33.8-24.5 66.4-42.1 97.2l-13.9 24.3c-1.5 2.6-4.3 4.3-7.4 4.3c-4.7 0-8.5-3.8-8.5-8.5V335.6c0-14.1 9.3-26.6 22.8-30.7zM24 368c-13.3 0-24 10.7-24 24s10.7 24 24 24H64.3c-.2-2.8-.3-5.6-.3-8.5V368H24zm592 48c13.3 0 24-10.7 24-24s-10.7-24-24-24H305.9c-6.7 16.3-14.2 32.3-22.3 48H616z\"]\n};\nvar faStroopwafel = {\n prefix: 'fas',\n iconName: 'stroopwafel',\n icon: [512, 512, [], \"f551\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM312.6 63.7c-6.2-6.2-16.4-6.2-22.6 0L256 97.6 222.1 63.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l33.9 33.9-45.3 45.3-56.6-56.6c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l56.6 56.6-45.3 45.3L86.3 199.4c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L97.6 256 63.7 289.9c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l33.9-33.9 45.3 45.3-56.6 56.6c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l56.6-56.6 45.3 45.3-33.9 33.9c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L256 414.4l33.9 33.9c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-33.9-33.9 45.3-45.3 56.6 56.6c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-56.6-56.6 45.3-45.3 33.9 33.9c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6L414.4 256l33.9-33.9c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0l-33.9 33.9-45.3-45.3 56.6-56.6c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0l-56.6 56.6-45.3-45.3 33.9-33.9c6.2-6.2 6.2-16.4 0-22.6zM142.9 256l45.3-45.3L233.4 256l-45.3 45.3L142.9 256zm67.9 67.9L256 278.6l45.3 45.3L256 369.1l-45.3-45.3zM278.6 256l45.3-45.3L369.1 256l-45.3 45.3L278.6 256zm22.6-67.9L256 233.4l-45.3-45.3L256 142.9l45.3 45.3z\"]\n};\nvar faBold = {\n prefix: 'fas',\n iconName: 'bold',\n icon: [384, 512, [], \"f032\", \"M0 64C0 46.3 14.3 32 32 32H80 96 224c70.7 0 128 57.3 128 128c0 31.3-11.3 60.1-30 82.3c37.1 22.4 62 63.1 62 109.7c0 70.7-57.3 128-128 128H96 80 32c-17.7 0-32-14.3-32-32s14.3-32 32-32H48V256 96H32C14.3 96 0 81.7 0 64zM224 224c35.3 0 64-28.7 64-64s-28.7-64-64-64H112V224H224zM112 288V416H256c35.3 0 64-28.7 64-64s-28.7-64-64-64H224 112z\"]\n};\nvar faAnchorLock = {\n prefix: 'fas',\n iconName: 'anchor-lock',\n icon: [640, 512, [], \"e4ad\", \"M320 96a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm21.1 80C367 158.8 384 129.4 384 96c0-53-43-96-96-96s-96 43-96 96c0 33.4 17 62.8 42.9 80H224c-17.7 0-32 14.3-32 32s14.3 32 32 32h32V448H208c-53 0-96-43-96-96v-6.1l7 7c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L97 263c-9.4-9.4-24.6-9.4-33.9 0L7 319c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l7-7V352c0 88.4 71.6 160 160 160h80 80c8 0 15.9-.6 23.6-1.7c-4.8-9-7.6-19.3-7.6-30.3V446.7c-5.2 .9-10.5 1.3-16 1.3H320V240h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H341.1zM528 240c17.7 0 32 14.3 32 32v48H496V272c0-17.7 14.3-32 32-32zm-80 32v48c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H608c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32V272c0-44.2-35.8-80-80-80s-80 35.8-80 80z\"]\n};\nvar faBuildingNgo = {\n prefix: 'fas',\n iconName: 'building-ngo',\n icon: [384, 512, [], \"e4d7\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM168 64h48c8.8 0 16 7.2 16 16s-7.2 16-16 16H184v64h16V144c0-8.8 7.2-16 16-16s16 7.2 16 16v24c0 13.3-10.7 24-24 24H176c-13.3 0-24-10.7-24-24V80c0-8.8 7.2-16 16-16zM304 96c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16s16-7.2 16-16V112c0-8.8-7.2-16-16-16zm-48 16c0-26.5 21.5-48 48-48s48 21.5 48 48v32c0 26.5-21.5 48-48 48s-48-21.5-48-48V112zM61.3 71.1l34.7 52V80c0-8.8 7.2-16 16-16s16 7.2 16 16v96c0 7.1-4.6 13.3-11.4 15.3s-14-.6-17.9-6.4L64 132.8V176c0 8.8-7.2 16-16 16s-16-7.2-16-16V80c0-7.1 4.6-13.3 11.4-15.3s14 .6 17.9 6.4z\"]\n};\nvar faManatSign = {\n prefix: 'fas',\n iconName: 'manat-sign',\n icon: [384, 512, [], \"e1d5\", \"M192 32c-17.7 0-32 14.3-32 32V98.7C69.2 113.9 0 192.9 0 288V448c0 17.7 14.3 32 32 32s32-14.3 32-32V288c0-59.6 40.8-109.8 96-124V448c0 17.7 14.3 32 32 32s32-14.3 32-32V164c55.2 14.2 96 64.3 96 124V448c0 17.7 14.3 32 32 32s32-14.3 32-32V288c0-95.1-69.2-174.1-160-189.3V64c0-17.7-14.3-32-32-32z\"]\n};\nvar faNotEqual = {\n prefix: 'fas',\n iconName: 'not-equal',\n icon: [448, 512, [], \"f53e\", \"M369.8 37.4c14.7 9.8 18.7 29.7 8.9 44.4L337.1 144H400c17.7 0 32 14.3 32 32s-14.3 32-32 32H294.5l-64 96H400c17.7 0 32 14.3 32 32s-14.3 32-32 32H187.8l-65.2 97.7c-9.8 14.7-29.7 18.7-44.4 8.9s-18.7-29.7-8.9-44.4L110.9 368H48c-17.7 0-32-14.3-32-32s14.3-32 32-32H153.5l64-96H48c-17.7 0-32-14.3-32-32s14.3-32 32-32H260.2l65.2-97.7c9.8-14.7 29.7-18.7 44.4-8.9z\"]\n};\nvar faBorderTopLeft = {\n prefix: 'fas',\n iconName: 'border-top-left',\n icon: [448, 512, [\"border-style\"], \"f853\", \"M0 448c0 17.7 14.3 32 32 32s32-14.3 32-32l0-336c0-8.8 7.2-16 16-16l336 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L80 32C35.8 32 0 67.8 0 112L0 448zm160 0a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm192 0a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm-96 0a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm192 0a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM416 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm0 32a32 32 0 1 0 0 64 32 32 0 1 0 0-64zm0-128a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faBorderStyle = faBorderTopLeft;\nvar faMapLocationDot = {\n prefix: 'fas',\n iconName: 'map-location-dot',\n icon: [576, 512, [\"map-marked-alt\"], \"f5a0\", \"M408 120c0 54.6-73.1 151.9-105.2 192c-7.7 9.6-22 9.6-29.6 0C241.1 271.9 168 174.6 168 120C168 53.7 221.7 0 288 0s120 53.7 120 120zm8 80.4c3.5-6.9 6.7-13.8 9.6-20.6c.5-1.2 1-2.5 1.5-3.7l116-46.4C558.9 123.4 576 135 576 152V422.8c0 9.8-6 18.6-15.1 22.3L416 503V200.4zM137.6 138.3c2.4 14.1 7.2 28.3 12.8 41.5c2.9 6.8 6.1 13.7 9.6 20.6V451.8L32.9 502.7C17.1 509 0 497.4 0 480.4V209.6c0-9.8 6-18.6 15.1-22.3l122.6-49zM327.8 332c13.9-17.4 35.7-45.7 56.2-77V504.3L192 449.4V255c20.5 31.3 42.3 59.6 56.2 77c20.5 25.6 59.1 25.6 79.6 0zM288 152a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"]\n};\nvar faMapMarkedAlt = faMapLocationDot;\nvar faJedi = {\n prefix: 'fas',\n iconName: 'jedi',\n icon: [576, 512, [], \"f669\", \"M246 315.7l-21.2-31.9c-2.1-3.2-1.7-7.4 1-10.1s6.9-3.1 10.1-1l29.5 19.7c2.1 1.4 4.9 0 5-2.6L279.7 8c.1-4.5 3.8-8 8.3-8s8.1 3.5 8.3 8l9.4 281.9c.1 2.5 2.9 3.9 5 2.6l29.5-19.7c3.2-2.1 7.4-1.7 10.1 1s3.1 6.9 1 10.1L330 315.7c-1.3 1.9-.2 4.5 2 4.9l37.6 7.5c3.7 .7 6.4 4 6.4 7.8s-2.7 7.1-6.4 7.8L332 351.4c-2.2 .4-3.3 3-2 4.9l21.2 31.9c2.1 3.2 1.7 7.4-1 10.1s-6.9 3.1-10.1 1l-26.3-17.6c-2.2-1.4-5.1 .2-5 2.8l2.1 61.5C370.6 435.2 416 382.9 416 320c0-37-15.7-70.4-40.8-93.7c-7-6.5-6.5-18.6 1-24.4C410.1 175.5 432 134.3 432 88c0-16.8-2.9-33-8.2-48c-4.6-13 10.2-30 21.4-22c53.5 38 92.7 94.8 107.8 160.7c.5 2.1-.2 4.3-1.7 5.9l-28.4 28.4c-4 4-1.2 10.9 4.5 10.9h26c3.4 0 6.2 2.6 6.3 6c.1 3.3 .2 6.6 .2 10c0 17.5-1.7 34.7-4.8 51.3c-.2 1.2-.9 2.4-1.7 3.3l-46.5 46.5c-4 4-1.2 10.9 4.5 10.9H526c4.6 0 7.7 4.8 5.7 9C487.2 450.5 394.8 512 288 512S88.8 450.5 44.3 361c-2.1-4.2 1-9 5.7-9H64.5c5.7 0 8.6-6.9 4.5-10.9L22.6 294.6c-.9-.9-1.5-2-1.7-3.3C17.7 274.7 16 257.5 16 240c0-3.3 .1-6.7 .2-10c.1-3.4 2.9-6 6.3-6h26c5.7 0 8.6-6.9 4.5-10.9L24.6 184.6c-1.5-1.5-2.2-3.8-1.7-5.9C38.1 112.8 77.3 56 130.8 18c11.3-8 26 8.9 21.4 22c-5.3 15-8.2 31.2-8.2 48c0 46.3 21.9 87.5 55.8 113.9c7.5 5.8 8 17.9 1 24.4C175.7 249.6 160 283 160 320c0 62.9 45.4 115.2 105.1 126l2.1-61.5c.1-2.6-2.8-4.2-5-2.8l-26.3 17.6c-3.2 2.1-7.4 1.7-10.1-1s-3.1-6.9-1-10.1L246 356.3c1.3-1.9 .2-4.5-2-4.9l-37.6-7.5c-3.7-.7-6.4-4-6.4-7.8s2.7-7.1 6.4-7.8l37.6-7.5c2.2-.4 3.3-3 2-4.9z\"]\n};\nvar faSquarePollVertical = {\n prefix: 'fas',\n iconName: 'square-poll-vertical',\n icon: [448, 512, [\"poll\"], \"f681\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm64 192c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V256c0-17.7 14.3-32 32-32zm64-64c0-17.7 14.3-32 32-32s32 14.3 32 32V352c0 17.7-14.3 32-32 32s-32-14.3-32-32V160zM320 288c17.7 0 32 14.3 32 32v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V320c0-17.7 14.3-32 32-32z\"]\n};\nvar faPoll = faSquarePollVertical;\nvar faMugHot = {\n prefix: 'fas',\n iconName: 'mug-hot',\n icon: [512, 512, [9749], \"f7b6\", \"M88 0C74.7 0 64 10.7 64 24c0 38.9 23.4 59.4 39.1 73.1l1.1 1C120.5 112.3 128 119.9 128 136c0 13.3 10.7 24 24 24s24-10.7 24-24c0-38.9-23.4-59.4-39.1-73.1l-1.1-1C119.5 47.7 112 40.1 112 24c0-13.3-10.7-24-24-24zM32 192c-17.7 0-32 14.3-32 32V416c0 53 43 96 96 96H288c53 0 96-43 96-96h16c61.9 0 112-50.1 112-112s-50.1-112-112-112H352 32zm352 64h16c26.5 0 48 21.5 48 48s-21.5 48-48 48H384V256zM224 24c0-13.3-10.7-24-24-24s-24 10.7-24 24c0 38.9 23.4 59.4 39.1 73.1l1.1 1C232.5 112.3 240 119.9 240 136c0 13.3 10.7 24 24 24s24-10.7 24-24c0-38.9-23.4-59.4-39.1-73.1l-1.1-1C231.5 47.7 224 40.1 224 24z\"]\n};\nvar faCarBattery = {\n prefix: 'fas',\n iconName: 'car-battery',\n icon: [512, 512, [\"battery-car\"], \"f5df\", \"M80 96c0-17.7 14.3-32 32-32h64c17.7 0 32 14.3 32 32l96 0c0-17.7 14.3-32 32-32h64c17.7 0 32 14.3 32 32h16c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V160c0-35.3 28.7-64 64-64l16 0zm304 96c0-8.8-7.2-16-16-16s-16 7.2-16 16v32H320c-8.8 0-16 7.2-16 16s7.2 16 16 16h32v32c0 8.8 7.2 16 16 16s16-7.2 16-16V256h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H384V192zM80 240c0 8.8 7.2 16 16 16h96c8.8 0 16-7.2 16-16s-7.2-16-16-16H96c-8.8 0-16 7.2-16 16z\"]\n};\nvar faBatteryCar = faCarBattery;\nvar faGift = {\n prefix: 'fas',\n iconName: 'gift',\n icon: [512, 512, [127873], \"f06b\", \"M190.5 68.8L225.3 128H224 152c-22.1 0-40-17.9-40-40s17.9-40 40-40h2.2c14.9 0 28.8 7.9 36.3 20.8zM64 88c0 14.4 3.5 28 9.6 40H32c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32H438.4c6.1-12 9.6-25.6 9.6-40c0-48.6-39.4-88-88-88h-2.2c-31.9 0-61.5 16.9-77.7 44.4L256 85.5l-24.1-41C215.7 16.9 186.1 0 154.2 0H152C103.4 0 64 39.4 64 88zm336 0c0 22.1-17.9 40-40 40H288h-1.3l34.8-59.2C329.1 55.9 342.9 48 357.8 48H360c22.1 0 40 17.9 40 40zM32 288V464c0 26.5 21.5 48 48 48H224V288H32zM288 512H432c26.5 0 48-21.5 48-48V288H288V512z\"]\n};\nvar faDiceTwo = {\n prefix: 'fas',\n iconName: 'dice-two',\n icon: [448, 512, [9857], \"f528\", \"M0 96C0 60.7 28.7 32 64 32H384c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zM352 352a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM128 192a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faChessQueen = {\n prefix: 'fas',\n iconName: 'chess-queen',\n icon: [512, 512, [9819], \"f445\", \"M256 0a56 56 0 1 1 0 112A56 56 0 1 1 256 0zM134.1 143.8c3.3-13 15-23.8 30.2-23.8c12.3 0 22.6 7.2 27.7 17c12 23.2 36.2 39 64 39s52-15.8 64-39c5.1-9.8 15.4-17 27.7-17c15.3 0 27 10.8 30.2 23.8c7 27.8 32.2 48.3 62.1 48.3c10.8 0 21-2.7 29.8-7.4c8.4-4.4 18.9-4.5 27.6 .9c13 8 17.1 25 9.2 38L399.7 400H384 343.6 168.4 128 112.3L5.4 223.6c-7.9-13-3.8-30 9.2-38c8.7-5.3 19.2-5.3 27.6-.9c8.9 4.7 19 7.4 29.8 7.4c29.9 0 55.1-20.5 62.1-48.3zM256 224l0 0 0 0h0zM112 432H400l41.4 41.4c4.2 4.2 6.6 10 6.6 16c0 12.5-10.1 22.6-22.6 22.6H86.6C74.1 512 64 501.9 64 489.4c0-6 2.4-11.8 6.6-16L112 432z\"]\n};\nvar faGlasses = {\n prefix: 'fas',\n iconName: 'glasses',\n icon: [576, 512, [], \"f530\", \"M118.6 80c-11.5 0-21.4 7.9-24 19.1L57 260.3c20.5-6.2 48.3-12.3 78.7-12.3c32.3 0 61.8 6.9 82.8 13.5c10.6 3.3 19.3 6.7 25.4 9.2c3.1 1.3 5.5 2.4 7.3 3.2c.9 .4 1.6 .7 2.1 1l.6 .3 .2 .1 .1 0 0 0 0 0s0 0-6.3 12.7h0l6.3-12.7c5.8 2.9 10.4 7.3 13.5 12.7h40.6c3.1-5.3 7.7-9.8 13.5-12.7l6.3 12.7h0c-6.3-12.7-6.3-12.7-6.3-12.7l0 0 0 0 .1 0 .2-.1 .6-.3c.5-.2 1.2-.6 2.1-1c1.8-.8 4.2-1.9 7.3-3.2c6.1-2.6 14.8-5.9 25.4-9.2c21-6.6 50.4-13.5 82.8-13.5c30.4 0 58.2 6.1 78.7 12.3L481.4 99.1c-2.6-11.2-12.6-19.1-24-19.1c-3.1 0-6.2 .6-9.2 1.8L416.9 94.3c-12.3 4.9-26.3-1.1-31.2-13.4s1.1-26.3 13.4-31.2l31.3-12.5c8.6-3.4 17.7-5.2 27-5.2c33.8 0 63.1 23.3 70.8 56.2l43.9 188c1.7 7.3 2.9 14.7 3.5 22.1c.3 1.9 .5 3.8 .5 5.7v6.7V352v16c0 61.9-50.1 112-112 112H419.7c-59.4 0-108.5-46.4-111.8-105.8L306.6 352H269.4l-1.2 22.2C264.9 433.6 215.8 480 156.3 480H112C50.1 480 0 429.9 0 368V352 310.7 304c0-1.9 .2-3.8 .5-5.7c.6-7.4 1.8-14.8 3.5-22.1l43.9-188C55.5 55.3 84.8 32 118.6 32c9.2 0 18.4 1.8 27 5.2l31.3 12.5c12.3 4.9 18.3 18.9 13.4 31.2s-18.9 18.3-31.2 13.4L127.8 81.8c-2.9-1.2-6-1.8-9.2-1.8zM64 325.4V368c0 26.5 21.5 48 48 48h44.3c25.5 0 46.5-19.9 47.9-45.3l2.5-45.6c-2.3-.8-4.9-1.7-7.5-2.5c-17.2-5.4-39.9-10.5-63.6-10.5c-23.7 0-46.2 5.1-63.2 10.5c-3.1 1-5.9 1.9-8.5 2.9zM512 368V325.4c-2.6-.9-5.5-1.9-8.5-2.9c-17-5.4-39.5-10.5-63.2-10.5c-23.7 0-46.4 5.1-63.6 10.5c-2.7 .8-5.2 1.7-7.5 2.5l2.5 45.6c1.4 25.4 22.5 45.3 47.9 45.3H464c26.5 0 48-21.5 48-48z\"]\n};\nvar faChessBoard = {\n prefix: 'fas',\n iconName: 'chess-board',\n icon: [448, 512, [], \"f43c\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm64 64v64h64V96h64v64h64V96h64v64H320v64h64v64H320v64h64v64H320V352H256v64H192V352H128v64H64V352h64V288H64V224h64V160H64V96h64zm64 128h64V160H192v64zm0 64V224H128v64h64zm64 0H192v64h64V288zm0 0h64V224H256v64z\"]\n};\nvar faBuildingCircleCheck = {\n prefix: 'fas',\n iconName: 'building-circle-check',\n icon: [640, 512, [], \"e4d2\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c15.1 0 28.5-6.9 37.3-17.8C340.4 462.2 320 417.5 320 368c0-54.7 24.9-103.5 64-135.8V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zM640 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-76.7-43.3c6.2 6.2 6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L480 385.4l60.7-60.7c6.2-6.2 16.4-6.2 22.6 0z\"]\n};\nvar faPersonChalkboard = {\n prefix: 'fas',\n iconName: 'person-chalkboard',\n icon: [640, 512, [], \"e53d\", \"M192 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-8 384V352h16V480c0 17.7 14.3 32 32 32s32-14.3 32-32V192h56 64 16c17.7 0 32-14.3 32-32s-14.3-32-32-32H384V64H576V256H384V224H320v48c0 26.5 21.5 48 48 48H592c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H368c-26.5 0-48 21.5-48 48v80H243.1 177.1c-33.7 0-64.9 17.7-82.3 46.6l-58.3 97c-9.1 15.1-4.2 34.8 10.9 43.9s34.8 4.2 43.9-10.9L120 256.9V480c0 17.7 14.3 32 32 32s32-14.3 32-32z\"]\n};\nvar faMarsStrokeRight = {\n prefix: 'fas',\n iconName: 'mars-stroke-right',\n icon: [640, 512, [9897, \"mars-stroke-h\"], \"f22b\", \"M208 368a112 112 0 1 0 0-224 112 112 0 1 0 0 224zm174.4-88C370.7 365.8 297.1 432 208 432c-97.2 0-176-78.8-176-176s78.8-176 176-176c89.1 0 162.7 66.2 174.4 152H416V176c0-13.3 10.7-24 24-24s24 10.7 24 24v56h32V176c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l80 80c9.4 9.4 9.4 24.6 0 33.9l-80 80c-6.9 6.9-17.2 8.9-26.2 5.2s-14.8-12.5-14.8-22.2V280H464v56c0 13.3-10.7 24-24 24s-24-10.7-24-24V280H382.4z\"]\n};\nvar faMarsStrokeH = faMarsStrokeRight;\nvar faHandBackFist = {\n prefix: 'fas',\n iconName: 'hand-back-fist',\n icon: [448, 512, [\"hand-rock\"], \"f255\", \"M144 0C117.5 0 96 21.5 96 48V96v28.5V176c0 8.8-7.2 16-16 16s-16-7.2-16-16V149.3l-9 7.5C40.4 169 32 187 32 206V244c0 38 16.9 74 46.1 98.3L128 384v96c0 17.7 14.3 32 32 32H320c17.7 0 32-14.3 32-32V374.7c46.9-19 80-65 80-118.7V176 160 144c0-26.5-21.5-48-48-48c-12.4 0-23.6 4.7-32.1 12.3C350 83.5 329.3 64 304 64c-12.4 0-23.6 4.7-32.1 12.3C270 51.5 249.3 32 224 32c-12.4 0-23.6 4.7-32.1 12.3C190 19.5 169.3 0 144 0z\"]\n};\nvar faHandRock = faHandBackFist;\nvar faSquareCaretUp = {\n prefix: 'fas',\n iconName: 'square-caret-up',\n icon: [448, 512, [\"caret-square-up\"], \"f151\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM224 160c6.7 0 13 2.8 17.6 7.7l104 112c6.5 7 8.2 17.2 4.4 25.9s-12.5 14.4-22 14.4H120c-9.5 0-18.2-5.7-22-14.4s-2.1-18.9 4.4-25.9l104-112c4.5-4.9 10.9-7.7 17.6-7.7z\"]\n};\nvar faCaretSquareUp = faSquareCaretUp;\nvar faCloudShowersWater = {\n prefix: 'fas',\n iconName: 'cloud-showers-water',\n icon: [576, 512, [], \"e4e4\", \"M224 0c38.6 0 71.9 22.8 87.2 55.7C325.7 41.1 345.8 32 368 32c38.7 0 71 27.5 78.4 64H448c35.3 0 64 28.7 64 64s-28.7 64-64 64H128c-35.3 0-64-28.7-64-64s28.7-64 64-64c0-53 43-96 96-96zM140.6 292.3l-48 80c-6.8 11.4-21.6 15-32.9 8.2s-15.1-21.6-8.2-32.9l48-80c6.8-11.4 21.6-15.1 32.9-8.2s15.1 21.6 8.2 32.9zm327.8-32.9c11.4 6.8 15 21.6 8.2 32.9l-48 80c-6.8 11.4-21.6 15-32.9 8.2s-15-21.6-8.2-32.9l48-80c6.8-11.4 21.6-15.1 32.9-8.2zM252.6 292.3l-48 80c-6.8 11.4-21.6 15-32.9 8.2s-15.1-21.6-8.2-32.9l48-80c6.8-11.4 21.6-15.1 32.9-8.2s15.1 21.6 8.2 32.9zm103.8-32.9c11.4 6.8 15 21.6 8.2 32.9l-48 80c-6.8 11.4-21.6 15-32.9 8.2s-15.1-21.6-8.2-32.9l48-80c6.8-11.4 21.6-15.1 32.9-8.2zM306.5 421.9C329 437.4 356.5 448 384 448c26.9 0 55.4-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 501.7 417 512 384 512c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7l0 0C136.7 437.2 165.1 448 192 448c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z\"]\n};\nvar faChartBar = {\n prefix: 'fas',\n iconName: 'chart-bar',\n icon: [512, 512, [\"bar-chart\"], \"f080\", \"M32 32c17.7 0 32 14.3 32 32V400c0 8.8 7.2 16 16 16H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H80c-44.2 0-80-35.8-80-80V64C0 46.3 14.3 32 32 32zm96 96c0-17.7 14.3-32 32-32l192 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-192 0c-17.7 0-32-14.3-32-32zm32 64H288c17.7 0 32 14.3 32 32s-14.3 32-32 32H160c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 96H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H160c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faBarChart = faChartBar;\nvar faHandsBubbles = {\n prefix: 'fas',\n iconName: 'hands-bubbles',\n icon: [576, 512, [\"hands-wash\"], \"e05e\", \"M416 64a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm96 128a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM160 464a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM32 160l.1 72.6c.1 52.2 24 101 64 133.1c-.1-1.9-.1-3.8-.1-5.7v-8c0-71.8 37-138.6 97.9-176.7l60.2-37.6c8.6-5.4 17.9-8.4 27.3-9.4l45.9-79.5c6.6-11.5 2.7-26.2-8.8-32.8s-26.2-2.7-32.8 8.8l-78 135.1c-3.3 5.7-10.7 7.7-16.4 4.4s-7.7-10.7-4.4-16.4l62-107.4c6.6-11.5 2.7-26.2-8.8-32.8S214 5 207.4 16.5l-68 117.8 0 0 0 0-43.3 75L96 160c0-17.7-14.4-32-32-32s-32 14.4-32 32zM332.1 88.5L307.5 131c13.9 4.5 26.4 13.7 34.7 27c.9 1.5 1.8 2.9 2.5 4.4l28.9-50c6.6-11.5 2.7-26.2-8.8-32.8s-26.2-2.7-32.8 8.8zm46.4 63.7l-26.8 46.4c-.6 6-2.1 11.8-4.3 17.4H352h13.3l0 0H397l23-39.8c6.6-11.5 2.7-26.2-8.8-32.8s-26.2-2.7-32.8 8.8zM315.1 175c-9.4-15-29.1-19.5-44.1-10.2l-60.2 37.6C159.3 234.7 128 291.2 128 352v8c0 8.9 .8 17.6 2.2 26.1c35.4 8.2 61.8 40 61.8 77.9c0 6.3-.7 12.5-2.1 18.4C215.1 501 246.3 512 280 512H456c13.3 0 24-10.7 24-24s-10.7-24-24-24H364c-6.6 0-12-5.4-12-12s5.4-12 12-12H488c13.3 0 24-10.7 24-24s-10.7-24-24-24H364c-6.6 0-12-5.4-12-12s5.4-12 12-12H520c13.3 0 24-10.7 24-24s-10.7-24-24-24H364c-6.6 0-12-5.4-12-12s5.4-12 12-12H488c13.3 0 24-10.7 24-24s-10.7-24-24-24H352l0 0 0 0H258.8L305 219.1c15-9.4 19.5-29.1 10.2-44.1z\"]\n};\nvar faHandsWash = faHandsBubbles;\nvar faLessThanEqual = {\n prefix: 'fas',\n iconName: 'less-than-equal',\n icon: [448, 512, [], \"f537\", \"M395.9 93.7c16.4-6.6 24.4-25.2 17.8-41.6s-25.2-24.4-41.6-17.8l-320 128C40 167.1 32 178.9 32 192s8 24.9 20.1 29.7l320 128c16.4 6.6 35-1.4 41.6-17.8s-1.4-35-17.8-41.6L150.2 192 395.9 93.7zM32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H32z\"]\n};\nvar faTrain = {\n prefix: 'fas',\n iconName: 'train',\n icon: [448, 512, [128646], \"f238\", \"M96 0C43 0 0 43 0 96V352c0 48 35.2 87.7 81.1 94.9l-46 46C28.1 499.9 33.1 512 43 512H82.7c8.5 0 16.6-3.4 22.6-9.4L160 448H288l54.6 54.6c6 6 14.1 9.4 22.6 9.4H405c10 0 15-12.1 7.9-19.1l-46-46c46-7.1 81.1-46.9 81.1-94.9V96c0-53-43-96-96-96H96zM64 96c0-17.7 14.3-32 32-32H352c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V96zM224 288a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faEyeLowVision = {\n prefix: 'fas',\n iconName: 'eye-low-vision',\n icon: [640, 512, [\"low-vision\"], \"f2a8\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L525.6 386.7c39.6-40.6 66.4-86.1 79.9-118.4c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C465.5 68.8 400.8 32 320 32c-68.2 0-125 26.3-169.3 60.8L38.8 5.1zM223 149.5c48.6-44.3 123-50.8 179.3-11.7c60.8 42.4 78.9 123.2 44.2 186.9L408 294.5c8.4-19.3 10.6-41.4 4.8-63.3c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3c0 10.2-2.4 19.8-6.6 28.3L223 149.5zm-139.9 12c-11 14.4-20.5 28.7-28.4 42.2l339 265.7c18.7-5.5 36.2-13 52.6-21.8L83.1 161.5zm-50 86.3c-1.8 6.8-1.3 14 1.4 20.5c14.9 35.7 46.2 87.7 93 131.1C174.5 443.2 239.2 480 320 480c3.1 0 6.1-.1 9.2-.2L33.1 247.8z\"]\n};\nvar faLowVision = faEyeLowVision;\nvar faCrow = {\n prefix: 'fas',\n iconName: 'crow',\n icon: [640, 512, [], \"f520\", \"M456 0c-48.6 0-88 39.4-88 88v29.2L12.5 390.6c-14 10.8-16.6 30.9-5.9 44.9s30.9 16.6 44.9 5.9L126.1 384H259.2l46.6 113.1c5 12.3 19.1 18.1 31.3 13.1s18.1-19.1 13.1-31.3L311.1 384H352c1.1 0 2.1 0 3.2 0l46.6 113.2c5 12.3 19.1 18.1 31.3 13.1s18.1-19.1 13.1-31.3l-42-102C484.9 354.1 544 280 544 192V128v-8l80.5-20.1c8.6-2.1 13.8-10.8 11.6-19.4C629 52 603.4 32 574 32H523.9C507.7 12.5 483.3 0 456 0zm0 64a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faSailboat = {\n prefix: 'fas',\n iconName: 'sailboat',\n icon: [576, 512, [], \"e445\", \"M256 16c0-7 4.5-13.2 11.2-15.3s13.9 .4 17.9 6.1l224 320c3.4 4.9 3.8 11.3 1.1 16.6s-8.2 8.6-14.2 8.6H272c-8.8 0-16-7.2-16-16V16zM212.1 96.5c7 1.9 11.9 8.2 11.9 15.5V336c0 8.8-7.2 16-16 16H80c-5.7 0-11-3-13.8-8s-2.9-11-.1-16l128-224c3.6-6.3 11-9.4 18-7.5zM5.7 404.3C2.8 394.1 10.5 384 21.1 384H554.9c10.6 0 18.3 10.1 15.4 20.3l-4 14.3C550.7 473.9 500.4 512 443 512H133C75.6 512 25.3 473.9 9.7 418.7l-4-14.3z\"]\n};\nvar faWindowRestore = {\n prefix: 'fas',\n iconName: 'window-restore',\n icon: [512, 512, [], \"f2d2\", \"M432 64H208c-8.8 0-16 7.2-16 16V96H128V80c0-44.2 35.8-80 80-80H432c44.2 0 80 35.8 80 80V304c0 44.2-35.8 80-80 80H416V320h16c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16zM0 192c0-35.3 28.7-64 64-64H320c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V192zm64 32c0 17.7 14.3 32 32 32H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H96c-17.7 0-32 14.3-32 32z\"]\n};\nvar faSquarePlus = {\n prefix: 'fas',\n iconName: 'square-plus',\n icon: [448, 512, [61846, \"plus-square\"], \"f0fe\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM200 344V280H136c-13.3 0-24-10.7-24-24s10.7-24 24-24h64V168c0-13.3 10.7-24 24-24s24 10.7 24 24v64h64c13.3 0 24 10.7 24 24s-10.7 24-24 24H248v64c0 13.3-10.7 24-24 24s-24-10.7-24-24z\"]\n};\nvar faPlusSquare = faSquarePlus;\nvar faToriiGate = {\n prefix: 'fas',\n iconName: 'torii-gate',\n icon: [512, 512, [9961], \"f6a1\", \"M0 80c0 26.5 21.5 48 48 48H64v64h64V128h96v64h64V128h96v64h64V128h16c26.5 0 48-21.5 48-48V13.4C512 6 506 0 498.6 0c-1.7 0-3.4 .3-5 1l-49 19.6C425.7 28.1 405.5 32 385.2 32H126.8c-20.4 0-40.5-3.9-59.4-11.4L18.4 1c-1.6-.6-3.3-1-5-1C6 0 0 6 0 13.4V80zM64 288V480c0 17.7 14.3 32 32 32s32-14.3 32-32V288H384V480c0 17.7 14.3 32 32 32s32-14.3 32-32V288h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64z\"]\n};\nvar faFrog = {\n prefix: 'fas',\n iconName: 'frog',\n icon: [576, 512, [], \"f52e\", \"M368 32c41.7 0 75.9 31.8 79.7 72.5l85.6 26.3c25.4 7.8 42.8 31.3 42.8 57.9c0 21.8-11.7 41.9-30.7 52.7L400.8 323.5 493.3 416H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H480c-8.5 0-16.6-3.4-22.6-9.4L346.9 360.2c11.7-36 3.2-77.1-25.4-105.7c-40.6-40.6-106.3-40.6-146.9-.1L101 324.4c-6.4 6.1-6.7 16.2-.6 22.6s16.2 6.6 22.6 .6l73.8-70.2 .1-.1 .1-.1c3.5-3.5 7.3-6.6 11.3-9.2c27.9-18.5 65.9-15.4 90.5 9.2c24.7 24.7 27.7 62.9 9 90.9c-2.6 3.8-5.6 7.5-9 10.9L261.8 416H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H64c-35.3 0-64-28.7-64-64C0 249.6 127 112.9 289.3 97.5C296.2 60.2 328.8 32 368 32zm0 104a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faBucket = {\n prefix: 'fas',\n iconName: 'bucket',\n icon: [448, 512, [], \"e4cf\", \"M96 152v8H48v-8C48 68.1 116.1 0 200 0h48c83.9 0 152 68.1 152 152v8H352v-8c0-57.4-46.6-104-104-104H200C142.6 48 96 94.6 96 152zM0 224c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32h-5.1L388.5 469c-2.6 24.4-23.2 43-47.7 43H107.2c-24.6 0-45.2-18.5-47.7-43L37.1 256H32c-17.7 0-32-14.3-32-32z\"]\n};\nvar faImage = {\n prefix: 'fas',\n iconName: 'image',\n icon: [512, 512, [], \"f03e\", \"M0 96C0 60.7 28.7 32 64 32H448c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zM323.8 202.5c-4.5-6.6-11.9-10.5-19.8-10.5s-15.4 3.9-19.8 10.5l-87 127.6L170.7 297c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6h96 32H424c8.9 0 17.1-4.9 21.2-12.8s3.6-17.4-1.4-24.7l-120-176zM112 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z\"]\n};\nvar faMicrophone = {\n prefix: 'fas',\n iconName: 'microphone',\n icon: [384, 512, [], \"f130\", \"M192 0C139 0 96 43 96 96V256c0 53 43 96 96 96s96-43 96-96V96c0-53-43-96-96-96zM64 216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464H120c-13.3 0-24 10.7-24 24s10.7 24 24 24h72 72c13.3 0 24-10.7 24-24s-10.7-24-24-24H216V430.4c85.8-11.7 152-85.3 152-174.4V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 70.7-57.3 128-128 128s-128-57.3-128-128V216z\"]\n};\nvar faCow = {\n prefix: 'fas',\n iconName: 'cow',\n icon: [640, 512, [128004], \"f6c8\", \"M96 224v32V416c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V327.8c9.9 6.6 20.6 12 32 16.1V368c0 8.8 7.2 16 16 16s16-7.2 16-16V351.1c5.3 .6 10.6 .9 16 .9s10.7-.3 16-.9V368c0 8.8 7.2 16 16 16s16-7.2 16-16V343.8c11.4-4 22.1-9.4 32-16.1V416c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V256l32 32v49.5c0 9.5 2.8 18.7 8.1 26.6L530 427c8.8 13.1 23.5 21 39.3 21c22.5 0 41.9-15.9 46.3-38l20.3-101.6c2.6-13-.3-26.5-8-37.3l-3.9-5.5V184c0-13.3-10.7-24-24-24s-24 10.7-24 24v14.4l-52.9-74.1C496 86.5 452.4 64 405.9 64H272 256 192 144C77.7 64 24 117.7 24 184v54C9.4 249.8 0 267.8 0 288v17.6c0 8 6.4 14.4 14.4 14.4C46.2 320 72 294.2 72 262.4V256 224 184c0-24.3 12.1-45.8 30.5-58.9C98.3 135.9 96 147.7 96 160v64zM560 336a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zM166.6 166.6c-4.2-4.2-6.6-10-6.6-16c0-12.5 10.1-22.6 22.6-22.6H361.4c12.5 0 22.6 10.1 22.6 22.6c0 6-2.4 11.8-6.6 16l-23.4 23.4C332.2 211.8 302.7 224 272 224s-60.2-12.2-81.9-33.9l-23.4-23.4z\"]\n};\nvar faCaretUp = {\n prefix: 'fas',\n iconName: 'caret-up',\n icon: [320, 512, [], \"f0d8\", \"M182.6 137.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8H288c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-128-128z\"]\n};\nvar faScrewdriver = {\n prefix: 'fas',\n iconName: 'screwdriver',\n icon: [512, 512, [129691], \"f54a\", \"M465 7c-8.5-8.5-22-9.4-31.6-2.1l-104 80c-5.9 4.5-9.4 11.6-9.4 19v54.1l-85.6 85.6c6.7 4.2 13 9.3 18.8 15.1s10.9 12.2 15.1 18.8L353.9 192H408c7.5 0 14.5-3.5 19-9.4l80-104c7.4-9.6 6.5-23.1-2.1-31.6L465 7zM121.4 281.4l-112 112c-12.5 12.5-12.5 32.8 0 45.3l64 64c12.5 12.5 32.8 12.5 45.3 0l112-112c30.2-30.2 30.2-79.1 0-109.3s-79.1-30.2-109.3 0z\"]\n};\nvar faFolderClosed = {\n prefix: 'fas',\n iconName: 'folder-closed',\n icon: [512, 512, [], \"e185\", \"M448 480H64c-35.3 0-64-28.7-64-64V192H512V416c0 35.3-28.7 64-64 64zm64-320H0V96C0 60.7 28.7 32 64 32H192c20.1 0 39.1 9.5 51.2 25.6l19.2 25.6c6 8.1 15.5 12.8 25.6 12.8H448c35.3 0 64 28.7 64 64z\"]\n};\nvar faHouseTsunami = {\n prefix: 'fas',\n iconName: 'house-tsunami',\n icon: [576, 512, [], \"e515\", \"M80.8 136.5C104.9 93.8 152.6 64 209 64c16.9 0 33.1 2.7 48.2 7.7c16.8 5.5 34.9-3.6 40.4-20.4s-3.6-34.9-20.4-40.4C255.8 3.8 232.8 0 209 0C95.2 0 0 88 0 200c0 91.6 53.5 172.1 142.2 194.1c13.4 3.8 27.5 5.9 42.2 5.9c.7 0 1.4 0 2.1-.1c1.8 0 3.7 .1 5.5 .1l0 0c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.5 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.5-27.3-10.1-39.2-1.7l0 0C439.4 325.2 410.9 336 384 336c-27.5 0-55-10.6-77.5-26.1c-11.1-7.9-25.9-7.9-37 0c-22.4 15.5-49.9 26.1-77.4 26.1c0 0-.1 0-.1 0c-12.4 0-24-1.5-34.9-4.3C121.6 320.2 96 287 96 248c0-48.5 39.5-88 88.4-88c13.5 0 26.1 3 37.5 8.3c16 7.5 35.1 .6 42.5-15.5s.6-35.1-15.5-42.5C229.3 101.1 207.4 96 184.4 96c-40 0-76.4 15.4-103.6 40.5zm252-18.1c-8.1 6-12.8 15.5-12.8 25.6V265c1.6 1 3.3 2 4.8 3.1c18.4 12.7 39.6 20.3 59.2 20.3c19 0 41.2-7.9 59.2-20.3c23.8-16.7 55.8-15.3 78.1 3.4c10.6 8.8 24.2 15.6 37.3 18.6c5.8 1.4 11.2 3.4 16.2 6.2c.7-2.7 1.1-5.5 1.1-8.4l-.4-144c0-10-4.7-19.4-12.7-25.5l-95.5-72c-11.4-8.6-27.1-8.6-38.5 0l-96 72zM384 448c-27.5 0-55-10.6-77.5-26.1c-11.1-7.9-25.9-7.9-37 0C247 437.4 219.5 448 192 448c-26.9 0-55.3-10.8-77.4-26.1l0 0c-11.9-8.5-28.1-7.8-39.2 1.7c-14.4 11.9-32.5 21-50.6 25.2c-17.2 4-27.9 21.2-23.9 38.4s21.2 27.9 38.4 23.9c24.5-5.7 44.9-16.5 58.2-25C126.5 501.7 159 512 192 512c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.5 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.4-27.3-10.1-39.2-1.7l0 0C439.4 437.2 410.9 448 384 448z\"]\n};\nvar faSquareNfi = {\n prefix: 'fas',\n iconName: 'square-nfi',\n icon: [448, 512, [], \"e576\", \"M0 96C0 60.7 28.7 32 64 32H384c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zm75.7 64.6C68.8 162.5 64 168.8 64 176V336c0 8.8 7.2 16 16 16s16-7.2 16-16V233.8l66.3 110.5c3.7 6.2 11.1 9.1 18 7.2s11.7-8.2 11.7-15.4V176c0-8.8-7.2-16-16-16s-16 7.2-16 16V278.2L93.7 167.8c-3.7-6.2-11.1-9.1-18-7.2zM224 176v64 96c0 8.8 7.2 16 16 16s16-7.2 16-16V256h48c8.8 0 16-7.2 16-16s-7.2-16-16-16H256V192h48c8.8 0 16-7.2 16-16s-7.2-16-16-16H240c-8.8 0-16 7.2-16 16zm160 0c0-8.8-7.2-16-16-16s-16 7.2-16 16V336c0 8.8 7.2 16 16 16s16-7.2 16-16V176z\"]\n};\nvar faArrowUpFromGroundWater = {\n prefix: 'fas',\n iconName: 'arrow-up-from-ground-water',\n icon: [576, 512, [], \"e4b5\", \"M288 352c17.7 0 32-14.3 32-32V109.3l25.4 25.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-80-80c-12.5-12.5-32.8-12.5-45.3 0l-80 80c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L256 109.3V320c0 17.7 14.3 32 32 32zm-18.5 69.9C247 437.4 219.5 448 192 448c-26.9 0-55.3-10.8-77.4-26.1l0 0c-11.9-8.5-28.1-7.8-39.2 1.7c-14.4 11.9-32.5 21-50.6 25.2c-17.2 4-27.9 21.2-23.9 38.4s21.2 27.9 38.4 23.9c24.5-5.7 44.9-16.5 58.2-25C126.5 501.7 159 512 192 512c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.5 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.4-27.3-10.1-39.2-1.7l0 0C439.4 437.2 410.9 448 384 448c-27.5 0-55-10.6-77.5-26.1c-11.1-7.9-25.9-7.9-37 0zM192 192H48c-26.5 0-48 21.5-48 48V425c5.3-3.1 11.2-5.4 17.5-6.9c13.1-3.1 26.7-9.8 37.3-18.6c22.2-18.7 54.3-20.1 78.1-3.4c18 12.4 40.1 20.3 59.1 20.3V192zm384 48c0-26.5-21.5-48-48-48H384V416.5h0c19 0 41.2-7.9 59.2-20.3c23.8-16.7 55.8-15.3 78.1 3.4c10.6 8.8 24.2 15.6 37.3 18.6c6.3 1.5 12.1 3.8 17.5 6.9V240z\"]\n};\nvar faMartiniGlass = {\n prefix: 'fas',\n iconName: 'martini-glass',\n icon: [512, 512, [127864, \"glass-martini-alt\"], \"f57b\", \"M32 0C19.1 0 7.4 7.8 2.4 19.8s-2.2 25.7 6.9 34.9L224 269.3V448H160c-17.7 0-32 14.3-32 32s14.3 32 32 32h96 96c17.7 0 32-14.3 32-32s-14.3-32-32-32H288V269.3L502.6 54.6c9.2-9.2 11.9-22.9 6.9-34.9S492.9 0 480 0H32zM173.3 128l-64-64H402.7l-64 64H173.3z\"]\n};\nvar faGlassMartiniAlt = faMartiniGlass;\nvar faRotateLeft = {\n prefix: 'fas',\n iconName: 'rotate-left',\n icon: [512, 512, [\"rotate-back\", \"rotate-backward\", \"undo-alt\"], \"f2ea\", \"M48.5 224H40c-13.3 0-24-10.7-24-24V72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2L98.6 96.6c87.6-86.5 228.7-86.2 315.8 1c87.5 87.5 87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3c-62.2-62.2-162.7-62.5-225.3-1L185 183c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8H48.5z\"]\n};\nvar faRotateBack = faRotateLeft;\nvar faRotateBackward = faRotateLeft;\nvar faUndoAlt = faRotateLeft;\nvar faTableColumns = {\n prefix: 'fas',\n iconName: 'table-columns',\n icon: [512, 512, [\"columns\"], \"f0db\", \"M0 96C0 60.7 28.7 32 64 32H448c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zm64 64V416H224V160H64zm384 0H288V416H448V160z\"]\n};\nvar faColumns = faTableColumns;\nvar faLemon = {\n prefix: 'fas',\n iconName: 'lemon',\n icon: [448, 512, [127819], \"f094\", \"M448 96c0-35.3-28.7-64-64-64c-6.6 0-13 1-19 2.9c-22.5 7-48.1 14.9-71 9c-75.2-19.1-156.4 11-213.7 68.3S-7.2 250.8 11.9 326c5.8 22.9-2 48.4-9 71C1 403 0 409.4 0 416c0 35.3 28.7 64 64 64c6.6 0 13-1 19.1-2.9c22.5-7 48.1-14.9 71-9c75.2 19.1 156.4-11 213.7-68.3s87.5-138.5 68.3-213.7c-5.8-22.9 2-48.4 9-71c1.9-6 2.9-12.4 2.9-19.1zM212.5 127.4c-54.6 16-101.1 62.5-117.1 117.1C92.9 253 84 257.8 75.5 255.4S62.2 244 64.6 235.5c19.1-65.1 73.7-119.8 138.9-138.9c8.5-2.5 17.4 2.4 19.9 10.9s-2.4 17.4-10.9 19.9z\"]\n};\nvar faHeadSideMask = {\n prefix: 'fas',\n iconName: 'head-side-mask',\n icon: [576, 512, [], \"e063\", \"M32 224.2c0-22.2 3.2-43.6 9.2-63.9L262.2 321c-4 9.5-6.2 20-6.2 31V512H128c-17.7 0-32-14.3-32-32V407.3c0-16.7-6.9-32.5-17.1-45.8C48.6 322.4 32 274.1 32 224.2zm248.3 70.4L53 129.3C88.7 53 166.2 0 256 0h24c95.2 0 181.2 69.3 197.3 160.2c2.3 13 6.8 25.7 15.1 36l42 52.6c5.4 6.7 8.6 14.8 9.4 23.2H336c-21.7 0-41.3 8.6-55.7 22.6zM336 304H534l0 0h10l-19.7 64H368c-8.8 0-16 7.2-16 16s7.2 16 16 16H514.5l-9.8 32H368c-8.8 0-16 7.2-16 16s7.2 16 16 16H494.8l-.9 2.8c-8.3 26.9-33.1 45.2-61.2 45.2H288V352c0-14 6-26.7 15.6-35.4c0 0 0 0 0 0c8.5-7.8 19.9-12.6 32.4-12.6zm48-80a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faHandshake = {\n prefix: 'fas',\n iconName: 'handshake',\n icon: [640, 512, [], \"f2b5\", \"M323.4 85.2l-96.8 78.4c-16.1 13-19.2 36.4-7 53.1c12.9 17.8 38 21.3 55.3 7.8l99.3-77.2c7-5.4 17-4.2 22.5 2.8s4.2 17-2.8 22.5l-20.9 16.2L512 316.8V128h-.7l-3.9-2.5L434.8 79c-15.3-9.8-33.2-15-51.4-15c-21.8 0-43 7.5-60 21.2zm22.8 124.4l-51.7 40.2C263 274.4 217.3 268 193.7 235.6c-22.2-30.5-16.6-73.1 12.7-96.8l83.2-67.3c-11.6-4.9-24.1-7.4-36.8-7.4C234 64 215.7 69.6 200 80l-72 48V352h28.2l91.4 83.4c19.6 17.9 49.9 16.5 67.8-3.1c5.5-6.1 9.2-13.2 11.1-20.6l17 15.6c19.5 17.9 49.9 16.6 67.8-2.9c4.5-4.9 7.8-10.6 9.9-16.5c19.4 13 45.8 10.3 62.1-7.5c17.9-19.5 16.6-49.9-2.9-67.8l-134.2-123zM16 128c-8.8 0-16 7.2-16 16V352c0 17.7 14.3 32 32 32H64c17.7 0 32-14.3 32-32V128H16zM48 320a16 16 0 1 1 0 32 16 16 0 1 1 0-32zM544 128V352c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V144c0-8.8-7.2-16-16-16H544zm32 208a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z\"]\n};\nvar faGem = {\n prefix: 'fas',\n iconName: 'gem',\n icon: [512, 512, [128142], \"f3a5\", \"M116.7 33.8c4.5-6.1 11.7-9.8 19.3-9.8H376c7.6 0 14.8 3.6 19.3 9.8l112 152c6.8 9.2 6.1 21.9-1.5 30.4l-232 256c-4.5 5-11 7.9-17.8 7.9s-13.2-2.9-17.8-7.9l-232-256c-7.7-8.5-8.3-21.2-1.5-30.4l112-152zm38.5 39.8c-3.3 2.5-4.2 7-2.1 10.5l57.4 95.6L63.3 192c-4.1 .3-7.3 3.8-7.3 8s3.2 7.6 7.3 8l192 16c.4 0 .9 0 1.3 0l192-16c4.1-.3 7.3-3.8 7.3-8s-3.2-7.6-7.3-8L301.5 179.8l57.4-95.6c2.1-3.5 1.2-8.1-2.1-10.5s-7.9-2-10.7 1L256 172.2 165.9 74.6c-2.8-3-7.4-3.4-10.7-1z\"]\n};\nvar faDolly = {\n prefix: 'fas',\n iconName: 'dolly',\n icon: [576, 512, [\"dolly-box\"], \"f472\", \"M0 32C0 14.3 14.3 0 32 0h72.9c27.5 0 52 17.6 60.7 43.8L257.7 320c30.1 .5 56.8 14.9 74 37l202.1-67.4c16.8-5.6 34.9 3.5 40.5 20.2s-3.5 34.9-20.2 40.5L352 417.7c-.9 52.2-43.5 94.3-96 94.3c-53 0-96-43-96-96c0-30.8 14.5-58.2 37-75.8L104.9 64H32C14.3 64 0 49.7 0 32zM244.8 134.5c-5.5-16.8 3.7-34.9 20.5-40.3L311 79.4l19.8 60.9 60.9-19.8L371.8 59.6l45.7-14.8c16.8-5.5 34.9 3.7 40.3 20.5l49.4 152.2c5.5 16.8-3.7 34.9-20.5 40.3L334.5 307.2c-16.8 5.5-34.9-3.7-40.3-20.5L244.8 134.5z\"]\n};\nvar faDollyBox = faDolly;\nvar faSmoking = {\n prefix: 'fas',\n iconName: 'smoking',\n icon: [640, 512, [128684], \"f48d\", \"M448 32V43c0 38.2 15.2 74.8 42.2 101.8l21 21c21 21 32.8 49.5 32.8 79.2v11c0 17.7-14.3 32-32 32s-32-14.3-32-32V245c0-12.7-5.1-24.9-14.1-33.9l-21-21C405.9 151.1 384 98.1 384 43V32c0-17.7 14.3-32 32-32s32 14.3 32 32zM576 256V245c0-38.2-15.2-74.8-42.2-101.8l-21-21c-21-21-32.8-49.5-32.8-79.2V32c0-17.7 14.3-32 32-32s32 14.3 32 32V43c0 12.7 5.1 24.9 14.1 33.9l21 21c39 39 60.9 91.9 60.9 147.1v11c0 17.7-14.3 32-32 32s-32-14.3-32-32zM0 416c0-35.3 28.7-64 64-64H416c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H64c-35.3 0-64-28.7-64-64V416zm224 0v32H384V416H224zm288-64c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384c0-17.7 14.3-32 32-32zm96 0c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384c0-17.7 14.3-32 32-32z\"]\n};\nvar faMinimize = {\n prefix: 'fas',\n iconName: 'minimize',\n icon: [512, 512, [\"compress-arrows-alt\"], \"f78c\", \"M456 224H312c-13.3 0-24-10.7-24-24V56c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l40 40L442.3 5.7C446 2 450.9 0 456 0s10 2 13.7 5.7l36.7 36.7C510 46 512 50.9 512 56s-2 10-5.7 13.7L433 143l40 40c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8zm0 64c9.7 0 18.5 5.8 22.2 14.8s1.7 19.3-5.2 26.2l-40 40 73.4 73.4c3.6 3.6 5.7 8.5 5.7 13.7s-2 10-5.7 13.7l-36.7 36.7C466 510 461.1 512 456 512s-10-2-13.7-5.7L369 433l-40 40c-6.9 6.9-17.2 8.9-26.2 5.2s-14.8-12.5-14.8-22.2V312c0-13.3 10.7-24 24-24H456zm-256 0c13.3 0 24 10.7 24 24V456c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-40-40L69.7 506.3C66 510 61.1 512 56 512s-10-2-13.7-5.7L5.7 469.7C2 466 0 461.1 0 456s2-10 5.7-13.7L79 369 39 329c-6.9-6.9-8.9-17.2-5.2-26.2s12.5-14.8 22.2-14.8H200zM56 224c-9.7 0-18.5-5.8-22.2-14.8s-1.7-19.3 5.2-26.2l40-40L5.7 69.7C2 66 0 61.1 0 56s2-10 5.7-13.7L42.3 5.7C46 2 50.9 0 56 0s10 2 13.7 5.7L143 79l40-40c6.9-6.9 17.2-8.9 26.2-5.2s14.8 12.5 14.8 22.2V200c0 13.3-10.7 24-24 24H56z\"]\n};\nvar faCompressArrowsAlt = faMinimize;\nvar faMonument = {\n prefix: 'fas',\n iconName: 'monument',\n icon: [384, 512, [], \"f5a6\", \"M180.7 4.7c6.2-6.2 16.4-6.2 22.6 0l80 80c2.5 2.5 4.1 5.8 4.6 9.3l40.2 322H55.9L96.1 94c.4-3.5 2-6.8 4.6-9.3l80-80zM152 272c-13.3 0-24 10.7-24 24s10.7 24 24 24h80c13.3 0 24-10.7 24-24s-10.7-24-24-24H152zM32 448H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faSnowplow = {\n prefix: 'fas',\n iconName: 'snowplow',\n icon: [640, 512, [], \"f7d2\", \"M298.9 64l68.6 160H256l-64-64V64H298.9zM445.1 242.7l-87.4-204C347.6 15.3 324.5 0 298.9 0H176c-26.5 0-48 21.5-48 48V160H96c-17.7 0-32 14.3-32 32V298.8C26.2 316.8 0 355.3 0 400c0 61.9 50.1 112 112 112H368c61.9 0 112-50.1 112-112c0-17.2-3.9-33.5-10.8-48H512v50.7c0 17 6.7 33.3 18.7 45.3l54.6 54.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L576 402.7V320 235.2L633 164c11-13.8 8.8-33.9-5-45s-33.9-8.8-45 5l-57 71.2c-9.1 11.3-14 25.4-14 40V288H448V256.7c.1-2.4-.2-4.8-.6-7.1s-1.2-4.7-2.2-6.8zM368 352c26.5 0 48 21.5 48 48s-21.5 48-48 48H112c-26.5 0-48-21.5-48-48s21.5-48 48-48H368zM144 400a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zm216 24a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm-56-24a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zM200 424a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faAnglesRight = {\n prefix: 'fas',\n iconName: 'angles-right',\n icon: [512, 512, [187, \"angle-double-right\"], \"f101\", \"M470.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 256 265.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160zm-352 160l160-160c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L210.7 256 73.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0z\"]\n};\nvar faAngleDoubleRight = faAnglesRight;\nvar faCannabis = {\n prefix: 'fas',\n iconName: 'cannabis',\n icon: [512, 512, [], \"f55f\", \"M256 0c5.3 0 10.3 2.7 13.3 7.1c15.8 23.5 36.7 63.7 49.2 109c7.2 26.4 11.8 55.2 10.4 84c11.5-8.8 23.7-16.7 35.8-23.6c41-23.3 84.4-36.9 112.2-42.5c5.2-1 10.7 .6 14.4 4.4s5.4 9.2 4.4 14.5c-5.6 27.7-19.3 70.9-42.7 111.7c-9.1 15.9-19.9 31.7-32.4 46.3c27.8 6.6 52.4 17.3 67.2 25.5c5.1 2.8 8.2 8.2 8.2 14s-3.2 11.2-8.2 14c-15.2 8.4-40.9 19.5-69.8 26.1c-20.2 4.6-42.9 7.2-65.2 4.6l8.3 33.1c1.5 6.1-.6 12.4-5.5 16.4s-11.6 4.6-17.2 1.9L280 417.2V488c0 13.3-10.7 24-24 24s-24-10.7-24-24V417.2l-58.5 29.1c-5.6 2.8-12.3 2.1-17.2-1.9s-7-10.3-5.5-16.4l8.3-33.1c-22.2 2.6-45 0-65.2-4.6c-28.9-6.6-54.6-17.6-69.8-26.1c-5.1-2.8-8.2-8.2-8.2-14s3.2-11.2 8.2-14c14.8-8.2 39.4-18.8 67.2-25.5C78.9 296.3 68.1 280.5 59 264.6c-23.4-40.8-37.1-84-42.7-111.7c-1.1-5.2 .6-10.7 4.4-14.5s9.2-5.4 14.4-4.4c27.9 5.5 71.2 19.2 112.2 42.5c12.1 6.9 24.3 14.7 35.8 23.6c-1.4-28.7 3.1-57.6 10.4-84c12.5-45.3 33.4-85.5 49.2-109c3-4.4 8-7.1 13.3-7.1z\"]\n};\nvar faCirclePlay = {\n prefix: 'fas',\n iconName: 'circle-play',\n icon: [512, 512, [61469, \"play-circle\"], \"f144\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM188.3 147.1c-7.6 4.2-12.3 12.3-12.3 20.9V344c0 8.7 4.7 16.7 12.3 20.9s16.8 4.1 24.3-.5l144-88c7.1-4.4 11.5-12.1 11.5-20.5s-4.4-16.1-11.5-20.5l-144-88c-7.4-4.5-16.7-4.7-24.3-.5z\"]\n};\nvar faPlayCircle = faCirclePlay;\nvar faTablets = {\n prefix: 'fas',\n iconName: 'tablets',\n icon: [640, 512, [], \"f490\", \"M614.3 247c16.3-25 25.7-54.9 25.7-87C640 71.6 568.4 0 480 0c-32.1 0-61.9 9.4-87 25.7c-7.9 5.2-8.5 16.2-1.8 22.9L591.4 248.8c6.7 6.7 17.8 6.2 22.9-1.8zM567 294.3c7.9-5.2 8.5-16.2 1.8-22.9L368.6 71.2c-6.7-6.7-17.8-6.2-22.9 1.8c-16.3 25-25.7 54.9-25.7 87c0 88.4 71.6 160 160 160c32.1 0 61.9-9.4 87-25.7zM301.5 368H18.5c-9.5 0-16.9 8.2-15 17.5C18.9 457.8 83.1 512 160 512s141.1-54.2 156.5-126.5c2-9.3-5.5-17.5-15-17.5zm0-32c9.5 0 16.9-8.2 15-17.5C301.1 246.2 236.9 192 160 192S18.9 246.2 3.5 318.5c-2 9.3 5.5 17.5 15 17.5H301.5z\"]\n};\nvar faEthernet = {\n prefix: 'fas',\n iconName: 'ethernet',\n icon: [512, 512, [], \"f796\", \"M0 224V416c0 17.7 14.3 32 32 32H96V336c0-8.8 7.2-16 16-16s16 7.2 16 16V448h64V336c0-8.8 7.2-16 16-16s16 7.2 16 16V448h64V336c0-8.8 7.2-16 16-16s16 7.2 16 16V448h64V336c0-8.8 7.2-16 16-16s16 7.2 16 16V448h64c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32H448V160c0-17.7-14.3-32-32-32H384V96c0-17.7-14.3-32-32-32H160c-17.7 0-32 14.3-32 32v32H96c-17.7 0-32 14.3-32 32v32H32c-17.7 0-32 14.3-32 32z\"]\n};\nvar faEuroSign = {\n prefix: 'fas',\n iconName: 'euro-sign',\n icon: [320, 512, [8364, \"eur\", \"euro\"], \"f153\", \"M48.1 240c-.1 2.7-.1 5.3-.1 8v16c0 2.7 0 5.3 .1 8H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H60.3C89.9 419.9 170 480 264 480h24c17.7 0 32-14.3 32-32s-14.3-32-32-32H264c-57.9 0-108.2-32.4-133.9-80H256c17.7 0 32-14.3 32-32s-14.3-32-32-32H112.2c-.1-2.6-.2-5.3-.2-8V248c0-2.7 .1-5.4 .2-8H256c17.7 0 32-14.3 32-32s-14.3-32-32-32H130.1c25.7-47.6 76-80 133.9-80h24c17.7 0 32-14.3 32-32s-14.3-32-32-32H264C170 32 89.9 92.1 60.3 176H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H48.1z\"]\n};\nvar faEur = faEuroSign;\nvar faEuro = faEuroSign;\nvar faChair = {\n prefix: 'fas',\n iconName: 'chair',\n icon: [448, 512, [129681], \"f6c0\", \"M248 48V256h48V58.7c23.9 13.8 40 39.7 40 69.3V256h48V128C384 57.3 326.7 0 256 0H192C121.3 0 64 57.3 64 128V256h48V128c0-29.6 16.1-55.5 40-69.3V256h48V48h48zM48 288c-12.1 0-23.2 6.8-28.6 17.7l-16 32c-5 9.9-4.4 21.7 1.4 31.1S20.9 384 32 384l0 96c0 17.7 14.3 32 32 32s32-14.3 32-32V384H352v96c0 17.7 14.3 32 32 32s32-14.3 32-32V384c11.1 0 21.4-5.7 27.2-15.2s6.4-21.2 1.4-31.1l-16-32C423.2 294.8 412.1 288 400 288H48z\"]\n};\nvar faCircleCheck = {\n prefix: 'fas',\n iconName: 'circle-check',\n icon: [512, 512, [61533, \"check-circle\"], \"f058\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z\"]\n};\nvar faCheckCircle = faCircleCheck;\nvar faCircleStop = {\n prefix: 'fas',\n iconName: 'circle-stop',\n icon: [512, 512, [62094, \"stop-circle\"], \"f28d\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM192 160H320c17.7 0 32 14.3 32 32V320c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32V192c0-17.7 14.3-32 32-32z\"]\n};\nvar faStopCircle = faCircleStop;\nvar faCompassDrafting = {\n prefix: 'fas',\n iconName: 'compass-drafting',\n icon: [512, 512, [\"drafting-compass\"], \"f568\", \"M352 96c0 14.3-3.1 27.9-8.8 40.2L396 227.4c-23.7 25.3-54.2 44.1-88.5 53.6L256 192h0 0l-68 117.5c21.5 6.8 44.3 10.5 68.1 10.5c70.7 0 133.8-32.7 174.9-84c11.1-13.8 31.2-16 45-5s16 31.2 5 45C428.1 341.8 347 384 256 384c-35.4 0-69.4-6.4-100.7-18.1L98.7 463.7C94 471.8 87 478.4 78.6 482.6L23.2 510.3c-5 2.5-10.9 2.2-15.6-.7S0 501.5 0 496V440.6c0-8.4 2.2-16.7 6.5-24.1l60-103.7C53.7 301.6 41.8 289.3 31.2 276c-11.1-13.8-8.8-33.9 5-45s33.9-8.8 45 5c5.7 7.1 11.8 13.8 18.2 20.1l69.4-119.9c-5.6-12.2-8.8-25.8-8.8-40.2c0-53 43-96 96-96s96 43 96 96zm21 297.9c32.6-12.8 62.5-30.8 88.9-52.9l43.7 75.5c4.2 7.3 6.5 15.6 6.5 24.1V496c0 5.5-2.9 10.7-7.6 13.6s-10.6 3.2-15.6 .7l-55.4-27.7c-8.4-4.2-15.4-10.8-20.1-18.9L373 393.9zM256 128a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faDraftingCompass = faCompassDrafting;\nvar faPlateWheat = {\n prefix: 'fas',\n iconName: 'plate-wheat',\n icon: [512, 512, [], \"e55a\", \"M176 32c44.2 0 80 35.8 80 80v16c0 8.8-7.2 16-16 16c-44.2 0-80-35.8-80-80V48c0-8.8 7.2-16 16-16zM56 64h48c13.3 0 24 10.7 24 24s-10.7 24-24 24H56c-13.3 0-24-10.7-24-24s10.7-24 24-24zM24 136H136c13.3 0 24 10.7 24 24s-10.7 24-24 24H24c-13.3 0-24-10.7-24-24s10.7-24 24-24zm8 96c0-13.3 10.7-24 24-24h48c13.3 0 24 10.7 24 24s-10.7 24-24 24H56c-13.3 0-24-10.7-24-24zM272 48c0-8.8 7.2-16 16-16c44.2 0 80 35.8 80 80v16c0 8.8-7.2 16-16 16c-44.2 0-80-35.8-80-80V48zM400 32c44.2 0 80 35.8 80 80v16c0 8.8-7.2 16-16 16c-44.2 0-80-35.8-80-80V48c0-8.8 7.2-16 16-16zm80 160v16c0 44.2-35.8 80-80 80c-8.8 0-16-7.2-16-16V256c0-44.2 35.8-80 80-80c8.8 0 16 7.2 16 16zM352 176c8.8 0 16 7.2 16 16v16c0 44.2-35.8 80-80 80c-8.8 0-16-7.2-16-16V256c0-44.2 35.8-80 80-80zm-96 16v16c0 44.2-35.8 80-80 80c-8.8 0-16-7.2-16-16V256c0-44.2 35.8-80 80-80c8.8 0 16 7.2 16 16zM3.5 347.6C1.6 332.9 13 320 27.8 320H484.2c14.8 0 26.2 12.9 24.4 27.6C502.3 397.8 464.2 437 416 446v2c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32v-2c-48.2-9-86.3-48.2-92.5-98.4z\"]\n};\nvar faIcicles = {\n prefix: 'fas',\n iconName: 'icicles',\n icon: [512, 512, [], \"f7ad\", \"M75.8 304.8L1 35.7c-.7-2.5-1-5-1-7.5C0 12.6 12.6 0 28.2 0H482.4C498.8 0 512 13.2 512 29.6c0 1.6-.1 3.3-.4 4.9L434.6 496.1c-1.5 9.2-9.5 15.9-18.8 15.9c-9.2 0-17.1-6.6-18.7-15.6L336 160 307.2 303.9c-1.9 9.3-10.1 16.1-19.6 16.1c-9.2 0-17.2-6.2-19.4-15.1L240 192 210.6 368.2c-1.5 9.1-9.4 15.8-18.6 15.8s-17.1-6.7-18.6-15.8L144 192 115.9 304.3c-2.3 9.2-10.6 15.7-20.1 15.7c-9.3 0-17.5-6.2-20-15.2z\"]\n};\nvar faPersonShelter = {\n prefix: 'fas',\n iconName: 'person-shelter',\n icon: [512, 512, [], \"e54f\", \"M271.9 4.2c-9.8-5.6-21.9-5.6-31.8 0l-224 128C6.2 137.9 0 148.5 0 160V480c0 17.7 14.3 32 32 32s32-14.3 32-32V178.6L256 68.9 448 178.6V480c0 17.7 14.3 32 32 32s32-14.3 32-32V160c0-11.5-6.2-22.1-16.1-27.8l-224-128zM256 208a40 40 0 1 0 0-80 40 40 0 1 0 0 80zm-8 280V400h16v88c0 13.3 10.7 24 24 24s24-10.7 24-24V313.5l26.9 49.9c6.3 11.7 20.8 16 32.5 9.8s16-20.8 9.8-32.5l-37.9-70.3c-15.3-28.5-45.1-46.3-77.5-46.3H246.2c-32.4 0-62.1 17.8-77.5 46.3l-37.9 70.3c-6.3 11.7-1.9 26.2 9.8 32.5s26.2 1.9 32.5-9.8L200 313.5V488c0 13.3 10.7 24 24 24s24-10.7 24-24z\"]\n};\nvar faNeuter = {\n prefix: 'fas',\n iconName: 'neuter',\n icon: [384, 512, [9906], \"f22c\", \"M80 176a112 112 0 1 1 224 0A112 112 0 1 1 80 176zM224 349.1c81.9-15 144-86.8 144-173.1C368 78.8 289.2 0 192 0S16 78.8 16 176c0 86.3 62.1 158.1 144 173.1V480c0 17.7 14.3 32 32 32s32-14.3 32-32V349.1z\"]\n};\nvar faIdBadge = {\n prefix: 'fas',\n iconName: 'id-badge',\n icon: [384, 512, [], \"f2c1\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64zm96 320h64c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80zm-32-96a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM144 64h96c8.8 0 16 7.2 16 16s-7.2 16-16 16H144c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faMarker = {\n prefix: 'fas',\n iconName: 'marker',\n icon: [512, 512, [], \"f5a1\", \"M481 31C445.1-4.8 386.9-4.8 351 31l-15 15L322.9 33C294.8 4.9 249.2 4.9 221.1 33L135 119c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0L255 66.9c9.4-9.4 24.6-9.4 33.9 0L302.1 80 186.3 195.7 316.3 325.7 481 161c35.9-35.9 35.9-94.1 0-129.9zM293.7 348.3L163.7 218.3 99.5 282.5c-48 48-80.8 109.2-94.1 175.8l-5 25c-1.6 7.9 .9 16 6.6 21.7s13.8 8.1 21.7 6.6l25-5c66.6-13.3 127.8-46.1 175.8-94.1l64.2-64.2z\"]\n};\nvar faFaceLaughBeam = {\n prefix: 'fas',\n iconName: 'face-laugh-beam',\n icon: [512, 512, [128513, \"laugh-beam\"], \"f59a\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM96.8 314.1c-3.8-13.7 7.4-26.1 21.6-26.1H393.6c14.2 0 25.5 12.4 21.6 26.1C396.2 382 332.1 432 256 432s-140.2-50-159.2-117.9zM217.6 212.8l0 0 0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0zm160 0l0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0 0 0z\"]\n};\nvar faLaughBeam = faFaceLaughBeam;\nvar faHelicopterSymbol = {\n prefix: 'fas',\n iconName: 'helicopter-symbol',\n icon: [512, 512, [], \"e502\", \"M445.3 224H510C495.6 108.2 403.8 16.4 288 2V66.7C368.4 80.1 431.9 143.6 445.3 224zM510 288H445.3C431.9 368.4 368.4 431.9 288 445.4V510c115.8-14.4 207.6-106.2 222-222zM2 288C16.4 403.8 108.2 495.6 224 510V445.4C143.6 431.9 80.1 368.4 66.7 288H2zm0-64H66.7C80.1 143.6 143.6 80.1 224 66.7V2C108.2 16.4 16.4 108.2 2 224zm206-64c0-17.7-14.3-32-32-32s-32 14.3-32 32V352c0 17.7 14.3 32 32 32s32-14.3 32-32V288h96v64c0 17.7 14.3 32 32 32s32-14.3 32-32V160c0-17.7-14.3-32-32-32s-32 14.3-32 32v64H208V160z\"]\n};\nvar faUniversalAccess = {\n prefix: 'fas',\n iconName: 'universal-access',\n icon: [512, 512, [], \"f29a\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm161.5-86.1c-12.2-5.2-26.3 .4-31.5 12.6s.4 26.3 12.6 31.5l11.9 5.1c17.3 7.4 35.2 12.9 53.6 16.3v50.1c0 4.3-.7 8.6-2.1 12.6l-28.7 86.1c-4.2 12.6 2.6 26.2 15.2 30.4s26.2-2.6 30.4-15.2l24.4-73.2c1.3-3.8 4.8-6.4 8.8-6.4s7.6 2.6 8.8 6.4l24.4 73.2c4.2 12.6 17.8 19.4 30.4 15.2s19.4-17.8 15.2-30.4l-28.7-86.1c-1.4-4.1-2.1-8.3-2.1-12.6V235.5c18.4-3.5 36.3-8.9 53.6-16.3l11.9-5.1c12.2-5.2 17.8-19.3 12.6-31.5s-19.3-17.8-31.5-12.6L338.7 175c-26.1 11.2-54.2 17-82.7 17s-56.5-5.8-82.7-17l-11.9-5.1zM256 160a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"]\n};\nvar faCircleChevronUp = {\n prefix: 'fas',\n iconName: 'circle-chevron-up',\n icon: [512, 512, [\"chevron-circle-up\"], \"f139\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM377 271c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-87-87-87 87c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9L239 167c9.4-9.4 24.6-9.4 33.9 0L377 271z\"]\n};\nvar faChevronCircleUp = faCircleChevronUp;\nvar faLariSign = {\n prefix: 'fas',\n iconName: 'lari-sign',\n icon: [384, 512, [], \"e1c8\", \"M144 32c17.7 0 32 14.3 32 32V96.7c5.3-.4 10.6-.7 16-.7s10.7 .2 16 .7V64c0-17.7 14.3-32 32-32s32 14.3 32 32v49.4c54.9 25.2 95.8 75.5 108.2 136.2c3.5 17.3-7.7 34.2-25 37.7s-34.2-7.7-37.7-25c-6.1-29.9-22.5-55.9-45.4-74.3V256c0 17.7-14.3 32-32 32s-32-14.3-32-32V161c-5.2-.7-10.6-1-16-1s-10.8 .3-16 1v95c0 17.7-14.3 32-32 32s-32-14.3-32-32V188.1C82.7 211.5 64 247.6 64 288c0 70.7 57.3 128 128 128H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H192 32c-17.7 0-32-14.3-32-32s14.3-32 32-32H48.9C18.5 382 0 337.2 0 288c0-77.5 45.9-144.3 112-174.6V64c0-17.7 14.3-32 32-32z\"]\n};\nvar faVolcano = {\n prefix: 'fas',\n iconName: 'volcano',\n icon: [512, 512, [127755], \"f770\", \"M160 144c-35.3 0-64-28.7-64-64s28.7-64 64-64c15.7 0 30 5.6 41.2 15C212.4 12.4 232.7 0 256 0s43.6 12.4 54.8 31C322 21.6 336.3 16 352 16c35.3 0 64 28.7 64 64s-28.7 64-64 64c-14.7 0-28.3-5-39.1-13.3l-32 48C275.3 187 266 192 256 192s-19.3-5-24.9-13.3l-32-48C188.3 139 174.7 144 160 144zM144 352l48.4-24.2c10.2-5.1 21.6-7.8 33-7.8c19.6 0 38.4 7.8 52.2 21.6l32.5 32.5c6.3 6.3 14.9 9.9 23.8 9.9c11.3 0 21.8-5.6 28-15l9.7-14.6-58.9-66.3c-9.1-10.2-22.2-16.1-35.9-16.1H235.1c-13.7 0-26.8 5.9-35.9 16.1l-59.9 67.4L144 352zm19.4-95.8c18.2-20.5 44.3-32.2 71.8-32.2h41.8c27.4 0 53.5 11.7 71.8 32.2l150.2 169c8.5 9.5 13.2 21.9 13.2 34.7c0 28.8-23.4 52.2-52.2 52.2H52.2C23.4 512 0 488.6 0 459.8c0-12.8 4.7-25.1 13.2-34.7l150.2-169z\"]\n};\nvar faPersonWalkingDashedLineArrowRight = {\n prefix: 'fas',\n iconName: 'person-walking-dashed-line-arrow-right',\n icon: [640, 512, [], \"e553\", \"M208 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM123.7 200.5c1-.4 1.9-.8 2.9-1.2l-16.9 63.5c-5.6 21.1-.1 43.6 14.7 59.7l70.7 77.1 22 88.1c4.3 17.1 21.7 27.6 38.8 23.3s27.6-21.7 23.3-38.8l-23-92.1c-1.9-7.8-5.8-14.9-11.2-20.8l-49.5-54 19.3-65.5 9.6 23c4.4 10.6 12.5 19.3 22.8 24.5l26.7 13.3c15.8 7.9 35 1.5 42.9-14.3s1.5-35-14.3-42.9L281 232.7l-15.3-36.8C248.5 154.8 208.3 128 163.7 128c-22.8 0-45.3 4.8-66.1 14l-8 3.5c-32.9 14.6-58.1 42.4-69.4 76.5l-2.6 7.8c-5.6 16.8 3.5 34.9 20.2 40.5s34.9-3.5 40.5-20.2l2.6-7.8c5.7-17.1 18.3-30.9 34.7-38.2l8-3.5zm-30 135.1L68.7 398 9.4 457.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L116.3 441c4.6-4.6 8.2-10.1 10.6-16.1l14.5-36.2-40.7-44.4c-2.5-2.7-4.8-5.6-7-8.6zM550.6 153.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L530.7 224H384c-17.7 0-32 14.3-32 32s14.3 32 32 32H530.7l-25.4 25.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l80-80c12.5-12.5 12.5-32.8 0-45.3l-80-80zM392 0c-13.3 0-24 10.7-24 24V72c0 13.3 10.7 24 24 24s24-10.7 24-24V24c0-13.3-10.7-24-24-24zm24 152c0-13.3-10.7-24-24-24s-24 10.7-24 24v16c0 13.3 10.7 24 24 24s24-10.7 24-24V152zM392 320c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24s24-10.7 24-24V344c0-13.3-10.7-24-24-24zm24 120c0-13.3-10.7-24-24-24s-24 10.7-24 24v48c0 13.3 10.7 24 24 24s24-10.7 24-24V440z\"]\n};\nvar faSterlingSign = {\n prefix: 'fas',\n iconName: 'sterling-sign',\n icon: [320, 512, [163, \"gbp\", \"pound-sign\"], \"f154\", \"M112 160.4c0-35.5 28.8-64.4 64.4-64.4c6.9 0 13.8 1.1 20.4 3.3l81.2 27.1c16.8 5.6 34.9-3.5 40.5-20.2s-3.5-34.9-20.2-40.5L217 38.6c-13.1-4.4-26.8-6.6-40.6-6.6C105.5 32 48 89.5 48 160.4V224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H48v44.5c0 17.4-4.7 34.5-13.7 49.4L4.6 431.5c-5.9 9.9-6.1 22.2-.4 32.2S20.5 480 32 480H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H88.5l.7-1.1C104.1 390 112 361.5 112 332.5V288H224c17.7 0 32-14.3 32-32s-14.3-32-32-32H112V160.4z\"]\n};\nvar faGbp = faSterlingSign;\nvar faPoundSign = faSterlingSign;\nvar faViruses = {\n prefix: 'fas',\n iconName: 'viruses',\n icon: [640, 512, [], \"e076\", \"M192 0c13.3 0 24 10.7 24 24V37.5c0 35.6 43.1 53.5 68.3 28.3l9.5-9.5c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-9.5 9.5C293 124.9 310.9 168 346.5 168H360c13.3 0 24 10.7 24 24s-10.7 24-24 24H346.5c-35.6 0-53.5 43.1-28.3 68.3l9.5 9.5c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-9.5-9.5C259.1 293 216 310.9 216 346.5V360c0 13.3-10.7 24-24 24s-24-10.7-24-24V346.5c0-35.6-43.1-53.5-68.3-28.3l-9.5 9.5c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l9.5-9.5C91 259.1 73.1 216 37.5 216H24c-13.3 0-24-10.7-24-24s10.7-24 24-24H37.5c35.6 0 53.5-43.1 28.3-68.3l-9.5-9.5c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l9.5 9.5C124.9 91 168 73.1 168 37.5V24c0-13.3 10.7-24 24-24zm48 224a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm-48-64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm320 80c0 33 39.9 49.5 63.2 26.2c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6C574.5 312.1 591 352 624 352c8.8 0 16 7.2 16 16s-7.2 16-16 16c-33 0-49.5 39.9-26.2 63.2c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0C551.9 446.5 512 463 512 496c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-33-39.9-49.5-63.2-26.2c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6C417.5 423.9 401 384 368 384c-8.8 0-16-7.2-16-16s7.2-16 16-16c33 0 49.5-39.9 26.2-63.2c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0C440.1 289.5 480 273 480 240c0-8.8 7.2-16 16-16s16 7.2 16 16zm0 112a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"]\n};\nvar faSquarePersonConfined = {\n prefix: 'fas',\n iconName: 'square-person-confined',\n icon: [448, 512, [], \"e577\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm96 112a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm80 104c0-30.9 25.1-56 56-56s56 25.1 56 56V350.1c0 36.4-29.5 65.9-65.9 65.9c-17.5 0-34.3-6.9-46.6-19.3L184.8 342l-28.1 56.3c-7.9 15.8-27.1 22.2-42.9 14.3s-22.2-27.1-14.3-42.9l48-96c4.6-9.2 13.3-15.6 23.5-17.3s20.5 1.7 27.8 9L240 306.7V248z\"]\n};\nvar faUserTie = {\n prefix: 'fas',\n iconName: 'user-tie',\n icon: [448, 512, [], \"f508\", \"M96 128a128 128 0 1 0 256 0A128 128 0 1 0 96 128zm94.5 200.2l18.6 31L175.8 483.1l-36-146.9c-2-8.1-9.8-13.4-17.9-11.3C51.9 342.4 0 405.8 0 481.3c0 17 13.8 30.7 30.7 30.7H162.5c0 0 0 0 .1 0H168 280h5.5c0 0 0 0 .1 0H417.3c17 0 30.7-13.8 30.7-30.7c0-75.5-51.9-138.9-121.9-156.4c-8.1-2-15.9 3.3-17.9 11.3l-36 146.9L238.9 359.2l18.6-31c6.4-10.7-1.3-24.2-13.7-24.2H224 204.3c-12.4 0-20.1 13.6-13.7 24.2z\"]\n};\nvar faArrowDownLong = {\n prefix: 'fas',\n iconName: 'arrow-down-long',\n icon: [384, 512, [\"long-arrow-down\"], \"f175\", \"M169.4 502.6c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 370.7L86.6 329.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128z\"]\n};\nvar faLongArrowDown = faArrowDownLong;\nvar faTentArrowDownToLine = {\n prefix: 'fas',\n iconName: 'tent-arrow-down-to-line',\n icon: [640, 512, [], \"e57e\", \"M241.8 111.9c8.9 9.9 8.1 25-1.8 33.9l-80 72c-9.1 8.2-23 8.2-32.1 0l-80-72c-9.9-8.9-10.7-24-1.8-33.9s24-10.7 33.9-1.8l39.9 36L120 24c0-13.3 10.7-24 24-24s24 10.7 24 24l0 122.1 39.9-36c9.9-8.9 25-8.1 33.9 1.8zm122.8 22.6c11.5-8.7 27.3-8.7 38.8 0l168 128c6.6 5 11 12.5 12.3 20.7l24 160 .7 4.7c17.5 .2 31.6 14.4 31.6 32c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H159.6l.7-4.7 24-160c1.2-8.2 5.6-15.7 12.3-20.7l168-128zM384 448h80L402.7 325.5c-1.7-3.4-5.1-5.5-8.8-5.5c-5.5 0-9.9 4.4-9.9 9.9V448z\"]\n};\nvar faCertificate = {\n prefix: 'fas',\n iconName: 'certificate',\n icon: [512, 512, [], \"f0a3\", \"M211 7.3C205 1 196-1.4 187.6 .8s-14.9 8.9-17.1 17.3L154.7 80.6l-62-17.5c-8.4-2.4-17.4 0-23.5 6.1s-8.5 15.1-6.1 23.5l17.5 62L18.1 170.6c-8.4 2.1-15 8.7-17.3 17.1S1 205 7.3 211l46.2 45L7.3 301C1 307-1.4 316 .8 324.4s8.9 14.9 17.3 17.1l62.5 15.8-17.5 62c-2.4 8.4 0 17.4 6.1 23.5s15.1 8.5 23.5 6.1l62-17.5 15.8 62.5c2.1 8.4 8.7 15 17.1 17.3s17.3-.2 23.4-6.4l45-46.2 45 46.2c6.1 6.2 15 8.7 23.4 6.4s14.9-8.9 17.1-17.3l15.8-62.5 62 17.5c8.4 2.4 17.4 0 23.5-6.1s8.5-15.1 6.1-23.5l-17.5-62 62.5-15.8c8.4-2.1 15-8.7 17.3-17.1s-.2-17.4-6.4-23.4l-46.2-45 46.2-45c6.2-6.1 8.7-15 6.4-23.4s-8.9-14.9-17.3-17.1l-62.5-15.8 17.5-62c2.4-8.4 0-17.4-6.1-23.5s-15.1-8.5-23.5-6.1l-62 17.5L341.4 18.1c-2.1-8.4-8.7-15-17.1-17.3S307 1 301 7.3L256 53.5 211 7.3z\"]\n};\nvar faReplyAll = {\n prefix: 'fas',\n iconName: 'reply-all',\n icon: [576, 512, [\"mail-reply-all\"], \"f122\", \"M209.4 39.5c-9.1-9.6-24.3-10-33.9-.9L33.8 173.2c-19.9 18.9-19.9 50.7 0 69.6L175.5 377.4c9.6 9.1 24.8 8.7 33.9-.9s8.7-24.8-.9-33.9L66.8 208 208.5 73.4c9.6-9.1 10-24.3 .9-33.9zM352 64c0-12.6-7.4-24.1-19-29.2s-25-3-34.4 5.4l-160 144c-6.7 6.1-10.6 14.7-10.6 23.8s3.9 17.7 10.6 23.8l160 144c9.4 8.5 22.9 10.6 34.4 5.4s19-16.6 19-29.2V288h32c53 0 96 43 96 96c0 30.4-12.8 47.9-22.2 56.7c-5.5 5.1-9.8 12-9.8 19.5c0 10.9 8.8 19.7 19.7 19.7c2.8 0 5.6-.6 8.1-1.9C494.5 467.9 576 417.3 576 304c0-97.2-78.8-176-176-176H352V64z\"]\n};\nvar faMailReplyAll = faReplyAll;\nvar faSuitcase = {\n prefix: 'fas',\n iconName: 'suitcase',\n icon: [512, 512, [129523], \"f0f2\", \"M176 56V96H336V56c0-4.4-3.6-8-8-8H184c-4.4 0-8 3.6-8 8zM128 96V56c0-30.9 25.1-56 56-56H328c30.9 0 56 25.1 56 56V96v32V480H128V128 96zM64 96H96V480H64c-35.3 0-64-28.7-64-64V160c0-35.3 28.7-64 64-64zM448 480H416V96h32c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64z\"]\n};\nvar faPersonSkating = {\n prefix: 'fas',\n iconName: 'person-skating',\n icon: [448, 512, [\"skating\"], \"f7c5\", \"M352 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM128 128c0-17.7 14.3-32 32-32H319.4c43.6 0 64.6 53.4 32.8 83.1l-74.4 69.4 60.2 60.2c9 9 14.1 21.2 14.1 33.9V416c0 17.7-14.3 32-32 32s-32-14.3-32-32V349.3l-77.9-77.8c-26.6-26.6-24.6-70.3 4.3-94.4l20.4-17H160c-17.7 0-32-14.3-32-32zM81.4 353.4l86.9-86.9c4.6 10 11 19.3 19.3 27.5l21.8 21.8-82.7 82.7c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3zm322.5 95.1c8.6 2.1 13.8 10.8 11.6 19.4l-.4 1.7c-6.2 24.9-28.6 42.4-54.3 42.4H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h88.8c11 0 20.6-7.5 23.3-18.2l.4-1.7c2.1-8.6 10.8-13.8 19.4-11.6zM135.2 478.3l-6.2 3.1c-21.6 10.8-47.6 6.6-64.6-10.5L4.7 411.3c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0l59.6 59.6c7.3 7.3 18.5 9.1 27.7 4.5l6.2-3.1c7.9-4 17.5-.7 21.5 7.2s.7 17.5-7.2 21.5z\"]\n};\nvar faSkating = faPersonSkating;\nvar faFilterCircleDollar = {\n prefix: 'fas',\n iconName: 'filter-circle-dollar',\n icon: [576, 512, [\"funnel-dollar\"], \"f662\", \"M3.9 22.9C10.5 8.9 24.5 0 40 0H472c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L396.4 195.6C316.2 212.1 256 283 256 368c0 27.4 6.3 53.4 17.5 76.5c-1.6-.8-3.2-1.8-4.7-2.9l-64-48c-8.1-6-12.8-15.5-12.8-25.6V288.9L9 65.3C-.7 53.4-2.8 36.8 3.9 22.9zM288 368a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm120.8-32.6c.6-.9 1.8-2.1 4.2-3.4c5.1-2.7 12.5-4.1 18.7-4c8.2 .1 17.1 1.8 26.4 4.1c8.6 2.1 17.3-3.1 19.4-11.7s-3.1-17.3-11.7-19.4c-5.6-1.4-11.6-2.7-17.9-3.7V288c0-8.8-7.2-16-16-16s-16 7.2-16 16v9.5c-6.1 1.2-12.3 3.2-18 6.3c-11.8 6.3-23 18.4-21.8 37.2c1 16 11.7 25.3 21.6 30.7c8.8 4.7 19.7 7.8 28.6 10.3l1.8 .5c10.3 2.9 17.9 5.2 23.2 8.3c4.5 2.7 4.7 4.2 4.7 5.6c.1 2.4-.5 3.7-1 4.5c-.6 1-1.8 2.2-4 3.3c-4.7 2.5-11.8 3.8-18.5 3.6c-9.5-.3-18.5-3.1-29.9-6.8c-1.9-.6-3.8-1.2-5.8-1.8c-8.4-2.6-17.4 2.1-20 10.5s2.1 17.4 10.5 20c1.6 .5 3.3 1 5 1.6l0 0 0 0c7 2.3 15.1 4.8 23.7 6.6v11.4c0 8.8 7.2 16 16 16s16-7.2 16-16V438.7c6.2-1.1 12.5-3.1 18.3-6.2c12.1-6.5 22.3-18.7 21.7-36.9c-.5-16.2-10.3-26.3-20.5-32.3c-9.4-5.6-21.2-8.9-30.5-11.5l-.2 0c-10.4-2.9-18.3-5.2-23.9-8.2c-4.8-2.6-4.8-4-4.8-4.5l0-.1c-.1-1.9 .3-2.9 .8-3.6z\"]\n};\nvar faFunnelDollar = faFilterCircleDollar;\nvar faCameraRetro = {\n prefix: 'fas',\n iconName: 'camera-retro',\n icon: [512, 512, [128247], \"f083\", \"M220.6 121.2L271.1 96 448 96v96H333.2c-21.9-15.1-48.5-24-77.2-24s-55.2 8.9-77.2 24H64V128H192c9.9 0 19.7-2.3 28.6-6.8zM0 128V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H271.1c-9.9 0-19.7 2.3-28.6 6.8L192 64H160V48c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16l0 16C28.7 64 0 92.7 0 128zM168 304a88 88 0 1 1 176 0 88 88 0 1 1 -176 0z\"]\n};\nvar faCircleArrowDown = {\n prefix: 'fas',\n iconName: 'circle-arrow-down',\n icon: [512, 512, [\"arrow-circle-down\"], \"f0ab\", \"M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM127 281c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l71 71L232 136c0-13.3 10.7-24 24-24s24 10.7 24 24l0 182.1 71-71c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L273 393c-9.4 9.4-24.6 9.4-33.9 0L127 281z\"]\n};\nvar faArrowCircleDown = faCircleArrowDown;\nvar faFileImport = {\n prefix: 'fas',\n iconName: 'file-import',\n icon: [512, 512, [\"arrow-right-to-file\"], \"f56f\", \"M128 64c0-35.3 28.7-64 64-64H352V128c0 17.7 14.3 32 32 32H512V448c0 35.3-28.7 64-64 64H192c-35.3 0-64-28.7-64-64V336H302.1l-39 39c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l80-80c9.4-9.4 9.4-24.6 0-33.9l-80-80c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l39 39H128V64zm0 224v48H24c-13.3 0-24-10.7-24-24s10.7-24 24-24H128zM512 128H384V0L512 128z\"]\n};\nvar faArrowRightToFile = faFileImport;\nvar faSquareArrowUpRight = {\n prefix: 'fas',\n iconName: 'square-arrow-up-right',\n icon: [448, 512, [\"external-link-square\"], \"f14c\", \"M384 32c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96C0 60.7 28.7 32 64 32H384zM160 144c-13.3 0-24 10.7-24 24s10.7 24 24 24h94.1L119 327c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l135-135V328c0 13.3 10.7 24 24 24s24-10.7 24-24V168c0-13.3-10.7-24-24-24H160z\"]\n};\nvar faExternalLinkSquare = faSquareArrowUpRight;\nvar faBoxOpen = {\n prefix: 'fas',\n iconName: 'box-open',\n icon: [640, 512, [], \"f49e\", \"M58.9 42.1c3-6.1 9.6-9.6 16.3-8.7L320 64 564.8 33.4c6.7-.8 13.3 2.7 16.3 8.7l41.7 83.4c9 17.9-.6 39.6-19.8 45.1L439.6 217.3c-13.9 4-28.8-1.9-36.2-14.3L320 64 236.6 203c-7.4 12.4-22.3 18.3-36.2 14.3L37.1 170.6c-19.3-5.5-28.8-27.2-19.8-45.1L58.9 42.1zM321.1 128l54.9 91.4c14.9 24.8 44.6 36.6 72.5 28.6L576 211.6v167c0 22-15 41.2-36.4 46.6l-204.1 51c-10.2 2.6-20.9 2.6-31 0l-204.1-51C79 419.7 64 400.5 64 378.5v-167L191.6 248c27.8 8 57.6-3.8 72.5-28.6L318.9 128h2.2z\"]\n};\nvar faScroll = {\n prefix: 'fas',\n iconName: 'scroll',\n icon: [576, 512, [128220], \"f70e\", \"M0 80v48c0 17.7 14.3 32 32 32H48 96V80c0-26.5-21.5-48-48-48S0 53.5 0 80zM112 32c10 13.4 16 30 16 48V384c0 35.3 28.7 64 64 64s64-28.7 64-64v-5.3c0-32.4 26.3-58.7 58.7-58.7H480V128c0-53-43-96-96-96H112zM464 480c61.9 0 112-50.1 112-112c0-8.8-7.2-16-16-16H314.7c-14.7 0-26.7 11.9-26.7 26.7V384c0 53-43 96-96 96H368h96z\"]\n};\nvar faSpa = {\n prefix: 'fas',\n iconName: 'spa',\n icon: [576, 512, [], \"f5bb\", \"M183.1 235.3c33.7 20.7 62.9 48.1 85.8 80.5c7 9.9 13.4 20.3 19.1 31c5.7-10.8 12.1-21.1 19.1-31c22.9-32.4 52.1-59.8 85.8-80.5C437.6 207.8 490.1 192 546 192h9.9c11.1 0 20.1 9 20.1 20.1C576 360.1 456.1 480 308.1 480H288 267.9C119.9 480 0 360.1 0 212.1C0 201 9 192 20.1 192H30c55.9 0 108.4 15.8 153.1 43.3zM301.5 37.6c15.7 16.9 61.1 71.8 84.4 164.6c-38 21.6-71.4 50.8-97.9 85.6c-26.5-34.8-59.9-63.9-97.9-85.6c23.2-92.8 68.6-147.7 84.4-164.6C278 33.9 282.9 32 288 32s10 1.9 13.5 5.6z\"]\n};\nvar faLocationPinLock = {\n prefix: 'fas',\n iconName: 'location-pin-lock',\n icon: [512, 512, [], \"e51f\", \"M215.7 499.2c11-13.8 25.1-31.7 40.3-52.3V352c0-23.7 12.9-44.4 32-55.4V272c0-55.6 40.5-101.7 93.6-110.5C367 70 287.7 0 192 0C86 0 0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM400 240c17.7 0 32 14.3 32 32v48H368V272c0-17.7 14.3-32 32-32zm-80 32v48c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32V272c0-44.2-35.8-80-80-80s-80 35.8-80 80z\"]\n};\nvar faPause = {\n prefix: 'fas',\n iconName: 'pause',\n icon: [320, 512, [9208], \"f04c\", \"M48 64C21.5 64 0 85.5 0 112V400c0 26.5 21.5 48 48 48H80c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48H48zm192 0c-26.5 0-48 21.5-48 48V400c0 26.5 21.5 48 48 48h32c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48H240z\"]\n};\nvar faHillAvalanche = {\n prefix: 'fas',\n iconName: 'hill-avalanche',\n icon: [576, 512, [], \"e507\", \"M439.7 401.9c34.2 23.1 81.1 19.5 111.4-10.8c34.4-34.4 34.4-90.1 0-124.4c-27.8-27.8-69.5-33.1-102.6-16c-11.8 6.1-16.4 20.6-10.3 32.3s20.6 16.4 32.3 10.3c15.1-7.8 34-5.3 46.6 7.3c15.6 15.6 15.6 40.9 0 56.6s-40.9 15.6-56.6 0l-81.7-81.7C401.2 261.3 416 236.4 416 208c0-33.9-21.1-62.9-50.9-74.5c1.9-6.8 2.9-14 2.9-21.5c0-44.2-35.8-80-80-80c-27.3 0-51.5 13.7-65.9 34.6C216.3 46.6 197.9 32 176 32c-26.5 0-48 21.5-48 48c0 4 .5 7.9 1.4 11.6L439.7 401.9zM480 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm0 128a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM68.3 87C43.1 61.8 0 79.7 0 115.3V432c0 44.2 35.8 80 80 80H396.7c35.6 0 53.5-43.1 28.3-68.3L68.3 87z\"]\n};\nvar faTemperatureEmpty = {\n prefix: 'fas',\n iconName: 'temperature-empty',\n icon: [320, 512, [\"temperature-0\", \"thermometer-0\", \"thermometer-empty\"], \"f2cb\", \"M112 112c0-26.5 21.5-48 48-48s48 21.5 48 48V276.5c0 17.3 7.1 31.9 15.3 42.5C233.8 332.6 240 349.5 240 368c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-18.5 6.2-35.4 16.7-48.9c8.2-10.6 15.3-25.2 15.3-42.5V112zM160 0C98.1 0 48 50.2 48 112V276.5c0 .1-.1 .3-.2 .6c-.2 .6-.8 1.6-1.7 2.8C27.2 304.2 16 334.8 16 368c0 79.5 64.5 144 144 144s144-64.5 144-144c0-33.2-11.2-63.8-30.1-88.1c-.9-1.2-1.5-2.2-1.7-2.8c-.1-.3-.2-.5-.2-.6V112C272 50.2 221.9 0 160 0zm0 416a48 48 0 1 0 0-96 48 48 0 1 0 0 96z\"]\n};\nvar faTemperature0 = faTemperatureEmpty;\nvar faThermometer0 = faTemperatureEmpty;\nvar faThermometerEmpty = faTemperatureEmpty;\nvar faBomb = {\n prefix: 'fas',\n iconName: 'bomb',\n icon: [512, 512, [128163], \"f1e2\", \"M459.1 52.4L442.6 6.5C440.7 2.6 436.5 0 432.1 0s-8.5 2.6-10.4 6.5L405.2 52.4l-46 16.8c-4.3 1.6-7.3 5.9-7.2 10.4c0 4.5 3 8.7 7.2 10.2l45.7 16.8 16.8 45.8c1.5 4.4 5.8 7.5 10.4 7.5s8.9-3.1 10.4-7.5l16.5-45.8 45.7-16.8c4.2-1.5 7.2-5.7 7.2-10.2c0-4.6-3-8.9-7.2-10.4L459.1 52.4zm-132.4 53c-12.5-12.5-32.8-12.5-45.3 0l-2.9 2.9C256.5 100.3 232.7 96 208 96C93.1 96 0 189.1 0 304S93.1 512 208 512s208-93.1 208-208c0-24.7-4.3-48.5-12.2-70.5l2.9-2.9c12.5-12.5 12.5-32.8 0-45.3l-80-80zM200 192c-57.4 0-104 46.6-104 104v8c0 8.8-7.2 16-16 16s-16-7.2-16-16v-8c0-75.1 60.9-136 136-136h8c8.8 0 16 7.2 16 16s-7.2 16-16 16h-8z\"]\n};\nvar faRegistered = {\n prefix: 'fas',\n iconName: 'registered',\n icon: [512, 512, [174], \"f25d\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM160 152c0-13.3 10.7-24 24-24h88c44.2 0 80 35.8 80 80c0 28-14.4 52.7-36.3 67l34.1 75.1c5.5 12.1 .1 26.3-11.9 31.8s-26.3 .1-31.8-11.9L268.9 288H208v72c0 13.3-10.7 24-24 24s-24-10.7-24-24V264 152zm48 88h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H208v64z\"]\n};\nvar faAddressCard = {\n prefix: 'fas',\n iconName: 'address-card',\n icon: [576, 512, [62140, \"contact-card\", \"vcard\"], \"f2bb\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm80 256h64c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80zm-32-96a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zm256-32H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faContactCard = faAddressCard;\nvar faVcard = faAddressCard;\nvar faScaleUnbalancedFlip = {\n prefix: 'fas',\n iconName: 'scale-unbalanced-flip',\n icon: [640, 512, [\"balance-scale-right\"], \"f516\", \"M117.9 62.4c-16.8-5.6-25.8-23.7-20.2-40.5s23.7-25.8 40.5-20.2l113 37.7C265 15.8 290.7 0 320 0c44.2 0 80 35.8 80 80c0 3-.2 5.9-.5 8.8l122.6 40.9c16.8 5.6 25.8 23.7 20.2 40.5s-23.7 25.8-40.5 20.2L366.4 145.2c-4.5 3.2-9.3 5.9-14.4 8.2V480c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32s14.3-32 32-32H288V153.3c-21-9.2-37.2-27-44.2-49l-125.9-42zM200.4 288L128 163.8 55.6 288H200.4zM128 384C65.1 384 12.8 350 2 305.1c-2.6-11 1-22.3 6.7-32.1l95.2-163.2c5-8.6 14.2-13.8 24.1-13.8s19.1 5.3 24.1 13.8l95.2 163.2c5.7 9.8 9.3 21.1 6.7 32.1C243.2 350 190.9 384 128 384zm382.8-92.2L438.4 416H583.3L510.8 291.8zm126 141.3C626 478 573.7 512 510.8 512s-115.2-34-126-78.9c-2.6-11 1-22.3 6.7-32.1l95.2-163.2c5-8.6 14.2-13.8 24.1-13.8s19.1 5.3 24.1 13.8l95.2 163.2c5.7 9.8 9.3 21.1 6.7 32.1z\"]\n};\nvar faBalanceScaleRight = faScaleUnbalancedFlip;\nvar faSubscript = {\n prefix: 'fas',\n iconName: 'subscript',\n icon: [512, 512, [], \"f12c\", \"M32 64C14.3 64 0 78.3 0 96s14.3 32 32 32H47.3l89.6 128L47.3 384H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64c10.4 0 20.2-5.1 26.2-13.6L176 311.8l85.8 122.6c6 8.6 15.8 13.6 26.2 13.6h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H304.7L215.1 256l89.6-128H320c17.7 0 32-14.3 32-32s-14.3-32-32-32H288c-10.4 0-20.2 5.1-26.2 13.6L176 200.2 90.2 77.6C84.2 69.1 74.4 64 64 64H32zM480 320c0-11.1-5.7-21.4-15.2-27.2s-21.2-6.4-31.1-1.4l-32 16c-15.8 7.9-22.2 27.1-14.3 42.9C393 361.5 404.3 368 416 368v80c-17.7 0-32 14.3-32 32s14.3 32 32 32h32 32c17.7 0 32-14.3 32-32s-14.3-32-32-32V320z\"]\n};\nvar faDiamondTurnRight = {\n prefix: 'fas',\n iconName: 'diamond-turn-right',\n icon: [512, 512, [\"directions\"], \"f5eb\", \"M227.7 11.7c15.6-15.6 40.9-15.6 56.6 0l216 216c15.6 15.6 15.6 40.9 0 56.6l-216 216c-15.6 15.6-40.9 15.6-56.6 0l-216-216c-15.6-15.6-15.6-40.9 0-56.6l216-216zm87.6 137c-4.6-4.6-11.5-5.9-17.4-3.5s-9.9 8.3-9.9 14.8v56H224c-35.3 0-64 28.7-64 64v48c0 13.3 10.7 24 24 24s24-10.7 24-24V280c0-8.8 7.2-16 16-16h64v56c0 6.5 3.9 12.3 9.9 14.8s12.9 1.1 17.4-3.5l80-80c6.2-6.2 6.2-16.4 0-22.6l-80-80z\"]\n};\nvar faDirections = faDiamondTurnRight;\nvar faBurst = {\n prefix: 'fas',\n iconName: 'burst',\n icon: [512, 512, [], \"e4dc\", \"M37.6 4.2C28-2.3 15.2-1.1 7 7s-9.4 21-2.8 30.5l112 163.3L16.6 233.2C6.7 236.4 0 245.6 0 256s6.7 19.6 16.6 22.8l103.1 33.4L66.8 412.8c-4.9 9.3-3.2 20.7 4.3 28.1s18.8 9.2 28.1 4.3l100.6-52.9 33.4 103.1c3.2 9.9 12.4 16.6 22.8 16.6s19.6-6.7 22.8-16.6l33.4-103.1 100.6 52.9c9.3 4.9 20.7 3.2 28.1-4.3s9.2-18.8 4.3-28.1L392.3 312.2l103.1-33.4c9.9-3.2 16.6-12.4 16.6-22.8s-6.7-19.6-16.6-22.8L388.9 198.7l25.7-70.4c3.2-8.8 1-18.6-5.6-25.2s-16.4-8.8-25.2-5.6l-70.4 25.7L278.8 16.6C275.6 6.7 266.4 0 256 0s-19.6 6.7-22.8 16.6l-32.3 99.6L37.6 4.2z\"]\n};\nvar faHouseLaptop = {\n prefix: 'fas',\n iconName: 'house-laptop',\n icon: [640, 512, [\"laptop-house\"], \"e066\", \"M218.3 8.5c12.3-11.3 31.2-11.3 43.4 0l208 192c6.7 6.2 10.3 14.8 10.3 23.5H336c-19.1 0-36.3 8.4-48 21.7V208c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h64V416H112c-26.5 0-48-21.5-48-48V256H32c-13.2 0-25-8.1-29.8-20.3s-1.6-26.2 8.1-35.2l208-192zM352 304V448H544V304H352zm-48-16c0-17.7 14.3-32 32-32H560c17.7 0 32 14.3 32 32V448h32c8.8 0 16 7.2 16 16c0 26.5-21.5 48-48 48H544 352 304c-26.5 0-48-21.5-48-48c0-8.8 7.2-16 16-16h32V288z\"]\n};\nvar faLaptopHouse = faHouseLaptop;\nvar faFaceTired = {\n prefix: 'fas',\n iconName: 'face-tired',\n icon: [512, 512, [128555, \"tired\"], \"f5c8\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.7 328.7c22-22 53.9-40.7 91.3-40.7s69.3 18.7 91.3 40.7c11.1 11.1 20.1 23.4 26.4 35.4c6.2 11.7 10.3 24.4 10.3 35.9c0 5.2-2.6 10.2-6.9 13.2s-9.8 3.7-14.7 1.8l-20.5-7.7c-26.9-10.1-55.5-15.3-84.3-15.3h-3.2c-28.8 0-57.3 5.2-84.3 15.3L149.6 415c-4.9 1.8-10.4 1.2-14.7-1.8s-6.9-7.9-6.9-13.2c0-11.6 4.2-24.2 10.3-35.9c6.3-12 15.3-24.3 26.4-35.4zm-31.2-182l89.9 47.9c10.7 5.7 10.7 21.1 0 26.8l-89.9 47.9c-7.9 4.2-17.5-1.5-17.5-10.5c0-2.8 1-5.5 2.8-7.6l36-43.2-36-43.2c-1.8-2.1-2.8-4.8-2.8-7.6c0-9 9.6-14.7 17.5-10.5zM396 157.1c0 2.8-1 5.5-2.8 7.6l-36 43.2 36 43.2c1.8 2.1 2.8 4.8 2.8 7.6c0 9-9.6 14.7-17.5 10.5l-89.9-47.9c-10.7-5.7-10.7-21.1 0-26.8l89.9-47.9c7.9-4.2 17.5 1.5 17.5 10.5z\"]\n};\nvar faTired = faFaceTired;\nvar faMoneyBills = {\n prefix: 'fas',\n iconName: 'money-bills',\n icon: [640, 512, [], \"e1f3\", \"M96 96V320c0 35.3 28.7 64 64 64H576c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H160c-35.3 0-64 28.7-64 64zm64 160c35.3 0 64 28.7 64 64H160V256zM224 96c0 35.3-28.7 64-64 64V96h64zM576 256v64H512c0-35.3 28.7-64 64-64zM512 96h64v64c-35.3 0-64-28.7-64-64zM288 208a80 80 0 1 1 160 0 80 80 0 1 1 -160 0zM48 120c0-13.3-10.7-24-24-24S0 106.7 0 120V360c0 66.3 53.7 120 120 120H520c13.3 0 24-10.7 24-24s-10.7-24-24-24H120c-39.8 0-72-32.2-72-72V120z\"]\n};\nvar faSmog = {\n prefix: 'fas',\n iconName: 'smog',\n icon: [640, 512, [], \"f75f\", \"M32 144c0 79.5 64.5 144 144 144H299.3c22.6 19.9 52.2 32 84.7 32s62.1-12.1 84.7-32H496c61.9 0 112-50.1 112-112s-50.1-112-112-112c-10.7 0-21 1.5-30.8 4.3C443.8 27.7 401.1 0 352 0c-32.6 0-62.4 12.2-85.1 32.3C242.1 12.1 210.5 0 176 0C96.5 0 32 64.5 32 144zM616 368H280c-13.3 0-24 10.7-24 24s10.7 24 24 24H616c13.3 0 24-10.7 24-24s-10.7-24-24-24zm-64 96H440c-13.3 0-24 10.7-24 24s10.7 24 24 24H552c13.3 0 24-10.7 24-24s-10.7-24-24-24zm-192 0H24c-13.3 0-24 10.7-24 24s10.7 24 24 24H360c13.3 0 24-10.7 24-24s-10.7-24-24-24zM224 392c0-13.3-10.7-24-24-24H96c-13.3 0-24 10.7-24 24s10.7 24 24 24H200c13.3 0 24-10.7 24-24z\"]\n};\nvar faCrutch = {\n prefix: 'fas',\n iconName: 'crutch',\n icon: [512, 512, [], \"f7f7\", \"M297.4 9.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0zm-96 144l-34.8 34.8c-12.9 12.9-21.9 29.2-25.8 47.1L116.8 342.9c-1.3 5.9-4.3 11.4-8.6 15.7L9.4 457.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l98.8-98.8c4.3-4.3 9.7-7.3 15.7-8.6l107.6-23.9c17.8-4 34.1-12.9 47.1-25.8l34.7-34.7c0 0 .1-.1 .1-.1s.1-.1 .1-.1l74.6-74.6-45.3-45.3L336 242.7 269.3 176l52.1-52.1L276.1 78.6l-74.7 74.7zM224 221.3L290.7 288l-12.2 12.2c-4.3 4.3-9.7 7.3-15.7 8.6l-76.7 17 17-76.7c1.3-5.9 4.3-11.4 8.6-15.7L224 221.3z\"]\n};\nvar faFontAwesome = {\n prefix: 'fas',\n iconName: 'font-awesome',\n icon: [512, 512, [62501, 62694, \"font-awesome-flag\", \"font-awesome-logo-full\"], \"f2b4\", \"M91.7 96C106.3 86.8 116 70.5 116 52C116 23.3 92.7 0 64 0S12 23.3 12 52c0 16.7 7.8 31.5 20 41l0 3 0 352 0 64 64 0 0-64 373.6 0c14.6 0 26.4-11.8 26.4-26.4c0-3.7-.8-7.3-2.3-10.7L432 272l61.7-138.9c1.5-3.4 2.3-7 2.3-10.7c0-14.6-11.8-26.4-26.4-26.4L91.7 96z\"]\n};\nvar faFontAwesomeFlag = faFontAwesome;\nvar faFontAwesomeLogoFull = faFontAwesome;\nvar faCloudArrowUp = {\n prefix: 'fas',\n iconName: 'cloud-arrow-up',\n icon: [640, 512, [62338, \"cloud-upload\", \"cloud-upload-alt\"], \"f0ee\", \"M144 480C64.5 480 0 415.5 0 336c0-62.8 40.2-116.2 96.2-135.9c-.1-2.7-.2-5.4-.2-8.1c0-88.4 71.6-160 160-160c59.3 0 111 32.2 138.7 80.2C409.9 102 428.3 96 448 96c53 0 96 43 96 96c0 12.2-2.3 23.8-6.4 34.6C596 238.4 640 290.1 640 352c0 70.7-57.3 128-128 128H144zm79-217c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l39-39V392c0 13.3 10.7 24 24 24s24-10.7 24-24V257.9l39 39c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-80-80c-9.4-9.4-24.6-9.4-33.9 0l-80 80z\"]\n};\nvar faCloudUpload = faCloudArrowUp;\nvar faCloudUploadAlt = faCloudArrowUp;\nvar faPalette = {\n prefix: 'fas',\n iconName: 'palette',\n icon: [512, 512, [127912], \"f53f\", \"M512 256c0 .9 0 1.8 0 2.7c-.4 36.5-33.6 61.3-70.1 61.3H344c-26.5 0-48 21.5-48 48c0 3.4 .4 6.7 1 9.9c2.1 10.2 6.5 20 10.8 29.9c6.1 13.8 12.1 27.5 12.1 42c0 31.8-21.6 60.7-53.4 62c-3.5 .1-7 .2-10.6 .2C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256zM128 288a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm0-96a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm96 96a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faArrowsTurnRight = {\n prefix: 'fas',\n iconName: 'arrows-turn-right',\n icon: [448, 512, [], \"e4c0\", \"M297.4 9.4c12.5-12.5 32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L338.7 160H128c-35.3 0-64 28.7-64 64v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V224C0 153.3 57.3 96 128 96H338.7L297.4 54.6c-12.5-12.5-12.5-32.8 0-45.3zm-96 256c12.5-12.5 32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 416H96c-17.7 0-32 14.3-32 32v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448c0-53 43-96 96-96H242.7l-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3z\"]\n};\nvar faVest = {\n prefix: 'fas',\n iconName: 'vest',\n icon: [448, 512, [], \"e085\", \"M207.1 237.4L151.2 69.7C168.6 79.7 192.6 88 224 88s55.4-8.3 72.8-18.3L226.5 280.6c-1.6 4.9-2.5 10-2.5 15.2V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V270.5c0-9.5-2.8-18.7-8.1-26.6l-47.9-71.8c-5.3-7.9-8.1-17.1-8.1-26.6V128 54.3 48c0-26.5-21.5-48-48-48h-4.5c-.2 0-.4 0-.6 0c-.4 0-.8 0-1.2 0C311 0 295.7 9.7 285.7 18.8C276.4 27.2 257.2 40 224 40s-52.4-12.8-61.7-21.2C152.3 9.7 137 0 118.3 0c-.4 0-.8 0-1.2 0c-.2 0-.4 0-.6 0H112C85.5 0 64 21.5 64 48v6.3V128v17.5c0 9.5-2.8 18.7-8.1 26.6L8.1 243.9C2.8 251.8 0 261.1 0 270.5V464c0 26.5 21.5 48 48 48H176c9.9 0 19-3 26.7-8.1C195.9 492.2 192 478.5 192 464V295.8c0-8.6 1.4-17.1 4.1-25.3l11-33.1zM347.3 356.7l48 48c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0l-48-48c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0zm-294.6 48l48-48c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6l-48 48c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6z\"]\n};\nvar faFerry = {\n prefix: 'fas',\n iconName: 'ferry',\n icon: [576, 512, [], \"e4ea\", \"M224 0H352c17.7 0 32 14.3 32 32h75.1c20.6 0 31.6 24.3 18.1 39.8L456 96H120L98.8 71.8C85.3 56.3 96.3 32 116.9 32H192c0-17.7 14.3-32 32-32zM96 128H480c17.7 0 32 14.3 32 32V283.5c0 13.3-4.2 26.3-11.9 37.2l-51.4 71.9c-1.9 1.1-3.7 2.2-5.5 3.5c-15.5 10.7-34 18-51 19.9H375.6c-17.1-1.8-35-9-50.8-19.9c-22.1-15.5-51.6-15.5-73.7 0c-14.8 10.2-32.5 18-50.6 19.9H183.9c-17-1.8-35.6-9.2-51-19.9c-1.8-1.3-3.7-2.4-5.6-3.5L75.9 320.7C68.2 309.8 64 296.8 64 283.5V160c0-17.7 14.3-32 32-32zm32 64v96H448V192H128zM306.5 421.9C329 437.4 356.5 448 384 448c26.9 0 55.3-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 501.7 417 512 384 512c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7l0 0C136.7 437.2 165.1 448 192 448c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z\"]\n};\nvar faArrowsDownToPeople = {\n prefix: 'fas',\n iconName: 'arrows-down-to-people',\n icon: [640, 512, [], \"e4b9\", \"M144 0c-13.3 0-24 10.7-24 24V142.1L97 119c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0l64-64c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-23 23V24c0-13.3-10.7-24-24-24zM360 200a40 40 0 1 0 -80 0 40 40 0 1 0 80 0zM184 296a40 40 0 1 0 -80 0 40 40 0 1 0 80 0zm312 40a40 40 0 1 0 0-80 40 40 0 1 0 0 80zM200 441.5l26.9 49.9c6.3 11.7 20.8 16 32.5 9.8s16-20.8 9.8-32.5l-36.3-67.5c1.7-1.7 3.2-3.6 4.3-5.8L264 345.5V400c0 17.7 14.3 32 32 32h48c17.7 0 32-14.3 32-32V345.5l26.9 49.9c1.2 2.2 2.6 4.1 4.3 5.8l-36.3 67.5c-6.3 11.7-1.9 26.2 9.8 32.5s26.2 1.9 32.5-9.8L440 441.5V480c0 17.7 14.3 32 32 32h48c17.7 0 32-14.3 32-32V441.5l26.9 49.9c6.3 11.7 20.8 16 32.5 9.8s16-20.8 9.8-32.5l-37.9-70.3c-15.3-28.5-45.1-46.3-77.5-46.3H486.2c-16.3 0-31.9 4.5-45.4 12.6l-33.6-62.3c-15.3-28.5-45.1-46.3-77.5-46.3H310.2c-32.4 0-62.1 17.8-77.5 46.3l-33.6 62.3c-13.5-8.1-29.1-12.6-45.4-12.6H134.2c-32.4 0-62.1 17.8-77.5 46.3L18.9 468.6c-6.3 11.7-1.9 26.2 9.8 32.5s26.2 1.9 32.5-9.8L88 441.5V480c0 17.7 14.3 32 32 32h48c17.7 0 32-14.3 32-32V441.5zM415 153l64 64c9.4 9.4 24.6 9.4 33.9 0l64-64c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-23 23V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V142.1l-23-23c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9z\"]\n};\nvar faSeedling = {\n prefix: 'fas',\n iconName: 'seedling',\n icon: [512, 512, [127793, \"sprout\"], \"f4d8\", \"M512 32c0 113.6-84.6 207.5-194.2 222c-7.1-53.4-30.6-101.6-65.3-139.3C290.8 46.3 364 0 448 0h32c17.7 0 32 14.3 32 32zM0 96C0 78.3 14.3 64 32 64H64c123.7 0 224 100.3 224 224v32V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V320C100.3 320 0 219.7 0 96z\"]\n};\nvar faSprout = faSeedling;\nvar faLeftRight = {\n prefix: 'fas',\n iconName: 'left-right',\n icon: [512, 512, [8596, \"arrows-alt-h\"], \"f337\", \"M504.3 273.6c4.9-4.5 7.7-10.9 7.7-17.6s-2.8-13-7.7-17.6l-112-104c-7-6.5-17.2-8.2-25.9-4.4s-14.4 12.5-14.4 22l0 56-192 0 0-56c0-9.5-5.7-18.2-14.4-22s-18.9-2.1-25.9 4.4l-112 104C2.8 243 0 249.3 0 256s2.8 13 7.7 17.6l112 104c7 6.5 17.2 8.2 25.9 4.4s14.4-12.5 14.4-22l0-56 192 0 0 56c0 9.5 5.7 18.2 14.4 22s18.9 2.1 25.9-4.4l112-104z\"]\n};\nvar faArrowsAltH = faLeftRight;\nvar faBoxesPacking = {\n prefix: 'fas',\n iconName: 'boxes-packing',\n icon: [640, 512, [], \"e4c7\", \"M256 48c0-26.5 21.5-48 48-48H592c26.5 0 48 21.5 48 48V464c0 26.5-21.5 48-48 48H381.3c1.8-5 2.7-10.4 2.7-16V253.3c18.6-6.6 32-24.4 32-45.3V176c0-26.5-21.5-48-48-48H256V48zM571.3 347.3c6.2-6.2 6.2-16.4 0-22.6l-64-64c-6.2-6.2-16.4-6.2-22.6 0l-64 64c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L480 310.6V432c0 8.8 7.2 16 16 16s16-7.2 16-16V310.6l36.7 36.7c6.2 6.2 16.4 6.2 22.6 0zM0 176c0-8.8 7.2-16 16-16H368c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H16c-8.8 0-16-7.2-16-16V176zm352 80V480c0 17.7-14.3 32-32 32H64c-17.7 0-32-14.3-32-32V256H352zM144 320c-8.8 0-16 7.2-16 16s7.2 16 16 16h96c8.8 0 16-7.2 16-16s-7.2-16-16-16H144z\"]\n};\nvar faCircleArrowLeft = {\n prefix: 'fas',\n iconName: 'circle-arrow-left',\n icon: [512, 512, [\"arrow-circle-left\"], \"f0a8\", \"M512 256A256 256 0 1 0 0 256a256 256 0 1 0 512 0zM231 127c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-71 71L376 232c13.3 0 24 10.7 24 24s-10.7 24-24 24l-182.1 0 71 71c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L119 273c-9.4-9.4-9.4-24.6 0-33.9L231 127z\"]\n};\nvar faArrowCircleLeft = faCircleArrowLeft;\nvar faGroupArrowsRotate = {\n prefix: 'fas',\n iconName: 'group-arrows-rotate',\n icon: [512, 512, [], \"e4f6\", \"M201.1 71.9c16.9-5 26.6-22.9 21.5-39.8s-22.9-26.6-39.8-21.5c-21.5 6.4-41.8 15.5-60.6 27C114.3 34 105.4 32 96 32C60.7 32 32 60.7 32 96c0 9.4 2 18.3 5.6 26.3c-11.5 18.7-20.6 39-27 60.6c-5 16.9 4.6 34.8 21.5 39.8s34.8-4.6 39.8-21.5c4.3-14.6 10.4-28.5 17.9-41.4c2 .2 4.1 .3 6.1 .3c35.3 0 64-28.7 64-64c0-2.1-.1-4.1-.3-6.1c12.9-7.5 26.8-13.6 41.4-17.9zm128-61.3c-16.9-5-34.8 4.6-39.8 21.5s4.6 34.8 21.5 39.8c14.6 4.3 28.5 10.4 41.4 17.9c-.2 2-.3 4.1-.3 6.1c0 35.3 28.7 64 64 64c2.1 0 4.1-.1 6.2-.3c7.5 12.9 13.6 26.8 17.9 41.4c5 16.9 22.9 26.6 39.8 21.5s26.6-22.9 21.5-39.8c-6.4-21.5-15.5-41.8-27-60.6c3.6-8 5.6-16.9 5.6-26.3c0-35.3-28.7-64-64-64c-9.4 0-18.3 2-26.3 5.6c-18.7-11.5-39-20.6-60.6-27zM71.9 310.9c-5-16.9-22.9-26.6-39.8-21.5s-26.6 22.9-21.5 39.8c6.4 21.5 15.5 41.8 27 60.6C34 397.7 32 406.6 32 416c0 35.3 28.7 64 64 64c9.4 0 18.3-2 26.3-5.6c18.7 11.5 39 20.6 60.6 27c16.9 5 34.8-4.6 39.8-21.5s-4.6-34.8-21.5-39.8c-14.6-4.3-28.5-10.4-41.4-17.9c.2-2 .3-4.1 .3-6.2c0-35.3-28.7-64-64-64c-2.1 0-4.1 .1-6.2 .3c-7.5-12.9-13.6-26.8-17.9-41.4zm429.4 18.3c5-16.9-4.6-34.8-21.5-39.8s-34.8 4.6-39.8 21.5c-4.3 14.6-10.4 28.5-17.9 41.4c-2-.2-4.1-.3-6.2-.3c-35.3 0-64 28.7-64 64c0 2.1 .1 4.1 .3 6.2c-12.9 7.5-26.8 13.6-41.4 17.9c-16.9 5-26.6 22.9-21.5 39.8s22.9 26.6 39.8 21.5c21.5-6.4 41.8-15.5 60.6-27c8 3.6 16.9 5.6 26.3 5.6c35.3 0 64-28.7 64-64c0-9.4-2-18.3-5.6-26.3c11.5-18.7 20.6-39 27-60.6zM192.8 256.8c0-15.6 5.6-29.9 14.9-41.1L223 231c6.6 6.6 17.8 1.9 17.8-7.4V163.2c0-5.7-4.7-10.4-10.4-10.4H169.9c-9.3 0-13.9 11.2-7.4 17.8l11.2 11.2c-17.9 19.8-28.9 46.2-28.9 75.1c0 43.6 24.9 81.3 61.1 99.8c11.8 6 26.3 1.4 32.3-10.4s1.4-26.3-10.4-32.3c-20.8-10.6-34.9-32.2-34.9-57zm93.1-58.6c20.8 10.6 34.9 32.2 34.9 57c0 15.6-5.6 29.9-14.9 41.1L290.6 281c-6.6-6.6-17.8-1.9-17.8 7.4v60.5c0 5.7 4.7 10.4 10.4 10.4h60.5c9.3 0 13.9-11.2 7.4-17.8l-11.2-11.2c17.9-19.8 28.9-46.2 28.9-75.1c0-43.6-24.9-81.3-61.1-99.8c-11.8-6-26.3-1.4-32.3 10.4s-1.4 26.3 10.4 32.3z\"]\n};\nvar faBowlFood = {\n prefix: 'fas',\n iconName: 'bowl-food',\n icon: [512, 512, [], \"e4c6\", \"M0 192c0-35.3 28.7-64 64-64c.5 0 1.1 0 1.6 0C73 91.5 105.3 64 144 64c15 0 29 4.1 40.9 11.2C198.2 49.6 225.1 32 256 32s57.8 17.6 71.1 43.2C339 68.1 353 64 368 64c38.7 0 71 27.5 78.4 64c.5 0 1.1 0 1.6 0c35.3 0 64 28.7 64 64c0 11.7-3.1 22.6-8.6 32H8.6C3.1 214.6 0 203.7 0 192zm0 91.4C0 268.3 12.3 256 27.4 256H484.6c15.1 0 27.4 12.3 27.4 27.4c0 70.5-44.4 130.7-106.7 154.1L403.5 452c-2 16-15.6 28-31.8 28H140.2c-16.1 0-29.8-12-31.8-28l-1.8-14.4C44.4 414.1 0 353.9 0 283.4z\"]\n};\nvar faCandyCane = {\n prefix: 'fas',\n iconName: 'candy-cane',\n icon: [512, 512, [], \"f786\", \"M348.8 131.5c3.7-2.3 7.9-3.5 12.2-3.5c12.7 0 23 10.3 23 23v5.6c0 9.9-5.1 19.1-13.5 24.3L30.1 393.7C.1 412.5-9 451.9 9.7 481.9s58.2 39.1 88.2 20.4L438.4 289.5c45.8-28.6 73.6-78.8 73.6-132.8V151C512 67.6 444.4 0 361 0c-28.3 0-56 8-80.1 23L254.1 39.7c-30 18.7-39.1 58.2-20.4 88.2s58.2 39.1 88.2 20.4l26.8-16.8zM298.4 49.8c9.2-5.7 19.1-10.1 29.4-13.1L348 97.5c-5.7 1.4-11.2 3.7-16.3 6.8l-12.6 7.9L298.4 49.8zm88.5 52.7l46.2-46.2c8.5 6.5 16.1 14.1 22.6 22.6l-46.2 46.2c-5.1-9.6-13-17.5-22.6-22.6zm28.9 59.3l61.6 20.5c-2.2 10.5-5.8 20.7-10.5 30.2l-62-20.7c6.2-8.8 10.1-19.1 11-30.1zm-86.1 82.5l60.4 37.7-30.2 18.9-60.4-37.7 30.2-18.9zm-107.2 67l60.4 37.7-30.2 18.9-60.4-37.7 30.2-18.9zM119.3 375.7l60.4 37.7-30.2 18.9L89.1 394.6l30.2-18.9z\"]\n};\nvar faArrowDownWideShort = {\n prefix: 'fas',\n iconName: 'arrow-down-wide-short',\n icon: [576, 512, [\"sort-amount-asc\", \"sort-amount-down\"], \"f160\", \"M151.6 469.6C145.5 476.2 137 480 128 480s-17.5-3.8-23.6-10.4l-88-96c-11.9-13-11.1-33.3 2-45.2s33.3-11.1 45.2 2L96 365.7V64c0-17.7 14.3-32 32-32s32 14.3 32 32V365.7l32.4-35.4c11.9-13 32.2-13.9 45.2-2s13.9 32.2 2 45.2l-88 96zM320 480c-17.7 0-32-14.3-32-32s14.3-32 32-32h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H320zm0-128c-17.7 0-32-14.3-32-32s14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H320zm0-128c-17.7 0-32-14.3-32-32s14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H320zm0-128c-17.7 0-32-14.3-32-32s14.3-32 32-32H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H320z\"]\n};\nvar faSortAmountAsc = faArrowDownWideShort;\nvar faSortAmountDown = faArrowDownWideShort;\nvar faCloudBolt = {\n prefix: 'fas',\n iconName: 'cloud-bolt',\n icon: [512, 512, [127785, \"thunderstorm\"], \"f76c\", \"M0 224c0 53 43 96 96 96h47.2L290 202.5c17.6-14.1 42.6-14 60.2 .2s22.8 38.6 12.8 58.8L333.7 320H352h64c53 0 96-43 96-96s-43-96-96-96c-.5 0-1.1 0-1.6 0c1.1-5.2 1.6-10.5 1.6-16c0-44.2-35.8-80-80-80c-24.3 0-46.1 10.9-60.8 28C256.5 24.3 219.1 0 176 0C114.1 0 64 50.1 64 112c0 7.1 .7 14.1 1.9 20.8C27.6 145.4 0 181.5 0 224zm330.1 3.6c-5.8-4.7-14.2-4.7-20.1-.1l-160 128c-5.3 4.2-7.4 11.4-5.1 17.8s8.3 10.7 15.1 10.7h70.1L177.7 488.8c-3.4 6.7-1.6 14.9 4.3 19.6s14.2 4.7 20.1 .1l160-128c5.3-4.2 7.4-11.4 5.1-17.8s-8.3-10.7-15.1-10.7H281.9l52.4-104.8c3.4-6.7 1.6-14.9-4.2-19.6z\"]\n};\nvar faThunderstorm = faCloudBolt;\nvar faTextSlash = {\n prefix: 'fas',\n iconName: 'text-slash',\n icon: [640, 512, [\"remove-format\"], \"f87d\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L355.7 253.5 400.2 96H503L497 120.2c-4.3 17.1 6.1 34.5 23.3 38.8s34.5-6.1 38.8-23.3l11-44.1C577.6 61.3 554.7 32 523.5 32H376.1h-.3H204.5c-22 0-41.2 15-46.6 36.4l-6.3 25.2L38.8 5.1zm168 131.7c.1-.3 .2-.7 .3-1L217 96H333.7L301.3 210.8l-94.5-74.1zM327.3 353.9L272.9 311 243.3 416H192c-17.7 0-32 14.3-32 32s14.3 32 32 32H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H309.8l17.6-62.1z\"]\n};\nvar faRemoveFormat = faTextSlash;\nvar faFaceSmileWink = {\n prefix: 'fas',\n iconName: 'face-smile-wink',\n icon: [512, 512, [128521, \"smile-wink\"], \"f4da\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.1 325.5C182 346.2 212.6 368 256 368s74-21.8 91.9-42.5c5.8-6.7 15.9-7.4 22.6-1.6s7.4 15.9 1.6 22.6C349.8 372.1 311.1 400 256 400s-93.8-27.9-116.1-53.5c-5.8-6.7-5.1-16.8 1.6-22.6s16.8-5.1 22.6 1.6zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm156.4 25.6c-5.3 7.1-15.3 8.5-22.4 3.2s-8.5-15.3-3.2-22.4c30.4-40.5 91.2-40.5 121.6 0c5.3 7.1 3.9 17.1-3.2 22.4s-17.1 3.9-22.4-3.2c-17.6-23.5-52.8-23.5-70.4 0z\"]\n};\nvar faSmileWink = faFaceSmileWink;\nvar faFileWord = {\n prefix: 'fas',\n iconName: 'file-word',\n icon: [384, 512, [], \"f1c2\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM111 257.1l26.8 89.2 31.6-90.3c3.4-9.6 12.5-16.1 22.7-16.1s19.3 6.4 22.7 16.1l31.6 90.3L273 257.1c3.8-12.7 17.2-19.9 29.9-16.1s19.9 17.2 16.1 29.9l-48 160c-3 10-12 16.9-22.4 17.1s-19.8-6.2-23.2-16.1L192 336.6l-33.3 95.3c-3.4 9.8-12.8 16.3-23.2 16.1s-19.5-7.1-22.4-17.1l-48-160c-3.8-12.7 3.4-26.1 16.1-29.9s26.1 3.4 29.9 16.1z\"]\n};\nvar faFilePowerpoint = {\n prefix: 'fas',\n iconName: 'file-powerpoint',\n icon: [384, 512, [], \"f1c4\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM136 240h68c42 0 76 34 76 76s-34 76-76 76H160v32c0 13.3-10.7 24-24 24s-24-10.7-24-24V368 264c0-13.3 10.7-24 24-24zm68 104c15.5 0 28-12.5 28-28s-12.5-28-28-28H160v56h44z\"]\n};\nvar faArrowsLeftRight = {\n prefix: 'fas',\n iconName: 'arrows-left-right',\n icon: [512, 512, [\"arrows-h\"], \"f07e\", \"M406.6 374.6l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224l-293.5 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288l293.5 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0z\"]\n};\nvar faArrowsH = faArrowsLeftRight;\nvar faHouseLock = {\n prefix: 'fas',\n iconName: 'house-lock',\n icon: [640, 512, [], \"e510\", \"M384 480c0 11.7 3.1 22.6 8.6 32H392c-22.1 0-40-17.9-40-40V448 384c0-17.7-14.3-32-32-32H256c-17.7 0-32 14.3-32 32v64 24c0 22.1-17.9 40-40 40H160 128.1c-1.5 0-3-.1-4.5-.2c-1.2 .1-2.4 .2-3.6 .2H104c-22.1 0-40-17.9-40-40V360c0-.9 0-1.9 .1-2.8V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L490.7 166.3C447.2 181.7 416 223.2 416 272v24.6c-19.1 11.1-32 31.7-32 55.4V480zM528 240c-17.7 0-32 14.3-32 32v48h64V272c0-17.7-14.3-32-32-32zm-80 32c0-44.2 35.8-80 80-80s80 35.8 80 80v48c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32H448c-17.7 0-32-14.3-32-32V352c0-17.7 14.3-32 32-32V272z\"]\n};\nvar faCloudArrowDown = {\n prefix: 'fas',\n iconName: 'cloud-arrow-down',\n icon: [640, 512, [62337, \"cloud-download\", \"cloud-download-alt\"], \"f0ed\", \"M144 480C64.5 480 0 415.5 0 336c0-62.8 40.2-116.2 96.2-135.9c-.1-2.7-.2-5.4-.2-8.1c0-88.4 71.6-160 160-160c59.3 0 111 32.2 138.7 80.2C409.9 102 428.3 96 448 96c53 0 96 43 96 96c0 12.2-2.3 23.8-6.4 34.6C596 238.4 640 290.1 640 352c0 70.7-57.3 128-128 128H144zm79-167l80 80c9.4 9.4 24.6 9.4 33.9 0l80-80c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-39 39V184c0-13.3-10.7-24-24-24s-24 10.7-24 24V318.1l-39-39c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9z\"]\n};\nvar faCloudDownload = faCloudArrowDown;\nvar faCloudDownloadAlt = faCloudArrowDown;\nvar faChildren = {\n prefix: 'fas',\n iconName: 'children',\n icon: [640, 512, [], \"e4e1\", \"M160 0a64 64 0 1 1 0 128A64 64 0 1 1 160 0zM88 480V400H70.2c-10.9 0-18.6-10.7-15.2-21.1l31.1-93.4L57.5 323.3c-10.7 14.1-30.8 16.8-44.8 6.2s-16.8-30.7-6.2-44.8L65.4 207c22.4-29.6 57.5-47 94.6-47s72.2 17.4 94.6 47l58.9 77.7c10.7 14.1 7.9 34.2-6.2 44.8s-34.2 7.9-44.8-6.2l-28.6-37.8L265 378.9c3.5 10.4-4.3 21.1-15.2 21.1H232v80c0 17.7-14.3 32-32 32s-32-14.3-32-32V400H152v80c0 17.7-14.3 32-32 32s-32-14.3-32-32zM480 0a64 64 0 1 1 0 128A64 64 0 1 1 480 0zm-8 384v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V300.5L395.1 321c-9.4 15-29.2 19.4-44.1 10s-19.4-29.2-10-44.1l51.7-82.1c17.6-27.9 48.3-44.9 81.2-44.9h12.3c33 0 63.7 16.9 81.2 44.9L619.1 287c9.4 15 4.9 34.7-10 44.1s-34.7 4.9-44.1-10L552 300.5V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V384H472z\"]\n};\nvar faChalkboard = {\n prefix: 'fas',\n iconName: 'chalkboard',\n icon: [576, 512, [\"blackboard\"], \"f51b\", \"M96 32C60.7 32 32 60.7 32 96V384H96V96l384 0V384h64V96c0-35.3-28.7-64-64-64H96zM224 384v32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H416V384c0-17.7-14.3-32-32-32H256c-17.7 0-32 14.3-32 32z\"]\n};\nvar faBlackboard = faChalkboard;\nvar faUserLargeSlash = {\n prefix: 'fas',\n iconName: 'user-large-slash',\n icon: [640, 512, [\"user-alt-slash\"], \"f4fa\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L381.9 274c48.5-23.2 82.1-72.7 82.1-130C464 64.5 399.5 0 320 0C250.4 0 192.4 49.3 178.9 114.9L38.8 5.1zM545.5 512H528L284.3 320h-59C136.2 320 64 392.2 64 481.3c0 17 13.8 30.7 30.7 30.7H545.3l.3 0z\"]\n};\nvar faUserAltSlash = faUserLargeSlash;\nvar faEnvelopeOpen = {\n prefix: 'fas',\n iconName: 'envelope-open',\n icon: [512, 512, [62135], \"f2b6\", \"M64 208.1L256 65.9 448 208.1v47.4L289.5 373c-9.7 7.2-21.4 11-33.5 11s-23.8-3.9-33.5-11L64 255.5V208.1zM256 0c-12.1 0-23.8 3.9-33.5 11L25.9 156.7C9.6 168.8 0 187.8 0 208.1V448c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V208.1c0-20.3-9.6-39.4-25.9-51.4L289.5 11C279.8 3.9 268.1 0 256 0z\"]\n};\nvar faHandshakeSimpleSlash = {\n prefix: 'fas',\n iconName: 'handshake-simple-slash',\n icon: [640, 512, [\"handshake-alt-slash\"], \"e05f\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-135-105.8c-1.1-11.3-6.3-22.3-15.3-30.7l-134.2-123-23.4 18.2-26-20.3 77.2-60.1c7-5.4 17-4.2 22.5 2.8s4.2 17-2.8 22.5l-20.9 16.2L550.2 352H592c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48H516h-4-.7l-3.9-2.5L434.8 79c-15.3-9.8-33.2-15-51.4-15c-21.8 0-43 7.5-60 21.2l-89.7 72.6-25.8-20.3 81.8-66.2c-11.6-4.9-24.1-7.4-36.8-7.4C234 64 215.7 69.6 200 80l-35.5 23.7L38.8 5.1zM413.6 421.9L41.2 128.5C17.9 131.8 0 151.8 0 176V304c0 26.5 21.5 48 48 48H156.2l91.4 83.4c19.6 17.9 49.9 16.5 67.8-3.1c5.5-6.1 9.2-13.2 11.1-20.6l17 15.6c19.5 17.9 49.9 16.6 67.8-2.9c.8-.8 1.5-1.7 2.2-2.6z\"]\n};\nvar faHandshakeAltSlash = faHandshakeSimpleSlash;\nvar faMattressPillow = {\n prefix: 'fas',\n iconName: 'mattress-pillow',\n icon: [640, 512, [], \"e525\", \"M256 64H64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H256V64zm32 384H576c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H288V448zM64 160c0-17.7 14.3-32 32-32h64c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V160z\"]\n};\nvar faGuaraniSign = {\n prefix: 'fas',\n iconName: 'guarani-sign',\n icon: [384, 512, [], \"e19a\", \"M192 0c-17.7 0-32 14.3-32 32V66.7C69.2 81.9 0 160.9 0 256s69.2 174.1 160 189.3V480c0 17.7 14.3 32 32 32s32-14.3 32-32V445.3c90.8-15.2 160-94.2 160-189.3c0-17.7-14.3-32-32-32H224V132c22.1 5.7 41.8 17.1 57.6 32.6c12.6 12.4 32.9 12.2 45.3-.4s12.2-32.9-.5-45.3C299 92 263.5 73.3 224 66.7V32c0-17.7-14.3-32-32-32zM160 132V380c-55.2-14.2-96-64.3-96-124s40.8-109.8 96-124zM224 380V288h92c-11.6 45-47 80.4-92 92z\"]\n};\nvar faArrowsRotate = {\n prefix: 'fas',\n iconName: 'arrows-rotate',\n icon: [512, 512, [128472, \"refresh\", \"sync\"], \"f021\", \"M105.1 202.6c7.7-21.8 20.2-42.3 37.8-59.8c62.5-62.5 163.8-62.5 226.3 0L386.3 160H352c-17.7 0-32 14.3-32 32s14.3 32 32 32H463.5c0 0 0 0 0 0h.4c17.7 0 32-14.3 32-32V80c0-17.7-14.3-32-32-32s-32 14.3-32 32v35.2L414.4 97.6c-87.5-87.5-229.3-87.5-316.8 0C73.2 122 55.6 150.7 44.8 181.4c-5.9 16.7 2.9 34.9 19.5 40.8s34.9-2.9 40.8-19.5zM39 289.3c-5 1.5-9.8 4.2-13.7 8.2c-4 4-6.7 8.8-8.1 14c-.3 1.2-.6 2.5-.8 3.8c-.3 1.7-.4 3.4-.4 5.1V432c0 17.7 14.3 32 32 32s32-14.3 32-32V396.9l17.6 17.5 0 0c87.5 87.4 229.3 87.4 316.7 0c24.4-24.4 42.1-53.1 52.9-83.7c5.9-16.7-2.9-34.9-19.5-40.8s-34.9 2.9-40.8 19.5c-7.7 21.8-20.2 42.3-37.8 59.8c-62.5 62.5-163.8 62.5-226.3 0l-.1-.1L125.6 352H160c17.7 0 32-14.3 32-32s-14.3-32-32-32H48.4c-1.6 0-3.2 .1-4.8 .3s-3.1 .5-4.6 1z\"]\n};\nvar faRefresh = faArrowsRotate;\nvar faSync = faArrowsRotate;\nvar faFireExtinguisher = {\n prefix: 'fas',\n iconName: 'fire-extinguisher',\n icon: [512, 512, [129519], \"f134\", \"M500.3 7.3C507.7 13.3 512 22.4 512 32v96c0 9.6-4.3 18.7-11.7 24.7s-17.2 8.5-26.6 6.6l-160-32C301.5 124.9 292 115.7 289 104H224v34.8c37.8 18 64 56.5 64 101.2V384H64V240c0-44.7 26.2-83.2 64-101.2V110c-36.2 11.1-66 36.9-82.3 70.5c-5.8 11.9-20.2 16.9-32.1 11.1S-3.3 171.4 2.5 159.5C26.7 109.8 72.7 72.6 128 60.4V32c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32V56h65c3-11.7 12.5-20.9 24.7-23.4l160-32c9.4-1.9 19.1 .6 26.6 6.6zM288 416v32c0 35.3-28.7 64-64 64H128c-35.3 0-64-28.7-64-64V416H288zM176 96a16 16 0 1 0 0-32 16 16 0 1 0 0 32z\"]\n};\nvar faCruzeiroSign = {\n prefix: 'fas',\n iconName: 'cruzeiro-sign',\n icon: [448, 512, [], \"e152\", \"M96 256c0-88.4 71.6-160 160-160c41 0 78.3 15.4 106.7 40.7c13.2 11.8 33.4 10.7 45.2-2.5s10.7-33.4-2.5-45.2c-39.6-35.5-92-57-149.3-57C132.3 32 32 132.3 32 256s100.3 224 224 224c57.4 0 109.7-21.6 149.3-57c13.2-11.8 14.3-32 2.5-45.2s-32-14.3-45.2-2.5C334.3 400.6 297 416 256 416V320v-8.7c0-12.8 10.4-23.3 23.3-23.3c4.6 0 9.1 1.4 12.9 3.9l10.1 6.7c14.7 9.8 34.6 5.8 44.4-8.9s5.8-34.6-8.9-44.4l-10.1-6.7c-14.3-9.6-31.2-14.7-48.4-14.7c-12.4 0-24.2 2.6-34.9 7.3c-5.5-4.5-12.6-7.3-20.3-7.3c-17.7 0-32 14.3-32 32v55.3V320v82.7C135.5 378 96 321.6 96 256z\"]\n};\nvar faGreaterThanEqual = {\n prefix: 'fas',\n iconName: 'greater-than-equal',\n icon: [448, 512, [], \"f532\", \"M52.1 93.7C35.7 87.1 27.7 68.5 34.3 52.1s25.2-24.4 41.6-17.8l320 128C408 167.1 416 178.9 416 192s-8 24.9-20.1 29.7l-320 128c-16.4 6.6-35-1.4-41.6-17.8s1.4-35 17.8-41.6L297.8 192 52.1 93.7zM416 416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416z\"]\n};\nvar faShieldHalved = {\n prefix: 'fas',\n iconName: 'shield-halved',\n icon: [512, 512, [\"shield-alt\"], \"f3ed\", \"M256 0c4.6 0 9.2 1 13.4 2.9L457.7 82.8c22 9.3 38.4 31 38.3 57.2c-.5 99.2-41.3 280.7-213.6 363.2c-16.7 8-36.1 8-52.8 0C57.3 420.7 16.5 239.2 16 140c-.1-26.2 16.3-47.9 38.3-57.2L242.7 2.9C246.8 1 251.4 0 256 0zm0 66.8V444.8C394 378 431.1 230.1 432 141.4L256 66.8l0 0z\"]\n};\nvar faShieldAlt = faShieldHalved;\nvar faBookAtlas = {\n prefix: 'fas',\n iconName: 'book-atlas',\n icon: [448, 512, [\"atlas\"], \"f558\", \"M0 96C0 43 43 0 96 0H384h32c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32v64c17.7 0 32 14.3 32 32s-14.3 32-32 32H384 96c-53 0-96-43-96-96V96zM64 416c0 17.7 14.3 32 32 32H352V384H96c-17.7 0-32 14.3-32 32zM247.4 283.8c-3.7 3.7-6.2 4.2-7.4 4.2s-3.7-.5-7.4-4.2c-3.8-3.7-8-10-11.8-18.9c-6.2-14.5-10.8-34.3-12.2-56.9h63c-1.5 22.6-6 42.4-12.2 56.9c-3.8 8.9-8 15.2-11.8 18.9zm42.7-9.9c7.3-18.3 12-41.1 13.4-65.9h31.1c-4.7 27.9-21.4 51.7-44.5 65.9zm0-163.8c23.2 14.2 39.9 38 44.5 65.9H303.5c-1.4-24.7-6.1-47.5-13.4-65.9zM368 192a128 128 0 1 0 -256 0 128 128 0 1 0 256 0zM145.3 208h31.1c1.4 24.7 6.1 47.5 13.4 65.9c-23.2-14.2-39.9-38-44.5-65.9zm31.1-32H145.3c4.7-27.9 21.4-51.7 44.5-65.9c-7.3 18.3-12 41.1-13.4 65.9zm56.1-75.8c3.7-3.7 6.2-4.2 7.4-4.2s3.7 .5 7.4 4.2c3.8 3.7 8 10 11.8 18.9c6.2 14.5 10.8 34.3 12.2 56.9h-63c1.5-22.6 6-42.4 12.2-56.9c3.8-8.9 8-15.2 11.8-18.9z\"]\n};\nvar faAtlas = faBookAtlas;\nvar faVirus = {\n prefix: 'fas',\n iconName: 'virus',\n icon: [512, 512, [], \"e074\", \"M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V43.5c0 49.9-60.3 74.9-95.6 39.6L120.2 75C107.7 62.5 87.5 62.5 75 75s-12.5 32.8 0 45.3l8.2 8.2C118.4 163.7 93.4 224 43.5 224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H43.5c49.9 0 74.9 60.3 39.6 95.6L75 391.8c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l8.2-8.2c35.3-35.3 95.6-10.3 95.6 39.6V480c0 17.7 14.3 32 32 32s32-14.3 32-32V468.5c0-49.9 60.3-74.9 95.6-39.6l8.2 8.2c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-8.2-8.2c-35.3-35.3-10.3-95.6 39.6-95.6H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H468.5c-49.9 0-74.9-60.3-39.6-95.6l8.2-8.2c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-8.2 8.2C348.3 118.4 288 93.4 288 43.5V32zM176 224a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm128 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faEnvelopeCircleCheck = {\n prefix: 'fas',\n iconName: 'envelope-circle-check',\n icon: [640, 512, [], \"e4e8\", \"M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0l57.4-43c23.9-59.8 79.7-103.3 146.3-109.8l13.9-10.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176V384c0 35.3 28.7 64 64 64H360.2C335.1 417.6 320 378.5 320 336c0-5.6 .3-11.1 .8-16.6l-26.4 19.8zM640 336a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-76.7-43.3c6.2 6.2 6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L480 353.4l60.7-60.7c6.2-6.2 16.4-6.2 22.6 0z\"]\n};\nvar faLayerGroup = {\n prefix: 'fas',\n iconName: 'layer-group',\n icon: [576, 512, [], \"f5fd\", \"M264.5 5.2c14.9-6.9 32.1-6.9 47 0l218.6 101c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 149.8C37.4 145.8 32 137.3 32 128s5.4-17.9 13.9-21.8L264.5 5.2zM476.9 209.6l53.2 24.6c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 277.8C37.4 273.8 32 265.3 32 256s5.4-17.9 13.9-21.8l53.2-24.6 152 70.2c23.4 10.8 50.4 10.8 73.8 0l152-70.2zm-152 198.2l152-70.2 53.2 24.6c8.5 3.9 13.9 12.4 13.9 21.8s-5.4 17.9-13.9 21.8l-218.6 101c-14.9 6.9-32.1 6.9-47 0L45.9 405.8C37.4 401.8 32 393.3 32 384s5.4-17.9 13.9-21.8l53.2-24.6 152 70.2c23.4 10.8 50.4 10.8 73.8 0z\"]\n};\nvar faArrowsToDot = {\n prefix: 'fas',\n iconName: 'arrows-to-dot',\n icon: [512, 512, [], \"e4be\", \"M256 0c17.7 0 32 14.3 32 32V64h32c12.9 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9l-64 64c-12.5 12.5-32.8 12.5-45.3 0l-64-64c-9.2-9.2-11.9-22.9-6.9-34.9s16.6-19.8 29.6-19.8h32V32c0-17.7 14.3-32 32-32zM169.4 393.4l64-64c12.5-12.5 32.8-12.5 45.3 0l64 64c9.2 9.2 11.9 22.9 6.9 34.9s-16.6 19.8-29.6 19.8H288v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H192c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9zM32 224H64V192c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l64 64c12.5 12.5 12.5 32.8 0 45.3l-64 64c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6V288H32c-17.7 0-32-14.3-32-32s14.3-32 32-32zm297.4 54.6c-12.5-12.5-12.5-32.8 0-45.3l64-64c9.2-9.2 22.9-11.9 34.9-6.9s19.8 16.6 19.8 29.6v32h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H448v32c0 12.9-7.8 24.6-19.8 29.6s-25.7 2.2-34.9-6.9l-64-64zM256 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faArchway = {\n prefix: 'fas',\n iconName: 'archway',\n icon: [512, 512, [], \"f557\", \"M32 32C14.3 32 0 46.3 0 64S14.3 96 32 96H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H32zm0 384c-17.7 0-32 14.3-32 32s14.3 32 32 32H96h64V352c0-53 43-96 96-96s96 43 96 96V480h64 64c17.7 0 32-14.3 32-32s-14.3-32-32-32V128H32V416z\"]\n};\nvar faHeartCircleCheck = {\n prefix: 'fas',\n iconName: 'heart-circle-check',\n icon: [576, 512, [], \"e4fd\", \"M47.6 300.4L228.3 469.1c7.5 7 17.4 10.9 27.7 10.9s20.2-3.9 27.7-10.9l2.6-2.4C267.2 438.6 256 404.6 256 368c0-97.2 78.8-176 176-176c28.3 0 55 6.7 78.7 18.5c.9-6.5 1.3-13 1.3-19.6v-5.8c0-69.9-50.5-129.5-119.4-141C347 36.5 300.6 51.4 268 84L256 96 244 84c-32.6-32.6-79-47.5-124.6-39.9C50.5 55.6 0 115.2 0 185.1v5.8c0 41.5 17.2 81.2 47.6 109.5zM576 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-76.7-43.3c6.2 6.2 6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L416 385.4l60.7-60.7c6.2-6.2 16.4-6.2 22.6 0z\"]\n};\nvar faHouseChimneyCrack = {\n prefix: 'fas',\n iconName: 'house-chimney-crack',\n icon: [576, 512, [\"house-damage\"], \"f6f1\", \"M575.8 255.5c0 18-15 32.1-32 32.1h-32l.7 160.2c.2 35.5-28.5 64.3-64 64.3H326.4L288 448l80.8-67.3c7.8-6.5 7.6-18.6-.4-24.9L250.6 263.2c-14.6-11.5-33.8 7-22.8 22L288 368l-85.5 71.2c-6.1 5-7.5 13.8-3.5 20.5L230.4 512H128.1c-35.3 0-64-28.7-64-64V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L416 100.7V64c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32V185l52.8 46.4c8 7 12 15 11 24z\"]\n};\nvar faHouseDamage = faHouseChimneyCrack;\nvar faFileZipper = {\n prefix: 'fas',\n iconName: 'file-zipper',\n icon: [384, 512, [\"file-archive\"], \"f1c6\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM96 48c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16zm0 64c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16zm0 64c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16zm-6.3 71.8c3.7-14 16.4-23.8 30.9-23.8h14.8c14.5 0 27.2 9.7 30.9 23.8l23.5 88.2c1.4 5.4 2.1 10.9 2.1 16.4c0 35.2-28.8 63.7-64 63.7s-64-28.5-64-63.7c0-5.5 .7-11.1 2.1-16.4l23.5-88.2zM112 336c-8.8 0-16 7.2-16 16s7.2 16 16 16h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H112z\"]\n};\nvar faFileArchive = faFileZipper;\nvar faSquare = {\n prefix: 'fas',\n iconName: 'square',\n icon: [448, 512, [9632, 9723, 9724, 61590], \"f0c8\", \"M0 96C0 60.7 28.7 32 64 32H384c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96z\"]\n};\nvar faMartiniGlassEmpty = {\n prefix: 'fas',\n iconName: 'martini-glass-empty',\n icon: [512, 512, [\"glass-martini\"], \"f000\", \"M32 0C19.1 0 7.4 7.8 2.4 19.8s-2.2 25.7 6.9 34.9L224 269.3V448H160c-17.7 0-32 14.3-32 32s14.3 32 32 32h96 96c17.7 0 32-14.3 32-32s-14.3-32-32-32H288V269.3L502.6 54.6c9.2-9.2 11.9-22.9 6.9-34.9S492.9 0 480 0H32zM256 210.7L109.3 64H402.7L256 210.7z\"]\n};\nvar faGlassMartini = faMartiniGlassEmpty;\nvar faCouch = {\n prefix: 'fas',\n iconName: 'couch',\n icon: [640, 512, [], \"f4b8\", \"M64 160C64 89.3 121.3 32 192 32H448c70.7 0 128 57.3 128 128v33.6c-36.5 7.4-64 39.7-64 78.4v48H128V272c0-38.7-27.5-71-64-78.4V160zM544 272c0-20.9 13.4-38.7 32-45.3c5-1.8 10.4-2.7 16-2.7c26.5 0 48 21.5 48 48V448c0 17.7-14.3 32-32 32H576c-17.7 0-32-14.3-32-32H96c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32V272c0-26.5 21.5-48 48-48c5.6 0 11 1 16 2.7c18.6 6.6 32 24.4 32 45.3v48 32h32H512h32V320 272z\"]\n};\nvar faCediSign = {\n prefix: 'fas',\n iconName: 'cedi-sign',\n icon: [384, 512, [], \"e0df\", \"M256 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V66.7C101.2 81.9 32 160.9 32 256s69.2 174.1 160 189.3V480c0 17.7 14.3 32 32 32s32-14.3 32-32V445.3c30.9-5.2 59.2-17.7 83.2-35.8c14.1-10.6 17-30.7 6.4-44.8s-30.7-17-44.8-6.4c-13.2 9.9-28.3 17.3-44.8 21.6V132c16.4 4.2 31.6 11.6 44.8 21.6c14.1 10.6 34.2 7.8 44.8-6.4s7.8-34.2-6.4-44.8c-24-18-52.4-30.6-83.2-35.8V32zM192 132V380c-55.2-14.2-96-64.3-96-124s40.8-109.8 96-124z\"]\n};\nvar faItalic = {\n prefix: 'fas',\n iconName: 'italic',\n icon: [384, 512, [], \"f033\", \"M128 64c0-17.7 14.3-32 32-32H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H293.3L160 416h64c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H90.7L224 96H160c-17.7 0-32-14.3-32-32z\"]\n};\nvar faTableCellsColumnLock = {\n prefix: 'fas',\n iconName: 'table-cells-column-lock',\n icon: [640, 512, [], \"e678\", \"M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 65.1c-37.8 5.4-69.4 29.6-85.2 62.9L360 224l0 64 56 0 0 8.6c-19.1 11.1-32 31.7-32 55.4l-24 0 0 64 24 0 0 64L64 480c-35.3 0-64-28.7-64-64L0 96zm208 0l0 64 88 0 0-64-88 0zm240 0l-88 0 0 64 88 0 0-64zM208 224l0 64 88 0 0-64-88 0zm0 128l0 64 88 0 0-64-88 0zM528 240c-17.7 0-32 14.3-32 32l0 48 64 0 0-48c0-17.7-14.3-32-32-32zm-80 32c0-44.2 35.8-80 80-80s80 35.8 80 80l0 48c17.7 0 32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-160 0c-17.7 0-32-14.3-32-32l0-128c0-17.7 14.3-32 32-32l0-48z\"]\n};\nvar faChurch = {\n prefix: 'fas',\n iconName: 'church',\n icon: [640, 512, [9962], \"f51d\", \"M344 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V48H264c-13.3 0-24 10.7-24 24s10.7 24 24 24h32v46.4L183.3 210c-14.5 8.7-23.3 24.3-23.3 41.2V512h96V416c0-35.3 28.7-64 64-64s64 28.7 64 64v96h96V251.2c0-16.9-8.8-32.5-23.3-41.2L344 142.4V96h32c13.3 0 24-10.7 24-24s-10.7-24-24-24H344V24zM24.9 330.3C9.5 338.8 0 354.9 0 372.4V464c0 26.5 21.5 48 48 48h80V273.6L24.9 330.3zM592 512c26.5 0 48-21.5 48-48V372.4c0-17.5-9.5-33.6-24.9-42.1L512 273.6V512h80z\"]\n};\nvar faCommentsDollar = {\n prefix: 'fas',\n iconName: 'comments-dollar',\n icon: [640, 512, [], \"f653\", \"M416 176c0 97.2-93.1 176-208 176c-38.2 0-73.9-8.7-104.7-23.9c-7.5 4-16 7.9-25.2 11.4C59.8 346.4 37.8 352 16 352c-6.9 0-13.1-4.5-15.2-11.1s.2-13.8 5.8-17.9l0 0 0 0 .2-.2c.2-.2 .6-.4 1.1-.8c1-.8 2.5-2 4.3-3.7c3.6-3.3 8.5-8.1 13.3-14.3c5.5-7 10.7-15.4 14.2-24.7C14.7 250.3 0 214.6 0 176C0 78.8 93.1 0 208 0S416 78.8 416 176zM231.5 383C348.9 372.9 448 288.3 448 176c0-5.2-.2-10.4-.6-15.5C555.1 167.1 640 243.2 640 336c0 38.6-14.7 74.3-39.6 103.4c3.5 9.4 8.7 17.7 14.2 24.7c4.8 6.2 9.7 11 13.3 14.3c1.8 1.6 3.3 2.9 4.3 3.7c.5 .4 .9 .7 1.1 .8l.2 .2 0 0 0 0c5.6 4.1 7.9 11.3 5.8 17.9c-2.1 6.6-8.3 11.1-15.2 11.1c-21.8 0-43.8-5.6-62.1-12.5c-9.2-3.5-17.8-7.4-25.2-11.4C505.9 503.3 470.2 512 432 512c-95.6 0-176.2-54.6-200.5-129zM228 72c0-11-9-20-20-20s-20 9-20 20V86c-7.6 1.7-15.2 4.4-22.2 8.5c-13.9 8.3-25.9 22.8-25.8 43.9c.1 20.3 12 33.1 24.7 40.7c11 6.6 24.7 10.8 35.6 14l1.7 .5c12.6 3.8 21.8 6.8 28 10.7c5.1 3.2 5.8 5.4 5.9 8.2c.1 5-1.8 8-5.9 10.5c-5 3.1-12.9 5-21.4 4.7c-11.1-.4-21.5-3.9-35.1-8.5c-2.3-.8-4.7-1.6-7.2-2.4c-10.5-3.5-21.8 2.2-25.3 12.6s2.2 21.8 12.6 25.3c1.9 .6 4 1.3 6.1 2.1l0 0 0 0c8.3 2.9 17.9 6.2 28.2 8.4V280c0 11 9 20 20 20s20-9 20-20V266.2c8-1.7 16-4.5 23.2-9c14.3-8.9 25.1-24.1 24.8-45c-.3-20.3-11.7-33.4-24.6-41.6c-11.5-7.2-25.9-11.6-37.1-15l-.7-.2c-12.8-3.9-21.9-6.7-28.3-10.5c-5.2-3.1-5.3-4.9-5.3-6.7c0-3.7 1.4-6.5 6.2-9.3c5.4-3.2 13.6-5.1 21.5-5c9.6 .1 20.2 2.2 31.2 5.2c10.7 2.8 21.6-3.5 24.5-14.2s-3.5-21.6-14.2-24.5c-6.5-1.7-13.7-3.4-21.1-4.7V72z\"]\n};\nvar faDemocrat = {\n prefix: 'fas',\n iconName: 'democrat',\n icon: [640, 512, [], \"f747\", \"M64 32c0-8.9 3.8-20.9 6.2-27.3C71.2 1.8 74 0 77 0c1.9 0 3.8 .7 5.2 2.1L128 45.7 173.8 2.1C175.2 .7 177.1 0 179 0c3 0 5.8 1.8 6.8 4.7c2.4 6.5 6.2 18.4 6.2 27.3c0 26.5-21.9 42-29.5 46.6l76.2 72.6c6 5.7 13.9 8.8 22.1 8.8H480l32 0c40.3 0 78.2 19 102.4 51.2l19.2 25.6c10.6 14.1 7.7 34.2-6.4 44.8s-34.2 7.7-44.8-6.4l-19.2-25.6c-5.3-7-11.8-12.8-19.2-17V320H192l-40.4-94.3c-3.9-9.2-15.3-12.6-23.6-7l-42.1 28c-9.1 6.1-19.7 9.3-30.7 9.3h-2C23.9 256 0 232.1 0 202.7c0-12.1 4.1-23.8 11.7-33.3L87.6 74.6C78.1 67.4 64 53.2 64 32zM448 352h96v64 64c0 17.7-14.3 32-32 32H480c-17.7 0-32-14.3-32-32V416H288v64c0 17.7-14.3 32-32 32H224c-17.7 0-32-14.3-32-32V416 352h96H448zM260.9 210.9c-.9-1.8-2.8-2.9-4.8-2.9s-3.9 1.1-4.8 2.9l-10.5 20.5-23.5 3.3c-2 .3-3.7 1.6-4.3 3.5s-.1 3.9 1.3 5.3l17 16-4 22.6c-.3 1.9 .5 3.9 2.1 5s3.8 1.3 5.6 .4l21-10.7 21 10.7c1.8 .9 4 .8 5.6-.4s2.5-3.1 2.1-5l-4-22.6 17-16c1.5-1.4 2-3.4 1.3-5.3s-2.3-3.2-4.3-3.5l-23.5-3.3-10.5-20.5zM368.1 208c-2 0-3.9 1.1-4.8 2.9l-10.5 20.5-23.5 3.3c-2 .3-3.7 1.6-4.3 3.5s-.1 3.9 1.3 5.3l17 16-4 22.6c-.3 1.9 .5 3.9 2.1 5s3.8 1.3 5.6 .4l21-10.7 21 10.7c1.8 .9 4 .8 5.6-.4s2.5-3.1 2.1-5l-4-22.6 17-16c1.5-1.4 2-3.4 1.4-5.3s-2.3-3.2-4.3-3.5l-23.5-3.3-10.5-20.5c-.9-1.8-2.8-2.9-4.8-2.9zm116.8 2.9c-.9-1.8-2.8-2.9-4.8-2.9s-3.9 1.1-4.8 2.9l-10.5 20.5-23.5 3.3c-2 .3-3.7 1.6-4.3 3.5s-.1 3.9 1.3 5.3l17 16-4 22.6c-.3 1.9 .5 3.9 2.1 5s3.8 1.3 5.6 .4l21-10.7 21 10.7c1.8 .9 4 .8 5.6-.4s2.5-3.1 2.1-5l-4-22.6 17-16c1.5-1.4 2-3.4 1.4-5.3s-2.3-3.2-4.3-3.5l-23.5-3.3-10.5-20.5z\"]\n};\nvar faZ = {\n prefix: 'fas',\n iconName: 'z',\n icon: [384, 512, [122], \"5a\", \"M0 64C0 46.3 14.3 32 32 32H352c12.4 0 23.7 7.2 29 18.4s3.6 24.5-4.4 34.1L100.3 416H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-12.4 0-23.7-7.2-29-18.4s-3.6-24.5 4.4-34.1L283.7 96H32C14.3 96 0 81.7 0 64z\"]\n};\nvar faPersonSkiing = {\n prefix: 'fas',\n iconName: 'person-skiing',\n icon: [512, 512, [9975, \"skiing\"], \"f7c9\", \"M380.7 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM2.7 268.9c6.1-11.8 20.6-16.3 32.4-10.2L232.7 361.3l46.2-69.2-75.1-75.1c-14.6-14.6-20.4-33.9-18.4-52.1l108.8 52 39.3 39.3c16.2 16.2 18.7 41.5 6 60.6L289.8 391l128.7 66.8c13.6 7.1 29.8 7.2 43.6 .3l15.2-7.6c11.9-5.9 26.3-1.1 32.2 10.7s1.1 26.3-10.7 32.2l-15.2 7.6c-27.5 13.7-59.9 13.5-87.2-.7L12.9 301.3C1.2 295.2-3.4 280.7 2.7 268.9zM118.9 65.6L137 74.2l8.7-17.4c4-7.9 13.6-11.1 21.5-7.2s11.1 13.6 7.2 21.5l-8.5 16.9 54.7 26.2c1.5-.7 3.1-1.4 4.7-2.1l83.4-33.4c34.2-13.7 72.8 4.2 84.5 39.2l17.1 51.2 52.1 26.1c15.8 7.9 22.2 27.1 14.3 42.9s-27.1 22.2-42.9 14.3l-58.1-29c-11.4-5.7-20-15.7-24.1-27.8l-5.8-17.3-27.3 12.1-6.8 3-6.7-3.2L151.5 116.7l-9.2 18.4c-4 7.9-13.6 11.1-21.5 7.2s-11.1-13.6-7.2-21.5l9-18-17.6-8.4c-8-3.8-11.3-13.4-7.5-21.3s13.4-11.3 21.3-7.5z\"]\n};\nvar faSkiing = faPersonSkiing;\nvar faRoadLock = {\n prefix: 'fas',\n iconName: 'road-lock',\n icon: [640, 512, [], \"e567\", \"M288 32H213.2c-27.1 0-51.3 17.1-60.3 42.6L35.1 407.2c-2.1 5.9-3.1 12-3.1 18.2C32 455.5 56.5 480 86.6 480H288V416c0-17.7 14.3-32 32-32s32 14.3 32 32v64h32V352c0-23.7 12.9-44.4 32-55.4V272c0-58.3 44.6-106.2 101.5-111.5L487.1 74.6C478 49.1 453.9 32 426.8 32H352V96c0 17.7-14.3 32-32 32s-32-14.3-32-32V32zm64 192v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V224c0-17.7 14.3-32 32-32s32 14.3 32 32zm176 16c17.7 0 32 14.3 32 32v48H496V272c0-17.7 14.3-32 32-32zm-80 32v48c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H608c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32V272c0-44.2-35.8-80-80-80s-80 35.8-80 80z\"]\n};\nvar faA = {\n prefix: 'fas',\n iconName: 'a',\n icon: [384, 512, [97], \"41\", \"M221.5 51.7C216.6 39.8 204.9 32 192 32s-24.6 7.8-29.5 19.7l-120 288-40 96c-6.8 16.3 .9 35 17.2 41.8s35-.9 41.8-17.2L93.3 384H290.7l31.8 76.3c6.8 16.3 25.5 24 41.8 17.2s24-25.5 17.2-41.8l-40-96-120-288zM264 320H120l72-172.8L264 320z\"]\n};\nvar faTemperatureArrowDown = {\n prefix: 'fas',\n iconName: 'temperature-arrow-down',\n icon: [576, 512, [\"temperature-down\"], \"e03f\", \"M128 112c0-26.5 21.5-48 48-48s48 21.5 48 48V276.5c0 17.3 7.1 31.9 15.3 42.5C249.8 332.6 256 349.5 256 368c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-18.5 6.2-35.4 16.7-48.9c8.2-10.6 15.3-25.2 15.3-42.5V112zM176 0C114.1 0 64 50.1 64 112V276.4c0 .1-.1 .3-.2 .6c-.2 .6-.8 1.6-1.7 2.8C43.2 304.2 32 334.8 32 368c0 79.5 64.5 144 144 144s144-64.5 144-144c0-33.2-11.2-63.8-30.1-88.1c-.9-1.2-1.5-2.2-1.7-2.8c-.1-.3-.2-.5-.2-.6V112C288 50.1 237.9 0 176 0zm0 416c26.5 0 48-21.5 48-48c0-20.9-13.4-38.7-32-45.3V272c0-8.8-7.2-16-16-16s-16 7.2-16 16v50.7c-18.6 6.6-32 24.4-32 45.3c0 26.5 21.5 48 48 48zm336-64H480V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V352H384c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l64 64c6 6 14.1 9.4 22.6 9.4s16.6-3.4 22.6-9.4l64-64c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8z\"]\n};\nvar faTemperatureDown = faTemperatureArrowDown;\nvar faFeatherPointed = {\n prefix: 'fas',\n iconName: 'feather-pointed',\n icon: [512, 512, [\"feather-alt\"], \"f56b\", \"M278.5 215.6L23 471c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l74.8-74.8c7.4 4.6 15.3 8.2 23.8 10.5C200.3 452.8 270 454.5 338 409.4c12.2-8.1 5.8-25.4-8.8-25.4l-16.1 0c-5.1 0-9.2-4.1-9.2-9.2c0-4.1 2.7-7.6 6.5-8.8l97.7-29.3c3.4-1 6.4-3.1 8.4-6.1c4.4-6.4 8.6-12.9 12.6-19.6c6.2-10.3-1.5-23-13.5-23l-38.6 0c-5.1 0-9.2-4.1-9.2-9.2c0-4.1 2.7-7.6 6.5-8.8l80.9-24.3c4.6-1.4 8.4-4.8 10.2-9.3C494.5 163 507.8 86.1 511.9 36.8c.8-9.9-3-19.6-10-26.6s-16.7-10.8-26.6-10C391.5 7 228.5 40.5 137.4 131.6C57.3 211.7 56.7 302.3 71.3 356.4c2.1 7.9 12 9.6 17.8 3.8L253.6 195.8c6.2-6.2 16.4-6.2 22.6 0c5.4 5.4 6.1 13.6 2.2 19.8z\"]\n};\nvar faFeatherAlt = faFeatherPointed;\nvar faP = {\n prefix: 'fas',\n iconName: 'p',\n icon: [320, 512, [112], \"50\", \"M0 96C0 60.7 28.7 32 64 32h96c88.4 0 160 71.6 160 160s-71.6 160-160 160H64v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V320 96zM64 288h96c53 0 96-43 96-96s-43-96-96-96H64V288z\"]\n};\nvar faSnowflake = {\n prefix: 'fas',\n iconName: 'snowflake',\n icon: [448, 512, [10052, 10054], \"f2dc\", \"M224 0c17.7 0 32 14.3 32 32V62.1l15-15c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-49 49v70.3l61.4-35.8 17.7-66.1c3.4-12.8 16.6-20.4 29.4-17s20.4 16.6 17 29.4l-5.2 19.3 23.6-13.8c15.3-8.9 34.9-3.7 43.8 11.5s3.8 34.9-11.5 43.8l-25.3 14.8 21.7 5.8c12.8 3.4 20.4 16.6 17 29.4s-16.6 20.4-29.4 17l-67.7-18.1L287.5 256l60.9 35.5 67.7-18.1c12.8-3.4 26 4.2 29.4 17s-4.2 26-17 29.4l-21.7 5.8 25.3 14.8c15.3 8.9 20.4 28.5 11.5 43.8s-28.5 20.4-43.8 11.5l-23.6-13.8 5.2 19.3c3.4 12.8-4.2 26-17 29.4s-26-4.2-29.4-17l-17.7-66.1L256 311.7v70.3l49 49c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-15-15V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V449.9l-15 15c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l49-49V311.7l-61.4 35.8-17.7 66.1c-3.4 12.8-16.6 20.4-29.4 17s-20.4-16.6-17-29.4l5.2-19.3L48.1 395.6c-15.3 8.9-34.9 3.7-43.8-11.5s-3.7-34.9 11.5-43.8l25.3-14.8-21.7-5.8c-12.8-3.4-20.4-16.6-17-29.4s16.6-20.4 29.4-17l67.7 18.1L160.5 256 99.6 220.5 31.9 238.6c-12.8 3.4-26-4.2-29.4-17s4.2-26 17-29.4l21.7-5.8L15.9 171.6C.6 162.7-4.5 143.1 4.4 127.9s28.5-20.4 43.8-11.5l23.6 13.8-5.2-19.3c-3.4-12.8 4.2-26 17-29.4s26 4.2 29.4 17l17.7 66.1L192 200.3V129.9L143 81c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l15 15V32c0-17.7 14.3-32 32-32z\"]\n};\nvar faNewspaper = {\n prefix: 'fas',\n iconName: 'newspaper',\n icon: [512, 512, [128240], \"f1ea\", \"M96 96c0-35.3 28.7-64 64-64H448c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H80c-44.2 0-80-35.8-80-80V128c0-17.7 14.3-32 32-32s32 14.3 32 32V400c0 8.8 7.2 16 16 16s16-7.2 16-16V96zm64 24v80c0 13.3 10.7 24 24 24H296c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24H184c-13.3 0-24 10.7-24 24zm208-8c0 8.8 7.2 16 16 16h48c8.8 0 16-7.2 16-16s-7.2-16-16-16H384c-8.8 0-16 7.2-16 16zm0 96c0 8.8 7.2 16 16 16h48c8.8 0 16-7.2 16-16s-7.2-16-16-16H384c-8.8 0-16 7.2-16 16zM160 304c0 8.8 7.2 16 16 16H432c8.8 0 16-7.2 16-16s-7.2-16-16-16H176c-8.8 0-16 7.2-16 16zm0 96c0 8.8 7.2 16 16 16H432c8.8 0 16-7.2 16-16s-7.2-16-16-16H176c-8.8 0-16 7.2-16 16z\"]\n};\nvar faRectangleAd = {\n prefix: 'fas',\n iconName: 'rectangle-ad',\n icon: [576, 512, [\"ad\"], \"f641\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM229.5 173.3l72 144c5.9 11.9 1.1 26.3-10.7 32.2s-26.3 1.1-32.2-10.7L253.2 328H162.8l-5.4 10.7c-5.9 11.9-20.3 16.7-32.2 10.7s-16.7-20.3-10.7-32.2l72-144c4.1-8.1 12.4-13.3 21.5-13.3s17.4 5.1 21.5 13.3zM208 237.7L186.8 280h42.3L208 237.7zM392 256a24 24 0 1 0 0 48 24 24 0 1 0 0-48zm24-43.9V184c0-13.3 10.7-24 24-24s24 10.7 24 24v96 48c0 13.3-10.7 24-24 24c-6.6 0-12.6-2.7-17-7c-9.4 4.5-19.9 7-31 7c-39.8 0-72-32.2-72-72s32.2-72 72-72c8.4 0 16.5 1.4 24 4.1z\"]\n};\nvar faAd = faRectangleAd;\nvar faCircleArrowRight = {\n prefix: 'fas',\n iconName: 'circle-arrow-right',\n icon: [512, 512, [\"arrow-circle-right\"], \"f0a9\", \"M0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM281 385c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l71-71L136 280c-13.3 0-24-10.7-24-24s10.7-24 24-24l182.1 0-71-71c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L393 239c9.4 9.4 9.4 24.6 0 33.9L281 385z\"]\n};\nvar faArrowCircleRight = faCircleArrowRight;\nvar faFilterCircleXmark = {\n prefix: 'fas',\n iconName: 'filter-circle-xmark',\n icon: [576, 512, [], \"e17b\", \"M3.9 22.9C10.5 8.9 24.5 0 40 0H472c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L396.4 195.6C316.2 212.1 256 283 256 368c0 27.4 6.3 53.4 17.5 76.5c-1.6-.8-3.2-1.8-4.7-2.9l-64-48c-8.1-6-12.8-15.5-12.8-25.6V288.9L9 65.3C-.7 53.4-2.8 36.8 3.9 22.9zM432 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm59.3 107.3c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0L432 345.4l-36.7-36.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L409.4 368l-36.7 36.7c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L432 390.6l36.7 36.7c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6L454.6 368l36.7-36.7z\"]\n};\nvar faLocust = {\n prefix: 'fas',\n iconName: 'locust',\n icon: [576, 512, [], \"e520\", \"M312 32c-13.3 0-24 10.7-24 24s10.7 24 24 24h16c98.7 0 180.6 71.4 197 165.4c-9-3.5-18.8-5.4-29-5.4H431.8l-41.8-97.5c-3.4-7.9-10.8-13.4-19.3-14.4s-17 2.7-22.1 9.6l-40.9 55.5-21.7-50.7c-3.3-7.8-10.5-13.2-18.9-14.3s-16.7 2.3-22 8.9l-240 304c-8.2 10.4-6.4 25.5 4 33.7s25.5 6.4 33.7-4l79.4-100.5 43 16.4-40.5 55c-7.9 10.7-5.6 25.7 5.1 33.6s25.7 5.6 33.6-5.1L215.1 400h74.5l-29.3 42.3c-7.5 10.9-4.8 25.8 6.1 33.4s25.8 4.8 33.4-6.1L348 400h80.4l38.8 67.9c6.6 11.5 21.2 15.5 32.7 8.9s15.5-21.2 8.9-32.7L483.6 400H496c44.1 0 79.8-35.7 80-79.7c0-.1 0-.2 0-.3V280C576 143 465 32 328 32H312zm50.5 168l17.1 40H333l29.5-40zm-87.7 38.1l-1.4 1.9H225.1l32.7-41.5 16.9 39.5zM88.8 240C57.4 240 32 265.4 32 296.8c0 15.5 6.3 30 16.9 40.4L126.7 240H88.8zM496 288a16 16 0 1 1 0 32 16 16 0 1 1 0-32z\"]\n};\nvar faSort = {\n prefix: 'fas',\n iconName: 'sort',\n icon: [320, 512, [\"unsorted\"], \"f0dc\", \"M137.4 41.4c12.5-12.5 32.8-12.5 45.3 0l128 128c9.2 9.2 11.9 22.9 6.9 34.9s-16.6 19.8-29.6 19.8H32c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9l128-128zm0 429.3l-128-128c-9.2-9.2-11.9-22.9-6.9-34.9s16.6-19.8 29.6-19.8H288c12.9 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9l-128 128c-12.5 12.5-32.8 12.5-45.3 0z\"]\n};\nvar faUnsorted = faSort;\nvar faListOl = {\n prefix: 'fas',\n iconName: 'list-ol',\n icon: [512, 512, [\"list-1-2\", \"list-numeric\"], \"f0cb\", \"M24 56c0-13.3 10.7-24 24-24H80c13.3 0 24 10.7 24 24V176h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H40c-13.3 0-24-10.7-24-24s10.7-24 24-24H56V80H48C34.7 80 24 69.3 24 56zM86.7 341.2c-6.5-7.4-18.3-6.9-24 1.2L51.5 357.9c-7.7 10.8-22.7 13.3-33.5 5.6s-13.3-22.7-5.6-33.5l11.1-15.6c23.7-33.2 72.3-35.6 99.2-4.9c21.3 24.4 20.8 60.9-1.1 84.7L86.8 432H120c13.3 0 24 10.7 24 24s-10.7 24-24 24H32c-9.5 0-18.2-5.6-22-14.4s-2.1-18.9 4.3-25.9l72-78c5.3-5.8 5.4-14.6 .3-20.5zM224 64H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 160H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 160H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faList12 = faListOl;\nvar faListNumeric = faListOl;\nvar faPersonDressBurst = {\n prefix: 'fas',\n iconName: 'person-dress-burst',\n icon: [640, 512, [], \"e544\", \"M528 48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM390.2 384H408v96c0 17.7 14.3 32 32 32s32-14.3 32-32V384h16v96c0 17.7 14.3 32 32 32s32-14.3 32-32V384h17.8c10.9 0 18.6-10.7 15.2-21.1L546.7 248.1l33.9 56.3c9.1 15.1 28.8 20 43.9 10.9s20-28.8 10.9-43.9l-53.6-89.2c-20.2-33.7-56.7-54.3-96-54.3H474.2c-39.3 0-75.7 20.6-96 54.3l-53.6 89.2c-9.1 15.1-4.2 34.8 10.9 43.9s34.8 4.2 43.9-10.9l33.9-56.3L375 362.9c-3.5 10.4 4.3 21.1 15.2 21.1zM190.9 18.1C188.4 12 182.6 8 176 8s-12.4 4-14.9 10.1l-29.4 74L55.6 68.9c-6.3-1.9-13.1 .2-17.2 5.3s-4.6 12.2-1.4 17.9l39.5 69.1L10.9 206.4c-5.4 3.7-8 10.3-6.5 16.7s6.7 11.2 13.1 12.2l78.7 12.2L90.6 327c-.5 6.5 3.1 12.7 9 15.5s12.9 1.8 17.8-2.6L176 286.1l58.6 53.9c4.8 4.4 11.9 5.5 17.8 2.6s9.5-9 9-15.5l-5.6-79.4 50.5-7.8 24.4-40.5-55.2-38L315 92.2c3.3-5.7 2.7-12.8-1.4-17.9s-10.9-7.2-17.2-5.3L220.3 92.1l-29.4-74z\"]\n};\nvar faMoneyCheckDollar = {\n prefix: 'fas',\n iconName: 'money-check-dollar',\n icon: [576, 512, [\"money-check-alt\"], \"f53d\", \"M64 64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H64zM272 192H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H272c-8.8 0-16-7.2-16-16s7.2-16 16-16zM256 304c0-8.8 7.2-16 16-16H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H272c-8.8 0-16-7.2-16-16zM164 152v13.9c7.5 1.2 14.6 2.9 21.1 4.7c10.7 2.8 17 13.8 14.2 24.5s-13.8 17-24.5 14.2c-11-2.9-21.6-5-31.2-5.2c-7.9-.1-16 1.8-21.5 5c-4.8 2.8-6.2 5.6-6.2 9.3c0 1.8 .1 3.5 5.3 6.7c6.3 3.8 15.5 6.7 28.3 10.5l.7 .2c11.2 3.4 25.6 7.7 37.1 15c12.9 8.1 24.3 21.3 24.6 41.6c.3 20.9-10.5 36.1-24.8 45c-7.2 4.5-15.2 7.3-23.2 9V360c0 11-9 20-20 20s-20-9-20-20V345.4c-10.3-2.2-20-5.5-28.2-8.4l0 0 0 0c-2.1-.7-4.1-1.4-6.1-2.1c-10.5-3.5-16.1-14.8-12.6-25.3s14.8-16.1 25.3-12.6c2.5 .8 4.9 1.7 7.2 2.4c13.6 4.6 24 8.1 35.1 8.5c8.6 .3 16.5-1.6 21.4-4.7c4.1-2.5 6-5.5 5.9-10.5c0-2.9-.8-5-5.9-8.2c-6.3-4-15.4-6.9-28-10.7l-1.7-.5c-10.9-3.3-24.6-7.4-35.6-14c-12.7-7.7-24.6-20.5-24.7-40.7c-.1-21.1 11.8-35.7 25.8-43.9c6.9-4.1 14.5-6.8 22.2-8.5V152c0-11 9-20 20-20s20 9 20 20z\"]\n};\nvar faMoneyCheckAlt = faMoneyCheckDollar;\nvar faVectorSquare = {\n prefix: 'fas',\n iconName: 'vector-square',\n icon: [448, 512, [], \"f5cb\", \"M368 80h32v32H368V80zM352 32c-17.7 0-32 14.3-32 32H128c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64v64c0 17.7 14.3 32 32 32V352c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32H96c17.7 0 32-14.3 32-32H320c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V384c0-17.7-14.3-32-32-32V160c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32H352zM96 160c17.7 0 32-14.3 32-32H320c0 17.7 14.3 32 32 32V352c-17.7 0-32 14.3-32 32H128c0-17.7-14.3-32-32-32V160zM48 400H80v32H48V400zm320 32V400h32v32H368zM48 112V80H80v32H48z\"]\n};\nvar faBreadSlice = {\n prefix: 'fas',\n iconName: 'bread-slice',\n icon: [512, 512, [], \"f7ec\", \"M256 32C192 32 0 64 0 192c0 35.3 28.7 64 64 64V432c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V256c35.3 0 64-28.7 64-64C512 64 320 32 256 32z\"]\n};\nvar faLanguage = {\n prefix: 'fas',\n iconName: 'language',\n icon: [640, 512, [], \"f1ab\", \"M0 128C0 92.7 28.7 64 64 64H256h48 16H576c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H320 304 256 64c-35.3 0-64-28.7-64-64V128zm320 0V384H576V128H320zM178.3 175.9c-3.2-7.2-10.4-11.9-18.3-11.9s-15.1 4.7-18.3 11.9l-64 144c-4.5 10.1 .1 21.9 10.2 26.4s21.9-.1 26.4-10.2l8.9-20.1h73.6l8.9 20.1c4.5 10.1 16.3 14.6 26.4 10.2s14.6-16.3 10.2-26.4l-64-144zM160 233.2L179 276H141l19-42.8zM448 164c11 0 20 9 20 20v4h44 16c11 0 20 9 20 20s-9 20-20 20h-2l-1.6 4.5c-8.9 24.4-22.4 46.6-39.6 65.4c.9 .6 1.8 1.1 2.7 1.6l18.9 11.3c9.5 5.7 12.5 18 6.9 27.4s-18 12.5-27.4 6.9l-18.9-11.3c-4.5-2.7-8.8-5.5-13.1-8.5c-10.6 7.5-21.9 14-34 19.4l-3.6 1.6c-10.1 4.5-21.9-.1-26.4-10.2s.1-21.9 10.2-26.4l3.6-1.6c6.4-2.9 12.6-6.1 18.5-9.8l-12.2-12.2c-7.8-7.8-7.8-20.5 0-28.3s20.5-7.8 28.3 0l14.6 14.6 .5 .5c12.4-13.1 22.5-28.3 29.8-45H448 376c-11 0-20-9-20-20s9-20 20-20h52v-4c0-11 9-20 20-20z\"]\n};\nvar faFaceKissWinkHeart = {\n prefix: 'fas',\n iconName: 'face-kiss-wink-heart',\n icon: [512, 512, [128536, \"kiss-wink-heart\"], \"f598\", \"M498 339.7c9.1-26.2 14-54.4 14-83.7C512 114.6 397.4 0 256 0S0 114.6 0 256S114.6 512 256 512c35.4 0 69.1-7.2 99.7-20.2c-4.8-5.5-8.5-12.2-10.4-19.7l-22.9-89.3c-10-39 11.8-80.9 51.8-92.1c37.2-10.4 73.8 10.1 87.5 44c12.7-1.6 25.1 .4 36.2 5zM296 332c0 6.9-3.1 13.2-7.3 18.3c-4.3 5.2-10.1 9.7-16.7 13.4c-2.7 1.5-5.7 3-8.7 4.3c3.1 1.3 6 2.7 8.7 4.3c6.6 3.7 12.5 8.2 16.7 13.4c4.3 5.1 7.3 11.4 7.3 18.3s-3.1 13.2-7.3 18.3c-4.3 5.2-10.1 9.7-16.7 13.4C258.7 443.1 241.4 448 224 448c-3.6 0-6.8-2.5-7.7-6s.6-7.2 3.8-9l0 0 0 0 0 0 0 0 .2-.1c.2-.1 .5-.3 .9-.5c.8-.5 2-1.2 3.4-2.1c2.8-1.9 6.5-4.5 10.2-7.6c3.7-3.1 7.2-6.6 9.6-10.1c2.5-3.5 3.5-6.4 3.5-8.6s-1-5-3.5-8.6c-2.5-3.5-5.9-6.9-9.6-10.1c-3.7-3.1-7.4-5.7-10.2-7.6c-1.4-.9-2.6-1.6-3.4-2.1l-.6-.4-.3-.2-.2-.1 0 0 0 0 0 0c-2.5-1.4-4.1-4.1-4.1-7s1.6-5.6 4.1-7l0 0 0 0 0 0 0 0 0 0 .2-.1c.2-.1 .5-.3 .9-.5c.8-.5 2-1.2 3.4-2.1c2.8-1.9 6.5-4.5 10.2-7.6c3.7-3.1 7.2-6.6 9.6-10.1c2.5-3.5 3.5-6.4 3.5-8.6s-1-5-3.5-8.6c-2.5-3.5-5.9-6.9-9.6-10.1c-3.7-3.1-7.4-5.7-10.2-7.6c-1.4-.9-2.6-1.6-3.4-2.1c-.4-.2-.7-.4-.9-.5l-.2-.1 0 0 0 0 0 0c-3.2-1.8-4.7-5.5-3.8-9s4.1-6 7.7-6c17.4 0 34.7 4.9 47.9 12.3c6.6 3.7 12.5 8.2 16.7 13.4c4.3 5.1 7.3 11.4 7.3 18.3zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm194.8 57.6c-17.6-23.5-52.8-23.5-70.4 0c-5.3 7.1-15.3 8.5-22.4 3.2s-8.5-15.3-3.2-22.4c30.4-40.5 91.2-40.5 121.6 0c5.3 7.1 3.9 17.1-3.2 22.4s-17.1 3.9-22.4-3.2zM434 352.3c-6-23.2-28.8-37-51.1-30.8s-35.4 30.1-29.5 53.4l22.9 89.3c2.2 8.7 11.2 13.9 19.8 11.4l84.9-23.8c22.2-6.2 35.4-30.1 29.5-53.4s-28.8-37-51.1-30.8l-20.2 5.6-5.4-21z\"]\n};\nvar faKissWinkHeart = faFaceKissWinkHeart;\nvar faFilter = {\n prefix: 'fas',\n iconName: 'filter',\n icon: [512, 512, [], \"f0b0\", \"M3.9 54.9C10.5 40.9 24.5 32 40 32H472c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L320 320.9V448c0 12.1-6.8 23.2-17.7 28.6s-23.8 4.3-33.5-3l-64-48c-8.1-6-12.8-15.5-12.8-25.6V320.9L9 97.3C-.7 85.4-2.8 68.8 3.9 54.9z\"]\n};\nvar faQuestion = {\n prefix: 'fas',\n iconName: 'question',\n icon: [320, 512, [10067, 10068, 61736], \"3f\", \"M80 160c0-35.3 28.7-64 64-64h32c35.3 0 64 28.7 64 64v3.6c0 21.8-11.1 42.1-29.4 53.8l-42.2 27.1c-25.2 16.2-40.4 44.1-40.4 74V320c0 17.7 14.3 32 32 32s32-14.3 32-32v-1.4c0-8.2 4.2-15.8 11-20.2l42.2-27.1c36.6-23.6 58.8-64.1 58.8-107.7V160c0-70.7-57.3-128-128-128H144C73.3 32 16 89.3 16 160c0 17.7 14.3 32 32 32s32-14.3 32-32zm80 320a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"]\n};\nvar faFileSignature = {\n prefix: 'fas',\n iconName: 'file-signature',\n icon: [576, 512, [], \"f573\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V428.7c-2.7 1.1-5.4 2-8.2 2.7l-60.1 15c-3 .7-6 1.2-9 1.4c-.9 .1-1.8 .2-2.7 .2H240c-6.1 0-11.6-3.4-14.3-8.8l-8.8-17.7c-1.7-3.4-5.1-5.5-8.8-5.5s-7.2 2.1-8.8 5.5l-8.8 17.7c-2.9 5.9-9.2 9.4-15.7 8.8s-12.1-5.1-13.9-11.3L144 381l-9.8 32.8c-6.1 20.3-24.8 34.2-46 34.2H80c-8.8 0-16-7.2-16-16s7.2-16 16-16h8.2c7.1 0 13.3-4.6 15.3-11.4l14.9-49.5c3.4-11.3 13.8-19.1 25.6-19.1s22.2 7.8 25.6 19.1l11.6 38.6c7.4-6.2 16.8-9.7 26.8-9.7c15.9 0 30.4 9 37.5 23.2l4.4 8.8h8.9c-3.1-8.8-3.7-18.4-1.4-27.8l15-60.1c2.8-11.3 8.6-21.5 16.8-29.7L384 203.6V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM549.8 139.7c-15.6-15.6-40.9-15.6-56.6 0l-29.4 29.4 71 71 29.4-29.4c15.6-15.6 15.6-40.9 0-56.6l-14.4-14.4zM311.9 321c-4.1 4.1-7 9.2-8.4 14.9l-15 60.1c-1.4 5.5 .2 11.2 4.2 15.2s9.7 5.6 15.2 4.2l60.1-15c5.6-1.4 10.8-4.3 14.9-8.4L512.1 262.7l-71-71L311.9 321z\"]\n};\nvar faUpDownLeftRight = {\n prefix: 'fas',\n iconName: 'up-down-left-right',\n icon: [512, 512, [\"arrows-alt\"], \"f0b2\", \"M278.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-64 64c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8h32v96H128V192c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9l-64 64c-12.5 12.5-12.5 32.8 0 45.3l64 64c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6V288h96v96H192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l64 64c12.5 12.5 32.8 12.5 45.3 0l64-64c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8H288V288h96v32c0 12.9 7.8 24.6 19.8 29.6s25.7 2.2 34.9-6.9l64-64c12.5-12.5 12.5-32.8 0-45.3l-64-64c-9.2-9.2-22.9-11.9-34.9-6.9s-19.8 16.6-19.8 29.6v32H288V128h32c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-64-64z\"]\n};\nvar faArrowsAlt = faUpDownLeftRight;\nvar faHouseChimneyUser = {\n prefix: 'fas',\n iconName: 'house-chimney-user',\n icon: [576, 512, [], \"e065\", \"M543.8 287.6c17 0 32-14 32-32.1c1-9-3-17-11-24L512 185V64c0-17.7-14.3-32-32-32H448c-17.7 0-32 14.3-32 32v36.7L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1h32V448c0 35.3 28.7 64 64 64H448.5c35.5 0 64.2-28.8 64-64.3l-.7-160.2h32zM288 160a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM176 400c0-44.2 35.8-80 80-80h64c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16H192c-8.8 0-16-7.2-16-16z\"]\n};\nvar faHandHoldingHeart = {\n prefix: 'fas',\n iconName: 'hand-holding-heart',\n icon: [576, 512, [], \"f4be\", \"M163.9 136.9c-29.4-29.8-29.4-78.2 0-108s77-29.8 106.4 0l17.7 18 17.7-18c29.4-29.8 77-29.8 106.4 0s29.4 78.2 0 108L310.5 240.1c-6.2 6.3-14.3 9.4-22.5 9.4s-16.3-3.1-22.5-9.4L163.9 136.9zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 384l0 0-.9 0c.3 0 .6 0 .9 0z\"]\n};\nvar faPuzzlePiece = {\n prefix: 'fas',\n iconName: 'puzzle-piece',\n icon: [512, 512, [129513], \"f12e\", \"M192 104.8c0-9.2-5.8-17.3-13.2-22.8C167.2 73.3 160 61.3 160 48c0-26.5 28.7-48 64-48s64 21.5 64 48c0 13.3-7.2 25.3-18.8 34c-7.4 5.5-13.2 13.6-13.2 22.8c0 12.8 10.4 23.2 23.2 23.2H336c26.5 0 48 21.5 48 48v56.8c0 12.8 10.4 23.2 23.2 23.2c9.2 0 17.3-5.8 22.8-13.2c8.7-11.6 20.7-18.8 34-18.8c26.5 0 48 28.7 48 64s-21.5 64-48 64c-13.3 0-25.3-7.2-34-18.8c-5.5-7.4-13.6-13.2-22.8-13.2c-12.8 0-23.2 10.4-23.2 23.2V464c0 26.5-21.5 48-48 48H279.2c-12.8 0-23.2-10.4-23.2-23.2c0-9.2 5.8-17.3 13.2-22.8c11.6-8.7 18.8-20.7 18.8-34c0-26.5-28.7-48-64-48s-64 21.5-64 48c0 13.3 7.2 25.3 18.8 34c7.4 5.5 13.2 13.6 13.2 22.8c0 12.8-10.4 23.2-23.2 23.2H48c-26.5 0-48-21.5-48-48V343.2C0 330.4 10.4 320 23.2 320c9.2 0 17.3 5.8 22.8 13.2C54.7 344.8 66.7 352 80 352c26.5 0 48-28.7 48-64s-21.5-64-48-64c-13.3 0-25.3 7.2-34 18.8C40.5 250.2 32.4 256 23.2 256C10.4 256 0 245.6 0 232.8V176c0-26.5 21.5-48 48-48H168.8c12.8 0 23.2-10.4 23.2-23.2z\"]\n};\nvar faMoneyCheck = {\n prefix: 'fas',\n iconName: 'money-check',\n icon: [576, 512, [], \"f53c\", \"M64 64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H64zm48 160H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zM96 336c0-8.8 7.2-16 16-16H464c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16zM376 160h80c13.3 0 24 10.7 24 24v48c0 13.3-10.7 24-24 24H376c-13.3 0-24-10.7-24-24V184c0-13.3 10.7-24 24-24z\"]\n};\nvar faStarHalfStroke = {\n prefix: 'fas',\n iconName: 'star-half-stroke',\n icon: [576, 512, [\"star-half-alt\"], \"f5c0\", \"M288 376.4l.1-.1 26.4 14.1 85.2 45.5-16.5-97.6-4.8-28.7 20.7-20.5 70.1-69.3-96.1-14.2-29.3-4.3-12.9-26.6L288.1 86.9l-.1 .3V376.4zm175.1 98.3c2 12-3 24.2-12.9 31.3s-23 8-33.8 2.3L288.1 439.8 159.8 508.3C149 514 135.9 513.1 126 506s-14.9-19.3-12.9-31.3L137.8 329 33.6 225.9c-8.6-8.5-11.7-21.2-7.9-32.7s13.7-19.9 25.7-21.7L195 150.3 259.4 18c5.4-11 16.5-18 28.8-18s23.4 7 28.8 18l64.3 132.3 143.6 21.2c12 1.8 22 10.2 25.7 21.7s.7 24.2-7.9 32.7L438.5 329l24.6 145.7z\"]\n};\nvar faStarHalfAlt = faStarHalfStroke;\nvar faCode = {\n prefix: 'fas',\n iconName: 'code',\n icon: [640, 512, [], \"f121\", \"M392.8 1.2c-17-4.9-34.7 5-39.6 22l-128 448c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l128-448c4.9-17-5-34.7-22-39.6zm80.6 120.1c-12.5 12.5-12.5 32.8 0 45.3L562.7 256l-89.4 89.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l112-112c12.5-12.5 12.5-32.8 0-45.3l-112-112c-12.5-12.5-32.8-12.5-45.3 0zm-306.7 0c-12.5-12.5-32.8-12.5-45.3 0l-112 112c-12.5 12.5-12.5 32.8 0 45.3l112 112c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256l89.4-89.4c12.5-12.5 12.5-32.8 0-45.3z\"]\n};\nvar faWhiskeyGlass = {\n prefix: 'fas',\n iconName: 'whiskey-glass',\n icon: [512, 512, [129347, \"glass-whiskey\"], \"f7a0\", \"M32 32c-9.3 0-18.1 4-24.2 11.1S-1 59.4 .3 68.6l50 342.9c5.7 39.3 39.4 68.5 79.2 68.5h253c39.7 0 73.4-29.1 79.2-68.5l50-342.9c1.3-9.2-1.4-18.5-7.5-25.5S489.3 32 480 32H32zM87.7 224L69 96H443L424.3 224H87.7z\"]\n};\nvar faGlassWhiskey = faWhiskeyGlass;\nvar faBuildingCircleExclamation = {\n prefix: 'fas',\n iconName: 'building-circle-exclamation',\n icon: [640, 512, [], \"e4d3\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c15.1 0 28.5-6.9 37.3-17.8C340.4 462.2 320 417.5 320 368c0-54.7 24.9-103.5 64-135.8V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faMagnifyingGlassChart = {\n prefix: 'fas',\n iconName: 'magnifying-glass-chart',\n icon: [512, 512, [], \"e522\", \"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zm-312 8v64c0 13.3 10.7 24 24 24s24-10.7 24-24l0-64c0-13.3-10.7-24-24-24s-24 10.7-24 24zm80-96V280c0 13.3 10.7 24 24 24s24-10.7 24-24V120c0-13.3-10.7-24-24-24s-24 10.7-24 24zm80 64v96c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24s-24 10.7-24 24z\"]\n};\nvar faArrowUpRightFromSquare = {\n prefix: 'fas',\n iconName: 'arrow-up-right-from-square',\n icon: [512, 512, [\"external-link\"], \"f08e\", \"M320 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h82.7L201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3V192c0 17.7 14.3 32 32 32s32-14.3 32-32V32c0-17.7-14.3-32-32-32H320zM80 32C35.8 32 0 67.8 0 112V432c0 44.2 35.8 80 80 80H400c44.2 0 80-35.8 80-80V320c0-17.7-14.3-32-32-32s-32 14.3-32 32V432c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H80z\"]\n};\nvar faExternalLink = faArrowUpRightFromSquare;\nvar faCubesStacked = {\n prefix: 'fas',\n iconName: 'cubes-stacked',\n icon: [448, 512, [], \"e4e6\", \"M192 64v64c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32H224c-17.7 0-32 14.3-32 32zM82.7 207c-15.3 8.8-20.5 28.4-11.7 43.7l32 55.4c8.8 15.3 28.4 20.5 43.7 11.7l55.4-32c15.3-8.8 20.5-28.4 11.7-43.7l-32-55.4c-8.8-15.3-28.4-20.5-43.7-11.7L82.7 207zM288 192c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32H288zm64 160c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V384c0-17.7-14.3-32-32-32H352zM160 384v64c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V384c0-17.7-14.3-32-32-32H192c-17.7 0-32 14.3-32 32zM32 352c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32H96c17.7 0 32-14.3 32-32V384c0-17.7-14.3-32-32-32H32z\"]\n};\nvar faWonSign = {\n prefix: 'fas',\n iconName: 'won-sign',\n icon: [512, 512, [8361, \"krw\", \"won\"], \"f159\", \"M62.4 53.9C56.8 37.1 38.6 28.1 21.9 33.6S-3.9 57.4 1.6 74.1L51.6 224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H72.9l56.7 170.1c4.5 13.5 17.4 22.4 31.6 21.9s26.4-10.4 29.8-24.2L233 288h46L321 455.8c3.4 13.8 15.6 23.7 29.8 24.2s27.1-8.4 31.6-21.9L439.1 288H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H460.4l50-149.9c5.6-16.8-3.5-34.9-20.2-40.5s-34.9 3.5-40.5 20.2L392.9 224H329L287 56.2C283.5 42 270.7 32 256 32s-27.5 10-31 24.2L183 224h-64L62.4 53.9zm78 234.1H167l-11.4 45.6L140.4 288zM249 224l7-28.1 7 28.1H249zm96 64h26.6l-15.2 45.6L345 288z\"]\n};\nvar faKrw = faWonSign;\nvar faWon = faWonSign;\nvar faVirusCovid = {\n prefix: 'fas',\n iconName: 'virus-covid',\n icon: [512, 512, [], \"e4a8\", \"M192 24c0-13.3 10.7-24 24-24h80c13.3 0 24 10.7 24 24s-10.7 24-24 24H280V81.6c30.7 4.2 58.8 16.3 82.3 34.1L386.1 92 374.8 80.6c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l56.6 56.6c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L420 125.9l-23.8 23.8c17.9 23.5 29.9 51.7 34.1 82.3H464V216c0-13.3 10.7-24 24-24s24 10.7 24 24v80c0 13.3-10.7 24-24 24s-24-10.7-24-24V280H430.4c-4.2 30.7-16.3 58.8-34.1 82.3L420 386.1l11.3-11.3c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-56.6 56.6c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9L386.1 420l-23.8-23.8c-23.5 17.9-51.7 29.9-82.3 34.1V464h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h16V430.4c-30.7-4.2-58.8-16.3-82.3-34.1L125.9 420l11.3 11.3c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L46.7 408.7c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L92 386.1l23.8-23.8C97.9 338.8 85.8 310.7 81.6 280H48v16c0 13.3-10.7 24-24 24s-24-10.7-24-24V216c0-13.3 10.7-24 24-24s24 10.7 24 24v16H81.6c4.2-30.7 16.3-58.8 34.1-82.3L92 125.9 80.6 137.2c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l56.6-56.6c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L125.9 92l23.8 23.8c23.5-17.9 51.7-29.9 82.3-34.1V48H216c-13.3 0-24-10.7-24-24zm48 200a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm64 104a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faAustralSign = {\n prefix: 'fas',\n iconName: 'austral-sign',\n icon: [448, 512, [], \"e0a9\", \"M253.5 51.7C248.6 39.8 236.9 32 224 32s-24.6 7.8-29.5 19.7L122.7 224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H96L82.7 320H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H56L34.5 435.7c-6.8 16.3 .9 35 17.2 41.8s35-.9 41.8-17.2L125.3 384H322.7l31.8 76.3c6.8 16.3 25.5 24 41.8 17.2s24-25.5 17.2-41.8L392 384h24c17.7 0 32-14.3 32-32s-14.3-32-32-32H365.3L352 288h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H325.3L253.5 51.7zM256 224H192l32-76.8L256 224zm-90.7 64H282.7L296 320H152l13.3-32z\"]\n};\nvar faF = {\n prefix: 'fas',\n iconName: 'f',\n icon: [320, 512, [102], \"46\", \"M64 32C28.7 32 0 60.7 0 96V256 448c0 17.7 14.3 32 32 32s32-14.3 32-32V288H224c17.7 0 32-14.3 32-32s-14.3-32-32-32H64V96H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H64z\"]\n};\nvar faLeaf = {\n prefix: 'fas',\n iconName: 'leaf',\n icon: [512, 512, [], \"f06c\", \"M272 96c-78.6 0-145.1 51.5-167.7 122.5c33.6-17 71.5-26.5 111.7-26.5h88c8.8 0 16 7.2 16 16s-7.2 16-16 16H288 216s0 0 0 0c-16.6 0-32.7 1.9-48.3 5.4c-25.9 5.9-49.9 16.4-71.4 30.7c0 0 0 0 0 0C38.3 298.8 0 364.9 0 440v16c0 13.3 10.7 24 24 24s24-10.7 24-24V440c0-48.7 20.7-92.5 53.8-123.2C121.6 392.3 190.3 448 272 448l1 0c132.1-.7 239-130.9 239-291.4c0-42.6-7.5-83.1-21.1-119.6c-2.6-6.9-12.7-6.6-16.2-.1C455.9 72.1 418.7 96 376 96L272 96z\"]\n};\nvar faRoad = {\n prefix: 'fas',\n iconName: 'road',\n icon: [576, 512, [128739], \"f018\", \"M256 32H181.2c-27.1 0-51.3 17.1-60.3 42.6L3.1 407.2C1.1 413 0 419.2 0 425.4C0 455.5 24.5 480 54.6 480H256V416c0-17.7 14.3-32 32-32s32 14.3 32 32v64H521.4c30.2 0 54.6-24.5 54.6-54.6c0-6.2-1.1-12.4-3.1-18.2L455.1 74.6C446 49.1 421.9 32 394.8 32H320V96c0 17.7-14.3 32-32 32s-32-14.3-32-32V32zm64 192v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V224c0-17.7 14.3-32 32-32s32 14.3 32 32z\"]\n};\nvar faTaxi = {\n prefix: 'fas',\n iconName: 'taxi',\n icon: [512, 512, [128662, \"cab\"], \"f1ba\", \"M192 0c-17.7 0-32 14.3-32 32V64c0 .1 0 .1 0 .2c-38.6 2.2-72.3 27.3-85.2 64.1L39.6 228.8C16.4 238.4 0 261.3 0 288V432v48c0 17.7 14.3 32 32 32H64c17.7 0 32-14.3 32-32V432H416v48c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V432 288c0-26.7-16.4-49.6-39.6-59.2L437.2 128.3c-12.9-36.8-46.6-62-85.2-64.1c0-.1 0-.1 0-.2V32c0-17.7-14.3-32-32-32H192zM165.4 128H346.6c13.6 0 25.7 8.6 30.2 21.4L402.9 224H109.1l26.1-74.6c4.5-12.8 16.6-21.4 30.2-21.4zM96 288a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm288 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faCab = faTaxi;\nvar faPersonCirclePlus = {\n prefix: 'fas',\n iconName: 'person-circle-plus',\n icon: [576, 512, [], \"e541\", \"M112 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V256.9L59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c17.4-28.9 48.6-46.6 82.3-46.6h29.7c33.7 0 64.9 17.7 82.3 46.6l44.9 74.7c-16.1 17.6-28.6 38.5-36.6 61.5c-1.9-1.8-3.5-3.9-4.9-6.3L232 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H152zM432 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm16 80c0-8.8-7.2-16-16-16s-16 7.2-16 16v48H368c-8.8 0-16 7.2-16 16s7.2 16 16 16h48v48c0 8.8 7.2 16 16 16s16-7.2 16-16V384h48c8.8 0 16-7.2 16-16s-7.2-16-16-16H448V304z\"]\n};\nvar faChartPie = {\n prefix: 'fas',\n iconName: 'chart-pie',\n icon: [576, 512, [\"pie-chart\"], \"f200\", \"M304 240V16.6c0-9 7-16.6 16-16.6C443.7 0 544 100.3 544 224c0 9-7.6 16-16.6 16H304zM32 272C32 150.7 122.1 50.3 239 34.3c9.2-1.3 17 6.1 17 15.4V288L412.5 444.5c6.7 6.7 6.2 17.7-1.5 23.1C371.8 495.6 323.8 512 272 512C139.5 512 32 404.6 32 272zm526.4 16c9.3 0 16.6 7.8 15.4 17c-7.7 55.9-34.6 105.6-73.9 142.3c-6 5.6-15.4 5.2-21.2-.7L320 288H558.4z\"]\n};\nvar faPieChart = faChartPie;\nvar faBoltLightning = {\n prefix: 'fas',\n iconName: 'bolt-lightning',\n icon: [384, 512, [], \"e0b7\", \"M0 256L28.5 28c2-16 15.6-28 31.8-28H228.9c15 0 27.1 12.1 27.1 27.1c0 3.2-.6 6.5-1.7 9.5L208 160H347.3c20.2 0 36.7 16.4 36.7 36.7c0 7.4-2.2 14.6-6.4 20.7l-192.2 281c-5.9 8.6-15.6 13.7-25.9 13.7h-2.9c-15.7 0-28.5-12.8-28.5-28.5c0-2.3 .3-4.6 .9-6.9L176 288H32c-17.7 0-32-14.3-32-32z\"]\n};\nvar faSackXmark = {\n prefix: 'fas',\n iconName: 'sack-xmark',\n icon: [512, 512, [], \"e56a\", \"M192 96H320l47.4-71.1C374.5 14.2 366.9 0 354.1 0H157.9c-12.8 0-20.4 14.2-13.3 24.9L192 96zm128 32H192c-3.8 2.5-8.1 5.3-13 8.4l0 0 0 0C122.3 172.7 0 250.9 0 416c0 53 43 96 96 96H416c53 0 96-43 96-96c0-165.1-122.3-243.3-179-279.6c-4.8-3.1-9.2-5.9-13-8.4zM289.9 336l47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47z\"]\n};\nvar faFileExcel = {\n prefix: 'fas',\n iconName: 'file-excel',\n icon: [384, 512, [], \"f1c3\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM155.7 250.2L192 302.1l36.3-51.9c7.6-10.9 22.6-13.5 33.4-5.9s13.5 22.6 5.9 33.4L221.3 344l46.4 66.2c7.6 10.9 5 25.8-5.9 33.4s-25.8 5-33.4-5.9L192 385.8l-36.3 51.9c-7.6 10.9-22.6 13.5-33.4 5.9s-13.5-22.6-5.9-33.4L162.7 344l-46.4-66.2c-7.6-10.9-5-25.8 5.9-33.4s25.8-5 33.4 5.9z\"]\n};\nvar faFileContract = {\n prefix: 'fas',\n iconName: 'file-contract',\n icon: [384, 512, [], \"f56c\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM80 64h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16s7.2-16 16-16zm54.2 253.8c-6.1 20.3-24.8 34.2-46 34.2H80c-8.8 0-16-7.2-16-16s7.2-16 16-16h8.2c7.1 0 13.3-4.6 15.3-11.4l14.9-49.5c3.4-11.3 13.8-19.1 25.6-19.1s22.2 7.7 25.6 19.1l11.6 38.6c7.4-6.2 16.8-9.7 26.8-9.7c15.9 0 30.4 9 37.5 23.2l4.4 8.8H304c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-6.1 0-11.6-3.4-14.3-8.8l-8.8-17.7c-1.7-3.4-5.1-5.5-8.8-5.5s-7.2 2.1-8.8 5.5l-8.8 17.7c-2.9 5.9-9.2 9.4-15.7 8.8s-12.1-5.1-13.9-11.3L144 349l-9.8 32.8z\"]\n};\nvar faFishFins = {\n prefix: 'fas',\n iconName: 'fish-fins',\n icon: [576, 512, [], \"e4f2\", \"M275.2 38.4c-10.6-8-25-8.5-36.3-1.5S222 57.3 224.6 70.3l9.7 48.6c-19.4 9-36.9 19.9-52.4 31.5c-15.3 11.5-29 23.9-40.7 36.3L48.1 132.4c-12.5-7.3-28.4-5.3-38.6 4.9S-3 163.3 4.2 175.9L50 256 4.2 336.1c-7.2 12.6-5 28.4 5.3 38.6s26.1 12.2 38.6 4.9l93.1-54.3c11.8 12.3 25.4 24.8 40.7 36.3c15.5 11.6 33 22.5 52.4 31.5l-9.7 48.6c-2.6 13 3.1 26.3 14.3 33.3s25.6 6.5 36.3-1.5l77.6-58.2c54.9-4 101.5-27 137.2-53.8c39.2-29.4 67.2-64.7 81.6-89.5c5.8-9.9 5.8-22.2 0-32.1c-14.4-24.8-42.5-60.1-81.6-89.5c-35.8-26.8-82.3-49.8-137.2-53.8L275.2 38.4zM384 256a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faBuildingFlag = {\n prefix: 'fas',\n iconName: 'building-flag',\n icon: [640, 512, [], \"e4d5\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zM448 0c-17.7 0-32 14.3-32 32V512h64V192H624c8.8 0 16-7.2 16-16V48c0-8.8-7.2-16-16-16H480c0-17.7-14.3-32-32-32z\"]\n};\nvar faFaceGrinBeam = {\n prefix: 'fas',\n iconName: 'face-grin-beam',\n icon: [512, 512, [128516, \"grin-beam\"], \"f582\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zm-170.5-84l0 0 0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0zm160 0l0 0-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2 0 0 0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8l0 0 0 0 0 0z\"]\n};\nvar faGrinBeam = faFaceGrinBeam;\nvar faObjectUngroup = {\n prefix: 'fas',\n iconName: 'object-ungroup',\n icon: [640, 512, [], \"f248\", \"M32 119.4C12.9 108.4 0 87.7 0 64C0 28.7 28.7 0 64 0c23.7 0 44.4 12.9 55.4 32H328.6C339.6 12.9 360.3 0 384 0c35.3 0 64 28.7 64 64c0 23.7-12.9 44.4-32 55.4V232.6c19.1 11.1 32 31.7 32 55.4c0 35.3-28.7 64-64 64c-23.7 0-44.4-12.9-55.4-32H119.4c-11.1 19.1-31.7 32-55.4 32c-35.3 0-64-28.7-64-64c0-23.7 12.9-44.4 32-55.4V119.4zM119.4 96c-5.6 9.7-13.7 17.8-23.4 23.4V232.6c9.7 5.6 17.8 13.7 23.4 23.4H328.6c5.6-9.7 13.7-17.8 23.4-23.4V119.4c-9.7-5.6-17.8-13.7-23.4-23.4H119.4zm192 384c-11.1 19.1-31.7 32-55.4 32c-35.3 0-64-28.7-64-64c0-23.7 12.9-44.4 32-55.4V352h64v40.6c9.7 5.6 17.8 13.7 23.4 23.4H520.6c5.6-9.7 13.7-17.8 23.4-23.4V279.4c-9.7-5.6-17.8-13.7-23.4-23.4h-46c-5.4-15.4-14.6-28.9-26.5-39.6V192h72.6c11.1-19.1 31.7-32 55.4-32c35.3 0 64 28.7 64 64c0 23.7-12.9 44.4-32 55.4V392.6c19.1 11.1 32 31.7 32 55.4c0 35.3-28.7 64-64 64c-23.7 0-44.4-12.9-55.4-32H311.4z\"]\n};\nvar faPoop = {\n prefix: 'fas',\n iconName: 'poop',\n icon: [512, 512, [], \"f619\", \"M254.4 6.6c3.5-4.3 9-6.5 14.5-5.7C315.8 7.2 352 47.4 352 96c0 11.2-1.9 22-5.5 32H352c35.3 0 64 28.7 64 64c0 19.1-8.4 36.3-21.7 48H408c39.8 0 72 32.2 72 72c0 23.2-11 43.8-28 57c34.1 5.7 60 35.3 60 71c0 39.8-32.2 72-72 72H72c-39.8 0-72-32.2-72-72c0-35.7 25.9-65.3 60-71c-17-13.2-28-33.8-28-57c0-39.8 32.2-72 72-72h13.7C104.4 228.3 96 211.1 96 192c0-35.3 28.7-64 64-64h16.2c44.1-.1 79.8-35.9 79.8-80c0-9.2-1.5-17.9-4.3-26.1c-1.8-5.2-.8-11.1 2.8-15.4z\"]\n};\nvar faLocationPin = {\n prefix: 'fas',\n iconName: 'location-pin',\n icon: [384, 512, [\"map-marker\"], \"f041\", \"M384 192c0 87.4-117 243-168.3 307.2c-12.3 15.3-35.1 15.3-47.4 0C117 435 0 279.4 0 192C0 86 86 0 192 0S384 86 384 192z\"]\n};\nvar faMapMarker = faLocationPin;\nvar faKaaba = {\n prefix: 'fas',\n iconName: 'kaaba',\n icon: [576, 512, [128331], \"f66b\", \"M60 120l228 71.2L516 120 288 48.8 60 120zM278.5 1.5c6.2-1.9 12.9-1.9 19.1 0l256 80C566.9 85.6 576 98 576 112v16 0 21.2L292.8 237.7c-3.1 1-6.4 1-9.5 0L0 149.2V128 112C0 98 9.1 85.6 22.5 81.5l256-80zm23.9 266.8L576 182.8v46.5l-52.8 16.5c-8.4 2.6-13.1 11.6-10.5 20s11.6 13.1 20 10.5L576 262.8V400c0 14-9.1 26.4-22.5 30.5l-256 80c-6.2 1.9-12.9 1.9-19.1 0l-256-80C9.1 426.4 0 414 0 400V262.8l43.2 13.5c8.4 2.6 17.4-2.1 20-10.5s-2.1-17.4-10.5-20L0 229.2V182.8l273.7 85.5c9.3 2.9 19.3 2.9 28.6 0zm-185.5-2.6c-8.4-2.6-17.4 2.1-20 10.5s2.1 17.4 10.5 20l64 20c8.4 2.6 17.4-2.1 20-10.5s-2.1-17.4-10.5-20l-64-20zm352 30.5c8.4-2.6 13.1-11.6 10.5-20s-11.6-13.1-20-10.5l-64 20c-8.4 2.6-13.1 11.6-10.5 20s11.6 13.1 20 10.5l64-20zm-224 9.5c-8.4-2.6-17.4 2.1-20 10.5s2.1 17.4 10.5 20l38.5 12c9.3 2.9 19.3 2.9 28.6 0l38.5-12c8.4-2.6 13.1-11.6 10.5-20s-11.6-13.1-20-10.5l-38.5 12c-3.1 1-6.4 1-9.5 0l-38.5-12z\"]\n};\nvar faToiletPaper = {\n prefix: 'fas',\n iconName: 'toilet-paper',\n icon: [640, 512, [129531], \"f71e\", \"M444.2 0C397.2 49.6 384 126.5 384 192c0 158.8-27.3 247-42.7 283.9c-10 24-33.2 36.1-55.4 36.1H48c-11.5 0-22.2-6.2-27.8-16.2s-5.6-22.3 .4-32.2c9.8-17.7 15.4-38.2 20.5-57.7C52.3 362.8 64 293.5 64 192C64 86 107 0 160 0H444.2zM512 384c-53 0-96-86-96-192S459 0 512 0s96 86 96 192s-43 192-96 192zm0-128c17.7 0 32-28.7 32-64s-14.3-64-32-64s-32 28.7-32 64s14.3 64 32 64zM144 208a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm64 0a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm48 16a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm80-16a16 16 0 1 0 -32 0 16 16 0 1 0 32 0z\"]\n};\nvar faHelmetSafety = {\n prefix: 'fas',\n iconName: 'helmet-safety',\n icon: [576, 512, [\"hard-hat\", \"hat-hard\"], \"f807\", \"M256 32c-17.7 0-32 14.3-32 32v2.3 99.6c0 5.6-4.5 10.1-10.1 10.1c-3.6 0-7-1.9-8.8-5.1L157.1 87C83 123.5 32 199.8 32 288v64H544l0-66.4c-.9-87.2-51.7-162.4-125.1-198.6l-48 83.9c-1.8 3.2-5.2 5.1-8.8 5.1c-5.6 0-10.1-4.5-10.1-10.1V66.3 64c0-17.7-14.3-32-32-32H256zM16.6 384C7.4 384 0 391.4 0 400.6c0 4.7 2 9.2 5.8 11.9C27.5 428.4 111.8 480 288 480s260.5-51.6 282.2-67.5c3.8-2.8 5.8-7.2 5.8-11.9c0-9.2-7.4-16.6-16.6-16.6H16.6z\"]\n};\nvar faHardHat = faHelmetSafety;\nvar faHatHard = faHelmetSafety;\nvar faEject = {\n prefix: 'fas',\n iconName: 'eject',\n icon: [448, 512, [9167], \"f052\", \"M224 32c13.5 0 26.3 5.6 35.4 15.6l176 192c12.9 14 16.2 34.3 8.6 51.8S419 320 400 320H48c-19 0-36.3-11.2-43.9-28.7s-4.3-37.7 8.6-51.8l176-192C197.7 37.6 210.5 32 224 32zM0 432c0-26.5 21.5-48 48-48H400c26.5 0 48 21.5 48 48s-21.5 48-48 48H48c-26.5 0-48-21.5-48-48z\"]\n};\nvar faCircleRight = {\n prefix: 'fas',\n iconName: 'circle-right',\n icon: [512, 512, [61838, \"arrow-alt-circle-right\"], \"f35a\", \"M0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM294.6 135.1l99.9 107.1c3.5 3.8 5.5 8.7 5.5 13.8s-2 10.1-5.5 13.8L294.6 376.9c-4.2 4.5-10.1 7.1-16.3 7.1C266 384 256 374 256 361.7l0-57.7-96 0c-17.7 0-32-14.3-32-32l0-32c0-17.7 14.3-32 32-32l96 0 0-57.7c0-12.3 10-22.3 22.3-22.3c6.2 0 12.1 2.6 16.3 7.1z\"]\n};\nvar faArrowAltCircleRight = faCircleRight;\nvar faPlaneCircleCheck = {\n prefix: 'fas',\n iconName: 'plane-circle-check',\n icon: [640, 512, [], \"e555\", \"M256 0c-35 0-64 59.5-64 93.7v84.6L8.1 283.4c-5 2.8-8.1 8.2-8.1 13.9v65.5c0 10.6 10.2 18.3 20.4 15.4l171.6-49 0 70.9-57.6 43.2c-4 3-6.4 7.8-6.4 12.8v42c0 7.8 6.3 14 14 14c1.3 0 2.6-.2 3.9-.5L256 480l110.1 31.5c1.3 .4 2.6 .5 3.9 .5c6 0 11.1-3.7 13.1-9C344.5 470.7 320 422.2 320 368c0-60.6 30.6-114 77.1-145.6L320 178.3V93.7C320 59.5 292 0 256 0zM640 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-76.7-43.3c6.2 6.2 6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L480 385.4l60.7-60.7c6.2-6.2 16.4-6.2 22.6 0z\"]\n};\nvar faFaceRollingEyes = {\n prefix: 'fas',\n iconName: 'face-rolling-eyes',\n icon: [512, 512, [128580, \"meh-rolling-eyes\"], \"f5a5\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM192 368H320c8.8 0 16 7.2 16 16s-7.2 16-16 16H192c-8.8 0-16-7.2-16-16s7.2-16 16-16zm32-144c0 35.3-28.7 64-64 64s-64-28.7-64-64c0-26 15.5-48.4 37.8-58.4c-3.7 5.2-5.8 11.6-5.8 18.4c0 17.7 14.3 32 32 32s32-14.3 32-32c0-6.9-2.2-13.2-5.8-18.4C208.5 175.6 224 198 224 224zm128 64c-35.3 0-64-28.7-64-64c0-26 15.5-48.4 37.8-58.4c-3.7 5.2-5.8 11.6-5.8 18.4c0 17.7 14.3 32 32 32s32-14.3 32-32c0-6.9-2.2-13.2-5.8-18.4C400.5 175.6 416 198 416 224c0 35.3-28.7 64-64 64z\"]\n};\nvar faMehRollingEyes = faFaceRollingEyes;\nvar faObjectGroup = {\n prefix: 'fas',\n iconName: 'object-group',\n icon: [576, 512, [], \"f247\", \"M32 119.4C12.9 108.4 0 87.7 0 64C0 28.7 28.7 0 64 0c23.7 0 44.4 12.9 55.4 32H456.6C467.6 12.9 488.3 0 512 0c35.3 0 64 28.7 64 64c0 23.7-12.9 44.4-32 55.4V392.6c19.1 11.1 32 31.7 32 55.4c0 35.3-28.7 64-64 64c-23.7 0-44.4-12.9-55.4-32H119.4c-11.1 19.1-31.7 32-55.4 32c-35.3 0-64-28.7-64-64c0-23.7 12.9-44.4 32-55.4V119.4zM456.6 96H119.4c-5.6 9.7-13.7 17.8-23.4 23.4V392.6c9.7 5.6 17.8 13.7 23.4 23.4H456.6c5.6-9.7 13.7-17.8 23.4-23.4V119.4c-9.7-5.6-17.8-13.7-23.4-23.4zM128 160c0-17.7 14.3-32 32-32H288c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H160c-17.7 0-32-14.3-32-32V160zM256 320h32c35.3 0 64-28.7 64-64V224h64c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H288c-17.7 0-32-14.3-32-32V320z\"]\n};\nvar faChartLine = {\n prefix: 'fas',\n iconName: 'chart-line',\n icon: [512, 512, [\"line-chart\"], \"f201\", \"M64 64c0-17.7-14.3-32-32-32S0 46.3 0 64V400c0 44.2 35.8 80 80 80H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H80c-8.8 0-16-7.2-16-16V64zm406.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L320 210.7l-57.4-57.4c-12.5-12.5-32.8-12.5-45.3 0l-112 112c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L240 221.3l57.4 57.4c12.5 12.5 32.8 12.5 45.3 0l128-128z\"]\n};\nvar faLineChart = faChartLine;\nvar faMaskVentilator = {\n prefix: 'fas',\n iconName: 'mask-ventilator',\n icon: [640, 512, [], \"e524\", \"M159.1 176C139.4 219.2 128 264.7 128 300.8c0 15.9 2.2 31.4 6.3 46l-31.8-7.9C70.5 330.9 48 302.1 48 269V184c0-4.4 3.6-8 8-8H159.1zm26-48H56c-30.9 0-56 25.1-56 56v85c0 55.1 37.5 103.1 90.9 116.4l71.3 17.8c22.7 30.5 55.4 54.1 93.8 66.6V393.3c-19.7-16.4-32-40.3-32-66.9c0-49.5 43-134.4 96-134.4c52.5 0 96 84.9 96 134.4c0 26.7-12.4 50.4-32 66.8v76.6c38-12.6 70.6-36 93.5-66.4l71.6-17.9C602.5 372.1 640 324.1 640 269V184c0-30.9-25.1-56-56-56H454.5C419.7 73.8 372.1 32 320 32c-52.6 0-100.2 41.8-134.9 96zm295.6 48H584c4.4 0 8 3.6 8 8v85c0 33-22.5 61.8-54.5 69.9l-31.8 8c4.2-14.7 6.4-30.1 6.4-46.1c0-36.1-11.6-81.6-31.3-124.8zM288 320V512h64V320c0-17.7-14.3-32-32-32s-32 14.3-32 32z\"]\n};\nvar faArrowRight = {\n prefix: 'fas',\n iconName: 'arrow-right',\n icon: [448, 512, [8594], \"f061\", \"M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z\"]\n};\nvar faSignsPost = {\n prefix: 'fas',\n iconName: 'signs-post',\n icon: [512, 512, [\"map-signs\"], \"f277\", \"M224 32H64C46.3 32 32 46.3 32 64v64c0 17.7 14.3 32 32 32H441.4c4.2 0 8.3-1.7 11.3-4.7l48-48c6.2-6.2 6.2-16.4 0-22.6l-48-48c-3-3-7.1-4.7-11.3-4.7H288c0-17.7-14.3-32-32-32s-32 14.3-32 32zM480 256c0-17.7-14.3-32-32-32H288V192H224v32H70.6c-4.2 0-8.3 1.7-11.3 4.7l-48 48c-6.2 6.2-6.2 16.4 0 22.6l48 48c3 3 7.1 4.7 11.3 4.7H448c17.7 0 32-14.3 32-32V256zM288 480V384H224v96c0 17.7 14.3 32 32 32s32-14.3 32-32z\"]\n};\nvar faMapSigns = faSignsPost;\nvar faCashRegister = {\n prefix: 'fas',\n iconName: 'cash-register',\n icon: [512, 512, [], \"f788\", \"M64 0C46.3 0 32 14.3 32 32V96c0 17.7 14.3 32 32 32h80v32H87c-31.6 0-58.5 23.1-63.3 54.4L1.1 364.1C.4 368.8 0 373.6 0 378.4V448c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V378.4c0-4.8-.4-9.6-1.1-14.4L488.2 214.4C483.5 183.1 456.6 160 425 160H208V128h80c17.7 0 32-14.3 32-32V32c0-17.7-14.3-32-32-32H64zM96 48H256c8.8 0 16 7.2 16 16s-7.2 16-16 16H96c-8.8 0-16-7.2-16-16s7.2-16 16-16zM64 432c0-8.8 7.2-16 16-16H432c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16zm48-168a24 24 0 1 1 0-48 24 24 0 1 1 0 48zm120-24a24 24 0 1 1 -48 0 24 24 0 1 1 48 0zM160 344a24 24 0 1 1 0-48 24 24 0 1 1 0 48zM328 240a24 24 0 1 1 -48 0 24 24 0 1 1 48 0zM256 344a24 24 0 1 1 0-48 24 24 0 1 1 0 48zM424 240a24 24 0 1 1 -48 0 24 24 0 1 1 48 0zM352 344a24 24 0 1 1 0-48 24 24 0 1 1 0 48z\"]\n};\nvar faPersonCircleQuestion = {\n prefix: 'fas',\n iconName: 'person-circle-question',\n icon: [576, 512, [], \"e542\", \"M112 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V256.9L59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c17.4-28.9 48.6-46.6 82.3-46.6h29.7c33.7 0 64.9 17.7 82.3 46.6l44.9 74.7c-16.1 17.6-28.6 38.5-36.6 61.5c-1.9-1.8-3.5-3.9-4.9-6.3L232 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H152zM432 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm0 240a24 24 0 1 0 0-48 24 24 0 1 0 0 48zM368 321.6V328c0 8.8 7.2 16 16 16s16-7.2 16-16v-6.4c0-5.3 4.3-9.6 9.6-9.6h40.5c7.7 0 13.9 6.2 13.9 13.9c0 5.2-2.9 9.9-7.4 12.3l-32 16.8c-5.3 2.8-8.6 8.2-8.6 14.2V384c0 8.8 7.2 16 16 16s16-7.2 16-16v-5.1l23.5-12.3c15.1-7.9 24.5-23.6 24.5-40.6c0-25.4-20.6-45.9-45.9-45.9H409.6c-23 0-41.6 18.6-41.6 41.6z\"]\n};\nvar faH = {\n prefix: 'fas',\n iconName: 'h',\n icon: [384, 512, [104], \"48\", \"M320 256l0 192c0 17.7 14.3 32 32 32s32-14.3 32-32l0-224V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V192L64 192 64 64c0-17.7-14.3-32-32-32S0 46.3 0 64V448c0 17.7 14.3 32 32 32s32-14.3 32-32l0-192 256 0z\"]\n};\nvar faTarp = {\n prefix: 'fas',\n iconName: 'tarp',\n icon: [576, 512, [], \"e57b\", \"M576 128c0-35.3-28.7-64-64-64H64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64l352 0 0-128c0-17.7 14.3-32 32-32H576V128zM448 448L576 320H448l0 128zM96 128a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faScrewdriverWrench = {\n prefix: 'fas',\n iconName: 'screwdriver-wrench',\n icon: [512, 512, [\"tools\"], \"f7d9\", \"M78.6 5C69.1-2.4 55.6-1.5 47 7L7 47c-8.5 8.5-9.4 22-2.1 31.6l80 104c4.5 5.9 11.6 9.4 19 9.4h54.1l109 109c-14.7 29-10 65.4 14.3 89.6l112 112c12.5 12.5 32.8 12.5 45.3 0l64-64c12.5-12.5 12.5-32.8 0-45.3l-112-112c-24.2-24.2-60.6-29-89.6-14.3l-109-109V104c0-7.5-3.5-14.5-9.4-19L78.6 5zM19.9 396.1C7.2 408.8 0 426.1 0 444.1C0 481.6 30.4 512 67.9 512c18 0 35.3-7.2 48-19.9L233.7 374.3c-7.8-20.9-9-43.6-3.6-65.1l-61.7-61.7L19.9 396.1zM512 144c0-10.5-1.1-20.7-3.2-30.5c-2.4-11.2-16.1-14.1-24.2-6l-63.9 63.9c-3 3-7.1 4.7-11.3 4.7H352c-8.8 0-16-7.2-16-16V102.6c0-4.2 1.7-8.3 4.7-11.3l63.9-63.9c8.1-8.1 5.2-21.8-6-24.2C388.7 1.1 378.5 0 368 0C288.5 0 224 64.5 224 144l0 .8 85.3 85.3c36-9.1 75.8 .5 104 28.7L429 274.5c49-23 83-72.8 83-130.5zM56 432a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faTools = faScrewdriverWrench;\nvar faArrowsToEye = {\n prefix: 'fas',\n iconName: 'arrows-to-eye',\n icon: [640, 512, [], \"e4bf\", \"M15 15C24.4 5.7 39.6 5.7 49 15l63 63V40c0-13.3 10.7-24 24-24s24 10.7 24 24v96c0 13.3-10.7 24-24 24H40c-13.3 0-24-10.7-24-24s10.7-24 24-24H78.1L15 49C5.7 39.6 5.7 24.4 15 15zM133.5 243.9C158.6 193.6 222.7 112 320 112s161.4 81.6 186.5 131.9c3.8 7.6 3.8 16.5 0 24.2C481.4 318.4 417.3 400 320 400s-161.4-81.6-186.5-131.9c-3.8-7.6-3.8-16.5 0-24.2zM320 320a64 64 0 1 0 0-128 64 64 0 1 0 0 128zM591 15c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-63 63H600c13.3 0 24 10.7 24 24s-10.7 24-24 24H504c-13.3 0-24-10.7-24-24V40c0-13.3 10.7-24 24-24s24 10.7 24 24V78.1l63-63zM15 497c-9.4-9.4-9.4-24.6 0-33.9l63-63H40c-13.3 0-24-10.7-24-24s10.7-24 24-24h96c13.3 0 24 10.7 24 24v96c0 13.3-10.7 24-24 24s-24-10.7-24-24V433.9L49 497c-9.4 9.4-24.6 9.4-33.9 0zm576 0l-63-63V472c0 13.3-10.7 24-24 24s-24-10.7-24-24V376c0-13.3 10.7-24 24-24h96c13.3 0 24 10.7 24 24s-10.7 24-24 24H561.9l63 63c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0z\"]\n};\nvar faPlugCircleBolt = {\n prefix: 'fas',\n iconName: 'plug-circle-bolt',\n icon: [576, 512, [], \"e55b\", \"M96 0C78.3 0 64 14.3 64 32v96h64V32c0-17.7-14.3-32-32-32zM288 0c-17.7 0-32 14.3-32 32v96h64V32c0-17.7-14.3-32-32-32zM32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32v32c0 77.4 55 142 128 156.8V480c0 17.7 14.3 32 32 32s32-14.3 32-32V412.8c12.3-2.5 24.1-6.4 35.1-11.5c-2.1-10.8-3.1-21.9-3.1-33.3c0-80.3 53.8-148 127.3-169.2c.5-2.2 .7-4.5 .7-6.8c0-17.7-14.3-32-32-32H32zM432 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm47.9-225c4.3 3.7 5.4 9.9 2.6 14.9L452.4 356H488c5.2 0 9.8 3.3 11.4 8.2s-.1 10.3-4.2 13.4l-96 72c-4.5 3.4-10.8 3.2-15.1-.6s-5.4-9.9-2.6-14.9L411.6 380H376c-5.2 0-9.8-3.3-11.4-8.2s.1-10.3 4.2-13.4l96-72c4.5-3.4 10.8-3.2 15.1 .6z\"]\n};\nvar faHeart = {\n prefix: 'fas',\n iconName: 'heart',\n icon: [512, 512, [128153, 128154, 128155, 128156, 128420, 129293, 129294, 129505, 9829, 10084, 61578], \"f004\", \"M47.6 300.4L228.3 469.1c7.5 7 17.4 10.9 27.7 10.9s20.2-3.9 27.7-10.9L464.4 300.4c30.4-28.3 47.6-68 47.6-109.5v-5.8c0-69.9-50.5-129.5-119.4-141C347 36.5 300.6 51.4 268 84L256 96 244 84c-32.6-32.6-79-47.5-124.6-39.9C50.5 55.6 0 115.2 0 185.1v5.8c0 41.5 17.2 81.2 47.6 109.5z\"]\n};\nvar faMarsAndVenus = {\n prefix: 'fas',\n iconName: 'mars-and-venus',\n icon: [512, 512, [9893], \"f224\", \"M337.8 14.8C341.5 5.8 350.3 0 360 0H472c13.3 0 24 10.7 24 24V136c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-24.7 24.7C407 163.3 416 192.6 416 224c0 80.2-59 146.6-136 158.2V408h24c13.3 0 24 10.7 24 24s-10.7 24-24 24H280v32c0 13.3-10.7 24-24 24s-24-10.7-24-24V456H208c-13.3 0-24-10.7-24-24s10.7-24 24-24h24V382.2C155 370.6 96 304.2 96 224c0-88.4 71.6-160 160-160c39.6 0 75.9 14.4 103.8 38.2L382.1 80 343 41c-6.9-6.9-8.9-17.2-5.2-26.2zM448 48l0 0h0v0zM352 224a96 96 0 1 0 -192 0 96 96 0 1 0 192 0z\"]\n};\nvar faHouseUser = {\n prefix: 'fas',\n iconName: 'house-user',\n icon: [576, 512, [\"home-user\"], \"e1b0\", \"M575.8 255.5c0 18-15 32.1-32 32.1h-32l.7 160.2c.2 35.5-28.5 64.3-64 64.3H128.1c-35.3 0-64-28.7-64-64V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L564.8 231.5c8 7 12 15 11 24zM352 224a64 64 0 1 0 -128 0 64 64 0 1 0 128 0zm-96 96c-44.2 0-80 35.8-80 80c0 8.8 7.2 16 16 16H384c8.8 0 16-7.2 16-16c0-44.2-35.8-80-80-80H256z\"]\n};\nvar faHomeUser = faHouseUser;\nvar faDumpsterFire = {\n prefix: 'fas',\n iconName: 'dumpster-fire',\n icon: [640, 512, [], \"f794\", \"M49.7 32l90.8 0L114.9 160l-94 0C9.3 160 0 150.7 0 139.1c0-2.1 .3-4.1 .9-6.1L26.8 48.9C29.9 38.9 39.2 32 49.7 32zM272 160l-124.5 0L173.1 32 272 32l0 128zm32 0l0-128 98.9 0 14.4 72.1c-1.7 1.1-3.3 2.4-4.8 3.8c-18.4 16.4-35.4 34-50.5 52.1l-58 0zm209.9-23.7c-1.7 1.6-3.4 3.2-5 4.8C498 129.6 486.7 118.6 475 108c-7.6-6.9-17-10.8-26.6-11.8L435.5 32l90.8 0c10.5 0 19.8 6.9 22.9 16.9L575.1 133c.2 .7 .4 1.4 .5 2.1c-17.8-15-44.3-14.6-61.7 1.2zM325.2 210.7C304.3 244.5 288 282.9 288 318.1c0 49.3 18.6 95.2 49.6 129.9L128 448c0 17.7-14.3 32-32 32s-32-14.3-32-32L44 288l-12 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l4 0-4-32 305.5 0c-4.4 6.2-8.5 12.5-12.3 18.7zm180.6-34.5L518 162.5c5.4-6.1 13.3-8.8 20.9-8.9c7.2 0 14.3 2.6 19.9 7.8c19.7 18.3 39.8 43.2 55 70.6C629 259.2 640 290.2 640 320.2C640 408.8 568.7 480 480 480c-89.6 0-160-71.3-160-159.8c0-37.3 16-73.4 36.8-104.5c20.9-31.3 47.5-59 70.9-80.2c5.7-5.2 13.1-7.7 20.3-7.5c14.1 .3 23.8 11.4 32.7 21.6c0 0 0 0 0 0c2 2.3 4 4.6 6 6.7l19 19.9zM544 368.2c0-36.5-37-73-54.8-88.4c-5.4-4.7-13.1-4.7-18.5 0C453 295.1 416 331.6 416 368.2c0 35.3 28.7 64 64 64s64-28.7 64-64z\"]\n};\nvar faHouseCrack = {\n prefix: 'fas',\n iconName: 'house-crack',\n icon: [576, 512, [], \"e3b1\", \"M543.8 287.6c17 0 32-14 32-32.1c1-9-3-17-11-24L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1h32V448c0 35.3 28.7 64 64 64H230.4l-31.3-52.2c-4.1-6.8-2.6-15.5 3.5-20.5L288 368l-60.2-82.8c-10.9-15 8.2-33.5 22.8-22l117.9 92.6c8 6.3 8.2 18.4 .4 24.9L288 448l38.4 64H448.5c35.5 0 64.2-28.8 64-64.3l-.7-160.2h32z\"]\n};\nvar faMartiniGlassCitrus = {\n prefix: 'fas',\n iconName: 'martini-glass-citrus',\n icon: [576, 512, [\"cocktail\"], \"f561\", \"M432 240c53 0 96-43 96-96s-43-96-96-96c-35.5 0-66.6 19.3-83.2 48H296.2C316 40.1 369.3 0 432 0c79.5 0 144 64.5 144 144s-64.5 144-144 144c-27.7 0-53.5-7.8-75.5-21.3l35.4-35.4c12.2 5.6 25.8 8.7 40.1 8.7zM1.8 142.8C5.5 133.8 14.3 128 24 128H392c9.7 0 18.5 5.8 22.2 14.8s1.7 19.3-5.2 26.2l-177 177V464h64c13.3 0 24 10.7 24 24s-10.7 24-24 24H208 120c-13.3 0-24-10.7-24-24s10.7-24 24-24h64V345.9L7 169c-6.9-6.9-8.9-17.2-5.2-26.2z\"]\n};\nvar faCocktail = faMartiniGlassCitrus;\nvar faFaceSurprise = {\n prefix: 'fas',\n iconName: 'face-surprise',\n icon: [512, 512, [128558, \"surprise\"], \"f5c2\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM256 288a64 64 0 1 1 0 128 64 64 0 1 1 0-128z\"]\n};\nvar faSurprise = faFaceSurprise;\nvar faBottleWater = {\n prefix: 'fas',\n iconName: 'bottle-water',\n icon: [320, 512, [], \"e4c5\", \"M120 0l80 0c13.3 0 24 10.7 24 24l0 40L96 64l0-40c0-13.3 10.7-24 24-24zM32 167.5c0-19.5 10-37.6 26.6-47.9l15.8-9.9C88.7 100.7 105.2 96 122.1 96l75.8 0c16.9 0 33.4 4.7 47.7 13.7l15.8 9.9C278 129.9 288 148 288 167.5c0 17-7.5 32.3-19.4 42.6C280.6 221.7 288 238 288 256c0 19.1-8.4 36.3-21.7 48c13.3 11.7 21.7 28.9 21.7 48s-8.4 36.3-21.7 48c13.3 11.7 21.7 28.9 21.7 48c0 35.3-28.7 64-64 64L96 512c-35.3 0-64-28.7-64-64c0-19.1 8.4-36.3 21.7-48C40.4 388.3 32 371.1 32 352s8.4-36.3 21.7-48C40.4 292.3 32 275.1 32 256c0-18 7.4-34.3 19.4-45.9C39.5 199.7 32 184.5 32 167.5zM96 240c0 8.8 7.2 16 16 16l96 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-96 0c-8.8 0-16 7.2-16 16zm16 112c-8.8 0-16 7.2-16 16s7.2 16 16 16l96 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-96 0z\"]\n};\nvar faCirclePause = {\n prefix: 'fas',\n iconName: 'circle-pause',\n icon: [512, 512, [62092, \"pause-circle\"], \"f28b\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM224 192V320c0 17.7-14.3 32-32 32s-32-14.3-32-32V192c0-17.7 14.3-32 32-32s32 14.3 32 32zm128 0V320c0 17.7-14.3 32-32 32s-32-14.3-32-32V192c0-17.7 14.3-32 32-32s32 14.3 32 32z\"]\n};\nvar faPauseCircle = faCirclePause;\nvar faToiletPaperSlash = {\n prefix: 'fas',\n iconName: 'toilet-paper-slash',\n icon: [640, 512, [], \"e072\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-109.7-86C569.9 374 608 291.9 608 192C608 86 565 0 512 0s-96 86-96 192c0 49.1 9.2 93.9 24.4 127.9l-59-46.2c1.6-24.8 2.6-52 2.6-81.6c0-65.5 13.2-142.4 60.2-192H160c-24.8 0-47.4 18.8-64.4 49.6L38.8 5.1zM367.3 385.4L66.5 148.4C64.9 162.4 64 177 64 192c0 101.5-11.7 170.8-23 213.9c-5.1 19.4-10.7 39.9-20.5 57.7c-5.9 9.9-6.1 22.1-.4 32.2S36.5 512 48 512H285.9c22.3 0 45.4-12.1 55.4-36.1c7.4-17.7 17.5-47.2 26-90.6zM544 192c0 35.3-14.3 64-32 64s-32-28.7-32-64s14.3-64 32-64s32 28.7 32 64z\"]\n};\nvar faAppleWhole = {\n prefix: 'fas',\n iconName: 'apple-whole',\n icon: [448, 512, [127822, 127823, \"apple-alt\"], \"f5d1\", \"M224 112c-8.8 0-16-7.2-16-16V80c0-44.2 35.8-80 80-80h16c8.8 0 16 7.2 16 16V32c0 44.2-35.8 80-80 80H224zM0 288c0-76.3 35.7-160 112-160c27.3 0 59.7 10.3 82.7 19.3c18.8 7.3 39.9 7.3 58.7 0c22.9-8.9 55.4-19.3 82.7-19.3c76.3 0 112 83.7 112 160c0 128-80 224-160 224c-16.5 0-38.1-6.6-51.5-11.3c-8.1-2.8-16.9-2.8-25 0c-13.4 4.7-35 11.3-51.5 11.3C80 512 0 416 0 288z\"]\n};\nvar faAppleAlt = faAppleWhole;\nvar faKitchenSet = {\n prefix: 'fas',\n iconName: 'kitchen-set',\n icon: [576, 512, [], \"e51a\", \"M240 144A96 96 0 1 0 48 144a96 96 0 1 0 192 0zm44.4 32C269.9 240.1 212.5 288 144 288C64.5 288 0 223.5 0 144S64.5 0 144 0c68.5 0 125.9 47.9 140.4 112h71.8c8.8-9.8 21.6-16 35.8-16H496c26.5 0 48 21.5 48 48s-21.5 48-48 48H392c-14.2 0-27-6.2-35.8-16H284.4zM144 80a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM400 240c13.3 0 24 10.7 24 24v8h96c13.3 0 24 10.7 24 24s-10.7 24-24 24H280c-13.3 0-24-10.7-24-24s10.7-24 24-24h96v-8c0-13.3 10.7-24 24-24zM288 464V352H512V464c0 26.5-21.5 48-48 48H336c-26.5 0-48-21.5-48-48zM48 320h80 16 32c26.5 0 48 21.5 48 48s-21.5 48-48 48H160c0 17.7-14.3 32-32 32H64c-17.7 0-32-14.3-32-32V336c0-8.8 7.2-16 16-16zm128 64c8.8 0 16-7.2 16-16s-7.2-16-16-16H160v32h16zM24 464H200c13.3 0 24 10.7 24 24s-10.7 24-24 24H24c-13.3 0-24-10.7-24-24s10.7-24 24-24z\"]\n};\nvar faR = {\n prefix: 'fas',\n iconName: 'r',\n icon: [320, 512, [114], \"52\", \"M64 32C28.7 32 0 60.7 0 96V288 448c0 17.7 14.3 32 32 32s32-14.3 32-32V320h95.3L261.8 466.4c10.1 14.5 30.1 18 44.6 7.9s18-30.1 7.9-44.6L230.1 309.5C282.8 288.1 320 236.4 320 176c0-79.5-64.5-144-144-144H64zM176 256H64V96H176c44.2 0 80 35.8 80 80s-35.8 80-80 80z\"]\n};\nvar faTemperatureQuarter = {\n prefix: 'fas',\n iconName: 'temperature-quarter',\n icon: [320, 512, [\"temperature-1\", \"thermometer-1\", \"thermometer-quarter\"], \"f2ca\", \"M160 64c-26.5 0-48 21.5-48 48V276.5c0 17.3-7.1 31.9-15.3 42.5C86.2 332.6 80 349.5 80 368c0 44.2 35.8 80 80 80s80-35.8 80-80c0-18.5-6.2-35.4-16.7-48.9c-8.2-10.6-15.3-25.2-15.3-42.5V112c0-26.5-21.5-48-48-48zM48 112C48 50.2 98.1 0 160 0s112 50.1 112 112V276.5c0 .1 .1 .3 .2 .6c.2 .6 .8 1.6 1.7 2.8c18.9 24.4 30.1 55 30.1 88.1c0 79.5-64.5 144-144 144S16 447.5 16 368c0-33.2 11.2-63.8 30.1-88.1c.9-1.2 1.5-2.2 1.7-2.8c.1-.3 .2-.5 .2-.6V112zM208 368c0 26.5-21.5 48-48 48s-48-21.5-48-48c0-20.9 13.4-38.7 32-45.3V272c0-8.8 7.2-16 16-16s16 7.2 16 16v50.7c18.6 6.6 32 24.4 32 45.3z\"]\n};\nvar faTemperature1 = faTemperatureQuarter;\nvar faThermometer1 = faTemperatureQuarter;\nvar faThermometerQuarter = faTemperatureQuarter;\nvar faCube = {\n prefix: 'fas',\n iconName: 'cube',\n icon: [512, 512, [], \"f1b2\", \"M234.5 5.7c13.9-5 29.1-5 43.1 0l192 68.6C495 83.4 512 107.5 512 134.6V377.4c0 27-17 51.2-42.5 60.3l-192 68.6c-13.9 5-29.1 5-43.1 0l-192-68.6C17 428.6 0 404.5 0 377.4V134.6c0-27 17-51.2 42.5-60.3l192-68.6zM256 66L82.3 128 256 190l173.7-62L256 66zm32 368.6l160-57.1v-188L288 246.6v188z\"]\n};\nvar faBitcoinSign = {\n prefix: 'fas',\n iconName: 'bitcoin-sign',\n icon: [320, 512, [], \"e0b4\", \"M48 32C48 14.3 62.3 0 80 0s32 14.3 32 32V64h32V32c0-17.7 14.3-32 32-32s32 14.3 32 32V64c0 1.5-.1 3.1-.3 4.5C254.1 82.2 288 125.1 288 176c0 24.2-7.7 46.6-20.7 64.9c31.7 19.8 52.7 55 52.7 95.1c0 61.9-50.1 112-112 112v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H112v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H41.7C18.7 448 0 429.3 0 406.3V288 265.7 224 101.6C0 80.8 16.8 64 37.6 64H48V32zM64 224H176c26.5 0 48-21.5 48-48s-21.5-48-48-48H64v96zm112 64H64v96H208c26.5 0 48-21.5 48-48s-21.5-48-48-48H176z\"]\n};\nvar faShieldDog = {\n prefix: 'fas',\n iconName: 'shield-dog',\n icon: [512, 512, [], \"e573\", \"M269.4 2.9C265.2 1 260.7 0 256 0s-9.2 1-13.4 2.9L54.3 82.8c-22 9.3-38.4 31-38.3 57.2c.5 99.2 41.3 280.7 213.6 363.2c16.7 8 36.1 8 52.8 0C454.7 420.7 495.5 239.2 496 140c.1-26.2-16.3-47.9-38.3-57.2L269.4 2.9zM160.9 286.2c4.8 1.2 9.9 1.8 15.1 1.8c35.3 0 64-28.7 64-64V160h44.2c12.1 0 23.2 6.8 28.6 17.7L320 192h64c8.8 0 16 7.2 16 16v32c0 44.2-35.8 80-80 80H272v50.7c0 7.3-5.9 13.3-13.3 13.3c-1.8 0-3.6-.4-5.2-1.1l-98.7-42.3c-6.6-2.8-10.8-9.3-10.8-16.4c0-2.8 .6-5.5 1.9-8l15-30zM160 160h40 8v32 32c0 17.7-14.3 32-32 32s-32-14.3-32-32V176c0-8.8 7.2-16 16-16zm128 48a16 16 0 1 0 -32 0 16 16 0 1 0 32 0z\"]\n};\nvar faSolarPanel = {\n prefix: 'fas',\n iconName: 'solar-panel',\n icon: [640, 512, [], \"f5ba\", \"M122.2 0C91.7 0 65.5 21.5 59.5 51.4L8.3 307.4C.4 347 30.6 384 71 384H288v64H224c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H352V384H569c40.4 0 70.7-36.9 62.8-76.6l-51.2-256C574.5 21.5 548.3 0 517.8 0H122.2zM260.9 64H379.1l10.4 104h-139L260.9 64zM202.3 168H101.4L122.2 64h90.4L202.3 168zM91.8 216H197.5L187.1 320H71L91.8 216zm153.9 0H394.3l10.4 104-169.4 0 10.4-104zm196.8 0H548.2L569 320h-116L442.5 216zm96-48H437.7L427.3 64h90.4l31.4-6.3L517.8 64l20.8 104z\"]\n};\nvar faLockOpen = {\n prefix: 'fas',\n iconName: 'lock-open',\n icon: [576, 512, [], \"f3c1\", \"M352 144c0-44.2 35.8-80 80-80s80 35.8 80 80v48c0 17.7 14.3 32 32 32s32-14.3 32-32V144C576 64.5 511.5 0 432 0S288 64.5 288 144v48H64c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V256c0-35.3-28.7-64-64-64H352V144z\"]\n};\nvar faElevator = {\n prefix: 'fas',\n iconName: 'elevator',\n icon: [512, 512, [], \"e16d\", \"M132.7 4.7l-64 64c-4.6 4.6-5.9 11.5-3.5 17.4s8.3 9.9 14.8 9.9H208c6.5 0 12.3-3.9 14.8-9.9s1.1-12.9-3.5-17.4l-64-64c-6.2-6.2-16.4-6.2-22.6 0zM64 128c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V192c0-35.3-28.7-64-64-64H64zm96 96a48 48 0 1 1 0 96 48 48 0 1 1 0-96zM80 400c0-26.5 21.5-48 48-48h64c26.5 0 48 21.5 48 48v16c0 17.7-14.3 32-32 32H112c-17.7 0-32-14.3-32-32V400zm192 0c0-26.5 21.5-48 48-48h64c26.5 0 48 21.5 48 48v16c0 17.7-14.3 32-32 32H304c-17.7 0-32-14.3-32-32V400zm32-128a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM356.7 91.3c6.2 6.2 16.4 6.2 22.6 0l64-64c4.6-4.6 5.9-11.5 3.5-17.4S438.5 0 432 0H304c-6.5 0-12.3 3.9-14.8 9.9s-1.1 12.9 3.5 17.4l64 64z\"]\n};\nvar faMoneyBillTransfer = {\n prefix: 'fas',\n iconName: 'money-bill-transfer',\n icon: [640, 512, [], \"e528\", \"M535 41c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l64 64c4.5 4.5 7 10.6 7 17s-2.5 12.5-7 17l-64 64c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l23-23L384 112c-13.3 0-24-10.7-24-24s10.7-24 24-24l174.1 0L535 41zM105 377l-23 23L256 400c13.3 0 24 10.7 24 24s-10.7 24-24 24L81.9 448l23 23c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L7 441c-4.5-4.5-7-10.6-7-17s2.5-12.5 7-17l64-64c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9zM96 64H337.9c-3.7 7.2-5.9 15.3-5.9 24c0 28.7 23.3 52 52 52l117.4 0c-4 17 .6 35.5 13.8 48.8c20.3 20.3 53.2 20.3 73.5 0L608 169.5V384c0 35.3-28.7 64-64 64H302.1c3.7-7.2 5.9-15.3 5.9-24c0-28.7-23.3-52-52-52l-117.4 0c4-17-.6-35.5-13.8-48.8c-20.3-20.3-53.2-20.3-73.5 0L32 342.5V128c0-35.3 28.7-64 64-64zm64 64H96v64c35.3 0 64-28.7 64-64zM544 320c-35.3 0-64 28.7-64 64h64V320zM320 352a96 96 0 1 0 0-192 96 96 0 1 0 0 192z\"]\n};\nvar faMoneyBillTrendUp = {\n prefix: 'fas',\n iconName: 'money-bill-trend-up',\n icon: [512, 512, [], \"e529\", \"M470.7 9.4c3 3.1 5.3 6.6 6.9 10.3s2.4 7.8 2.4 12.2l0 .1v0 96c0 17.7-14.3 32-32 32s-32-14.3-32-32V109.3L310.6 214.6c-11.8 11.8-30.8 12.6-43.5 1.7L176 138.1 84.8 216.3c-13.4 11.5-33.6 9.9-45.1-3.5s-9.9-33.6 3.5-45.1l112-96c12-10.3 29.7-10.3 41.7 0l89.5 76.7L370.7 64H352c-17.7 0-32-14.3-32-32s14.3-32 32-32h96 0c8.8 0 16.8 3.6 22.6 9.3l.1 .1zM0 304c0-26.5 21.5-48 48-48H464c26.5 0 48 21.5 48 48V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V304zM48 416v48H96c0-26.5-21.5-48-48-48zM96 304H48v48c26.5 0 48-21.5 48-48zM464 416c-26.5 0-48 21.5-48 48h48V416zM416 304c0 26.5 21.5 48 48 48V304H416zm-96 80a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"]\n};\nvar faHouseFloodWaterCircleArrowRight = {\n prefix: 'fas',\n iconName: 'house-flood-water-circle-arrow-right',\n icon: [640, 512, [], \"e50f\", \"M288 144A144 144 0 1 0 0 144a144 144 0 1 0 288 0zM140.7 76.7c6.2-6.2 16.4-6.2 22.6 0l56 56c6.2 6.2 6.2 16.4 0 22.6l-56 56c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L169.4 160H80c-8.8 0-16-7.2-16-16s7.2-16 16-16h89.4L140.7 99.3c-6.2-6.2-6.2-16.4 0-22.6zM320 144c0 57.3-27.4 108.2-69.8 140.3c11.8-3.6 23-9.4 33-16.2c22.1-15.5 51.6-15.5 73.7 0c18.4 12.7 39.6 20.3 59.2 20.3c19 0 41.2-7.9 59.2-20.3c23.8-16.7 55.8-15.4 78.1 3.4c2.1 1.7 4.2 3.3 6.5 4.9l-.3-84.4H576c13.9 0 26.1-8.9 30.4-22.1s-.4-27.6-11.6-35.8l-176-128C407.6-2 392.4-2 381.2 6.1L301 64.4c12.1 23.9 19 50.9 19 79.6zm18.5 165.9c-11.1-7.9-25.9-7.9-37 0C279 325.4 251.5 336 224 336c-26.9 0-55.3-10.8-77.4-26.1l0 0c-11.9-8.5-28.1-7.8-39.2 1.7c-14.4 11.9-32.5 21-50.6 25.2c-17.2 4-27.9 21.2-23.9 38.4s21.2 27.9 38.4 23.9c24.5-5.7 44.9-16.5 58.2-25C158.5 389.7 191 400 224 400c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.6 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.5-27.3-10.1-39.2-1.7l0 0C471.4 325.2 442.9 336 416 336c-27.5 0-55-10.6-77.5-26.1zm0 112c-11.1-7.9-25.9-7.9-37 0C279 437.4 251.5 448 224 448c-26.9 0-55.3-10.8-77.4-26.1l0 0c-11.9-8.5-28.1-7.8-39.2 1.7c-14.4 11.9-32.5 21-50.6 25.2c-17.2 4-27.9 21.2-23.9 38.4s21.2 27.9 38.4 23.9c24.5-5.7 44.9-16.5 58.2-25C158.5 501.7 191 512 224 512c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.6 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.4-27.3-10.1-39.2-1.7l0 0C471.4 437.2 442.9 448 416 448c-27.5 0-55-10.6-77.5-26.1z\"]\n};\nvar faSquarePollHorizontal = {\n prefix: 'fas',\n iconName: 'square-poll-horizontal',\n icon: [448, 512, [\"poll-h\"], \"f682\", \"M448 96c0-35.3-28.7-64-64-64L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320zM256 160c0 17.7-14.3 32-32 32l-96 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l96 0c17.7 0 32 14.3 32 32zm64 64c17.7 0 32 14.3 32 32s-14.3 32-32 32l-192 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l192 0zM192 352c0 17.7-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l32 0c17.7 0 32 14.3 32 32z\"]\n};\nvar faPollH = faSquarePollHorizontal;\nvar faCircle = {\n prefix: 'fas',\n iconName: 'circle',\n icon: [512, 512, [128308, 128309, 128992, 128993, 128994, 128995, 128996, 9679, 9898, 9899, 11044, 61708, 61915], \"f111\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512z\"]\n};\nvar faBackwardFast = {\n prefix: 'fas',\n iconName: 'backward-fast',\n icon: [512, 512, [9198, \"fast-backward\"], \"f049\", \"M493.6 445c-11.2 5.3-24.5 3.6-34.1-4.4L288 297.7V416c0 12.4-7.2 23.7-18.4 29s-24.5 3.6-34.1-4.4L64 297.7V416c0 17.7-14.3 32-32 32s-32-14.3-32-32V96C0 78.3 14.3 64 32 64s32 14.3 32 32V214.3L235.5 71.4c9.5-7.9 22.8-9.7 34.1-4.4S288 83.6 288 96V214.3L459.5 71.4c9.5-7.9 22.8-9.7 34.1-4.4S512 83.6 512 96V416c0 12.4-7.2 23.7-18.4 29z\"]\n};\nvar faFastBackward = faBackwardFast;\nvar faRecycle = {\n prefix: 'fas',\n iconName: 'recycle',\n icon: [512, 512, [9842, 9850, 9851], \"f1b8\", \"M174.7 45.1C192.2 17 223 0 256 0s63.8 17 81.3 45.1l38.6 61.7 27-15.6c8.4-4.9 18.9-4.2 26.6 1.7s11.1 15.9 8.6 25.3l-23.4 87.4c-3.4 12.8-16.6 20.4-29.4 17l-87.4-23.4c-9.4-2.5-16.3-10.4-17.6-20s3.4-19.1 11.8-23.9l28.4-16.4L283 79c-5.8-9.3-16-15-27-15s-21.2 5.7-27 15l-17.5 28c-9.2 14.8-28.6 19.5-43.6 10.5c-15.3-9.2-20.2-29.2-10.7-44.4l17.5-28zM429.5 251.9c15-9 34.4-4.3 43.6 10.5l24.4 39.1c9.4 15.1 14.4 32.4 14.6 50.2c.3 53.1-42.7 96.4-95.8 96.4L320 448v32c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-64-64c-9.4-9.4-9.4-24.6 0-33.9l64-64c6.9-6.9 17.2-8.9 26.2-5.2s14.8 12.5 14.8 22.2v32l96.2 0c17.6 0 31.9-14.4 31.8-32c0-5.9-1.7-11.7-4.8-16.7l-24.4-39.1c-9.5-15.2-4.7-35.2 10.7-44.4zm-364.6-31L36 204.2c-8.4-4.9-13.1-14.3-11.8-23.9s8.2-17.5 17.6-20l87.4-23.4c12.8-3.4 26 4.2 29.4 17L182 241.2c2.5 9.4-.9 19.3-8.6 25.3s-18.2 6.6-26.6 1.7l-26.5-15.3L68.8 335.3c-3.1 5-4.8 10.8-4.8 16.7c-.1 17.6 14.2 32 31.8 32l32.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32.2 0C42.7 448-.3 404.8 0 351.6c.1-17.8 5.1-35.1 14.6-50.2l50.3-80.5z\"]\n};\nvar faUserAstronaut = {\n prefix: 'fas',\n iconName: 'user-astronaut',\n icon: [448, 512, [], \"f4fb\", \"M370.7 96.1C346.1 39.5 289.7 0 224 0S101.9 39.5 77.3 96.1C60.9 97.5 48 111.2 48 128v64c0 16.8 12.9 30.5 29.3 31.9C101.9 280.5 158.3 320 224 320s122.1-39.5 146.7-96.1c16.4-1.4 29.3-15.1 29.3-31.9V128c0-16.8-12.9-30.5-29.3-31.9zM336 144v16c0 53-43 96-96 96H208c-53 0-96-43-96-96V144c0-26.5 21.5-48 48-48H288c26.5 0 48 21.5 48 48zM189.3 162.7l-6-21.2c-.9-3.3-3.9-5.5-7.3-5.5s-6.4 2.2-7.3 5.5l-6 21.2-21.2 6c-3.3 .9-5.5 3.9-5.5 7.3s2.2 6.4 5.5 7.3l21.2 6 6 21.2c.9 3.3 3.9 5.5 7.3 5.5s6.4-2.2 7.3-5.5l6-21.2 21.2-6c3.3-.9 5.5-3.9 5.5-7.3s-2.2-6.4-5.5-7.3l-21.2-6zM112.7 316.5C46.7 342.6 0 407 0 482.3C0 498.7 13.3 512 29.7 512H128V448c0-17.7 14.3-32 32-32H288c17.7 0 32 14.3 32 32v64l98.3 0c16.4 0 29.7-13.3 29.7-29.7c0-75.3-46.7-139.7-112.7-165.8C303.9 338.8 265.5 352 224 352s-79.9-13.2-111.3-35.5zM176 448c-8.8 0-16 7.2-16 16v48h32V464c0-8.8-7.2-16-16-16zm96 32a16 16 0 1 0 0-32 16 16 0 1 0 0 32z\"]\n};\nvar faPlaneSlash = {\n prefix: 'fas',\n iconName: 'plane-slash',\n icon: [640, 512, [], \"e069\", \"M440.6 320h73.8c34.2 0 93.7-28 93.7-64c0-35-59.5-64-93.7-64l-116.6 0L297.2 16.1C291.5 6.2 280.9 0 269.4 0H213.2c-10.6 0-18.3 10.2-15.4 20.4l40.3 140.9L38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L440.6 320zm-78.1 61.6L41.5 128.7C36 130.6 32 135.9 32 142c0 1.3 .2 2.6 .5 3.9L64 256 32.5 366.1c-.4 1.3-.5 2.6-.5 3.9c0 7.8 6.3 14 14 14H88c5 0 9.8-2.4 12.8-6.4L144 320H246.9l-49 171.6c-2.9 10.2 4.8 20.4 15.4 20.4l56.2 0c11.5 0 22.1-6.2 27.8-16.1l65.3-114.3z\"]\n};\nvar faTrademark = {\n prefix: 'fas',\n iconName: 'trademark',\n icon: [640, 512, [8482], \"f25c\", \"M345.6 108.8c-8.3-11-22.7-15.5-35.7-11.2S288 114.2 288 128V384c0 17.7 14.3 32 32 32s32-14.3 32-32V224l86.4 115.2c6 8.1 15.5 12.8 25.6 12.8s19.6-4.7 25.6-12.8L576 224V384c0 17.7 14.3 32 32 32s32-14.3 32-32V128c0-13.8-8.8-26-21.9-30.4s-27.5 .1-35.7 11.2L464 266.7 345.6 108.8zM0 128c0 17.7 14.3 32 32 32H96V384c0 17.7 14.3 32 32 32s32-14.3 32-32V160h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H32C14.3 96 0 110.3 0 128z\"]\n};\nvar faBasketball = {\n prefix: 'fas',\n iconName: 'basketball',\n icon: [512, 512, [127936, \"basketball-ball\"], \"f434\", \"M86.6 64l85.2 85.2C194.5 121.7 208 86.4 208 48c0-14.7-2-28.9-5.7-42.4C158.6 15 119 35.5 86.6 64zM64 86.6C35.5 119 15 158.6 5.6 202.3C19.1 206 33.3 208 48 208c38.4 0 73.7-13.5 101.3-36.1L64 86.6zM256 0c-7.3 0-14.6 .3-21.8 .9C238 16 240 31.8 240 48c0 47.3-17.1 90.5-45.4 124L256 233.4 425.4 64C380.2 24.2 320.9 0 256 0zM48 240c-16.2 0-32-2-47.1-5.8C.3 241.4 0 248.7 0 256c0 64.9 24.2 124.2 64 169.4L233.4 256 172 194.6C138.5 222.9 95.3 240 48 240zm463.1 37.8c.6-7.2 .9-14.5 .9-21.8c0-64.9-24.2-124.2-64-169.4L278.6 256 340 317.4c33.4-28.3 76.7-45.4 124-45.4c16.2 0 32 2 47.1 5.8zm-4.7 31.9C492.9 306 478.7 304 464 304c-38.4 0-73.7 13.5-101.3 36.1L448 425.4c28.5-32.3 49.1-71.9 58.4-115.7zM340.1 362.7C317.5 390.3 304 425.6 304 464c0 14.7 2 28.9 5.7 42.4C353.4 497 393 476.5 425.4 448l-85.2-85.2zM317.4 340L256 278.6 86.6 448c45.1 39.8 104.4 64 169.4 64c7.3 0 14.6-.3 21.8-.9C274 496 272 480.2 272 464c0-47.3 17.1-90.5 45.4-124z\"]\n};\nvar faBasketballBall = faBasketball;\nvar faSatelliteDish = {\n prefix: 'fas',\n iconName: 'satellite-dish',\n icon: [512, 512, [128225], \"f7c0\", \"M192 32c0-17.7 14.3-32 32-32C383.1 0 512 128.9 512 288c0 17.7-14.3 32-32 32s-32-14.3-32-32C448 164.3 347.7 64 224 64c-17.7 0-32-14.3-32-32zM60.6 220.6L164.7 324.7l28.4-28.4c-.7-2.6-1.1-5.4-1.1-8.3c0-17.7 14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32c-2.9 0-5.6-.4-8.3-1.1l-28.4 28.4L291.4 451.4c14.5 14.5 11.8 38.8-7.3 46.3C260.5 506.9 234.9 512 208 512C93.1 512 0 418.9 0 304c0-26.9 5.1-52.5 14.4-76.1c7.5-19 31.8-21.8 46.3-7.3zM224 96c106 0 192 86 192 192c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-70.7-57.3-128-128-128c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faCircleUp = {\n prefix: 'fas',\n iconName: 'circle-up',\n icon: [512, 512, [61467, \"arrow-alt-circle-up\"], \"f35b\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM135.1 217.4l107.1-99.9c3.8-3.5 8.7-5.5 13.8-5.5s10.1 2 13.8 5.5l107.1 99.9c4.5 4.2 7.1 10.1 7.1 16.3c0 12.3-10 22.3-22.3 22.3H304v96c0 17.7-14.3 32-32 32H240c-17.7 0-32-14.3-32-32V256H150.3C138 256 128 246 128 233.7c0-6.2 2.6-12.1 7.1-16.3z\"]\n};\nvar faArrowAltCircleUp = faCircleUp;\nvar faMobileScreenButton = {\n prefix: 'fas',\n iconName: 'mobile-screen-button',\n icon: [384, 512, [\"mobile-alt\"], \"f3cd\", \"M16 64C16 28.7 44.7 0 80 0H304c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H80c-35.3 0-64-28.7-64-64V64zM224 448a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM304 64H80V384H304V64z\"]\n};\nvar faMobileAlt = faMobileScreenButton;\nvar faVolumeHigh = {\n prefix: 'fas',\n iconName: 'volume-high',\n icon: [640, 512, [128266, \"volume-up\"], \"f028\", \"M533.6 32.5C598.5 85.2 640 165.8 640 256s-41.5 170.7-106.4 223.5c-10.3 8.4-25.4 6.8-33.8-3.5s-6.8-25.4 3.5-33.8C557.5 398.2 592 331.2 592 256s-34.5-142.2-88.7-186.3c-10.3-8.4-11.8-23.5-3.5-33.8s23.5-11.8 33.8-3.5zM473.1 107c43.2 35.2 70.9 88.9 70.9 149s-27.7 113.8-70.9 149c-10.3 8.4-25.4 6.8-33.8-3.5s-6.8-25.4 3.5-33.8C475.3 341.3 496 301.1 496 256s-20.7-85.3-53.2-111.8c-10.3-8.4-11.8-23.5-3.5-33.8s23.5-11.8 33.8-3.5zm-60.5 74.5C434.1 199.1 448 225.9 448 256s-13.9 56.9-35.4 74.5c-10.3 8.4-25.4 6.8-33.8-3.5s-6.8-25.4 3.5-33.8C393.1 284.4 400 271 400 256s-6.9-28.4-17.7-37.3c-10.3-8.4-11.8-23.5-3.5-33.8s23.5-11.8 33.8-3.5zM301.1 34.8C312.6 40 320 51.4 320 64V448c0 12.6-7.4 24-18.9 29.2s-25 3.1-34.4-5.3L131.8 352H64c-35.3 0-64-28.7-64-64V224c0-35.3 28.7-64 64-64h67.8L266.7 40.1c9.4-8.4 22.9-10.4 34.4-5.3z\"]\n};\nvar faVolumeUp = faVolumeHigh;\nvar faUsersRays = {\n prefix: 'fas',\n iconName: 'users-rays',\n icon: [640, 512, [], \"e593\", \"M41 7C31.6-2.3 16.4-2.3 7 7S-2.3 31.6 7 41l72 72c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L41 7zM599 7L527 79c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l72-72c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0zM7 505c9.4 9.4 24.6 9.4 33.9 0l72-72c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L7 471c-9.4 9.4-9.4 24.6 0 33.9zm592 0c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-72-72c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l72 72zM320 256a64 64 0 1 0 0-128 64 64 0 1 0 0 128zM212.1 336c-2.7 7.5-4.1 15.6-4.1 24c0 13.3 10.7 24 24 24H408c13.3 0 24-10.7 24-24c0-8.4-1.4-16.5-4.1-24c-.5-1.4-1-2.7-1.6-4c-9.4-22.3-29.8-38.9-54.3-43c-3.9-.7-7.9-1-12-1H280c-4.1 0-8.1 .3-12 1c-.8 .1-1.7 .3-2.5 .5c-24.9 5.1-45.1 23-53.4 46.5zM175.8 224a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-26.5 32C119.9 256 96 279.9 96 309.3c0 14.7 11.9 26.7 26.7 26.7h56.1c8-34.1 32.8-61.7 65.2-73.6c-7.5-4.1-16.2-6.4-25.3-6.4H149.3zm368 80c14.7 0 26.7-11.9 26.7-26.7c0-29.5-23.9-53.3-53.3-53.3H421.3c-9.2 0-17.8 2.3-25.3 6.4c32.4 11.9 57.2 39.5 65.2 73.6h56.1zM464 224a48 48 0 1 0 0-96 48 48 0 1 0 0 96z\"]\n};\nvar faWallet = {\n prefix: 'fas',\n iconName: 'wallet',\n icon: [512, 512, [], \"f555\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V192c0-35.3-28.7-64-64-64H80c-8.8 0-16-7.2-16-16s7.2-16 16-16H448c17.7 0 32-14.3 32-32s-14.3-32-32-32H64zM416 272a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faClipboardCheck = {\n prefix: 'fas',\n iconName: 'clipboard-check',\n icon: [384, 512, [], \"f46c\", \"M192 0c-41.8 0-77.4 26.7-90.5 64H64C28.7 64 0 92.7 0 128V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H282.5C269.4 26.7 233.8 0 192 0zm0 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM305 273L177 401c-9.4 9.4-24.6 9.4-33.9 0L79 337c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L271 239c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z\"]\n};\nvar faFileAudio = {\n prefix: 'fas',\n iconName: 'file-audio',\n icon: [384, 512, [], \"f1c7\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zm2 226.3c37.1 22.4 62 63.1 62 109.7s-24.9 87.3-62 109.7c-7.6 4.6-17.4 2.1-22-5.4s-2.1-17.4 5.4-22C269.4 401.5 288 370.9 288 336s-18.6-65.5-46.5-82.3c-7.6-4.6-10-14.4-5.4-22s14.4-10 22-5.4zm-91.9 30.9c6 2.5 9.9 8.3 9.9 14.8V400c0 6.5-3.9 12.3-9.9 14.8s-12.9 1.1-17.4-3.5L113.4 376H80c-8.8 0-16-7.2-16-16V312c0-8.8 7.2-16 16-16h33.4l35.3-35.3c4.6-4.6 11.5-5.9 17.4-3.5zm51 34.9c6.6-5.9 16.7-5.3 22.6 1.3C249.8 304.6 256 319.6 256 336s-6.2 31.4-16.3 42.7c-5.9 6.6-16 7.1-22.6 1.3s-7.1-16-1.3-22.6c5.1-5.7 8.1-13.1 8.1-21.3s-3.1-15.7-8.1-21.3c-5.9-6.6-5.3-16.7 1.3-22.6z\"]\n};\nvar faBurger = {\n prefix: 'fas',\n iconName: 'burger',\n icon: [512, 512, [\"hamburger\"], \"f805\", \"M61.1 224C45 224 32 211 32 194.9c0-1.9 .2-3.7 .6-5.6C37.9 168.3 78.8 32 256 32s218.1 136.3 223.4 157.3c.5 1.9 .6 3.7 .6 5.6c0 16.1-13 29.1-29.1 29.1H61.1zM144 128a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm240 16a16 16 0 1 0 0-32 16 16 0 1 0 0 32zM272 96a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zM16 304c0-26.5 21.5-48 48-48H448c26.5 0 48 21.5 48 48s-21.5 48-48 48H64c-26.5 0-48-21.5-48-48zm16 96c0-8.8 7.2-16 16-16H464c8.8 0 16 7.2 16 16v16c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V400z\"]\n};\nvar faHamburger = faBurger;\nvar faWrench = {\n prefix: 'fas',\n iconName: 'wrench',\n icon: [512, 512, [128295], \"f0ad\", \"M352 320c88.4 0 160-71.6 160-160c0-15.3-2.2-30.1-6.2-44.2c-3.1-10.8-16.4-13.2-24.3-5.3l-76.8 76.8c-3 3-7.1 4.7-11.3 4.7H336c-8.8 0-16-7.2-16-16V118.6c0-4.2 1.7-8.3 4.7-11.3l76.8-76.8c7.9-7.9 5.4-21.2-5.3-24.3C382.1 2.2 367.3 0 352 0C263.6 0 192 71.6 192 160c0 19.1 3.4 37.5 9.5 54.5L19.9 396.1C7.2 408.8 0 426.1 0 444.1C0 481.6 30.4 512 67.9 512c18 0 35.3-7.2 48-19.9L297.5 310.5c17 6.2 35.4 9.5 54.5 9.5zM80 408a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faBugs = {\n prefix: 'fas',\n iconName: 'bugs',\n icon: [576, 512, [], \"e4d0\", \"M164.5 107.4l33.4-73.5c5.5-12.1 .1-26.3-11.9-31.8s-26.3-.1-31.8 11.9L128 71.7 101.9 14.1C96.4 2 82.1-3.3 70.1 2.1S52.7 21.9 58.1 33.9l33.4 73.5c-10.2 7.1-18.2 17-22.9 28.6h-17l-4.1-20.7c-2.6-13-15.2-21.4-28.2-18.8S-2.1 111.7 .5 124.7l8 40C10.7 175.9 20.6 184 32 184H64v23.3l-37.8 9.5c-9.5 2.4-16.6 10.2-17.9 19.9l-8 56c-1.9 13.1 7.2 25.3 20.4 27.2s25.3-7.2 27.2-20.4l5.7-40 18.4-4.6C82.7 274.6 103.8 288 128 288s45.3-13.4 56.1-33.2l18.4 4.6 5.7 40c1.9 13.1 14 22.2 27.2 20.4s22.2-14 20.4-27.2l-8-56c-1.4-9.7-8.5-17.5-17.9-19.9L192 207.3V184h32c11.4 0 21.3-8.1 23.5-19.3l8-40c2.6-13-5.8-25.6-18.8-28.2s-25.6 5.8-28.2 18.8L204.3 136h-17c-4.7-11.6-12.7-21.5-22.9-28.6zM496 286.5l65.6-47c10.8-7.7 13.3-22.7 5.6-33.5s-22.7-13.3-33.5-5.6l-51.4 36.8 6.1-62.9c1.3-13.2-8.4-24.9-21.6-26.2s-24.9 8.4-26.2 21.6L432.8 250c-12.3 1-24.2 5.6-34.1 13.3L384 254.8l6.8-20c4.2-12.6-2.5-26.2-15-30.4s-26.2 2.5-30.4 15l-13.1 38.6c-3.7 10.8 .8 22.8 10.7 28.5l27.7 16L359 322.7 321.5 312c-9.4-2.7-19.5 .6-25.5 8.3l-34.9 44.5c-8.2 10.4-6.4 25.5 4.1 33.7s25.5 6.4 33.7-4.1l25-31.8 18.2 5.2c-.5 22.6 11 44.7 32 56.8s45.9 11 65.2-.7l13.6 13.2-15.1 37.5c-4.9 12.3 1 26.3 13.3 31.2s26.3-1 31.2-13.3L503.5 440c3.6-9.1 1.4-19.4-5.6-26.2l-28-27.1 11.6-20.1 27.7 16c9.9 5.7 22.5 3.7 30-4.9L566.2 347c8.7-10 7.8-25.1-2.2-33.9s-25.1-7.8-33.9 2.2l-13.9 15.9-14.7-8.5c1.7-12.4-.2-25-5.5-36.2z\"]\n};\nvar faRupeeSign = {\n prefix: 'fas',\n iconName: 'rupee-sign',\n icon: [448, 512, [8360, \"rupee\"], \"f156\", \"M0 64C0 46.3 14.3 32 32 32h80c79.5 0 144 64.5 144 144c0 58.8-35.2 109.3-85.7 131.7l51.4 128.4c6.6 16.4-1.4 35-17.8 41.6s-35-1.4-41.6-17.8L106.3 320H64V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V288 64zM64 256h48c44.2 0 80-35.8 80-80s-35.8-80-80-80H64V256zm256.5 16.4c-.9 6 0 8.7 .4 9.8c.4 1.1 1.4 2.6 4.2 4.9c7.2 5.7 18.7 10 37.9 16.8l1.3 .5c16 5.6 38.7 13.6 55.7 28.1c9.5 8.1 17.9 18.6 23.1 32.3c5.1 13.7 6.1 28.5 3.8 44c-4.2 28.1-20.5 49.3-43.8 60.9c-22.1 11-48.1 12.5-73.2 8l-.2 0 0 0c-9.3-1.8-20.5-5.7-29.3-9c-6-2.3-12.6-4.9-17.7-6.9l0 0c-2.5-1-4.6-1.8-6.3-2.5c-16.5-6.4-24.6-25-18.2-41.4s24.9-24.6 41.4-18.2c2.6 1 5.2 2 7.9 3.1l0 0c4.8 1.9 9.8 3.9 15.4 6c8.8 3.3 15.3 5.4 18.7 6c15.7 2.8 26.7 .8 32.9-2.3c5-2.5 8-6 9.1-13c1-6.9 .2-10.5-.5-12.3c-.6-1.7-1.8-3.6-4.5-5.9c-6.9-5.8-18.2-10.4-36.9-17l-3-1.1c-15.5-5.4-37-13-53.3-25.9c-9.5-7.5-18.3-17.6-23.7-31c-5.5-13.4-6.6-28-4.4-43.2c8.4-57.1 67-78 116.9-68.9c6.9 1.3 27.3 5.8 35.4 8.4c16.9 5.2 26.3 23.2 21.1 40.1s-23.2 26.3-40.1 21.1c-4.7-1.4-22.3-5.5-27.9-6.5c-14.6-2.7-25.8-.4-32.6 3.2c-6.3 3.3-8.9 7.6-9.5 12z\"]\n};\nvar faRupee = faRupeeSign;\nvar faFileImage = {\n prefix: 'fas',\n iconName: 'file-image',\n icon: [384, 512, [128443], \"f1c5\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM64 256a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm152 32c5.3 0 10.2 2.6 13.2 6.9l88 128c3.4 4.9 3.7 11.3 1 16.5s-8.2 8.6-14.2 8.6H216 176 128 80c-5.8 0-11.1-3.1-13.9-8.1s-2.8-11.2 .2-16.1l48-80c2.9-4.8 8.1-7.8 13.7-7.8s10.8 2.9 13.7 7.8l12.8 21.4 48.3-70.2c3-4.3 7.9-6.9 13.2-6.9z\"]\n};\nvar faCircleQuestion = {\n prefix: 'fas',\n iconName: 'circle-question',\n icon: [512, 512, [62108, \"question-circle\"], \"f059\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM169.8 165.3c7.9-22.3 29.1-37.3 52.8-37.3h58.3c34.9 0 63.1 28.3 63.1 63.1c0 22.6-12.1 43.5-31.7 54.8L280 264.4c-.2 13-10.9 23.6-24 23.6c-13.3 0-24-10.7-24-24V250.5c0-8.6 4.6-16.5 12.1-20.8l44.3-25.4c4.7-2.7 7.6-7.7 7.6-13.1c0-8.4-6.8-15.1-15.1-15.1H222.6c-3.4 0-6.4 2.1-7.5 5.3l-.4 1.2c-4.4 12.5-18.2 19-30.6 14.6s-19-18.2-14.6-30.6l.4-1.2zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faQuestionCircle = faCircleQuestion;\nvar faPlaneDeparture = {\n prefix: 'fas',\n iconName: 'plane-departure',\n icon: [640, 512, [128747], \"f5b0\", \"M381 114.9L186.1 41.8c-16.7-6.2-35.2-5.3-51.1 2.7L89.1 67.4C78 73 77.2 88.5 87.6 95.2l146.9 94.5L136 240 77.8 214.1c-8.7-3.9-18.8-3.7-27.3 .6L18.3 230.8c-9.3 4.7-11.8 16.8-5 24.7l73.1 85.3c6.1 7.1 15 11.2 24.3 11.2H248.4c5 0 9.9-1.2 14.3-3.4L535.6 212.2c46.5-23.3 82.5-63.3 100.8-112C645.9 75 627.2 48 600.2 48H542.8c-20.2 0-40.2 4.8-58.2 14L381 114.9zM0 480c0 17.7 14.3 32 32 32H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32z\"]\n};\nvar faHandshakeSlash = {\n prefix: 'fas',\n iconName: 'handshake-slash',\n icon: [640, 512, [], \"e060\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-135-105.8c-1.1-11.3-6.3-22.3-15.3-30.7l-134.2-123-23.4 18.2-26-20.3 77.2-60.1c7-5.4 17-4.2 22.5 2.8s4.2 17-2.8 22.5l-20.9 16.2L512 316.8V128h-.7l-3.9-2.5L434.8 79c-15.3-9.8-33.2-15-51.4-15c-21.8 0-43 7.5-60 21.2l-89.7 72.6-25.8-20.3 81.8-66.2c-11.6-4.9-24.1-7.4-36.8-7.4C234 64 215.7 69.6 200 80l-35.5 23.7L38.8 5.1zM413.6 421.9L128 196.8V352h28.2l91.4 83.4c19.6 17.9 49.9 16.5 67.8-3.1c5.5-6.1 9.2-13.2 11.1-20.6l17 15.6c19.5 17.9 49.9 16.6 67.8-2.9c.8-.8 1.5-1.7 2.2-2.6zM96 171.6L40.6 128H16c-8.8 0-16 7.2-16 16V352c0 17.7 14.3 32 32 32H64c17.7 0 32-14.3 32-32V171.6zM48 320a16 16 0 1 1 0 32 16 16 0 1 1 0-32zM544 128V352c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V144c0-8.8-7.2-16-16-16H544zm32 208a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z\"]\n};\nvar faBookBookmark = {\n prefix: 'fas',\n iconName: 'book-bookmark',\n icon: [448, 512, [], \"e0bb\", \"M0 96C0 43 43 0 96 0h96V190.7c0 13.4 15.5 20.9 26 12.5L272 160l54 43.2c10.5 8.4 26 .9 26-12.5V0h32 32c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32v64c17.7 0 32 14.3 32 32s-14.3 32-32 32H384 96c-53 0-96-43-96-96V96zM64 416c0 17.7 14.3 32 32 32H352V384H96c-17.7 0-32 14.3-32 32z\"]\n};\nvar faCodeBranch = {\n prefix: 'fas',\n iconName: 'code-branch',\n icon: [448, 512, [], \"f126\", \"M80 104a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm80-24c0 32.8-19.7 61-48 73.3v87.8c18.8-10.9 40.7-17.1 64-17.1h96c35.3 0 64-28.7 64-64v-6.7C307.7 141 288 112.8 288 80c0-44.2 35.8-80 80-80s80 35.8 80 80c0 32.8-19.7 61-48 73.3V160c0 70.7-57.3 128-128 128H176c-35.3 0-64 28.7-64 64v6.7c28.3 12.3 48 40.5 48 73.3c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-32.8 19.7-61 48-73.3V352 153.3C19.7 141 0 112.8 0 80C0 35.8 35.8 0 80 0s80 35.8 80 80zm232 0a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zM80 456a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faHatCowboy = {\n prefix: 'fas',\n iconName: 'hat-cowboy',\n icon: [640, 512, [], \"f8c0\", \"M320 64c14.4 0 22.3-7 30.8-14.4C360.4 41.1 370.7 32 392 32c49.3 0 84.4 152.2 97.9 221.9C447.8 272.1 390.9 288 320 288s-127.8-15.9-169.9-34.1C163.6 184.2 198.7 32 248 32c21.3 0 31.6 9.1 41.2 17.6C297.7 57 305.6 64 320 64zM111.1 270.7c47.2 24.5 117.5 49.3 209 49.3s161.8-24.8 208.9-49.3c24.8-12.9 49.8-28.3 70.1-47.7c7.9-7.9 20.2-9.2 29.6-3.3c9.5 5.9 13.5 17.9 9.9 28.5c-13.5 37.7-38.4 72.3-66.1 100.6C523.7 398.9 443.6 448 320 448s-203.6-49.1-252.5-99.2C39.8 320.4 14.9 285.8 1.4 248.1c-3.6-10.6 .4-22.6 9.9-28.5c9.5-5.9 21.7-4.5 29.6 3.3c20.4 19.4 45.3 34.8 70.1 47.7z\"]\n};\nvar faBridge = {\n prefix: 'fas',\n iconName: 'bridge',\n icon: [576, 512, [], \"e4c8\", \"M32 32C14.3 32 0 46.3 0 64S14.3 96 32 96H72v64H0V288c53 0 96 43 96 96v64c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V384c0-53 43-96 96-96s96 43 96 96v64c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V384c0-53 43-96 96-96V160H504V96h40c17.7 0 32-14.3 32-32s-14.3-32-32-32H32zM456 96v64H376V96h80zM328 96v64H248V96h80zM200 96v64H120V96h80z\"]\n};\nvar faPhoneFlip = {\n prefix: 'fas',\n iconName: 'phone-flip',\n icon: [512, 512, [128381, \"phone-alt\"], \"f879\", \"M347.1 24.6c7.7-18.6 28-28.5 47.4-23.2l88 24C499.9 30.2 512 46 512 64c0 247.4-200.6 448-448 448c-18 0-33.8-12.1-38.6-29.5l-24-88c-5.3-19.4 4.6-39.7 23.2-47.4l96-40c16.3-6.8 35.2-2.1 46.3 11.6L207.3 368c70.4-33.3 127.4-90.3 160.7-160.7L318.7 167c-13.7-11.2-18.4-30-11.6-46.3l40-96z\"]\n};\nvar faPhoneAlt = faPhoneFlip;\nvar faTruckFront = {\n prefix: 'fas',\n iconName: 'truck-front',\n icon: [512, 512, [], \"e2b7\", \"M0 80C0 35.8 35.8 0 80 0H432c44.2 0 80 35.8 80 80V368c0 26.2-12.6 49.4-32 64v48c0 17.7-14.3 32-32 32H416c-17.7 0-32-14.3-32-32V448H128v32c0 17.7-14.3 32-32 32H64c-17.7 0-32-14.3-32-32V432C12.6 417.4 0 394.2 0 368V80zm129.9 72.2L112 224H400l-17.9-71.8C378.5 138 365.7 128 351 128H161c-14.7 0-27.5 10-31 24.2zM128 320a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm288 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faCat = {\n prefix: 'fas',\n iconName: 'cat',\n icon: [576, 512, [128008], \"f6be\", \"M320 192h17.1c22.1 38.3 63.5 64 110.9 64c11 0 21.8-1.4 32-4v4 32V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V339.2L280 448h56c17.7 0 32 14.3 32 32s-14.3 32-32 32H192c-53 0-96-43-96-96V192.5c0-16.1-12-29.8-28-31.8l-7.9-1c-17.5-2.2-30-18.2-27.8-35.7s18.2-30 35.7-27.8l7.9 1c48 6 84.1 46.8 84.1 95.3v85.3c34.4-51.7 93.2-85.8 160-85.8zm160 26.5v0c-10 3.5-20.8 5.5-32 5.5c-28.4 0-54-12.4-71.6-32h0c-3.7-4.1-7-8.5-9.9-13.2C357.3 164 352 146.6 352 128v0V32 12 10.7C352 4.8 356.7 .1 362.6 0h.2c3.3 0 6.4 1.6 8.4 4.2l0 .1L384 21.3l27.2 36.3L416 64h64l4.8-6.4L512 21.3 524.8 4.3l0-.1c2-2.6 5.1-4.2 8.4-4.2h.2C539.3 .1 544 4.8 544 10.7V12 32v96c0 17.3-4.6 33.6-12.6 47.6c-11.3 19.8-29.6 35.2-51.4 42.9zM432 128a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm48 16a16 16 0 1 0 0-32 16 16 0 1 0 0 32z\"]\n};\nvar faAnchorCircleExclamation = {\n prefix: 'fas',\n iconName: 'anchor-circle-exclamation',\n icon: [640, 512, [], \"e4ab\", \"M320 96a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm21.1 80C367 158.8 384 129.4 384 96c0-53-43-96-96-96s-96 43-96 96c0 33.4 17 62.8 42.9 80H224c-17.7 0-32 14.3-32 32s14.3 32 32 32h32V448H208c-53 0-96-43-96-96v-6.1l7 7c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L97 263c-9.4-9.4-24.6-9.4-33.9 0L7 319c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l7-7V352c0 88.4 71.6 160 160 160h80 80c8.2 0 16.3-.6 24.2-1.8c-22.2-16.2-40.4-37.5-53-62.2H320V368 240h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H341.1zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faTruckField = {\n prefix: 'fas',\n iconName: 'truck-field',\n icon: [640, 512, [], \"e58d\", \"M32 96c0-35.3 28.7-64 64-64H320c23.7 0 44.4 12.9 55.4 32h51.8c25.3 0 48.2 14.9 58.5 38l52.8 118.8c.5 1.1 .9 2.1 1.3 3.2H544c35.3 0 64 28.7 64 64v32c17.7 0 32 14.3 32 32s-14.3 32-32 32H576c0 53-43 96-96 96s-96-43-96-96H256c0 53-43 96-96 96s-96-43-96-96H32c-17.7 0-32-14.3-32-32s14.3-32 32-32V288c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32V96zM384 224h85.9l-42.7-96H384v96zM160 432a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm368-48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0z\"]\n};\nvar faRoute = {\n prefix: 'fas',\n iconName: 'route',\n icon: [512, 512, [], \"f4d7\", \"M512 96c0 50.2-59.1 125.1-84.6 155c-3.8 4.4-9.4 6.1-14.5 5H320c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c53 0 96 43 96 96s-43 96-96 96H139.6c8.7-9.9 19.3-22.6 30-36.8c6.3-8.4 12.8-17.6 19-27.2H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-53 0-96-43-96-96s43-96 96-96h39.8c-21-31.5-39.8-67.7-39.8-96c0-53 43-96 96-96s96 43 96 96zM117.1 489.1c-3.8 4.3-7.2 8.1-10.1 11.3l-1.8 2-.2-.2c-6 4.6-14.6 4-20-1.8C59.8 473 0 402.5 0 352c0-53 43-96 96-96s96 43 96 96c0 30-21.1 67-43.5 97.9c-10.7 14.7-21.7 28-30.8 38.5l-.6 .7zM128 352a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM416 128a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faClipboardQuestion = {\n prefix: 'fas',\n iconName: 'clipboard-question',\n icon: [384, 512, [], \"e4e3\", \"M192 0c-41.8 0-77.4 26.7-90.5 64H64C28.7 64 0 92.7 0 128V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H282.5C269.4 26.7 233.8 0 192 0zm0 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM105.8 229.3c7.9-22.3 29.1-37.3 52.8-37.3h58.3c34.9 0 63.1 28.3 63.1 63.1c0 22.6-12.1 43.5-31.7 54.8L216 328.4c-.2 13-10.9 23.6-24 23.6c-13.3 0-24-10.7-24-24V314.5c0-8.6 4.6-16.5 12.1-20.8l44.3-25.4c4.7-2.7 7.6-7.7 7.6-13.1c0-8.4-6.8-15.1-15.1-15.1H158.6c-3.4 0-6.4 2.1-7.5 5.3l-.4 1.2c-4.4 12.5-18.2 19-30.6 14.6s-19-18.2-14.6-30.6l.4-1.2zM160 416a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faPanorama = {\n prefix: 'fas',\n iconName: 'panorama',\n icon: [640, 512, [], \"e209\", \"M45.6 32C20.4 32 0 52.4 0 77.6V434.4C0 459.6 20.4 480 45.6 480c5.1 0 10-.8 14.7-2.4C74.6 472.8 177.6 440 320 440s245.4 32.8 259.6 37.6c4.7 1.6 9.7 2.4 14.7 2.4c25.2 0 45.6-20.4 45.6-45.6V77.6C640 52.4 619.6 32 594.4 32c-5 0-10 .8-14.7 2.4C565.4 39.2 462.4 72 320 72S74.6 39.2 60.4 34.4C55.6 32.8 50.7 32 45.6 32zM96 160a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm272 0c7.9 0 15.4 3.9 19.8 10.5L512.3 353c5.4 8 5.6 18.4 .4 26.5s-14.7 12.3-24.2 10.7C442.7 382.4 385.2 376 320 376c-65.6 0-123.4 6.5-169.3 14.4c-9.8 1.7-19.7-2.9-24.7-11.5s-4.3-19.4 1.9-27.2L197.3 265c4.6-5.7 11.4-9 18.7-9s14.2 3.3 18.7 9l26.4 33.1 87-127.6c4.5-6.6 11.9-10.5 19.8-10.5z\"]\n};\nvar faCommentMedical = {\n prefix: 'fas',\n iconName: 'comment-medical',\n icon: [512, 512, [], \"f7f5\", \"M256 448c141.4 0 256-93.1 256-208S397.4 32 256 32S0 125.1 0 240c0 45.1 17.7 86.8 47.7 120.9c-1.9 24.5-11.4 46.3-21.4 62.9c-5.5 9.2-11.1 16.6-15.2 21.6c-2.1 2.5-3.7 4.4-4.9 5.7c-.6 .6-1 1.1-1.3 1.4l-.3 .3 0 0 0 0 0 0 0 0c-4.6 4.6-5.9 11.4-3.4 17.4c2.5 6 8.3 9.9 14.8 9.9c28.7 0 57.6-8.9 81.6-19.3c22.9-10 42.4-21.9 54.3-30.6c31.8 11.5 67 17.9 104.1 17.9zM224 160c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v48h48c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H288v48c0 8.8-7.2 16-16 16H240c-8.8 0-16-7.2-16-16V272H176c-8.8 0-16-7.2-16-16V224c0-8.8 7.2-16 16-16h48V160z\"]\n};\nvar faTeethOpen = {\n prefix: 'fas',\n iconName: 'teeth-open',\n icon: [576, 512, [], \"f62f\", \"M96 32C43 32 0 75 0 128v64c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V128c0-53-43-96-96-96H96zM224 96c26.5 0 48 21.5 48 48v56c0 13.3-10.7 24-24 24H200c-13.3 0-24-10.7-24-24V144c0-26.5 21.5-48 48-48zm80 48c0-26.5 21.5-48 48-48s48 21.5 48 48v56c0 13.3-10.7 24-24 24H328c-13.3 0-24-10.7-24-24V144zM96 128c26.5 0 48 21.5 48 48v24c0 13.3-10.7 24-24 24H72c-13.3 0-24-10.7-24-24V176c0-26.5 21.5-48 48-48zm336 48c0-26.5 21.5-48 48-48s48 21.5 48 48v24c0 13.3-10.7 24-24 24H456c-13.3 0-24-10.7-24-24V176zM96 480H480c53 0 96-43 96-96V352c0-35.3-28.7-64-64-64H64c-35.3 0-64 28.7-64 64v32c0 53 43 96 96 96zm0-64c-26.5 0-48-21.5-48-48V344c0-13.3 10.7-24 24-24h48c13.3 0 24 10.7 24 24v24c0 26.5-21.5 48-48 48zm80-48V344c0-13.3 10.7-24 24-24h48c13.3 0 24 10.7 24 24v24c0 26.5-21.5 48-48 48s-48-21.5-48-48zm176 48c-26.5 0-48-21.5-48-48V344c0-13.3 10.7-24 24-24h48c13.3 0 24 10.7 24 24v24c0 26.5-21.5 48-48 48zm80-48V344c0-13.3 10.7-24 24-24h48c13.3 0 24 10.7 24 24v24c0 26.5-21.5 48-48 48s-48-21.5-48-48z\"]\n};\nvar faFileCircleMinus = {\n prefix: 'fas',\n iconName: 'file-circle-minus',\n icon: [576, 512, [], \"e4ed\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384v38.6C310.1 219.5 256 287.4 256 368c0 59.1 29.1 111.3 73.7 143.3c-3.2 .5-6.4 .7-9.7 .7H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zM288 368a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm224 0c0-8.8-7.2-16-16-16H368c-8.8 0-16 7.2-16 16s7.2 16 16 16H496c8.8 0 16-7.2 16-16z\"]\n};\nvar faTags = {\n prefix: 'fas',\n iconName: 'tags',\n icon: [512, 512, [], \"f02c\", \"M345 39.1L472.8 168.4c52.4 53 52.4 138.2 0 191.2L360.8 472.9c-9.3 9.4-24.5 9.5-33.9 .2s-9.5-24.5-.2-33.9L438.6 325.9c33.9-34.3 33.9-89.4 0-123.7L310.9 72.9c-9.3-9.4-9.2-24.6 .2-33.9s24.6-9.2 33.9 .2zM0 229.5V80C0 53.5 21.5 32 48 32H197.5c17 0 33.3 6.7 45.3 18.7l168 168c25 25 25 65.5 0 90.5L277.3 442.7c-25 25-65.5 25-90.5 0l-168-168C6.7 262.7 0 246.5 0 229.5zM144 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"]\n};\nvar faWineGlass = {\n prefix: 'fas',\n iconName: 'wine-glass',\n icon: [320, 512, [127863], \"f4e3\", \"M32.1 29.3C33.5 12.8 47.4 0 64 0H256c16.6 0 30.5 12.8 31.9 29.3l14 168.4c6 72-42.5 135.2-109.9 150.6V448h48c17.7 0 32 14.3 32 32s-14.3 32-32 32H160 80c-17.7 0-32-14.3-32-32s14.3-32 32-32h48V348.4C60.6 333 12.1 269.8 18.1 197.8l14-168.4zm56 98.7H231.9l-5.3-64H93.4l-5.3 64z\"]\n};\nvar faForwardFast = {\n prefix: 'fas',\n iconName: 'forward-fast',\n icon: [512, 512, [9197, \"fast-forward\"], \"f050\", \"M18.4 445c11.2 5.3 24.5 3.6 34.1-4.4L224 297.7V416c0 12.4 7.2 23.7 18.4 29s24.5 3.6 34.1-4.4L448 297.7V416c0 17.7 14.3 32 32 32s32-14.3 32-32V96c0-17.7-14.3-32-32-32s-32 14.3-32 32V214.3L276.5 71.4c-9.5-7.9-22.8-9.7-34.1-4.4S224 83.6 224 96V214.3L52.5 71.4c-9.5-7.9-22.8-9.7-34.1-4.4S0 83.6 0 96V416c0 12.4 7.2 23.7 18.4 29z\"]\n};\nvar faFastForward = faForwardFast;\nvar faFaceMehBlank = {\n prefix: 'fas',\n iconName: 'face-meh-blank',\n icon: [512, 512, [128566, \"meh-blank\"], \"f5a4\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm208.4-48a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm128 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faMehBlank = faFaceMehBlank;\nvar faSquareParking = {\n prefix: 'fas',\n iconName: 'square-parking',\n icon: [448, 512, [127359, \"parking\"], \"f540\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM192 256h48c17.7 0 32-14.3 32-32s-14.3-32-32-32H192v64zm48 64H192v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V288 168c0-22.1 17.9-40 40-40h72c53 0 96 43 96 96s-43 96-96 96z\"]\n};\nvar faParking = faSquareParking;\nvar faHouseSignal = {\n prefix: 'fas',\n iconName: 'house-signal',\n icon: [576, 512, [], \"e012\", \"M357.7 8.5c-12.3-11.3-31.2-11.3-43.4 0l-208 192c-9.4 8.6-12.7 22-8.5 34c87.1 25.3 155.6 94.2 180.3 181.6H464c26.5 0 48-21.5 48-48V256h32c13.2 0 25-8.1 29.8-20.3s1.6-26.2-8.1-35.2l-208-192zM288 208c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H304c-8.8 0-16-7.2-16-16V208zM24 256c-13.3 0-24 10.7-24 24s10.7 24 24 24c101.6 0 184 82.4 184 184c0 13.3 10.7 24 24 24s24-10.7 24-24c0-128.1-103.9-232-232-232zm8 256a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM0 376c0 13.3 10.7 24 24 24c48.6 0 88 39.4 88 88c0 13.3 10.7 24 24 24s24-10.7 24-24c0-75.1-60.9-136-136-136c-13.3 0-24 10.7-24 24z\"]\n};\nvar faBarsProgress = {\n prefix: 'fas',\n iconName: 'bars-progress',\n icon: [512, 512, [\"tasks-alt\"], \"f828\", \"M448 160H320V128H448v32zM48 64C21.5 64 0 85.5 0 112v64c0 26.5 21.5 48 48 48H464c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48H48zM448 352v32H192V352H448zM48 288c-26.5 0-48 21.5-48 48v64c0 26.5 21.5 48 48 48H464c26.5 0 48-21.5 48-48V336c0-26.5-21.5-48-48-48H48z\"]\n};\nvar faTasksAlt = faBarsProgress;\nvar faFaucetDrip = {\n prefix: 'fas',\n iconName: 'faucet-drip',\n icon: [512, 512, [128688], \"e006\", \"M224 0c17.7 0 32 14.3 32 32V44l96-12c17.7 0 32 14.3 32 32s-14.3 32-32 32L256 84l-31-3.9-1-.1-1 .1L192 84 96 96C78.3 96 64 81.7 64 64s14.3-32 32-32l96 12V32c0-17.7 14.3-32 32-32zM0 224c0-17.7 14.3-32 32-32h96l22.6-22.6c6-6 14.1-9.4 22.6-9.4H192V116.2l32-4 32 4V160h18.7c8.5 0 16.6 3.4 22.6 9.4L320 192h32c88.4 0 160 71.6 160 160c0 17.7-14.3 32-32 32H416c-17.7 0-32-14.3-32-32s-14.3-32-32-32H315.9c-20.2 29-53.9 48-91.9 48s-71.7-19-91.9-48H32c-17.7 0-32-14.3-32-32V224zM436.8 423.4c1.9-4.5 6.3-7.4 11.2-7.4s9.2 2.9 11.2 7.4l18.2 42.4c1.8 4.1 2.7 8.6 2.7 13.1V480c0 17.7-14.3 32-32 32s-32-14.3-32-32v-1.2c0-4.5 .9-8.9 2.7-13.1l18.2-42.4z\"]\n};\nvar faCartFlatbed = {\n prefix: 'fas',\n iconName: 'cart-flatbed',\n icon: [640, 512, [\"dolly-flatbed\"], \"f474\", \"M32 0C14.3 0 0 14.3 0 32S14.3 64 32 64H48c8.8 0 16 7.2 16 16V368c0 44.2 35.8 80 80 80h18.7c-1.8 5-2.7 10.4-2.7 16c0 26.5 21.5 48 48 48s48-21.5 48-48c0-5.6-1-11-2.7-16H450.7c-1.8 5-2.7 10.4-2.7 16c0 26.5 21.5 48 48 48s48-21.5 48-48c0-5.6-1-11-2.7-16H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H144c-8.8 0-16-7.2-16-16V80C128 35.8 92.2 0 48 0H32zM192 80V272c0 26.5 21.5 48 48 48H560c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H464V176c0 5.9-3.2 11.3-8.5 14.1s-11.5 2.5-16.4-.8L400 163.2l-39.1 26.1c-4.9 3.3-11.2 3.6-16.4 .8s-8.5-8.2-8.5-14.1V32H240c-26.5 0-48 21.5-48 48z\"]\n};\nvar faDollyFlatbed = faCartFlatbed;\nvar faBanSmoking = {\n prefix: 'fas',\n iconName: 'ban-smoking',\n icon: [512, 512, [128685, \"smoking-ban\"], \"f54d\", \"M99.5 144.8L178.7 224l96 96 92.5 92.5C335.9 434.9 297.5 448 256 448C150 448 64 362 64 256c0-41.5 13.1-79.9 35.5-111.2zM333.3 288l-32-32H384v32H333.3zm32 32H400c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H269.3L144.8 99.5C176.1 77.1 214.5 64 256 64c106 0 192 86 192 192c0 41.5-13.1 79.9-35.5 111.2L365.3 320zM256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM272 96c-8.8 0-16 7.2-16 16c0 26.5 21.5 48 48 48h32c8.8 0 16 7.2 16 16s7.2 16 16 16s16-7.2 16-16c0-26.5-21.5-48-48-48H304c-8.8 0-16-7.2-16-16s-7.2-16-16-16zM229.5 320l-96-96H112c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16H229.5z\"]\n};\nvar faSmokingBan = faBanSmoking;\nvar faTerminal = {\n prefix: 'fas',\n iconName: 'terminal',\n icon: [576, 512, [], \"f120\", \"M9.4 86.6C-3.1 74.1-3.1 53.9 9.4 41.4s32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L178.7 256 9.4 86.6zM256 416H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faMobileButton = {\n prefix: 'fas',\n iconName: 'mobile-button',\n icon: [384, 512, [], \"f10b\", \"M80 0C44.7 0 16 28.7 16 64V448c0 35.3 28.7 64 64 64H304c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H80zM192 400a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faHouseMedicalFlag = {\n prefix: 'fas',\n iconName: 'house-medical-flag',\n icon: [640, 512, [], \"e514\", \"M480 0c17.7 0 32 14.3 32 32H624c8.8 0 16 7.2 16 16V176c0 8.8-7.2 16-16 16H512V512H448V192 32c0-17.7 14.3-32 32-32zM276.8 39.7L416 159V512h1l-.2 0H96c-17.7 0-32-14.3-32-32V288H32c-13.4 0-25.4-8.3-30-20.9s-1-26.7 9.2-35.4l224-192c12-10.3 29.7-10.3 41.7 0zM224 208v48H176c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320h48c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H288V208c0-8.8-7.2-16-16-16H240c-8.8 0-16 7.2-16 16z\"]\n};\nvar faBasketShopping = {\n prefix: 'fas',\n iconName: 'basket-shopping',\n icon: [576, 512, [\"shopping-basket\"], \"f291\", \"M253.3 35.1c6.1-11.8 1.5-26.3-10.2-32.4s-26.3-1.5-32.4 10.2L117.6 192H32c-17.7 0-32 14.3-32 32s14.3 32 32 32L83.9 463.5C91 492 116.6 512 146 512H430c29.4 0 55-20 62.1-48.5L544 256c17.7 0 32-14.3 32-32s-14.3-32-32-32H458.4L365.3 12.9C359.2 1.2 344.7-3.4 332.9 2.7s-16.3 20.6-10.2 32.4L404.3 192H171.7L253.3 35.1zM192 304v96c0 8.8-7.2 16-16 16s-16-7.2-16-16V304c0-8.8 7.2-16 16-16s16 7.2 16 16zm96-16c8.8 0 16 7.2 16 16v96c0 8.8-7.2 16-16 16s-16-7.2-16-16V304c0-8.8 7.2-16 16-16zm128 16v96c0 8.8-7.2 16-16 16s-16-7.2-16-16V304c0-8.8 7.2-16 16-16s16 7.2 16 16z\"]\n};\nvar faShoppingBasket = faBasketShopping;\nvar faTape = {\n prefix: 'fas',\n iconName: 'tape',\n icon: [576, 512, [], \"f4db\", \"M380.8 416c41.5-40.7 67.2-97.3 67.2-160C448 132.3 347.7 32 224 32S0 132.3 0 256S100.3 480 224 480H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H380.8zM224 160a96 96 0 1 1 0 192 96 96 0 1 1 0-192zm64 96a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"]\n};\nvar faBusSimple = {\n prefix: 'fas',\n iconName: 'bus-simple',\n icon: [448, 512, [\"bus-alt\"], \"f55e\", \"M224 0C348.8 0 448 35.2 448 80V96 416c0 17.7-14.3 32-32 32v32c0 17.7-14.3 32-32 32H352c-17.7 0-32-14.3-32-32V448H128v32c0 17.7-14.3 32-32 32H64c-17.7 0-32-14.3-32-32l0-32c-17.7 0-32-14.3-32-32V96 80C0 35.2 99.2 0 224 0zM64 128V256c0 17.7 14.3 32 32 32H352c17.7 0 32-14.3 32-32V128c0-17.7-14.3-32-32-32H96c-17.7 0-32 14.3-32 32zM80 400a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm288 0a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faBusAlt = faBusSimple;\nvar faEye = {\n prefix: 'fas',\n iconName: 'eye',\n icon: [576, 512, [128065], \"f06e\", \"M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z\"]\n};\nvar faFaceSadCry = {\n prefix: 'fas',\n iconName: 'face-sad-cry',\n icon: [512, 512, [128557, \"sad-cry\"], \"f5b3\", \"M352 493.4c-29.6 12-62.1 18.6-96 18.6s-66.4-6.6-96-18.6V288c0-8.8-7.2-16-16-16s-16 7.2-16 16V477.8C51.5 433.5 0 350.8 0 256C0 114.6 114.6 0 256 0S512 114.6 512 256c0 94.8-51.5 177.5-128 221.8V288c0-8.8-7.2-16-16-16s-16 7.2-16 16V493.4zM195.2 233.6c5.3 7.1 15.3 8.5 22.4 3.2s8.5-15.3 3.2-22.4c-30.4-40.5-91.2-40.5-121.6 0c-5.3 7.1-3.9 17.1 3.2 22.4s17.1 3.9 22.4-3.2c17.6-23.5 52.8-23.5 70.4 0zm121.6 0c17.6-23.5 52.8-23.5 70.4 0c5.3 7.1 15.3 8.5 22.4 3.2s8.5-15.3 3.2-22.4c-30.4-40.5-91.2-40.5-121.6 0c-5.3 7.1-3.9 17.1 3.2 22.4s17.1 3.9 22.4-3.2zM208 336v32c0 26.5 21.5 48 48 48s48-21.5 48-48V336c0-26.5-21.5-48-48-48s-48 21.5-48 48z\"]\n};\nvar faSadCry = faFaceSadCry;\nvar faAudioDescription = {\n prefix: 'fas',\n iconName: 'audio-description',\n icon: [576, 512, [], \"f29e\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM213.5 173.3l72 144c5.9 11.9 1.1 26.3-10.7 32.2s-26.3 1.1-32.2-10.7l-9.4-18.9H150.9l-9.4 18.9c-5.9 11.9-20.3 16.7-32.2 10.7s-16.7-20.3-10.7-32.2l72-144c4.1-8.1 12.4-13.3 21.5-13.3s17.4 5.1 21.5 13.3zm-.4 106.6L192 237.7l-21.1 42.2h42.2zM304 184c0-13.3 10.7-24 24-24h56c53 0 96 43 96 96s-43 96-96 96H328c-13.3 0-24-10.7-24-24V184zm48 24v96h32c26.5 0 48-21.5 48-48s-21.5-48-48-48H352z\"]\n};\nvar faPersonMilitaryToPerson = {\n prefix: 'fas',\n iconName: 'person-military-to-person',\n icon: [512, 512, [], \"e54c\", \"M71 12.5c-8.6 1-15 8.2-15 16.8c0 9.3 7.5 16.8 16.7 16.9H184.1c8.8-.1 15.9-7.2 15.9-16V16c0-9.5-8.3-17-17.8-15.9L71 12.5zM189.5 78.1H66.5C64.9 83.8 64 89.8 64 96c0 35.3 28.7 64 64 64s64-28.7 64-64c0-6.2-.9-12.2-2.5-17.9zM32 256v32c0 17.7 14.3 32 32 32H192c1.8 0 3.5-.1 5.2-.4L53 208.6C40.1 220.3 32 237.2 32 256zm190.2 42.5c1.1-3.3 1.8-6.8 1.8-10.5V256c0-35.3-28.7-64-64-64H96c-3.7 0-7.4 .3-10.9 .9L222.2 298.5zM384 160a64 64 0 1 0 0-128 64 64 0 1 0 0 128zm-32 32c-35.3 0-64 28.7-64 64v32c0 17.7 14.3 32 32 32H448c17.7 0 32-14.3 32-32V256c0-35.3-28.7-64-64-64H352zM215.8 450.1c5.2-4.6 8.2-11.1 8.2-18.1s-3-13.5-8.2-18.1l-64-56c-7.1-6.2-17.1-7.7-25.7-3.8S112 366.6 112 376v32l-88 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l88 0v32c0 9.4 5.5 18 14.1 21.9s18.6 2.4 25.7-3.8l64-56zM288 431.9c0 6.9 2.9 13.5 8.1 18.1l64 56.4c7.1 6.2 17.1 7.8 25.7 3.9s14.1-12.4 14.1-21.9l0-32.4 88 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-88 0 0-32c0-9.4-5.5-18-14.1-21.9s-18.6-2.4-25.7 3.8l-64 56c-5.2 4.5-8.2 11.1-8.2 18z\"]\n};\nvar faFileShield = {\n prefix: 'fas',\n iconName: 'file-shield',\n icon: [576, 512, [], \"e4f0\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384v47l-92.8 37.1c-21.3 8.5-35.2 29.1-35.2 52c0 56.6 18.9 148 94.2 208.3c-9 4.8-19.3 7.6-30.2 7.6H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zm39.1 97.7c5.7-2.3 12.1-2.3 17.8 0l120 48C570 277.4 576 286.2 576 296c0 63.3-25.9 168.8-134.8 214.2c-5.9 2.5-12.6 2.5-18.5 0C313.9 464.8 288 359.3 288 296c0-9.8 6-18.6 15.1-22.3l120-48zM527.4 312L432 273.8V461.7c68.2-33 91.5-99 95.4-149.7z\"]\n};\nvar faUserSlash = {\n prefix: 'fas',\n iconName: 'user-slash',\n icon: [640, 512, [], \"f506\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L353.3 251.6C407.9 237 448 187.2 448 128C448 57.3 390.7 0 320 0C250.2 0 193.5 55.8 192 125.2L38.8 5.1zM264.3 304.3C170.5 309.4 96 387.2 96 482.3c0 16.4 13.3 29.7 29.7 29.7H514.3c3.9 0 7.6-.7 11-2.1l-261-205.6z\"]\n};\nvar faPen = {\n prefix: 'fas',\n iconName: 'pen',\n icon: [512, 512, [128394], \"f304\", \"M362.7 19.3L314.3 67.7 444.3 197.7l48.4-48.4c25-25 25-65.5 0-90.5L453.3 19.3c-25-25-65.5-25-90.5 0zm-71 71L58.6 323.5c-10.4 10.4-18 23.3-22.2 37.4L1 481.2C-1.5 489.7 .8 498.8 7 505s15.3 8.5 23.7 6.1l120.3-35.4c14.1-4.2 27-11.8 37.4-22.2L421.7 220.3 291.7 90.3z\"]\n};\nvar faTowerObservation = {\n prefix: 'fas',\n iconName: 'tower-observation',\n icon: [512, 512, [], \"e586\", \"M241.7 3.4c9-4.5 19.6-4.5 28.6 0l160 80c15.8 7.9 22.2 27.1 14.3 42.9C439 137.5 427.7 144 416 144v80c0 17.7-14.3 32-32 32h-4.9l32 192H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H384.5c-.4 0-.8 0-1.1 0H128.6c-.4 0-.8 0-1.1 0H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h68.9l32-192H128c-17.7 0-32-14.3-32-32V144c-11.7 0-23-6.5-28.6-17.7c-7.9-15.8-1.5-35 14.3-42.9l160-80zM314.5 448L256 399.2 197.5 448h117zM197.8 256l-4.7 28.3L256 336.8l62.9-52.5L314.2 256H197.8zm-13.9 83.2l-11.2 67L218.5 368l-34.6-28.8zM293.5 368l45.8 38.1-11.2-67L293.5 368zM176 128c-8.8 0-16 7.2-16 16s7.2 16 16 16H336c8.8 0 16-7.2 16-16s-7.2-16-16-16H176z\"]\n};\nvar faFileCode = {\n prefix: 'fas',\n iconName: 'file-code',\n icon: [384, 512, [], \"f1c9\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM153 289l-31 31 31 31c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L71 337c-9.4-9.4-9.4-24.6 0-33.9l48-48c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9zM265 255l48 48c9.4 9.4 9.4 24.6 0 33.9l-48 48c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l31-31-31-31c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0z\"]\n};\nvar faSignal = {\n prefix: 'fas',\n iconName: 'signal',\n icon: [640, 512, [128246, \"signal-5\", \"signal-perfect\"], \"f012\", \"M576 0c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V32c0-17.7 14.3-32 32-32zM448 96c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V128c0-17.7 14.3-32 32-32zM352 224V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V224c0-17.7 14.3-32 32-32s32 14.3 32 32zM192 288c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V320c0-17.7 14.3-32 32-32zM96 416v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V416c0-17.7 14.3-32 32-32s32 14.3 32 32z\"]\n};\nvar faSignal5 = faSignal;\nvar faSignalPerfect = faSignal;\nvar faBus = {\n prefix: 'fas',\n iconName: 'bus',\n icon: [576, 512, [128653], \"f207\", \"M288 0C422.4 0 512 35.2 512 80V96l0 32c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32l0 160c0 17.7-14.3 32-32 32v32c0 17.7-14.3 32-32 32H416c-17.7 0-32-14.3-32-32V448H192v32c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32l0-32c-17.7 0-32-14.3-32-32l0-160c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32h0V96h0V80C64 35.2 153.6 0 288 0zM128 160v96c0 17.7 14.3 32 32 32H272V128H160c-17.7 0-32 14.3-32 32zM304 288H416c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32H304V288zM144 400a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm288 0a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM384 80c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16s7.2 16 16 16H368c8.8 0 16-7.2 16-16z\"]\n};\nvar faHeartCircleXmark = {\n prefix: 'fas',\n iconName: 'heart-circle-xmark',\n icon: [576, 512, [], \"e501\", \"M47.6 300.4L228.3 469.1c7.5 7 17.4 10.9 27.7 10.9s20.2-3.9 27.7-10.9l2.6-2.4C267.2 438.6 256 404.6 256 368c0-97.2 78.8-176 176-176c28.3 0 55 6.7 78.7 18.5c.9-6.5 1.3-13 1.3-19.6v-5.8c0-69.9-50.5-129.5-119.4-141C347 36.5 300.6 51.4 268 84L256 96 244 84c-32.6-32.6-79-47.5-124.6-39.9C50.5 55.6 0 115.2 0 185.1v5.8c0 41.5 17.2 81.2 47.6 109.5zM432 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm59.3-180.7L454.6 368l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L432 390.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L409.4 368l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L432 345.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faHouseChimney = {\n prefix: 'fas',\n iconName: 'house-chimney',\n icon: [576, 512, [63499, \"home-lg\"], \"e3af\", \"M543.8 287.6c17 0 32-14 32-32.1c1-9-3-17-11-24L512 185V64c0-17.7-14.3-32-32-32H448c-17.7 0-32 14.3-32 32v36.7L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1h32v69.7c-.1 .9-.1 1.8-.1 2.8V472c0 22.1 17.9 40 40 40h16c1.2 0 2.4-.1 3.6-.2c1.5 .1 3 .2 4.5 .2H160h24c22.1 0 40-17.9 40-40V448 384c0-17.7 14.3-32 32-32h64c17.7 0 32 14.3 32 32v64 24c0 22.1 17.9 40 40 40h24 32.5c1.4 0 2.8 0 4.2-.1c1.1 .1 2.2 .1 3.3 .1h16c22.1 0 40-17.9 40-40V455.8c.3-2.6 .5-5.3 .5-8.1l-.7-160.2h32z\"]\n};\nvar faHomeLg = faHouseChimney;\nvar faWindowMaximize = {\n prefix: 'fas',\n iconName: 'window-maximize',\n icon: [512, 512, [128470], \"f2d0\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM96 96H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H96c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faFaceFrown = {\n prefix: 'fas',\n iconName: 'face-frown',\n icon: [512, 512, [9785, \"frown\"], \"f119\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM159.3 388.7c-2.6 8.4-11.6 13.2-20 10.5s-13.2-11.6-10.5-20C145.2 326.1 196.3 288 256 288s110.8 38.1 127.3 91.3c2.6 8.4-2.1 17.4-10.5 20s-17.4-2.1-20-10.5C340.5 349.4 302.1 320 256 320s-84.5 29.4-96.7 68.7zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faFrown = faFaceFrown;\nvar faPrescription = {\n prefix: 'fas',\n iconName: 'prescription',\n icon: [448, 512, [], \"f5b1\", \"M32 0C14.3 0 0 14.3 0 32V192v96c0 17.7 14.3 32 32 32s32-14.3 32-32V224h50.7l128 128L137.4 457.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L288 397.3 393.4 502.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L333.3 352 438.6 246.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L288 306.7l-85.8-85.8C251.4 209.1 288 164.8 288 112C288 50.1 237.9 0 176 0H32zM176 160H64V64H176c26.5 0 48 21.5 48 48s-21.5 48-48 48z\"]\n};\nvar faShop = {\n prefix: 'fas',\n iconName: 'shop',\n icon: [640, 512, [\"store-alt\"], \"f54f\", \"M36.8 192H603.2c20.3 0 36.8-16.5 36.8-36.8c0-7.3-2.2-14.4-6.2-20.4L558.2 21.4C549.3 8 534.4 0 518.3 0H121.7c-16 0-31 8-39.9 21.4L6.2 134.7c-4 6.1-6.2 13.2-6.2 20.4C0 175.5 16.5 192 36.8 192zM64 224V384v80c0 26.5 21.5 48 48 48H336c26.5 0 48-21.5 48-48V384 224H320V384H128V224H64zm448 0V480c0 17.7 14.3 32 32 32s32-14.3 32-32V224H512z\"]\n};\nvar faStoreAlt = faShop;\nvar faFloppyDisk = {\n prefix: 'fas',\n iconName: 'floppy-disk',\n icon: [448, 512, [128190, 128426, \"save\"], \"f0c7\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V173.3c0-17-6.7-33.3-18.7-45.3L352 50.7C340 38.7 323.7 32 306.7 32H64zm0 96c0-17.7 14.3-32 32-32H288c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V128zM224 288a64 64 0 1 1 0 128 64 64 0 1 1 0-128z\"]\n};\nvar faSave = faFloppyDisk;\nvar faVihara = {\n prefix: 'fas',\n iconName: 'vihara',\n icon: [640, 512, [], \"f6a7\", \"M281 22L305.8 4.7c1.3-.9 2.7-1.8 4.1-2.4C313.1 .7 316.6 0 320 0s6.9 .7 10.1 2.2c1.4 .7 2.8 1.5 4.1 2.4L359 22C393 45.8 430.8 63.5 470.8 74.4l23 6.3c1.8 .5 3.6 1.1 5.2 2c3.2 1.7 5.9 4 8.1 6.8c3.8 4.9 5.6 11.3 4.7 17.8c-.4 2.8-1.2 5.4-2.5 7.8c-1.7 3.2-4 5.9-6.8 8.1c-4.3 3.2-9.6 5.1-15.1 4.9H480v56.1l6.4 5.1 5.2 4.1c21.1 16.7 45 29.6 70.5 38.1l28.9 9.6c1.6 .5 3.2 1.2 4.6 2c3.1 1.7 5.8 4.1 7.8 6.9s3.5 6.1 4.1 9.6c.5 2.7 .6 5.5 .1 8.3s-1.4 5.4-2.7 7.8c-1.7 3.1-4.1 5.8-6.9 7.8s-6.1 3.5-9.6 4.1c-1.6 .3-3.3 .4-5 .4H544v65.9c20.5 22.8 47.4 39.2 77.4 46.7C632 403 640 412.6 640 424c0 13.3-10.7 24-24 24H576v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H352v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H128v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H24c-13.3 0-24-10.7-24-24c0-11.4 8-21 18.6-23.4c30-7.6 56.9-23.9 77.4-46.7V288H56.6c-1.7 0-3.4-.1-5-.4c-3.5-.7-6.8-2.1-9.6-4.1s-5.2-4.7-7-7.8c-1.3-2.4-2.3-5-2.7-7.8s-.4-5.6 .1-8.3c.7-3.5 2.1-6.8 4.1-9.6s4.7-5.2 7.8-6.9c1.4-.8 3-1.5 4.6-2l28.9-9.6c25.5-8.5 49.4-21.4 70.5-38.1l5.2-4.1 6.4-5.1V176 128h-7.5c-5.5 .1-10.8-1.7-15.1-4.9c-2.8-2.1-5.1-4.8-6.8-8.1c-1.2-2.4-2.1-5-2.5-7.8c-.9-6.5 .9-12.8 4.7-17.8c2.1-2.8 4.8-5.1 8.1-6.8c1.6-.8 3.4-1.5 5.2-2l23-6.3C209.2 63.5 247 45.8 281 22zM416 128H320 224v64h72 48 72V128zM160 288v64H296h24 24H480V288H344 320h0H296 160z\"]\n};\nvar faScaleUnbalanced = {\n prefix: 'fas',\n iconName: 'scale-unbalanced',\n icon: [640, 512, [\"balance-scale-left\"], \"f515\", \"M522.1 62.4c16.8-5.6 25.8-23.7 20.2-40.5S518.6-3.9 501.9 1.6l-113 37.7C375 15.8 349.3 0 320 0c-44.2 0-80 35.8-80 80c0 3 .2 5.9 .5 8.8L117.9 129.6c-16.8 5.6-25.8 23.7-20.2 40.5s23.7 25.8 40.5 20.2l135.5-45.2c4.5 3.2 9.3 5.9 14.4 8.2V480c0 17.7 14.3 32 32 32H512c17.7 0 32-14.3 32-32s-14.3-32-32-32H352V153.3c21-9.2 37.2-27 44.2-49l125.9-42zM439.6 288L512 163.8 584.4 288H439.6zM512 384c62.9 0 115.2-34 126-78.9c2.6-11-1-22.3-6.7-32.1L536.1 109.8c-5-8.6-14.2-13.8-24.1-13.8s-19.1 5.3-24.1 13.8L392.7 273.1c-5.7 9.8-9.3 21.1-6.7 32.1C396.8 350 449.1 384 512 384zM129.2 291.8L201.6 416H56.7l72.4-124.2zM3.2 433.1C14 478 66.3 512 129.2 512s115.2-34 126-78.9c2.6-11-1-22.3-6.7-32.1L153.2 237.8c-5-8.6-14.2-13.8-24.1-13.8s-19.1 5.3-24.1 13.8L9.9 401.1c-5.7 9.8-9.3 21.1-6.7 32.1z\"]\n};\nvar faBalanceScaleLeft = faScaleUnbalanced;\nvar faSortUp = {\n prefix: 'fas',\n iconName: 'sort-up',\n icon: [320, 512, [\"sort-asc\"], \"f0de\", \"M182.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8H288c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-128-128z\"]\n};\nvar faSortAsc = faSortUp;\nvar faCommentDots = {\n prefix: 'fas',\n iconName: 'comment-dots',\n icon: [512, 512, [128172, 62075, \"commenting\"], \"f4ad\", \"M256 448c141.4 0 256-93.1 256-208S397.4 32 256 32S0 125.1 0 240c0 45.1 17.7 86.8 47.7 120.9c-1.9 24.5-11.4 46.3-21.4 62.9c-5.5 9.2-11.1 16.6-15.2 21.6c-2.1 2.5-3.7 4.4-4.9 5.7c-.6 .6-1 1.1-1.3 1.4l-.3 .3 0 0 0 0 0 0 0 0c-4.6 4.6-5.9 11.4-3.4 17.4c2.5 6 8.3 9.9 14.8 9.9c28.7 0 57.6-8.9 81.6-19.3c22.9-10 42.4-21.9 54.3-30.6c31.8 11.5 67 17.9 104.1 17.9zM128 208a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faCommenting = faCommentDots;\nvar faPlantWilt = {\n prefix: 'fas',\n iconName: 'plant-wilt',\n icon: [512, 512, [], \"e5aa\", \"M288 120c0-30.9 25.1-56 56-56s56 25.1 56 56v13c-29.3 10-48 34.5-48 70.1c0 27.9 25.3 74.8 66 111.6c3.8 3.5 8.9 5.3 14 5.3s10.2-1.8 14-5.3c40.7-36.8 66-83.7 66-111.6c0-35.6-18.7-60.2-48-70.1V120C464 53.7 410.3 0 344 0S224 53.7 224 120v21.8C207.3 133 188.2 128 168 128c-66.3 0-120 53.7-120 120v13c-29.3 10-48 34.5-48 70.1C0 359 25.3 405.9 66 442.7c3.8 3.5 8.9 5.3 14 5.3s10.2-1.8 14-5.3c40.7-36.8 66-83.7 66-111.6c0-35.6-18.7-60.2-48-70.1V248c0-30.9 25.1-56 56-56s56 25.1 56 56v32V480c0 17.7 14.3 32 32 32s32-14.3 32-32V280 248 120z\"]\n};\nvar faDiamond = {\n prefix: 'fas',\n iconName: 'diamond',\n icon: [512, 512, [9830], \"f219\", \"M284.3 11.7c-15.6-15.6-40.9-15.6-56.6 0l-216 216c-15.6 15.6-15.6 40.9 0 56.6l216 216c15.6 15.6 40.9 15.6 56.6 0l216-216c15.6-15.6 15.6-40.9 0-56.6l-216-216z\"]\n};\nvar faFaceGrinSquint = {\n prefix: 'fas',\n iconName: 'face-grin-squint',\n icon: [512, 512, [128518, \"grin-squint\"], \"f585\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zM133.5 146.7l89.9 47.9c10.7 5.7 10.7 21.1 0 26.8l-89.9 47.9c-7.9 4.2-17.5-1.5-17.5-10.5c0-2.8 1-5.5 2.8-7.6l36-43.2-36-43.2c-1.8-2.1-2.8-4.8-2.8-7.6c0-9 9.6-14.7 17.5-10.5zM396 157.1c0 2.8-1 5.5-2.8 7.6l-36 43.2 36 43.2c1.8 2.1 2.8 4.8 2.8 7.6c0 9-9.6 14.7-17.5 10.5l-89.9-47.9c-10.7-5.7-10.7-21.1 0-26.8l89.9-47.9c7.9-4.2 17.5 1.5 17.5 10.5z\"]\n};\nvar faGrinSquint = faFaceGrinSquint;\nvar faHandHoldingDollar = {\n prefix: 'fas',\n iconName: 'hand-holding-dollar',\n icon: [576, 512, [\"hand-holding-usd\"], \"f4c0\", \"M312 24V34.5c6.4 1.2 12.6 2.7 18.2 4.2c12.8 3.4 20.4 16.6 17 29.4s-16.6 20.4-29.4 17c-10.9-2.9-21.1-4.9-30.2-5c-7.3-.1-14.7 1.7-19.4 4.4c-2.1 1.3-3.1 2.4-3.5 3c-.3 .5-.7 1.2-.7 2.8c0 .3 0 .5 0 .6c.2 .2 .9 1.2 3.3 2.6c5.8 3.5 14.4 6.2 27.4 10.1l.9 .3c11.1 3.3 25.9 7.8 37.9 15.3c13.7 8.6 26.1 22.9 26.4 44.9c.3 22.5-11.4 38.9-26.7 48.5c-6.7 4.1-13.9 7-21.3 8.8V232c0 13.3-10.7 24-24 24s-24-10.7-24-24V220.6c-9.5-2.3-18.2-5.3-25.6-7.8c-2.1-.7-4.1-1.4-6-2c-12.6-4.2-19.4-17.8-15.2-30.4s17.8-19.4 30.4-15.2c2.6 .9 5 1.7 7.3 2.5c13.6 4.6 23.4 7.9 33.9 8.3c8 .3 15.1-1.6 19.2-4.1c1.9-1.2 2.8-2.2 3.2-2.9c.4-.6 .9-1.8 .8-4.1l0-.2c0-1 0-2.1-4-4.6c-5.7-3.6-14.3-6.4-27.1-10.3l-1.9-.6c-10.8-3.2-25-7.5-36.4-14.4c-13.5-8.1-26.5-22-26.6-44.1c-.1-22.9 12.9-38.6 27.7-47.4c6.4-3.8 13.3-6.4 20.2-8.2V24c0-13.3 10.7-24 24-24s24 10.7 24 24zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 384l0 0-.9 0c.3 0 .6 0 .9 0z\"]\n};\nvar faHandHoldingUsd = faHandHoldingDollar;\nvar faBacterium = {\n prefix: 'fas',\n iconName: 'bacterium',\n icon: [512, 512, [], \"e05a\", \"M423.1 30.6c3.6-12.7-3.7-26-16.5-29.7s-26 3.7-29.7 16.5l-4.2 14.7c-9.8-.4-19.9 .5-29.9 2.8c-12.1 2.8-23.7 5.9-34.9 9.4l-5.9-13.7c-5.2-12.2-19.3-17.8-31.5-12.6s-17.8 19.3-12.6 31.5l4.9 11.3c-22 9.4-42 20.1-60.2 31.8L196 82.7c-7.4-11-22.3-14-33.3-6.7s-14 22.3-6.7 33.3l7.8 11.6c-18 15-33.7 30.8-47.3 47.1L103 157.3c-10.4-8.3-25.5-6.6-33.7 3.7s-6.6 25.5 3.7 33.7l15 12c-2.1 3.2-4.1 6.5-6 9.7c-9.4 15.7-17 31-23.2 45.3l-9.9-3.9c-12.3-4.9-26.3 1.1-31.2 13.4s1.1 26.3 13.4 31.2l11.6 4.6c-.3 1.1-.6 2.1-.9 3.1c-3.5 12.5-5.7 23.2-7.1 31.3c-.7 4.1-1.2 7.5-1.6 10.3c-.2 1.4-.3 2.6-.4 3.6l-.1 1.4-.1 .6 0 .3 0 .1c0 0 0 .1 39.2 3.7l0 0-39.2-3.6c-.5 5-.6 10-.4 14.9l-14.7 4.2C4.7 380.6-2.7 393.8 .9 406.6s16.9 20.1 29.7 16.5l13.8-3.9c10.6 20.7 27.6 37.8 48.5 48.5l-3.9 13.7c-3.6 12.7 3.7 26 16.5 29.7s26-3.7 29.7-16.5l4.2-14.7c23.8 1 46.3-5.5 65.1-17.6L215 473c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-10.6-10.6c9.1-14.1 15.1-30.5 17-48.3l.1-.8c.3-1.7 1-5.1 2.3-9.8l.2-.8 12.6 5.4c12.2 5.2 26.3-.4 31.5-12.6s-.4-26.3-12.6-31.5l-11.3-4.8c9.9-14.9 24.9-31.6 48.6-46l2.1 7.5c3.6 12.7 16.9 20.1 29.7 16.5s20.1-16.9 16.5-29.7L371 259.2c6.9-2.2 14.3-4.3 22.2-6.1c12.9-3 24.7-8 35.2-14.8L439 249c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-10.6-10.6c12.2-19 18.6-41.6 17.6-65.1l14.7-4.2c12.7-3.6 20.1-16.9 16.5-29.7s-16.9-20.1-29.7-16.5l-13.7 3.9c-10.8-21.2-28-38-48.5-48.5l3.9-13.8zM92.1 363.3l0 0L144 368l-51.9-4.7zM112 320a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM240 184a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faHandPointer = {\n prefix: 'fas',\n iconName: 'hand-pointer',\n icon: [448, 512, [], \"f25a\", \"M128 40c0-22.1 17.9-40 40-40s40 17.9 40 40V188.2c8.5-7.6 19.7-12.2 32-12.2c20.6 0 38.2 13 45 31.2c8.8-9.3 21.2-15.2 35-15.2c25.3 0 46 19.5 47.9 44.3c8.5-7.7 19.8-12.3 32.1-12.3c26.5 0 48 21.5 48 48v48 16 48c0 70.7-57.3 128-128 128l-16 0H240l-.1 0h-5.2c-5 0-9.9-.3-14.7-1c-55.3-5.6-106.2-34-140-79L8 336c-13.3-17.7-9.7-42.7 8-56s42.7-9.7 56 8l56 74.7V40zM240 304c0-8.8-7.2-16-16-16s-16 7.2-16 16v96c0 8.8 7.2 16 16 16s16-7.2 16-16V304zm48-16c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16s16-7.2 16-16V304c0-8.8-7.2-16-16-16zm80 16c0-8.8-7.2-16-16-16s-16 7.2-16 16v96c0 8.8 7.2 16 16 16s16-7.2 16-16V304z\"]\n};\nvar faDrumSteelpan = {\n prefix: 'fas',\n iconName: 'drum-steelpan',\n icon: [576, 512, [], \"f56a\", \"M288 32c159.1 0 288 48 288 128V352c0 80-128.9 128-288 128S0 432 0 352V160C0 80 128.9 32 288 32zM528 160c0-9.9-8-29.9-55-49.8c-18.6-7.9-40.9-14.4-66-19.4l-27.8 43.6c-7.3 11.5-11.2 24.8-11.2 38.4c0 17.5 6.4 34.4 18.1 47.5l9.8 11c29.8-5.2 55.9-12.5 77.2-21.5c47.1-19.9 55-39.9 55-49.8zM349.2 237.3c-8-26.2-32.4-45.3-61.2-45.3s-53.3 19.1-61.2 45.3c19.4 1.7 39.9 2.7 61.2 2.7s41.8-.9 61.2-2.7zM169 90.8c-25.2 5-47.4 11.6-66 19.4C56 130.1 48 150.1 48 160s8 29.9 55 49.8c21.3 9 47.4 16.3 77.2 21.5l9.8-11c11.6-13.1 18.1-30 18.1-47.5c0-13.6-3.9-26.9-11.2-38.4L169 90.8zm56.3-8C224.5 87 224 91.5 224 96c0 35.3 28.7 64 64 64s64-28.7 64-64c0-4.5-.5-9-1.4-13.2C330.8 81 309.8 80 288 80s-42.8 1-62.6 2.8z\"]\n};\nvar faHandScissors = {\n prefix: 'fas',\n iconName: 'hand-scissors',\n icon: [512, 512, [], \"f257\", \"M40 208c-22.1 0-40 17.9-40 40s17.9 40 40 40l180.2 0c-7.6 8.5-12.2 19.7-12.2 32c0 25.3 19.5 46 44.3 47.9c-7.7 8.5-12.3 19.8-12.3 32.1c0 26.5 21.5 48 48 48l32 0 64 0c70.7 0 128-57.3 128-128l0-113.1c0-40.2-16-78.8-44.4-107.3C444.8 76.8 413.9 64 381.7 64L336 64c-21.3 0-39.3 13.9-45.6 33.1l74.5 23.7c8.4 2.7 13.1 11.7 10.4 20.1s-11.7 13.1-20.1 10.4L288 129.9l0 .1L84 65.8C62.9 59.2 40.5 70.9 33.8 92s5.1 43.5 26.2 50.2L269.5 208 40 208z\"]\n};\nvar faHandsPraying = {\n prefix: 'fas',\n iconName: 'hands-praying',\n icon: [640, 512, [\"praying-hands\"], \"f684\", \"M351.2 4.8c3.2-2 6.6-3.3 10-4.1c4.7-1 9.6-.9 14.1 .1c7.7 1.8 14.8 6.5 19.4 13.6L514.6 194.2c8.8 13.1 13.4 28.6 13.4 44.4v73.5c0 6.9 4.4 13 10.9 15.2l79.2 26.4C631.2 358 640 370.2 640 384v96c0 9.9-4.6 19.3-12.5 25.4s-18.1 8.1-27.7 5.5L431 465.9c-56-14.9-95-65.7-95-123.7V224c0-17.7 14.3-32 32-32s32 14.3 32 32v80c0 8.8 7.2 16 16 16s16-7.2 16-16V219.1c0-7-1.8-13.8-5.3-19.8L340.3 48.1c-1.7-3-2.9-6.1-3.6-9.3c-1-4.7-1-9.6 .1-14.1c1.9-8 6.8-15.2 14.3-19.9zm-62.4 0c7.5 4.6 12.4 11.9 14.3 19.9c1.1 4.6 1.2 9.4 .1 14.1c-.7 3.2-1.9 6.3-3.6 9.3L213.3 199.3c-3.5 6-5.3 12.9-5.3 19.8V304c0 8.8 7.2 16 16 16s16-7.2 16-16V224c0-17.7 14.3-32 32-32s32 14.3 32 32V342.3c0 58-39 108.7-95 123.7l-168.7 45c-9.6 2.6-19.9 .5-27.7-5.5S0 490 0 480V384c0-13.8 8.8-26 21.9-30.4l79.2-26.4c6.5-2.2 10.9-8.3 10.9-15.2V238.5c0-15.8 4.7-31.2 13.4-44.4L245.2 14.5c4.6-7.1 11.7-11.8 19.4-13.6c4.6-1.1 9.4-1.2 14.1-.1c3.5 .8 6.9 2.1 10 4.1z\"]\n};\nvar faPrayingHands = faHandsPraying;\nvar faArrowRotateRight = {\n prefix: 'fas',\n iconName: 'arrow-rotate-right',\n icon: [512, 512, [8635, \"arrow-right-rotate\", \"arrow-rotate-forward\", \"redo\"], \"f01e\", \"M386.3 160H336c-17.7 0-32 14.3-32 32s14.3 32 32 32H464c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32s-32 14.3-32 32v51.2L414.4 97.6c-87.5-87.5-229.3-87.5-316.8 0s-87.5 229.3 0 316.8s229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3s163.8-62.5 226.3 0L386.3 160z\"]\n};\nvar faArrowRightRotate = faArrowRotateRight;\nvar faArrowRotateForward = faArrowRotateRight;\nvar faRedo = faArrowRotateRight;\nvar faBiohazard = {\n prefix: 'fas',\n iconName: 'biohazard',\n icon: [576, 512, [9763], \"f780\", \"M173.2 0c-1.8 0-3.5 .7-4.8 2C138.5 32.3 120 74 120 120c0 26.2 6 50.9 16.6 73c-22 2.4-43.8 9.1-64.2 20.5C37.9 232.8 13.3 262.4 .4 296c-.7 1.7-.5 3.7 .5 5.2c2.2 3.7 7.4 4.3 10.6 1.3C64.2 254.3 158 245.1 205 324s-8.1 153.1-77.6 173.2c-4.2 1.2-6.3 5.9-4.1 9.6c1 1.6 2.6 2.7 4.5 3c36.5 5.9 75.2 .1 109.7-19.2c20.4-11.4 37.4-26.5 50.5-43.8c13.1 17.3 30.1 32.4 50.5 43.8c34.5 19.3 73.3 25.2 109.7 19.2c1.9-.3 3.5-1.4 4.5-3c2.2-3.7 .1-8.4-4.1-9.6C379.1 477.1 324 403 371 324s140.7-69.8 193.5-21.4c3.2 2.9 8.4 2.3 10.6-1.3c1-1.6 1.1-3.5 .5-5.2c-12.9-33.6-37.5-63.2-72.1-82.5c-20.4-11.4-42.2-18.1-64.2-20.5C450 170.9 456 146.2 456 120c0-46-18.5-87.7-48.4-118c-1.3-1.3-3-2-4.8-2c-5 0-8.4 5.2-6.7 9.9C421.7 80.5 385.6 176 288 176S154.3 80.5 179.9 9.9c1.7-4.7-1.6-9.9-6.7-9.9zM240 272a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM181.7 417.6c6.3-11.8 9.8-25.1 8.6-39.8c-19.5-18-34-41.4-41.2-67.8c-12.5-8.1-26.2-11.8-40-12.4c-9-.4-18.1 .6-27.1 2.7c7.8 57.1 38.7 106.8 82.9 139.4c6.8-6.7 12.6-14.1 16.8-22.1zM288 64c-28.8 0-56.3 5.9-81.2 16.5c2 8.3 5 16.2 9 23.5c6.8 12.4 16.7 23.1 30.1 30.3c13.3-4.1 27.5-6.3 42.2-6.3s28.8 2.2 42.2 6.3c13.4-7.2 23.3-17.9 30.1-30.3c4-7.3 7-15.2 9-23.5C344.3 69.9 316.8 64 288 64zM426.9 310c-7.2 26.4-21.7 49.7-41.2 67.8c-1.2 14.7 2.2 28.1 8.6 39.8c4.3 8 10 15.4 16.8 22.1c44.3-32.6 75.2-82.3 82.9-139.4c-9-2.2-18.1-3.1-27.1-2.7c-13.8 .6-27.5 4.4-40 12.4z\"]\n};\nvar faLocationCrosshairs = {\n prefix: 'fas',\n iconName: 'location-crosshairs',\n icon: [512, 512, [\"location\"], \"f601\", \"M256 0c17.7 0 32 14.3 32 32V66.7C368.4 80.1 431.9 143.6 445.3 224H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H445.3C431.9 368.4 368.4 431.9 288 445.3V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V445.3C143.6 431.9 80.1 368.4 66.7 288H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H66.7C80.1 143.6 143.6 80.1 224 66.7V32c0-17.7 14.3-32 32-32zM128 256a128 128 0 1 0 256 0 128 128 0 1 0 -256 0zm128-80a80 80 0 1 1 0 160 80 80 0 1 1 0-160z\"]\n};\nvar faLocation = faLocationCrosshairs;\nvar faMarsDouble = {\n prefix: 'fas',\n iconName: 'mars-double',\n icon: [640, 512, [9891], \"f227\", \"M312 32c-9.7 0-18.5 5.8-22.2 14.8s-1.7 19.3 5.2 26.2l33.4 33.4L275.8 159c-28.4-19.5-62.7-31-99.8-31C78.8 128 0 206.8 0 304s78.8 176 176 176s176-78.8 176-176c0-37-11.4-71.4-31-99.8l52.6-52.6L407 185c6.9 6.9 17.2 8.9 26.2 5.2s14.8-12.5 14.8-22.2V56c0-13.3-10.7-24-24-24H312zm88 48h0v0l0 0zM64 304a112 112 0 1 1 224 0A112 112 0 1 1 64 304zM368 480c97.2 0 176-78.8 176-176c0-37-11.4-71.4-31-99.8l52.6-52.6L599 185c6.9 6.9 17.2 8.9 26.2 5.2s14.8-12.5 14.8-22.2V56c0-13.3-10.7-24-24-24H504c-9.7 0-18.5 5.8-22.2 14.8c-1.2 2.9-1.8 6-1.8 9l0 .2v.2c0 6.2 2.5 12.2 7 16.8l33.4 33.4L480 146.7V168c0 22.6-13.6 43.1-34.6 51.7c-.8 .3-1.7 .7-2.5 1C465.7 241.2 480 270.9 480 304c0 61.9-50.1 112-112 112c-5.4 0-10.8-.4-16-1.1c-12.9 20.4-29.1 38.3-48.1 53.1c19.8 7.8 41.4 12 64 12z\"]\n};\nvar faChildDress = {\n prefix: 'fas',\n iconName: 'child-dress',\n icon: [320, 512, [], \"e59c\", \"M224 64A64 64 0 1 0 96 64a64 64 0 1 0 128 0zM88 400v80c0 17.7 14.3 32 32 32s32-14.3 32-32V400h16v80c0 17.7 14.3 32 32 32s32-14.3 32-32V400h17.8c10.9 0 18.6-10.7 15.2-21.1l-31.1-93.4 28.6 37.8c10.7 14.1 30.8 16.8 44.8 6.2s16.8-30.7 6.2-44.8L254.6 207c-22.4-29.6-57.5-47-94.6-47s-72.2 17.4-94.6 47L6.5 284.7c-10.7 14.1-7.9 34.2 6.2 44.8s34.2 7.9 44.8-6.2l28.7-37.8L55 378.9C51.6 389.3 59.3 400 70.2 400H88z\"]\n};\nvar faUsersBetweenLines = {\n prefix: 'fas',\n iconName: 'users-between-lines',\n icon: [640, 512, [], \"e591\", \"M0 24C0 10.7 10.7 0 24 0H616c13.3 0 24 10.7 24 24s-10.7 24-24 24H24C10.7 48 0 37.3 0 24zM0 488c0-13.3 10.7-24 24-24H616c13.3 0 24 10.7 24 24s-10.7 24-24 24H24c-13.3 0-24-10.7-24-24zM83.2 160a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM32 320c0-35.3 28.7-64 64-64h96c12.2 0 23.7 3.4 33.4 9.4c-37.2 15.1-65.6 47.2-75.8 86.6H64c-17.7 0-32-14.3-32-32zm461.6 32c-10.3-40.1-39.6-72.6-77.7-87.4c9.4-5.5 20.4-8.6 32.1-8.6h96c35.3 0 64 28.7 64 64c0 17.7-14.3 32-32 32H493.6zM391.2 290.4c32.1 7.4 58.1 30.9 68.9 61.6c3.5 10 5.5 20.8 5.5 32c0 17.7-14.3 32-32 32h-224c-17.7 0-32-14.3-32-32c0-11.2 1.9-22 5.5-32c10.5-29.7 35.3-52.8 66.1-60.9c7.8-2.1 16-3.1 24.5-3.1h96c7.4 0 14.7 .8 21.6 2.4zm44-130.4a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM321.6 96a80 80 0 1 1 0 160 80 80 0 1 1 0-160z\"]\n};\nvar faLungsVirus = {\n prefix: 'fas',\n iconName: 'lungs-virus',\n icon: [640, 512, [], \"e067\", \"M320 0c17.7 0 32 14.3 32 32V156.2c-8.5-7.6-19.7-12.2-32-12.2s-23.5 4.6-32 12.2V32c0-17.7 14.3-32 32-32zM444.5 195.5c-16.4-16.4-41.8-18.5-60.5-6.1V165.3C384 127 415 96 453.3 96c21.7 0 42.8 10.2 55.8 28.8c15.4 22.1 44.3 65.4 71 116.9c26.5 50.9 52.4 112.5 59.6 170.3c.2 1.3 .2 2.6 .2 4v7c0 49.1-39.8 89-89 89c-7.3 0-14.5-.9-21.6-2.7l-72.7-18.2c-20.9-5.2-38.7-17.1-51.5-32.9c14 1.5 28.5-3 39.2-13.8l-22.6-22.6 22.6 22.6c18.7-18.7 18.7-49.1 0-67.9c-1.1-1.1-1.4-2-1.5-2.5c-.1-.8-.1-1.8 .4-2.9s1.2-1.9 1.8-2.3c.5-.3 1.3-.8 2.9-.8c26.5 0 48-21.5 48-48s-21.5-48-48-48c-1.6 0-2.4-.4-2.9-.8c-.6-.4-1.3-1.2-1.8-2.3s-.5-2.2-.4-2.9c.1-.6 .4-1.4 1.5-2.5c18.7-18.7 18.7-49.1 0-67.9zM421.8 421.8c-6.2 6.2-16.4 6.2-22.6 0C375.9 398.5 336 415 336 448c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-33-39.9-49.5-63.2-26.2c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6C241.5 375.9 225 336 192 336c-8.8 0-16-7.2-16-16s7.2-16 16-16c33 0 49.5-39.9 26.2-63.2c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0C264.1 241.5 304 225 304 192c0-8.8 7.2-16 16-16s16 7.2 16 16c0 33 39.9 49.5 63.2 26.2c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6C398.5 264.1 415 304 448 304c8.8 0 16 7.2 16 16s-7.2 16-16 16c-33 0-49.5 39.9-26.2 63.2c6.2 6.2 6.2 16.4 0 22.6zM183.3 491.2l-72.7 18.2c-7.1 1.8-14.3 2.7-21.6 2.7c-49.1 0-89-39.8-89-89v-7c0-1.3 .1-2.7 .2-4c7.2-57.9 33.1-119.4 59.6-170.3c26.8-51.5 55.6-94.8 71-116.9c13-18.6 34-28.8 55.8-28.8C225 96 256 127 256 165.3v24.1c-18.6-12.4-44-10.3-60.5 6.1c-18.7 18.7-18.7 49.1 0 67.9c1.1 1.1 1.4 2 1.5 2.5c.1 .8 .1 1.8-.4 2.9s-1.2 1.9-1.8 2.3c-.5 .3-1.3 .8-2.9 .8c-26.5 0-48 21.5-48 48s21.5 48 48 48c1.6 0 2.4 .4 2.9 .8c.6 .4 1.3 1.2 1.8 2.3s.5 2.2 .4 2.9c-.1 .6-.4 1.4-1.5 2.5c-18.7 18.7-18.7 49.1 0 67.9c10.7 10.7 25.3 15.3 39.2 13.8c-12.8 15.9-30.6 27.7-51.5 32.9zM296 320a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm72 32a16 16 0 1 0 -32 0 16 16 0 1 0 32 0z\"]\n};\nvar faFaceGrinTears = {\n prefix: 'fas',\n iconName: 'face-grin-tears',\n icon: [640, 512, [128514, \"grin-tears\"], \"f588\", \"M548.6 371.4C506.4 454.8 419.9 512 320 512s-186.4-57.2-228.6-140.6c4.5-2.9 8.7-6.3 12.7-10.3c8.1-8.1 13.2-18.6 16.5-26.6c3.6-8.8 6.5-18.4 8.8-27.5c4.6-18.2 7.7-37 9.3-48.2c3.9-26.5-18.8-49.2-45.2-45.4c-6.8 .9-16.2 2.4-26.6 4.4C85.3 94.5 191.6 0 320 0S554.7 94.5 573.2 217.7c-10.3-2-19.8-3.5-26.6-4.4c-26.5-3.9-49.2 18.8-45.2 45.4c1.6 11.3 4.6 30 9.3 48.2c2.3 9.1 5.2 18.8 8.8 27.5c3.3 8.1 8.4 18.5 16.5 26.6c3.9 3.9 8.2 7.4 12.7 10.3zM107 254.1c-3.1 21.5-11.4 70.2-25.5 84.4c-.9 1-1.9 1.8-2.9 2.7C60 356.7 32 355.5 14.3 337.7c-18.7-18.7-19.1-48.8-.7-67.2c8.6-8.6 30.1-15.1 50.5-19.6c13-2.8 25.5-4.8 33.9-6c5.4-.8 9.9 3.7 9 9zm454.5 87.1c-.8-.6-1.5-1.3-2.3-2c-.2-.2-.5-.4-.7-.7c-14.1-14.1-22.5-62.9-25.5-84.4c-.8-5.4 3.7-9.9 9-9c1 .1 2.2 .3 3.3 .5c8.2 1.2 19.2 3 30.6 5.5c20.4 4.4 41.9 10.9 50.5 19.6c18.4 18.4 18 48.5-.7 67.2c-17.7 17.7-45.7 19-64.2 3.4zm-90.1-9.7c5-11.8-7-22.5-19.3-18.7c-39.7 12.2-84.5 19-131.8 19s-92.1-6.8-131.8-19c-12.3-3.8-24.3 6.9-19.3 18.7c25 59.1 83.2 100.5 151.1 100.5s126.2-41.4 151.1-100.5zM281.6 228.8l0 0 0 0 0 0c2.1 2.8 5.7 3.9 8.9 2.8s5.5-4.1 5.5-7.6c0-17.9-6.7-35.6-16.6-48.8c-9.8-13-23.9-23.2-39.4-23.2s-29.6 10.2-39.4 23.2C190.7 188.4 184 206.1 184 224c0 3.4 2.2 6.5 5.5 7.6s6.9 0 8.9-2.8l0 0 0 0 0 0 .2-.2c.2-.2 .4-.5 .7-.9c.6-.8 1.6-2 2.8-3.4c2.5-2.8 6-6.6 10.2-10.3c8.8-7.8 18.8-14 27.7-14s18.9 6.2 27.7 14c4.2 3.7 7.7 7.5 10.2 10.3c1.2 1.4 2.2 2.6 2.8 3.4c.3 .4 .6 .7 .7 .9l.2 .2 0 0zm160 0l0 0 0 0c2.1 2.8 5.7 3.9 8.9 2.8s5.5-4.1 5.5-7.6c0-17.9-6.7-35.6-16.6-48.8c-9.8-13-23.9-23.2-39.4-23.2s-29.6 10.2-39.4 23.2C350.7 188.4 344 206.1 344 224c0 3.4 2.2 6.5 5.5 7.6s6.9 0 8.9-2.8l0 0 0 0 0 0 .2-.2c.2-.2 .4-.5 .7-.9c.6-.8 1.6-2 2.8-3.4c2.5-2.8 6-6.6 10.2-10.3c8.8-7.8 18.8-14 27.7-14s18.9 6.2 27.7 14c4.2 3.7 7.7 7.5 10.2 10.3c1.2 1.4 2.2 2.6 2.8 3.4c.3 .4 .6 .7 .7 .9l.2 .2 0 0 0 0z\"]\n};\nvar faGrinTears = faFaceGrinTears;\nvar faPhone = {\n prefix: 'fas',\n iconName: 'phone',\n icon: [512, 512, [128222, 128379], \"f095\", \"M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z\"]\n};\nvar faCalendarXmark = {\n prefix: 'fas',\n iconName: 'calendar-xmark',\n icon: [448, 512, [\"calendar-times\"], \"f273\", \"M128 0c17.7 0 32 14.3 32 32V64H288V32c0-17.7 14.3-32 32-32s32 14.3 32 32V64h48c26.5 0 48 21.5 48 48v48H0V112C0 85.5 21.5 64 48 64H96V32c0-17.7 14.3-32 32-32zM0 192H448V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V192zM305 305c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-47 47-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l47 47-47 47c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l47-47 47 47c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-47-47 47-47z\"]\n};\nvar faCalendarTimes = faCalendarXmark;\nvar faChildReaching = {\n prefix: 'fas',\n iconName: 'child-reaching',\n icon: [384, 512, [], \"e59d\", \"M256 64A64 64 0 1 0 128 64a64 64 0 1 0 128 0zM152.9 169.3c-23.7-8.4-44.5-24.3-58.8-45.8L74.6 94.2C64.8 79.5 45 75.6 30.2 85.4s-18.7 29.7-8.9 44.4L40.9 159c18.1 27.1 42.8 48.4 71.1 62.4V480c0 17.7 14.3 32 32 32s32-14.3 32-32V384h32v96c0 17.7 14.3 32 32 32s32-14.3 32-32V221.6c29.1-14.2 54.4-36.2 72.7-64.2l18.2-27.9c9.6-14.8 5.4-34.6-9.4-44.3s-34.6-5.5-44.3 9.4L291 122.4c-21.8 33.4-58.9 53.6-98.8 53.6c-12.6 0-24.9-2-36.6-5.8c-.9-.3-1.8-.7-2.7-.9z\"]\n};\nvar faHeadSideVirus = {\n prefix: 'fas',\n iconName: 'head-side-virus',\n icon: [512, 512, [], \"e064\", \"M0 224.2C0 100.6 100.2 0 224 0h24c95.2 0 181.2 69.3 197.3 160.2c2.3 13 6.8 25.7 15.1 36l42 52.6c6.2 7.8 9.6 17.4 9.6 27.4c0 24.2-19.6 43.8-43.8 43.8H448v64c0 35.3-28.7 64-64 64H320v32c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V407.3c0-16.7-6.9-32.5-17.1-45.8C16.6 322.4 0 274.1 0 224.2zM224 64c-8.8 0-16 7.2-16 16c0 33-39.9 49.5-63.2 26.2c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6C145.5 152.1 129 192 96 192c-8.8 0-16 7.2-16 16s7.2 16 16 16c33 0 49.5 39.9 26.2 63.2c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0C168.1 286.5 208 303 208 336c0 8.8 7.2 16 16 16s16-7.2 16-16c0-33 39.9-49.5 63.2-26.2c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6C302.5 263.9 319 224 352 224c8.8 0 16-7.2 16-16s-7.2-16-16-16c-33 0-49.5-39.9-26.2-63.2c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0C279.9 129.5 240 113 240 80c0-8.8-7.2-16-16-16zm-24 96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm40 80a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z\"]\n};\nvar faUserGear = {\n prefix: 'fas',\n iconName: 'user-gear',\n icon: [640, 512, [\"user-cog\"], \"f4fe\", \"M224 0a128 128 0 1 1 0 256A128 128 0 1 1 224 0zM178.3 304h91.4c11.8 0 23.4 1.2 34.5 3.3c-2.1 18.5 7.4 35.6 21.8 44.8c-16.6 10.6-26.7 31.6-20 53.3c4 12.9 9.4 25.5 16.4 37.6s15.2 23.1 24.4 33c15.7 16.9 39.6 18.4 57.2 8.7v.9c0 9.2 2.7 18.5 7.9 26.3H29.7C13.3 512 0 498.7 0 482.3C0 383.8 79.8 304 178.3 304zM436 218.2c0-7 4.5-13.3 11.3-14.8c10.5-2.4 21.5-3.7 32.7-3.7s22.2 1.3 32.7 3.7c6.8 1.5 11.3 7.8 11.3 14.8v17.7c0 7.8 4.8 14.8 11.6 18.7c6.8 3.9 15.1 4.5 21.8 .6l13.8-7.9c6.1-3.5 13.7-2.7 18.5 2.4c7.6 8.1 14.3 17.2 20.1 27.2s10.3 20.4 13.5 31c2.1 6.7-1.1 13.7-7.2 17.2l-14.4 8.3c-6.5 3.7-10 10.9-10 18.4s3.5 14.7 10 18.4l14.4 8.3c6.1 3.5 9.2 10.5 7.2 17.2c-3.3 10.6-7.8 21-13.5 31s-12.5 19.1-20.1 27.2c-4.8 5.1-12.5 5.9-18.5 2.4l-13.8-7.9c-6.7-3.9-15.1-3.3-21.8 .6c-6.8 3.9-11.6 10.9-11.6 18.7v17.7c0 7-4.5 13.3-11.3 14.8c-10.5 2.4-21.5 3.7-32.7 3.7s-22.2-1.3-32.7-3.7c-6.8-1.5-11.3-7.8-11.3-14.8V467.8c0-7.9-4.9-14.9-11.7-18.9c-6.8-3.9-15.2-4.5-22-.6l-13.5 7.8c-6.1 3.5-13.7 2.7-18.5-2.4c-7.6-8.1-14.3-17.2-20.1-27.2s-10.3-20.4-13.5-31c-2.1-6.7 1.1-13.7 7.2-17.2l14-8.1c6.5-3.8 10.1-11.1 10.1-18.6s-3.5-14.8-10.1-18.6l-14-8.1c-6.1-3.5-9.2-10.5-7.2-17.2c3.3-10.6 7.7-21 13.5-31s12.5-19.1 20.1-27.2c4.8-5.1 12.4-5.9 18.5-2.4l13.6 7.8c6.8 3.9 15.2 3.3 22-.6c6.9-3.9 11.7-11 11.7-18.9V218.2zm92.1 133.5a48.1 48.1 0 1 0 -96.1 0 48.1 48.1 0 1 0 96.1 0z\"]\n};\nvar faUserCog = faUserGear;\nvar faArrowUp19 = {\n prefix: 'fas',\n iconName: 'arrow-up-1-9',\n icon: [576, 512, [\"sort-numeric-up\"], \"f163\", \"M450.7 38c8.3 6 13.3 15.7 13.3 26v96h16c17.7 0 32 14.3 32 32s-14.3 32-32 32H432 384c-17.7 0-32-14.3-32-32s14.3-32 32-32h16V108.4l-5.9 2c-16.8 5.6-34.9-3.5-40.5-20.2s3.5-34.9 20.2-40.5l48-16c9.8-3.3 20.5-1.6 28.8 4.4zM160 32c9 0 17.5 3.8 23.6 10.4l88 96c11.9 13 11.1 33.3-2 45.2s-33.3 11.1-45.2-2L192 146.3V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V146.3L95.6 181.6c-11.9 13-32.2 13.9-45.2 2s-13.9-32.2-2-45.2l88-96C142.5 35.8 151 32 160 32zM445.7 364.9A32 32 0 1 0 418.3 307a32 32 0 1 0 27.4 57.9zm-40.7 54.9C369.6 408.4 344 375.2 344 336c0-48.6 39.4-88 88-88s88 39.4 88 88c0 23.5-7.5 46.3-21.5 65.2L449.7 467c-10.5 14.2-30.6 17.2-44.8 6.7s-17.2-30.6-6.7-44.8l6.8-9.2z\"]\n};\nvar faSortNumericUp = faArrowUp19;\nvar faDoorClosed = {\n prefix: 'fas',\n iconName: 'door-closed',\n icon: [576, 512, [128682], \"f52a\", \"M96 64c0-35.3 28.7-64 64-64H416c35.3 0 64 28.7 64 64V448h64c17.7 0 32 14.3 32 32s-14.3 32-32 32H432 144 32c-17.7 0-32-14.3-32-32s14.3-32 32-32H96V64zM384 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faShieldVirus = {\n prefix: 'fas',\n iconName: 'shield-virus',\n icon: [512, 512, [], \"e06c\", \"M269.4 2.9C265.2 1 260.7 0 256 0s-9.2 1-13.4 2.9L54.3 82.8c-22 9.3-38.4 31-38.3 57.2c.5 99.2 41.3 280.7 213.6 363.2c16.7 8 36.1 8 52.8 0C454.7 420.7 495.5 239.2 496 140c.1-26.2-16.3-47.9-38.3-57.2L269.4 2.9zM256 112c8.8 0 16 7.2 16 16c0 33 39.9 49.5 63.2 26.2c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6C334.5 200.1 351 240 384 240c8.8 0 16 7.2 16 16s-7.2 16-16 16c-33 0-49.5 39.9-26.2 63.2c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0C311.9 334.5 272 351 272 384c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-33-39.9-49.5-63.2-26.2c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6C177.5 311.9 161 272 128 272c-8.8 0-16-7.2-16-16s7.2-16 16-16c33 0 49.5-39.9 26.2-63.2c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0C200.1 177.5 240 161 240 128c0-8.8 7.2-16 16-16zM232 256a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm72 32a16 16 0 1 0 -32 0 16 16 0 1 0 32 0z\"]\n};\nvar faDiceSix = {\n prefix: 'fas',\n iconName: 'dice-six',\n icon: [448, 512, [9861], \"f526\", \"M0 96C0 60.7 28.7 32 64 32H384c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zm160 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM128 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm32 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM320 192a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm32 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM320 384a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faMosquitoNet = {\n prefix: 'fas',\n iconName: 'mosquito-net',\n icon: [640, 512, [], \"e52c\", \"M168.8 462.3c-7.9-4-11.1-13.6-7.2-21.5L192 380.2l0-44.2c0-4.2 1.7-8.3 4.7-11.3L256 265.4V242.2L139.2 344C87.8 395.3 0 358.9 0 286.3c0-41.1 30.6-75.8 71.4-80.9l159.9-23.9-49.6-41.3c-5.1-4.2-7-11.1-4.9-17.4l13.9-41.7-29-58.1c-4-7.9-.7-17.5 7.2-21.5s17.5-.7 21.5 7.2l32 64c1.9 3.8 2.2 8.2 .9 12.2l-12.5 37.6L256 160.5V137.9c0-14.9 10.1-27.3 23.8-31V63.7c0-4.5 3.7-8.2 8.2-8.2s8.2 3.7 8.2 8.2V107c13.7 3.6 23.8 16.1 23.8 31v22.6l45.4-37.8L352.8 85.1c-1.3-4-1-8.4 .9-12.2l32-64c4-7.9 13.6-11.1 21.5-7.2s11.1 13.6 7.2 21.5l-29 58.1 13.9 41.7c2.1 6.2 .1 13.1-4.9 17.4l-49.6 41.3 159.9 23.9c22.5 2.8 41.8 14.6 54.7 31.4c-2.7 2.6-5.2 5.4-7.3 8.6c-8.6-12.9-23.3-21.5-40-21.5s-31.4 8.5-40 21.5c-8.6-12.9-23.3-21.5-40-21.5c-21.7 0-40 14.3-45.9 34.1c-10.7 3.2-19.8 10.1-25.9 19.2l-40.2-35v23.1l32.4 32.4c-.3 2-.4 4.1-.4 6.2c0 16.7 8.5 31.4 21.5 40c-4 2.6-7.5 5.9-10.6 9.5L320 310.6v50c0 17.7-14.3 32-32 32s-32-14.3-32-32v-50l-32 32 0 41.4c0 2.5-.6 4.9-1.7 7.2l-32 64c-4 7.9-13.6 11.1-21.5 7.2zM512 256c8.8 0 16 7.2 16 16v16h48V272c0-8.8 7.2-16 16-16s16 7.2 16 16v16h16c8.8 0 16 7.2 16 16s-7.2 16-16 16H608v48h16c8.8 0 16 7.2 16 16s-7.2 16-16 16H608v48h16c8.8 0 16 7.2 16 16s-7.2 16-16 16H608v16c0 8.8-7.2 16-16 16s-16-7.2-16-16V480H528v16c0 8.8-7.2 16-16 16s-16-7.2-16-16V480H448v16c0 8.8-7.2 16-16 16s-16-7.2-16-16V480H400c-8.8 0-16-7.2-16-16s7.2-16 16-16h16V400H400c-8.8 0-16-7.2-16-16s7.2-16 16-16h16V320H400c-8.8 0-16-7.2-16-16s7.2-16 16-16h16V272c0-8.8 7.2-16 16-16s16 7.2 16 16v16h48V272c0-8.8 7.2-16 16-16zm16 112h48V320H528v48zm0 80h48V400H528v48zM448 320v48h48V320H448zm0 80v48h48V400H448z\"]\n};\nvar faBridgeWater = {\n prefix: 'fas',\n iconName: 'bridge-water',\n icon: [576, 512, [], \"e4ce\", \"M0 96C0 78.3 14.3 64 32 64H544c17.7 0 32 14.3 32 32v35.6c0 15.7-12.7 28.4-28.4 28.4c-37.3 0-67.6 30.2-67.6 67.6V352.5c-12.9 0-25.8 3.9-36.8 11.7c-18 12.4-40.1 20.3-59.2 20.3h0l0-.5V256c0-53-43-96-96-96s-96 43-96 96V384l0 .5c-19 0-41.2-7.9-59.1-20.3c-11.1-7.8-24-11.7-36.9-11.7V227.6C96 190.2 65.8 160 28.4 160C12.7 160 0 147.3 0 131.6V96zM306.5 389.9C329 405.4 356.5 416 384 416c26.9 0 55.4-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 469.7 417 480 384 480c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7l0 0C136.7 405.2 165.1 416 192 416c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z\"]\n};\nvar faPersonBooth = {\n prefix: 'fas',\n iconName: 'person-booth',\n icon: [576, 512, [], \"f756\", \"M256 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V192h64V32zm320 0c0-17.7-14.3-32-32-32s-32 14.3-32 32V480c0 17.7 14.3 32 32 32s32-14.3 32-32V32zM224 512c17.7 0 32-14.3 32-32V320H192V480c0 17.7 14.3 32 32 32zM320 0c-9.3 0-18.1 4-24.2 11s-8.8 16.3-7.5 25.5l31.2 218.6L288.6 409.7c-3.5 17.3 7.8 34.2 25.1 37.7s34.2-7.8 37.7-25.1l.7-3.6c1.3 16.4 15.1 29.4 31.9 29.4c17.7 0 32-14.3 32-32c0 17.7 14.3 32 32 32s32-14.3 32-32V32c0-17.7-14.3-32-32-32H320zM112 80A48 48 0 1 0 16 80a48 48 0 1 0 96 0zm0 261.3V269.3l4.7 4.7c9 9 21.2 14.1 33.9 14.1H224c17.7 0 32-14.3 32-32s-14.3-32-32-32H157.3l-41.6-41.6c-14.3-14.3-33.8-22.4-54-22.4C27.6 160 0 187.6 0 221.6v55.7l0 .9V480c0 17.7 14.3 32 32 32s32-14.3 32-32V384l32 42.7V480c0 17.7 14.3 32 32 32s32-14.3 32-32V421.3c0-10.4-3.4-20.5-9.6-28.8L112 341.3z\"]\n};\nvar faTextWidth = {\n prefix: 'fas',\n iconName: 'text-width',\n icon: [448, 512, [], \"f035\", \"M64 128V96H192l0 128H176c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H256l0-128H384v32c0 17.7 14.3 32 32 32s32-14.3 32-32V80c0-26.5-21.5-48-48-48H224 48C21.5 32 0 53.5 0 80v48c0 17.7 14.3 32 32 32s32-14.3 32-32zM9.4 361.4c-12.5 12.5-12.5 32.8 0 45.3l64 64c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6V416H320v32c0 12.9 7.8 24.6 19.8 29.6s25.7 2.2 34.9-6.9l64-64c12.5-12.5 12.5-32.8 0-45.3l-64-64c-9.2-9.2-22.9-11.9-34.9-6.9s-19.8 16.6-19.8 29.6v32H128V320c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9l-64 64z\"]\n};\nvar faHatWizard = {\n prefix: 'fas',\n iconName: 'hat-wizard',\n icon: [512, 512, [], \"f6e8\", \"M64 416L168.6 180.7c15.3-34.4 40.3-63.5 72-83.7l146.9-94c3-1.9 6.5-2.9 10-2.9C407.7 0 416 8.3 416 18.6v1.6c0 2.6-.5 5.1-1.4 7.5L354.8 176.9c-1.9 4.7-2.8 9.7-2.8 14.7c0 5.5 1.2 11 3.4 16.1L448 416H240.9l11.8-35.4 40.4-13.5c6.5-2.2 10.9-8.3 10.9-15.2s-4.4-13-10.9-15.2l-40.4-13.5-13.5-40.4C237 276.4 230.9 272 224 272s-13 4.4-15.2 10.9l-13.5 40.4-40.4 13.5C148.4 339 144 345.1 144 352s4.4 13 10.9 15.2l40.4 13.5L207.1 416H64zM279.6 141.5c-1.1-3.3-4.1-5.5-7.6-5.5s-6.5 2.2-7.6 5.5l-6.7 20.2-20.2 6.7c-3.3 1.1-5.5 4.1-5.5 7.6s2.2 6.5 5.5 7.6l20.2 6.7 6.7 20.2c1.1 3.3 4.1 5.5 7.6 5.5s6.5-2.2 7.6-5.5l6.7-20.2 20.2-6.7c3.3-1.1 5.5-4.1 5.5-7.6s-2.2-6.5-5.5-7.6l-20.2-6.7-6.7-20.2zM32 448H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faPenFancy = {\n prefix: 'fas',\n iconName: 'pen-fancy',\n icon: [512, 512, [128395, 10002], \"f5ac\", \"M373.5 27.1C388.5 9.9 410.2 0 433 0c43.6 0 79 35.4 79 79c0 22.8-9.9 44.6-27.1 59.6L277.7 319l-10.3-10.3-64-64L193 234.3 373.5 27.1zM170.3 256.9l10.4 10.4 64 64 10.4 10.4-19.2 83.4c-3.9 17.1-16.9 30.7-33.8 35.4L24.4 510.3l95.4-95.4c2.6 .7 5.4 1.1 8.3 1.1c17.7 0 32-14.3 32-32s-14.3-32-32-32s-32 14.3-32 32c0 2.9 .4 5.6 1.1 8.3L1.7 487.6 51.5 310c4.7-16.9 18.3-29.9 35.4-33.8l83.4-19.2z\"]\n};\nvar faPersonDigging = {\n prefix: 'fas',\n iconName: 'person-digging',\n icon: [576, 512, [\"digging\"], \"f85e\", \"M208 64a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM9.8 214.8c5.1-12.2 19.1-18 31.4-12.9L60.7 210l22.9-38.1C99.9 144.6 129.3 128 161 128c51.4 0 97 32.9 113.3 81.7l34.6 103.7 79.3 33.1 34.2-45.6c6.4-8.5 16.6-13.3 27.2-12.8s20.3 6.4 25.8 15.5l96 160c5.9 9.9 6.1 22.2 .4 32.2s-16.3 16.2-27.8 16.2H288c-11.1 0-21.4-5.7-27.2-15.2s-6.4-21.2-1.4-31.1l16-32c5.4-10.8 16.5-17.7 28.6-17.7h32l22.5-30L22.8 246.2c-12.2-5.1-18-19.1-12.9-31.4zm82.8 91.8l112 48c11.8 5 19.4 16.6 19.4 29.4v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V405.1l-60.6-26-37 111c-5.6 16.8-23.7 25.8-40.5 20.2S-3.9 486.6 1.6 469.9l48-144 11-33 32 13.7z\"]\n};\nvar faDigging = faPersonDigging;\nvar faTrash = {\n prefix: 'fas',\n iconName: 'trash',\n icon: [448, 512, [], \"f1f8\", \"M135.2 17.7L128 32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320l-7.2-14.3C307.4 6.8 296.3 0 284.2 0H163.8c-12.1 0-23.2 6.8-28.6 17.7zM416 128H32L53.2 467c1.6 25.3 22.6 45 47.9 45H346.9c25.3 0 46.3-19.7 47.9-45L416 128z\"]\n};\nvar faGaugeSimple = {\n prefix: 'fas',\n iconName: 'gauge-simple',\n icon: [512, 512, [\"gauge-simple-med\", \"tachometer-average\"], \"f629\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm320 96c0-26.9-16.5-49.9-40-59.3V88c0-13.3-10.7-24-24-24s-24 10.7-24 24V292.7c-23.5 9.5-40 32.5-40 59.3c0 35.3 28.7 64 64 64s64-28.7 64-64z\"]\n};\nvar faGaugeSimpleMed = faGaugeSimple;\nvar faTachometerAverage = faGaugeSimple;\nvar faBookMedical = {\n prefix: 'fas',\n iconName: 'book-medical',\n icon: [448, 512, [], \"f7e6\", \"M0 96C0 43 43 0 96 0H384h32c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32v64c17.7 0 32 14.3 32 32s-14.3 32-32 32H384 96c-53 0-96-43-96-96V96zM64 416c0 17.7 14.3 32 32 32H352V384H96c-17.7 0-32 14.3-32 32zM208 112v48H160c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V224h48c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H272V112c0-8.8-7.2-16-16-16H224c-8.8 0-16 7.2-16 16z\"]\n};\nvar faPoo = {\n prefix: 'fas',\n iconName: 'poo',\n icon: [512, 512, [128169], \"f2fe\", \"M268.9 .9c-5.5-.7-11 1.4-14.5 5.7s-4.6 10.1-2.8 15.4c2.8 8.2 4.3 16.9 4.3 26.1c0 44.1-35.7 79.9-79.8 80H160c-35.3 0-64 28.7-64 64c0 19.1 8.4 36.3 21.7 48H104c-39.8 0-72 32.2-72 72c0 23.2 11 43.8 28 57c-34.1 5.7-60 35.3-60 71c0 39.8 32.2 72 72 72H440c39.8 0 72-32.2 72-72c0-35.7-25.9-65.3-60-71c17-13.2 28-33.8 28-57c0-39.8-32.2-72-72-72H394.3c13.3-11.7 21.7-28.9 21.7-48c0-35.3-28.7-64-64-64h-5.5c3.5-10 5.5-20.8 5.5-32c0-48.6-36.2-88.8-83.1-95.1zM192 256a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm64 108.3c0 2.4-.7 4.8-2.2 6.7c-8.2 10.5-39.5 45-93.8 45s-85.6-34.6-93.8-45c-1.5-1.9-2.2-4.3-2.2-6.7c0-6.8 5.5-12.3 12.3-12.3H339.7c6.8 0 12.3 5.5 12.3 12.3z\"]\n};\nvar faQuoteRight = {\n prefix: 'fas',\n iconName: 'quote-right',\n icon: [448, 512, [8221, \"quote-right-alt\"], \"f10e\", \"M448 296c0 66.3-53.7 120-120 120h-8c-17.7 0-32-14.3-32-32s14.3-32 32-32h8c30.9 0 56-25.1 56-56v-8H320c-35.3 0-64-28.7-64-64V160c0-35.3 28.7-64 64-64h64c35.3 0 64 28.7 64 64v32 32 72zm-256 0c0 66.3-53.7 120-120 120H64c-17.7 0-32-14.3-32-32s14.3-32 32-32h8c30.9 0 56-25.1 56-56v-8H64c-35.3 0-64-28.7-64-64V160c0-35.3 28.7-64 64-64h64c35.3 0 64 28.7 64 64v32 32 72z\"]\n};\nvar faQuoteRightAlt = faQuoteRight;\nvar faShirt = {\n prefix: 'fas',\n iconName: 'shirt',\n icon: [640, 512, [128085, \"t-shirt\", \"tshirt\"], \"f553\", \"M211.8 0c7.8 0 14.3 5.7 16.7 13.2C240.8 51.9 277.1 80 320 80s79.2-28.1 91.5-66.8C413.9 5.7 420.4 0 428.2 0h12.6c22.5 0 44.2 7.9 61.5 22.3L628.5 127.4c6.6 5.5 10.7 13.5 11.4 22.1s-2.1 17.1-7.8 23.6l-56 64c-11.4 13.1-31.2 14.6-44.6 3.5L480 197.7V448c0 35.3-28.7 64-64 64H224c-35.3 0-64-28.7-64-64V197.7l-51.5 42.9c-13.3 11.1-33.1 9.6-44.6-3.5l-56-64c-5.7-6.5-8.5-15-7.8-23.6s4.8-16.6 11.4-22.1L137.7 22.3C155 7.9 176.7 0 199.2 0h12.6z\"]\n};\nvar faTShirt = faShirt;\nvar faTshirt = faShirt;\nvar faCubes = {\n prefix: 'fas',\n iconName: 'cubes',\n icon: [576, 512, [], \"f1b3\", \"M290.8 48.6l78.4 29.7L288 109.5 206.8 78.3l78.4-29.7c1.8-.7 3.8-.7 5.7 0zM136 92.5V204.7c-1.3 .4-2.6 .8-3.9 1.3l-96 36.4C14.4 250.6 0 271.5 0 294.7V413.9c0 22.2 13.1 42.3 33.5 51.3l96 42.2c14.4 6.3 30.7 6.3 45.1 0L288 457.5l113.5 49.9c14.4 6.3 30.7 6.3 45.1 0l96-42.2c20.3-8.9 33.5-29.1 33.5-51.3V294.7c0-23.3-14.4-44.1-36.1-52.4l-96-36.4c-1.3-.5-2.6-.9-3.9-1.3V92.5c0-23.3-14.4-44.1-36.1-52.4l-96-36.4c-12.8-4.8-26.9-4.8-39.7 0l-96 36.4C150.4 48.4 136 69.3 136 92.5zM392 210.6l-82.4 31.2V152.6L392 121v89.6zM154.8 250.9l78.4 29.7L152 311.7 70.8 280.6l78.4-29.7c1.8-.7 3.8-.7 5.7 0zm18.8 204.4V354.8L256 323.2v95.9l-82.4 36.2zM421.2 250.9c1.8-.7 3.8-.7 5.7 0l78.4 29.7L424 311.7l-81.2-31.1 78.4-29.7zM523.2 421.2l-77.6 34.1V354.8L528 323.2v90.7c0 3.2-1.9 6-4.8 7.3z\"]\n};\nvar faDivide = {\n prefix: 'fas',\n iconName: 'divide',\n icon: [448, 512, [10135, 247], \"f529\", \"M272 96a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm0 320a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM400 288c17.7 0 32-14.3 32-32s-14.3-32-32-32H48c-17.7 0-32 14.3-32 32s14.3 32 32 32H400z\"]\n};\nvar faTengeSign = {\n prefix: 'fas',\n iconName: 'tenge-sign',\n icon: [384, 512, [8376, \"tenge\"], \"f7d7\", \"M0 64C0 46.3 14.3 32 32 32H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64zM0 192c0-17.7 14.3-32 32-32H192 352c17.7 0 32 14.3 32 32s-14.3 32-32 32H224V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V224H32c-17.7 0-32-14.3-32-32z\"]\n};\nvar faTenge = faTengeSign;\nvar faHeadphones = {\n prefix: 'fas',\n iconName: 'headphones',\n icon: [512, 512, [127911], \"f025\", \"M256 80C149.9 80 62.4 159.4 49.6 262c9.4-3.8 19.6-6 30.4-6c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48c-44.2 0-80-35.8-80-80V384 336 288C0 146.6 114.6 32 256 32s256 114.6 256 256v48 48 16c0 44.2-35.8 80-80 80c-26.5 0-48-21.5-48-48V304c0-26.5 21.5-48 48-48c10.8 0 21 2.1 30.4 6C449.6 159.4 362.1 80 256 80z\"]\n};\nvar faHandsHolding = {\n prefix: 'fas',\n iconName: 'hands-holding',\n icon: [640, 512, [], \"f4c2\", \"M80 104c0-22.1-17.9-40-40-40S0 81.9 0 104v56 64V325.5c0 25.5 10.1 49.9 28.1 67.9L128 493.3c12 12 28.3 18.7 45.3 18.7H240c26.5 0 48-21.5 48-48V385.1c0-29.7-11.8-58.2-32.8-79.2l-25.3-25.3 0 0-15.2-15.2-32-32c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l32 32 15.2 15.2c11 11 9.2 29.2-3.7 37.8c-9.7 6.5-22.7 5.2-31-3.1L98.7 309.5c-12-12-18.7-28.3-18.7-45.3V224 144 104zm480 0v40 80 40.2c0 17-6.7 33.3-18.7 45.3l-51.1 51.1c-8.3 8.3-21.3 9.6-31 3.1c-12.9-8.6-14.7-26.9-3.7-37.8l15.2-15.2 32-32c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-32 32-15.2 15.2 0 0-25.3 25.3c-21 21-32.8 49.5-32.8 79.2V464c0 26.5 21.5 48 48 48h66.7c17 0 33.3-6.7 45.3-18.7l99.9-99.9c18-18 28.1-42.4 28.1-67.9V224 160 104c0-22.1-17.9-40-40-40s-40 17.9-40 40z\"]\n};\nvar faHandsClapping = {\n prefix: 'fas',\n iconName: 'hands-clapping',\n icon: [512, 512, [], \"e1a8\", \"M336 16V80c0 8.8-7.2 16-16 16s-16-7.2-16-16V16c0-8.8 7.2-16 16-16s16 7.2 16 16zm-98.7 7.1l32 48c4.9 7.4 2.9 17.3-4.4 22.2s-17.3 2.9-22.2-4.4l-32-48c-4.9-7.4-2.9-17.3 4.4-22.2s17.3-2.9 22.2 4.4zM135 119c9.4-9.4 24.6-9.4 33.9 0L292.7 242.7c10.1 10.1 27.3 2.9 27.3-11.3V192c0-17.7 14.3-32 32-32s32 14.3 32 32V345.6c0 57.1-30 110-78.9 139.4c-64 38.4-145.8 28.3-198.5-24.4L7 361c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l53 53c6.1 6.1 16 6.1 22.1 0s6.1-16 0-22.1L23 265c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l93 93c6.1 6.1 16 6.1 22.1 0s6.1-16 0-22.1L55 185c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l117 117c6.1 6.1 16 6.1 22.1 0s6.1-16 0-22.1l-93-93c-9.4-9.4-9.4-24.6 0-33.9zM433.1 484.9c-24.2 14.5-50.9 22.1-77.7 23.1c48.1-39.6 76.6-99 76.6-162.4l0-98.1c8.2-.1 16-6.4 16-16V192c0-17.7 14.3-32 32-32s32 14.3 32 32V345.6c0 57.1-30 110-78.9 139.4zM424.9 18.7c7.4 4.9 9.3 14.8 4.4 22.2l-32 48c-4.9 7.4-14.8 9.3-22.2 4.4s-9.3-14.8-4.4-22.2l32-48c4.9-7.4 14.8-9.3 22.2-4.4z\"]\n};\nvar faRepublican = {\n prefix: 'fas',\n iconName: 'republican',\n icon: [640, 512, [], \"f75e\", \"M0 192C0 103.6 71.6 32 160 32H384c88.4 0 160 71.6 160 160v64H0V192zm415.9-64c-2.4 0-4.7 1.3-5.7 3.4l-12.6 24.6-28.2 4c-2.4 .3-4.4 2-5.2 4.2s-.1 4.7 1.6 6.3l20.4 19.2-4.8 27.1c-.4 2.3 .6 4.7 2.5 6s4.6 1.6 6.7 .5l25.2-12.8 25.2 12.8c2.2 1.1 4.8 .9 6.7-.5s3-3.7 2.5-6l-4.8-27.1L466 170.5c1.7-1.6 2.4-4.1 1.6-6.3s-2.8-3.9-5.2-4.2l-28.2-4-12.6-24.6c-1.1-2.1-3.3-3.4-5.7-3.4zm-138.3 3.4c-1.1-2.1-3.3-3.4-5.7-3.4s-4.7 1.3-5.7 3.4l-12.6 24.6-28.2 4c-2.4 .3-4.4 2-5.2 4.2s-.1 4.7 1.6 6.3l20.4 19.2-4.8 27.1c-.4 2.3 .6 4.7 2.5 6s4.6 1.6 6.7 .5l25.2-12.8 25.2 12.8c2.2 1.1 4.8 .9 6.7-.5s3-3.7 2.5-6l-4.8-27.1L322 170.5c1.7-1.6 2.4-4.1 1.6-6.3s-2.8-3.9-5.2-4.2l-28.2-4-12.6-24.6zM127.9 128c-2.4 0-4.7 1.3-5.7 3.4l-12.6 24.6-28.2 4c-2.4 .3-4.4 2-5.2 4.2s-.1 4.7 1.6 6.3l20.4 19.2-4.8 27.1c-.4 2.3 .6 4.7 2.5 6s4.6 1.6 6.7 .5l25.2-12.8 25.2 12.8c2.2 1.1 4.8 .9 6.7-.5s3-3.7 2.5-6l-4.8-27.1L178 170.5c1.7-1.6 2.4-4.1 1.6-6.3s-2.8-3.9-5.2-4.2l-28.2-4-12.6-24.6c-1.1-2.1-3.3-3.4-5.7-3.4zm.1 160H320h96 32 64 32v32 80c0 8.8 7.2 16 16 16s16-7.2 16-16V352c0-17.7 14.3-32 32-32s32 14.3 32 32v48c0 44.2-35.8 80-80 80s-80-35.8-80-80V352H448v32 64c0 17.7-14.3 32-32 32H352c-17.7 0-32-14.3-32-32V384H128v64c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32V384 288H128z\"]\n};\nvar faArrowLeft = {\n prefix: 'fas',\n iconName: 'arrow-left',\n icon: [448, 512, [8592], \"f060\", \"M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.2 288 416 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-306.7 0L214.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z\"]\n};\nvar faPersonCircleXmark = {\n prefix: 'fas',\n iconName: 'person-circle-xmark',\n icon: [576, 512, [], \"e543\", \"M112 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V256.9L59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c17.4-28.9 48.6-46.6 82.3-46.6h29.7c33.7 0 64.9 17.7 82.3 46.6l44.9 74.7c-16.1 17.6-28.6 38.5-36.6 61.5c-1.9-1.8-3.5-3.9-4.9-6.3L232 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H152zM432 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm59.3 107.3c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0L432 345.4l-36.7-36.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L409.4 368l-36.7 36.7c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L432 390.6l36.7 36.7c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6L454.6 368l36.7-36.7z\"]\n};\nvar faRuler = {\n prefix: 'fas',\n iconName: 'ruler',\n icon: [512, 512, [128207], \"f545\", \"M177.9 494.1c-18.7 18.7-49.1 18.7-67.9 0L17.9 401.9c-18.7-18.7-18.7-49.1 0-67.9l50.7-50.7 48 48c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-48-48 41.4-41.4 48 48c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-48-48 41.4-41.4 48 48c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-48-48 41.4-41.4 48 48c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-48-48 50.7-50.7c18.7-18.7 49.1-18.7 67.9 0l92.1 92.1c18.7 18.7 18.7 49.1 0 67.9L177.9 494.1z\"]\n};\nvar faAlignLeft = {\n prefix: 'fas',\n iconName: 'align-left',\n icon: [448, 512, [], \"f036\", \"M288 64c0 17.7-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32H256c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H256c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z\"]\n};\nvar faDiceD6 = {\n prefix: 'fas',\n iconName: 'dice-d6',\n icon: [448, 512, [], \"f6d1\", \"M201 10.3c14.3-7.8 31.6-7.8 46 0L422.3 106c5.1 2.8 8.3 8.2 8.3 14s-3.2 11.2-8.3 14L231.7 238c-4.8 2.6-10.5 2.6-15.3 0L25.7 134c-5.1-2.8-8.3-8.2-8.3-14s3.2-11.2 8.3-14L201 10.3zM23.7 170l176 96c5.1 2.8 8.3 8.2 8.3 14V496c0 5.6-3 10.9-7.8 13.8s-10.9 3-15.8 .3L25 423.1C9.6 414.7 0 398.6 0 381V184c0-5.6 3-10.9 7.8-13.8s10.9-3 15.8-.3zm400.7 0c5-2.7 11-2.6 15.8 .3s7.8 8.1 7.8 13.8V381c0 17.6-9.6 33.7-25 42.1L263.7 510c-5 2.7-11 2.6-15.8-.3s-7.8-8.1-7.8-13.8V280c0-5.9 3.2-11.2 8.3-14l176-96z\"]\n};\nvar faRestroom = {\n prefix: 'fas',\n iconName: 'restroom',\n icon: [640, 512, [], \"f7bd\", \"M80 48a48 48 0 1 1 96 0A48 48 0 1 1 80 48zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V325.2c-8.1 9.2-21.1 13.2-33.5 9.4c-16.9-5.3-26.3-23.2-21-40.1l30.9-99.1C44.9 155.3 82 128 124 128h8c42 0 79.1 27.3 91.6 67.4l30.9 99.1c5.3 16.9-4.1 34.8-21 40.1c-12.4 3.9-25.4-.2-33.5-9.4V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H120zM320 0c13.3 0 24 10.7 24 24V488c0 13.3-10.7 24-24 24s-24-10.7-24-24V24c0-13.3 10.7-24 24-24zM464 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM440 480V384H422.2c-10.9 0-18.6-10.7-15.2-21.1l9-26.9c-3.2 0-6.4-.5-9.5-1.5c-16.9-5.3-26.3-23.2-21-40.1l29.7-95.2C428.4 156.9 467.6 128 512 128s83.6 28.9 96.8 71.2l29.7 95.2c5.3 16.9-4.1 34.8-21 40.1c-3.2 1-6.4 1.5-9.5 1.5l9 26.9c3.5 10.4-4.3 21.1-15.2 21.1H584v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384H504v96c0 17.7-14.3 32-32 32s-32-14.3-32-32z\"]\n};\nvar faJ = {\n prefix: 'fas',\n iconName: 'j',\n icon: [320, 512, [106], \"4a\", \"M288 32c17.7 0 32 14.3 32 32V320c0 88.4-71.6 160-160 160S0 408.4 0 320V288c0-17.7 14.3-32 32-32s32 14.3 32 32v32c0 53 43 96 96 96s96-43 96-96V64c0-17.7 14.3-32 32-32z\"]\n};\nvar faUsersViewfinder = {\n prefix: 'fas',\n iconName: 'users-viewfinder',\n icon: [640, 512, [], \"e595\", \"M48 48h88c13.3 0 24-10.7 24-24s-10.7-24-24-24H32C14.3 0 0 14.3 0 32V136c0 13.3 10.7 24 24 24s24-10.7 24-24V48zM175.8 224a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-26.5 32C119.9 256 96 279.9 96 309.3c0 14.7 11.9 26.7 26.7 26.7h56.1c8-34.1 32.8-61.7 65.2-73.6c-7.5-4.1-16.2-6.4-25.3-6.4H149.3zm368 80c14.7 0 26.7-11.9 26.7-26.7c0-29.5-23.9-53.3-53.3-53.3H421.3c-9.2 0-17.8 2.3-25.3 6.4c32.4 11.9 57.2 39.5 65.2 73.6h56.1zm-89.4 0c-8.6-24.3-29.9-42.6-55.9-47c-3.9-.7-7.9-1-12-1H280c-4.1 0-8.1 .3-12 1c-26 4.4-47.3 22.7-55.9 47c-2.7 7.5-4.1 15.6-4.1 24c0 13.3 10.7 24 24 24H408c13.3 0 24-10.7 24-24c0-8.4-1.4-16.5-4.1-24zM464 224a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-80-32a64 64 0 1 0 -128 0 64 64 0 1 0 128 0zM504 48h88v88c0 13.3 10.7 24 24 24s24-10.7 24-24V32c0-17.7-14.3-32-32-32H504c-13.3 0-24 10.7-24 24s10.7 24 24 24zM48 464V376c0-13.3-10.7-24-24-24s-24 10.7-24 24V480c0 17.7 14.3 32 32 32H136c13.3 0 24-10.7 24-24s-10.7-24-24-24H48zm456 0c-13.3 0-24 10.7-24 24s10.7 24 24 24H608c17.7 0 32-14.3 32-32V376c0-13.3-10.7-24-24-24s-24 10.7-24 24v88H504z\"]\n};\nvar faFileVideo = {\n prefix: 'fas',\n iconName: 'file-video',\n icon: [384, 512, [], \"f1c8\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM64 288c0-17.7 14.3-32 32-32h96c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V288zM300.9 397.9L256 368V304l44.9-29.9c2-1.3 4.4-2.1 6.8-2.1c6.8 0 12.3 5.5 12.3 12.3V387.7c0 6.8-5.5 12.3-12.3 12.3c-2.4 0-4.8-.7-6.8-2.1z\"]\n};\nvar faUpRightFromSquare = {\n prefix: 'fas',\n iconName: 'up-right-from-square',\n icon: [512, 512, [\"external-link-alt\"], \"f35d\", \"M352 0c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9L370.7 96 201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L416 141.3l41.4 41.4c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6V32c0-17.7-14.3-32-32-32H352zM80 32C35.8 32 0 67.8 0 112V432c0 44.2 35.8 80 80 80H400c44.2 0 80-35.8 80-80V320c0-17.7-14.3-32-32-32s-32 14.3-32 32V432c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H80z\"]\n};\nvar faExternalLinkAlt = faUpRightFromSquare;\nvar faTableCells = {\n prefix: 'fas',\n iconName: 'table-cells',\n icon: [512, 512, [\"th\"], \"f00a\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm88 64v64H64V96h88zm56 0h88v64H208V96zm240 0v64H360V96h88zM64 224h88v64H64V224zm232 0v64H208V224h88zm64 0h88v64H360V224zM152 352v64H64V352h88zm56 0h88v64H208V352zm240 0v64H360V352h88z\"]\n};\nvar faTh = faTableCells;\nvar faFilePdf = {\n prefix: 'fas',\n iconName: 'file-pdf',\n icon: [512, 512, [], \"f1c1\", \"M0 64C0 28.7 28.7 0 64 0L224 0l0 128c0 17.7 14.3 32 32 32l128 0 0 144-208 0c-35.3 0-64 28.7-64 64l0 144-48 0c-35.3 0-64-28.7-64-64L0 64zm384 64l-128 0L256 0 384 128zM176 352l32 0c30.9 0 56 25.1 56 56s-25.1 56-56 56l-16 0 0 32c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-48 0-80c0-8.8 7.2-16 16-16zm32 80c13.3 0 24-10.7 24-24s-10.7-24-24-24l-16 0 0 48 16 0zm96-80l32 0c26.5 0 48 21.5 48 48l0 64c0 26.5-21.5 48-48 48l-32 0c-8.8 0-16-7.2-16-16l0-128c0-8.8 7.2-16 16-16zm32 128c8.8 0 16-7.2 16-16l0-64c0-8.8-7.2-16-16-16l-16 0 0 96 16 0zm80-112c0-8.8 7.2-16 16-16l48 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-32 0 0 32 32 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-32 0 0 48c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-64 0-64z\"]\n};\nvar faBookBible = {\n prefix: 'fas',\n iconName: 'book-bible',\n icon: [448, 512, [\"bible\"], \"f647\", \"M96 0C43 0 0 43 0 96V416c0 53 43 96 96 96H384h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V384c17.7 0 32-14.3 32-32V32c0-17.7-14.3-32-32-32H384 96zm0 384H352v64H96c-17.7 0-32-14.3-32-32s14.3-32 32-32zM208 80c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v48h48c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272V304c0 8.8-7.2 16-16 16H224c-8.8 0-16-7.2-16-16V192H160c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16h48V80z\"]\n};\nvar faBible = faBookBible;\nvar faO = {\n prefix: 'fas',\n iconName: 'o',\n icon: [448, 512, [111], \"4f\", \"M224 96a160 160 0 1 0 0 320 160 160 0 1 0 0-320zM448 256A224 224 0 1 1 0 256a224 224 0 1 1 448 0z\"]\n};\nvar faSuitcaseMedical = {\n prefix: 'fas',\n iconName: 'suitcase-medical',\n icon: [512, 512, [\"medkit\"], \"f0fa\", \"M184 48H328c4.4 0 8 3.6 8 8V96H176V56c0-4.4 3.6-8 8-8zm-56 8V96v32V480H384V128 96 56c0-30.9-25.1-56-56-56H184c-30.9 0-56 25.1-56 56zM96 96H64C28.7 96 0 124.7 0 160V416c0 35.3 28.7 64 64 64H96V96zM416 480h32c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64H416V480zM224 208c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v48h48c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H288v48c0 8.8-7.2 16-16 16H240c-8.8 0-16-7.2-16-16V320H176c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h48V208z\"]\n};\nvar faMedkit = faSuitcaseMedical;\nvar faUserSecret = {\n prefix: 'fas',\n iconName: 'user-secret',\n icon: [448, 512, [128373], \"f21b\", \"M224 16c-6.7 0-10.8-2.8-15.5-6.1C201.9 5.4 194 0 176 0c-30.5 0-52 43.7-66 89.4C62.7 98.1 32 112.2 32 128c0 14.3 25 27.1 64.6 35.9c-.4 4-.6 8-.6 12.1c0 17 3.3 33.2 9.3 48H45.4C38 224 32 230 32 237.4c0 1.7 .3 3.4 1 5l38.8 96.9C28.2 371.8 0 423.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7c0-58.5-28.2-110.4-71.7-143L415 242.4c.6-1.6 1-3.3 1-5c0-7.4-6-13.4-13.4-13.4H342.7c6-14.8 9.3-31 9.3-48c0-4.1-.2-8.1-.6-12.1C391 155.1 416 142.3 416 128c0-15.8-30.7-29.9-78-38.6C324 43.7 302.5 0 272 0c-18 0-25.9 5.4-32.5 9.9c-4.8 3.3-8.8 6.1-15.5 6.1zm56 208H267.6c-16.5 0-31.1-10.6-36.3-26.2c-2.3-7-12.2-7-14.5 0c-5.2 15.6-19.9 26.2-36.3 26.2H168c-22.1 0-40-17.9-40-40V169.6c28.2 4.1 61 6.4 96 6.4s67.8-2.3 96-6.4V184c0 22.1-17.9 40-40 40zm-88 96l16 32L176 480 128 288l64 32zm128-32L272 480 240 352l16-32 64-32z\"]\n};\nvar faOtter = {\n prefix: 'fas',\n iconName: 'otter',\n icon: [640, 512, [129446], \"f700\", \"M181.5 197.1l12.9 6.4c5.9 3 12.4 4.5 19.1 4.5c23.5 0 42.6-19.1 42.6-42.6V144c0-35.3-28.7-64-64-64H128c-35.3 0-64 28.7-64 64v21.4c0 23.5 19.1 42.6 42.6 42.6c6.6 0 13.1-1.5 19.1-4.5l12.9-6.4 8.4-4.2L135.1 185c-4.5-3-7.1-8-7.1-13.3V168c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24v3.7c0 5.3-2.7 10.3-7.1 13.3l-11.8 7.9 8.4 4.2zm-8.6 49.4L160 240l-12.9 6.4c-12.6 6.3-26.5 9.6-40.5 9.6c-3.6 0-7.1-.2-10.6-.6v.6c0 35.3 28.7 64 64 64h64c17.7 0 32 14.3 32 32s-14.3 32-32 32H384V336 320c0-23.7 12.9-44.4 32-55.4c9.4-5.4 20.3-8.6 32-8.6V240c0-26.5 21.5-48 48-48c8.8 0 16 7.2 16 16v32 16 48c0 8.8 7.2 16 16 16s16-7.2 16-16V204.3c0-48.2-30.8-91-76.6-106.3l-8.5-2.8c-8-2.7-12.6-11.1-10.4-19.3s10.3-13.2 18.6-11.6l19.9 4C576 86.1 640 164.2 640 254.9l0 1.1h0c0 123.7-100.3 224-224 224h-1.1H256h-.6C132 480 32 380 32 256.6V256 216.8c-10.1-14.6-16-32.3-16-51.4V144l0-1.4C6.7 139.3 0 130.5 0 120c0-13.3 10.7-24 24-24h2.8C44.8 58.2 83.3 32 128 32h64c44.7 0 83.2 26.2 101.2 64H296c13.3 0 24 10.7 24 24c0 10.5-6.7 19.3-16 22.6l0 1.4v21.4c0 1.4 0 2.8-.1 4.3c12-6.2 25.7-9.6 40.1-9.6h8c17.7 0 32 14.3 32 32s-14.3 32-32 32h-8c-13.3 0-24 10.7-24 24v8h56.4c-15.2 17-24.4 39.4-24.4 64H320c-42.3 0-78.2-27.4-91-65.3c-5.1 .9-10.3 1.3-15.6 1.3c-14.1 0-27.9-3.3-40.5-9.6zM96 128a16 16 0 1 1 0 32 16 16 0 1 1 0-32zm112 16a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z\"]\n};\nvar faPersonDress = {\n prefix: 'fas',\n iconName: 'person-dress',\n icon: [320, 512, [\"female\"], \"f182\", \"M160 0a48 48 0 1 1 0 96 48 48 0 1 1 0-96zM88 384H70.2c-10.9 0-18.6-10.7-15.2-21.1L93.3 248.1 59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l53.6-89.2c20.3-33.7 56.7-54.3 96-54.3h11.6c39.3 0 75.7 20.6 96 54.3l53.6 89.2c9.1 15.1 4.2 34.8-10.9 43.9s-34.8 4.2-43.9-10.9l-33.9-56.3L265 362.9c3.5 10.4-4.3 21.1-15.2 21.1H232v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384H152v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384z\"]\n};\nvar faFemale = faPersonDress;\nvar faCommentDollar = {\n prefix: 'fas',\n iconName: 'comment-dollar',\n icon: [512, 512, [], \"f651\", \"M256 448c141.4 0 256-93.1 256-208S397.4 32 256 32S0 125.1 0 240c0 45.1 17.7 86.8 47.7 120.9c-1.9 24.5-11.4 46.3-21.4 62.9c-5.5 9.2-11.1 16.6-15.2 21.6c-2.1 2.5-3.7 4.4-4.9 5.7c-.6 .6-1 1.1-1.3 1.4l-.3 .3 0 0 0 0 0 0 0 0c-4.6 4.6-5.9 11.4-3.4 17.4c2.5 6 8.3 9.9 14.8 9.9c28.7 0 57.6-8.9 81.6-19.3c22.9-10 42.4-21.9 54.3-30.6c31.8 11.5 67 17.9 104.1 17.9zm20-312v13.9c7.5 1.2 14.6 2.9 21.1 4.7c10.7 2.8 17 13.8 14.2 24.5s-13.8 17-24.5 14.2c-11-2.9-21.6-5-31.2-5.2c-7.9-.1-16 1.8-21.5 5c-4.8 2.8-6.2 5.6-6.2 9.3c0 1.8 .1 3.5 5.3 6.7c6.3 3.8 15.5 6.7 28.3 10.5l.7 .2c11.2 3.4 25.6 7.7 37.1 15c12.9 8.1 24.3 21.3 24.6 41.6c.3 20.9-10.5 36.1-24.8 45c-7.2 4.5-15.2 7.3-23.2 9V344c0 11-9 20-20 20s-20-9-20-20V329.4c-10.3-2.2-20-5.5-28.2-8.4l0 0 0 0c-2.1-.7-4.1-1.4-6.1-2.1c-10.5-3.5-16.1-14.8-12.6-25.3s14.8-16.1 25.3-12.6c2.5 .8 4.9 1.7 7.2 2.4c13.6 4.6 24 8.1 35.1 8.5c8.6 .3 16.5-1.6 21.4-4.7c4.1-2.5 6-5.5 5.9-10.5c0-2.9-.8-5-5.9-8.2c-6.3-4-15.4-6.9-28-10.7l-1.7-.5c-10.9-3.3-24.6-7.4-35.6-14c-12.7-7.7-24.6-20.5-24.7-40.7c-.1-21.1 11.8-35.7 25.8-43.9c6.9-4.1 14.5-6.8 22.2-8.5V136c0-11 9-20 20-20s20 9 20 20z\"]\n};\nvar faBusinessTime = {\n prefix: 'fas',\n iconName: 'business-time',\n icon: [640, 512, [\"briefcase-clock\"], \"f64a\", \"M184 48H328c4.4 0 8 3.6 8 8V96H176V56c0-4.4 3.6-8 8-8zm-56 8V96H64C28.7 96 0 124.7 0 160v96H192 352h8.2c32.3-39.1 81.1-64 135.8-64c5.4 0 10.7 .2 16 .7V160c0-35.3-28.7-64-64-64H384V56c0-30.9-25.1-56-56-56H184c-30.9 0-56 25.1-56 56zM320 352H224c-17.7 0-32-14.3-32-32V288H0V416c0 35.3 28.7 64 64 64H360.2C335.1 449.6 320 410.5 320 368c0-5.4 .2-10.7 .7-16l-.7 0zm320 16a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zM496 288c8.8 0 16 7.2 16 16v48h32c8.8 0 16 7.2 16 16s-7.2 16-16 16H496c-8.8 0-16-7.2-16-16V304c0-8.8 7.2-16 16-16z\"]\n};\nvar faBriefcaseClock = faBusinessTime;\nvar faTableCellsLarge = {\n prefix: 'fas',\n iconName: 'table-cells-large',\n icon: [512, 512, [\"th-large\"], \"f009\", \"M448 96V224H288V96H448zm0 192V416H288V288H448zM224 224H64V96H224V224zM64 288H224V416H64V288zM64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z\"]\n};\nvar faThLarge = faTableCellsLarge;\nvar faBookTanakh = {\n prefix: 'fas',\n iconName: 'book-tanakh',\n icon: [448, 512, [\"tanakh\"], \"f827\", \"M352 0c53 0 96 43 96 96V416c0 53-43 96-96 96H64 32c-17.7 0-32-14.3-32-32s14.3-32 32-32V384c-17.7 0-32-14.3-32-32V32C0 14.3 14.3 0 32 0H64 352zm0 384H96v64H352c17.7 0 32-14.3 32-32s-14.3-32-32-32zM138.7 208l13.9 24H124.9l13.9-24zm-13.9-24L97.1 232c-6.2 10.7 1.5 24 13.9 24h55.4l27.7 48c6.2 10.7 21.6 10.7 27.7 0l27.7-48H305c12.3 0 20-13.3 13.9-24l-27.7-48 27.7-48c6.2-10.7-1.5-24-13.9-24H249.6L221.9 64c-6.2-10.7-21.6-10.7-27.7 0l-27.7 48H111c-12.3 0-20 13.3-13.9 24l27.7 48zm27.7 0l27.7-48h55.4l27.7 48-27.7 48H180.3l-27.7-48zm0-48l-13.9 24-13.9-24h27.7zm41.6-24L208 88l13.9 24H194.1zm69.3 24h27.7l-13.9 24-13.9-24zm13.9 72l13.9 24H263.4l13.9-24zm-55.4 48L208 280l-13.9-24h27.7z\"]\n};\nvar faTanakh = faBookTanakh;\nvar faPhoneVolume = {\n prefix: 'fas',\n iconName: 'phone-volume',\n icon: [512, 512, [\"volume-control-phone\"], \"f2a0\", \"M280 0C408.1 0 512 103.9 512 232c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-101.6-82.4-184-184-184c-13.3 0-24-10.7-24-24s10.7-24 24-24zm8 192a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm-32-72c0-13.3 10.7-24 24-24c75.1 0 136 60.9 136 136c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-48.6-39.4-88-88-88c-13.3 0-24-10.7-24-24zM117.5 1.4c19.4-5.3 39.7 4.6 47.4 23.2l40 96c6.8 16.3 2.1 35.2-11.6 46.3L144 207.3c33.3 70.4 90.3 127.4 160.7 160.7L345 318.7c11.2-13.7 30-18.4 46.3-11.6l96 40c18.6 7.7 28.5 28 23.2 47.4l-24 88C481.8 499.9 466 512 448 512C200.6 512 0 311.4 0 64C0 46 12.1 30.2 29.5 25.4l88-24z\"]\n};\nvar faVolumeControlPhone = faPhoneVolume;\nvar faHatCowboySide = {\n prefix: 'fas',\n iconName: 'hat-cowboy-side',\n icon: [640, 512, [], \"f8c1\", \"M152.7 135.9l-10.4 57.2c6.8-.7 13.6-1.1 20.5-1.1h10.7c39.4 0 77.8 12.1 110.1 34.7L562.4 421.8l35.1 24.6c24.4-6 42.5-28.1 42.5-54.4c0-75.8-94.7-126.6-134.6-144.7L474 83.9C468.2 53.8 441.8 32 411.1 32h-2.7c-5.6 0-11.1 .7-16.5 2.2L199.2 85.5c-23.9 6.4-42 26-46.5 50.4zM0 384c0 35.3 28.7 64 64 64H544L265.3 252.9c-26.9-18.8-58.9-28.9-91.8-28.9H162.9c-60.6 0-116 34.2-143.1 88.4L13.5 325C4.6 342.7 0 362.3 0 382.2V384z\"]\n};\nvar faClipboardUser = {\n prefix: 'fas',\n iconName: 'clipboard-user',\n icon: [384, 512, [], \"f7f3\", \"M192 0c-41.8 0-77.4 26.7-90.5 64H64C28.7 64 0 92.7 0 128V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H282.5C269.4 26.7 233.8 0 192 0zm0 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM128 256a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM80 432c0-44.2 35.8-80 80-80h64c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16H96c-8.8 0-16-7.2-16-16z\"]\n};\nvar faChild = {\n prefix: 'fas',\n iconName: 'child',\n icon: [320, 512, [], \"f1ae\", \"M96 64a64 64 0 1 1 128 0A64 64 0 1 1 96 64zm48 320v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V287.8L59.1 321c-9.4 15-29.2 19.4-44.1 10S-4.5 301.9 4.9 287l39.9-63.3C69.7 184 113.2 160 160 160s90.3 24 115.2 63.6L315.1 287c9.4 15 4.9 34.7-10 44.1s-34.7 4.9-44.1-10L240 287.8V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V384H144z\"]\n};\nvar faLiraSign = {\n prefix: 'fas',\n iconName: 'lira-sign',\n icon: [320, 512, [8356], \"f195\", \"M112 160.4c0-35.5 28.8-64.4 64.4-64.4c6.9 0 13.8 1.1 20.4 3.3l81.2 27.1c16.8 5.6 34.9-3.5 40.5-20.2s-3.5-34.9-20.2-40.5L217 38.6c-13.1-4.4-26.8-6.6-40.6-6.6C105.5 32 48 89.5 48 160.4V192H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H48v32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H46c-2.2 10.5-6.1 20.6-11.7 29.9L4.6 431.5c-5.9 9.9-6.1 22.2-.4 32.2S20.5 480 32 480H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H88.5l.7-1.1c11.6-19.3 18.9-40.7 21.6-62.9H224c17.7 0 32-14.3 32-32s-14.3-32-32-32H112V256H224c17.7 0 32-14.3 32-32s-14.3-32-32-32H112V160.4z\"]\n};\nvar faSatellite = {\n prefix: 'fas',\n iconName: 'satellite',\n icon: [512, 512, [128752], \"f7bf\", \"M233 7c-9.4-9.4-24.6-9.4-33.9 0l-96 96c-9.4 9.4-9.4 24.6 0 33.9l89.4 89.4-15.5 15.5C152.3 230.4 124.9 224 96 224c-31.7 0-61.5 7.7-87.8 21.2c-9 4.7-10.3 16.7-3.1 23.8L112.7 376.7 96.3 393.1c-2.6-.7-5.4-1.1-8.3-1.1c-17.7 0-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32c0-2.9-.4-5.6-1.1-8.3l16.4-16.4L242.9 506.9c7.2 7.2 19.2 5.9 23.8-3.1C280.3 477.5 288 447.7 288 416c0-28.9-6.4-56.3-17.8-80.9l15.5-15.5L375 409c9.4 9.4 24.6 9.4 33.9 0l96-96c9.4-9.4 9.4-24.6 0-33.9l-89.4-89.4 55-55c12.5-12.5 12.5-32.8 0-45.3l-48-48c-12.5-12.5-32.8-12.5-45.3 0l-55 55L233 7zm159 351l-72.4-72.4 62.1-62.1L454.1 296 392 358.1zM226.3 192.4L153.9 120 216 57.9l72.4 72.4-62.1 62.1z\"]\n};\nvar faPlaneLock = {\n prefix: 'fas',\n iconName: 'plane-lock',\n icon: [640, 512, [], \"e558\", \"M192 93.7C192 59.5 221 0 256 0c36 0 64 59.5 64 93.7v84.6l101.8 58.2C418 247.6 416 259.6 416 272v24.6c-17.9 10.4-30.3 29.1-31.8 50.9L320 329.1V400l57.6 43.2c4 3 6.4 7.8 6.4 12.8v24 18c0 7.8-6.3 14-14 14c-1.3 0-2.6-.2-3.9-.5L256 480 145.9 511.5c-1.3 .4-2.6 .5-3.9 .5c-7.8 0-14-6.3-14-14V456c0-5 2.4-9.8 6.4-12.8L192 400l0-70.9-171.6 49C10.2 381.1 0 373.4 0 362.8V297.3c0-5.7 3.1-11 8.1-13.9L192 178.3V93.7zM528 240c-17.7 0-32 14.3-32 32v48h64V272c0-17.7-14.3-32-32-32zm-80 32c0-44.2 35.8-80 80-80s80 35.8 80 80v48c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32H448c-17.7 0-32-14.3-32-32V352c0-17.7 14.3-32 32-32V272z\"]\n};\nvar faTag = {\n prefix: 'fas',\n iconName: 'tag',\n icon: [448, 512, [127991], \"f02b\", \"M0 80V229.5c0 17 6.7 33.3 18.7 45.3l176 176c25 25 65.5 25 90.5 0L418.7 317.3c25-25 25-65.5 0-90.5l-176-176c-12-12-28.3-18.7-45.3-18.7H48C21.5 32 0 53.5 0 80zm112 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faComment = {\n prefix: 'fas',\n iconName: 'comment',\n icon: [512, 512, [128489, 61669], \"f075\", \"M512 240c0 114.9-114.6 208-256 208c-37.1 0-72.3-6.4-104.1-17.9c-11.9 8.7-31.3 20.6-54.3 30.6C73.6 471.1 44.7 480 16 480c-6.5 0-12.3-3.9-14.8-9.9c-2.5-6-1.1-12.8 3.4-17.4l0 0 0 0 0 0 0 0 .3-.3c.3-.3 .7-.7 1.3-1.4c1.1-1.2 2.8-3.1 4.9-5.7c4.1-5 9.6-12.4 15.2-21.6c10-16.6 19.5-38.4 21.4-62.9C17.7 326.8 0 285.1 0 240C0 125.1 114.6 32 256 32s256 93.1 256 208z\"]\n};\nvar faCakeCandles = {\n prefix: 'fas',\n iconName: 'cake-candles',\n icon: [448, 512, [127874, \"birthday-cake\", \"cake\"], \"f1fd\", \"M86.4 5.5L61.8 47.6C58 54.1 56 61.6 56 69.2V72c0 22.1 17.9 40 40 40s40-17.9 40-40V69.2c0-7.6-2-15-5.8-21.6L105.6 5.5C103.6 2.1 100 0 96 0s-7.6 2.1-9.6 5.5zm128 0L189.8 47.6c-3.8 6.5-5.8 14-5.8 21.6V72c0 22.1 17.9 40 40 40s40-17.9 40-40V69.2c0-7.6-2-15-5.8-21.6L233.6 5.5C231.6 2.1 228 0 224 0s-7.6 2.1-9.6 5.5zM317.8 47.6c-3.8 6.5-5.8 14-5.8 21.6V72c0 22.1 17.9 40 40 40s40-17.9 40-40V69.2c0-7.6-2-15-5.8-21.6L361.6 5.5C359.6 2.1 356 0 352 0s-7.6 2.1-9.6 5.5L317.8 47.6zM128 176c0-17.7-14.3-32-32-32s-32 14.3-32 32v48c-35.3 0-64 28.7-64 64v71c8.3 5.2 18.1 9 28.8 9c13.5 0 27.2-6.1 38.4-13.4c5.4-3.5 9.9-7.1 13-9.7c1.5-1.3 2.7-2.4 3.5-3.1c.4-.4 .7-.6 .8-.8l.1-.1 0 0 0 0s0 0 0 0s0 0 0 0c3.1-3.2 7.4-4.9 11.9-4.8s8.6 2.1 11.6 5.4l0 0 0 0 .1 .1c.1 .1 .4 .4 .7 .7c.7 .7 1.7 1.7 3.1 3c2.8 2.6 6.8 6.1 11.8 9.5c10.2 7.1 23 13.1 36.3 13.1s26.1-6 36.3-13.1c5-3.5 9-6.9 11.8-9.5c1.4-1.3 2.4-2.3 3.1-3c.3-.3 .6-.6 .7-.7l.1-.1c3-3.5 7.4-5.4 12-5.4s9 2 12 5.4l.1 .1c.1 .1 .4 .4 .7 .7c.7 .7 1.7 1.7 3.1 3c2.8 2.6 6.8 6.1 11.8 9.5c10.2 7.1 23 13.1 36.3 13.1s26.1-6 36.3-13.1c5-3.5 9-6.9 11.8-9.5c1.4-1.3 2.4-2.3 3.1-3c.3-.3 .6-.6 .7-.7l.1-.1c2.9-3.4 7.1-5.3 11.6-5.4s8.7 1.6 11.9 4.8l0 0 0 0 0 0 .1 .1c.2 .2 .4 .4 .8 .8c.8 .7 1.9 1.8 3.5 3.1c3.1 2.6 7.5 6.2 13 9.7c11.2 7.3 24.9 13.4 38.4 13.4c10.7 0 20.5-3.9 28.8-9V288c0-35.3-28.7-64-64-64V176c0-17.7-14.3-32-32-32s-32 14.3-32 32v48H256V176c0-17.7-14.3-32-32-32s-32 14.3-32 32v48H128V176zM448 394.6c-8.5 3.3-18.2 5.4-28.8 5.4c-22.5 0-42.4-9.9-55.8-18.6c-4.1-2.7-7.8-5.4-10.9-7.8c-2.8 2.4-6.1 5-9.8 7.5C329.8 390 310.6 400 288 400s-41.8-10-54.6-18.9c-3.5-2.4-6.7-4.9-9.4-7.2c-2.7 2.3-5.9 4.7-9.4 7.2C201.8 390 182.6 400 160 400s-41.8-10-54.6-18.9c-3.7-2.6-7-5.2-9.8-7.5c-3.1 2.4-6.8 5.1-10.9 7.8C71.2 390.1 51.3 400 28.8 400c-10.6 0-20.3-2.2-28.8-5.4V480c0 17.7 14.3 32 32 32H416c17.7 0 32-14.3 32-32V394.6z\"]\n};\nvar faBirthdayCake = faCakeCandles;\nvar faCake = faCakeCandles;\nvar faEnvelope = {\n prefix: 'fas',\n iconName: 'envelope',\n icon: [512, 512, [128386, 9993, 61443], \"f0e0\", \"M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z\"]\n};\nvar faAnglesUp = {\n prefix: 'fas',\n iconName: 'angles-up',\n icon: [448, 512, [\"angle-double-up\"], \"f102\", \"M246.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L224 109.3 361.4 246.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160zm160 352l-160-160c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L224 301.3 361.4 438.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3z\"]\n};\nvar faAngleDoubleUp = faAnglesUp;\nvar faPaperclip = {\n prefix: 'fas',\n iconName: 'paperclip',\n icon: [448, 512, [128206], \"f0c6\", \"M364.2 83.8c-24.4-24.4-64-24.4-88.4 0l-184 184c-42.1 42.1-42.1 110.3 0 152.4s110.3 42.1 152.4 0l152-152c10.9-10.9 28.7-10.9 39.6 0s10.9 28.7 0 39.6l-152 152c-64 64-167.6 64-231.6 0s-64-167.6 0-231.6l184-184c46.3-46.3 121.3-46.3 167.6 0s46.3 121.3 0 167.6l-176 176c-28.6 28.6-75 28.6-103.6 0s-28.6-75 0-103.6l144-144c10.9-10.9 28.7-10.9 39.6 0s10.9 28.7 0 39.6l-144 144c-6.7 6.7-6.7 17.7 0 24.4s17.7 6.7 24.4 0l176-176c24.4-24.4 24.4-64 0-88.4z\"]\n};\nvar faArrowRightToCity = {\n prefix: 'fas',\n iconName: 'arrow-right-to-city',\n icon: [640, 512, [], \"e4b3\", \"M288 48c0-26.5 21.5-48 48-48h96c26.5 0 48 21.5 48 48V192h40V120c0-13.3 10.7-24 24-24s24 10.7 24 24v72h24c26.5 0 48 21.5 48 48V464c0 26.5-21.5 48-48 48H432 336c-26.5 0-48-21.5-48-48V48zm64 32v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H368c-8.8 0-16 7.2-16 16zm16 80c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H368zM352 272v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H368c-8.8 0-16 7.2-16 16zm176-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H528zM512 368v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16H528c-8.8 0-16 7.2-16 16zM166.6 153.4l80 80c12.5 12.5 12.5 32.8 0 45.3l-80 80c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L146.7 288H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H146.7l-25.4-25.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0z\"]\n};\nvar faRibbon = {\n prefix: 'fas',\n iconName: 'ribbon',\n icon: [448, 512, [127895], \"f4d6\", \"M333.2 322.8l0 0-133.9-146 0 0L146 118.6c7.8-5.1 37-22.6 78-22.6s70.2 17.4 78 22.6L245.7 180l85.6 93.4 27.4-29.8c16.3-17.7 25.3-40.9 25.3-65V149.1c0-19-5.6-37.5-16.1-53.3L327.8 35.6C312.9 13.4 287.9 0 261.2 0h-76c-25.8 0-50.1 12.5-65.1 33.5L81.9 87C70.3 103.2 64 122.8 64 142.8V164c0 23.2 8.4 45.6 23.6 63.1l56 64.2 0 0 83.3 95.6 0 0 91.8 105.3c10 11.5 26.8 14.3 40 6.8l54.5-31.1c17.8-10.2 21.6-34.3 7.7-49.4l-87.7-95.7zM205.2 410.6l-83.3-95.6L27.1 418.5c-13.9 15.1-10.1 39.2 7.7 49.4l55.1 31.5c13 7.4 29.3 4.9 39.4-6.1l75.9-82.6z\"]\n};\nvar faLungs = {\n prefix: 'fas',\n iconName: 'lungs',\n icon: [640, 512, [129729], \"f604\", \"M320 0c17.7 0 32 14.3 32 32V164.1c0 16.4 8.4 31.7 22.2 40.5l9.8 6.2V165.3C384 127 415 96 453.3 96c21.7 0 42.8 10.2 55.8 28.8c15.4 22.1 44.3 65.4 71 116.9c26.5 50.9 52.4 112.5 59.6 170.3c.2 1.3 .2 2.6 .2 4v7c0 49.1-39.8 89-89 89c-7.3 0-14.5-.9-21.6-2.7l-72.7-18.2C414 480.5 384 442.1 384 398V325l90.5 57.6c7.5 4.7 17.3 2.5 22.1-4.9s2.5-17.3-4.9-22.1L384 287.1v-.4l-44.1-28.1c-7.3-4.6-13.9-10.1-19.9-16.1c-5.9 6-12.6 11.5-19.9 16.1L256 286.7 161.2 347l-13.5 8.6c0 0 0 0-.1 0c-7.4 4.8-9.6 14.6-4.8 22.1c4.7 7.5 14.6 9.7 22.1 4.9l91.1-58V398c0 44.1-30 82.5-72.7 93.1l-72.7 18.2c-7.1 1.8-14.3 2.7-21.6 2.7c-49.1 0-89-39.8-89-89v-7c0-1.3 .1-2.7 .2-4c7.2-57.9 33.1-119.4 59.6-170.3c26.8-51.5 55.6-94.8 71-116.9c13-18.6 34-28.8 55.8-28.8C225 96 256 127 256 165.3v45.5l9.8-6.2c13.8-8.8 22.2-24.1 22.2-40.5V32c0-17.7 14.3-32 32-32z\"]\n};\nvar faArrowUp91 = {\n prefix: 'fas',\n iconName: 'arrow-up-9-1',\n icon: [576, 512, [\"sort-numeric-up-alt\"], \"f887\", \"M160 32c9 0 17.5 3.8 23.6 10.4l88 96c11.9 13 11.1 33.3-2 45.2s-33.3 11.1-45.2-2L192 146.3V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V146.3L95.6 181.6c-11.9 13-32.2 13.9-45.2 2s-13.9-32.2-2-45.2l88-96C142.5 35.8 151 32 160 32zM450.7 294c8.3 6 13.3 15.7 13.3 26v96h16c17.7 0 32 14.3 32 32s-14.3 32-32 32H432 384c-17.7 0-32-14.3-32-32s14.3-32 32-32h16V364.4l-5.9 2c-16.8 5.6-34.9-3.5-40.5-20.2s3.5-34.9 20.2-40.5l48-16c9.8-3.3 20.5-1.6 28.8 4.4zm-5-145.1A32 32 0 1 0 418.3 91a32 32 0 1 0 27.4 57.9zm-40.7 54.9C369.6 192.4 344 159.2 344 120c0-48.6 39.4-88 88-88s88 39.4 88 88c0 23.5-7.5 46.3-21.5 65.2L449.7 251c-10.5 14.2-30.6 17.2-44.8 6.7s-17.2-30.6-6.7-44.8l6.8-9.2z\"]\n};\nvar faSortNumericUpAlt = faArrowUp91;\nvar faLitecoinSign = {\n prefix: 'fas',\n iconName: 'litecoin-sign',\n icon: [384, 512, [], \"e1d3\", \"M128 64c0-17.7-14.3-32-32-32S64 46.3 64 64V213.6L23.2 225.2c-17 4.9-26.8 22.6-22 39.6s22.6 26.8 39.6 22L64 280.1V448c0 17.7 14.3 32 32 32H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H128V261.9l136.8-39.1c17-4.9 26.8-22.6 22-39.6s-22.6-26.8-39.6-22L128 195.3V64z\"]\n};\nvar faBorderNone = {\n prefix: 'fas',\n iconName: 'border-none',\n icon: [448, 512, [], \"f850\", \"M32 480a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm96-64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0-384a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0 256a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM320 416a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0-320a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm0 128a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM224 480a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm0-448a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0 256a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM416 416a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0-384a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM32 96a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM416 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM32 288a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm192 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm192 64a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM32 320a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM416 192a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM32 128a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm192 64a32 32 0 1 1 0-64 32 32 0 1 1 0 64z\"]\n};\nvar faCircleNodes = {\n prefix: 'fas',\n iconName: 'circle-nodes',\n icon: [512, 512, [], \"e4e2\", \"M418.4 157.9c35.3-8.3 61.6-40 61.6-77.9c0-44.2-35.8-80-80-80c-43.4 0-78.7 34.5-80 77.5L136.2 151.1C121.7 136.8 101.9 128 80 128c-44.2 0-80 35.8-80 80s35.8 80 80 80c12.2 0 23.8-2.7 34.1-7.6L259.7 407.8c-2.4 7.6-3.7 15.8-3.7 24.2c0 44.2 35.8 80 80 80s80-35.8 80-80c0-27.7-14-52.1-35.4-66.4l37.8-207.7zM156.3 232.2c2.2-6.9 3.5-14.2 3.7-21.7l183.8-73.5c3.6 3.5 7.4 6.7 11.6 9.5L317.6 354.1c-5.5 1.3-10.8 3.1-15.8 5.5L156.3 232.2z\"]\n};\nvar faParachuteBox = {\n prefix: 'fas',\n iconName: 'parachute-box',\n icon: [512, 512, [], \"f4cd\", \"M383.5 192c.3-5.3 .5-10.6 .5-16c0-51-15.9-96-40.2-127.6C319.5 16.9 288.2 0 256 0s-63.5 16.9-87.8 48.4C143.9 80 128 125 128 176c0 5.4 .2 10.7 .5 16H240V320H208c-7 0-13.7 1.5-19.7 4.2L68.2 192H96.5c-.3-5.3-.5-10.6-.5-16c0-64 22.2-121.2 57.1-159.3C62 49.3 18.6 122.6 4.2 173.6C1.5 183.1 9 192 18.9 192h6L165.2 346.3c-3.3 6.5-5.2 13.9-5.2 21.7v96c0 26.5 21.5 48 48 48h96c26.5 0 48-21.5 48-48V368c0-7.8-1.9-15.2-5.2-21.7L487.1 192h6c9.9 0 17.4-8.9 14.7-18.4C493.4 122.6 450 49.3 358.9 16.7C393.8 54.8 416 112.1 416 176c0 5.4-.2 10.7-.5 16h28.3L323.7 324.2c-6-2.7-12.7-4.2-19.7-4.2H272V192H383.5z\"]\n};\nvar faIndent = {\n prefix: 'fas',\n iconName: 'indent',\n icon: [448, 512, [], \"f03c\", \"M0 64C0 46.3 14.3 32 32 32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64zM192 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32zm32 96H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zM0 448c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM127.8 268.6L25.8 347.9C15.3 356.1 0 348.6 0 335.3V176.7c0-13.3 15.3-20.8 25.8-12.6l101.9 79.3c8.2 6.4 8.2 18.9 0 25.3z\"]\n};\nvar faTruckFieldUn = {\n prefix: 'fas',\n iconName: 'truck-field-un',\n icon: [640, 512, [], \"e58e\", \"M96 32C60.7 32 32 60.7 32 96v32c-17.7 0-32 14.3-32 32v96c0 17.7 14.3 32 32 32v32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64c0 53 43 96 96 96s96-43 96-96H384c0 53 43 96 96 96s96-43 96-96h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V288c0-35.3-28.7-64-64-64h-4.2c-.4-1.1-.9-2.1-1.3-3.2L485.7 102c-10.3-23.1-33.2-38-58.5-38H375.4C364.4 44.9 343.7 32 320 32H96zm288 96h43.2l42.7 96H384V128zM112 384a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm368-48a48 48 0 1 1 0 96 48 48 0 1 1 0-96zM253.3 135.1l34.7 52V144c0-8.8 7.2-16 16-16s16 7.2 16 16v96c0 7.1-4.6 13.3-11.4 15.3s-14-.6-17.9-6.4l-34.7-52V240c0 8.8-7.2 16-16 16s-16-7.2-16-16V144c0-7.1 4.6-13.3 11.4-15.3s14 .6 17.9 6.4zM128 144v64c0 8.8 7.2 16 16 16s16-7.2 16-16V144c0-8.8 7.2-16 16-16s16 7.2 16 16v64c0 26.5-21.5 48-48 48s-48-21.5-48-48V144c0-8.8 7.2-16 16-16s16 7.2 16 16z\"]\n};\nvar faHourglass = {\n prefix: 'fas',\n iconName: 'hourglass',\n icon: [384, 512, [9203, 62032, \"hourglass-empty\"], \"f254\", \"M0 32C0 14.3 14.3 0 32 0H64 320h32c17.7 0 32 14.3 32 32s-14.3 32-32 32V75c0 42.4-16.9 83.1-46.9 113.1L237.3 256l67.9 67.9c30 30 46.9 70.7 46.9 113.1v11c17.7 0 32 14.3 32 32s-14.3 32-32 32H320 64 32c-17.7 0-32-14.3-32-32s14.3-32 32-32V437c0-42.4 16.9-83.1 46.9-113.1L146.7 256 78.9 188.1C48.9 158.1 32 117.4 32 75V64C14.3 64 0 49.7 0 32zM96 64V75c0 25.5 10.1 49.9 28.1 67.9L192 210.7l67.9-67.9c18-18 28.1-42.4 28.1-67.9V64H96zm0 384H288V437c0-25.5-10.1-49.9-28.1-67.9L192 301.3l-67.9 67.9c-18 18-28.1 42.4-28.1 67.9v11z\"]\n};\nvar faHourglassEmpty = faHourglass;\nvar faMountain = {\n prefix: 'fas',\n iconName: 'mountain',\n icon: [512, 512, [127956], \"f6fc\", \"M256 32c12.5 0 24.1 6.4 30.8 17L503.4 394.4c5.6 8.9 8.6 19.2 8.6 29.7c0 30.9-25 55.9-55.9 55.9H55.9C25 480 0 455 0 424.1c0-10.5 3-20.8 8.6-29.7L225.2 49c6.6-10.6 18.3-17 30.8-17zm65 192L256 120.4 176.9 246.5l18.3 24.4c6.4 8.5 19.2 8.5 25.6 0l25.6-34.1c6-8.1 15.5-12.8 25.6-12.8h49z\"]\n};\nvar faUserDoctor = {\n prefix: 'fas',\n iconName: 'user-doctor',\n icon: [448, 512, [\"user-md\"], \"f0f0\", \"M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-96 55.2C54 332.9 0 401.3 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7c0-81-54-149.4-128-171.1V362c27.6 7.1 48 32.2 48 62v40c0 8.8-7.2 16-16 16H336c-8.8 0-16-7.2-16-16s7.2-16 16-16V424c0-17.7-14.3-32-32-32s-32 14.3-32 32v24c8.8 0 16 7.2 16 16s-7.2 16-16 16H256c-8.8 0-16-7.2-16-16V424c0-29.8 20.4-54.9 48-62V304.9c-6-.6-12.1-.9-18.3-.9H178.3c-6.2 0-12.3 .3-18.3 .9v65.4c23.1 6.9 40 28.3 40 53.7c0 30.9-25.1 56-56 56s-56-25.1-56-56c0-25.4 16.9-46.8 40-53.7V311.2zM144 448a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faUserMd = faUserDoctor;\nvar faCircleInfo = {\n prefix: 'fas',\n iconName: 'circle-info',\n icon: [512, 512, [\"info-circle\"], \"f05a\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336h24V272H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faInfoCircle = faCircleInfo;\nvar faCloudMeatball = {\n prefix: 'fas',\n iconName: 'cloud-meatball',\n icon: [512, 512, [], \"f73b\", \"M0 224c0 53 43 96 96 96h44.7c9.5-23.5 32.5-40 59.3-40c2 0 3.9 .1 5.8 .3C217.6 265.5 235.7 256 256 256s38.4 9.5 50.2 24.3c1.9-.2 3.9-.3 5.8-.3c26.9 0 49.9 16.5 59.3 40H416c53 0 96-43 96-96s-43-96-96-96c-.5 0-1.1 0-1.6 0c1.1-5.2 1.6-10.5 1.6-16c0-44.2-35.8-80-80-80c-24.3 0-46.1 10.9-60.8 28C256.5 24.3 219.1 0 176 0C114.1 0 64 50.1 64 112c0 7.1 .7 14.1 1.9 20.8C27.6 145.4 0 181.5 0 224zm288 96c0-17.7-14.3-32-32-32s-32 14.3-32 32c0 1 .1 2.1 .1 3.1c-.7-.8-1.4-1.6-2.1-2.3c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3c.7 .7 1.5 1.4 2.3 2.1c-1-.1-2.1-.1-3.1-.1c-17.7 0-32 14.3-32 32s14.3 32 32 32c1 0 2.1-.1 3.1-.1c-.8 .7-1.6 1.3-2.3 2.1c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0c.7-.7 1.4-1.5 2.1-2.3c-.1 1-.1 2.1-.1 3.1c0 17.7 14.3 32 32 32s32-14.3 32-32c0-1-.1-2.1-.1-3.1c.7 .8 1.3 1.6 2.1 2.3c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3c-.7-.7-1.5-1.4-2.3-2.1c1 .1 2.1 .1 3.1 .1c17.7 0 32-14.3 32-32s-14.3-32-32-32c-1 0-2.1 .1-3.1 .1c.8-.7 1.6-1.3 2.3-2.1c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-.7 .7-1.4 1.5-2.1 2.3c.1-1 .1-2.1 .1-3.1zM48 448a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm416 0a48 48 0 1 0 0-96 48 48 0 1 0 0 96z\"]\n};\nvar faCamera = {\n prefix: 'fas',\n iconName: 'camera',\n icon: [512, 512, [62258, \"camera-alt\"], \"f030\", \"M149.1 64.8L138.7 96H64C28.7 96 0 124.7 0 160V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64H373.3L362.9 64.8C356.4 45.2 338.1 32 317.4 32H194.6c-20.7 0-39 13.2-45.5 32.8zM256 192a96 96 0 1 1 0 192 96 96 0 1 1 0-192z\"]\n};\nvar faCameraAlt = faCamera;\nvar faSquareVirus = {\n prefix: 'fas',\n iconName: 'square-virus',\n icon: [448, 512, [], \"e578\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM223.8 93.7c13.3 0 24 10.7 24 24c0 29.3 35.4 43.9 56.1 23.2c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9c-20.7 20.7-6 56.1 23.2 56.1c13.3 0 24 10.7 24 24s-10.7 24-24 24c-29.3 0-43.9 35.4-23.2 56.1c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0c-20.7-20.7-56.1-6-56.1 23.2c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-29.3-35.4-43.9-56.1-23.2c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9c20.7-20.7 6-56.1-23.2-56.1c-13.3 0-24-10.7-24-24s10.7-24 24-24c29.3 0 43.9-35.4 23.2-56.1c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0c20.7 20.7 56.1 6 56.1-23.2c0-13.3 10.7-24 24-24zM192 256a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm88 32a24 24 0 1 0 -48 0 24 24 0 1 0 48 0z\"]\n};\nvar faMeteor = {\n prefix: 'fas',\n iconName: 'meteor',\n icon: [512, 512, [9732], \"f753\", \"M493.7 .9L299.4 75.6l2.3-29.3c1-12.8-12.8-21.5-24-15.1L101.3 133.4C38.6 169.7 0 236.6 0 309C0 421.1 90.9 512 203 512c72.4 0 139.4-38.6 175.7-101.3L480.8 234.3c6.5-11.1-2.2-25-15.1-24l-29.3 2.3L511.1 18.3c.6-1.5 .9-3.2 .9-4.8C512 6 506 0 498.5 0c-1.7 0-3.3 .3-4.8 .9zM192 192a128 128 0 1 1 0 256 128 128 0 1 1 0-256zm0 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm16 96a16 16 0 1 0 0-32 16 16 0 1 0 0 32z\"]\n};\nvar faCarOn = {\n prefix: 'fas',\n iconName: 'car-on',\n icon: [512, 512, [], \"e4dd\", \"M280 24c0-13.3-10.7-24-24-24s-24 10.7-24 24v80c0 13.3 10.7 24 24 24s24-10.7 24-24V24zM185.8 224H326.2c6.8 0 12.8 4.3 15.1 10.6L360.3 288H151.7l19.1-53.4c2.3-6.4 8.3-10.6 15.1-10.6zm-75.3-10.9L82.2 292.4C62.1 300.9 48 320.8 48 344v40 64 32c0 17.7 14.3 32 32 32H96c17.7 0 32-14.3 32-32V448H384v32c0 17.7 14.3 32 32 32h16c17.7 0 32-14.3 32-32V448 384 344c0-23.2-14.1-43.1-34.2-51.6l-28.3-79.3C390.1 181.3 360 160 326.2 160H185.8c-33.8 0-64 21.3-75.3 53.1zM128 344a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm232 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM39 39c-9.4 9.4-9.4 24.6 0 33.9l48 48c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L73 39c-9.4-9.4-24.6-9.4-33.9 0zm400 0L391 87c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l48-48c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0z\"]\n};\nvar faSleigh = {\n prefix: 'fas',\n iconName: 'sleigh',\n icon: [640, 512, [], \"f7cc\", \"M32 32C14.3 32 0 46.3 0 64S14.3 96 32 96V256c0 53 43 96 96 96v32h64V352H384v32h64V352c53 0 96-43 96-96V160c17.7 0 32-14.3 32-32s-14.3-32-32-32H512 480c-17.7 0-32 14.3-32 32v41.3c0 30.2-24.5 54.7-54.7 54.7c-75.5 0-145.6-38.9-185.6-102.9l-4.3-6.9C174.2 67.6 125 37.6 70.7 32.7c-2.2-.5-4.4-.7-6.7-.7H55 32zM640 384c0-17.7-14.3-32-32-32s-32 14.3-32 32v8c0 13.3-10.7 24-24 24H64c-17.7 0-32 14.3-32 32s14.3 32 32 32H552c48.6 0 88-39.4 88-88v-8z\"]\n};\nvar faArrowDown19 = {\n prefix: 'fas',\n iconName: 'arrow-down-1-9',\n icon: [576, 512, [\"sort-numeric-asc\", \"sort-numeric-down\"], \"f162\", \"M450.7 38c-8.3-6-19.1-7.7-28.8-4.4l-48 16c-16.8 5.6-25.8 23.7-20.2 40.5s23.7 25.8 40.5 20.2l5.9-2V160H384c-17.7 0-32 14.3-32 32s14.3 32 32 32h48 48c17.7 0 32-14.3 32-32s-14.3-32-32-32H464V64c0-10.3-4.9-19.9-13.3-26zM160 480c9 0 17.5-3.8 23.6-10.4l88-96c11.9-13 11.1-33.3-2-45.2s-33.3-11.1-45.2 2L192 365.7V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V365.7L95.6 330.4c-11.9-13-32.2-13.9-45.2-2s-13.9 32.2-2 45.2l88 96C142.5 476.2 151 480 160 480zM418.3 307a32 32 0 1 1 27.4 57.9A32 32 0 1 1 418.3 307zM405.1 419.8l-6.8 9.2c-10.5 14.2-7.5 34.2 6.7 44.8s34.2 7.5 44.8-6.7l48.8-65.8c14-18.9 21.5-41.7 21.5-65.2c0-48.6-39.4-88-88-88s-88 39.4-88 88c0 39.2 25.6 72.4 61.1 83.8z\"]\n};\nvar faSortNumericAsc = faArrowDown19;\nvar faSortNumericDown = faArrowDown19;\nvar faHandHoldingDroplet = {\n prefix: 'fas',\n iconName: 'hand-holding-droplet',\n icon: [576, 512, [\"hand-holding-water\"], \"f4c1\", \"M275.5 6.6C278.3 2.5 283 0 288 0s9.7 2.5 12.5 6.6L366.8 103C378 119.3 384 138.6 384 158.3V160c0 53-43 96-96 96s-96-43-96-96v-1.7c0-19.8 6-39 17.2-55.3L275.5 6.6zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 384l0 0-.9 0c.3 0 .6 0 .9 0z\"]\n};\nvar faHandHoldingWater = faHandHoldingDroplet;\nvar faWater = {\n prefix: 'fas',\n iconName: 'water',\n icon: [576, 512, [], \"f773\", \"M269.5 69.9c11.1-7.9 25.9-7.9 37 0C329 85.4 356.5 96 384 96c26.9 0 55.4-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 149.7 417 160 384 160c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4C42.8 92.6 61 83.5 75.3 71.6c11.1-9.5 27.3-10.1 39.2-1.7l0 0C136.7 85.2 165.1 96 192 96c27.5 0 55-10.6 77.5-26.1zm37 288C329 373.4 356.5 384 384 384c26.9 0 55.4-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 437.7 417 448 384 448c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7l0 0C136.7 373.2 165.1 384 192 384c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0zm0-144C329 229.4 356.5 240 384 240c26.9 0 55.4-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 293.7 417 304 384 304c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.5 27.3-10.1 39.2-1.7l0 0C136.7 229.2 165.1 240 192 240c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z\"]\n};\nvar faCalendarCheck = {\n prefix: 'fas',\n iconName: 'calendar-check',\n icon: [448, 512, [], \"f274\", \"M128 0c17.7 0 32 14.3 32 32V64H288V32c0-17.7 14.3-32 32-32s32 14.3 32 32V64h48c26.5 0 48 21.5 48 48v48H0V112C0 85.5 21.5 64 48 64H96V32c0-17.7 14.3-32 32-32zM0 192H448V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V192zM329 305c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-95 95-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0L329 305z\"]\n};\nvar faBraille = {\n prefix: 'fas',\n iconName: 'braille',\n icon: [640, 512, [], \"f2a1\", \"M0 96a64 64 0 1 1 128 0A64 64 0 1 1 0 96zM224 272a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm0-80a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM80 416a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zM0 416a64 64 0 1 1 128 0A64 64 0 1 1 0 416zm240 0a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm-80 0a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM64 192a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM224 32a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM352 96a64 64 0 1 1 128 0A64 64 0 1 1 352 96zm240 0a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm-80 0a64 64 0 1 1 128 0A64 64 0 1 1 512 96zm64 176a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm0-80a64 64 0 1 1 0 128 64 64 0 1 1 0-128zm16 224a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm-80 0a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM416 272a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm0-80a64 64 0 1 1 0 128 64 64 0 1 1 0-128zm16 224a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm-80 0a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z\"]\n};\nvar faPrescriptionBottleMedical = {\n prefix: 'fas',\n iconName: 'prescription-bottle-medical',\n icon: [384, 512, [\"prescription-bottle-alt\"], \"f486\", \"M0 32C0 14.3 14.3 0 32 0H352c17.7 0 32 14.3 32 32V64c0 17.7-14.3 32-32 32H32C14.3 96 0 81.7 0 64V32zm32 96H352V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V128zM160 240v48H112c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V352h48c8.8 0 16-7.2 16-16V304c0-8.8-7.2-16-16-16H224V240c0-8.8-7.2-16-16-16H176c-8.8 0-16 7.2-16 16z\"]\n};\nvar faPrescriptionBottleAlt = faPrescriptionBottleMedical;\nvar faLandmark = {\n prefix: 'fas',\n iconName: 'landmark',\n icon: [512, 512, [127963], \"f66f\", \"M240.1 4.2c9.8-5.6 21.9-5.6 31.8 0l171.8 98.1L448 104l0 .9 47.9 27.4c12.6 7.2 18.8 22 15.1 36s-16.4 23.8-30.9 23.8H32c-14.5 0-27.2-9.8-30.9-23.8s2.5-28.8 15.1-36L64 104.9V104l4.4-1.6L240.1 4.2zM64 224h64V416h40V224h64V416h48V224h64V416h40V224h64V420.3c.6 .3 1.2 .7 1.8 1.1l48 32c11.7 7.8 17 22.4 12.9 35.9S494.1 512 480 512H32c-14.1 0-26.5-9.2-30.6-22.7s1.1-28.1 12.9-35.9l48-32c.6-.4 1.2-.7 1.8-1.1V224z\"]\n};\nvar faTruck = {\n prefix: 'fas',\n iconName: 'truck',\n icon: [640, 512, [128666, 9951], \"f0d1\", \"M48 0C21.5 0 0 21.5 0 48V368c0 26.5 21.5 48 48 48H64c0 53 43 96 96 96s96-43 96-96H384c0 53 43 96 96 96s96-43 96-96h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V288 256 237.3c0-17-6.7-33.3-18.7-45.3L512 114.7c-12-12-28.3-18.7-45.3-18.7H416V48c0-26.5-21.5-48-48-48H48zM416 160h50.7L544 237.3V256H416V160zM112 416a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm368-48a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faCrosshairs = {\n prefix: 'fas',\n iconName: 'crosshairs',\n icon: [512, 512, [], \"f05b\", \"M256 0c17.7 0 32 14.3 32 32V42.4c93.7 13.9 167.7 88 181.6 181.6H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H469.6c-13.9 93.7-88 167.7-181.6 181.6V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V469.6C130.3 455.7 56.3 381.7 42.4 288H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H42.4C56.3 130.3 130.3 56.3 224 42.4V32c0-17.7 14.3-32 32-32zM107.4 288c12.5 58.3 58.4 104.1 116.6 116.6V384c0-17.7 14.3-32 32-32s32 14.3 32 32v20.6c58.3-12.5 104.1-58.4 116.6-116.6H384c-17.7 0-32-14.3-32-32s14.3-32 32-32h20.6C392.1 165.7 346.3 119.9 288 107.4V128c0 17.7-14.3 32-32 32s-32-14.3-32-32V107.4C165.7 119.9 119.9 165.7 107.4 224H128c17.7 0 32 14.3 32 32s-14.3 32-32 32H107.4zM256 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faPersonCane = {\n prefix: 'fas',\n iconName: 'person-cane',\n icon: [448, 512, [], \"e53c\", \"M272 48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm-8 187.3l47.4 57.1c11.3 13.6 31.5 15.5 45.1 4.2s15.5-31.5 4.2-45.1l-73.7-88.9c-18.2-22-45.3-34.7-73.9-34.7H177.1c-33.7 0-64.9 17.7-82.3 46.6l-58.3 97c-9.1 15.1-4.2 34.8 10.9 43.9s34.8 4.2 43.9-10.9L120 256.9V480c0 17.7 14.3 32 32 32s32-14.3 32-32V352h16V480c0 17.7 14.3 32 32 32s32-14.3 32-32V235.3zM352 376c0-4.4 3.6-8 8-8s8 3.6 8 8V488c0 13.3 10.7 24 24 24s24-10.7 24-24V376c0-30.9-25.1-56-56-56s-56 25.1-56 56v8c0 13.3 10.7 24 24 24s24-10.7 24-24v-8z\"]\n};\nvar faTent = {\n prefix: 'fas',\n iconName: 'tent',\n icon: [576, 512, [], \"e57d\", \"M269.4 6C280.5-2 295.5-2 306.6 6l224 160c7.4 5.3 12.2 13.5 13.2 22.5l32 288c1 9-1.9 18.1-8 24.9s-14.7 10.7-23.8 10.7H464 435.8c-12.1 0-23.2-6.8-28.6-17.7L306.7 293.5c-1.7-3.4-5.1-5.5-8.8-5.5c-5.5 0-9.9 4.4-9.9 9.9V480c0 17.7-14.3 32-32 32H240 32c-9.1 0-17.8-3.9-23.8-10.7s-9-15.8-8-24.9l32-288c1-9 5.8-17.2 13.2-22.5L269.4 6z\"]\n};\nvar faVestPatches = {\n prefix: 'fas',\n iconName: 'vest-patches',\n icon: [448, 512, [], \"e086\", \"M151.2 69.7l55.9 167.7-11 33.1c-2.7 8.2-4.1 16.7-4.1 25.3V464c0 14.5 3.9 28.2 10.7 39.9C195 509 185.9 512 176 512H48c-26.5 0-48-21.5-48-48V270.5c0-9.5 2.8-18.7 8.1-26.6l47.9-71.8c5.3-7.9 8.1-17.1 8.1-26.6V128 54.3 48C64 21.5 85.5 0 112 0h4.5c.2 0 .4 0 .6 0c.4 0 .8 0 1.2 0c18.8 0 34.1 9.7 44.1 18.8C171.6 27.2 190.8 40 224 40s52.4-12.8 61.7-21.2C295.7 9.7 311 0 329.7 0c.4 0 .8 0 1.2 0c.2 0 .4 0 .6 0H336c26.5 0 48 21.5 48 48v6.3V128v17.5c0 9.5 2.8 18.7 8.1 26.6l47.9 71.8c5.3 7.9 8.1 17.1 8.1 26.6V464c0 26.5-21.5 48-48 48H272c-26.5 0-48-21.5-48-48V295.8c0-5.2 .8-10.3 2.5-15.2L296.8 69.7C279.4 79.7 255.4 88 224 88s-55.4-8.3-72.8-18.3zM96 456a40 40 0 1 0 0-80 40 40 0 1 0 0 80zM63.5 255.5c-4.7 4.7-4.7 12.3 0 17L79 288 63.5 303.5c-4.7 4.7-4.7 12.3 0 17s12.3 4.7 17 0L96 305l15.5 15.5c4.7 4.7 12.3 4.7 17 0s4.7-12.3 0-17L113 288l15.5-15.5c4.7-4.7 4.7-12.3 0-17s-12.3-4.7-17 0L96 271 80.5 255.5c-4.7-4.7-12.3-4.7-17 0zM304 280v8 32c0 8.8 7.2 16 16 16h32 8c13.3 0 24-10.7 24-24s-10.7-24-24-24h-8v-8c0-13.3-10.7-24-24-24s-24 10.7-24 24z\"]\n};\nvar faCheckDouble = {\n prefix: 'fas',\n iconName: 'check-double',\n icon: [448, 512, [], \"f560\", \"M342.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 178.7l-57.4-57.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l80 80c12.5 12.5 32.8 12.5 45.3 0l160-160zm96 128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 402.7 54.6 297.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l256-256z\"]\n};\nvar faArrowDownAZ = {\n prefix: 'fas',\n iconName: 'arrow-down-a-z',\n icon: [576, 512, [\"sort-alpha-asc\", \"sort-alpha-down\"], \"f15d\", \"M183.6 469.6C177.5 476.2 169 480 160 480s-17.5-3.8-23.6-10.4l-88-96c-11.9-13-11.1-33.3 2-45.2s33.3-11.1 45.2 2L128 365.7V64c0-17.7 14.3-32 32-32s32 14.3 32 32V365.7l32.4-35.4c11.9-13 32.2-13.9 45.2-2s13.9 32.2 2 45.2l-88 96zM320 320c0-17.7 14.3-32 32-32H480c12.9 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9L429.3 416H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H352c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9L402.7 352H352c-17.7 0-32-14.3-32-32zM416 32c12.1 0 23.2 6.8 28.6 17.7l64 128 16 32c7.9 15.8 1.5 35-14.3 42.9s-35 1.5-42.9-14.3L460.2 224H371.8l-7.2 14.3c-7.9 15.8-27.1 22.2-42.9 14.3s-22.2-27.1-14.3-42.9l16-32 64-128C392.8 38.8 403.9 32 416 32zM395.8 176h40.4L416 135.6 395.8 176z\"]\n};\nvar faSortAlphaAsc = faArrowDownAZ;\nvar faSortAlphaDown = faArrowDownAZ;\nvar faMoneyBillWheat = {\n prefix: 'fas',\n iconName: 'money-bill-wheat',\n icon: [512, 512, [], \"e52a\", \"M176 0c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16c-44.2 0-80-35.8-80-80c0-8.8 7.2-16 16-16zM56 16h48c13.3 0 24 10.7 24 24s-10.7 24-24 24H56C42.7 64 32 53.3 32 40s10.7-24 24-24zM24 88H136c13.3 0 24 10.7 24 24s-10.7 24-24 24H24c-13.3 0-24-10.7-24-24S10.7 88 24 88zm8 96c0-13.3 10.7-24 24-24h48c13.3 0 24 10.7 24 24s-10.7 24-24 24H56c-13.3 0-24-10.7-24-24zM272 16c0-8.8 7.2-16 16-16c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16c-44.2 0-80-35.8-80-80zM400 0c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16c-44.2 0-80-35.8-80-80c0-8.8 7.2-16 16-16zm80 144c0 44.2-35.8 80-80 80c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80c8.8 0 16 7.2 16 16zM352 128c8.8 0 16 7.2 16 16c0 44.2-35.8 80-80 80c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80zm-96 16c0 44.2-35.8 80-80 80c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80c8.8 0 16 7.2 16 16zM0 304c0-26.5 21.5-48 48-48H464c26.5 0 48 21.5 48 48V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V304zM48 416v48H96c0-26.5-21.5-48-48-48zM96 304H48v48c26.5 0 48-21.5 48-48zM464 416c-26.5 0-48 21.5-48 48h48V416zM416 304c0 26.5 21.5 48 48 48V304H416zm-96 80a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"]\n};\nvar faCookie = {\n prefix: 'fas',\n iconName: 'cookie',\n icon: [512, 512, [127850], \"f563\", \"M247.2 17c-22.1-3.1-44.6 .9-64.4 11.4l-74 39.5C89.1 78.4 73.2 94.9 63.4 115L26.7 190.6c-9.8 20.1-13 42.9-9.1 64.9l14.5 82.8c3.9 22.1 14.6 42.3 30.7 57.9l60.3 58.4c16.1 15.6 36.6 25.6 58.7 28.7l83 11.7c22.1 3.1 44.6-.9 64.4-11.4l74-39.5c19.7-10.5 35.6-27 45.4-47.2l36.7-75.5c9.8-20.1 13-42.9 9.1-64.9l-14.6-82.8c-3.9-22.1-14.6-42.3-30.7-57.9L388.9 57.5c-16.1-15.6-36.6-25.6-58.7-28.7L247.2 17zM208 144a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM144 336a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm224-64a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faArrowRotateLeft = {\n prefix: 'fas',\n iconName: 'arrow-rotate-left',\n icon: [512, 512, [8634, \"arrow-left-rotate\", \"arrow-rotate-back\", \"arrow-rotate-backward\", \"undo\"], \"f0e2\", \"M125.7 160H176c17.7 0 32 14.3 32 32s-14.3 32-32 32H48c-17.7 0-32-14.3-32-32V64c0-17.7 14.3-32 32-32s32 14.3 32 32v51.2L97.6 97.6c87.5-87.5 229.3-87.5 316.8 0s87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3s-163.8-62.5-226.3 0L125.7 160z\"]\n};\nvar faArrowLeftRotate = faArrowRotateLeft;\nvar faArrowRotateBack = faArrowRotateLeft;\nvar faArrowRotateBackward = faArrowRotateLeft;\nvar faUndo = faArrowRotateLeft;\nvar faHardDrive = {\n prefix: 'fas',\n iconName: 'hard-drive',\n icon: [512, 512, [128436, \"hdd\"], \"f0a0\", \"M0 96C0 60.7 28.7 32 64 32H448c35.3 0 64 28.7 64 64V280.4c-17-15.2-39.4-24.4-64-24.4H64c-24.6 0-47 9.2-64 24.4V96zM64 288H448c35.3 0 64 28.7 64 64v64c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V352c0-35.3 28.7-64 64-64zM320 416a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm128-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"]\n};\nvar faHdd = faHardDrive;\nvar faFaceGrinSquintTears = {\n prefix: 'fas',\n iconName: 'face-grin-squint-tears',\n icon: [512, 512, [129315, \"grin-squint-tears\"], \"f586\", \"M426.8 14.2C446-5 477.5-4.6 497.1 14.9s20 51 .7 70.3c-6.8 6.8-21.4 12.4-37.4 16.7c-16.3 4.4-34.1 7.5-46.3 9.3c-1.6 .2-3.1 .5-4.6 .6c-5.6 .9-10.3-3.9-9.5-9.5c1.6-11.2 4.6-29.6 9-47c.3-1.3 .7-2.6 1-3.9c4.3-15.9 9.8-30.5 16.7-37.4zm-44.7 19c-1.5 4.8-2.9 9.6-4.1 14.3c-4.8 18.9-8 38.5-9.7 50.3c-4 26.8 18.9 49.7 45.7 45.8c11.9-1.6 31.5-4.8 50.4-9.7c4.7-1.2 9.5-2.5 14.3-4.1C534.2 227.5 520.2 353.8 437 437c-83.2 83.2-209.5 97.2-307.2 41.8c1.5-4.8 2.8-9.6 4-14.3c4.8-18.9 8-38.5 9.7-50.3c4-26.8-18.9-49.7-45.7-45.8c-11.9 1.6-31.5 4.8-50.4 9.7c-4.7 1.2-9.5 2.5-14.3 4.1C-22.2 284.5-8.2 158.2 75 75C158.2-8.3 284.5-22.2 382.2 33.2zM51.5 410.1c18.5-5 38.8-8.3 50.9-10c5.6-.9 10.3 3.9 9.5 9.5c-1.7 12.1-5 32.4-10 50.9C97.6 476.4 92 491 85.2 497.8C66 517 34.5 516.6 14.9 497.1s-20-51-.7-70.3c6.8-6.8 21.4-12.4 37.4-16.7zM416.4 202.3c-4.8-11.9-20.9-10.9-26.9 .4c-19.4 36.7-46.3 73.2-79.8 106.7s-70 60.3-106.7 79.8c-11.3 6-12.3 22.1-.4 26.9c59.4 24.1 129.9 12.2 177.9-35.8s59.9-118.5 35.8-177.9zM87.1 285.1c2 2 4.6 3.2 7.3 3.4l56.1 5.1 5.1 56.1c.3 2.8 1.5 5.4 3.4 7.3c6.3 6.3 17.2 3.6 19.8-4.9l29.7-97.4c3.5-11.6-7.3-22.5-19-19L92 265.3c-8.6 2.6-11.3 13.4-4.9 19.8zM265.3 92l-29.7 97.4c-3.5 11.6 7.3 22.5 19 19l97.4-29.7c8.6-2.6 11.3-13.4 4.9-19.8c-2-2-4.6-3.2-7.3-3.4l-56.1-5.1-5.1-56.1c-.3-2.8-1.5-5.4-3.4-7.3c-6.3-6.3-17.2-3.6-19.8 4.9z\"]\n};\nvar faGrinSquintTears = faFaceGrinSquintTears;\nvar faDumbbell = {\n prefix: 'fas',\n iconName: 'dumbbell',\n icon: [640, 512, [], \"f44b\", \"M96 64c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32V224v64V448c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32V384H64c-17.7 0-32-14.3-32-32V288c-17.7 0-32-14.3-32-32s14.3-32 32-32V160c0-17.7 14.3-32 32-32H96V64zm448 0v64h32c17.7 0 32 14.3 32 32v64c17.7 0 32 14.3 32 32s-14.3 32-32 32v64c0 17.7-14.3 32-32 32H544v64c0 17.7-14.3 32-32 32H480c-17.7 0-32-14.3-32-32V288 224 64c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32zM416 224v64H224V224H416z\"]\n};\nvar faRectangleList = {\n prefix: 'fas',\n iconName: 'rectangle-list',\n icon: [576, 512, [\"list-alt\"], \"f022\", \"M0 96C0 60.7 28.7 32 64 32H512c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zM128 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm32-128a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM128 384a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm96-248c-13.3 0-24 10.7-24 24s10.7 24 24 24H448c13.3 0 24-10.7 24-24s-10.7-24-24-24H224zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24H448c13.3 0 24-10.7 24-24s-10.7-24-24-24H224zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24H448c13.3 0 24-10.7 24-24s-10.7-24-24-24H224z\"]\n};\nvar faListAlt = faRectangleList;\nvar faTarpDroplet = {\n prefix: 'fas',\n iconName: 'tarp-droplet',\n icon: [576, 512, [], \"e57c\", \"M288 160c-35.3 0-64-26.9-64-60c0-24 33.7-70.1 52.2-93.5c6.1-7.7 17.5-7.7 23.6 0C318.3 29.9 352 76 352 100c0 33.1-28.7 60-64 60zM64 128H197.5c13.2 37.3 48.7 64 90.5 64s77.4-26.7 90.5-64H512c35.3 0 64 28.7 64 64V352H448c-17.7 0-32 14.3-32 32l0 128L64 512c-35.3 0-64-28.7-64-64V192c0-35.3 28.7-64 64-64zM448 512l0-128H576L448 512zM96 256a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faHouseMedicalCircleCheck = {\n prefix: 'fas',\n iconName: 'house-medical-circle-check',\n icon: [640, 512, [], \"e511\", \"M320 368c0 59.5 29.5 112.1 74.8 144H128.1c-35.3 0-64-28.7-64-64V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L522.1 193.9c-8.5-1.3-17.3-1.9-26.1-1.9c-54.7 0-103.5 24.9-135.8 64H320V208c0-8.8-7.2-16-16-16H272c-8.8 0-16 7.2-16 16v48H208c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16zm32 0a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm211.3-43.3c-6.2-6.2-16.4-6.2-22.6 0L480 385.4l-28.7-28.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l40 40c6.2 6.2 16.4 6.2 22.6 0l72-72c6.2-6.2 6.2-16.4 0-22.6z\"]\n};\nvar faPersonSkiingNordic = {\n prefix: 'fas',\n iconName: 'person-skiing-nordic',\n icon: [576, 512, [\"skiing-nordic\"], \"f7ca\", \"M336 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM227.2 160c1.9 0 3.8 .1 5.6 .3L201.6 254c-9.3 28 1.7 58.8 26.8 74.5l86.2 53.9L291.3 464H202.8l41.1-88.1-32.4-20.3c-7.8-4.9-14.7-10.7-20.6-17.3L132.2 464H99.7l54.2-257.6c4.6-1.5 9-4.1 12.7-7.8l23.1-23.1c9.9-9.9 23.4-15.5 37.5-15.5zM121.4 198.6c.4 .4 .8 .8 1.3 1.2L67 464H24c-13.3 0-24 10.7-24 24s10.7 24 24 24H159.3c.4 0 .9 0 1.3 0H319.3c.5 0 1 0 1.4 0H504c39.8 0 72-32.2 72-72v-8c0-13.3-10.7-24-24-24s-24 10.7-24 24v8c0 13.3-10.7 24-24 24H434.6l27.6-179.3c10.5-5.2 17.8-16.1 17.8-28.7c0-17.7-14.3-32-32-32H426.7c-12.9 0-24.6-7.8-29.5-19.7l-6.3-15c-14.6-35.1-44.1-61.9-80.5-73.1l-48.7-15c-11.1-3.4-22.7-5.2-34.4-5.2c-31 0-60.8 12.3-82.7 34.3l-23.1 23.1c-12.5 12.5-12.5 32.8 0 45.3zm308 89.4L402.3 464H357.8l21.6-75.6c5.9-20.6-2.6-42.6-20.7-53.9L302 299l30.9-82.4 5.1 12.3C353 264.7 387.9 288 426.7 288h2.7z\"]\n};\nvar faSkiingNordic = faPersonSkiingNordic;\nvar faCalendarPlus = {\n prefix: 'fas',\n iconName: 'calendar-plus',\n icon: [448, 512, [], \"f271\", \"M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192zM224 248c13.3 0 24 10.7 24 24v56h56c13.3 0 24 10.7 24 24s-10.7 24-24 24H248v56c0 13.3-10.7 24-24 24s-24-10.7-24-24V376H144c-13.3 0-24-10.7-24-24s10.7-24 24-24h56V272c0-13.3 10.7-24 24-24z\"]\n};\nvar faPlaneArrival = {\n prefix: 'fas',\n iconName: 'plane-arrival',\n icon: [640, 512, [128748], \"f5af\", \"M.3 166.9L0 68C0 57.7 9.5 50.1 19.5 52.3l35.6 7.9c10.6 2.3 19.2 9.9 23 20L96 128l127.3 37.6L181.8 20.4C178.9 10.2 186.6 0 197.2 0h40.1c11.6 0 22.2 6.2 27.9 16.3l109 193.8 107.2 31.7c15.9 4.7 30.8 12.5 43.7 22.8l34.4 27.6c24 19.2 18.1 57.3-10.7 68.2c-41.2 15.6-86.2 18.1-128.8 7L121.7 289.8c-11.1-2.9-21.2-8.7-29.3-16.9L9.5 189.4c-5.9-6-9.3-14.1-9.3-22.5zM32 448H608c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32zm96-80a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm128-16a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faCircleLeft = {\n prefix: 'fas',\n iconName: 'circle-left',\n icon: [512, 512, [61840, \"arrow-alt-circle-left\"], \"f359\", \"M512 256A256 256 0 1 0 0 256a256 256 0 1 0 512 0zM217.4 376.9L117.5 269.8c-3.5-3.8-5.5-8.7-5.5-13.8s2-10.1 5.5-13.8l99.9-107.1c4.2-4.5 10.1-7.1 16.3-7.1c12.3 0 22.3 10 22.3 22.3l0 57.7 96 0c17.7 0 32 14.3 32 32l0 32c0 17.7-14.3 32-32 32l-96 0 0 57.7c0 12.3-10 22.3-22.3 22.3c-6.2 0-12.1-2.6-16.3-7.1z\"]\n};\nvar faArrowAltCircleLeft = faCircleLeft;\nvar faTrainSubway = {\n prefix: 'fas',\n iconName: 'train-subway',\n icon: [448, 512, [\"subway\"], \"f239\", \"M96 0C43 0 0 43 0 96V352c0 48 35.2 87.7 81.1 94.9l-46 46C28.1 499.9 33.1 512 43 512H82.7c8.5 0 16.6-3.4 22.6-9.4L160 448H288l54.6 54.6c6 6 14.1 9.4 22.6 9.4H405c10 0 15-12.1 7.9-19.1l-46-46c46-7.1 81.1-46.9 81.1-94.9V96c0-53-43-96-96-96H96zM64 128c0-17.7 14.3-32 32-32h80c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V128zM272 96h80c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H272c-17.7 0-32-14.3-32-32V128c0-17.7 14.3-32 32-32zM64 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm288-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faSubway = faTrainSubway;\nvar faChartGantt = {\n prefix: 'fas',\n iconName: 'chart-gantt',\n icon: [512, 512, [], \"e0e4\", \"M32 32c17.7 0 32 14.3 32 32V400c0 8.8 7.2 16 16 16H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H80c-44.2 0-80-35.8-80-80V64C0 46.3 14.3 32 32 32zm96 96c0-17.7 14.3-32 32-32l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32H160c-17.7 0-32-14.3-32-32zm96 64H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zm160 96h64c17.7 0 32 14.3 32 32s-14.3 32-32 32H384c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faIndianRupeeSign = {\n prefix: 'fas',\n iconName: 'indian-rupee-sign',\n icon: [320, 512, [\"indian-rupee\", \"inr\"], \"e1bc\", \"M0 64C0 46.3 14.3 32 32 32H96h16H288c17.7 0 32 14.3 32 32s-14.3 32-32 32H231.8c9.6 14.4 16.7 30.6 20.7 48H288c17.7 0 32 14.3 32 32s-14.3 32-32 32H252.4c-13.2 58.3-61.9 103.2-122.2 110.9L274.6 422c14.4 10.3 17.7 30.3 7.4 44.6s-30.3 17.7-44.6 7.4L13.4 314C2.1 306-2.7 291.5 1.5 278.2S18.1 256 32 256h80c32.8 0 61-19.7 73.3-48H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H185.3C173 115.7 144.8 96 112 96H96 32C14.3 96 0 81.7 0 64z\"]\n};\nvar faIndianRupee = faIndianRupeeSign;\nvar faInr = faIndianRupeeSign;\nvar faCropSimple = {\n prefix: 'fas',\n iconName: 'crop-simple',\n icon: [512, 512, [\"crop-alt\"], \"f565\", \"M128 32c0-17.7-14.3-32-32-32S64 14.3 64 32V64H32C14.3 64 0 78.3 0 96s14.3 32 32 32H64V384c0 35.3 28.7 64 64 64H352V384H128V32zM384 480c0 17.7 14.3 32 32 32s32-14.3 32-32V448h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H448l0-256c0-35.3-28.7-64-64-64L160 64v64l224 0 0 352z\"]\n};\nvar faCropAlt = faCropSimple;\nvar faMoneyBill1 = {\n prefix: 'fas',\n iconName: 'money-bill-1',\n icon: [576, 512, [\"money-bill-alt\"], \"f3d1\", \"M64 64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H64zm64 320H64V320c35.3 0 64 28.7 64 64zM64 192V128h64c0 35.3-28.7 64-64 64zM448 384c0-35.3 28.7-64 64-64v64H448zm64-192c-35.3 0-64-28.7-64-64h64v64zM176 256a112 112 0 1 1 224 0 112 112 0 1 1 -224 0zm76-48c0 9.7 6.9 17.7 16 19.6V276h-4c-11 0-20 9-20 20s9 20 20 20h24 24c11 0 20-9 20-20s-9-20-20-20h-4V208c0-11-9-20-20-20H272c-11 0-20 9-20 20z\"]\n};\nvar faMoneyBillAlt = faMoneyBill1;\nvar faLeftLong = {\n prefix: 'fas',\n iconName: 'left-long',\n icon: [512, 512, [\"long-arrow-alt-left\"], \"f30a\", \"M177.5 414c-8.8 3.8-19 2-26-4.6l-144-136C2.7 268.9 0 262.6 0 256s2.7-12.9 7.5-17.4l144-136c7-6.6 17.2-8.4 26-4.6s14.5 12.5 14.5 22l0 72 288 0c17.7 0 32 14.3 32 32l0 64c0 17.7-14.3 32-32 32l-288 0 0 72c0 9.6-5.7 18.2-14.5 22z\"]\n};\nvar faLongArrowAltLeft = faLeftLong;\nvar faDna = {\n prefix: 'fas',\n iconName: 'dna',\n icon: [448, 512, [129516], \"f471\", \"M416 0c17.7 0 32 14.3 32 32c0 59.8-30.3 107.5-69.4 146.6c-28 28-62.5 53.5-97.3 77.4l-2.5 1.7c-11.9 8.1-23.8 16.1-35.5 23.9l0 0 0 0 0 0-1.6 1c-6 4-11.9 7.9-17.8 11.9c-20.9 14-40.8 27.7-59.3 41.5H283.3c-9.8-7.4-20.1-14.7-30.7-22.1l7-4.7 3-2c15.1-10.1 30.9-20.6 46.7-31.6c25 18.1 48.9 37.3 69.4 57.7C417.7 372.5 448 420.2 448 480c0 17.7-14.3 32-32 32s-32-14.3-32-32H64c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-59.8 30.3-107.5 69.4-146.6c28-28 62.5-53.5 97.3-77.4c-34.8-23.9-69.3-49.3-97.3-77.4C30.3 139.5 0 91.8 0 32C0 14.3 14.3 0 32 0S64 14.3 64 32H384c0-17.7 14.3-32 32-32zM338.6 384H109.4c-10.1 10.6-18.6 21.3-25.5 32H364.1c-6.8-10.7-15.3-21.4-25.5-32zM109.4 128H338.6c10.1-10.7 18.6-21.3 25.5-32H83.9c6.8 10.7 15.3 21.3 25.5 32zm55.4 48c18.4 13.8 38.4 27.5 59.3 41.5c20.9-14 40.8-27.7 59.3-41.5H164.7z\"]\n};\nvar faVirusSlash = {\n prefix: 'fas',\n iconName: 'virus-slash',\n icon: [640, 512, [], \"e075\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-154.3-121c-2-30.1 20.8-60.1 56-60.1H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H532.5c-49.9 0-74.9-60.3-39.6-95.6l8.2-8.2c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-8.2 8.2C412.3 118.4 352 93.4 352 43.5V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V43.5c0 49.9-60.3 74.9-95.6 39.6L184.2 75c-12.5-12.5-32.8-12.5-45.3 0c-1.6 1.6-3.1 3.4-4.3 5.3L38.8 5.1zm225.8 177c6.9-3.9 14.9-6.1 23.4-6.1c26.5 0 48 21.5 48 48c0 4.4-.6 8.7-1.7 12.7l-69.7-54.6zM402 412.7L144.7 210c-9.5 8.5-22.2 14-37.2 14H96c-17.7 0-32 14.3-32 32s14.3 32 32 32h11.5c49.9 0 74.9 60.3 39.6 95.6l-8.2 8.2c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l8.2-8.2c35.3-35.3 95.6-10.3 95.6 39.6V480c0 17.7 14.3 32 32 32s32-14.3 32-32V468.5c0-31.2 23.6-52.7 50-55.7z\"]\n};\nvar faMinus = {\n prefix: 'fas',\n iconName: 'minus',\n icon: [448, 512, [8211, 8722, 10134, \"subtract\"], \"f068\", \"M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z\"]\n};\nvar faSubtract = faMinus;\nvar faChess = {\n prefix: 'fas',\n iconName: 'chess',\n icon: [512, 512, [], \"f439\", \"M144 16c0-8.8-7.2-16-16-16s-16 7.2-16 16V32H96c-8.8 0-16 7.2-16 16s7.2 16 16 16h16V96H60.2C49.1 96 40 105.1 40 116.2c0 2.5 .5 4.9 1.3 7.3L73.8 208H72c-13.3 0-24 10.7-24 24s10.7 24 24 24h4L60 384H196L180 256h4c13.3 0 24-10.7 24-24s-10.7-24-24-24h-1.8l32.5-84.5c.9-2.3 1.3-4.8 1.3-7.3c0-11.2-9.1-20.2-20.2-20.2H144V64h16c8.8 0 16-7.2 16-16s-7.2-16-16-16H144V16zM48 416L4.8 473.6C1.7 477.8 0 482.8 0 488c0 13.3 10.7 24 24 24H232c13.3 0 24-10.7 24-24c0-5.2-1.7-10.2-4.8-14.4L208 416H48zm288 0l-43.2 57.6c-3.1 4.2-4.8 9.2-4.8 14.4c0 13.3 10.7 24 24 24H488c13.3 0 24-10.7 24-24c0-5.2-1.7-10.2-4.8-14.4L464 416H336zM304 208v51.9c0 7.8 2.8 15.3 8 21.1L339.2 312 337 384H462.5l-3.3-72 28.3-30.8c5.4-5.9 8.5-13.6 8.5-21.7V208c0-8.8-7.2-16-16-16H464c-8.8 0-16 7.2-16 16v16H424V208c0-8.8-7.2-16-16-16H392c-8.8 0-16 7.2-16 16v16H352V208c0-8.8-7.2-16-16-16H320c-8.8 0-16 7.2-16 16zm80 96c0-8.8 7.2-16 16-16s16 7.2 16 16v32H384V304z\"]\n};\nvar faArrowLeftLong = {\n prefix: 'fas',\n iconName: 'arrow-left-long',\n icon: [512, 512, [\"long-arrow-left\"], \"f177\", \"M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-370.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z\"]\n};\nvar faLongArrowLeft = faArrowLeftLong;\nvar faPlugCircleCheck = {\n prefix: 'fas',\n iconName: 'plug-circle-check',\n icon: [576, 512, [], \"e55c\", \"M96 0C78.3 0 64 14.3 64 32v96h64V32c0-17.7-14.3-32-32-32zM288 0c-17.7 0-32 14.3-32 32v96h64V32c0-17.7-14.3-32-32-32zM32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32v32c0 77.4 55 142 128 156.8V480c0 17.7 14.3 32 32 32s32-14.3 32-32V412.8c12.3-2.5 24.1-6.4 35.1-11.5c-2.1-10.8-3.1-21.9-3.1-33.3c0-80.3 53.8-148 127.3-169.2c.5-2.2 .7-4.5 .7-6.8c0-17.7-14.3-32-32-32H32zM576 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-76.7-43.3c6.2 6.2 6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L416 385.4l60.7-60.7c6.2-6.2 16.4-6.2 22.6 0z\"]\n};\nvar faStreetView = {\n prefix: 'fas',\n iconName: 'street-view',\n icon: [512, 512, [], \"f21d\", \"M320 64A64 64 0 1 0 192 64a64 64 0 1 0 128 0zm-96 96c-35.3 0-64 28.7-64 64v48c0 17.7 14.3 32 32 32h1.8l11.1 99.5c1.8 16.2 15.5 28.5 31.8 28.5h38.7c16.3 0 30-12.3 31.8-28.5L318.2 304H320c17.7 0 32-14.3 32-32V224c0-35.3-28.7-64-64-64H224zM132.3 394.2c13-2.4 21.7-14.9 19.3-27.9s-14.9-21.7-27.9-19.3c-32.4 5.9-60.9 14.2-82 24.8c-10.5 5.3-20.3 11.7-27.8 19.6C6.4 399.5 0 410.5 0 424c0 21.4 15.5 36.1 29.1 45c14.7 9.6 34.3 17.3 56.4 23.4C130.2 504.7 190.4 512 256 512s125.8-7.3 170.4-19.6c22.1-6.1 41.8-13.8 56.4-23.4c13.7-8.9 29.1-23.6 29.1-45c0-13.5-6.4-24.5-14-32.6c-7.5-7.9-17.3-14.3-27.8-19.6c-21-10.6-49.5-18.9-82-24.8c-13-2.4-25.5 6.3-27.9 19.3s6.3 25.5 19.3 27.9c30.2 5.5 53.7 12.8 69 20.5c3.2 1.6 5.8 3.1 7.9 4.5c3.6 2.4 3.6 7.2 0 9.6c-8.8 5.7-23.1 11.8-43 17.3C374.3 457 318.5 464 256 464s-118.3-7-157.7-17.9c-19.9-5.5-34.2-11.6-43-17.3c-3.6-2.4-3.6-7.2 0-9.6c2.1-1.4 4.8-2.9 7.9-4.5c15.3-7.7 38.8-14.9 69-20.5z\"]\n};\nvar faFrancSign = {\n prefix: 'fas',\n iconName: 'franc-sign',\n icon: [320, 512, [], \"e18f\", \"M80 32C62.3 32 48 46.3 48 64V224v96H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H48v64c0 17.7 14.3 32 32 32s32-14.3 32-32V384h80c17.7 0 32-14.3 32-32s-14.3-32-32-32H112V256H256c17.7 0 32-14.3 32-32s-14.3-32-32-32H112V96H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H80z\"]\n};\nvar faVolumeOff = {\n prefix: 'fas',\n iconName: 'volume-off',\n icon: [320, 512, [], \"f026\", \"M320 64c0-12.6-7.4-24-18.9-29.2s-25-3.1-34.4 5.3L131.8 160H64c-35.3 0-64 28.7-64 64v64c0 35.3 28.7 64 64 64h67.8L266.7 471.9c9.4 8.4 22.9 10.4 34.4 5.3S320 460.6 320 448V64z\"]\n};\nvar faHandsAslInterpreting = {\n prefix: 'fas',\n iconName: 'hands-asl-interpreting',\n icon: [640, 512, [\"american-sign-language-interpreting\", \"asl-interpreting\", \"hands-american-sign-language-interpreting\"], \"f2a3\", \"M156.6 46.3c7.9-15.8 1.5-35-14.3-42.9s-35-1.5-42.9 14.3L13.5 189.4C4.6 207.2 0 226.8 0 246.7V256c0 70.7 57.3 128 128 128h72 8v-.3c35.2-2.7 65.4-22.8 82.1-51.7c8.8-15.3 3.6-34.9-11.7-43.7s-34.9-3.6-43.7 11.7c-7 12-19.9 20-34.7 20c-22.1 0-40-17.9-40-40s17.9-40 40-40c14.8 0 27.7 8 34.7 20c8.8 15.3 28.4 20.5 43.7 11.7s20.5-28.4 11.7-43.7c-12.8-22.1-33.6-39.1-58.4-47.1l80.8-22c17-4.6 27.1-22.2 22.5-39.3s-22.2-27.1-39.3-22.5L194.9 124.6l81.6-68c13.6-11.3 15.4-31.5 4.1-45.1S249.1-3.9 235.5 7.4L133.6 92.3l23-46zM483.4 465.7c-7.9 15.8-1.5 35 14.3 42.9s35 1.5 42.9-14.3l85.9-171.7c8.9-17.8 13.5-37.4 13.5-57.2V256c0-70.7-57.3-128-128-128H440h-8v.3c-35.2 2.7-65.4 22.8-82.1 51.7c-8.9 15.3-3.6 34.9 11.7 43.7s34.9 3.6 43.7-11.7c7-12 19.9-20 34.7-20c22.1 0 40 17.9 40 40s-17.9 40-40 40c-14.8 0-27.7-8-34.7-20c-8.9-15.3-28.4-20.5-43.7-11.7s-20.5 28.4-11.7 43.7c12.8 22.1 33.6 39.1 58.4 47.1l-80.8 22c-17.1 4.7-27.1 22.2-22.5 39.3s22.2 27.1 39.3 22.5l100.7-27.5-81.6 68c-13.6 11.3-15.4 31.5-4.1 45.1s31.5 15.4 45.1 4.1l101.9-84.9-23 46z\"]\n};\nvar faAmericanSignLanguageInterpreting = faHandsAslInterpreting;\nvar faAslInterpreting = faHandsAslInterpreting;\nvar faHandsAmericanSignLanguageInterpreting = faHandsAslInterpreting;\nvar faGear = {\n prefix: 'fas',\n iconName: 'gear',\n icon: [512, 512, [9881, \"cog\"], \"f013\", \"M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z\"]\n};\nvar faCog = faGear;\nvar faDropletSlash = {\n prefix: 'fas',\n iconName: 'droplet-slash',\n icon: [640, 512, [\"tint-slash\"], \"f5c7\", \"M320 512c53.2 0 101.4-21.6 136.1-56.6l-298.3-235C140 257.1 128 292.3 128 320c0 106 86 192 192 192zM505.2 370.7c4.4-16.1 6.8-33.1 6.8-50.7c0-91.2-130.2-262.3-166.6-308.3C339.4 4.2 330.5 0 320.9 0h-1.8c-9.6 0-18.5 4.2-24.5 11.7C277.8 33 240.7 81.3 205.8 136L38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L505.2 370.7zM224 336c0 44.2 35.8 80 80 80c8.8 0 16 7.2 16 16s-7.2 16-16 16c-61.9 0-112-50.1-112-112c0-8.8 7.2-16 16-16s16 7.2 16 16z\"]\n};\nvar faTintSlash = faDropletSlash;\nvar faMosque = {\n prefix: 'fas',\n iconName: 'mosque',\n icon: [640, 512, [128332], \"f678\", \"M400 0c5 0 9.8 2.4 12.8 6.4c34.7 46.3 78.1 74.9 133.5 111.5l0 0 0 0c5.2 3.4 10.5 7 16 10.6c28.9 19.2 45.7 51.7 45.7 86.1c0 28.6-11.3 54.5-29.8 73.4H221.8c-18.4-19-29.8-44.9-29.8-73.4c0-34.4 16.7-66.9 45.7-86.1c5.4-3.6 10.8-7.1 16-10.6l0 0 0 0C309.1 81.3 352.5 52.7 387.2 6.4c3-4 7.8-6.4 12.8-6.4zM288 512V440c0-13.3-10.7-24-24-24s-24 10.7-24 24v72H192c-17.7 0-32-14.3-32-32V352c0-17.7 14.3-32 32-32H608c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32H560V440c0-13.3-10.7-24-24-24s-24 10.7-24 24v72H448V454c0-19-8.4-37-23-49.2L400 384l-25 20.8C360.4 417 352 435 352 454v58H288zM70.4 5.2c5.7-4.3 13.5-4.3 19.2 0l16 12C139.8 42.9 160 83.2 160 126v2H0v-2C0 83.2 20.2 42.9 54.4 17.2l16-12zM0 160H160V296.6c-19.1 11.1-32 31.7-32 55.4V480c0 9.6 2.1 18.6 5.8 26.8c-6.6 3.4-14 5.2-21.8 5.2H48c-26.5 0-48-21.5-48-48V176 160z\"]\n};\nvar faMosquito = {\n prefix: 'fas',\n iconName: 'mosquito',\n icon: [640, 512, [], \"e52b\", \"M463.7 505.9c9.8-8.9 10.7-24.3 2.1-34.3l-42.1-49 0-54.7c0-5.5-1.8-10.8-5.1-15.1L352 266.3l0-.3L485.4 387.8C542.4 447.6 640 405.2 640 320.6c0-47.9-34-88.3-79.4-94.2l-153-23.9 40.8-40.9c7.8-7.8 9.4-20.1 3.9-29.8L428.5 90.1l38.2-50.9c8-10.6 6.1-25.9-4.3-34.1s-25.2-6.3-33.2 4.4l-48 63.9c-5.9 7.9-6.6 18.6-1.7 27.2L402.2 140 352 190.3l0-38.2c0-14.9-10.2-27.4-24-31l0-57.2c0-4.4-3.6-8-8-8s-8 3.6-8 8l0 57.2c-13.8 3.6-24 16.1-24 31l0 38.1L237.8 140l22.6-39.5c4.9-8.6 4.2-19.3-1.7-27.2l-48-63.9c-8-10.6-22.8-12.6-33.2-4.4s-12.2 23.5-4.3 34.1l38.2 50.9-23.9 41.7c-5.5 9.7-3.9 22 3.9 29.8l40.8 40.9-153 23.9C34 232.3 0 272.7 0 320.6c0 84.6 97.6 127 154.6 67.1L288 266l0 .3-66.5 86.4c-3.3 4.3-5.1 9.6-5.1 15.1l0 54.7-42.1 49c-8.6 10.1-7.7 25.5 2.1 34.3s24.7 7.9 33.4-2.1l48-55.9c3.8-4.4 5.9-10.2 5.9-16.1l0-55.4L288 344.7l0 63.1c0 17.7 14.3 32 32 32s32-14.3 32-32l0-63.1 24.3 31.6 0 55.4c0 5.9 2.1 11.7 5.9 16.1l48 55.9c8.6 10.1 23.6 11 33.4 2.1z\"]\n};\nvar faStarOfDavid = {\n prefix: 'fas',\n iconName: 'star-of-david',\n icon: [512, 512, [10017], \"f69a\", \"M404.2 309.5L383.1 344h42.3l-21.1-34.5zM371.4 256l-54-88H194.6l-54 88 54 88H317.4l54-88zm65.7 0l53.4 87c3.6 5.9 5.5 12.7 5.5 19.6c0 20.7-16.8 37.4-37.4 37.4H348.7l-56.2 91.5C284.8 504.3 270.9 512 256 512s-28.8-7.7-36.6-20.5L163.3 400H53.4C32.8 400 16 383.2 16 362.6c0-6.9 1.9-13.7 5.5-19.6l53.4-87L21.5 169c-3.6-5.9-5.5-12.7-5.5-19.6C16 128.8 32.8 112 53.4 112H163.3l56.2-91.5C227.2 7.7 241.1 0 256 0s28.8 7.7 36.6 20.5L348.7 112H458.6c20.7 0 37.4 16.8 37.4 37.4c0 6.9-1.9 13.7-5.5 19.6l-53.4 87zm-54-88l21.1 34.5L425.4 168H383.1zM283 112L256 68l-27 44h54zM128.9 168H86.6l21.1 34.5L128.9 168zM107.8 309.5L86.6 344h42.3l-21.1-34.5zM229 400l27 44 27-44H229z\"]\n};\nvar faPersonMilitaryRifle = {\n prefix: 'fas',\n iconName: 'person-military-rifle',\n icon: [512, 512, [], \"e54b\", \"M160 39c0-13 10-23.8 22.9-24.9L334.7 1.4C344 .7 352 8 352 17.4V48c0 8.8-7.2 16-16 16H185c-13.8 0-25-11.2-25-25zm17.6 57H334.4c1 5.2 1.6 10.5 1.6 16c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-5.5 .6-10.8 1.6-16zm228 364.3L352 369.7V480c0 1.3-.1 2.5-.2 3.8L177.5 234.9c16.6-7.1 34.6-10.9 53.3-10.9h50.4c15.9 0 31.3 2.8 45.8 7.9L421.9 67.7c-7.7-4.4-10.3-14.2-5.9-21.9s14.2-10.3 21.9-5.9l13.9 8 13.9 8c7.7 4.4 10.3 14.2 5.9 21.9L416 173.9l1.6 .9c15.3 8.8 20.6 28.4 11.7 43.7L392.6 282c2 2.8 3.9 5.8 5.7 8.8l76.1 128.8c11.2 19 4.9 43.5-14.1 54.8s-43.5 4.9-54.8-14.1zM320 512H192c-17.7 0-32-14.3-32-32V369.7l-53.6 90.6c-11.2 19-35.8 25.3-54.8 14.1s-25.3-35.8-14.1-54.8l76.1-128.8c9.4-15.8 21.7-29.3 36-40L331.1 510c-3.5 1.3-7.2 2-11.1 2zM296 320a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faCartShopping = {\n prefix: 'fas',\n iconName: 'cart-shopping',\n icon: [576, 512, [128722, \"shopping-cart\"], \"f07a\", \"M0 24C0 10.7 10.7 0 24 0H69.5c22 0 41.5 12.8 50.6 32h411c26.3 0 45.5 25 38.6 50.4l-41 152.3c-8.5 31.4-37 53.3-69.5 53.3H170.7l5.4 28.5c2.2 11.3 12.1 19.5 23.6 19.5H488c13.3 0 24 10.7 24 24s-10.7 24-24 24H199.7c-34.6 0-64.3-24.6-70.7-58.5L77.4 54.5c-.7-3.8-4-6.5-7.9-6.5H24C10.7 48 0 37.3 0 24zM128 464a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm336-48a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faShoppingCart = faCartShopping;\nvar faVials = {\n prefix: 'fas',\n iconName: 'vials',\n icon: [512, 512, [], \"f493\", \"M0 64C0 46.3 14.3 32 32 32H88h48 56c17.7 0 32 14.3 32 32s-14.3 32-32 32V400c0 44.2-35.8 80-80 80s-80-35.8-80-80V96C14.3 96 0 81.7 0 64zM136 96H88V256h48V96zM288 64c0-17.7 14.3-32 32-32h56 48 56c17.7 0 32 14.3 32 32s-14.3 32-32 32V400c0 44.2-35.8 80-80 80s-80-35.8-80-80V96c-17.7 0-32-14.3-32-32zM424 96H376V256h48V96z\"]\n};\nvar faPlugCirclePlus = {\n prefix: 'fas',\n iconName: 'plug-circle-plus',\n icon: [576, 512, [], \"e55f\", \"M96 0C78.3 0 64 14.3 64 32v96h64V32c0-17.7-14.3-32-32-32zM288 0c-17.7 0-32 14.3-32 32v96h64V32c0-17.7-14.3-32-32-32zM32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32v32c0 77.4 55 142 128 156.8V480c0 17.7 14.3 32 32 32s32-14.3 32-32V412.8c12.3-2.5 24.1-6.4 35.1-11.5c-2.1-10.8-3.1-21.9-3.1-33.3c0-80.3 53.8-148 127.3-169.2c.5-2.2 .7-4.5 .7-6.8c0-17.7-14.3-32-32-32H32zM432 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm16-208v48h48c8.8 0 16 7.2 16 16s-7.2 16-16 16H448v48c0 8.8-7.2 16-16 16s-16-7.2-16-16V384H368c-8.8 0-16-7.2-16-16s7.2-16 16-16h48V304c0-8.8 7.2-16 16-16s16 7.2 16 16z\"]\n};\nvar faPlaceOfWorship = {\n prefix: 'fas',\n iconName: 'place-of-worship',\n icon: [640, 512, [], \"f67f\", \"M224 109.3V217.6L183.3 242c-14.5 8.7-23.3 24.3-23.3 41.2V512h96V416c0-35.3 28.7-64 64-64s64 28.7 64 64v96h96V283.2c0-16.9-8.8-32.5-23.3-41.2L416 217.6V109.3c0-8.5-3.4-16.6-9.4-22.6L331.3 11.3c-6.2-6.2-16.4-6.2-22.6 0L233.4 86.6c-6 6-9.4 14.1-9.4 22.6zM24.9 330.3C9.5 338.8 0 354.9 0 372.4V464c0 26.5 21.5 48 48 48h80V273.6L24.9 330.3zM592 512c26.5 0 48-21.5 48-48V372.4c0-17.5-9.5-33.6-24.9-42.1L512 273.6V512h80z\"]\n};\nvar faGripVertical = {\n prefix: 'fas',\n iconName: 'grip-vertical',\n icon: [320, 512, [], \"f58e\", \"M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z\"]\n};\nvar faArrowTurnUp = {\n prefix: 'fas',\n iconName: 'arrow-turn-up',\n icon: [384, 512, [\"level-up\"], \"f148\", \"M32 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l96 0c53 0 96-43 96-96l0-306.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3 160 416c0 17.7-14.3 32-32 32l-96 0z\"]\n};\nvar faLevelUp = faArrowTurnUp;\nvar faU = {\n prefix: 'fas',\n iconName: 'u',\n icon: [384, 512, [117], \"55\", \"M32 32c17.7 0 32 14.3 32 32V288c0 70.7 57.3 128 128 128s128-57.3 128-128V64c0-17.7 14.3-32 32-32s32 14.3 32 32V288c0 106-86 192-192 192S0 394 0 288V64C0 46.3 14.3 32 32 32z\"]\n};\nvar faSquareRootVariable = {\n prefix: 'fas',\n iconName: 'square-root-variable',\n icon: [576, 512, [\"square-root-alt\"], \"f698\", \"M282.6 78.1c8-27.3 33-46.1 61.4-46.1H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H344L238.7 457c-3.6 12.3-14.1 21.2-26.8 22.8s-25.1-4.6-31.5-15.6L77.6 288H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H77.6c22.8 0 43.8 12.1 55.3 31.8l65.2 111.8L282.6 78.1zM393.4 233.4c12.5-12.5 32.8-12.5 45.3 0L480 274.7l41.4-41.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L525.3 320l41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L480 365.3l-41.4 41.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L434.7 320l-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3z\"]\n};\nvar faSquareRootAlt = faSquareRootVariable;\nvar faClock = {\n prefix: 'fas',\n iconName: 'clock',\n icon: [512, 512, [128339, \"clock-four\"], \"f017\", \"M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z\"]\n};\nvar faClockFour = faClock;\nvar faBackwardStep = {\n prefix: 'fas',\n iconName: 'backward-step',\n icon: [320, 512, [\"step-backward\"], \"f048\", \"M267.5 440.6c9.5 7.9 22.8 9.7 34.1 4.4s18.4-16.6 18.4-29V96c0-12.4-7.2-23.7-18.4-29s-24.5-3.6-34.1 4.4l-192 160L64 241V96c0-17.7-14.3-32-32-32S0 78.3 0 96V416c0 17.7 14.3 32 32 32s32-14.3 32-32V271l11.5 9.6 192 160z\"]\n};\nvar faStepBackward = faBackwardStep;\nvar faPallet = {\n prefix: 'fas',\n iconName: 'pallet',\n icon: [640, 512, [], \"f482\", \"M32 320c-17.7 0-32 14.3-32 32s14.3 32 32 32H64v64H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H96 320 544h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H576V384h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H544 320 96 32zm96 64H288v64H128V384zm224 0H512v64H352V384z\"]\n};\nvar faFaucet = {\n prefix: 'fas',\n iconName: 'faucet',\n icon: [512, 512, [], \"e005\", \"M192 96v12L96 96c-17.7 0-32 14.3-32 32s14.3 32 32 32l96-12 31-3.9 1-.1 1 .1 31 3.9 96 12c17.7 0 32-14.3 32-32s-14.3-32-32-32l-96 12V96c0-17.7-14.3-32-32-32s-32 14.3-32 32zM32 256c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32H132.1c20.2 29 53.9 48 91.9 48s71.7-19 91.9-48H352c17.7 0 32 14.3 32 32s14.3 32 32 32h64c17.7 0 32-14.3 32-32c0-88.4-71.6-160-160-160H320l-22.6-22.6c-6-6-14.1-9.4-22.6-9.4H256V180.2l-32-4-32 4V224H173.3c-8.5 0-16.6 3.4-22.6 9.4L128 256H32z\"]\n};\nvar faBaseballBatBall = {\n prefix: 'fas',\n iconName: 'baseball-bat-ball',\n icon: [512, 512, [], \"f432\", \"M424 0c-12.4 0-24.2 4.9-33 13.7L233.5 171.2c-10.5 10.5-19.8 22.1-27.7 34.6L132.7 321.6c-7.3 11.5-15.8 22.2-25.5 31.9L69.9 390.7l51.3 51.3 37.3-37.3c9.6-9.6 20.3-18.2 31.9-25.5l115.8-73.1c12.5-7.9 24.1-17.2 34.6-27.7L498.3 121c8.7-8.7 13.7-20.6 13.7-33s-4.9-24.2-13.7-33L457 13.7C448.2 4.9 436.4 0 424 0zm88 432a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM15 399c-9.4 9.4-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L49 399c-9.4-9.4-24.6-9.4-33.9 0z\"]\n};\nvar faS = {\n prefix: 'fas',\n iconName: 's',\n icon: [320, 512, [115], \"53\", \"M99.1 105.4C79 114 68.2 127.2 65.2 144.8c-2.4 14.1-.7 23.2 2 29.4c2.8 6.3 7.9 12.4 16.7 18.6c19.2 13.4 48.3 22.1 84.9 32.5c1 .3 1.9 .6 2.9 .8c32.7 9.3 72 20.6 100.9 40.7c15.7 10.9 29.9 25.5 38.6 45.1c8.8 19.8 10.8 42 6.6 66.3c-7.3 42.5-35.3 71.7-71.8 87.3c-35.4 15.2-79.1 17.9-123.7 10.9l-.2 0 0 0c-24-3.9-62.7-17.1-87.6-25.6c-4.8-1.7-9.2-3.1-12.8-4.3C5.1 440.8-3.9 422.7 1.6 405.9s23.7-25.8 40.5-20.3c4.9 1.6 10.2 3.4 15.9 5.4c25.4 8.6 56.4 19.2 74.4 22.1c36.8 5.7 67.5 2.5 88.5-6.5c20.1-8.6 30.8-21.8 33.9-39.4c2.4-14.1 .7-23.2-2-29.4c-2.8-6.3-7.9-12.4-16.7-18.6c-19.2-13.4-48.3-22.1-84.9-32.5c-1-.3-1.9-.6-2.9-.8c-32.7-9.3-72-20.6-100.9-40.7c-15.7-10.9-29.9-25.5-38.6-45.1c-8.8-19.8-10.8-42-6.6-66.3l31.5 5.5L2.1 133.9C9.4 91.4 37.4 62.2 73.9 46.6c35.4-15.2 79.1-17.9 123.7-10.9c13 2 52.4 9.6 66.6 13.4c17.1 4.5 27.2 22.1 22.7 39.2s-22.1 27.2-39.2 22.7c-11.2-3-48.1-10.2-60.1-12l4.9-31.5-4.9 31.5c-36.9-5.8-67.5-2.5-88.6 6.5z\"]\n};\nvar faTimeline = {\n prefix: 'fas',\n iconName: 'timeline',\n icon: [640, 512, [], \"e29c\", \"M128 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm32 97.3c28.3-12.3 48-40.5 48-73.3c0-44.2-35.8-80-80-80S48 51.8 48 96c0 32.8 19.7 61 48 73.3V224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H288v54.7c-28.3 12.3-48 40.5-48 73.3c0 44.2 35.8 80 80 80s80-35.8 80-80c0-32.8-19.7-61-48-73.3V288H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H544V169.3c28.3-12.3 48-40.5 48-73.3c0-44.2-35.8-80-80-80s-80 35.8-80 80c0 32.8 19.7 61 48 73.3V224H160V169.3zM488 96a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM320 392a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faKeyboard = {\n prefix: 'fas',\n iconName: 'keyboard',\n icon: [576, 512, [9000], \"f11c\", \"M64 64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64H64zm16 64h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm16 80h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V336c0-8.8 7.2-16 16-16zm80-176c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V144zm16 80h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zM160 336c0-8.8 7.2-16 16-16H400c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V336zM272 128h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16zM256 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM368 128h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16zM352 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16V240zM464 128h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H464c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16zM448 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H464c-8.8 0-16-7.2-16-16V240zm16 80h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H464c-8.8 0-16-7.2-16-16V336c0-8.8 7.2-16 16-16z\"]\n};\nvar faCaretDown = {\n prefix: 'fas',\n iconName: 'caret-down',\n icon: [320, 512, [], \"f0d7\", \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\"]\n};\nvar faHouseChimneyMedical = {\n prefix: 'fas',\n iconName: 'house-chimney-medical',\n icon: [576, 512, [\"clinic-medical\"], \"f7f2\", \"M575.8 255.5c0 18-15 32.1-32 32.1h-32l.7 160.2c.2 35.5-28.5 64.3-64 64.3H128.1c-35.3 0-64-28.7-64-64V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L416 100.7V64c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32V185l52.8 46.4c8 7 12 15 11 24zM272 192c-8.8 0-16 7.2-16 16v48H208c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320h48c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H320V208c0-8.8-7.2-16-16-16H272z\"]\n};\nvar faClinicMedical = faHouseChimneyMedical;\nvar faTemperatureThreeQuarters = {\n prefix: 'fas',\n iconName: 'temperature-three-quarters',\n icon: [320, 512, [\"temperature-3\", \"thermometer-3\", \"thermometer-three-quarters\"], \"f2c8\", \"M160 64c-26.5 0-48 21.5-48 48V276.5c0 17.3-7.1 31.9-15.3 42.5C86.2 332.6 80 349.5 80 368c0 44.2 35.8 80 80 80s80-35.8 80-80c0-18.5-6.2-35.4-16.7-48.9c-8.2-10.6-15.3-25.2-15.3-42.5V112c0-26.5-21.5-48-48-48zM48 112C48 50.2 98.1 0 160 0s112 50.1 112 112V276.5c0 .1 .1 .3 .2 .6c.2 .6 .8 1.6 1.7 2.8c18.9 24.4 30.1 55 30.1 88.1c0 79.5-64.5 144-144 144S16 447.5 16 368c0-33.2 11.2-63.8 30.1-88.1c.9-1.2 1.5-2.2 1.7-2.8c.1-.3 .2-.5 .2-.6V112zM208 368c0 26.5-21.5 48-48 48s-48-21.5-48-48c0-20.9 13.4-38.7 32-45.3V144c0-8.8 7.2-16 16-16s16 7.2 16 16V322.7c18.6 6.6 32 24.4 32 45.3z\"]\n};\nvar faTemperature3 = faTemperatureThreeQuarters;\nvar faThermometer3 = faTemperatureThreeQuarters;\nvar faThermometerThreeQuarters = faTemperatureThreeQuarters;\nvar faMobileScreen = {\n prefix: 'fas',\n iconName: 'mobile-screen',\n icon: [384, 512, [\"mobile-android-alt\"], \"f3cf\", \"M16 64C16 28.7 44.7 0 80 0H304c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H80c-35.3 0-64-28.7-64-64V64zM144 448c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16s-7.2-16-16-16H160c-8.8 0-16 7.2-16 16zM304 64H80V384H304V64z\"]\n};\nvar faMobileAndroidAlt = faMobileScreen;\nvar faPlaneUp = {\n prefix: 'fas',\n iconName: 'plane-up',\n icon: [512, 512, [], \"e22d\", \"M192 93.7C192 59.5 221 0 256 0c36 0 64 59.5 64 93.7l0 66.3L497.8 278.5c8.9 5.9 14.2 15.9 14.2 26.6v56.7c0 10.9-10.7 18.6-21.1 15.2L320 320v80l57.6 43.2c4 3 6.4 7.8 6.4 12.8v42c0 7.8-6.3 14-14 14c-1.3 0-2.6-.2-3.9-.5L256 480 145.9 511.5c-1.3 .4-2.6 .5-3.9 .5c-7.8 0-14-6.3-14-14V456c0-5 2.4-9.8 6.4-12.8L192 400V320L21.1 377C10.7 380.4 0 372.7 0 361.8V305.1c0-10.7 5.3-20.7 14.2-26.6L192 160V93.7z\"]\n};\nvar faPiggyBank = {\n prefix: 'fas',\n iconName: 'piggy-bank',\n icon: [576, 512, [], \"f4d3\", \"M400 96l0 .7c-5.3-.4-10.6-.7-16-.7H256c-16.5 0-32.5 2.1-47.8 6c-.1-2-.2-4-.2-6c0-53 43-96 96-96s96 43 96 96zm-16 32c3.5 0 7 .1 10.4 .3c4.2 .3 8.4 .7 12.6 1.3C424.6 109.1 450.8 96 480 96h11.5c10.4 0 18 9.8 15.5 19.9l-13.8 55.2c15.8 14.8 28.7 32.8 37.5 52.9H544c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H512c-9.1 12.1-19.9 22.9-32 32v64c0 17.7-14.3 32-32 32H416c-17.7 0-32-14.3-32-32V448H256v32c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32V416c-34.9-26.2-58.7-66.3-63.2-112H68c-37.6 0-68-30.4-68-68s30.4-68 68-68h4c13.3 0 24 10.7 24 24s-10.7 24-24 24H68c-11 0-20 9-20 20s9 20 20 20H99.2c12.1-59.8 57.7-107.5 116.3-122.8c12.9-3.4 26.5-5.2 40.5-5.2H384zm64 136a24 24 0 1 0 -48 0 24 24 0 1 0 48 0z\"]\n};\nvar faBatteryHalf = {\n prefix: 'fas',\n iconName: 'battery-half',\n icon: [576, 512, [\"battery-3\"], \"f242\", \"M464 160c8.8 0 16 7.2 16 16V336c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16H464zM80 96C35.8 96 0 131.8 0 176V336c0 44.2 35.8 80 80 80H464c44.2 0 80-35.8 80-80V320c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32V176c0-44.2-35.8-80-80-80H80zm208 96H96V320H288V192z\"]\n};\nvar faBattery3 = faBatteryHalf;\nvar faMountainCity = {\n prefix: 'fas',\n iconName: 'mountain-city',\n icon: [640, 512, [], \"e52e\", \"M336 0c-26.5 0-48 21.5-48 48v92.1l71.4 118.4c2.5-1.6 5.4-2.5 8.6-2.5h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16h-3.5l73.8 122.4c12.4 20.6 12.9 46.3 1.2 67.3c-.4 .8-.9 1.6-1.4 2.3H592c26.5 0 48-21.5 48-48V240c0-26.5-21.5-48-48-48H568V120c0-13.3-10.7-24-24-24s-24 10.7-24 24v72H480V48c0-26.5-21.5-48-48-48H336zm32 64h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16V80c0-8.8 7.2-16 16-16zM352 176c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16V176zm160 96c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H528c-8.8 0-16-7.2-16-16V272zm16 80h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H528c-8.8 0-16-7.2-16-16V368c0-8.8 7.2-16 16-16zM224 188.9L283.8 288H223l-48 64-24.6-41.2L224 188.9zm29.4-44.2C247.1 134.3 236 128 224 128s-23.1 6.3-29.4 16.7L5.1 458.9c-6.5 10.8-6.7 24.3-.7 35.3S22 512 34.5 512H413.5c12.5 0 24-6.8 30.1-17.8s5.8-24.5-.7-35.3L253.4 144.7z\"]\n};\nvar faCoins = {\n prefix: 'fas',\n iconName: 'coins',\n icon: [512, 512, [], \"f51e\", \"M512 80c0 18-14.3 34.6-38.4 48c-29.1 16.1-72.5 27.5-122.3 30.9c-3.7-1.8-7.4-3.5-11.3-5C300.6 137.4 248.2 128 192 128c-8.3 0-16.4 .2-24.5 .6l-1.1-.6C142.3 114.6 128 98 128 80c0-44.2 86-80 192-80S512 35.8 512 80zM160.7 161.1c10.2-.7 20.7-1.1 31.3-1.1c62.2 0 117.4 12.3 152.5 31.4C369.3 204.9 384 221.7 384 240c0 4-.7 7.9-2.1 11.7c-4.6 13.2-17 25.3-35 35.5c0 0 0 0 0 0c-.1 .1-.3 .1-.4 .2l0 0 0 0c-.3 .2-.6 .3-.9 .5c-35 19.4-90.8 32-153.6 32c-59.6 0-112.9-11.3-148.2-29.1c-1.9-.9-3.7-1.9-5.5-2.9C14.3 274.6 0 258 0 240c0-34.8 53.4-64.5 128-75.4c10.5-1.5 21.4-2.7 32.7-3.5zM416 240c0-21.9-10.6-39.9-24.1-53.4c28.3-4.4 54.2-11.4 76.2-20.5c16.3-6.8 31.5-15.2 43.9-25.5V176c0 19.3-16.5 37.1-43.8 50.9c-14.6 7.4-32.4 13.7-52.4 18.5c.1-1.8 .2-3.5 .2-5.3zm-32 96c0 18-14.3 34.6-38.4 48c-1.8 1-3.6 1.9-5.5 2.9C304.9 404.7 251.6 416 192 416c-62.8 0-118.6-12.6-153.6-32C14.3 370.6 0 354 0 336V300.6c12.5 10.3 27.6 18.7 43.9 25.5C83.4 342.6 135.8 352 192 352s108.6-9.4 148.1-25.9c7.8-3.2 15.3-6.9 22.4-10.9c6.1-3.4 11.8-7.2 17.2-11.2c1.5-1.1 2.9-2.3 4.3-3.4V304v5.7V336zm32 0V304 278.1c19-4.2 36.5-9.5 52.1-16c16.3-6.8 31.5-15.2 43.9-25.5V272c0 10.5-5 21-14.9 30.9c-16.3 16.3-45 29.7-81.3 38.4c.1-1.7 .2-3.5 .2-5.3zM192 448c56.2 0 108.6-9.4 148.1-25.9c16.3-6.8 31.5-15.2 43.9-25.5V432c0 44.2-86 80-192 80S0 476.2 0 432V396.6c12.5 10.3 27.6 18.7 43.9 25.5C83.4 438.6 135.8 448 192 448z\"]\n};\nvar faKhanda = {\n prefix: 'fas',\n iconName: 'khanda',\n icon: [512, 512, [9772], \"f66d\", \"M245.8 3.7c5.9-4.9 14.6-4.9 20.5 0l48 40c5.9 4.9 7.5 13.2 3.8 19.9l0 0 0 0 0 0 0 0-.1 .1-.3 .6c-.3 .5-.7 1.3-1.2 2.3c-1 2-2.6 5-4.4 8.6c-.5 .9-.9 1.9-1.4 2.9C344.9 97.4 368 134 368 176s-23.1 78.6-57.3 97.8c.5 1 1 2 1.4 2.9c1.8 3.7 3.3 6.6 4.4 8.6c.5 1 .9 1.8 1.2 2.3l.3 .6 .1 .1 0 0 0 0c3.6 6.7 2 15-3.8 19.9L272 343.5v19.8l35.6-24.5 41.1-28.2c42.8-29.4 68.4-78 68.4-130c0-31.1-9.2-61.6-26.5-87.5l-2.8-4.2c-4-6-3.5-14 1.3-19.5s12.7-7 19.2-3.7L401.1 80c7.2-14.3 7.2-14.3 7.2-14.3l0 0 0 0 .1 0 .3 .2 1 .5c.8 .4 2 1.1 3.5 1.9c2.9 1.7 7 4.1 11.8 7.3c9.6 6.4 22.5 16.1 35.4 29c25.7 25.7 52.7 65.6 52.7 119.3c0 53.1-26.4 100.5-51.2 133.6c-12.6 16.7-25.1 30.3-34.5 39.7c-4.7 4.7-8.7 8.4-11.5 10.9c-1.4 1.3-2.5 2.2-3.3 2.9l-.9 .8-.3 .2-.1 .1 0 0 0 0s0 0-10.2-12.3l10.2 12.3c-5.1 4.3-12.4 4.9-18.2 1.6l-75.6-43-32.7 22.5 45.5 31.3c1.8-.4 3.7-.7 5.7-.7c13.3 0 24 10.7 24 24s-10.7 24-24 24c-12.2 0-22.3-9.1-23.8-21L272 423.4v28.9c9.6 5.5 16 15.9 16 27.7c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-11.8 6.4-22.2 16-27.7V424.1l-40.3 27.7C197.8 463.3 187.9 472 176 472c-13.3 0-24-10.7-24-24s10.7-24 24-24c2.2 0 4.4 .3 6.5 .9l45.8-31.5-32.7-22.5-75.6 43c-5.8 3.3-13 2.7-18.2-1.6L112 400c-10.2 12.3-10.2 12.3-10.3 12.3l0 0 0 0-.1-.1-.3-.2-.9-.8c-.8-.7-1.9-1.7-3.3-2.9c-2.8-2.5-6.7-6.2-11.5-10.9c-9.4-9.4-21.9-23-34.5-39.7C26.4 324.5 0 277.1 0 224c0-53.7 26.9-93.6 52.7-119.3c12.9-12.9 25.8-22.6 35.4-29C93 72.5 97 70 99.9 68.4c1.5-.8 2.6-1.5 3.5-1.9l1-.5 .3-.2 .1 0 0 0 0 0s0 0 7.2 14.3l-7.2-14.3c6.5-3.2 14.3-1.7 19.2 3.7s5.3 13.4 1.3 19.5l-2.8 4.2C105.2 119 96 149.5 96 180.6c0 51.9 25.6 100.6 68.4 130l41.1 28.2L240 362.6V343.5l-42.2-35.2c-5.9-4.9-7.5-13.2-3.8-19.9l0 0 0 0 0 0 .1-.1 .3-.6c.3-.5 .7-1.3 1.2-2.3c1-2 2.6-5 4.4-8.6c.5-.9 .9-1.9 1.4-2.9C167.1 254.6 144 218 144 176s23.1-78.6 57.3-97.8c-.5-1-1-2-1.4-2.9c-1.8-3.7-3.3-6.6-4.4-8.6c-.5-1-.9-1.8-1.2-2.3l-.3-.6-.1-.1 0 0 0 0 0 0c-3.6-6.7-2-15 3.8-19.9l48-40zM220.2 122.9c-17 11.5-28.2 31-28.2 53.1s11.2 41.6 28.2 53.1C227 210.2 232 190.9 232 176s-5-34.2-11.8-53.1zm71.5 106.2c17-11.5 28.2-31 28.2-53.1s-11.2-41.6-28.2-53.1C285 141.8 280 161.1 280 176s5 34.2 11.8 53.1z\"]\n};\nvar faSliders = {\n prefix: 'fas',\n iconName: 'sliders',\n icon: [512, 512, [\"sliders-h\"], \"f1de\", \"M0 416c0 17.7 14.3 32 32 32l54.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L480 448c17.7 0 32-14.3 32-32s-14.3-32-32-32l-246.7 0c-12.3-28.3-40.5-48-73.3-48s-61 19.7-73.3 48L32 384c-17.7 0-32 14.3-32 32zm128 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM320 256a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm32-80c-32.8 0-61 19.7-73.3 48L32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l246.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48l54.7 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-54.7 0c-12.3-28.3-40.5-48-73.3-48zM192 128a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm73.3-64C253 35.7 224.8 16 192 16s-61 19.7-73.3 48L32 64C14.3 64 0 78.3 0 96s14.3 32 32 32l86.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L480 128c17.7 0 32-14.3 32-32s-14.3-32-32-32L265.3 64z\"]\n};\nvar faSlidersH = faSliders;\nvar faFolderTree = {\n prefix: 'fas',\n iconName: 'folder-tree',\n icon: [576, 512, [], \"f802\", \"M64 32C64 14.3 49.7 0 32 0S0 14.3 0 32v96V384c0 35.3 28.7 64 64 64H256V384H64V160H256V96H64V32zM288 192c0 17.7 14.3 32 32 32H544c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32H445.3c-8.5 0-16.6-3.4-22.6-9.4L409.4 9.4c-6-6-14.1-9.4-22.6-9.4H320c-17.7 0-32 14.3-32 32V192zm0 288c0 17.7 14.3 32 32 32H544c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32H445.3c-8.5 0-16.6-3.4-22.6-9.4l-13.3-13.3c-6-6-14.1-9.4-22.6-9.4H320c-17.7 0-32 14.3-32 32V480z\"]\n};\nvar faNetworkWired = {\n prefix: 'fas',\n iconName: 'network-wired',\n icon: [640, 512, [], \"f6ff\", \"M256 64H384v64H256V64zM240 0c-26.5 0-48 21.5-48 48v96c0 26.5 21.5 48 48 48h48v32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h96v32H80c-26.5 0-48 21.5-48 48v96c0 26.5 21.5 48 48 48H240c26.5 0 48-21.5 48-48V368c0-26.5-21.5-48-48-48H192V288H448v32H400c-26.5 0-48 21.5-48 48v96c0 26.5 21.5 48 48 48H560c26.5 0 48-21.5 48-48V368c0-26.5-21.5-48-48-48H512V288h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H352V192h48c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H240zM96 448V384H224v64H96zm320-64H544v64H416V384z\"]\n};\nvar faMapPin = {\n prefix: 'fas',\n iconName: 'map-pin',\n icon: [320, 512, [128205], \"f276\", \"M16 144a144 144 0 1 1 288 0A144 144 0 1 1 16 144zM160 80c8.8 0 16-7.2 16-16s-7.2-16-16-16c-53 0-96 43-96 96c0 8.8 7.2 16 16 16s16-7.2 16-16c0-35.3 28.7-64 64-64zM128 480V317.1c10.4 1.9 21.1 2.9 32 2.9s21.6-1 32-2.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32z\"]\n};\nvar faHamsa = {\n prefix: 'fas',\n iconName: 'hamsa',\n icon: [512, 512, [], \"f665\", \"M34.6 288H80c8.8 0 16-7.2 16-16V72c0-22.1 17.9-40 40-40s40 17.9 40 40V204c0 11 9 20 20 20s20-9 20-20V40c0-22.1 17.9-40 40-40s40 17.9 40 40V204c0 11 9 20 20 20s20-9 20-20V72c0-22.1 17.9-40 40-40s40 17.9 40 40V272c0 8.8 7.2 16 16 16h45.4c19.1 0 34.6 15.5 34.6 34.6c0 8.6-3.2 16.9-9 23.3L416.6 441c-41.1 45.2-99.4 71-160.6 71s-119.4-25.8-160.6-71L9 345.9c-5.8-6.4-9-14.7-9-23.3C0 303.5 15.5 288 34.6 288zM256 288c-38.4 0-76.8 35.8-90.6 50.2c-3.6 3.7-5.4 8.7-5.4 13.8s1.8 10.1 5.4 13.8C179.2 380.2 217.6 416 256 416s76.8-35.8 90.6-50.2c3.6-3.7 5.4-8.7 5.4-13.8s-1.8-10.1-5.4-13.8C332.8 323.8 294.4 288 256 288zm0 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faCentSign = {\n prefix: 'fas',\n iconName: 'cent-sign',\n icon: [384, 512, [], \"e3f5\", \"M224 0c17.7 0 32 14.3 32 32V66.7c30.9 5.2 59.2 17.7 83.2 35.8c14.1 10.6 17 30.7 6.4 44.8s-30.7 17-44.8 6.4C279.4 137.5 252.9 128 224 128c-70.7 0-128 57.3-128 128s57.3 128 128 128c28.9 0 55.4-9.5 76.8-25.6c14.1-10.6 34.2-7.8 44.8 6.4s7.8 34.2-6.4 44.8c-24 18-52.4 30.6-83.2 35.8V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V445.3C101.2 430.1 32 351.1 32 256s69.2-174.1 160-189.3V32c0-17.7 14.3-32 32-32z\"]\n};\nvar faFlask = {\n prefix: 'fas',\n iconName: 'flask',\n icon: [448, 512, [], \"f0c3\", \"M288 0H160 128C110.3 0 96 14.3 96 32s14.3 32 32 32V196.8c0 11.8-3.3 23.5-9.5 33.5L10.3 406.2C3.6 417.2 0 429.7 0 442.6C0 480.9 31.1 512 69.4 512H378.6c38.3 0 69.4-31.1 69.4-69.4c0-12.8-3.6-25.4-10.3-36.4L329.5 230.4c-6.2-10.1-9.5-21.7-9.5-33.5V64c17.7 0 32-14.3 32-32s-14.3-32-32-32H288zM192 196.8V64h64V196.8c0 23.7 6.6 46.9 19 67.1L309.5 320h-171L173 263.9c12.4-20.2 19-43.4 19-67.1z\"]\n};\nvar faPersonPregnant = {\n prefix: 'fas',\n iconName: 'person-pregnant',\n icon: [384, 512, [], \"e31e\", \"M192 0a48 48 0 1 1 0 96 48 48 0 1 1 0-96zM120 383c-13.8-3.6-24-16.1-24-31V296.9l-4.6 7.6c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c15-24.9 40.3-41.5 68.7-45.6c4.1-.6 8.2-1 12.5-1h1.1 12.5H192c1.4 0 2.8 .1 4.1 .3c35.7 2.9 65.4 29.3 72.1 65l6.1 32.5c44.3 8.6 77.7 47.5 77.7 94.3v32c0 17.7-14.3 32-32 32H304 264v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384h-8-8v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V383z\"]\n};\nvar faWandSparkles = {\n prefix: 'fas',\n iconName: 'wand-sparkles',\n icon: [512, 512, [], \"f72b\", \"M464 6.1c9.5-8.5 24-8.1 33 .9l8 8c9 9 9.4 23.5 .9 33l-85.8 95.9c-2.6 2.9-4.1 6.7-4.1 10.7V176c0 8.8-7.2 16-16 16H384.2c-4.6 0-8.9 1.9-11.9 5.3L100.7 500.9C94.3 508 85.3 512 75.8 512c-8.8 0-17.3-3.5-23.5-9.8L9.7 459.7C3.5 453.4 0 445 0 436.2c0-9.5 4-18.5 11.1-24.8l111.6-99.8c3.4-3 5.3-7.4 5.3-11.9V272c0-8.8 7.2-16 16-16h34.6c3.9 0 7.7-1.5 10.7-4.1L464 6.1zM432 288c3.6 0 6.7 2.4 7.7 5.8l14.8 51.7 51.7 14.8c3.4 1 5.8 4.1 5.8 7.7s-2.4 6.7-5.8 7.7l-51.7 14.8-14.8 51.7c-1 3.4-4.1 5.8-7.7 5.8s-6.7-2.4-7.7-5.8l-14.8-51.7-51.7-14.8c-3.4-1-5.8-4.1-5.8-7.7s2.4-6.7 5.8-7.7l51.7-14.8 14.8-51.7c1-3.4 4.1-5.8 7.7-5.8zM87.7 69.8l14.8 51.7 51.7 14.8c3.4 1 5.8 4.1 5.8 7.7s-2.4 6.7-5.8 7.7l-51.7 14.8L87.7 218.2c-1 3.4-4.1 5.8-7.7 5.8s-6.7-2.4-7.7-5.8L57.5 166.5 5.8 151.7c-3.4-1-5.8-4.1-5.8-7.7s2.4-6.7 5.8-7.7l51.7-14.8L72.3 69.8c1-3.4 4.1-5.8 7.7-5.8s6.7 2.4 7.7 5.8zM208 0c3.7 0 6.9 2.5 7.8 6.1l6.8 27.3 27.3 6.8c3.6 .9 6.1 4.1 6.1 7.8s-2.5 6.9-6.1 7.8l-27.3 6.8-6.8 27.3c-.9 3.6-4.1 6.1-7.8 6.1s-6.9-2.5-7.8-6.1l-6.8-27.3-27.3-6.8c-3.6-.9-6.1-4.1-6.1-7.8s2.5-6.9 6.1-7.8l27.3-6.8 6.8-27.3c.9-3.6 4.1-6.1 7.8-6.1z\"]\n};\nvar faEllipsisVertical = {\n prefix: 'fas',\n iconName: 'ellipsis-vertical',\n icon: [128, 512, [\"ellipsis-v\"], \"f142\", \"M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z\"]\n};\nvar faEllipsisV = faEllipsisVertical;\nvar faTicket = {\n prefix: 'fas',\n iconName: 'ticket',\n icon: [576, 512, [127903], \"f145\", \"M64 64C28.7 64 0 92.7 0 128v64c0 8.8 7.4 15.7 15.7 18.6C34.5 217.1 48 235 48 256s-13.5 38.9-32.3 45.4C7.4 304.3 0 311.2 0 320v64c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V320c0-8.8-7.4-15.7-15.7-18.6C541.5 294.9 528 277 528 256s13.5-38.9 32.3-45.4c8.3-2.9 15.7-9.8 15.7-18.6V128c0-35.3-28.7-64-64-64H64zm64 112l0 160c0 8.8 7.2 16 16 16H432c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H144c-8.8 0-16 7.2-16 16zM96 160c0-17.7 14.3-32 32-32H448c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32V160z\"]\n};\nvar faPowerOff = {\n prefix: 'fas',\n iconName: 'power-off',\n icon: [512, 512, [9211], \"f011\", \"M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V256c0 17.7 14.3 32 32 32s32-14.3 32-32V32zM143.5 120.6c13.6-11.3 15.4-31.5 4.1-45.1s-31.5-15.4-45.1-4.1C49.7 115.4 16 181.8 16 256c0 132.5 107.5 240 240 240s240-107.5 240-240c0-74.2-33.8-140.6-86.6-184.6c-13.6-11.3-33.8-9.4-45.1 4.1s-9.4 33.8 4.1 45.1c38.9 32.3 63.5 81 63.5 135.4c0 97.2-78.8 176-176 176s-176-78.8-176-176c0-54.4 24.7-103.1 63.5-135.4z\"]\n};\nvar faRightLong = {\n prefix: 'fas',\n iconName: 'right-long',\n icon: [512, 512, [\"long-arrow-alt-right\"], \"f30b\", \"M334.5 414c8.8 3.8 19 2 26-4.6l144-136c4.8-4.5 7.5-10.8 7.5-17.4s-2.7-12.9-7.5-17.4l-144-136c-7-6.6-17.2-8.4-26-4.6s-14.5 12.5-14.5 22l0 72L32 192c-17.7 0-32 14.3-32 32l0 64c0 17.7 14.3 32 32 32l288 0 0 72c0 9.6 5.7 18.2 14.5 22z\"]\n};\nvar faLongArrowAltRight = faRightLong;\nvar faFlagUsa = {\n prefix: 'fas',\n iconName: 'flag-usa',\n icon: [448, 512, [], \"f74d\", \"M32 0C49.7 0 64 14.3 64 32V48l69-17.2c38.1-9.5 78.3-5.1 113.5 12.5c46.3 23.2 100.8 23.2 147.1 0l9.6-4.8C423.8 28.1 448 43.1 448 66.1v36.1l-44.7 16.2c-42.8 15.6-90 13.9-131.6-4.6l-16.1-7.2c-20.3-9-41.8-14.7-63.6-16.9v32.2c17.4 2.1 34.4 6.7 50.6 13.9l16.1 7.2c49.2 21.9 105 23.8 155.6 5.4L448 136.3v62l-44.7 16.2c-42.8 15.6-90 13.9-131.6-4.6l-16.1-7.2c-40.2-17.9-85-22.5-128.1-13.3L64 203.1v32.7l70.2-15.1c36.4-7.8 74.3-3.9 108.4 11.3l16.1 7.2c49.2 21.9 105 23.8 155.6 5.4L448 232.3v62l-44.7 16.2c-42.8 15.6-90 13.9-131.6-4.6l-16.1-7.2c-40.2-17.9-85-22.5-128.1-13.3L64 299.1v32.7l70.2-15.1c36.4-7.8 74.3-3.9 108.4 11.3l16.1 7.2c49.2 21.9 105 23.8 155.6 5.4L448 328.3v33.5c0 13.3-8.3 25.3-20.8 30l-34.7 13c-46.2 17.3-97.6 14.6-141.7-7.4c-37.9-19-81.3-23.7-122.5-13.4L64 400v80c0 17.7-14.3 32-32 32s-32-14.3-32-32V416 345.5 312.8 249.5 216.8 153.5 120.8 64 32C0 14.3 14.3 0 32 0zm80 96A16 16 0 1 0 80 96a16 16 0 1 0 32 0zm32 0a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm-32 48a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm32 0a16 16 0 1 0 0-32 16 16 0 1 0 0 32z\"]\n};\nvar faLaptopFile = {\n prefix: 'fas',\n iconName: 'laptop-file',\n icon: [640, 512, [], \"e51d\", \"M128 0C92.7 0 64 28.7 64 64V288H19.2C8.6 288 0 296.6 0 307.2C0 349.6 34.4 384 76.8 384H320V288H128V64H448V96h64V64c0-35.3-28.7-64-64-64H128zM512 128H400c-26.5 0-48 21.5-48 48V464c0 26.5 21.5 48 48 48H592c26.5 0 48-21.5 48-48V256H544c-17.7 0-32-14.3-32-32V128zm32 0v96h96l-96-96z\"]\n};\nvar faTty = {\n prefix: 'fas',\n iconName: 'tty',\n icon: [512, 512, [\"teletype\"], \"f1e4\", \"M38.3 241.3L15.1 200.6c-9.2-16.2-8.4-36.5 4.5-50C61.4 106.8 144.7 48 256 48s194.6 58.8 236.4 102.6c12.9 13.5 13.7 33.8 4.5 50l-23.1 40.7c-7.5 13.2-23.3 19.3-37.8 14.6l-81.1-26.6c-13.1-4.3-22-16.6-22-30.4V144c-49.6-18.1-104-18.1-153.6 0v54.8c0 13.8-8.9 26.1-22 30.4L76.1 255.8c-14.5 4.7-30.3-1.4-37.8-14.6zM32 336c0-8.8 7.2-16 16-16H80c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V336zm0 96c0-8.8 7.2-16 16-16H80c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H48c-8.8 0-16-7.2-16-16V432zM144 320h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H144c-8.8 0-16-7.2-16-16V336c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H240c-8.8 0-16-7.2-16-16V336zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H336c-8.8 0-16-7.2-16-16V336c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H432c-8.8 0-16-7.2-16-16V336zm16 80h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H432c-8.8 0-16-7.2-16-16V432c0-8.8 7.2-16 16-16zM128 432c0-8.8 7.2-16 16-16H368c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H144c-8.8 0-16-7.2-16-16V432z\"]\n};\nvar faTeletype = faTty;\nvar faDiagramNext = {\n prefix: 'fas',\n iconName: 'diagram-next',\n icon: [512, 512, [], \"e476\", \"M512 160c0 35.3-28.7 64-64 64H280v64h46.1c21.4 0 32.1 25.9 17 41L273 399c-9.4 9.4-24.6 9.4-33.9 0L169 329c-15.1-15.1-4.4-41 17-41H232V224H64c-35.3 0-64-28.7-64-64V96C0 60.7 28.7 32 64 32H448c35.3 0 64 28.7 64 64v64zM448 416V352H365.3l.4-.4c18.4-18.4 20.4-43.7 11-63.6l71.3 0c35.3 0 64 28.7 64 64v64c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64V352c0-35.3 28.7-64 64-64l71.3 0c-9.4 19.9-7.4 45.2 11 63.6l.4 .4H64v64H210.7l5.7 5.7c21.9 21.9 57.3 21.9 79.2 0l5.7-5.7H448z\"]\n};\nvar faPersonRifle = {\n prefix: 'fas',\n iconName: 'person-rifle',\n icon: [576, 512, [], \"e54e\", \"M265.2 192c25.4 0 49.8 7.1 70.8 19.9V512H144V337.7L90.4 428.3c-11.2 19-35.8 25.3-54.8 14.1s-25.3-35.8-14.1-54.8L97.7 258.8c24.5-41.4 69-66.8 117.1-66.8h50.4zM160 80a80 80 0 1 1 160 0A80 80 0 1 1 160 80zM448 0c8.8 0 16 7.2 16 16V132.3c9.6 5.5 16 15.9 16 27.7V269.3l16-5.3V208c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v84.5c0 6.9-4.4 13-10.9 15.2L480 325.3V352h48c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16H484l23 92.1c2.5 10.1-5.1 19.9-15.5 19.9H432c-8.8 0-16-7.2-16-16V400H400c-17.7 0-32-14.3-32-32V224c0-17.7 14.3-32 32-32V160c0-11.8 6.4-22.2 16-27.7V32c-8.8 0-16-7.2-16-16s7.2-16 16-16h16 16z\"]\n};\nvar faHouseMedicalCircleExclamation = {\n prefix: 'fas',\n iconName: 'house-medical-circle-exclamation',\n icon: [640, 512, [], \"e512\", \"M320 368c0 59.5 29.5 112.1 74.8 144H128.1c-35.3 0-64-28.7-64-64V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L522.1 193.9c-8.5-1.3-17.3-1.9-26.1-1.9c-54.7 0-103.5 24.9-135.8 64H320V208c0-8.8-7.2-16-16-16H272c-8.8 0-16 7.2-16 16v48H208c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16zM496 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm0 240a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm0-192c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16V288c0-8.8-7.2-16-16-16z\"]\n};\nvar faClosedCaptioning = {\n prefix: 'fas',\n iconName: 'closed-captioning',\n icon: [576, 512, [], \"f20a\", \"M0 96C0 60.7 28.7 32 64 32H512c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zM200 208c14.2 0 27 6.1 35.8 16c8.8 9.9 24 10.7 33.9 1.9s10.7-24 1.9-33.9c-17.5-19.6-43.1-32-71.5-32c-53 0-96 43-96 96s43 96 96 96c28.4 0 54-12.4 71.5-32c8.8-9.9 8-25-1.9-33.9s-25-8-33.9 1.9c-8.8 9.9-21.6 16-35.8 16c-26.5 0-48-21.5-48-48s21.5-48 48-48zm144 48c0-26.5 21.5-48 48-48c14.2 0 27 6.1 35.8 16c8.8 9.9 24 10.7 33.9 1.9s10.7-24 1.9-33.9c-17.5-19.6-43.1-32-71.5-32c-53 0-96 43-96 96s43 96 96 96c28.4 0 54-12.4 71.5-32c8.8-9.9 8-25-1.9-33.9s-25-8-33.9 1.9c-8.8 9.9-21.6 16-35.8 16c-26.5 0-48-21.5-48-48z\"]\n};\nvar faPersonHiking = {\n prefix: 'fas',\n iconName: 'person-hiking',\n icon: [384, 512, [\"hiking\"], \"f6ec\", \"M192 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm51.3 182.7L224.2 307l49.7 49.7c9 9 14.1 21.2 14.1 33.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V397.3l-73.9-73.9c-15.8-15.8-22.2-38.6-16.9-60.3l20.4-84c8.3-34.1 42.7-54.9 76.7-46.4c19 4.8 35.6 16.4 46.4 32.7L305.1 208H336V184c0-13.3 10.7-24 24-24s24 10.7 24 24v55.8c0 .1 0 .2 0 .2s0 .2 0 .2V488c0 13.3-10.7 24-24 24s-24-10.7-24-24V272H296.6c-16 0-31-8-39.9-21.4l-13.3-20zM81.1 471.9L117.3 334c3 4.2 6.4 8.2 10.1 11.9l41.9 41.9L142.9 488.1c-4.5 17.1-22 27.3-39.1 22.8s-27.3-22-22.8-39.1zm55.5-346L101.4 266.5c-3 12.1-14.9 19.9-27.2 17.9l-47.9-8c-14-2.3-22.9-16.3-19.2-30L31.9 155c9.5-34.8 41.1-59 77.2-59h4.2c15.6 0 27.1 14.7 23.3 29.8z\"]\n};\nvar faHiking = faPersonHiking;\nvar faVenusDouble = {\n prefix: 'fas',\n iconName: 'venus-double',\n icon: [640, 512, [9890], \"f226\", \"M192 288a112 112 0 1 0 0-224 112 112 0 1 0 0 224zM368 176c0 86.3-62.1 158.1-144 173.1V384h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H224v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H128c-17.7 0-32-14.3-32-32s14.3-32 32-32h32V349.1C78.1 334.1 16 262.3 16 176C16 78.8 94.8 0 192 0s176 78.8 176 176zM344 318c14.6-15.6 26.8-33.4 36-53c18.8 14.4 42.4 23 68 23c61.9 0 112-50.1 112-112s-50.1-112-112-112c-25.6 0-49.1 8.6-68 23c-9.3-19.5-21.5-37.4-36-53C373.1 12.6 409.1 0 448 0c97.2 0 176 78.8 176 176c0 86.3-62.1 158.1-144 173.1V384h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H480v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448H384c-17.7 0-32-14.3-32-32s14.3-32 32-32h32V349.1c-26.6-4.9-51.1-15.7-72-31.1z\"]\n};\nvar faImages = {\n prefix: 'fas',\n iconName: 'images',\n icon: [576, 512, [], \"f302\", \"M160 32c-35.3 0-64 28.7-64 64V320c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H160zM396 138.7l96 144c4.9 7.4 5.4 16.8 1.2 24.6S480.9 320 472 320H328 280 200c-9.2 0-17.6-5.3-21.6-13.6s-2.9-18.2 2.9-25.4l64-80c4.6-5.7 11.4-9 18.7-9s14.2 3.3 18.7 9l17.3 21.6 56-84C360.5 132 368 128 376 128s15.5 4 20 10.7zM192 128a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM48 120c0-13.3-10.7-24-24-24S0 106.7 0 120V344c0 75.1 60.9 136 136 136H456c13.3 0 24-10.7 24-24s-10.7-24-24-24H136c-48.6 0-88-39.4-88-88V120z\"]\n};\nvar faCalculator = {\n prefix: 'fas',\n iconName: 'calculator',\n icon: [384, 512, [128425], \"f1ec\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64zM96 64H288c17.7 0 32 14.3 32 32v32c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V96c0-17.7 14.3-32 32-32zm32 160a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zM96 352a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM64 416c0-17.7 14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H96c-17.7 0-32-14.3-32-32zM192 256a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm32 64a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm64-64a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm32 64a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zM288 448a32 32 0 1 1 0-64 32 32 0 1 1 0 64z\"]\n};\nvar faPeoplePulling = {\n prefix: 'fas',\n iconName: 'people-pulling',\n icon: [576, 512, [], \"e535\", \"M80 96A48 48 0 1 0 80 0a48 48 0 1 0 0 96zM64 128c-35.3 0-64 28.7-64 64V320c0 17.7 14.3 32 32 32c9.8 0 18.5-4.4 24.4-11.2L80.4 485.3c2.9 17.4 19.4 29.2 36.8 26.3s29.2-19.4 26.3-36.8L123.1 352h15.7l30 134.9c3.8 17.3 20.9 28.1 38.2 24.3s28.1-20.9 24.3-38.2l-57.3-258 116.3 53.8c.5 .3 1.1 .5 1.6 .7c8.6 3.6 18 3.1 25.9-.7c3.4-1.6 6.6-3.9 9.3-6.7c3.1-3.2 5.5-7 7.1-11.4c.1-.3 .2-.7 .3-1l2.5-7.5c5.7-17.1 18.3-30.9 34.7-38.2l8-3.5c1-.4 1.9-.8 2.9-1.2l-16.9 63.5c-5.6 21.1-.1 43.6 14.7 59.7l70.7 77.1 22 88.1c4.3 17.1 21.7 27.6 38.8 23.3s27.6-21.7 23.3-38.8l-23-92.1c-1.9-7.8-5.8-14.9-11.2-20.8l-49.5-54 19.3-65.5 9.6 23c4.4 10.6 12.5 19.3 22.8 24.5l26.7 13.3c15.8 7.9 35 1.5 42.9-14.3s1.5-35-14.3-42.9L537 232.7l-15.3-36.8C504.5 154.8 464.3 128 419.7 128c-22.8 0-45.3 4.8-66.1 14l-8 3.5c-24.4 10.9-44.6 29-58.1 51.6L157.3 136.9C144.7 131 130.9 128 117 128H64zM464 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM349.7 335.6l-25 62.4-59.4 59.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L372.3 441c4.6-4.6 8.2-10.1 10.6-16.1l14.5-36.2-40.7-44.4c-2.5-2.7-4.8-5.6-7-8.6z\"]\n};\nvar faN = {\n prefix: 'fas',\n iconName: 'n',\n icon: [384, 512, [110], \"4e\", \"M21.1 33.9c12.7-4.6 26.9-.7 35.5 9.6L320 359.6V64c0-17.7 14.3-32 32-32s32 14.3 32 32V448c0 13.5-8.4 25.5-21.1 30.1s-26.9 .7-35.5-9.6L64 152.4V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V64C0 50.5 8.4 38.5 21.1 33.9z\"]\n};\nvar faCableCar = {\n prefix: 'fas',\n iconName: 'cable-car',\n icon: [512, 512, [128673, 57551, \"tram\"], \"f7da\", \"M288 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM160 56a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM32 288c0-35.3 28.7-64 64-64H232V157.5l-203.1 42c-13 2.7-25.7-5.7-28.4-18.6s5.7-25.7 18.6-28.4l232-48 232-48c13-2.7 25.7 5.7 28.4 18.6s-5.7 25.7-18.6 28.4L280 147.5V224H416c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V288zm64 0c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V304c0-8.8-7.2-16-16-16H96zm112 16v64c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V304c0-8.8-7.2-16-16-16H224c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V304c0-8.8-7.2-16-16-16H352z\"]\n};\nvar faTram = faCableCar;\nvar faCloudRain = {\n prefix: 'fas',\n iconName: 'cloud-rain',\n icon: [512, 512, [127783, 9926], \"f73d\", \"M96 320c-53 0-96-43-96-96c0-42.5 27.6-78.6 65.9-91.2C64.7 126.1 64 119.1 64 112C64 50.1 114.1 0 176 0c43.1 0 80.5 24.3 99.2 60c14.7-17.1 36.5-28 60.8-28c44.2 0 80 35.8 80 80c0 5.5-.6 10.8-1.6 16c.5 0 1.1 0 1.6 0c53 0 96 43 96 96s-43 96-96 96H96zm-6.8 52c1.3-2.5 3.9-4 6.8-4s5.4 1.5 6.8 4l35.1 64.6c4.1 7.5 6.2 15.8 6.2 24.3v3c0 26.5-21.5 48-48 48s-48-21.5-48-48v-3c0-8.5 2.1-16.9 6.2-24.3L89.2 372zm160 0c1.3-2.5 3.9-4 6.8-4s5.4 1.5 6.8 4l35.1 64.6c4.1 7.5 6.2 15.8 6.2 24.3v3c0 26.5-21.5 48-48 48s-48-21.5-48-48v-3c0-8.5 2.1-16.9 6.2-24.3L249.2 372zm124.9 64.6L409.2 372c1.3-2.5 3.9-4 6.8-4s5.4 1.5 6.8 4l35.1 64.6c4.1 7.5 6.2 15.8 6.2 24.3v3c0 26.5-21.5 48-48 48s-48-21.5-48-48v-3c0-8.5 2.1-16.9 6.2-24.3z\"]\n};\nvar faBuildingCircleXmark = {\n prefix: 'fas',\n iconName: 'building-circle-xmark',\n icon: [640, 512, [], \"e4d4\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c15.1 0 28.5-6.9 37.3-17.8C340.4 462.2 320 417.5 320 368c0-54.7 24.9-103.5 64-135.8V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm59.3-180.7L518.6 368l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L496 390.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L473.4 368l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L496 345.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faShip = {\n prefix: 'fas',\n iconName: 'ship',\n icon: [576, 512, [128674], \"f21a\", \"M192 32c0-17.7 14.3-32 32-32H352c17.7 0 32 14.3 32 32V64h48c26.5 0 48 21.5 48 48V240l44.4 14.8c23.1 7.7 29.5 37.5 11.5 53.9l-101 92.6c-16.2 9.4-34.7 15.1-50.9 15.1c-19.6 0-40.8-7.7-59.2-20.3c-22.1-15.5-51.6-15.5-73.7 0c-17.1 11.8-38 20.3-59.2 20.3c-16.2 0-34.7-5.7-50.9-15.1l-101-92.6c-18-16.5-11.6-46.2 11.5-53.9L96 240V112c0-26.5 21.5-48 48-48h48V32zM160 218.7l107.8-35.9c13.1-4.4 27.3-4.4 40.5 0L416 218.7V128H160v90.7zM306.5 421.9C329 437.4 356.5 448 384 448c26.9 0 55.4-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 501.7 417 512 384 512c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7l0 0C136.7 437.2 165.1 448 192 448c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z\"]\n};\nvar faArrowsDownToLine = {\n prefix: 'fas',\n iconName: 'arrows-down-to-line',\n icon: [576, 512, [], \"e4b8\", \"M544 416L32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l512 0c17.7 0 32-14.3 32-32s-14.3-32-32-32zm22.6-137.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L480 274.7 480 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 210.7-41.4-41.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0l96-96zm-320-45.3c-12.5-12.5-32.8-12.5-45.3 0L160 274.7 160 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 210.7L54.6 233.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0l96-96c12.5-12.5 12.5-32.8 0-45.3z\"]\n};\nvar faDownload = {\n prefix: 'fas',\n iconName: 'download',\n icon: [512, 512, [], \"f019\", \"M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V274.7l-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L288 274.7V32zM64 352c-35.3 0-64 28.7-64 64v32c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V416c0-35.3-28.7-64-64-64H346.5l-45.3 45.3c-25 25-65.5 25-90.5 0L165.5 352H64zm368 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faFaceGrin = {\n prefix: 'fas',\n iconName: 'face-grin',\n icon: [512, 512, [128512, \"grin\"], \"f580\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faGrin = faFaceGrin;\nvar faDeleteLeft = {\n prefix: 'fas',\n iconName: 'delete-left',\n icon: [576, 512, [9003, \"backspace\"], \"f55a\", \"M576 128c0-35.3-28.7-64-64-64H205.3c-17 0-33.3 6.7-45.3 18.7L9.4 233.4c-6 6-9.4 14.1-9.4 22.6s3.4 16.6 9.4 22.6L160 429.3c12 12 28.3 18.7 45.3 18.7H512c35.3 0 64-28.7 64-64V128zM271 175c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z\"]\n};\nvar faBackspace = faDeleteLeft;\nvar faEyeDropper = {\n prefix: 'fas',\n iconName: 'eye-dropper',\n icon: [512, 512, [\"eye-dropper-empty\", \"eyedropper\"], \"f1fb\", \"M341.6 29.2L240.1 130.8l-9.4-9.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-9.4-9.4L482.8 170.4c39-39 39-102.2 0-141.1s-102.2-39-141.1 0zM55.4 323.3c-15 15-23.4 35.4-23.4 56.6v42.4L5.4 462.2c-8.5 12.7-6.8 29.6 4 40.4s27.7 12.5 40.4 4L89.7 480h42.4c21.2 0 41.6-8.4 56.6-23.4L309.4 335.9l-45.3-45.3L143.4 411.3c-3 3-7.1 4.7-11.3 4.7H96V379.9c0-4.2 1.7-8.3 4.7-11.3L221.4 247.9l-45.3-45.3L55.4 323.3z\"]\n};\nvar faEyeDropperEmpty = faEyeDropper;\nvar faEyedropper = faEyeDropper;\nvar faFileCircleCheck = {\n prefix: 'fas',\n iconName: 'file-circle-check',\n icon: [576, 512, [], \"e5a0\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384v38.6C310.1 219.5 256 287.4 256 368c0 59.1 29.1 111.3 73.7 143.3c-3.2 .5-6.4 .7-9.7 .7H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zM288 368a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm211.3-43.3c-6.2-6.2-16.4-6.2-22.6 0L416 385.4l-28.7-28.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l40 40c6.2 6.2 16.4 6.2 22.6 0l72-72c6.2-6.2 6.2-16.4 0-22.6z\"]\n};\nvar faForward = {\n prefix: 'fas',\n iconName: 'forward',\n icon: [512, 512, [9193], \"f04e\", \"M52.5 440.6c-9.5 7.9-22.8 9.7-34.1 4.4S0 428.4 0 416V96C0 83.6 7.2 72.3 18.4 67s24.5-3.6 34.1 4.4L224 214.3V256v41.7L52.5 440.6zM256 352V256 128 96c0-12.4 7.2-23.7 18.4-29s24.5-3.6 34.1 4.4l192 160c7.3 6.1 11.5 15.1 11.5 24.6s-4.2 18.5-11.5 24.6l-192 160c-9.5 7.9-22.8 9.7-34.1 4.4s-18.4-16.6-18.4-29V352z\"]\n};\nvar faMobile = {\n prefix: 'fas',\n iconName: 'mobile',\n icon: [384, 512, [128241, \"mobile-android\", \"mobile-phone\"], \"f3ce\", \"M80 0C44.7 0 16 28.7 16 64V448c0 35.3 28.7 64 64 64H304c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H80zm80 432h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H160c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faMobileAndroid = faMobile;\nvar faMobilePhone = faMobile;\nvar faFaceMeh = {\n prefix: 'fas',\n iconName: 'face-meh',\n icon: [512, 512, [128528, \"meh\"], \"f11a\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM160 336H352c8.8 0 16 7.2 16 16s-7.2 16-16 16H160c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faMeh = faFaceMeh;\nvar faAlignCenter = {\n prefix: 'fas',\n iconName: 'align-center',\n icon: [448, 512, [], \"f037\", \"M352 64c0-17.7-14.3-32-32-32H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H320c17.7 0 32-14.3 32-32zm96 128c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32zM0 448c0 17.7 14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM352 320c0-17.7-14.3-32-32-32H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H320c17.7 0 32-14.3 32-32z\"]\n};\nvar faBookSkull = {\n prefix: 'fas',\n iconName: 'book-skull',\n icon: [448, 512, [\"book-dead\"], \"f6b7\", \"M0 96C0 43 43 0 96 0H384h32c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32v64c17.7 0 32 14.3 32 32s-14.3 32-32 32H384 96c-53 0-96-43-96-96V96zM64 416c0 17.7 14.3 32 32 32H352V384H96c-17.7 0-32 14.3-32 32zM320 112c0-35.3-35.8-64-80-64s-80 28.7-80 64c0 20.9 12.6 39.5 32 51.2V176c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V163.2c19.4-11.7 32-30.3 32-51.2zM208 96a16 16 0 1 1 0 32 16 16 0 1 1 0-32zm48 16a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zM134.3 209.3c-8.1-3.5-17.5 .3-21 8.4s.3 17.5 8.4 21L199.4 272l-77.7 33.3c-8.1 3.5-11.9 12.9-8.4 21s12.9 11.9 21 8.4L240 289.4l105.7 45.3c8.1 3.5 17.5-.3 21-8.4s-.3-17.5-8.4-21L280.6 272l77.7-33.3c8.1-3.5 11.9-12.9 8.4-21s-12.9-11.9-21-8.4L240 254.6 134.3 209.3z\"]\n};\nvar faBookDead = faBookSkull;\nvar faIdCard = {\n prefix: 'fas',\n iconName: 'id-card',\n icon: [576, 512, [62147, \"drivers-license\"], \"f2c2\", \"M0 96l576 0c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96zm0 32V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V128H0zM64 405.3c0-29.5 23.9-53.3 53.3-53.3H234.7c29.5 0 53.3 23.9 53.3 53.3c0 5.9-4.8 10.7-10.7 10.7H74.7c-5.9 0-10.7-4.8-10.7-10.7zM176 192a64 64 0 1 1 0 128 64 64 0 1 1 0-128zm176 16c0-8.8 7.2-16 16-16H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16zm0 64c0-8.8 7.2-16 16-16H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16zm0 64c0-8.8 7.2-16 16-16H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16z\"]\n};\nvar faDriversLicense = faIdCard;\nvar faOutdent = {\n prefix: 'fas',\n iconName: 'outdent',\n icon: [448, 512, [\"dedent\"], \"f03b\", \"M0 64C0 46.3 14.3 32 32 32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64zM192 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32zm32 96H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zM0 448c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM.2 268.6c-8.2-6.4-8.2-18.9 0-25.3l101.9-79.3c10.5-8.2 25.8-.7 25.8 12.6V335.3c0 13.3-15.3 20.8-25.8 12.6L.2 268.6z\"]\n};\nvar faDedent = faOutdent;\nvar faHeartCircleExclamation = {\n prefix: 'fas',\n iconName: 'heart-circle-exclamation',\n icon: [576, 512, [], \"e4fe\", \"M47.6 300.4L228.3 469.1c7.5 7 17.4 10.9 27.7 10.9s20.2-3.9 27.7-10.9l2.6-2.4C267.2 438.6 256 404.6 256 368c0-97.2 78.8-176 176-176c28.3 0 55 6.7 78.7 18.5c.9-6.5 1.3-13 1.3-19.6v-5.8c0-69.9-50.5-129.5-119.4-141C347 36.5 300.6 51.4 268 84L256 96 244 84c-32.6-32.6-79-47.5-124.6-39.9C50.5 55.6 0 115.2 0 185.1v5.8c0 41.5 17.2 81.2 47.6 109.5zM432 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faHouse = {\n prefix: 'fas',\n iconName: 'house',\n icon: [576, 512, [127968, 63498, 63500, \"home\", \"home-alt\", \"home-lg-alt\"], \"f015\", \"M575.8 255.5c0 18-15 32.1-32 32.1h-32l.7 160.2c0 2.7-.2 5.4-.5 8.1V472c0 22.1-17.9 40-40 40H456c-1.1 0-2.2 0-3.3-.1c-1.4 .1-2.8 .1-4.2 .1H416 392c-22.1 0-40-17.9-40-40V448 384c0-17.7-14.3-32-32-32H256c-17.7 0-32 14.3-32 32v64 24c0 22.1-17.9 40-40 40H160 128.1c-1.5 0-3-.1-4.5-.2c-1.2 .1-2.4 .2-3.6 .2H104c-22.1 0-40-17.9-40-40V360c0-.9 0-1.9 .1-2.8V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L564.8 231.5c8 7 12 15 11 24z\"]\n};\nvar faHome = faHouse;\nvar faHomeAlt = faHouse;\nvar faHomeLgAlt = faHouse;\nvar faCalendarWeek = {\n prefix: 'fas',\n iconName: 'calendar-week',\n icon: [448, 512, [], \"f784\", \"M128 0c17.7 0 32 14.3 32 32V64H288V32c0-17.7 14.3-32 32-32s32 14.3 32 32V64h48c26.5 0 48 21.5 48 48v48H0V112C0 85.5 21.5 64 48 64H96V32c0-17.7 14.3-32 32-32zM0 192H448V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V192zm80 64c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16H368c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H80z\"]\n};\nvar faLaptopMedical = {\n prefix: 'fas',\n iconName: 'laptop-medical',\n icon: [640, 512, [], \"f812\", \"M64 96c0-35.3 28.7-64 64-64H512c35.3 0 64 28.7 64 64V352H512V96H128V352H64V96zM0 403.2C0 392.6 8.6 384 19.2 384H620.8c10.6 0 19.2 8.6 19.2 19.2c0 42.4-34.4 76.8-76.8 76.8H76.8C34.4 480 0 445.6 0 403.2zM288 160c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v48h48c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H352v48c0 8.8-7.2 16-16 16H304c-8.8 0-16-7.2-16-16V272H240c-8.8 0-16-7.2-16-16V224c0-8.8 7.2-16 16-16h48V160z\"]\n};\nvar faB = {\n prefix: 'fas',\n iconName: 'b',\n icon: [320, 512, [98], \"42\", \"M64 32C28.7 32 0 60.7 0 96V256 416c0 35.3 28.7 64 64 64H192c70.7 0 128-57.3 128-128c0-46.5-24.8-87.3-62-109.7c18.7-22.3 30-51 30-82.3c0-70.7-57.3-128-128-128H64zm96 192H64V96h96c35.3 0 64 28.7 64 64s-28.7 64-64 64zM64 288h96 32c35.3 0 64 28.7 64 64s-28.7 64-64 64H64V288z\"]\n};\nvar faFileMedical = {\n prefix: 'fas',\n iconName: 'file-medical',\n icon: [384, 512, [], \"f477\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM160 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v48h48c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H224v48c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V352H112c-8.8 0-16-7.2-16-16V304c0-8.8 7.2-16 16-16h48V240z\"]\n};\nvar faDiceOne = {\n prefix: 'fas',\n iconName: 'dice-one',\n icon: [448, 512, [9856], \"f525\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM224 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faKiwiBird = {\n prefix: 'fas',\n iconName: 'kiwi-bird',\n icon: [576, 512, [], \"f535\", \"M291.2 388.4c31.2-18.8 64.7-36.4 101.1-36.4H448c4.6 0 9.1-.2 13.6-.7l85.3 121.9c4 5.7 11.3 8.2 17.9 6.1s11.2-8.3 11.2-15.3V224c0-70.7-57.3-128-128-128H392.3c-36.4 0-69.9-17.6-101.1-36.4C262.3 42.1 228.3 32 192 32C86 32 0 118 0 224c0 71.1 38.6 133.1 96 166.3V456c0 13.3 10.7 24 24 24s24-10.7 24-24V410c15.3 3.9 31.4 6 48 6c5.4 0 10.7-.2 16-.7V456c0 13.3 10.7 24 24 24s24-10.7 24-24V405.1c12.4-4.4 24.2-10 35.2-16.7zM448 200a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faArrowRightArrowLeft = {\n prefix: 'fas',\n iconName: 'arrow-right-arrow-left',\n icon: [448, 512, [8644, \"exchange\"], \"f0ec\", \"M438.6 150.6c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.7 96 32 96C14.3 96 0 110.3 0 128s14.3 32 32 32l306.7 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l96-96zm-333.3 352c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 416 416 416c17.7 0 32-14.3 32-32s-14.3-32-32-32l-306.7 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96z\"]\n};\nvar faExchange = faArrowRightArrowLeft;\nvar faRotateRight = {\n prefix: 'fas',\n iconName: 'rotate-right',\n icon: [512, 512, [\"redo-alt\", \"rotate-forward\"], \"f2f9\", \"M463.5 224H472c13.3 0 24-10.7 24-24V72c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2L413.4 96.6c-87.6-86.5-228.7-86.2-315.8 1c-87.5 87.5-87.5 229.3 0 316.8s229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3c62.2-62.2 162.7-62.5 225.3-1L327 183c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8H463.5z\"]\n};\nvar faRedoAlt = faRotateRight;\nvar faRotateForward = faRotateRight;\nvar faUtensils = {\n prefix: 'fas',\n iconName: 'utensils',\n icon: [448, 512, [127860, 61685, \"cutlery\"], \"f2e7\", \"M416 0C400 0 288 32 288 176V288c0 35.3 28.7 64 64 64h32V480c0 17.7 14.3 32 32 32s32-14.3 32-32V352 240 32c0-17.7-14.3-32-32-32zM64 16C64 7.8 57.9 1 49.7 .1S34.2 4.6 32.4 12.5L2.1 148.8C.7 155.1 0 161.5 0 167.9c0 45.9 35.1 83.6 80 87.7V480c0 17.7 14.3 32 32 32s32-14.3 32-32V255.6c44.9-4.1 80-41.8 80-87.7c0-6.4-.7-12.8-2.1-19.1L191.6 12.5c-1.8-8-9.3-13.3-17.4-12.4S160 7.8 160 16V150.2c0 5.4-4.4 9.8-9.8 9.8c-5.1 0-9.3-3.9-9.8-9L127.9 14.6C127.2 6.3 120.3 0 112 0s-15.2 6.3-15.9 14.6L83.7 151c-.5 5.1-4.7 9-9.8 9c-5.4 0-9.8-4.4-9.8-9.8V16zm48.3 152l-.3 0-.3 0 .3-.7 .3 .7z\"]\n};\nvar faCutlery = faUtensils;\nvar faArrowUpWideShort = {\n prefix: 'fas',\n iconName: 'arrow-up-wide-short',\n icon: [576, 512, [\"sort-amount-up\"], \"f161\", \"M151.6 42.4C145.5 35.8 137 32 128 32s-17.5 3.8-23.6 10.4l-88 96c-11.9 13-11.1 33.3 2 45.2s33.3 11.1 45.2-2L96 146.3V448c0 17.7 14.3 32 32 32s32-14.3 32-32V146.3l32.4 35.4c11.9 13 32.2 13.9 45.2 2s13.9-32.2 2-45.2l-88-96zM320 480h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32zm0-128h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32zm0-128H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32zm0-128H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32z\"]\n};\nvar faSortAmountUp = faArrowUpWideShort;\nvar faMillSign = {\n prefix: 'fas',\n iconName: 'mill-sign',\n icon: [384, 512, [], \"e1ed\", \"M302.1 42.8c5.9-16.6-2.7-35-19.4-40.9s-35 2.7-40.9 19.4L208 116.1c-5.7 4-11.1 8.5-16 13.5C171.7 108.9 143.3 96 112 96c-19.5 0-37.8 5-53.7 13.7C52.5 101.4 42.9 96 32 96C14.3 96 0 110.3 0 128v80V416c0 17.7 14.3 32 32 32s32-14.3 32-32V208c0-26.5 21.5-48 48-48s48 21.5 48 48v42.5L81.9 469.2c-5.9 16.6 2.7 35 19.4 40.9s35-2.7 40.9-19.4l21.4-60C168.9 441 179.6 448 192 448c17.7 0 32-14.3 32-32V261.5l35.7-100c3.9-1 8.1-1.6 12.3-1.6c26.5 0 48 21.5 48 48V416c0 17.7 14.3 32 32 32s32-14.3 32-32V208c0-58.2-44.3-106-101.1-111.5l19.2-53.8z\"]\n};\nvar faBowlRice = {\n prefix: 'fas',\n iconName: 'bowl-rice',\n icon: [512, 512, [], \"e2eb\", \"M176 56c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H200c-13.3 0-24-10.7-24-24zm24 48h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H200c-13.3 0-24-10.7-24-24s10.7-24 24-24zM56 176H72c13.3 0 24 10.7 24 24s-10.7 24-24 24H56c-13.3 0-24-10.7-24-24s10.7-24 24-24zM0 283.4C0 268.3 12.3 256 27.4 256H484.6c15.1 0 27.4 12.3 27.4 27.4c0 70.5-44.4 130.7-106.7 154.1L403.5 452c-2 16-15.6 28-31.8 28H140.2c-16.1 0-29.8-12-31.8-28l-1.8-14.4C44.4 414.1 0 353.9 0 283.4zM224 200c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H248c-13.3 0-24-10.7-24-24zm-96 0c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H152c-13.3 0-24-10.7-24-24zm-24-96h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H104c-13.3 0-24-10.7-24-24s10.7-24 24-24zm216 96c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H344c-13.3 0-24-10.7-24-24zm-24-96h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H296c-13.3 0-24-10.7-24-24s10.7-24 24-24zm120 96c0-13.3 10.7-24 24-24h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H440c-13.3 0-24-10.7-24-24zm-24-96h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H392c-13.3 0-24-10.7-24-24s10.7-24 24-24zM296 32h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H296c-13.3 0-24-10.7-24-24s10.7-24 24-24z\"]\n};\nvar faSkull = {\n prefix: 'fas',\n iconName: 'skull',\n icon: [512, 512, [128128], \"f54c\", \"M416 398.9c58.5-41.1 96-104.1 96-174.9C512 100.3 397.4 0 256 0S0 100.3 0 224c0 70.7 37.5 133.8 96 174.9c0 .4 0 .7 0 1.1v64c0 26.5 21.5 48 48 48h48V464c0-8.8 7.2-16 16-16s16 7.2 16 16v48h64V464c0-8.8 7.2-16 16-16s16 7.2 16 16v48h48c26.5 0 48-21.5 48-48V400c0-.4 0-.7 0-1.1zM96 256a64 64 0 1 1 128 0A64 64 0 1 1 96 256zm256-64a64 64 0 1 1 0 128 64 64 0 1 1 0-128z\"]\n};\nvar faTowerBroadcast = {\n prefix: 'fas',\n iconName: 'tower-broadcast',\n icon: [576, 512, [\"broadcast-tower\"], \"f519\", \"M80.3 44C69.8 69.9 64 98.2 64 128s5.8 58.1 16.3 84c6.6 16.4-1.3 35-17.7 41.7s-35-1.3-41.7-17.7C7.4 202.6 0 166.1 0 128S7.4 53.4 20.9 20C27.6 3.6 46.2-4.3 62.6 2.3S86.9 27.6 80.3 44zM555.1 20C568.6 53.4 576 89.9 576 128s-7.4 74.6-20.9 108c-6.6 16.4-25.3 24.3-41.7 17.7S489.1 228.4 495.7 212c10.5-25.9 16.3-54.2 16.3-84s-5.8-58.1-16.3-84C489.1 27.6 497 9 513.4 2.3s35 1.3 41.7 17.7zM352 128c0 23.7-12.9 44.4-32 55.4V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V183.4c-19.1-11.1-32-31.7-32-55.4c0-35.3 28.7-64 64-64s64 28.7 64 64zM170.6 76.8C163.8 92.4 160 109.7 160 128s3.8 35.6 10.6 51.2c7.1 16.2-.3 35.1-16.5 42.1s-35.1-.3-42.1-16.5c-10.3-23.6-16-49.6-16-76.8s5.7-53.2 16-76.8c7.1-16.2 25.9-23.6 42.1-16.5s23.6 25.9 16.5 42.1zM464 51.2c10.3 23.6 16 49.6 16 76.8s-5.7 53.2-16 76.8c-7.1 16.2-25.9 23.6-42.1 16.5s-23.6-25.9-16.5-42.1c6.8-15.6 10.6-32.9 10.6-51.2s-3.8-35.6-10.6-51.2c-7.1-16.2 .3-35.1 16.5-42.1s35.1 .3 42.1 16.5z\"]\n};\nvar faBroadcastTower = faTowerBroadcast;\nvar faTruckPickup = {\n prefix: 'fas',\n iconName: 'truck-pickup',\n icon: [640, 512, [128763], \"f63c\", \"M368.6 96l76.8 96H288V96h80.6zM224 80V192H64c-17.7 0-32 14.3-32 32v64c-17.7 0-32 14.3-32 32s14.3 32 32 32H65.1c-.7 5.2-1.1 10.6-1.1 16c0 61.9 50.1 112 112 112s112-50.1 112-112c0-5.4-.4-10.8-1.1-16h66.3c-.7 5.2-1.1 10.6-1.1 16c0 61.9 50.1 112 112 112s112-50.1 112-112c0-5.4-.4-10.8-1.1-16H608c17.7 0 32-14.3 32-32s-14.3-32-32-32V224c0-17.7-14.3-32-32-32H527.4L418.6 56c-12.1-15.2-30.5-24-50-24H272c-26.5 0-48 21.5-48 48zm0 288a48 48 0 1 1 -96 0 48 48 0 1 1 96 0zm288 0a48 48 0 1 1 -96 0 48 48 0 1 1 96 0z\"]\n};\nvar faUpLong = {\n prefix: 'fas',\n iconName: 'up-long',\n icon: [320, 512, [\"long-arrow-alt-up\"], \"f30c\", \"M318 177.5c3.8-8.8 2-19-4.6-26l-136-144C172.9 2.7 166.6 0 160 0s-12.9 2.7-17.4 7.5l-136 144c-6.6 7-8.4 17.2-4.6 26S14.4 192 24 192H96l0 288c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32l0-288h72c9.6 0 18.2-5.7 22-14.5z\"]\n};\nvar faLongArrowAltUp = faUpLong;\nvar faStop = {\n prefix: 'fas',\n iconName: 'stop',\n icon: [384, 512, [9209], \"f04d\", \"M0 128C0 92.7 28.7 64 64 64H320c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128z\"]\n};\nvar faCodeMerge = {\n prefix: 'fas',\n iconName: 'code-merge',\n icon: [448, 512, [], \"f387\", \"M80 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm32.4 97.2c28-12.4 47.6-40.5 47.6-73.2c0-44.2-35.8-80-80-80S0 35.8 0 80c0 32.8 19.7 61 48 73.3V358.7C19.7 371 0 399.2 0 432c0 44.2 35.8 80 80 80s80-35.8 80-80c0-32.8-19.7-61-48-73.3V272c26.7 20.1 60 32 96 32h86.7c12.3 28.3 40.5 48 73.3 48c44.2 0 80-35.8 80-80s-35.8-80-80-80c-32.8 0-61 19.7-73.3 48H208c-49.9 0-91-38.1-95.6-86.8zM80 408a24 24 0 1 1 0 48 24 24 0 1 1 0-48zM344 272a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faUpload = {\n prefix: 'fas',\n iconName: 'upload',\n icon: [512, 512, [], \"f093\", \"M288 109.3V352c0 17.7-14.3 32-32 32s-32-14.3-32-32V109.3l-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L288 109.3zM64 352H192c0 35.3 28.7 64 64 64s64-28.7 64-64H448c35.3 0 64 28.7 64 64v32c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V416c0-35.3 28.7-64 64-64zM432 456a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faHurricane = {\n prefix: 'fas',\n iconName: 'hurricane',\n icon: [384, 512, [], \"f751\", \"M0 208C0 104.4 75.7 18.5 174.9 2.6C184 1.2 192 8.6 192 17.9V81.2c0 8.4 6.5 15.3 14.7 16.5C307 112.5 384 199 384 303.4c0 103.6-75.7 189.5-174.9 205.4c-9.2 1.5-17.1-5.9-17.1-15.2V430.2c0-8.4-6.5-15.3-14.7-16.5C77 398.9 0 312.4 0 208zm288 48A96 96 0 1 0 96 256a96 96 0 1 0 192 0zm-96-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faMound = {\n prefix: 'fas',\n iconName: 'mound',\n icon: [576, 512, [], \"e52d\", \"M144.1 179.2C173.8 127.7 228.6 96 288 96s114.2 31.7 143.9 83.2L540.4 368c12.3 21.3-3.1 48-27.7 48H63.3c-24.6 0-40-26.6-27.7-48L144.1 179.2z\"]\n};\nvar faToiletPortable = {\n prefix: 'fas',\n iconName: 'toilet-portable',\n icon: [320, 512, [], \"e583\", \"M0 32V64H320V32c0-17.7-14.3-32-32-32H32C14.3 0 0 14.3 0 32zM24 96H0v24V488c0 13.3 10.7 24 24 24s24-10.7 24-24v-8H272v8c0 13.3 10.7 24 24 24s24-10.7 24-24V120 96H296 24zM256 240v64c0 8.8-7.2 16-16 16s-16-7.2-16-16V240c0-8.8 7.2-16 16-16s16 7.2 16 16z\"]\n};\nvar faCompactDisc = {\n prefix: 'fas',\n iconName: 'compact-disc',\n icon: [512, 512, [128191, 128192, 128440], \"f51f\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm256 32a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm-96-32a96 96 0 1 0 192 0 96 96 0 1 0 -192 0zM96 240c0-35 17.5-71.1 45.2-98.8S205 96 240 96c8.8 0 16-7.2 16-16s-7.2-16-16-16c-45.4 0-89.2 22.3-121.5 54.5S64 194.6 64 240c0 8.8 7.2 16 16 16s16-7.2 16-16z\"]\n};\nvar faFileArrowDown = {\n prefix: 'fas',\n iconName: 'file-arrow-down',\n icon: [384, 512, [\"file-download\"], \"f56d\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM216 232V334.1l31-31c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-72 72c-9.4 9.4-24.6 9.4-33.9 0l-72-72c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l31 31V232c0-13.3 10.7-24 24-24s24 10.7 24 24z\"]\n};\nvar faFileDownload = faFileArrowDown;\nvar faCaravan = {\n prefix: 'fas',\n iconName: 'caravan',\n icon: [640, 512, [], \"f8ff\", \"M0 112C0 67.8 35.8 32 80 32H416c88.4 0 160 71.6 160 160V352h32c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0H288c0 53-43 96-96 96s-96-43-96-96H80c-44.2 0-80-35.8-80-80V112zM320 352H448V256H416c-8.8 0-16-7.2-16-16s7.2-16 16-16h32V160c0-17.7-14.3-32-32-32H352c-17.7 0-32 14.3-32 32V352zM96 128c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32H224c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32H96zm96 336a48 48 0 1 0 0-96 48 48 0 1 0 0 96z\"]\n};\nvar faShieldCat = {\n prefix: 'fas',\n iconName: 'shield-cat',\n icon: [512, 512, [], \"e572\", \"M269.4 2.9C265.2 1 260.7 0 256 0s-9.2 1-13.4 2.9L54.3 82.8c-22 9.3-38.4 31-38.3 57.2c.5 99.2 41.3 280.7 213.6 363.2c16.7 8 36.1 8 52.8 0C454.7 420.7 495.5 239.2 496 140c.1-26.2-16.3-47.9-38.3-57.2L269.4 2.9zM160 154.4c0-5.8 4.7-10.4 10.4-10.4h.2c3.4 0 6.5 1.6 8.5 4.3l40 53.3c3 4 7.8 6.4 12.8 6.4h48c5 0 9.8-2.4 12.8-6.4l40-53.3c2-2.7 5.2-4.3 8.5-4.3h.2c5.8 0 10.4 4.7 10.4 10.4V272c0 53-43 96-96 96s-96-43-96-96V154.4zM216 288a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm96-16a16 16 0 1 0 -32 0 16 16 0 1 0 32 0z\"]\n};\nvar faBolt = {\n prefix: 'fas',\n iconName: 'bolt',\n icon: [448, 512, [9889, \"zap\"], \"f0e7\", \"M349.4 44.6c5.9-13.7 1.5-29.7-10.6-38.5s-28.6-8-39.9 1.8l-256 224c-10 8.8-13.6 22.9-8.9 35.3S50.7 288 64 288H175.5L98.6 467.4c-5.9 13.7-1.5 29.7 10.6 38.5s28.6 8 39.9-1.8l256-224c10-8.8 13.6-22.9 8.9-35.3s-16.6-20.7-30-20.7H272.5L349.4 44.6z\"]\n};\nvar faZap = faBolt;\nvar faGlassWater = {\n prefix: 'fas',\n iconName: 'glass-water',\n icon: [384, 512, [], \"e4f4\", \"M32 0C23.1 0 14.6 3.7 8.6 10.2S-.6 25.4 .1 34.3L28.9 437.7c3 41.9 37.8 74.3 79.8 74.3H275.3c42 0 76.8-32.4 79.8-74.3L383.9 34.3c.6-8.9-2.4-17.6-8.5-24.1S360.9 0 352 0H32zM73 156.5L66.4 64H317.6L311 156.5l-24.2 12.1c-19.4 9.7-42.2 9.7-61.6 0c-20.9-10.4-45.5-10.4-66.4 0c-19.4 9.7-42.2 9.7-61.6 0L73 156.5z\"]\n};\nvar faOilWell = {\n prefix: 'fas',\n iconName: 'oil-well',\n icon: [576, 512, [], \"e532\", \"M528.3 61.3c-11.4-42.7-55.3-68-98-56.6L414.9 8.8C397.8 13.4 387.7 31 392.3 48l24.5 91.4L308.5 167.5l-6.3-18.1C297.7 136.6 285.6 128 272 128s-25.7 8.6-30.2 21.4l-13.6 39L96 222.6V184c0-13.3-10.7-24-24-24s-24 10.7-24 24V448H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H406.7L340 257.5l-62.2 16.1L305.3 352H238.7L265 277l-74.6 19.3L137.3 448H96V288.8l337.4-87.5 25.2 94c4.6 17.1 22.1 27.2 39.2 22.6l15.5-4.1c42.7-11.4 68-55.3 56.6-98L528.3 61.3zM205.1 448l11.2-32H327.7l11.2 32H205.1z\"]\n};\nvar faVault = {\n prefix: 'fas',\n iconName: 'vault',\n icon: [576, 512, [], \"e2c5\", \"M64 0C28.7 0 0 28.7 0 64V416c0 35.3 28.7 64 64 64H80l16 32h64l16-32H400l16 32h64l16-32h16c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64zM224 320a80 80 0 1 0 0-160 80 80 0 1 0 0 160zm0-240a160 160 0 1 1 0 320 160 160 0 1 1 0-320zM480 221.3V336c0 8.8-7.2 16-16 16s-16-7.2-16-16V221.3c-18.6-6.6-32-24.4-32-45.3c0-26.5 21.5-48 48-48s48 21.5 48 48c0 20.9-13.4 38.7-32 45.3z\"]\n};\nvar faMars = {\n prefix: 'fas',\n iconName: 'mars',\n icon: [448, 512, [9794], \"f222\", \"M289.8 46.8c3.7-9 12.5-14.8 22.2-14.8H424c13.3 0 24 10.7 24 24V168c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-33.4-33.4L321 204.2c19.5 28.4 31 62.7 31 99.8c0 97.2-78.8 176-176 176S0 401.2 0 304s78.8-176 176-176c37 0 71.4 11.4 99.8 31l52.6-52.6L295 73c-6.9-6.9-8.9-17.2-5.2-26.2zM400 80l0 0h0v0zM176 416a112 112 0 1 0 0-224 112 112 0 1 0 0 224z\"]\n};\nvar faToilet = {\n prefix: 'fas',\n iconName: 'toilet',\n icon: [448, 512, [128701], \"f7d8\", \"M24 0C10.7 0 0 10.7 0 24S10.7 48 24 48h8V196.9c-1.9 1.4-3.8 2.9-5.6 4.4C10.9 214.5 0 232.9 0 256c0 46.9 14.3 84.1 37 112.5c14.2 17.7 31.1 31.3 48.5 41.8L65.6 469.9c-3.3 9.8-1.6 20.5 4.4 28.8s15.7 13.3 26 13.3H352c10.3 0 19.9-4.9 26-13.3s7.7-19.1 4.4-28.8l-19.8-59.5c17.4-10.5 34.3-24.1 48.5-41.8c22.7-28.4 37-65.5 37-112.5c0-23.1-10.9-41.5-26.4-54.6c-1.8-1.5-3.7-3-5.6-4.4V48h8c13.3 0 24-10.7 24-24s-10.7-24-24-24H24zM384 256.3c0 1-.3 2.6-3.8 5.6c-4.8 4.1-14 9-29.3 13.4C320.5 284 276.1 288 224 288s-96.5-4-126.9-12.8c-15.3-4.4-24.5-9.3-29.3-13.4c-3.5-3-3.8-4.6-3.8-5.6l0-.3 0-.1c0-1 0-2.5 3.8-5.8c4.8-4.1 14-9 29.3-13.4C127.5 228 171.9 224 224 224s96.5 4 126.9 12.8c15.3 4.4 24.5 9.3 29.3 13.4c3.8 3.2 3.8 4.8 3.8 5.8l0 .1 0 .3zM328.2 384l-.2 .5 0-.5h.2zM112 64h32c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faPlaneCircleXmark = {\n prefix: 'fas',\n iconName: 'plane-circle-xmark',\n icon: [640, 512, [], \"e557\", \"M256 0c-35 0-64 59.5-64 93.7v84.6L8.1 283.4c-5 2.8-8.1 8.2-8.1 13.9v65.5c0 10.6 10.2 18.3 20.4 15.4l171.6-49 0 70.9-57.6 43.2c-4 3-6.4 7.8-6.4 12.8v42c0 7.8 6.3 14 14 14c1.3 0 2.6-.2 3.9-.5L256 480l110.1 31.5c1.3 .4 2.6 .5 3.9 .5c6 0 11.1-3.7 13.1-9C344.5 470.7 320 422.2 320 368c0-60.6 30.6-114 77.1-145.6L320 178.3V93.7C320 59.5 292 0 256 0zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm59.3-180.7L518.6 368l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L496 390.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L473.4 368l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L496 345.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faYenSign = {\n prefix: 'fas',\n iconName: 'yen-sign',\n icon: [320, 512, [165, \"cny\", \"jpy\", \"rmb\", \"yen\"], \"f157\", \"M58.6 46.2C48.8 31.5 29 27.6 14.3 37.4S-4.4 67 5.4 81.7L100.2 224H48c-17.7 0-32 14.3-32 32s14.3 32 32 32h80v32H48c-17.7 0-32 14.3-32 32s14.3 32 32 32h80v64c0 17.7 14.3 32 32 32s32-14.3 32-32V384h80c17.7 0 32-14.3 32-32s-14.3-32-32-32H192V288h80c17.7 0 32-14.3 32-32s-14.3-32-32-32H219.8L314.6 81.7c9.8-14.7 5.8-34.6-8.9-44.4s-34.6-5.8-44.4 8.9L160 198.3 58.6 46.2z\"]\n};\nvar faCny = faYenSign;\nvar faJpy = faYenSign;\nvar faRmb = faYenSign;\nvar faYen = faYenSign;\nvar faRubleSign = {\n prefix: 'fas',\n iconName: 'ruble-sign',\n icon: [384, 512, [8381, \"rouble\", \"rub\", \"ruble\"], \"f158\", \"M96 32C78.3 32 64 46.3 64 64V256H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64v32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64v32c0 17.7 14.3 32 32 32s32-14.3 32-32V416H288c17.7 0 32-14.3 32-32s-14.3-32-32-32H128V320H240c79.5 0 144-64.5 144-144s-64.5-144-144-144H96zM240 256H128V96H240c44.2 0 80 35.8 80 80s-35.8 80-80 80z\"]\n};\nvar faRouble = faRubleSign;\nvar faRub = faRubleSign;\nvar faRuble = faRubleSign;\nvar faSun = {\n prefix: 'fas',\n iconName: 'sun',\n icon: [512, 512, [9728], \"f185\", \"M361.5 1.2c5 2.1 8.6 6.6 9.6 11.9L391 121l107.9 19.8c5.3 1 9.8 4.6 11.9 9.6s1.5 10.7-1.6 15.2L446.9 256l62.3 90.3c3.1 4.5 3.7 10.2 1.6 15.2s-6.6 8.6-11.9 9.6L391 391 371.1 498.9c-1 5.3-4.6 9.8-9.6 11.9s-10.7 1.5-15.2-1.6L256 446.9l-90.3 62.3c-4.5 3.1-10.2 3.7-15.2 1.6s-8.6-6.6-9.6-11.9L121 391 13.1 371.1c-5.3-1-9.8-4.6-11.9-9.6s-1.5-10.7 1.6-15.2L65.1 256 2.8 165.7c-3.1-4.5-3.7-10.2-1.6-15.2s6.6-8.6 11.9-9.6L121 121 140.9 13.1c1-5.3 4.6-9.8 9.6-11.9s10.7-1.5 15.2 1.6L256 65.1 346.3 2.8c4.5-3.1 10.2-3.7 15.2-1.6zM160 256a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zm224 0a128 128 0 1 0 -256 0 128 128 0 1 0 256 0z\"]\n};\nvar faGuitar = {\n prefix: 'fas',\n iconName: 'guitar',\n icon: [512, 512, [], \"f7a6\", \"M465 7c-9.4-9.4-24.6-9.4-33.9 0L383 55c-2.4 2.4-4.3 5.3-5.5 8.5l-15.4 41-77.5 77.6c-45.1-29.4-99.3-30.2-131 1.6c-11 11-18 24.6-21.4 39.6c-3.7 16.6-19.1 30.7-36.1 31.6c-25.6 1.3-49.3 10.7-67.3 28.6C-16 328.4-7.6 409.4 47.5 464.5s136.1 63.5 180.9 18.7c17.9-17.9 27.4-41.7 28.6-67.3c.9-17 15-32.3 31.6-36.1c15-3.4 28.6-10.5 39.6-21.4c31.8-31.8 31-85.9 1.6-131l77.6-77.6 41-15.4c3.2-1.2 6.1-3.1 8.5-5.5l48-48c9.4-9.4 9.4-24.6 0-33.9L465 7zM208 256a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faFaceLaughWink = {\n prefix: 'fas',\n iconName: 'face-laugh-wink',\n icon: [512, 512, [\"laugh-wink\"], \"f59c\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM96.8 314.1c-3.8-13.7 7.4-26.1 21.6-26.1H393.6c14.2 0 25.5 12.4 21.6 26.1C396.2 382 332.1 432 256 432s-140.2-50-159.2-117.9zM144.4 192a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm156.4 25.6c-5.3 7.1-15.3 8.5-22.4 3.2s-8.5-15.3-3.2-22.4c30.4-40.5 91.2-40.5 121.6 0c5.3 7.1 3.9 17.1-3.2 22.4s-17.1 3.9-22.4-3.2c-17.6-23.5-52.8-23.5-70.4 0z\"]\n};\nvar faLaughWink = faFaceLaughWink;\nvar faHorseHead = {\n prefix: 'fas',\n iconName: 'horse-head',\n icon: [640, 512, [], \"f7ab\", \"M64 464V316.9c0-108.4 68.3-205.1 170.5-241.3L404.2 15.5C425.6 7.9 448 23.8 448 46.4c0 11-5.5 21.2-14.6 27.3L400 96c48.1 0 91.2 29.8 108.1 74.9l48.6 129.5c11.8 31.4 4.1 66.8-19.6 90.5c-16 16-37.8 25.1-60.5 25.1h-3.4c-26.1 0-50.9-11.6-67.6-31.7l-32.3-38.7c-11.7 4.1-24.2 6.4-37.3 6.4l-.1 0 0 0c-6.3 0-12.5-.5-18.6-1.5c-3.6-.6-7.2-1.4-10.7-2.3l0 0c-28.9-7.8-53.1-26.8-67.8-52.2c-4.4-7.6-14.2-10.3-21.9-5.8s-10.3 14.2-5.8 21.9c24 41.5 68.3 70 119.3 71.9l47.2 70.8c4 6.1 6.2 13.2 6.2 20.4c0 20.3-16.5 36.8-36.8 36.8H112c-26.5 0-48-21.5-48-48zM392 224a24 24 0 1 0 0-48 24 24 0 1 0 0 48z\"]\n};\nvar faBoreHole = {\n prefix: 'fas',\n iconName: 'bore-hole',\n icon: [512, 512, [], \"e4c3\", \"M256 0c-17.7 0-32 14.3-32 32V296.6c-19.1 11.1-32 31.7-32 55.4c0 35.3 28.7 64 64 64s64-28.7 64-64c0-23.7-12.9-44.4-32-55.4V32c0-17.7-14.3-32-32-32zM48 128c-26.5 0-48 21.5-48 48V464c0 26.5 21.5 48 48 48H464c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48H384c-17.7 0-32 14.3-32 32V352c0 53-43 96-96 96s-96-43-96-96V160c0-17.7-14.3-32-32-32H48z\"]\n};\nvar faIndustry = {\n prefix: 'fas',\n iconName: 'industry',\n icon: [576, 512, [], \"f275\", \"M64 32C46.3 32 32 46.3 32 64V304v48 80c0 26.5 21.5 48 48 48H496c26.5 0 48-21.5 48-48V304 152.2c0-18.2-19.4-29.7-35.4-21.1L352 215.4V152.2c0-18.2-19.4-29.7-35.4-21.1L160 215.4V64c0-17.7-14.3-32-32-32H64z\"]\n};\nvar faCircleDown = {\n prefix: 'fas',\n iconName: 'circle-down',\n icon: [512, 512, [61466, \"arrow-alt-circle-down\"], \"f358\", \"M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM376.9 294.6L269.8 394.5c-3.8 3.5-8.7 5.5-13.8 5.5s-10.1-2-13.8-5.5L135.1 294.6c-4.5-4.2-7.1-10.1-7.1-16.3c0-12.3 10-22.3 22.3-22.3l57.7 0 0-96c0-17.7 14.3-32 32-32l32 0c17.7 0 32 14.3 32 32l0 96 57.7 0c12.3 0 22.3 10 22.3 22.3c0 6.2-2.6 12.1-7.1 16.3z\"]\n};\nvar faArrowAltCircleDown = faCircleDown;\nvar faArrowsTurnToDots = {\n prefix: 'fas',\n iconName: 'arrows-turn-to-dots',\n icon: [512, 512, [], \"e4c1\", \"M249.4 25.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L269.3 96 416 96c53 0 96 43 96 96v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V192c0-17.7-14.3-32-32-32l-146.7 0 25.4 25.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-80-80c-12.5-12.5-12.5-32.8 0-45.3l80-80zm13.3 256l80 80c12.5 12.5 12.5 32.8 0 45.3l-80 80c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 416 96 416c-17.7 0-32 14.3-32 32v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V448c0-53 43-96 96-96l146.7 0-25.4-25.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0zM384 384a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM64 192A64 64 0 1 1 64 64a64 64 0 1 1 0 128z\"]\n};\nvar faFlorinSign = {\n prefix: 'fas',\n iconName: 'florin-sign',\n icon: [384, 512, [], \"e184\", \"M314.7 32c-38.8 0-73.7 23.3-88.6 59.1L170.7 224H64c-17.7 0-32 14.3-32 32s14.3 32 32 32h80L98.9 396.3c-5 11.9-16.6 19.7-29.5 19.7H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H69.3c38.8 0 73.7-23.3 88.6-59.1L213.3 288H320c17.7 0 32-14.3 32-32s-14.3-32-32-32H240l45.1-108.3c5-11.9 16.6-19.7 29.5-19.7H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H314.7z\"]\n};\nvar faArrowDownShortWide = {\n prefix: 'fas',\n iconName: 'arrow-down-short-wide',\n icon: [576, 512, [\"sort-amount-desc\", \"sort-amount-down-alt\"], \"f884\", \"M151.6 469.6C145.5 476.2 137 480 128 480s-17.5-3.8-23.6-10.4l-88-96c-11.9-13-11.1-33.3 2-45.2s33.3-11.1 45.2 2L96 365.7V64c0-17.7 14.3-32 32-32s32 14.3 32 32V365.7l32.4-35.4c11.9-13 32.2-13.9 45.2-2s13.9 32.2 2 45.2l-88 96zM320 32h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H320c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H320c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H320c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H320c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faSortAmountDesc = faArrowDownShortWide;\nvar faSortAmountDownAlt = faArrowDownShortWide;\nvar faLessThan = {\n prefix: 'fas',\n iconName: 'less-than',\n icon: [384, 512, [62774], \"3c\", \"M380.6 81.7c7.9 15.8 1.5 35-14.3 42.9L103.6 256 366.3 387.4c15.8 7.9 22.2 27.1 14.3 42.9s-27.1 22.2-42.9 14.3l-320-160C6.8 279.2 0 268.1 0 256s6.8-23.2 17.7-28.6l320-160c15.8-7.9 35-1.5 42.9 14.3z\"]\n};\nvar faAngleDown = {\n prefix: 'fas',\n iconName: 'angle-down',\n icon: [448, 512, [8964], \"f107\", \"M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z\"]\n};\nvar faCarTunnel = {\n prefix: 'fas',\n iconName: 'car-tunnel',\n icon: [512, 512, [], \"e4de\", \"M256 0C114.6 0 0 114.6 0 256V448c0 35.3 28.7 64 64 64h42.8c-6.6-5.9-10.8-14.4-10.8-24V376c0-20.8 11.3-38.9 28.1-48.6l21-64.7c7.5-23.1 29-38.7 53.3-38.7H313.6c24.3 0 45.8 15.6 53.3 38.7l21 64.7c16.8 9.7 28.2 27.8 28.2 48.6V488c0 9.6-4.2 18.1-10.8 24H448c35.3 0 64-28.7 64-64V256C512 114.6 397.4 0 256 0zM362.8 512c-6.6-5.9-10.8-14.4-10.8-24V448H160v40c0 9.6-4.2 18.1-10.8 24H362.8zM190.8 277.5L177 320H335l-13.8-42.5c-1.1-3.3-4.1-5.5-7.6-5.5H198.4c-3.5 0-6.5 2.2-7.6 5.5zM168 408a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm200-24a24 24 0 1 0 -48 0 24 24 0 1 0 48 0z\"]\n};\nvar faHeadSideCough = {\n prefix: 'fas',\n iconName: 'head-side-cough',\n icon: [640, 512, [], \"e061\", \"M0 224.2C0 100.6 100.2 0 224 0h24c95.2 0 181.2 69.3 197.3 160.2c2.3 13 6.8 25.7 15.1 36l42 52.6c6.2 7.8 9.6 17.4 9.6 27.4c0 24.2-19.6 43.8-43.8 43.8H448v0 32L339.2 365.6c-11 1.4-19.2 10.7-19.2 21.8c0 11.6 9 21.2 20.6 21.9L448 416v16c0 26.5-21.5 48-48 48H320v8c0 13.3-10.7 24-24 24H256v0H96c-17.7 0-32-14.3-32-32V407.3c0-16.7-6.9-32.5-17.1-45.8C16.6 322.4 0 274.1 0 224.2zm352-.2a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM464 384a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zm152-24a24 24 0 1 1 0 48 24 24 0 1 1 0-48zM592 480a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM552 312a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm40-24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM552 408a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faGripLines = {\n prefix: 'fas',\n iconName: 'grip-lines',\n icon: [448, 512, [], \"f7a4\", \"M32 288c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 288zm0-128c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 160z\"]\n};\nvar faThumbsDown = {\n prefix: 'fas',\n iconName: 'thumbs-down',\n icon: [512, 512, [128078, 61576], \"f165\", \"M313.4 479.1c26-5.2 42.9-30.5 37.7-56.5l-2.3-11.4c-5.3-26.7-15.1-52.1-28.8-75.2H464c26.5 0 48-21.5 48-48c0-18.5-10.5-34.6-25.9-42.6C497 236.6 504 223.1 504 208c0-23.4-16.8-42.9-38.9-47.1c4.4-7.3 6.9-15.8 6.9-24.9c0-21.3-13.9-39.4-33.1-45.6c.7-3.3 1.1-6.8 1.1-10.4c0-26.5-21.5-48-48-48H294.5c-19 0-37.5 5.6-53.3 16.1L202.7 73.8C176 91.6 160 121.6 160 153.7V192v48 24.9c0 29.2 13.3 56.7 36 75l7.4 5.9c26.5 21.2 44.6 51 51.2 84.2l2.3 11.4c5.2 26 30.5 42.9 56.5 37.7zM32 384H96c17.7 0 32-14.3 32-32V128c0-17.7-14.3-32-32-32H32C14.3 96 0 110.3 0 128V352c0 17.7 14.3 32 32 32z\"]\n};\nvar faUserLock = {\n prefix: 'fas',\n iconName: 'user-lock',\n icon: [640, 512, [], \"f502\", \"M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H392.6c-5.4-9.4-8.6-20.3-8.6-32V352c0-2.1 .1-4.2 .3-6.3c-31-26-71-41.7-114.6-41.7H178.3zM528 240c17.7 0 32 14.3 32 32v48H496V272c0-17.7 14.3-32 32-32zm-80 32v48c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H608c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32V272c0-44.2-35.8-80-80-80s-80 35.8-80 80z\"]\n};\nvar faArrowRightLong = {\n prefix: 'fas',\n iconName: 'arrow-right-long',\n icon: [512, 512, [\"long-arrow-right\"], \"f178\", \"M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z\"]\n};\nvar faLongArrowRight = faArrowRightLong;\nvar faAnchorCircleXmark = {\n prefix: 'fas',\n iconName: 'anchor-circle-xmark',\n icon: [640, 512, [], \"e4ac\", \"M320 96a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm21.1 80C367 158.8 384 129.4 384 96c0-53-43-96-96-96s-96 43-96 96c0 33.4 17 62.8 42.9 80H224c-17.7 0-32 14.3-32 32s14.3 32 32 32h32V448H208c-53 0-96-43-96-96v-6.1l7 7c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L97 263c-9.4-9.4-24.6-9.4-33.9 0L7 319c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l7-7V352c0 88.4 71.6 160 160 160h80 80c8.2 0 16.3-.6 24.2-1.8c-22.2-16.2-40.4-37.5-53-62.2H320V368 240h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H341.1zM496 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm59.3-180.7L518.6 368l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L496 390.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L473.4 368l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L496 345.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faEllipsis = {\n prefix: 'fas',\n iconName: 'ellipsis',\n icon: [448, 512, [\"ellipsis-h\"], \"f141\", \"M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z\"]\n};\nvar faEllipsisH = faEllipsis;\nvar faChessPawn = {\n prefix: 'fas',\n iconName: 'chess-pawn',\n icon: [320, 512, [9823], \"f443\", \"M215.5 224c29.2-18.4 48.5-50.9 48.5-88c0-57.4-46.6-104-104-104S56 78.6 56 136c0 37.1 19.4 69.6 48.5 88H96c-17.7 0-32 14.3-32 32c0 16.5 12.5 30 28.5 31.8L80 400H240L227.5 287.8c16-1.8 28.5-15.3 28.5-31.8c0-17.7-14.3-32-32-32h-8.5zM22.6 473.4c-4.2 4.2-6.6 10-6.6 16C16 501.9 26.1 512 38.6 512H281.4c12.5 0 22.6-10.1 22.6-22.6c0-6-2.4-11.8-6.6-16L256 432H64L22.6 473.4z\"]\n};\nvar faKitMedical = {\n prefix: 'fas',\n iconName: 'kit-medical',\n icon: [576, 512, [\"first-aid\"], \"f479\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H96V32H64zm64 0V480H448V32H128zM512 480c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H480V480h32zM256 176c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v48h48c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H320v48c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V288H208c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16h48V176z\"]\n};\nvar faFirstAid = faKitMedical;\nvar faPersonThroughWindow = {\n prefix: 'fas',\n iconName: 'person-through-window',\n icon: [640, 512, [], \"e5a9\", \"M64 64l224 0 0 9.8c0 39-23.7 74-59.9 88.4C167.6 186.5 128 245 128 310.2l0 73.8s0 0 0 0H64V64zm288 0l224 0V384H508.3l-3.7-4.5-75.2-90.2c-9.1-10.9-22.6-17.3-36.9-17.3l-71.1 0-41-63.1c-.3-.5-.6-1-1-1.4c44.7-29 72.5-79 72.5-133.6l0-9.8zm73 320H379.2l42.7 64H592c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48V400c0 26.5 21.5 48 48 48H308.2l33.2 49.8c9.8 14.7 29.7 18.7 44.4 8.9s18.7-29.7 8.9-44.4L310.5 336l74.6 0 40 48zm-159.5 0H192s0 0 0 0l0-73.8c0-10.2 1.6-20.1 4.7-29.5L265.5 384zM192 128a48 48 0 1 0 -96 0 48 48 0 1 0 96 0z\"]\n};\nvar faToolbox = {\n prefix: 'fas',\n iconName: 'toolbox',\n icon: [512, 512, [129520], \"f552\", \"M176 88l0 40 160 0 0-40c0-4.4-3.6-8-8-8L184 80c-4.4 0-8 3.6-8 8zm-48 40l0-40c0-30.9 25.1-56 56-56l144 0c30.9 0 56 25.1 56 56l0 40 28.1 0c12.7 0 24.9 5.1 33.9 14.1l51.9 51.9c9 9 14.1 21.2 14.1 33.9l0 92.1-128 0 0-32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 32-128 0 0-32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 32L0 320l0-92.1c0-12.7 5.1-24.9 14.1-33.9l51.9-51.9c9-9 21.2-14.1 33.9-14.1l28.1 0zM0 416l0-64 128 0c0 17.7 14.3 32 32 32s32-14.3 32-32l128 0c0 17.7 14.3 32 32 32s32-14.3 32-32l128 0 0 64c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64z\"]\n};\nvar faHandsHoldingCircle = {\n prefix: 'fas',\n iconName: 'hands-holding-circle',\n icon: [640, 512, [], \"e4fb\", \"M320 0a128 128 0 1 1 0 256A128 128 0 1 1 320 0zM40 64c22.1 0 40 17.9 40 40v40 80 40.2c0 17 6.7 33.3 18.7 45.3l51.1 51.1c8.3 8.3 21.3 9.6 31 3.1c12.9-8.6 14.7-26.9 3.7-37.8l-15.2-15.2-32-32c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l32 32 15.2 15.2 0 0 25.3 25.3c21 21 32.8 49.5 32.8 79.2V464c0 26.5-21.5 48-48 48H173.3c-17 0-33.3-6.7-45.3-18.7L28.1 393.4C10.1 375.4 0 351 0 325.5V224 160 104C0 81.9 17.9 64 40 64zm560 0c22.1 0 40 17.9 40 40v56 64V325.5c0 25.5-10.1 49.9-28.1 67.9L512 493.3c-12 12-28.3 18.7-45.3 18.7H400c-26.5 0-48-21.5-48-48V385.1c0-29.7 11.8-58.2 32.8-79.2l25.3-25.3 0 0 15.2-15.2 32-32c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-32 32-15.2 15.2c-11 11-9.2 29.2 3.7 37.8c9.7 6.5 22.7 5.2 31-3.1l51.1-51.1c12-12 18.7-28.3 18.7-45.3V224 144 104c0-22.1 17.9-40 40-40z\"]\n};\nvar faBug = {\n prefix: 'fas',\n iconName: 'bug',\n icon: [512, 512, [], \"f188\", \"M256 0c53 0 96 43 96 96v3.6c0 15.7-12.7 28.4-28.4 28.4H188.4c-15.7 0-28.4-12.7-28.4-28.4V96c0-53 43-96 96-96zM41.4 105.4c12.5-12.5 32.8-12.5 45.3 0l64 64c.7 .7 1.3 1.4 1.9 2.1c14.2-7.3 30.4-11.4 47.5-11.4H312c17.1 0 33.2 4.1 47.5 11.4c.6-.7 1.2-1.4 1.9-2.1l64-64c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-64 64c-.7 .7-1.4 1.3-2.1 1.9c6.2 12 10.1 25.3 11.1 39.5H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H416c0 24.6-5.5 47.8-15.4 68.6c2.2 1.3 4.2 2.9 6 4.8l64 64c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-63.1-63.1c-24.5 21.8-55.8 36.2-90.3 39.6V240c0-8.8-7.2-16-16-16s-16 7.2-16 16V479.2c-34.5-3.4-65.8-17.8-90.3-39.6L86.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l64-64c1.9-1.9 3.9-3.4 6-4.8C101.5 367.8 96 344.6 96 320H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H96.3c1.1-14.1 5-27.5 11.1-39.5c-.7-.6-1.4-1.2-2.1-1.9l-64-64c-12.5-12.5-12.5-32.8 0-45.3z\"]\n};\nvar faCreditCard = {\n prefix: 'fas',\n iconName: 'credit-card',\n icon: [576, 512, [128179, 62083, \"credit-card-alt\"], \"f09d\", \"M64 32C28.7 32 0 60.7 0 96v32H576V96c0-35.3-28.7-64-64-64H64zM576 224H0V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V224zM112 352h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm112 16c0-8.8 7.2-16 16-16H368c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16z\"]\n};\nvar faCreditCardAlt = faCreditCard;\nvar faCar = {\n prefix: 'fas',\n iconName: 'car',\n icon: [512, 512, [128664, \"automobile\"], \"f1b9\", \"M135.2 117.4L109.1 192H402.9l-26.1-74.6C372.3 104.6 360.2 96 346.6 96H165.4c-13.6 0-25.7 8.6-30.2 21.4zM39.6 196.8L74.8 96.3C88.3 57.8 124.6 32 165.4 32H346.6c40.8 0 77.1 25.8 90.6 64.3l35.2 100.5c23.2 9.6 39.6 32.5 39.6 59.2V400v48c0 17.7-14.3 32-32 32H448c-17.7 0-32-14.3-32-32V400H96v48c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32V400 256c0-26.7 16.4-49.6 39.6-59.2zM128 288a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm288 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faAutomobile = faCar;\nvar faHandHoldingHand = {\n prefix: 'fas',\n iconName: 'hand-holding-hand',\n icon: [576, 512, [], \"e4f7\", \"M7.8 207.7c-13.1-17.8-9.3-42.8 8.5-55.9L142.9 58.5C166.2 41.3 194.5 32 223.5 32H384 544c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32H507.2l-44.9 36c-22.7 18.2-50.9 28-80 28H304 288 224c-17.7 0-32-14.3-32-32s14.3-32 32-32h64 16c8.8 0 16-7.2 16-16s-7.2-16-16-16H183.4L63.7 216.2c-17.8 13.1-42.8 9.3-55.9-8.5zM382.4 160l0 0 .9 0c-.3 0-.6 0-.9 0zM568.2 304.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 453.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V384c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 352l0 0-.9 0c.3 0 .6 0 .9 0z\"]\n};\nvar faBookOpenReader = {\n prefix: 'fas',\n iconName: 'book-open-reader',\n icon: [512, 512, [\"book-reader\"], \"f5da\", \"M160 96a96 96 0 1 1 192 0A96 96 0 1 1 160 96zm80 152V512l-48.4-24.2c-20.9-10.4-43.5-17-66.8-19.3l-96-9.6C12.5 457.2 0 443.5 0 427V224c0-17.7 14.3-32 32-32H62.3c63.6 0 125.6 19.6 177.7 56zm32 264V248c52.1-36.4 114.1-56 177.7-56H480c17.7 0 32 14.3 32 32V427c0 16.4-12.5 30.2-28.8 31.8l-96 9.6c-23.2 2.3-45.9 8.9-66.8 19.3L272 512z\"]\n};\nvar faBookReader = faBookOpenReader;\nvar faMountainSun = {\n prefix: 'fas',\n iconName: 'mountain-sun',\n icon: [640, 512, [], \"e52f\", \"M560 160A80 80 0 1 0 560 0a80 80 0 1 0 0 160zM55.9 512H381.1h75H578.9c33.8 0 61.1-27.4 61.1-61.1c0-11.2-3.1-22.2-8.9-31.8l-132-216.3C495 196.1 487.8 192 480 192s-15 4.1-19.1 10.7l-48.2 79L286.8 81c-6.6-10.6-18.3-17-30.8-17s-24.1 6.4-30.8 17L8.6 426.4C3 435.3 0 445.6 0 456.1C0 487 25 512 55.9 512z\"]\n};\nvar faArrowsLeftRightToLine = {\n prefix: 'fas',\n iconName: 'arrows-left-right-to-line',\n icon: [640, 512, [], \"e4ba\", \"M32 64c17.7 0 32 14.3 32 32l0 320c0 17.7-14.3 32-32 32s-32-14.3-32-32V96C0 78.3 14.3 64 32 64zm214.6 73.4c12.5 12.5 12.5 32.8 0 45.3L205.3 224l229.5 0-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L434.7 288l-229.5 0 41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-96-96c-12.5-12.5-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0zM640 96V416c0 17.7-14.3 32-32 32s-32-14.3-32-32V96c0-17.7 14.3-32 32-32s32 14.3 32 32z\"]\n};\nvar faDiceD20 = {\n prefix: 'fas',\n iconName: 'dice-d20',\n icon: [512, 512, [], \"f6cf\", \"M48.7 125.8l53.2 31.9c7.8 4.7 17.8 2 22.2-5.9L201.6 12.1c3-5.4-.9-12.1-7.1-12.1c-1.6 0-3.2 .5-4.6 1.4L47.9 98.8c-9.6 6.6-9.2 20.9 .8 26.9zM16 171.7V295.3c0 8 10.4 11 14.7 4.4l60-92c5-7.6 2.6-17.8-5.2-22.5L40.2 158C29.6 151.6 16 159.3 16 171.7zM310.4 12.1l77.6 139.6c4.4 7.9 14.5 10.6 22.2 5.9l53.2-31.9c10-6 10.4-20.3 .8-26.9L322.1 1.4c-1.4-.9-3-1.4-4.6-1.4c-6.2 0-10.1 6.7-7.1 12.1zM496 171.7c0-12.4-13.6-20.1-24.2-13.7l-45.3 27.2c-7.8 4.7-10.1 14.9-5.2 22.5l60 92c4.3 6.7 14.7 3.6 14.7-4.4V171.7zm-49.3 246L286.1 436.6c-8.1 .9-14.1 7.8-14.1 15.9v52.8c0 3.7 3 6.8 6.8 6.8c.8 0 1.6-.1 2.4-.4l172.7-64c6.1-2.2 10.1-8 10.1-14.5c0-9.3-8.1-16.5-17.3-15.4zM233.2 512c3.7 0 6.8-3 6.8-6.8V452.6c0-8.1-6.1-14.9-14.1-15.9l-160.6-19c-9.2-1.1-17.3 6.1-17.3 15.4c0 6.5 4 12.3 10.1 14.5l172.7 64c.8 .3 1.6 .4 2.4 .4zM41.7 382.9l170.9 20.2c7.8 .9 13.4-7.5 9.5-14.3l-85.7-150c-5.9-10.4-20.7-10.8-27.3-.8L30.2 358.2c-6.5 9.9-.3 23.3 11.5 24.7zm439.6-24.8L402.9 238.1c-6.5-10-21.4-9.6-27.3 .8L290.2 388.5c-3.9 6.8 1.6 15.2 9.5 14.3l170.1-20c11.8-1.4 18-14.7 11.5-24.6zm-216.9 11l78.4-137.2c6.1-10.7-1.6-23.9-13.9-23.9H183.1c-12.3 0-20 13.3-13.9 23.9l78.4 137.2c3.7 6.4 13 6.4 16.7 0zM174.4 176H337.6c12.2 0 19.9-13.1 14-23.8l-80-144c-2.8-5.1-8.2-8.2-14-8.2h-3.2c-5.8 0-11.2 3.2-14 8.2l-80 144c-5.9 10.7 1.8 23.8 14 23.8z\"]\n};\nvar faTruckDroplet = {\n prefix: 'fas',\n iconName: 'truck-droplet',\n icon: [640, 512, [], \"e58c\", \"M0 48C0 21.5 21.5 0 48 0H368c26.5 0 48 21.5 48 48V96h50.7c17 0 33.3 6.7 45.3 18.7L589.3 192c12 12 18.7 28.3 18.7 45.3V256v32 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H576c0 53-43 96-96 96s-96-43-96-96H256c0 53-43 96-96 96s-96-43-96-96H48c-26.5 0-48-21.5-48-48V48zM416 256H544V237.3L466.7 160H416v96zM160 464a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm368-48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM208 272c39.8 0 72-29.6 72-66c0-27-39.4-82.9-59.9-110.3c-6.1-8.2-18.1-8.2-24.2 0C175.4 123 136 179 136 206c0 36.5 32.2 66 72 66z\"]\n};\nvar faFileCircleXmark = {\n prefix: 'fas',\n iconName: 'file-circle-xmark',\n icon: [576, 512, [], \"e5a1\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384v38.6C310.1 219.5 256 287.4 256 368c0 59.1 29.1 111.3 73.7 143.3c-3.2 .5-6.4 .7-9.7 .7H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zm48 96a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm59.3 107.3c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0L432 345.4l-36.7-36.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L409.4 368l-36.7 36.7c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L432 390.6l36.7 36.7c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6L454.6 368l36.7-36.7z\"]\n};\nvar faTemperatureArrowUp = {\n prefix: 'fas',\n iconName: 'temperature-arrow-up',\n icon: [576, 512, [\"temperature-up\"], \"e040\", \"M128 112c0-26.5 21.5-48 48-48s48 21.5 48 48V276.5c0 17.3 7.1 31.9 15.3 42.5C249.8 332.6 256 349.5 256 368c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-18.5 6.2-35.4 16.7-48.9c8.2-10.6 15.3-25.2 15.3-42.5V112zM176 0C114.1 0 64 50.1 64 112V276.4c0 .1-.1 .3-.2 .6c-.2 .6-.8 1.6-1.7 2.8C43.2 304.2 32 334.8 32 368c0 79.5 64.5 144 144 144s144-64.5 144-144c0-33.2-11.2-63.8-30.1-88.1c-.9-1.2-1.5-2.2-1.7-2.8c-.1-.3-.2-.5-.2-.6V112C288 50.1 237.9 0 176 0zm0 416c26.5 0 48-21.5 48-48c0-20.9-13.4-38.7-32-45.3V112c0-8.8-7.2-16-16-16s-16 7.2-16 16V322.7c-18.6 6.6-32 24.4-32 45.3c0 26.5 21.5 48 48 48zM480 160h32c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-64-64c-12.5-12.5-32.8-12.5-45.3 0l-64 64c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8h32V448c0 17.7 14.3 32 32 32s32-14.3 32-32V160z\"]\n};\nvar faTemperatureUp = faTemperatureArrowUp;\nvar faMedal = {\n prefix: 'fas',\n iconName: 'medal',\n icon: [512, 512, [127941], \"f5a2\", \"M4.1 38.2C1.4 34.2 0 29.4 0 24.6C0 11 11 0 24.6 0H133.9c11.2 0 21.7 5.9 27.4 15.5l68.5 114.1c-48.2 6.1-91.3 28.6-123.4 61.9L4.1 38.2zm503.7 0L405.6 191.5c-32.1-33.3-75.2-55.8-123.4-61.9L350.7 15.5C356.5 5.9 366.9 0 378.1 0H487.4C501 0 512 11 512 24.6c0 4.8-1.4 9.6-4.1 13.6zM80 336a176 176 0 1 1 352 0A176 176 0 1 1 80 336zm184.4-94.9c-3.4-7-13.3-7-16.8 0l-22.4 45.4c-1.4 2.8-4 4.7-7 5.1L168 298.9c-7.7 1.1-10.7 10.5-5.2 16l36.3 35.4c2.2 2.2 3.2 5.2 2.7 8.3l-8.6 49.9c-1.3 7.6 6.7 13.5 13.6 9.9l44.8-23.6c2.7-1.4 6-1.4 8.7 0l44.8 23.6c6.9 3.6 14.9-2.2 13.6-9.9l-8.6-49.9c-.5-3 .5-6.1 2.7-8.3l36.3-35.4c5.6-5.4 2.5-14.8-5.2-16l-50.1-7.3c-3-.4-5.7-2.4-7-5.1l-22.4-45.4z\"]\n};\nvar faBed = {\n prefix: 'fas',\n iconName: 'bed',\n icon: [640, 512, [128716], \"f236\", \"M32 32c17.7 0 32 14.3 32 32V320H288V160c0-17.7 14.3-32 32-32H544c53 0 96 43 96 96V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V416H352 320 64v32c0 17.7-14.3 32-32 32s-32-14.3-32-32V64C0 46.3 14.3 32 32 32zm144 96a80 80 0 1 1 0 160 80 80 0 1 1 0-160z\"]\n};\nvar faSquareH = {\n prefix: 'fas',\n iconName: 'square-h',\n icon: [448, 512, [\"h-square\"], \"f0fd\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM336 152V256 360c0 13.3-10.7 24-24 24s-24-10.7-24-24V280H160l0 80c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-208c0-13.3 10.7-24 24-24s24 10.7 24 24v80H288V152c0-13.3 10.7-24 24-24s24 10.7 24 24z\"]\n};\nvar faHSquare = faSquareH;\nvar faPodcast = {\n prefix: 'fas',\n iconName: 'podcast',\n icon: [448, 512, [], \"f2ce\", \"M319.4 372c48.5-31.3 80.6-85.9 80.6-148c0-97.2-78.8-176-176-176S48 126.8 48 224c0 62.1 32.1 116.6 80.6 148c1.2 17.3 4 38 7.2 57.1l.2 1C56 395.8 0 316.5 0 224C0 100.3 100.3 0 224 0S448 100.3 448 224c0 92.5-56 171.9-136 206.1l.2-1.1c3.1-19.2 6-39.8 7.2-57zm-2.3-38.1c-1.6-5.7-3.9-11.1-7-16.2c-5.8-9.7-13.5-17-21.9-22.4c19.5-17.6 31.8-43 31.8-71.3c0-53-43-96-96-96s-96 43-96 96c0 28.3 12.3 53.8 31.8 71.3c-8.4 5.4-16.1 12.7-21.9 22.4c-3.1 5.1-5.4 10.5-7 16.2C99.8 307.5 80 268 80 224c0-79.5 64.5-144 144-144s144 64.5 144 144c0 44-19.8 83.5-50.9 109.9zM224 312c32.9 0 64 8.6 64 43.8c0 33-12.9 104.1-20.6 132.9c-5.1 19-24.5 23.4-43.4 23.4s-38.2-4.4-43.4-23.4c-7.8-28.5-20.6-99.7-20.6-132.8c0-35.1 31.1-43.8 64-43.8zm0-144a56 56 0 1 1 0 112 56 56 0 1 1 0-112z\"]\n};\nvar faTemperatureFull = {\n prefix: 'fas',\n iconName: 'temperature-full',\n icon: [320, 512, [\"temperature-4\", \"thermometer-4\", \"thermometer-full\"], \"f2c7\", \"M160 64c-26.5 0-48 21.5-48 48V276.5c0 17.3-7.1 31.9-15.3 42.5C86.2 332.6 80 349.5 80 368c0 44.2 35.8 80 80 80s80-35.8 80-80c0-18.5-6.2-35.4-16.7-48.9c-8.2-10.6-15.3-25.2-15.3-42.5V112c0-26.5-21.5-48-48-48zM48 112C48 50.2 98.1 0 160 0s112 50.1 112 112V276.5c0 .1 .1 .3 .2 .6c.2 .6 .8 1.6 1.7 2.8c18.9 24.4 30.1 55 30.1 88.1c0 79.5-64.5 144-144 144S16 447.5 16 368c0-33.2 11.2-63.8 30.1-88.1c.9-1.2 1.5-2.2 1.7-2.8c.1-.3 .2-.5 .2-.6V112zM208 368c0 26.5-21.5 48-48 48s-48-21.5-48-48c0-20.9 13.4-38.7 32-45.3V112c0-8.8 7.2-16 16-16s16 7.2 16 16V322.7c18.6 6.6 32 24.4 32 45.3z\"]\n};\nvar faTemperature4 = faTemperatureFull;\nvar faThermometer4 = faTemperatureFull;\nvar faThermometerFull = faTemperatureFull;\nvar faBell = {\n prefix: 'fas',\n iconName: 'bell',\n icon: [448, 512, [128276, 61602], \"f0f3\", \"M224 0c-17.7 0-32 14.3-32 32V51.2C119 66 64 130.6 64 208v18.8c0 47-17.3 92.4-48.5 127.6l-7.4 8.3c-8.4 9.4-10.4 22.9-5.3 34.4S19.4 416 32 416H416c12.6 0 24-7.4 29.2-18.9s3.1-25-5.3-34.4l-7.4-8.3C401.3 319.2 384 273.9 384 226.8V208c0-77.4-55-142-128-156.8V32c0-17.7-14.3-32-32-32zm45.3 493.3c12-12 18.7-28.3 18.7-45.3H224 160c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7z\"]\n};\nvar faSuperscript = {\n prefix: 'fas',\n iconName: 'superscript',\n icon: [512, 512, [], \"f12b\", \"M480 32c0-11.1-5.7-21.4-15.2-27.2s-21.2-6.4-31.1-1.4l-32 16c-15.8 7.9-22.2 27.1-14.3 42.9C393 73.5 404.3 80 416 80v80c-17.7 0-32 14.3-32 32s14.3 32 32 32h32 32c17.7 0 32-14.3 32-32s-14.3-32-32-32V32zM32 64C14.3 64 0 78.3 0 96s14.3 32 32 32H47.3l89.6 128L47.3 384H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64c10.4 0 20.2-5.1 26.2-13.6L176 311.8l85.8 122.6c6 8.6 15.8 13.6 26.2 13.6h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H304.7L215.1 256l89.6-128H320c17.7 0 32-14.3 32-32s-14.3-32-32-32H288c-10.4 0-20.2 5.1-26.2 13.6L176 200.2 90.2 77.6C84.2 69.1 74.4 64 64 64H32z\"]\n};\nvar faPlugCircleXmark = {\n prefix: 'fas',\n iconName: 'plug-circle-xmark',\n icon: [576, 512, [], \"e560\", \"M96 0C78.3 0 64 14.3 64 32v96h64V32c0-17.7-14.3-32-32-32zM288 0c-17.7 0-32 14.3-32 32v96h64V32c0-17.7-14.3-32-32-32zM32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32v32c0 77.4 55 142 128 156.8V480c0 17.7 14.3 32 32 32s32-14.3 32-32V412.8c12.3-2.5 24.1-6.4 35.1-11.5c-2.1-10.8-3.1-21.9-3.1-33.3c0-80.3 53.8-148 127.3-169.2c.5-2.2 .7-4.5 .7-6.8c0-17.7-14.3-32-32-32H32zM432 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm59.3-180.7L454.6 368l36.7 36.7c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0L432 390.6l-36.7 36.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L409.4 368l-36.7-36.7c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L432 345.4l36.7-36.7c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faStarOfLife = {\n prefix: 'fas',\n iconName: 'star-of-life',\n icon: [512, 512, [], \"f621\", \"M208 32c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32V172.9l122-70.4c15.3-8.8 34.9-3.6 43.7 11.7l16 27.7c8.8 15.3 3.6 34.9-11.7 43.7L352 256l122 70.4c15.3 8.8 20.5 28.4 11.7 43.7l-16 27.7c-8.8 15.3-28.4 20.6-43.7 11.7L304 339.1V480c0 17.7-14.3 32-32 32H240c-17.7 0-32-14.3-32-32V339.1L86 409.6c-15.3 8.8-34.9 3.6-43.7-11.7l-16-27.7c-8.8-15.3-3.6-34.9 11.7-43.7L160 256 38 185.6c-15.3-8.8-20.5-28.4-11.7-43.7l16-27.7C51.1 98.8 70.7 93.6 86 102.4l122 70.4V32z\"]\n};\nvar faPhoneSlash = {\n prefix: 'fas',\n iconName: 'phone-slash',\n icon: [640, 512, [], \"f3dd\", \"M601.2 5.1c10.4-8.2 25.5-6.3 33.7 4.1s6.3 25.5-4.1 33.7l-592 464c-10.4 8.2-25.5 6.3-33.7-4.1s-6.3-25.5 4.1-33.7l155.6-122C101.8 270 64 171.4 64 64c0-18 12.1-33.8 29.5-38.6l88-24c19.4-5.3 39.7 4.6 47.4 23.2l40 96c6.8 16.3 2.1 35.2-11.6 46.3L208 207.3c12 25.5 27.2 49.2 45 70.7L601.2 5.1zM234.3 415.6l91.3-72c13.7 9.1 28 17.3 43 24.3L409 318.7c11.2-13.7 30-18.4 46.3-11.6l96 40c18.6 7.7 28.5 28 23.2 47.4l-24 88C545.8 499.9 530 512 512 512c-104.9 0-201.3-36-277.7-96.4z\"]\n};\nvar faPaintRoller = {\n prefix: 'fas',\n iconName: 'paint-roller',\n icon: [512, 512, [], \"f5aa\", \"M0 64C0 28.7 28.7 0 64 0H352c35.3 0 64 28.7 64 64v64c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zM160 352c0-17.7 14.3-32 32-32V304c0-44.2 35.8-80 80-80H416c17.7 0 32-14.3 32-32V160 69.5c37.3 13.2 64 48.7 64 90.5v32c0 53-43 96-96 96H272c-8.8 0-16 7.2-16 16v16c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32V352z\"]\n};\nvar faHandshakeAngle = {\n prefix: 'fas',\n iconName: 'handshake-angle',\n icon: [640, 512, [\"hands-helping\"], \"f4c4\", \"M544 248v3.3l69.7-69.7c21.9-21.9 21.9-57.3 0-79.2L535.6 24.4c-21.9-21.9-57.3-21.9-79.2 0L416.3 64.5c-2.7-.3-5.5-.5-8.3-.5H296c-37.1 0-67.6 28-71.6 64H224V248c0 22.1 17.9 40 40 40s40-17.9 40-40V176c0 0 0-.1 0-.1V160l16 0 136 0c0 0 0 0 .1 0H464c44.2 0 80 35.8 80 80v8zM336 192v56c0 39.8-32.2 72-72 72s-72-32.2-72-72V129.4c-35.9 6.2-65.8 32.3-76 68.2L99.5 255.2 26.3 328.4c-21.9 21.9-21.9 57.3 0 79.2l78.1 78.1c21.9 21.9 57.3 21.9 79.2 0l37.7-37.7c.9 0 1.8 .1 2.7 .1H384c26.5 0 48-21.5 48-48c0-5.6-1-11-2.7-16H432c26.5 0 48-21.5 48-48c0-12.8-5-24.4-13.2-33c25.7-5 45.1-27.6 45.2-54.8v-.4c-.1-30.8-25.1-55.8-56-55.8c0 0 0 0 0 0l-120 0z\"]\n};\nvar faHandsHelping = faHandshakeAngle;\nvar faLocationDot = {\n prefix: 'fas',\n iconName: 'location-dot',\n icon: [384, 512, [\"map-marker-alt\"], \"f3c5\", \"M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z\"]\n};\nvar faMapMarkerAlt = faLocationDot;\nvar faFile = {\n prefix: 'fas',\n iconName: 'file',\n icon: [384, 512, [128196, 128459, 61462], \"f15b\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128z\"]\n};\nvar faGreaterThan = {\n prefix: 'fas',\n iconName: 'greater-than',\n icon: [384, 512, [62769], \"3e\", \"M3.4 81.7c-7.9 15.8-1.5 35 14.3 42.9L280.5 256 17.7 387.4C1.9 395.3-4.5 414.5 3.4 430.3s27.1 22.2 42.9 14.3l320-160c10.8-5.4 17.7-16.5 17.7-28.6s-6.8-23.2-17.7-28.6l-320-160c-15.8-7.9-35-1.5-42.9 14.3z\"]\n};\nvar faPersonSwimming = {\n prefix: 'fas',\n iconName: 'person-swimming',\n icon: [576, 512, [127946, \"swimmer\"], \"f5c4\", \"M309.5 178.4L447.9 297.1c-1.6 .9-3.2 2-4.8 3c-18 12.4-40.1 20.3-59.2 20.3c-19.6 0-40.8-7.7-59.2-20.3c-22.1-15.5-51.6-15.5-73.7 0c-17.1 11.8-38 20.3-59.2 20.3c-10.1 0-21.1-2.2-31.9-6.2C163.1 193.2 262.2 96 384 96h64c17.7 0 32 14.3 32 32s-14.3 32-32 32H384c-26.9 0-52.3 6.6-74.5 18.4zM160 160A64 64 0 1 1 32 160a64 64 0 1 1 128 0zM306.5 325.9C329 341.4 356.5 352 384 352c26.9 0 55.4-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 405.7 417 416 384 416c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7l0 0C136.7 341.2 165.1 352 192 352c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z\"]\n};\nvar faSwimmer = faPersonSwimming;\nvar faArrowDown = {\n prefix: 'fas',\n iconName: 'arrow-down',\n icon: [384, 512, [8595], \"f063\", \"M169.4 470.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 370.8 224 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 306.7L54.6 265.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z\"]\n};\nvar faDroplet = {\n prefix: 'fas',\n iconName: 'droplet',\n icon: [384, 512, [128167, \"tint\"], \"f043\", \"M192 512C86 512 0 426 0 320C0 228.8 130.2 57.7 166.6 11.7C172.6 4.2 181.5 0 191.1 0h1.8c9.6 0 18.5 4.2 24.5 11.7C253.8 57.7 384 228.8 384 320c0 106-86 192-192 192zM96 336c0-8.8-7.2-16-16-16s-16 7.2-16 16c0 61.9 50.1 112 112 112c8.8 0 16-7.2 16-16s-7.2-16-16-16c-44.2 0-80-35.8-80-80z\"]\n};\nvar faTint = faDroplet;\nvar faEraser = {\n prefix: 'fas',\n iconName: 'eraser',\n icon: [576, 512, [], \"f12d\", \"M290.7 57.4L57.4 290.7c-25 25-25 65.5 0 90.5l80 80c12 12 28.3 18.7 45.3 18.7H288h9.4H512c17.7 0 32-14.3 32-32s-14.3-32-32-32H387.9L518.6 285.3c25-25 25-65.5 0-90.5L381.3 57.4c-25-25-65.5-25-90.5 0zM297.4 416H288l-105.4 0-80-80L227.3 211.3 364.7 348.7 297.4 416z\"]\n};\nvar faEarthAmericas = {\n prefix: 'fas',\n iconName: 'earth-americas',\n icon: [512, 512, [127758, \"earth\", \"earth-america\", \"globe-americas\"], \"f57d\", \"M57.7 193l9.4 16.4c8.3 14.5 21.9 25.2 38 29.8L163 255.7c17.2 4.9 29 20.6 29 38.5v39.9c0 11 6.2 21 16 25.9s16 14.9 16 25.9v39c0 15.6 14.9 26.9 29.9 22.6c16.1-4.6 28.6-17.5 32.7-33.8l2.8-11.2c4.2-16.9 15.2-31.4 30.3-40l8.1-4.6c15-8.5 24.2-24.5 24.2-41.7v-8.3c0-12.7-5.1-24.9-14.1-33.9l-3.9-3.9c-9-9-21.2-14.1-33.9-14.1H257c-11.1 0-22.1-2.9-31.8-8.4l-34.5-19.7c-4.3-2.5-7.6-6.5-9.2-11.2c-3.2-9.6 1.1-20 10.2-24.5l5.9-3c6.6-3.3 14.3-3.9 21.3-1.5l23.2 7.7c8.2 2.7 17.2-.4 21.9-7.5c4.7-7 4.2-16.3-1.2-22.8l-13.6-16.3c-10-12-9.9-29.5 .3-41.3l15.7-18.3c8.8-10.3 10.2-25 3.5-36.7l-2.4-4.2c-3.5-.2-6.9-.3-10.4-.3C163.1 48 84.4 108.9 57.7 193zM464 256c0-36.8-9.6-71.4-26.4-101.5L412 164.8c-15.7 6.3-23.8 23.8-18.5 39.8l16.9 50.7c3.5 10.4 12 18.3 22.6 20.9l29.1 7.3c1.2-9 1.8-18.2 1.8-27.5zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z\"]\n};\nvar faEarth = faEarthAmericas;\nvar faEarthAmerica = faEarthAmericas;\nvar faGlobeAmericas = faEarthAmericas;\nvar faPersonBurst = {\n prefix: 'fas',\n iconName: 'person-burst',\n icon: [640, 512, [], \"e53b\", \"M480 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-8 384V352h16V480c0 17.7 14.3 32 32 32s32-14.3 32-32V256.9l28.6 47.5c9.1 15.1 28.8 20 43.9 10.9s20-28.8 10.9-43.9l-58.3-97c-17.4-28.9-48.6-46.6-82.3-46.6H465.1c-33.7 0-64.9 17.7-82.3 46.6l-58.3 97c-9.1 15.1-4.2 34.8 10.9 43.9s34.8 4.2 43.9-10.9L408 256.9V480c0 17.7 14.3 32 32 32s32-14.3 32-32zM190.9 18.1C188.4 12 182.6 8 176 8s-12.4 4-14.9 10.1l-29.4 74L55.6 68.9c-6.3-1.9-13.1 .2-17.2 5.3s-4.6 12.2-1.4 17.9l39.5 69.1L10.9 206.4c-5.4 3.7-8 10.3-6.5 16.7s6.7 11.2 13.1 12.2l78.7 12.2L90.6 327c-.5 6.5 3.1 12.7 9 15.5s12.9 1.8 17.8-2.6L176 286.1l58.6 53.9c4.8 4.4 11.9 5.5 17.8 2.6s9.5-9 9-15.5l-5.6-79.4 50.5-7.8 24.3-40.5-55.2-38L315 92.2c3.3-5.7 2.7-12.8-1.4-17.9s-10.9-7.2-17.2-5.3L220.3 92.1l-29.4-74z\"]\n};\nvar faDove = {\n prefix: 'fas',\n iconName: 'dove',\n icon: [512, 512, [128330], \"f4ba\", \"M160.8 96.5c14 17 31 30.9 49.5 42.2c25.9 15.8 53.7 25.9 77.7 31.6V138.8C265.8 108.5 250 71.5 248.6 28c-.4-11.3-7.5-21.5-18.4-24.4c-7.6-2-15.8-.2-21 5.8c-13.3 15.4-32.7 44.6-48.4 87.2zM320 144v30.6l0 0v1.3l0 0 0 32.1c-60.8-5.1-185-43.8-219.3-157.2C97.4 40 87.9 32 76.6 32c-7.9 0-15.3 3.9-18.8 11C46.8 65.9 32 112.1 32 176c0 116.9 80.1 180.5 118.4 202.8L11.8 416.6C6.7 418 2.6 421.8 .9 426.8s-.8 10.6 2.3 14.8C21.7 466.2 77.3 512 160 512c3.6 0 7.2-1.2 10-3.5L245.6 448H320c88.4 0 160-71.6 160-160V128l29.9-44.9c1.3-2 2.1-4.4 2.1-6.8c0-6.8-5.5-12.3-12.3-12.3H400c-44.2 0-80 35.8-80 80zm80-16a16 16 0 1 1 0 32 16 16 0 1 1 0-32z\"]\n};\nvar faBatteryEmpty = {\n prefix: 'fas',\n iconName: 'battery-empty',\n icon: [576, 512, [\"battery-0\"], \"f244\", \"M80 160c-8.8 0-16 7.2-16 16V336c0 8.8 7.2 16 16 16H464c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H80zM0 176c0-44.2 35.8-80 80-80H464c44.2 0 80 35.8 80 80v16c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32v16c0 44.2-35.8 80-80 80H80c-44.2 0-80-35.8-80-80V176z\"]\n};\nvar faBattery0 = faBatteryEmpty;\nvar faSocks = {\n prefix: 'fas',\n iconName: 'socks',\n icon: [512, 512, [129510], \"f696\", \"M175.2 476.6c-9.7-18-15.2-38.7-15.2-60.6c0-40.3 19-78.2 51.2-102.4l64-48c8.1-6 12.8-15.5 12.8-25.6V96H128V240c0 20.1-9.5 39.1-25.6 51.2l-64 48C14.2 357.3 0 385.8 0 416c0 53 43 96 96 96c20.8 0 41-6.7 57.6-19.2l21.6-16.2zM128 64H288V48c0-14.5 3.9-28.2 10.7-39.9C291 3 281.9 0 272 0H176c-26.5 0-48 21.5-48 48V64zM320 96V240c0 20.1-9.5 39.1-25.6 51.2l-64 48C206.2 357.3 192 385.8 192 416c0 53 43 96 96 96c20.8 0 41-6.7 57.6-19.2l115.2-86.4C493 382.2 512 344.3 512 304V96H320zM512 64V48c0-26.5-21.5-48-48-48H368c-26.5 0-48 21.5-48 48V64H512z\"]\n};\nvar faInbox = {\n prefix: 'fas',\n iconName: 'inbox',\n icon: [512, 512, [], \"f01c\", \"M121 32C91.6 32 66 52 58.9 80.5L1.9 308.4C.6 313.5 0 318.7 0 323.9V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V323.9c0-5.2-.6-10.4-1.9-15.5l-57-227.9C446 52 420.4 32 391 32H121zm0 64H391l48 192H387.8c-12.1 0-23.2 6.8-28.6 17.7l-14.3 28.6c-5.4 10.8-16.5 17.7-28.6 17.7H195.8c-12.1 0-23.2-6.8-28.6-17.7l-14.3-28.6c-5.4-10.8-16.5-17.7-28.6-17.7H73L121 96z\"]\n};\nvar faSection = {\n prefix: 'fas',\n iconName: 'section',\n icon: [256, 512, [], \"e447\", \"M64.9 96C67.1 84.4 73.7 76.2 86 70.6c13.8-6.2 34.8-8.9 61.2-4.5c8.8 1.4 36.1 7.1 44.1 9.3c17 4.8 34.7-5.1 39.5-22.2s-5.1-34.7-22.2-39.5c-11.1-3.1-41-9.2-50.9-10.8C123-2.7 88.3-.6 59.7 12.3C29.9 25.8 7.5 50.9 1.6 86.5c-.1 .5-.2 1.1-.2 1.6c-2.2 19.7 .3 37.9 8.1 54.1c7.7 16.1 19.4 28 32 36.9c.6 .5 1.3 .9 2 1.4C22.3 194.2 6.5 215.1 1.7 243c-.1 .6-.2 1.1-.2 1.7c-2.3 19.3 .4 37.1 8.4 53c7.9 15.6 19.8 27 32.3 35.5c22.4 15.2 51.9 24 75.4 31l0 0 3.7 1.1c27.2 8.2 46.9 14.6 59.4 23.8c5.5 4 8.2 7.6 9.5 10.9c1.3 3.2 2.6 8.6 .9 18.1c-1.7 10.1-7.7 18-20.7 23.5c-14 6-35.4 8.5-62 4.4c-12.8-2.1-35.1-9.7-54.1-16.2l0 0c-4.3-1.5-8.5-2.9-12.3-4.2C25.3 420 7.2 429.1 1.6 445.8s3.5 34.9 20.3 40.5c2.6 .8 5.7 1.9 9.2 3.1c18.6 6.3 48.5 16.6 67.3 19.6l0 0 .2 0c34.5 5.4 68.8 3.4 97.2-8.7c29.4-12.6 52.5-36.5 58.5-71.5c3.3-19.3 1.9-37.4-5-53.9c-6.3-15-16.4-26.4-27.6-35.2c16.5-13.9 28.5-33.2 32.6-58.2c3.2-19.8 1.9-38.3-4.8-55.1c-6.7-16.8-17.8-29.4-30.2-39c-22.8-17.6-53.6-27.4-77.7-35l-1.4-.5c-27.4-8.7-47.8-15.3-61.5-25c-6.1-4.4-9.5-8.5-11.4-12.4c-1.8-3.7-3.2-9.3-2.3-18.5zm76.7 208.5c-.2-.1-.4-.1-.6-.2l-1.4-.4c-27.4-8.2-47.9-14.5-61.7-23.8c-6.2-4.2-9.3-7.9-11-11.3c-1.5-3-2.9-7.7-2.1-15.7c1.9-9.7 7.9-17.3 20.5-22.7c14-6 35.4-8.5 62.1-4.3l16.4 2.6c6.3 2.9 11.7 6 16.2 9.5c5.5 4.2 8.4 8.2 10 12.2c1.6 4 2.8 10.4 1.1 20.9c-2.4 14.7-12.8 26.4-37.1 31l-12.4 2.3z\"]\n};\nvar faGaugeHigh = {\n prefix: 'fas',\n iconName: 'gauge-high',\n icon: [512, 512, [62461, \"tachometer-alt\", \"tachometer-alt-fast\"], \"f625\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"]\n};\nvar faTachometerAlt = faGaugeHigh;\nvar faTachometerAltFast = faGaugeHigh;\nvar faEnvelopeOpenText = {\n prefix: 'fas',\n iconName: 'envelope-open-text',\n icon: [512, 512, [], \"f658\", \"M215.4 96H144 107.8 96v8.8V144v40.4 89L.2 202.5c1.6-18.1 10.9-34.9 25.7-45.8L48 140.3V96c0-26.5 21.5-48 48-48h76.6l49.9-36.9C232.2 3.9 243.9 0 256 0s23.8 3.9 33.5 11L339.4 48H416c26.5 0 48 21.5 48 48v44.3l22.1 16.4c14.8 10.9 24.1 27.7 25.7 45.8L416 273.4v-89V144 104.8 96H404.2 368 296.6 215.4zM0 448V242.1L217.6 403.3c11.1 8.2 24.6 12.7 38.4 12.7s27.3-4.4 38.4-12.7L512 242.1V448v0c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64v0zM176 160H336c8.8 0 16 7.2 16 16s-7.2 16-16 16H176c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H336c8.8 0 16 7.2 16 16s-7.2 16-16 16H176c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faHospital = {\n prefix: 'fas',\n iconName: 'hospital',\n icon: [640, 512, [127973, 62589, \"hospital-alt\", \"hospital-wide\"], \"f0f8\", \"M192 48c0-26.5 21.5-48 48-48H400c26.5 0 48 21.5 48 48V512H368V432c0-26.5-21.5-48-48-48s-48 21.5-48 48v80H192V48zM48 96H160V512H48c-26.5 0-48-21.5-48-48V320H80c8.8 0 16-7.2 16-16s-7.2-16-16-16H0V224H80c8.8 0 16-7.2 16-16s-7.2-16-16-16H0V144c0-26.5 21.5-48 48-48zm544 0c26.5 0 48 21.5 48 48v48H560c-8.8 0-16 7.2-16 16s7.2 16 16 16h80v64H560c-8.8 0-16 7.2-16 16s7.2 16 16 16h80V464c0 26.5-21.5 48-48 48H480V96H592zM312 64c-8.8 0-16 7.2-16 16v24H272c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h24v24c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16V152h24c8.8 0 16-7.2 16-16V120c0-8.8-7.2-16-16-16H344V80c0-8.8-7.2-16-16-16H312z\"]\n};\nvar faHospitalAlt = faHospital;\nvar faHospitalWide = faHospital;\nvar faWineBottle = {\n prefix: 'fas',\n iconName: 'wine-bottle',\n icon: [512, 512, [], \"f72f\", \"M393.4 9.4c12.5-12.5 32.8-12.5 45.3 0l64 64c12.5 12.5 12.5 32.8 0 45.3c-11.8 11.8-30.7 12.5-43.2 1.9l-9.5 9.5-48.8 48.8c-9.2 9.2-11.5 22.9-8.6 35.6c9.4 40.9-1.9 85.6-33.8 117.5L197.3 493.3c-25 25-65.5 25-90.5 0l-88-88c-25-25-25-65.5 0-90.5L180.2 153.3c31.9-31.9 76.6-43.1 117.5-33.8c12.6 2.9 26.4 .5 35.5-8.6l48.8-48.8 9.5-9.5c-10.6-12.6-10-31.4 1.9-43.2zM99.3 347.3l65.4 65.4c6.2 6.2 16.4 6.2 22.6 0l97.4-97.4c6.2-6.2 6.2-16.4 0-22.6l-65.4-65.4c-6.2-6.2-16.4-6.2-22.6 0L99.3 324.7c-6.2 6.2-6.2 16.4 0 22.6z\"]\n};\nvar faChessRook = {\n prefix: 'fas',\n iconName: 'chess-rook',\n icon: [448, 512, [9820], \"f447\", \"M32 192V48c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16V88c0 4.4 3.6 8 8 8h32c4.4 0 8-3.6 8-8V48c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16V88c0 4.4 3.6 8 8 8h32c4.4 0 8-3.6 8-8V48c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16V192c0 10.1-4.7 19.6-12.8 25.6L352 256l16 144H80L96 256 44.8 217.6C36.7 211.6 32 202.1 32 192zm176 96h32c8.8 0 16-7.2 16-16V224c0-17.7-14.3-32-32-32s-32 14.3-32 32v48c0 8.8 7.2 16 16 16zM22.6 473.4L64 432H384l41.4 41.4c4.2 4.2 6.6 10 6.6 16c0 12.5-10.1 22.6-22.6 22.6H38.6C26.1 512 16 501.9 16 489.4c0-6 2.4-11.8 6.6-16z\"]\n};\nvar faBarsStaggered = {\n prefix: 'fas',\n iconName: 'bars-staggered',\n icon: [512, 512, [\"reorder\", \"stream\"], \"f550\", \"M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM64 256c0-17.7 14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H96c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z\"]\n};\nvar faReorder = faBarsStaggered;\nvar faStream = faBarsStaggered;\nvar faDharmachakra = {\n prefix: 'fas',\n iconName: 'dharmachakra',\n icon: [512, 512, [9784], \"f655\", \"M337.8 205.7l48.6-42.5c13.8 19.3 23.4 41.9 27.4 66.2l-64.4 4.3c-2.4-10.1-6.4-19.5-11.6-28zm140.1 19.5c-5.3-38.8-20.6-74.5-43.2-104.3l.8-.7C449 108.4 449.7 87.6 437 75s-33.4-12-45.2 1.5l-.7 .8c-29.8-22.6-65.5-37.9-104.3-43.2l.1-1.1c1.2-17.9-13-33-30.9-33s-32.1 15.2-30.9 33l.1 1.1c-38.8 5.3-74.5 20.6-104.3 43.2l-.7-.8C108.4 63 87.6 62.3 75 75s-12 33.4 1.5 45.2l.8 .7c-22.6 29.8-37.9 65.5-43.2 104.3l-1.1-.1c-17.9-1.2-33 13-33 30.9s15.2 32.1 33 30.9l1.1-.1c5.3 38.8 20.6 74.5 43.2 104.3l-.8 .7C63 403.6 62.3 424.4 75 437s33.4 12 45.2-1.5l.7-.8c29.8 22.6 65.5 37.9 104.3 43.2l-.1 1.1c-1.2 17.9 13 33 30.9 33s32.1-15.2 30.9-33l-.1-1.1c38.8-5.3 74.5-20.6 104.3-43.2l.7 .8c11.8 13.5 32.5 14.2 45.2 1.5s12-33.4-1.5-45.2l-.8-.7c22.6-29.8 37.9-65.5 43.2-104.3l1.1 .1c17.9 1.2 33-13 33-30.9s-15.2-32.1-33-30.9l-1.1 .1zM163.2 125.6c19.3-13.8 41.9-23.4 66.2-27.5l4.3 64.4c-10 2.4-19.5 6.4-28 11.6l-42.5-48.6zm-65 103.8c4.1-24.4 13.7-46.9 27.5-66.2l48.6 42.5c-5.3 8.5-9.2 18-11.6 28l-64.4-4.3zm27.5 119.4c-13.8-19.3-23.4-41.9-27.5-66.2l64.4-4.3c2.4 10 6.4 19.5 11.6 28l-48.6 42.5zm103.8 65c-24.4-4.1-46.9-13.7-66.2-27.4l42.5-48.6c8.5 5.3 18 9.2 28 11.6l-4.3 64.4zm119.4-27.4c-19.3 13.8-41.9 23.4-66.2 27.4l-4.3-64.4c10-2.4 19.5-6.4 28-11.6l42.5 48.6zm65-103.8c-4.1 24.4-13.7 46.9-27.4 66.2l-48.6-42.5c5.3-8.5 9.2-18 11.6-28l64.4 4.3zm-65-156.9l-42.5 48.6c-8.5-5.3-18-9.2-28-11.6l4.3-64.4c24.4 4.1 46.9 13.7 66.2 27.5zM256 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faHotdog = {\n prefix: 'fas',\n iconName: 'hotdog',\n icon: [512, 512, [127789], \"f80f\", \"M488.6 23.4c31.2 31.2 31.2 81.9 0 113.1l-352 352c-31.2 31.2-81.9 31.2-113.1 0s-31.2-81.9 0-113.1l352-352c31.2-31.2 81.9-31.2 113.1 0zM443.3 92.7c-6.2-6.2-16.4-6.2-22.6 0c-12.5 12.5-23.8 15.1-37.5 17.6l-2.5 .4c-13.8 2.5-31.6 5.6-48 22c-16.7 16.7-20.9 36-24.1 50.9l0 0v0l-.2 1c-3.4 15.6-6 26.4-15.7 36.1s-20.5 12.3-36.1 15.7l-1 .2c-14.9 3.2-34.2 7.4-50.9 24.1s-20.9 36-24.1 50.9l-.2 1c-3.4 15.6-6 26.4-15.7 36.1c-9.2 9.2-18 10.8-32.7 13.4l0 0-.9 .2c-15.6 2.8-34.9 6.9-54.4 26.4c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0c12.5-12.5 23.8-15.1 37.5-17.6l2.5-.4c13.8-2.5 31.6-5.6 48-22c16.7-16.7 20.9-36 24.1-50.9l.2-1c3.4-15.6 6-26.4 15.7-36.1s20.5-12.3 36.1-15.7l1-.2c14.9-3.2 34.2-7.4 50.9-24.1s20.9-36 24.1-50.9l.2-1c3.4-15.6 6-26.4 15.7-36.1c9.2-9.2 18-10.8 32.7-13.4l.9-.2c15.6-2.8 34.9-6.9 54.4-26.4c6.2-6.2 6.2-16.4 0-22.6zM191.2 479.2l288-288L495 207c10.9 10.9 17 25.6 17 41s-6.1 30.1-17 41L289 495c-10.9 10.9-25.6 17-41 17s-30.1-6.1-41-17l-15.8-15.8zM17 305C6.1 294.1 0 279.4 0 264s6.1-30.1 17-41L223 17C233.9 6.1 248.6 0 264 0s30.1 6.1 41 17l15.8 15.8-288 288L17 305z\"]\n};\nvar faPersonWalkingWithCane = {\n prefix: 'fas',\n iconName: 'person-walking-with-cane',\n icon: [512, 512, [\"blind\"], \"f29d\", \"M176 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-8.4 32c-36.4 0-69.6 20.5-85.9 53.1L35.4 273.7c-7.9 15.8-1.5 35 14.3 42.9s35 1.5 42.9-14.3L128 231.6v43.2c0 17 6.7 33.3 18.7 45.3L224 397.3V480c0 17.7 14.3 32 32 32s32-14.3 32-32V390.6c0-12.7-5.1-24.9-14.1-33.9L224 306.7V213.3l70.4 93.9c10.6 14.1 30.7 17 44.8 6.4s17-30.7 6.4-44.8L268.8 166.4C250.7 142.2 222.2 128 192 128H167.6zM128.3 346.8L97 472.2c-4.3 17.1 6.1 34.5 23.3 38.8s34.5-6.1 38.8-23.3l22-88.2-52.8-52.8zM450.8 505.1c5 7.3 15 9.1 22.3 4s9.1-15 4-22.3L358.9 316.1c-2.8 3.8-6.1 7.3-10.1 10.3c-5 3.8-10.5 6.4-16.2 7.9L450.8 505.1z\"]\n};\nvar faBlind = faPersonWalkingWithCane;\nvar faDrum = {\n prefix: 'fas',\n iconName: 'drum',\n icon: [512, 512, [129345], \"f569\", \"M501.2 76.1c11.1-7.3 14.2-22.1 6.9-33.2s-22.1-14.2-33.2-6.9L370.2 104.5C335.8 98.7 297 96 256 96C114.6 96 0 128 0 208V368c0 31.3 27.4 58.8 72 78.7V344c0-13.3 10.7-24 24-24s24 10.7 24 24V463.4c33 8.9 71.1 14.5 112 16.1V376c0-13.3 10.7-24 24-24s24 10.7 24 24V479.5c40.9-1.6 79-7.2 112-16.1V344c0-13.3 10.7-24 24-24s24 10.7 24 24V446.7c44.6-19.9 72-47.4 72-78.7V208c0-41.1-30.2-69.5-78.8-87.4l67.9-44.5zM307.4 145.6l-64.6 42.3c-11.1 7.3-14.2 22.1-6.9 33.2s22.1 14.2 33.2 6.9l111.1-72.8c14.7 3.2 27.9 7 39.4 11.5C458.4 181.8 464 197.4 464 208c0 .8-2.7 17.2-46 35.9C379.1 260.7 322 272 256 272s-123.1-11.3-162-28.1C50.7 225.2 48 208.8 48 208c0-10.6 5.6-26.2 44.4-41.3C130.6 151.9 187.8 144 256 144c18 0 35.1 .5 51.4 1.6z\"]\n};\nvar faIceCream = {\n prefix: 'fas',\n iconName: 'ice-cream',\n icon: [448, 512, [127848], \"f810\", \"M367.1 160c.6-5.3 .9-10.6 .9-16C368 64.5 303.5 0 224 0S80 64.5 80 144c0 5.4 .3 10.7 .9 16H80c-26.5 0-48 21.5-48 48s21.5 48 48 48h53.5 181H368c26.5 0 48-21.5 48-48s-21.5-48-48-48h-.9zM96 288L200.8 497.7c4.4 8.8 13.3 14.3 23.2 14.3s18.8-5.5 23.2-14.3L352 288H96z\"]\n};\nvar faHeartCircleBolt = {\n prefix: 'fas',\n iconName: 'heart-circle-bolt',\n icon: [576, 512, [], \"e4fc\", \"M47.6 300.4L228.3 469.1c7.5 7 17.4 10.9 27.7 10.9s20.2-3.9 27.7-10.9l2.6-2.4C267.2 438.6 256 404.6 256 368c0-97.2 78.8-176 176-176c28.3 0 55 6.7 78.7 18.5c.9-6.5 1.3-13 1.3-19.6v-5.8c0-69.9-50.5-129.5-119.4-141C347 36.5 300.6 51.4 268 84L256 96 244 84c-32.6-32.6-79-47.5-124.6-39.9C50.5 55.6 0 115.2 0 185.1v5.8c0 41.5 17.2 81.2 47.6 109.5zM432 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm47.9-225c4.3 3.7 5.4 9.9 2.6 14.9L452.4 356H488c5.2 0 9.8 3.3 11.4 8.2s-.1 10.3-4.2 13.4l-96 72c-4.5 3.4-10.8 3.2-15.1-.6s-5.4-9.9-2.6-14.9L411.6 380H376c-5.2 0-9.8-3.3-11.4-8.2s.1-10.3 4.2-13.4l96-72c4.5-3.4 10.8-3.2 15.1 .6z\"]\n};\nvar faFax = {\n prefix: 'fas',\n iconName: 'fax',\n icon: [512, 512, [128224, 128439], \"f1ac\", \"M128 64v96h64V64H386.7L416 93.3V160h64V93.3c0-17-6.7-33.3-18.7-45.3L432 18.7C420 6.7 403.7 0 386.7 0H192c-35.3 0-64 28.7-64 64zM0 160V480c0 17.7 14.3 32 32 32H64c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zm480 32H128V480c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM256 256a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm32 96a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM224 416a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faParagraph = {\n prefix: 'fas',\n iconName: 'paragraph',\n icon: [448, 512, [182], \"f1dd\", \"M192 32h64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H384l0 352c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-352H288V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H192c-88.4 0-160-71.6-160-160s71.6-160 160-160z\"]\n};\nvar faCheckToSlot = {\n prefix: 'fas',\n iconName: 'check-to-slot',\n icon: [576, 512, [\"vote-yea\"], \"f772\", \"M96 80c0-26.5 21.5-48 48-48H432c26.5 0 48 21.5 48 48V384H96V80zm313 47c-9.4-9.4-24.6-9.4-33.9 0l-111 111-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0L409 161c9.4-9.4 9.4-24.6 0-33.9zM0 336c0-26.5 21.5-48 48-48H64V416H512V288h16c26.5 0 48 21.5 48 48v96c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V336z\"]\n};\nvar faVoteYea = faCheckToSlot;\nvar faStarHalf = {\n prefix: 'fas',\n iconName: 'star-half',\n icon: [576, 512, [61731], \"f089\", \"M288 0c-12.2 .1-23.3 7-28.6 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3L288 439.8V0zM429.9 512c1.1 .1 2.1 .1 3.2 0h-3.2z\"]\n};\nvar faBoxesStacked = {\n prefix: 'fas',\n iconName: 'boxes-stacked',\n icon: [576, 512, [62625, \"boxes\", \"boxes-alt\"], \"f468\", \"M248 0H208c-26.5 0-48 21.5-48 48V160c0 35.3 28.7 64 64 64H352c35.3 0 64-28.7 64-64V48c0-26.5-21.5-48-48-48H328V80c0 8.8-7.2 16-16 16H264c-8.8 0-16-7.2-16-16V0zM64 256c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H224c35.3 0 64-28.7 64-64V320c0-35.3-28.7-64-64-64H184v80c0 8.8-7.2 16-16 16H120c-8.8 0-16-7.2-16-16V256H64zM352 512H512c35.3 0 64-28.7 64-64V320c0-35.3-28.7-64-64-64H472v80c0 8.8-7.2 16-16 16H408c-8.8 0-16-7.2-16-16V256H352c-15 0-28.8 5.1-39.7 13.8c4.9 10.4 7.7 22 7.7 34.2V464c0 12.2-2.8 23.8-7.7 34.2C323.2 506.9 337 512 352 512z\"]\n};\nvar faBoxes = faBoxesStacked;\nvar faBoxesAlt = faBoxesStacked;\nvar faLink = {\n prefix: 'fas',\n iconName: 'link',\n icon: [640, 512, [128279, \"chain\"], \"f0c1\", \"M579.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L422.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C206.5 251.2 213 330 263 380c56.5 56.5 148 56.5 204.5 0L579.8 267.7zM60.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C74 372 74 321 105.5 289.5L217.7 177.2c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C433.5 260.8 427 182 377 132c-56.5-56.5-148-56.5-204.5 0L60.2 244.3z\"]\n};\nvar faChain = faLink;\nvar faEarListen = {\n prefix: 'fas',\n iconName: 'ear-listen',\n icon: [512, 512, [\"assistive-listening-systems\"], \"f2a2\", \"M398.3 3.4c-15.8-7.9-35-1.5-42.9 14.3c-7.9 15.8-1.5 34.9 14.2 42.9l.4 .2c.4 .2 1.1 .6 2.1 1.2c2 1.2 5 3 8.7 5.6c7.5 5.2 17.6 13.2 27.7 24.2C428.5 113.4 448 146 448 192c0 17.7 14.3 32 32 32s32-14.3 32-32c0-66-28.5-113.4-56.5-143.7C441.6 33.2 427.7 22.2 417.3 15c-5.3-3.7-9.7-6.4-13-8.3c-1.6-1-3-1.7-4-2.2c-.5-.3-.9-.5-1.2-.7l-.4-.2-.2-.1-.1 0 0 0c0 0 0 0-14.3 28.6L398.3 3.4zM128.7 227.5c6.2-56 53.7-99.5 111.3-99.5c61.9 0 112 50.1 112 112c0 29.3-11.2 55.9-29.6 75.9c-17 18.4-34.4 45.1-34.4 78V400c0 26.5-21.5 48-48 48c-17.7 0-32 14.3-32 32s14.3 32 32 32c61.9 0 112-50.1 112-112v-6.1c0-9.8 5.4-21.7 17.4-34.7C398.3 327.9 416 286 416 240c0-97.2-78.8-176-176-176C149.4 64 74.8 132.5 65.1 220.5c-1.9 17.6 10.7 33.4 28.3 35.3s33.4-10.7 35.3-28.3zM32 512a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM192 352a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3l64 64c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-64-64c-12.5-12.5-32.8-12.5-45.3 0zM208 240c0-17.7 14.3-32 32-32s32 14.3 32 32c0 13.3 10.7 24 24 24s24-10.7 24-24c0-44.2-35.8-80-80-80s-80 35.8-80 80c0 13.3 10.7 24 24 24s24-10.7 24-24z\"]\n};\nvar faAssistiveListeningSystems = faEarListen;\nvar faTreeCity = {\n prefix: 'fas',\n iconName: 'tree-city',\n icon: [640, 512, [], \"e587\", \"M288 48c0-26.5 21.5-48 48-48h96c26.5 0 48 21.5 48 48V192h40V120c0-13.3 10.7-24 24-24s24 10.7 24 24v72h24c26.5 0 48 21.5 48 48V464c0 26.5-21.5 48-48 48H432 336c-26.5 0-48-21.5-48-48V48zm64 32v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16H368c-8.8 0-16 7.2-16 16zm16 80c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H368zM352 272v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H368c-8.8 0-16 7.2-16 16zm176-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H528zM512 368v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16H528c-8.8 0-16 7.2-16 16zM224 160c0 6-1 11-2 16c20 14 34 38 34 64c0 45-36 80-80 80H160V480c0 18-15 32-32 32c-18 0-32-14-32-32V320H80c-45 0-80-35-80-80c0-26 13-50 33-64c-1-5-1-10-1-16c0-53 42-96 96-96c53 0 96 43 96 96z\"]\n};\nvar faPlay = {\n prefix: 'fas',\n iconName: 'play',\n icon: [384, 512, [9654], \"f04b\", \"M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z\"]\n};\nvar faFont = {\n prefix: 'fas',\n iconName: 'font',\n icon: [448, 512, [], \"f031\", \"M254 52.8C249.3 40.3 237.3 32 224 32s-25.3 8.3-30 20.8L57.8 416H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32h-1.8l18-48H303.8l18 48H320c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H390.2L254 52.8zM279.8 304H168.2L224 155.1 279.8 304z\"]\n};\nvar faTableCellsRowLock = {\n prefix: 'fas',\n iconName: 'table-cells-row-lock',\n icon: [640, 512, [], \"e67a\", \"M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 65.1c-37.8 5.4-69.4 29.6-85.2 62.9L360 224l0 64 56 0 0 8.6c-19.1 11.1-32 31.7-32 55.4l-24 0 0 64 24 0 0 64L64 480c-35.3 0-64-28.7-64-64L0 96zM64 224l0 64 88 0 0-64-88 0zm232 0l-88 0 0 64 88 0 0-64zM152 352l-88 0 0 64 88 0 0-64zm56 0l0 64 88 0 0-64-88 0zM528 240c-17.7 0-32 14.3-32 32l0 48 64 0 0-48c0-17.7-14.3-32-32-32zm-80 32c0-44.2 35.8-80 80-80s80 35.8 80 80l0 48c17.7 0 32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-160 0c-17.7 0-32-14.3-32-32l0-128c0-17.7 14.3-32 32-32l0-48z\"]\n};\nvar faRupiahSign = {\n prefix: 'fas',\n iconName: 'rupiah-sign',\n icon: [512, 512, [], \"e23d\", \"M0 64C0 46.3 14.3 32 32 32h80c79.5 0 144 64.5 144 144c0 58.8-35.2 109.3-85.7 131.7l51.4 128.4c6.6 16.4-1.4 35-17.8 41.6s-35-1.4-41.6-17.8L106.3 320H64V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V288 64zM64 256h48c44.2 0 80-35.8 80-80s-35.8-80-80-80H64V256zm256-96h80c61.9 0 112 50.1 112 112s-50.1 112-112 112H352v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V352 192c0-17.7 14.3-32 32-32zm80 160c26.5 0 48-21.5 48-48s-21.5-48-48-48H352v96h48z\"]\n};\nvar faMagnifyingGlass = {\n prefix: 'fas',\n iconName: 'magnifying-glass',\n icon: [512, 512, [128269, \"search\"], \"f002\", \"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z\"]\n};\nvar faSearch = faMagnifyingGlass;\nvar faTableTennisPaddleBall = {\n prefix: 'fas',\n iconName: 'table-tennis-paddle-ball',\n icon: [640, 512, [127955, \"ping-pong-paddle-ball\", \"table-tennis\"], \"f45d\", \"M480 288c-50.1 0-93.6 28.8-114.6 70.8L132.9 126.3l.6-.6 60.1-60.1c87.5-87.5 229.3-87.5 316.8 0c67.1 67.1 82.7 166.3 46.8 248.3C535.8 297.6 509 288 480 288zM113.3 151.9L354.1 392.7c-1.4 7.5-2.1 15.3-2.1 23.3c0 23.2 6.2 44.9 16.9 63.7c-3 .2-6.1 .3-9.2 .3H357c-33.9 0-66.5-13.5-90.5-37.5l-9.8-9.8c-13.1-13.1-34.6-12.4-46.8 1.7L152.2 501c-5.8 6.7-14.2 10.7-23 11s-17.5-3.1-23.8-9.4l-32-32c-6.3-6.3-9.7-14.9-9.4-23.8s4.3-17.2 11-23l66.6-57.7c14-12.2 14.8-33.7 1.7-46.8l-9.8-9.8c-24-24-37.5-56.6-37.5-90.5v-2.7c0-22.8 6.1-44.9 17.3-64.3zM480 320a96 96 0 1 1 0 192 96 96 0 1 1 0-192z\"]\n};\nvar faPingPongPaddleBall = faTableTennisPaddleBall;\nvar faTableTennis = faTableTennisPaddleBall;\nvar faPersonDotsFromLine = {\n prefix: 'fas',\n iconName: 'person-dots-from-line',\n icon: [576, 512, [\"diagnoses\"], \"f470\", \"M288 176A88 88 0 1 0 288 0a88 88 0 1 0 0 176zM78.7 372.9c15-12.5 50-34.4 97.3-50.1V432H400V322.7c47.3 15.8 82.3 37.7 97.3 50.1c20.4 17 50.6 14.2 67.6-6.1s14.2-50.6-6.1-67.6c-12-10-30.1-22.5-53.2-35C497.2 278.4 481.7 288 464 288c-26.5 0-48-21.5-48-48c0-4.3 .6-8.4 1.6-12.4C379.1 215.9 335.3 208 288 208c-60.2 0-114.9 12.9-160 29.9c0 .7 0 1.4 0 2.1c0 26.5-21.5 48-48 48c-11.8 0-22.7-4.3-31-11.4c-13.1 8.1-23.7 15.9-31.7 22.5c-20.4 17-23.1 47.2-6.1 67.6s47.2 23.1 67.6 6.1zM24 464c-13.3 0-24 10.7-24 24s10.7 24 24 24H552c13.3 0 24-10.7 24-24s-10.7-24-24-24H24zM224 280a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zm104 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48zM96 240a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm368 16a16 16 0 1 0 0-32 16 16 0 1 0 0 32z\"]\n};\nvar faDiagnoses = faPersonDotsFromLine;\nvar faTrashCanArrowUp = {\n prefix: 'fas',\n iconName: 'trash-can-arrow-up',\n icon: [448, 512, [\"trash-restore-alt\"], \"f82a\", \"M163.8 0H284.2c12.1 0 23.2 6.8 28.6 17.7L320 32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32h96l7.2-14.3C140.6 6.8 151.7 0 163.8 0zM32 128H416V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V128zm192 64c-6.4 0-12.5 2.5-17 7l-80 80c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l39-39V408c0 13.3 10.7 24 24 24s24-10.7 24-24V273.9l39 39c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-80-80c-4.5-4.5-10.6-7-17-7z\"]\n};\nvar faTrashRestoreAlt = faTrashCanArrowUp;\nvar faNairaSign = {\n prefix: 'fas',\n iconName: 'naira-sign',\n icon: [448, 512, [], \"e1f6\", \"M122.6 46.3c-7.8-11.7-22.4-17-35.9-12.9S64 49.9 64 64V256H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64V448c0 17.7 14.3 32 32 32s32-14.3 32-32V320H228.2l97.2 145.8c7.8 11.7 22.4 17 35.9 12.9s22.7-16.5 22.7-30.6V320h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H384V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V256H262.5L122.6 46.3zM305.1 320H320v22.3L305.1 320zM185.5 256H128V169.7L185.5 256z\"]\n};\nvar faCartArrowDown = {\n prefix: 'fas',\n iconName: 'cart-arrow-down',\n icon: [576, 512, [], \"f218\", \"M24 0C10.7 0 0 10.7 0 24S10.7 48 24 48H69.5c3.8 0 7.1 2.7 7.9 6.5l51.6 271c6.5 34 36.2 58.5 70.7 58.5H488c13.3 0 24-10.7 24-24s-10.7-24-24-24H199.7c-11.5 0-21.4-8.2-23.6-19.5L170.7 288H459.2c32.6 0 61.1-21.8 69.5-53.3l41-152.3C576.6 57 557.4 32 531.1 32H360V134.1l23-23c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-64 64c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l23 23V32H120.1C111 12.8 91.6 0 69.5 0H24zM176 512a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm336-48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0z\"]\n};\nvar faWalkieTalkie = {\n prefix: 'fas',\n iconName: 'walkie-talkie',\n icon: [384, 512, [], \"f8ef\", \"M112 24c0-13.3-10.7-24-24-24S64 10.7 64 24V96H48C21.5 96 0 117.5 0 144V300.1c0 12.7 5.1 24.9 14.1 33.9l3.9 3.9c9 9 14.1 21.2 14.1 33.9V464c0 26.5 21.5 48 48 48H304c26.5 0 48-21.5 48-48V371.9c0-12.7 5.1-24.9 14.1-33.9l3.9-3.9c9-9 14.1-21.2 14.1-33.9V144c0-26.5-21.5-48-48-48H320c0-17.7-14.3-32-32-32s-32 14.3-32 32H224c0-17.7-14.3-32-32-32s-32 14.3-32 32H112V24zm0 136H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faFilePen = {\n prefix: 'fas',\n iconName: 'file-pen',\n icon: [576, 512, [128221, \"file-edit\"], \"f31c\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V299.6l-94.7 94.7c-8.2 8.2-14 18.5-16.8 29.7l-15 60.1c-2.3 9.4-1.8 19 1.4 27.8H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zM549.8 235.7l14.4 14.4c15.6 15.6 15.6 40.9 0 56.6l-29.4 29.4-71-71 29.4-29.4c15.6-15.6 40.9-15.6 56.6 0zM311.9 417L441.1 287.8l71 71L382.9 487.9c-4.1 4.1-9.2 7-14.9 8.4l-60.1 15c-5.5 1.4-11.2-.2-15.2-4.2s-5.6-9.7-4.2-15.2l15-60.1c1.4-5.6 4.3-10.8 8.4-14.9z\"]\n};\nvar faFileEdit = faFilePen;\nvar faReceipt = {\n prefix: 'fas',\n iconName: 'receipt',\n icon: [384, 512, [129534], \"f543\", \"M14 2.2C22.5-1.7 32.5-.3 39.6 5.8L80 40.4 120.4 5.8c9-7.7 22.3-7.7 31.2 0L192 40.4 232.4 5.8c9-7.7 22.3-7.7 31.2 0L304 40.4 344.4 5.8c7.1-6.1 17.1-7.5 25.6-3.6s14 12.4 14 21.8V488c0 9.4-5.5 17.9-14 21.8s-18.5 2.5-25.6-3.6L304 471.6l-40.4 34.6c-9 7.7-22.3 7.7-31.2 0L192 471.6l-40.4 34.6c-9 7.7-22.3 7.7-31.2 0L80 471.6 39.6 506.2c-7.1 6.1-17.1 7.5-25.6 3.6S0 497.4 0 488V24C0 14.6 5.5 6.1 14 2.2zM96 144c-8.8 0-16 7.2-16 16s7.2 16 16 16H288c8.8 0 16-7.2 16-16s-7.2-16-16-16H96zM80 352c0 8.8 7.2 16 16 16H288c8.8 0 16-7.2 16-16s-7.2-16-16-16H96c-8.8 0-16 7.2-16 16zM96 240c-8.8 0-16 7.2-16 16s7.2 16 16 16H288c8.8 0 16-7.2 16-16s-7.2-16-16-16H96z\"]\n};\nvar faSquarePen = {\n prefix: 'fas',\n iconName: 'square-pen',\n icon: [448, 512, [\"pen-square\", \"pencil-square\"], \"f14b\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM325.8 139.7l14.4 14.4c15.6 15.6 15.6 40.9 0 56.6l-21.4 21.4-71-71 21.4-21.4c15.6-15.6 40.9-15.6 56.6 0zM119.9 289L225.1 183.8l71 71L190.9 359.9c-4.1 4.1-9.2 7-14.9 8.4l-60.1 15c-5.5 1.4-11.2-.2-15.2-4.2s-5.6-9.7-4.2-15.2l15-60.1c1.4-5.6 4.3-10.8 8.4-14.9z\"]\n};\nvar faPenSquare = faSquarePen;\nvar faPencilSquare = faSquarePen;\nvar faSuitcaseRolling = {\n prefix: 'fas',\n iconName: 'suitcase-rolling',\n icon: [384, 512, [], \"f5c1\", \"M144 56c0-4.4 3.6-8 8-8h80c4.4 0 8 3.6 8 8v72H144V56zm176 72H288V56c0-30.9-25.1-56-56-56H152C121.1 0 96 25.1 96 56v72H64c-35.3 0-64 28.7-64 64V416c0 35.3 28.7 64 64 64c0 17.7 14.3 32 32 32s32-14.3 32-32H256c0 17.7 14.3 32 32 32s32-14.3 32-32c35.3 0 64-28.7 64-64V192c0-35.3-28.7-64-64-64zM112 224H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 128H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faPersonCircleExclamation = {\n prefix: 'fas',\n iconName: 'person-circle-exclamation',\n icon: [576, 512, [], \"e53f\", \"M112 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V256.9L59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c17.4-28.9 48.6-46.6 82.3-46.6h29.7c33.7 0 64.9 17.7 82.3 46.6l44.9 74.7c-16.1 17.6-28.6 38.5-36.6 61.5c-1.9-1.8-3.5-3.9-4.9-6.3L232 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H152zM432 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm0 240a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm0-192c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16V288c0-8.8-7.2-16-16-16z\"]\n};\nvar faChevronDown = {\n prefix: 'fas',\n iconName: 'chevron-down',\n icon: [512, 512, [], \"f078\", \"M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z\"]\n};\nvar faBatteryFull = {\n prefix: 'fas',\n iconName: 'battery-full',\n icon: [576, 512, [128267, \"battery\", \"battery-5\"], \"f240\", \"M464 160c8.8 0 16 7.2 16 16V336c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16H464zM80 96C35.8 96 0 131.8 0 176V336c0 44.2 35.8 80 80 80H464c44.2 0 80-35.8 80-80V320c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32V176c0-44.2-35.8-80-80-80H80zm368 96H96V320H448V192z\"]\n};\nvar faBattery = faBatteryFull;\nvar faBattery5 = faBatteryFull;\nvar faSkullCrossbones = {\n prefix: 'fas',\n iconName: 'skull-crossbones',\n icon: [448, 512, [128369, 9760], \"f714\", \"M368 128c0 44.4-25.4 83.5-64 106.4V256c0 17.7-14.3 32-32 32H176c-17.7 0-32-14.3-32-32V234.4c-38.6-23-64-62.1-64-106.4C80 57.3 144.5 0 224 0s144 57.3 144 128zM168 176a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm144-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM3.4 273.7c7.9-15.8 27.1-22.2 42.9-14.3L224 348.2l177.7-88.8c15.8-7.9 35-1.5 42.9 14.3s1.5 35-14.3 42.9L295.6 384l134.8 67.4c15.8 7.9 22.2 27.1 14.3 42.9s-27.1 22.2-42.9 14.3L224 419.8 46.3 508.6c-15.8 7.9-35 1.5-42.9-14.3s-1.5-35 14.3-42.9L152.4 384 17.7 316.6C1.9 308.7-4.5 289.5 3.4 273.7z\"]\n};\nvar faCodeCompare = {\n prefix: 'fas',\n iconName: 'code-compare',\n icon: [512, 512, [], \"e13a\", \"M320 488c0 9.5-5.6 18.1-14.2 21.9s-18.8 2.3-25.8-4.1l-80-72c-5.1-4.6-7.9-11-7.9-17.8s2.9-13.3 7.9-17.8l80-72c7-6.3 17.2-7.9 25.8-4.1s14.2 12.4 14.2 21.9v40h16c35.3 0 64-28.7 64-64V153.3C371.7 141 352 112.8 352 80c0-44.2 35.8-80 80-80s80 35.8 80 80c0 32.8-19.7 61-48 73.3V320c0 70.7-57.3 128-128 128H320v40zM456 80a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zM192 24c0-9.5 5.6-18.1 14.2-21.9s18.8-2.3 25.8 4.1l80 72c5.1 4.6 7.9 11 7.9 17.8s-2.9 13.3-7.9 17.8l-80 72c-7 6.3-17.2 7.9-25.8 4.1s-14.2-12.4-14.2-21.9V128H176c-35.3 0-64 28.7-64 64V358.7c28.3 12.3 48 40.5 48 73.3c0 44.2-35.8 80-80 80s-80-35.8-80-80c0-32.8 19.7-61 48-73.3V192c0-70.7 57.3-128 128-128h16V24zM56 432a24 24 0 1 0 48 0 24 24 0 1 0 -48 0z\"]\n};\nvar faListUl = {\n prefix: 'fas',\n iconName: 'list-ul',\n icon: [512, 512, [\"list-dots\"], \"f0ca\", \"M64 144a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM192 64c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zM64 464a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm48-208a48 48 0 1 0 -96 0 48 48 0 1 0 96 0z\"]\n};\nvar faListDots = faListUl;\nvar faSchoolLock = {\n prefix: 'fas',\n iconName: 'school-lock',\n icon: [640, 512, [], \"e56f\", \"M302.2 5.4c10.7-7.2 24.8-7.2 35.5 0L473.7 96H592c26.5 0 48 21.5 48 48V272c0-61.9-50.1-112-112-112s-112 50.1-112 112v24.6c-19.1 11.1-32 31.7-32 55.4H320.3l-.3 0c-35.3 0-64 28.7-64 64v96h64v0H48c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48H166.3L302.2 5.4zM80 208v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16H96c-8.8 0-16 7.2-16 16zm0 128v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V336c0-8.8-7.2-16-16-16H96c-8.8 0-16 7.2-16 16zm240-72a88 88 0 1 0 0-176 88 88 0 1 0 0 176zm16-120v16h16c8.8 0 16 7.2 16 16s-7.2 16-16 16H320c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16s16 7.2 16 16zm192 96c-17.7 0-32 14.3-32 32v48h64V272c0-17.7-14.3-32-32-32zm-80 32c0-44.2 35.8-80 80-80s80 35.8 80 80v48c17.7 0 32 14.3 32 32V480c0 17.7-14.3 32-32 32H448c-17.7 0-32-14.3-32-32V352c0-17.7 14.3-32 32-32V272z\"]\n};\nvar faTowerCell = {\n prefix: 'fas',\n iconName: 'tower-cell',\n icon: [576, 512, [], \"e585\", \"M62.6 2.3C46.2-4.3 27.6 3.6 20.9 20C7.4 53.4 0 89.9 0 128s7.4 74.6 20.9 108c6.6 16.4 25.3 24.3 41.7 17.7S86.9 228.4 80.3 212C69.8 186.1 64 157.8 64 128s5.8-58.1 16.3-84C86.9 27.6 79 9 62.6 2.3zm450.8 0C497 9 489.1 27.6 495.7 44C506.2 69.9 512 98.2 512 128s-5.8 58.1-16.3 84c-6.6 16.4 1.3 35 17.7 41.7s35-1.3 41.7-17.7c13.5-33.4 20.9-69.9 20.9-108s-7.4-74.6-20.9-108C548.4 3.6 529.8-4.3 513.4 2.3zM340.1 165.2c7.5-10.5 11.9-23.3 11.9-37.2c0-35.3-28.7-64-64-64s-64 28.7-64 64c0 13.9 4.4 26.7 11.9 37.2L98.9 466.8c-7.3 16.1-.2 35.1 15.9 42.4s35.1 .2 42.4-15.9L177.7 448H398.3l20.6 45.2c7.3 16.1 26.3 23.2 42.4 15.9s23.2-26.3 15.9-42.4L340.1 165.2zM369.2 384H206.8l14.5-32H354.7l14.5 32zM288 205.3L325.6 288H250.4L288 205.3zM163.3 73.6c5.3-12.1-.2-26.3-12.4-31.6s-26.3 .2-31.6 12.4C109.5 77 104 101.9 104 128s5.5 51 15.3 73.6c5.3 12.1 19.5 17.7 31.6 12.4s17.7-19.5 12.4-31.6C156 165.8 152 147.4 152 128s4-37.8 11.3-54.4zM456.7 54.4c-5.3-12.1-19.5-17.7-31.6-12.4s-17.7 19.5-12.4 31.6C420 90.2 424 108.6 424 128s-4 37.8-11.3 54.4c-5.3 12.1 .2 26.3 12.4 31.6s26.3-.2 31.6-12.4C466.5 179 472 154.1 472 128s-5.5-51-15.3-73.6z\"]\n};\nvar faDownLong = {\n prefix: 'fas',\n iconName: 'down-long',\n icon: [320, 512, [\"long-arrow-alt-down\"], \"f309\", \"M2 334.5c-3.8 8.8-2 19 4.6 26l136 144c4.5 4.8 10.8 7.5 17.4 7.5s12.9-2.7 17.4-7.5l136-144c6.6-7 8.4-17.2 4.6-26s-12.5-14.5-22-14.5l-72 0 0-288c0-17.7-14.3-32-32-32L128 0C110.3 0 96 14.3 96 32l0 288-72 0c-9.6 0-18.2 5.7-22 14.5z\"]\n};\nvar faLongArrowAltDown = faDownLong;\nvar faRankingStar = {\n prefix: 'fas',\n iconName: 'ranking-star',\n icon: [640, 512, [], \"e561\", \"M353.8 54.1L330.2 6.3c-3.9-8.3-16.1-8.6-20.4 0L286.2 54.1l-52.3 7.5c-9.3 1.4-13.3 12.9-6.4 19.8l38 37-9 52.1c-1.4 9.3 8.2 16.5 16.8 12.2l46.9-24.8 46.6 24.4c8.6 4.3 18.3-2.9 16.8-12.2l-9-52.1 38-36.6c6.8-6.8 2.9-18.3-6.4-19.8l-52.3-7.5zM256 256c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H384c17.7 0 32-14.3 32-32V288c0-17.7-14.3-32-32-32H256zM32 320c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H160c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32H32zm416 96v64c0 17.7 14.3 32 32 32H608c17.7 0 32-14.3 32-32V416c0-17.7-14.3-32-32-32H480c-17.7 0-32 14.3-32 32z\"]\n};\nvar faChessKing = {\n prefix: 'fas',\n iconName: 'chess-king',\n icon: [448, 512, [9818], \"f43f\", \"M224 0c17.7 0 32 14.3 32 32V48h16c17.7 0 32 14.3 32 32s-14.3 32-32 32H256v48H408c22.1 0 40 17.9 40 40c0 5.3-1 10.5-3.1 15.4L368 400H80L3.1 215.4C1 210.5 0 205.3 0 200c0-22.1 17.9-40 40-40H192V112H176c-17.7 0-32-14.3-32-32s14.3-32 32-32h16V32c0-17.7 14.3-32 32-32zM38.6 473.4L80 432H368l41.4 41.4c4.2 4.2 6.6 10 6.6 16c0 12.5-10.1 22.6-22.6 22.6H54.6C42.1 512 32 501.9 32 489.4c0-6 2.4-11.8 6.6-16z\"]\n};\nvar faPersonHarassing = {\n prefix: 'fas',\n iconName: 'person-harassing',\n icon: [576, 512, [], \"e549\", \"M192 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM59.4 304.5L88 256.9V480c0 17.7 14.3 32 32 32s32-14.3 32-32V352h16V480c0 17.7 14.3 32 32 32s32-14.3 32-32V235.3l47.4 57.1c11.3 13.6 31.5 15.5 45.1 4.2s15.5-31.5 4.2-45.1l-73.7-88.9c-18.2-22-45.3-34.7-73.9-34.7H145.1c-33.7 0-64.9 17.7-82.3 46.6l-58.3 97c-9.1 15.1-4.2 34.8 10.9 43.9s34.8 4.2 43.9-10.9zM480 240a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM464 344v58.7l-41.4-41.4c-7.3-7.3-17.6-10.6-27.8-9s-18.9 8.1-23.5 17.3l-48 96c-7.9 15.8-1.5 35 14.3 42.9s35 1.5 42.9-14.3L408.8 438l54.7 54.7c12.4 12.4 29.1 19.3 46.6 19.3c36.4 0 65.9-29.5 65.9-65.9V344c0-30.9-25.1-56-56-56s-56 25.1-56 56zM288 48c0 8.8 7.2 16 16 16h56c8.8 0 16-7.2 16-16s-7.2-16-16-16H304c-8.8 0-16 7.2-16 16zm-.8 49.7c-7.9-4-17.5-.7-21.5 7.2s-.7 17.5 7.2 21.5l48 24c7.9 4 17.5 .7 21.5-7.2s.7-17.5-7.2-21.5l-48-24z\"]\n};\nvar faBrazilianRealSign = {\n prefix: 'fas',\n iconName: 'brazilian-real-sign',\n icon: [512, 512, [], \"e46c\", \"M400 0c17.7 0 32 14.3 32 32V50.2c12.5 2.3 24.7 6.4 36.2 12.1l10.1 5.1c15.8 7.9 22.2 27.1 14.3 42.9s-27.1 22.2-42.9 14.3l-10.2-5.1c-9.9-5-20.9-7.5-32-7.5h-1.7c-29.8 0-53.9 24.1-53.9 53.9c0 22 13.4 41.8 33.9 50l52 20.8c44.7 17.9 74.1 61.2 74.1 109.4v3.4c0 51.2-33.6 94.6-80 109.2V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V460.6c-15-3.5-29.4-9.7-42.3-18.3l-23.4-15.6c-14.7-9.8-18.7-29.7-8.9-44.4s29.7-18.7 44.4-8.9L361.2 389c10.8 7.2 23.4 11 36.3 11c27.9 0 50.5-22.6 50.5-50.5v-3.4c0-22-13.4-41.8-33.9-50l-52-20.8C317.3 257.4 288 214.1 288 165.9C288 114 321.5 70 368 54.2V32c0-17.7 14.3-32 32-32zM0 64C0 46.3 14.3 32 32 32h80c79.5 0 144 64.5 144 144c0 58.8-35.2 109.3-85.7 131.7l51.4 128.4c6.6 16.4-1.4 35-17.8 41.6s-35-1.4-41.6-17.8L106.3 320H64V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V288 64zM64 256h48c44.2 0 80-35.8 80-80s-35.8-80-80-80H64V256z\"]\n};\nvar faLandmarkDome = {\n prefix: 'fas',\n iconName: 'landmark-dome',\n icon: [512, 512, [\"landmark-alt\"], \"f752\", \"M248 0h16c13.3 0 24 10.7 24 24V34.7C368.4 48.1 431.9 111.6 445.3 192H448c17.7 0 32 14.3 32 32s-14.3 32-32 32H64c-17.7 0-32-14.3-32-32s14.3-32 32-32h2.7C80.1 111.6 143.6 48.1 224 34.7V24c0-13.3 10.7-24 24-24zM64 288h64V416h40V288h64V416h48V288h64V416h40V288h64V420.3c.6 .3 1.2 .7 1.7 1.1l48 32c11.7 7.8 17 22.4 12.9 35.9S494.1 512 480 512H32c-14.1 0-26.5-9.2-30.6-22.7s1.1-28.1 12.9-35.9l48-32c.6-.4 1.2-.7 1.8-1.1V288z\"]\n};\nvar faLandmarkAlt = faLandmarkDome;\nvar faArrowUp = {\n prefix: 'fas',\n iconName: 'arrow-up',\n icon: [384, 512, [8593], \"f062\", \"M214.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 141.2V448c0 17.7 14.3 32 32 32s32-14.3 32-32V141.2L329.4 246.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160z\"]\n};\nvar faTv = {\n prefix: 'fas',\n iconName: 'tv',\n icon: [640, 512, [63717, \"television\", \"tv-alt\"], \"f26c\", \"M64 64V352H576V64H64zM0 64C0 28.7 28.7 0 64 0H576c35.3 0 64 28.7 64 64V352c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zM128 448H512c17.7 0 32 14.3 32 32s-14.3 32-32 32H128c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faTelevision = faTv;\nvar faTvAlt = faTv;\nvar faShrimp = {\n prefix: 'fas',\n iconName: 'shrimp',\n icon: [512, 512, [129424], \"e448\", \"M64 32C28.7 32 0 60.7 0 96s28.7 64 64 64h1c3.7 88.9 77 160 167 160h56V128H264 88.8 64c-17.7 0-32-14.3-32-32s14.3-32 32-32H464c8.8 0 16-7.2 16-16s-7.2-16-16-16H64zM224 456c0 13.3 10.7 24 24 24h72V407.8l-64.1-22.4c-12.5-4.4-26.2 2.2-30.6 14.7s2.2 26.2 14.7 30.6l4.5 1.6C233 433.9 224 443.9 224 456zm128 23.3c36.4-3.3 69.5-17.6 96.1-39.6l-86.5-34.6c-3 1.8-6.2 3.2-9.6 4.3v69.9zM472.6 415c24.6-30.3 39.4-68.9 39.4-111c0-12.3-1.3-24.3-3.7-35.9L382.8 355.1c.8 3.4 1.2 7 1.2 10.6c0 4.6-.7 9-1.9 13.1L472.6 415zM336 128H320V320h18.3c9.9 0 19.1 3.2 26.6 8.5l133.5-92.4C471.8 172.6 409.1 128 336 128zM168 192a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faListCheck = {\n prefix: 'fas',\n iconName: 'list-check',\n icon: [512, 512, [\"tasks\"], \"f0ae\", \"M152.1 38.2c9.9 8.9 10.7 24 1.8 33.9l-72 80c-4.4 4.9-10.6 7.8-17.2 7.9s-12.9-2.4-17.6-7L7 113C-2.3 103.6-2.3 88.4 7 79s24.6-9.4 33.9 0l22.1 22.1 55.1-61.2c8.9-9.9 24-10.7 33.9-1.8zm0 160c9.9 8.9 10.7 24 1.8 33.9l-72 80c-4.4 4.9-10.6 7.8-17.2 7.9s-12.9-2.4-17.6-7L7 273c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l22.1 22.1 55.1-61.2c8.9-9.9 24-10.7 33.9-1.8zM224 96c0-17.7 14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32zm0 160c0-17.7 14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H256c-17.7 0-32-14.3-32-32zM160 416c0-17.7 14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H192c-17.7 0-32-14.3-32-32zM48 368a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faTasks = faListCheck;\nvar faJugDetergent = {\n prefix: 'fas',\n iconName: 'jug-detergent',\n icon: [384, 512, [], \"e519\", \"M96 24c0-13.3 10.7-24 24-24h80c13.3 0 24 10.7 24 24V48h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H88C74.7 96 64 85.3 64 72s10.7-24 24-24h8V24zM0 256c0-70.7 57.3-128 128-128H256c70.7 0 128 57.3 128 128V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V256zm256 0v96c0 17.7 14.3 32 32 32s32-14.3 32-32V256c0-17.7-14.3-32-32-32s-32 14.3-32 32z\"]\n};\nvar faCircleUser = {\n prefix: 'fas',\n iconName: 'circle-user',\n icon: [512, 512, [62142, \"user-circle\"], \"f2bd\", \"M399 384.2C376.9 345.8 335.4 320 288 320H224c-47.4 0-88.9 25.8-111 64.2c35.2 39.2 86.2 63.8 143 63.8s107.8-24.7 143-63.8zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm256 16a72 72 0 1 0 0-144 72 72 0 1 0 0 144z\"]\n};\nvar faUserCircle = faCircleUser;\nvar faUserShield = {\n prefix: 'fas',\n iconName: 'user-shield',\n icon: [640, 512, [], \"f505\", \"M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c1.8 0 3.5-.2 5.3-.5c-76.3-55.1-99.8-141-103.1-200.2c-16.1-4.8-33.1-7.3-50.7-7.3H178.3zm308.8-78.3l-120 48C358 277.4 352 286.2 352 296c0 63.3 25.9 168.8 134.8 214.2c5.9 2.5 12.6 2.5 18.5 0C614.1 464.8 640 359.3 640 296c0-9.8-6-18.6-15.1-22.3l-120-48c-5.7-2.3-12.1-2.3-17.8 0zM591.4 312c-3.9 50.7-27.2 116.7-95.4 149.7V273.8L591.4 312z\"]\n};\nvar faWind = {\n prefix: 'fas',\n iconName: 'wind',\n icon: [512, 512, [], \"f72e\", \"M288 32c0 17.7 14.3 32 32 32h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H352c53 0 96-43 96-96s-43-96-96-96H320c-17.7 0-32 14.3-32 32zm64 352c0 17.7 14.3 32 32 32h32c53 0 96-43 96-96s-43-96-96-96H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H384c-17.7 0-32 14.3-32 32zM128 512h32c53 0 96-43 96-96s-43-96-96-96H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H160c17.7 0 32 14.3 32 32s-14.3 32-32 32H128c-17.7 0-32 14.3-32 32s14.3 32 32 32z\"]\n};\nvar faCarBurst = {\n prefix: 'fas',\n iconName: 'car-burst',\n icon: [640, 512, [\"car-crash\"], \"f5e1\", \"M176 8c-6.6 0-12.4 4-14.9 10.1l-29.4 74L55.6 68.9c-6.3-1.9-13.1 .2-17.2 5.3s-4.6 12.2-1.4 17.9l39.5 69.1L10.9 206.4c-5.4 3.7-8 10.3-6.5 16.7s6.7 11.2 13.1 12.2l78.7 12.2L90.6 327c-.5 6.5 3.1 12.7 9 15.5s12.9 1.8 17.8-2.6l35.3-32.5 9.5-35.4 10.4-38.6c8-29.9 30.5-52.1 57.9-60.9l41-59.2c11.3-16.3 26.4-28.9 43.5-37.2c-.4-.6-.8-1.2-1.3-1.8c-4.1-5.1-10.9-7.2-17.2-5.3L220.3 92.1l-29.4-74C188.4 12 182.6 8 176 8zM367.7 161.5l135.6 36.3c6.5 1.8 11.3 7.4 11.8 14.2l4.6 56.5-201.5-54 32.2-46.6c3.8-5.6 10.8-8.1 17.3-6.4zm-69.9-30l-47.9 69.3c-21.6 3-40.3 18.6-46.3 41l-10.4 38.6-16.6 61.8-8.3 30.9c-4.6 17.1 5.6 34.6 22.6 39.2l15.5 4.1c17.1 4.6 34.6-5.6 39.2-22.6l8.3-30.9 247.3 66.3-8.3 30.9c-4.6 17.1 5.6 34.6 22.6 39.2l15.5 4.1c17.1 4.6 34.6-5.6 39.2-22.6l8.3-30.9L595 388l10.4-38.6c6-22.4-2.5-45.2-19.6-58.7l-6.8-84c-2.7-33.7-26.4-62-59-70.8L384.2 99.7c-32.7-8.8-67.3 4-86.5 31.8zm-17 131a24 24 0 1 1 -12.4 46.4 24 24 0 1 1 12.4-46.4zm217.9 83.2A24 24 0 1 1 545 358.1a24 24 0 1 1 -46.4-12.4z\"]\n};\nvar faCarCrash = faCarBurst;\nvar faY = {\n prefix: 'fas',\n iconName: 'y',\n icon: [384, 512, [121], \"59\", \"M58 45.4C47.8 31 27.8 27.7 13.4 38S-4.3 68.2 6 82.6L160 298.3V448c0 17.7 14.3 32 32 32s32-14.3 32-32V298.3L378 82.6c10.3-14.4 6.9-34.4-7.4-44.6S336.2 31 326 45.4L192 232.9 58 45.4z\"]\n};\nvar faPersonSnowboarding = {\n prefix: 'fas',\n iconName: 'person-snowboarding',\n icon: [512, 512, [127938, \"snowboarding\"], \"f7ce\", \"M209.7 3.4c15.8-7.9 35-1.5 42.9 14.3l25 50 42.4 8.5c19.5 3.9 37.8 12.3 53.5 24.5l126.1 98.1c14 10.9 16.5 31 5.6 44.9s-31 16.5-44.9 5.6l-72.1-56.1-71.5 31.8 33.1 27.6c23.2 19.3 33.5 50 26.7 79.4l-17.4 75.2c-2.2 9.4-8.2 16.8-16.1 21l86.5 33.1c4.6 1.8 9.4 2.6 14.3 2.6H472c13.3 0 24 10.7 24 24s-10.7 24-24 24H443.8c-10.8 0-21.4-2-31.5-5.8L60.1 371.3c-11.5-4.4-22-11.2-30.8-20L7 329c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l22.4 22.4c4 4 8.7 7.1 14 9.1l22.4 8.6c-.8-1.6-1.5-3.2-2.1-4.9c-5.6-16.8 3.5-34.9 20.2-40.5L192 264.9l0-53.2c0-24.2 13.7-46.4 35.4-57.2l45.2-22.6-7.5-1.5c-19.4-3.9-35.9-16.5-44.7-34.1l-25-50c-7.9-15.8-1.5-35 14.3-42.9zM139 350.1l159 60.9c-2.1-5.6-2.6-11.9-1.1-18.2l17.4-75.2c1.4-5.9-.7-12-5.3-15.9l-52.8-44 0 18.8c0 20.7-13.2 39-32.8 45.5L139 350.1zM432 0a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faSnowboarding = faPersonSnowboarding;\nvar faTruckFast = {\n prefix: 'fas',\n iconName: 'truck-fast',\n icon: [640, 512, [\"shipping-fast\"], \"f48b\", \"M112 0C85.5 0 64 21.5 64 48V96H16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 272c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 48c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 240c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 208c8.8 0 16 7.2 16 16s-7.2 16-16 16H64V416c0 53 43 96 96 96s96-43 96-96H384c0 53 43 96 96 96s96-43 96-96h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V288 256 237.3c0-17-6.7-33.3-18.7-45.3L512 114.7c-12-12-28.3-18.7-45.3-18.7H416V48c0-26.5-21.5-48-48-48H112zM544 237.3V256H416V160h50.7L544 237.3zM160 368a48 48 0 1 1 0 96 48 48 0 1 1 0-96zm272 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0z\"]\n};\nvar faShippingFast = faTruckFast;\nvar faFish = {\n prefix: 'fas',\n iconName: 'fish',\n icon: [576, 512, [128031], \"f578\", \"M180.5 141.5C219.7 108.5 272.6 80 336 80s116.3 28.5 155.5 61.5c39.1 33 66.9 72.4 81 99.8c4.7 9.2 4.7 20.1 0 29.3c-14.1 27.4-41.9 66.8-81 99.8C452.3 403.5 399.4 432 336 432s-116.3-28.5-155.5-61.5c-16.2-13.7-30.5-28.5-42.7-43.1L48.1 379.6c-12.5 7.3-28.4 5.3-38.7-4.9S-3 348.7 4.2 336.1L50 256 4.2 175.9c-7.2-12.6-5-28.4 5.3-38.6s26.1-12.2 38.7-4.9l89.7 52.3c12.2-14.6 26.5-29.4 42.7-43.1zM448 256a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"]\n};\nvar faUserGraduate = {\n prefix: 'fas',\n iconName: 'user-graduate',\n icon: [448, 512, [], \"f501\", \"M219.3 .5c3.1-.6 6.3-.6 9.4 0l200 40C439.9 42.7 448 52.6 448 64s-8.1 21.3-19.3 23.5L352 102.9V160c0 70.7-57.3 128-128 128s-128-57.3-128-128V102.9L48 93.3v65.1l15.7 78.4c.9 4.7-.3 9.6-3.3 13.3s-7.6 5.9-12.4 5.9H16c-4.8 0-9.3-2.1-12.4-5.9s-4.3-8.6-3.3-13.3L16 158.4V86.6C6.5 83.3 0 74.3 0 64C0 52.6 8.1 42.7 19.3 40.5l200-40zM111.9 327.7c10.5-3.4 21.8 .4 29.4 8.5l71 75.5c6.3 6.7 17 6.7 23.3 0l71-75.5c7.6-8.1 18.9-11.9 29.4-8.5C401 348.6 448 409.4 448 481.3c0 17-13.8 30.7-30.7 30.7H30.7C13.8 512 0 498.2 0 481.3c0-71.9 47-132.7 111.9-153.6z\"]\n};\nvar faCircleHalfStroke = {\n prefix: 'fas',\n iconName: 'circle-half-stroke',\n icon: [512, 512, [9680, \"adjust\"], \"f042\", \"M448 256c0-106-86-192-192-192V448c106 0 192-86 192-192zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z\"]\n};\nvar faAdjust = faCircleHalfStroke;\nvar faClapperboard = {\n prefix: 'fas',\n iconName: 'clapperboard',\n icon: [512, 512, [], \"e131\", \"M448 32H361.9l-1 1-127 127h92.1l1-1L453.8 32.3c-1.9-.2-3.8-.3-5.8-.3zm64 128V96c0-15.1-5.3-29.1-14-40l-104 104H512zM294.1 32H201.9l-1 1L73.9 160h92.1l1-1 127-127zM64 32C28.7 32 0 60.7 0 96v64H6.1l1-1 127-127H64zM512 192H0V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V192z\"]\n};\nvar faCircleRadiation = {\n prefix: 'fas',\n iconName: 'circle-radiation',\n icon: [512, 512, [9762, \"radiation-alt\"], \"f7ba\", \"M256 64a192 192 0 1 1 0 384 192 192 0 1 1 0-384zm0 448A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM200 256c0-20.7 11.3-38.8 28-48.5l-36-62.3c-8.8-15.3-28.7-20.8-42-9c-25.6 22.6-43.9 53.3-50.9 88.1C95.7 241.5 110.3 256 128 256l72 0zm28 48.5l-36 62.4c-8.8 15.3-3.6 35.2 13.1 40.8c16 5.4 33.1 8.3 50.9 8.3s34.9-2.9 50.9-8.3c16.7-5.6 21.9-25.5 13.1-40.8l-36-62.4c-8.2 4.8-17.8 7.5-28 7.5s-19.8-2.7-28-7.5zM312 256l72 0c17.7 0 32.3-14.5 28.8-31.8c-7-34.8-25.3-65.5-50.9-88.1c-13.2-11.7-33.1-6.3-42 9l-36 62.3c16.7 9.7 28 27.8 28 48.5zm-56 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faRadiationAlt = faCircleRadiation;\nvar faBaseball = {\n prefix: 'fas',\n iconName: 'baseball',\n icon: [512, 512, [129358, 9918, \"baseball-ball\"], \"f433\", \"M62.7 223.4c-4.8 .4-9.7 .6-14.7 .6c-15.6 0-30.8-2-45.2-5.9C19.2 107.1 107.1 19.2 218.1 2.8C222 17.2 224 32.4 224 48c0 4.9-.2 9.8-.6 14.7c-.7 8.8 5.8 16.5 14.6 17.3s16.5-5.8 17.3-14.6c.5-5.7 .7-11.5 .7-17.3c0-16.5-1.9-32.6-5.6-47.9c1.8 0 3.7-.1 5.6-.1C397.4 0 512 114.6 512 256c0 1.9 0 3.7-.1 5.6c-15.4-3.6-31.4-5.6-47.9-5.6c-5.8 0-11.6 .2-17.3 .7c-8.8 .7-15.4 8.5-14.6 17.3s8.5 15.4 17.3 14.6c4.8-.4 9.7-.6 14.7-.6c15.6 0 30.8 2 45.2 5.9C492.8 404.9 404.9 492.8 293.9 509.2C290 494.8 288 479.6 288 464c0-4.9 .2-9.8 .6-14.7c.7-8.8-5.8-16.5-14.6-17.3s-16.5 5.8-17.3 14.6c-.5 5.7-.7 11.5-.7 17.3c0 16.5 1.9 32.6 5.6 47.9c-1.8 0-3.7 .1-5.6 .1C114.6 512 0 397.4 0 256c0-1.9 0-3.7 .1-5.6C15.4 254.1 31.5 256 48 256c5.8 0 11.6-.2 17.3-.7c8.8-.7 15.4-8.5 14.6-17.3s-8.5-15.4-17.3-14.6zM121.3 208c-8 3.7-11.6 13.2-7.9 21.2s13.2 11.6 21.2 7.9c45.2-20.8 81.7-57.2 102.5-102.5c3.7-8 .2-17.5-7.9-21.2s-17.5-.2-21.2 7.9c-17.6 38.3-48.5 69.2-86.7 86.7zm277.2 74.7c-3.7-8-13.2-11.6-21.2-7.9c-45.2 20.8-81.7 57.2-102.5 102.5c-3.7 8-.2 17.5 7.9 21.2s17.5 .2 21.2-7.9c17.6-38.3 48.5-69.2 86.7-86.7c8-3.7 11.6-13.2 7.9-21.2z\"]\n};\nvar faBaseballBall = faBaseball;\nvar faJetFighterUp = {\n prefix: 'fas',\n iconName: 'jet-fighter-up',\n icon: [512, 512, [], \"e518\", \"M270.7 9.7C268.2 3.8 262.4 0 256 0s-12.2 3.8-14.7 9.7L197.2 112.6c-3.4 8-5.2 16.5-5.2 25.2v77l-144 84V280c0-13.3-10.7-24-24-24s-24 10.7-24 24v56 32 24c0 13.3 10.7 24 24 24s24-10.7 24-24v-8H192v32.7L133.5 468c-3.5 3-5.5 7.4-5.5 12v16c0 8.8 7.2 16 16 16h96V448c0-8.8 7.2-16 16-16s16 7.2 16 16v64h96c8.8 0 16-7.2 16-16V480c0-4.6-2-9-5.5-12L320 416.7V384H464v8c0 13.3 10.7 24 24 24s24-10.7 24-24V368 336 280c0-13.3-10.7-24-24-24s-24 10.7-24 24v18.8l-144-84v-77c0-8.7-1.8-17.2-5.2-25.2L270.7 9.7z\"]\n};\nvar faDiagramProject = {\n prefix: 'fas',\n iconName: 'diagram-project',\n icon: [576, 512, [\"project-diagram\"], \"f542\", \"M0 80C0 53.5 21.5 32 48 32h96c26.5 0 48 21.5 48 48V96H384V80c0-26.5 21.5-48 48-48h96c26.5 0 48 21.5 48 48v96c0 26.5-21.5 48-48 48H432c-26.5 0-48-21.5-48-48V160H192v16c0 1.7-.1 3.4-.3 5L272 288h96c26.5 0 48 21.5 48 48v96c0 26.5-21.5 48-48 48H272c-26.5 0-48-21.5-48-48V336c0-1.7 .1-3.4 .3-5L144 224H48c-26.5 0-48-21.5-48-48V80z\"]\n};\nvar faProjectDiagram = faDiagramProject;\nvar faCopy = {\n prefix: 'fas',\n iconName: 'copy',\n icon: [448, 512, [], \"f0c5\", \"M208 0H332.1c12.7 0 24.9 5.1 33.9 14.1l67.9 67.9c9 9 14.1 21.2 14.1 33.9V336c0 26.5-21.5 48-48 48H208c-26.5 0-48-21.5-48-48V48c0-26.5 21.5-48 48-48zM48 128h80v64H64V448H256V416h64v48c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V176c0-26.5 21.5-48 48-48z\"]\n};\nvar faVolumeXmark = {\n prefix: 'fas',\n iconName: 'volume-xmark',\n icon: [576, 512, [\"volume-mute\", \"volume-times\"], \"f6a9\", \"M301.1 34.8C312.6 40 320 51.4 320 64V448c0 12.6-7.4 24-18.9 29.2s-25 3.1-34.4-5.3L131.8 352H64c-35.3 0-64-28.7-64-64V224c0-35.3 28.7-64 64-64h67.8L266.7 40.1c9.4-8.4 22.9-10.4 34.4-5.3zM425 167l55 55 55-55c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-55 55 55 55c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-55-55-55 55c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l55-55-55-55c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0z\"]\n};\nvar faVolumeMute = faVolumeXmark;\nvar faVolumeTimes = faVolumeXmark;\nvar faHandSparkles = {\n prefix: 'fas',\n iconName: 'hand-sparkles',\n icon: [640, 512, [], \"e05d\", \"M320 0c17.7 0 32 14.3 32 32V240c0 8.8 7.2 16 16 16s16-7.2 16-16V64c0-17.7 14.3-32 32-32s32 14.3 32 32V240c0 8.8 7.2 16 16 16s16-7.2 16-16V128c0-17.7 14.3-32 32-32s32 14.3 32 32V323.1c-11.9 4.8-21.3 14.9-25 27.8l-8.9 31.2L478.9 391C460.6 396.3 448 413 448 432c0 18.9 12.5 35.6 30.6 40.9C448.4 497.4 409.9 512 368 512H348.8c-59.6 0-116.9-22.9-160-64L76.4 341c-16-15.2-16.6-40.6-1.4-56.6s40.6-16.6 56.6-1.4l60.5 57.6c0-1.5-.1-3.1-.1-4.6V64c0-17.7 14.3-32 32-32s32 14.3 32 32V240c0 8.8 7.2 16 16 16s16-7.2 16-16V32c0-17.7 14.3-32 32-32zm-7.3 326.6c-1.1-3.9-4.7-6.6-8.7-6.6s-7.6 2.7-8.7 6.6L288 352l-25.4 7.3c-3.9 1.1-6.6 4.7-6.6 8.7s2.7 7.6 6.6 8.7L288 384l7.3 25.4c1.1 3.9 4.7 6.6 8.7 6.6s7.6-2.7 8.7-6.6L320 384l25.4-7.3c3.9-1.1 6.6-4.7 6.6-8.7s-2.7-7.6-6.6-8.7L320 352l-7.3-25.4zM104 120l48.3 13.8c4.6 1.3 7.7 5.5 7.7 10.2s-3.1 8.9-7.7 10.2L104 168 90.2 216.3c-1.3 4.6-5.5 7.7-10.2 7.7s-8.9-3.1-10.2-7.7L56 168 7.7 154.2C3.1 152.9 0 148.7 0 144s3.1-8.9 7.7-10.2L56 120 69.8 71.7C71.1 67.1 75.3 64 80 64s8.9 3.1 10.2 7.7L104 120zM584 408l48.3 13.8c4.6 1.3 7.7 5.5 7.7 10.2s-3.1 8.9-7.7 10.2L584 456l-13.8 48.3c-1.3 4.6-5.5 7.7-10.2 7.7s-8.9-3.1-10.2-7.7L536 456l-48.3-13.8c-4.6-1.3-7.7-5.5-7.7-10.2s3.1-8.9 7.7-10.2L536 408l13.8-48.3c1.3-4.6 5.5-7.7 10.2-7.7s8.9 3.1 10.2 7.7L584 408z\"]\n};\nvar faGrip = {\n prefix: 'fas',\n iconName: 'grip',\n icon: [448, 512, [\"grip-horizontal\"], \"f58d\", \"M128 136c0-22.1-17.9-40-40-40L40 96C17.9 96 0 113.9 0 136l0 48c0 22.1 17.9 40 40 40H88c22.1 0 40-17.9 40-40l0-48zm0 192c0-22.1-17.9-40-40-40H40c-22.1 0-40 17.9-40 40l0 48c0 22.1 17.9 40 40 40H88c22.1 0 40-17.9 40-40V328zm32-192v48c0 22.1 17.9 40 40 40h48c22.1 0 40-17.9 40-40V136c0-22.1-17.9-40-40-40l-48 0c-22.1 0-40 17.9-40 40zM288 328c0-22.1-17.9-40-40-40H200c-22.1 0-40 17.9-40 40l0 48c0 22.1 17.9 40 40 40h48c22.1 0 40-17.9 40-40V328zm32-192v48c0 22.1 17.9 40 40 40h48c22.1 0 40-17.9 40-40V136c0-22.1-17.9-40-40-40l-48 0c-22.1 0-40 17.9-40 40zM448 328c0-22.1-17.9-40-40-40H360c-22.1 0-40 17.9-40 40v48c0 22.1 17.9 40 40 40h48c22.1 0 40-17.9 40-40V328z\"]\n};\nvar faGripHorizontal = faGrip;\nvar faShareFromSquare = {\n prefix: 'fas',\n iconName: 'share-from-square',\n icon: [576, 512, [61509, \"share-square\"], \"f14d\", \"M352 224H305.5c-45 0-81.5 36.5-81.5 81.5c0 22.3 10.3 34.3 19.2 40.5c6.8 4.7 12.8 12 12.8 20.3c0 9.8-8 17.8-17.8 17.8h-2.5c-2.4 0-4.8-.4-7.1-1.4C210.8 374.8 128 333.4 128 240c0-79.5 64.5-144 144-144h80V34.7C352 15.5 367.5 0 386.7 0c8.6 0 16.8 3.2 23.2 8.9L548.1 133.3c7.6 6.8 11.9 16.5 11.9 26.7s-4.3 19.9-11.9 26.7l-139 125.1c-5.9 5.3-13.5 8.2-21.4 8.2H384c-17.7 0-32-14.3-32-32V224zM80 96c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16H400c8.8 0 16-7.2 16-16V384c0-17.7 14.3-32 32-32s32 14.3 32 32v48c0 44.2-35.8 80-80 80H80c-44.2 0-80-35.8-80-80V112C0 67.8 35.8 32 80 32h48c17.7 0 32 14.3 32 32s-14.3 32-32 32H80z\"]\n};\nvar faShareSquare = faShareFromSquare;\nvar faChildCombatant = {\n prefix: 'fas',\n iconName: 'child-combatant',\n icon: [576, 512, [\"child-rifle\"], \"e4e0\", \"M176 128A64 64 0 1 0 176 0a64 64 0 1 0 0 128zm-8 352V352h16V480c0 17.7 14.3 32 32 32s32-14.3 32-32V300.5L260.9 321c9.4 15 29.2 19.4 44.1 10s19.4-29.2 10-44.1l-51.7-82.1c-17.6-27.9-48.3-44.9-81.2-44.9H169.8c-33 0-63.7 16.9-81.2 44.9L36.9 287c-9.4 15-4.9 34.7 10 44.1s34.7 4.9 44.1-10L104 300.5V480c0 17.7 14.3 32 32 32s32-14.3 32-32zM448 0H432 416c-8.8 0-16 7.2-16 16s7.2 16 16 16V132.3c-9.6 5.5-16 15.9-16 27.7v32c-17.7 0-32 14.3-32 32V368c0 17.7 14.3 32 32 32h16v96c0 8.8 7.2 16 16 16h59.5c10.4 0 18-9.8 15.5-19.9L484 400h44c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16H480V325.3l53.1-17.7c6.5-2.2 10.9-8.3 10.9-15.2V208c0-8.8-7.2-16-16-16H512c-8.8 0-16 7.2-16 16v56l-16 5.3V160c0-11.8-6.4-22.2-16-27.7V16c0-8.8-7.2-16-16-16z\"]\n};\nvar faChildRifle = faChildCombatant;\nvar faGun = {\n prefix: 'fas',\n iconName: 'gun',\n icon: [576, 512, [], \"e19b\", \"M528 56c0-13.3-10.7-24-24-24s-24 10.7-24 24v8H32C14.3 64 0 78.3 0 96V208c0 17.7 14.3 32 32 32H42c20.8 0 36.1 19.6 31 39.8L33 440.2c-2.4 9.6-.2 19.7 5.8 27.5S54.1 480 64 480h96c14.7 0 27.5-10 31-24.2L217 352H321.4c23.7 0 44.8-14.9 52.7-37.2L400.9 240H432c8.5 0 16.6-3.4 22.6-9.4L477.3 208H544c17.7 0 32-14.3 32-32V96c0-17.7-14.3-32-32-32H528V56zM321.4 304H229l16-64h105l-21 58.7c-1.1 3.2-4.2 5.3-7.5 5.3zM80 128H464c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faSquarePhone = {\n prefix: 'fas',\n iconName: 'square-phone',\n icon: [448, 512, [\"phone-square\"], \"f098\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm90.7 96.7c9.7-2.6 19.9 2.3 23.7 11.6l20 48c3.4 8.2 1 17.6-5.8 23.2L168 231.7c16.6 35.2 45.1 63.7 80.3 80.3l20.2-24.7c5.6-6.8 15-9.2 23.2-5.8l48 20c9.3 3.9 14.2 14 11.6 23.7l-12 44C336.9 378 329 384 320 384C196.3 384 96 283.7 96 160c0-9 6-16.9 14.7-19.3l44-12z\"]\n};\nvar faPhoneSquare = faSquarePhone;\nvar faPlus = {\n prefix: 'fas',\n iconName: 'plus',\n icon: [448, 512, [10133, 61543, \"add\"], \"2b\", \"M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32V224H48c-17.7 0-32 14.3-32 32s14.3 32 32 32H192V432c0 17.7 14.3 32 32 32s32-14.3 32-32V288H400c17.7 0 32-14.3 32-32s-14.3-32-32-32H256V80z\"]\n};\nvar faAdd = faPlus;\nvar faExpand = {\n prefix: 'fas',\n iconName: 'expand',\n icon: [448, 512, [], \"f065\", \"M32 32C14.3 32 0 46.3 0 64v96c0 17.7 14.3 32 32 32s32-14.3 32-32V96h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H32zM64 352c0-17.7-14.3-32-32-32s-32 14.3-32 32v96c0 17.7 14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H64V352zM320 32c-17.7 0-32 14.3-32 32s14.3 32 32 32h64v64c0 17.7 14.3 32 32 32s32-14.3 32-32V64c0-17.7-14.3-32-32-32H320zM448 352c0-17.7-14.3-32-32-32s-32 14.3-32 32v64H320c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32V352z\"]\n};\nvar faComputer = {\n prefix: 'fas',\n iconName: 'computer',\n icon: [640, 512, [], \"e4e5\", \"M384 96V320H64L64 96H384zM64 32C28.7 32 0 60.7 0 96V320c0 35.3 28.7 64 64 64H181.3l-10.7 32H96c-17.7 0-32 14.3-32 32s14.3 32 32 32H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H277.3l-10.7-32H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm464 0c-26.5 0-48 21.5-48 48V432c0 26.5 21.5 48 48 48h64c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H528zm16 64h32c8.8 0 16 7.2 16 16s-7.2 16-16 16H544c-8.8 0-16-7.2-16-16s7.2-16 16-16zm-16 80c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16s-7.2 16-16 16H544c-8.8 0-16-7.2-16-16zm32 160a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faXmark = {\n prefix: 'fas',\n iconName: 'xmark',\n icon: [384, 512, [128473, 10005, 10006, 10060, 215, \"close\", \"multiply\", \"remove\", \"times\"], \"f00d\", \"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z\"]\n};\nvar faClose = faXmark;\nvar faMultiply = faXmark;\nvar faRemove = faXmark;\nvar faTimes = faXmark;\nvar faArrowsUpDownLeftRight = {\n prefix: 'fas',\n iconName: 'arrows-up-down-left-right',\n icon: [512, 512, [\"arrows\"], \"f047\", \"M278.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-64 64c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l9.4-9.4V224H109.3l9.4-9.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-64 64c-12.5 12.5-12.5 32.8 0 45.3l64 64c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-9.4-9.4H224V402.7l-9.4-9.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l64 64c12.5 12.5 32.8 12.5 45.3 0l64-64c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-9.4 9.4V288H402.7l-9.4 9.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l64-64c12.5-12.5 12.5-32.8 0-45.3l-64-64c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l9.4 9.4H288V109.3l9.4 9.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-64-64z\"]\n};\nvar faArrows = faArrowsUpDownLeftRight;\nvar faChalkboardUser = {\n prefix: 'fas',\n iconName: 'chalkboard-user',\n icon: [640, 512, [\"chalkboard-teacher\"], \"f51c\", \"M160 64c0-35.3 28.7-64 64-64H576c35.3 0 64 28.7 64 64V352c0 35.3-28.7 64-64 64H336.8c-11.8-25.5-29.9-47.5-52.4-64H384V320c0-17.7 14.3-32 32-32h64c17.7 0 32 14.3 32 32v32h64V64L224 64v49.1C205.2 102.2 183.3 96 160 96V64zm0 64a96 96 0 1 1 0 192 96 96 0 1 1 0-192zM133.3 352h53.3C260.3 352 320 411.7 320 485.3c0 14.7-11.9 26.7-26.7 26.7H26.7C11.9 512 0 500.1 0 485.3C0 411.7 59.7 352 133.3 352z\"]\n};\nvar faChalkboardTeacher = faChalkboardUser;\nvar faPesoSign = {\n prefix: 'fas',\n iconName: 'peso-sign',\n icon: [384, 512, [], \"e222\", \"M64 32C46.3 32 32 46.3 32 64v64c-17.7 0-32 14.3-32 32s14.3 32 32 32l0 32c-17.7 0-32 14.3-32 32s14.3 32 32 32l0 64v96c0 17.7 14.3 32 32 32s32-14.3 32-32V384h80c68.4 0 127.7-39 156.8-96H352c17.7 0 32-14.3 32-32s-14.3-32-32-32h-.7c.5-5.3 .7-10.6 .7-16s-.2-10.7-.7-16h.7c17.7 0 32-14.3 32-32s-14.3-32-32-32H332.8C303.7 71 244.4 32 176 32H64zm190.4 96H96V96h80c30.5 0 58.2 12.2 78.4 32zM96 192H286.9c.7 5.2 1.1 10.6 1.1 16s-.4 10.8-1.1 16H96V192zm158.4 96c-20.2 19.8-47.9 32-78.4 32H96V288H254.4z\"]\n};\nvar faBuildingShield = {\n prefix: 'fas',\n iconName: 'building-shield',\n icon: [576, 512, [], \"e4d8\", \"M0 48C0 21.5 21.5 0 48 0H336c26.5 0 48 21.5 48 48V207l-42.4 17H304 272c-8.8 0-16 7.2-16 16v32 24.2V304c0 .9 .1 1.7 .2 2.6c2.3 58.1 24.1 144.8 98.7 201.5c-5.8 2.5-12.2 3.9-18.9 3.9H240V432c0-26.5-21.5-48-48-48s-48 21.5-48 48v80H48c-26.5 0-48-21.5-48-48V48zM80 224c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H80zm80 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H176c-8.8 0-16 7.2-16 16zM64 112v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16zM176 96c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H176zm80 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H272c-8.8 0-16 7.2-16 16zM423.1 225.7c5.7-2.3 12.1-2.3 17.8 0l120 48C570 277.4 576 286.2 576 296c0 63.3-25.9 168.8-134.8 214.2c-5.9 2.5-12.6 2.5-18.5 0C313.9 464.8 288 359.3 288 296c0-9.8 6-18.6 15.1-22.3l120-48zM527.4 312L432 273.8V461.7c68.2-33 91.5-99 95.4-149.7z\"]\n};\nvar faBaby = {\n prefix: 'fas',\n iconName: 'baby',\n icon: [448, 512, [], \"f77c\", \"M152 88a72 72 0 1 1 144 0A72 72 0 1 1 152 88zM39.7 144.5c13-17.9 38-21.8 55.9-8.8L131.8 162c26.8 19.5 59.1 30 92.2 30s65.4-10.5 92.2-30l36.2-26.4c17.9-13 42.9-9 55.9 8.8s9 42.9-8.8 55.9l-36.2 26.4c-13.6 9.9-28.1 18.2-43.3 25V288H128V251.7c-15.2-6.7-29.7-15.1-43.3-25L48.5 200.3c-17.9-13-21.8-38-8.8-55.9zm89.8 184.8l60.6 53-26 37.2 24.3 24.3c15.6 15.6 15.6 40.9 0 56.6s-40.9 15.6-56.6 0l-48-48C70 438.6 68.1 417 79.2 401.1l50.2-71.8zm128.5 53l60.6-53 50.2 71.8c11.1 15.9 9.2 37.5-4.5 51.2l-48 48c-15.6 15.6-40.9 15.6-56.6 0s-15.6-40.9 0-56.6L284 419.4l-26-37.2z\"]\n};\nvar faUsersLine = {\n prefix: 'fas',\n iconName: 'users-line',\n icon: [640, 512, [], \"e592\", \"M211.2 96a64 64 0 1 0 -128 0 64 64 0 1 0 128 0zM32 256c0 17.7 14.3 32 32 32h85.6c10.1-39.4 38.6-71.5 75.8-86.6c-9.7-6-21.2-9.4-33.4-9.4H96c-35.3 0-64 28.7-64 64zm461.6 32H576c17.7 0 32-14.3 32-32c0-35.3-28.7-64-64-64H448c-11.7 0-22.7 3.1-32.1 8.6c38.1 14.8 67.4 47.3 77.7 87.4zM391.2 226.4c-6.9-1.6-14.2-2.4-21.6-2.4h-96c-8.5 0-16.7 1.1-24.5 3.1c-30.8 8.1-55.6 31.1-66.1 60.9c-3.5 10-5.5 20.8-5.5 32c0 17.7 14.3 32 32 32h224c17.7 0 32-14.3 32-32c0-11.2-1.9-22-5.5-32c-10.8-30.7-36.8-54.2-68.9-61.6zM563.2 96a64 64 0 1 0 -128 0 64 64 0 1 0 128 0zM321.6 192a80 80 0 1 0 0-160 80 80 0 1 0 0 160zM32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H32z\"]\n};\nvar faQuoteLeft = {\n prefix: 'fas',\n iconName: 'quote-left',\n icon: [448, 512, [8220, \"quote-left-alt\"], \"f10d\", \"M0 216C0 149.7 53.7 96 120 96h8c17.7 0 32 14.3 32 32s-14.3 32-32 32h-8c-30.9 0-56 25.1-56 56v8h64c35.3 0 64 28.7 64 64v64c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V320 288 216zm256 0c0-66.3 53.7-120 120-120h8c17.7 0 32 14.3 32 32s-14.3 32-32 32h-8c-30.9 0-56 25.1-56 56v8h64c35.3 0 64 28.7 64 64v64c0 35.3-28.7 64-64 64H320c-35.3 0-64-28.7-64-64V320 288 216z\"]\n};\nvar faQuoteLeftAlt = faQuoteLeft;\nvar faTractor = {\n prefix: 'fas',\n iconName: 'tractor',\n icon: [640, 512, [128668], \"f722\", \"M96 64c0-35.3 28.7-64 64-64H266.3c26.2 0 49.7 15.9 59.4 40.2L373.7 160H480V126.2c0-24.8 5.8-49.3 16.9-71.6l2.5-5c7.9-15.8 27.1-22.2 42.9-14.3s22.2 27.1 14.3 42.9l-2.5 5c-6.7 13.3-10.1 28-10.1 42.9V160h56c22.1 0 40 17.9 40 40v45.4c0 16.5-8.5 31.9-22.6 40.7l-43.3 27.1c-14.2-5.9-29.8-9.2-46.1-9.2c-39.3 0-74.1 18.9-96 48H352c0 17.7-14.3 32-32 32h-8.2c-1.7 4.8-3.7 9.5-5.8 14.1l5.8 5.8c12.5 12.5 12.5 32.8 0 45.3l-22.6 22.6c-12.5 12.5-32.8 12.5-45.3 0l-5.8-5.8c-4.6 2.2-9.3 4.1-14.1 5.8V480c0 17.7-14.3 32-32 32H160c-17.7 0-32-14.3-32-32v-8.2c-4.8-1.7-9.5-3.7-14.1-5.8l-5.8 5.8c-12.5 12.5-32.8 12.5-45.3 0L40.2 449.1c-12.5-12.5-12.5-32.8 0-45.3l5.8-5.8c-2.2-4.6-4.1-9.3-5.8-14.1H32c-17.7 0-32-14.3-32-32V320c0-17.7 14.3-32 32-32h8.2c1.7-4.8 3.7-9.5 5.8-14.1l-5.8-5.8c-12.5-12.5-12.5-32.8 0-45.3l22.6-22.6c9-9 21.9-11.5 33.1-7.6V192 160 64zm170.3 0H160v96h32H304.7L266.3 64zM176 256a80 80 0 1 0 0 160 80 80 0 1 0 0-160zM528 448a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm0 64c-48.6 0-88-39.4-88-88c0-29.8 14.8-56.1 37.4-72c14.3-10.1 31.8-16 50.6-16c2.7 0 5.3 .1 7.9 .3c44.9 4 80.1 41.7 80.1 87.7c0 48.6-39.4 88-88 88z\"]\n};\nvar faTrashArrowUp = {\n prefix: 'fas',\n iconName: 'trash-arrow-up',\n icon: [448, 512, [\"trash-restore\"], \"f829\", \"M163.8 0H284.2c12.1 0 23.2 6.8 28.6 17.7L320 32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32h96l7.2-14.3C140.6 6.8 151.7 0 163.8 0zM32 128H416L394.8 467c-1.6 25.3-22.6 45-47.9 45H101.1c-25.3 0-46.3-19.7-47.9-45L32 128zm192 64c-6.4 0-12.5 2.5-17 7l-80 80c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l39-39V408c0 13.3 10.7 24 24 24s24-10.7 24-24V273.9l39 39c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-80-80c-4.5-4.5-10.6-7-17-7z\"]\n};\nvar faTrashRestore = faTrashArrowUp;\nvar faArrowDownUpLock = {\n prefix: 'fas',\n iconName: 'arrow-down-up-lock',\n icon: [640, 512, [], \"e4b0\", \"M150.6 502.6l96-96c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 402.7V288H416V272c0-17.2 3.9-33.5 10.8-48H352V109.3l41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96c-6-6-14.1-9.4-22.6-9.4s-16.6 3.4-22.6 9.4l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L288 109.3V224l-128 0H96l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32H96V402.7L54.6 361.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0zM160 192V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V192h64zM288 320V448c0 17.7 14.3 32 32 32s32-14.3 32-32V320H288zm240-80c17.7 0 32 14.3 32 32v48H496V272c0-17.7 14.3-32 32-32zm-80 32v48c-17.7 0-32 14.3-32 32V480c0 17.7 14.3 32 32 32H608c17.7 0 32-14.3 32-32V352c0-17.7-14.3-32-32-32V272c0-44.2-35.8-80-80-80s-80 35.8-80 80z\"]\n};\nvar faLinesLeaning = {\n prefix: 'fas',\n iconName: 'lines-leaning',\n icon: [384, 512, [], \"e51e\", \"M190.4 74.1c5.6-16.8-3.5-34.9-20.2-40.5s-34.9 3.5-40.5 20.2l-128 384c-5.6 16.8 3.5 34.9 20.2 40.5s34.9-3.5 40.5-20.2l128-384zm70.9-41.7c-17.4-2.9-33.9 8.9-36.8 26.3l-64 384c-2.9 17.4 8.9 33.9 26.3 36.8s33.9-8.9 36.8-26.3l64-384c2.9-17.4-8.9-33.9-26.3-36.8zM352 32c-17.7 0-32 14.3-32 32V448c0 17.7 14.3 32 32 32s32-14.3 32-32V64c0-17.7-14.3-32-32-32z\"]\n};\nvar faRulerCombined = {\n prefix: 'fas',\n iconName: 'ruler-combined',\n icon: [512, 512, [], \"f546\", \"M.2 468.9C2.7 493.1 23.1 512 48 512l96 0 320 0c26.5 0 48-21.5 48-48l0-96c0-26.5-21.5-48-48-48l-48 0 0 80c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-80-64 0 0 80c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-80-64 0 0 80c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-80-80 0c-8.8 0-16-7.2-16-16s7.2-16 16-16l80 0 0-64-80 0c-8.8 0-16-7.2-16-16s7.2-16 16-16l80 0 0-64-80 0c-8.8 0-16-7.2-16-16s7.2-16 16-16l80 0 0-48c0-26.5-21.5-48-48-48L48 0C21.5 0 0 21.5 0 48L0 368l0 96c0 1.7 .1 3.3 .2 4.9z\"]\n};\nvar faCopyright = {\n prefix: 'fas',\n iconName: 'copyright',\n icon: [512, 512, [169], \"f1f9\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM199.4 312.6c31.2 31.2 81.9 31.2 113.1 0c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9c-50 50-131 50-181 0s-50-131 0-181s131-50 181 0c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0c-31.2-31.2-81.9-31.2-113.1 0s-31.2 81.9 0 113.1z\"]\n};\nvar faEquals = {\n prefix: 'fas',\n iconName: 'equals',\n icon: [448, 512, [62764], \"3d\", \"M48 128c-17.7 0-32 14.3-32 32s14.3 32 32 32H400c17.7 0 32-14.3 32-32s-14.3-32-32-32H48zm0 192c-17.7 0-32 14.3-32 32s14.3 32 32 32H400c17.7 0 32-14.3 32-32s-14.3-32-32-32H48z\"]\n};\nvar faBlender = {\n prefix: 'fas',\n iconName: 'blender',\n icon: [512, 512, [], \"f517\", \"M0 64C0 28.7 28.7 0 64 0h64 32H470.1c21.1 0 36.4 20.1 30.9 40.4L494.5 64H336c-8.8 0-16 7.2-16 16s7.2 16 16 16H485.8l-17.5 64H336c-8.8 0-16 7.2-16 16s7.2 16 16 16H459.6l-17.5 64H336c-8.8 0-16 7.2-16 16s7.2 16 16 16h97.5L416 352H160l-8.7-96H64c-35.3 0-64-28.7-64-64V64zM145.5 192L133.8 64H64V192h81.5zM144 384H432c26.5 0 48 21.5 48 48v32c0 26.5-21.5 48-48 48H144c-26.5 0-48-21.5-48-48V432c0-26.5 21.5-48 48-48zm144 96a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faTeeth = {\n prefix: 'fas',\n iconName: 'teeth',\n icon: [576, 512, [], \"f62e\", \"M0 128C0 75 43 32 96 32H480c53 0 96 43 96 96V384c0 53-43 96-96 96H96c-53 0-96-43-96-96V128zm176 48v56c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V176c0-26.5-21.5-48-48-48s-48 21.5-48 48zm176-48c-26.5 0-48 21.5-48 48v56c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V176c0-26.5-21.5-48-48-48zM48 208v24c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V208c0-26.5-21.5-48-48-48s-48 21.5-48 48zM96 384c26.5 0 48-21.5 48-48V312c0-13.3-10.7-24-24-24H72c-13.3 0-24 10.7-24 24v24c0 26.5 21.5 48 48 48zm80-48c0 26.5 21.5 48 48 48s48-21.5 48-48V312c0-13.3-10.7-24-24-24H200c-13.3 0-24 10.7-24 24v24zm176 48c26.5 0 48-21.5 48-48V312c0-13.3-10.7-24-24-24H328c-13.3 0-24 10.7-24 24v24c0 26.5 21.5 48 48 48zm80-176v24c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V208c0-26.5-21.5-48-48-48s-48 21.5-48 48zm48 176c26.5 0 48-21.5 48-48V312c0-13.3-10.7-24-24-24H456c-13.3 0-24 10.7-24 24v24c0 26.5 21.5 48 48 48z\"]\n};\nvar faShekelSign = {\n prefix: 'fas',\n iconName: 'shekel-sign',\n icon: [448, 512, [8362, \"ils\", \"shekel\", \"sheqel\", \"sheqel-sign\"], \"f20b\", \"M32 32C14.3 32 0 46.3 0 64V448c0 17.7 14.3 32 32 32s32-14.3 32-32V96H192c35.3 0 64 28.7 64 64V320c0 17.7 14.3 32 32 32s32-14.3 32-32V160c0-70.7-57.3-128-128-128H32zM320 480c70.7 0 128-57.3 128-128V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V352c0 35.3-28.7 64-64 64H192V192c0-17.7-14.3-32-32-32s-32 14.3-32 32V448c0 17.7 14.3 32 32 32H320z\"]\n};\nvar faIls = faShekelSign;\nvar faShekel = faShekelSign;\nvar faSheqel = faShekelSign;\nvar faSheqelSign = faShekelSign;\nvar faMap = {\n prefix: 'fas',\n iconName: 'map',\n icon: [576, 512, [128506, 62072], \"f279\", \"M384 476.1L192 421.2V35.9L384 90.8V476.1zm32-1.2V88.4L543.1 37.5c15.8-6.3 32.9 5.3 32.9 22.3V394.6c0 9.8-6 18.6-15.1 22.3L416 474.8zM15.1 95.1L160 37.2V423.6L32.9 474.5C17.1 480.8 0 469.2 0 452.2V117.4c0-9.8 6-18.6 15.1-22.3z\"]\n};\nvar faRocket = {\n prefix: 'fas',\n iconName: 'rocket',\n icon: [512, 512, [], \"f135\", \"M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"]\n};\nvar faPhotoFilm = {\n prefix: 'fas',\n iconName: 'photo-film',\n icon: [640, 512, [\"photo-video\"], \"f87c\", \"M256 0H576c35.3 0 64 28.7 64 64V288c0 35.3-28.7 64-64 64H256c-35.3 0-64-28.7-64-64V64c0-35.3 28.7-64 64-64zM476 106.7C471.5 100 464 96 456 96s-15.5 4-20 10.7l-56 84L362.7 169c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6h80 48H552c8.9 0 17-4.9 21.2-12.7s3.7-17.3-1.2-24.6l-96-144zM336 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM64 128h96V384v32c0 17.7 14.3 32 32 32H320c17.7 0 32-14.3 32-32V384H512v64c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V192c0-35.3 28.7-64 64-64zm8 64c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16H88c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16H72zm0 104c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16H88c8.8 0 16-7.2 16-16V312c0-8.8-7.2-16-16-16H72zm0 104c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16H88c8.8 0 16-7.2 16-16V416c0-8.8-7.2-16-16-16H72zm336 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16V416c0-8.8-7.2-16-16-16H424c-8.8 0-16 7.2-16 16z\"]\n};\nvar faPhotoVideo = faPhotoFilm;\nvar faFolderMinus = {\n prefix: 'fas',\n iconName: 'folder-minus',\n icon: [512, 512, [], \"f65d\", \"M448 480H64c-35.3 0-64-28.7-64-64V96C0 60.7 28.7 32 64 32H192c20.1 0 39.1 9.5 51.2 25.6l19.2 25.6c6 8.1 15.5 12.8 25.6 12.8H448c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64zM184 272c-13.3 0-24 10.7-24 24s10.7 24 24 24H328c13.3 0 24-10.7 24-24s-10.7-24-24-24H184z\"]\n};\nvar faStore = {\n prefix: 'fas',\n iconName: 'store',\n icon: [576, 512, [], \"f54e\", \"M547.6 103.8L490.3 13.1C485.2 5 476.1 0 466.4 0H109.6C99.9 0 90.8 5 85.7 13.1L28.3 103.8c-29.6 46.8-3.4 111.9 51.9 119.4c4 .5 8.1 .8 12.1 .8c26.1 0 49.3-11.4 65.2-29c15.9 17.6 39.1 29 65.2 29c26.1 0 49.3-11.4 65.2-29c15.9 17.6 39.1 29 65.2 29c26.2 0 49.3-11.4 65.2-29c16 17.6 39.1 29 65.2 29c4.1 0 8.1-.3 12.1-.8c55.5-7.4 81.8-72.5 52.1-119.4zM499.7 254.9l-.1 0c-5.3 .7-10.7 1.1-16.2 1.1c-12.4 0-24.3-1.9-35.4-5.3V384H128V250.6c-11.2 3.5-23.2 5.4-35.6 5.4c-5.5 0-11-.4-16.3-1.1l-.1 0c-4.1-.6-8.1-1.3-12-2.3V384v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V384 252.6c-4 1-8 1.8-12.3 2.3z\"]\n};\nvar faArrowTrendUp = {\n prefix: 'fas',\n iconName: 'arrow-trend-up',\n icon: [576, 512, [], \"e098\", \"M384 160c-17.7 0-32-14.3-32-32s14.3-32 32-32H544c17.7 0 32 14.3 32 32V288c0 17.7-14.3 32-32 32s-32-14.3-32-32V205.3L342.6 374.6c-12.5 12.5-32.8 12.5-45.3 0L192 269.3 54.6 406.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l160-160c12.5-12.5 32.8-12.5 45.3 0L320 306.7 466.7 160H384z\"]\n};\nvar faPlugCircleMinus = {\n prefix: 'fas',\n iconName: 'plug-circle-minus',\n icon: [576, 512, [], \"e55e\", \"M96 0C78.3 0 64 14.3 64 32v96h64V32c0-17.7-14.3-32-32-32zM288 0c-17.7 0-32 14.3-32 32v96h64V32c0-17.7-14.3-32-32-32zM32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32v32c0 77.4 55 142 128 156.8V480c0 17.7 14.3 32 32 32s32-14.3 32-32V412.8c12.3-2.5 24.1-6.4 35.1-11.5c-2.1-10.8-3.1-21.9-3.1-33.3c0-80.3 53.8-148 127.3-169.2c.5-2.2 .7-4.5 .7-6.8c0-17.7-14.3-32-32-32H32zM576 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-64 0c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s7.2-16 16-16H496c8.8 0 16 7.2 16 16z\"]\n};\nvar faSignHanging = {\n prefix: 'fas',\n iconName: 'sign-hanging',\n icon: [512, 512, [\"sign\"], \"f4d9\", \"M96 0c17.7 0 32 14.3 32 32V64l352 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-352 0V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V128H32C14.3 128 0 113.7 0 96S14.3 64 32 64H64V32C64 14.3 78.3 0 96 0zm96 160H448c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32V192c0-17.7 14.3-32 32-32z\"]\n};\nvar faSign = faSignHanging;\nvar faBezierCurve = {\n prefix: 'fas',\n iconName: 'bezier-curve',\n icon: [640, 512, [], \"f55b\", \"M296 136V88h48v48H296zM288 32c-26.5 0-48 21.5-48 48v4H121.6C111.2 62.7 89.3 48 64 48C28.7 48 0 76.7 0 112s28.7 64 64 64c25.3 0 47.2-14.7 57.6-36h66.9c-58.9 39.6-98.9 105-104 180H80c-26.5 0-48 21.5-48 48v64c0 26.5 21.5 48 48 48h64c26.5 0 48-21.5 48-48V368c0-26.5-21.5-48-48-48h-3.3c5.9-67 48.5-123.4 107.5-149.1c8.6 12.7 23.2 21.1 39.8 21.1h64c16.6 0 31.1-8.4 39.8-21.1c59 25.7 101.6 82.1 107.5 149.1H496c-26.5 0-48 21.5-48 48v64c0 26.5 21.5 48 48 48h64c26.5 0 48-21.5 48-48V368c0-26.5-21.5-48-48-48h-4.5c-5-75-45.1-140.4-104-180h66.9c10.4 21.3 32.3 36 57.6 36c35.3 0 64-28.7 64-64s-28.7-64-64-64c-25.3 0-47.2 14.7-57.6 36H400V80c0-26.5-21.5-48-48-48H288zM88 376h48v48H88V376zm416 48V376h48v48H504z\"]\n};\nvar faBellSlash = {\n prefix: 'fas',\n iconName: 'bell-slash',\n icon: [640, 512, [128277, 61943], \"f1f6\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-90.2-70.7c.2-.4 .4-.9 .6-1.3c5.2-11.5 3.1-25-5.3-34.4l-7.4-8.3C497.3 319.2 480 273.9 480 226.8V208c0-77.4-55-142-128-156.8V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V51.2c-42.6 8.6-79 34.2-102 69.3L38.8 5.1zM406.2 416L160 222.1v4.8c0 47-17.3 92.4-48.5 127.6l-7.4 8.3c-8.4 9.4-10.4 22.9-5.3 34.4S115.4 416 128 416H406.2zm-40.9 77.3c12-12 18.7-28.3 18.7-45.3H320 256c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7z\"]\n};\nvar faTablet = {\n prefix: 'fas',\n iconName: 'tablet',\n icon: [448, 512, [\"tablet-android\"], \"f3fb\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64zM176 432h96c8.8 0 16 7.2 16 16s-7.2 16-16 16H176c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faTabletAndroid = faTablet;\nvar faSchoolFlag = {\n prefix: 'fas',\n iconName: 'school-flag',\n icon: [576, 512, [], \"e56e\", \"M288 0H400c8.8 0 16 7.2 16 16V80c0 8.8-7.2 16-16 16H320.7l89.6 64H512c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H336V400c0-26.5-21.5-48-48-48s-48 21.5-48 48V512H64c-35.3 0-64-28.7-64-64V224c0-35.3 28.7-64 64-64H165.7L256 95.5V32c0-17.7 14.3-32 32-32zm48 240a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM80 224c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H80zm368 16v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16H464c-8.8 0-16 7.2-16 16zM80 352c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16H80zm384 0c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16H464z\"]\n};\nvar faFill = {\n prefix: 'fas',\n iconName: 'fill',\n icon: [512, 512, [], \"f575\", \"M86.6 9.4C74.1-3.1 53.9-3.1 41.4 9.4s-12.5 32.8 0 45.3L122.7 136 30.6 228.1c-37.5 37.5-37.5 98.3 0 135.8L148.1 481.4c37.5 37.5 98.3 37.5 135.8 0L474.3 290.9c28.1-28.1 28.1-73.7 0-101.8L322.9 37.7c-28.1-28.1-73.7-28.1-101.8 0L168 90.7 86.6 9.4zM168 181.3l49.4 49.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L213.3 136l53.1-53.1c3.1-3.1 8.2-3.1 11.3 0L429.1 234.3c3.1 3.1 3.1 8.2 0 11.3L386.7 288H67.5c1.4-5.4 4.2-10.4 8.4-14.6L168 181.3z\"]\n};\nvar faAngleUp = {\n prefix: 'fas',\n iconName: 'angle-up',\n icon: [448, 512, [8963], \"f106\", \"M201.4 137.4c12.5-12.5 32.8-12.5 45.3 0l160 160c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 205.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l160-160z\"]\n};\nvar faDrumstickBite = {\n prefix: 'fas',\n iconName: 'drumstick-bite',\n icon: [512, 512, [], \"f6d7\", \"M160 265.2c0 8.5-3.4 16.6-9.4 22.6l-26.8 26.8c-12.3 12.3-32.5 11.4-49.4 7.2C69.8 320.6 65 320 60 320c-33.1 0-60 26.9-60 60s26.9 60 60 60c6.3 0 12 5.7 12 12c0 33.1 26.9 60 60 60s60-26.9 60-60c0-5-.6-9.8-1.8-14.5c-4.2-16.9-5.2-37.1 7.2-49.4l26.8-26.8c6-6 14.1-9.4 22.6-9.4H336c6.3 0 12.4-.3 18.5-1c11.9-1.2 16.4-15.5 10.8-26c-8.5-15.8-13.3-33.8-13.3-53c0-61.9 50.1-112 112-112c8 0 15.7 .8 23.2 2.4c11.7 2.5 24.1-5.9 22-17.6C494.5 62.5 422.5 0 336 0C238.8 0 160 78.8 160 176v89.2z\"]\n};\nvar faHollyBerry = {\n prefix: 'fas',\n iconName: 'holly-berry',\n icon: [512, 512, [], \"f7aa\", \"M256 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-80 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM276.8 383.8c1 .1 2.1 .2 3.2 .2c39.8 0 72 32.2 72 72v22.7c0 16.4 16 27.9 31.6 22.8l12.8-4.3c18-6 37.3-6.5 55.6-1.5l19.4 5.3c17.9 4.9 34.4-11.6 29.5-29.5L495.6 452c-5-18.3-4.4-37.6 1.5-55.6l4.3-12.8c5.2-15.5-6.4-31.6-22.8-31.6c-34.6 0-62.7-28.1-62.7-62.7v-32c0-16.4-16-27.9-31.6-22.8l-12.8 4.3c-18 6-37.3 6.5-55.6 1.5l-29.6-8.1c-2.9-.8-5.9-1-8.7-.7c4.2 9.7 5.8 20.8 3.7 32.3L275 298.7c-1.5 8.4-1.4 17 .5 25.3l5.3 23.9c2.8 12.7 1.1 25.2-4 35.9zM127.6 234.5c-15.5-5.2-31.6 6.4-31.6 22.8v32C96 323.9 67.9 352 33.3 352c-16.4 0-27.9 16-22.8 31.6l4.3 12.8c6 18 6.5 37.3 1.5 55.6l-5.3 19.4C6.2 489.4 22.6 505.8 40.5 501L60 495.6c18.3-5 37.6-4.5 55.6 1.5l12.8 4.3c15.5 5.2 31.6-6.4 31.6-22.8v-32c0-34.6 28.1-62.7 62.7-62.7c16.4 0 27.9-16 22.8-31.6l-4.3-12.8c-6-18-6.5-37.3-1.5-55.6l5.3-19.4c4.9-17.9-11.6-34.4-29.5-29.5L196 240.4c-18.3 5-37.6 4.4-55.6-1.5l-12.8-4.3zM384 144a48 48 0 1 0 -96 0 48 48 0 1 0 96 0z\"]\n};\nvar faChevronLeft = {\n prefix: 'fas',\n iconName: 'chevron-left',\n icon: [320, 512, [9001], \"f053\", \"M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z\"]\n};\nvar faBacteria = {\n prefix: 'fas',\n iconName: 'bacteria',\n icon: [640, 512, [], \"e059\", \"M304.9 .7c-9.6-2.7-19.5 2.8-22.3 12.4l-4.3 15.2c-8.3-.6-16.8 0-25.2 1.9c-7.3 1.7-14.3 3.5-21.1 5.5l-5.5-12.7c-3.9-9.1-14.5-13.4-23.6-9.5s-13.4 14.5-9.5 23.6l4.4 10.4c-16.6 6.7-31.7 14.4-45.4 22.8L147 62c-5.5-8.3-16.7-10.5-25-5s-10.5 16.7-5 25l6 9c-13.7 11-25.5 22.8-35.8 34.9l-10-8c-7.8-6.2-19.1-5-25.3 2.8s-5 19.1 2.8 25.3L65.9 155c-1.8 2.8-3.5 5.7-5.1 8.5c-6.6 11.4-11.8 22.6-16 33l-8-3.2c-9.2-3.7-19.7 .8-23.4 10s.8 19.7 10 23.4l10.4 4.2c-.2 .8-.4 1.5-.5 2.3c-2.2 9.3-3.4 17.3-4.1 23.4c-.4 3.1-.6 5.7-.8 7.8c-.1 1.1-.1 2-.2 2.8l-.1 1.1 0 .5 0 .2 0 .1c0 0 0 .1 29.1 1l-.1 0L28 269.3c-.1 3.1 0 6.1 .2 9.1l-15.2 4.3C3.5 285.4-2 295.4 .7 304.9s12.7 15.1 22.3 12.4l15.6-4.5c7.6 13.6 18.9 25 32.6 32.6L66.7 361c-2.7 9.6 2.8 19.5 12.4 22.3s19.5-2.8 22.3-12.4l4.3-15.2c1.2 .1 2.4 .2 3.6 .2c15.6 .5 30.3-3.3 43-10.2l9 9c7 7 18.4 7 25.5 0s7-18.4 0-25.5l-7.2-7.2c9.3-12.6 15.2-27.8 16.3-44.5l7.1 3c9.1 3.9 19.7-.3 23.6-9.5s-.3-19.7-9.5-23.6l-8.6-3.7c6.4-9.9 17.3-22.4 36.9-33.3l1.3 4.4c2.7 9.6 12.7 15.1 22.3 12.4s15.1-12.7 12.4-22.3l-2.3-8.1c3.8-1.1 7.7-2.1 11.9-3.1c11.6-2.7 22.1-7.7 31.1-14.4l7.2 7.2c7 7 18.4 7 25.5 0s7-18.4 0-25.5l-9-9c7.6-13.9 11.3-30.1 10.1-46.6l15.2-4.3c9.6-2.7 15.1-12.7 12.4-22.3S370.6 64 361 66.7l-15.6 4.5c-7.7-13.9-19.1-25.1-32.6-32.6l4.5-15.6c2.7-9.6-2.8-19.5-12.4-22.3zM112 272l-48-1.5 0 0c11.7 .4 27.3 .9 48 1.6zm16-80a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm64-48a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zM322.7 489c-2.7 9.6 2.8 19.5 12.4 22.3s19.5-2.8 22.2-12.4l4.3-15.2c8.3 .6 16.8 0 25.2-1.9c7.3-1.7 14.3-3.5 21.1-5.5l5.5 12.7c3.9 9.1 14.5 13.4 23.6 9.5s13.4-14.5 9.5-23.6l-4.4-10.4c16.6-6.7 31.7-14.4 45.4-22.8L493 450c5.5 8.3 16.7 10.5 25 5s10.5-16.7 5-25l-6-9c13.7-11 25.5-22.8 35.8-34.9l10 8c7.8 6.2 19.1 5 25.3-2.8s5-19.1-2.8-25.3L574.1 357c1.8-2.8 3.5-5.7 5.1-8.5c6.6-11.4 11.8-22.6 16-33l8 3.2c9.2 3.7 19.7-.8 23.4-10s-.8-19.7-10-23.4l-10.4-4.2c.2-.8 .4-1.5 .5-2.3c2.2-9.3 3.4-17.3 4.1-23.4c.4-3.1 .6-5.7 .8-7.8c.1-1.1 .1-2 .2-2.8l.1-1.1 0-.5 0-.2 0-.1c0 0 0-.1-29.1-1l.1 0 29.1 .9c.1-3.1 0-6.1-.2-9.1l15.2-4.3c9.6-2.7 15.1-12.7 12.4-22.3s-12.7-15.1-22.3-12.4l-15.6 4.5c-7.6-13.6-18.9-25-32.6-32.6l4.5-15.6c2.7-9.6-2.8-19.5-12.4-22.3s-19.5 2.8-22.3 12.4l-4.3 15.2c-1.2-.1-2.4-.2-3.6-.2c-15.6-.5-30.3 3.3-43 10.2l-9-9c-7-7-18.4-7-25.5 0s-7 18.4 0 25.5l7.2 7.2c-9.3 12.6-15.2 27.8-16.3 44.5l-7.1-3c-9.1-3.9-19.7 .3-23.6 9.5s.3 19.7 9.5 23.6l8.6 3.7c-6.4 9.9-17.3 22.4-36.9 33.3l-1.3-4.4c-2.7-9.6-12.7-15.1-22.3-12.4s-15.1 12.7-12.4 22.3l2.3 8.1c-3.8 1.1-7.7 2.1-11.9 3.1c-11.6 2.7-22.1 7.7-31.1 14.4l-7.2-7.2c-7-7-18.4-7-25.5 0s-7 18.4 0 25.5l9 9c-7.6 13.9-11.3 30.1-10.1 46.6l-15.2 4.3c-9.6 2.7-15.1 12.7-12.4 22.2s12.7 15.1 22.3 12.4l15.6-4.5c7.7 13.9 19.1 25.1 32.6 32.6L322.7 489zM576 241.5l0 0c-11.7-.4-27.3-.9-48-1.6l48 1.5zM448 384a32 32 0 1 1 -64 0 32 32 0 1 1 64 0z\"]\n};\nvar faHandLizard = {\n prefix: 'fas',\n iconName: 'hand-lizard',\n icon: [512, 512, [], \"f258\", \"M0 112C0 85.5 21.5 64 48 64H160h80 46.5c36.8 0 71.2 18 92.1 48.2l113.5 164c13 18.7 19.9 41 19.9 63.8v12 16 48c0 17.7-14.3 32-32 32H384c-17.7 0-32-14.3-32-32V402.2L273.9 352H240 160 112c-26.5 0-48-21.5-48-48s21.5-48 48-48h48 80c26.5 0 48-21.5 48-48s-21.5-48-48-48H160 48c-26.5 0-48-21.5-48-48z\"]\n};\nvar faNotdef = {\n prefix: 'fas',\n iconName: 'notdef',\n icon: [384, 512, [], \"e1fe\", \"M64 390.3L153.5 256 64 121.7V390.3zM102.5 448H281.5L192 313.7 102.5 448zm128-192L320 390.3V121.7L230.5 256zM281.5 64H102.5L192 198.3 281.5 64zM0 48C0 21.5 21.5 0 48 0H336c26.5 0 48 21.5 48 48V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48z\"]\n};\nvar faDisease = {\n prefix: 'fas',\n iconName: 'disease',\n icon: [512, 512, [], \"f7fa\", \"M236.4 61.4L227 75.5c-21.3 32-59.4 48.5-97.3 42.1l-59.6-9.9C33.4 101.6 0 129.9 .1 167.1c0 15.9 6.4 31.2 17.6 42.5l29.2 29.2c11 11 17.2 25.9 17.2 41.5c0 15.8-6.4 30.9-17.7 42L33.3 335.1C22.2 345.9 16 360.7 16 376.2c0 36.8 34.1 64.2 70.1 56.2l62.3-13.8c7.7-1.7 15.7-2.6 23.6-2.6h10c27.2 0 53.7 9.3 75 26.3L287.8 467c10.5 8.4 23.6 13 37 13c32.7 0 59.3-26.5 59.3-59.3l0-25.2c0-34.9 21.4-66.2 53.9-78.8l36.9-14.3c22.4-8.7 37.2-30.3 37.2-54.3c0-28.1-20.1-52.3-47.8-57.3l-28-5.1c-36.5-6.7-65.4-34.5-73.6-70.7l-7.1-31.5C348.9 53.4 322.1 32 291.3 32c-22 0-42.6 11-54.9 29.4zM160 192a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 16a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zm0 80a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faBriefcaseMedical = {\n prefix: 'fas',\n iconName: 'briefcase-medical',\n icon: [512, 512, [], \"f469\", \"M184 48H328c4.4 0 8 3.6 8 8V96H176V56c0-4.4 3.6-8 8-8zm-56 8V96H64C28.7 96 0 124.7 0 160V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64H384V56c0-30.9-25.1-56-56-56H184c-30.9 0-56 25.1-56 56zm96 152c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v48h48c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H288v48c0 8.8-7.2 16-16 16H240c-8.8 0-16-7.2-16-16V320H176c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h48V208z\"]\n};\nvar faGenderless = {\n prefix: 'fas',\n iconName: 'genderless',\n icon: [384, 512, [], \"f22d\", \"M192 144a112 112 0 1 1 0 224 112 112 0 1 1 0-224zm0 288a176 176 0 1 0 0-352 176 176 0 1 0 0 352z\"]\n};\nvar faChevronRight = {\n prefix: 'fas',\n iconName: 'chevron-right',\n icon: [320, 512, [9002], \"f054\", \"M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z\"]\n};\nvar faRetweet = {\n prefix: 'fas',\n iconName: 'retweet',\n icon: [576, 512, [], \"f079\", \"M272 416c17.7 0 32-14.3 32-32s-14.3-32-32-32H160c-17.7 0-32-14.3-32-32V192h32c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-64-64c-12.5-12.5-32.8-12.5-45.3 0l-64 64c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8l32 0 0 128c0 53 43 96 96 96H272zM304 96c-17.7 0-32 14.3-32 32s14.3 32 32 32l112 0c17.7 0 32 14.3 32 32l0 128H416c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l64 64c12.5 12.5 32.8 12.5 45.3 0l64-64c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8l-32 0V192c0-53-43-96-96-96L304 96z\"]\n};\nvar faCarRear = {\n prefix: 'fas',\n iconName: 'car-rear',\n icon: [512, 512, [\"car-alt\"], \"f5de\", \"M165.4 96H346.6c13.6 0 25.7 8.6 30.2 21.4L402.9 192H109.1l26.1-74.6c4.5-12.8 16.6-21.4 30.2-21.4zm-90.6 .3L39.6 196.8C16.4 206.4 0 229.3 0 256v80c0 23.7 12.9 44.4 32 55.4V448c0 17.7 14.3 32 32 32H96c17.7 0 32-14.3 32-32V400H384v48c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V391.4c19.1-11.1 32-31.7 32-55.4V256c0-26.7-16.4-49.6-39.6-59.2L437.2 96.3C423.7 57.8 387.4 32 346.6 32H165.4c-40.8 0-77.1 25.8-90.6 64.3zM208 272h96c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H208c-8.8 0-16-7.2-16-16V288c0-8.8 7.2-16 16-16zM48 280c0-13.3 10.7-24 24-24h32c13.3 0 24 10.7 24 24s-10.7 24-24 24H72c-13.3 0-24-10.7-24-24zm360-24h32c13.3 0 24 10.7 24 24s-10.7 24-24 24H408c-13.3 0-24-10.7-24-24s10.7-24 24-24z\"]\n};\nvar faCarAlt = faCarRear;\nvar faPumpSoap = {\n prefix: 'fas',\n iconName: 'pump-soap',\n icon: [448, 512, [], \"e06b\", \"M128 32v96H256V96h60.1c4.2 0 8.3 1.7 11.3 4.7l33.9 33.9c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L372.7 55.4c-15-15-35.4-23.4-56.6-23.4H256c0-17.7-14.3-32-32-32H160c-17.7 0-32 14.3-32 32zM117.4 160c-33.3 0-61 25.5-63.8 58.7L35 442.7C31.9 480 61.3 512 98.8 512H285.2c37.4 0 66.9-32 63.8-69.3l-18.7-224c-2.8-33.2-30.5-58.7-63.8-58.7H117.4zM256 360c0 35.3-28.7 56-64 56s-64-20.7-64-56c0-32.5 37-80.9 50.9-97.9c3.2-3.9 8.1-6.1 13.1-6.1s9.9 2.2 13.1 6.1C219 279.1 256 327.5 256 360z\"]\n};\nvar faVideoSlash = {\n prefix: 'fas',\n iconName: 'video-slash',\n icon: [640, 512, [], \"f4e2\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-86.4-67.7 13.8 9.2c9.8 6.5 22.4 7.2 32.9 1.6s16.9-16.4 16.9-28.2V128c0-11.8-6.5-22.6-16.9-28.2s-23-5-32.9 1.6l-96 64L448 174.9V192 320v5.8l-32-25.1V128c0-35.3-28.7-64-64-64H113.9L38.8 5.1zM407 416.7L32.3 121.5c-.2 2.1-.3 4.3-.3 6.5V384c0 35.3 28.7 64 64 64H352c23.4 0 43.9-12.6 55-31.3z\"]\n};\nvar faBatteryQuarter = {\n prefix: 'fas',\n iconName: 'battery-quarter',\n icon: [576, 512, [\"battery-2\"], \"f243\", \"M464 160c8.8 0 16 7.2 16 16V336c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16H464zM80 96C35.8 96 0 131.8 0 176V336c0 44.2 35.8 80 80 80H464c44.2 0 80-35.8 80-80V320c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32V176c0-44.2-35.8-80-80-80H80zm112 96H96V320h96V192z\"]\n};\nvar faBattery2 = faBatteryQuarter;\nvar faRadio = {\n prefix: 'fas',\n iconName: 'radio',\n icon: [512, 512, [128251], \"f8d7\", \"M494.8 47c12.7-3.7 20-17.1 16.3-29.8S494-2.8 481.2 1L51.7 126.9c-9.4 2.7-17.9 7.3-25.1 13.2C10.5 151.7 0 170.6 0 192v4V304 448c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V192c0-35.3-28.7-64-64-64H218.5L494.8 47zM368 240a80 80 0 1 1 0 160 80 80 0 1 1 0-160zM80 256c0-8.8 7.2-16 16-16h96c8.8 0 16 7.2 16 16s-7.2 16-16 16H96c-8.8 0-16-7.2-16-16zM64 320c0-8.8 7.2-16 16-16H208c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16zm16 64c0-8.8 7.2-16 16-16h96c8.8 0 16 7.2 16 16s-7.2 16-16 16H96c-8.8 0-16-7.2-16-16z\"]\n};\nvar faBabyCarriage = {\n prefix: 'fas',\n iconName: 'baby-carriage',\n icon: [512, 512, [\"carriage-baby\"], \"f77d\", \"M256 192H.1C2.7 117.9 41.3 52.9 99 14.1c13.3-8.9 30.8-4.3 39.9 8.8L256 192zm128-32c0-35.3 28.7-64 64-64h32c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0v64c0 25.2-5.8 50.2-17 73.5s-27.8 44.5-48.6 62.3s-45.5 32-72.7 41.6S253.4 416 224 416s-58.5-5-85.7-14.6s-51.9-23.8-72.7-41.6s-37.3-39-48.6-62.3S0 249.2 0 224l224 0 160 0V160zM80 416a48 48 0 1 1 0 96 48 48 0 1 1 0-96zm240 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0z\"]\n};\nvar faCarriageBaby = faBabyCarriage;\nvar faTrafficLight = {\n prefix: 'fas',\n iconName: 'traffic-light',\n icon: [320, 512, [128678], \"f637\", \"M64 0C28.7 0 0 28.7 0 64V352c0 88.4 71.6 160 160 160s160-71.6 160-160V64c0-35.3-28.7-64-64-64H64zm96 416a48 48 0 1 1 0-96 48 48 0 1 1 0 96zm48-176a48 48 0 1 1 -96 0 48 48 0 1 1 96 0zm-48-80a48 48 0 1 1 0-96 48 48 0 1 1 0 96z\"]\n};\nvar faThermometer = {\n prefix: 'fas',\n iconName: 'thermometer',\n icon: [512, 512, [], \"f491\", \"M96 382.1V293.3c0-14.9 5.9-29.1 16.4-39.6l27.3-27.3 57 57c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-57-57 41.4-41.4 57 57c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-57-57 41.4-41.4 57 57c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-57-57 45.5-45.5C355.2 10.9 381.4 0 408.8 0C465.8 0 512 46.2 512 103.2c0 27.4-10.9 53.6-30.2 73L258.3 399.6c-10.5 10.5-24.7 16.4-39.6 16.4H129.9L41 505c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l89-89z\"]\n};\nvar faVrCardboard = {\n prefix: 'fas',\n iconName: 'vr-cardboard',\n icon: [640, 512, [], \"f729\", \"M576 64H64C28.7 64 0 92.7 0 128V384c0 35.3 28.7 64 64 64H184.4c24.2 0 46.4-13.7 57.2-35.4l32-64c8.8-17.5 26.7-28.6 46.3-28.6s37.5 11.1 46.3 28.6l32 64c10.8 21.7 33 35.4 57.2 35.4H576c35.3 0 64-28.7 64-64V128c0-35.3-28.7-64-64-64zM96 240a64 64 0 1 1 128 0A64 64 0 1 1 96 240zm384-64a64 64 0 1 1 0 128 64 64 0 1 1 0-128z\"]\n};\nvar faHandMiddleFinger = {\n prefix: 'fas',\n iconName: 'hand-middle-finger',\n icon: [448, 512, [128405], \"f806\", \"M232 0c-22.1 0-40 17.9-40 40V204.2c-8.5-7.6-19.7-12.2-32-12.2c-26.5 0-48 21.5-48 48v7 73c0 8.8-7.2 16-16 16s-16-7.2-16-16V264.3c-2 1.4-3.9 3-5.8 4.5L55 284.8C40.4 297 32 315 32 334V372c0 38 16.9 74 46.1 98.3l5.4 4.5c28.8 24 65 37.1 102.4 37.1H304c70.7 0 128-57.3 128-128V320 288c0-26.5-21.5-48-48-48c-12.4 0-23.6 4.7-32.1 12.3C350 227.5 329.3 208 304 208c-12.3 0-23.5 4.6-32 12.2V40c0-22.1-17.9-40-40-40z\"]\n};\nvar faPercent = {\n prefix: 'fas',\n iconName: 'percent',\n icon: [384, 512, [62101, 62785, \"percentage\"], \"25\", \"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"]\n};\nvar faPercentage = faPercent;\nvar faTruckMoving = {\n prefix: 'fas',\n iconName: 'truck-moving',\n icon: [640, 512, [], \"f4df\", \"M64 32C28.7 32 0 60.7 0 96V304v80 16c0 44.2 35.8 80 80 80c26.2 0 49.4-12.6 64-32c14.6 19.4 37.8 32 64 32c44.2 0 80-35.8 80-80c0-5.5-.6-10.8-1.6-16H416h33.6c-1 5.2-1.6 10.5-1.6 16c0 44.2 35.8 80 80 80s80-35.8 80-80c0-5.5-.6-10.8-1.6-16H608c17.7 0 32-14.3 32-32V288 272 261.7c0-9.2-3.2-18.2-9-25.3l-58.8-71.8c-10.6-13-26.5-20.5-43.3-20.5H480V96c0-35.3-28.7-64-64-64H64zM585 256H480V192h48.8c2.4 0 4.7 1.1 6.2 2.9L585 256zM528 368a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM176 400a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM80 368a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faGlassWaterDroplet = {\n prefix: 'fas',\n iconName: 'glass-water-droplet',\n icon: [384, 512, [], \"e4f5\", \"M32 0C23.1 0 14.6 3.7 8.6 10.2S-.6 25.4 .1 34.3L28.9 437.7c3 41.9 37.8 74.3 79.8 74.3H275.3c42 0 76.8-32.4 79.8-74.3L383.9 34.3c.6-8.9-2.4-17.6-8.5-24.1S360.9 0 352 0H32zM83 297.5L66.4 64H317.6L301 297.5 288 304c-20.1 10.1-43.9 10.1-64 0s-43.9-10.1-64 0s-43.9 10.1-64 0l-13-6.5zM256 196c0-24-33.7-70.1-52.2-93.5c-6.1-7.7-17.5-7.7-23.6 0C161.7 125.9 128 172 128 196c0 33.1 28.7 60 64 60s64-26.9 64-60z\"]\n};\nvar faDisplay = {\n prefix: 'fas',\n iconName: 'display',\n icon: [576, 512, [], \"e163\", \"M64 0C28.7 0 0 28.7 0 64V352c0 35.3 28.7 64 64 64H240l-10.7 32H160c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H346.7L336 416H512c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64zM512 64V352H64V64H512z\"]\n};\nvar faFaceSmile = {\n prefix: 'fas',\n iconName: 'face-smile',\n icon: [512, 512, [128578, \"smile\"], \"f118\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.1 325.5C182 346.2 212.6 368 256 368s74-21.8 91.9-42.5c5.8-6.7 15.9-7.4 22.6-1.6s7.4 15.9 1.6 22.6C349.8 372.1 311.1 400 256 400s-93.8-27.9-116.1-53.5c-5.8-6.7-5.1-16.8 1.6-22.6s16.8-5.1 22.6 1.6zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faSmile = faFaceSmile;\nvar faThumbtack = {\n prefix: 'fas',\n iconName: 'thumbtack',\n icon: [384, 512, [128204, 128392, \"thumb-tack\"], \"f08d\", \"M32 32C32 14.3 46.3 0 64 0H320c17.7 0 32 14.3 32 32s-14.3 32-32 32H290.5l11.4 148.2c36.7 19.9 65.7 53.2 79.5 94.7l1 3c3.3 9.8 1.6 20.5-4.4 28.8s-15.7 13.3-26 13.3H32c-10.3 0-19.9-4.9-26-13.3s-7.7-19.1-4.4-28.8l1-3c13.8-41.5 42.8-74.8 79.5-94.7L93.5 64H64C46.3 64 32 49.7 32 32zM160 384h64v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384z\"]\n};\nvar faThumbTack = faThumbtack;\nvar faTrophy = {\n prefix: 'fas',\n iconName: 'trophy',\n icon: [576, 512, [127942], \"f091\", \"M400 0H176c-26.5 0-48.1 21.8-47.1 48.2c.2 5.3 .4 10.6 .7 15.8H24C10.7 64 0 74.7 0 88c0 92.6 33.5 157 78.5 200.7c44.3 43.1 98.3 64.8 138.1 75.8c23.4 6.5 39.4 26 39.4 45.6c0 20.9-17 37.9-37.9 37.9H192c-17.7 0-32 14.3-32 32s14.3 32 32 32H384c17.7 0 32-14.3 32-32s-14.3-32-32-32H357.9C337 448 320 431 320 410.1c0-19.6 15.9-39.2 39.4-45.6c39.9-11 93.9-32.7 138.2-75.8C542.5 245 576 180.6 576 88c0-13.3-10.7-24-24-24H446.4c.3-5.2 .5-10.4 .7-15.8C448.1 21.8 426.5 0 400 0zM48.9 112h84.4c9.1 90.1 29.2 150.3 51.9 190.6c-24.9-11-50.8-26.5-73.2-48.3c-32-31.1-58-76-63-142.3zM464.1 254.3c-22.4 21.8-48.3 37.3-73.2 48.3c22.7-40.3 42.8-100.5 51.9-190.6h84.4c-5.1 66.3-31.1 111.2-63 142.3z\"]\n};\nvar faPersonPraying = {\n prefix: 'fas',\n iconName: 'person-praying',\n icon: [448, 512, [128720, \"pray\"], \"f683\", \"M352 64A64 64 0 1 0 224 64a64 64 0 1 0 128 0zM232.7 264l22.9 31.5c6.5 8.9 16.3 14.7 27.2 16.1s21.9-1.7 30.4-8.7l88-72c17.1-14 19.6-39.2 5.6-56.3s-39.2-19.6-56.3-5.6l-55.2 45.2-26.2-36C253.6 156.7 228.6 144 202 144c-30.9 0-59.2 17.1-73.6 44.4L79.8 280.9c-20.2 38.5-9.4 85.9 25.6 111.8L158.6 432H72c-22.1 0-40 17.9-40 40s17.9 40 40 40H280c17.3 0 32.6-11.1 38-27.5s-.3-34.4-14.2-44.7L187.7 354l45-90z\"]\n};\nvar faPray = faPersonPraying;\nvar faHammer = {\n prefix: 'fas',\n iconName: 'hammer',\n icon: [576, 512, [128296], \"f6e3\", \"M413.5 237.5c-28.2 4.8-58.2-3.6-80-25.4l-38.1-38.1C280.4 159 272 138.8 272 117.6V105.5L192.3 62c-5.3-2.9-8.6-8.6-8.3-14.7s3.9-11.5 9.5-14l47.2-21C259.1 4.2 279 0 299.2 0h18.1c36.7 0 72 14 98.7 39.1l44.6 42c24.2 22.8 33.2 55.7 26.6 86L503 183l8-8c9.4-9.4 24.6-9.4 33.9 0l24 24c9.4 9.4 9.4 24.6 0 33.9l-88 88c-9.4 9.4-24.6 9.4-33.9 0l-24-24c-9.4-9.4-9.4-24.6 0-33.9l8-8-17.5-17.5zM27.4 377.1L260.9 182.6c3.5 4.9 7.5 9.6 11.8 14l38.1 38.1c6 6 12.4 11.2 19.2 15.7L134.9 484.6c-14.5 17.4-36 27.4-58.6 27.4C34.1 512 0 477.8 0 435.7c0-22.6 10.1-44.1 27.4-58.6z\"]\n};\nvar faHandPeace = {\n prefix: 'fas',\n iconName: 'hand-peace',\n icon: [512, 512, [9996], \"f25b\", \"M224 0c17.7 0 32 14.3 32 32V240H192V32c0-17.7 14.3-32 32-32zm96 160c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V192c0-17.7 14.3-32 32-32zm64 64c0-17.7 14.3-32 32-32s32 14.3 32 32v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V224zM93.3 51.2L175.9 240H106.1L34.7 76.8C27.6 60.6 35 41.8 51.2 34.7s35.1 .3 42.1 16.5zm27 221.3l-.2-.5h69.9H216c22.1 0 40 17.9 40 40s-17.9 40-40 40H160c-8.8 0-16 7.2-16 16s7.2 16 16 16h56c39.8 0 72-32.2 72-72l0-.6c9.4 5.4 20.3 8.6 32 8.6c13.2 0 25.4-4 35.6-10.8c8.7 24.9 32.5 42.8 60.4 42.8c11.7 0 22.6-3.1 32-8.6V352c0 88.4-71.6 160-160 160H226.3c-42.4 0-83.1-16.9-113.1-46.9l-11.6-11.6C77.5 429.5 64 396.9 64 363V336c0-32.7 24.6-59.7 56.3-63.5z\"]\n};\nvar faRotate = {\n prefix: 'fas',\n iconName: 'rotate',\n icon: [512, 512, [128260, \"sync-alt\"], \"f2f1\", \"M142.9 142.9c62.2-62.2 162.7-62.5 225.3-1L327 183c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8H463.5c0 0 0 0 0 0H472c13.3 0 24-10.7 24-24V72c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2L413.4 96.6c-87.6-86.5-228.7-86.2-315.8 1C73.2 122 55.6 150.7 44.8 181.4c-5.9 16.7 2.9 34.9 19.5 40.8s34.9-2.9 40.8-19.5c7.7-21.8 20.2-42.3 37.8-59.8zM16 312v7.6 .7V440c0 9.7 5.8 18.5 14.8 22.2s19.3 1.7 26.2-5.2l41.6-41.6c87.6 86.5 228.7 86.2 315.8-1c24.4-24.4 42.1-53.1 52.9-83.7c5.9-16.7-2.9-34.9-19.5-40.8s-34.9 2.9-40.8 19.5c-7.7 21.8-20.2 42.3-37.8 59.8c-62.2 62.2-162.7 62.5-225.3 1L185 329c6.9-6.9 8.9-17.2 5.2-26.2s-12.5-14.8-22.2-14.8H48.4h-.7H40c-13.3 0-24 10.7-24 24z\"]\n};\nvar faSyncAlt = faRotate;\nvar faSpinner = {\n prefix: 'fas',\n iconName: 'spinner',\n icon: [512, 512, [], \"f110\", \"M304 48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm0 416a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM48 304a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm464-48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM142.9 437A48 48 0 1 0 75 369.1 48 48 0 1 0 142.9 437zm0-294.2A48 48 0 1 0 75 75a48 48 0 1 0 67.9 67.9zM369.1 437A48 48 0 1 0 437 369.1 48 48 0 1 0 369.1 437z\"]\n};\nvar faRobot = {\n prefix: 'fas',\n iconName: 'robot',\n icon: [640, 512, [129302], \"f544\", \"M320 0c17.7 0 32 14.3 32 32V96H472c39.8 0 72 32.2 72 72V440c0 39.8-32.2 72-72 72H168c-39.8 0-72-32.2-72-72V168c0-39.8 32.2-72 72-72H288V32c0-17.7 14.3-32 32-32zM208 384c-8.8 0-16 7.2-16 16s7.2 16 16 16h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H208zm96 0c-8.8 0-16 7.2-16 16s7.2 16 16 16h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H304zm96 0c-8.8 0-16 7.2-16 16s7.2 16 16 16h32c8.8 0 16-7.2 16-16s-7.2-16-16-16H400zM264 256a40 40 0 1 0 -80 0 40 40 0 1 0 80 0zm152 40a40 40 0 1 0 0-80 40 40 0 1 0 0 80zM48 224H64V416H48c-26.5 0-48-21.5-48-48V272c0-26.5 21.5-48 48-48zm544 0c26.5 0 48 21.5 48 48v96c0 26.5-21.5 48-48 48H576V224h16z\"]\n};\nvar faPeace = {\n prefix: 'fas',\n iconName: 'peace',\n icon: [512, 512, [9774], \"f67c\", \"M224 445.3V323.5l-94.3 77.1c26.1 22.8 58.5 38.7 94.3 44.7zM89.2 351.1L224 240.8V66.7C133.2 81.9 64 160.9 64 256c0 34.6 9.2 67.1 25.2 95.1zm293.1 49.5L288 323.5V445.3c35.7-6 68.1-21.9 94.3-44.7zm40.6-49.5c16-28 25.2-60.5 25.2-95.1c0-95.1-69.2-174.1-160-189.3V240.8L422.8 351.1zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z\"]\n};\nvar faGears = {\n prefix: 'fas',\n iconName: 'gears',\n icon: [640, 512, [\"cogs\"], \"f085\", \"M308.5 135.3c7.1-6.3 9.9-16.2 6.2-25c-2.3-5.3-4.8-10.5-7.6-15.5L304 89.4c-3-5-6.3-9.9-9.8-14.6c-5.7-7.6-15.7-10.1-24.7-7.1l-28.2 9.3c-10.7-8.8-23-16-36.2-20.9L199 27.1c-1.9-9.3-9.1-16.7-18.5-17.8C173.9 8.4 167.2 8 160.4 8h-.7c-6.8 0-13.5 .4-20.1 1.2c-9.4 1.1-16.6 8.6-18.5 17.8L115 56.1c-13.3 5-25.5 12.1-36.2 20.9L50.5 67.8c-9-3-19-.5-24.7 7.1c-3.5 4.7-6.8 9.6-9.9 14.6l-3 5.3c-2.8 5-5.3 10.2-7.6 15.6c-3.7 8.7-.9 18.6 6.2 25l22.2 19.8C32.6 161.9 32 168.9 32 176s.6 14.1 1.7 20.9L11.5 216.7c-7.1 6.3-9.9 16.2-6.2 25c2.3 5.3 4.8 10.5 7.6 15.6l3 5.2c3 5.1 6.3 9.9 9.9 14.6c5.7 7.6 15.7 10.1 24.7 7.1l28.2-9.3c10.7 8.8 23 16 36.2 20.9l6.1 29.1c1.9 9.3 9.1 16.7 18.5 17.8c6.7 .8 13.5 1.2 20.4 1.2s13.7-.4 20.4-1.2c9.4-1.1 16.6-8.6 18.5-17.8l6.1-29.1c13.3-5 25.5-12.1 36.2-20.9l28.2 9.3c9 3 19 .5 24.7-7.1c3.5-4.7 6.8-9.5 9.8-14.6l3.1-5.4c2.8-5 5.3-10.2 7.6-15.5c3.7-8.7 .9-18.6-6.2-25l-22.2-19.8c1.1-6.8 1.7-13.8 1.7-20.9s-.6-14.1-1.7-20.9l22.2-19.8zM112 176a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM504.7 500.5c6.3 7.1 16.2 9.9 25 6.2c5.3-2.3 10.5-4.8 15.5-7.6l5.4-3.1c5-3 9.9-6.3 14.6-9.8c7.6-5.7 10.1-15.7 7.1-24.7l-9.3-28.2c8.8-10.7 16-23 20.9-36.2l29.1-6.1c9.3-1.9 16.7-9.1 17.8-18.5c.8-6.7 1.2-13.5 1.2-20.4s-.4-13.7-1.2-20.4c-1.1-9.4-8.6-16.6-17.8-18.5L583.9 307c-5-13.3-12.1-25.5-20.9-36.2l9.3-28.2c3-9 .5-19-7.1-24.7c-4.7-3.5-9.6-6.8-14.6-9.9l-5.3-3c-5-2.8-10.2-5.3-15.6-7.6c-8.7-3.7-18.6-.9-25 6.2l-19.8 22.2c-6.8-1.1-13.8-1.7-20.9-1.7s-14.1 .6-20.9 1.7l-19.8-22.2c-6.3-7.1-16.2-9.9-25-6.2c-5.3 2.3-10.5 4.8-15.6 7.6l-5.2 3c-5.1 3-9.9 6.3-14.6 9.9c-7.6 5.7-10.1 15.7-7.1 24.7l9.3 28.2c-8.8 10.7-16 23-20.9 36.2L315.1 313c-9.3 1.9-16.7 9.1-17.8 18.5c-.8 6.7-1.2 13.5-1.2 20.4s.4 13.7 1.2 20.4c1.1 9.4 8.6 16.6 17.8 18.5l29.1 6.1c5 13.3 12.1 25.5 20.9 36.2l-9.3 28.2c-3 9-.5 19 7.1 24.7c4.7 3.5 9.5 6.8 14.6 9.8l5.4 3.1c5 2.8 10.2 5.3 15.5 7.6c8.7 3.7 18.6 .9 25-6.2l19.8-22.2c6.8 1.1 13.8 1.7 20.9 1.7s14.1-.6 20.9-1.7l19.8 22.2zM464 304a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faCogs = faGears;\nvar faWarehouse = {\n prefix: 'fas',\n iconName: 'warehouse',\n icon: [640, 512, [], \"f494\", \"M0 488V171.3c0-26.2 15.9-49.7 40.2-59.4L308.1 4.8c7.6-3.1 16.1-3.1 23.8 0L599.8 111.9c24.3 9.7 40.2 33.3 40.2 59.4V488c0 13.3-10.7 24-24 24H568c-13.3 0-24-10.7-24-24V224c0-17.7-14.3-32-32-32H128c-17.7 0-32 14.3-32 32V488c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24zm488 24l-336 0c-13.3 0-24-10.7-24-24V432H512l0 56c0 13.3-10.7 24-24 24zM128 400V336H512v64H128zm0-96V224H512l0 80H128z\"]\n};\nvar faArrowUpRightDots = {\n prefix: 'fas',\n iconName: 'arrow-up-right-dots',\n icon: [576, 512, [], \"e4b7\", \"M160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h50.7L9.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L256 109.3V160c0 17.7 14.3 32 32 32s32-14.3 32-32V32c0-17.7-14.3-32-32-32H160zM576 80a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM448 208a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM400 384a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm48 80a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm128 0a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM272 384a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm48 80a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM144 512a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM576 336a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm-48-80a48 48 0 1 0 0-96 48 48 0 1 0 0 96z\"]\n};\nvar faSplotch = {\n prefix: 'fas',\n iconName: 'splotch',\n icon: [512, 512, [], \"f5bc\", \"M208.5 62.3l28.1-36.9C248.8 9.4 267.8 0 288 0c28.5 0 53.6 18.7 61.8 46l17.8 59.4c10.3 34.4 36.1 62 69.8 74.6l39.8 14.9c20.9 7.9 34.8 27.9 34.8 50.2c0 16.9-7.9 32.8-21.5 42.9l-67.3 50.5c-24.3 18.2-37.2 47.9-33.8 78.1l2.5 22.7c4.3 38.7-26 72.6-65 72.6c-14.8 0-29.3-5.1-40.8-14.3l-55.4-44.3c-4.5-3.6-9.3-6.7-14.5-9.2c-15.8-7.9-33.7-10.4-51-7.3L82.4 451.9C47.8 458.2 16 431.6 16 396.5c0-13.2 4.7-26 13.1-36.2l11.2-13.4c14.6-17.4 22.6-39.4 22.6-62.1c0-18.8-5.5-37.2-15.8-53L8.8 173.5C3.1 164.7 0 154.4 0 143.9c0-33.4 30.1-58.8 63-53.2l51.3 8.7c35.9 6.1 72.2-8.2 94.2-37.1z\"]\n};\nvar faFaceGrinHearts = {\n prefix: 'fas',\n iconName: 'face-grin-hearts',\n icon: [512, 512, [128525, \"grin-hearts\"], \"f584\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zM199.3 129.1c17.8 4.8 28.4 23.1 23.6 40.8l-17.4 65c-2.3 8.5-11.1 13.6-19.6 11.3l-65.1-17.4c-17.8-4.8-28.4-23.1-23.6-40.8s23.1-28.4 40.8-23.6l16.1 4.3 4.3-16.1c4.8-17.8 23.1-28.4 40.8-23.6zm154.3 23.6l4.3 16.1 16.1-4.3c17.8-4.8 36.1 5.8 40.8 23.6s-5.8 36.1-23.6 40.8l-65.1 17.4c-8.5 2.3-17.3-2.8-19.6-11.3l-17.4-65c-4.8-17.8 5.8-36.1 23.6-40.8s36.1 5.8 40.9 23.6z\"]\n};\nvar faGrinHearts = faFaceGrinHearts;\nvar faDiceFour = {\n prefix: 'fas',\n iconName: 'dice-four',\n icon: [448, 512, [9859], \"f524\", \"M0 96C0 60.7 28.7 32 64 32H384c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zm160 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM128 384a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM352 160a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM320 384a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faSimCard = {\n prefix: 'fas',\n iconName: 'sim-card',\n icon: [384, 512, [], \"f7c4\", \"M64 0H242.7c17 0 33.3 6.7 45.3 18.7L365.3 96c12 12 18.7 28.3 18.7 45.3V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64C0 28.7 28.7 0 64 0zM96 192c-17.7 0-32 14.3-32 32v32h64V192H96zM64 352h80 96 80V288H240 144 64v64zM320 224c0-17.7-14.3-32-32-32H256v64h64V224zM160 192v64h64V192H160zM288 448c17.7 0 32-14.3 32-32V384H256v64h32zM160 384v64h64V384H160zM64 416c0 17.7 14.3 32 32 32h32V384H64v32z\"]\n};\nvar faTransgender = {\n prefix: 'fas',\n iconName: 'transgender',\n icon: [512, 512, [9895, \"transgender-alt\"], \"f225\", \"M112 0c6.5 0 12.3 3.9 14.8 9.9s1.1 12.9-3.5 17.4l-31 31L112 78.1l7-7c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-7 7 15.2 15.2C187.7 107.6 220.5 96 256 96s68.3 11.6 94.9 31.2l68.8-68.8-31-31c-4.6-4.6-5.9-11.5-3.5-17.4s8.3-9.9 14.8-9.9h96c8.8 0 16 7.2 16 16v96c0 6.5-3.9 12.3-9.9 14.8s-12.9 1.1-17.4-3.5l-31-31-68.8 68.8C404.4 187.7 416 220.5 416 256c0 80.2-59 146.6-136 158.2V432h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H280v8c0 13.3-10.7 24-24 24s-24-10.7-24-24v-8H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h16V414.2C155 402.6 96 336.2 96 256c0-35.5 11.6-68.3 31.2-94.9L112 145.9l-7 7c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l7-7L58.3 92.3l-31 31c-4.6 4.6-11.5 5.9-17.4 3.5S0 118.5 0 112V16C0 7.2 7.2 0 16 0h96zM352 256a96 96 0 1 0 -192 0 96 96 0 1 0 192 0z\"]\n};\nvar faTransgenderAlt = faTransgender;\nvar faMercury = {\n prefix: 'fas',\n iconName: 'mercury',\n icon: [384, 512, [9791], \"f223\", \"M72.1 7C85.8-4 106-1.8 117 12c17.6 22 44.7 36 75 36s57.3-14 75-36c11.1-13.8 31.2-16 45-5s16 31.2 5 45c-7.8 9.7-16.6 18.4-26.4 26.1C337.3 109.7 368 163.3 368 224c0 89.1-66.2 162.7-152 174.4V424h32c13.3 0 24 10.7 24 24s-10.7 24-24 24H216v16c0 13.3-10.7 24-24 24s-24-10.7-24-24V472H136c-13.3 0-24-10.7-24-24s10.7-24 24-24h32V398.4C82.2 386.7 16 313.1 16 224c0-60.7 30.7-114.3 77.5-145.9C83.7 70.5 74.9 61.7 67.1 52c-11.1-13.8-8.8-33.9 5-45zM80 224a112 112 0 1 0 224 0A112 112 0 1 0 80 224z\"]\n};\nvar faArrowTurnDown = {\n prefix: 'fas',\n iconName: 'arrow-turn-down',\n icon: [384, 512, [\"level-down\"], \"f149\", \"M32 64C14.3 64 0 49.7 0 32S14.3 0 32 0l96 0c53 0 96 43 96 96l0 306.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 402.7 160 96c0-17.7-14.3-32-32-32L32 64z\"]\n};\nvar faLevelDown = faArrowTurnDown;\nvar faPersonFallingBurst = {\n prefix: 'fas',\n iconName: 'person-falling-burst',\n icon: [640, 512, [], \"e547\", \"M256 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 9.8c0 39-23.7 74-59.9 88.4C71.6 154.5 32 213 32 278.2V352c0 17.7 14.3 32 32 32s32-14.3 32-32l0-73.8c0-10 1.6-19.8 4.5-29L261.1 497.4c9.6 14.8 29.4 19.1 44.3 9.5s19.1-29.4 9.5-44.3L222.6 320H224l80 0 38.4 51.2c10.6 14.1 30.7 17 44.8 6.4s17-30.7 6.4-44.8l-43.2-57.6C341.3 263.1 327.1 256 312 256l-71.5 0-56.8-80.2-.2-.3c44.7-29 72.5-79 72.5-133.6l0-9.8zM96 80A48 48 0 1 0 0 80a48 48 0 1 0 96 0zM464 286.1l58.6 53.9c4.8 4.4 11.9 5.5 17.8 2.6s9.5-9 9-15.5l-5.6-79.4 78.7-12.2c6.5-1 11.7-5.9 13.1-12.2s-1.1-13-6.5-16.7l-65.6-45.1L603 92.2c3.3-5.7 2.7-12.8-1.4-17.9s-10.9-7.2-17.2-5.3L508.3 92.1l-29.4-74C476.4 12 470.6 8 464 8s-12.4 4-14.9 10.1l-29.4 74L343.6 68.9c-6.3-1.9-13.1 .2-17.2 5.3s-4.6 12.2-1.4 17.9l39.5 69.1-65.6 45.1c-5.4 3.7-8 10.3-6.5 16.7c.1 .3 .1 .6 .2 .8l19.4 0c20.1 0 39.2 7.5 53.8 20.8l18.4 2.9L383 265.3l36.2 48.3c2.1 2.8 3.9 5.7 5.5 8.6L464 286.1z\"]\n};\nvar faAward = {\n prefix: 'fas',\n iconName: 'award',\n icon: [384, 512, [], \"f559\", \"M173.8 5.5c11-7.3 25.4-7.3 36.4 0L228 17.2c6 3.9 13 5.8 20.1 5.4l21.3-1.3c13.2-.8 25.6 6.4 31.5 18.2l9.6 19.1c3.2 6.4 8.4 11.5 14.7 14.7L344.5 83c11.8 5.9 19 18.3 18.2 31.5l-1.3 21.3c-.4 7.1 1.5 14.2 5.4 20.1l11.8 17.8c7.3 11 7.3 25.4 0 36.4L366.8 228c-3.9 6-5.8 13-5.4 20.1l1.3 21.3c.8 13.2-6.4 25.6-18.2 31.5l-19.1 9.6c-6.4 3.2-11.5 8.4-14.7 14.7L301 344.5c-5.9 11.8-18.3 19-31.5 18.2l-21.3-1.3c-7.1-.4-14.2 1.5-20.1 5.4l-17.8 11.8c-11 7.3-25.4 7.3-36.4 0L156 366.8c-6-3.9-13-5.8-20.1-5.4l-21.3 1.3c-13.2 .8-25.6-6.4-31.5-18.2l-9.6-19.1c-3.2-6.4-8.4-11.5-14.7-14.7L39.5 301c-11.8-5.9-19-18.3-18.2-31.5l1.3-21.3c.4-7.1-1.5-14.2-5.4-20.1L5.5 210.2c-7.3-11-7.3-25.4 0-36.4L17.2 156c3.9-6 5.8-13 5.4-20.1l-1.3-21.3c-.8-13.2 6.4-25.6 18.2-31.5l19.1-9.6C65 70.2 70.2 65 73.4 58.6L83 39.5c5.9-11.8 18.3-19 31.5-18.2l21.3 1.3c7.1 .4 14.2-1.5 20.1-5.4L173.8 5.5zM272 192a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM1.3 441.8L44.4 339.3c.2 .1 .3 .2 .4 .4l9.6 19.1c11.7 23.2 36 37.3 62 35.8l21.3-1.3c.2 0 .5 0 .7 .2l17.8 11.8c5.1 3.3 10.5 5.9 16.1 7.7l-37.6 89.3c-2.3 5.5-7.4 9.2-13.3 9.7s-11.6-2.2-14.8-7.2L74.4 455.5l-56.1 8.3c-5.7 .8-11.4-1.5-15-6s-4.3-10.7-2.1-16zm248 60.4L211.7 413c5.6-1.8 11-4.3 16.1-7.7l17.8-11.8c.2-.1 .4-.2 .7-.2l21.3 1.3c26 1.5 50.3-12.6 62-35.8l9.6-19.1c.1-.2 .2-.3 .4-.4l43.2 102.5c2.2 5.3 1.4 11.4-2.1 16s-9.3 6.9-15 6l-56.1-8.3-32.2 49.2c-3.2 5-8.9 7.7-14.8 7.2s-11-4.3-13.3-9.7z\"]\n};\nvar faTicketSimple = {\n prefix: 'fas',\n iconName: 'ticket-simple',\n icon: [576, 512, [\"ticket-alt\"], \"f3ff\", \"M0 128C0 92.7 28.7 64 64 64H512c35.3 0 64 28.7 64 64v64c0 8.8-7.4 15.7-15.7 18.6C541.5 217.1 528 235 528 256s13.5 38.9 32.3 45.4c8.3 2.9 15.7 9.8 15.7 18.6v64c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V320c0-8.8 7.4-15.7 15.7-18.6C34.5 294.9 48 277 48 256s-13.5-38.9-32.3-45.4C7.4 207.7 0 200.8 0 192V128z\"]\n};\nvar faTicketAlt = faTicketSimple;\nvar faBuilding = {\n prefix: 'fas',\n iconName: 'building',\n icon: [384, 512, [127970, 61687], \"f1ad\", \"M48 0C21.5 0 0 21.5 0 48V464c0 26.5 21.5 48 48 48h96V432c0-26.5 21.5-48 48-48s48 21.5 48 48v80h96c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48H48zM64 240c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V240zm112-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V240c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V240zM80 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16zm80 16c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V112zM272 96h32c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16z\"]\n};\nvar faAnglesLeft = {\n prefix: 'fas',\n iconName: 'angles-left',\n icon: [512, 512, [171, \"angle-double-left\"], \"f100\", \"M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160zm352-160l-160 160c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L301.3 256 438.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0z\"]\n};\nvar faAngleDoubleLeft = faAnglesLeft;\nvar faQrcode = {\n prefix: 'fas',\n iconName: 'qrcode',\n icon: [448, 512, [], \"f029\", \"M0 80C0 53.5 21.5 32 48 32h96c26.5 0 48 21.5 48 48v96c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80zM64 96v64h64V96H64zM0 336c0-26.5 21.5-48 48-48h96c26.5 0 48 21.5 48 48v96c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V336zm64 16v64h64V352H64zM304 32h96c26.5 0 48 21.5 48 48v96c0 26.5-21.5 48-48 48H304c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48zm80 64H320v64h64V96zM256 304c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16s7.2 16 16 16h32c8.8 0 16-7.2 16-16s7.2-16 16-16s16 7.2 16 16v96c0 8.8-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s-7.2-16-16-16s-16 7.2-16 16v64c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V304zM368 480a16 16 0 1 1 0-32 16 16 0 1 1 0 32zm64 0a16 16 0 1 1 0-32 16 16 0 1 1 0 32z\"]\n};\nvar faClockRotateLeft = {\n prefix: 'fas',\n iconName: 'clock-rotate-left',\n icon: [512, 512, [\"history\"], \"f1da\", \"M75 75L41 41C25.9 25.9 0 36.6 0 57.9V168c0 13.3 10.7 24 24 24H134.1c21.4 0 32.1-25.9 17-41l-30.8-30.8C155 85.5 203 64 256 64c106 0 192 86 192 192s-86 192-192 192c-40.8 0-78.6-12.7-109.7-34.4c-14.5-10.1-34.4-6.6-44.6 7.9s-6.6 34.4 7.9 44.6C151.2 495 201.7 512 256 512c141.4 0 256-114.6 256-256S397.4 0 256 0C185.3 0 121.3 28.7 75 75zm181 53c-13.3 0-24 10.7-24 24V256c0 6.4 2.5 12.5 7 17l72 72c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-65-65V152c0-13.3-10.7-24-24-24z\"]\n};\nvar faHistory = faClockRotateLeft;\nvar faFaceGrinBeamSweat = {\n prefix: 'fas',\n iconName: 'face-grin-beam-sweat',\n icon: [512, 512, [128517, \"grin-beam-sweat\"], \"f583\", \"M476.8 126.3c-4.1 1.1-8.4 1.7-12.8 1.7c-26.5 0-48-21-48-47c0-5 1.8-11.3 4.6-18.1c.3-.7 .6-1.4 .9-2.1c9-20.2 26.5-44.9 36-57.5c3.2-4.4 9.6-4.4 12.8 0C483.4 20.6 512 61 512 81c0 21.7-14.9 39.8-35.2 45.3zM256 0c51.4 0 99.3 15.2 139.4 41.2c-1.5 3.1-3 6.2-4.3 9.3c-3.4 8-7.1 19-7.1 30.5c0 44.3 36.6 79 80 79c9.6 0 18.8-1.7 27.4-4.8c13.3 30.9 20.6 65 20.6 100.8c0 141.4-114.6 256-256 256S0 397.4 0 256S114.6 0 256 0zM388.1 312.8c-39.7 12.2-84.5 19-131.8 19s-92.1-6.8-131.8-19c-12.3-3.8-24.3 6.9-19.3 18.7c25 59.1 83.2 100.5 151.1 100.5s126.2-41.4 151.1-100.5c5-11.8-7-22.5-19.3-18.7zm-170.5-84l0 0 0 0c2.1 2.8 5.7 3.9 8.9 2.8s5.5-4.1 5.5-7.6c0-17.9-6.7-35.6-16.6-48.8c-9.8-13-23.9-23.2-39.4-23.2s-29.6 10.2-39.4 23.2C126.7 188.4 120 206.1 120 224c0 3.4 2.2 6.5 5.5 7.6s6.9 0 8.9-2.8l0 0 0 0 0 0 .2-.2c.2-.2 .4-.5 .7-.9c.6-.8 1.6-2 2.8-3.4c2.5-2.8 6-6.6 10.2-10.3c8.8-7.8 18.8-14 27.7-14s18.9 6.2 27.7 14c4.2 3.7 7.7 7.5 10.2 10.3c1.2 1.4 2.2 2.6 2.8 3.4c.3 .4 .6 .7 .7 .9l.2 .2 0 0 0 0zm160 0l0 0 0 0 0 0c2.1 2.8 5.7 3.9 8.9 2.8s5.5-4.1 5.5-7.6c0-17.9-6.7-35.6-16.6-48.8c-9.8-13-23.9-23.2-39.4-23.2s-29.6 10.2-39.4 23.2C286.7 188.4 280 206.1 280 224c0 3.4 2.2 6.5 5.5 7.6s6.9 0 8.9-2.8l0 0 0 0 0 0 .2-.2c.2-.2 .4-.5 .7-.9c.6-.8 1.6-2 2.8-3.4c2.5-2.8 6-6.6 10.2-10.3c8.8-7.8 18.8-14 27.7-14s18.9 6.2 27.7 14c4.2 3.7 7.7 7.5 10.2 10.3c1.2 1.4 2.2 2.6 2.8 3.4c.3 .4 .6 .7 .7 .9l.2 .2 0 0z\"]\n};\nvar faGrinBeamSweat = faFaceGrinBeamSweat;\nvar faFileExport = {\n prefix: 'fas',\n iconName: 'file-export',\n icon: [576, 512, [\"arrow-right-from-file\"], \"f56e\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V288H216c-13.3 0-24 10.7-24 24s10.7 24 24 24H384V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zM384 336V288H494.1l-39-39c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l80 80c9.4 9.4 9.4 24.6 0 33.9l-80 80c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l39-39H384zm0-208H256V0L384 128z\"]\n};\nvar faArrowRightFromFile = faFileExport;\nvar faShield = {\n prefix: 'fas',\n iconName: 'shield',\n icon: [512, 512, [128737, \"shield-blank\"], \"f132\", \"M256 0c4.6 0 9.2 1 13.4 2.9L457.7 82.8c22 9.3 38.4 31 38.3 57.2c-.5 99.2-41.3 280.7-213.6 363.2c-16.7 8-36.1 8-52.8 0C57.3 420.7 16.5 239.2 16 140c-.1-26.2 16.3-47.9 38.3-57.2L242.7 2.9C246.8 1 251.4 0 256 0z\"]\n};\nvar faShieldBlank = faShield;\nvar faArrowUpShortWide = {\n prefix: 'fas',\n iconName: 'arrow-up-short-wide',\n icon: [576, 512, [\"sort-amount-up-alt\"], \"f885\", \"M151.6 42.4C145.5 35.8 137 32 128 32s-17.5 3.8-23.6 10.4l-88 96c-11.9 13-11.1 33.3 2 45.2s33.3 11.1 45.2-2L96 146.3V448c0 17.7 14.3 32 32 32s32-14.3 32-32V146.3l32.4 35.4c11.9 13 32.2 13.9 45.2 2s13.9-32.2 2-45.2l-88-96zM320 32c-17.7 0-32 14.3-32 32s14.3 32 32 32h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H320zm0 128c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H320zm0 128c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320zm0 128c-17.7 0-32 14.3-32 32s14.3 32 32 32H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H320z\"]\n};\nvar faSortAmountUpAlt = faArrowUpShortWide;\nvar faHouseMedical = {\n prefix: 'fas',\n iconName: 'house-medical',\n icon: [576, 512, [], \"e3b2\", \"M543.8 287.6c17 0 32-14 32-32.1c1-9-3-17-11-24L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1h32V448c0 35.3 28.7 64 64 64H448.5c35.5 0 64.2-28.8 64-64.3l-.7-160.2h32zM256 208c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v48h48c8.8 0 16 7.2 16 16v32c0 8.8-7.2 16-16 16H320v48c0 8.8-7.2 16-16 16H272c-8.8 0-16-7.2-16-16V320H208c-8.8 0-16-7.2-16-16V272c0-8.8 7.2-16 16-16h48V208z\"]\n};\nvar faGolfBallTee = {\n prefix: 'fas',\n iconName: 'golf-ball-tee',\n icon: [384, 512, [\"golf-ball\"], \"f450\", \"M384 192c0 66.8-34.1 125.6-85.8 160H85.8C34.1 317.6 0 258.8 0 192C0 86 86 0 192 0S384 86 384 192zM242.1 256.6c0 18.5-15 33.5-33.5 33.5c-4.9 0-9.1 5.1-5.4 8.4c5.9 5.2 13.7 8.4 22.1 8.4c18.5 0 33.5-15 33.5-33.5c0-8.5-3.2-16.2-8.4-22.1c-3.3-3.7-8.4 .5-8.4 5.4zm-52.3-49.3c-4.9 0-9.1 5.1-5.4 8.4c5.9 5.2 13.7 8.4 22.1 8.4c18.5 0 33.5-15 33.5-33.5c0-8.5-3.2-16.2-8.4-22.1c-3.3-3.7-8.4 .5-8.4 5.4c0 18.5-15 33.5-33.5 33.5zm113.5-17.5c0 18.5-15 33.5-33.5 33.5c-4.9 0-9.1 5.1-5.4 8.4c5.9 5.2 13.7 8.4 22.1 8.4c18.5 0 33.5-15 33.5-33.5c0-8.5-3.2-16.2-8.4-22.1c-3.3-3.7-8.4 .5-8.4 5.4zM96 416c0-17.7 14.3-32 32-32h64 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H240c-8.8 0-16 7.2-16 16v16c0 17.7-14.3 32-32 32s-32-14.3-32-32V464c0-8.8-7.2-16-16-16H128c-17.7 0-32-14.3-32-32z\"]\n};\nvar faGolfBall = faGolfBallTee;\nvar faCircleChevronLeft = {\n prefix: 'fas',\n iconName: 'circle-chevron-left',\n icon: [512, 512, [\"chevron-circle-left\"], \"f137\", \"M512 256A256 256 0 1 0 0 256a256 256 0 1 0 512 0zM271 135c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-87 87 87 87c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0L167 273c-9.4-9.4-9.4-24.6 0-33.9L271 135z\"]\n};\nvar faChevronCircleLeft = faCircleChevronLeft;\nvar faHouseChimneyWindow = {\n prefix: 'fas',\n iconName: 'house-chimney-window',\n icon: [576, 512, [], \"e00d\", \"M575.8 255.5c0 18-15 32.1-32 32.1h-32l.7 160.2c.2 35.5-28.5 64.3-64 64.3H128.1c-35.3 0-64-28.7-64-64V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L416 100.7V64c0-17.7 14.3-32 32-32h32c17.7 0 32 14.3 32 32V185l52.8 46.4c8 7 12 15 11 24zM248 192c-13.3 0-24 10.7-24 24v80c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24V216c0-13.3-10.7-24-24-24H248z\"]\n};\nvar faPenNib = {\n prefix: 'fas',\n iconName: 'pen-nib',\n icon: [512, 512, [10001], \"f5ad\", \"M368.4 18.3L312.7 74.1 437.9 199.3l55.7-55.7c21.9-21.9 21.9-57.3 0-79.2L447.6 18.3c-21.9-21.9-57.3-21.9-79.2 0zM288 94.6l-9.2 2.8L134.7 140.6c-19.9 6-35.7 21.2-42.3 41L3.8 445.8c-3.8 11.3-1 23.9 7.3 32.4L164.7 324.7c-3-6.3-4.7-13.3-4.7-20.7c0-26.5 21.5-48 48-48s48 21.5 48 48s-21.5 48-48 48c-7.4 0-14.4-1.7-20.7-4.7L33.7 500.9c8.6 8.3 21.1 11.2 32.4 7.3l264.3-88.6c19.7-6.6 35-22.4 41-42.3l43.2-144.1 2.8-9.2L288 94.6z\"]\n};\nvar faTentArrowTurnLeft = {\n prefix: 'fas',\n iconName: 'tent-arrow-turn-left',\n icon: [576, 512, [], \"e580\", \"M120.1 41.8c9.9-8.9 10.7-24 1.8-33.9S97.8-2.7 87.9 6.2l-80 72C2.9 82.7 0 89.2 0 96s2.9 13.3 7.9 17.8l80 72c9.9 8.9 25 8.1 33.9-1.8s8.1-25-1.8-33.9L86.5 120 456 120c39.8 0 72 32.2 72 72v40c0 13.3 10.7 24 24 24s24-10.7 24-24V192c0-66.3-53.7-120-120-120L86.5 72l33.5-30.2zM307.4 166.5c-11.5-8.7-27.3-8.7-38.8 0l-168 128c-6.6 5-11 12.5-12.3 20.7l-24 160c-1.4 9.2 1.3 18.6 7.4 25.6S86.7 512 96 512H240h16c17.7 0 32-14.3 32-32V361.9c0-5.5 4.4-9.9 9.9-9.9c3.7 0 7.2 2.1 8.8 5.5l68.4 136.8c5.4 10.8 16.5 17.7 28.6 17.7H464h16c9.3 0 18.2-4.1 24.2-11.1s8.8-16.4 7.4-25.6l-24-160c-1.2-8.2-5.6-15.7-12.3-20.7l-168-128z\"]\n};\nvar faTents = {\n prefix: 'fas',\n iconName: 'tents',\n icon: [640, 512, [], \"e582\", \"M396.6 6.5L235.8 129.1c9.6 1.8 18.9 5.8 27 12l168 128c13.2 10.1 22 24.9 24.5 41.4l6.2 41.5H608c9.3 0 18.2-4.1 24.2-11.1s8.8-16.4 7.4-25.6l-24-160c-1.2-8.2-5.6-15.7-12.3-20.7l-168-128c-11.5-8.7-27.3-8.7-38.8 0zm-153.2 160c-11.5-8.7-27.3-8.7-38.8 0l-168 128c-6.6 5-11 12.5-12.3 20.7l-24 160c-1.4 9.2 1.3 18.6 7.4 25.6S22.7 512 32 512H176h16c17.7 0 32-14.3 32-32V361.9c0-5.5 4.4-9.9 9.9-9.9c3.7 0 7.2 2.1 8.8 5.5l68.4 136.8c5.4 10.8 16.5 17.7 28.6 17.7H400h16c9.3 0 18.2-4.1 24.2-11.1s8.8-16.4 7.4-25.6l-24-160c-1.2-8.2-5.6-15.7-12.3-20.7l-168-128z\"]\n};\nvar faWandMagic = {\n prefix: 'fas',\n iconName: 'wand-magic',\n icon: [512, 512, [\"magic\"], \"f0d0\", \"M14.1 463.3c-18.7-18.7-18.7-49.1 0-67.9L395.4 14.1c18.7-18.7 49.1-18.7 67.9 0l34.6 34.6c18.7 18.7 18.7 49.1 0 67.9L116.5 497.9c-18.7 18.7-49.1 18.7-67.9 0L14.1 463.3zM347.6 187.6l105-105L429.4 59.3l-105 105 23.3 23.3z\"]\n};\nvar faMagic = faWandMagic;\nvar faDog = {\n prefix: 'fas',\n iconName: 'dog',\n icon: [576, 512, [128021], \"f6d3\", \"M309.6 158.5L332.7 19.8C334.6 8.4 344.5 0 356.1 0c7.5 0 14.5 3.5 19 9.5L392 32h52.1c12.7 0 24.9 5.1 33.9 14.1L496 64h56c13.3 0 24 10.7 24 24v24c0 44.2-35.8 80-80 80H464 448 426.7l-5.1 30.5-112-64zM416 256.1L416 480c0 17.7-14.3 32-32 32H352c-17.7 0-32-14.3-32-32V364.8c-24 12.3-51.2 19.2-80 19.2s-56-6.9-80-19.2V480c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V249.8c-28.8-10.9-51.4-35.3-59.2-66.5L1 167.8c-4.3-17.1 6.1-34.5 23.3-38.8s34.5 6.1 38.8 23.3l3.9 15.5C70.5 182 83.3 192 98 192h30 16H303.8L416 256.1zM464 80a16 16 0 1 0 -32 0 16 16 0 1 0 32 0z\"]\n};\nvar faCarrot = {\n prefix: 'fas',\n iconName: 'carrot',\n icon: [512, 512, [129365], \"f787\", \"M346.7 6C337.6 17 320 42.3 320 72c0 40 15.3 55.3 40 80s40 40 80 40c29.7 0 55-17.6 66-26.7c4-3.3 6-8.2 6-13.3s-2-10-6-13.2c-11.4-9.1-38.3-26.8-74-26.8c-32 0-40 8-40 8s8-8 8-40c0-35.7-17.7-62.6-26.8-74C370 2 365.1 0 360 0s-10 2-13.3 6zM244.6 136c-40 0-77.1 18.1-101.7 48.2l60.5 60.5c6.2 6.2 6.2 16.4 0 22.6s-16.4 6.2-22.6 0l-55.3-55.3 0 .1L2.2 477.9C-2 487-.1 497.8 7 505s17.9 9 27.1 4.8l134.7-62.4-52.1-52.1c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L199.7 433l100.2-46.4c46.4-21.5 76.2-68 76.2-119.2C376 194.8 317.2 136 244.6 136z\"]\n};\nvar faMoon = {\n prefix: 'fas',\n iconName: 'moon',\n icon: [384, 512, [127769, 9214], \"f186\", \"M223.5 32C100 32 0 132.3 0 256S100 480 223.5 480c60.6 0 115.5-24.2 155.8-63.4c5-4.9 6.3-12.5 3.1-18.7s-10.1-9.7-17-8.5c-9.8 1.7-19.8 2.6-30.1 2.6c-96.9 0-175.5-78.8-175.5-176c0-65.8 36-123.1 89.3-153.3c6.1-3.5 9.2-10.5 7.7-17.3s-7.3-11.9-14.3-12.5c-6.3-.5-12.6-.8-19-.8z\"]\n};\nvar faWineGlassEmpty = {\n prefix: 'fas',\n iconName: 'wine-glass-empty',\n icon: [320, 512, [\"wine-glass-alt\"], \"f5ce\", \"M64 0C47.4 0 33.5 12.8 32.1 29.3l-14 168.4c-6 72 42.5 135.2 109.9 150.6V448H80c-17.7 0-32 14.3-32 32s14.3 32 32 32h80 80c17.7 0 32-14.3 32-32s-14.3-32-32-32H192V348.4c67.4-15.4 115.9-78.6 109.9-150.6l-14-168.4C286.5 12.8 272.6 0 256 0H64zM81.9 203.1L93.4 64H226.6l11.6 139.1C242 248.8 205.9 288 160 288s-82-39.2-78.1-84.9z\"]\n};\nvar faWineGlassAlt = faWineGlassEmpty;\nvar faCheese = {\n prefix: 'fas',\n iconName: 'cheese',\n icon: [512, 512, [], \"f7ef\", \"M512 240.2V256H0c0-20 10-38.7 26.6-49.8L274.9 40.7c8.6-5.7 18.6-8.7 28.9-8.7C418.8 32 512 125.2 512 240.2zm0 47.8V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V288H512z\"]\n};\nvar faYinYang = {\n prefix: 'fas',\n iconName: 'yin-yang',\n icon: [512, 512, [9775], \"f6ad\", \"M256 64c53 0 96 43 96 96s-43 96-96 96s-96 43-96 96s43 96 96 96C150 448 64 362 64 256S150 64 256 64zm0 448A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm32-352a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"]\n};\nvar faMusic = {\n prefix: 'fas',\n iconName: 'music',\n icon: [512, 512, [127925], \"f001\", \"M499.1 6.3c8.1 6 12.9 15.6 12.9 25.7v72V368c0 44.2-43 80-96 80s-96-35.8-96-80s43-80 96-80c11.2 0 22 1.6 32 4.6V147L192 223.8V432c0 44.2-43 80-96 80s-96-35.8-96-80s43-80 96-80c11.2 0 22 1.6 32 4.6V200 128c0-14.1 9.3-26.6 22.8-30.7l320-96c9.7-2.9 20.2-1.1 28.3 5z\"]\n};\nvar faCodeCommit = {\n prefix: 'fas',\n iconName: 'code-commit',\n icon: [640, 512, [], \"f386\", \"M320 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160zm156.8-48C462 361 397.4 416 320 416s-142-55-156.8-128H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H163.2C178 151 242.6 96 320 96s142 55 156.8 128H608c17.7 0 32 14.3 32 32s-14.3 32-32 32H476.8z\"]\n};\nvar faTemperatureLow = {\n prefix: 'fas',\n iconName: 'temperature-low',\n icon: [512, 512, [], \"f76b\", \"M448 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM320 96a96 96 0 1 1 192 0A96 96 0 1 1 320 96zM144 64c-26.5 0-48 21.5-48 48V276.5c0 17.3-7.1 31.9-15.3 42.5C70.2 332.6 64 349.5 64 368c0 44.2 35.8 80 80 80s80-35.8 80-80c0-18.5-6.2-35.4-16.7-48.9c-8.2-10.6-15.3-25.2-15.3-42.5V112c0-26.5-21.5-48-48-48zM32 112C32 50.2 82.1 0 144 0s112 50.1 112 112V276.5c0 .1 .1 .3 .2 .6c.2 .6 .8 1.6 1.7 2.8c18.9 24.4 30.1 55 30.1 88.1c0 79.5-64.5 144-144 144S0 447.5 0 368c0-33.2 11.2-63.8 30.1-88.1c.9-1.2 1.5-2.2 1.7-2.8c.1-.3 .2-.5 .2-.6V112zM192 368c0 26.5-21.5 48-48 48s-48-21.5-48-48c0-20.9 13.4-38.7 32-45.3V272c0-8.8 7.2-16 16-16s16 7.2 16 16v50.7c18.6 6.6 32 24.4 32 45.3z\"]\n};\nvar faPersonBiking = {\n prefix: 'fas',\n iconName: 'person-biking',\n icon: [640, 512, [128692, \"biking\"], \"f84a\", \"M400 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm27.2 64l-61.8-48.8c-17.3-13.6-41.7-13.8-59.1-.3l-83.1 64.2c-30.7 23.8-28.5 70.8 4.3 91.6L288 305.1V416c0 17.7 14.3 32 32 32s32-14.3 32-32V288c0-10.7-5.3-20.7-14.2-26.6L295 232.9l60.3-48.5L396 217c5.7 4.5 12.7 7 20 7h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H427.2zM56 384a72 72 0 1 1 144 0A72 72 0 1 1 56 384zm200 0A128 128 0 1 0 0 384a128 128 0 1 0 256 0zm184 0a72 72 0 1 1 144 0 72 72 0 1 1 -144 0zm200 0a128 128 0 1 0 -256 0 128 128 0 1 0 256 0z\"]\n};\nvar faBiking = faPersonBiking;\nvar faBroom = {\n prefix: 'fas',\n iconName: 'broom',\n icon: [576, 512, [129529], \"f51a\", \"M566.6 54.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192-34.7-34.7c-4.2-4.2-10-6.6-16-6.6c-12.5 0-22.6 10.1-22.6 22.6v29.1L364.3 320h29.1c12.5 0 22.6-10.1 22.6-22.6c0-6-2.4-11.8-6.6-16l-34.7-34.7 192-192zM341.1 353.4L222.6 234.9c-42.7-3.7-85.2 11.7-115.8 42.3l-8 8C76.5 307.5 64 337.7 64 369.2c0 6.8 7.1 11.2 13.2 8.2l51.1-25.5c5-2.5 9.5 4.1 5.4 7.9L7.3 473.4C2.7 477.6 0 483.6 0 489.9C0 502.1 9.9 512 22.1 512l173.3 0c38.8 0 75.9-15.4 103.4-42.8c30.6-30.6 45.9-73.1 42.3-115.8z\"]\n};\nvar faShieldHeart = {\n prefix: 'fas',\n iconName: 'shield-heart',\n icon: [512, 512, [], \"e574\", \"M269.4 2.9C265.2 1 260.7 0 256 0s-9.2 1-13.4 2.9L54.3 82.8c-22 9.3-38.4 31-38.3 57.2c.5 99.2 41.3 280.7 213.6 363.2c16.7 8 36.1 8 52.8 0C454.7 420.7 495.5 239.2 496 140c.1-26.2-16.3-47.9-38.3-57.2L269.4 2.9zM144 221.3c0-33.8 27.4-61.3 61.3-61.3c16.2 0 31.8 6.5 43.3 17.9l7.4 7.4 7.4-7.4c11.5-11.5 27.1-17.9 43.3-17.9c33.8 0 61.3 27.4 61.3 61.3c0 16.2-6.5 31.8-17.9 43.3l-82.7 82.7c-6.2 6.2-16.4 6.2-22.6 0l-82.7-82.7c-11.5-11.5-17.9-27.1-17.9-43.3z\"]\n};\nvar faGopuram = {\n prefix: 'fas',\n iconName: 'gopuram',\n icon: [512, 512, [], \"f664\", \"M120 0c13.3 0 24 10.7 24 24v8h40V24c0-13.3 10.7-24 24-24s24 10.7 24 24v8h48V24c0-13.3 10.7-24 24-24s24 10.7 24 24v8h40V24c0-13.3 10.7-24 24-24s24 10.7 24 24v8V64v64c17.7 0 32 14.3 32 32v64c17.7 0 32 14.3 32 32v96c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32H416V352H384V224H352V128H320v96h32V352h32V512H304V464c0-26.5-21.5-48-48-48s-48 21.5-48 48v48H128V352h32V224h32V128H160v96H128V352H96V512H32c-17.7 0-32-14.3-32-32V384c0-17.7 14.3-32 32-32V256c0-17.7 14.3-32 32-32V160c0-17.7 14.3-32 32-32V64 32 24c0-13.3 10.7-24 24-24zM256 272c-17.7 0-32 14.3-32 32v48h64V304c0-17.7-14.3-32-32-32zm-32-80v32h64V192c0-17.7-14.3-32-32-32s-32 14.3-32 32z\"]\n};\nvar faEarthOceania = {\n prefix: 'fas',\n iconName: 'earth-oceania',\n icon: [512, 512, [\"globe-oceania\"], \"e47b\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM208.6 357.3l-39-13.5c-6.5-2.2-13.6-2.3-20.1-.3l-15.3 4.9c-18.5 5.9-38.5-2.4-47.5-19.5l-3.3-6.2c-10.6-20.1-2.3-45 18.2-54.7l35.3-16.8c2.3-1.1 4.4-2.8 5.9-4.8l5.3-7c7.2-9.6 18.6-15.3 30.6-15.3s23.4 5.7 30.6 15.3l4.6 6.1c2 2.6 4.9 4.5 8.1 5.1c7.8 1.6 15.7-1.5 20.4-7.9l10.4-14.2c2-2.8 5.3-4.4 8.7-4.4c4.4 0 8.4 2.7 10 6.8l10.1 25.9c2.8 7.2 6.7 14 11.5 20.2L311 299.8c5.8 7.4 9 16.6 9 26s-3.2 18.6-9 26L299 367.2c-8.3 10.6-21 16.8-34.4 16.8c-8.4 0-16.6-2.4-23.7-7l-25.4-16.4c-2.2-1.4-4.5-2.5-6.9-3.4zm65.2-214.8L296 164.7c10.1 10.1 2.9 27.3-11.3 27.3H254.8c-5.6 0-11.1-1.2-16.2-3.4l-42.8-19c-14.3-6.3-11.9-27.3 3.4-30.3l38.5-7.7c13.1-2.6 26.7 1.5 36.1 10.9zM248 432c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16s-7.2 16-16 16H264c-8.8 0-16-7.2-16-16zM431.2 298.9l8 24c2.8 8.4-1.7 17.4-10.1 20.2s-17.4-1.7-20.2-10.1l-8-24c-2.8-8.4 1.7-17.4 10.1-20.2s17.4 1.7 20.2 10.1zm-19.9 80.4l-32 32c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6l32-32c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z\"]\n};\nvar faGlobeOceania = faEarthOceania;\nvar faSquareXmark = {\n prefix: 'fas',\n iconName: 'square-xmark',\n icon: [448, 512, [10062, \"times-square\", \"xmark-square\"], \"f2d3\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm79 143c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z\"]\n};\nvar faTimesSquare = faSquareXmark;\nvar faXmarkSquare = faSquareXmark;\nvar faHashtag = {\n prefix: 'fas',\n iconName: 'hashtag',\n icon: [448, 512, [62098], \"23\", \"M181.3 32.4c17.4 2.9 29.2 19.4 26.3 36.8L197.8 128h95.1l11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3s29.2 19.4 26.3 36.8L357.8 128H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H347.1L325.8 320H384c17.7 0 32 14.3 32 32s-14.3 32-32 32H315.1l-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8l9.8-58.7H155.1l-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8L90.2 384H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h68.9l21.3-128H64c-17.7 0-32-14.3-32-32s14.3-32 32-32h68.9l11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3zM187.1 192L165.8 320h95.1l21.3-128H187.1z\"]\n};\nvar faUpRightAndDownLeftFromCenter = {\n prefix: 'fas',\n iconName: 'up-right-and-down-left-from-center',\n icon: [512, 512, [\"expand-alt\"], \"f424\", \"M344 0H488c13.3 0 24 10.7 24 24V168c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-87 87c-9.4 9.4-24.6 9.4-33.9 0l-32-32c-9.4-9.4-9.4-24.6 0-33.9l87-87L327 41c-6.9-6.9-8.9-17.2-5.2-26.2S334.3 0 344 0zM168 512H24c-13.3 0-24-10.7-24-24V344c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l39 39 87-87c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8z\"]\n};\nvar faExpandAlt = faUpRightAndDownLeftFromCenter;\nvar faOilCan = {\n prefix: 'fas',\n iconName: 'oil-can',\n icon: [640, 512, [], \"f613\", \"M320 128c17.7 0 32-14.3 32-32s-14.3-32-32-32H192c-17.7 0-32 14.3-32 32s14.3 32 32 32h32v32H144 96 48c-26.5 0-48 21.5-48 48v64.8c0 19 11.2 36.2 28.5 43.9l67.5 30V368c0 26.5 21.5 48 48 48H403.1c18.4 0 35.8-7.9 48-21.7L633.5 187.7c12.3-13.9-.3-35.4-18.4-31.5L448 192l-50.5-25.2c-8.9-4.4-18.7-6.8-28.6-6.8H288V128h32zM96 208v86.1L48 272.8V208H96z\"]\n};\nvar faT = {\n prefix: 'fas',\n iconName: 't',\n icon: [384, 512, [116], \"54\", \"M32 32C14.3 32 0 46.3 0 64S14.3 96 32 96H160V448c0 17.7 14.3 32 32 32s32-14.3 32-32V96H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H192 32z\"]\n};\nvar faHippo = {\n prefix: 'fas',\n iconName: 'hippo',\n icon: [640, 512, [129435], \"f6ed\", \"M407 47c9.4-9.4 24.6-9.4 33.9 0l17.2 17.2c1.9-.1 3.9-.2 5.8-.2h32c11.2 0 21.9 2.3 31.6 6.5L543 55c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L564 101.9c7.6 12.2 12 26.7 12 42.1c0 10.2 7.4 18.8 16.7 23c27.9 12.5 47.3 40.5 47.3 73c0 26.2-12.6 49.4-32 64v32c0 8.8-7.2 16-16 16H560c-8.8 0-16-7.2-16-16V320H480v16c0 8.8-7.2 16-16 16H432c-8.8 0-16-7.2-16-16V318.4c-11.8-2.4-22.7-7.4-32-14.4c-1.5-1.1-2.9-2.3-4.3-3.5c-17-14.7-27.7-36.4-27.7-60.5c0-8.8-7.2-16-16-16s-16 7.2-16 16c0 44.7 26.2 83.2 64 101.2V352c0 17.7 14.3 32 32 32h32v64c0 17.7-14.3 32-32 32H352c-17.7 0-32-14.3-32-32V372c-19.8 7.7-41.4 12-64 12s-44.2-4.3-64-12v76c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V329.1L45.9 369.7c-5.4 12.1-19.6 17.6-31.7 12.2S-3.3 362.4 2.1 350.3L24 300.9c5.3-11.9 8-24.7 8-37.7C32 155.7 117.2 68 223.8 64.1l.2-.1h7.2H256h32c41.7 0 83.4 12.1 117.2 25.7c1.7-1.8 3.5-3.6 5.3-5.2L407 81c-9.4-9.4-9.4-24.6 0-33.9zm73 185a24 24 0 1 0 -48 0 24 24 0 1 0 48 0zm88 24a24 24 0 1 0 0-48 24 24 0 1 0 0 48zM480 144a16 16 0 1 0 -32 0 16 16 0 1 0 32 0zm48 16a16 16 0 1 0 0-32 16 16 0 1 0 0 32z\"]\n};\nvar faChartColumn = {\n prefix: 'fas',\n iconName: 'chart-column',\n icon: [512, 512, [], \"e0e3\", \"M32 32c17.7 0 32 14.3 32 32V400c0 8.8 7.2 16 16 16H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H80c-44.2 0-80-35.8-80-80V64C0 46.3 14.3 32 32 32zM160 224c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V256c0-17.7 14.3-32 32-32zm128-64V320c0 17.7-14.3 32-32 32s-32-14.3-32-32V160c0-17.7 14.3-32 32-32s32 14.3 32 32zm64 32c17.7 0 32 14.3 32 32v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V224c0-17.7 14.3-32 32-32zM480 96V320c0 17.7-14.3 32-32 32s-32-14.3-32-32V96c0-17.7 14.3-32 32-32s32 14.3 32 32z\"]\n};\nvar faInfinity = {\n prefix: 'fas',\n iconName: 'infinity',\n icon: [640, 512, [8734, 9854], \"f534\", \"M0 241.1C0 161 65 96 145.1 96c38.5 0 75.4 15.3 102.6 42.5L320 210.7l72.2-72.2C419.5 111.3 456.4 96 494.9 96C575 96 640 161 640 241.1v29.7C640 351 575 416 494.9 416c-38.5 0-75.4-15.3-102.6-42.5L320 301.3l-72.2 72.2C220.5 400.7 183.6 416 145.1 416C65 416 0 351 0 270.9V241.1zM274.7 256l-72.2-72.2c-15.2-15.2-35.9-23.8-57.4-23.8C100.3 160 64 196.3 64 241.1v29.7c0 44.8 36.3 81.1 81.1 81.1c21.5 0 42.2-8.5 57.4-23.8L274.7 256zm90.5 0l72.2 72.2c15.2 15.2 35.9 23.8 57.4 23.8c44.8 0 81.1-36.3 81.1-81.1V241.1c0-44.8-36.3-81.1-81.1-81.1c-21.5 0-42.2 8.5-57.4 23.8L365.3 256z\"]\n};\nvar faVialCircleCheck = {\n prefix: 'fas',\n iconName: 'vial-circle-check',\n icon: [512, 512, [], \"e596\", \"M0 64C0 46.3 14.3 32 32 32H96h64 64c17.7 0 32 14.3 32 32s-14.3 32-32 32V266.8c-20.2 28.6-32 63.5-32 101.2c0 25.2 5.3 49.1 14.8 70.8C189.5 463.7 160.6 480 128 480c-53 0-96-43-96-96V96C14.3 96 0 81.7 0 64zM96 96v96h64V96H96zM224 368a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm211.3-43.3c-6.2-6.2-16.4-6.2-22.6 0L352 385.4l-28.7-28.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l40 40c6.2 6.2 16.4 6.2 22.6 0l72-72c6.2-6.2 6.2-16.4 0-22.6z\"]\n};\nvar faPersonArrowDownToLine = {\n prefix: 'fas',\n iconName: 'person-arrow-down-to-line',\n icon: [640, 512, [], \"e538\", \"M192 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm-8 352V352h16v96H184zm-64 0H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H152h80H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H264V256.9l28.6 47.5c9.1 15.1 28.8 20 43.9 10.9s20-28.8 10.9-43.9l-58.3-97c-17.4-28.9-48.6-46.6-82.3-46.6H177.1c-33.7 0-64.9 17.7-82.3 46.6l-58.3 97c-9.1 15.1-4.2 34.8 10.9 43.9s34.8 4.2 43.9-10.9L120 256.9V448zM464 64V306.7l-25.4-25.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l80 80c12.5 12.5 32.8 12.5 45.3 0l80-80c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L528 306.7V64c0-17.7-14.3-32-32-32s-32 14.3-32 32z\"]\n};\nvar faVoicemail = {\n prefix: 'fas',\n iconName: 'voicemail',\n icon: [640, 512, [], \"f897\", \"M144 320a80 80 0 1 1 0-160 80 80 0 1 1 0 160zm119.8 0c15.3-22.9 24.2-50.4 24.2-80c0-79.5-64.5-144-144-144S0 160.5 0 240s64.5 144 144 144H496c79.5 0 144-64.5 144-144s-64.5-144-144-144s-144 64.5-144 144c0 29.6 8.9 57.1 24.2 80H263.8zM496 160a80 80 0 1 1 0 160 80 80 0 1 1 0-160z\"]\n};\nvar faFan = {\n prefix: 'fas',\n iconName: 'fan',\n icon: [512, 512, [], \"f863\", \"M258.6 0c-1.7 0-3.4 .1-5.1 .5C168 17 115.6 102.3 130.5 189.3c2.9 17 8.4 32.9 15.9 47.4L32 224H29.4C13.2 224 0 237.2 0 253.4c0 1.7 .1 3.4 .5 5.1C17 344 102.3 396.4 189.3 381.5c17-2.9 32.9-8.4 47.4-15.9L224 480v2.6c0 16.2 13.2 29.4 29.4 29.4c1.7 0 3.4-.1 5.1-.5C344 495 396.4 409.7 381.5 322.7c-2.9-17-8.4-32.9-15.9-47.4L480 288h2.6c16.2 0 29.4-13.2 29.4-29.4c0-1.7-.1-3.4-.5-5.1C495 168 409.7 115.6 322.7 130.5c-17 2.9-32.9 8.4-47.4 15.9L288 32V29.4C288 13.2 274.8 0 258.6 0zM256 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faPersonWalkingLuggage = {\n prefix: 'fas',\n iconName: 'person-walking-luggage',\n icon: [576, 512, [], \"e554\", \"M432 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM347.7 200.5c1-.4 1.9-.8 2.9-1.2l-16.9 63.5c-5.6 21.1-.1 43.6 14.7 59.7l70.7 77.1 22 88.1c4.3 17.1 21.7 27.6 38.8 23.3s27.6-21.7 23.3-38.8l-23-92.1c-1.9-7.8-5.8-14.9-11.2-20.8l-49.5-54 19.3-65.5 9.6 23c4.4 10.6 12.5 19.3 22.8 24.5l26.7 13.3c15.8 7.9 35 1.5 42.9-14.3s1.5-35-14.3-42.9L505 232.7l-15.3-36.8C472.5 154.8 432.3 128 387.7 128c-22.8 0-45.3 4.8-66.1 14l-8 3.5c-32.9 14.6-58.1 42.4-69.4 76.5l-2.6 7.8c-5.6 16.8 3.5 34.9 20.2 40.5s34.9-3.5 40.5-20.2l2.6-7.8c5.7-17.1 18.3-30.9 34.7-38.2l8-3.5zm-30 135.1l-25 62.4-59.4 59.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L340.3 441c4.6-4.6 8.2-10.1 10.6-16.1l14.5-36.2-40.7-44.4c-2.5-2.7-4.8-5.6-7-8.6zM256 274.1c-7.7-4.4-17.4-1.8-21.9 5.9l-32 55.4L147.7 304c-15.3-8.8-34.9-3.6-43.7 11.7L40 426.6c-8.8 15.3-3.6 34.9 11.7 43.7l55.4 32c15.3 8.8 34.9 3.6 43.7-11.7l64-110.9c1.5-2.6 2.6-5.2 3.3-8L261.9 296c4.4-7.7 1.8-17.4-5.9-21.9z\"]\n};\nvar faUpDown = {\n prefix: 'fas',\n iconName: 'up-down',\n icon: [256, 512, [8597, 11021, \"arrows-alt-v\"], \"f338\", \"M145.6 7.7C141 2.8 134.7 0 128 0s-13 2.8-17.6 7.7l-104 112c-6.5 7-8.2 17.2-4.4 25.9S14.5 160 24 160H80V352H24c-9.5 0-18.2 5.7-22 14.4s-2.1 18.9 4.4 25.9l104 112c4.5 4.9 10.9 7.7 17.6 7.7s13-2.8 17.6-7.7l104-112c6.5-7 8.2-17.2 4.4-25.9s-12.5-14.4-22-14.4H176V160h56c9.5 0 18.2-5.7 22-14.4s2.1-18.9-4.4-25.9l-104-112z\"]\n};\nvar faArrowsAltV = faUpDown;\nvar faCloudMoonRain = {\n prefix: 'fas',\n iconName: 'cloud-moon-rain',\n icon: [576, 512, [], \"f73c\", \"M481.2 0C417 0 363.5 46.5 353.7 107.6c35.4 17.6 60.2 53.3 62.1 95.1c23.2 11 42 29.7 53.1 52.7c4 .4 8.1 .6 12.3 .6c34.9 0 66.7-13.8 89.9-36.1c5.1-4.9 6.4-12.5 3.2-18.7s-10.1-9.7-17-8.6c-4.9 .8-10 1.3-15.2 1.3c-49 0-88.4-39.3-88.4-87.4c0-32.6 18-61.1 44.9-76.1c6.1-3.4 9.3-10.5 7.8-17.4s-7.3-12-14.3-12.6c-3.6-.3-7.3-.5-10.9-.5zM367.9 383.9c44.2 0 80-35.8 80-80c0-39.3-28.4-72.1-65.8-78.7c1.2-5.6 1.9-11.3 1.9-17.2c0-44.2-35.8-80-80-80c-17 0-32.8 5.3-45.8 14.4C241.3 114.6 210.8 96 176 96c-53 0-96 43-96 96l0 1.3c-45.4 7.6-80 47.1-80 94.6c0 53 43 96 96 96H367.9zM85.4 420.1c-11-7.4-25.9-4.4-33.3 6.7l-32 48c-7.4 11-4.4 25.9 6.7 33.3s25.9 4.4 33.3-6.7l32-48c7.4-11 4.4-25.9-6.7-33.3zm96 0c-11-7.4-25.9-4.4-33.3 6.7l-32 48c-7.4 11-4.4 25.9 6.7 33.3s25.9 4.4 33.3-6.7l32-48c7.4-11 4.4-25.9-6.7-33.3zm96 0c-11-7.4-25.9-4.4-33.3 6.7l-32 48c-7.4 11-4.4 25.9 6.7 33.3s25.9 4.4 33.3-6.7l32-48c7.4-11 4.4-25.9-6.7-33.3zm96 0c-11-7.4-25.9-4.4-33.3 6.7l-32 48c-7.4 11-4.4 25.9 6.7 33.3s25.9 4.4 33.3-6.7l32-48c7.4-11 4.4-25.9-6.7-33.3z\"]\n};\nvar faCalendar = {\n prefix: 'fas',\n iconName: 'calendar',\n icon: [448, 512, [128197, 128198], \"f133\", \"M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192z\"]\n};\nvar faTrailer = {\n prefix: 'fas',\n iconName: 'trailer',\n icon: [640, 512, [], \"e041\", \"M48 32C21.5 32 0 53.5 0 80V336c0 26.5 21.5 48 48 48H65.1c7.8-54.3 54.4-96 110.9-96s103.1 41.7 110.9 96H488h8H608c17.7 0 32-14.3 32-32s-14.3-32-32-32H544V80c0-26.5-21.5-48-48-48H48zM80 96c8.8 0 16 7.2 16 16l0 131.2c-11.4 5.9-22.2 12.9-32 21V112c0-8.8 7.2-16 16-16zm96 128c-5.4 0-10.7 .2-16 .7L160 112c0-8.8 7.2-16 16-16s16 7.2 16 16l0 112.7c-5.3-.5-10.6-.7-16-.7zm80 19.2L256 112c0-8.8 7.2-16 16-16s16 7.2 16 16l0 152.2c-9.8-8.1-20.6-15.2-32-21zM368 96c8.8 0 16 7.2 16 16l0 192c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-192c0-8.8 7.2-16 16-16zm112 16l0 192c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-192c0-8.8 7.2-16 16-16s16 7.2 16 16zM176 480a80 80 0 1 0 0-160 80 80 0 1 0 0 160zm0-112a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faBahai = {\n prefix: 'fas',\n iconName: 'bahai',\n icon: [576, 512, [\"haykal\"], \"f666\", \"M288 0c14.5 0 27.2 9.7 30.9 23.8l23.9 89.6 75.9-53.3c11.9-8.3 27.8-7.6 39 1.7s14.6 24.9 8.4 38.1l-39.3 84 92.4 8c14.4 1.2 26.2 12 28.8 26.3s-4.9 28.5-18 34.6l-84.1 39.1 65.7 65.5c10.3 10.2 12.4 26.1 5.1 38.7s-22 18.7-36 14.9L391 386.8l8.2 92.4c1.3 14.4-7.3 27.9-20.9 32.9s-28.9 .1-37.2-11.7l-53.1-76-53.1 76c-8.3 11.9-23.6 16.7-37.2 11.7s-22.2-18.5-20.9-32.9l8.2-92.4L95.4 410.9c-14 3.8-28.8-2.3-36-14.9s-5.2-28.4 5.1-38.7l65.7-65.5L46 252.7c-13.1-6.1-20.5-20.3-18-34.6s14.3-25.1 28.8-26.3l92.4-8-39.3-84c-6.1-13.1-2.7-28.8 8.4-38.1s27.1-10 39-1.7l75.9 53.3 23.9-89.6C260.8 9.7 273.5 0 288 0zm0 156.2l-4.8 18c-2.7 10.1-10.2 18.2-20 21.8s-20.8 2.1-29.3-3.9l-15.2-10.7 7.9 16.8c4.4 9.5 4 20.5-1.3 29.6s-14.5 15-25 15.9l-18.5 1.6 16.8 7.8c9.5 4.4 16.2 13.2 18 23.5s-1.5 20.8-8.9 28.2l-13.2 13.1 17.9-4.8c10.1-2.7 20.9-.3 28.9 6.4s12.2 16.9 11.3 27.3l-1.6 18.5 10.6-15.2c6-8.6 15.8-13.7 26.2-13.7s20.2 5.1 26.2 13.7l10.6 15.2-1.6-18.5c-.9-10.4 3.3-20.6 11.3-27.3s18.8-9.1 28.9-6.4l17.9 4.8-13.2-13.1c-7.4-7.4-10.7-17.9-8.9-28.2s8.5-19.1 18-23.5l16.8-7.8-18.5-1.6c-10.4-.9-19.7-6.8-25-15.9s-5.7-20.1-1.3-29.6l7.9-16.8-15.2 10.7c-8.6 6-19.5 7.5-29.3 3.9s-17.3-11.7-20-21.8l-4.8-18z\"]\n};\nvar faHaykal = faBahai;\nvar faSdCard = {\n prefix: 'fas',\n iconName: 'sd-card',\n icon: [384, 512, [], \"f7c2\", \"M320 0H141.3C124.3 0 108 6.7 96 18.7L18.7 96C6.7 108 0 124.3 0 141.3V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zM160 88v48c0 13.3-10.7 24-24 24s-24-10.7-24-24V88c0-13.3 10.7-24 24-24s24 10.7 24 24zm80 0v48c0 13.3-10.7 24-24 24s-24-10.7-24-24V88c0-13.3 10.7-24 24-24s24 10.7 24 24zm80 0v48c0 13.3-10.7 24-24 24s-24-10.7-24-24V88c0-13.3 10.7-24 24-24s24 10.7 24 24z\"]\n};\nvar faDragon = {\n prefix: 'fas',\n iconName: 'dragon',\n icon: [640, 512, [128009], \"f6d5\", \"M352 124.5l-51.9-13c-6.5-1.6-11.3-7.1-12-13.8s2.8-13.1 8.7-16.1l40.8-20.4L294.4 28.8c-5.5-4.1-7.8-11.3-5.6-17.9S297.1 0 304 0H416h32 16c30.2 0 58.7 14.2 76.8 38.4l57.6 76.8c6.2 8.3 9.6 18.4 9.6 28.8c0 26.5-21.5 48-48 48H538.5c-17 0-33.3-6.7-45.3-18.7L480 160H448v21.5c0 24.8 12.8 47.9 33.8 61.1l106.6 66.6c32.1 20.1 51.6 55.2 51.6 93.1C640 462.9 590.9 512 530.2 512H496 432 32.3c-3.3 0-6.6-.4-9.6-1.4C13.5 507.8 6 501 2.4 492.1C1 488.7 .2 485.2 0 481.4c-.2-3.7 .3-7.3 1.3-10.7c2.8-9.2 9.6-16.7 18.6-20.4c3-1.2 6.2-2 9.5-2.2L433.3 412c8.3-.7 14.7-7.7 14.7-16.1c0-4.3-1.7-8.4-4.7-11.4l-44.4-44.4c-30-30-46.9-70.7-46.9-113.1V181.5v-57zM512 72.3c0-.1 0-.2 0-.3s0-.2 0-.3v.6zm-1.3 7.4L464.3 68.1c-.2 1.3-.3 2.6-.3 3.9c0 13.3 10.7 24 24 24c10.6 0 19.5-6.8 22.7-16.3zM130.9 116.5c16.3-14.5 40.4-16.2 58.5-4.1l130.6 87V227c0 32.8 8.4 64.8 24 93H112c-6.7 0-12.7-4.2-15-10.4s-.5-13.3 4.6-17.7L171 232.3 18.4 255.8c-7 1.1-13.9-2.6-16.9-9s-1.5-14.1 3.8-18.8L130.9 116.5z\"]\n};\nvar faShoePrints = {\n prefix: 'fas',\n iconName: 'shoe-prints',\n icon: [640, 512, [], \"f54b\", \"M416 0C352.3 0 256 32 256 32V160c48 0 76 16 104 32s56 32 104 32c56.4 0 176-16 176-96S512 0 416 0zM128 96c0 35.3 28.7 64 64 64h32V32H192c-35.3 0-64 28.7-64 64zM288 512c96 0 224-48 224-128s-119.6-96-176-96c-48 0-76 16-104 32s-56 32-104 32V480s96.3 32 160 32zM0 416c0 35.3 28.7 64 64 64H96V352H64c-35.3 0-64 28.7-64 64z\"]\n};\nvar faCirclePlus = {\n prefix: 'fas',\n iconName: 'circle-plus',\n icon: [512, 512, [\"plus-circle\"], \"f055\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM232 344V280H168c-13.3 0-24-10.7-24-24s10.7-24 24-24h64V168c0-13.3 10.7-24 24-24s24 10.7 24 24v64h64c13.3 0 24 10.7 24 24s-10.7 24-24 24H280v64c0 13.3-10.7 24-24 24s-24-10.7-24-24z\"]\n};\nvar faPlusCircle = faCirclePlus;\nvar faFaceGrinTongueWink = {\n prefix: 'fas',\n iconName: 'face-grin-tongue-wink',\n icon: [512, 512, [128540, \"grin-tongue-wink\"], \"f58b\", \"M174.5 498.8C73.1 464.7 0 368.9 0 256C0 114.6 114.6 0 256 0S512 114.6 512 256c0 112.9-73.1 208.7-174.5 242.8C346.7 484 352 466.6 352 448V401.1c24.3-17.5 43.6-41.6 55.4-69.6c5-11.8-7-22.5-19.3-18.7c-39.7 12.2-84.5 19-131.8 19s-92.1-6.8-131.8-19c-12.3-3.8-24.3 6.9-19.3 18.7c11.7 27.8 30.8 51.7 54.8 69.2V448c0 18.6 5.3 36 14.5 50.8zm20.7-265.2c5.3 7.1 15.3 8.5 22.4 3.2s8.5-15.3 3.2-22.4c-30.4-40.5-91.2-40.5-121.6 0c-5.3 7.1-3.9 17.1 3.2 22.4s17.1 3.9 22.4-3.2c17.6-23.5 52.8-23.5 70.4 0zM336 272a64 64 0 1 0 0-128 64 64 0 1 0 0 128zM320 402.6V448c0 35.3-28.7 64-64 64s-64-28.7-64-64V402.6c0-14.7 11.9-26.6 26.6-26.6h2c11.3 0 21.1 7.9 23.6 18.9c2.8 12.6 20.8 12.6 23.6 0c2.5-11.1 12.3-18.9 23.6-18.9h2c14.7 0 26.6 11.9 26.6 26.6zM336 184a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faGrinTongueWink = faFaceGrinTongueWink;\nvar faHandHolding = {\n prefix: 'fas',\n iconName: 'hand-holding',\n icon: [576, 512, [], \"f4bd\", \"M559.7 392.2c17.8-13.1 21.6-38.1 8.5-55.9s-38.1-21.6-55.9-8.5L392.6 416H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h16 64c17.7 0 32-14.3 32-32s-14.3-32-32-32H288 272 193.7c-29.1 0-57.3 9.9-80 28L68.8 384H32c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32H192 352.5c29 0 57.3-9.3 80.7-26.5l126.6-93.3zm-366.1-8.3a.5 .5 0 1 1 -.9 .2 .5 .5 0 1 1 .9-.2z\"]\n};\nvar faPlugCircleExclamation = {\n prefix: 'fas',\n iconName: 'plug-circle-exclamation',\n icon: [576, 512, [], \"e55d\", \"M96 0C78.3 0 64 14.3 64 32v96h64V32c0-17.7-14.3-32-32-32zM288 0c-17.7 0-32 14.3-32 32v96h64V32c0-17.7-14.3-32-32-32zM32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32v32c0 77.4 55 142 128 156.8V480c0 17.7 14.3 32 32 32s32-14.3 32-32V412.8c12.3-2.5 24.1-6.4 35.1-11.5c-2.1-10.8-3.1-21.9-3.1-33.3c0-80.3 53.8-148 127.3-169.2c.5-2.2 .7-4.5 .7-6.8c0-17.7-14.3-32-32-32H32zM432 512a144 144 0 1 0 0-288 144 144 0 1 0 0 288zm0-96a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm0-144c8.8 0 16 7.2 16 16v80c0 8.8-7.2 16-16 16s-16-7.2-16-16V288c0-8.8 7.2-16 16-16z\"]\n};\nvar faLinkSlash = {\n prefix: 'fas',\n iconName: 'link-slash',\n icon: [640, 512, [\"chain-broken\", \"chain-slash\", \"unlink\"], \"f127\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L489.3 358.2l90.5-90.5c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114l-96 96-31.9-25C430.9 239.6 420.1 175.1 377 132c-52.2-52.3-134.5-56.2-191.3-11.7L38.8 5.1zM239 162c30.1-14.9 67.7-9.9 92.8 15.3c20 20 27.5 48.3 21.7 74.5L239 162zM116.6 187.9L60.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C74 372 74 321 105.5 289.5l61.8-61.8-50.6-39.9zM220.9 270c-2.1 39.8 12.2 80.1 42.2 110c38.9 38.9 94.4 51 143.6 36.3L220.9 270z\"]\n};\nvar faChainBroken = faLinkSlash;\nvar faChainSlash = faLinkSlash;\nvar faUnlink = faLinkSlash;\nvar faClone = {\n prefix: 'fas',\n iconName: 'clone',\n icon: [512, 512, [], \"f24d\", \"M288 448H64V224h64V160H64c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H288c35.3 0 64-28.7 64-64V384H288v64zm-64-96H448c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H224c-35.3 0-64 28.7-64 64V288c0 35.3 28.7 64 64 64z\"]\n};\nvar faPersonWalkingArrowLoopLeft = {\n prefix: 'fas',\n iconName: 'person-walking-arrow-loop-left',\n icon: [640, 512, [], \"e551\", \"M208 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM123.7 200.5c1-.4 1.9-.8 2.9-1.2l-16.9 63.5c-5.6 21.1-.1 43.6 14.7 59.7l70.7 77.1 22 88.1c4.3 17.1 21.7 27.6 38.8 23.3s27.6-21.7 23.3-38.8l-23-92.1c-1.9-7.8-5.8-14.9-11.2-20.8l-49.5-54 19.3-65.5 9.6 23c4.4 10.6 12.5 19.3 22.8 24.5l26.7 13.3c15.8 7.9 35 1.5 42.9-14.3s1.5-35-14.3-42.9L281 232.7l-15.3-36.8C248.5 154.8 208.3 128 163.7 128c-22.8 0-45.3 4.8-66.1 14l-8 3.5c-32.9 14.6-58.1 42.4-69.4 76.5l-2.6 7.8c-5.6 16.8 3.5 34.9 20.2 40.5s34.9-3.5 40.5-20.2l2.6-7.8c5.7-17.1 18.3-30.9 34.7-38.2l8-3.5zm-30 135.1L68.7 398 9.4 457.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L116.3 441c4.6-4.6 8.2-10.1 10.6-16.1l14.5-36.2-40.7-44.4c-2.5-2.7-4.8-5.6-7-8.6zm347.7 119c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L461.3 384H480c88.4 0 160-71.6 160-160s-71.6-160-160-160L352 64c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c53 0 96 43 96 96s-43 96-96 96H461.3l25.4-25.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-80 80c-12.5 12.5-12.5 32.8 0 45.3l80 80z\"]\n};\nvar faArrowUpZA = {\n prefix: 'fas',\n iconName: 'arrow-up-z-a',\n icon: [576, 512, [\"sort-alpha-up-alt\"], \"f882\", \"M183.6 42.4C177.5 35.8 169 32 160 32s-17.5 3.8-23.6 10.4l-88 96c-11.9 13-11.1 33.3 2 45.2s33.3 11.1 45.2-2L128 146.3V448c0 17.7 14.3 32 32 32s32-14.3 32-32V146.3l32.4 35.4c11.9 13 32.2 13.9 45.2 2s13.9-32.2 2-45.2l-88-96zM320 64c0 17.7 14.3 32 32 32h50.7l-73.4 73.4c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H429.3l73.4-73.4c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8H352c-17.7 0-32 14.3-32 32zm96 192c-12.1 0-23.2 6.8-28.6 17.7l-64 128-16 32c-7.9 15.8-1.5 35 14.3 42.9s35 1.5 42.9-14.3l7.2-14.3h88.4l7.2 14.3c7.9 15.8 27.1 22.2 42.9 14.3s22.2-27.1 14.3-42.9l-16-32-64-128C439.2 262.8 428.1 256 416 256zM395.8 400L416 359.6 436.2 400H395.8z\"]\n};\nvar faSortAlphaUpAlt = faArrowUpZA;\nvar faFireFlameCurved = {\n prefix: 'fas',\n iconName: 'fire-flame-curved',\n icon: [384, 512, [\"fire-alt\"], \"f7e4\", \"M153.6 29.9l16-21.3C173.6 3.2 180 0 186.7 0C198.4 0 208 9.6 208 21.3V43.5c0 13.1 5.4 25.7 14.9 34.7L307.6 159C356.4 205.6 384 270.2 384 337.7C384 434 306 512 209.7 512H192C86 512 0 426 0 320v-3.8c0-48.8 19.4-95.6 53.9-130.1l3.5-3.5c4.2-4.2 10-6.6 16-6.6C85.9 176 96 186.1 96 198.6V288c0 35.3 28.7 64 64 64s64-28.7 64-64v-3.9c0-18-7.2-35.3-19.9-48l-38.6-38.6c-24-24-37.5-56.7-37.5-90.7c0-27.7 9-54.8 25.6-76.9z\"]\n};\nvar faFireAlt = faFireFlameCurved;\nvar faTornado = {\n prefix: 'fas',\n iconName: 'tornado',\n icon: [448, 512, [127786], \"f76f\", \"M0 32V45.6C0 62.7 1.7 79.6 5 96H357.8c3.2-6.9 7.5-13.3 13-18.8l38.6-38.6c4.2-4.2 6.6-10 6.6-16C416 10.1 405.9 0 393.4 0H32C14.3 0 0 14.3 0 32zm352.2 96H13.6c12.2 35.9 32.3 68.7 58.8 96H412l-47.2-62.9c-7.3-9.7-11.6-21.2-12.6-33.1zm-226 138.2l116.4 68.5c8.2 4.8 15.8 10.7 22.5 17.3H445c2-9.8 3-19.9 3-30.1c0-23-5.3-45.5-15.3-65.9H110.2c5.2 3.6 10.5 7 16 10.2zM288 384c10.3 21.4 13.8 45.5 9.9 69l-5.9 35.7c-2 12.2 7.4 23.4 19.8 23.4c5.3 0 10.4-2.1 14.2-5.9l78.2-78.2c12.8-12.8 23.1-27.7 30.4-43.9H288z\"]\n};\nvar faFileCirclePlus = {\n prefix: 'fas',\n iconName: 'file-circle-plus',\n icon: [576, 512, [58606], \"e494\", \"M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384v38.6C310.1 219.5 256 287.4 256 368c0 59.1 29.1 111.3 73.7 143.3c-3.2 .5-6.4 .7-9.7 .7H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128zm48 96a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm16 80c0-8.8-7.2-16-16-16s-16 7.2-16 16v48H368c-8.8 0-16 7.2-16 16s7.2 16 16 16h48v48c0 8.8 7.2 16 16 16s16-7.2 16-16V384h48c8.8 0 16-7.2 16-16s-7.2-16-16-16H448V304z\"]\n};\nvar faBookQuran = {\n prefix: 'fas',\n iconName: 'book-quran',\n icon: [448, 512, [\"quran\"], \"f687\", \"M352 0c53 0 96 43 96 96V416c0 53-43 96-96 96H64 32c-17.7 0-32-14.3-32-32s14.3-32 32-32V384c-17.7 0-32-14.3-32-32V32C0 14.3 14.3 0 32 0H64 352zm0 384H96v64H352c17.7 0 32-14.3 32-32s-14.3-32-32-32zM274.1 150.2l-8.9 21.4-23.1 1.9c-5.7 .5-8 7.5-3.7 11.2L256 199.8l-5.4 22.6c-1.3 5.5 4.7 9.9 9.6 6.9L280 217.2l19.8 12.1c4.9 3 10.9-1.4 9.6-6.9L304 199.8l17.6-15.1c4.3-3.7 2-10.8-3.7-11.2l-23.1-1.9-8.9-21.4c-2.2-5.3-9.6-5.3-11.8 0zM96 192c0 70.7 57.3 128 128 128c25.6 0 49.5-7.5 69.5-20.5c3.2-2.1 4.5-6.2 3.1-9.7s-5.2-5.6-9-4.8c-6.1 1.2-12.5 1.9-19 1.9c-52.4 0-94.9-42.5-94.9-94.9s42.5-94.9 94.9-94.9c6.5 0 12.8 .7 19 1.9c3.8 .8 7.5-1.3 9-4.8s.2-7.6-3.1-9.7C273.5 71.5 249.6 64 224 64C153.3 64 96 121.3 96 192z\"]\n};\nvar faQuran = faBookQuran;\nvar faAnchor = {\n prefix: 'fas',\n iconName: 'anchor',\n icon: [576, 512, [9875], \"f13d\", \"M320 96a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm21.1 80C367 158.8 384 129.4 384 96c0-53-43-96-96-96s-96 43-96 96c0 33.4 17 62.8 42.9 80H224c-17.7 0-32 14.3-32 32s14.3 32 32 32h32V448H208c-53 0-96-43-96-96v-6.1l7 7c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L97 263c-9.4-9.4-24.6-9.4-33.9 0L7 319c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l7-7V352c0 88.4 71.6 160 160 160h80 80c88.4 0 160-71.6 160-160v-6.1l7 7c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-56-56c-9.4-9.4-24.6-9.4-33.9 0l-56 56c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l7-7V352c0 53-43 96-96 96H320V240h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H341.1z\"]\n};\nvar faBorderAll = {\n prefix: 'fas',\n iconName: 'border-all',\n icon: [448, 512, [], \"f84c\", \"M384 96V224H256V96H384zm0 192V416H256V288H384zM192 224H64V96H192V224zM64 288H192V416H64V288zM64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z\"]\n};\nvar faFaceAngry = {\n prefix: 'fas',\n iconName: 'face-angry',\n icon: [512, 512, [128544, \"angry\"], \"f556\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM338.7 395.9c6.6-5.9 7.1-16 1.2-22.6C323.8 355.4 295.7 336 256 336s-67.8 19.4-83.9 37.3c-5.9 6.6-5.4 16.7 1.2 22.6s16.7 5.4 22.6-1.2c11.7-13 31.6-26.7 60.1-26.7s48.4 13.7 60.1 26.7c5.9 6.6 16 7.1 22.6 1.2zM176.4 272c17.7 0 32-14.3 32-32c0-1.5-.1-3-.3-4.4l10.9 3.6c8.4 2.8 17.4-1.7 20.2-10.1s-1.7-17.4-10.1-20.2l-96-32c-8.4-2.8-17.4 1.7-20.2 10.1s1.7 17.4 10.1 20.2l30.7 10.2c-5.8 5.8-9.3 13.8-9.3 22.6c0 17.7 14.3 32 32 32zm192-32c0-8.9-3.6-17-9.5-22.8l30.2-10.1c8.4-2.8 12.9-11.9 10.1-20.2s-11.9-12.9-20.2-10.1l-96 32c-8.4 2.8-12.9 11.9-10.1 20.2s11.9 12.9 20.2 10.1l11.7-3.9c-.2 1.5-.3 3.1-.3 4.7c0 17.7 14.3 32 32 32s32-14.3 32-32z\"]\n};\nvar faAngry = faFaceAngry;\nvar faCookieBite = {\n prefix: 'fas',\n iconName: 'cookie-bite',\n icon: [512, 512, [], \"f564\", \"M257.5 27.6c-.8-5.4-4.9-9.8-10.3-10.6v0c-22.1-3.1-44.6 .9-64.4 11.4l-74 39.5C89.1 78.4 73.2 94.9 63.4 115L26.7 190.6c-9.8 20.1-13 42.9-9.1 64.9l14.5 82.8c3.9 22.1 14.6 42.3 30.7 57.9l60.3 58.4c16.1 15.6 36.6 25.6 58.7 28.7l83 11.7c22.1 3.1 44.6-.9 64.4-11.4l74-39.5c19.7-10.5 35.6-27 45.4-47.2l36.7-75.5c9.8-20.1 13-42.9 9.1-64.9v0c-.9-5.3-5.3-9.3-10.6-10.1c-51.5-8.2-92.8-47.1-104.5-97.4c-1.8-7.6-8-13.4-15.7-14.6c-54.6-8.7-97.7-52-106.2-106.8zM208 144a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM144 336a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm224-64a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faArrowTrendDown = {\n prefix: 'fas',\n iconName: 'arrow-trend-down',\n icon: [576, 512, [], \"e097\", \"M384 352c-17.7 0-32 14.3-32 32s14.3 32 32 32H544c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32s-32 14.3-32 32v82.7L342.6 137.4c-12.5-12.5-32.8-12.5-45.3 0L192 242.7 54.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0L320 205.3 466.7 352H384z\"]\n};\nvar faRss = {\n prefix: 'fas',\n iconName: 'rss',\n icon: [448, 512, [\"feed\"], \"f09e\", \"M0 64C0 46.3 14.3 32 32 32c229.8 0 416 186.2 416 416c0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96C14.3 96 0 81.7 0 64zM0 416a64 64 0 1 1 128 0A64 64 0 1 1 0 416zM32 160c159.1 0 288 128.9 288 288c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faFeed = faRss;\nvar faDrawPolygon = {\n prefix: 'fas',\n iconName: 'draw-polygon',\n icon: [448, 512, [], \"f5ee\", \"M96 151.4V360.6c9.7 5.6 17.8 13.7 23.4 23.4H328.6c0-.1 .1-.2 .1-.3l-4.5-7.9-32-56 0 0c-1.4 .1-2.8 .1-4.2 .1c-35.3 0-64-28.7-64-64s28.7-64 64-64c1.4 0 2.8 0 4.2 .1l0 0 32-56 4.5-7.9-.1-.3H119.4c-5.6 9.7-13.7 17.8-23.4 23.4zM384.3 352c35.2 .2 63.7 28.7 63.7 64c0 35.3-28.7 64-64 64c-23.7 0-44.4-12.9-55.4-32H119.4c-11.1 19.1-31.7 32-55.4 32c-35.3 0-64-28.7-64-64c0-23.7 12.9-44.4 32-55.4V151.4C12.9 140.4 0 119.7 0 96C0 60.7 28.7 32 64 32c23.7 0 44.4 12.9 55.4 32H328.6c11.1-19.1 31.7-32 55.4-32c35.3 0 64 28.7 64 64c0 35.3-28.5 63.8-63.7 64l-4.5 7.9-32 56-2.3 4c4.2 8.5 6.5 18 6.5 28.1s-2.3 19.6-6.5 28.1l2.3 4 32 56 4.5 7.9z\"]\n};\nvar faScaleBalanced = {\n prefix: 'fas',\n iconName: 'scale-balanced',\n icon: [640, 512, [9878, \"balance-scale\"], \"f24e\", \"M384 32H512c17.7 0 32 14.3 32 32s-14.3 32-32 32H398.4c-5.2 25.8-22.9 47.1-46.4 57.3V448H512c17.7 0 32 14.3 32 32s-14.3 32-32 32H320 128c-17.7 0-32-14.3-32-32s14.3-32 32-32H288V153.3c-23.5-10.3-41.2-31.6-46.4-57.3H128c-17.7 0-32-14.3-32-32s14.3-32 32-32H256c14.6-19.4 37.8-32 64-32s49.4 12.6 64 32zm55.6 288H584.4L512 195.8 439.6 320zM512 416c-62.9 0-115.2-34-126-78.9c-2.6-11 1-22.3 6.7-32.1l95.2-163.2c5-8.6 14.2-13.8 24.1-13.8s19.1 5.3 24.1 13.8l95.2 163.2c5.7 9.8 9.3 21.1 6.7 32.1C627.2 382 574.9 416 512 416zM126.8 195.8L54.4 320H199.3L126.8 195.8zM.9 337.1c-2.6-11 1-22.3 6.7-32.1l95.2-163.2c5-8.6 14.2-13.8 24.1-13.8s19.1 5.3 24.1 13.8l95.2 163.2c5.7 9.8 9.3 21.1 6.7 32.1C242 382 189.7 416 126.8 416S11.7 382 .9 337.1z\"]\n};\nvar faBalanceScale = faScaleBalanced;\nvar faGaugeSimpleHigh = {\n prefix: 'fas',\n iconName: 'gauge-simple-high',\n icon: [512, 512, [61668, \"tachometer\", \"tachometer-fast\"], \"f62a\", \"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm320 96c0-15.9-5.8-30.4-15.3-41.6l76.6-147.4c6.1-11.8 1.5-26.3-10.2-32.4s-26.2-1.5-32.4 10.2L262.1 288.3c-2-.2-4-.3-6.1-.3c-35.3 0-64 28.7-64 64s28.7 64 64 64s64-28.7 64-64z\"]\n};\nvar faTachometer = faGaugeSimpleHigh;\nvar faTachometerFast = faGaugeSimpleHigh;\nvar faShower = {\n prefix: 'fas',\n iconName: 'shower',\n icon: [512, 512, [128703], \"f2cc\", \"M64 131.9C64 112.1 80.1 96 99.9 96c9.5 0 18.6 3.8 25.4 10.5l16.2 16.2c-21 38.9-17.4 87.5 10.9 123L151 247c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0L345 121c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-1.3 1.3c-35.5-28.3-84.2-31.9-123-10.9L170.5 61.3C151.8 42.5 126.4 32 99.9 32C44.7 32 0 76.7 0 131.9V448c0 17.7 14.3 32 32 32s32-14.3 32-32V131.9zM256 352a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm64 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm0-128a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm64 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm0-128a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm64 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm32-32a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faDesktop = {\n prefix: 'fas',\n iconName: 'desktop',\n icon: [576, 512, [128421, 61704, \"desktop-alt\"], \"f390\", \"M64 0C28.7 0 0 28.7 0 64V352c0 35.3 28.7 64 64 64H240l-10.7 32H160c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H346.7L336 416H512c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64zM512 64V288H64V64H512z\"]\n};\nvar faDesktopAlt = faDesktop;\nvar faM = {\n prefix: 'fas',\n iconName: 'm',\n icon: [448, 512, [109], \"4d\", \"M22.7 33.4c13.5-4.1 28.1 1.1 35.9 12.9L224 294.3 389.4 46.2c7.8-11.7 22.4-17 35.9-12.9S448 49.9 448 64V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V169.7L250.6 369.8c-5.9 8.9-15.9 14.2-26.6 14.2s-20.7-5.3-26.6-14.2L64 169.7V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V64C0 49.9 9.2 37.5 22.7 33.4z\"]\n};\nvar faTableList = {\n prefix: 'fas',\n iconName: 'table-list',\n icon: [512, 512, [\"th-list\"], \"f00b\", \"M0 96C0 60.7 28.7 32 64 32H448c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zm64 0v64h64V96H64zm384 0H192v64H448V96zM64 224v64h64V224H64zm384 0H192v64H448V224zM64 352v64h64V352H64zm384 0H192v64H448V352z\"]\n};\nvar faThList = faTableList;\nvar faCommentSms = {\n prefix: 'fas',\n iconName: 'comment-sms',\n icon: [512, 512, [\"sms\"], \"f7cd\", \"M256 448c141.4 0 256-93.1 256-208S397.4 32 256 32S0 125.1 0 240c0 45.1 17.7 86.8 47.7 120.9c-1.9 24.5-11.4 46.3-21.4 62.9c-5.5 9.2-11.1 16.6-15.2 21.6c-2.1 2.5-3.7 4.4-4.9 5.7c-.6 .6-1 1.1-1.3 1.4l-.3 .3 0 0 0 0 0 0 0 0c-4.6 4.6-5.9 11.4-3.4 17.4c2.5 6 8.3 9.9 14.8 9.9c28.7 0 57.6-8.9 81.6-19.3c22.9-10 42.4-21.9 54.3-30.6c31.8 11.5 67 17.9 104.1 17.9zM96 212.8c0-20.3 16.5-36.8 36.8-36.8H152c8.8 0 16 7.2 16 16s-7.2 16-16 16H132.8c-2.7 0-4.8 2.2-4.8 4.8c0 1.6 .8 3.1 2.2 4l29.4 19.6c10.3 6.8 16.4 18.3 16.4 30.7c0 20.3-16.5 36.8-36.8 36.8H112c-8.8 0-16-7.2-16-16s7.2-16 16-16h27.2c2.7 0 4.8-2.2 4.8-4.8c0-1.6-.8-3.1-2.2-4l-29.4-19.6C102.2 236.7 96 225.2 96 212.8zM372.8 176H392c8.8 0 16 7.2 16 16s-7.2 16-16 16H372.8c-2.7 0-4.8 2.2-4.8 4.8c0 1.6 .8 3.1 2.2 4l29.4 19.6c10.2 6.8 16.4 18.3 16.4 30.7c0 20.3-16.5 36.8-36.8 36.8H352c-8.8 0-16-7.2-16-16s7.2-16 16-16h27.2c2.7 0 4.8-2.2 4.8-4.8c0-1.6-.8-3.1-2.2-4l-29.4-19.6c-10.2-6.8-16.4-18.3-16.4-30.7c0-20.3 16.5-36.8 36.8-36.8zm-152 6.4L256 229.3l35.2-46.9c4.1-5.5 11.3-7.8 17.9-5.6s10.9 8.3 10.9 15.2v96c0 8.8-7.2 16-16 16s-16-7.2-16-16V240l-19.2 25.6c-3 4-7.8 6.4-12.8 6.4s-9.8-2.4-12.8-6.4L224 240v48c0 8.8-7.2 16-16 16s-16-7.2-16-16V192c0-6.9 4.4-13 10.9-15.2s13.7 .1 17.9 5.6z\"]\n};\nvar faSms = faCommentSms;\nvar faBook = {\n prefix: 'fas',\n iconName: 'book',\n icon: [448, 512, [128212], \"f02d\", \"M96 0C43 0 0 43 0 96V416c0 53 43 96 96 96H384h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V384c17.7 0 32-14.3 32-32V32c0-17.7-14.3-32-32-32H384 96zm0 384H352v64H96c-17.7 0-32-14.3-32-32s14.3-32 32-32zm32-240c0-8.8 7.2-16 16-16H336c8.8 0 16 7.2 16 16s-7.2 16-16 16H144c-8.8 0-16-7.2-16-16zm16 48H336c8.8 0 16 7.2 16 16s-7.2 16-16 16H144c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faUserPlus = {\n prefix: 'fas',\n iconName: 'user-plus',\n icon: [640, 512, [], \"f234\", \"M96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM0 482.3C0 383.8 79.8 304 178.3 304h91.4C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3zM504 312V248H440c-13.3 0-24-10.7-24-24s10.7-24 24-24h64V136c0-13.3 10.7-24 24-24s24 10.7 24 24v64h64c13.3 0 24 10.7 24 24s-10.7 24-24 24H552v64c0 13.3-10.7 24-24 24s-24-10.7-24-24z\"]\n};\nvar faCheck = {\n prefix: 'fas',\n iconName: 'check',\n icon: [448, 512, [10003, 10004], \"f00c\", \"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"]\n};\nvar faBatteryThreeQuarters = {\n prefix: 'fas',\n iconName: 'battery-three-quarters',\n icon: [576, 512, [\"battery-4\"], \"f241\", \"M464 160c8.8 0 16 7.2 16 16V336c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16H464zM80 96C35.8 96 0 131.8 0 176V336c0 44.2 35.8 80 80 80H464c44.2 0 80-35.8 80-80V320c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32V176c0-44.2-35.8-80-80-80H80zm272 96H96V320H352V192z\"]\n};\nvar faBattery4 = faBatteryThreeQuarters;\nvar faHouseCircleCheck = {\n prefix: 'fas',\n iconName: 'house-circle-check',\n icon: [640, 512, [], \"e509\", \"M320.7 352c8.1-89.7 83.5-160 175.3-160c8.9 0 17.6 .7 26.1 1.9L309.5 7c-6-5-14-7-21-7s-15 1-22 8L10 231.5c-7 7-10 15-10 24c0 18 14 32.1 32 32.1h32v69.7c-.1 .9-.1 1.8-.1 2.8V472c0 22.1 17.9 40 40 40h16c1.2 0 2.4-.1 3.6-.2c1.5 .1 3 .2 4.5 .2H160h24c22.1 0 40-17.9 40-40V448 384c0-17.7 14.3-32 32-32h64l.7 0zM640 368a144 144 0 1 0 -288 0 144 144 0 1 0 288 0zm-76.7-43.3c6.2 6.2 6.2 16.4 0 22.6l-72 72c-6.2 6.2-16.4 6.2-22.6 0l-40-40c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0L480 385.4l60.7-60.7c6.2-6.2 16.4-6.2 22.6 0z\"]\n};\nvar faAngleLeft = {\n prefix: 'fas',\n iconName: 'angle-left',\n icon: [320, 512, [8249], \"f104\", \"M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z\"]\n};\nvar faDiagramSuccessor = {\n prefix: 'fas',\n iconName: 'diagram-successor',\n icon: [512, 512, [], \"e47a\", \"M512 416l0-64c0-35.3-28.7-64-64-64L64 288c-35.3 0-64 28.7-64 64l0 64c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64zM64 160l0-64 144 0 16 0 0 64L64 160zm224 0l0-64 80 0c8.8 0 16 7.2 16 16l0 16-38.1 0c-21.4 0-32.1 25.9-17 41L399 239c9.4 9.4 24.6 9.4 33.9 0L503 169c15.1-15.1 4.4-41-17-41L448 128l0-16c0-44.2-35.8-80-80-80L224 32l-16 0L64 32C28.7 32 0 60.7 0 96l0 64c0 35.3 28.7 64 64 64l160 0c35.3 0 64-28.7 64-64z\"]\n};\nvar faTruckArrowRight = {\n prefix: 'fas',\n iconName: 'truck-arrow-right',\n icon: [640, 512, [], \"e58b\", \"M0 48C0 21.5 21.5 0 48 0H368c26.5 0 48 21.5 48 48V96h50.7c17 0 33.3 6.7 45.3 18.7L589.3 192c12 12 18.7 28.3 18.7 45.3V256v32 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H576c0 53-43 96-96 96s-96-43-96-96H256c0 53-43 96-96 96s-96-43-96-96H48c-26.5 0-48-21.5-48-48V48zM416 256H544V237.3L466.7 160H416v96zM160 464a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm368-48a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zM257 95c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l39 39H96c-13.3 0-24 10.7-24 24s10.7 24 24 24H262.1l-39 39c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l80-80c9.4-9.4 9.4-24.6 0-33.9L257 95z\"]\n};\nvar faArrowsSplitUpAndLeft = {\n prefix: 'fas',\n iconName: 'arrows-split-up-and-left',\n icon: [512, 512, [], \"e4bc\", \"M246.6 150.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L352 109.3V384c0 35.3 28.7 64 64 64h64c17.7 0 32 14.3 32 32s-14.3 32-32 32H416c-70.7 0-128-57.3-128-128c0-35.3-28.7-64-64-64H109.3l41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-96-96c-12.5-12.5-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 256H224c23.3 0 45.2 6.2 64 17.1V109.3l-41.4 41.4z\"]\n};\nvar faHandFist = {\n prefix: 'fas',\n iconName: 'hand-fist',\n icon: [448, 512, [9994, \"fist-raised\"], \"f6de\", \"M192 0c17.7 0 32 14.3 32 32V144H160V32c0-17.7 14.3-32 32-32zM64 64c0-17.7 14.3-32 32-32s32 14.3 32 32v80H64V64zm192 0c0-17.7 14.3-32 32-32s32 14.3 32 32v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V64zm96 64c0-17.7 14.3-32 32-32s32 14.3 32 32v64c0 17.7-14.3 32-32 32s-32-14.3-32-32V128zm-96 88l0-.6c9.4 5.4 20.3 8.6 32 8.6c13.2 0 25.4-4 35.6-10.8c8.7 24.9 32.5 42.8 60.4 42.8c11.7 0 22.6-3.1 32-8.6V256c0 52.3-25.1 98.8-64 128v96c0 17.7-14.3 32-32 32H160c-17.7 0-32-14.3-32-32V401.6c-17.3-7.9-33.2-18.8-46.9-32.5L69.5 357.5C45.5 333.5 32 300.9 32 267V240c0-35.3 28.7-64 64-64h88c22.1 0 40 17.9 40 40s-17.9 40-40 40H128c-8.8 0-16 7.2-16 16s7.2 16 16 16h56c39.8 0 72-32.2 72-72z\"]\n};\nvar faFistRaised = faHandFist;\nvar faCloudMoon = {\n prefix: 'fas',\n iconName: 'cloud-moon',\n icon: [640, 512, [], \"f6c3\", \"M495.8 0c5.5 0 10.9 .2 16.3 .7c7 .6 12.8 5.7 14.3 12.5s-1.6 13.9-7.7 17.3c-44.4 25.2-74.4 73-74.4 127.8c0 81 65.5 146.6 146.2 146.6c8.6 0 17-.7 25.1-2.1c6.9-1.2 13.8 2.2 17 8.5s1.9 13.8-3.1 18.7c-34.5 33.6-81.7 54.4-133.6 54.4c-9.3 0-18.4-.7-27.4-1.9c-11.2-22.6-29.8-40.9-52.6-51.7c-2.7-58.5-50.3-105.3-109.2-106.7c-1.7-10.4-2.6-21-2.6-31.8C304 86.1 389.8 0 495.8 0zM447.9 431.9c0 44.2-35.8 80-80 80H96c-53 0-96-43-96-96c0-47.6 34.6-87 80-94.6l0-1.3c0-53 43-96 96-96c34.9 0 65.4 18.6 82.2 46.4c13-9.1 28.8-14.4 45.8-14.4c44.2 0 80 35.8 80 80c0 5.9-.6 11.7-1.9 17.2c37.4 6.7 65.8 39.4 65.8 78.7z\"]\n};\nvar faBriefcase = {\n prefix: 'fas',\n iconName: 'briefcase',\n icon: [512, 512, [128188], \"f0b1\", \"M184 48H328c4.4 0 8 3.6 8 8V96H176V56c0-4.4 3.6-8 8-8zm-56 8V96H64C28.7 96 0 124.7 0 160v96H192 320 512V160c0-35.3-28.7-64-64-64H384V56c0-30.9-25.1-56-56-56H184c-30.9 0-56 25.1-56 56zM512 288H320v32c0 17.7-14.3 32-32 32H224c-17.7 0-32-14.3-32-32V288H0V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V288z\"]\n};\nvar faPersonFalling = {\n prefix: 'fas',\n iconName: 'person-falling',\n icon: [512, 512, [], \"e546\", \"M288 0c17.7 0 32 14.3 32 32l0 9.8c0 54.6-27.9 104.6-72.5 133.6l.2 .3L304.5 256l87.5 0c15.1 0 29.3 7.1 38.4 19.2l43.2 57.6c10.6 14.1 7.7 34.2-6.4 44.8s-34.2 7.7-44.8-6.4L384 320l-96 0h-1.4l92.3 142.6c9.6 14.8 5.4 34.6-9.5 44.3s-34.6 5.4-44.3-9.5L164.5 249.2c-2.9 9.2-4.5 19-4.5 29l0 73.8c0 17.7-14.3 32-32 32s-32-14.3-32-32V278.2c0-65.1 39.6-123.7 100.1-147.9C232.3 115.8 256 80.8 256 41.8l0-9.8c0-17.7 14.3-32 32-32zM112 32a48 48 0 1 1 0 96 48 48 0 1 1 0-96z\"]\n};\nvar faImagePortrait = {\n prefix: 'fas',\n iconName: 'image-portrait',\n icon: [384, 512, [\"portrait\"], \"f3e0\", \"M384 64c0-35.3-28.7-64-64-64H64C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64l0-384zM128 192a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM80 356.6c0-37.9 30.7-68.6 68.6-68.6h86.9c37.9 0 68.6 30.7 68.6 68.6c0 15.1-12.3 27.4-27.4 27.4H107.4C92.3 384 80 371.7 80 356.6z\"]\n};\nvar faPortrait = faImagePortrait;\nvar faUserTag = {\n prefix: 'fas',\n iconName: 'user-tag',\n icon: [640, 512, [], \"f507\", \"M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c10 0 18.8-4.9 24.2-12.5l-99.2-99.2c-14.9-14.9-23.3-35.1-23.3-56.1v-33c-15.9-4.7-32.8-7.2-50.3-7.2H178.3zM384 224c-17.7 0-32 14.3-32 32v82.7c0 17 6.7 33.3 18.7 45.3L478.1 491.3c18.7 18.7 49.1 18.7 67.9 0l73.4-73.4c18.7-18.7 18.7-49.1 0-67.9L512 242.7c-12-12-28.3-18.7-45.3-18.7H384zm24 80a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z\"]\n};\nvar faRug = {\n prefix: 'fas',\n iconName: 'rug',\n icon: [640, 512, [], \"e569\", \"M24 64H56 80V88v88 80 80 88 24H56 24c-13.3 0-24-10.7-24-24s10.7-24 24-24h8V360H24c-13.3 0-24-10.7-24-24s10.7-24 24-24h8V280H24c-13.3 0-24-10.7-24-24s10.7-24 24-24h8V200H24c-13.3 0-24-10.7-24-24s10.7-24 24-24h8V112H24C10.7 112 0 101.3 0 88S10.7 64 24 64zm88 0H528V448H112V64zM640 88c0 13.3-10.7 24-24 24h-8v40h8c13.3 0 24 10.7 24 24s-10.7 24-24 24h-8v32h8c13.3 0 24 10.7 24 24s-10.7 24-24 24h-8v32h8c13.3 0 24 10.7 24 24s-10.7 24-24 24h-8v40h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H584 560V424 336 256 176 88 64h24 32c13.3 0 24 10.7 24 24z\"]\n};\nvar faEarthEurope = {\n prefix: 'fas',\n iconName: 'earth-europe',\n icon: [512, 512, [\"globe-europe\"], \"f7a2\", \"M266.3 48.3L232.5 73.6c-5.4 4-8.5 10.4-8.5 17.1v9.1c0 6.8 5.5 12.3 12.3 12.3c2.4 0 4.8-.7 6.8-2.1l41.8-27.9c2-1.3 4.4-2.1 6.8-2.1h1c6.2 0 11.3 5.1 11.3 11.3c0 3-1.2 5.9-3.3 8l-19.9 19.9c-5.8 5.8-12.9 10.2-20.7 12.8l-26.5 8.8c-5.8 1.9-9.6 7.3-9.6 13.4c0 3.7-1.5 7.3-4.1 10l-17.9 17.9c-6.4 6.4-9.9 15-9.9 24v4.3c0 16.4 13.6 29.7 29.9 29.7c11 0 21.2-6.2 26.1-16l4-8.1c2.4-4.8 7.4-7.9 12.8-7.9c4.5 0 8.7 2.1 11.4 5.7l16.3 21.7c2.1 2.9 5.5 4.5 9.1 4.5c8.4 0 13.9-8.9 10.1-16.4l-1.1-2.3c-3.5-7 0-15.5 7.5-18l21.2-7.1c7.6-2.5 12.7-9.6 12.7-17.6c0-10.3 8.3-18.6 18.6-18.6H400c8.8 0 16 7.2 16 16s-7.2 16-16 16H379.3c-7.2 0-14.2 2.9-19.3 8l-4.7 4.7c-2.1 2.1-3.3 5-3.3 8c0 6.2 5.1 11.3 11.3 11.3h11.3c6 0 11.8 2.4 16 6.6l6.5 6.5c1.8 1.8 2.8 4.3 2.8 6.8s-1 5-2.8 6.8l-7.5 7.5C386 262 384 266.9 384 272s2 10 5.7 13.7L408 304c10.2 10.2 24.1 16 38.6 16H454c6.5-20.2 10-41.7 10-64c0-111.4-87.6-202.4-197.7-207.7zm172 307.9c-3.7-2.6-8.2-4.1-13-4.1c-6 0-11.8-2.4-16-6.6L396 332c-7.7-7.7-18-12-28.9-12c-9.7 0-19.2-3.5-26.6-9.8L314 287.4c-11.6-9.9-26.4-15.4-41.7-15.4H251.4c-12.6 0-25 3.7-35.5 10.7L188.5 301c-17.8 11.9-28.5 31.9-28.5 53.3v3.2c0 17 6.7 33.3 18.7 45.3l16 16c8.5 8.5 20 13.3 32 13.3H248c13.3 0 24 10.7 24 24c0 2.5 .4 5 1.1 7.3c71.3-5.8 132.5-47.6 165.2-107.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM187.3 100.7c-6.2-6.2-16.4-6.2-22.6 0l-32 32c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l32-32c6.2-6.2 6.2-16.4 0-22.6z\"]\n};\nvar faGlobeEurope = faEarthEurope;\nvar faCartFlatbedSuitcase = {\n prefix: 'fas',\n iconName: 'cart-flatbed-suitcase',\n icon: [640, 512, [\"luggage-cart\"], \"f59d\", \"M0 32C0 14.3 14.3 0 32 0H48c44.2 0 80 35.8 80 80V368c0 8.8 7.2 16 16 16H608c17.7 0 32 14.3 32 32s-14.3 32-32 32H541.3c1.8 5 2.7 10.4 2.7 16c0 26.5-21.5 48-48 48s-48-21.5-48-48c0-5.6 1-11 2.7-16H253.3c1.8 5 2.7 10.4 2.7 16c0 26.5-21.5 48-48 48s-48-21.5-48-48c0-5.6 1-11 2.7-16H144c-44.2 0-80-35.8-80-80V80c0-8.8-7.2-16-16-16H32C14.3 64 0 49.7 0 32zM432 96V56c0-4.4-3.6-8-8-8H344c-4.4 0-8 3.6-8 8V96h96zM288 96V56c0-30.9 25.1-56 56-56h80c30.9 0 56 25.1 56 56V96 320H288V96zM512 320V96h16c26.5 0 48 21.5 48 48V272c0 26.5-21.5 48-48 48H512zM240 96h16V320H240c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48z\"]\n};\nvar faLuggageCart = faCartFlatbedSuitcase;\nvar faRectangleXmark = {\n prefix: 'fas',\n iconName: 'rectangle-xmark',\n icon: [512, 512, [62164, \"rectangle-times\", \"times-rectangle\", \"window-close\"], \"f410\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM175 175c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z\"]\n};\nvar faRectangleTimes = faRectangleXmark;\nvar faTimesRectangle = faRectangleXmark;\nvar faWindowClose = faRectangleXmark;\nvar faBahtSign = {\n prefix: 'fas',\n iconName: 'baht-sign',\n icon: [320, 512, [], \"e0ac\", \"M144 0c-17.7 0-32 14.3-32 32V64H37.6C16.8 64 0 80.8 0 101.6V224v41.7V288 406.3c0 23 18.7 41.7 41.7 41.7H112v32c0 17.7 14.3 32 32 32s32-14.3 32-32V448h32c61.9 0 112-50.1 112-112c0-40.1-21.1-75.3-52.7-95.1C280.3 222.6 288 200.2 288 176c0-61.9-50.1-112-112-112V32c0-17.7-14.3-32-32-32zM112 128v96H64V128h48zm64 96V128c26.5 0 48 21.5 48 48s-21.5 48-48 48zm-64 64v96H64V288h48zm64 96V288h32c26.5 0 48 21.5 48 48s-21.5 48-48 48H176z\"]\n};\nvar faBookOpen = {\n prefix: 'fas',\n iconName: 'book-open',\n icon: [576, 512, [128214, 128366], \"f518\", \"M249.6 471.5c10.8 3.8 22.4-4.1 22.4-15.5V78.6c0-4.2-1.6-8.4-5-11C247.4 52 202.4 32 144 32C93.5 32 46.3 45.3 18.1 56.1C6.8 60.5 0 71.7 0 83.8V454.1c0 11.9 12.8 20.2 24.1 16.5C55.6 460.1 105.5 448 144 448c33.9 0 79 14 105.6 23.5zm76.8 0C353 462 398.1 448 432 448c38.5 0 88.4 12.1 119.9 22.6c11.3 3.8 24.1-4.6 24.1-16.5V83.8c0-12.1-6.8-23.3-18.1-27.6C529.7 45.3 482.5 32 432 32c-58.4 0-103.4 20-123 35.6c-3.3 2.6-5 6.8-5 11V456c0 11.4 11.7 19.3 22.4 15.5z\"]\n};\nvar faBookJournalWhills = {\n prefix: 'fas',\n iconName: 'book-journal-whills',\n icon: [448, 512, [\"journal-whills\"], \"f66a\", \"M0 96C0 43 43 0 96 0H384h32c17.7 0 32 14.3 32 32V352c0 17.7-14.3 32-32 32v64c17.7 0 32 14.3 32 32s-14.3 32-32 32H384 96c-53 0-96-43-96-96V96zM64 416c0 17.7 14.3 32 32 32H352V384H96c-17.7 0-32 14.3-32 32zm90.4-234.4l-21.2-21.2c-3 10.1-5.1 20.6-5.1 31.6c0 .2 0 .5 .1 .8s.1 .5 .1 .8L165.2 226c2.5 2.1 3.4 5.8 2.3 8.9c-1.3 3-4.1 5.1-7.5 5.1c-1.9-.1-3.8-.8-5.2-2l-23.6-20.6C142.8 267 186.9 304 240 304s97.3-37 108.9-86.6L325.3 238c-1.4 1.2-3.3 2-5.3 2c-2.2-.1-4.4-1.1-6-2.8c-1.2-1.5-1.9-3.4-2-5.2c.1-2.2 1.1-4.4 2.8-6l37.1-32.5c0-.3 0-.5 .1-.8s.1-.5 .1-.8c0-11-2.1-21.5-5.1-31.6l-21.2 21.2c-3.1 3.1-8.1 3.1-11.3 0s-3.1-8.1 0-11.2l26.4-26.5c-8.2-17-20.5-31.7-35.9-42.6c-2.7-1.9-6.2 1.4-5 4.5c8.5 22.4 3.6 48-13 65.6c-3.2 3.4-3.6 8.9-.9 12.7c9.8 14 12.7 31.9 7.5 48.5c-5.9 19.4-22 34.1-41.9 38.3l-1.4-34.3 12.6 8.6c.6 .4 1.5 .6 2.3 .6c1.5 0 2.7-.8 3.5-2s.6-2.8-.1-4L260 225.4l18-3.6c1.8-.4 3.1-2.1 3.1-4s-1.4-3.5-3.1-3.9l-18-3.7 8.5-14.3c.8-1.2 .9-2.9 .1-4.1s-2-2-3.5-2l-.1 0c-.7 .1-1.5 .3-2.1 .7l-14.1 9.6L244 87.9c-.1-2.2-1.9-3.9-4-3.9s-3.9 1.6-4 3.9l-4.6 110.8-12-8.1c-1.5-1.1-3.6-.9-5 .4s-1.6 3.4-.8 5l8.6 14.3-18 3.7c-1.8 .4-3.1 2-3.1 3.9s1.4 3.6 3.1 4l18 3.8-8.6 14.2c-.2 .6-.5 1.4-.5 2c0 1.1 .5 2.1 1.2 3c.8 .6 1.8 1 2.8 1c.7 0 1.6-.2 2.2-.6l10.4-7.1-1.4 32.8c-19.9-4.1-36-18.9-41.9-38.3c-5.1-16.6-2.2-34.4 7.6-48.5c2.7-3.9 2.3-9.3-.9-12.7c-16.6-17.5-21.6-43.1-13.1-65.5c1.2-3.1-2.3-6.4-5-4.5c-15.3 10.9-27.6 25.6-35.8 42.6l26.4 26.5c3.1 3.1 3.1 8.1 0 11.2s-8.1 3.1-11.2 0z\"]\n};\nvar faJournalWhills = faBookJournalWhills;\nvar faHandcuffs = {\n prefix: 'fas',\n iconName: 'handcuffs',\n icon: [640, 512, [], \"e4f8\", \"M240 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM192 48a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm-32 80c17.7 0 32 14.3 32 32h8c13.3 0 24 10.7 24 24v16c0 1.7-.2 3.4-.5 5.1C280.3 229.6 320 286.2 320 352c0 88.4-71.6 160-160 160S0 440.4 0 352c0-65.8 39.7-122.4 96.5-146.9c-.4-1.6-.5-3.3-.5-5.1V184c0-13.3 10.7-24 24-24h8c0-17.7 14.3-32 32-32zm0 320a96 96 0 1 0 0-192 96 96 0 1 0 0 192zm192-96c0-25.9-5.1-50.5-14.4-73.1c16.9-32.9 44.8-59.1 78.9-73.9c-.4-1.6-.5-3.3-.5-5.1V184c0-13.3 10.7-24 24-24h8c0-17.7 14.3-32 32-32s32 14.3 32 32h8c13.3 0 24 10.7 24 24v16c0 1.7-.2 3.4-.5 5.1C600.3 229.6 640 286.2 640 352c0 88.4-71.6 160-160 160c-62 0-115.8-35.3-142.4-86.9c9.3-22.5 14.4-47.2 14.4-73.1zm224 0a96 96 0 1 0 -192 0 96 96 0 1 0 192 0zM368 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm80 48a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faTriangleExclamation = {\n prefix: 'fas',\n iconName: 'triangle-exclamation',\n icon: [512, 512, [9888, \"exclamation-triangle\", \"warning\"], \"f071\", \"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\"]\n};\nvar faExclamationTriangle = faTriangleExclamation;\nvar faWarning = faTriangleExclamation;\nvar faDatabase = {\n prefix: 'fas',\n iconName: 'database',\n icon: [448, 512, [], \"f1c0\", \"M448 80v48c0 44.2-100.3 80-224 80S0 172.2 0 128V80C0 35.8 100.3 0 224 0S448 35.8 448 80zM393.2 214.7c20.8-7.4 39.9-16.9 54.8-28.6V288c0 44.2-100.3 80-224 80S0 332.2 0 288V186.1c14.9 11.8 34 21.2 54.8 28.6C99.7 230.7 159.5 240 224 240s124.3-9.3 169.2-25.3zM0 346.1c14.9 11.8 34 21.2 54.8 28.6C99.7 390.7 159.5 400 224 400s124.3-9.3 169.2-25.3c20.8-7.4 39.9-16.9 54.8-28.6V432c0 44.2-100.3 80-224 80S0 476.2 0 432V346.1z\"]\n};\nvar faShare = {\n prefix: 'fas',\n iconName: 'share',\n icon: [512, 512, [\"mail-forward\"], \"f064\", \"M307 34.8c-11.5 5.1-19 16.6-19 29.2v64H176C78.8 128 0 206.8 0 304C0 417.3 81.5 467.9 100.2 478.1c2.5 1.4 5.3 1.9 8.1 1.9c10.9 0 19.7-8.9 19.7-19.7c0-7.5-4.3-14.4-9.8-19.5C108.8 431.9 96 414.4 96 384c0-53 43-96 96-96h96v64c0 12.6 7.4 24.1 19 29.2s25 3 34.4-5.4l160-144c6.7-6.1 10.6-14.7 10.6-23.8s-3.8-17.7-10.6-23.8l-160-144c-9.4-8.5-22.9-10.6-34.4-5.4z\"]\n};\nvar faMailForward = faShare;\nvar faBottleDroplet = {\n prefix: 'fas',\n iconName: 'bottle-droplet',\n icon: [320, 512, [], \"e4c4\", \"M96 0C82.7 0 72 10.7 72 24s10.7 24 24 24c4.4 0 8 3.6 8 8v64.9c0 12.2-7.2 23.1-17.2 30.1C53.7 174.1 32 212.5 32 256V448c0 35.3 28.7 64 64 64H224c35.3 0 64-28.7 64-64V256c0-43.5-21.7-81.9-54.8-105c-10-7-17.2-17.9-17.2-30.1V56c0-4.4 3.6-8 8-8c13.3 0 24-10.7 24-24s-10.7-24-24-24l-8 0 0 0 0 0H104l0 0 0 0L96 0zm64 382c-26.5 0-48-20.1-48-45c0-16.8 22.1-48.1 36.3-66.4c6-7.8 17.5-7.8 23.5 0C185.9 288.9 208 320.2 208 337c0 24.9-21.5 45-48 45z\"]\n};\nvar faMaskFace = {\n prefix: 'fas',\n iconName: 'mask-face',\n icon: [640, 512, [], \"e1d7\", \"M320 64c-27.2 0-53.8 8-76.4 23.1l-37.1 24.8c-15.8 10.5-34.3 16.1-53.3 16.1H144 128 56c-30.9 0-56 25.1-56 56v85c0 55.1 37.5 103.1 90.9 116.4l108 27C233.8 435 275.4 448 320 448s86.2-13 121.1-35.5l108-27C602.5 372.1 640 324.1 640 269V184c0-30.9-25.1-56-56-56H512 496h-9.2c-19 0-37.5-5.6-53.3-16.1L396.4 87.1C373.8 72 347.2 64 320 64zM132.3 346.3l-29.8-7.4C70.5 330.9 48 302.1 48 269V184c0-4.4 3.6-8 8-8H96v48c0 45.1 13.4 87.2 36.3 122.3zm405.1-7.4l-29.8 7.4c23-35.2 36.3-77.2 36.3-122.3V176h40c4.4 0 8 3.6 8 8v85c0 33-22.5 61.8-54.5 69.9zM192 208c0-8.8 7.2-16 16-16H432c8.8 0 16 7.2 16 16s-7.2 16-16 16H208c-8.8 0-16-7.2-16-16zm16 48H432c8.8 0 16 7.2 16 16s-7.2 16-16 16H208c-8.8 0-16-7.2-16-16s7.2-16 16-16zm16 80c0-8.8 7.2-16 16-16H400c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16z\"]\n};\nvar faHillRockslide = {\n prefix: 'fas',\n iconName: 'hill-rockslide',\n icon: [576, 512, [], \"e508\", \"M252.4 103.8l27 48c2.8 5 8.2 8.2 13.9 8.2l53.3 0c5.8 0 11.1-3.1 13.9-8.2l27-48c2.7-4.9 2.7-10.8 0-15.7l-27-48c-2.8-5-8.2-8.2-13.9-8.2H293.4c-5.8 0-11.1 3.1-13.9 8.2l-27 48c-2.7 4.9-2.7 10.8 0 15.7zM68.3 87C43.1 61.8 0 79.7 0 115.3V432c0 44.2 35.8 80 80 80H396.7c35.6 0 53.5-43.1 28.3-68.3L68.3 87zM504.2 403.6c4.9 2.7 10.8 2.7 15.7 0l48-27c5-2.8 8.2-8.2 8.2-13.9V309.4c0-5.8-3.1-11.1-8.2-13.9l-48-27c-4.9-2.7-10.8-2.7-15.7 0l-48 27c-5 2.8-8.2 8.2-8.2 13.9v53.3c0 5.8 3.1 11.1 8.2 13.9l48 27zM192 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM384 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faRightLeft = {\n prefix: 'fas',\n iconName: 'right-left',\n icon: [512, 512, [\"exchange-alt\"], \"f362\", \"M32 96l320 0V32c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l96 96c6 6 9.4 14.1 9.4 22.6s-3.4 16.6-9.4 22.6l-96 96c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6V160L32 160c-17.7 0-32-14.3-32-32s14.3-32 32-32zM480 352c17.7 0 32 14.3 32 32s-14.3 32-32 32H160v64c0 12.9-7.8 24.6-19.8 29.6s-25.7 2.2-34.9-6.9l-96-96c-6-6-9.4-14.1-9.4-22.6s3.4-16.6 9.4-22.6l96-96c9.2-9.2 22.9-11.9 34.9-6.9s19.8 16.6 19.8 29.6l0 64H480z\"]\n};\nvar faExchangeAlt = faRightLeft;\nvar faPaperPlane = {\n prefix: 'fas',\n iconName: 'paper-plane',\n icon: [512, 512, [61913], \"f1d8\", \"M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480V396.4c0-4 1.5-7.8 4.2-10.7L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z\"]\n};\nvar faRoadCircleExclamation = {\n prefix: 'fas',\n iconName: 'road-circle-exclamation',\n icon: [640, 512, [], \"e565\", \"M213.2 32H288V96c0 17.7 14.3 32 32 32s32-14.3 32-32V32h74.8c27.1 0 51.3 17.1 60.3 42.6l42.7 120.6c-10.9-2.1-22.2-3.2-33.8-3.2c-59.5 0-112.1 29.6-144 74.8V224c0-17.7-14.3-32-32-32s-32 14.3-32 32v64c0 17.7 14.3 32 32 32c2.3 0 4.6-.3 6.8-.7c-4.5 15.5-6.8 31.8-6.8 48.7c0 5.4 .2 10.7 .7 16l-.7 0c-17.7 0-32 14.3-32 32v64H86.6C56.5 480 32 455.5 32 425.4c0-6.2 1.1-12.4 3.1-18.2L152.9 74.6C162 49.1 186.1 32 213.2 32zM496 224a144 144 0 1 1 0 288 144 144 0 1 1 0-288zm0 240a24 24 0 1 0 0-48 24 24 0 1 0 0 48zm0-192c-8.8 0-16 7.2-16 16v80c0 8.8 7.2 16 16 16s16-7.2 16-16V288c0-8.8-7.2-16-16-16z\"]\n};\nvar faDungeon = {\n prefix: 'fas',\n iconName: 'dungeon',\n icon: [512, 512, [], \"f6d9\", \"M336.6 156.5c1.3 1.1 2.7 2.2 3.9 3.3c9.3 8.2 23 10.5 33.4 3.6l67.6-45.1c11.4-7.6 14.2-23.2 5.1-33.4C430 66.6 410.9 50.6 389.7 37.6c-11.9-7.3-26.9-1.4-32.1 11.6l-30.5 76.2c-4.5 11.1 .2 23.6 9.5 31.2zM328 36.8c5.1-12.8-1.6-27.4-15-30.5C294.7 2.2 275.6 0 256 0s-38.7 2.2-57 6.4C185.5 9.4 178.8 24 184 36.8l30.3 75.8c4.5 11.3 16.8 17.2 29 16c4.2-.4 8.4-.6 12.7-.6s8.6 .2 12.7 .6c12.1 1.2 24.4-4.7 29-16L328 36.8zM65.5 85c-9.1 10.2-6.3 25.8 5.1 33.4l67.6 45.1c10.3 6.9 24.1 4.6 33.4-3.6c1.3-1.1 2.6-2.3 4-3.3c9.3-7.5 13.9-20.1 9.5-31.2L154.4 49.2c-5.2-12.9-20.3-18.8-32.1-11.6C101.1 50.6 82 66.6 65.5 85zm314 137.1c.9 3.3 1.7 6.6 2.3 10c2.5 13 13 23.9 26.2 23.9h80c13.3 0 24.1-10.8 22.9-24c-2.5-27.2-9.3-53.2-19.7-77.3c-5.5-12.9-21.4-16.6-33.1-8.9l-68.6 45.7c-9.8 6.5-13.2 19.2-10 30.5zM53.9 145.8c-11.6-7.8-27.6-4-33.1 8.9C10.4 178.8 3.6 204.8 1.1 232c-1.2 13.2 9.6 24 22.9 24h80c13.3 0 23.8-10.8 26.2-23.9c.6-3.4 1.4-6.7 2.3-10c3.1-11.4-.2-24-10-30.5L53.9 145.8zM104 288H24c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24V312c0-13.3-10.7-24-24-24zm304 0c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24V312c0-13.3-10.7-24-24-24H408zM24 416c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24V440c0-13.3-10.7-24-24-24H24zm384 0c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24V440c0-13.3-10.7-24-24-24H408zM272 192c0-8.8-7.2-16-16-16s-16 7.2-16 16V464c0 8.8 7.2 16 16 16s16-7.2 16-16V192zm-64 32c0-8.8-7.2-16-16-16s-16 7.2-16 16V464c0 8.8 7.2 16 16 16s16-7.2 16-16V224zm128 0c0-8.8-7.2-16-16-16s-16 7.2-16 16V464c0 8.8 7.2 16 16 16s16-7.2 16-16V224z\"]\n};\nvar faAlignRight = {\n prefix: 'fas',\n iconName: 'align-right',\n icon: [448, 512, [], \"f038\", \"M448 64c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z\"]\n};\nvar faMoneyBill1Wave = {\n prefix: 'fas',\n iconName: 'money-bill-1-wave',\n icon: [576, 512, [\"money-bill-wave-alt\"], \"f53b\", \"M0 112.5V422.3c0 18 10.1 35 27 41.3c87 32.5 174 10.3 261-11.9c79.8-20.3 159.6-40.7 239.3-18.9c23 6.3 48.7-9.5 48.7-33.4V89.7c0-18-10.1-35-27-41.3C462 15.9 375 38.1 288 60.3C208.2 80.6 128.4 100.9 48.7 79.1C25.6 72.8 0 88.6 0 112.5zM128 416H64V352c35.3 0 64 28.7 64 64zM64 224V160h64c0 35.3-28.7 64-64 64zM448 352c0-35.3 28.7-64 64-64v64H448zm64-192c-35.3 0-64-28.7-64-64h64v64zM384 256c0 61.9-43 112-96 112s-96-50.1-96-112s43-112 96-112s96 50.1 96 112zM252 208c0 9.7 6.9 17.7 16 19.6V276h-4c-11 0-20 9-20 20s9 20 20 20h24 24c11 0 20-9 20-20s-9-20-20-20h-4V208c0-11-9-20-20-20H272c-11 0-20 9-20 20z\"]\n};\nvar faMoneyBillWaveAlt = faMoneyBill1Wave;\nvar faLifeRing = {\n prefix: 'fas',\n iconName: 'life-ring',\n icon: [512, 512, [], \"f1cd\", \"M367.2 412.5C335.9 434.9 297.5 448 256 448s-79.9-13.1-111.2-35.5l58-58c15.8 8.6 34 13.5 53.3 13.5s37.4-4.9 53.3-13.5l58 58zm90.7 .8c33.8-43.4 54-98 54-157.3s-20.2-113.9-54-157.3c9-12.5 7.9-30.1-3.4-41.3S425.8 45 413.3 54C369.9 20.2 315.3 0 256 0S142.1 20.2 98.7 54c-12.5-9-30.1-7.9-41.3 3.4S45 86.2 54 98.7C20.2 142.1 0 196.7 0 256s20.2 113.9 54 157.3c-9 12.5-7.9 30.1 3.4 41.3S86.2 467 98.7 458c43.4 33.8 98 54 157.3 54s113.9-20.2 157.3-54c12.5 9 30.1 7.9 41.3-3.4s12.4-28.8 3.4-41.3zm-45.5-46.1l-58-58c8.6-15.8 13.5-34 13.5-53.3s-4.9-37.4-13.5-53.3l58-58C434.9 176.1 448 214.5 448 256s-13.1 79.9-35.5 111.2zM367.2 99.5l-58 58c-15.8-8.6-34-13.5-53.3-13.5s-37.4 4.9-53.3 13.5l-58-58C176.1 77.1 214.5 64 256 64s79.9 13.1 111.2 35.5zM157.5 309.3l-58 58C77.1 335.9 64 297.5 64 256s13.1-79.9 35.5-111.2l58 58c-8.6 15.8-13.5 34-13.5 53.3s4.9 37.4 13.5 53.3zM208 256a48 48 0 1 1 96 0 48 48 0 1 1 -96 0z\"]\n};\nvar faHands = {\n prefix: 'fas',\n iconName: 'hands',\n icon: [576, 512, [\"sign-language\", \"signing\"], \"f2a7\", \"M544 160l-.1 72.6c-.1 52.2-24 101-64 133.1c.1-1.9 .1-3.8 .1-5.7v-8c0-71.8-37-138.6-97.9-176.7l-60.2-37.6c-8.6-5.4-17.9-8.4-27.3-9.4L248.7 48.8c-6.6-11.5-2.7-26.2 8.8-32.8s26.2-2.7 32.8 8.8l78 135.1c3.3 5.7 10.7 7.7 16.4 4.4s7.7-10.7 4.4-16.4l-62-107.4c-6.6-11.5-2.7-26.2 8.8-32.8S362 5 368.6 16.5l68 117.8 0 0 0 0 43.3 75L480 160c0-17.7 14.4-32 32-32s32 14.4 32 32zM243.9 88.5L268.5 131c-13.9 4.5-26.4 13.7-34.7 27c-.9 1.4-1.7 2.9-2.5 4.4l-28.9-50c-6.6-11.5-2.7-26.2 8.8-32.8s26.2-2.7 32.8 8.8zm-46.4 63.7l26.8 46.4c.6 6 2.1 11.8 4.3 17.4H224 210.7l0 0H179l-23-39.8c-6.6-11.5-2.7-26.2 8.8-32.8s26.2-2.7 32.8 8.8zM260.9 175c9.4-15 29.1-19.5 44.1-10.2l60.2 37.6C416.7 234.7 448 291.2 448 352v8c0 83.9-68.1 152-152 152H120c-13.3 0-24-10.7-24-24s10.7-24 24-24h92c6.6 0 12-5.4 12-12s-5.4-12-12-12H88c-13.3 0-24-10.7-24-24s10.7-24 24-24H212c6.6 0 12-5.4 12-12s-5.4-12-12-12H56c-13.3 0-24-10.7-24-24s10.7-24 24-24H212c6.6 0 12-5.4 12-12s-5.4-12-12-12H88c-13.3 0-24-10.7-24-24s10.7-24 24-24H224l0 0 0 0h93.2L271 219.1c-15-9.4-19.5-29.1-10.2-44.1z\"]\n};\nvar faSignLanguage = faHands;\nvar faSigning = faHands;\nvar faCalendarDay = {\n prefix: 'fas',\n iconName: 'calendar-day',\n icon: [448, 512, [], \"f783\", \"M128 0c17.7 0 32 14.3 32 32V64H288V32c0-17.7 14.3-32 32-32s32 14.3 32 32V64h48c26.5 0 48 21.5 48 48v48H0V112C0 85.5 21.5 64 48 64H96V32c0-17.7 14.3-32 32-32zM0 192H448V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V192zm80 64c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h96c8.8 0 16-7.2 16-16V272c0-8.8-7.2-16-16-16H80z\"]\n};\nvar faWaterLadder = {\n prefix: 'fas',\n iconName: 'water-ladder',\n icon: [576, 512, [\"ladder-water\", \"swimming-pool\"], \"f5c5\", \"M128 127.7C128 74.9 170.9 32 223.7 32c48.3 0 89 36 95 83.9l1 8.2c2.2 17.5-10.2 33.5-27.8 35.7s-33.5-10.2-35.7-27.8l-1-8.2c-2-15.9-15.5-27.8-31.5-27.8c-17.5 0-31.7 14.2-31.7 31.7V224H384V127.7C384 74.9 426.9 32 479.7 32c48.3 0 89 36 95 83.9l1 8.2c2.2 17.5-10.2 33.5-27.8 35.7s-33.5-10.2-35.7-27.8l-1-8.2c-2-15.9-15.5-27.8-31.5-27.8c-17.5 0-31.7 14.2-31.7 31.7V361c-1.6 1-3.3 2-4.8 3.1c-18 12.4-40.1 20.3-59.2 20.3h0V288H192v96.5c-19 0-41.2-7.9-59.1-20.3c-1.6-1.1-3.2-2.2-4.9-3.1V127.7zM306.5 389.9C329 405.4 356.5 416 384 416c26.9 0 55.4-10.8 77.4-26.1l0 0c11.9-8.5 28.1-7.8 39.2 1.7c14.4 11.9 32.5 21 50.6 25.2c17.2 4 27.9 21.2 23.9 38.4s-21.2 27.9-38.4 23.9c-24.5-5.7-44.9-16.5-58.2-25C449.5 469.7 417 480 384 480c-31.9 0-60.6-9.9-80.4-18.9c-5.8-2.7-11.1-5.3-15.6-7.7c-4.5 2.4-9.7 5.1-15.6 7.7c-19.8 9-48.5 18.9-80.4 18.9c-33 0-65.5-10.3-94.5-25.8c-13.4 8.4-33.7 19.3-58.2 25c-17.2 4-34.4-6.7-38.4-23.9s6.7-34.4 23.9-38.4c18.1-4.2 36.2-13.3 50.6-25.2c11.1-9.4 27.3-10.1 39.2-1.7l0 0C136.7 405.2 165.1 416 192 416c27.5 0 55-10.6 77.5-26.1c11.1-7.9 25.9-7.9 37 0z\"]\n};\nvar faLadderWater = faWaterLadder;\nvar faSwimmingPool = faWaterLadder;\nvar faArrowsUpDown = {\n prefix: 'fas',\n iconName: 'arrows-up-down',\n icon: [320, 512, [\"arrows-v\"], \"f07d\", \"M182.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L128 109.3V402.7L86.6 361.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0l96-96c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 402.7V109.3l41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z\"]\n};\nvar faArrowsV = faArrowsUpDown;\nvar faFaceGrimace = {\n prefix: 'fas',\n iconName: 'face-grimace',\n icon: [512, 512, [128556, \"grimace\"], \"f57f\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm96-112h-8V360l55.3 0c-3.8 22.7-23.6 40-47.3 40zm47.3-56L344 344V304h8c23.8 0 43.5 17.3 47.3 40zM328 344H264V304h64v40zm0 56H264V360h64v40zm-80-96v40l-64 0V304h64zm0 56v40H184V360l64 0zm-80-16H112.7c3.8-22.7 23.6-40 47.3-40h8v40zm0 56h-8c-23.8 0-43.5-17.3-47.3-40H168v40zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faGrimace = faFaceGrimace;\nvar faWheelchairMove = {\n prefix: 'fas',\n iconName: 'wheelchair-move',\n icon: [448, 512, [\"wheelchair-alt\"], \"e2ce\", \"M320 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM204.5 121.3c-5.4-2.5-11.7-1.9-16.4 1.7l-40.9 30.7c-14.1 10.6-34.2 7.7-44.8-6.4s-7.7-34.2 6.4-44.8l40.9-30.7c23.7-17.8 55.3-21 82.1-8.4l90.4 42.5c29.1 13.7 36.8 51.6 15.2 75.5L299.1 224h97.4c30.3 0 53 27.7 47.1 57.4L415.4 422.3c-3.5 17.3-20.3 28.6-37.7 25.1s-28.6-20.3-25.1-37.7L377 288H306.7c8.6 19.6 13.3 41.2 13.3 64c0 88.4-71.6 160-160 160S0 440.4 0 352s71.6-160 160-160c11.1 0 22 1.1 32.4 3.3l54.2-54.2-42.1-19.8zM160 448a96 96 0 1 0 0-192 96 96 0 1 0 0 192z\"]\n};\nvar faWheelchairAlt = faWheelchairMove;\nvar faTurnDown = {\n prefix: 'fas',\n iconName: 'turn-down',\n icon: [384, 512, [10549, \"level-down-alt\"], \"f3be\", \"M350 334.5c3.8 8.8 2 19-4.6 26l-136 144c-4.5 4.8-10.8 7.5-17.4 7.5s-12.9-2.7-17.4-7.5l-136-144c-6.6-7-8.4-17.2-4.6-26s12.5-14.5 22-14.5h88l0-192c0-17.7-14.3-32-32-32H32C14.3 96 0 81.7 0 64V32C0 14.3 14.3 0 32 0l80 0c70.7 0 128 57.3 128 128l0 192h88c9.6 0 18.2 5.7 22 14.5z\"]\n};\nvar faLevelDownAlt = faTurnDown;\nvar faPersonWalkingArrowRight = {\n prefix: 'fas',\n iconName: 'person-walking-arrow-right',\n icon: [640, 512, [], \"e552\", \"M208 96a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM123.7 200.5c1-.4 1.9-.8 2.9-1.2l-16.9 63.5c-5.6 21.1-.1 43.6 14.7 59.7l70.7 77.1 22 88.1c4.3 17.1 21.7 27.6 38.8 23.3s27.6-21.7 23.3-38.8l-23-92.1c-1.9-7.8-5.8-14.9-11.2-20.8l-49.5-54 19.3-65.5 9.6 23c4.4 10.6 12.5 19.3 22.8 24.5l26.7 13.3c15.8 7.9 35 1.5 42.9-14.3s1.5-35-14.3-42.9L281 232.7l-15.3-36.8C248.5 154.8 208.3 128 163.7 128c-22.8 0-45.3 4.8-66.1 14l-8 3.5c-32.9 14.6-58.1 42.4-69.4 76.5l-2.6 7.8c-5.6 16.8 3.5 34.9 20.2 40.5s34.9-3.5 40.5-20.2l2.6-7.8c5.7-17.1 18.3-30.9 34.7-38.2l8-3.5zm-30 135.1L68.7 398 9.4 457.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L116.3 441c4.6-4.6 8.2-10.1 10.6-16.1l14.5-36.2-40.7-44.4c-2.5-2.7-4.8-5.6-7-8.6zM550.6 153.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L530.7 224H384c-17.7 0-32 14.3-32 32s14.3 32 32 32H530.7l-25.4 25.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l80-80c12.5-12.5 12.5-32.8 0-45.3l-80-80z\"]\n};\nvar faSquareEnvelope = {\n prefix: 'fas',\n iconName: 'square-envelope',\n icon: [448, 512, [\"envelope-square\"], \"f199\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM218 271.7L64.2 172.4C66 156.4 79.5 144 96 144H352c16.5 0 30 12.4 31.8 28.4L230 271.7c-1.8 1.2-3.9 1.8-6 1.8s-4.2-.6-6-1.8zm29.4 26.9L384 210.4V336c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V210.4l136.6 88.2c7 4.5 15.1 6.9 23.4 6.9s16.4-2.4 23.4-6.9z\"]\n};\nvar faEnvelopeSquare = faSquareEnvelope;\nvar faDice = {\n prefix: 'fas',\n iconName: 'dice',\n icon: [640, 512, [127922], \"f522\", \"M274.9 34.3c-28.1-28.1-73.7-28.1-101.8 0L34.3 173.1c-28.1 28.1-28.1 73.7 0 101.8L173.1 413.7c28.1 28.1 73.7 28.1 101.8 0L413.7 274.9c28.1-28.1 28.1-73.7 0-101.8L274.9 34.3zM200 224a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM96 200a24 24 0 1 1 0 48 24 24 0 1 1 0-48zM224 376a24 24 0 1 1 0-48 24 24 0 1 1 0 48zM352 200a24 24 0 1 1 0 48 24 24 0 1 1 0-48zM224 120a24 24 0 1 1 0-48 24 24 0 1 1 0 48zm96 328c0 35.3 28.7 64 64 64H576c35.3 0 64-28.7 64-64V256c0-35.3-28.7-64-64-64H461.7c11.6 36 3.1 77-25.4 105.5L320 413.8V448zM480 328a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faBowlingBall = {\n prefix: 'fas',\n iconName: 'bowling-ball',\n icon: [512, 512, [], \"f436\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM240 80a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM208 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm-64-64a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faBrain = {\n prefix: 'fas',\n iconName: 'brain',\n icon: [512, 512, [129504], \"f5dc\", \"M184 0c30.9 0 56 25.1 56 56V456c0 30.9-25.1 56-56 56c-28.9 0-52.7-21.9-55.7-50.1c-5.2 1.4-10.7 2.1-16.3 2.1c-35.3 0-64-28.7-64-64c0-7.4 1.3-14.6 3.6-21.2C21.4 367.4 0 338.2 0 304c0-31.9 18.7-59.5 45.8-72.3C37.1 220.8 32 207 32 192c0-30.7 21.6-56.3 50.4-62.6C80.8 123.9 80 118 80 112c0-29.9 20.6-55.1 48.3-62.1C131.3 21.9 155.1 0 184 0zM328 0c28.9 0 52.6 21.9 55.7 49.9c27.8 7 48.3 32.1 48.3 62.1c0 6-.8 11.9-2.4 17.4c28.8 6.2 50.4 31.9 50.4 62.6c0 15-5.1 28.8-13.8 39.7C493.3 244.5 512 272.1 512 304c0 34.2-21.4 63.4-51.6 74.8c2.3 6.6 3.6 13.8 3.6 21.2c0 35.3-28.7 64-64 64c-5.6 0-11.1-.7-16.3-2.1c-3 28.2-26.8 50.1-55.7 50.1c-30.9 0-56-25.1-56-56V56c0-30.9 25.1-56 56-56z\"]\n};\nvar faBandage = {\n prefix: 'fas',\n iconName: 'bandage',\n icon: [640, 512, [129657, \"band-aid\"], \"f462\", \"M480 416h96c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64H480V416zM448 96H192V416H448V96zM64 96C28.7 96 0 124.7 0 160V352c0 35.3 28.7 64 64 64h96V96H64zM248 208a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zm120-24a24 24 0 1 1 0 48 24 24 0 1 1 0-48zM248 304a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zm120-24a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faBandAid = faBandage;\nvar faCalendarMinus = {\n prefix: 'fas',\n iconName: 'calendar-minus',\n icon: [448, 512, [], \"f272\", \"M128 0c17.7 0 32 14.3 32 32V64H288V32c0-17.7 14.3-32 32-32s32 14.3 32 32V64h48c26.5 0 48 21.5 48 48v48H0V112C0 85.5 21.5 64 48 64H96V32c0-17.7 14.3-32 32-32zM0 192H448V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V192zM312 376c13.3 0 24-10.7 24-24s-10.7-24-24-24H136c-13.3 0-24 10.7-24 24s10.7 24 24 24H312z\"]\n};\nvar faCircleXmark = {\n prefix: 'fas',\n iconName: 'circle-xmark',\n icon: [512, 512, [61532, \"times-circle\", \"xmark-circle\"], \"f057\", \"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM175 175c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z\"]\n};\nvar faTimesCircle = faCircleXmark;\nvar faXmarkCircle = faCircleXmark;\nvar faGifts = {\n prefix: 'fas',\n iconName: 'gifts',\n icon: [640, 512, [], \"f79c\", \"M200.6 32C205 19.5 198.5 5.8 186 1.4S159.8 3.5 155.4 16L144.7 46.2l-9.9-29.8C130.6 3.8 117-3 104.4 1.2S85 19 89.2 31.6l8.3 25-27.4-20c-10.7-7.8-25.7-5.4-33.5 5.3s-5.4 25.7 5.3 33.5L70.2 96H48C21.5 96 0 117.5 0 144V464c0 26.5 21.5 48 48 48H200.6c-5.4-9.4-8.6-20.3-8.6-32V256c0-29.9 20.5-55 48.2-62c1.8-31 17.1-58.2 40.1-76.1C271.7 104.7 256.9 96 240 96H217.8l28.3-20.6c10.7-7.8 13.1-22.8 5.3-33.5s-22.8-13.1-33.5-5.3L192.5 55.1 200.6 32zM363.5 185.5L393.1 224H344c-13.3 0-24-10.7-24-24c0-13.1 10.8-24 24.2-24c7.6 0 14.7 3.5 19.3 9.5zM272 200c0 8.4 1.4 16.5 4.1 24H272c-26.5 0-48 21.5-48 48v80H416V256h32v96H640V272c0-26.5-21.5-48-48-48h-4.1c2.7-7.5 4.1-15.6 4.1-24c0-39.9-32.5-72-72.2-72c-22.4 0-43.6 10.4-57.3 28.2L432 195.8l-30.5-39.6c-13.7-17.8-35-28.2-57.3-28.2c-39.7 0-72.2 32.1-72.2 72zM224 464c0 26.5 21.5 48 48 48H416V384H224v80zm224 48H592c26.5 0 48-21.5 48-48V384H448V512zm96-312c0 13.3-10.7 24-24 24H470.9l29.6-38.5c4.6-5.9 11.7-9.5 19.3-9.5c13.4 0 24.2 10.9 24.2 24z\"]\n};\nvar faHotel = {\n prefix: 'fas',\n iconName: 'hotel',\n icon: [512, 512, [127976], \"f594\", \"M0 32C0 14.3 14.3 0 32 0H480c17.7 0 32 14.3 32 32s-14.3 32-32 32V448c17.7 0 32 14.3 32 32s-14.3 32-32 32H304V464c0-26.5-21.5-48-48-48s-48 21.5-48 48v48H32c-17.7 0-32-14.3-32-32s14.3-32 32-32V64C14.3 64 0 49.7 0 32zm96 80v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H112c-8.8 0-16 7.2-16 16zM240 96c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H240zm112 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V112c0-8.8-7.2-16-16-16H368c-8.8 0-16 7.2-16 16zM112 192c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16H112zm112 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16H240c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16H368zM328 384c13.3 0 24.3-10.9 21-23.8c-10.6-41.5-48.2-72.2-93-72.2s-82.5 30.7-93 72.2c-3.3 12.8 7.8 23.8 21 23.8H328z\"]\n};\nvar faEarthAsia = {\n prefix: 'fas',\n iconName: 'earth-asia',\n icon: [512, 512, [127759, \"globe-asia\"], \"f57e\", \"M51.7 295.1l31.7 6.3c7.9 1.6 16-.9 21.7-6.6l15.4-15.4c11.6-11.6 31.1-8.4 38.4 6.2l9.3 18.5c4.8 9.6 14.6 15.7 25.4 15.7c15.2 0 26.1-14.6 21.7-29.2l-6-19.9c-4.6-15.4 6.9-30.9 23-30.9h2.3c13.4 0 25.9-6.7 33.3-17.8l10.7-16.1c5.6-8.5 5.3-19.6-.8-27.7l-16.1-21.5c-10.3-13.7-3.3-33.5 13.4-37.7l17-4.3c7.5-1.9 13.6-7.2 16.5-14.4l16.4-40.9C303.4 52.1 280.2 48 256 48C141.1 48 48 141.1 48 256c0 13.4 1.3 26.5 3.7 39.1zm407.7 4.6c-3-.3-6-.1-9 .8l-15.8 4.4c-6.7 1.9-13.8-.9-17.5-6.7l-2-3.1c-6-9.4-16.4-15.1-27.6-15.1s-21.6 5.7-27.6 15.1l-6.1 9.5c-1.4 2.2-3.4 4.1-5.7 5.3L312 330.1c-18.1 10.1-25.5 32.4-17 51.3l5.5 12.4c8.6 19.2 30.7 28.5 50.5 21.1l2.6-1c10-3.7 21.3-2.2 29.9 4.1l1.5 1.1c37.2-29.5 64.1-71.4 74.4-119.5zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm144.5 92.1c-2.1 8.6 3.1 17.3 11.6 19.4l32 8c8.6 2.1 17.3-3.1 19.4-11.6s-3.1-17.3-11.6-19.4l-32-8c-8.6-2.1-17.3 3.1-19.4 11.6zm92-20c-2.1 8.6 3.1 17.3 11.6 19.4s17.3-3.1 19.4-11.6l8-32c2.1-8.6-3.1-17.3-11.6-19.4s-17.3 3.1-19.4 11.6l-8 32zM343.2 113.7c-7.9-4-17.5-.7-21.5 7.2l-16 32c-4 7.9-.7 17.5 7.2 21.5s17.5 .7 21.5-7.2l16-32c4-7.9 .7-17.5-7.2-21.5z\"]\n};\nvar faGlobeAsia = faEarthAsia;\nvar faIdCardClip = {\n prefix: 'fas',\n iconName: 'id-card-clip',\n icon: [576, 512, [\"id-card-alt\"], \"f47f\", \"M256 0h64c17.7 0 32 14.3 32 32V96c0 17.7-14.3 32-32 32H256c-17.7 0-32-14.3-32-32V32c0-17.7 14.3-32 32-32zM64 64H192v48c0 26.5 21.5 48 48 48h96c26.5 0 48-21.5 48-48V64H512c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128C0 92.7 28.7 64 64 64zM176 437.3c0 5.9 4.8 10.7 10.7 10.7H389.3c5.9 0 10.7-4.8 10.7-10.7c0-29.5-23.9-53.3-53.3-53.3H229.3c-29.5 0-53.3 23.9-53.3 53.3zM288 352a64 64 0 1 0 0-128 64 64 0 1 0 0 128z\"]\n};\nvar faIdCardAlt = faIdCardClip;\nvar faMagnifyingGlassPlus = {\n prefix: 'fas',\n iconName: 'magnifying-glass-plus',\n icon: [512, 512, [\"search-plus\"], \"f00e\", \"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM184 296c0 13.3 10.7 24 24 24s24-10.7 24-24V232h64c13.3 0 24-10.7 24-24s-10.7-24-24-24H232V120c0-13.3-10.7-24-24-24s-24 10.7-24 24v64H120c-13.3 0-24 10.7-24 24s10.7 24 24 24h64v64z\"]\n};\nvar faSearchPlus = faMagnifyingGlassPlus;\nvar faThumbsUp = {\n prefix: 'fas',\n iconName: 'thumbs-up',\n icon: [512, 512, [128077, 61575], \"f164\", \"M313.4 32.9c26 5.2 42.9 30.5 37.7 56.5l-2.3 11.4c-5.3 26.7-15.1 52.1-28.8 75.2H464c26.5 0 48 21.5 48 48c0 18.5-10.5 34.6-25.9 42.6C497 275.4 504 288.9 504 304c0 23.4-16.8 42.9-38.9 47.1c4.4 7.3 6.9 15.8 6.9 24.9c0 21.3-13.9 39.4-33.1 45.6c.7 3.3 1.1 6.8 1.1 10.4c0 26.5-21.5 48-48 48H294.5c-19 0-37.5-5.6-53.3-16.1l-38.5-25.7C176 420.4 160 390.4 160 358.3V320 272 247.1c0-29.2 13.3-56.7 36-75l7.4-5.9c26.5-21.2 44.6-51 51.2-84.2l2.3-11.4c5.2-26 30.5-42.9 56.5-37.7zM32 192H96c17.7 0 32 14.3 32 32V448c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32V224c0-17.7 14.3-32 32-32z\"]\n};\nvar faUserClock = {\n prefix: 'fas',\n iconName: 'user-clock',\n icon: [640, 512, [], \"f4fd\", \"M224 0a128 128 0 1 1 0 256A128 128 0 1 1 224 0zM178.3 304h91.4c20.6 0 40.4 3.5 58.8 9.9C323 331 320 349.1 320 368c0 59.5 29.5 112.1 74.8 144H29.7C13.3 512 0 498.7 0 482.3C0 383.8 79.8 304 178.3 304zM352 368a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-80c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h48c8.8 0 16-7.2 16-16s-7.2-16-16-16H512V304c0-8.8-7.2-16-16-16z\"]\n};\nvar faHandDots = {\n prefix: 'fas',\n iconName: 'hand-dots',\n icon: [512, 512, [\"allergies\"], \"f461\", \"M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V240c0 8.8-7.2 16-16 16s-16-7.2-16-16V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V336c0 1.5 0 3.1 .1 4.6L67.6 283c-16-15.2-41.3-14.6-56.6 1.4s-14.6 41.3 1.4 56.6L124.8 448c43.1 41.1 100.4 64 160 64H304c97.2 0 176-78.8 176-176V128c0-17.7-14.3-32-32-32s-32 14.3-32 32V240c0 8.8-7.2 16-16 16s-16-7.2-16-16V64c0-17.7-14.3-32-32-32s-32 14.3-32 32V240c0 8.8-7.2 16-16 16s-16-7.2-16-16V32zM240 336a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zm80 16a16 16 0 1 1 0 32 16 16 0 1 1 0-32zm48-16a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zm-16 80a16 16 0 1 1 0 32 16 16 0 1 1 0-32zM240 432a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zm-48-48a16 16 0 1 1 0 32 16 16 0 1 1 0-32z\"]\n};\nvar faAllergies = faHandDots;\nvar faFileInvoice = {\n prefix: 'fas',\n iconName: 'file-invoice',\n icon: [384, 512, [], \"f570\", \"M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM80 64h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H80c-8.8 0-16-7.2-16-16s7.2-16 16-16zm16 96H288c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32H96c-17.7 0-32-14.3-32-32V256c0-17.7 14.3-32 32-32zm0 32v64H288V256H96zM240 416h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16s7.2-16 16-16z\"]\n};\nvar faWindowMinimize = {\n prefix: 'fas',\n iconName: 'window-minimize',\n icon: [512, 512, [128469], \"f2d1\", \"M32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H32z\"]\n};\nvar faMugSaucer = {\n prefix: 'fas',\n iconName: 'mug-saucer',\n icon: [640, 512, [\"coffee\"], \"f0f4\", \"M96 64c0-17.7 14.3-32 32-32H448h64c70.7 0 128 57.3 128 128s-57.3 128-128 128H480c0 53-43 96-96 96H192c-53 0-96-43-96-96V64zM480 224h32c35.3 0 64-28.7 64-64s-28.7-64-64-64H480V224zM32 416H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32z\"]\n};\nvar faCoffee = faMugSaucer;\nvar faBrush = {\n prefix: 'fas',\n iconName: 'brush',\n icon: [384, 512, [], \"f55d\", \"M162.4 6c-1.5-3.6-5-6-8.9-6h-19c-3.9 0-7.5 2.4-8.9 6L104.9 57.7c-3.2 8-14.6 8-17.8 0L66.4 6c-1.5-3.6-5-6-8.9-6H48C21.5 0 0 21.5 0 48V224v22.4V256H9.6 374.4 384v-9.6V224 48c0-26.5-21.5-48-48-48H230.5c-3.9 0-7.5 2.4-8.9 6L200.9 57.7c-3.2 8-14.6 8-17.8 0L162.4 6zM0 288v32c0 35.3 28.7 64 64 64h64v64c0 35.3 28.7 64 64 64s64-28.7 64-64V384h64c35.3 0 64-28.7 64-64V288H0zM192 432a16 16 0 1 1 0 32 16 16 0 1 1 0-32z\"]\n};\nvar faMask = {\n prefix: 'fas',\n iconName: 'mask',\n icon: [576, 512, [], \"f6fa\", \"M288 64C64 64 0 160 0 272S80 448 176 448h8.4c24.2 0 46.4-13.7 57.2-35.4l23.2-46.3c4.4-8.8 13.3-14.3 23.2-14.3s18.8 5.5 23.2 14.3l23.2 46.3c10.8 21.7 33 35.4 57.2 35.4H400c96 0 176-64 176-176s-64-208-288-208zM96 256a64 64 0 1 1 128 0A64 64 0 1 1 96 256zm320-64a64 64 0 1 1 0 128 64 64 0 1 1 0-128z\"]\n};\nvar faMagnifyingGlassMinus = {\n prefix: 'fas',\n iconName: 'magnifying-glass-minus',\n icon: [512, 512, [\"search-minus\"], \"f010\", \"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM136 184c-13.3 0-24 10.7-24 24s10.7 24 24 24H280c13.3 0 24-10.7 24-24s-10.7-24-24-24H136z\"]\n};\nvar faSearchMinus = faMagnifyingGlassMinus;\nvar faRulerVertical = {\n prefix: 'fas',\n iconName: 'ruler-vertical',\n icon: [256, 512, [], \"f548\", \"M0 48C0 21.5 21.5 0 48 0H208c26.5 0 48 21.5 48 48V96H176c-8.8 0-16 7.2-16 16s7.2 16 16 16h80v64H176c-8.8 0-16 7.2-16 16s7.2 16 16 16h80v64H176c-8.8 0-16 7.2-16 16s7.2 16 16 16h80v64H176c-8.8 0-16 7.2-16 16s7.2 16 16 16h80v48c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48z\"]\n};\nvar faUserLarge = {\n prefix: 'fas',\n iconName: 'user-large',\n icon: [512, 512, [\"user-alt\"], \"f406\", \"M256 288A144 144 0 1 0 256 0a144 144 0 1 0 0 288zm-94.7 32C72.2 320 0 392.2 0 481.3c0 17 13.8 30.7 30.7 30.7H481.3c17 0 30.7-13.8 30.7-30.7C512 392.2 439.8 320 350.7 320H161.3z\"]\n};\nvar faUserAlt = faUserLarge;\nvar faTrainTram = {\n prefix: 'fas',\n iconName: 'train-tram',\n icon: [448, 512, [128650], \"e5b4\", \"M86.8 48c-12.2 0-23.6 5.5-31.2 15L42.7 79C34.5 89.3 19.4 91 9 82.7S-3 59.4 5.3 49L18 33C34.7 12.2 60 0 86.8 0H361.2c26.7 0 52 12.2 68.7 33l12.8 16c8.3 10.4 6.6 25.5-3.8 33.7s-25.5 6.6-33.7-3.7L392.5 63c-7.6-9.5-19.1-15-31.2-15H248V96h40c53 0 96 43 96 96V352c0 30.6-14.3 57.8-36.6 75.4l65.5 65.5c7.1 7.1 2.1 19.1-7.9 19.1H365.3c-8.5 0-16.6-3.4-22.6-9.4L288 448H160l-54.6 54.6c-6 6-14.1 9.4-22.6 9.4H43c-10 0-15-12.1-7.9-19.1l65.5-65.5C78.3 409.8 64 382.6 64 352V192c0-53 43-96 96-96h40V48H86.8zM160 160c-17.7 0-32 14.3-32 32v32c0 17.7 14.3 32 32 32H288c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32H160zm32 192a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm96 32a32 32 0 1 0 0-64 32 32 0 1 0 0 64z\"]\n};\nvar faUserNurse = {\n prefix: 'fas',\n iconName: 'user-nurse',\n icon: [448, 512, [], \"f82f\", \"M96 128V70.2c0-13.3 8.3-25.3 20.8-30l96-36c7.2-2.7 15.2-2.7 22.5 0l96 36c12.5 4.7 20.8 16.6 20.8 30V128h-.3c.2 2.6 .3 5.3 .3 8v40c0 70.7-57.3 128-128 128s-128-57.3-128-128V136c0-2.7 .1-5.4 .3-8H96zm48 48c0 44.2 35.8 80 80 80s80-35.8 80-80V160H144v16zM111.9 327.7c10.5-3.4 21.8 .4 29.4 8.5l71 75.5c6.3 6.7 17 6.7 23.3 0l71-75.5c7.6-8.1 18.9-11.9 29.4-8.5C401 348.6 448 409.4 448 481.3c0 17-13.8 30.7-30.7 30.7H30.7C13.8 512 0 498.2 0 481.3c0-71.9 47-132.7 111.9-153.6zM208 48V64H192c-4.4 0-8 3.6-8 8V88c0 4.4 3.6 8 8 8h16v16c0 4.4 3.6 8 8 8h16c4.4 0 8-3.6 8-8V96h16c4.4 0 8-3.6 8-8V72c0-4.4-3.6-8-8-8H240V48c0-4.4-3.6-8-8-8H216c-4.4 0-8 3.6-8 8z\"]\n};\nvar faSyringe = {\n prefix: 'fas',\n iconName: 'syringe',\n icon: [512, 512, [128137], \"f48e\", \"M441 7l32 32 32 32c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-15-15L417.9 128l55 55c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-72-72L295 73c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l55 55L422.1 56 407 41c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0zM210.3 155.7l61.1-61.1c.3 .3 .6 .7 1 1l16 16 56 56 56 56 16 16c.3 .3 .6 .6 1 1l-191 191c-10.5 10.5-24.7 16.4-39.6 16.4H97.9L41 505c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l57-57V325.3c0-14.9 5.9-29.1 16.4-39.6l43.3-43.3 57 57c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-57-57 41.4-41.4 57 57c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-57-57z\"]\n};\nvar faCloudSun = {\n prefix: 'fas',\n iconName: 'cloud-sun',\n icon: [640, 512, [9925], \"f6c4\", \"M294.2 1.2c5.1 2.1 8.7 6.7 9.6 12.1l14.1 84.7 84.7 14.1c5.4 .9 10 4.5 12.1 9.6s1.5 10.9-1.6 15.4l-38.5 55c-2.2-.1-4.4-.2-6.7-.2c-23.3 0-45.1 6.2-64 17.1l0-1.1c0-53-43-96-96-96s-96 43-96 96s43 96 96 96c8.1 0 15.9-1 23.4-2.9c-36.6 18.1-63.3 53.1-69.8 94.9l-24.4 17c-4.5 3.1-10.3 3.8-15.4 1.6s-8.7-6.7-9.6-12.1L98.1 317.9 13.4 303.8c-5.4-.9-10-4.5-12.1-9.6s-1.5-10.9 1.6-15.4L52.5 208 2.9 137.2c-3.2-4.5-3.8-10.3-1.6-15.4s6.7-8.7 12.1-9.6L98.1 98.1l14.1-84.7c.9-5.4 4.5-10 9.6-12.1s10.9-1.5 15.4 1.6L208 52.5 278.8 2.9c4.5-3.2 10.3-3.8 15.4-1.6zM144 208a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zM639.9 431.9c0 44.2-35.8 80-80 80H288c-53 0-96-43-96-96c0-47.6 34.6-87 80-94.6l0-1.3c0-53 43-96 96-96c34.9 0 65.4 18.6 82.2 46.4c13-9.1 28.8-14.4 45.8-14.4c44.2 0 80 35.8 80 80c0 5.9-.6 11.7-1.9 17.2c37.4 6.7 65.8 39.4 65.8 78.7z\"]\n};\nvar faStopwatch20 = {\n prefix: 'fas',\n iconName: 'stopwatch-20',\n icon: [448, 512, [], \"e06f\", \"M176 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h16V98.4C92.3 113.8 16 200 16 304c0 114.9 93.1 208 208 208s208-93.1 208-208c0-41.8-12.3-80.7-33.5-113.2l24.1-24.1c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L355.7 143c-28.1-23-62.2-38.8-99.7-44.6V64h16c17.7 0 32-14.3 32-32s-14.3-32-32-32H176zM288 204c28.7 0 52 23.3 52 52v96c0 28.7-23.3 52-52 52s-52-23.3-52-52V256c0-28.7 23.3-52 52-52zm-12 52v96c0 6.6 5.4 12 12 12s12-5.4 12-12V256c0-6.6-5.4-12-12-12s-12 5.4-12 12zM159.5 244c-5.4 0-10.2 3.5-11.9 8.6l-.6 1.7c-3.5 10.5-14.8 16.1-25.3 12.6s-16.1-14.8-12.6-25.3l.6-1.7c7.2-21.5 27.2-35.9 49.8-35.9c29 0 52.5 23.5 52.5 52.5v2.2c0 13.4-4.9 26.4-13.8 36.4l-39 43.9c-6.2 7-10 15.7-10.9 24.9H192c11 0 20 9 20 20s-9 20-20 20H128c-11 0-20-9-20-20V368.3c0-20.6 7.5-40.4 21.2-55.8l39-43.9c2.4-2.7 3.7-6.2 3.7-9.8v-2.2c0-6.9-5.6-12.5-12.5-12.5z\"]\n};\nvar faSquareFull = {\n prefix: 'fas',\n iconName: 'square-full',\n icon: [512, 512, [128997, 128998, 128999, 129000, 129001, 129002, 129003, 11035, 11036], \"f45c\", \"M0 0H512V512H0V0z\"]\n};\nvar faMagnet = {\n prefix: 'fas',\n iconName: 'magnet',\n icon: [448, 512, [129522], \"f076\", \"M0 160v96C0 379.7 100.3 480 224 480s224-100.3 224-224V160H320v96c0 53-43 96-96 96s-96-43-96-96V160H0zm0-32H128V64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64v64zm320 0H448V64c0-17.7-14.3-32-32-32H352c-17.7 0-32 14.3-32 32v64z\"]\n};\nvar faJar = {\n prefix: 'fas',\n iconName: 'jar',\n icon: [320, 512, [], \"e516\", \"M32 32C32 14.3 46.3 0 64 0H256c17.7 0 32 14.3 32 32s-14.3 32-32 32H64C46.3 64 32 49.7 32 32zM0 160c0-35.3 28.7-64 64-64H256c35.3 0 64 28.7 64 64V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V160zm96 64c-17.7 0-32 14.3-32 32v96c0 17.7 14.3 32 32 32H224c17.7 0 32-14.3 32-32V256c0-17.7-14.3-32-32-32H96z\"]\n};\nvar faNoteSticky = {\n prefix: 'fas',\n iconName: 'note-sticky',\n icon: [448, 512, [62026, \"sticky-note\"], \"f249\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H288V368c0-26.5 21.5-48 48-48H448V96c0-35.3-28.7-64-64-64H64zM448 352H402.7 336c-8.8 0-16 7.2-16 16v66.7V480l32-32 64-64 32-32z\"]\n};\nvar faStickyNote = faNoteSticky;\nvar faBugSlash = {\n prefix: 'fas',\n iconName: 'bug-slash',\n icon: [640, 512, [], \"e490\", \"M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L477.4 348.9c1.7-9.4 2.6-19 2.6-28.9h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H479.7c-1.1-14.1-5-27.5-11.1-39.5c.7-.6 1.4-1.2 2.1-1.9l64-64c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-64 64c-.7 .7-1.3 1.4-1.9 2.1C409.2 164.1 393.1 160 376 160H264c-8.3 0-16.3 1-24 2.8L38.8 5.1zm392 430.3L336 360.7V479.2c36.6-3.6 69.7-19.6 94.8-43.8zM166.7 227.3c-3.4 9-5.6 18.7-6.4 28.7H96c-17.7 0-32 14.3-32 32s14.3 32 32 32h64c0 24.6 5.5 47.8 15.4 68.6c-2.2 1.3-4.2 2.9-6 4.8l-64 64c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l63.1-63.1c24.5 21.8 55.8 36.2 90.3 39.6V335.5L166.7 227.3zM320 0c-53 0-96 43-96 96v3.6c0 15.7 12.7 28.4 28.4 28.4H387.6c15.7 0 28.4-12.7 28.4-28.4V96c0-53-43-96-96-96z\"]\n};\nvar faArrowUpFromWaterPump = {\n prefix: 'fas',\n iconName: 'arrow-up-from-water-pump',\n icon: [576, 512, [], \"e4b6\", \"M112 0C85.5 0 64 21.5 64 48V256H48c-26.5 0-48 21.5-48 48v96c0 8 2 15.6 5.4 22.2c3.8-1.7 7.8-3.1 12-4.1c13.1-3.1 26.7-9.8 37.3-18.6c22.2-18.7 54.3-20.1 78.1-3.4c18 12.4 40.1 20.3 59.2 20.3c21.1 0 42-8.5 59.2-20.3c22.1-15.5 51.6-15.5 73.7 0c18.4 12.7 39.6 20.3 59.2 20.3c19 0 41.2-7.9 59.2-20.3c23.8-16.7 55.8-15.3 78.1 3.4c10.6 8.8 24.2 15.6 37.3 18.6c4.2 1 8.2 2.4 12 4.1C574 415.6 576 408 576 400V304c0-26.5-21.5-48-48-48H480l0-146.7 25.4 25.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-80-80c-12.5-12.5-32.8-12.5-45.3 0l-80 80c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L416 109.3 416 256H288V48c0-26.5-21.5-48-48-48H112zM306.5 421.9c-11.1-7.9-25.9-7.9-37 0C247 437.4 219.5 448 192 448c-26.9 0-55.3-10.8-77.4-26.1l0 0c-11.9-8.5-28.1-7.8-39.2 1.7c-14.4 11.9-32.5 21-50.6 25.2c-17.2 4-27.9 21.2-23.9 38.4s21.2 27.9 38.4 23.9c24.5-5.7 44.9-16.5 58.2-25C126.5 501.7 159 512 192 512c31.9 0 60.6-9.9 80.4-18.9c5.8-2.7 11.1-5.3 15.6-7.7c4.5 2.4 9.7 5.1 15.6 7.7c19.8 9 48.5 18.9 80.4 18.9c33 0 65.5-10.3 94.5-25.8c13.4 8.4 33.7 19.3 58.2 25c17.2 4 34.4-6.7 38.4-23.9s-6.7-34.4-23.9-38.4c-18.1-4.2-36.2-13.3-50.6-25.2c-11.1-9.4-27.3-10.1-39.2-1.7l0 0C439.4 437.2 410.9 448 384 448c-27.5 0-55-10.6-77.5-26.1z\"]\n};\nvar faBone = {\n prefix: 'fas',\n iconName: 'bone',\n icon: [576, 512, [129460], \"f5d7\", \"M153.7 144.8c6.9 16.3 20.6 31.2 38.3 31.2H384c17.7 0 31.4-14.9 38.3-31.2C434.4 116.1 462.9 96 496 96c44.2 0 80 35.8 80 80c0 30.4-17 56.9-42 70.4c-3.6 1.9-6 5.5-6 9.6s2.4 7.7 6 9.6c25 13.5 42 40 42 70.4c0 44.2-35.8 80-80 80c-33.1 0-61.6-20.1-73.7-48.8C415.4 350.9 401.7 336 384 336H192c-17.7 0-31.4 14.9-38.3 31.2C141.6 395.9 113.1 416 80 416c-44.2 0-80-35.8-80-80c0-30.4 17-56.9 42-70.4c3.6-1.9 6-5.5 6-9.6s-2.4-7.7-6-9.6C17 232.9 0 206.4 0 176c0-44.2 35.8-80 80-80c33.1 0 61.6 20.1 73.7 48.8z\"]\n};\nvar faUserInjured = {\n prefix: 'fas',\n iconName: 'user-injured',\n icon: [448, 512, [], \"f728\", \"M240 80H342.7c-7.9-19.5-20.4-36.5-36.2-49.9L240 80zm37.7-68.2C261.3 4.2 243.2 0 224 0c-53.7 0-99.7 33.1-118.7 80h81.4l91-68.2zM224 256c70.7 0 128-57.3 128-128c0-5.4-.3-10.8-1-16H97c-.7 5.2-1 10.6-1 16c0 70.7 57.3 128 128 128zM124 312.4c-9.7 3.1-19.1 7-28 11.7V512H243.7L181.5 408.2 124 312.4zm33-7.2L204.3 384H272c44.2 0 80 35.8 80 80c0 18-6 34.6-16 48h82.3c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304H178.3c-7.2 0-14.3 .4-21.3 1.3zM0 482.3C0 498.7 13.3 512 29.7 512H64V345.4C24.9 378.1 0 427.3 0 482.3zM320 464c0-26.5-21.5-48-48-48H223.5l57.1 95.2C303 507.2 320 487.6 320 464z\"]\n};\nvar faFaceSadTear = {\n prefix: 'fas',\n iconName: 'face-sad-tear',\n icon: [512, 512, [128546, \"sad-tear\"], \"f5b4\", \"M0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zm240 80c0-8.8 7.2-16 16-16c45 0 85.6 20.5 115.7 53.1c6 6.5 5.6 16.6-.9 22.6s-16.6 5.6-22.6-.9c-25-27.1-57.4-42.9-92.3-42.9c-8.8 0-16-7.2-16-16zm-80 80c-26.5 0-48-21-48-47c0-20 28.6-60.4 41.6-77.7c3.2-4.4 9.6-4.4 12.8 0C179.6 308.6 208 349 208 369c0 26-21.5 47-48 47zM367.6 208a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm-192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faSadTear = faFaceSadTear;\nvar faPlane = {\n prefix: 'fas',\n iconName: 'plane',\n icon: [576, 512, [], \"f072\", \"M482.3 192c34.2 0 93.7 29 93.7 64c0 36-59.5 64-93.7 64l-116.6 0L265.2 495.9c-5.7 10-16.3 16.1-27.8 16.1l-56.2 0c-10.6 0-18.3-10.2-15.4-20.4l49-171.6L112 320 68.8 377.6c-3 4-7.8 6.4-12.8 6.4l-42 0c-7.8 0-14-6.3-14-14c0-1.3 .2-2.6 .5-3.9L32 256 .5 145.9c-.4-1.3-.5-2.6-.5-3.9c0-7.8 6.3-14 14-14l42 0c5 0 9.8 2.4 12.8 6.4L112 192l102.9 0-49-171.6C162.9 10.2 170.6 0 181.2 0l56.2 0c11.5 0 22.1 6.2 27.8 16.1L365.7 192l116.6 0z\"]\n};\nvar faTentArrowsDown = {\n prefix: 'fas',\n iconName: 'tent-arrows-down',\n icon: [576, 512, [], \"e581\", \"M209.8 111.9c-8.9-9.9-24-10.7-33.9-1.8l-39.9 36L136 24c0-13.3-10.7-24-24-24S88 10.7 88 24l0 122.1-39.9-36c-9.9-8.9-25-8.1-33.9 1.8s-8.1 25 1.8 33.9l80 72c9.1 8.2 23 8.2 32.1 0l80-72c9.9-8.9 10.7-24 1.8-33.9zm352 0c-8.9-9.9-24-10.7-33.9-1.8l-39.9 36V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V146.1l-39.9-36c-9.9-8.9-25-8.1-33.9 1.8s-8.1 25 1.8 33.9l80 72c9.1 8.2 23 8.2 32.1 0l80-72c9.9-8.9 10.7-24 1.8-33.9zM307.4 166.5c-11.5-8.7-27.3-8.7-38.8 0l-168 128c-6.6 5-11 12.5-12.3 20.7l-24 160c-1.4 9.2 1.3 18.6 7.4 25.6S86.7 512 96 512H240h16c17.7 0 32-14.3 32-32V361.9c0-5.5 4.4-9.9 9.9-9.9c3.7 0 7.2 2.1 8.8 5.5l68.4 136.8c5.4 10.8 16.5 17.7 28.6 17.7H464h16c9.3 0 18.2-4.1 24.2-11.1s8.8-16.4 7.4-25.6l-24-160c-1.2-8.2-5.6-15.7-12.3-20.7l-168-128z\"]\n};\nvar faExclamation = {\n prefix: 'fas',\n iconName: 'exclamation',\n icon: [64, 512, [10069, 10071, 61738], \"21\", \"M64 64c0-17.7-14.3-32-32-32S0 46.3 0 64V320c0 17.7 14.3 32 32 32s32-14.3 32-32V64zM32 480a40 40 0 1 0 0-80 40 40 0 1 0 0 80z\"]\n};\nvar faArrowsSpin = {\n prefix: 'fas',\n iconName: 'arrows-spin',\n icon: [512, 512, [], \"e4bb\", \"M256 96c38.4 0 73.7 13.5 101.3 36.1l-32.6 32.6c-4.6 4.6-5.9 11.5-3.5 17.4s8.3 9.9 14.8 9.9H448c8.8 0 16-7.2 16-16V64c0-6.5-3.9-12.3-9.9-14.8s-12.9-1.1-17.4 3.5l-34 34C363.4 52.6 312.1 32 256 32c-10.9 0-21.5 .8-32 2.3V99.2c10.3-2.1 21-3.2 32-3.2zM132.1 154.7l32.6 32.6c4.6 4.6 11.5 5.9 17.4 3.5s9.9-8.3 9.9-14.8V64c0-8.8-7.2-16-16-16H64c-6.5 0-12.3 3.9-14.8 9.9s-1.1 12.9 3.5 17.4l34 34C52.6 148.6 32 199.9 32 256c0 10.9 .8 21.5 2.3 32H99.2c-2.1-10.3-3.2-21-3.2-32c0-38.4 13.5-73.7 36.1-101.3zM477.7 224H412.8c2.1 10.3 3.2 21 3.2 32c0 38.4-13.5 73.7-36.1 101.3l-32.6-32.6c-4.6-4.6-11.5-5.9-17.4-3.5s-9.9 8.3-9.9 14.8V448c0 8.8 7.2 16 16 16H448c6.5 0 12.3-3.9 14.8-9.9s1.1-12.9-3.5-17.4l-34-34C459.4 363.4 480 312.1 480 256c0-10.9-.8-21.5-2.3-32zM256 416c-38.4 0-73.7-13.5-101.3-36.1l32.6-32.6c4.6-4.6 5.9-11.5 3.5-17.4s-8.3-9.9-14.8-9.9H64c-8.8 0-16 7.2-16 16l0 112c0 6.5 3.9 12.3 9.9 14.8s12.9 1.1 17.4-3.5l34-34C148.6 459.4 199.9 480 256 480c10.9 0 21.5-.8 32-2.3V412.8c-10.3 2.1-21 3.2-32 3.2z\"]\n};\nvar faPrint = {\n prefix: 'fas',\n iconName: 'print',\n icon: [512, 512, [128424, 128438, 9113], \"f02f\", \"M128 0C92.7 0 64 28.7 64 64v96h64V64H354.7L384 93.3V160h64V93.3c0-17-6.7-33.3-18.7-45.3L400 18.7C388 6.7 371.7 0 354.7 0H128zM384 352v32 64H128V384 368 352H384zm64 32h32c17.7 0 32-14.3 32-32V256c0-35.3-28.7-64-64-64H64c-35.3 0-64 28.7-64 64v96c0 17.7 14.3 32 32 32H64v64c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V384zM432 248a24 24 0 1 1 0 48 24 24 0 1 1 0-48z\"]\n};\nvar faTurkishLiraSign = {\n prefix: 'fas',\n iconName: 'turkish-lira-sign',\n icon: [384, 512, [\"try\", \"turkish-lira\"], \"e2bb\", \"M96 32c17.7 0 32 14.3 32 32V99.3L247.2 65.2c17-4.9 34.7 5 39.6 22s-5 34.7-22 39.6L128 165.9v29.4l119.2-34.1c17-4.9 34.7 5 39.6 22s-5 34.7-22 39.6L128 261.9V416h63.8c68.2 0 124.4-53.5 127.8-121.6l.4-8c.9-17.7 15.9-31.2 33.6-30.4s31.2 15.9 30.4 33.6l-.4 8C378.5 399.8 294.1 480 191.8 480H96c-17.7 0-32-14.3-32-32V280.1l-23.2 6.6c-17 4.9-34.7-5-39.6-22s5-34.7 22-39.6L64 213.6V184.1l-23.2 6.6c-17 4.9-34.7-5-39.6-22s5-34.7 22-39.6L64 117.6V64c0-17.7 14.3-32 32-32z\"]\n};\nvar faTry = faTurkishLiraSign;\nvar faTurkishLira = faTurkishLiraSign;\nvar faDollarSign = {\n prefix: 'fas',\n iconName: 'dollar-sign',\n icon: [320, 512, [128178, 61781, \"dollar\", \"usd\"], \"24\", \"M160 0c17.7 0 32 14.3 32 32V67.7c1.6 .2 3.1 .4 4.7 .7c.4 .1 .7 .1 1.1 .2l48 8.8c17.4 3.2 28.9 19.9 25.7 37.2s-19.9 28.9-37.2 25.7l-47.5-8.7c-31.3-4.6-58.9-1.5-78.3 6.2s-27.2 18.3-29 28.1c-2 10.7-.5 16.7 1.2 20.4c1.8 3.9 5.5 8.3 12.8 13.2c16.3 10.7 41.3 17.7 73.7 26.3l2.9 .8c28.6 7.6 63.6 16.8 89.6 33.8c14.2 9.3 27.6 21.9 35.9 39.5c8.5 17.9 10.3 37.9 6.4 59.2c-6.9 38-33.1 63.4-65.6 76.7c-13.7 5.6-28.6 9.2-44.4 11V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V445.1c-.4-.1-.9-.1-1.3-.2l-.2 0 0 0c-24.4-3.8-64.5-14.3-91.5-26.3c-16.1-7.2-23.4-26.1-16.2-42.2s26.1-23.4 42.2-16.2c20.9 9.3 55.3 18.5 75.2 21.6c31.9 4.7 58.2 2 76-5.3c16.9-6.9 24.6-16.9 26.8-28.9c1.9-10.6 .4-16.7-1.3-20.4c-1.9-4-5.6-8.4-13-13.3c-16.4-10.7-41.5-17.7-74-26.3l-2.8-.7 0 0C119.4 279.3 84.4 270 58.4 253c-14.2-9.3-27.5-22-35.8-39.6c-8.4-17.9-10.1-37.9-6.1-59.2C23.7 116 52.3 91.2 84.8 78.3c13.3-5.3 27.9-8.9 43.2-11V32c0-17.7 14.3-32 32-32z\"]\n};\nvar faDollar = faDollarSign;\nvar faUsd = faDollarSign;\nvar faX = {\n prefix: 'fas',\n iconName: 'x',\n icon: [384, 512, [120], \"58\", \"M376.6 84.5c11.3-13.6 9.5-33.8-4.1-45.1s-33.8-9.5-45.1 4.1L192 206 56.6 43.5C45.3 29.9 25.1 28.1 11.5 39.4S-3.9 70.9 7.4 84.5L150.3 256 7.4 427.5c-11.3 13.6-9.5 33.8 4.1 45.1s33.8 9.5 45.1-4.1L192 306 327.4 468.5c11.3 13.6 31.5 15.4 45.1 4.1s15.4-31.5 4.1-45.1L233.7 256 376.6 84.5z\"]\n};\nvar faMagnifyingGlassDollar = {\n prefix: 'fas',\n iconName: 'magnifying-glass-dollar',\n icon: [512, 512, [\"search-dollar\"], \"f688\", \"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM228 104c0-11-9-20-20-20s-20 9-20 20v14c-7.6 1.7-15.2 4.4-22.2 8.5c-13.9 8.3-25.9 22.8-25.8 43.9c.1 20.3 12 33.1 24.7 40.7c11 6.6 24.7 10.8 35.6 14l1.7 .5c12.6 3.8 21.8 6.8 28 10.7c5.1 3.2 5.8 5.4 5.9 8.2c.1 5-1.8 8-5.9 10.5c-5 3.1-12.9 5-21.4 4.7c-11.1-.4-21.5-3.9-35.1-8.5c-2.3-.8-4.7-1.6-7.2-2.4c-10.5-3.5-21.8 2.2-25.3 12.6s2.2 21.8 12.6 25.3c1.9 .6 4 1.3 6.1 2.1l0 0 0 0c8.3 2.9 17.9 6.2 28.2 8.4V312c0 11 9 20 20 20s20-9 20-20V298.2c8-1.7 16-4.5 23.2-9c14.3-8.9 25.1-24.1 24.8-45c-.3-20.3-11.7-33.4-24.6-41.6c-11.5-7.2-25.9-11.6-37.1-15l-.7-.2c-12.8-3.9-21.9-6.7-28.3-10.5c-5.2-3.1-5.3-4.9-5.3-6.7c0-3.7 1.4-6.5 6.2-9.3c5.4-3.2 13.6-5.1 21.5-5c9.6 .1 20.2 2.2 31.2 5.2c10.7 2.8 21.6-3.5 24.5-14.2s-3.5-21.6-14.2-24.5c-6.5-1.7-13.7-3.4-21.1-4.7V104z\"]\n};\nvar faSearchDollar = faMagnifyingGlassDollar;\nvar faUsersGear = {\n prefix: 'fas',\n iconName: 'users-gear',\n icon: [640, 512, [\"users-cog\"], \"f509\", \"M144 160A80 80 0 1 0 144 0a80 80 0 1 0 0 160zm368 0A80 80 0 1 0 512 0a80 80 0 1 0 0 160zM0 298.7C0 310.4 9.6 320 21.3 320H234.7c.2 0 .4 0 .7 0c-26.6-23.5-43.3-57.8-43.3-96c0-7.6 .7-15 1.9-22.3c-13.6-6.3-28.7-9.7-44.6-9.7H106.7C47.8 192 0 239.8 0 298.7zM320 320c24 0 45.9-8.8 62.7-23.3c2.5-3.7 5.2-7.3 8-10.7c2.7-3.3 5.7-6.1 9-8.3C410 262.3 416 243.9 416 224c0-53-43-96-96-96s-96 43-96 96s43 96 96 96zm65.4 60.2c-10.3-5.9-18.1-16.2-20.8-28.2H261.3C187.7 352 128 411.7 128 485.3c0 14.7 11.9 26.7 26.7 26.7H455.2c-2.1-5.2-3.2-10.9-3.2-16.4v-3c-1.3-.7-2.7-1.5-4-2.3l-2.6 1.5c-16.8 9.7-40.5 8-54.7-9.7c-4.5-5.6-8.6-11.5-12.4-17.6l-.1-.2-.1-.2-2.4-4.1-.1-.2-.1-.2c-3.4-6.2-6.4-12.6-9-19.3c-8.2-21.2 2.2-42.6 19-52.3l2.7-1.5c0-.8 0-1.5 0-2.3s0-1.5 0-2.3l-2.7-1.5zM533.3 192H490.7c-15.9 0-31 3.5-44.6 9.7c1.3 7.2 1.9 14.7 1.9 22.3c0 17.4-3.5 33.9-9.7 49c2.5 .9 4.9 2 7.1 3.3l2.6 1.5c1.3-.8 2.6-1.6 4-2.3v-3c0-19.4 13.3-39.1 35.8-42.6c7.9-1.2 16-1.9 24.2-1.9s16.3 .6 24.2 1.9c22.5 3.5 35.8 23.2 35.8 42.6v3c1.3 .7 2.7 1.5 4 2.3l2.6-1.5c16.8-9.7 40.5-8 54.7 9.7c2.3 2.8 4.5 5.8 6.6 8.7c-2.1-57.1-49-102.7-106.6-102.7zm91.3 163.9c6.3-3.6 9.5-11.1 6.8-18c-2.1-5.5-4.6-10.8-7.4-15.9l-2.3-4c-3.1-5.1-6.5-9.9-10.2-14.5c-4.6-5.7-12.7-6.7-19-3l-2.9 1.7c-9.2 5.3-20.4 4-29.6-1.3s-16.1-14.5-16.1-25.1v-3.4c0-7.3-4.9-13.8-12.1-14.9c-6.5-1-13.1-1.5-19.9-1.5s-13.4 .5-19.9 1.5c-7.2 1.1-12.1 7.6-12.1 14.9v3.4c0 10.6-6.9 19.8-16.1 25.1s-20.4 6.6-29.6 1.3l-2.9-1.7c-6.3-3.6-14.4-2.6-19 3c-3.7 4.6-7.1 9.5-10.2 14.6l-2.3 3.9c-2.8 5.1-5.3 10.4-7.4 15.9c-2.6 6.8 .5 14.3 6.8 17.9l2.9 1.7c9.2 5.3 13.7 15.8 13.7 26.4s-4.5 21.1-13.7 26.4l-3 1.7c-6.3 3.6-9.5 11.1-6.8 17.9c2.1 5.5 4.6 10.7 7.4 15.8l2.4 4.1c3 5.1 6.4 9.9 10.1 14.5c4.6 5.7 12.7 6.7 19 3l2.9-1.7c9.2-5.3 20.4-4 29.6 1.3s16.1 14.5 16.1 25.1v3.4c0 7.3 4.9 13.8 12.1 14.9c6.5 1 13.1 1.5 19.9 1.5s13.4-.5 19.9-1.5c7.2-1.1 12.1-7.6 12.1-14.9v-3.4c0-10.6 6.9-19.8 16.1-25.1s20.4-6.6 29.6-1.3l2.9 1.7c6.3 3.6 14.4 2.6 19-3c3.7-4.6 7.1-9.4 10.1-14.5l2.4-4.2c2.8-5.1 5.3-10.3 7.4-15.8c2.6-6.8-.5-14.3-6.8-17.9l-3-1.7c-9.2-5.3-13.7-15.8-13.7-26.4s4.5-21.1 13.7-26.4l3-1.7zM472 384a40 40 0 1 1 80 0 40 40 0 1 1 -80 0z\"]\n};\nvar faUsersCog = faUsersGear;\nvar faPersonMilitaryPointing = {\n prefix: 'fas',\n iconName: 'person-military-pointing',\n icon: [576, 512, [], \"e54a\", \"M246.9 14.1C234 15.2 224 26 224 39c0 13.8 11.2 25 25 25H400c8.8 0 16-7.2 16-16V17.4C416 8 408 .7 398.7 1.4L246.9 14.1zM240 112c0 44.2 35.8 80 80 80s80-35.8 80-80c0-5.5-.6-10.8-1.6-16H241.6c-1 5.2-1.6 10.5-1.6 16zM72 224c-22.1 0-40 17.9-40 40s17.9 40 40 40H224v89.4L386.8 230.5c-13.3-4.3-27.3-6.5-41.6-6.5H240 72zm345.7 20.9L246.6 416H416V369.7l53.6 90.6c11.2 19 35.8 25.3 54.8 14.1s25.3-35.8 14.1-54.8L462.3 290.8c-11.2-18.9-26.6-34.5-44.6-45.9zM224 448v32c0 17.7 14.3 32 32 32H384c17.7 0 32-14.3 32-32V448H224z\"]\n};\nvar faBuildingColumns = {\n prefix: 'fas',\n iconName: 'building-columns',\n icon: [512, 512, [\"bank\", \"institution\", \"museum\", \"university\"], \"f19c\", \"M243.4 2.6l-224 96c-14 6-21.8 21-18.7 35.8S16.8 160 32 160v8c0 13.3 10.7 24 24 24H456c13.3 0 24-10.7 24-24v-8c15.2 0 28.3-10.7 31.3-25.6s-4.8-29.9-18.7-35.8l-224-96c-8-3.4-17.2-3.4-25.2 0zM128 224H64V420.3c-.6 .3-1.2 .7-1.8 1.1l-48 32c-11.7 7.8-17 22.4-12.9 35.9S17.9 512 32 512H480c14.1 0 26.5-9.2 30.6-22.7s-1.1-28.1-12.9-35.9l-48-32c-.6-.4-1.2-.7-1.8-1.1V224H384V416H344V224H280V416H232V224H168V416H128V224zM256 64a32 32 0 1 1 0 64 32 32 0 1 1 0-64z\"]\n};\nvar faBank = faBuildingColumns;\nvar faInstitution = faBuildingColumns;\nvar faMuseum = faBuildingColumns;\nvar faUniversity = faBuildingColumns;\nvar faUmbrella = {\n prefix: 'fas',\n iconName: 'umbrella',\n icon: [576, 512, [], \"f0e9\", \"M288 0c17.7 0 32 14.3 32 32V49.7C451.8 63.4 557.7 161 573.9 285.9c2 15.6-17.3 24.4-27.8 12.7C532.1 283 504.8 272 480 272c-38.7 0-71 27.5-78.4 64.1c-1.7 8.7-8.7 15.9-17.6 15.9s-15.8-7.2-17.6-15.9C359 299.5 326.7 272 288 272s-71 27.5-78.4 64.1c-1.7 8.7-8.7 15.9-17.6 15.9s-15.8-7.2-17.6-15.9C167 299.5 134.7 272 96 272c-24.8 0-52.1 11-66.1 26.7C19.4 310.4 .1 301.5 2.1 285.9C18.3 161 124.2 63.4 256 49.7V32c0-17.7 14.3-32 32-32zm0 304c12.3 0 23.5 4.6 32 12.2V430.6c0 45-36.5 81.4-81.4 81.4c-30.8 0-59-17.4-72.8-45l-2.3-4.7c-7.9-15.8-1.5-35 14.3-42.9s35-1.5 42.9 14.3l2.3 4.7c3 5.9 9 9.6 15.6 9.6c9.6 0 17.4-7.8 17.4-17.4V316.2c8.5-7.6 19.7-12.2 32-12.2z\"]\n};\nvar faTrowel = {\n prefix: 'fas',\n iconName: 'trowel',\n icon: [512, 512, [], \"e589\", \"M343.9 213.4L245.3 312l65.4 65.4c7.9 7.9 11.1 19.4 8.4 30.3s-10.8 19.6-21.5 22.9l-256 80c-11.4 3.5-23.8 .5-32.2-7.9S-2.1 481.8 1.5 470.5l80-256c3.3-10.7 12-18.9 22.9-21.5s22.4 .5 30.3 8.4L200 266.7l98.6-98.6c-14.3-14.6-14.2-38 .3-52.5l95.4-95.4c26.9-26.9 70.5-26.9 97.5 0s26.9 70.5 0 97.5l-95.4 95.4c-14.5 14.5-37.9 14.6-52.5 .3z\"]\n};\nvar faD = {\n prefix: 'fas',\n iconName: 'd',\n icon: [384, 512, [100], \"44\", \"M0 96C0 60.7 28.7 32 64 32h96c123.7 0 224 100.3 224 224s-100.3 224-224 224H64c-35.3 0-64-28.7-64-64V96zm160 0H64V416h96c88.4 0 160-71.6 160-160s-71.6-160-160-160z\"]\n};\nvar faStapler = {\n prefix: 'fas',\n iconName: 'stapler',\n icon: [640, 512, [], \"e5af\", \"M640 299.3V304 432c0 26.5-21.5 48-48 48H512 448 64c-17.7 0-32-14.3-32-32s14.3-32 32-32H448V368H96c-17.7 0-32-14.3-32-32V219.4L33.8 214C14.2 210.5 0 193.5 0 173.7c0-8.9 2.9-17.5 8.2-24.6l35.6-47.5C76.7 57.8 128.2 32 182.9 32c27 0 53.6 6.3 77.8 18.4L586.9 213.5C619.5 229.7 640 263 640 299.3zM448 304V288L128 230.9V304H448z\"]\n};\nvar faMasksTheater = {\n prefix: 'fas',\n iconName: 'masks-theater',\n icon: [640, 512, [127917, \"theater-masks\"], \"f630\", \"M74.6 373.2c41.7 36.1 108 82.5 166.1 73.7c6.1-.9 12.1-2.5 18-4.5c-9.2-12.3-17.3-24.4-24.2-35.4c-21.9-35-28.8-75.2-25.9-113.6c-20.6 4.1-39.2 13-54.7 25.4c-6.5 5.2-16.3 1.3-14.8-7c6.4-33.5 33-60.9 68.2-66.3c2.6-.4 5.3-.7 7.9-.8l19.4-131.3c2-13.8 8-32.7 25-45.9C278.2 53.2 310.5 37 363.2 32.2c-.8-.7-1.6-1.4-2.4-2.1C340.6 14.5 288.4-11.5 175.7 5.6S20.5 63 5.7 83.9C0 91.9-.8 102 .6 111.8L24.8 276.1c5.5 37.3 21.5 72.6 49.8 97.2zm87.7-219.6c4.4-3.1 10.8-2 11.8 3.3c.1 .5 .2 1.1 .3 1.6c3.2 21.8-11.6 42-33.1 45.3s-41.5-11.8-44.7-33.5c-.1-.5-.1-1.1-.2-1.6c-.6-5.4 5.2-8.4 10.3-6.7c9 3 18.8 3.9 28.7 2.4s19.1-5.3 26.8-10.8zM261.6 390c29.4 46.9 79.5 110.9 137.6 119.7s124.5-37.5 166.1-73.7c28.3-24.5 44.3-59.8 49.8-97.2l24.2-164.3c1.4-9.8 .6-19.9-5.1-27.9c-14.8-20.9-57.3-61.2-170-78.3S299.4 77.2 279.2 92.8c-7.8 6-11.5 15.4-12.9 25.2L242.1 282.3c-5.5 37.3-.4 75.8 19.6 107.7zM404.5 235.3c-7.7-5.5-16.8-9.3-26.8-10.8s-19.8-.6-28.7 2.4c-5.1 1.7-10.9-1.3-10.3-6.7c.1-.5 .1-1.1 .2-1.6c3.2-21.8 23.2-36.8 44.7-33.5s36.3 23.5 33.1 45.3c-.1 .5-.2 1.1-.3 1.6c-1 5.3-7.4 6.4-11.8 3.3zm136.2 15.5c-1 5.3-7.4 6.4-11.8 3.3c-7.7-5.5-16.8-9.3-26.8-10.8s-19.8-.6-28.7 2.4c-5.1 1.7-10.9-1.3-10.3-6.7c.1-.5 .1-1.1 .2-1.6c3.2-21.8 23.2-36.8 44.7-33.5s36.3 23.5 33.1 45.3c-.1 .5-.2 1.1-.3 1.6zM530 350.2c-19.6 44.7-66.8 72.5-116.8 64.9s-87.1-48.2-93-96.7c-1-8.3 8.9-12.1 15.2-6.7c23.9 20.8 53.6 35.3 87 40.3s66.1 .1 94.9-12.8c7.6-3.4 16 3.2 12.6 10.9z\"]\n};\nvar faTheaterMasks = faMasksTheater;\nvar faKipSign = {\n prefix: 'fas',\n iconName: 'kip-sign',\n icon: [384, 512, [], \"e1c4\", \"M340.8 88.3c13.4-11.5 15-31.7 3.5-45.1s-31.7-15-45.1-3.5L128 186.4V64c0-17.7-14.3-32-32-32S64 46.3 64 64V224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H64V448c0 17.7 14.3 32 32 32s32-14.3 32-32V325.6L299.2 472.3c13.4 11.5 33.6 9.9 45.1-3.5s9.9-33.6-3.5-45.1L182.5 288H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H182.5L340.8 88.3z\"]\n};\nvar faHandPointLeft = {\n prefix: 'fas',\n iconName: 'hand-point-left',\n icon: [512, 512, [], \"f0a5\", \"M32 96C14.3 96 0 110.3 0 128s14.3 32 32 32l208 0 0-64L32 96zM192 288c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0zm-64-64c0 17.7 14.3 32 32 32l48 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-48 0c-17.7 0-32 14.3-32 32zm96 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0zm88-96l-.6 0c5.4 9.4 8.6 20.3 8.6 32c0 13.2-4 25.4-10.8 35.6c24.9 8.7 42.8 32.5 42.8 60.4c0 11.7-3.1 22.6-8.6 32l8.6 0c88.4 0 160-71.6 160-160l0-61.7c0-42.4-16.9-83.1-46.9-113.1l-11.6-11.6C429.5 77.5 396.9 64 363 64l-27 0c-35.3 0-64 28.7-64 64l0 88c0 22.1 17.9 40 40 40s40-17.9 40-40l0-56c0-8.8 7.2-16 16-16s16 7.2 16 16l0 56c0 39.8-32.2 72-72 72z\"]\n};\nvar faHandshakeSimple = {\n prefix: 'fas',\n iconName: 'handshake-simple',\n icon: [640, 512, [129309, \"handshake-alt\"], \"f4c6\", \"M323.4 85.2l-96.8 78.4c-16.1 13-19.2 36.4-7 53.1c12.9 17.8 38 21.3 55.3 7.8l99.3-77.2c7-5.4 17-4.2 22.5 2.8s4.2 17-2.8 22.5l-20.9 16.2L550.2 352H592c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48H516h-4-.7l-3.9-2.5L434.8 79c-15.3-9.8-33.2-15-51.4-15c-21.8 0-43 7.5-60 21.2zm22.8 124.4l-51.7 40.2C263 274.4 217.3 268 193.7 235.6c-22.2-30.5-16.6-73.1 12.7-96.8l83.2-67.3c-11.6-4.9-24.1-7.4-36.8-7.4C234 64 215.7 69.6 200 80l-72 48H48c-26.5 0-48 21.5-48 48V304c0 26.5 21.5 48 48 48H156.2l91.4 83.4c19.6 17.9 49.9 16.5 67.8-3.1c5.5-6.1 9.2-13.2 11.1-20.6l17 15.6c19.5 17.9 49.9 16.6 67.8-2.9c4.5-4.9 7.8-10.6 9.9-16.5c19.4 13 45.8 10.3 62.1-7.5c17.9-19.5 16.6-49.9-2.9-67.8l-134.2-123z\"]\n};\nvar faHandshakeAlt = faHandshakeSimple;\nvar faJetFighter = {\n prefix: 'fas',\n iconName: 'jet-fighter',\n icon: [640, 512, [\"fighter-jet\"], \"f0fb\", \"M160 24c0-13.3 10.7-24 24-24H296c13.3 0 24 10.7 24 24s-10.7 24-24 24H280L384 192H500.4c7.7 0 15.3 1.4 22.5 4.1L625 234.4c9 3.4 15 12 15 21.6s-6 18.2-15 21.6L522.9 315.9c-7.2 2.7-14.8 4.1-22.5 4.1H384L280 464h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H184c-13.3 0-24-10.7-24-24s10.7-24 24-24h8V320H160l-54.6 54.6c-6 6-14.1 9.4-22.6 9.4H64c-17.7 0-32-14.3-32-32V288c-17.7 0-32-14.3-32-32s14.3-32 32-32V160c0-17.7 14.3-32 32-32H82.7c8.5 0 16.6 3.4 22.6 9.4L160 192h32V48h-8c-13.3 0-24-10.7-24-24zM80 240c-8.8 0-16 7.2-16 16s7.2 16 16 16h64c8.8 0 16-7.2 16-16s-7.2-16-16-16H80z\"]\n};\nvar faFighterJet = faJetFighter;\nvar faSquareShareNodes = {\n prefix: 'fas',\n iconName: 'square-share-nodes',\n icon: [448, 512, [\"share-alt-square\"], \"f1e1\", \"M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM384 160c0 35.3-28.7 64-64 64c-15.4 0-29.5-5.4-40.6-14.5L194.1 256l85.3 46.5c11-9.1 25.2-14.5 40.6-14.5c35.3 0 64 28.7 64 64s-28.7 64-64 64s-64-28.7-64-64c0-2.5 .1-4.9 .4-7.3L174.5 300c-11.7 12.3-28.2 20-46.5 20c-35.3 0-64-28.7-64-64s28.7-64 64-64c18.3 0 34.8 7.7 46.5 20l81.9-44.7c-.3-2.4-.4-4.9-.4-7.3c0-35.3 28.7-64 64-64s64 28.7 64 64z\"]\n};\nvar faShareAltSquare = faSquareShareNodes;\nvar faBarcode = {\n prefix: 'fas',\n iconName: 'barcode',\n icon: [512, 512, [], \"f02a\", \"M24 32C10.7 32 0 42.7 0 56V456c0 13.3 10.7 24 24 24H40c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24H24zm88 0c-8.8 0-16 7.2-16 16V464c0 8.8 7.2 16 16 16s16-7.2 16-16V48c0-8.8-7.2-16-16-16zm72 0c-13.3 0-24 10.7-24 24V456c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24H184zm96 0c-13.3 0-24 10.7-24 24V456c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24H280zM448 56V456c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24H472c-13.3 0-24 10.7-24 24zm-64-8V464c0 8.8 7.2 16 16 16s16-7.2 16-16V48c0-8.8-7.2-16-16-16s-16 7.2-16 16z\"]\n};\nvar faPlusMinus = {\n prefix: 'fas',\n iconName: 'plus-minus',\n icon: [384, 512, [], \"e43c\", \"M224 32c0-17.7-14.3-32-32-32s-32 14.3-32 32V144H48c-17.7 0-32 14.3-32 32s14.3 32 32 32H160V320c0 17.7 14.3 32 32 32s32-14.3 32-32V208H336c17.7 0 32-14.3 32-32s-14.3-32-32-32H224V32zM0 480c0 17.7 14.3 32 32 32H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32z\"]\n};\nvar faVideo = {\n prefix: 'fas',\n iconName: 'video',\n icon: [576, 512, [\"video-camera\"], \"f03d\", \"M0 128C0 92.7 28.7 64 64 64H320c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128zM559.1 99.8c10.4 5.6 16.9 16.4 16.9 28.2V384c0 11.8-6.5 22.6-16.9 28.2s-23 5-32.9-1.6l-96-64L416 337.1V320 192 174.9l14.2-9.5 96-64c9.8-6.5 22.4-7.2 32.9-1.6z\"]\n};\nvar faVideoCamera = faVideo;\nvar faGraduationCap = {\n prefix: 'fas',\n iconName: 'graduation-cap',\n icon: [640, 512, [127891, \"mortar-board\"], \"f19d\", \"M320 32c-8.1 0-16.1 1.4-23.7 4.1L15.8 137.4C6.3 140.9 0 149.9 0 160s6.3 19.1 15.8 22.6l57.9 20.9C57.3 229.3 48 259.8 48 291.9v28.1c0 28.4-10.8 57.7-22.3 80.8c-6.5 13-13.9 25.8-22.5 37.6C0 442.7-.9 448.3 .9 453.4s6 8.9 11.2 10.2l64 16c4.2 1.1 8.7 .3 12.4-2s6.3-6.1 7.1-10.4c8.6-42.8 4.3-81.2-2.1-108.7C90.3 344.3 86 329.8 80 316.5V291.9c0-30.2 10.2-58.7 27.9-81.5c12.9-15.5 29.6-28 49.2-35.7l157-61.7c8.2-3.2 17.5 .8 20.7 9s-.8 17.5-9 20.7l-157 61.7c-12.4 4.9-23.3 12.4-32.2 21.6l159.6 57.6c7.6 2.7 15.6 4.1 23.7 4.1s16.1-1.4 23.7-4.1L624.2 182.6c9.5-3.4 15.8-12.5 15.8-22.6s-6.3-19.1-15.8-22.6L343.7 36.1C336.1 33.4 328.1 32 320 32zM128 408c0 35.3 86 72 192 72s192-36.7 192-72L496.7 262.6 354.5 314c-11.1 4-22.8 6-34.5 6s-23.5-2-34.5-6L143.3 262.6 128 408z\"]\n};\nvar faMortarBoard = faGraduationCap;\nvar faHandHoldingMedical = {\n prefix: 'fas',\n iconName: 'hand-holding-medical',\n icon: [576, 512, [], \"e05c\", \"M224 24V80H168c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h56v56c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V176h56c13.3 0 24-10.7 24-24V104c0-13.3-10.7-24-24-24H320V24c0-13.3-10.7-24-24-24H248c-13.3 0-24 10.7-24 24zM559.7 392.2c17.8-13.1 21.6-38.1 8.5-55.9s-38.1-21.6-55.9-8.5L392.6 416H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h16 64c17.7 0 32-14.3 32-32s-14.3-32-32-32H288 272 193.7c-29.1 0-57.3 9.9-80 28L68.8 384H32c-17.7 0-32 14.3-32 32v64c0 17.7 14.3 32 32 32H192 352.5c29 0 57.3-9.3 80.7-26.5l126.6-93.3zm-367-8.2l.9 0 0 0c-.3 0-.6 0-.9 0z\"]\n};\nvar faPersonCircleCheck = {\n prefix: 'fas',\n iconName: 'person-circle-check',\n icon: [576, 512, [], \"e53e\", \"M112 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm40 304V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V256.9L59.4 304.5c-9.1 15.1-28.8 20-43.9 10.9s-20-28.8-10.9-43.9l58.3-97c17.4-28.9 48.6-46.6 82.3-46.6h29.7c33.7 0 64.9 17.7 82.3 46.6l44.9 74.7c-16.1 17.6-28.6 38.5-36.6 61.5c-1.9-1.8-3.5-3.9-4.9-6.3L232 256.9V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V352H152zm136 16a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm211.3-43.3c-6.2-6.2-16.4-6.2-22.6 0L416 385.4l-28.7-28.7c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l40 40c6.2 6.2 16.4 6.2 22.6 0l72-72c6.2-6.2 6.2-16.4 0-22.6z\"]\n};\nvar faTurnUp = {\n prefix: 'fas',\n iconName: 'turn-up',\n icon: [384, 512, [10548, \"level-up-alt\"], \"f3bf\", \"M350 177.5c3.8-8.8 2-19-4.6-26l-136-144C204.9 2.7 198.6 0 192 0s-12.9 2.7-17.4 7.5l-136 144c-6.6 7-8.4 17.2-4.6 26s12.5 14.5 22 14.5h88l0 192c0 17.7-14.3 32-32 32H32c-17.7 0-32 14.3-32 32v32c0 17.7 14.3 32 32 32l80 0c70.7 0 128-57.3 128-128l0-192h88c9.6 0 18.2-5.7 22-14.5z\"]\n};\nvar faLevelUpAlt = faTurnUp;\nvar icons = {\n fa0: fa0,\n fa1: fa1,\n fa2: fa2,\n fa3: fa3,\n fa4: fa4,\n fa5: fa5,\n fa6: fa6,\n fa7: fa7,\n fa8: fa8,\n fa9: fa9,\n faFillDrip: faFillDrip,\n faArrowsToCircle: faArrowsToCircle,\n faCircleChevronRight: faCircleChevronRight,\n faChevronCircleRight: faChevronCircleRight,\n faAt: faAt,\n faTrashCan: faTrashCan,\n faTrashAlt: faTrashAlt,\n faTextHeight: faTextHeight,\n faUserXmark: faUserXmark,\n faUserTimes: faUserTimes,\n faStethoscope: faStethoscope,\n faMessage: faMessage,\n faCommentAlt: faCommentAlt,\n faInfo: faInfo,\n faDownLeftAndUpRightToCenter: faDownLeftAndUpRightToCenter,\n faCompressAlt: faCompressAlt,\n faExplosion: faExplosion,\n faFileLines: faFileLines,\n faFileAlt: faFileAlt,\n faFileText: faFileText,\n faWaveSquare: faWaveSquare,\n faRing: faRing,\n faBuildingUn: faBuildingUn,\n faDiceThree: faDiceThree,\n faCalendarDays: faCalendarDays,\n faCalendarAlt: faCalendarAlt,\n faAnchorCircleCheck: faAnchorCircleCheck,\n faBuildingCircleArrowRight: faBuildingCircleArrowRight,\n faVolleyball: faVolleyball,\n faVolleyballBall: faVolleyballBall,\n faArrowsUpToLine: faArrowsUpToLine,\n faSortDown: faSortDown,\n faSortDesc: faSortDesc,\n faCircleMinus: faCircleMinus,\n faMinusCircle: faMinusCircle,\n faDoorOpen: faDoorOpen,\n faRightFromBracket: faRightFromBracket,\n faSignOutAlt: faSignOutAlt,\n faAtom: faAtom,\n faSoap: faSoap,\n faIcons: faIcons,\n faHeartMusicCameraBolt: faHeartMusicCameraBolt,\n faMicrophoneLinesSlash: faMicrophoneLinesSlash,\n faMicrophoneAltSlash: faMicrophoneAltSlash,\n faBridgeCircleCheck: faBridgeCircleCheck,\n faPumpMedical: faPumpMedical,\n faFingerprint: faFingerprint,\n faHandPointRight: faHandPointRight,\n faMagnifyingGlassLocation: faMagnifyingGlassLocation,\n faSearchLocation: faSearchLocation,\n faForwardStep: faForwardStep,\n faStepForward: faStepForward,\n faFaceSmileBeam: faFaceSmileBeam,\n faSmileBeam: faSmileBeam,\n faFlagCheckered: faFlagCheckered,\n faFootball: faFootball,\n faFootballBall: faFootballBall,\n faSchoolCircleExclamation: faSchoolCircleExclamation,\n faCrop: faCrop,\n faAnglesDown: faAnglesDown,\n faAngleDoubleDown: faAngleDoubleDown,\n faUsersRectangle: faUsersRectangle,\n faPeopleRoof: faPeopleRoof,\n faPeopleLine: faPeopleLine,\n faBeerMugEmpty: faBeerMugEmpty,\n faBeer: faBeer,\n faDiagramPredecessor: faDiagramPredecessor,\n faArrowUpLong: faArrowUpLong,\n faLongArrowUp: faLongArrowUp,\n faFireFlameSimple: faFireFlameSimple,\n faBurn: faBurn,\n faPerson: faPerson,\n faMale: faMale,\n faLaptop: faLaptop,\n faFileCsv: faFileCsv,\n faMenorah: faMenorah,\n faTruckPlane: faTruckPlane,\n faRecordVinyl: faRecordVinyl,\n faFaceGrinStars: faFaceGrinStars,\n faGrinStars: faGrinStars,\n faBong: faBong,\n faSpaghettiMonsterFlying: faSpaghettiMonsterFlying,\n faPastafarianism: faPastafarianism,\n faArrowDownUpAcrossLine: faArrowDownUpAcrossLine,\n faSpoon: faSpoon,\n faUtensilSpoon: faUtensilSpoon,\n faJarWheat: faJarWheat,\n faEnvelopesBulk: faEnvelopesBulk,\n faMailBulk: faMailBulk,\n faFileCircleExclamation: faFileCircleExclamation,\n faCircleH: faCircleH,\n faHospitalSymbol: faHospitalSymbol,\n faPager: faPager,\n faAddressBook: faAddressBook,\n faContactBook: faContactBook,\n faStrikethrough: faStrikethrough,\n faK: faK,\n faLandmarkFlag: faLandmarkFlag,\n faPencil: faPencil,\n faPencilAlt: faPencilAlt,\n faBackward: faBackward,\n faCaretRight: faCaretRight,\n faComments: faComments,\n faPaste: faPaste,\n faFileClipboard: faFileClipboard,\n faCodePullRequest: faCodePullRequest,\n faClipboardList: faClipboardList,\n faTruckRampBox: faTruckRampBox,\n faTruckLoading: faTruckLoading,\n faUserCheck: faUserCheck,\n faVialVirus: faVialVirus,\n faSheetPlastic: faSheetPlastic,\n faBlog: faBlog,\n faUserNinja: faUserNinja,\n faPersonArrowUpFromLine: faPersonArrowUpFromLine,\n faScrollTorah: faScrollTorah,\n faTorah: faTorah,\n faBroomBall: faBroomBall,\n faQuidditch: faQuidditch,\n faQuidditchBroomBall: faQuidditchBroomBall,\n faToggleOff: faToggleOff,\n faBoxArchive: faBoxArchive,\n faArchive: faArchive,\n faPersonDrowning: faPersonDrowning,\n faArrowDown91: faArrowDown91,\n faSortNumericDesc: faSortNumericDesc,\n faSortNumericDownAlt: faSortNumericDownAlt,\n faFaceGrinTongueSquint: faFaceGrinTongueSquint,\n faGrinTongueSquint: faGrinTongueSquint,\n faSprayCan: faSprayCan,\n faTruckMonster: faTruckMonster,\n faW: faW,\n faEarthAfrica: faEarthAfrica,\n faGlobeAfrica: faGlobeAfrica,\n faRainbow: faRainbow,\n faCircleNotch: faCircleNotch,\n faTabletScreenButton: faTabletScreenButton,\n faTabletAlt: faTabletAlt,\n faPaw: faPaw,\n faCloud: faCloud,\n faTrowelBricks: faTrowelBricks,\n faFaceFlushed: faFaceFlushed,\n faFlushed: faFlushed,\n faHospitalUser: faHospitalUser,\n faTentArrowLeftRight: faTentArrowLeftRight,\n faGavel: faGavel,\n faLegal: faLegal,\n faBinoculars: faBinoculars,\n faMicrophoneSlash: faMicrophoneSlash,\n faBoxTissue: faBoxTissue,\n faMotorcycle: faMotorcycle,\n faBellConcierge: faBellConcierge,\n faConciergeBell: faConciergeBell,\n faPenRuler: faPenRuler,\n faPencilRuler: faPencilRuler,\n faPeopleArrows: faPeopleArrows,\n faPeopleArrowsLeftRight: faPeopleArrowsLeftRight,\n faMarsAndVenusBurst: faMarsAndVenusBurst,\n faSquareCaretRight: faSquareCaretRight,\n faCaretSquareRight: faCaretSquareRight,\n faScissors: faScissors,\n faCut: faCut,\n faSunPlantWilt: faSunPlantWilt,\n faToiletsPortable: faToiletsPortable,\n faHockeyPuck: faHockeyPuck,\n faTable: faTable,\n faMagnifyingGlassArrowRight: faMagnifyingGlassArrowRight,\n faTachographDigital: faTachographDigital,\n faDigitalTachograph: faDigitalTachograph,\n faUsersSlash: faUsersSlash,\n faClover: faClover,\n faReply: faReply,\n faMailReply: faMailReply,\n faStarAndCrescent: faStarAndCrescent,\n faHouseFire: faHouseFire,\n faSquareMinus: faSquareMinus,\n faMinusSquare: faMinusSquare,\n faHelicopter: faHelicopter,\n faCompass: faCompass,\n faSquareCaretDown: faSquareCaretDown,\n faCaretSquareDown: faCaretSquareDown,\n faFileCircleQuestion: faFileCircleQuestion,\n faLaptopCode: faLaptopCode,\n faSwatchbook: faSwatchbook,\n faPrescriptionBottle: faPrescriptionBottle,\n faBars: faBars,\n faNavicon: faNavicon,\n faPeopleGroup: faPeopleGroup,\n faHourglassEnd: faHourglassEnd,\n faHourglass3: faHourglass3,\n faHeartCrack: faHeartCrack,\n faHeartBroken: faHeartBroken,\n faSquareUpRight: faSquareUpRight,\n faExternalLinkSquareAlt: faExternalLinkSquareAlt,\n faFaceKissBeam: faFaceKissBeam,\n faKissBeam: faKissBeam,\n faFilm: faFilm,\n faRulerHorizontal: faRulerHorizontal,\n faPeopleRobbery: faPeopleRobbery,\n faLightbulb: faLightbulb,\n faCaretLeft: faCaretLeft,\n faCircleExclamation: faCircleExclamation,\n faExclamationCircle: faExclamationCircle,\n faSchoolCircleXmark: faSchoolCircleXmark,\n faArrowRightFromBracket: faArrowRightFromBracket,\n faSignOut: faSignOut,\n faCircleChevronDown: faCircleChevronDown,\n faChevronCircleDown: faChevronCircleDown,\n faUnlockKeyhole: faUnlockKeyhole,\n faUnlockAlt: faUnlockAlt,\n faCloudShowersHeavy: faCloudShowersHeavy,\n faHeadphonesSimple: faHeadphonesSimple,\n faHeadphonesAlt: faHeadphonesAlt,\n faSitemap: faSitemap,\n faCircleDollarToSlot: faCircleDollarToSlot,\n faDonate: faDonate,\n faMemory: faMemory,\n faRoadSpikes: faRoadSpikes,\n faFireBurner: faFireBurner,\n faFlag: faFlag,\n faHanukiah: faHanukiah,\n faFeather: faFeather,\n faVolumeLow: faVolumeLow,\n faVolumeDown: faVolumeDown,\n faCommentSlash: faCommentSlash,\n faCloudSunRain: faCloudSunRain,\n faCompress: faCompress,\n faWheatAwn: faWheatAwn,\n faWheatAlt: faWheatAlt,\n faAnkh: faAnkh,\n faHandsHoldingChild: faHandsHoldingChild,\n faAsterisk: faAsterisk,\n faSquareCheck: faSquareCheck,\n faCheckSquare: faCheckSquare,\n faPesetaSign: faPesetaSign,\n faHeading: faHeading,\n faHeader: faHeader,\n faGhost: faGhost,\n faList: faList,\n faListSquares: faListSquares,\n faSquarePhoneFlip: faSquarePhoneFlip,\n faPhoneSquareAlt: faPhoneSquareAlt,\n faCartPlus: faCartPlus,\n faGamepad: faGamepad,\n faCircleDot: faCircleDot,\n faDotCircle: faDotCircle,\n faFaceDizzy: faFaceDizzy,\n faDizzy: faDizzy,\n faEgg: faEgg,\n faHouseMedicalCircleXmark: faHouseMedicalCircleXmark,\n faCampground: faCampground,\n faFolderPlus: faFolderPlus,\n faFutbol: faFutbol,\n faFutbolBall: faFutbolBall,\n faSoccerBall: faSoccerBall,\n faPaintbrush: faPaintbrush,\n faPaintBrush: faPaintBrush,\n faLock: faLock,\n faGasPump: faGasPump,\n faHotTubPerson: faHotTubPerson,\n faHotTub: faHotTub,\n faMapLocation: faMapLocation,\n faMapMarked: faMapMarked,\n faHouseFloodWater: faHouseFloodWater,\n faTree: faTree,\n faBridgeLock: faBridgeLock,\n faSackDollar: faSackDollar,\n faPenToSquare: faPenToSquare,\n faEdit: faEdit,\n faCarSide: faCarSide,\n faShareNodes: faShareNodes,\n faShareAlt: faShareAlt,\n faHeartCircleMinus: faHeartCircleMinus,\n faHourglassHalf: faHourglassHalf,\n faHourglass2: faHourglass2,\n faMicroscope: faMicroscope,\n faSink: faSink,\n faBagShopping: faBagShopping,\n faShoppingBag: faShoppingBag,\n faArrowDownZA: faArrowDownZA,\n faSortAlphaDesc: faSortAlphaDesc,\n faSortAlphaDownAlt: faSortAlphaDownAlt,\n faMitten: faMitten,\n faPersonRays: faPersonRays,\n faUsers: faUsers,\n faEyeSlash: faEyeSlash,\n faFlaskVial: faFlaskVial,\n faHand: faHand,\n faHandPaper: faHandPaper,\n faOm: faOm,\n faWorm: faWorm,\n faHouseCircleXmark: faHouseCircleXmark,\n faPlug: faPlug,\n faChevronUp: faChevronUp,\n faHandSpock: faHandSpock,\n faStopwatch: faStopwatch,\n faFaceKiss: faFaceKiss,\n faKiss: faKiss,\n faBridgeCircleXmark: faBridgeCircleXmark,\n faFaceGrinTongue: faFaceGrinTongue,\n faGrinTongue: faGrinTongue,\n faChessBishop: faChessBishop,\n faFaceGrinWink: faFaceGrinWink,\n faGrinWink: faGrinWink,\n faEarDeaf: faEarDeaf,\n faDeaf: faDeaf,\n faDeafness: faDeafness,\n faHardOfHearing: faHardOfHearing,\n faRoadCircleCheck: faRoadCircleCheck,\n faDiceFive: faDiceFive,\n faSquareRss: faSquareRss,\n faRssSquare: faRssSquare,\n faLandMineOn: faLandMineOn,\n faICursor: faICursor,\n faStamp: faStamp,\n faStairs: faStairs,\n faI: faI,\n faHryvniaSign: faHryvniaSign,\n faHryvnia: faHryvnia,\n faPills: faPills,\n faFaceGrinWide: faFaceGrinWide,\n faGrinAlt: faGrinAlt,\n faTooth: faTooth,\n faV: faV,\n faBangladeshiTakaSign: faBangladeshiTakaSign,\n faBicycle: faBicycle,\n faStaffSnake: faStaffSnake,\n faRodAsclepius: faRodAsclepius,\n faRodSnake: faRodSnake,\n faStaffAesculapius: faStaffAesculapius,\n faHeadSideCoughSlash: faHeadSideCoughSlash,\n faTruckMedical: faTruckMedical,\n faAmbulance: faAmbulance,\n faWheatAwnCircleExclamation: faWheatAwnCircleExclamation,\n faSnowman: faSnowman,\n faMortarPestle: faMortarPestle,\n faRoadBarrier: faRoadBarrier,\n faSchool: faSchool,\n faIgloo: faIgloo,\n faJoint: faJoint,\n faAngleRight: faAngleRight,\n faHorse: faHorse,\n faQ: faQ,\n faG: faG,\n faNotesMedical: faNotesMedical,\n faTemperatureHalf: faTemperatureHalf,\n faTemperature2: faTemperature2,\n faThermometer2: faThermometer2,\n faThermometerHalf: faThermometerHalf,\n faDongSign: faDongSign,\n faCapsules: faCapsules,\n faPooStorm: faPooStorm,\n faPooBolt: faPooBolt,\n faFaceFrownOpen: faFaceFrownOpen,\n faFrownOpen: faFrownOpen,\n faHandPointUp: faHandPointUp,\n faMoneyBill: faMoneyBill,\n faBookmark: faBookmark,\n faAlignJustify: faAlignJustify,\n faUmbrellaBeach: faUmbrellaBeach,\n faHelmetUn: faHelmetUn,\n faBullseye: faBullseye,\n faBacon: faBacon,\n faHandPointDown: faHandPointDown,\n faArrowUpFromBracket: faArrowUpFromBracket,\n faFolder: faFolder,\n faFolderBlank: faFolderBlank,\n faFileWaveform: faFileWaveform,\n faFileMedicalAlt: faFileMedicalAlt,\n faRadiation: faRadiation,\n faChartSimple: faChartSimple,\n faMarsStroke: faMarsStroke,\n faVial: faVial,\n faGauge: faGauge,\n faDashboard: faDashboard,\n faGaugeMed: faGaugeMed,\n faTachometerAltAverage: faTachometerAltAverage,\n faWandMagicSparkles: faWandMagicSparkles,\n faMagicWandSparkles: faMagicWandSparkles,\n faE: faE,\n faPenClip: faPenClip,\n faPenAlt: faPenAlt,\n faBridgeCircleExclamation: faBridgeCircleExclamation,\n faUser: faUser,\n faSchoolCircleCheck: faSchoolCircleCheck,\n faDumpster: faDumpster,\n faVanShuttle: faVanShuttle,\n faShuttleVan: faShuttleVan,\n faBuildingUser: faBuildingUser,\n faSquareCaretLeft: faSquareCaretLeft,\n faCaretSquareLeft: faCaretSquareLeft,\n faHighlighter: faHighlighter,\n faKey: faKey,\n faBullhorn: faBullhorn,\n faGlobe: faGlobe,\n faSynagogue: faSynagogue,\n faPersonHalfDress: faPersonHalfDress,\n faRoadBridge: faRoadBridge,\n faLocationArrow: faLocationArrow,\n faC: faC,\n faTabletButton: faTabletButton,\n faBuildingLock: faBuildingLock,\n faPizzaSlice: faPizzaSlice,\n faMoneyBillWave: faMoneyBillWave,\n faChartArea: faChartArea,\n faAreaChart: faAreaChart,\n faHouseFlag: faHouseFlag,\n faPersonCircleMinus: faPersonCircleMinus,\n faBan: faBan,\n faCancel: faCancel,\n faCameraRotate: faCameraRotate,\n faSprayCanSparkles: faSprayCanSparkles,\n faAirFreshener: faAirFreshener,\n faStar: faStar,\n faRepeat: faRepeat,\n faCross: faCross,\n faBox: faBox,\n faVenusMars: faVenusMars,\n faArrowPointer: faArrowPointer,\n faMousePointer: faMousePointer,\n faMaximize: faMaximize,\n faExpandArrowsAlt: faExpandArrowsAlt,\n faChargingStation: faChargingStation,\n faShapes: faShapes,\n faTriangleCircleSquare: faTriangleCircleSquare,\n faShuffle: faShuffle,\n faRandom: faRandom,\n faPersonRunning: faPersonRunning,\n faRunning: faRunning,\n faMobileRetro: faMobileRetro,\n faGripLinesVertical: faGripLinesVertical,\n faSpider: faSpider,\n faHandsBound: faHandsBound,\n faFileInvoiceDollar: faFileInvoiceDollar,\n faPlaneCircleExclamation: faPlaneCircleExclamation,\n faXRay: faXRay,\n faSpellCheck: faSpellCheck,\n faSlash: faSlash,\n faComputerMouse: faComputerMouse,\n faMouse: faMouse,\n faArrowRightToBracket: faArrowRightToBracket,\n faSignIn: faSignIn,\n faShopSlash: faShopSlash,\n faStoreAltSlash: faStoreAltSlash,\n faServer: faServer,\n faVirusCovidSlash: faVirusCovidSlash,\n faShopLock: faShopLock,\n faHourglassStart: faHourglassStart,\n faHourglass1: faHourglass1,\n faBlenderPhone: faBlenderPhone,\n faBuildingWheat: faBuildingWheat,\n faPersonBreastfeeding: faPersonBreastfeeding,\n faRightToBracket: faRightToBracket,\n faSignInAlt: faSignInAlt,\n faVenus: faVenus,\n faPassport: faPassport,\n faHeartPulse: faHeartPulse,\n faHeartbeat: faHeartbeat,\n faPeopleCarryBox: faPeopleCarryBox,\n faPeopleCarry: faPeopleCarry,\n faTemperatureHigh: faTemperatureHigh,\n faMicrochip: faMicrochip,\n faCrown: faCrown,\n faWeightHanging: faWeightHanging,\n faXmarksLines: faXmarksLines,\n faFilePrescription: faFilePrescription,\n faWeightScale: faWeightScale,\n faWeight: faWeight,\n faUserGroup: faUserGroup,\n faUserFriends: faUserFriends,\n faArrowUpAZ: faArrowUpAZ,\n faSortAlphaUp: faSortAlphaUp,\n faChessKnight: faChessKnight,\n faFaceLaughSquint: faFaceLaughSquint,\n faLaughSquint: faLaughSquint,\n faWheelchair: faWheelchair,\n faCircleArrowUp: faCircleArrowUp,\n faArrowCircleUp: faArrowCircleUp,\n faToggleOn: faToggleOn,\n faPersonWalking: faPersonWalking,\n faWalking: faWalking,\n faL: faL,\n faFire: faFire,\n faBedPulse: faBedPulse,\n faProcedures: faProcedures,\n faShuttleSpace: faShuttleSpace,\n faSpaceShuttle: faSpaceShuttle,\n faFaceLaugh: faFaceLaugh,\n faLaugh: faLaugh,\n faFolderOpen: faFolderOpen,\n faHeartCirclePlus: faHeartCirclePlus,\n faCodeFork: faCodeFork,\n faCity: faCity,\n faMicrophoneLines: faMicrophoneLines,\n faMicrophoneAlt: faMicrophoneAlt,\n faPepperHot: faPepperHot,\n faUnlock: faUnlock,\n faColonSign: faColonSign,\n faHeadset: faHeadset,\n faStoreSlash: faStoreSlash,\n faRoadCircleXmark: faRoadCircleXmark,\n faUserMinus: faUserMinus,\n faMarsStrokeUp: faMarsStrokeUp,\n faMarsStrokeV: faMarsStrokeV,\n faChampagneGlasses: faChampagneGlasses,\n faGlassCheers: faGlassCheers,\n faClipboard: faClipboard,\n faHouseCircleExclamation: faHouseCircleExclamation,\n faFileArrowUp: faFileArrowUp,\n faFileUpload: faFileUpload,\n faWifi: faWifi,\n faWifi3: faWifi3,\n faWifiStrong: faWifiStrong,\n faBath: faBath,\n faBathtub: faBathtub,\n faUnderline: faUnderline,\n faUserPen: faUserPen,\n faUserEdit: faUserEdit,\n faSignature: faSignature,\n faStroopwafel: faStroopwafel,\n faBold: faBold,\n faAnchorLock: faAnchorLock,\n faBuildingNgo: faBuildingNgo,\n faManatSign: faManatSign,\n faNotEqual: faNotEqual,\n faBorderTopLeft: faBorderTopLeft,\n faBorderStyle: faBorderStyle,\n faMapLocationDot: faMapLocationDot,\n faMapMarkedAlt: faMapMarkedAlt,\n faJedi: faJedi,\n faSquarePollVertical: faSquarePollVertical,\n faPoll: faPoll,\n faMugHot: faMugHot,\n faCarBattery: faCarBattery,\n faBatteryCar: faBatteryCar,\n faGift: faGift,\n faDiceTwo: faDiceTwo,\n faChessQueen: faChessQueen,\n faGlasses: faGlasses,\n faChessBoard: faChessBoard,\n faBuildingCircleCheck: faBuildingCircleCheck,\n faPersonChalkboard: faPersonChalkboard,\n faMarsStrokeRight: faMarsStrokeRight,\n faMarsStrokeH: faMarsStrokeH,\n faHandBackFist: faHandBackFist,\n faHandRock: faHandRock,\n faSquareCaretUp: faSquareCaretUp,\n faCaretSquareUp: faCaretSquareUp,\n faCloudShowersWater: faCloudShowersWater,\n faChartBar: faChartBar,\n faBarChart: faBarChart,\n faHandsBubbles: faHandsBubbles,\n faHandsWash: faHandsWash,\n faLessThanEqual: faLessThanEqual,\n faTrain: faTrain,\n faEyeLowVision: faEyeLowVision,\n faLowVision: faLowVision,\n faCrow: faCrow,\n faSailboat: faSailboat,\n faWindowRestore: faWindowRestore,\n faSquarePlus: faSquarePlus,\n faPlusSquare: faPlusSquare,\n faToriiGate: faToriiGate,\n faFrog: faFrog,\n faBucket: faBucket,\n faImage: faImage,\n faMicrophone: faMicrophone,\n faCow: faCow,\n faCaretUp: faCaretUp,\n faScrewdriver: faScrewdriver,\n faFolderClosed: faFolderClosed,\n faHouseTsunami: faHouseTsunami,\n faSquareNfi: faSquareNfi,\n faArrowUpFromGroundWater: faArrowUpFromGroundWater,\n faMartiniGlass: faMartiniGlass,\n faGlassMartiniAlt: faGlassMartiniAlt,\n faRotateLeft: faRotateLeft,\n faRotateBack: faRotateBack,\n faRotateBackward: faRotateBackward,\n faUndoAlt: faUndoAlt,\n faTableColumns: faTableColumns,\n faColumns: faColumns,\n faLemon: faLemon,\n faHeadSideMask: faHeadSideMask,\n faHandshake: faHandshake,\n faGem: faGem,\n faDolly: faDolly,\n faDollyBox: faDollyBox,\n faSmoking: faSmoking,\n faMinimize: faMinimize,\n faCompressArrowsAlt: faCompressArrowsAlt,\n faMonument: faMonument,\n faSnowplow: faSnowplow,\n faAnglesRight: faAnglesRight,\n faAngleDoubleRight: faAngleDoubleRight,\n faCannabis: faCannabis,\n faCirclePlay: faCirclePlay,\n faPlayCircle: faPlayCircle,\n faTablets: faTablets,\n faEthernet: faEthernet,\n faEuroSign: faEuroSign,\n faEur: faEur,\n faEuro: faEuro,\n faChair: faChair,\n faCircleCheck: faCircleCheck,\n faCheckCircle: faCheckCircle,\n faCircleStop: faCircleStop,\n faStopCircle: faStopCircle,\n faCompassDrafting: faCompassDrafting,\n faDraftingCompass: faDraftingCompass,\n faPlateWheat: faPlateWheat,\n faIcicles: faIcicles,\n faPersonShelter: faPersonShelter,\n faNeuter: faNeuter,\n faIdBadge: faIdBadge,\n faMarker: faMarker,\n faFaceLaughBeam: faFaceLaughBeam,\n faLaughBeam: faLaughBeam,\n faHelicopterSymbol: faHelicopterSymbol,\n faUniversalAccess: faUniversalAccess,\n faCircleChevronUp: faCircleChevronUp,\n faChevronCircleUp: faChevronCircleUp,\n faLariSign: faLariSign,\n faVolcano: faVolcano,\n faPersonWalkingDashedLineArrowRight: faPersonWalkingDashedLineArrowRight,\n faSterlingSign: faSterlingSign,\n faGbp: faGbp,\n faPoundSign: faPoundSign,\n faViruses: faViruses,\n faSquarePersonConfined: faSquarePersonConfined,\n faUserTie: faUserTie,\n faArrowDownLong: faArrowDownLong,\n faLongArrowDown: faLongArrowDown,\n faTentArrowDownToLine: faTentArrowDownToLine,\n faCertificate: faCertificate,\n faReplyAll: faReplyAll,\n faMailReplyAll: faMailReplyAll,\n faSuitcase: faSuitcase,\n faPersonSkating: faPersonSkating,\n faSkating: faSkating,\n faFilterCircleDollar: faFilterCircleDollar,\n faFunnelDollar: faFunnelDollar,\n faCameraRetro: faCameraRetro,\n faCircleArrowDown: faCircleArrowDown,\n faArrowCircleDown: faArrowCircleDown,\n faFileImport: faFileImport,\n faArrowRightToFile: faArrowRightToFile,\n faSquareArrowUpRight: faSquareArrowUpRight,\n faExternalLinkSquare: faExternalLinkSquare,\n faBoxOpen: faBoxOpen,\n faScroll: faScroll,\n faSpa: faSpa,\n faLocationPinLock: faLocationPinLock,\n faPause: faPause,\n faHillAvalanche: faHillAvalanche,\n faTemperatureEmpty: faTemperatureEmpty,\n faTemperature0: faTemperature0,\n faThermometer0: faThermometer0,\n faThermometerEmpty: faThermometerEmpty,\n faBomb: faBomb,\n faRegistered: faRegistered,\n faAddressCard: faAddressCard,\n faContactCard: faContactCard,\n faVcard: faVcard,\n faScaleUnbalancedFlip: faScaleUnbalancedFlip,\n faBalanceScaleRight: faBalanceScaleRight,\n faSubscript: faSubscript,\n faDiamondTurnRight: faDiamondTurnRight,\n faDirections: faDirections,\n faBurst: faBurst,\n faHouseLaptop: faHouseLaptop,\n faLaptopHouse: faLaptopHouse,\n faFaceTired: faFaceTired,\n faTired: faTired,\n faMoneyBills: faMoneyBills,\n faSmog: faSmog,\n faCrutch: faCrutch,\n faFontAwesome: faFontAwesome,\n faFontAwesomeFlag: faFontAwesomeFlag,\n faFontAwesomeLogoFull: faFontAwesomeLogoFull,\n faCloudArrowUp: faCloudArrowUp,\n faCloudUpload: faCloudUpload,\n faCloudUploadAlt: faCloudUploadAlt,\n faPalette: faPalette,\n faArrowsTurnRight: faArrowsTurnRight,\n faVest: faVest,\n faFerry: faFerry,\n faArrowsDownToPeople: faArrowsDownToPeople,\n faSeedling: faSeedling,\n faSprout: faSprout,\n faLeftRight: faLeftRight,\n faArrowsAltH: faArrowsAltH,\n faBoxesPacking: faBoxesPacking,\n faCircleArrowLeft: faCircleArrowLeft,\n faArrowCircleLeft: faArrowCircleLeft,\n faGroupArrowsRotate: faGroupArrowsRotate,\n faBowlFood: faBowlFood,\n faCandyCane: faCandyCane,\n faArrowDownWideShort: faArrowDownWideShort,\n faSortAmountAsc: faSortAmountAsc,\n faSortAmountDown: faSortAmountDown,\n faCloudBolt: faCloudBolt,\n faThunderstorm: faThunderstorm,\n faTextSlash: faTextSlash,\n faRemoveFormat: faRemoveFormat,\n faFaceSmileWink: faFaceSmileWink,\n faSmileWink: faSmileWink,\n faFileWord: faFileWord,\n faFilePowerpoint: faFilePowerpoint,\n faArrowsLeftRight: faArrowsLeftRight,\n faArrowsH: faArrowsH,\n faHouseLock: faHouseLock,\n faCloudArrowDown: faCloudArrowDown,\n faCloudDownload: faCloudDownload,\n faCloudDownloadAlt: faCloudDownloadAlt,\n faChildren: faChildren,\n faChalkboard: faChalkboard,\n faBlackboard: faBlackboard,\n faUserLargeSlash: faUserLargeSlash,\n faUserAltSlash: faUserAltSlash,\n faEnvelopeOpen: faEnvelopeOpen,\n faHandshakeSimpleSlash: faHandshakeSimpleSlash,\n faHandshakeAltSlash: faHandshakeAltSlash,\n faMattressPillow: faMattressPillow,\n faGuaraniSign: faGuaraniSign,\n faArrowsRotate: faArrowsRotate,\n faRefresh: faRefresh,\n faSync: faSync,\n faFireExtinguisher: faFireExtinguisher,\n faCruzeiroSign: faCruzeiroSign,\n faGreaterThanEqual: faGreaterThanEqual,\n faShieldHalved: faShieldHalved,\n faShieldAlt: faShieldAlt,\n faBookAtlas: faBookAtlas,\n faAtlas: faAtlas,\n faVirus: faVirus,\n faEnvelopeCircleCheck: faEnvelopeCircleCheck,\n faLayerGroup: faLayerGroup,\n faArrowsToDot: faArrowsToDot,\n faArchway: faArchway,\n faHeartCircleCheck: faHeartCircleCheck,\n faHouseChimneyCrack: faHouseChimneyCrack,\n faHouseDamage: faHouseDamage,\n faFileZipper: faFileZipper,\n faFileArchive: faFileArchive,\n faSquare: faSquare,\n faMartiniGlassEmpty: faMartiniGlassEmpty,\n faGlassMartini: faGlassMartini,\n faCouch: faCouch,\n faCediSign: faCediSign,\n faItalic: faItalic,\n faTableCellsColumnLock: faTableCellsColumnLock,\n faChurch: faChurch,\n faCommentsDollar: faCommentsDollar,\n faDemocrat: faDemocrat,\n faZ: faZ,\n faPersonSkiing: faPersonSkiing,\n faSkiing: faSkiing,\n faRoadLock: faRoadLock,\n faA: faA,\n faTemperatureArrowDown: faTemperatureArrowDown,\n faTemperatureDown: faTemperatureDown,\n faFeatherPointed: faFeatherPointed,\n faFeatherAlt: faFeatherAlt,\n faP: faP,\n faSnowflake: faSnowflake,\n faNewspaper: faNewspaper,\n faRectangleAd: faRectangleAd,\n faAd: faAd,\n faCircleArrowRight: faCircleArrowRight,\n faArrowCircleRight: faArrowCircleRight,\n faFilterCircleXmark: faFilterCircleXmark,\n faLocust: faLocust,\n faSort: faSort,\n faUnsorted: faUnsorted,\n faListOl: faListOl,\n faList12: faList12,\n faListNumeric: faListNumeric,\n faPersonDressBurst: faPersonDressBurst,\n faMoneyCheckDollar: faMoneyCheckDollar,\n faMoneyCheckAlt: faMoneyCheckAlt,\n faVectorSquare: faVectorSquare,\n faBreadSlice: faBreadSlice,\n faLanguage: faLanguage,\n faFaceKissWinkHeart: faFaceKissWinkHeart,\n faKissWinkHeart: faKissWinkHeart,\n faFilter: faFilter,\n faQuestion: faQuestion,\n faFileSignature: faFileSignature,\n faUpDownLeftRight: faUpDownLeftRight,\n faArrowsAlt: faArrowsAlt,\n faHouseChimneyUser: faHouseChimneyUser,\n faHandHoldingHeart: faHandHoldingHeart,\n faPuzzlePiece: faPuzzlePiece,\n faMoneyCheck: faMoneyCheck,\n faStarHalfStroke: faStarHalfStroke,\n faStarHalfAlt: faStarHalfAlt,\n faCode: faCode,\n faWhiskeyGlass: faWhiskeyGlass,\n faGlassWhiskey: faGlassWhiskey,\n faBuildingCircleExclamation: faBuildingCircleExclamation,\n faMagnifyingGlassChart: faMagnifyingGlassChart,\n faArrowUpRightFromSquare: faArrowUpRightFromSquare,\n faExternalLink: faExternalLink,\n faCubesStacked: faCubesStacked,\n faWonSign: faWonSign,\n faKrw: faKrw,\n faWon: faWon,\n faVirusCovid: faVirusCovid,\n faAustralSign: faAustralSign,\n faF: faF,\n faLeaf: faLeaf,\n faRoad: faRoad,\n faTaxi: faTaxi,\n faCab: faCab,\n faPersonCirclePlus: faPersonCirclePlus,\n faChartPie: faChartPie,\n faPieChart: faPieChart,\n faBoltLightning: faBoltLightning,\n faSackXmark: faSackXmark,\n faFileExcel: faFileExcel,\n faFileContract: faFileContract,\n faFishFins: faFishFins,\n faBuildingFlag: faBuildingFlag,\n faFaceGrinBeam: faFaceGrinBeam,\n faGrinBeam: faGrinBeam,\n faObjectUngroup: faObjectUngroup,\n faPoop: faPoop,\n faLocationPin: faLocationPin,\n faMapMarker: faMapMarker,\n faKaaba: faKaaba,\n faToiletPaper: faToiletPaper,\n faHelmetSafety: faHelmetSafety,\n faHardHat: faHardHat,\n faHatHard: faHatHard,\n faEject: faEject,\n faCircleRight: faCircleRight,\n faArrowAltCircleRight: faArrowAltCircleRight,\n faPlaneCircleCheck: faPlaneCircleCheck,\n faFaceRollingEyes: faFaceRollingEyes,\n faMehRollingEyes: faMehRollingEyes,\n faObjectGroup: faObjectGroup,\n faChartLine: faChartLine,\n faLineChart: faLineChart,\n faMaskVentilator: faMaskVentilator,\n faArrowRight: faArrowRight,\n faSignsPost: faSignsPost,\n faMapSigns: faMapSigns,\n faCashRegister: faCashRegister,\n faPersonCircleQuestion: faPersonCircleQuestion,\n faH: faH,\n faTarp: faTarp,\n faScrewdriverWrench: faScrewdriverWrench,\n faTools: faTools,\n faArrowsToEye: faArrowsToEye,\n faPlugCircleBolt: faPlugCircleBolt,\n faHeart: faHeart,\n faMarsAndVenus: faMarsAndVenus,\n faHouseUser: faHouseUser,\n faHomeUser: faHomeUser,\n faDumpsterFire: faDumpsterFire,\n faHouseCrack: faHouseCrack,\n faMartiniGlassCitrus: faMartiniGlassCitrus,\n faCocktail: faCocktail,\n faFaceSurprise: faFaceSurprise,\n faSurprise: faSurprise,\n faBottleWater: faBottleWater,\n faCirclePause: faCirclePause,\n faPauseCircle: faPauseCircle,\n faToiletPaperSlash: faToiletPaperSlash,\n faAppleWhole: faAppleWhole,\n faAppleAlt: faAppleAlt,\n faKitchenSet: faKitchenSet,\n faR: faR,\n faTemperatureQuarter: faTemperatureQuarter,\n faTemperature1: faTemperature1,\n faThermometer1: faThermometer1,\n faThermometerQuarter: faThermometerQuarter,\n faCube: faCube,\n faBitcoinSign: faBitcoinSign,\n faShieldDog: faShieldDog,\n faSolarPanel: faSolarPanel,\n faLockOpen: faLockOpen,\n faElevator: faElevator,\n faMoneyBillTransfer: faMoneyBillTransfer,\n faMoneyBillTrendUp: faMoneyBillTrendUp,\n faHouseFloodWaterCircleArrowRight: faHouseFloodWaterCircleArrowRight,\n faSquarePollHorizontal: faSquarePollHorizontal,\n faPollH: faPollH,\n faCircle: faCircle,\n faBackwardFast: faBackwardFast,\n faFastBackward: faFastBackward,\n faRecycle: faRecycle,\n faUserAstronaut: faUserAstronaut,\n faPlaneSlash: faPlaneSlash,\n faTrademark: faTrademark,\n faBasketball: faBasketball,\n faBasketballBall: faBasketballBall,\n faSatelliteDish: faSatelliteDish,\n faCircleUp: faCircleUp,\n faArrowAltCircleUp: faArrowAltCircleUp,\n faMobileScreenButton: faMobileScreenButton,\n faMobileAlt: faMobileAlt,\n faVolumeHigh: faVolumeHigh,\n faVolumeUp: faVolumeUp,\n faUsersRays: faUsersRays,\n faWallet: faWallet,\n faClipboardCheck: faClipboardCheck,\n faFileAudio: faFileAudio,\n faBurger: faBurger,\n faHamburger: faHamburger,\n faWrench: faWrench,\n faBugs: faBugs,\n faRupeeSign: faRupeeSign,\n faRupee: faRupee,\n faFileImage: faFileImage,\n faCircleQuestion: faCircleQuestion,\n faQuestionCircle: faQuestionCircle,\n faPlaneDeparture: faPlaneDeparture,\n faHandshakeSlash: faHandshakeSlash,\n faBookBookmark: faBookBookmark,\n faCodeBranch: faCodeBranch,\n faHatCowboy: faHatCowboy,\n faBridge: faBridge,\n faPhoneFlip: faPhoneFlip,\n faPhoneAlt: faPhoneAlt,\n faTruckFront: faTruckFront,\n faCat: faCat,\n faAnchorCircleExclamation: faAnchorCircleExclamation,\n faTruckField: faTruckField,\n faRoute: faRoute,\n faClipboardQuestion: faClipboardQuestion,\n faPanorama: faPanorama,\n faCommentMedical: faCommentMedical,\n faTeethOpen: faTeethOpen,\n faFileCircleMinus: faFileCircleMinus,\n faTags: faTags,\n faWineGlass: faWineGlass,\n faForwardFast: faForwardFast,\n faFastForward: faFastForward,\n faFaceMehBlank: faFaceMehBlank,\n faMehBlank: faMehBlank,\n faSquareParking: faSquareParking,\n faParking: faParking,\n faHouseSignal: faHouseSignal,\n faBarsProgress: faBarsProgress,\n faTasksAlt: faTasksAlt,\n faFaucetDrip: faFaucetDrip,\n faCartFlatbed: faCartFlatbed,\n faDollyFlatbed: faDollyFlatbed,\n faBanSmoking: faBanSmoking,\n faSmokingBan: faSmokingBan,\n faTerminal: faTerminal,\n faMobileButton: faMobileButton,\n faHouseMedicalFlag: faHouseMedicalFlag,\n faBasketShopping: faBasketShopping,\n faShoppingBasket: faShoppingBasket,\n faTape: faTape,\n faBusSimple: faBusSimple,\n faBusAlt: faBusAlt,\n faEye: faEye,\n faFaceSadCry: faFaceSadCry,\n faSadCry: faSadCry,\n faAudioDescription: faAudioDescription,\n faPersonMilitaryToPerson: faPersonMilitaryToPerson,\n faFileShield: faFileShield,\n faUserSlash: faUserSlash,\n faPen: faPen,\n faTowerObservation: faTowerObservation,\n faFileCode: faFileCode,\n faSignal: faSignal,\n faSignal5: faSignal5,\n faSignalPerfect: faSignalPerfect,\n faBus: faBus,\n faHeartCircleXmark: faHeartCircleXmark,\n faHouseChimney: faHouseChimney,\n faHomeLg: faHomeLg,\n faWindowMaximize: faWindowMaximize,\n faFaceFrown: faFaceFrown,\n faFrown: faFrown,\n faPrescription: faPrescription,\n faShop: faShop,\n faStoreAlt: faStoreAlt,\n faFloppyDisk: faFloppyDisk,\n faSave: faSave,\n faVihara: faVihara,\n faScaleUnbalanced: faScaleUnbalanced,\n faBalanceScaleLeft: faBalanceScaleLeft,\n faSortUp: faSortUp,\n faSortAsc: faSortAsc,\n faCommentDots: faCommentDots,\n faCommenting: faCommenting,\n faPlantWilt: faPlantWilt,\n faDiamond: faDiamond,\n faFaceGrinSquint: faFaceGrinSquint,\n faGrinSquint: faGrinSquint,\n faHandHoldingDollar: faHandHoldingDollar,\n faHandHoldingUsd: faHandHoldingUsd,\n faBacterium: faBacterium,\n faHandPointer: faHandPointer,\n faDrumSteelpan: faDrumSteelpan,\n faHandScissors: faHandScissors,\n faHandsPraying: faHandsPraying,\n faPrayingHands: faPrayingHands,\n faArrowRotateRight: faArrowRotateRight,\n faArrowRightRotate: faArrowRightRotate,\n faArrowRotateForward: faArrowRotateForward,\n faRedo: faRedo,\n faBiohazard: faBiohazard,\n faLocationCrosshairs: faLocationCrosshairs,\n faLocation: faLocation,\n faMarsDouble: faMarsDouble,\n faChildDress: faChildDress,\n faUsersBetweenLines: faUsersBetweenLines,\n faLungsVirus: faLungsVirus,\n faFaceGrinTears: faFaceGrinTears,\n faGrinTears: faGrinTears,\n faPhone: faPhone,\n faCalendarXmark: faCalendarXmark,\n faCalendarTimes: faCalendarTimes,\n faChildReaching: faChildReaching,\n faHeadSideVirus: faHeadSideVirus,\n faUserGear: faUserGear,\n faUserCog: faUserCog,\n faArrowUp19: faArrowUp19,\n faSortNumericUp: faSortNumericUp,\n faDoorClosed: faDoorClosed,\n faShieldVirus: faShieldVirus,\n faDiceSix: faDiceSix,\n faMosquitoNet: faMosquitoNet,\n faBridgeWater: faBridgeWater,\n faPersonBooth: faPersonBooth,\n faTextWidth: faTextWidth,\n faHatWizard: faHatWizard,\n faPenFancy: faPenFancy,\n faPersonDigging: faPersonDigging,\n faDigging: faDigging,\n faTrash: faTrash,\n faGaugeSimple: faGaugeSimple,\n faGaugeSimpleMed: faGaugeSimpleMed,\n faTachometerAverage: faTachometerAverage,\n faBookMedical: faBookMedical,\n faPoo: faPoo,\n faQuoteRight: faQuoteRight,\n faQuoteRightAlt: faQuoteRightAlt,\n faShirt: faShirt,\n faTShirt: faTShirt,\n faTshirt: faTshirt,\n faCubes: faCubes,\n faDivide: faDivide,\n faTengeSign: faTengeSign,\n faTenge: faTenge,\n faHeadphones: faHeadphones,\n faHandsHolding: faHandsHolding,\n faHandsClapping: faHandsClapping,\n faRepublican: faRepublican,\n faArrowLeft: faArrowLeft,\n faPersonCircleXmark: faPersonCircleXmark,\n faRuler: faRuler,\n faAlignLeft: faAlignLeft,\n faDiceD6: faDiceD6,\n faRestroom: faRestroom,\n faJ: faJ,\n faUsersViewfinder: faUsersViewfinder,\n faFileVideo: faFileVideo,\n faUpRightFromSquare: faUpRightFromSquare,\n faExternalLinkAlt: faExternalLinkAlt,\n faTableCells: faTableCells,\n faTh: faTh,\n faFilePdf: faFilePdf,\n faBookBible: faBookBible,\n faBible: faBible,\n faO: faO,\n faSuitcaseMedical: faSuitcaseMedical,\n faMedkit: faMedkit,\n faUserSecret: faUserSecret,\n faOtter: faOtter,\n faPersonDress: faPersonDress,\n faFemale: faFemale,\n faCommentDollar: faCommentDollar,\n faBusinessTime: faBusinessTime,\n faBriefcaseClock: faBriefcaseClock,\n faTableCellsLarge: faTableCellsLarge,\n faThLarge: faThLarge,\n faBookTanakh: faBookTanakh,\n faTanakh: faTanakh,\n faPhoneVolume: faPhoneVolume,\n faVolumeControlPhone: faVolumeControlPhone,\n faHatCowboySide: faHatCowboySide,\n faClipboardUser: faClipboardUser,\n faChild: faChild,\n faLiraSign: faLiraSign,\n faSatellite: faSatellite,\n faPlaneLock: faPlaneLock,\n faTag: faTag,\n faComment: faComment,\n faCakeCandles: faCakeCandles,\n faBirthdayCake: faBirthdayCake,\n faCake: faCake,\n faEnvelope: faEnvelope,\n faAnglesUp: faAnglesUp,\n faAngleDoubleUp: faAngleDoubleUp,\n faPaperclip: faPaperclip,\n faArrowRightToCity: faArrowRightToCity,\n faRibbon: faRibbon,\n faLungs: faLungs,\n faArrowUp91: faArrowUp91,\n faSortNumericUpAlt: faSortNumericUpAlt,\n faLitecoinSign: faLitecoinSign,\n faBorderNone: faBorderNone,\n faCircleNodes: faCircleNodes,\n faParachuteBox: faParachuteBox,\n faIndent: faIndent,\n faTruckFieldUn: faTruckFieldUn,\n faHourglass: faHourglass,\n faHourglassEmpty: faHourglassEmpty,\n faMountain: faMountain,\n faUserDoctor: faUserDoctor,\n faUserMd: faUserMd,\n faCircleInfo: faCircleInfo,\n faInfoCircle: faInfoCircle,\n faCloudMeatball: faCloudMeatball,\n faCamera: faCamera,\n faCameraAlt: faCameraAlt,\n faSquareVirus: faSquareVirus,\n faMeteor: faMeteor,\n faCarOn: faCarOn,\n faSleigh: faSleigh,\n faArrowDown19: faArrowDown19,\n faSortNumericAsc: faSortNumericAsc,\n faSortNumericDown: faSortNumericDown,\n faHandHoldingDroplet: faHandHoldingDroplet,\n faHandHoldingWater: faHandHoldingWater,\n faWater: faWater,\n faCalendarCheck: faCalendarCheck,\n faBraille: faBraille,\n faPrescriptionBottleMedical: faPrescriptionBottleMedical,\n faPrescriptionBottleAlt: faPrescriptionBottleAlt,\n faLandmark: faLandmark,\n faTruck: faTruck,\n faCrosshairs: faCrosshairs,\n faPersonCane: faPersonCane,\n faTent: faTent,\n faVestPatches: faVestPatches,\n faCheckDouble: faCheckDouble,\n faArrowDownAZ: faArrowDownAZ,\n faSortAlphaAsc: faSortAlphaAsc,\n faSortAlphaDown: faSortAlphaDown,\n faMoneyBillWheat: faMoneyBillWheat,\n faCookie: faCookie,\n faArrowRotateLeft: faArrowRotateLeft,\n faArrowLeftRotate: faArrowLeftRotate,\n faArrowRotateBack: faArrowRotateBack,\n faArrowRotateBackward: faArrowRotateBackward,\n faUndo: faUndo,\n faHardDrive: faHardDrive,\n faHdd: faHdd,\n faFaceGrinSquintTears: faFaceGrinSquintTears,\n faGrinSquintTears: faGrinSquintTears,\n faDumbbell: faDumbbell,\n faRectangleList: faRectangleList,\n faListAlt: faListAlt,\n faTarpDroplet: faTarpDroplet,\n faHouseMedicalCircleCheck: faHouseMedicalCircleCheck,\n faPersonSkiingNordic: faPersonSkiingNordic,\n faSkiingNordic: faSkiingNordic,\n faCalendarPlus: faCalendarPlus,\n faPlaneArrival: faPlaneArrival,\n faCircleLeft: faCircleLeft,\n faArrowAltCircleLeft: faArrowAltCircleLeft,\n faTrainSubway: faTrainSubway,\n faSubway: faSubway,\n faChartGantt: faChartGantt,\n faIndianRupeeSign: faIndianRupeeSign,\n faIndianRupee: faIndianRupee,\n faInr: faInr,\n faCropSimple: faCropSimple,\n faCropAlt: faCropAlt,\n faMoneyBill1: faMoneyBill1,\n faMoneyBillAlt: faMoneyBillAlt,\n faLeftLong: faLeftLong,\n faLongArrowAltLeft: faLongArrowAltLeft,\n faDna: faDna,\n faVirusSlash: faVirusSlash,\n faMinus: faMinus,\n faSubtract: faSubtract,\n faChess: faChess,\n faArrowLeftLong: faArrowLeftLong,\n faLongArrowLeft: faLongArrowLeft,\n faPlugCircleCheck: faPlugCircleCheck,\n faStreetView: faStreetView,\n faFrancSign: faFrancSign,\n faVolumeOff: faVolumeOff,\n faHandsAslInterpreting: faHandsAslInterpreting,\n faAmericanSignLanguageInterpreting: faAmericanSignLanguageInterpreting,\n faAslInterpreting: faAslInterpreting,\n faHandsAmericanSignLanguageInterpreting: faHandsAmericanSignLanguageInterpreting,\n faGear: faGear,\n faCog: faCog,\n faDropletSlash: faDropletSlash,\n faTintSlash: faTintSlash,\n faMosque: faMosque,\n faMosquito: faMosquito,\n faStarOfDavid: faStarOfDavid,\n faPersonMilitaryRifle: faPersonMilitaryRifle,\n faCartShopping: faCartShopping,\n faShoppingCart: faShoppingCart,\n faVials: faVials,\n faPlugCirclePlus: faPlugCirclePlus,\n faPlaceOfWorship: faPlaceOfWorship,\n faGripVertical: faGripVertical,\n faArrowTurnUp: faArrowTurnUp,\n faLevelUp: faLevelUp,\n faU: faU,\n faSquareRootVariable: faSquareRootVariable,\n faSquareRootAlt: faSquareRootAlt,\n faClock: faClock,\n faClockFour: faClockFour,\n faBackwardStep: faBackwardStep,\n faStepBackward: faStepBackward,\n faPallet: faPallet,\n faFaucet: faFaucet,\n faBaseballBatBall: faBaseballBatBall,\n faS: faS,\n faTimeline: faTimeline,\n faKeyboard: faKeyboard,\n faCaretDown: faCaretDown,\n faHouseChimneyMedical: faHouseChimneyMedical,\n faClinicMedical: faClinicMedical,\n faTemperatureThreeQuarters: faTemperatureThreeQuarters,\n faTemperature3: faTemperature3,\n faThermometer3: faThermometer3,\n faThermometerThreeQuarters: faThermometerThreeQuarters,\n faMobileScreen: faMobileScreen,\n faMobileAndroidAlt: faMobileAndroidAlt,\n faPlaneUp: faPlaneUp,\n faPiggyBank: faPiggyBank,\n faBatteryHalf: faBatteryHalf,\n faBattery3: faBattery3,\n faMountainCity: faMountainCity,\n faCoins: faCoins,\n faKhanda: faKhanda,\n faSliders: faSliders,\n faSlidersH: faSlidersH,\n faFolderTree: faFolderTree,\n faNetworkWired: faNetworkWired,\n faMapPin: faMapPin,\n faHamsa: faHamsa,\n faCentSign: faCentSign,\n faFlask: faFlask,\n faPersonPregnant: faPersonPregnant,\n faWandSparkles: faWandSparkles,\n faEllipsisVertical: faEllipsisVertical,\n faEllipsisV: faEllipsisV,\n faTicket: faTicket,\n faPowerOff: faPowerOff,\n faRightLong: faRightLong,\n faLongArrowAltRight: faLongArrowAltRight,\n faFlagUsa: faFlagUsa,\n faLaptopFile: faLaptopFile,\n faTty: faTty,\n faTeletype: faTeletype,\n faDiagramNext: faDiagramNext,\n faPersonRifle: faPersonRifle,\n faHouseMedicalCircleExclamation: faHouseMedicalCircleExclamation,\n faClosedCaptioning: faClosedCaptioning,\n faPersonHiking: faPersonHiking,\n faHiking: faHiking,\n faVenusDouble: faVenusDouble,\n faImages: faImages,\n faCalculator: faCalculator,\n faPeoplePulling: faPeoplePulling,\n faN: faN,\n faCableCar: faCableCar,\n faTram: faTram,\n faCloudRain: faCloudRain,\n faBuildingCircleXmark: faBuildingCircleXmark,\n faShip: faShip,\n faArrowsDownToLine: faArrowsDownToLine,\n faDownload: faDownload,\n faFaceGrin: faFaceGrin,\n faGrin: faGrin,\n faDeleteLeft: faDeleteLeft,\n faBackspace: faBackspace,\n faEyeDropper: faEyeDropper,\n faEyeDropperEmpty: faEyeDropperEmpty,\n faEyedropper: faEyedropper,\n faFileCircleCheck: faFileCircleCheck,\n faForward: faForward,\n faMobile: faMobile,\n faMobileAndroid: faMobileAndroid,\n faMobilePhone: faMobilePhone,\n faFaceMeh: faFaceMeh,\n faMeh: faMeh,\n faAlignCenter: faAlignCenter,\n faBookSkull: faBookSkull,\n faBookDead: faBookDead,\n faIdCard: faIdCard,\n faDriversLicense: faDriversLicense,\n faOutdent: faOutdent,\n faDedent: faDedent,\n faHeartCircleExclamation: faHeartCircleExclamation,\n faHouse: faHouse,\n faHome: faHome,\n faHomeAlt: faHomeAlt,\n faHomeLgAlt: faHomeLgAlt,\n faCalendarWeek: faCalendarWeek,\n faLaptopMedical: faLaptopMedical,\n faB: faB,\n faFileMedical: faFileMedical,\n faDiceOne: faDiceOne,\n faKiwiBird: faKiwiBird,\n faArrowRightArrowLeft: faArrowRightArrowLeft,\n faExchange: faExchange,\n faRotateRight: faRotateRight,\n faRedoAlt: faRedoAlt,\n faRotateForward: faRotateForward,\n faUtensils: faUtensils,\n faCutlery: faCutlery,\n faArrowUpWideShort: faArrowUpWideShort,\n faSortAmountUp: faSortAmountUp,\n faMillSign: faMillSign,\n faBowlRice: faBowlRice,\n faSkull: faSkull,\n faTowerBroadcast: faTowerBroadcast,\n faBroadcastTower: faBroadcastTower,\n faTruckPickup: faTruckPickup,\n faUpLong: faUpLong,\n faLongArrowAltUp: faLongArrowAltUp,\n faStop: faStop,\n faCodeMerge: faCodeMerge,\n faUpload: faUpload,\n faHurricane: faHurricane,\n faMound: faMound,\n faToiletPortable: faToiletPortable,\n faCompactDisc: faCompactDisc,\n faFileArrowDown: faFileArrowDown,\n faFileDownload: faFileDownload,\n faCaravan: faCaravan,\n faShieldCat: faShieldCat,\n faBolt: faBolt,\n faZap: faZap,\n faGlassWater: faGlassWater,\n faOilWell: faOilWell,\n faVault: faVault,\n faMars: faMars,\n faToilet: faToilet,\n faPlaneCircleXmark: faPlaneCircleXmark,\n faYenSign: faYenSign,\n faCny: faCny,\n faJpy: faJpy,\n faRmb: faRmb,\n faYen: faYen,\n faRubleSign: faRubleSign,\n faRouble: faRouble,\n faRub: faRub,\n faRuble: faRuble,\n faSun: faSun,\n faGuitar: faGuitar,\n faFaceLaughWink: faFaceLaughWink,\n faLaughWink: faLaughWink,\n faHorseHead: faHorseHead,\n faBoreHole: faBoreHole,\n faIndustry: faIndustry,\n faCircleDown: faCircleDown,\n faArrowAltCircleDown: faArrowAltCircleDown,\n faArrowsTurnToDots: faArrowsTurnToDots,\n faFlorinSign: faFlorinSign,\n faArrowDownShortWide: faArrowDownShortWide,\n faSortAmountDesc: faSortAmountDesc,\n faSortAmountDownAlt: faSortAmountDownAlt,\n faLessThan: faLessThan,\n faAngleDown: faAngleDown,\n faCarTunnel: faCarTunnel,\n faHeadSideCough: faHeadSideCough,\n faGripLines: faGripLines,\n faThumbsDown: faThumbsDown,\n faUserLock: faUserLock,\n faArrowRightLong: faArrowRightLong,\n faLongArrowRight: faLongArrowRight,\n faAnchorCircleXmark: faAnchorCircleXmark,\n faEllipsis: faEllipsis,\n faEllipsisH: faEllipsisH,\n faChessPawn: faChessPawn,\n faKitMedical: faKitMedical,\n faFirstAid: faFirstAid,\n faPersonThroughWindow: faPersonThroughWindow,\n faToolbox: faToolbox,\n faHandsHoldingCircle: faHandsHoldingCircle,\n faBug: faBug,\n faCreditCard: faCreditCard,\n faCreditCardAlt: faCreditCardAlt,\n faCar: faCar,\n faAutomobile: faAutomobile,\n faHandHoldingHand: faHandHoldingHand,\n faBookOpenReader: faBookOpenReader,\n faBookReader: faBookReader,\n faMountainSun: faMountainSun,\n faArrowsLeftRightToLine: faArrowsLeftRightToLine,\n faDiceD20: faDiceD20,\n faTruckDroplet: faTruckDroplet,\n faFileCircleXmark: faFileCircleXmark,\n faTemperatureArrowUp: faTemperatureArrowUp,\n faTemperatureUp: faTemperatureUp,\n faMedal: faMedal,\n faBed: faBed,\n faSquareH: faSquareH,\n faHSquare: faHSquare,\n faPodcast: faPodcast,\n faTemperatureFull: faTemperatureFull,\n faTemperature4: faTemperature4,\n faThermometer4: faThermometer4,\n faThermometerFull: faThermometerFull,\n faBell: faBell,\n faSuperscript: faSuperscript,\n faPlugCircleXmark: faPlugCircleXmark,\n faStarOfLife: faStarOfLife,\n faPhoneSlash: faPhoneSlash,\n faPaintRoller: faPaintRoller,\n faHandshakeAngle: faHandshakeAngle,\n faHandsHelping: faHandsHelping,\n faLocationDot: faLocationDot,\n faMapMarkerAlt: faMapMarkerAlt,\n faFile: faFile,\n faGreaterThan: faGreaterThan,\n faPersonSwimming: faPersonSwimming,\n faSwimmer: faSwimmer,\n faArrowDown: faArrowDown,\n faDroplet: faDroplet,\n faTint: faTint,\n faEraser: faEraser,\n faEarthAmericas: faEarthAmericas,\n faEarth: faEarth,\n faEarthAmerica: faEarthAmerica,\n faGlobeAmericas: faGlobeAmericas,\n faPersonBurst: faPersonBurst,\n faDove: faDove,\n faBatteryEmpty: faBatteryEmpty,\n faBattery0: faBattery0,\n faSocks: faSocks,\n faInbox: faInbox,\n faSection: faSection,\n faGaugeHigh: faGaugeHigh,\n faTachometerAlt: faTachometerAlt,\n faTachometerAltFast: faTachometerAltFast,\n faEnvelopeOpenText: faEnvelopeOpenText,\n faHospital: faHospital,\n faHospitalAlt: faHospitalAlt,\n faHospitalWide: faHospitalWide,\n faWineBottle: faWineBottle,\n faChessRook: faChessRook,\n faBarsStaggered: faBarsStaggered,\n faReorder: faReorder,\n faStream: faStream,\n faDharmachakra: faDharmachakra,\n faHotdog: faHotdog,\n faPersonWalkingWithCane: faPersonWalkingWithCane,\n faBlind: faBlind,\n faDrum: faDrum,\n faIceCream: faIceCream,\n faHeartCircleBolt: faHeartCircleBolt,\n faFax: faFax,\n faParagraph: faParagraph,\n faCheckToSlot: faCheckToSlot,\n faVoteYea: faVoteYea,\n faStarHalf: faStarHalf,\n faBoxesStacked: faBoxesStacked,\n faBoxes: faBoxes,\n faBoxesAlt: faBoxesAlt,\n faLink: faLink,\n faChain: faChain,\n faEarListen: faEarListen,\n faAssistiveListeningSystems: faAssistiveListeningSystems,\n faTreeCity: faTreeCity,\n faPlay: faPlay,\n faFont: faFont,\n faTableCellsRowLock: faTableCellsRowLock,\n faRupiahSign: faRupiahSign,\n faMagnifyingGlass: faMagnifyingGlass,\n faSearch: faSearch,\n faTableTennisPaddleBall: faTableTennisPaddleBall,\n faPingPongPaddleBall: faPingPongPaddleBall,\n faTableTennis: faTableTennis,\n faPersonDotsFromLine: faPersonDotsFromLine,\n faDiagnoses: faDiagnoses,\n faTrashCanArrowUp: faTrashCanArrowUp,\n faTrashRestoreAlt: faTrashRestoreAlt,\n faNairaSign: faNairaSign,\n faCartArrowDown: faCartArrowDown,\n faWalkieTalkie: faWalkieTalkie,\n faFilePen: faFilePen,\n faFileEdit: faFileEdit,\n faReceipt: faReceipt,\n faSquarePen: faSquarePen,\n faPenSquare: faPenSquare,\n faPencilSquare: faPencilSquare,\n faSuitcaseRolling: faSuitcaseRolling,\n faPersonCircleExclamation: faPersonCircleExclamation,\n faChevronDown: faChevronDown,\n faBatteryFull: faBatteryFull,\n faBattery: faBattery,\n faBattery5: faBattery5,\n faSkullCrossbones: faSkullCrossbones,\n faCodeCompare: faCodeCompare,\n faListUl: faListUl,\n faListDots: faListDots,\n faSchoolLock: faSchoolLock,\n faTowerCell: faTowerCell,\n faDownLong: faDownLong,\n faLongArrowAltDown: faLongArrowAltDown,\n faRankingStar: faRankingStar,\n faChessKing: faChessKing,\n faPersonHarassing: faPersonHarassing,\n faBrazilianRealSign: faBrazilianRealSign,\n faLandmarkDome: faLandmarkDome,\n faLandmarkAlt: faLandmarkAlt,\n faArrowUp: faArrowUp,\n faTv: faTv,\n faTelevision: faTelevision,\n faTvAlt: faTvAlt,\n faShrimp: faShrimp,\n faListCheck: faListCheck,\n faTasks: faTasks,\n faJugDetergent: faJugDetergent,\n faCircleUser: faCircleUser,\n faUserCircle: faUserCircle,\n faUserShield: faUserShield,\n faWind: faWind,\n faCarBurst: faCarBurst,\n faCarCrash: faCarCrash,\n faY: faY,\n faPersonSnowboarding: faPersonSnowboarding,\n faSnowboarding: faSnowboarding,\n faTruckFast: faTruckFast,\n faShippingFast: faShippingFast,\n faFish: faFish,\n faUserGraduate: faUserGraduate,\n faCircleHalfStroke: faCircleHalfStroke,\n faAdjust: faAdjust,\n faClapperboard: faClapperboard,\n faCircleRadiation: faCircleRadiation,\n faRadiationAlt: faRadiationAlt,\n faBaseball: faBaseball,\n faBaseballBall: faBaseballBall,\n faJetFighterUp: faJetFighterUp,\n faDiagramProject: faDiagramProject,\n faProjectDiagram: faProjectDiagram,\n faCopy: faCopy,\n faVolumeXmark: faVolumeXmark,\n faVolumeMute: faVolumeMute,\n faVolumeTimes: faVolumeTimes,\n faHandSparkles: faHandSparkles,\n faGrip: faGrip,\n faGripHorizontal: faGripHorizontal,\n faShareFromSquare: faShareFromSquare,\n faShareSquare: faShareSquare,\n faChildCombatant: faChildCombatant,\n faChildRifle: faChildRifle,\n faGun: faGun,\n faSquarePhone: faSquarePhone,\n faPhoneSquare: faPhoneSquare,\n faPlus: faPlus,\n faAdd: faAdd,\n faExpand: faExpand,\n faComputer: faComputer,\n faXmark: faXmark,\n faClose: faClose,\n faMultiply: faMultiply,\n faRemove: faRemove,\n faTimes: faTimes,\n faArrowsUpDownLeftRight: faArrowsUpDownLeftRight,\n faArrows: faArrows,\n faChalkboardUser: faChalkboardUser,\n faChalkboardTeacher: faChalkboardTeacher,\n faPesoSign: faPesoSign,\n faBuildingShield: faBuildingShield,\n faBaby: faBaby,\n faUsersLine: faUsersLine,\n faQuoteLeft: faQuoteLeft,\n faQuoteLeftAlt: faQuoteLeftAlt,\n faTractor: faTractor,\n faTrashArrowUp: faTrashArrowUp,\n faTrashRestore: faTrashRestore,\n faArrowDownUpLock: faArrowDownUpLock,\n faLinesLeaning: faLinesLeaning,\n faRulerCombined: faRulerCombined,\n faCopyright: faCopyright,\n faEquals: faEquals,\n faBlender: faBlender,\n faTeeth: faTeeth,\n faShekelSign: faShekelSign,\n faIls: faIls,\n faShekel: faShekel,\n faSheqel: faSheqel,\n faSheqelSign: faSheqelSign,\n faMap: faMap,\n faRocket: faRocket,\n faPhotoFilm: faPhotoFilm,\n faPhotoVideo: faPhotoVideo,\n faFolderMinus: faFolderMinus,\n faStore: faStore,\n faArrowTrendUp: faArrowTrendUp,\n faPlugCircleMinus: faPlugCircleMinus,\n faSignHanging: faSignHanging,\n faSign: faSign,\n faBezierCurve: faBezierCurve,\n faBellSlash: faBellSlash,\n faTablet: faTablet,\n faTabletAndroid: faTabletAndroid,\n faSchoolFlag: faSchoolFlag,\n faFill: faFill,\n faAngleUp: faAngleUp,\n faDrumstickBite: faDrumstickBite,\n faHollyBerry: faHollyBerry,\n faChevronLeft: faChevronLeft,\n faBacteria: faBacteria,\n faHandLizard: faHandLizard,\n faNotdef: faNotdef,\n faDisease: faDisease,\n faBriefcaseMedical: faBriefcaseMedical,\n faGenderless: faGenderless,\n faChevronRight: faChevronRight,\n faRetweet: faRetweet,\n faCarRear: faCarRear,\n faCarAlt: faCarAlt,\n faPumpSoap: faPumpSoap,\n faVideoSlash: faVideoSlash,\n faBatteryQuarter: faBatteryQuarter,\n faBattery2: faBattery2,\n faRadio: faRadio,\n faBabyCarriage: faBabyCarriage,\n faCarriageBaby: faCarriageBaby,\n faTrafficLight: faTrafficLight,\n faThermometer: faThermometer,\n faVrCardboard: faVrCardboard,\n faHandMiddleFinger: faHandMiddleFinger,\n faPercent: faPercent,\n faPercentage: faPercentage,\n faTruckMoving: faTruckMoving,\n faGlassWaterDroplet: faGlassWaterDroplet,\n faDisplay: faDisplay,\n faFaceSmile: faFaceSmile,\n faSmile: faSmile,\n faThumbtack: faThumbtack,\n faThumbTack: faThumbTack,\n faTrophy: faTrophy,\n faPersonPraying: faPersonPraying,\n faPray: faPray,\n faHammer: faHammer,\n faHandPeace: faHandPeace,\n faRotate: faRotate,\n faSyncAlt: faSyncAlt,\n faSpinner: faSpinner,\n faRobot: faRobot,\n faPeace: faPeace,\n faGears: faGears,\n faCogs: faCogs,\n faWarehouse: faWarehouse,\n faArrowUpRightDots: faArrowUpRightDots,\n faSplotch: faSplotch,\n faFaceGrinHearts: faFaceGrinHearts,\n faGrinHearts: faGrinHearts,\n faDiceFour: faDiceFour,\n faSimCard: faSimCard,\n faTransgender: faTransgender,\n faTransgenderAlt: faTransgenderAlt,\n faMercury: faMercury,\n faArrowTurnDown: faArrowTurnDown,\n faLevelDown: faLevelDown,\n faPersonFallingBurst: faPersonFallingBurst,\n faAward: faAward,\n faTicketSimple: faTicketSimple,\n faTicketAlt: faTicketAlt,\n faBuilding: faBuilding,\n faAnglesLeft: faAnglesLeft,\n faAngleDoubleLeft: faAngleDoubleLeft,\n faQrcode: faQrcode,\n faClockRotateLeft: faClockRotateLeft,\n faHistory: faHistory,\n faFaceGrinBeamSweat: faFaceGrinBeamSweat,\n faGrinBeamSweat: faGrinBeamSweat,\n faFileExport: faFileExport,\n faArrowRightFromFile: faArrowRightFromFile,\n faShield: faShield,\n faShieldBlank: faShieldBlank,\n faArrowUpShortWide: faArrowUpShortWide,\n faSortAmountUpAlt: faSortAmountUpAlt,\n faHouseMedical: faHouseMedical,\n faGolfBallTee: faGolfBallTee,\n faGolfBall: faGolfBall,\n faCircleChevronLeft: faCircleChevronLeft,\n faChevronCircleLeft: faChevronCircleLeft,\n faHouseChimneyWindow: faHouseChimneyWindow,\n faPenNib: faPenNib,\n faTentArrowTurnLeft: faTentArrowTurnLeft,\n faTents: faTents,\n faWandMagic: faWandMagic,\n faMagic: faMagic,\n faDog: faDog,\n faCarrot: faCarrot,\n faMoon: faMoon,\n faWineGlassEmpty: faWineGlassEmpty,\n faWineGlassAlt: faWineGlassAlt,\n faCheese: faCheese,\n faYinYang: faYinYang,\n faMusic: faMusic,\n faCodeCommit: faCodeCommit,\n faTemperatureLow: faTemperatureLow,\n faPersonBiking: faPersonBiking,\n faBiking: faBiking,\n faBroom: faBroom,\n faShieldHeart: faShieldHeart,\n faGopuram: faGopuram,\n faEarthOceania: faEarthOceania,\n faGlobeOceania: faGlobeOceania,\n faSquareXmark: faSquareXmark,\n faTimesSquare: faTimesSquare,\n faXmarkSquare: faXmarkSquare,\n faHashtag: faHashtag,\n faUpRightAndDownLeftFromCenter: faUpRightAndDownLeftFromCenter,\n faExpandAlt: faExpandAlt,\n faOilCan: faOilCan,\n faT: faT,\n faHippo: faHippo,\n faChartColumn: faChartColumn,\n faInfinity: faInfinity,\n faVialCircleCheck: faVialCircleCheck,\n faPersonArrowDownToLine: faPersonArrowDownToLine,\n faVoicemail: faVoicemail,\n faFan: faFan,\n faPersonWalkingLuggage: faPersonWalkingLuggage,\n faUpDown: faUpDown,\n faArrowsAltV: faArrowsAltV,\n faCloudMoonRain: faCloudMoonRain,\n faCalendar: faCalendar,\n faTrailer: faTrailer,\n faBahai: faBahai,\n faHaykal: faHaykal,\n faSdCard: faSdCard,\n faDragon: faDragon,\n faShoePrints: faShoePrints,\n faCirclePlus: faCirclePlus,\n faPlusCircle: faPlusCircle,\n faFaceGrinTongueWink: faFaceGrinTongueWink,\n faGrinTongueWink: faGrinTongueWink,\n faHandHolding: faHandHolding,\n faPlugCircleExclamation: faPlugCircleExclamation,\n faLinkSlash: faLinkSlash,\n faChainBroken: faChainBroken,\n faChainSlash: faChainSlash,\n faUnlink: faUnlink,\n faClone: faClone,\n faPersonWalkingArrowLoopLeft: faPersonWalkingArrowLoopLeft,\n faArrowUpZA: faArrowUpZA,\n faSortAlphaUpAlt: faSortAlphaUpAlt,\n faFireFlameCurved: faFireFlameCurved,\n faFireAlt: faFireAlt,\n faTornado: faTornado,\n faFileCirclePlus: faFileCirclePlus,\n faBookQuran: faBookQuran,\n faQuran: faQuran,\n faAnchor: faAnchor,\n faBorderAll: faBorderAll,\n faFaceAngry: faFaceAngry,\n faAngry: faAngry,\n faCookieBite: faCookieBite,\n faArrowTrendDown: faArrowTrendDown,\n faRss: faRss,\n faFeed: faFeed,\n faDrawPolygon: faDrawPolygon,\n faScaleBalanced: faScaleBalanced,\n faBalanceScale: faBalanceScale,\n faGaugeSimpleHigh: faGaugeSimpleHigh,\n faTachometer: faTachometer,\n faTachometerFast: faTachometerFast,\n faShower: faShower,\n faDesktop: faDesktop,\n faDesktopAlt: faDesktopAlt,\n faM: faM,\n faTableList: faTableList,\n faThList: faThList,\n faCommentSms: faCommentSms,\n faSms: faSms,\n faBook: faBook,\n faUserPlus: faUserPlus,\n faCheck: faCheck,\n faBatteryThreeQuarters: faBatteryThreeQuarters,\n faBattery4: faBattery4,\n faHouseCircleCheck: faHouseCircleCheck,\n faAngleLeft: faAngleLeft,\n faDiagramSuccessor: faDiagramSuccessor,\n faTruckArrowRight: faTruckArrowRight,\n faArrowsSplitUpAndLeft: faArrowsSplitUpAndLeft,\n faHandFist: faHandFist,\n faFistRaised: faFistRaised,\n faCloudMoon: faCloudMoon,\n faBriefcase: faBriefcase,\n faPersonFalling: faPersonFalling,\n faImagePortrait: faImagePortrait,\n faPortrait: faPortrait,\n faUserTag: faUserTag,\n faRug: faRug,\n faEarthEurope: faEarthEurope,\n faGlobeEurope: faGlobeEurope,\n faCartFlatbedSuitcase: faCartFlatbedSuitcase,\n faLuggageCart: faLuggageCart,\n faRectangleXmark: faRectangleXmark,\n faRectangleTimes: faRectangleTimes,\n faTimesRectangle: faTimesRectangle,\n faWindowClose: faWindowClose,\n faBahtSign: faBahtSign,\n faBookOpen: faBookOpen,\n faBookJournalWhills: faBookJournalWhills,\n faJournalWhills: faJournalWhills,\n faHandcuffs: faHandcuffs,\n faTriangleExclamation: faTriangleExclamation,\n faExclamationTriangle: faExclamationTriangle,\n faWarning: faWarning,\n faDatabase: faDatabase,\n faShare: faShare,\n faMailForward: faMailForward,\n faBottleDroplet: faBottleDroplet,\n faMaskFace: faMaskFace,\n faHillRockslide: faHillRockslide,\n faRightLeft: faRightLeft,\n faExchangeAlt: faExchangeAlt,\n faPaperPlane: faPaperPlane,\n faRoadCircleExclamation: faRoadCircleExclamation,\n faDungeon: faDungeon,\n faAlignRight: faAlignRight,\n faMoneyBill1Wave: faMoneyBill1Wave,\n faMoneyBillWaveAlt: faMoneyBillWaveAlt,\n faLifeRing: faLifeRing,\n faHands: faHands,\n faSignLanguage: faSignLanguage,\n faSigning: faSigning,\n faCalendarDay: faCalendarDay,\n faWaterLadder: faWaterLadder,\n faLadderWater: faLadderWater,\n faSwimmingPool: faSwimmingPool,\n faArrowsUpDown: faArrowsUpDown,\n faArrowsV: faArrowsV,\n faFaceGrimace: faFaceGrimace,\n faGrimace: faGrimace,\n faWheelchairMove: faWheelchairMove,\n faWheelchairAlt: faWheelchairAlt,\n faTurnDown: faTurnDown,\n faLevelDownAlt: faLevelDownAlt,\n faPersonWalkingArrowRight: faPersonWalkingArrowRight,\n faSquareEnvelope: faSquareEnvelope,\n faEnvelopeSquare: faEnvelopeSquare,\n faDice: faDice,\n faBowlingBall: faBowlingBall,\n faBrain: faBrain,\n faBandage: faBandage,\n faBandAid: faBandAid,\n faCalendarMinus: faCalendarMinus,\n faCircleXmark: faCircleXmark,\n faTimesCircle: faTimesCircle,\n faXmarkCircle: faXmarkCircle,\n faGifts: faGifts,\n faHotel: faHotel,\n faEarthAsia: faEarthAsia,\n faGlobeAsia: faGlobeAsia,\n faIdCardClip: faIdCardClip,\n faIdCardAlt: faIdCardAlt,\n faMagnifyingGlassPlus: faMagnifyingGlassPlus,\n faSearchPlus: faSearchPlus,\n faThumbsUp: faThumbsUp,\n faUserClock: faUserClock,\n faHandDots: faHandDots,\n faAllergies: faAllergies,\n faFileInvoice: faFileInvoice,\n faWindowMinimize: faWindowMinimize,\n faMugSaucer: faMugSaucer,\n faCoffee: faCoffee,\n faBrush: faBrush,\n faMask: faMask,\n faMagnifyingGlassMinus: faMagnifyingGlassMinus,\n faSearchMinus: faSearchMinus,\n faRulerVertical: faRulerVertical,\n faUserLarge: faUserLarge,\n faUserAlt: faUserAlt,\n faTrainTram: faTrainTram,\n faUserNurse: faUserNurse,\n faSyringe: faSyringe,\n faCloudSun: faCloudSun,\n faStopwatch20: faStopwatch20,\n faSquareFull: faSquareFull,\n faMagnet: faMagnet,\n faJar: faJar,\n faNoteSticky: faNoteSticky,\n faStickyNote: faStickyNote,\n faBugSlash: faBugSlash,\n faArrowUpFromWaterPump: faArrowUpFromWaterPump,\n faBone: faBone,\n faUserInjured: faUserInjured,\n faFaceSadTear: faFaceSadTear,\n faSadTear: faSadTear,\n faPlane: faPlane,\n faTentArrowsDown: faTentArrowsDown,\n faExclamation: faExclamation,\n faArrowsSpin: faArrowsSpin,\n faPrint: faPrint,\n faTurkishLiraSign: faTurkishLiraSign,\n faTry: faTry,\n faTurkishLira: faTurkishLira,\n faDollarSign: faDollarSign,\n faDollar: faDollar,\n faUsd: faUsd,\n faX: faX,\n faMagnifyingGlassDollar: faMagnifyingGlassDollar,\n faSearchDollar: faSearchDollar,\n faUsersGear: faUsersGear,\n faUsersCog: faUsersCog,\n faPersonMilitaryPointing: faPersonMilitaryPointing,\n faBuildingColumns: faBuildingColumns,\n faBank: faBank,\n faInstitution: faInstitution,\n faMuseum: faMuseum,\n faUniversity: faUniversity,\n faUmbrella: faUmbrella,\n faTrowel: faTrowel,\n faD: faD,\n faStapler: faStapler,\n faMasksTheater: faMasksTheater,\n faTheaterMasks: faTheaterMasks,\n faKipSign: faKipSign,\n faHandPointLeft: faHandPointLeft,\n faHandshakeSimple: faHandshakeSimple,\n faHandshakeAlt: faHandshakeAlt,\n faJetFighter: faJetFighter,\n faFighterJet: faFighterJet,\n faSquareShareNodes: faSquareShareNodes,\n faShareAltSquare: faShareAltSquare,\n faBarcode: faBarcode,\n faPlusMinus: faPlusMinus,\n faVideo: faVideo,\n faVideoCamera: faVideoCamera,\n faGraduationCap: faGraduationCap,\n faMortarBoard: faMortarBoard,\n faHandHoldingMedical: faHandHoldingMedical,\n faPersonCircleCheck: faPersonCircleCheck,\n faTurnUp: faTurnUp,\n faLevelUpAlt: faLevelUpAlt\n};\n\nexport { icons as fas, prefix, fa0, fa1, fa2, fa3, fa4, fa5, fa6, fa7, fa8, fa9, faFillDrip, faArrowsToCircle, faCircleChevronRight, faChevronCircleRight, faAt, faTrashCan, faTrashAlt, faTextHeight, faUserXmark, faUserTimes, faStethoscope, faMessage, faCommentAlt, faInfo, faDownLeftAndUpRightToCenter, faCompressAlt, faExplosion, faFileLines, faFileAlt, faFileText, faWaveSquare, faRing, faBuildingUn, faDiceThree, faCalendarDays, faCalendarAlt, faAnchorCircleCheck, faBuildingCircleArrowRight, faVolleyball, faVolleyballBall, faArrowsUpToLine, faSortDown, faSortDesc, faCircleMinus, faMinusCircle, faDoorOpen, faRightFromBracket, faSignOutAlt, faAtom, faSoap, faIcons, faHeartMusicCameraBolt, faMicrophoneLinesSlash, faMicrophoneAltSlash, faBridgeCircleCheck, faPumpMedical, faFingerprint, faHandPointRight, faMagnifyingGlassLocation, faSearchLocation, faForwardStep, faStepForward, faFaceSmileBeam, faSmileBeam, faFlagCheckered, faFootball, faFootballBall, faSchoolCircleExclamation, faCrop, faAnglesDown, faAngleDoubleDown, faUsersRectangle, faPeopleRoof, faPeopleLine, faBeerMugEmpty, faBeer, faDiagramPredecessor, faArrowUpLong, faLongArrowUp, faFireFlameSimple, faBurn, faPerson, faMale, faLaptop, faFileCsv, faMenorah, faTruckPlane, faRecordVinyl, faFaceGrinStars, faGrinStars, faBong, faSpaghettiMonsterFlying, faPastafarianism, faArrowDownUpAcrossLine, faSpoon, faUtensilSpoon, faJarWheat, faEnvelopesBulk, faMailBulk, faFileCircleExclamation, faCircleH, faHospitalSymbol, faPager, faAddressBook, faContactBook, faStrikethrough, faK, faLandmarkFlag, faPencil, faPencilAlt, faBackward, faCaretRight, faComments, faPaste, faFileClipboard, faCodePullRequest, faClipboardList, faTruckRampBox, faTruckLoading, faUserCheck, faVialVirus, faSheetPlastic, faBlog, faUserNinja, faPersonArrowUpFromLine, faScrollTorah, faTorah, faBroomBall, faQuidditch, faQuidditchBroomBall, faToggleOff, faBoxArchive, faArchive, faPersonDrowning, faArrowDown91, faSortNumericDesc, faSortNumericDownAlt, faFaceGrinTongueSquint, faGrinTongueSquint, faSprayCan, faTruckMonster, faW, faEarthAfrica, faGlobeAfrica, faRainbow, faCircleNotch, faTabletScreenButton, faTabletAlt, faPaw, faCloud, faTrowelBricks, faFaceFlushed, faFlushed, faHospitalUser, faTentArrowLeftRight, faGavel, faLegal, faBinoculars, faMicrophoneSlash, faBoxTissue, faMotorcycle, faBellConcierge, faConciergeBell, faPenRuler, faPencilRuler, faPeopleArrows, faPeopleArrowsLeftRight, faMarsAndVenusBurst, faSquareCaretRight, faCaretSquareRight, faScissors, faCut, faSunPlantWilt, faToiletsPortable, faHockeyPuck, faTable, faMagnifyingGlassArrowRight, faTachographDigital, faDigitalTachograph, faUsersSlash, faClover, faReply, faMailReply, faStarAndCrescent, faHouseFire, faSquareMinus, faMinusSquare, faHelicopter, faCompass, faSquareCaretDown, faCaretSquareDown, faFileCircleQuestion, faLaptopCode, faSwatchbook, faPrescriptionBottle, faBars, faNavicon, faPeopleGroup, faHourglassEnd, faHourglass3, faHeartCrack, faHeartBroken, faSquareUpRight, faExternalLinkSquareAlt, faFaceKissBeam, faKissBeam, faFilm, faRulerHorizontal, faPeopleRobbery, faLightbulb, faCaretLeft, faCircleExclamation, faExclamationCircle, faSchoolCircleXmark, faArrowRightFromBracket, faSignOut, faCircleChevronDown, faChevronCircleDown, faUnlockKeyhole, faUnlockAlt, faCloudShowersHeavy, faHeadphonesSimple, faHeadphonesAlt, faSitemap, faCircleDollarToSlot, faDonate, faMemory, faRoadSpikes, faFireBurner, faFlag, faHanukiah, faFeather, faVolumeLow, faVolumeDown, faCommentSlash, faCloudSunRain, faCompress, faWheatAwn, faWheatAlt, faAnkh, faHandsHoldingChild, faAsterisk, faSquareCheck, faCheckSquare, faPesetaSign, faHeading, faHeader, faGhost, faList, faListSquares, faSquarePhoneFlip, faPhoneSquareAlt, faCartPlus, faGamepad, faCircleDot, faDotCircle, faFaceDizzy, faDizzy, faEgg, faHouseMedicalCircleXmark, faCampground, faFolderPlus, faFutbol, faFutbolBall, faSoccerBall, faPaintbrush, faPaintBrush, faLock, faGasPump, faHotTubPerson, faHotTub, faMapLocation, faMapMarked, faHouseFloodWater, faTree, faBridgeLock, faSackDollar, faPenToSquare, faEdit, faCarSide, faShareNodes, faShareAlt, faHeartCircleMinus, faHourglassHalf, faHourglass2, faMicroscope, faSink, faBagShopping, faShoppingBag, faArrowDownZA, faSortAlphaDesc, faSortAlphaDownAlt, faMitten, faPersonRays, faUsers, faEyeSlash, faFlaskVial, faHand, faHandPaper, faOm, faWorm, faHouseCircleXmark, faPlug, faChevronUp, faHandSpock, faStopwatch, faFaceKiss, faKiss, faBridgeCircleXmark, faFaceGrinTongue, faGrinTongue, faChessBishop, faFaceGrinWink, faGrinWink, faEarDeaf, faDeaf, faDeafness, faHardOfHearing, faRoadCircleCheck, faDiceFive, faSquareRss, faRssSquare, faLandMineOn, faICursor, faStamp, faStairs, faI, faHryvniaSign, faHryvnia, faPills, faFaceGrinWide, faGrinAlt, faTooth, faV, faBangladeshiTakaSign, faBicycle, faStaffSnake, faRodAsclepius, faRodSnake, faStaffAesculapius, faHeadSideCoughSlash, faTruckMedical, faAmbulance, faWheatAwnCircleExclamation, faSnowman, faMortarPestle, faRoadBarrier, faSchool, faIgloo, faJoint, faAngleRight, faHorse, faQ, faG, faNotesMedical, faTemperatureHalf, faTemperature2, faThermometer2, faThermometerHalf, faDongSign, faCapsules, faPooStorm, faPooBolt, faFaceFrownOpen, faFrownOpen, faHandPointUp, faMoneyBill, faBookmark, faAlignJustify, faUmbrellaBeach, faHelmetUn, faBullseye, faBacon, faHandPointDown, faArrowUpFromBracket, faFolder, faFolderBlank, faFileWaveform, faFileMedicalAlt, faRadiation, faChartSimple, faMarsStroke, faVial, faGauge, faDashboard, faGaugeMed, faTachometerAltAverage, faWandMagicSparkles, faMagicWandSparkles, faE, faPenClip, faPenAlt, faBridgeCircleExclamation, faUser, faSchoolCircleCheck, faDumpster, faVanShuttle, faShuttleVan, faBuildingUser, faSquareCaretLeft, faCaretSquareLeft, faHighlighter, faKey, faBullhorn, faGlobe, faSynagogue, faPersonHalfDress, faRoadBridge, faLocationArrow, faC, faTabletButton, faBuildingLock, faPizzaSlice, faMoneyBillWave, faChartArea, faAreaChart, faHouseFlag, faPersonCircleMinus, faBan, faCancel, faCameraRotate, faSprayCanSparkles, faAirFreshener, faStar, faRepeat, faCross, faBox, faVenusMars, faArrowPointer, faMousePointer, faMaximize, faExpandArrowsAlt, faChargingStation, faShapes, faTriangleCircleSquare, faShuffle, faRandom, faPersonRunning, faRunning, faMobileRetro, faGripLinesVertical, faSpider, faHandsBound, faFileInvoiceDollar, faPlaneCircleExclamation, faXRay, faSpellCheck, faSlash, faComputerMouse, faMouse, faArrowRightToBracket, faSignIn, faShopSlash, faStoreAltSlash, faServer, faVirusCovidSlash, faShopLock, faHourglassStart, faHourglass1, faBlenderPhone, faBuildingWheat, faPersonBreastfeeding, faRightToBracket, faSignInAlt, faVenus, faPassport, faHeartPulse, faHeartbeat, faPeopleCarryBox, faPeopleCarry, faTemperatureHigh, faMicrochip, faCrown, faWeightHanging, faXmarksLines, faFilePrescription, faWeightScale, faWeight, faUserGroup, faUserFriends, faArrowUpAZ, faSortAlphaUp, faChessKnight, faFaceLaughSquint, faLaughSquint, faWheelchair, faCircleArrowUp, faArrowCircleUp, faToggleOn, faPersonWalking, faWalking, faL, faFire, faBedPulse, faProcedures, faShuttleSpace, faSpaceShuttle, faFaceLaugh, faLaugh, faFolderOpen, faHeartCirclePlus, faCodeFork, faCity, faMicrophoneLines, faMicrophoneAlt, faPepperHot, faUnlock, faColonSign, faHeadset, faStoreSlash, faRoadCircleXmark, faUserMinus, faMarsStrokeUp, faMarsStrokeV, faChampagneGlasses, faGlassCheers, faClipboard, faHouseCircleExclamation, faFileArrowUp, faFileUpload, faWifi, faWifi3, faWifiStrong, faBath, faBathtub, faUnderline, faUserPen, faUserEdit, faSignature, faStroopwafel, faBold, faAnchorLock, faBuildingNgo, faManatSign, faNotEqual, faBorderTopLeft, faBorderStyle, faMapLocationDot, faMapMarkedAlt, faJedi, faSquarePollVertical, faPoll, faMugHot, faCarBattery, faBatteryCar, faGift, faDiceTwo, faChessQueen, faGlasses, faChessBoard, faBuildingCircleCheck, faPersonChalkboard, faMarsStrokeRight, faMarsStrokeH, faHandBackFist, faHandRock, faSquareCaretUp, faCaretSquareUp, faCloudShowersWater, faChartBar, faBarChart, faHandsBubbles, faHandsWash, faLessThanEqual, faTrain, faEyeLowVision, faLowVision, faCrow, faSailboat, faWindowRestore, faSquarePlus, faPlusSquare, faToriiGate, faFrog, faBucket, faImage, faMicrophone, faCow, faCaretUp, faScrewdriver, faFolderClosed, faHouseTsunami, faSquareNfi, faArrowUpFromGroundWater, faMartiniGlass, faGlassMartiniAlt, faRotateLeft, faRotateBack, faRotateBackward, faUndoAlt, faTableColumns, faColumns, faLemon, faHeadSideMask, faHandshake, faGem, faDolly, faDollyBox, faSmoking, faMinimize, faCompressArrowsAlt, faMonument, faSnowplow, faAnglesRight, faAngleDoubleRight, faCannabis, faCirclePlay, faPlayCircle, faTablets, faEthernet, faEuroSign, faEur, faEuro, faChair, faCircleCheck, faCheckCircle, faCircleStop, faStopCircle, faCompassDrafting, faDraftingCompass, faPlateWheat, faIcicles, faPersonShelter, faNeuter, faIdBadge, faMarker, faFaceLaughBeam, faLaughBeam, faHelicopterSymbol, faUniversalAccess, faCircleChevronUp, faChevronCircleUp, faLariSign, faVolcano, faPersonWalkingDashedLineArrowRight, faSterlingSign, faGbp, faPoundSign, faViruses, faSquarePersonConfined, faUserTie, faArrowDownLong, faLongArrowDown, faTentArrowDownToLine, faCertificate, faReplyAll, faMailReplyAll, faSuitcase, faPersonSkating, faSkating, faFilterCircleDollar, faFunnelDollar, faCameraRetro, faCircleArrowDown, faArrowCircleDown, faFileImport, faArrowRightToFile, faSquareArrowUpRight, faExternalLinkSquare, faBoxOpen, faScroll, faSpa, faLocationPinLock, faPause, faHillAvalanche, faTemperatureEmpty, faTemperature0, faThermometer0, faThermometerEmpty, faBomb, faRegistered, faAddressCard, faContactCard, faVcard, faScaleUnbalancedFlip, faBalanceScaleRight, faSubscript, faDiamondTurnRight, faDirections, faBurst, faHouseLaptop, faLaptopHouse, faFaceTired, faTired, faMoneyBills, faSmog, faCrutch, faFontAwesome, faFontAwesomeFlag, faFontAwesomeLogoFull, faCloudArrowUp, faCloudUpload, faCloudUploadAlt, faPalette, faArrowsTurnRight, faVest, faFerry, faArrowsDownToPeople, faSeedling, faSprout, faLeftRight, faArrowsAltH, faBoxesPacking, faCircleArrowLeft, faArrowCircleLeft, faGroupArrowsRotate, faBowlFood, faCandyCane, faArrowDownWideShort, faSortAmountAsc, faSortAmountDown, faCloudBolt, faThunderstorm, faTextSlash, faRemoveFormat, faFaceSmileWink, faSmileWink, faFileWord, faFilePowerpoint, faArrowsLeftRight, faArrowsH, faHouseLock, faCloudArrowDown, faCloudDownload, faCloudDownloadAlt, faChildren, faChalkboard, faBlackboard, faUserLargeSlash, faUserAltSlash, faEnvelopeOpen, faHandshakeSimpleSlash, faHandshakeAltSlash, faMattressPillow, faGuaraniSign, faArrowsRotate, faRefresh, faSync, faFireExtinguisher, faCruzeiroSign, faGreaterThanEqual, faShieldHalved, faShieldAlt, faBookAtlas, faAtlas, faVirus, faEnvelopeCircleCheck, faLayerGroup, faArrowsToDot, faArchway, faHeartCircleCheck, faHouseChimneyCrack, faHouseDamage, faFileZipper, faFileArchive, faSquare, faMartiniGlassEmpty, faGlassMartini, faCouch, faCediSign, faItalic, faTableCellsColumnLock, faChurch, faCommentsDollar, faDemocrat, faZ, faPersonSkiing, faSkiing, faRoadLock, faA, faTemperatureArrowDown, faTemperatureDown, faFeatherPointed, faFeatherAlt, faP, faSnowflake, faNewspaper, faRectangleAd, faAd, faCircleArrowRight, faArrowCircleRight, faFilterCircleXmark, faLocust, faSort, faUnsorted, faListOl, faList12, faListNumeric, faPersonDressBurst, faMoneyCheckDollar, faMoneyCheckAlt, faVectorSquare, faBreadSlice, faLanguage, faFaceKissWinkHeart, faKissWinkHeart, faFilter, faQuestion, faFileSignature, faUpDownLeftRight, faArrowsAlt, faHouseChimneyUser, faHandHoldingHeart, faPuzzlePiece, faMoneyCheck, faStarHalfStroke, faStarHalfAlt, faCode, faWhiskeyGlass, faGlassWhiskey, faBuildingCircleExclamation, faMagnifyingGlassChart, faArrowUpRightFromSquare, faExternalLink, faCubesStacked, faWonSign, faKrw, faWon, faVirusCovid, faAustralSign, faF, faLeaf, faRoad, faTaxi, faCab, faPersonCirclePlus, faChartPie, faPieChart, faBoltLightning, faSackXmark, faFileExcel, faFileContract, faFishFins, faBuildingFlag, faFaceGrinBeam, faGrinBeam, faObjectUngroup, faPoop, faLocationPin, faMapMarker, faKaaba, faToiletPaper, faHelmetSafety, faHardHat, faHatHard, faEject, faCircleRight, faArrowAltCircleRight, faPlaneCircleCheck, faFaceRollingEyes, faMehRollingEyes, faObjectGroup, faChartLine, faLineChart, faMaskVentilator, faArrowRight, faSignsPost, faMapSigns, faCashRegister, faPersonCircleQuestion, faH, faTarp, faScrewdriverWrench, faTools, faArrowsToEye, faPlugCircleBolt, faHeart, faMarsAndVenus, faHouseUser, faHomeUser, faDumpsterFire, faHouseCrack, faMartiniGlassCitrus, faCocktail, faFaceSurprise, faSurprise, faBottleWater, faCirclePause, faPauseCircle, faToiletPaperSlash, faAppleWhole, faAppleAlt, faKitchenSet, faR, faTemperatureQuarter, faTemperature1, faThermometer1, faThermometerQuarter, faCube, faBitcoinSign, faShieldDog, faSolarPanel, faLockOpen, faElevator, faMoneyBillTransfer, faMoneyBillTrendUp, faHouseFloodWaterCircleArrowRight, faSquarePollHorizontal, faPollH, faCircle, faBackwardFast, faFastBackward, faRecycle, faUserAstronaut, faPlaneSlash, faTrademark, faBasketball, faBasketballBall, faSatelliteDish, faCircleUp, faArrowAltCircleUp, faMobileScreenButton, faMobileAlt, faVolumeHigh, faVolumeUp, faUsersRays, faWallet, faClipboardCheck, faFileAudio, faBurger, faHamburger, faWrench, faBugs, faRupeeSign, faRupee, faFileImage, faCircleQuestion, faQuestionCircle, faPlaneDeparture, faHandshakeSlash, faBookBookmark, faCodeBranch, faHatCowboy, faBridge, faPhoneFlip, faPhoneAlt, faTruckFront, faCat, faAnchorCircleExclamation, faTruckField, faRoute, faClipboardQuestion, faPanorama, faCommentMedical, faTeethOpen, faFileCircleMinus, faTags, faWineGlass, faForwardFast, faFastForward, faFaceMehBlank, faMehBlank, faSquareParking, faParking, faHouseSignal, faBarsProgress, faTasksAlt, faFaucetDrip, faCartFlatbed, faDollyFlatbed, faBanSmoking, faSmokingBan, faTerminal, faMobileButton, faHouseMedicalFlag, faBasketShopping, faShoppingBasket, faTape, faBusSimple, faBusAlt, faEye, faFaceSadCry, faSadCry, faAudioDescription, faPersonMilitaryToPerson, faFileShield, faUserSlash, faPen, faTowerObservation, faFileCode, faSignal, faSignal5, faSignalPerfect, faBus, faHeartCircleXmark, faHouseChimney, faHomeLg, faWindowMaximize, faFaceFrown, faFrown, faPrescription, faShop, faStoreAlt, faFloppyDisk, faSave, faVihara, faScaleUnbalanced, faBalanceScaleLeft, faSortUp, faSortAsc, faCommentDots, faCommenting, faPlantWilt, faDiamond, faFaceGrinSquint, faGrinSquint, faHandHoldingDollar, faHandHoldingUsd, faBacterium, faHandPointer, faDrumSteelpan, faHandScissors, faHandsPraying, faPrayingHands, faArrowRotateRight, faArrowRightRotate, faArrowRotateForward, faRedo, faBiohazard, faLocationCrosshairs, faLocation, faMarsDouble, faChildDress, faUsersBetweenLines, faLungsVirus, faFaceGrinTears, faGrinTears, faPhone, faCalendarXmark, faCalendarTimes, faChildReaching, faHeadSideVirus, faUserGear, faUserCog, faArrowUp19, faSortNumericUp, faDoorClosed, faShieldVirus, faDiceSix, faMosquitoNet, faBridgeWater, faPersonBooth, faTextWidth, faHatWizard, faPenFancy, faPersonDigging, faDigging, faTrash, faGaugeSimple, faGaugeSimpleMed, faTachometerAverage, faBookMedical, faPoo, faQuoteRight, faQuoteRightAlt, faShirt, faTShirt, faTshirt, faCubes, faDivide, faTengeSign, faTenge, faHeadphones, faHandsHolding, faHandsClapping, faRepublican, faArrowLeft, faPersonCircleXmark, faRuler, faAlignLeft, faDiceD6, faRestroom, faJ, faUsersViewfinder, faFileVideo, faUpRightFromSquare, faExternalLinkAlt, faTableCells, faTh, faFilePdf, faBookBible, faBible, faO, faSuitcaseMedical, faMedkit, faUserSecret, faOtter, faPersonDress, faFemale, faCommentDollar, faBusinessTime, faBriefcaseClock, faTableCellsLarge, faThLarge, faBookTanakh, faTanakh, faPhoneVolume, faVolumeControlPhone, faHatCowboySide, faClipboardUser, faChild, faLiraSign, faSatellite, faPlaneLock, faTag, faComment, faCakeCandles, faBirthdayCake, faCake, faEnvelope, faAnglesUp, faAngleDoubleUp, faPaperclip, faArrowRightToCity, faRibbon, faLungs, faArrowUp91, faSortNumericUpAlt, faLitecoinSign, faBorderNone, faCircleNodes, faParachuteBox, faIndent, faTruckFieldUn, faHourglass, faHourglassEmpty, faMountain, faUserDoctor, faUserMd, faCircleInfo, faInfoCircle, faCloudMeatball, faCamera, faCameraAlt, faSquareVirus, faMeteor, faCarOn, faSleigh, faArrowDown19, faSortNumericAsc, faSortNumericDown, faHandHoldingDroplet, faHandHoldingWater, faWater, faCalendarCheck, faBraille, faPrescriptionBottleMedical, faPrescriptionBottleAlt, faLandmark, faTruck, faCrosshairs, faPersonCane, faTent, faVestPatches, faCheckDouble, faArrowDownAZ, faSortAlphaAsc, faSortAlphaDown, faMoneyBillWheat, faCookie, faArrowRotateLeft, faArrowLeftRotate, faArrowRotateBack, faArrowRotateBackward, faUndo, faHardDrive, faHdd, faFaceGrinSquintTears, faGrinSquintTears, faDumbbell, faRectangleList, faListAlt, faTarpDroplet, faHouseMedicalCircleCheck, faPersonSkiingNordic, faSkiingNordic, faCalendarPlus, faPlaneArrival, faCircleLeft, faArrowAltCircleLeft, faTrainSubway, faSubway, faChartGantt, faIndianRupeeSign, faIndianRupee, faInr, faCropSimple, faCropAlt, faMoneyBill1, faMoneyBillAlt, faLeftLong, faLongArrowAltLeft, faDna, faVirusSlash, faMinus, faSubtract, faChess, faArrowLeftLong, faLongArrowLeft, faPlugCircleCheck, faStreetView, faFrancSign, faVolumeOff, faHandsAslInterpreting, faAmericanSignLanguageInterpreting, faAslInterpreting, faHandsAmericanSignLanguageInterpreting, faGear, faCog, faDropletSlash, faTintSlash, faMosque, faMosquito, faStarOfDavid, faPersonMilitaryRifle, faCartShopping, faShoppingCart, faVials, faPlugCirclePlus, faPlaceOfWorship, faGripVertical, faArrowTurnUp, faLevelUp, faU, faSquareRootVariable, faSquareRootAlt, faClock, faClockFour, faBackwardStep, faStepBackward, faPallet, faFaucet, faBaseballBatBall, faS, faTimeline, faKeyboard, faCaretDown, faHouseChimneyMedical, faClinicMedical, faTemperatureThreeQuarters, faTemperature3, faThermometer3, faThermometerThreeQuarters, faMobileScreen, faMobileAndroidAlt, faPlaneUp, faPiggyBank, faBatteryHalf, faBattery3, faMountainCity, faCoins, faKhanda, faSliders, faSlidersH, faFolderTree, faNetworkWired, faMapPin, faHamsa, faCentSign, faFlask, faPersonPregnant, faWandSparkles, faEllipsisVertical, faEllipsisV, faTicket, faPowerOff, faRightLong, faLongArrowAltRight, faFlagUsa, faLaptopFile, faTty, faTeletype, faDiagramNext, faPersonRifle, faHouseMedicalCircleExclamation, faClosedCaptioning, faPersonHiking, faHiking, faVenusDouble, faImages, faCalculator, faPeoplePulling, faN, faCableCar, faTram, faCloudRain, faBuildingCircleXmark, faShip, faArrowsDownToLine, faDownload, faFaceGrin, faGrin, faDeleteLeft, faBackspace, faEyeDropper, faEyeDropperEmpty, faEyedropper, faFileCircleCheck, faForward, faMobile, faMobileAndroid, faMobilePhone, faFaceMeh, faMeh, faAlignCenter, faBookSkull, faBookDead, faIdCard, faDriversLicense, faOutdent, faDedent, faHeartCircleExclamation, faHouse, faHome, faHomeAlt, faHomeLgAlt, faCalendarWeek, faLaptopMedical, faB, faFileMedical, faDiceOne, faKiwiBird, faArrowRightArrowLeft, faExchange, faRotateRight, faRedoAlt, faRotateForward, faUtensils, faCutlery, faArrowUpWideShort, faSortAmountUp, faMillSign, faBowlRice, faSkull, faTowerBroadcast, faBroadcastTower, faTruckPickup, faUpLong, faLongArrowAltUp, faStop, faCodeMerge, faUpload, faHurricane, faMound, faToiletPortable, faCompactDisc, faFileArrowDown, faFileDownload, faCaravan, faShieldCat, faBolt, faZap, faGlassWater, faOilWell, faVault, faMars, faToilet, faPlaneCircleXmark, faYenSign, faCny, faJpy, faRmb, faYen, faRubleSign, faRouble, faRub, faRuble, faSun, faGuitar, faFaceLaughWink, faLaughWink, faHorseHead, faBoreHole, faIndustry, faCircleDown, faArrowAltCircleDown, faArrowsTurnToDots, faFlorinSign, faArrowDownShortWide, faSortAmountDesc, faSortAmountDownAlt, faLessThan, faAngleDown, faCarTunnel, faHeadSideCough, faGripLines, faThumbsDown, faUserLock, faArrowRightLong, faLongArrowRight, faAnchorCircleXmark, faEllipsis, faEllipsisH, faChessPawn, faKitMedical, faFirstAid, faPersonThroughWindow, faToolbox, faHandsHoldingCircle, faBug, faCreditCard, faCreditCardAlt, faCar, faAutomobile, faHandHoldingHand, faBookOpenReader, faBookReader, faMountainSun, faArrowsLeftRightToLine, faDiceD20, faTruckDroplet, faFileCircleXmark, faTemperatureArrowUp, faTemperatureUp, faMedal, faBed, faSquareH, faHSquare, faPodcast, faTemperatureFull, faTemperature4, faThermometer4, faThermometerFull, faBell, faSuperscript, faPlugCircleXmark, faStarOfLife, faPhoneSlash, faPaintRoller, faHandshakeAngle, faHandsHelping, faLocationDot, faMapMarkerAlt, faFile, faGreaterThan, faPersonSwimming, faSwimmer, faArrowDown, faDroplet, faTint, faEraser, faEarthAmericas, faEarth, faEarthAmerica, faGlobeAmericas, faPersonBurst, faDove, faBatteryEmpty, faBattery0, faSocks, faInbox, faSection, faGaugeHigh, faTachometerAlt, faTachometerAltFast, faEnvelopeOpenText, faHospital, faHospitalAlt, faHospitalWide, faWineBottle, faChessRook, faBarsStaggered, faReorder, faStream, faDharmachakra, faHotdog, faPersonWalkingWithCane, faBlind, faDrum, faIceCream, faHeartCircleBolt, faFax, faParagraph, faCheckToSlot, faVoteYea, faStarHalf, faBoxesStacked, faBoxes, faBoxesAlt, faLink, faChain, faEarListen, faAssistiveListeningSystems, faTreeCity, faPlay, faFont, faTableCellsRowLock, faRupiahSign, faMagnifyingGlass, faSearch, faTableTennisPaddleBall, faPingPongPaddleBall, faTableTennis, faPersonDotsFromLine, faDiagnoses, faTrashCanArrowUp, faTrashRestoreAlt, faNairaSign, faCartArrowDown, faWalkieTalkie, faFilePen, faFileEdit, faReceipt, faSquarePen, faPenSquare, faPencilSquare, faSuitcaseRolling, faPersonCircleExclamation, faChevronDown, faBatteryFull, faBattery, faBattery5, faSkullCrossbones, faCodeCompare, faListUl, faListDots, faSchoolLock, faTowerCell, faDownLong, faLongArrowAltDown, faRankingStar, faChessKing, faPersonHarassing, faBrazilianRealSign, faLandmarkDome, faLandmarkAlt, faArrowUp, faTv, faTelevision, faTvAlt, faShrimp, faListCheck, faTasks, faJugDetergent, faCircleUser, faUserCircle, faUserShield, faWind, faCarBurst, faCarCrash, faY, faPersonSnowboarding, faSnowboarding, faTruckFast, faShippingFast, faFish, faUserGraduate, faCircleHalfStroke, faAdjust, faClapperboard, faCircleRadiation, faRadiationAlt, faBaseball, faBaseballBall, faJetFighterUp, faDiagramProject, faProjectDiagram, faCopy, faVolumeXmark, faVolumeMute, faVolumeTimes, faHandSparkles, faGrip, faGripHorizontal, faShareFromSquare, faShareSquare, faChildCombatant, faChildRifle, faGun, faSquarePhone, faPhoneSquare, faPlus, faAdd, faExpand, faComputer, faXmark, faClose, faMultiply, faRemove, faTimes, faArrowsUpDownLeftRight, faArrows, faChalkboardUser, faChalkboardTeacher, faPesoSign, faBuildingShield, faBaby, faUsersLine, faQuoteLeft, faQuoteLeftAlt, faTractor, faTrashArrowUp, faTrashRestore, faArrowDownUpLock, faLinesLeaning, faRulerCombined, faCopyright, faEquals, faBlender, faTeeth, faShekelSign, faIls, faShekel, faSheqel, faSheqelSign, faMap, faRocket, faPhotoFilm, faPhotoVideo, faFolderMinus, faStore, faArrowTrendUp, faPlugCircleMinus, faSignHanging, faSign, faBezierCurve, faBellSlash, faTablet, faTabletAndroid, faSchoolFlag, faFill, faAngleUp, faDrumstickBite, faHollyBerry, faChevronLeft, faBacteria, faHandLizard, faNotdef, faDisease, faBriefcaseMedical, faGenderless, faChevronRight, faRetweet, faCarRear, faCarAlt, faPumpSoap, faVideoSlash, faBatteryQuarter, faBattery2, faRadio, faBabyCarriage, faCarriageBaby, faTrafficLight, faThermometer, faVrCardboard, faHandMiddleFinger, faPercent, faPercentage, faTruckMoving, faGlassWaterDroplet, faDisplay, faFaceSmile, faSmile, faThumbtack, faThumbTack, faTrophy, faPersonPraying, faPray, faHammer, faHandPeace, faRotate, faSyncAlt, faSpinner, faRobot, faPeace, faGears, faCogs, faWarehouse, faArrowUpRightDots, faSplotch, faFaceGrinHearts, faGrinHearts, faDiceFour, faSimCard, faTransgender, faTransgenderAlt, faMercury, faArrowTurnDown, faLevelDown, faPersonFallingBurst, faAward, faTicketSimple, faTicketAlt, faBuilding, faAnglesLeft, faAngleDoubleLeft, faQrcode, faClockRotateLeft, faHistory, faFaceGrinBeamSweat, faGrinBeamSweat, faFileExport, faArrowRightFromFile, faShield, faShieldBlank, faArrowUpShortWide, faSortAmountUpAlt, faHouseMedical, faGolfBallTee, faGolfBall, faCircleChevronLeft, faChevronCircleLeft, faHouseChimneyWindow, faPenNib, faTentArrowTurnLeft, faTents, faWandMagic, faMagic, faDog, faCarrot, faMoon, faWineGlassEmpty, faWineGlassAlt, faCheese, faYinYang, faMusic, faCodeCommit, faTemperatureLow, faPersonBiking, faBiking, faBroom, faShieldHeart, faGopuram, faEarthOceania, faGlobeOceania, faSquareXmark, faTimesSquare, faXmarkSquare, faHashtag, faUpRightAndDownLeftFromCenter, faExpandAlt, faOilCan, faT, faHippo, faChartColumn, faInfinity, faVialCircleCheck, faPersonArrowDownToLine, faVoicemail, faFan, faPersonWalkingLuggage, faUpDown, faArrowsAltV, faCloudMoonRain, faCalendar, faTrailer, faBahai, faHaykal, faSdCard, faDragon, faShoePrints, faCirclePlus, faPlusCircle, faFaceGrinTongueWink, faGrinTongueWink, faHandHolding, faPlugCircleExclamation, faLinkSlash, faChainBroken, faChainSlash, faUnlink, faClone, faPersonWalkingArrowLoopLeft, faArrowUpZA, faSortAlphaUpAlt, faFireFlameCurved, faFireAlt, faTornado, faFileCirclePlus, faBookQuran, faQuran, faAnchor, faBorderAll, faFaceAngry, faAngry, faCookieBite, faArrowTrendDown, faRss, faFeed, faDrawPolygon, faScaleBalanced, faBalanceScale, faGaugeSimpleHigh, faTachometer, faTachometerFast, faShower, faDesktop, faDesktopAlt, faM, faTableList, faThList, faCommentSms, faSms, faBook, faUserPlus, faCheck, faBatteryThreeQuarters, faBattery4, faHouseCircleCheck, faAngleLeft, faDiagramSuccessor, faTruckArrowRight, faArrowsSplitUpAndLeft, faHandFist, faFistRaised, faCloudMoon, faBriefcase, faPersonFalling, faImagePortrait, faPortrait, faUserTag, faRug, faEarthEurope, faGlobeEurope, faCartFlatbedSuitcase, faLuggageCart, faRectangleXmark, faRectangleTimes, faTimesRectangle, faWindowClose, faBahtSign, faBookOpen, faBookJournalWhills, faJournalWhills, faHandcuffs, faTriangleExclamation, faExclamationTriangle, faWarning, faDatabase, faShare, faMailForward, faBottleDroplet, faMaskFace, faHillRockslide, faRightLeft, faExchangeAlt, faPaperPlane, faRoadCircleExclamation, faDungeon, faAlignRight, faMoneyBill1Wave, faMoneyBillWaveAlt, faLifeRing, faHands, faSignLanguage, faSigning, faCalendarDay, faWaterLadder, faLadderWater, faSwimmingPool, faArrowsUpDown, faArrowsV, faFaceGrimace, faGrimace, faWheelchairMove, faWheelchairAlt, faTurnDown, faLevelDownAlt, faPersonWalkingArrowRight, faSquareEnvelope, faEnvelopeSquare, faDice, faBowlingBall, faBrain, faBandage, faBandAid, faCalendarMinus, faCircleXmark, faTimesCircle, faXmarkCircle, faGifts, faHotel, faEarthAsia, faGlobeAsia, faIdCardClip, faIdCardAlt, faMagnifyingGlassPlus, faSearchPlus, faThumbsUp, faUserClock, faHandDots, faAllergies, faFileInvoice, faWindowMinimize, faMugSaucer, faCoffee, faBrush, faMask, faMagnifyingGlassMinus, faSearchMinus, faRulerVertical, faUserLarge, faUserAlt, faTrainTram, faUserNurse, faSyringe, faCloudSun, faStopwatch20, faSquareFull, faMagnet, faJar, faNoteSticky, faStickyNote, faBugSlash, faArrowUpFromWaterPump, faBone, faUserInjured, faFaceSadTear, faSadTear, faPlane, faTentArrowsDown, faExclamation, faArrowsSpin, faPrint, faTurkishLiraSign, faTry, faTurkishLira, faDollarSign, faDollar, faUsd, faX, faMagnifyingGlassDollar, faSearchDollar, faUsersGear, faUsersCog, faPersonMilitaryPointing, faBuildingColumns, faBank, faInstitution, faMuseum, faUniversity, faUmbrella, faTrowel, faD, faStapler, faMasksTheater, faTheaterMasks, faKipSign, faHandPointLeft, faHandshakeSimple, faHandshakeAlt, faJetFighter, faFighterJet, faSquareShareNodes, faShareAltSquare, faBarcode, faPlusMinus, faVideo, faVideoCamera, faGraduationCap, faMortarBoard, faHandHoldingMedical, faPersonCircleCheck, faTurnUp, faLevelUpAlt };\n","const formatDistanceLocale = {\n lessThanXSeconds: {\n one: \"less than a second\",\n other: \"less than {{count}} seconds\",\n },\n\n xSeconds: {\n one: \"1 second\",\n other: \"{{count}} seconds\",\n },\n\n halfAMinute: \"half a minute\",\n\n lessThanXMinutes: {\n one: \"less than a minute\",\n other: \"less than {{count}} minutes\",\n },\n\n xMinutes: {\n one: \"1 minute\",\n other: \"{{count}} minutes\",\n },\n\n aboutXHours: {\n one: \"about 1 hour\",\n other: \"about {{count}} hours\",\n },\n\n xHours: {\n one: \"1 hour\",\n other: \"{{count}} hours\",\n },\n\n xDays: {\n one: \"1 day\",\n other: \"{{count}} days\",\n },\n\n aboutXWeeks: {\n one: \"about 1 week\",\n other: \"about {{count}} weeks\",\n },\n\n xWeeks: {\n one: \"1 week\",\n other: \"{{count}} weeks\",\n },\n\n aboutXMonths: {\n one: \"about 1 month\",\n other: \"about {{count}} months\",\n },\n\n xMonths: {\n one: \"1 month\",\n other: \"{{count}} months\",\n },\n\n aboutXYears: {\n one: \"about 1 year\",\n other: \"about {{count}} years\",\n },\n\n xYears: {\n one: \"1 year\",\n other: \"{{count}} years\",\n },\n\n overXYears: {\n one: \"over 1 year\",\n other: \"over {{count}} years\",\n },\n\n almostXYears: {\n one: \"almost 1 year\",\n other: \"almost {{count}} years\",\n },\n};\n\nexport const formatDistance = (token, count, options) => {\n let result;\n\n const tokenValue = formatDistanceLocale[token];\n if (typeof tokenValue === \"string\") {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace(\"{{count}}\", count.toString());\n }\n\n if (options?.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"in \" + result;\n } else {\n return result + \" ago\";\n }\n }\n\n return result;\n};\n","export function buildFormatLongFn(args) {\n return (options = {}) => {\n // TODO: Remove String()\n const width = options.width ? String(options.width) : args.defaultWidth;\n const format = args.formats[width] || args.formats[args.defaultWidth];\n return format;\n };\n}\n","import { buildFormatLongFn } from \"../../_lib/buildFormatLongFn.mjs\";\n\nconst dateFormats = {\n full: \"EEEE, MMMM do, y\",\n long: \"MMMM do, y\",\n medium: \"MMM d, y\",\n short: \"MM/dd/yyyy\",\n};\n\nconst timeFormats = {\n full: \"h:mm:ss a zzzz\",\n long: \"h:mm:ss a z\",\n medium: \"h:mm:ss a\",\n short: \"h:mm a\",\n};\n\nconst dateTimeFormats = {\n full: \"{{date}} 'at' {{time}}\",\n long: \"{{date}} 'at' {{time}}\",\n medium: \"{{date}}, {{time}}\",\n short: \"{{date}}, {{time}}\",\n};\n\nexport const formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: \"full\",\n }),\n\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: \"full\",\n }),\n\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: \"full\",\n }),\n};\n","const formatRelativeLocale = {\n lastWeek: \"'last' eeee 'at' p\",\n yesterday: \"'yesterday at' p\",\n today: \"'today at' p\",\n tomorrow: \"'tomorrow at' p\",\n nextWeek: \"eeee 'at' p\",\n other: \"P\",\n};\n\nexport const formatRelative = (token, _date, _baseDate, _options) =>\n formatRelativeLocale[token];\n","/* eslint-disable no-unused-vars */\n\n/**\n * The localize function argument callback which allows to convert raw value to\n * the actual type.\n *\n * @param value - The value to convert\n *\n * @returns The converted value\n */\n\n/**\n * The map of localized values for each width.\n */\n\n/**\n * The index type of the locale unit value. It types conversion of units of\n * values that don't start at 0 (i.e. quarters).\n */\n\n/**\n * Converts the unit value to the tuple of values.\n */\n\n/**\n * The tuple of localized era values. The first element represents BC,\n * the second element represents AD.\n */\n\n/**\n * The tuple of localized quarter values. The first element represents Q1.\n */\n\n/**\n * The tuple of localized day values. The first element represents Sunday.\n */\n\n/**\n * The tuple of localized month values. The first element represents January.\n */\n\nexport function buildLocalizeFn(args) {\n return (value, options) => {\n const context = options?.context ? String(options.context) : \"standalone\";\n\n let valuesArray;\n if (context === \"formatting\" && args.formattingValues) {\n const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;\n const width = options?.width ? String(options.width) : defaultWidth;\n\n valuesArray =\n args.formattingValues[width] || args.formattingValues[defaultWidth];\n } else {\n const defaultWidth = args.defaultWidth;\n const width = options?.width ? String(options.width) : args.defaultWidth;\n\n valuesArray = args.values[width] || args.values[defaultWidth];\n }\n const index = args.argumentCallback ? args.argumentCallback(value) : value;\n\n // @ts-expect-error - For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!\n return valuesArray[index];\n };\n}\n","import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.mjs\";\n\nconst eraValues = {\n narrow: [\"B\", \"A\"],\n abbreviated: [\"BC\", \"AD\"],\n wide: [\"Before Christ\", \"Anno Domini\"],\n};\n\nconst quarterValues = {\n narrow: [\"1\", \"2\", \"3\", \"4\"],\n abbreviated: [\"Q1\", \"Q2\", \"Q3\", \"Q4\"],\n wide: [\"1st quarter\", \"2nd quarter\", \"3rd quarter\", \"4th quarter\"],\n};\n\n// Note: in English, the names of days of the week and months are capitalized.\n// If you are making a new locale based on this one, check if the same is true for the language you're working on.\n// Generally, formatted dates should look like they are in the middle of a sentence,\n// e.g. in Spanish language the weekdays and months should be in the lowercase.\nconst monthValues = {\n narrow: [\"J\", \"F\", \"M\", \"A\", \"M\", \"J\", \"J\", \"A\", \"S\", \"O\", \"N\", \"D\"],\n abbreviated: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n\n wide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"S\", \"M\", \"T\", \"W\", \"T\", \"F\", \"S\"],\n short: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n abbreviated: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n wide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"a\",\n pm: \"p\",\n midnight: \"mi\",\n noon: \"n\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n wide: {\n am: \"a.m.\",\n pm: \"p.m.\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n};\n\nconst formattingDayPeriodValues = {\n narrow: {\n am: \"a\",\n pm: \"p\",\n midnight: \"mi\",\n noon: \"n\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n wide: {\n am: \"a.m.\",\n pm: \"p.m.\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, _options) => {\n const number = Number(dirtyNumber);\n\n // If ordinal numbers depend on context, for example,\n // if they are different for different grammatical genders,\n // use `options.unit`.\n //\n // `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',\n // 'day', 'hour', 'minute', 'second'.\n\n const rem100 = number % 100;\n if (rem100 > 20 || rem100 < 10) {\n switch (rem100 % 10) {\n case 1:\n return number + \"st\";\n case 2:\n return number + \"nd\";\n case 3:\n return number + \"rd\";\n }\n }\n return number + \"th\";\n};\n\nexport const localize = {\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"wide\",\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: \"wide\",\n }),\n};\n","export function buildMatchFn(args) {\n return (string, options = {}) => {\n const width = options.width;\n\n const matchPattern =\n (width && args.matchPatterns[width]) ||\n args.matchPatterns[args.defaultMatchWidth];\n const matchResult = string.match(matchPattern);\n\n if (!matchResult) {\n return null;\n }\n const matchedString = matchResult[0];\n\n const parsePatterns =\n (width && args.parsePatterns[width]) ||\n args.parsePatterns[args.defaultParseWidth];\n\n const key = Array.isArray(parsePatterns)\n ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString))\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any -- I challange you to fix the type\n findKey(parsePatterns, (pattern) => pattern.test(matchedString));\n\n let value;\n\n value = args.valueCallback ? args.valueCallback(key) : key;\n value = options.valueCallback\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any -- I challange you to fix the type\n options.valueCallback(value)\n : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n\nfunction findKey(object, predicate) {\n for (const key in object) {\n if (\n Object.prototype.hasOwnProperty.call(object, key) &&\n predicate(object[key])\n ) {\n return key;\n }\n }\n return undefined;\n}\n\nfunction findIndex(array, predicate) {\n for (let key = 0; key < array.length; key++) {\n if (predicate(array[key])) {\n return key;\n }\n }\n return undefined;\n}\n","import { buildMatchFn } from \"../../_lib/buildMatchFn.mjs\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.mjs\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(th|st|nd|rd)?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^(b|a)/i,\n abbreviated: /^(b\\.?\\s?c\\.?|b\\.?\\s?c\\.?\\s?e\\.?|a\\.?\\s?d\\.?|c\\.?\\s?e\\.?)/i,\n wide: /^(before christ|before common era|anno domini|common era)/i,\n};\nconst parseEraPatterns = {\n any: [/^b/i, /^(a|c)/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^q[1234]/i,\n wide: /^[1234](th|st|nd|rd)? quarter/i,\n};\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,\n wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i,\n};\nconst parseMonthPatterns = {\n narrow: [\n /^j/i,\n /^f/i,\n /^m/i,\n /^a/i,\n /^m/i,\n /^j/i,\n /^j/i,\n /^a/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n\n any: [\n /^ja/i,\n /^f/i,\n /^mar/i,\n /^ap/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^au/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[smtwf]/i,\n short: /^(su|mo|tu|we|th|fr|sa)/i,\n abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,\n wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i,\n};\nconst parseDayPatterns = {\n narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],\n any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,\n any: /^([ap]\\.?\\s?m\\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i,\n};\nconst parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^mi/i,\n noon: /^no/i,\n morning: /morning/i,\n afternoon: /afternoon/i,\n evening: /evening/i,\n night: /night/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value, 10),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"any\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n","export function buildMatchPatternFn(args) {\n return (string, options = {}) => {\n const matchResult = string.match(args.matchPattern);\n if (!matchResult) return null;\n const matchedString = matchResult[0];\n\n const parseResult = string.match(args.parsePattern);\n if (!parseResult) return null;\n let value = args.valueCallback\n ? args.valueCallback(parseResult[0])\n : parseResult[0];\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- I challange you to fix the type\n value = options.valueCallback ? options.valueCallback(value) : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n","import { formatDistance } from \"./en-US/_lib/formatDistance.mjs\";\nimport { formatLong } from \"./en-US/_lib/formatLong.mjs\";\nimport { formatRelative } from \"./en-US/_lib/formatRelative.mjs\";\nimport { localize } from \"./en-US/_lib/localize.mjs\";\nimport { match } from \"./en-US/_lib/match.mjs\";\n\n/**\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp)\n * @author Lesha Koss [@leshakoss](https://github.com/leshakoss)\n */\nexport const enUS = {\n code: \"en-US\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default enUS;\n","let defaultOptions = {};\n\nexport function getDefaultOptions() {\n return defaultOptions;\n}\n\nexport function setDefaultOptions(newOptions) {\n defaultOptions = newOptions;\n}\n","/**\n * @module constants\n * @summary Useful constants\n * @description\n * Collection of useful date constants.\n *\n * The constants could be imported from `date-fns/constants`:\n *\n * ```ts\n * import { maxTime, minTime } from \"./constants/date-fns/constants\";\n *\n * function isAllowedTime(time) {\n * return time <= maxTime && time >= minTime;\n * }\n * ```\n */\n\n/**\n * @constant\n * @name daysInWeek\n * @summary Days in 1 week.\n */\nexport const daysInWeek = 7;\n\n/**\n * @constant\n * @name daysInYear\n * @summary Days in 1 year.\n *\n * @description\n * How many days in a year.\n *\n * One years equals 365.2425 days according to the formula:\n *\n * > Leap year occures every 4 years, except for years that are divisable by 100 and not divisable by 400.\n * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days\n */\nexport const daysInYear = 365.2425;\n\n/**\n * @constant\n * @name maxTime\n * @summary Maximum allowed time.\n *\n * @example\n * import { maxTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = 8640000000000001 <= maxTime;\n * //=> false\n *\n * new Date(8640000000000001);\n * //=> Invalid Date\n */\nexport const maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;\n\n/**\n * @constant\n * @name minTime\n * @summary Minimum allowed time.\n *\n * @example\n * import { minTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = -8640000000000001 >= minTime;\n * //=> false\n *\n * new Date(-8640000000000001)\n * //=> Invalid Date\n */\nexport const minTime = -maxTime;\n\n/**\n * @constant\n * @name millisecondsInWeek\n * @summary Milliseconds in 1 week.\n */\nexport const millisecondsInWeek = 604800000;\n\n/**\n * @constant\n * @name millisecondsInDay\n * @summary Milliseconds in 1 day.\n */\nexport const millisecondsInDay = 86400000;\n\n/**\n * @constant\n * @name millisecondsInMinute\n * @summary Milliseconds in 1 minute\n */\nexport const millisecondsInMinute = 60000;\n\n/**\n * @constant\n * @name millisecondsInHour\n * @summary Milliseconds in 1 hour\n */\nexport const millisecondsInHour = 3600000;\n\n/**\n * @constant\n * @name millisecondsInSecond\n * @summary Milliseconds in 1 second\n */\nexport const millisecondsInSecond = 1000;\n\n/**\n * @constant\n * @name minutesInYear\n * @summary Minutes in 1 year.\n */\nexport const minutesInYear = 525600;\n\n/**\n * @constant\n * @name minutesInMonth\n * @summary Minutes in 1 month.\n */\nexport const minutesInMonth = 43200;\n\n/**\n * @constant\n * @name minutesInDay\n * @summary Minutes in 1 day.\n */\nexport const minutesInDay = 1440;\n\n/**\n * @constant\n * @name minutesInHour\n * @summary Minutes in 1 hour.\n */\nexport const minutesInHour = 60;\n\n/**\n * @constant\n * @name monthsInQuarter\n * @summary Months in 1 quarter.\n */\nexport const monthsInQuarter = 3;\n\n/**\n * @constant\n * @name monthsInYear\n * @summary Months in 1 year.\n */\nexport const monthsInYear = 12;\n\n/**\n * @constant\n * @name quartersInYear\n * @summary Quarters in 1 year\n */\nexport const quartersInYear = 4;\n\n/**\n * @constant\n * @name secondsInHour\n * @summary Seconds in 1 hour.\n */\nexport const secondsInHour = 3600;\n\n/**\n * @constant\n * @name secondsInMinute\n * @summary Seconds in 1 minute.\n */\nexport const secondsInMinute = 60;\n\n/**\n * @constant\n * @name secondsInDay\n * @summary Seconds in 1 day.\n */\nexport const secondsInDay = secondsInHour * 24;\n\n/**\n * @constant\n * @name secondsInWeek\n * @summary Seconds in 1 week.\n */\nexport const secondsInWeek = secondsInDay * 7;\n\n/**\n * @constant\n * @name secondsInYear\n * @summary Seconds in 1 year.\n */\nexport const secondsInYear = secondsInDay * daysInYear;\n\n/**\n * @constant\n * @name secondsInMonth\n * @summary Seconds in 1 month\n */\nexport const secondsInMonth = secondsInYear / 12;\n\n/**\n * @constant\n * @name secondsInQuarter\n * @summary Seconds in 1 quarter.\n */\nexport const secondsInQuarter = secondsInMonth * 3;\n","/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param argument - The value to convert\n *\n * @returns The parsed date in the local time zone\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nexport function toDate(argument) {\n const argStr = Object.prototype.toString.call(argument);\n\n // Clone the date\n if (\n argument instanceof Date ||\n (typeof argument === \"object\" && argStr === \"[object Date]\")\n ) {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new argument.constructor(+argument);\n } else if (\n typeof argument === \"number\" ||\n argStr === \"[object Number]\" ||\n typeof argument === \"string\" ||\n argStr === \"[object String]\"\n ) {\n // TODO: Can we get rid of as?\n return new Date(argument);\n } else {\n // TODO: Can we get rid of as?\n return new Date(NaN);\n }\n}\n\n// Fallback for modularized imports:\nexport default toDate;\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n *\n * @returns The start of a day\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\nexport function startOfDay(date) {\n const _date = toDate(date);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfDay;\n","import { toDate } from \"../toDate.mjs\";\n\n/**\n * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.\n * They usually appear for dates that denote time before the timezones were introduced\n * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891\n * and GMT+01:00:00 after that date)\n *\n * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,\n * which would lead to incorrect calculations.\n *\n * This function returns the timezone offset in milliseconds that takes seconds in account.\n */\nexport function getTimezoneOffsetInMilliseconds(date) {\n const _date = toDate(date);\n const utcDate = new Date(\n Date.UTC(\n _date.getFullYear(),\n _date.getMonth(),\n _date.getDate(),\n _date.getHours(),\n _date.getMinutes(),\n _date.getSeconds(),\n _date.getMilliseconds(),\n ),\n );\n utcDate.setUTCFullYear(_date.getFullYear());\n return +date - +utcDate;\n}\n","import { millisecondsInDay } from \"./constants.mjs\";\nimport { startOfDay } from \"./startOfDay.mjs\";\nimport { getTimezoneOffsetInMilliseconds } from \"./_lib/getTimezoneOffsetInMilliseconds.mjs\";\n\n/**\n * @name differenceInCalendarDays\n * @category Day Helpers\n * @summary Get the number of calendar days between the given dates.\n *\n * @description\n * Get the number of calendar days between the given dates. This means that the times are removed\n * from the dates and then the difference in days is calculated.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param dateLeft - The later date\n * @param dateRight - The earlier date\n *\n * @returns The number of calendar days\n *\n * @example\n * // How many calendar days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * const result = differenceInCalendarDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 366\n * // How many calendar days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * const result = differenceInCalendarDays(\n * new Date(2011, 6, 3, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 1\n */\nexport function differenceInCalendarDays(dateLeft, dateRight) {\n const startOfDayLeft = startOfDay(dateLeft);\n const startOfDayRight = startOfDay(dateRight);\n\n const timestampLeft =\n +startOfDayLeft - getTimezoneOffsetInMilliseconds(startOfDayLeft);\n const timestampRight =\n +startOfDayRight - getTimezoneOffsetInMilliseconds(startOfDayRight);\n\n // Round the number of days to the nearest integer because the number of\n // milliseconds in a day is not constant (e.g. it's different in the week of\n // the daylight saving time clock shift).\n return Math.round((timestampLeft - timestampRight) / millisecondsInDay);\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarDays;\n","/**\n * @name constructFrom\n * @category Generic Helpers\n * @summary Constructs a date using the reference date and the value\n *\n * @description\n * The function constructs a new date using the constructor from the reference\n * date and the given value. It helps to build generic functions that accept\n * date extensions.\n *\n * It defaults to `Date` if the passed reference date is a number or a string.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The reference date to take constructor from\n * @param value - The value to create the date\n *\n * @returns Date initialized using the given date and value\n *\n * @example\n * import { constructFrom } from 'date-fns'\n *\n * // A function that clones a date preserving the original type\n * function cloneDate<DateType extends Date(date: DateType): DateType {\n * return constructFrom(\n * date, // Use contrustor from the given date\n * date.getTime() // Use the date value to create a new date\n * )\n * }\n */\nexport function constructFrom(date, value) {\n if (date instanceof Date) {\n return new date.constructor(value);\n } else {\n return new Date(value);\n }\n}\n\n// Fallback for modularized imports:\nexport default constructFrom;\n","import { toDate } from \"./toDate.mjs\";\nimport { constructFrom } from \"./constructFrom.mjs\";\n\n/**\n * @name startOfYear\n * @category Year Helpers\n * @summary Return the start of a year for the given date.\n *\n * @description\n * Return the start of a year for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n *\n * @returns The start of a year\n *\n * @example\n * // The start of a year for 2 September 2014 11:55:00:\n * const result = startOfYear(new Date(2014, 8, 2, 11, 55, 00))\n * //=> Wed Jan 01 2014 00:00:00\n */\nexport function startOfYear(date) {\n const cleanDate = toDate(date);\n const _date = constructFrom(date, 0);\n _date.setFullYear(cleanDate.getFullYear(), 0, 1);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfYear;\n","import { differenceInCalendarDays } from \"./differenceInCalendarDays.mjs\";\nimport { startOfYear } from \"./startOfYear.mjs\";\nimport { toDate } from \"./toDate.mjs\";\n\n/**\n * @name getDayOfYear\n * @category Day Helpers\n * @summary Get the day of the year of the given date.\n *\n * @description\n * Get the day of the year of the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The given date\n *\n * @returns The day of year\n *\n * @example\n * // Which day of the year is 2 July 2014?\n * const result = getDayOfYear(new Date(2014, 6, 2))\n * //=> 183\n */\nexport function getDayOfYear(date) {\n const _date = toDate(date);\n const diff = differenceInCalendarDays(_date, startOfYear(_date));\n const dayOfYear = diff + 1;\n return dayOfYear;\n}\n\n// Fallback for modularized imports:\nexport default getDayOfYear;\n","import { toDate } from \"./toDate.mjs\";\nimport { getDefaultOptions } from \"./_lib/defaultOptions.mjs\";\n\n/**\n * The {@link startOfWeek} function options.\n */\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfWeek(date, options) {\n const defaultOptions = getDefaultOptions();\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const _date = toDate(date);\n const day = _date.getDay();\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n\n _date.setDate(_date.getDate() - diff);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeek;\n","import { startOfWeek } from \"./startOfWeek.mjs\";\n\n/**\n * @name startOfISOWeek\n * @category ISO Week Helpers\n * @summary Return the start of an ISO week for the given date.\n *\n * @description\n * Return the start of an ISO week for the given date.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n *\n * @returns The start of an ISO week\n *\n * @example\n * // The start of an ISO week for 2 September 2014 11:55:00:\n * const result = startOfISOWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfISOWeek(date) {\n return startOfWeek(date, { weekStartsOn: 1 });\n}\n\n// Fallback for modularized imports:\nexport default startOfISOWeek;\n","import { constructFrom } from \"./constructFrom.mjs\";\nimport { startOfISOWeek } from \"./startOfISOWeek.mjs\";\nimport { toDate } from \"./toDate.mjs\";\n\n/**\n * @name getISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Get the ISO week-numbering year of the given date.\n *\n * @description\n * Get the ISO week-numbering year of the given date,\n * which always starts 3 days before the year's first Thursday.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The given date\n *\n * @returns The ISO week-numbering year\n *\n * @example\n * // Which ISO-week numbering year is 2 January 2005?\n * const result = getISOWeekYear(new Date(2005, 0, 2))\n * //=> 2004\n */\nexport function getISOWeekYear(date) {\n const _date = toDate(date);\n const year = _date.getFullYear();\n\n const fourthOfJanuaryOfNextYear = constructFrom(date, 0);\n fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4);\n fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0);\n const startOfNextYear = startOfISOWeek(fourthOfJanuaryOfNextYear);\n\n const fourthOfJanuaryOfThisYear = constructFrom(date, 0);\n fourthOfJanuaryOfThisYear.setFullYear(year, 0, 4);\n fourthOfJanuaryOfThisYear.setHours(0, 0, 0, 0);\n const startOfThisYear = startOfISOWeek(fourthOfJanuaryOfThisYear);\n\n if (_date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (_date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}\n\n// Fallback for modularized imports:\nexport default getISOWeekYear;\n","import { getISOWeekYear } from \"./getISOWeekYear.mjs\";\nimport { startOfISOWeek } from \"./startOfISOWeek.mjs\";\nimport { constructFrom } from \"./constructFrom.mjs\";\n\n/**\n * @name startOfISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Return the start of an ISO week-numbering year for the given date.\n *\n * @description\n * Return the start of an ISO week-numbering year,\n * which always starts 3 days before the year's first Thursday.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n *\n * @returns The start of an ISO week-numbering year\n *\n * @example\n * // The start of an ISO week-numbering year for 2 July 2005:\n * const result = startOfISOWeekYear(new Date(2005, 6, 2))\n * //=> Mon Jan 03 2005 00:00:00\n */\nexport function startOfISOWeekYear(date) {\n const year = getISOWeekYear(date);\n const fourthOfJanuary = constructFrom(date, 0);\n fourthOfJanuary.setFullYear(year, 0, 4);\n fourthOfJanuary.setHours(0, 0, 0, 0);\n return startOfISOWeek(fourthOfJanuary);\n}\n\n// Fallback for modularized imports:\nexport default startOfISOWeekYear;\n","import { millisecondsInWeek } from \"./constants.mjs\";\nimport { startOfISOWeek } from \"./startOfISOWeek.mjs\";\nimport { startOfISOWeekYear } from \"./startOfISOWeekYear.mjs\";\nimport { toDate } from \"./toDate.mjs\";\n\n/**\n * @name getISOWeek\n * @category ISO Week Helpers\n * @summary Get the ISO week of the given date.\n *\n * @description\n * Get the ISO week of the given date.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The given date\n *\n * @returns The ISO week\n *\n * @example\n * // Which week of the ISO-week numbering year is 2 January 2005?\n * const result = getISOWeek(new Date(2005, 0, 2))\n * //=> 53\n */\nexport function getISOWeek(date) {\n const _date = toDate(date);\n const diff = +startOfISOWeek(_date) - +startOfISOWeekYear(_date);\n\n // Round the number of weeks to the nearest integer because the number of\n // milliseconds in a week is not constant (e.g. it's different in the week of\n // the daylight saving time clock shift).\n return Math.round(diff / millisecondsInWeek) + 1;\n}\n\n// Fallback for modularized imports:\nexport default getISOWeek;\n","import { constructFrom } from \"./constructFrom.mjs\";\nimport { startOfWeek } from \"./startOfWeek.mjs\";\nimport { toDate } from \"./toDate.mjs\";\nimport { getDefaultOptions } from \"./_lib/defaultOptions.mjs\";\n\n/**\n * The {@link getWeekYear} function options.\n */\n\n/**\n * @name getWeekYear\n * @category Week-Numbering Year Helpers\n * @summary Get the local week-numbering year of the given date.\n *\n * @description\n * Get the local week-numbering year of the given date.\n * The exact calculation depends on the values of\n * `options.weekStartsOn` (which is the index of the first day of the week)\n * and `options.firstWeekContainsDate` (which is the day of January, which is always in\n * the first week of the week-numbering year)\n *\n * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The given date\n * @param options - An object with options.\n *\n * @returns The local week-numbering year\n *\n * @example\n * // Which week numbering year is 26 December 2004 with the default settings?\n * const result = getWeekYear(new Date(2004, 11, 26))\n * //=> 2005\n *\n * @example\n * // Which week numbering year is 26 December 2004 if week starts on Saturday?\n * const result = getWeekYear(new Date(2004, 11, 26), { weekStartsOn: 6 })\n * //=> 2004\n *\n * @example\n * // Which week numbering year is 26 December 2004 if the first week contains 4 January?\n * const result = getWeekYear(new Date(2004, 11, 26), { firstWeekContainsDate: 4 })\n * //=> 2004\n */\nexport function getWeekYear(date, options) {\n const _date = toDate(date);\n const year = _date.getFullYear();\n\n const defaultOptions = getDefaultOptions();\n const firstWeekContainsDate =\n options?.firstWeekContainsDate ??\n options?.locale?.options?.firstWeekContainsDate ??\n defaultOptions.firstWeekContainsDate ??\n defaultOptions.locale?.options?.firstWeekContainsDate ??\n 1;\n\n const firstWeekOfNextYear = constructFrom(date, 0);\n firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);\n firstWeekOfNextYear.setHours(0, 0, 0, 0);\n const startOfNextYear = startOfWeek(firstWeekOfNextYear, options);\n\n const firstWeekOfThisYear = constructFrom(date, 0);\n firstWeekOfThisYear.setFullYear(year, 0, firstWeekContainsDate);\n firstWeekOfThisYear.setHours(0, 0, 0, 0);\n const startOfThisYear = startOfWeek(firstWeekOfThisYear, options);\n\n if (_date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (_date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}\n\n// Fallback for modularized imports:\nexport default getWeekYear;\n","import { constructFrom } from \"./constructFrom.mjs\";\nimport { getWeekYear } from \"./getWeekYear.mjs\";\nimport { startOfWeek } from \"./startOfWeek.mjs\";\nimport { getDefaultOptions } from \"./_lib/defaultOptions.mjs\";\n\n/**\n * The {@link startOfWeekYear} function options.\n */\n\n/**\n * @name startOfWeekYear\n * @category Week-Numbering Year Helpers\n * @summary Return the start of a local week-numbering year for the given date.\n *\n * @description\n * Return the start of a local week-numbering year.\n * The exact calculation depends on the values of\n * `options.weekStartsOn` (which is the index of the first day of the week)\n * and `options.firstWeekContainsDate` (which is the day of January, which is always in\n * the first week of the week-numbering year)\n *\n * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week-numbering year\n *\n * @example\n * // The start of an a week-numbering year for 2 July 2005 with default settings:\n * const result = startOfWeekYear(new Date(2005, 6, 2))\n * //=> Sun Dec 26 2004 00:00:00\n *\n * @example\n * // The start of a week-numbering year for 2 July 2005\n * // if Monday is the first day of week\n * // and 4 January is always in the first week of the year:\n * const result = startOfWeekYear(new Date(2005, 6, 2), {\n * weekStartsOn: 1,\n * firstWeekContainsDate: 4\n * })\n * //=> Mon Jan 03 2005 00:00:00\n */\nexport function startOfWeekYear(date, options) {\n const defaultOptions = getDefaultOptions();\n const firstWeekContainsDate =\n options?.firstWeekContainsDate ??\n options?.locale?.options?.firstWeekContainsDate ??\n defaultOptions.firstWeekContainsDate ??\n defaultOptions.locale?.options?.firstWeekContainsDate ??\n 1;\n\n const year = getWeekYear(date, options);\n const firstWeek = constructFrom(date, 0);\n firstWeek.setFullYear(year, 0, firstWeekContainsDate);\n firstWeek.setHours(0, 0, 0, 0);\n const _date = startOfWeek(firstWeek, options);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeekYear;\n","import { millisecondsInWeek } from \"./constants.mjs\";\nimport { startOfWeek } from \"./startOfWeek.mjs\";\nimport { startOfWeekYear } from \"./startOfWeekYear.mjs\";\nimport { toDate } from \"./toDate.mjs\";\n\n/**\n * The {@link getWeek} function options.\n */\n\n/**\n * @name getWeek\n * @category Week Helpers\n * @summary Get the local week index of the given date.\n *\n * @description\n * Get the local week index of the given date.\n * The exact calculation depends on the values of\n * `options.weekStartsOn` (which is the index of the first day of the week)\n * and `options.firstWeekContainsDate` (which is the day of January, which is always in\n * the first week of the week-numbering year)\n *\n * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The given date\n * @param options - An object with options\n *\n * @returns The week\n *\n * @example\n * // Which week of the local week numbering year is 2 January 2005 with default options?\n * const result = getWeek(new Date(2005, 0, 2))\n * //=> 2\n *\n * @example\n * // Which week of the local week numbering year is 2 January 2005,\n * // if Monday is the first day of the week,\n * // and the first week of the year always contains 4 January?\n * const result = getWeek(new Date(2005, 0, 2), {\n * weekStartsOn: 1,\n * firstWeekContainsDate: 4\n * })\n * //=> 53\n */\n\nexport function getWeek(date, options) {\n const _date = toDate(date);\n const diff = +startOfWeek(_date, options) - +startOfWeekYear(_date, options);\n\n // Round the number of weeks to the nearest integer because the number of\n // milliseconds in a week is not constant (e.g. it's different in the week of\n // the daylight saving time clock shift).\n return Math.round(diff / millisecondsInWeek) + 1;\n}\n\n// Fallback for modularized imports:\nexport default getWeek;\n","export function addLeadingZeros(number, targetLength) {\n const sign = number < 0 ? \"-\" : \"\";\n const output = Math.abs(number).toString().padStart(targetLength, \"0\");\n return sign + output;\n}\n","import { addLeadingZeros } from \"../addLeadingZeros.mjs\";\n\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | |\n * | d | Day of month | D | |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | m | Minute | M | Month |\n * | s | Second | S | Fraction of second |\n * | y | Year (abs) | Y | |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n */\n\nexport const lightFormatters = {\n // Year\n y(date, token) {\n // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_tokens\n // | Year | y | yy | yyy | yyyy | yyyyy |\n // |----------|-------|----|-------|-------|-------|\n // | AD 1 | 1 | 01 | 001 | 0001 | 00001 |\n // | AD 12 | 12 | 12 | 012 | 0012 | 00012 |\n // | AD 123 | 123 | 23 | 123 | 0123 | 00123 |\n // | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 |\n // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |\n\n const signedYear = date.getFullYear();\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n const year = signedYear > 0 ? signedYear : 1 - signedYear;\n return addLeadingZeros(token === \"yy\" ? year % 100 : year, token.length);\n },\n\n // Month\n M(date, token) {\n const month = date.getMonth();\n return token === \"M\" ? String(month + 1) : addLeadingZeros(month + 1, 2);\n },\n\n // Day of the month\n d(date, token) {\n return addLeadingZeros(date.getDate(), token.length);\n },\n\n // AM or PM\n a(date, token) {\n const dayPeriodEnumValue = date.getHours() / 12 >= 1 ? \"pm\" : \"am\";\n\n switch (token) {\n case \"a\":\n case \"aa\":\n return dayPeriodEnumValue.toUpperCase();\n case \"aaa\":\n return dayPeriodEnumValue;\n case \"aaaaa\":\n return dayPeriodEnumValue[0];\n case \"aaaa\":\n default:\n return dayPeriodEnumValue === \"am\" ? \"a.m.\" : \"p.m.\";\n }\n },\n\n // Hour [1-12]\n h(date, token) {\n return addLeadingZeros(date.getHours() % 12 || 12, token.length);\n },\n\n // Hour [0-23]\n H(date, token) {\n return addLeadingZeros(date.getHours(), token.length);\n },\n\n // Minute\n m(date, token) {\n return addLeadingZeros(date.getMinutes(), token.length);\n },\n\n // Second\n s(date, token) {\n return addLeadingZeros(date.getSeconds(), token.length);\n },\n\n // Fraction of second\n S(date, token) {\n const numberOfDigits = token.length;\n const milliseconds = date.getMilliseconds();\n const fractionalSeconds = Math.trunc(\n milliseconds * Math.pow(10, numberOfDigits - 3),\n );\n return addLeadingZeros(fractionalSeconds, token.length);\n },\n};\n","import { getDayOfYear } from \"../../getDayOfYear.mjs\";\nimport { getISOWeek } from \"../../getISOWeek.mjs\";\nimport { getISOWeekYear } from \"../../getISOWeekYear.mjs\";\nimport { getWeek } from \"../../getWeek.mjs\";\nimport { getWeekYear } from \"../../getWeekYear.mjs\";\nimport { addLeadingZeros } from \"../addLeadingZeros.mjs\";\nimport { lightFormatters } from \"./lightFormatters.mjs\";\n\nconst dayPeriodEnum = {\n am: \"am\",\n pm: \"pm\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n};\n\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | b | AM, PM, noon, midnight | B | Flexible day period |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O | Timezone (GMT) |\n * | p! | Long localized time | P! | Long localized date |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `format` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n * - `P` is long localized date format\n * - `p` is long localized time format\n */\n\nexport const formatters = {\n // Era\n G: function (date, token, localize) {\n const era = date.getFullYear() > 0 ? 1 : 0;\n switch (token) {\n // AD, BC\n case \"G\":\n case \"GG\":\n case \"GGG\":\n return localize.era(era, { width: \"abbreviated\" });\n // A, B\n case \"GGGGG\":\n return localize.era(era, { width: \"narrow\" });\n // Anno Domini, Before Christ\n case \"GGGG\":\n default:\n return localize.era(era, { width: \"wide\" });\n }\n },\n\n // Year\n y: function (date, token, localize) {\n // Ordinal number\n if (token === \"yo\") {\n const signedYear = date.getFullYear();\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n const year = signedYear > 0 ? signedYear : 1 - signedYear;\n return localize.ordinalNumber(year, { unit: \"year\" });\n }\n\n return lightFormatters.y(date, token);\n },\n\n // Local week-numbering year\n Y: function (date, token, localize, options) {\n const signedWeekYear = getWeekYear(date, options);\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n const weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear;\n\n // Two digit year\n if (token === \"YY\") {\n const twoDigitYear = weekYear % 100;\n return addLeadingZeros(twoDigitYear, 2);\n }\n\n // Ordinal number\n if (token === \"Yo\") {\n return localize.ordinalNumber(weekYear, { unit: \"year\" });\n }\n\n // Padding\n return addLeadingZeros(weekYear, token.length);\n },\n\n // ISO week-numbering year\n R: function (date, token) {\n const isoWeekYear = getISOWeekYear(date);\n\n // Padding\n return addLeadingZeros(isoWeekYear, token.length);\n },\n\n // Extended year. This is a single number designating the year of this calendar system.\n // The main difference between `y` and `u` localizers are B.C. years:\n // | Year | `y` | `u` |\n // |------|-----|-----|\n // | AC 1 | 1 | 1 |\n // | BC 1 | 1 | 0 |\n // | BC 2 | 2 | -1 |\n // Also `yy` always returns the last two digits of a year,\n // while `uu` pads single digit years to 2 characters and returns other years unchanged.\n u: function (date, token) {\n const year = date.getFullYear();\n return addLeadingZeros(year, token.length);\n },\n\n // Quarter\n Q: function (date, token, localize) {\n const quarter = Math.ceil((date.getMonth() + 1) / 3);\n switch (token) {\n // 1, 2, 3, 4\n case \"Q\":\n return String(quarter);\n // 01, 02, 03, 04\n case \"QQ\":\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n case \"Qo\":\n return localize.ordinalNumber(quarter, { unit: \"quarter\" });\n // Q1, Q2, Q3, Q4\n case \"QQQ\":\n return localize.quarter(quarter, {\n width: \"abbreviated\",\n context: \"formatting\",\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n case \"QQQQQ\":\n return localize.quarter(quarter, {\n width: \"narrow\",\n context: \"formatting\",\n });\n // 1st quarter, 2nd quarter, ...\n case \"QQQQ\":\n default:\n return localize.quarter(quarter, {\n width: \"wide\",\n context: \"formatting\",\n });\n }\n },\n\n // Stand-alone quarter\n q: function (date, token, localize) {\n const quarter = Math.ceil((date.getMonth() + 1) / 3);\n switch (token) {\n // 1, 2, 3, 4\n case \"q\":\n return String(quarter);\n // 01, 02, 03, 04\n case \"qq\":\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n case \"qo\":\n return localize.ordinalNumber(quarter, { unit: \"quarter\" });\n // Q1, Q2, Q3, Q4\n case \"qqq\":\n return localize.quarter(quarter, {\n width: \"abbreviated\",\n context: \"standalone\",\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n case \"qqqqq\":\n return localize.quarter(quarter, {\n width: \"narrow\",\n context: \"standalone\",\n });\n // 1st quarter, 2nd quarter, ...\n case \"qqqq\":\n default:\n return localize.quarter(quarter, {\n width: \"wide\",\n context: \"standalone\",\n });\n }\n },\n\n // Month\n M: function (date, token, localize) {\n const month = date.getMonth();\n switch (token) {\n case \"M\":\n case \"MM\":\n return lightFormatters.M(date, token);\n // 1st, 2nd, ..., 12th\n case \"Mo\":\n return localize.ordinalNumber(month + 1, { unit: \"month\" });\n // Jan, Feb, ..., Dec\n case \"MMM\":\n return localize.month(month, {\n width: \"abbreviated\",\n context: \"formatting\",\n });\n // J, F, ..., D\n case \"MMMMM\":\n return localize.month(month, {\n width: \"narrow\",\n context: \"formatting\",\n });\n // January, February, ..., December\n case \"MMMM\":\n default:\n return localize.month(month, { width: \"wide\", context: \"formatting\" });\n }\n },\n\n // Stand-alone month\n L: function (date, token, localize) {\n const month = date.getMonth();\n switch (token) {\n // 1, 2, ..., 12\n case \"L\":\n return String(month + 1);\n // 01, 02, ..., 12\n case \"LL\":\n return addLeadingZeros(month + 1, 2);\n // 1st, 2nd, ..., 12th\n case \"Lo\":\n return localize.ordinalNumber(month + 1, { unit: \"month\" });\n // Jan, Feb, ..., Dec\n case \"LLL\":\n return localize.month(month, {\n width: \"abbreviated\",\n context: \"standalone\",\n });\n // J, F, ..., D\n case \"LLLLL\":\n return localize.month(month, {\n width: \"narrow\",\n context: \"standalone\",\n });\n // January, February, ..., December\n case \"LLLL\":\n default:\n return localize.month(month, { width: \"wide\", context: \"standalone\" });\n }\n },\n\n // Local week of year\n w: function (date, token, localize, options) {\n const week = getWeek(date, options);\n\n if (token === \"wo\") {\n return localize.ordinalNumber(week, { unit: \"week\" });\n }\n\n return addLeadingZeros(week, token.length);\n },\n\n // ISO week of year\n I: function (date, token, localize) {\n const isoWeek = getISOWeek(date);\n\n if (token === \"Io\") {\n return localize.ordinalNumber(isoWeek, { unit: \"week\" });\n }\n\n return addLeadingZeros(isoWeek, token.length);\n },\n\n // Day of the month\n d: function (date, token, localize) {\n if (token === \"do\") {\n return localize.ordinalNumber(date.getDate(), { unit: \"date\" });\n }\n\n return lightFormatters.d(date, token);\n },\n\n // Day of year\n D: function (date, token, localize) {\n const dayOfYear = getDayOfYear(date);\n\n if (token === \"Do\") {\n return localize.ordinalNumber(dayOfYear, { unit: \"dayOfYear\" });\n }\n\n return addLeadingZeros(dayOfYear, token.length);\n },\n\n // Day of week\n E: function (date, token, localize) {\n const dayOfWeek = date.getDay();\n switch (token) {\n // Tue\n case \"E\":\n case \"EE\":\n case \"EEE\":\n return localize.day(dayOfWeek, {\n width: \"abbreviated\",\n context: \"formatting\",\n });\n // T\n case \"EEEEE\":\n return localize.day(dayOfWeek, {\n width: \"narrow\",\n context: \"formatting\",\n });\n // Tu\n case \"EEEEEE\":\n return localize.day(dayOfWeek, {\n width: \"short\",\n context: \"formatting\",\n });\n // Tuesday\n case \"EEEE\":\n default:\n return localize.day(dayOfWeek, {\n width: \"wide\",\n context: \"formatting\",\n });\n }\n },\n\n // Local day of week\n e: function (date, token, localize, options) {\n const dayOfWeek = date.getDay();\n const localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n switch (token) {\n // Numerical value (Nth day of week with current locale or weekStartsOn)\n case \"e\":\n return String(localDayOfWeek);\n // Padded numerical value\n case \"ee\":\n return addLeadingZeros(localDayOfWeek, 2);\n // 1st, 2nd, ..., 7th\n case \"eo\":\n return localize.ordinalNumber(localDayOfWeek, { unit: \"day\" });\n case \"eee\":\n return localize.day(dayOfWeek, {\n width: \"abbreviated\",\n context: \"formatting\",\n });\n // T\n case \"eeeee\":\n return localize.day(dayOfWeek, {\n width: \"narrow\",\n context: \"formatting\",\n });\n // Tu\n case \"eeeeee\":\n return localize.day(dayOfWeek, {\n width: \"short\",\n context: \"formatting\",\n });\n // Tuesday\n case \"eeee\":\n default:\n return localize.day(dayOfWeek, {\n width: \"wide\",\n context: \"formatting\",\n });\n }\n },\n\n // Stand-alone local day of week\n c: function (date, token, localize, options) {\n const dayOfWeek = date.getDay();\n const localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n switch (token) {\n // Numerical value (same as in `e`)\n case \"c\":\n return String(localDayOfWeek);\n // Padded numerical value\n case \"cc\":\n return addLeadingZeros(localDayOfWeek, token.length);\n // 1st, 2nd, ..., 7th\n case \"co\":\n return localize.ordinalNumber(localDayOfWeek, { unit: \"day\" });\n case \"ccc\":\n return localize.day(dayOfWeek, {\n width: \"abbreviated\",\n context: \"standalone\",\n });\n // T\n case \"ccccc\":\n return localize.day(dayOfWeek, {\n width: \"narrow\",\n context: \"standalone\",\n });\n // Tu\n case \"cccccc\":\n return localize.day(dayOfWeek, {\n width: \"short\",\n context: \"standalone\",\n });\n // Tuesday\n case \"cccc\":\n default:\n return localize.day(dayOfWeek, {\n width: \"wide\",\n context: \"standalone\",\n });\n }\n },\n\n // ISO day of week\n i: function (date, token, localize) {\n const dayOfWeek = date.getDay();\n const isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek;\n switch (token) {\n // 2\n case \"i\":\n return String(isoDayOfWeek);\n // 02\n case \"ii\":\n return addLeadingZeros(isoDayOfWeek, token.length);\n // 2nd\n case \"io\":\n return localize.ordinalNumber(isoDayOfWeek, { unit: \"day\" });\n // Tue\n case \"iii\":\n return localize.day(dayOfWeek, {\n width: \"abbreviated\",\n context: \"formatting\",\n });\n // T\n case \"iiiii\":\n return localize.day(dayOfWeek, {\n width: \"narrow\",\n context: \"formatting\",\n });\n // Tu\n case \"iiiiii\":\n return localize.day(dayOfWeek, {\n width: \"short\",\n context: \"formatting\",\n });\n // Tuesday\n case \"iiii\":\n default:\n return localize.day(dayOfWeek, {\n width: \"wide\",\n context: \"formatting\",\n });\n }\n },\n\n // AM or PM\n a: function (date, token, localize) {\n const hours = date.getHours();\n const dayPeriodEnumValue = hours / 12 >= 1 ? \"pm\" : \"am\";\n\n switch (token) {\n case \"a\":\n case \"aa\":\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"abbreviated\",\n context: \"formatting\",\n });\n case \"aaa\":\n return localize\n .dayPeriod(dayPeriodEnumValue, {\n width: \"abbreviated\",\n context: \"formatting\",\n })\n .toLowerCase();\n case \"aaaaa\":\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"narrow\",\n context: \"formatting\",\n });\n case \"aaaa\":\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"wide\",\n context: \"formatting\",\n });\n }\n },\n\n // AM, PM, midnight, noon\n b: function (date, token, localize) {\n const hours = date.getHours();\n let dayPeriodEnumValue;\n if (hours === 12) {\n dayPeriodEnumValue = dayPeriodEnum.noon;\n } else if (hours === 0) {\n dayPeriodEnumValue = dayPeriodEnum.midnight;\n } else {\n dayPeriodEnumValue = hours / 12 >= 1 ? \"pm\" : \"am\";\n }\n\n switch (token) {\n case \"b\":\n case \"bb\":\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"abbreviated\",\n context: \"formatting\",\n });\n case \"bbb\":\n return localize\n .dayPeriod(dayPeriodEnumValue, {\n width: \"abbreviated\",\n context: \"formatting\",\n })\n .toLowerCase();\n case \"bbbbb\":\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"narrow\",\n context: \"formatting\",\n });\n case \"bbbb\":\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"wide\",\n context: \"formatting\",\n });\n }\n },\n\n // in the morning, in the afternoon, in the evening, at night\n B: function (date, token, localize) {\n const hours = date.getHours();\n let dayPeriodEnumValue;\n if (hours >= 17) {\n dayPeriodEnumValue = dayPeriodEnum.evening;\n } else if (hours >= 12) {\n dayPeriodEnumValue = dayPeriodEnum.afternoon;\n } else if (hours >= 4) {\n dayPeriodEnumValue = dayPeriodEnum.morning;\n } else {\n dayPeriodEnumValue = dayPeriodEnum.night;\n }\n\n switch (token) {\n case \"B\":\n case \"BB\":\n case \"BBB\":\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"abbreviated\",\n context: \"formatting\",\n });\n case \"BBBBB\":\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"narrow\",\n context: \"formatting\",\n });\n case \"BBBB\":\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: \"wide\",\n context: \"formatting\",\n });\n }\n },\n\n // Hour [1-12]\n h: function (date, token, localize) {\n if (token === \"ho\") {\n let hours = date.getHours() % 12;\n if (hours === 0) hours = 12;\n return localize.ordinalNumber(hours, { unit: \"hour\" });\n }\n\n return lightFormatters.h(date, token);\n },\n\n // Hour [0-23]\n H: function (date, token, localize) {\n if (token === \"Ho\") {\n return localize.ordinalNumber(date.getHours(), { unit: \"hour\" });\n }\n\n return lightFormatters.H(date, token);\n },\n\n // Hour [0-11]\n K: function (date, token, localize) {\n const hours = date.getHours() % 12;\n\n if (token === \"Ko\") {\n return localize.ordinalNumber(hours, { unit: \"hour\" });\n }\n\n return addLeadingZeros(hours, token.length);\n },\n\n // Hour [1-24]\n k: function (date, token, localize) {\n let hours = date.getHours();\n if (hours === 0) hours = 24;\n\n if (token === \"ko\") {\n return localize.ordinalNumber(hours, { unit: \"hour\" });\n }\n\n return addLeadingZeros(hours, token.length);\n },\n\n // Minute\n m: function (date, token, localize) {\n if (token === \"mo\") {\n return localize.ordinalNumber(date.getMinutes(), { unit: \"minute\" });\n }\n\n return lightFormatters.m(date, token);\n },\n\n // Second\n s: function (date, token, localize) {\n if (token === \"so\") {\n return localize.ordinalNumber(date.getSeconds(), { unit: \"second\" });\n }\n\n return lightFormatters.s(date, token);\n },\n\n // Fraction of second\n S: function (date, token) {\n return lightFormatters.S(date, token);\n },\n\n // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)\n X: function (date, token, _localize) {\n const timezoneOffset = date.getTimezoneOffset();\n\n if (timezoneOffset === 0) {\n return \"Z\";\n }\n\n switch (token) {\n // Hours and optional minutes\n case \"X\":\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XX`\n case \"XXXX\":\n case \"XX\": // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XXX`\n case \"XXXXX\":\n case \"XXX\": // Hours and minutes with `:` delimiter\n default:\n return formatTimezone(timezoneOffset, \":\");\n }\n },\n\n // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)\n x: function (date, token, _localize) {\n const timezoneOffset = date.getTimezoneOffset();\n\n switch (token) {\n // Hours and optional minutes\n case \"x\":\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xx`\n case \"xxxx\":\n case \"xx\": // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xxx`\n case \"xxxxx\":\n case \"xxx\": // Hours and minutes with `:` delimiter\n default:\n return formatTimezone(timezoneOffset, \":\");\n }\n },\n\n // Timezone (GMT)\n O: function (date, token, _localize) {\n const timezoneOffset = date.getTimezoneOffset();\n\n switch (token) {\n // Short\n case \"O\":\n case \"OO\":\n case \"OOO\":\n return \"GMT\" + formatTimezoneShort(timezoneOffset, \":\");\n // Long\n case \"OOOO\":\n default:\n return \"GMT\" + formatTimezone(timezoneOffset, \":\");\n }\n },\n\n // Timezone (specific non-location)\n z: function (date, token, _localize) {\n const timezoneOffset = date.getTimezoneOffset();\n\n switch (token) {\n // Short\n case \"z\":\n case \"zz\":\n case \"zzz\":\n return \"GMT\" + formatTimezoneShort(timezoneOffset, \":\");\n // Long\n case \"zzzz\":\n default:\n return \"GMT\" + formatTimezone(timezoneOffset, \":\");\n }\n },\n\n // Seconds timestamp\n t: function (date, token, _localize) {\n const timestamp = Math.trunc(date.getTime() / 1000);\n return addLeadingZeros(timestamp, token.length);\n },\n\n // Milliseconds timestamp\n T: function (date, token, _localize) {\n const timestamp = date.getTime();\n return addLeadingZeros(timestamp, token.length);\n },\n};\n\nfunction formatTimezoneShort(offset, delimiter = \"\") {\n const sign = offset > 0 ? \"-\" : \"+\";\n const absOffset = Math.abs(offset);\n const hours = Math.trunc(absOffset / 60);\n const minutes = absOffset % 60;\n if (minutes === 0) {\n return sign + String(hours);\n }\n return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2);\n}\n\nfunction formatTimezoneWithOptionalMinutes(offset, delimiter) {\n if (offset % 60 === 0) {\n const sign = offset > 0 ? \"-\" : \"+\";\n return sign + addLeadingZeros(Math.abs(offset) / 60, 2);\n }\n return formatTimezone(offset, delimiter);\n}\n\nfunction formatTimezone(offset, delimiter = \"\") {\n const sign = offset > 0 ? \"-\" : \"+\";\n const absOffset = Math.abs(offset);\n const hours = addLeadingZeros(Math.trunc(absOffset / 60), 2);\n const minutes = addLeadingZeros(absOffset % 60, 2);\n return sign + hours + delimiter + minutes;\n}\n","const dateLongFormatter = (pattern, formatLong) => {\n switch (pattern) {\n case \"P\":\n return formatLong.date({ width: \"short\" });\n case \"PP\":\n return formatLong.date({ width: \"medium\" });\n case \"PPP\":\n return formatLong.date({ width: \"long\" });\n case \"PPPP\":\n default:\n return formatLong.date({ width: \"full\" });\n }\n};\n\nconst timeLongFormatter = (pattern, formatLong) => {\n switch (pattern) {\n case \"p\":\n return formatLong.time({ width: \"short\" });\n case \"pp\":\n return formatLong.time({ width: \"medium\" });\n case \"ppp\":\n return formatLong.time({ width: \"long\" });\n case \"pppp\":\n default:\n return formatLong.time({ width: \"full\" });\n }\n};\n\nconst dateTimeLongFormatter = (pattern, formatLong) => {\n const matchResult = pattern.match(/(P+)(p+)?/) || [];\n const datePattern = matchResult[1];\n const timePattern = matchResult[2];\n\n if (!timePattern) {\n return dateLongFormatter(pattern, formatLong);\n }\n\n let dateTimeFormat;\n\n switch (datePattern) {\n case \"P\":\n dateTimeFormat = formatLong.dateTime({ width: \"short\" });\n break;\n case \"PP\":\n dateTimeFormat = formatLong.dateTime({ width: \"medium\" });\n break;\n case \"PPP\":\n dateTimeFormat = formatLong.dateTime({ width: \"long\" });\n break;\n case \"PPPP\":\n default:\n dateTimeFormat = formatLong.dateTime({ width: \"full\" });\n break;\n }\n\n return dateTimeFormat\n .replace(\"{{date}}\", dateLongFormatter(datePattern, formatLong))\n .replace(\"{{time}}\", timeLongFormatter(timePattern, formatLong));\n};\n\nexport const longFormatters = {\n p: timeLongFormatter,\n P: dateTimeLongFormatter,\n};\n","const dayOfYearTokenRE = /^D+$/;\nconst weekYearTokenRE = /^Y+$/;\n\nconst throwTokens = [\"D\", \"DD\", \"YY\", \"YYYY\"];\n\nexport function isProtectedDayOfYearToken(token) {\n return dayOfYearTokenRE.test(token);\n}\n\nexport function isProtectedWeekYearToken(token) {\n return weekYearTokenRE.test(token);\n}\n\nexport function warnOrThrowProtectedError(token, format, input) {\n const _message = message(token, format, input);\n console.warn(_message);\n if (throwTokens.includes(token)) throw new RangeError(_message);\n}\n\nfunction message(token, format, input) {\n const subject = token[0] === \"Y\" ? \"years\" : \"days of the month\";\n return `Use \\`${token.toLowerCase()}\\` instead of \\`${token}\\` (in \\`${format}\\`) for formatting ${subject} to the input \\`${input}\\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`;\n}\n","/**\n * @name isDate\n * @category Common Helpers\n * @summary Is the given value a date?\n *\n * @description\n * Returns true if the given value is an instance of Date. The function works for dates transferred across iframes.\n *\n * @param value - The value to check\n *\n * @returns True if the given value is a date\n *\n * @example\n * // For a valid date:\n * const result = isDate(new Date())\n * //=> true\n *\n * @example\n * // For an invalid date:\n * const result = isDate(new Date(NaN))\n * //=> true\n *\n * @example\n * // For some value:\n * const result = isDate('2014-02-31')\n * //=> false\n *\n * @example\n * // For an object:\n * const result = isDate({})\n * //=> false\n */\nexport function isDate(value) {\n return (\n value instanceof Date ||\n (typeof value === \"object\" &&\n Object.prototype.toString.call(value) === \"[object Date]\")\n );\n}\n\n// Fallback for modularized imports:\nexport default isDate;\n","import { isDate } from \"./isDate.mjs\";\nimport { toDate } from \"./toDate.mjs\";\n\n/**\n * @name isValid\n * @category Common Helpers\n * @summary Is the given date valid?\n *\n * @description\n * Returns false if argument is Invalid Date and true otherwise.\n * Argument is converted to Date using `toDate`. See [toDate](https://date-fns.org/docs/toDate)\n * Invalid Date is a Date, whose time value is NaN.\n *\n * Time value of Date: http://es5.github.io/#x15.9.1.1\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The date to check\n *\n * @returns The date is valid\n *\n * @example\n * // For the valid date:\n * const result = isValid(new Date(2014, 1, 31))\n * //=> true\n *\n * @example\n * // For the value, convertable into a date:\n * const result = isValid(1393804800000)\n * //=> true\n *\n * @example\n * // For the invalid date:\n * const result = isValid(new Date(''))\n * //=> false\n */\nexport function isValid(date) {\n if (!isDate(date) && typeof date !== \"number\") {\n return false;\n }\n const _date = toDate(date);\n return !isNaN(Number(_date));\n}\n\n// Fallback for modularized imports:\nexport default isValid;\n","import { defaultLocale } from \"./_lib/defaultLocale.mjs\";\nimport { getDefaultOptions } from \"./_lib/defaultOptions.mjs\";\nimport { formatters } from \"./_lib/format/formatters.mjs\";\nimport { longFormatters } from \"./_lib/format/longFormatters.mjs\";\nimport {\n isProtectedDayOfYearToken,\n isProtectedWeekYearToken,\n warnOrThrowProtectedError,\n} from \"./_lib/protectedTokens.mjs\";\nimport { isValid } from \"./isValid.mjs\";\nimport { toDate } from \"./toDate.mjs\";\n\n// Rexports of internal for libraries to use.\n// See: https://github.com/date-fns/date-fns/issues/3638#issuecomment-1877082874\nexport { formatters, longFormatters };\n\n// This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\nconst formattingTokensRegExp =\n /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g;\n\n// This RegExp catches symbols escaped by quotes, and also\n// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`\nconst longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;\n\nconst escapedStringRegExp = /^'([^]*?)'?$/;\nconst doubleQuoteRegExp = /''/g;\nconst unescapedLatinCharacterRegExp = /[a-zA-Z]/;\n\nexport { format as formatDate };\n\n/**\n * The {@link format} function options.\n */\n\n/**\n * @name format\n * @alias formatDate\n * @category Common Helpers\n * @summary Format the date.\n *\n * @description\n * Return the formatted date string in the given format. The result may vary by locale.\n *\n * > âš ï¸ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * The characters wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n * (see the last example)\n *\n * Format of the string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 7 below the table).\n *\n * Accepted patterns:\n * | Unit | Pattern | Result examples | Notes |\n * |---------------------------------|---------|-----------------------------------|-------|\n * | Era | G..GGG | AD, BC | |\n * | | GGGG | Anno Domini, Before Christ | 2 |\n * | | GGGGG | A, B | |\n * | Calendar year | y | 44, 1, 1900, 2017 | 5 |\n * | | yo | 44th, 1st, 0th, 17th | 5,7 |\n * | | yy | 44, 01, 00, 17 | 5 |\n * | | yyy | 044, 001, 1900, 2017 | 5 |\n * | | yyyy | 0044, 0001, 1900, 2017 | 5 |\n * | | yyyyy | ... | 3,5 |\n * | Local week-numbering year | Y | 44, 1, 1900, 2017 | 5 |\n * | | Yo | 44th, 1st, 1900th, 2017th | 5,7 |\n * | | YY | 44, 01, 00, 17 | 5,8 |\n * | | YYY | 044, 001, 1900, 2017 | 5 |\n * | | YYYY | 0044, 0001, 1900, 2017 | 5,8 |\n * | | YYYYY | ... | 3,5 |\n * | ISO week-numbering year | R | -43, 0, 1, 1900, 2017 | 5,7 |\n * | | RR | -43, 00, 01, 1900, 2017 | 5,7 |\n * | | RRR | -043, 000, 001, 1900, 2017 | 5,7 |\n * | | RRRR | -0043, 0000, 0001, 1900, 2017 | 5,7 |\n * | | RRRRR | ... | 3,5,7 |\n * | Extended year | u | -43, 0, 1, 1900, 2017 | 5 |\n * | | uu | -43, 01, 1900, 2017 | 5 |\n * | | uuu | -043, 001, 1900, 2017 | 5 |\n * | | uuuu | -0043, 0001, 1900, 2017 | 5 |\n * | | uuuuu | ... | 3,5 |\n * | Quarter (formatting) | Q | 1, 2, 3, 4 | |\n * | | Qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | QQ | 01, 02, 03, 04 | |\n * | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | q | 1, 2, 3, 4 | |\n * | | qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | qq | 01, 02, 03, 04 | |\n * | | qqq | Q1, Q2, Q3, Q4 | |\n * | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | qqqqq | 1, 2, 3, 4 | 4 |\n * | Month (formatting) | M | 1, 2, ..., 12 | |\n * | | Mo | 1st, 2nd, ..., 12th | 7 |\n * | | MM | 01, 02, ..., 12 | |\n * | | MMM | Jan, Feb, ..., Dec | |\n * | | MMMM | January, February, ..., December | 2 |\n * | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | L | 1, 2, ..., 12 | |\n * | | Lo | 1st, 2nd, ..., 12th | 7 |\n * | | LL | 01, 02, ..., 12 | |\n * | | LLL | Jan, Feb, ..., Dec | |\n * | | LLLL | January, February, ..., December | 2 |\n * | | LLLLL | J, F, ..., D | |\n * | Local week of year | w | 1, 2, ..., 53 | |\n * | | wo | 1st, 2nd, ..., 53th | 7 |\n * | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | I | 1, 2, ..., 53 | 7 |\n * | | Io | 1st, 2nd, ..., 53th | 7 |\n * | | II | 01, 02, ..., 53 | 7 |\n * | Day of month | d | 1, 2, ..., 31 | |\n * | | do | 1st, 2nd, ..., 31st | 7 |\n * | | dd | 01, 02, ..., 31 | |\n * | Day of year | D | 1, 2, ..., 365, 366 | 9 |\n * | | Do | 1st, 2nd, ..., 365th, 366th | 7 |\n * | | DD | 01, 02, ..., 365, 366 | 9 |\n * | | DDD | 001, 002, ..., 365, 366 | |\n * | | DDDD | ... | 3 |\n * | Day of week (formatting) | E..EEE | Mon, Tue, Wed, ..., Sun | |\n * | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | EEEEE | M, T, W, T, F, S, S | |\n * | | EEEEEE | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | ISO day of week (formatting) | i | 1, 2, 3, ..., 7 | 7 |\n * | | io | 1st, 2nd, ..., 7th | 7 |\n * | | ii | 01, 02, ..., 07 | 7 |\n * | | iii | Mon, Tue, Wed, ..., Sun | 7 |\n * | | iiii | Monday, Tuesday, ..., Sunday | 2,7 |\n * | | iiiii | M, T, W, T, F, S, S | 7 |\n * | | iiiiii | Mo, Tu, We, Th, Fr, Sa, Su | 7 |\n * | Local day of week (formatting) | e | 2, 3, 4, ..., 1 | |\n * | | eo | 2nd, 3rd, ..., 1st | 7 |\n * | | ee | 02, 03, ..., 01 | |\n * | | eee | Mon, Tue, Wed, ..., Sun | |\n * | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | eeeee | M, T, W, T, F, S, S | |\n * | | eeeeee | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | Local day of week (stand-alone) | c | 2, 3, 4, ..., 1 | |\n * | | co | 2nd, 3rd, ..., 1st | 7 |\n * | | cc | 02, 03, ..., 01 | |\n * | | ccc | Mon, Tue, Wed, ..., Sun | |\n * | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | ccccc | M, T, W, T, F, S, S | |\n * | | cccccc | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | AM, PM | a..aa | AM, PM | |\n * | | aaa | am, pm | |\n * | | aaaa | a.m., p.m. | 2 |\n * | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | b..bb | AM, PM, noon, midnight | |\n * | | bbb | am, pm, noon, midnight | |\n * | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | bbbbb | a, p, n, mi | |\n * | Flexible day period | B..BBB | at night, in the morning, ... | |\n * | | BBBB | at night, in the morning, ... | 2 |\n * | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | h | 1, 2, ..., 11, 12 | |\n * | | ho | 1st, 2nd, ..., 11th, 12th | 7 |\n * | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | H | 0, 1, 2, ..., 23 | |\n * | | Ho | 0th, 1st, 2nd, ..., 23rd | 7 |\n * | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | K | 1, 2, ..., 11, 0 | |\n * | | Ko | 1st, 2nd, ..., 11th, 0th | 7 |\n * | | KK | 01, 02, ..., 11, 00 | |\n * | Hour [1-24] | k | 24, 1, 2, ..., 23 | |\n * | | ko | 24th, 1st, 2nd, ..., 23rd | 7 |\n * | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | m | 0, 1, ..., 59 | |\n * | | mo | 0th, 1st, ..., 59th | 7 |\n * | | mm | 00, 01, ..., 59 | |\n * | Second | s | 0, 1, ..., 59 | |\n * | | so | 0th, 1st, ..., 59th | 7 |\n * | | ss | 00, 01, ..., 59 | |\n * | Fraction of second | S | 0, 1, ..., 9 | |\n * | | SS | 00, 01, ..., 99 | |\n * | | SSS | 000, 001, ..., 999 | |\n * | | SSSS | ... | 3 |\n * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z | |\n * | | XX | -0800, +0530, Z | |\n * | | XXX | -08:00, +05:30, Z | |\n * | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 | |\n * | | xx | -0800, +0530, +0000 | |\n * | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * | Timezone (GMT) | O...OOO | GMT-8, GMT+5:30, GMT+0 | |\n * | | OOOO | GMT-08:00, GMT+05:30, GMT+00:00 | 2 |\n * | Timezone (specific non-locat.) | z...zzz | GMT-8, GMT+5:30, GMT+0 | 6 |\n * | | zzzz | GMT-08:00, GMT+05:30, GMT+00:00 | 2,6 |\n * | Seconds timestamp | t | 512969520 | 7 |\n * | | tt | ... | 3,7 |\n * | Milliseconds timestamp | T | 512969520900 | 7 |\n * | | TT | ... | 3,7 |\n * | Long localized date | P | 04/29/1453 | 7 |\n * | | PP | Apr 29, 1453 | 7 |\n * | | PPP | April 29th, 1453 | 7 |\n * | | PPPP | Friday, April 29th, 1453 | 2,7 |\n * | Long localized time | p | 12:00 AM | 7 |\n * | | pp | 12:00:00 AM | 7 |\n * | | ppp | 12:00:00 AM GMT+2 | 7 |\n * | | pppp | 12:00:00 AM GMT+02:00 | 2,7 |\n * | Combination of date and time | Pp | 04/29/1453, 12:00 AM | 7 |\n * | | PPpp | Apr 29, 1453, 12:00:00 AM | 7 |\n * | | PPPppp | April 29th, 1453 at ... | 7 |\n * | | PPPPpppp| Friday, April 29th, 1453 at ... | 2,7 |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`)\n * the output will be the same as default pattern for this unit, usually\n * the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units\n * are marked with \"2\" in the last column of the table.\n *\n * `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'`\n *\n * `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'`\n *\n * 3. Some patterns could be unlimited length (such as `yyyyyyyy`).\n * The output will be padded with zeros to match the length of the pattern.\n *\n * `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'`\n *\n * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 5. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` always returns the last two digits of a year,\n * while `uu` pads single digit years to 2 characters and returns other years unchanged:\n *\n * | Year | `yy` | `uu` |\n * |------|------|------|\n * | 1 | 01 | 01 |\n * | 14 | 14 | 14 |\n * | 376 | 76 | 376 |\n * | 1453 | 53 | 1453 |\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [getISOWeekYear](https://date-fns.org/docs/getISOWeekYear)\n * and [getWeekYear](https://date-fns.org/docs/getWeekYear)).\n *\n * 6. Specific non-location timezones are currently unavailable in `date-fns`,\n * so right now these tokens fall back to GMT timezones.\n *\n * 7. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `t`: seconds timestamp\n * - `T`: milliseconds timestamp\n * - `o`: ordinal number modifier\n * - `P`: long localized date\n * - `p`: long localized time\n *\n * 8. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.\n * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * 9. `D` and `DD` tokens represent days of the year but they are often confused with days of the month.\n * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n * @param format - The string of tokens\n * @param options - An object with options\n *\n * @returns The formatted date string\n *\n * @throws `date` must not be Invalid Date\n * @throws `options.locale` must contain `localize` property\n * @throws `options.locale` must contain `formatLong` property\n * @throws use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws format string contains an unescaped latin alphabet character\n *\n * @example\n * // Represent 11 February 2014 in middle-endian format:\n * const result = format(new Date(2014, 1, 11), 'MM/dd/yyyy')\n * //=> '02/11/2014'\n *\n * @example\n * // Represent 2 July 2014 in Esperanto:\n * import { eoLocale } from 'date-fns/locale/eo'\n * const result = format(new Date(2014, 6, 2), \"do 'de' MMMM yyyy\", {\n * locale: eoLocale\n * })\n * //=> '2-a de julio 2014'\n *\n * @example\n * // Escape string by single quote characters:\n * const result = format(new Date(2014, 6, 2, 15), \"h 'o''clock'\")\n * //=> \"3 o'clock\"\n */\nexport function format(date, formatStr, options) {\n const defaultOptions = getDefaultOptions();\n const locale = options?.locale ?? defaultOptions.locale ?? defaultLocale;\n\n const firstWeekContainsDate =\n options?.firstWeekContainsDate ??\n options?.locale?.options?.firstWeekContainsDate ??\n defaultOptions.firstWeekContainsDate ??\n defaultOptions.locale?.options?.firstWeekContainsDate ??\n 1;\n\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const originalDate = toDate(date);\n\n if (!isValid(originalDate)) {\n throw new RangeError(\"Invalid time value\");\n }\n\n let parts = formatStr\n .match(longFormattingTokensRegExp)\n .map((substring) => {\n const firstCharacter = substring[0];\n if (firstCharacter === \"p\" || firstCharacter === \"P\") {\n const longFormatter = longFormatters[firstCharacter];\n return longFormatter(substring, locale.formatLong);\n }\n return substring;\n })\n .join(\"\")\n .match(formattingTokensRegExp)\n .map((substring) => {\n // Replace two single quote characters with one single quote character\n if (substring === \"''\") {\n return { isToken: false, value: \"'\" };\n }\n\n const firstCharacter = substring[0];\n if (firstCharacter === \"'\") {\n return { isToken: false, value: cleanEscapedString(substring) };\n }\n\n if (formatters[firstCharacter]) {\n return { isToken: true, value: substring };\n }\n\n if (firstCharacter.match(unescapedLatinCharacterRegExp)) {\n throw new RangeError(\n \"Format string contains an unescaped latin alphabet character `\" +\n firstCharacter +\n \"`\",\n );\n }\n\n return { isToken: false, value: substring };\n });\n\n // invoke localize preprocessor (only for french locales at the moment)\n if (locale.localize.preprocessor) {\n parts = locale.localize.preprocessor(originalDate, parts);\n }\n\n const formatterOptions = {\n firstWeekContainsDate,\n weekStartsOn,\n locale,\n };\n\n return parts\n .map((part) => {\n if (!part.isToken) return part.value;\n\n const token = part.value;\n\n if (\n (!options?.useAdditionalWeekYearTokens &&\n isProtectedWeekYearToken(token)) ||\n (!options?.useAdditionalDayOfYearTokens &&\n isProtectedDayOfYearToken(token))\n ) {\n warnOrThrowProtectedError(token, formatStr, String(date));\n }\n\n const formatter = formatters[token[0]];\n return formatter(originalDate, token, locale.localize, formatterOptions);\n })\n .join(\"\");\n}\n\nfunction cleanEscapedString(input) {\n const matched = input.match(escapedStringRegExp);\n\n if (!matched) {\n return input;\n }\n\n return matched[1].replace(doubleQuoteRegExp, \"'\");\n}\n\n// Fallback for modularized imports:\nexport default format;\n","import { toDate } from \"./toDate.mjs\";\nimport { constructFrom } from \"./constructFrom.mjs\";\n\n/**\n * @name addMonths\n * @category Month Helpers\n * @summary Add the specified number of months to the given date.\n *\n * @description\n * Add the specified number of months to the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The date to be changed\n * @param amount - The amount of months to be added.\n *\n * @returns The new date with the months added\n *\n * @example\n * // Add 5 months to 1 September 2014:\n * const result = addMonths(new Date(2014, 8, 1), 5)\n * //=> Sun Feb 01 2015 00:00:00\n *\n * // Add one month to 30 January 2023:\n * const result = addMonths(new Date(2023, 0, 30), 1)\n * //=> Tue Feb 28 2023 00:00:00\n */\nexport function addMonths(date, amount) {\n const _date = toDate(date);\n if (isNaN(amount)) return constructFrom(date, NaN);\n if (!amount) {\n // If 0 months, no-op to avoid changing times in the hour before end of DST\n return _date;\n }\n const dayOfMonth = _date.getDate();\n\n // The JS Date object supports date math by accepting out-of-bounds values for\n // month, day, etc. For example, new Date(2020, 0, 0) returns 31 Dec 2019 and\n // new Date(2020, 13, 1) returns 1 Feb 2021. This is *almost* the behavior we\n // want except that dates will wrap around the end of a month, meaning that\n // new Date(2020, 13, 31) will return 3 Mar 2021 not 28 Feb 2021 as desired. So\n // we'll default to the end of the desired month by adding 1 to the desired\n // month and using a date of 0 to back up one day to the end of the desired\n // month.\n const endOfDesiredMonth = constructFrom(date, _date.getTime());\n endOfDesiredMonth.setMonth(_date.getMonth() + amount + 1, 0);\n const daysInMonth = endOfDesiredMonth.getDate();\n if (dayOfMonth >= daysInMonth) {\n // If we're already at the end of the month, then this is the correct date\n // and we're done.\n return endOfDesiredMonth;\n } else {\n // Otherwise, we now know that setting the original day-of-month value won't\n // cause an overflow, so set the desired day-of-month. Note that we can't\n // just set the date of `endOfDesiredMonth` because that object may have had\n // its time changed in the unusual case where where a DST transition was on\n // the last day of the month and its local time was in the hour skipped or\n // repeated next to a DST transition. So we use `date` instead which is\n // guaranteed to still have the original time.\n _date.setFullYear(\n endOfDesiredMonth.getFullYear(),\n endOfDesiredMonth.getMonth(),\n dayOfMonth,\n );\n return _date;\n }\n}\n\n// Fallback for modularized imports:\nexport default addMonths;\n","/*!\n * react-paypal-js v8.5.0 (2024-06-12T17:52:54.583Z)\n * Copyright 2020-present, PayPal, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport React, { createContext, useContext, useRef, useState, useEffect, useReducer } from 'react';\n\n/**\n * Enum for the SDK script resolve status,\n *\n * @enum {string}\n */\nvar SCRIPT_LOADING_STATE;\n(function (SCRIPT_LOADING_STATE) {\n SCRIPT_LOADING_STATE[\"INITIAL\"] = \"initial\";\n SCRIPT_LOADING_STATE[\"PENDING\"] = \"pending\";\n SCRIPT_LOADING_STATE[\"REJECTED\"] = \"rejected\";\n SCRIPT_LOADING_STATE[\"RESOLVED\"] = \"resolved\";\n})(SCRIPT_LOADING_STATE || (SCRIPT_LOADING_STATE = {}));\n/**\n * Enum for the PayPalScriptProvider context dispatch actions\n *\n * @enum {string}\n */\nvar DISPATCH_ACTION;\n(function (DISPATCH_ACTION) {\n DISPATCH_ACTION[\"LOADING_STATUS\"] = \"setLoadingStatus\";\n DISPATCH_ACTION[\"RESET_OPTIONS\"] = \"resetOptions\";\n DISPATCH_ACTION[\"SET_BRAINTREE_INSTANCE\"] = \"braintreeInstance\";\n})(DISPATCH_ACTION || (DISPATCH_ACTION = {}));\n/**\n * Enum for all the available hosted fields\n *\n * @enum {string}\n */\nvar PAYPAL_HOSTED_FIELDS_TYPES;\n(function (PAYPAL_HOSTED_FIELDS_TYPES) {\n PAYPAL_HOSTED_FIELDS_TYPES[\"NUMBER\"] = \"number\";\n PAYPAL_HOSTED_FIELDS_TYPES[\"CVV\"] = \"cvv\";\n PAYPAL_HOSTED_FIELDS_TYPES[\"EXPIRATION_DATE\"] = \"expirationDate\";\n PAYPAL_HOSTED_FIELDS_TYPES[\"EXPIRATION_MONTH\"] = \"expirationMonth\";\n PAYPAL_HOSTED_FIELDS_TYPES[\"EXPIRATION_YEAR\"] = \"expirationYear\";\n PAYPAL_HOSTED_FIELDS_TYPES[\"POSTAL_CODE\"] = \"postalCode\";\n})(PAYPAL_HOSTED_FIELDS_TYPES || (PAYPAL_HOSTED_FIELDS_TYPES = {}));\nvar __assign = function () {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nfunction __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n}\nfunction __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\n/*********************************************\n * Common reference to the script identifier *\n *********************************************/\n// keep this script id value in kebab-case format\nvar SCRIPT_ID = \"data-react-paypal-script-id\";\nvar SDK_SETTINGS = {\n DATA_CLIENT_TOKEN: \"dataClientToken\",\n DATA_JS_SDK_LIBRARY: \"dataJsSdkLibrary\",\n DATA_LIBRARY_VALUE: \"react-paypal-js\",\n DATA_NAMESPACE: \"dataNamespace\",\n DATA_SDK_INTEGRATION_SOURCE: \"dataSdkIntegrationSource\",\n DATA_USER_ID_TOKEN: \"dataUserIdToken\"\n};\nvar LOAD_SCRIPT_ERROR = \"Failed to load the PayPal JS SDK script.\";\n/****************************\n * Braintree error messages *\n ****************************/\nvar EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE = \"Invalid authorization data. Use dataClientToken or dataUserIdToken to authorize.\";\nvar braintreeVersion = \"3.84.0\";\nvar BRAINTREE_SOURCE = \"https://js.braintreegateway.com/web/\".concat(braintreeVersion, \"/js/client.min.js\");\nvar BRAINTREE_PAYPAL_CHECKOUT_SOURCE = \"https://js.braintreegateway.com/web/\".concat(braintreeVersion, \"/js/paypal-checkout.min.js\");\n/*********************\n * PayPal namespaces *\n *********************/\nvar DEFAULT_PAYPAL_NAMESPACE = \"paypal\";\nvar DEFAULT_BRAINTREE_NAMESPACE = \"braintree\";\n/*****************\n * Hosted Fields *\n *****************/\nvar HOSTED_FIELDS_CHILDREN_ERROR = \"To use HostedFields you must use it with at least 3 children with types: [number, cvv, expirationDate] includes\";\nvar HOSTED_FIELDS_DUPLICATE_CHILDREN_ERROR = \"Cannot use duplicate HostedFields as children\";\n/*******************\n * Script Provider *\n *******************/\nvar SCRIPT_PROVIDER_REDUCER_ERROR = \"usePayPalScriptReducer must be used within a PayPalScriptProvider\";\nvar CARD_FIELDS_DUPLICATE_CHILDREN_ERROR = \"Cannot use duplicate CardFields as children\";\nvar CARD_FIELDS_CONTEXT_ERROR = \"Individual CardFields must be rendered inside the PayPalCardFieldsProvider\";\n\n/**\n * Get the namespace from the window in the browser\n * this is useful to get the paypal object from window\n * after load PayPal SDK script\n *\n * @param namespace the name space to return\n * @returns the namespace if exists or undefined otherwise\n */\nfunction getPayPalWindowNamespace$1(namespace) {\n if (namespace === void 0) {\n namespace = DEFAULT_PAYPAL_NAMESPACE;\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return window[namespace];\n}\n/**\n * Get a namespace from the window in the browser\n * this is useful to get the braintree from window\n * after load Braintree script\n *\n * @param namespace the name space to return\n * @returns the namespace if exists or undefined otherwise\n */\nfunction getBraintreeWindowNamespace(namespace) {\n if (namespace === void 0) {\n namespace = DEFAULT_BRAINTREE_NAMESPACE;\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return window[namespace];\n}\n/**\n * Creates a string hash code based on the string argument\n *\n * @param str the source input string to hash\n * @returns string hash code\n */\nfunction hashStr(str) {\n var hash = \"\";\n for (var i = 0; i < str.length; i++) {\n var total = str[i].charCodeAt(0) * i;\n if (str[i + 1]) {\n total += str[i + 1].charCodeAt(0) * (i - 1);\n }\n hash += String.fromCharCode(97 + Math.abs(total) % 26);\n }\n return hash;\n}\nfunction generateErrorMessage(_a) {\n var reactComponentName = _a.reactComponentName,\n sdkComponentKey = _a.sdkComponentKey,\n _b = _a.sdkRequestedComponents,\n sdkRequestedComponents = _b === void 0 ? \"\" : _b,\n _c = _a.sdkDataNamespace,\n sdkDataNamespace = _c === void 0 ? DEFAULT_PAYPAL_NAMESPACE : _c;\n var requiredOptionCapitalized = sdkComponentKey.charAt(0).toUpperCase().concat(sdkComponentKey.substring(1));\n var errorMessage = \"Unable to render <\".concat(reactComponentName, \" /> because window.\").concat(sdkDataNamespace, \".\").concat(requiredOptionCapitalized, \" is undefined.\");\n // The JS SDK only loads the buttons component by default.\n // All other components like messages and marks must be requested using the \"components\" query parameter\n var requestedComponents = typeof sdkRequestedComponents === \"string\" ? sdkRequestedComponents : sdkRequestedComponents.join(\",\");\n if (!requestedComponents.includes(sdkComponentKey)) {\n var expectedComponents = [requestedComponents, sdkComponentKey].filter(Boolean).join();\n errorMessage += \"\\nTo fix the issue, add '\".concat(sdkComponentKey, \"' to the list of components passed to the parent PayPalScriptProvider:\") + \"\\n`<PayPalScriptProvider options={{ components: '\".concat(expectedComponents, \"'}}>`.\");\n }\n return errorMessage;\n}\n\n/**\n * Generate a new random identifier for react-paypal-js\n *\n * @returns the {@code string} containing the random library name\n */\nfunction getScriptID(options) {\n // exclude the data-react-paypal-script-id value from the options hash\n var _a = options,\n _b = SCRIPT_ID;\n _a[_b];\n var paypalScriptOptions = __rest(_a, [_b + \"\"]);\n return \"react-paypal-js-\".concat(hashStr(JSON.stringify(paypalScriptOptions)));\n}\n/**\n * Destroy the PayPal SDK from the document page\n *\n * @param reactPayPalScriptID the script identifier\n */\nfunction destroySDKScript(reactPayPalScriptID) {\n var scriptNode = self.document.querySelector(\"script[\".concat(SCRIPT_ID, \"=\\\"\").concat(reactPayPalScriptID, \"\\\"]\"));\n if (scriptNode === null || scriptNode === void 0 ? void 0 : scriptNode.parentNode) {\n scriptNode.parentNode.removeChild(scriptNode);\n }\n}\n/**\n * Reducer function to handle complex state changes on the context\n *\n * @param state the current state on the context object\n * @param action the action to be executed on the previous state\n * @returns a the same state if the action wasn't found, or a new state otherwise\n */\nfunction scriptReducer(state, action) {\n var _a, _b;\n switch (action.type) {\n case DISPATCH_ACTION.LOADING_STATUS:\n if (typeof action.value === \"object\") {\n return __assign(__assign({}, state), {\n loadingStatus: action.value.state,\n loadingStatusErrorMessage: action.value.message\n });\n }\n return __assign(__assign({}, state), {\n loadingStatus: action.value\n });\n case DISPATCH_ACTION.RESET_OPTIONS:\n // destroy existing script to make sure only one script loads at a time\n destroySDKScript(state.options[SCRIPT_ID]);\n return __assign(__assign({}, state), {\n loadingStatus: SCRIPT_LOADING_STATE.PENDING,\n options: __assign(__assign((_a = {}, _a[SDK_SETTINGS.DATA_SDK_INTEGRATION_SOURCE] = SDK_SETTINGS.DATA_LIBRARY_VALUE, _a), action.value), (_b = {}, _b[SCRIPT_ID] = \"\".concat(getScriptID(action.value)), _b))\n });\n case DISPATCH_ACTION.SET_BRAINTREE_INSTANCE:\n return __assign(__assign({}, state), {\n braintreePayPalCheckoutInstance: action.value\n });\n default:\n {\n return state;\n }\n }\n}\n// Create the React context to use in the script provider component\nvar ScriptContext = createContext(null);\n\n/**\n * Check if the context is valid and ready to dispatch actions.\n *\n * @param scriptContext the result of connecting to the context provider\n * @returns strict context avoiding null values in the type\n */\nfunction validateReducer(scriptContext) {\n if (typeof (scriptContext === null || scriptContext === void 0 ? void 0 : scriptContext.dispatch) === \"function\" && scriptContext.dispatch.length !== 0) {\n return scriptContext;\n }\n throw new Error(SCRIPT_PROVIDER_REDUCER_ERROR);\n}\n/**\n * Check if the dataClientToken or the dataUserIdToken are\n * set in the options of the context.\n * @type dataClientToken is use to pass a client token\n * @type dataUserIdToken is use to pass a client tokenization key\n *\n * @param scriptContext the result of connecting to the context provider\n * @throws an {@link Error} if both dataClientToken and the dataUserIdToken keys are null or undefined\n * @returns strict context if one of the keys are defined\n */\nvar validateBraintreeAuthorizationData = function (scriptContext) {\n var _a, _b;\n if (!((_a = scriptContext === null || scriptContext === void 0 ? void 0 : scriptContext.options) === null || _a === void 0 ? void 0 : _a[SDK_SETTINGS.DATA_CLIENT_TOKEN]) && !((_b = scriptContext === null || scriptContext === void 0 ? void 0 : scriptContext.options) === null || _b === void 0 ? void 0 : _b[SDK_SETTINGS.DATA_USER_ID_TOKEN])) {\n throw new Error(EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE);\n }\n return scriptContext;\n};\n\n/**\n * Custom hook to get access to the Script context and\n * dispatch actions to modify the state on the {@link ScriptProvider} component\n *\n * @returns a tuple containing the state of the context and\n * a dispatch function to modify the state\n */\nfunction usePayPalScriptReducer() {\n var scriptContext = validateReducer(useContext(ScriptContext));\n var derivedStatusContext = __assign(__assign({}, scriptContext), {\n isInitial: scriptContext.loadingStatus === SCRIPT_LOADING_STATE.INITIAL,\n isPending: scriptContext.loadingStatus === SCRIPT_LOADING_STATE.PENDING,\n isResolved: scriptContext.loadingStatus === SCRIPT_LOADING_STATE.RESOLVED,\n isRejected: scriptContext.loadingStatus === SCRIPT_LOADING_STATE.REJECTED\n });\n return [derivedStatusContext, scriptContext.dispatch];\n}\n/**\n * Custom hook to get access to the ScriptProvider context\n *\n * @returns the latest state of the context\n */\nfunction useScriptProviderContext() {\n var scriptContext = validateBraintreeAuthorizationData(validateReducer(useContext(ScriptContext)));\n return [scriptContext, scriptContext.dispatch];\n}\n\n// Create the React context to use in the PayPal hosted fields provider\nvar PayPalHostedFieldsContext = createContext({});\n\n/**\n * Custom hook to get access to the PayPal Hosted Fields instance.\n * The instance represent the returned object after the render process\n * With this object a user can submit the fields and dynamically modify the cards\n *\n * @returns the hosted fields instance if is available in the component\n */\nfunction usePayPalHostedFields() {\n return useContext(PayPalHostedFieldsContext);\n}\n\n/**\nThis `<PayPalButtons />` component supports rendering [buttons](https://developer.paypal.com/docs/business/javascript-sdk/javascript-sdk-reference/#buttons) for PayPal, Venmo, and alternative payment methods.\nIt relies on the `<PayPalScriptProvider />` parent component for managing state related to loading the JS SDK script.\n*/\nvar PayPalButtons = function (_a) {\n var _b = _a.className,\n className = _b === void 0 ? \"\" : _b,\n _c = _a.disabled,\n disabled = _c === void 0 ? false : _c,\n children = _a.children,\n _d = _a.forceReRender,\n forceReRender = _d === void 0 ? [] : _d,\n buttonProps = __rest(_a, [\"className\", \"disabled\", \"children\", \"forceReRender\"]);\n var isDisabledStyle = disabled ? {\n opacity: 0.38\n } : {};\n var classNames = \"\".concat(className, \" \").concat(disabled ? \"paypal-buttons-disabled\" : \"\").trim();\n var buttonsContainerRef = useRef(null);\n var buttons = useRef(null);\n var _e = usePayPalScriptReducer()[0],\n isResolved = _e.isResolved,\n options = _e.options;\n var _f = useState(null),\n initActions = _f[0],\n setInitActions = _f[1];\n var _g = useState(true),\n isEligible = _g[0],\n setIsEligible = _g[1];\n var _h = useState(null),\n setErrorState = _h[1];\n function closeButtonsComponent() {\n if (buttons.current !== null) {\n buttons.current.close().catch(function () {\n // ignore errors when closing the component\n });\n }\n }\n var buttonMessageContent = JSON.stringify(buttonProps.message);\n // useEffect hook for rendering the buttons\n useEffect(function () {\n // verify the sdk script has successfully loaded\n if (isResolved === false) {\n return closeButtonsComponent;\n }\n var paypalWindowNamespace = getPayPalWindowNamespace$1(options.dataNamespace);\n // verify dependency on window object\n if (paypalWindowNamespace === undefined || paypalWindowNamespace.Buttons === undefined) {\n setErrorState(function () {\n throw new Error(generateErrorMessage({\n reactComponentName: PayPalButtons.displayName,\n sdkComponentKey: \"buttons\",\n sdkRequestedComponents: options.components,\n sdkDataNamespace: options[SDK_SETTINGS.DATA_NAMESPACE]\n }));\n });\n return closeButtonsComponent;\n }\n var decoratedOnInit = function (data, actions) {\n setInitActions(actions);\n if (typeof buttonProps.onInit === \"function\") {\n buttonProps.onInit(data, actions);\n }\n };\n try {\n buttons.current = paypalWindowNamespace.Buttons(__assign(__assign({}, buttonProps), {\n onInit: decoratedOnInit\n }));\n } catch (err) {\n return setErrorState(function () {\n throw new Error(\"Failed to render <PayPalButtons /> component. Failed to initialize: \".concat(err));\n });\n }\n // only render the button when eligible\n if (buttons.current.isEligible() === false) {\n setIsEligible(false);\n return closeButtonsComponent;\n }\n if (!buttonsContainerRef.current) {\n return closeButtonsComponent;\n }\n buttons.current.render(buttonsContainerRef.current).catch(function (err) {\n // component failed to render, possibly because it was closed or destroyed.\n if (buttonsContainerRef.current === null || buttonsContainerRef.current.children.length === 0) {\n // paypal buttons container is no longer in the DOM, we can safely ignore the error\n return;\n }\n // paypal buttons container is still in the DOM\n setErrorState(function () {\n throw new Error(\"Failed to render <PayPalButtons /> component. \".concat(err));\n });\n });\n return closeButtonsComponent;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, __spreadArray(__spreadArray([isResolved], forceReRender, true), [buttonProps.fundingSource, buttonMessageContent], false));\n // useEffect hook for managing disabled state\n useEffect(function () {\n if (initActions === null) {\n return;\n }\n if (disabled === true) {\n initActions.disable().catch(function () {\n // ignore errors when disabling the component\n });\n } else {\n initActions.enable().catch(function () {\n // ignore errors when enabling the component\n });\n }\n }, [disabled, initActions]);\n return React.createElement(React.Fragment, null, isEligible ? React.createElement(\"div\", {\n ref: buttonsContainerRef,\n style: isDisabledStyle,\n className: classNames\n }) : children);\n};\nPayPalButtons.displayName = \"PayPalButtons\";\nfunction findScript(url, attributes) {\n var currentScript = document.querySelector(\"script[src=\\\"\".concat(url, \"\\\"]\"));\n if (currentScript === null) return null;\n var nextScript = createScriptElement(url, attributes);\n var currentScriptClone = currentScript.cloneNode();\n delete currentScriptClone.dataset.uidAuto;\n if (Object.keys(currentScriptClone.dataset).length !== Object.keys(nextScript.dataset).length) {\n return null;\n }\n var isExactMatch = true;\n Object.keys(currentScriptClone.dataset).forEach(function (key) {\n if (currentScriptClone.dataset[key] !== nextScript.dataset[key]) {\n isExactMatch = false;\n }\n });\n return isExactMatch ? currentScript : null;\n}\nfunction insertScriptElement(_a) {\n var url = _a.url,\n attributes = _a.attributes,\n onSuccess = _a.onSuccess,\n onError = _a.onError;\n var newScript = createScriptElement(url, attributes);\n newScript.onerror = onError;\n newScript.onload = onSuccess;\n document.head.insertBefore(newScript, document.head.firstElementChild);\n}\nfunction processOptions(options) {\n var environment = options.environment;\n var sdkBaseUrl = environment === \"sandbox\" ? \"https://www.sandbox.paypal.com/sdk/js\" : \"https://www.paypal.com/sdk/js\";\n delete options.environment;\n if (options.sdkBaseUrl) {\n sdkBaseUrl = options.sdkBaseUrl;\n delete options.sdkBaseUrl;\n }\n var optionsWithStringIndex = options;\n var _a = Object.keys(optionsWithStringIndex).filter(function (key) {\n return typeof optionsWithStringIndex[key] !== \"undefined\" && optionsWithStringIndex[key] !== null && optionsWithStringIndex[key] !== \"\";\n }).reduce(function (accumulator, key) {\n var value = optionsWithStringIndex[key].toString();\n key = camelCaseToKebabCase(key);\n if (key.substring(0, 4) === \"data\" || key === \"crossorigin\") {\n accumulator.attributes[key] = value;\n } else {\n accumulator.queryParams[key] = value;\n }\n return accumulator;\n }, {\n queryParams: {},\n attributes: {}\n }),\n queryParams = _a.queryParams,\n attributes = _a.attributes;\n if (queryParams[\"merchant-id\"] && queryParams[\"merchant-id\"].indexOf(\",\") !== -1) {\n attributes[\"data-merchant-id\"] = queryParams[\"merchant-id\"];\n queryParams[\"merchant-id\"] = \"*\";\n }\n return {\n url: \"\".concat(sdkBaseUrl, \"?\").concat(objectToQueryString(queryParams)),\n attributes: attributes\n };\n}\nfunction camelCaseToKebabCase(str) {\n var replacer = function (match, indexOfMatch) {\n return (indexOfMatch ? \"-\" : \"\") + match.toLowerCase();\n };\n return str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, replacer);\n}\nfunction objectToQueryString(params) {\n var queryString = \"\";\n Object.keys(params).forEach(function (key) {\n if (queryString.length !== 0) queryString += \"&\";\n queryString += key + \"=\" + params[key];\n });\n return queryString;\n}\nfunction createScriptElement(url, attributes) {\n if (attributes === void 0) {\n attributes = {};\n }\n var newScript = document.createElement(\"script\");\n newScript.src = url;\n Object.keys(attributes).forEach(function (key) {\n newScript.setAttribute(key, attributes[key]);\n if (key === \"data-csp-nonce\") {\n newScript.setAttribute(\"nonce\", attributes[\"data-csp-nonce\"]);\n }\n });\n return newScript;\n}\nfunction loadScript(options, PromisePonyfill) {\n if (PromisePonyfill === void 0) {\n PromisePonyfill = Promise;\n }\n validateArguments(options, PromisePonyfill);\n if (typeof document === \"undefined\") return PromisePonyfill.resolve(null);\n var _a = processOptions(options),\n url = _a.url,\n attributes = _a.attributes;\n var namespace = attributes[\"data-namespace\"] || \"paypal\";\n var existingWindowNamespace = getPayPalWindowNamespace(namespace);\n if (!attributes[\"data-js-sdk-library\"]) {\n attributes[\"data-js-sdk-library\"] = \"paypal-js\";\n }\n if (findScript(url, attributes) && existingWindowNamespace) {\n return PromisePonyfill.resolve(existingWindowNamespace);\n }\n return loadCustomScript({\n url: url,\n attributes: attributes\n }, PromisePonyfill).then(function () {\n var newWindowNamespace = getPayPalWindowNamespace(namespace);\n if (newWindowNamespace) {\n return newWindowNamespace;\n }\n throw new Error(\"The window.\".concat(namespace, \" global variable is not available.\"));\n });\n}\nfunction loadCustomScript(options, PromisePonyfill) {\n if (PromisePonyfill === void 0) {\n PromisePonyfill = Promise;\n }\n validateArguments(options, PromisePonyfill);\n var url = options.url,\n attributes = options.attributes;\n if (typeof url !== \"string\" || url.length === 0) {\n throw new Error(\"Invalid url.\");\n }\n if (typeof attributes !== \"undefined\" && typeof attributes !== \"object\") {\n throw new Error(\"Expected attributes to be an object.\");\n }\n return new PromisePonyfill(function (resolve, reject) {\n if (typeof document === \"undefined\") return resolve();\n insertScriptElement({\n url: url,\n attributes: attributes,\n onSuccess: function () {\n return resolve();\n },\n onError: function () {\n var defaultError = new Error(\"The script \\\"\".concat(url, \"\\\" failed to load. Check the HTTP status code and response body in DevTools to learn more.\"));\n return reject(defaultError);\n }\n });\n });\n}\nfunction getPayPalWindowNamespace(namespace) {\n return window[namespace];\n}\nfunction validateArguments(options, PromisePonyfill) {\n if (typeof options !== \"object\" || options === null) {\n throw new Error(\"Expected an options object.\");\n }\n var environment = options.environment;\n if (environment && environment !== \"production\" && environment !== \"sandbox\") {\n throw new Error('The `environment` option must be either \"production\" or \"sandbox\".');\n }\n if (typeof PromisePonyfill !== \"undefined\" && typeof PromisePonyfill !== \"function\") {\n throw new Error(\"Expected PromisePonyfill to be a function.\");\n }\n}\n\n/**\n * Simple check to determine if the Braintree is a valid namespace.\n *\n * @param braintreeSource the source {@link BraintreeNamespace}\n * @returns a boolean representing if the namespace is valid.\n */\nvar isValidBraintreeNamespace = function (braintreeSource) {\n var _a, _b;\n if (typeof ((_a = braintreeSource === null || braintreeSource === void 0 ? void 0 : braintreeSource.client) === null || _a === void 0 ? void 0 : _a.create) !== \"function\" && typeof ((_b = braintreeSource === null || braintreeSource === void 0 ? void 0 : braintreeSource.paypalCheckout) === null || _b === void 0 ? void 0 : _b.create) !== \"function\") {\n throw new Error(\"The braintreeNamespace property is not a valid BraintreeNamespace type.\");\n }\n return true;\n};\n/**\n * Use `actions.braintree` to provide an interface for the paypalCheckoutInstance\n * through the createOrder, createBillingAgreement and onApprove callbacks\n *\n * @param braintreeButtonProps the component button options\n * @returns a new copy of the component button options casted as {@link PayPalButtonsComponentProps}\n */\nvar decorateActions = function (buttonProps, payPalCheckoutInstance) {\n var createOrderRef = buttonProps.createOrder;\n var createBillingAgreementRef = buttonProps.createBillingAgreement;\n var onApproveRef = buttonProps.onApprove;\n if (typeof createOrderRef === \"function\") {\n buttonProps.createOrder = function (data, actions) {\n return createOrderRef(data, __assign(__assign({}, actions), {\n braintree: payPalCheckoutInstance\n }));\n };\n }\n if (typeof createBillingAgreementRef === \"function\") {\n buttonProps.createBillingAgreement = function (data, actions) {\n return createBillingAgreementRef(data, __assign(__assign({}, actions), {\n braintree: payPalCheckoutInstance\n }));\n };\n }\n if (typeof onApproveRef === \"function\") {\n buttonProps.onApprove = function (data, actions) {\n return onApproveRef(data, __assign(__assign({}, actions), {\n braintree: payPalCheckoutInstance\n }));\n };\n }\n return __assign({}, buttonProps);\n};\n/**\n * Get the Braintree namespace from the component props.\n * If the prop `braintreeNamespace` is undefined will try to load it from the CDN.\n * This function allows users to set the braintree manually on the `BraintreePayPalButtons` component.\n *\n * Use case can be for example legacy sites using AMD/UMD modules,\n * trying to integrate the `BraintreePayPalButtons` component.\n * If we attempt to load the Braintree from the CDN won't define the braintree namespace.\n * This happens because the braintree script is an UMD module.\n * After detecting the AMD on the global scope will create an anonymous module using `define`\n * and the `BraintreePayPalButtons` won't be able to get access to the `window.braintree` namespace\n * from the global context.\n *\n * @param braintreeSource the source {@link BraintreeNamespace}\n * @returns the {@link BraintreeNamespace}\n */\nvar getBraintreeNamespace = function (braintreeSource) {\n if (braintreeSource && isValidBraintreeNamespace(braintreeSource)) {\n return Promise.resolve(braintreeSource);\n }\n return Promise.all([loadCustomScript({\n url: BRAINTREE_SOURCE\n }), loadCustomScript({\n url: BRAINTREE_PAYPAL_CHECKOUT_SOURCE\n })]).then(function () {\n return getBraintreeWindowNamespace();\n });\n};\n\n/**\nThis `<BraintreePayPalButtons />` component renders the [Braintree PayPal Buttons](https://developer.paypal.com/braintree/docs/guides/paypal/overview) for Braintree Merchants.\nIt relies on the `<PayPalScriptProvider />` parent component for managing state related to loading the JS SDK script.\n\nNote: You are able to make your integration using the client token or using the tokenization key.\n\n- To use the client token integration set the key `dataClientToken` in the `PayPayScriptProvider` component's options.\n- To use the tokenization key integration set the key `dataUserIdToken` in the `PayPayScriptProvider` component's options.\n*/\nvar BraintreePayPalButtons = function (_a) {\n var _b = _a.className,\n className = _b === void 0 ? \"\" : _b,\n _c = _a.disabled,\n disabled = _c === void 0 ? false : _c,\n children = _a.children,\n _d = _a.forceReRender,\n forceReRender = _d === void 0 ? [] : _d,\n braintreeNamespace = _a.braintreeNamespace,\n merchantAccountId = _a.merchantAccountId,\n buttonProps = __rest(_a, [\"className\", \"disabled\", \"children\", \"forceReRender\", \"braintreeNamespace\", \"merchantAccountId\"]);\n var _e = useState(null),\n setErrorState = _e[1];\n var _f = useScriptProviderContext(),\n providerContext = _f[0],\n dispatch = _f[1];\n useEffect(function () {\n getBraintreeNamespace(braintreeNamespace).then(function (braintree) {\n var clientTokenizationKey = providerContext.options[SDK_SETTINGS.DATA_USER_ID_TOKEN];\n var clientToken = providerContext.options[SDK_SETTINGS.DATA_CLIENT_TOKEN];\n return braintree.client.create({\n authorization: clientTokenizationKey || clientToken\n }).then(function (clientInstance) {\n var merchantProp = merchantAccountId ? {\n merchantAccountId: merchantAccountId\n } : {};\n return braintree.paypalCheckout.create(__assign(__assign({}, merchantProp), {\n client: clientInstance\n }));\n }).then(function (paypalCheckoutInstance) {\n dispatch({\n type: DISPATCH_ACTION.SET_BRAINTREE_INSTANCE,\n value: paypalCheckoutInstance\n });\n });\n }).catch(function (err) {\n setErrorState(function () {\n throw new Error(\"\".concat(LOAD_SCRIPT_ERROR, \" \").concat(err));\n });\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [providerContext.options]);\n return React.createElement(React.Fragment, null, providerContext.braintreePayPalCheckoutInstance && React.createElement(PayPalButtons, __assign({\n className: className,\n disabled: disabled,\n forceReRender: forceReRender\n }, decorateActions(buttonProps, providerContext.braintreePayPalCheckoutInstance)), children));\n};\n\n/**\nThe `<PayPalMarks />` component is used for conditionally rendering different payment options using radio buttons.\nThe [Display PayPal Buttons with other Payment Methods guide](https://developer.paypal.com/docs/business/checkout/add-capabilities/buyer-experience/#display-paypal-buttons-with-other-payment-methods) describes this style of integration in detail.\nIt relies on the `<PayPalScriptProvider />` parent component for managing state related to loading the JS SDK script.\n\nThis component can also be configured to use a single funding source similar to the [standalone buttons](https://developer.paypal.com/docs/business/checkout/configure-payments/standalone-buttons/) approach.\nA `FUNDING` object is exported by this library which has a key for every available funding source option.\n*/\nvar PayPalMarks = function (_a) {\n var _b = _a.className,\n className = _b === void 0 ? \"\" : _b,\n children = _a.children,\n markProps = __rest(_a, [\"className\", \"children\"]);\n var _c = usePayPalScriptReducer()[0],\n isResolved = _c.isResolved,\n options = _c.options;\n var markContainerRef = useRef(null);\n var _d = useState(true),\n isEligible = _d[0],\n setIsEligible = _d[1];\n var _e = useState(null),\n setErrorState = _e[1];\n /**\n * Render PayPal Mark into the DOM\n */\n var renderPayPalMark = function (mark) {\n var current = markContainerRef.current;\n // only render the mark when eligible\n if (!current || !mark.isEligible()) {\n return setIsEligible(false);\n }\n // Remove any children before render it again\n if (current.firstChild) {\n current.removeChild(current.firstChild);\n }\n mark.render(current).catch(function (err) {\n // component failed to render, possibly because it was closed or destroyed.\n if (current === null || current.children.length === 0) {\n // paypal marks container is no longer in the DOM, we can safely ignore the error\n return;\n }\n // paypal marks container is still in the DOM\n setErrorState(function () {\n throw new Error(\"Failed to render <PayPalMarks /> component. \".concat(err));\n });\n });\n };\n useEffect(function () {\n // verify the sdk script has successfully loaded\n if (isResolved === false) {\n return;\n }\n var paypalWindowNamespace = getPayPalWindowNamespace$1(options[SDK_SETTINGS.DATA_NAMESPACE]);\n // verify dependency on window object\n if (paypalWindowNamespace === undefined || paypalWindowNamespace.Marks === undefined) {\n return setErrorState(function () {\n throw new Error(generateErrorMessage({\n reactComponentName: PayPalMarks.displayName,\n sdkComponentKey: \"marks\",\n sdkRequestedComponents: options.components,\n sdkDataNamespace: options[SDK_SETTINGS.DATA_NAMESPACE]\n }));\n });\n }\n renderPayPalMark(paypalWindowNamespace.Marks(__assign({}, markProps)));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isResolved, markProps.fundingSource]);\n return React.createElement(React.Fragment, null, isEligible ? React.createElement(\"div\", {\n ref: markContainerRef,\n className: className\n }) : children);\n};\nPayPalMarks.displayName = \"PayPalMarks\";\n\n/**\nThis `<PayPalMessages />` messages component renders a credit messaging on upstream merchant sites.\nIt relies on the `<PayPalScriptProvider />` parent component for managing state related to loading the JS SDK script.\n*/\nvar PayPalMessages = function (_a) {\n var _b = _a.className,\n className = _b === void 0 ? \"\" : _b,\n _c = _a.forceReRender,\n forceReRender = _c === void 0 ? [] : _c,\n messageProps = __rest(_a, [\"className\", \"forceReRender\"]);\n var _d = usePayPalScriptReducer()[0],\n isResolved = _d.isResolved,\n options = _d.options;\n var messagesContainerRef = useRef(null);\n var messages = useRef(null);\n var _e = useState(null),\n setErrorState = _e[1];\n useEffect(function () {\n // verify the sdk script has successfully loaded\n if (isResolved === false) {\n return;\n }\n var paypalWindowNamespace = getPayPalWindowNamespace$1(options[SDK_SETTINGS.DATA_NAMESPACE]);\n // verify dependency on window object\n if (paypalWindowNamespace === undefined || paypalWindowNamespace.Messages === undefined) {\n return setErrorState(function () {\n throw new Error(generateErrorMessage({\n reactComponentName: PayPalMessages.displayName,\n sdkComponentKey: \"messages\",\n sdkRequestedComponents: options.components,\n sdkDataNamespace: options[SDK_SETTINGS.DATA_NAMESPACE]\n }));\n });\n }\n messages.current = paypalWindowNamespace.Messages(__assign({}, messageProps));\n messages.current.render(messagesContainerRef.current).catch(function (err) {\n // component failed to render, possibly because it was closed or destroyed.\n if (messagesContainerRef.current === null || messagesContainerRef.current.children.length === 0) {\n // paypal messages container is no longer in the DOM, we can safely ignore the error\n return;\n }\n // paypal messages container is still in the DOM\n setErrorState(function () {\n throw new Error(\"Failed to render <PayPalMessages /> component. \".concat(err));\n });\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, __spreadArray([isResolved], forceReRender, true));\n return React.createElement(\"div\", {\n ref: messagesContainerRef,\n className: className\n });\n};\nPayPalMessages.displayName = \"PayPalMessages\";\n\n/**\nThis `<PayPalScriptProvider />` component takes care of loading the JS SDK `<script>`.\nIt manages state for script loading so children components like `<PayPalButtons />` know when it's safe to use the `window.paypal` global namespace.\n\nNote: You always should use this component as a wrapper for `PayPalButtons`, `PayPalMarks`, `PayPalMessages` and `BraintreePayPalButtons` components.\n */\nvar PayPalScriptProvider = function (_a) {\n var _b;\n var _c = _a.options,\n options = _c === void 0 ? {\n clientId: \"test\"\n } : _c,\n children = _a.children,\n _d = _a.deferLoading,\n deferLoading = _d === void 0 ? false : _d;\n var _e = useReducer(scriptReducer, {\n options: __assign(__assign({}, options), (_b = {}, _b[SDK_SETTINGS.DATA_JS_SDK_LIBRARY] = SDK_SETTINGS.DATA_LIBRARY_VALUE, _b[SDK_SETTINGS.DATA_SDK_INTEGRATION_SOURCE] = SDK_SETTINGS.DATA_LIBRARY_VALUE, _b[SCRIPT_ID] = \"\".concat(getScriptID(options)), _b)),\n loadingStatus: deferLoading ? SCRIPT_LOADING_STATE.INITIAL : SCRIPT_LOADING_STATE.PENDING\n }),\n state = _e[0],\n dispatch = _e[1];\n useEffect(function () {\n if (deferLoading === false && state.loadingStatus === SCRIPT_LOADING_STATE.INITIAL) {\n return dispatch({\n type: DISPATCH_ACTION.LOADING_STATUS,\n value: SCRIPT_LOADING_STATE.PENDING\n });\n }\n if (state.loadingStatus !== SCRIPT_LOADING_STATE.PENDING) {\n return;\n }\n var isSubscribed = true;\n loadScript(state.options).then(function () {\n if (isSubscribed) {\n dispatch({\n type: DISPATCH_ACTION.LOADING_STATUS,\n value: SCRIPT_LOADING_STATE.RESOLVED\n });\n }\n }).catch(function (err) {\n console.error(\"\".concat(LOAD_SCRIPT_ERROR, \" \").concat(err));\n if (isSubscribed) {\n dispatch({\n type: DISPATCH_ACTION.LOADING_STATUS,\n value: {\n state: SCRIPT_LOADING_STATE.REJECTED,\n message: String(err)\n }\n });\n }\n });\n return function () {\n isSubscribed = false;\n };\n }, [state.options, deferLoading, state.loadingStatus]);\n return React.createElement(ScriptContext.Provider, {\n value: __assign(__assign({}, state), {\n dispatch: dispatch\n })\n }, children);\n};\n\n/**\n * Custom hook to store registered hosted fields children\n * Each `PayPalHostedField` component should be registered on the parent provider\n *\n * @param initialValue the initially registered components\n * @returns at first, an {@link Object} containing the registered hosted fields,\n * and at the second a function handler to register the hosted fields components\n */\nvar useHostedFieldsRegister = function (initialValue) {\n if (initialValue === void 0) {\n initialValue = {};\n }\n var registeredFields = useRef(initialValue);\n var registerHostedField = function (component) {\n registeredFields.current = __assign(__assign({}, registeredFields.current), component);\n };\n return [registeredFields, registerHostedField];\n};\n\n/**\n * Throw an exception if the HostedFields is not found in the paypal namespace\n * Probably cause for this problem is not sending the hosted-fields string\n * as part of the components props in options\n * {@code <PayPalScriptProvider options={{ components: 'hosted-fields'}}>}\n *\n * @param param0 and object containing the components and namespace defined in options\n * @throws {@code Error}\n *\n */\nvar generateMissingHostedFieldsError = function (_a) {\n var _b = _a.components,\n components = _b === void 0 ? \"\" : _b,\n _c = SDK_SETTINGS.DATA_NAMESPACE,\n _d = _a[_c],\n dataNamespace = _d === void 0 ? DEFAULT_PAYPAL_NAMESPACE : _d;\n var expectedComponents = components ? \"\".concat(components, \",hosted-fields\") : \"hosted-fields\";\n var errorMessage = \"Unable to render <PayPalHostedFieldsProvider /> because window.\".concat(dataNamespace, \".HostedFields is undefined.\");\n if (!components.includes(\"hosted-fields\")) {\n errorMessage += \"\\nTo fix the issue, add 'hosted-fields' to the list of components passed to the parent PayPalScriptProvider: <PayPalScriptProvider options={{ components: '\".concat(expectedComponents, \"'}}>\");\n }\n return errorMessage;\n};\n/**\n * Validate the expiration date component. Valid combinations are:\n * 1- Only the `expirationDate` field exists.\n * 2- Only the `expirationMonth` and `expirationYear` fields exist. Cannot be used with the `expirationDate` field.\n *\n * @param registerTypes\n * @returns @type {true} when the children are valid\n */\nvar validateExpirationDate = function (registerTypes) {\n return !registerTypes.includes(PAYPAL_HOSTED_FIELDS_TYPES.EXPIRATION_DATE) && !registerTypes.includes(PAYPAL_HOSTED_FIELDS_TYPES.EXPIRATION_MONTH) && !registerTypes.includes(PAYPAL_HOSTED_FIELDS_TYPES.EXPIRATION_YEAR);\n};\n/**\n * Check if we find the [number, expiration, cvv] in children\n *\n * @param requiredChildren the list with required children [number, expiration, cvv]\n * @param registerTypes the list of all the children types pass to the parent\n * @throw an @type {Error} when not find the default children\n */\nvar hasDefaultChildren = function (registerTypes) {\n if (!registerTypes.includes(PAYPAL_HOSTED_FIELDS_TYPES.NUMBER) || !registerTypes.includes(PAYPAL_HOSTED_FIELDS_TYPES.CVV) || validateExpirationDate(registerTypes)) {\n throw new Error(HOSTED_FIELDS_CHILDREN_ERROR);\n }\n};\n/**\n * Check if we don't have duplicate children types\n *\n * @param registerTypes the list of all the children types pass to the parent\n * @throw an @type {Error} when duplicate types was found\n */\nvar noDuplicateChildren = function (registerTypes) {\n if (registerTypes.length !== new Set(registerTypes).size) {\n throw new Error(HOSTED_FIELDS_DUPLICATE_CHILDREN_ERROR);\n }\n};\n/**\n * Validate the hosted field children in the PayPalHostedFieldsProvider component.\n * These are the rules:\n * 1- We need to find 3 default children for number, expiration, cvv\n * 2- No duplicate children are allowed\n * 3- No invalid combinations of `expirationDate`, `expirationMonth`, and `expirationYear`\n *\n * @param childrenList the list of children\n * @param requiredChildren the list with required children [number, expiration, cvv]\n */\nvar validateHostedFieldChildren = function (registeredFields) {\n hasDefaultChildren(registeredFields);\n noDuplicateChildren(registeredFields);\n};\n\n/**\nThis `<PayPalHostedFieldsProvider />` provider component wraps the form field elements and accepts props like `createOrder()`.\n\nThis provider component is designed to be used with the `<PayPalHostedField />` component.\n\nWarning: If you don't see anything in the screen probably your client is ineligible.\nTo handle this problem make sure to use the prop `notEligibleError` and pass a component with a custom message.\nTake a look to this link if that is the case: https://developer.paypal.com/docs/checkout/advanced/integrate/\n*/\nvar PayPalHostedFieldsProvider = function (_a) {\n var styles = _a.styles,\n createOrder = _a.createOrder,\n notEligibleError = _a.notEligibleError,\n children = _a.children,\n installments = _a.installments;\n var _b = useScriptProviderContext()[0],\n options = _b.options,\n loadingStatus = _b.loadingStatus;\n var _c = useState(true),\n isEligible = _c[0],\n setIsEligible = _c[1];\n var _d = useState(),\n cardFields = _d[0],\n setCardFields = _d[1];\n var _e = useState(null),\n setErrorState = _e[1];\n var hostedFieldsContainerRef = useRef(null);\n var hostedFields = useRef();\n var _f = useHostedFieldsRegister(),\n registeredFields = _f[0],\n registerHostedField = _f[1];\n useEffect(function () {\n var _a;\n validateHostedFieldChildren(Object.keys(registeredFields.current));\n // Only render the hosted fields when script is loaded and hostedFields is eligible\n if (!(loadingStatus === SCRIPT_LOADING_STATE.RESOLVED)) {\n return;\n }\n // Get the hosted fields from the [window.paypal.HostedFields] SDK\n hostedFields.current = getPayPalWindowNamespace$1(options[SDK_SETTINGS.DATA_NAMESPACE]).HostedFields;\n if (!hostedFields.current) {\n throw new Error(generateMissingHostedFieldsError((_a = {\n components: options.components\n }, _a[SDK_SETTINGS.DATA_NAMESPACE] = options[SDK_SETTINGS.DATA_NAMESPACE], _a)));\n }\n if (!hostedFields.current.isEligible()) {\n return setIsEligible(false);\n }\n // Clean all the fields before the rerender\n if (cardFields) {\n cardFields.teardown();\n }\n hostedFields.current.render({\n // Call your server to set up the transaction\n createOrder: createOrder,\n fields: registeredFields.current,\n installments: installments,\n styles: styles\n }).then(function (cardFieldsInstance) {\n if (hostedFieldsContainerRef.current) {\n setCardFields(cardFieldsInstance);\n }\n }).catch(function (err) {\n setErrorState(function () {\n throw new Error(\"Failed to render <PayPalHostedFieldsProvider /> component. \".concat(err));\n });\n });\n }, [loadingStatus, styles]); // eslint-disable-line react-hooks/exhaustive-deps\n return React.createElement(\"div\", {\n ref: hostedFieldsContainerRef\n }, isEligible ? React.createElement(PayPalHostedFieldsContext.Provider, {\n value: {\n cardFields: cardFields,\n registerHostedField: registerHostedField\n }\n }, children) : notEligibleError);\n};\n\n/**\nThis `<PayPalHostedField />` component renders individual fields for [Hosted Fields](https://developer.paypal.com/docs/business/checkout/advanced-card-payments/integrate#3-add-javascript-sdk-and-card-form) integrations.\nIt relies on the `<PayPalHostedFieldsProvider />` parent component for managing state related to loading the JS SDK script\nand execute some validations before the rendering the fields.\n\nTo use the PayPal hosted fields you need to define at least three fields:\n\n- A card number field\n- The CVV code from the client card\n- The expiration date\n\nYou can define the expiration date as a single field similar to the example below,\nor you are able to define it in [two separate fields](https://paypal.github.io/react-paypal-js//?path=/docs/paypal-paypalhostedfields--expiration-date). One for the month and second for year.\n\nNote: Take care when using multiple instances of the PayPal Hosted Fields on the same page.\nThe component will fail to render when any of the selectors return more than one element.\n*/\nvar PayPalHostedField = function (_a) {\n var hostedFieldType = _a.hostedFieldType,\n // eslint-disable-line @typescript-eslint/no-unused-vars\n options = _a.options,\n // eslint-disable-line @typescript-eslint/no-unused-vars\n props = __rest(_a, [\"hostedFieldType\", \"options\"]);\n var hostedFieldContext = useContext(PayPalHostedFieldsContext);\n useEffect(function () {\n var _a;\n if (!(hostedFieldContext === null || hostedFieldContext === void 0 ? void 0 : hostedFieldContext.registerHostedField)) {\n throw new Error(\"The HostedField cannot be register in the PayPalHostedFieldsProvider parent component\");\n }\n // Register in the parent provider\n hostedFieldContext.registerHostedField((_a = {}, _a[hostedFieldType] = {\n selector: options.selector,\n placeholder: options.placeholder,\n type: options.type,\n formatInput: options.formatInput,\n maskInput: options.maskInput,\n select: options.select,\n maxlength: options.maxlength,\n minlength: options.minlength,\n prefill: options.prefill,\n rejectUnsupportedCards: options.rejectUnsupportedCards\n }, _a));\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n return React.createElement(\"div\", __assign({}, props));\n};\n\n/**\n * Throw an exception if the CardFields is not found in the paypal namespace\n * Probably cause for this problem is not sending the card-fields string\n * as part of the components props in options\n * {@code <PayPalScriptProvider options={{ components: 'card-fields'}}>}\n *\n * @param param0 and object containing the components and namespace defined in options\n * @throws {@code Error}\n *\n */\nvar generateMissingCardFieldsError = function (_a) {\n var _b = _a.components,\n components = _b === void 0 ? \"\" : _b,\n _c = SDK_SETTINGS.DATA_NAMESPACE,\n _d = _a[_c],\n dataNamespace = _d === void 0 ? DEFAULT_PAYPAL_NAMESPACE : _d;\n var expectedComponents = components ? \"\".concat(components, \",card-fields\") : \"card-fields\";\n var errorMessage = \"Unable to render <PayPalCardFieldsProvider /> because window.\".concat(dataNamespace, \".CardFields is undefined.\");\n if (!components.includes(\"card-fields\")) {\n errorMessage += \"\\nTo fix the issue, add 'card-fields' to the list of components passed to the parent PayPalScriptProvider: <PayPalScriptProvider options={{ components: '\".concat(expectedComponents, \"'}}>\");\n }\n return errorMessage;\n};\nfunction ignore() {\n return;\n}\nfunction hasChildren(container) {\n var _a;\n return !!((_a = container.current) === null || _a === void 0 ? void 0 : _a.children.length);\n}\nvar PayPalCardFieldsContext = createContext({\n cardFieldsForm: null,\n fields: {},\n registerField: ignore,\n unregisterField: ignore // implementation is inside hook and passed through the provider\n});\nvar usePayPalCardFields = function () {\n return useContext(PayPalCardFieldsContext);\n};\nvar usePayPalCardFieldsRegistry = function () {\n var _a = useState(null),\n setError = _a[1];\n var registeredFields = useRef({});\n var registerField = function () {\n var props = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n props[_i] = arguments[_i];\n }\n var fieldName = props[0],\n options = props[1],\n cardFields = props[2];\n if (registeredFields.current[fieldName]) {\n setError(function () {\n throw new Error(CARD_FIELDS_DUPLICATE_CHILDREN_ERROR);\n });\n }\n registeredFields.current[fieldName] = cardFields === null || cardFields === void 0 ? void 0 : cardFields[fieldName](options);\n return registeredFields.current[fieldName];\n };\n var unregisterField = function (fieldName) {\n var field = registeredFields.current[fieldName];\n if (field) {\n field.close().catch(ignore);\n delete registeredFields.current[fieldName];\n }\n };\n return {\n fields: registeredFields.current,\n registerField: registerField,\n unregisterField: unregisterField\n };\n};\nvar FullWidthContainer = function (_a) {\n var children = _a.children;\n return React.createElement(\"div\", {\n style: {\n width: \"100%\"\n }\n }, children);\n};\n\n/**\nThe `<PayPalCardFieldsProvider />` is a context provider that is designed to support the rendering and state management of PayPal CardFields in your application.\n\nThe context provider will initialize the `CardFields` instance from the JS SDK and determine eligibility to render the CardField components. Once the `CardFields` are initialized, the context provider will manage the state of the `CardFields` instance as well as the reference to each individual card field.\n\nPassing the `inputEvents` and `style` props to the context provider will apply them to each of the individual field components.\n\nThe state managed by the provider is accessible through our custom hook `usePayPalCardFields`.\n\n*/\nvar PayPalCardFieldsProvider = function (_a) {\n var children = _a.children,\n props = __rest(_a, [\"children\"]);\n var _b = usePayPalScriptReducer()[0],\n isResolved = _b.isResolved,\n options = _b.options;\n var _c = usePayPalCardFieldsRegistry(),\n fields = _c.fields,\n registerField = _c.registerField,\n unregisterField = _c.unregisterField;\n var _d = useState(null),\n cardFieldsForm = _d[0],\n setCardFieldsForm = _d[1];\n var cardFieldsInstance = useRef(null);\n var _e = useState(false),\n isEligible = _e[0],\n setIsEligible = _e[1];\n // We set the error inside state so that it can be caught by React's error boundary\n var _f = useState(null),\n setError = _f[1];\n useEffect(function () {\n var _a, _b, _c;\n if (!isResolved) {\n return;\n }\n try {\n cardFieldsInstance.current = (_c = (_b = (_a = getPayPalWindowNamespace$1(options[SDK_SETTINGS.DATA_NAMESPACE])).CardFields) === null || _b === void 0 ? void 0 : _b.call(_a, __assign({}, props))) !== null && _c !== void 0 ? _c : null;\n } catch (error) {\n setError(function () {\n throw new Error(\"Failed to render <PayPalCardFieldsProvider /> component. Failed to initialize: \".concat(error));\n });\n return;\n }\n if (!cardFieldsInstance.current) {\n setError(function () {\n var _a;\n throw new Error(generateMissingCardFieldsError((_a = {\n components: options.components\n }, _a[SDK_SETTINGS.DATA_NAMESPACE] = options[SDK_SETTINGS.DATA_NAMESPACE], _a)));\n });\n return;\n }\n setIsEligible(cardFieldsInstance.current.isEligible());\n setCardFieldsForm(cardFieldsInstance.current);\n return function () {\n setCardFieldsForm(null);\n cardFieldsInstance.current = null;\n };\n }, [isResolved]); // eslint-disable-line react-hooks/exhaustive-deps\n if (!isEligible) {\n // TODO: What should be returned here?\n return React.createElement(\"div\", null);\n }\n return React.createElement(FullWidthContainer, null, React.createElement(PayPalCardFieldsContext.Provider, {\n value: {\n cardFieldsForm: cardFieldsForm,\n fields: fields,\n registerField: registerField,\n unregisterField: unregisterField\n }\n }, children));\n};\nvar PayPalCardField = function (_a) {\n var className = _a.className,\n fieldName = _a.fieldName,\n options = __rest(_a, [\"className\", \"fieldName\"]);\n var _b = usePayPalCardFields(),\n cardFieldsForm = _b.cardFieldsForm,\n registerField = _b.registerField,\n unregisterField = _b.unregisterField;\n var containerRef = useRef(null);\n // Set errors is state so that they can be caught by React's error boundary\n var _c = useState(null),\n setError = _c[1];\n function closeComponent() {\n unregisterField(fieldName);\n }\n useEffect(function () {\n if (!cardFieldsForm) {\n setError(function () {\n throw new Error(CARD_FIELDS_CONTEXT_ERROR);\n });\n return closeComponent;\n }\n if (!containerRef.current) {\n return closeComponent;\n }\n var registeredField = registerField(fieldName, options, cardFieldsForm);\n registeredField === null || registeredField === void 0 ? void 0 : registeredField.render(containerRef.current).catch(function (err) {\n if (!hasChildren(containerRef)) {\n // Component no longer in the DOM, we can safely ignore the error\n return;\n }\n // Component is still in the DOM\n setError(function () {\n throw new Error(\"Failed to render <PayPal\".concat(fieldName, \" /> component. \").concat(err));\n });\n });\n return closeComponent;\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n return React.createElement(\"div\", {\n ref: containerRef,\n className: className\n });\n};\nvar PayPalNameField = function (options) {\n return React.createElement(PayPalCardField, __assign({\n fieldName: \"NameField\"\n }, options));\n};\nvar PayPalNumberField = function (options) {\n return React.createElement(PayPalCardField, __assign({\n fieldName: \"NumberField\"\n }, options));\n};\nvar PayPalExpiryField = function (options) {\n return React.createElement(PayPalCardField, __assign({\n fieldName: \"ExpiryField\"\n }, options));\n};\nvar PayPalCVVField = function (options) {\n return React.createElement(PayPalCardField, __assign({\n fieldName: \"CVVField\"\n }, options));\n};\nvar FlexContainer = function (_a) {\n var children = _a.children;\n return React.createElement(\"div\", {\n style: {\n display: \"flex\",\n width: \"100%\"\n }\n }, children);\n};\n\n/**\nThis `<PayPalCardFieldsForm />` component renders the 4 individual fields for [Card Fields](https://developer.paypal.com/docs/business/checkout/advanced-card-payments/integrate#3-add-javascript-sdk-and-card-form) integrations.\nThis setup relies on the `<PayPalCardFieldsProvider />` parent component, which manages the state related to loading the JS SDK script and performs certain validations before rendering the fields.\n\n\n\nNote: If you want to have more granular control over the layout of how the fields are rendered, you can alternatively use our Individual Fields.\n*/\nvar PayPalCardFieldsForm = function (_a) {\n var className = _a.className;\n return React.createElement(\"div\", {\n className: className\n }, React.createElement(PayPalCardField, {\n fieldName: \"NameField\"\n }), React.createElement(PayPalCardField, {\n fieldName: \"NumberField\"\n }), React.createElement(FlexContainer, null, React.createElement(FullWidthContainer, null, React.createElement(PayPalCardField, {\n fieldName: \"ExpiryField\"\n })), React.createElement(FullWidthContainer, null, React.createElement(PayPalCardField, {\n fieldName: \"CVVField\"\n }))));\n};\nvar FUNDING$1 = {\n PAYPAL: \"paypal\",\n VENMO: \"venmo\",\n APPLEPAY: \"applepay\",\n ITAU: \"itau\",\n CREDIT: \"credit\",\n PAYLATER: \"paylater\",\n CARD: \"card\",\n IDEAL: \"ideal\",\n SEPA: \"sepa\",\n BANCONTACT: \"bancontact\",\n GIROPAY: \"giropay\",\n SOFORT: \"sofort\",\n EPS: \"eps\",\n MYBANK: \"mybank\",\n P24: \"p24\",\n PAYU: \"payu\",\n BLIK: \"blik\",\n TRUSTLY: \"trustly\",\n OXXO: \"oxxo\",\n BOLETO: \"boleto\",\n BOLETOBANCARIO: \"boletobancario\",\n WECHATPAY: \"wechatpay\",\n MERCADOPAGO: \"mercadopago\",\n MULTIBANCO: \"multibanco\",\n SATISPAY: \"satispay\",\n PAIDY: \"paidy\",\n ZIMPLER: \"zimpler\",\n MAXIMA: \"maxima\"\n};\n[FUNDING$1.IDEAL, FUNDING$1.BANCONTACT, FUNDING$1.GIROPAY, FUNDING$1.SOFORT, FUNDING$1.EPS, FUNDING$1.MYBANK, FUNDING$1.P24, FUNDING$1.PAYU, FUNDING$1.BLIK, FUNDING$1.TRUSTLY, FUNDING$1.OXXO, FUNDING$1.BOLETO, FUNDING$1.BOLETOBANCARIO, FUNDING$1.WECHATPAY, FUNDING$1.MERCADOPAGO, FUNDING$1.MULTIBANCO, FUNDING$1.SATISPAY, FUNDING$1.PAIDY, FUNDING$1.MAXIMA, FUNDING$1.ZIMPLER];\n\n// We do not re-export `FUNDING` from the `sdk-constants` module\n// directly because it has no type definitions.\n//\n// See https://github.com/paypal/react-paypal-js/issues/125\nvar FUNDING = FUNDING$1;\nexport { BraintreePayPalButtons, DISPATCH_ACTION, FUNDING, PAYPAL_HOSTED_FIELDS_TYPES, PayPalButtons, PayPalCVVField, PayPalCardFieldsContext, PayPalCardFieldsForm, PayPalCardFieldsProvider, PayPalExpiryField, PayPalHostedField, PayPalHostedFieldsProvider, PayPalMarks, PayPalMessages, PayPalNameField, PayPalNumberField, PayPalScriptProvider, SCRIPT_LOADING_STATE, ScriptContext, destroySDKScript, getScriptID, scriptReducer, usePayPalCardFields, usePayPalHostedFields, usePayPalScriptReducer, useScriptProviderContext };\n","import React, { useState, useEffect, useContext } from 'react';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport './PokerTable.css';\n\nfunction PokerTable() {\n const { pokerHand, updatePokerHand } = useContext(PokerHandContext);\n const [maxPlayers, setMaxPlayers] = useState(6);\n const [mySeat, setMySeat] = useState(9);\n const [rivalSeat, setRivalSeat] = useState(9);\n const [currentPositions, setCurrentPositions]= useState([]);\n\n const playerPositions6Max = ['SB', 'BB','UTG', 'MP', 'CO', 'BU'];\n const playerPositions9Max = ['SB', 'BB','UTG', 'MP', 'MP2', 'MP3', 'HJ' , 'CO', 'BU'];\n\n\n useEffect(() => {\n\n setMySeat(pokerHand.heroPosition);\n setRivalSeat(pokerHand.villainPosition);\n setMaxPlayers(pokerHand.tableType);\n\n\n }, [pokerHand]);\n\n useEffect(() => {\n\n setMySeat(pokerHand.heroPosition);\n setRivalSeat(pokerHand.villainPosition);\n setMaxPlayers(pokerHand.tableType);\n\n\n\n if(maxPlayers.toString()=='9')\n setCurrentPositions(playerPositions9Max);\n else\n setCurrentPositions(playerPositions6Max);\n\n }, [mySeat,rivalSeat,maxPlayers,setCurrentPositions]);\n\n const handleSeatClick = (index) => {\n\n\n if (index == mySeat) {\n\n setMySeat(9);\n updatePokerHand('heroPosition', 9);\n } else if (index == rivalSeat) {\n\n setRivalSeat(9);\n updatePokerHand('villainPosition', 9);\n } else if (mySeat == 9) {\n\n setMySeat(index);\n updatePokerHand('heroPosition', index);\n } else if (rivalSeat == 9) {\n\n setRivalSeat(index);\n updatePokerHand('villainPosition', index);\n }\n };\n\n const getSeatStyle = (index) => {\n\n\n\n if (index == mySeat) {\n\n return { backgroundColor: '#4CAF50' };\n } else if (index == rivalSeat) {\n\n return { backgroundColor: '#FF5722' };\n }\n return {};\n };\n\n const handleTableTypeChange = (event) => {\n const newMaxPlayers = parseInt(event.target.value, 10);\n setMaxPlayers(newMaxPlayers);\n updatePokerHand('tableType', newMaxPlayers);\n };\n\n return (\n <div className=\"poker-table-container\">\n <div className=\"poker-table\">\n {currentPositions.map((position, index) => (\n <div\n key={index}\n className={`player-seat player-seat-${index}`}\n style={getSeatStyle(index)}\n onClick={() => handleSeatClick(index)}\n >\n {position}\n </div>\n ))}\n <div className=\"table-center\">\n <div className=\"legend\">\n <div className=\"legend-item\">\n <span className=\"legend-color\" style={{ backgroundColor: '#4CAF50' }}></span>\n <span>Hero</span>\n </div>\n <div className=\"legend-item\">\n <span className=\"legend-color\" style={{ backgroundColor: '#FF5722' }}></span>\n <span>Villain</span>\n </div>\n </div>\n <select value={maxPlayers} onChange={handleTableTypeChange} className=\"player-count-selector\">\n <option value=\"\">- -</option>\n <option value={6}>6-Max</option>\n\n </select>\n </div>\n </div>\n </div>\n );\n}\n\nexport default PokerTable;\n","// Sidebar.js\n\nimport React, { useState, useEffect, useContext } from 'react';\nimport './Sidebar.css';\nimport { useAuthenticator } from '@aws-amplify/ui-react';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css';\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\nimport { createMembers, updateMembers } from \"../../graphql/mutations\";\nimport { generateClient } from \"aws-amplify/api\";\nimport { addMonths, format } from 'date-fns';\nimport { PayPalScriptProvider, PayPalButtons } from \"@paypal/react-paypal-js\";\nimport PokerTable from '../PokerTable/PokerTable';\n\nconst client = generateClient();\n\nconst pokerSequences = [\n 'Juego IP as PFR',\n 'Juego OOP as PFR',\n '3bets IP',\n '3bets OOP',\n 'Call 3bets IP',\n 'Call 3bets OOP',\n 'SB vs BB',\n 'BB vs SB',\n 'BB defend OOP',\n 'Squeeze pots',\n '4bets IP',\n '4bets OOP',\n 'Call 4bets IP',\n 'Call 4bets OOP',\n 'Cold call IP'\n];\n\nconst pokerStakes = [\n 'NL2',\n 'NL5',\n 'NL10',\n 'NL25',\n 'NL50',\n 'NL100',\n 'NL200',\n 'NL400+',\n];\n\nconst handSources = [\n { value: 'playerHands', label: 'Mis manos' },\n { value: 'sharedHands', label: 'Soluciones pre-configuradas' }\n];\n\nlibrary.add(fas);\n\nfunction Sidebar({ mode, setMode, sequence, setSequence, membership, stake, setStake, skipTutorialMember }) {\n const [handTitle, setHandTitle] = useState('');\n const [handStake, setHandStake] = useState('');\n const [description, setDescription] = useState('');\n const [isShareable, setIsShareable] = useState(false);\n const [showUpsellModal, setShowUpsellModal] = useState(false);\n const [isUpgraded, setIsUpgraded] = useState(false);\n const [handSource, setHandSource] = useState('playerHands');\n const [skipTutorial, setSkipTutorial] = useState(skipTutorialMember.toLowerCase?.() === 'true'); // Nuevo estado\n const [filterActive, setFilterActive] = useState(false); // Nuevo estado para el filtro\n const { pokerHand, updatePokerHand, resetPokerHand, fetchPokerHandsTrainer, fetchPokerHands } = useContext(PokerHandContext);\n const { user, signOut } = useAuthenticator();\n\n useEffect(() => {\n if (pokerHand.handTitle) {\n setHandTitle(pokerHand.handTitle);\n //setHandStake(pokerHand.stake);\n setDescription(pokerHand.description);\n setIsShareable(pokerHand.share.toLowerCase?.() === 'true');\n }else{\n setHandTitle('');\n setHandStake('');\n setDescription('');\n setIsShareable(pokerHand.share.toLowerCase?.() === 'true');\n }\n\n }, [pokerHand.id]);\n\n useEffect(() => {\n updatePokerHand('handTitle', handTitle);\n }, [handTitle]);\n\n useEffect(() => {\n updatePokerHand('stake', handStake);\n }, [handStake]);\n\n useEffect(() => {\n updatePokerHand('description', description);\n }, [description]);\n\n useEffect(() => {\n updatePokerHand('share', isShareable);\n }, [isShareable]);\n\n useEffect(() => {\n setHandTitle('');\n setHandStake('');\n }, [mode]);\n\n useEffect(() => {\n //console.log('Sidebar:',skipTutorialMember);\n }, []);\n\n const handleTitleChange = (e) => {\n fetchPokerHands(user.username, handStake, e.target.value);\n setHandTitle(e.target.value);\n setSequence(e.target.value);\n };\n\n const handleStakeChange = (e) => {\n setHandStake(e.target.value);\n setStake(e.target.value);\n };\n\n const handleDescriptionChange = (e) => {\n\n setDescription(e.target.value);\n };\n\n const handleShareableChange = (e) => {\n setIsShareable(e.target.checked);\n updatePokerHand('share', isShareable);\n };\n\n const handleHandSourceChange = (e) => {\n const selectedSource = e.target.value;\n if (selectedSource === 'sharedHands' && (membership === 'BASIC' || membership === 'PRO')) {\n setShowUpsellModal(true);\n } else {\n setHandSource(selectedSource);\n }\n };\n\n const changeMode = (newMode) => {\n if (newMode !== mode) {\n if ( ((newMode === 'Estadisticas' || newMode === 'Rangos') && membership === 'BASIC') || (newMode === 'Estadisticas' && membership === 'PRO')) {\n setShowUpsellModal(true);\n } else {\n setMode(newMode);\n resetPokerHand();\n setFilterActive(false);\n }\n }\n };\n\n const closeModal = () => {\n setShowUpsellModal(false);\n setIsUpgraded(false);\n //window.location.reload();\n };\n\n const activaMembresia = () => {\n window.location.reload();\n };\n\n const handleUpgrade = async (level) => {\n setIsUpgraded(true);\n const endDate = format(addMonths(new Date(), 1), \"yyyy-MM-dd\") + \"Z\";\n\n try {\n await client.graphql({\n query: updateMembers,\n variables: {\n input: {\n \"id\": user.username,\n \"playerId\": user.username,\n \"memberPlan\": level,\n \"endDate\": endDate\n }\n }\n });\n } catch {\n console.log('Error updating');\n }\n };\n\n const loadHands = () => {\n const share = handSource === 'sharedHands';\n if (handSource === 'sharedHands')\n fetchPokerHandsTrainer(handStake, handTitle, share);\n else\n fetchPokerHands(user.username, handStake, handTitle);\n\n setHandTitle('');\n setHandStake('');\n setFilterActive(true); // Activar el filtro\n };\n\n const loadAllHands = () => {\n fetchPokerHands(user.username);\n\n setHandTitle('');\n setHandStake('');\n setFilterActive(false); // Desactivar el filtro\n };\n\n const handleSkipTutorialChange = (e) => {\n setSkipTutorial(e.target.checked);\n\n try {\n const updateMembership = async (playerId) => {\n const newMembers = await client.graphql({\n query: updateMembers,\n variables: {\n input: {\n \"id\": playerId,\n \"skipTutorial\": e.target.checked\n }\n }\n });\n };\n\n updateMembership(user.username);\n } catch {\n console.log('Error updating');\n }\n };\n\n const openPokerCrushers = () => {\n window.open(\"https://insigh.to/b/poker-crushers\", \"_blank\");\n };\n\n return (\n <div className=\"sidebar\">\n <div className=\"mode-switch\">\n <div className=\"switch-container\">\n <button className=\"logout-button\" onClick={signOut}>\n <FontAwesomeIcon icon=\"right-from-bracket\" size=\"1x\" /> Salir\n </button>\n <span className=\"switch-label\">Saltar tutorial</span>\n <label className=\"switch\">\n <input\n type=\"checkbox\"\n checked={skipTutorial}\n onChange={handleSkipTutorialChange}\n />\n <span className=\"slider\"></span>\n </label>\n </div>\n\n <h2 className=\"txtMembershipPlan\">Plan: {membership} </h2>\n\n <div className=\"button-group\">\n <div className=\"tooltip\">\n <button\n className={`mode-button-study ${mode === 'Estudio' ? 'active' : ''}`}\n onClick={() => changeMode('Estudio')}\n >\n <FontAwesomeIcon icon=\"graduation-cap\" size=\"1x\" />\n </button>\n <span className=\"tooltip-text\">Estudio</span>\n </div>\n <div className=\"tooltip\">\n <button\n className={`mode-button-trainer ${mode === 'Trainer' ? 'active' : ''}`}\n onClick={() => changeMode('Trainer')}\n >\n <FontAwesomeIcon icon=\"dumbbell\" size=\"1x\" />\n </button>\n <span className=\"tooltip-text\">Trainer</span>\n </div>\n <div className=\"tooltip\">\n <button\n className={`mode-button-stats ${mode === 'Rangos' ? 'active' : ''}`}\n onClick={() => changeMode('Rangos')}\n >\n <FontAwesomeIcon icon=\"chess-board\" size=\"1x\" />\n </button>\n <span className=\"tooltip-text\">Rangos</span>\n </div>\n <div className=\"tooltip\">\n <button\n className={`mode-button-stats ${mode === 'Estadisticas' ? 'active' : ''}`}\n onClick={() => changeMode('Estadisticas')}\n >\n <FontAwesomeIcon icon=\"chart-simple\" size=\"1x\" />\n </button>\n <span className=\"tooltip-text\">EstadÃsticas</span>\n </div>\n\n <div className=\"tooltip\">\n <button\n className={`mode-button-stats ${mode === 'Deals' ? 'active' : ''}`}\n onClick={() => changeMode('Deals')}\n >\n <FontAwesomeIcon icon=\"handshake\" size=\"1x\" />\n </button>\n <span className=\"tooltip-text\">Poker Deals</span>\n </div>\n </div>\n </div>\n\n <div className=\"mode-label\">\n <span>Modo {mode}</span>\n </div>\n {mode === 'Estudio' ? (\n <>\n <div className=\"txtMembershiPlan\">Descripción de la mano:</div>\n\n </>\n ) : mode === 'Trainer' ? (\n <>\n <div className=\"txtChangeMode\">Fuente de manos</div>\n <select\n id=\"handSource\"\n value={handSource}\n onChange={handleHandSourceChange}\n className=\"input\"\n >\n {handSources.map((source, index) => (\n <option key={index} value={source.value}>{source.label}</option>\n ))}\n </select>\n </>\n ) : (\n <></>\n )}\n {mode !== 'Estadisticas' && mode !== 'Rangos' && mode !== 'Deals' ? (\n <>\n\n <div className=\"txtChangeMode\">Spot</div>\n <select\n id=\"handTitle\"\n value={handTitle}\n onChange={handleTitleChange}\n className=\"input Spot\"\n >\n <option value=\"\" >Selecciona</option>\n {pokerSequences.map((sequence, index) => (\n <option key={index} value={sequence}>{sequence}</option>\n ))}\n </select>\n\n\n\n\n </>\n ) : (\n <></>\n )}\n {mode === 'Estudio' ? (\n <>\n <PokerTable />\n <textarea\n id=\"description\"\n value={description}\n onChange={handleDescriptionChange}\n placeholder=\"Escribe una descripción...\"\n rows=\"4\"\n className=\"input Description\"\n />\n {membership === 'COACH' && (\n <div className=\"shareable-checkbox\">\n <input\n type=\"checkbox\"\n id=\"isShareable\"\n checked={isShareable}\n onChange={handleShareableChange}\n />\n <label htmlFor=\"isShareable\">¿Compartir?</label>\n </div>\n )}\n </>\n ) : mode === 'Trainer' ? (\n <>\n {!filterActive ? (\n <button className=\"loadHandsButton\" onClick={loadHands}>\n <FontAwesomeIcon icon=\"filter\" size=\"1x\" /> Filtrar manos\n </button>\n ) : (\n <button className=\"loadHandsButton\" style={{color:'#fff',fontWeight:'bold',background:'#ff116e'}} onClick={loadAllHands}>\n <FontAwesomeIcon icon=\"filter-circle-xmark\" size=\"1x\" /> Borrar filtro\n </button>\n )}\n </>\n ) : null}\n\n <div className=\"poker-crushers-button\" style={{color:'#333',fontWeight:'bold'}} onClick={openPokerCrushers}>\n <FontAwesomeIcon icon=\"list-check\" size=\"1x\" /> Sugerencias\n </div>\n\n {showUpsellModal && (\n <>\n <div className=\"overlay-upsell\" onClick={closeModal}></div>\n <UpsellModal onClose={closeModal} onUpgrade={handleUpgrade} isUpgraded={isUpgraded} membership={membership} activaMembresia={activaMembresia} />\n </>\n )}\n </div>\n );\n}\n\nfunction UpsellModal({ onClose, onUpgrade, isUpgraded, membership , activaMembresia}) {\n return (\n <div className=\"modalUpsell\">\n <div className=\"modalUpsell-content\">\n <span className=\"closeUpsell\" onClick={onClose}>\n ×\n </span>\n {isUpgraded ? (\n <>\n <h2>¡Felicidades!</h2>\n <FontAwesomeIcon icon=\"handshake\" size=\"3x\" />\n <p>Has activado tu membresÃa por 1 mes.</p>\n <button className=\"activar-membresia\" onClick={activaMembresia}>\n <FontAwesomeIcon icon=\"filter-circle-xmark\" size=\"1x\" /> Acceder\n </button>\n </>\n ) : (\n <div className=\"plan-container\">\n {(membership === 'BASIC' || membership === 'FREE') && (\n <div className=\"plan-crusher-pro\">\n <h2>PLAN PRO</h2>\n <p style={{ fontSize: '11px' }}>MetodologÃa efectiva de aprendizaje </p>\n <p style={{ fontSize: '11px' }}>Módulo de notas </p>\n <p style={{ fontSize: '11px' }}>Módulo de entrenamiento manos propias </p>\n <p style={{ fontSize: '11px' }}>Módulo de rangos preflop </p>\n <p style={{ fontSize: '11px' }}>Soporte 8x5 </p>\n <h3 style={{ color: 'Red' }}>Menos de 1 stack de NL2!</h3>\n <h3 style={{ color: '#00ECB3' }}>USD 1.5 / mes</h3>\n <p style={{ fontSize: '12px' }}>¿Otros medios de pago?, escrÃbenos a: <a href=\"mailto:info@pokerstudyapp.com\">info@pokerstudyapp.com</a></p>\n <PayPalScriptProvider options={{ clientId: \"ASWXXIbmZawGEP6YVu8McY_Z77H9jZp4qGSeZOLmalIMsZUbkQvB2g2HR-nY7eGa4GJCXaRIlZM6hwKf\" }}>\n <PayPalButtons\n createOrder={(data, actions) => {\n return actions.order.create({\n purchase_units: [\n {\n description: \"Modo PRO\",\n amount: {\n value: '1.5'\n }\n }\n ]\n });\n }}\n onApprove={async (data, actions) => {\n const order = await actions.order?.capture();\n console.log(\"order\", order);\n onUpgrade('PRO');\n }}\n />\n </PayPalScriptProvider>\n </div>\n )}\n <div className=\"plan-crusher-premium\">\n <h2>PLAN PREMIUM</h2>\n <p style={{ fontSize: '11px' }}>MetodologÃa efectiva de aprendizaje</p>\n <p style={{ fontSize: '11px' }}>Módulo de notas</p>\n <p style={{ fontSize: '11px' }}>Módulo de entrenamiento manos propias</p>\n <p style={{ fontSize: '11px' }}>Módulo de rangos preflop </p>\n <p style={{ fontSize: '11px' }}>Manos de entrenaminento manos pre-configuradas</p>\n <p style={{ fontSize: '11px' }}>Módulo análisis de spots y acciones</p>\n <p style={{ fontSize: '11px' }}>Soporte 8x5</p>\n <h3 style={{ color: 'Red' }}>Menos de 1 stack de NL5!</h3>\n <h3 style={{ color: '#00ECB3' }}>USD 4.5 / mes</h3>\n <p style={{ fontSize: '12px' }}>¿Otros medios de pago?, escrÃbenos a: <a href=\"mailto:info@pokerstudyapp.com\">info@pokerstudyapp.com</a></p>\n <PayPalScriptProvider options={{ clientId: \"ASWXXIbmZawGEP6YVu8McY_Z77H9jZp4qGSeZOLmalIMsZUbkQvB2g2HR-nY7eGa4GJCXaRIlZM6hwKf\" }}>\n <PayPalButtons\n createOrder={(data, actions) => {\n return actions.order.create({\n purchase_units: [\n {\n description: \"Modo PREMIUM\",\n amount: {\n value: '4.5'\n }\n }\n ]\n });\n }}\n onApprove={async (data, actions) => {\n const order = await actions.order?.capture();\n console.log(\"order\", order);\n onUpgrade('PREMIUM');\n }}\n />\n </PayPalScriptProvider>\n </div>\n </div>\n )}\n </div>\n </div>\n );\n}\n\nexport default Sidebar;\n\n\n/*\n<div className=\"txtChangeMode\">Stake</div>\n <select\n id=\"handStake\"\n value={handStake}\n onChange={handleStakeChange}\n className=\"input Stake\"\n >\n <option value=\"\" >Cualquiera</option>\n {pokerStakes.map((stake, index) => (\n <option key={index} value={stake}>{stake}</option>\n ))}\n </select>\n */\n","import * as React from 'react';\n\ntype Direction = 'ltr' | 'rtl';\nconst DirectionContext = React.createContext<Direction | undefined>(undefined);\n\n/* -------------------------------------------------------------------------------------------------\n * Direction\n * -----------------------------------------------------------------------------------------------*/\n\ninterface DirectionProviderProps {\n children?: React.ReactNode;\n dir: Direction;\n}\nconst DirectionProvider: React.FC<DirectionProviderProps> = (props) => {\n const { dir, children } = props;\n return <DirectionContext.Provider value={dir}>{children}</DirectionContext.Provider>;\n};\n\n/* -----------------------------------------------------------------------------------------------*/\n\nfunction useDirection(localDir?: Direction) {\n const globalDir = React.useContext(DirectionContext);\n return localDir || globalDir || 'ltr';\n}\n\nconst Provider = DirectionProvider;\n\nexport {\n useDirection,\n //\n Provider,\n //\n DirectionProvider,\n};\n","import * as React from 'react';\nimport * as RadixDirection from '@radix-ui/react-direction';\nimport { sanitizeNamespaceImport, createTheme } from '@aws-amplify/ui';\nimport { ThemeContext } from './ThemeContext.mjs';\n\n// Radix packages don't support ESM in Node, in some scenarios(e.g. SSR)\n// We have to use namespace import and sanitize it to ensure the interoperablity between ESM and CJS\nconst { DirectionProvider } = sanitizeNamespaceImport(RadixDirection);\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/theming)\n */\nfunction ThemeProvider({ children, colorMode, direction = 'ltr', nonce, theme, }) {\n const value = React.useMemo(() => ({ theme: createTheme(theme), colorMode }), [theme, colorMode]);\n const { theme: { name, cssText }, } = value;\n return (React.createElement(ThemeContext.Provider, { value: value },\n React.createElement(DirectionProvider, { dir: direction },\n React.createElement(\"div\", { \"data-amplify-theme\": name, \"data-amplify-color-mode\": colorMode, dir: direction }, children),\n typeof theme === 'undefined' || /<\\/style/i.test(cssText) ? null : (React.createElement(\"style\", { id: `amplify-theme-${name}`, \n // eslint-disable-next-line react/no-danger\n dangerouslySetInnerHTML: { __html: cssText }, nonce: nonce })))));\n}\n\nexport { ThemeProvider };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst GridPrimitive = ({ className, children, ...rest }, ref) => (React.createElement(View, { className: classNames(ComponentClassName.Grid, className), ref: ref, ...rest }, children));\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/grid)\n */\nconst Grid = primitiveWithForwardRef(GridPrimitive);\nGrid.displayName = 'Grid';\n\nexport { Grid };\n","import { classNames, ComponentClassName, classNameModifier } from '@aws-amplify/ui';\nimport * as React from 'react';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst CardPrimitive = ({ className, children, variation, ...rest }, ref) => {\n return (React.createElement(View, { className: classNames(ComponentClassName.Card, classNameModifier(ComponentClassName.Card, variation), className), ref: ref, ...rest }, children));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/card)\n */\nconst Card = primitiveWithForwardRef(CardPrimitive);\nCard.displayName = 'Card';\n\nexport { Card };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst ImagePrimitive = ({ className, ...rest }, ref) => (React.createElement(View, { as: \"img\", ref: ref, className: classNames(ComponentClassName.Image, className), ...rest }));\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/image)\n */\nconst Image = primitiveWithForwardRef(ImagePrimitive);\nImage.displayName = 'Image';\n\nexport { Image };\n","import * as React from 'react';\nimport { classNames, ComponentClassName } from '@aws-amplify/ui';\nimport { View } from '../View/View.mjs';\nimport { primitiveWithForwardRef } from '../utils/primitiveWithForwardRef.mjs';\n\nconst LinkPrimitive = ({ as = 'a', children, className, isExternal, ...rest }, ref) => {\n return (React.createElement(View, { as: as, className: classNames(ComponentClassName.Link, className), ref: ref, rel: isExternal ? 'noopener noreferrer' : undefined, target: isExternal ? '_blank' : undefined, ...rest }, children));\n};\n/**\n * [📖 Docs](https://ui.docs.amplify.aws/react/components/link)\n */\nconst Link = primitiveWithForwardRef(LinkPrimitive);\nLink.displayName = 'Link';\n\nexport { Link };\n","import React, { useState } from 'react';\nimport { Flex, View, Text, Button, TextField } from \"@aws-amplify/ui-react\";\nimport emailjs from 'emailjs-com';\n\nexport function Modal({ title, content, isOpen, onClose, isContactForm }) {\n const [formData, setFormData] = useState({\n name: '',\n email: '',\n message: ''\n });\n\n const handleChange = (e) => {\n setFormData({ ...formData, [e.target.name]: e.target.value });\n };\n\n const handleSubmit = (e) => {\n e.preventDefault();\n/*\n emailjs.send(\n 'YOUR_SERVICE_ID',\n 'YOUR_TEMPLATE_ID',\n formData,\n 'YOUR_USER_ID'\n ).then((response) => {\n console.log('SUCCESS!', response.status, response.text);\n alert('Mensaje enviado!');\n onClose();\n }).catch((err) => {\n console.log('FAILED...', err);\n alert('Error al enviar el mensaje, por favor intenta nuevamente.');\n });*/\n };\n\n if (!isOpen) return null;\n\n return (\n <View\n style={{\n position: 'fixed',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n backgroundColor: 'white',\n padding: '2rem',\n boxShadow: '0 0 16px rgba(0, 0, 0, 0.2)',\n zIndex: 1000,\n borderRadius: '8px',\n width: '80%',\n maxWidth: '500px',\n maxHeight: '800px',\n color:'#000'\n }}\n >\n <div style={{height:\"700px\", overflow:'auto'}} >\n <Text fontSize=\"1.5rem\" fontWeight=\"bold\" marginBottom=\"1rem\" color=\"#000\">\n {title}\n </Text>\n {isContactForm ? (\n <form onSubmit={handleSubmit}>\n <TextField\n name=\"name\"\n placeholder=\"Nombre\"\n label=\"Nombre\"\n onChange={handleChange}\n required\n />\n <TextField\n name=\"email\"\n type=\"email\"\n placeholder=\"Correo electrónico\"\n label=\"Correo electrónico\"\n onChange={handleChange}\n required\n />\n <TextField\n name=\"message\"\n placeholder=\"Mensaje\"\n label=\"Mensaje\"\n onChange={handleChange}\n required\n />\n <Button color=\"#000\" type=\"submit\">Enviar</Button>\n </form>\n ) : (\n <Text marginBottom=\"2rem\" color=\"#000\">\n {content}\n </Text>\n )}\n <Button color=\"#000\" onClick={onClose}>Cerrar</Button>\n </div>\n </View>\n );\n}\n","import React, { useState } from 'react';\nimport { Flex, Link, Icon, Text } from \"@aws-amplify/ui-react\";\nimport { FaFacebook, FaTwitter, FaInstagram } from 'react-icons/fa';\nimport { Modal } from './Modal';\n\nconst privacyPolicyContent = `\n# PolÃtica de Privacidad\n## 1. Introducción\nBienvenido a Poker Study App. Valoramos su privacidad y nos comprometemos a proteger sus datos personales. Esta polÃtica de privacidad le informará sobre cómo cuidamos sus datos personales cuando visita nuestro sitio web y le informará sobre sus derechos de privacidad y cómo la ley lo protege.\n## 2. Información que Recopilamos\n### Información Personal\nPodemos recopilar, usar, almacenar y transferir diferentes tipos de datos personales sobre usted que hemos agrupado de la siguiente manera:\n- **Identificación y datos de contacto**: Incluye nombre, dirección de correo electrónico, número de teléfono.\n- **Datos de uso**: Incluye información sobre cómo usa nuestro sitio web, productos y servicios.\n- **Datos técnicos**: Incluye dirección IP, tipo de navegador, versiones del navegador, configuración de zona horaria, tipos y versiones de complementos del navegador, sistema operativo y plataforma.\n### Datos No Personales\nTambién recopilamos, usamos y compartimos datos agregados, como datos estadÃsticos o demográficos. Los datos agregados pueden derivarse de sus datos personales, pero no se consideran datos personales en la ley, ya que no revelan su identidad directa o indirectamente.\n## 3. Cómo Recopilamos Sus Datos Personales\nUsamos diferentes métodos para recopilar datos de y sobre usted, incluyendo:\n- **Interacciones directas**: Puede proporcionarnos sus datos personales completando formularios o comunicándose con nosotros por correo postal, teléfono, correo electrónico o de otro modo.\n- **TecnologÃas automatizadas**: A medida que interactúa con nuestro sitio web, podemos recopilar automáticamente datos técnicos sobre su equipo, acciones de navegación y patrones. Recopilamos estos datos personales mediante cookies y otras tecnologÃas similares.\n## 4. Cómo Usamos Sus Datos Personales\nUsamos los datos que recopilamos para varios propósitos, incluyendo:\n- **Para proporcionar y mantener nuestro Servicio**.\n- **Para notificarle sobre cambios en nuestro Servicio**.\n- **Para permitirle participar en funciones interactivas de nuestro Servicio cuando elija hacerlo**.\n- **Para proporcionar atención y soporte al cliente**.\n- **Para proporcionar análisis o información valiosa para que podamos mejorar el Servicio**.\n- **Para monitorear el uso del Servicio**.\n- **Para detectar, prevenir y abordar problemas técnicos**.\n## 5. Divulgación de Sus Datos Personales\nPodemos compartir sus datos personales con las siguientes partes:\n- **Proveedores de servicios**: Empresas que proporcionan servicios en nuestro nombre.\n- **Afiliados**: Podemos compartir su información con nuestros afiliados, en cuyo caso les exigiremos que respeten esta polÃtica de privacidad.\n- **Cumplimiento de las leyes**: Podemos divulgar su información cuando lo requiera la ley o en respuesta a solicitudes válidas por parte de las autoridades públicas.\n## 6. Seguridad de Sus Datos Personales\nNos comprometemos a proteger sus datos personales y hemos implementado medidas de seguridad adecuadas para evitar que sus datos personales se pierdan accidentalmente, se usen o accedan de manera no autorizada, se alteren o se divulguen. Además, limitamos el acceso a sus datos personales a aquellos empleados, agentes, contratistas y otros terceros que tienen una necesidad comercial de conocer dicha información.\n\n## 7. Retención de Datos\n\nSolo conservaremos sus datos personales durante el tiempo que sea necesario para cumplir con los propósitos para los cuales los recopilamos, incluidos los fines de satisfacer cualquier requisito legal, contable o de informes.\n\n## 8. Sus Derechos Legales\n\nBajo ciertas circunstancias, tiene derechos bajo las leyes de protección de datos en relación con sus datos personales, incluyendo el derecho a:\n- Solicitar acceso a sus datos personales.\n- Solicitar corrección de sus datos personales.\n- Solicitar eliminación de sus datos personales.\n- Oponerse al procesamiento de sus datos personales.\n- Solicitar la restricción del procesamiento de sus datos personales.\n- Solicitar la transferencia de sus datos personales.\n- Derecho a retirar el consentimiento.\n\nSi desea ejercer alguno de los derechos mencionados anteriormente, contáctenos.\n\n## 9. Cambios a Esta PolÃtica de Privacidad\n\nPodemos actualizar nuestra polÃtica de privacidad de vez en cuando. Le notificaremos cualquier cambio publicando la nueva polÃtica de privacidad en esta página. Se recomienda revisar esta polÃtica de privacidad periódicamente para cualquier cambio.\n\n## 10. Contacto\n\nSi tiene alguna pregunta sobre esta polÃtica de privacidad o nuestras prácticas de privacidad, por favor contáctenos en:\n\n**Poker Study App**\nEmail: info@pokerstudyapp.com\n`;\n\n\n\nexport function Footer() {\n const [isModalOpen, setIsModalOpen] = useState(false);\n const [modalContent, setModalContent] = useState({ title: '', content: '', isContactForm: false });\n\n const openModal = (title, content, isContactForm = false) => {\n setModalContent({ title, content, isContactForm });\n setIsModalOpen(true);\n };\n\n const closeModal = () => {\n setIsModalOpen(false);\n };\n\n return (\n <Flex\n as=\"footer\"\n direction=\"column\"\n alignItems=\"center\"\n padding=\"1rem\"\n backgroundColor=\"#192831\"\n color=\"white\"\n textAlign=\"center\"\n >\n <Flex direction=\"row\" gap=\"1rem\" marginBottom=\"1rem\">\n <Link\n as=\"button\"\n onClick={() => openModal('PolÃtica de Privacidad', privacyPolicyContent)}\n color=\"white\"\n >\n PolÃtica de Privacidad\n </Link>\n <Link\n as=\"button\"\n onClick={() => openModal('Términos de Servicio', 'Aquà va el contenido de los términos de servicio.')}\n color=\"white\"\n >\n Términos de Servicio\n </Link>\n <Link\n as=\"button\"\n onClick={() => openModal('Contáctanos', '', true)}\n color=\"white\"\n >\n Contáctanos\n </Link>\n </Flex>\n\n <Text fontSize=\"0.75rem\">\n © {new Date().getFullYear()} Poker Crushers Pro - Poker Study App. Todos los derechos reservados.\n </Text>\n\n <Modal\n title={modalContent.title}\n content={modalContent.content}\n isOpen={isModalOpen}\n onClose={closeModal}\n isContactForm={modalContent.isContactForm}\n />\n </Flex>\n );\n}\n","import React from 'react';\nimport Slider from 'react-slick';\nimport \"slick-carousel/slick/slick.css\";\nimport \"slick-carousel/slick/slick-theme.css\";\n\nconst TextCarousel = ({ messages }) => {\n const settings = {\n dots: false,\n infinite: true,\n speed: 500,\n slidesToShow: 1,\n slidesToScroll: 1,\n autoplay: true,\n autoplaySpeed: 4000,\n fade: true,\n arrows: false,\n };\n\n return (\n <div style={{ width: '100%', height: '10%', position: 'relative', zIndex: 2 }}>\n <Slider {...settings}>\n {messages.map((message, index) => (\n <div key={index}>\n {message}\n </div>\n ))}\n </Slider>\n </div>\n );\n};\n\nexport default TextCarousel;\n","export var IconsManifest = [\n {\n \"id\": \"ci\",\n \"name\": \"Circum Icons\",\n \"projectUrl\": \"https://circumicons.com/\",\n \"license\": \"MPL-2.0 license\",\n \"licenseUrl\": \"https://github.com/Klarr-Agency/Circum-Icons/blob/main/LICENSE\"\n },\n {\n \"id\": \"fa\",\n \"name\": \"Font Awesome 5\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"fa6\",\n \"name\": \"Font Awesome 6\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"io\",\n \"name\": \"Ionicons 4\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"io5\",\n \"name\": \"Ionicons 5\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"md\",\n \"name\": \"Material Design icons\",\n \"projectUrl\": \"http://google.github.io/material-design-icons/\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"https://github.com/google/material-design-icons/blob/master/LICENSE\"\n },\n {\n \"id\": \"ti\",\n \"name\": \"Typicons\",\n \"projectUrl\": \"http://s-ings.com/typicons/\",\n \"license\": \"CC BY-SA 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by-sa/3.0/\"\n },\n {\n \"id\": \"go\",\n \"name\": \"Github Octicons icons\",\n \"projectUrl\": \"https://octicons.github.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/primer/octicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"fi\",\n \"name\": \"Feather\",\n \"projectUrl\": \"https://feathericons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/feathericons/feather/blob/master/LICENSE\"\n },\n {\n \"id\": \"lu\",\n \"name\": \"Lucide\",\n \"projectUrl\": \"https://lucide.dev/\",\n \"license\": \"ISC\",\n \"licenseUrl\": \"https://github.com/lucide-icons/lucide/blob/main/LICENSE\"\n },\n {\n \"id\": \"gi\",\n \"name\": \"Game Icons\",\n \"projectUrl\": \"https://game-icons.net/\",\n \"license\": \"CC BY 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/3.0/\"\n },\n {\n \"id\": \"wi\",\n \"name\": \"Weather Icons\",\n \"projectUrl\": \"https://erikflowers.github.io/weather-icons/\",\n \"license\": \"SIL OFL 1.1\",\n \"licenseUrl\": \"http://scripts.sil.org/OFL\"\n },\n {\n \"id\": \"di\",\n \"name\": \"Devicons\",\n \"projectUrl\": \"https://vorillaz.github.io/devicons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"ai\",\n \"name\": \"Ant Design Icons\",\n \"projectUrl\": \"https://github.com/ant-design/ant-design-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"bs\",\n \"name\": \"Bootstrap Icons\",\n \"projectUrl\": \"https://github.com/twbs/icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"ri\",\n \"name\": \"Remix Icon\",\n \"projectUrl\": \"https://github.com/Remix-Design/RemixIcon\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n },\n {\n \"id\": \"fc\",\n \"name\": \"Flat Color Icons\",\n \"projectUrl\": \"https://github.com/icons8/flat-color-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"gr\",\n \"name\": \"Grommet-Icons\",\n \"projectUrl\": \"https://github.com/grommet/grommet-icons\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n },\n {\n \"id\": \"hi\",\n \"name\": \"Heroicons\",\n \"projectUrl\": \"https://github.com/tailwindlabs/heroicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"hi2\",\n \"name\": \"Heroicons 2\",\n \"projectUrl\": \"https://github.com/tailwindlabs/heroicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"si\",\n \"name\": \"Simple Icons\",\n \"projectUrl\": \"https://simpleicons.org/\",\n \"license\": \"CC0 1.0 Universal\",\n \"licenseUrl\": \"https://creativecommons.org/publicdomain/zero/1.0/\"\n },\n {\n \"id\": \"sl\",\n \"name\": \"Simple Line Icons\",\n \"projectUrl\": \"https://thesabbir.github.io/simple-line-icons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"im\",\n \"name\": \"IcoMoon Free\",\n \"projectUrl\": \"https://github.com/Keyamoon/IcoMoon-Free\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://github.com/Keyamoon/IcoMoon-Free/blob/master/License.txt\"\n },\n {\n \"id\": \"bi\",\n \"name\": \"BoxIcons\",\n \"projectUrl\": \"https://github.com/atisawd/boxicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/atisawd/boxicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"cg\",\n \"name\": \"css.gg\",\n \"projectUrl\": \"https://github.com/astrit/css.gg\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"vsc\",\n \"name\": \"VS Code Icons\",\n \"projectUrl\": \"https://github.com/microsoft/vscode-codicons\",\n \"license\": \"CC BY 4.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"tb\",\n \"name\": \"Tabler Icons\",\n \"projectUrl\": \"https://github.com/tabler/tabler-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"tfi\",\n \"name\": \"Themify Icons\",\n \"projectUrl\": \"https://github.com/lykmapipo/themify-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/thecreation/standard-icons/blob/master/modules/themify-icons/LICENSE\"\n },\n {\n \"id\": \"rx\",\n \"name\": \"Radix Icons\",\n \"projectUrl\": \"https://icons.radix-ui.com\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/radix-ui/icons/blob/master/LICENSE\"\n },\n {\n \"id\": \"pi\",\n \"name\": \"Phosphor Icons\",\n \"projectUrl\": \"https://github.com/phosphor-icons/core\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/phosphor-icons/core/blob/main/LICENSE\"\n },\n {\n \"id\": \"lia\",\n \"name\": \"Icons8 Line Awesome\",\n \"projectUrl\": \"https://icons8.com/line-awesome\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/icons8/line-awesome/blob/master/LICENSE.md\"\n }\n]","import React from \"react\";\nexport var DefaultContext = {\n color: undefined,\n size: undefined,\n className: undefined,\n style: undefined,\n attr: undefined\n};\nexport var IconContext = React.createContext && /*#__PURE__*/React.createContext(DefaultContext);","var _excluded = [\"attr\", \"size\", \"title\"];\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React from \"react\";\nimport { IconContext, DefaultContext } from \"./iconContext.mjs\";\nfunction Tree2Element(tree) {\n return tree && tree.map((node, i) => /*#__PURE__*/React.createElement(node.tag, _objectSpread({\n key: i\n }, node.attr), Tree2Element(node.child)));\n}\nexport function GenIcon(data) {\n return props => /*#__PURE__*/React.createElement(IconBase, _extends({\n attr: _objectSpread({}, data.attr)\n }, props), Tree2Element(data.child));\n}\nexport function IconBase(props) {\n var elem = conf => {\n var {\n attr,\n size,\n title\n } = props,\n svgProps = _objectWithoutProperties(props, _excluded);\n var computedSize = size || conf.size || \"1em\";\n var className;\n if (conf.className) className = conf.className;\n if (props.className) className = (className ? className + \" \" : \"\") + props.className;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n stroke: \"currentColor\",\n fill: \"currentColor\",\n strokeWidth: \"0\"\n }, conf.attr, attr, svgProps, {\n className: className,\n style: _objectSpread(_objectSpread({\n color: props.color || conf.color\n }, conf.style), props.style),\n height: computedSize,\n width: computedSize,\n xmlns: \"http://www.w3.org/2000/svg\"\n }), title && /*#__PURE__*/React.createElement(\"title\", null, title), props.children);\n };\n return IconContext !== undefined ? /*#__PURE__*/React.createElement(IconContext.Consumer, null, conf => elem(conf)) : elem(DefaultContext);\n}","// THIS FILE IS AUTO GENERATED\nimport { GenIcon } from '../lib/index.mjs';\nexport function Fa500Px (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M103.3 344.3c-6.5-14.2-6.9-18.3 7.4-23.1 25.6-8 8 9.2 43.2 49.2h.3v-93.9c1.2-50.2 44-92.2 97.7-92.2 53.9 0 97.7 43.5 97.7 96.8 0 63.4-60.8 113.2-128.5 93.3-10.5-4.2-2.1-31.7 8.5-28.6 53 0 89.4-10.1 89.4-64.4 0-61-77.1-89.6-116.9-44.6-23.5 26.4-17.6 42.1-17.6 157.6 50.7 31 118.3 22 160.4-20.1 24.8-24.8 38.5-58 38.5-93 0-35.2-13.8-68.2-38.8-93.3-24.8-24.8-57.8-38.5-93.3-38.5s-68.8 13.8-93.5 38.5c-.3.3-16 16.5-21.2 23.9l-.5.6c-3.3 4.7-6.3 9.1-20.1 6.1-6.9-1.7-14.3-5.8-14.3-11.8V20c0-5 3.9-10.5 10.5-10.5h241.3c8.3 0 8.3 11.6 8.3 15.1 0 3.9 0 15.1-8.3 15.1H130.3v132.9h.3c104.2-109.8 282.8-36 282.8 108.9 0 178.1-244.8 220.3-310.1 62.8zm63.3-260.8c-.5 4.2 4.6 24.5 14.6 20.6C306 56.6 384 144.5 390.6 144.5c4.8 0 22.8-15.3 14.3-22.8-93.2-89-234.5-57-238.3-38.2zM393 414.7C283 524.6 94 475.5 61 310.5c0-12.2-30.4-7.4-28.9 3.3 24 173.4 246 256.9 381.6 121.3 6.9-7.8-12.6-28.4-20.7-20.4zM213.6 306.6c0 4 4.3 7.3 5.5 8.5 3 3 6.1 4.4 8.5 4.4 3.8 0 2.6.2 22.3-19.5 19.6 19.3 19.1 19.5 22.3 19.5 5.4 0 18.5-10.4 10.7-18.2L265.6 284l18.2-18.2c6.3-6.8-10.1-21.8-16.2-15.7L249.7 268c-18.6-18.8-18.4-19.5-21.5-19.5-5 0-18 11.7-12.4 17.3L234 284c-18.1 17.9-20.4 19.2-20.4 22.6z\"},\"child\":[]}]})(props);\n};\nexport function FaAccessibleIcon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M423.9 255.8L411 413.1c-3.3 40.7-63.9 35.1-60.6-4.9l10-122.5-41.1 2.3c10.1 20.7 15.8 43.9 15.8 68.5 0 41.2-16.1 78.7-42.3 106.5l-39.3-39.3c57.9-63.7 13.1-167.2-74-167.2-25.9 0-49.5 9.9-67.2 26L73 243.2c22-20.7 50.1-35.1 81.4-40.2l75.3-85.7-42.6-24.8-51.6 46c-30 26.8-70.6-18.5-40.5-45.4l68-60.7c9.8-8.8 24.1-10.2 35.5-3.6 0 0 139.3 80.9 139.5 81.1 16.2 10.1 20.7 36 6.1 52.6L285.7 229l106.1-5.9c18.5-1.1 33.6 14.4 32.1 32.7zm-64.9-154c28.1 0 50.9-22.8 50.9-50.9C409.9 22.8 387.1 0 359 0c-28.1 0-50.9 22.8-50.9 50.9 0 28.1 22.8 50.9 50.9 50.9zM179.6 456.5c-80.6 0-127.4-90.6-82.7-156.1l-39.7-39.7C36.4 287 24 320.3 24 356.4c0 130.7 150.7 201.4 251.4 122.5l-39.7-39.7c-16 10.9-35.3 17.3-56.1 17.3z\"},\"child\":[]}]})(props);\n};\nexport function FaAccusoft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M322.1 252v-1l-51.2-65.8s-12 1.6-25 15.1c-9 9.3-242.1 239.1-243.4 240.9-7 10 1.6 6.8 15.7 1.7.8 0 114.5-36.6 114.5-36.6.5-.6-.1-.1.6-.6-.4-5.1-.8-26.2-1-27.7-.6-5.2 2.2-6.9 7-8.9l92.6-33.8c.6-.8 88.5-81.7 90.2-83.3zm160.1 120.1c13.3 16.1 20.7 13.3 30.8 9.3 3.2-1.2 115.4-47.6 117.8-48.9 8-4.3-1.7-16.7-7.2-23.4-2.1-2.5-205.1-245.6-207.2-248.3-9.7-12.2-14.3-12.9-38.4-12.8-10.2 0-106.8.5-116.5.6-19.2.1-32.9-.3-19.2 16.9C250 75 476.5 365.2 482.2 372.1zm152.7 1.6c-2.3-.3-24.6-4.7-38-7.2 0 0-115 50.4-117.5 51.6-16 7.3-26.9-3.2-36.7-14.6l-57.1-74c-5.4-.9-60.4-9.6-65.3-9.3-3.1.2-9.6.8-14.4 2.9-4.9 2.1-145.2 52.8-150.2 54.7-5.1 2-11.4 3.6-11.1 7.6.2 2.5 2 2.6 4.6 3.5 2.7.8 300.9 67.6 308 69.1 15.6 3.3 38.5 10.5 53.6 1.7 2.1-1.2 123.8-76.4 125.8-77.8 5.4-4 4.3-6.8-1.7-8.2z\"},\"child\":[]}]})(props);\n};\nexport function FaAcquisitionsIncorporated (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M357.45 468.2c-1.2-7.7-1.3-7.6-9.6-7.6-99.8.2-111.8-2.4-112.7-2.6-12.3-1.7-20.6-10.5-21-23.1-.1-1.6-.2-71.6-1-129.1-.1-4.7 1.6-6.4 5.9-7.5 12.5-3 24.9-6.1 37.3-9.7 4.3-1.3 6.8-.2 8.4 3.5 4.5 10.3 8.8 20.6 13.2 30.9 1.6 3.7.1 4.4-3.4 4.4-10-.2-20-.1-30.4-.1v27h116c-1.4-9.5-2.7-18.1-4-27.5-7 0-13.8.4-20.4-.1-22.6-1.6-18.3-4.4-84-158.6-8.8-20.1-27.9-62.1-36.5-89.2-4.4-14 5.5-25.4 18.9-26.6 18.6-1.7 37.5-1.6 56.2-2 20.6-.4 41.2-.4 61.8-.5 3.1 0 4-1.4 4.3-4.3 1.2-9.8 2.7-19.5 4-29.2.8-5.3 1.6-10.7 2.4-16.1L23.75 0c-3.6 0-5.3 1.1-4.6 5.3 2.2 13.2-.8.8 6.4 45.3 63.4 0 71.8.9 101.8.5 12.3-.2 37 3.5 37.7 22.1.4 11.4-1.1 11.3-32.6 87.4-53.8 129.8-50.7 120.3-67.3 161-1.7 4.1-3.6 5.2-7.6 5.2-8.5-.2-17-.3-25.4.1-1.9.1-5.2 1.8-5.5 3.2-1.5 8.1-2.2 16.3-3.2 24.9h114.3v-27.6c-6.9 0-33.5.4-35.3-2.9 5.3-12.3 10.4-24.4 15.7-36.7 16.3 4 31.9 7.8 47.6 11.7 3.4.9 4.6 3 4.6 6.8-.1 42.9.1 85.9.2 128.8 0 10.2-5.5 19.1-14.9 23.1-6.5 2.7-3.3 3.4-121.4 2.4-5.3 0-7.1 2-7.6 6.8-1.5 12.9-2.9 25.9-5 38.8-.8 5 1.3 5.7 5.3 5.7 183.2.6-30.7 0 337.1 0-2.5-15-4.4-29.4-6.6-43.7zm-174.9-205.7c-13.3-4.2-26.6-8.2-39.9-12.5a44.53 44.53 0 0 1-5.8-2.9c17.2-44.3 34.2-88.1 51.3-132.1 7.5 2.4 7.9-.8 9.4 0 9.3 22.5 18.1 60.1 27 82.8 6.6 16.7 13 33.5 19.7 50.9a35.78 35.78 0 0 1-3.9 2.1c-13.1 3.9-26.4 7.5-39.4 11.7a27.66 27.66 0 0 1-18.4 0z\"},\"child\":[]}]})(props);\n};\nexport function FaAdn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 167.5l64.9 98.8H183.1l64.9-98.8zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-99.8 82.7L248 115.5 99.8 338.7h30.4l33.6-51.7h168.6l33.6 51.7h30.2z\"},\"child\":[]}]})(props);\n};\nexport function FaAdversal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M482.1 32H28.7C5.8 32 0 37.9 0 60.9v390.2C0 474.4 5.8 480 28.7 480h453.4c24.4 0 29.9-5.2 29.9-29.7V62.2c0-24.6-5.4-30.2-29.9-30.2zM178.4 220.3c-27.5-20.2-72.1-8.7-84.2 23.4-4.3 11.1-9.3 9.5-17.5 8.3-9.7-1.5-17.2-3.2-22.5-5.5-28.8-11.4 8.6-55.3 24.9-64.3 41.1-21.4 83.4-22.2 125.3-4.8 40.9 16.8 34.5 59.2 34.5 128.5 2.7 25.8-4.3 58.3 9.3 88.8 1.9 4.4.4 7.9-2.7 10.7-8.4 6.7-39.3 2.2-46.6-7.4-1.9-2.2-1.8-3.6-3.9-6.2-3.6-3.9-7.3-2.2-11.9 1-57.4 36.4-140.3 21.4-147-43.3-3.1-29.3 12.4-57.1 39.6-71 38.2-19.5 112.2-11.8 114-30.9 1.1-10.2-1.9-20.1-11.3-27.3zm286.7 222c0 15.1-11.1 9.9-17.8 9.9H52.4c-7.4 0-18.2 4.8-17.8-10.7.4-13.9 10.5-9.1 17.1-9.1 132.3-.4 264.5-.4 396.8 0 6.8 0 16.6-4.4 16.6 9.9zm3.8-340.5v291c0 5.7-.7 13.9-8.1 13.9-12.4-.4-27.5 7.1-36.1-5.6-5.8-8.7-7.8-4-12.4-1.2-53.4 29.7-128.1 7.1-144.4-85.2-6.1-33.4-.7-67.1 15.7-100 11.8-23.9 56.9-76.1 136.1-30.5v-71c0-26.2-.1-26.2 26-26.2 3.1 0 6.6.4 9.7 0 10.1-.8 13.6 4.4 13.6 14.3-.1.2-.1.3-.1.5zm-51.5 232.3c-19.5 47.6-72.9 43.3-90 5.2-15.1-33.3-15.5-68.2.4-101.5 16.3-34.1 59.7-35.7 81.5-4.8 20.6 28.8 14.9 84.6 8.1 101.1zm-294.8 35.3c-7.5-1.3-33-3.3-33.7-27.8-.4-13.9 7.8-23 19.8-25.8 24.4-5.9 49.3-9.9 73.7-14.7 8.9-2 7.4 4.4 7.8 9.5 1.4 33-26.1 59.2-67.6 58.8z\"},\"child\":[]}]})(props);\n};\nexport function FaAffiliatetheme (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M159.7 237.4C108.4 308.3 43.1 348.2 14 326.6-15.2 304.9 2.8 230 54.2 159.1c51.3-70.9 116.6-110.8 145.7-89.2 29.1 21.6 11.1 96.6-40.2 167.5zm351.2-57.3C437.1 303.5 319 367.8 246.4 323.7c-25-15.2-41.3-41.2-49-73.8-33.6 64.8-92.8 113.8-164.1 133.2 49.8 59.3 124.1 96.9 207 96.9 150 0 271.6-123.1 271.6-274.9.1-8.5-.3-16.8-1-25z\"},\"child\":[]}]})(props);\n};\nexport function FaAirbnb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 373.12c-25.24-31.67-40.08-59.43-45-83.18-22.55-88 112.61-88 90.06 0-5.45 24.25-20.29 52-45 83.18zm138.15 73.23c-42.06 18.31-83.67-10.88-119.3-50.47 103.9-130.07 46.11-200-18.85-200-54.92 0-85.16 46.51-73.28 100.5 6.93 29.19 25.23 62.39 54.43 99.5-32.53 36.05-60.55 52.69-85.15 54.92-50 7.43-89.11-41.06-71.3-91.09 15.1-39.16 111.72-231.18 115.87-241.56 15.75-30.07 25.56-57.4 59.38-57.4 32.34 0 43.4 25.94 60.37 59.87 36 70.62 89.35 177.48 114.84 239.09 13.17 33.07-1.37 71.29-37.01 86.64zm47-136.12C280.27 35.93 273.13 32 224 32c-45.52 0-64.87 31.67-84.66 72.79C33.18 317.1 22.89 347.19 22 349.81-3.22 419.14 48.74 480 111.63 480c21.71 0 60.61-6.06 112.37-62.4 58.68 63.78 101.26 62.4 112.37 62.4 62.89.05 114.85-60.86 89.61-130.19.02-3.89-16.82-38.9-16.82-39.58z\"},\"child\":[]}]})(props);\n};\nexport function FaAlgolia (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M229.3 182.6c-49.3 0-89.2 39.9-89.2 89.2 0 49.3 39.9 89.2 89.2 89.2s89.2-39.9 89.2-89.2c0-49.3-40-89.2-89.2-89.2zm62.7 56.6l-58.9 30.6c-1.8.9-3.8-.4-3.8-2.3V201c0-1.5 1.3-2.7 2.7-2.6 26.2 1 48.9 15.7 61.1 37.1.7 1.3.2 3-1.1 3.7zM389.1 32H58.9C26.4 32 0 58.4 0 90.9V421c0 32.6 26.4 59 58.9 59H389c32.6 0 58.9-26.4 58.9-58.9V90.9C448 58.4 421.6 32 389.1 32zm-202.6 84.7c0-10.8 8.7-19.5 19.5-19.5h45.3c10.8 0 19.5 8.7 19.5 19.5v15.4c0 1.8-1.7 3-3.3 2.5-12.3-3.4-25.1-5.1-38.1-5.1-13.5 0-26.7 1.8-39.4 5.5-1.7.5-3.4-.8-3.4-2.5v-15.8zm-84.4 37l9.2-9.2c7.6-7.6 19.9-7.6 27.5 0l7.7 7.7c1.1 1.1 1 3-.3 4-6.2 4.5-12.1 9.4-17.6 14.9-5.4 5.4-10.4 11.3-14.8 17.4-1 1.3-2.9 1.5-4 .3l-7.7-7.7c-7.6-7.5-7.6-19.8 0-27.4zm127.2 244.8c-70 0-126.6-56.7-126.6-126.6s56.7-126.6 126.6-126.6c70 0 126.6 56.6 126.6 126.6 0 69.8-56.7 126.6-126.6 126.6z\"},\"child\":[]}]})(props);\n};\nexport function FaAlipay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M377.74 32H70.26C31.41 32 0 63.41 0 102.26v307.48C0 448.59 31.41 480 70.26 480h307.48c38.52 0 69.76-31.08 70.26-69.6-45.96-25.62-110.59-60.34-171.6-88.44-32.07 43.97-84.14 81-148.62 81-70.59 0-93.73-45.3-97.04-76.37-3.97-39.01 14.88-81.5 99.52-81.5 35.38 0 79.35 10.25 127.13 24.96 16.53-30.09 26.45-60.34 26.45-60.34h-178.2v-16.7h92.08v-31.24H88.28v-19.01h109.44V92.34h50.92v50.42h109.44v19.01H248.63v31.24h88.77s-15.21 46.62-38.35 90.92c48.93 16.7 100.01 36.04 148.62 52.74V102.26C447.83 63.57 416.43 32 377.74 32zM47.28 322.95c.99 20.17 10.25 53.73 69.93 53.73 52.07 0 92.58-39.68 117.87-72.9-44.63-18.68-84.48-31.41-109.44-31.41-67.45 0-79.35 33.06-78.36 50.58z\"},\"child\":[]}]})(props);\n};\nexport function FaAmazonPay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 325.3c2.3-4.2 5.2-4.9 9.7-2.5 10.4 5.6 20.6 11.4 31.2 16.7a595.88 595.88 0 0 0 127.4 46.3 616.61 616.61 0 0 0 63.2 11.8 603.33 603.33 0 0 0 95 5.2c17.4-.4 34.8-1.8 52.1-3.8a603.66 603.66 0 0 0 163.3-42.8c2.9-1.2 5.9-2 9.1-1.2 6.7 1.8 9 9 4.1 13.9a70 70 0 0 1-9.6 7.4c-30.7 21.1-64.2 36.4-99.6 47.9a473.31 473.31 0 0 1-75.1 17.6 431 431 0 0 1-53.2 4.8 21.3 21.3 0 0 0-2.5.3H308a21.3 21.3 0 0 0-2.5-.3c-3.6-.2-7.2-.3-10.7-.4a426.3 426.3 0 0 1-50.4-5.3A448.4 448.4 0 0 1 164 420a443.33 443.33 0 0 1-145.6-87c-1.8-1.6-3-3.8-4.4-5.7zM172 65.1l-4.3.6a80.92 80.92 0 0 0-38 15.1c-2.4 1.7-4.6 3.5-7.1 5.4a4.29 4.29 0 0 1-.4-1.4c-.4-2.7-.8-5.5-1.3-8.2-.7-4.6-3-6.6-7.6-6.6h-11.5c-6.9 0-8.2 1.3-8.2 8.2v209.3c0 1 0 2 .1 3 .2 3 2 4.9 4.9 5 7 .1 14.1.1 21.1 0 2.9 0 4.7-2 5-5 .1-1 .1-2 .1-3v-72.4c1.1.9 1.7 1.4 2.2 1.9 17.9 14.9 38.5 19.8 61 15.4 20.4-4 34.6-16.5 43.8-34.9 7-13.9 9.9-28.7 10.3-44.1.5-17.1-1.2-33.9-8.1-49.8-8.5-19.6-22.6-32.5-43.9-36.9-3.2-.7-6.5-1-9.8-1.5-2.8-.1-5.5-.1-8.3-.1zM124.6 107a3.48 3.48 0 0 1 1.7-3.3c13.7-9.5 28.8-14.5 45.6-13.2 14.9 1.1 27.1 8.4 33.5 25.9 3.9 10.7 4.9 21.8 4.9 33 0 10.4-.8 20.6-4 30.6-6.8 21.3-22.4 29.4-42.6 28.5-14-.6-26.2-6-37.4-13.9a3.57 3.57 0 0 1-1.7-3.3c.1-14.1 0-28.1 0-42.2s.1-28 0-42.1zm205.7-41.9c-1 .1-2 .3-2.9.4a148 148 0 0 0-28.9 4.1c-6.1 1.6-12 3.8-17.9 5.8-3.6 1.2-5.4 3.8-5.3 7.7.1 3.3-.1 6.6 0 9.9.1 4.8 2.1 6.1 6.8 4.9 7.8-2 15.6-4.2 23.5-5.7 12.3-2.3 24.7-3.3 37.2-1.4 6.5 1 12.6 2.9 16.8 8.4 3.7 4.8 5.1 10.5 5.3 16.4.3 8.3.2 16.6.3 24.9a7.84 7.84 0 0 1-.2 1.4c-.5-.1-.9 0-1.3-.1a180.56 180.56 0 0 0-32-4.9c-11.3-.6-22.5.1-33.3 3.9-12.9 4.5-23.3 12.3-29.4 24.9-4.7 9.8-5.4 20.2-3.9 30.7 2 14 9 24.8 21.4 31.7 11.9 6.6 24.8 7.4 37.9 5.4 15.1-2.3 28.5-8.7 40.3-18.4a7.36 7.36 0 0 1 1.6-1.1c.6 3.8 1.1 7.4 1.8 11 .6 3.1 2.5 5.1 5.4 5.2 5.4.1 10.9.1 16.3 0a4.84 4.84 0 0 0 4.8-4.7 26.2 26.2 0 0 0 .1-2.8v-106a80 80 0 0 0-.9-12.9c-1.9-12.9-7.4-23.5-19-30.4-6.7-4-14.1-6-21.8-7.1-3.6-.5-7.2-.8-10.8-1.3-3.9.1-7.9.1-11.9.1zm35 127.7a3.33 3.33 0 0 1-1.5 3c-11.2 8.1-23.5 13.5-37.4 14.9-5.7.6-11.4.4-16.8-1.8a20.08 20.08 0 0 1-12.4-13.3 32.9 32.9 0 0 1-.1-19.4c2.5-8.3 8.4-13 16.4-15.6a61.33 61.33 0 0 1 24.8-2.2c8.4.7 16.6 2.3 25 3.4 1.6.2 2.1 1 2.1 2.6-.1 4.8 0 9.5 0 14.3s-.2 9.4-.1 14.1zm259.9 129.4c-1-5-4.8-6.9-9.1-8.3a88.42 88.42 0 0 0-21-3.9 147.32 147.32 0 0 0-39.2 1.9c-14.3 2.7-27.9 7.3-40 15.6a13.75 13.75 0 0 0-3.7 3.5 5.11 5.11 0 0 0-.5 4c.4 1.5 2.1 1.9 3.6 1.8a16.2 16.2 0 0 0 2.2-.1c7.8-.8 15.5-1.7 23.3-2.5 11.4-1.1 22.9-1.8 34.3-.9a71.64 71.64 0 0 1 14.4 2.7c5.1 1.4 7.4 5.2 7.6 10.4.4 8-1.4 15.7-3.5 23.3-4.1 15.4-10 30.3-15.8 45.1a17.6 17.6 0 0 0-1 3c-.5 2.9 1.2 4.8 4.1 4.1a10.56 10.56 0 0 0 4.8-2.5 145.91 145.91 0 0 0 12.7-13.4c12.8-16.4 20.3-35.3 24.7-55.6.8-3.6 1.4-7.3 2.1-10.9v-17.3zM493.1 199q-19.35-53.55-38.7-107.2c-2-5.7-4.2-11.3-6.3-16.9-1.1-2.9-3.2-4.8-6.4-4.8-7.6-.1-15.2-.2-22.9-.1-2.5 0-3.7 2-3.2 4.5a43.1 43.1 0 0 0 1.9 6.1q29.4 72.75 59.1 145.5c1.7 4.1 2.1 7.6.2 11.8-3.3 7.3-5.9 15-9.3 22.3-3 6.5-8 11.4-15.2 13.3a42.13 42.13 0 0 1-15.4 1.1c-2.5-.2-5-.8-7.5-1-3.4-.2-5.1 1.3-5.2 4.8q-.15 5 0 9.9c.1 5.5 2 8 7.4 8.9a108.18 108.18 0 0 0 16.9 2c17.1.4 30.7-6.5 39.5-21.4a131.63 131.63 0 0 0 9.2-18.4q35.55-89.7 70.6-179.6a26.62 26.62 0 0 0 1.6-5.5c.4-2.8-.9-4.4-3.7-4.4-6.6-.1-13.3 0-19.9 0a7.54 7.54 0 0 0-7.7 5.2c-.5 1.4-1.1 2.7-1.6 4.1l-34.8 100c-2.5 7.2-5.1 14.5-7.7 22.2-.4-1.1-.6-1.7-.9-2.4z\"},\"child\":[]}]})(props);\n};\nexport function FaAmazon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M257.2 162.7c-48.7 1.8-169.5 15.5-169.5 117.5 0 109.5 138.3 114 183.5 43.2 6.5 10.2 35.4 37.5 45.3 46.8l56.8-56S341 288.9 341 261.4V114.3C341 89 316.5 32 228.7 32 140.7 32 94 87 94 136.3l73.5 6.8c16.3-49.5 54.2-49.5 54.2-49.5 40.7-.1 35.5 29.8 35.5 69.1zm0 86.8c0 80-84.2 68-84.2 17.2 0-47.2 50.5-56.7 84.2-57.8v40.6zm136 163.5c-7.7 10-70 67-174.5 67S34.2 408.5 9.7 379c-6.8-7.7 1-11.3 5.5-8.3C88.5 415.2 203 488.5 387.7 401c7.5-3.7 13.3 2 5.5 12zm39.8 2.2c-6.5 15.8-16 26.8-21.2 31-5.5 4.5-9.5 2.7-6.5-3.8s19.3-46.5 12.7-55c-6.5-8.3-37-4.3-48-3.2-10.8 1-13 2-14-.3-2.3-5.7 21.7-15.5 37.5-17.5 15.7-1.8 41-.8 46 5.7 3.7 5.1 0 27.1-6.5 43.1z\"},\"child\":[]}]})(props);\n};\nexport function FaAmilia (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240.1 32c-61.9 0-131.5 16.9-184.2 55.4-5.1 3.1-9.1 9.2-7.2 19.4 1.1 5.1 5.1 27.4 10.2 39.6 4.1 10.2 14.2 10.2 20.3 6.1 32.5-22.3 96.5-47.7 152.3-47.7 57.9 0 58.9 28.4 58.9 73.1v38.5C203 227.7 78.2 251 46.7 264.2 11.2 280.5 16.3 357.7 16.3 376s15.2 104 124.9 104c47.8 0 113.7-20.7 153.3-42.1v25.4c0 3 2.1 8.2 6.1 9.1 3.1 1 50.7 2 59.9 2s62.5.3 66.5-.7c4.1-1 5.1-6.1 5.1-9.1V168c-.1-80.3-57.9-136-192-136zm50.2 348c-21.4 13.2-48.7 24.4-79.1 24.4-52.8 0-58.9-33.5-59-44.7 0-12.2-3-42.7 18.3-52.9 24.3-13.2 75.1-29.4 119.8-33.5z\"},\"child\":[]}]})(props);\n};\nexport function FaAndroid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M420.55,301.93a24,24,0,1,1,24-24,24,24,0,0,1-24,24m-265.1,0a24,24,0,1,1,24-24,24,24,0,0,1-24,24m273.7-144.48,47.94-83a10,10,0,1,0-17.27-10h0l-48.54,84.07a301.25,301.25,0,0,0-246.56,0L116.18,64.45a10,10,0,1,0-17.27,10h0l47.94,83C64.53,202.22,8.24,285.55,0,384H576c-8.24-98.45-64.54-181.78-146.85-226.55\"},\"child\":[]}]})(props);\n};\nexport function FaAngellist (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M347.1 215.4c11.7-32.6 45.4-126.9 45.4-157.1 0-26.6-15.7-48.9-43.7-48.9-44.6 0-84.6 131.7-97.1 163.1C242 144 196.6 0 156.6 0c-31.1 0-45.7 22.9-45.7 51.7 0 35.3 34.2 126.8 46.6 162-6.3-2.3-13.1-4.3-20-4.3-23.4 0-48.3 29.1-48.3 52.6 0 8.9 4.9 21.4 8 29.7-36.9 10-51.1 34.6-51.1 71.7C46 435.6 114.4 512 210.6 512c118 0 191.4-88.6 191.4-202.9 0-43.1-6.9-82-54.9-93.7zM311.7 108c4-12.3 21.1-64.3 37.1-64.3 8.6 0 10.9 8.9 10.9 16 0 19.1-38.6 124.6-47.1 148l-34-6 33.1-93.7zM142.3 48.3c0-11.9 14.5-45.7 46.3 47.1l34.6 100.3c-15.6-1.3-27.7-3-35.4 1.4-10.9-28.8-45.5-119.7-45.5-148.8zM140 244c29.3 0 67.1 94.6 67.1 107.4 0 5.1-4.9 11.4-10.6 11.4-20.9 0-76.9-76.9-76.9-97.7.1-7.7 12.7-21.1 20.4-21.1zm184.3 186.3c-29.1 32-66.3 48.6-109.7 48.6-59.4 0-106.3-32.6-128.9-88.3-17.1-43.4 3.8-68.3 20.6-68.3 11.4 0 54.3 60.3 54.3 73.1 0 4.9-7.7 8.3-11.7 8.3-16.1 0-22.4-15.5-51.1-51.4-29.7 29.7 20.5 86.9 58.3 86.9 26.1 0 43.1-24.2 38-42 3.7 0 8.3.3 11.7-.6 1.1 27.1 9.1 59.4 41.7 61.7 0-.9 2-7.1 2-7.4 0-17.4-10.6-32.6-10.6-50.3 0-28.3 21.7-55.7 43.7-71.7 8-6 17.7-9.7 27.1-13.1 9.7-3.7 20-8 27.4-15.4-1.1-11.2-5.7-21.1-16.9-21.1-27.7 0-120.6 4-120.6-39.7 0-6.7.1-13.1 17.4-13.1 32.3 0 114.3 8 138.3 29.1 18.1 16.1 24.3 113.2-31 174.7zm-98.6-126c9.7 3.1 19.7 4 29.7 6-7.4 5.4-14 12-20.3 19.1-2.8-8.5-6.2-16.8-9.4-25.1z\"},\"child\":[]}]})(props);\n};\nexport function FaAngrycreative (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M640 238.2l-3.2 28.2-34.5 2.3-2 18.1 34.5-2.3-3.2 28.2-34.4 2.2-2.3 20.1 34.4-2.2-3 26.1-64.7 4.1 12.7-113.2L527 365.2l-31.9 2-23.8-117.8 30.3-2 13.6 79.4 31.7-82.4 93.1-6.2zM426.8 371.5l28.3-1.8L468 249.6l-28.4 1.9-12.8 120zM162 388.1l-19.4-36-3.5 37.4-28.2 1.7 2.7-29.1c-11 18-32 34.3-56.9 35.8C23.9 399.9-3 377 .3 339.7c2.6-29.3 26.7-62.8 67.5-65.4 37.7-2.4 47.6 23.2 51.3 28.8l2.8-30.8 38.9-2.5c20.1-1.3 38.7 3.7 42.5 23.7l2.6-26.6 64.8-4.2-2.7 27.9-36.4 2.4-1.7 17.9 36.4-2.3-2.7 27.9-36.4 2.3-1.9 19.9 36.3-2.3-2.1 20.8 55-117.2 23.8-1.6L370.4 369l8.9-85.6-22.3 1.4 2.9-27.9 75-4.9-3 28-24.3 1.6-9.7 91.9-58 3.7-4.3-15.6-39.4 2.5-8 16.3-126.2 7.7zm-44.3-70.2l-26.4 1.7C84.6 307.2 76.9 303 65 303.8c-19 1.2-33.3 17.5-34.6 33.3-1.4 16 7.3 32.5 28.7 31.2 12.8-.8 21.3-8.6 28.9-18.9l27-1.7 2.7-29.8zm56.1-7.7c1.2-12.9-7.6-13.6-26.1-12.4l-2.7 28.5c14.2-.9 27.5-2.1 28.8-16.1zm21.1 70.8l5.8-60c-5 13.5-14.7 21.1-27.9 26.6l22.1 33.4zm135.4-45l-7.9-37.8-15.8 39.3 23.7-1.5zm-170.1-74.6l-4.3-17.5-39.6 2.6-8.1 18.2-31.9 2.1 57-121.9 23.9-1.6 30.7 102 9.9-104.7 27-1.8 37.8 63.6 6.5-66.6 28.5-1.9-4 41.2c7.4-13.5 22.9-44.7 63.6-47.5 40.5-2.8 52.4 29.3 53.4 30.3l3.3-32 39.3-2.7c12.7-.9 27.8.3 36.3 9.7l-4.4-11.9 32.2-2.2 12.9 43.2 23-45.7 31-2.2-43.6 78.4-4.8 44.3-28.4 1.9 4.8-44.3-15.8-43c1 22.3-9.2 40.1-32 49.6l25.2 38.8-36.4 2.4-19.2-36.8-4 38.3-28.4 1.9 3.3-31.5c-6.7 9.3-19.7 35.4-59.6 38-26.2 1.7-45.6-10.3-55.4-39.2l-4 40.3-25 1.6-37.6-63.3-6.3 66.2-56.8 3.7zm276.6-82.1c10.2-.7 17.5-2.1 21.6-4.3 4.5-2.4 7-6.4 7.6-12.1.6-5.3-.6-8.8-3.4-10.4-3.6-2.1-10.6-2.8-22.9-2l-2.9 28.8zM327.7 214c5.6 5.9 12.7 8.5 21.3 7.9 4.7-.3 9.1-1.8 13.3-4.1 5.5-3 10.6-8 15.1-14.3l-34.2 2.3 2.4-23.9 63.1-4.3 1.2-12-31.2 2.1c-4.1-3.7-7.8-6.6-11.1-8.1-4-1.7-8.1-2.8-12.2-2.5-8 .5-15.3 3.6-22 9.2-7.7 6.4-12 14.5-12.9 24.4-1.1 9.6 1.4 17.3 7.2 23.3zm-201.3 8.2l23.8-1.6-8.3-37.6-15.5 39.2z\"},\"child\":[]}]})(props);\n};\nexport function FaAngular (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M185.7 268.1h76.2l-38.1-91.6-38.1 91.6zM223.8 32L16 106.4l31.8 275.7 176 97.9 176-97.9 31.8-275.7zM354 373.8h-48.6l-26.2-65.4H168.6l-26.2 65.4H93.7L223.8 81.5z\"},\"child\":[]}]})(props);\n};\nexport function FaAppStoreIos (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM127 384.5c-5.5 9.6-17.8 12.8-27.3 7.3-9.6-5.5-12.8-17.8-7.3-27.3l14.3-24.7c16.1-4.9 29.3-1.1 39.6 11.4L127 384.5zm138.9-53.9H84c-11 0-20-9-20-20s9-20 20-20h51l65.4-113.2-20.5-35.4c-5.5-9.6-2.2-21.8 7.3-27.3 9.6-5.5 21.8-2.2 27.3 7.3l8.9 15.4 8.9-15.4c5.5-9.6 17.8-12.8 27.3-7.3 9.6 5.5 12.8 17.8 7.3 27.3l-85.8 148.6h62.1c20.2 0 31.5 23.7 22.7 40zm98.1 0h-29l19.6 33.9c5.5 9.6 2.2 21.8-7.3 27.3-9.6 5.5-21.8 2.2-27.3-7.3-32.9-56.9-57.5-99.7-74-128.1-16.7-29-4.8-58 7.1-67.8 13.1 22.7 32.7 56.7 58.9 102h52c11 0 20 9 20 20 0 11.1-9 20-20 20z\"},\"child\":[]}]})(props);\n};\nexport function FaAppStore (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M255.9 120.9l9.1-15.7c5.6-9.8 18.1-13.1 27.9-7.5 9.8 5.6 13.1 18.1 7.5 27.9l-87.5 151.5h63.3c20.5 0 32 24.1 23.1 40.8H113.8c-11.3 0-20.4-9.1-20.4-20.4 0-11.3 9.1-20.4 20.4-20.4h52l66.6-115.4-20.8-36.1c-5.6-9.8-2.3-22.2 7.5-27.9 9.8-5.6 22.2-2.3 27.9 7.5l8.9 15.7zm-78.7 218l-19.6 34c-5.6 9.8-18.1 13.1-27.9 7.5-9.8-5.6-13.1-18.1-7.5-27.9l14.6-25.2c16.4-5.1 29.8-1.2 40.4 11.6zm168.9-61.7h53.1c11.3 0 20.4 9.1 20.4 20.4 0 11.3-9.1 20.4-20.4 20.4h-29.5l19.9 34.5c5.6 9.8 2.3 22.2-7.5 27.9-9.8 5.6-22.2 2.3-27.9-7.5-33.5-58.1-58.7-101.6-75.4-130.6-17.1-29.5-4.9-59.1 7.2-69.1 13.4 23 33.4 57.7 60.1 104zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm216 248c0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216z\"},\"child\":[]}]})(props);\n};\nexport function FaApper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M42.1 239.1c22.2 0 29 2.8 33.5 14.6h.8v-22.9c0-11.3-4.8-15.4-17.9-15.4-11.3 0-14.4 2.5-15.1 12.8H4.8c.3-13.9 1.5-19.1 5.8-24.4C17.9 195 29.5 192 56.7 192c33 0 47.1 5 53.9 18.9 2 4.3 4 15.6 4 23.7v76.3H76.3l1.3-19.1h-1c-5.3 15.6-13.6 20.4-35.5 20.4-30.3 0-41.1-10.1-41.1-37.3 0-25.2 12.3-35.8 42.1-35.8zm17.1 48.1c13.1 0 16.9-3 16.9-13.4 0-9.1-4.3-11.6-19.6-11.6-13.1 0-17.9 3-17.9 12.1-.1 10.4 3.7 12.9 20.6 12.9zm77.8-94.9h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.2 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3H137v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm57.9-60.7h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.3 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3h-39.5v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm53.8-3.8c0-25.4 3.3-37.8 12.3-45.8 8.8-8.1 22.2-11.3 45.1-11.3 42.8 0 55.7 12.8 55.7 55.7v11.1h-75.3c-.3 2-.3 4-.3 4.8 0 16.9 4.5 21.9 20.1 21.9 13.9 0 17.9-3 17.9-13.9h37.5v2.3c0 9.8-2.5 18.9-6.8 24.7-7.3 9.8-19.6 13.6-44.3 13.6-27.5 0-41.6-3.3-50.6-12.3-8.5-8.5-11.3-21.3-11.3-50.8zm76.4-11.6c-.3-1.8-.3-3.3-.3-3.8 0-12.3-3.3-14.6-19.6-14.6-14.4 0-17.1 3-18.1 15.1l-.3 3.3h38.3zm55.6-45.3h38.3l-1.8 19.9h.7c6.8-14.9 14.4-20.2 29.7-20.2 10.8 0 19.1 3.3 23.4 9.3 5.3 7.3 6.8 14.4 6.8 34 0 1.5 0 5 .2 9.3h-35c.3-1.8.3-3.3.3-4 0-15.4-2-19.4-10.3-19.4-6.3 0-10.8 3.3-13.1 9.3-1 3-1 4.3-1 12.3v68h-38.3V192.3z\"},\"child\":[]}]})(props);\n};\nexport function FaApplePay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M116.9 158.5c-7.5 8.9-19.5 15.9-31.5 14.9-1.5-12 4.4-24.8 11.3-32.6 7.5-9.1 20.6-15.6 31.3-16.1 1.2 12.4-3.7 24.7-11.1 33.8m10.9 17.2c-17.4-1-32.3 9.9-40.5 9.9-8.4 0-21-9.4-34.8-9.1-17.9.3-34.5 10.4-43.6 26.5-18.8 32.3-4.9 80 13.3 106.3 8.9 13 19.5 27.3 33.5 26.8 13.3-.5 18.5-8.6 34.5-8.6 16.1 0 20.8 8.6 34.8 8.4 14.5-.3 23.6-13 32.5-26 10.1-14.8 14.3-29.1 14.5-29.9-.3-.3-28-10.9-28.3-42.9-.3-26.8 21.9-39.5 22.9-40.3-12.5-18.6-32-20.6-38.8-21.1m100.4-36.2v194.9h30.3v-66.6h41.9c38.3 0 65.1-26.3 65.1-64.3s-26.4-64-64.1-64h-73.2zm30.3 25.5h34.9c26.3 0 41.3 14 41.3 38.6s-15 38.8-41.4 38.8h-34.8V165zm162.2 170.9c19 0 36.6-9.6 44.6-24.9h.6v23.4h28v-97c0-28.1-22.5-46.3-57.1-46.3-32.1 0-55.9 18.4-56.8 43.6h27.3c2.3-12 13.4-19.9 28.6-19.9 18.5 0 28.9 8.6 28.9 24.5v10.8l-37.8 2.3c-35.1 2.1-54.1 16.5-54.1 41.5.1 25.2 19.7 42 47.8 42zm8.2-23.1c-16.1 0-26.4-7.8-26.4-19.6 0-12.3 9.9-19.4 28.8-20.5l33.6-2.1v11c0 18.2-15.5 31.2-36 31.2zm102.5 74.6c29.5 0 43.4-11.3 55.5-45.4L640 193h-30.8l-35.6 115.1h-.6L537.4 193h-31.6L557 334.9l-2.8 8.6c-4.6 14.6-12.1 20.3-25.5 20.3-2.4 0-7-.3-8.9-.5v23.4c1.8.4 9.3.7 11.6.7z\"},\"child\":[]}]})(props);\n};\nexport function FaApple (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z\"},\"child\":[]}]})(props);\n};\nexport function FaArtstation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 377.4l43 74.3A51.35 51.35 0 0 0 90.9 480h285.4l-59.2-102.6zM501.8 350L335.6 59.3A51.38 51.38 0 0 0 290.2 32h-88.4l257.3 447.6 40.7-70.5c1.9-3.2 21-29.7 2-59.1zM275 304.5l-115.5-200L44 304.5z\"},\"child\":[]}]})(props);\n};\nexport function FaAsymmetrik (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M517.5 309.2c38.8-40 58.1-80 58.5-116.1.8-65.5-59.4-118.2-169.4-135C277.9 38.4 118.1 73.6 0 140.5 52 114 110.6 92.3 170.7 82.3c74.5-20.5 153-25.4 221.3-14.8C544.5 91.3 588.8 195 490.8 299.2c-10.2 10.8-22 21.1-35 30.6L304.9 103.4 114.7 388.9c-65.6-29.4-76.5-90.2-19.1-151.2 20.8-22.2 48.3-41.9 79.5-58.1 20-12.2 39.7-22.6 62-30.7-65.1 20.3-122.7 52.9-161.6 92.9-27.7 28.6-41.4 57.1-41.7 82.9-.5 35.1 23.4 65.1 68.4 83l-34.5 51.7h101.6l22-34.4c22.2 1 45.3 0 68.6-2.7l-22.8 37.1h135.5L340 406.3c18.6-5.3 36.9-11.5 54.5-18.7l45.9 71.8H542L468.6 349c18.5-12.1 35-25.5 48.9-39.8zm-187.6 80.5l-25-40.6-32.7 53.3c-23.4 3.5-46.7 5.1-69.2 4.4l101.9-159.3 78.7 123c-17.2 7.4-35.3 13.9-53.7 19.2z\"},\"child\":[]}]})(props);\n};\nexport function FaAtlassian (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M152.2 236.4c-7.7-8.2-19.7-7.7-24.8 2.8L1.6 490.2c-5 10 2.4 21.7 13.4 21.7h175c5.8.1 11-3.2 13.4-8.4 37.9-77.8 15.1-196.3-51.2-267.1zM244.4 8.1c-122.3 193.4-8.5 348.6 65 495.5 2.5 5.1 7.7 8.4 13.4 8.4H497c11.2 0 18.4-11.8 13.4-21.7 0 0-234.5-470.6-240.4-482.3-5.3-10.6-18.8-10.8-25.6.1z\"},\"child\":[]}]})(props);\n};\nexport function FaAudible (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M640 199.9v54l-320 200L0 254v-54l320 200 320-200.1zm-194.5 72l47.1-29.4c-37.2-55.8-100.7-92.6-172.7-92.6-72 0-135.5 36.7-172.6 92.4h.3c2.5-2.3 5.1-4.5 7.7-6.7 89.7-74.4 219.4-58.1 290.2 36.3zm-220.1 18.8c16.9-11.9 36.5-18.7 57.4-18.7 34.4 0 65.2 18.4 86.4 47.6l45.4-28.4c-20.9-29.9-55.6-49.5-94.8-49.5-38.9 0-73.4 19.4-94.4 49zM103.6 161.1c131.8-104.3 318.2-76.4 417.5 62.1l.7 1 48.8-30.4C517.1 112.1 424.8 58.1 319.9 58.1c-103.5 0-196.6 53.5-250.5 135.6 9.9-10.5 22.7-23.5 34.2-32.6zm467 32.7z\"},\"child\":[]}]})(props);\n};\nexport function FaAutoprefixer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M318.4 16l-161 480h77.5l25.4-81.4h119.5L405 496h77.5L318.4 16zm-40.3 341.9l41.2-130.4h1.5l40.9 130.4h-83.6zM640 405l-10-31.4L462.1 358l19.4 56.5L640 405zm-462.1-47L10 373.7 0 405l158.5 9.4 19.4-56.4z\"},\"child\":[]}]})(props);\n};\nexport function FaAvianex (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M453.1 32h-312c-38.9 0-76.2 31.2-83.3 69.7L1.2 410.3C-5.9 448.8 19.9 480 58.9 480h312c38.9 0 76.2-31.2 83.3-69.7l56.7-308.5c7-38.6-18.8-69.8-57.8-69.8zm-58.2 347.3l-32 13.5-115.4-110c-14.7 10-29.2 19.5-41.7 27.1l22.1 64.2-17.9 12.7-40.6-61-52.4-48.1 15.7-15.4 58 31.1c9.3-10.5 20.8-22.6 32.8-34.9L203 228.9l-68.8-99.8 18.8-28.9 8.9-4.8L265 207.8l4.9 4.5c19.4-18.8 33.8-32.4 33.8-32.4 7.7-6.5 21.5-2.9 30.7 7.9 9 10.5 10.6 24.7 2.7 31.3-1.8 1.3-15.5 11.4-35.3 25.6l4.5 7.3 94.9 119.4-6.3 7.9z\"},\"child\":[]}]})(props);\n};\nexport function FaAviato (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M107.2 283.5l-19-41.8H36.1l-19 41.8H0l62.2-131.4 62.2 131.4h-17.2zm-45-98.1l-19.6 42.5h39.2l-19.6-42.5zm112.7 102.4l-62.2-131.4h17.1l45.1 96 45.1-96h17l-62.1 131.4zm80.6-4.3V156.4H271v127.1h-15.5zm209.1-115.6v115.6h-17.3V167.9h-41.2v-11.5h99.6v11.5h-41.1zM640 218.8c0 9.2-1.7 17.8-5.1 25.8-3.4 8-8.2 15.1-14.2 21.1-6 6-13.1 10.8-21.1 14.2-8 3.4-16.6 5.1-25.8 5.1s-17.8-1.7-25.8-5.1c-8-3.4-15.1-8.2-21.1-14.2-6-6-10.8-13-14.2-21.1-3.4-8-5.1-16.6-5.1-25.8s1.7-17.8 5.1-25.8c3.4-8 8.2-15.1 14.2-21.1 6-6 13-8.4 21.1-11.9 8-3.4 16.6-5.1 25.8-5.1s17.8 1.7 25.8 5.1c8 3.4 15.1 5.8 21.1 11.9 6 6 10.7 13.1 14.2 21.1 3.4 8 5.1 16.6 5.1 25.8zm-15.5 0c0-7.3-1.3-14-3.9-20.3-2.6-6.3-6.2-11.7-10.8-16.3-4.6-4.6-10-8.2-16.2-10.9-6.2-2.7-12.8-4-19.8-4s-13.6 1.3-19.8 4c-6.2 2.7-11.6 6.3-16.2 10.9-4.6 4.6-8.2 10-10.8 16.3-2.6 6.3-3.9 13.1-3.9 20.3 0 7.3 1.3 14 3.9 20.3 2.6 6.3 6.2 11.7 10.8 16.3 4.6 4.6 10 8.2 16.2 10.9 6.2 2.7 12.8 4 19.8 4s13.6-1.3 19.8-4c6.2-2.7 11.6-6.3 16.2-10.9 4.6-4.6 8.2-10 10.8-16.3 2.6-6.3 3.9-13.1 3.9-20.3zm-94.8 96.7v-6.3l88.9-10-242.9 13.4c.6-2.2 1.1-4.6 1.4-7.2.3-2 .5-4.2.6-6.5l64.8-8.1-64.9 1.9c0-.4-.1-.7-.1-1.1-2.8-17.2-25.5-23.7-25.5-23.7l-1.1-26.3h23.8l19 41.8h17.1L348.6 152l-62.2 131.4h17.1l19-41.8h23.6L345 268s-22.7 6.5-25.5 23.7c-.1.3-.1.7-.1 1.1l-64.9-1.9 64.8 8.1c.1 2.3.3 4.4.6 6.5.3 2.6.8 5 1.4 7.2L78.4 299.2l88.9 10v6.3c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4 0-6.2-4.6-11.3-10.5-12.2v-5.8l80.3 9v5.4c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-4.9l28.4 3.2v23.7h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9V323l38.3 4.3c8.1 11.4 19 13.6 19 13.6l-.1 6.7-5.1.2-.1 12.1h4.1l.1-5h5.2l.1 5h4.1l-.1-12.1-5.1-.2-.1-6.7s10.9-2.1 19-13.6l38.3-4.3v23.2h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9v-23.7l28.4-3.2v4.9c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-5.4l80.3-9v5.8c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4-.2-6.3-4.7-11.4-10.7-12.3zm-200.8-87.6l19.6-42.5 19.6 42.5h-17.9l-1.7-40.3-1.7 40.3h-17.9z\"},\"child\":[]}]})(props);\n};\nexport function FaAws (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M180.41 203.01c-.72 22.65 10.6 32.68 10.88 39.05a8.164 8.164 0 0 1-4.1 6.27l-12.8 8.96a10.66 10.66 0 0 1-5.63 1.92c-.43-.02-8.19 1.83-20.48-25.61a78.608 78.608 0 0 1-62.61 29.45c-16.28.89-60.4-9.24-58.13-56.21-1.59-38.28 34.06-62.06 70.93-60.05 7.1.02 21.6.37 46.99 6.27v-15.62c2.69-26.46-14.7-46.99-44.81-43.91-2.4.01-19.4-.5-45.84 10.11-7.36 3.38-8.3 2.82-10.75 2.82-7.41 0-4.36-21.48-2.94-24.2 5.21-6.4 35.86-18.35 65.94-18.18a76.857 76.857 0 0 1 55.69 17.28 70.285 70.285 0 0 1 17.67 52.36l-.01 69.29zM93.99 235.4c32.43-.47 46.16-19.97 49.29-30.47 2.46-10.05 2.05-16.41 2.05-27.4-9.67-2.32-23.59-4.85-39.56-4.87-15.15-1.14-42.82 5.63-41.74 32.26-1.24 16.79 11.12 31.4 29.96 30.48zm170.92 23.05c-7.86.72-11.52-4.86-12.68-10.37l-49.8-164.65c-.97-2.78-1.61-5.65-1.92-8.58a4.61 4.61 0 0 1 3.86-5.25c.24-.04-2.13 0 22.25 0 8.78-.88 11.64 6.03 12.55 10.37l35.72 140.83 33.16-140.83c.53-3.22 2.94-11.07 12.8-10.24h17.16c2.17-.18 11.11-.5 12.68 10.37l33.42 142.63L420.98 80.1c.48-2.18 2.72-11.37 12.68-10.37h19.72c.85-.13 6.15-.81 5.25 8.58-.43 1.85 3.41-10.66-52.75 169.9-1.15 5.51-4.82 11.09-12.68 10.37h-18.69c-10.94 1.15-12.51-9.66-12.68-10.75L328.67 110.7l-32.78 136.99c-.16 1.09-1.73 11.9-12.68 10.75h-18.3zm273.48 5.63c-5.88.01-33.92-.3-57.36-12.29a12.802 12.802 0 0 1-7.81-11.91v-10.75c0-8.45 6.2-6.9 8.83-5.89 10.04 4.06 16.48 7.14 28.81 9.6 36.65 7.53 52.77-2.3 56.72-4.48 13.15-7.81 14.19-25.68 5.25-34.95-10.48-8.79-15.48-9.12-53.13-21-4.64-1.29-43.7-13.61-43.79-52.36-.61-28.24 25.05-56.18 69.52-55.95 12.67-.01 46.43 4.13 55.57 15.62 1.35 2.09 2.02 4.55 1.92 7.04v10.11c0 4.44-1.62 6.66-4.87 6.66-7.71-.86-21.39-11.17-49.16-10.75-6.89-.36-39.89.91-38.41 24.97-.43 18.96 26.61 26.07 29.7 26.89 36.46 10.97 48.65 12.79 63.12 29.58 17.14 22.25 7.9 48.3 4.35 55.44-19.08 37.49-68.42 34.44-69.26 34.42zm40.2 104.86c-70.03 51.72-171.69 79.25-258.49 79.25A469.127 469.127 0 0 1 2.83 327.46c-6.53-5.89-.77-13.96 7.17-9.47a637.37 637.37 0 0 0 316.88 84.12 630.22 630.22 0 0 0 241.59-49.55c11.78-5 21.77 7.8 10.12 16.38zm29.19-33.29c-8.96-11.52-59.28-5.38-81.81-2.69-6.79.77-7.94-5.12-1.79-9.47 40.07-28.17 105.88-20.1 113.44-10.63 7.55 9.47-2.05 75.41-39.56 106.91-5.76 4.87-11.27 2.3-8.71-4.1 8.44-21.25 27.39-68.49 18.43-80.02z\"},\"child\":[]}]})(props);\n};\nexport function FaBandcamp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm48.2,326.1h-181L207.9,178h181Z\"},\"child\":[]}]})(props);\n};\nexport function FaBattleNet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448.61 225.62c26.87.18 35.57-7.43 38.92-12.37 12.47-16.32-7.06-47.6-52.85-71.33 17.76-33.58 30.11-63.68 36.34-85.3 3.38-11.83 1.09-19 .45-20.25-1.72 10.52-15.85 48.46-48.2 100.05-25-11.22-56.52-20.1-93.77-23.8-8.94-16.94-34.88-63.86-60.48-88.93C252.18 7.14 238.7 1.07 228.18.22h-.05c-13.83-1.55-22.67 5.85-27.4 11-17.2 18.53-24.33 48.87-25 84.07-7.24-12.35-17.17-24.63-28.5-25.93h-.18c-20.66-3.48-38.39 29.22-36 81.29-38.36 1.38-71 5.75-93 11.23-9.9 2.45-16.22 7.27-17.76 9.72 1-.38 22.4-9.22 111.56-9.22 5.22 53 29.75 101.82 26 93.19-9.73 15.4-38.24 62.36-47.31 97.7-5.87 22.88-4.37 37.61.15 47.14 5.57 12.75 16.41 16.72 23.2 18.26 25 5.71 55.38-3.63 86.7-21.14-7.53 12.84-13.9 28.51-9.06 39.34 7.31 19.65 44.49 18.66 88.44-9.45 20.18 32.18 40.07 57.94 55.7 74.12a39.79 39.79 0 0 0 8.75 7.09c5.14 3.21 8.58 3.37 8.58 3.37-8.24-6.75-34-38-62.54-91.78 22.22-16 45.65-38.87 67.47-69.27 122.82 4.6 143.29-24.76 148-31.64 14.67-19.88 3.43-57.44-57.32-93.69zm-77.85 106.22c23.81-37.71 30.34-67.77 29.45-92.33 27.86 17.57 47.18 37.58 49.06 58.83 1.14 12.93-8.1 29.12-78.51 33.5zM216.9 387.69c9.76-6.23 19.53-13.12 29.2-20.49 6.68 13.33 13.6 26.1 20.6 38.19-40.6 21.86-68.84 12.76-49.8-17.7zm215-171.35c-10.29-5.34-21.16-10.34-32.38-15.05a722.459 722.459 0 0 0 22.74-36.9c39.06 24.1 45.9 53.18 9.64 51.95zM279.18 398c-5.51-11.35-11-23.5-16.5-36.44 43.25 1.27 62.42-18.73 63.28-20.41 0 .07-25 15.64-62.53 12.25a718.78 718.78 0 0 0 85.06-84q13.06-15.31 24.93-31.11c-.36-.29-1.54-3-16.51-12-51.7 60.27-102.34 98-132.75 115.92-20.59-11.18-40.84-31.78-55.71-61.49-20-39.92-30-82.39-31.57-116.07 12.3.91 25.27 2.17 38.85 3.88-22.29 36.8-14.39 63-13.47 64.23 0-.07-.95-29.17 20.14-59.57a695.23 695.23 0 0 0 44.67 152.84c.93-.38 1.84.88 18.67-8.25-26.33-74.47-33.76-138.17-34-173.43 20-12.42 48.18-19.8 81.63-17.81 44.57 2.67 86.36 15.25 116.32 30.71q-10.69 15.66-23.33 32.47C365.63 152 339.1 145.84 337.5 146c.11 0 25.9 14.07 41.52 47.22a717.63 717.63 0 0 0-115.34-31.71 646.608 646.608 0 0 0-39.39-6.05c-.07.45-1.81 1.85-2.16 20.33C300 190.28 358.78 215.68 389.36 233c.74 23.55-6.95 51.61-25.41 79.57-24.6 37.31-56.39 67.23-84.77 85.43zm27.4-287c-44.56-1.66-73.58 7.43-94.69 20.67 2-52.3 21.31-76.38 38.21-75.28C267 52.15 305 108.55 306.58 111zm-130.65 3.1c.48 12.11 1.59 24.62 3.21 37.28-14.55-.85-28.74-1.25-42.4-1.26-.08 3.24-.12-51 24.67-49.59h.09c5.76 1.09 10.63 6.88 14.43 13.57zm-28.06 162c20.76 39.7 43.3 60.57 65.25 72.31-46.79 24.76-77.53 20-84.92 4.51-.2-.21-11.13-15.3 19.67-76.81zm210.06 74.8\"},\"child\":[]}]})(props);\n};\nexport function FaBehanceSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M186.5 293c0 19.3-14 25.4-31.2 25.4h-45.1v-52.9h46c18.6.1 30.3 7.8 30.3 27.5zm-7.7-82.3c0-17.7-13.7-21.9-28.9-21.9h-39.6v44.8H153c15.1 0 25.8-6.6 25.8-22.9zm132.3 23.2c-18.3 0-30.5 11.4-31.7 29.7h62.2c-1.7-18.5-11.3-29.7-30.5-29.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM271.7 185h77.8v-18.9h-77.8V185zm-43 110.3c0-24.1-11.4-44.9-35-51.6 17.2-8.2 26.2-17.7 26.2-37 0-38.2-28.5-47.5-61.4-47.5H68v192h93.1c34.9-.2 67.6-16.9 67.6-55.9zM380 280.5c0-41.1-24.1-75.4-67.6-75.4-42.4 0-71.1 31.8-71.1 73.6 0 43.3 27.3 73 71.1 73 33.2 0 54.7-14.9 65.1-46.8h-33.7c-3.7 11.9-18.6 18.1-30.2 18.1-22.4 0-34.1-13.1-34.1-35.3h100.2c.1-2.3.3-4.8.3-7.2z\"},\"child\":[]}]})(props);\n};\nexport function FaBehance (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M232 237.2c31.8-15.2 48.4-38.2 48.4-74 0-70.6-52.6-87.8-113.3-87.8H0v354.4h171.8c64.4 0 124.9-30.9 124.9-102.9 0-44.5-21.1-77.4-64.7-89.7zM77.9 135.9H151c28.1 0 53.4 7.9 53.4 40.5 0 30.1-19.7 42.2-47.5 42.2h-79v-82.7zm83.3 233.7H77.9V272h84.9c34.3 0 56 14.3 56 50.6 0 35.8-25.9 47-57.6 47zm358.5-240.7H376V94h143.7v34.9zM576 305.2c0-75.9-44.4-139.2-124.9-139.2-78.2 0-131.3 58.8-131.3 135.8 0 79.9 50.3 134.7 131.3 134.7 61.3 0 101-27.6 120.1-86.3H509c-6.7 21.9-34.3 33.5-55.7 33.5-41.3 0-63-24.2-63-65.3h185.1c.3-4.2.6-8.7.6-13.2zM390.4 274c2.3-33.7 24.7-54.8 58.5-54.8 35.4 0 53.2 20.8 56.2 54.8H390.4z\"},\"child\":[]}]})(props);\n};\nexport function FaBimobject (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 32H32C14.4 32 0 46.4 0 64v384c0 17.6 14.4 32 32 32h384c17.6 0 32-14.4 32-32V64c0-17.6-14.4-32-32-32zm-64 257.4c0 49.4-11.4 82.6-103.8 82.6h-16.9c-44.1 0-62.4-14.9-70.4-38.8h-.9V368H96V136h64v74.7h1.1c4.6-30.5 39.7-38.8 69.7-38.8h17.3c92.4 0 103.8 33.1 103.8 82.5v35zm-64-28.9v22.9c0 21.7-3.4 33.8-38.4 33.8h-45.3c-28.9 0-44.1-6.5-44.1-35.7v-19c0-29.3 15.2-35.7 44.1-35.7h45.3c35-.2 38.4 12 38.4 33.7z\"},\"child\":[]}]})(props);\n};\nexport function FaBitbucket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M22.2 32A16 16 0 0 0 6 47.8a26.35 26.35 0 0 0 .2 2.8l67.9 412.1a21.77 21.77 0 0 0 21.3 18.2h325.7a16 16 0 0 0 16-13.4L505 50.7a16 16 0 0 0-13.2-18.3 24.58 24.58 0 0 0-2.8-.2L22.2 32zm285.9 297.8h-104l-28.1-147h157.3l-25.2 147z\"},\"child\":[]}]})(props);\n};\nexport function FaBitcoin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zm-141.651-35.33c4.937-32.999-20.191-50.739-54.55-62.573l11.146-44.702-27.213-6.781-10.851 43.524c-7.154-1.783-14.502-3.464-21.803-5.13l10.929-43.81-27.198-6.781-11.153 44.686c-5.922-1.349-11.735-2.682-17.377-4.084l.031-.14-37.53-9.37-7.239 29.062s20.191 4.627 19.765 4.913c11.022 2.751 13.014 10.044 12.68 15.825l-12.696 50.925c.76.194 1.744.473 2.829.907-.907-.225-1.876-.473-2.876-.713l-17.796 71.338c-1.349 3.348-4.767 8.37-12.471 6.464.271.395-19.78-4.937-19.78-4.937l-13.51 31.147 35.414 8.827c6.588 1.651 13.045 3.379 19.4 5.006l-11.262 45.213 27.182 6.781 11.153-44.733a1038.209 1038.209 0 0 0 21.687 5.627l-11.115 44.523 27.213 6.781 11.262-45.128c46.404 8.781 81.299 5.239 95.986-36.727 11.836-33.79-.589-53.281-25.004-65.991 17.78-4.098 31.174-15.792 34.747-39.949zm-62.177 87.179c-8.41 33.79-65.308 15.523-83.755 10.943l14.944-59.899c18.446 4.603 77.6 13.717 68.811 48.956zm8.417-87.667c-7.673 30.736-55.031 15.12-70.393 11.292l13.548-54.327c15.363 3.828 64.836 10.973 56.845 43.035z\"},\"child\":[]}]})(props);\n};\nexport function FaBity (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M78.4 67.2C173.8-22 324.5-24 421.5 71c14.3 14.1-6.4 37.1-22.4 21.5-84.8-82.4-215.8-80.3-298.9-3.2-16.3 15.1-36.5-8.3-21.8-22.1zm98.9 418.6c19.3 5.7 29.3-23.6 7.9-30C73 421.9 9.4 306.1 37.7 194.8c5-19.6-24.9-28.1-30.2-7.1-32.1 127.4 41.1 259.8 169.8 298.1zm148.1-2c121.9-40.2 192.9-166.9 164.4-291-4.5-19.7-34.9-13.8-30 7.9 24.2 107.7-37.1 217.9-143.2 253.4-21.2 7-10.4 36 8.8 29.7zm-62.9-79l.2-71.8c0-8.2-6.6-14.8-14.8-14.8-8.2 0-14.8 6.7-14.8 14.8l-.2 71.8c0 8.2 6.6 14.8 14.8 14.8s14.8-6.6 14.8-14.8zm71-269c2.1 90.9 4.7 131.9-85.5 132.5-92.5-.7-86.9-44.3-85.5-132.5 0-21.8-32.5-19.6-32.5 0v71.6c0 69.3 60.7 90.9 118 90.1 57.3.8 118-20.8 118-90.1v-71.6c0-19.6-32.5-21.8-32.5 0z\"},\"child\":[]}]})(props);\n};\nexport function FaBlackTie (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v448h448V32H0zm316.5 325.2L224 445.9l-92.5-88.7 64.5-184-64.5-86.6h184.9L252 173.2l64.5 184z\"},\"child\":[]}]})(props);\n};\nexport function FaBlackberry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M166 116.9c0 23.4-16.4 49.1-72.5 49.1H23.4l21-88.8h67.8c42.1 0 53.8 23.3 53.8 39.7zm126.2-39.7h-67.8L205.7 166h70.1c53.8 0 70.1-25.7 70.1-49.1.1-16.4-11.6-39.7-53.7-39.7zM88.8 208.1H21L0 296.9h70.1c56.1 0 72.5-23.4 72.5-49.1 0-16.3-11.7-39.7-53.8-39.7zm180.1 0h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1 0-16.3-11.7-39.7-53.7-39.7zm189.3-53.8h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7zm-28 137.9h-67.8L343.7 381h70.1c56.1 0 70.1-23.4 70.1-49.1 0-16.3-11.6-39.7-53.7-39.7zM240.8 346H173l-18.7 88.8h70.1c56.1 0 70.1-25.7 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7z\"},\"child\":[]}]})(props);\n};\nexport function FaBloggerB (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M446.6 222.7c-1.8-8-6.8-15.4-12.5-18.5-1.8-1-13-2.2-25-2.7-20.1-.9-22.3-1.3-28.7-5-10.1-5.9-12.8-12.3-12.9-29.5-.1-33-13.8-63.7-40.9-91.3-19.3-19.7-40.9-33-65.5-40.5-5.9-1.8-19.1-2.4-63.3-2.9-69.4-.8-84.8.6-108.4 10C45.9 59.5 14.7 96.1 3.3 142.9 1.2 151.7.7 165.8.2 246.8c-.6 101.5.1 116.4 6.4 136.5 15.6 49.6 59.9 86.3 104.4 94.3 14.8 2.7 197.3 3.3 216 .8 32.5-4.4 58-17.5 81.9-41.9 17.3-17.7 28.1-36.8 35.2-62.1 4.9-17.6 4.5-142.8 2.5-151.7zm-322.1-63.6c7.8-7.9 10-8.2 58.8-8.2 43.9 0 45.4.1 51.8 3.4 9.3 4.7 13.4 11.3 13.4 21.9 0 9.5-3.8 16.2-12.3 21.6-4.6 2.9-7.3 3.1-50.3 3.3-26.5.2-47.7-.4-50.8-1.2-16.6-4.7-22.8-28.5-10.6-40.8zm191.8 199.8l-14.9 2.4-77.5.9c-68.1.8-87.3-.4-90.9-2-7.1-3.1-13.8-11.7-14.9-19.4-1.1-7.3 2.6-17.3 8.2-22.4 7.1-6.4 10.2-6.6 97.3-6.7 89.6-.1 89.1-.1 97.6 7.8 12.1 11.3 9.5 31.2-4.9 39.4z\"},\"child\":[]}]})(props);\n};\nexport function FaBlogger (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M162.4 196c4.8-4.9 6.2-5.1 36.4-5.1 27.2 0 28.1.1 32.1 2.1 5.8 2.9 8.3 7 8.3 13.6 0 5.9-2.4 10-7.6 13.4-2.8 1.8-4.5 1.9-31.1 2.1-16.4.1-29.5-.2-31.5-.8-10.3-2.9-14.1-17.7-6.6-25.3zm61.4 94.5c-53.9 0-55.8.2-60.2 4.1-3.5 3.1-5.7 9.4-5.1 13.9.7 4.7 4.8 10.1 9.2 12 2.2 1 14.1 1.7 56.3 1.2l47.9-.6 9.2-1.5c9-5.1 10.5-17.4 3.1-24.4-5.3-4.7-5-4.7-60.4-4.7zm223.4 130.1c-3.5 28.4-23 50.4-51.1 57.5-7.2 1.8-9.7 1.9-172.9 1.8-157.8 0-165.9-.1-172-1.8-8.4-2.2-15.6-5.5-22.3-10-5.6-3.8-13.9-11.8-17-16.4-3.8-5.6-8.2-15.3-10-22C.1 423 0 420.3 0 256.3 0 93.2 0 89.7 1.8 82.6 8.1 57.9 27.7 39 53 33.4c7.3-1.6 332.1-1.9 340-.3 21.2 4.3 37.9 17.1 47.6 36.4 7.7 15.3 7-1.5 7.3 180.6.2 115.8 0 164.5-.7 170.5zm-85.4-185.2c-1.1-5-4.2-9.6-7.7-11.5-1.1-.6-8-1.3-15.5-1.7-12.4-.6-13.8-.8-17.8-3.1-6.2-3.6-7.9-7.6-8-18.3 0-20.4-8.5-39.4-25.3-56.5-12-12.2-25.3-20.5-40.6-25.1-3.6-1.1-11.8-1.5-39.2-1.8-42.9-.5-52.5.4-67.1 6.2-27 10.7-46.3 33.4-53.4 62.4-1.3 5.4-1.6 14.2-1.9 64.3-.4 62.8 0 72.1 4 84.5 9.7 30.7 37.1 53.4 64.6 58.4 9.2 1.7 122.2 2.1 133.7.5 20.1-2.7 35.9-10.8 50.7-25.9 10.7-10.9 17.4-22.8 21.8-38.5 3.2-10.9 2.9-88.4 1.7-93.9z\"},\"child\":[]}]})(props);\n};\nexport function FaBluetoothB (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M196.48 260.023l92.626-103.333L143.125 0v206.33l-86.111-86.111-31.406 31.405 108.061 108.399L25.608 368.422l31.406 31.405 86.111-86.111L145.84 512l148.552-148.644-97.912-103.333zm40.86-102.996l-49.977 49.978-.338-100.295 50.315 50.317zM187.363 313.04l49.977 49.978-50.315 50.316.338-100.294z\"},\"child\":[]}]})(props);\n};\nexport function FaBluetooth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M292.6 171.1L249.7 214l-.3-86 43.2 43.1m-43.2 219.8l43.1-43.1-42.9-42.9-.2 86zM416 259.4C416 465 344.1 512 230.9 512S32 465 32 259.4 115.4 0 228.6 0 416 53.9 416 259.4zm-158.5 0l79.4-88.6L211.8 36.5v176.9L138 139.6l-27 26.9 92.7 93-92.7 93 26.9 26.9 73.8-73.8 2.3 170 127.4-127.5-83.9-88.7z\"},\"child\":[]}]})(props);\n};\nexport function FaBootstrap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M333.5,201.4c0-22.1-15.6-34.3-43-34.3h-50.4v71.2h42.5C315.4,238.2,333.5,225,333.5,201.4z M517,188.6 c-9.5-30.9-10.9-68.8-9.8-98.1c1.1-30.5-22.7-58.5-54.7-58.5H123.7c-32.1,0-55.8,28.1-54.7,58.5c1,29.3-0.3,67.2-9.8,98.1 c-9.6,31-25.7,50.6-52.2,53.1v28.5c26.4,2.5,42.6,22.1,52.2,53.1c9.5,30.9,10.9,68.8,9.8,98.1c-1.1,30.5,22.7,58.5,54.7,58.5h328.7 c32.1,0,55.8-28.1,54.7-58.5c-1-29.3,0.3-67.2,9.8-98.1c9.6-31,25.7-50.6,52.1-53.1v-28.5C542.7,239.2,526.5,219.6,517,188.6z M300.2,375.1h-97.9V136.8h97.4c43.3,0,71.7,23.4,71.7,59.4c0,25.3-19.1,47.9-43.5,51.8v1.3c33.2,3.6,55.5,26.6,55.5,58.3 C383.4,349.7,352.1,375.1,300.2,375.1z M290.2,266.4h-50.1v78.4h52.3c34.2,0,52.3-13.7,52.3-39.5 C344.7,279.6,326.1,266.4,290.2,266.4z\"},\"child\":[]}]})(props);\n};\nexport function FaBtc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M310.204 242.638c27.73-14.18 45.377-39.39 41.28-81.3-5.358-57.351-52.458-76.573-114.85-81.929V0h-48.528v77.203c-12.605 0-25.525.315-38.444.63V0h-48.528v79.409c-17.842.539-38.622.276-97.37 0v51.678c38.314-.678 58.417-3.14 63.023 21.427v217.429c-2.925 19.492-18.524 16.685-53.255 16.071L3.765 443.68c88.481 0 97.37.315 97.37.315V512h48.528v-67.06c13.234.315 26.154.315 38.444.315V512h48.528v-68.005c81.299-4.412 135.647-24.894 142.895-101.467 5.671-61.446-23.32-88.862-69.326-99.89zM150.608 134.553c27.415 0 113.126-8.507 113.126 48.528 0 54.515-85.71 48.212-113.126 48.212v-96.74zm0 251.776V279.821c32.772 0 133.127-9.138 133.127 53.255-.001 60.186-100.355 53.253-133.127 53.253z\"},\"child\":[]}]})(props);\n};\nexport function FaBuffer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M427.84 380.67l-196.5 97.82a18.6 18.6 0 0 1-14.67 0L20.16 380.67c-4-2-4-5.28 0-7.29L67.22 350a18.65 18.65 0 0 1 14.69 0l134.76 67a18.51 18.51 0 0 0 14.67 0l134.76-67a18.62 18.62 0 0 1 14.68 0l47.06 23.43c4.05 1.96 4.05 5.24 0 7.24zm0-136.53l-47.06-23.43a18.62 18.62 0 0 0-14.68 0l-134.76 67.08a18.68 18.68 0 0 1-14.67 0L81.91 220.71a18.65 18.65 0 0 0-14.69 0l-47.06 23.43c-4 2-4 5.29 0 7.31l196.51 97.8a18.6 18.6 0 0 0 14.67 0l196.5-97.8c4.05-2.02 4.05-5.3 0-7.31zM20.16 130.42l196.5 90.29a20.08 20.08 0 0 0 14.67 0l196.51-90.29c4-1.86 4-4.89 0-6.74L231.33 33.4a19.88 19.88 0 0 0-14.67 0l-196.5 90.28c-4.05 1.85-4.05 4.88 0 6.74z\"},\"child\":[]}]})(props);\n};\nexport function FaBuromobelexperte (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v128h128V32H0zm120 120H8V40h112v112zm40-120v128h128V32H160zm120 120H168V40h112v112zm40-120v128h128V32H320zm120 120H328V40h112v112zM0 192v128h128V192H0zm120 120H8V200h112v112zm40-120v128h128V192H160zm120 120H168V200h112v112zm40-120v128h128V192H320zm120 120H328V200h112v112zM0 352v128h128V352H0zm120 120H8V360h112v112zm40-120v128h128V352H160zm120 120H168V360h112v112zm40-120v128h128V352H320z\"},\"child\":[]}]})(props);\n};\nexport function FaBuyNLarge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 32C133.27 32 7.79 132.32 7.79 256S133.27 480 288 480s280.21-100.32 280.21-224S442.73 32 288 32zm-85.39 357.19L64.1 390.55l77.25-290.74h133.44c63.15 0 84.93 28.65 78 72.84a60.24 60.24 0 0 1-1.5 6.85 77.39 77.39 0 0 0-17.21-1.93c-42.35 0-76.69 33.88-76.69 75.65 0 37.14 27.14 68 62.93 74.45-18.24 37.16-56.16 60.92-117.71 61.52zM358 207.11h32l-22.16 90.31h-35.41l-11.19-35.63-7.83 35.63h-37.83l26.63-90.31h31.34l15 36.75zm145.86 182.08H306.79L322.63 328a78.8 78.8 0 0 0 11.47.83c42.34 0 76.69-33.87 76.69-75.65 0-32.65-21-60.46-50.38-71.06l21.33-82.35h92.5l-53.05 205.36h103.87zM211.7 269.39H187l-13.8 56.47h24.7c16.14 0 32.11-3.18 37.94-26.65 5.56-22.31-7.99-29.82-24.14-29.82zM233 170h-21.34L200 217.71h21.37c18 0 35.38-14.64 39.21-30.14C265.23 168.71 251.07 170 233 170z\"},\"child\":[]}]})(props);\n};\nexport function FaBuysellads (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 150.7l42.9 160.7h-85.8L224 150.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-65.3 325.3l-94.5-298.7H159.8L65.3 405.3H156l111.7-91.6 24.2 91.6h90.8z\"},\"child\":[]}]})(props);\n};\nexport function FaCanadianMapleLeaf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M383.8 351.7c2.5-2.5 105.2-92.4 105.2-92.4l-17.5-7.5c-10-4.9-7.4-11.5-5-17.4 2.4-7.6 20.1-67.3 20.1-67.3s-47.7 10-57.7 12.5c-7.5 2.4-10-2.5-12.5-7.5s-15-32.4-15-32.4-52.6 59.9-55.1 62.3c-10 7.5-20.1 0-17.6-10 0-10 27.6-129.6 27.6-129.6s-30.1 17.4-40.1 22.4c-7.5 5-12.6 5-17.6-5C293.5 72.3 255.9 0 255.9 0s-37.5 72.3-42.5 79.8c-5 10-10 10-17.6 5-10-5-40.1-22.4-40.1-22.4S183.3 182 183.3 192c2.5 10-7.5 17.5-17.6 10-2.5-2.5-55.1-62.3-55.1-62.3S98.1 167 95.6 172s-5 9.9-12.5 7.5C73 177 25.4 167 25.4 167s17.6 59.7 20.1 67.3c2.4 6 5 12.5-5 17.4L23 259.3s102.6 89.9 105.2 92.4c5.1 5 10 7.5 5.1 22.5-5.1 15-10.1 35.1-10.1 35.1s95.2-20.1 105.3-22.6c8.7-.9 18.3 2.5 18.3 12.5S241 512 241 512h30s-5.8-102.7-5.8-112.8 9.5-13.4 18.4-12.5c10 2.5 105.2 22.6 105.2 22.6s-5-20.1-10-35.1 0-17.5 5-22.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCcAmazonPay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M124.7 201.8c.1-11.8 0-23.5 0-35.3v-35.3c0-1.3.4-2 1.4-2.7 11.5-8 24.1-12.1 38.2-11.1 12.5.9 22.7 7 28.1 21.7 3.3 8.9 4.1 18.2 4.1 27.7 0 8.7-.7 17.3-3.4 25.6-5.7 17.8-18.7 24.7-35.7 23.9-11.7-.5-21.9-5-31.4-11.7-.9-.8-1.4-1.6-1.3-2.8zm154.9 14.6c4.6 1.8 9.3 2 14.1 1.5 11.6-1.2 21.9-5.7 31.3-12.5.9-.6 1.3-1.3 1.3-2.5-.1-3.9 0-7.9 0-11.8 0-4-.1-8 0-12 0-1.4-.4-2-1.8-2.2-7-.9-13.9-2.2-20.9-2.9-7-.6-14-.3-20.8 1.9-6.7 2.2-11.7 6.2-13.7 13.1-1.6 5.4-1.6 10.8.1 16.2 1.6 5.5 5.2 9.2 10.4 11.2zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zm-207.5 23.9c.4 1.7.9 3.4 1.6 5.1 16.5 40.6 32.9 81.3 49.5 121.9 1.4 3.5 1.7 6.4.2 9.9-2.8 6.2-4.9 12.6-7.8 18.7-2.6 5.5-6.7 9.5-12.7 11.2-4.2 1.1-8.5 1.3-12.9.9-2.1-.2-4.2-.7-6.3-.8-2.8-.2-4.2 1.1-4.3 4-.1 2.8-.1 5.6 0 8.3.1 4.6 1.6 6.7 6.2 7.5 4.7.8 9.4 1.6 14.2 1.7 14.3.3 25.7-5.4 33.1-17.9 2.9-4.9 5.6-10.1 7.7-15.4 19.8-50.1 39.5-100.3 59.2-150.5.6-1.5 1.1-3 1.3-4.6.4-2.4-.7-3.6-3.1-3.7-5.6-.1-11.1 0-16.7 0-3.1 0-5.3 1.4-6.4 4.3-.4 1.1-.9 2.3-1.3 3.4l-29.1 83.7c-2.1 6.1-4.2 12.1-6.5 18.6-.4-.9-.6-1.4-.8-1.9-10.8-29.9-21.6-59.9-32.4-89.8-1.7-4.7-3.5-9.5-5.3-14.2-.9-2.5-2.7-4-5.4-4-6.4-.1-12.8-.2-19.2-.1-2.2 0-3.3 1.6-2.8 3.7zM242.4 206c1.7 11.7 7.6 20.8 18 26.6 9.9 5.5 20.7 6.2 31.7 4.6 12.7-1.9 23.9-7.3 33.8-15.5.4-.3.8-.6 1.4-1 .5 3.2.9 6.2 1.5 9.2.5 2.6 2.1 4.3 4.5 4.4 4.6.1 9.1.1 13.7 0 2.3-.1 3.8-1.6 4-3.9.1-.8.1-1.6.1-2.3v-88.8c0-3.6-.2-7.2-.7-10.8-1.6-10.8-6.2-19.7-15.9-25.4-5.6-3.3-11.8-5-18.2-5.9-3-.4-6-.7-9.1-1.1h-10c-.8.1-1.6.3-2.5.3-8.2.4-16.3 1.4-24.2 3.5-5.1 1.3-10 3.2-15 4.9-3 1-4.5 3.2-4.4 6.5.1 2.8-.1 5.6 0 8.3.1 4.1 1.8 5.2 5.7 4.1 6.5-1.7 13.1-3.5 19.7-4.8 10.3-1.9 20.7-2.7 31.1-1.2 5.4.8 10.5 2.4 14.1 7 3.1 4 4.2 8.8 4.4 13.7.3 6.9.2 13.9.3 20.8 0 .4-.1.7-.2 1.2-.4 0-.8 0-1.1-.1-8.8-2.1-17.7-3.6-26.8-4.1-9.5-.5-18.9.1-27.9 3.2-10.8 3.8-19.5 10.3-24.6 20.8-4.1 8.3-4.6 17-3.4 25.8zM98.7 106.9v175.3c0 .8 0 1.7.1 2.5.2 2.5 1.7 4.1 4.1 4.2 5.9.1 11.8.1 17.7 0 2.5 0 4-1.7 4.1-4.1.1-.8.1-1.7.1-2.5v-60.7c.9.7 1.4 1.2 1.9 1.6 15 12.5 32.2 16.6 51.1 12.9 17.1-3.4 28.9-13.9 36.7-29.2 5.8-11.6 8.3-24.1 8.7-37 .5-14.3-1-28.4-6.8-41.7-7.1-16.4-18.9-27.3-36.7-30.9-2.7-.6-5.5-.8-8.2-1.2h-7c-1.2.2-2.4.3-3.6.5-11.7 1.4-22.3 5.8-31.8 12.7-2 1.4-3.9 3-5.9 4.5-.1-.5-.3-.8-.4-1.2-.4-2.3-.7-4.6-1.1-6.9-.6-3.9-2.5-5.5-6.4-5.6h-9.7c-5.9-.1-6.9 1-6.9 6.8zM493.6 339c-2.7-.7-5.1 0-7.6 1-43.9 18.4-89.5 30.2-136.8 35.8-14.5 1.7-29.1 2.8-43.7 3.2-26.6.7-53.2-.8-79.6-4.3-17.8-2.4-35.5-5.7-53-9.9-37-8.9-72.7-21.7-106.7-38.8-8.8-4.4-17.4-9.3-26.1-14-3.8-2.1-6.2-1.5-8.2 2.1v1.7c1.2 1.6 2.2 3.4 3.7 4.8 36 32.2 76.6 56.5 122 72.9 21.9 7.9 44.4 13.7 67.3 17.5 14 2.3 28 3.8 42.2 4.5 3 .1 6 .2 9 .4.7 0 1.4.2 2.1.3h17.7c.7-.1 1.4-.3 2.1-.3 14.9-.4 29.8-1.8 44.6-4 21.4-3.2 42.4-8.1 62.9-14.7 29.6-9.6 57.7-22.4 83.4-40.1 2.8-1.9 5.7-3.8 8-6.2 4.3-4.4 2.3-10.4-3.3-11.9zm50.4-27.7c-.8-4.2-4-5.8-7.6-7-5.7-1.9-11.6-2.8-17.6-3.3-11-.9-22-.4-32.8 1.6-12 2.2-23.4 6.1-33.5 13.1-1.2.8-2.4 1.8-3.1 3-.6.9-.7 2.3-.5 3.4.3 1.3 1.7 1.6 3 1.5.6 0 1.2 0 1.8-.1l19.5-2.1c9.6-.9 19.2-1.5 28.8-.8 4.1.3 8.1 1.2 12 2.2 4.3 1.1 6.2 4.4 6.4 8.7.3 6.7-1.2 13.1-2.9 19.5-3.5 12.9-8.3 25.4-13.3 37.8-.3.8-.7 1.7-.8 2.5-.4 2.5 1 4 3.4 3.5 1.4-.3 3-1.1 4-2.1 3.7-3.6 7.5-7.2 10.6-11.2 10.7-13.8 17-29.6 20.7-46.6.7-3 1.2-6.1 1.7-9.1.2-4.7.2-9.6.2-14.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCcAmex (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M325.1 167.8c0-16.4-14.1-18.4-27.4-18.4l-39.1-.3v69.3H275v-25.1h18c18.4 0 14.5 10.3 14.8 25.1h16.6v-13.5c0-9.2-1.5-15.1-11-18.4 7.4-3 11.8-10.7 11.7-18.7zm-29.4 11.3H275v-15.3h21c5.1 0 10.7 1 10.7 7.4 0 6.6-5.3 7.9-11 7.9zM279 268.6h-52.7l-21 22.8-20.5-22.8h-66.5l-.1 69.3h65.4l21.3-23 20.4 23h32.2l.1-23.3c18.9 0 49.3 4.6 49.3-23.3 0-17.3-12.3-22.7-27.9-22.7zm-103.8 54.7h-40.6v-13.8h36.3v-14.1h-36.3v-12.5h41.7l17.9 20.2zm65.8 8.2l-25.3-28.1L241 276zm37.8-31h-21.2v-17.6h21.5c5.6 0 10.2 2.3 10.2 8.4 0 6.4-4.6 9.2-10.5 9.2zm-31.6-136.7v-14.6h-55.5v69.3h55.5v-14.3h-38.9v-13.8h37.8v-14.1h-37.8v-12.5zM576 255.4h-.2zm-194.6 31.9c0-16.4-14.1-18.7-27.1-18.7h-39.4l-.1 69.3h16.6l.1-25.3h17.6c11 0 14.8 2 14.8 13.8l-.1 11.5h16.6l.1-13.8c0-8.9-1.8-15.1-11-18.4 7.7-3.1 11.8-10.8 11.9-18.4zm-29.2 11.2h-20.7v-15.6h21c5.1 0 10.7 1 10.7 7.4 0 6.9-5.4 8.2-11 8.2zm-172.8-80v-69.3h-27.6l-19.7 47-21.7-47H83.3v65.7l-28.1-65.7H30.7L1 218.5h17.9l6.4-15.3h34.5l6.4 15.3H100v-54.2l24 54.2h14.6l24-54.2v54.2zM31.2 188.8l11.2-27.6 11.5 27.6zm477.4 158.9v-4.5c-10.8 5.6-3.9 4.5-156.7 4.5 0-25.2.1-23.9 0-25.2-1.7-.1-3.2-.1-9.4-.1 0 17.9-.1 6.8-.1 25.3h-39.6c0-12.1.1-15.3.1-29.2-10 6-22.8 6.4-34.3 6.2 0 14.7-.1 8.3-.1 23h-48.9c-5.1-5.7-2.7-3.1-15.4-17.4-3.2 3.5-12.8 13.9-16.1 17.4h-82v-92.3h83.1c5 5.6 2.8 3.1 15.5 17.2 3.2-3.5 12.2-13.4 15.7-17.2h58c9.8 0 18 1.9 24.3 5.6v-5.6c54.3 0 64.3-1.4 75.7 5.1v-5.1h78.2v5.2c11.4-6.9 19.6-5.2 64.9-5.2v5c10.3-5.9 16.6-5.2 54.3-5V80c0-26.5-21.5-48-48-48h-480c-26.5 0-48 21.5-48 48v109.8c9.4-21.9 19.7-46 23.1-53.9h39.7c4.3 10.1 1.6 3.7 9 21.1v-21.1h46c2.9 6.2 11.1 24 13.9 30 5.8-13.6 10.1-23.9 12.6-30h103c0-.1 11.5 0 11.6 0 43.7.2 53.6-.8 64.4 5.3v-5.3H363v9.3c7.6-6.1 17.9-9.3 30.7-9.3h27.6c0 .5 1.9.3 2.3.3H456c4.2 9.8 2.6 6 8.8 20.6v-20.6h43.3c4.9 8-1-1.8 11.2 18.4v-18.4h39.9v92h-41.6c-5.4-9-1.4-2.2-13.2-21.9v21.9h-52.8c-6.4-14.8-.1-.3-6.6-15.3h-19c-4.2 10-2.2 5.2-6.4 15.3h-26.8c-12.3 0-22.3-3-29.7-8.9v8.9h-66.5c-.3-13.9-.1-24.8-.1-24.8-1.8-.3-3.4-.2-9.8-.2v25.1H151.2v-11.4c-2.5 5.6-2.7 5.9-5.1 11.4h-29.5c-4-8.9-2.9-6.4-5.1-11.4v11.4H58.6c-4.2-10.1-2.2-5.3-6.4-15.3H33c-4.2 10-2.2 5.2-6.4 15.3H0V432c0 26.5 21.5 48 48 48h480.1c26.5 0 48-21.5 48-48v-90.4c-12.7 8.3-32.7 6.1-67.5 6.1zm36.3-64.5H575v-14.6h-32.9c-12.8 0-23.8 6.6-23.8 20.7 0 33 42.7 12.8 42.7 27.4 0 5.1-4.3 6.4-8.4 6.4h-32l-.1 14.8h32c8.4 0 17.6-1.8 22.5-8.9v-25.8c-10.5-13.8-39.3-1.3-39.3-13.5 0-5.8 4.6-6.5 9.2-6.5zm-57 39.8h-32.2l-.1 14.8h32.2c14.8 0 26.2-5.6 26.2-22 0-33.2-42.9-11.2-42.9-26.3 0-5.6 4.9-6.4 9.2-6.4h30.4v-14.6h-33.2c-12.8 0-23.5 6.6-23.5 20.7 0 33 42.7 12.5 42.7 27.4-.1 5.4-4.7 6.4-8.8 6.4zm-42.2-40.1v-14.3h-55.2l-.1 69.3h55.2l.1-14.3-38.6-.3v-13.8H445v-14.1h-37.8v-12.5zm-56.3-108.1c-.3.2-1.4 2.2-1.4 7.6 0 6 .9 7.7 1.1 7.9.2.1 1.1.5 3.4.5l7.3-16.9c-1.1 0-2.1-.1-3.1-.1-5.6 0-7 .7-7.3 1zm20.4-10.5h-.1zm-16.2-15.2c-23.5 0-34 12-34 35.3 0 22.2 10.2 34 33 34h19.2l6.4-15.3h34.3l6.6 15.3h33.7v-51.9l31.2 51.9h23.6v-69h-16.9v48.1l-29.1-48.1h-25.3v65.4l-27.9-65.4h-24.8l-23.5 54.5h-7.4c-13.3 0-16.1-8.1-16.1-19.9 0-23.8 15.7-20 33.1-19.7v-15.2zm42.1 12.1l11.2 27.6h-22.8zm-101.1-12v69.3h16.9v-69.3z\"},\"child\":[]}]})(props);\n};\nexport function FaCcApplePay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M302.2 218.4c0 17.2-10.5 27.1-29 27.1h-24.3v-54.2h24.4c18.4 0 28.9 9.8 28.9 27.1zm47.5 62.6c0 8.3 7.2 13.7 18.5 13.7 14.4 0 25.2-9.1 25.2-21.9v-7.7l-23.5 1.5c-13.3.9-20.2 5.8-20.2 14.4zM576 79v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V79c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM127.8 197.2c8.4.7 16.8-4.2 22.1-10.4 5.2-6.4 8.6-15 7.7-23.7-7.4.3-16.6 4.9-21.9 11.3-4.8 5.5-8.9 14.4-7.9 22.8zm60.6 74.5c-.2-.2-19.6-7.6-19.8-30-.2-18.7 15.3-27.7 16-28.2-8.8-13-22.4-14.4-27.1-14.7-12.2-.7-22.6 6.9-28.4 6.9-5.9 0-14.7-6.6-24.3-6.4-12.5.2-24.2 7.3-30.5 18.6-13.1 22.6-3.4 56 9.3 74.4 6.2 9.1 13.7 19.1 23.5 18.7 9.3-.4 13-6 24.2-6 11.3 0 14.5 6 24.3 5.9 10.2-.2 16.5-9.1 22.8-18.2 6.9-10.4 9.8-20.4 10-21zm135.4-53.4c0-26.6-18.5-44.8-44.9-44.8h-51.2v136.4h21.2v-46.6h29.3c26.8 0 45.6-18.4 45.6-45zm90 23.7c0-19.7-15.8-32.4-40-32.4-22.5 0-39.1 12.9-39.7 30.5h19.1c1.6-8.4 9.4-13.9 20-13.9 13 0 20.2 6 20.2 17.2v7.5l-26.4 1.6c-24.6 1.5-37.9 11.6-37.9 29.1 0 17.7 13.7 29.4 33.4 29.4 13.3 0 25.6-6.7 31.2-17.4h.4V310h19.6v-68zM516 210.9h-21.5l-24.9 80.6h-.4l-24.9-80.6H422l35.9 99.3-1.9 6c-3.2 10.2-8.5 14.2-17.9 14.2-1.7 0-4.9-.2-6.2-.3v16.4c1.2.4 6.5.5 8.1.5 20.7 0 30.4-7.9 38.9-31.8L516 210.9z\"},\"child\":[]}]})(props);\n};\nexport function FaCcDinersClub (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M239.7 79.9c-96.9 0-175.8 78.6-175.8 175.8 0 96.9 78.9 175.8 175.8 175.8 97.2 0 175.8-78.9 175.8-175.8 0-97.2-78.6-175.8-175.8-175.8zm-39.9 279.6c-41.7-15.9-71.4-56.4-71.4-103.8s29.7-87.9 71.4-104.1v207.9zm79.8.3V151.6c41.7 16.2 71.4 56.7 71.4 104.1s-29.7 87.9-71.4 104.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM329.7 448h-90.3c-106.2 0-193.8-85.5-193.8-190.2C45.6 143.2 133.2 64 239.4 64h90.3c105 0 200.7 79.2 200.7 193.8 0 104.7-95.7 190.2-200.7 190.2z\"},\"child\":[]}]})(props);\n};\nexport function FaCcDiscover (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M520.4 196.1c0-7.9-5.5-12.1-15.6-12.1h-4.9v24.9h4.7c10.3 0 15.8-4.4 15.8-12.8zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-44.1 138.9c22.6 0 52.9-4.1 52.9 24.4 0 12.6-6.6 20.7-18.7 23.2l25.8 34.4h-19.6l-22.2-32.8h-2.2v32.8h-16zm-55.9.1h45.3v14H444v18.2h28.3V217H444v22.2h29.3V253H428zm-68.7 0l21.9 55.2 22.2-55.2h17.5l-35.5 84.2h-8.6l-35-84.2zm-55.9-3c24.7 0 44.6 20 44.6 44.6 0 24.7-20 44.6-44.6 44.6-24.7 0-44.6-20-44.6-44.6 0-24.7 20-44.6 44.6-44.6zm-49.3 6.1v19c-20.1-20.1-46.8-4.7-46.8 19 0 25 27.5 38.5 46.8 19.2v19c-29.7 14.3-63.3-5.7-63.3-38.2 0-31.2 33.1-53 63.3-38zm-97.2 66.3c11.4 0 22.4-15.3-3.3-24.4-15-5.5-20.2-11.4-20.2-22.7 0-23.2 30.6-31.4 49.7-14.3l-8.4 10.8c-10.4-11.6-24.9-6.2-24.9 2.5 0 4.4 2.7 6.9 12.3 10.3 18.2 6.6 23.6 12.5 23.6 25.6 0 29.5-38.8 37.4-56.6 11.3l10.3-9.9c3.7 7.1 9.9 10.8 17.5 10.8zM55.4 253H32v-82h23.4c26.1 0 44.1 17 44.1 41.1 0 18.5-13.2 40.9-44.1 40.9zm67.5 0h-16v-82h16zM544 433c0 8.2-6.8 15-15 15H128c189.6-35.6 382.7-139.2 416-160zM74.1 191.6c-5.2-4.9-11.6-6.6-21.9-6.6H48v54.2h4.2c10.3 0 17-2 21.9-6.4 5.7-5.2 8.9-12.8 8.9-20.7s-3.2-15.5-8.9-20.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCcJcb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M431.5 244.3V212c41.2 0 38.5.2 38.5.2 7.3 1.3 13.3 7.3 13.3 16 0 8.8-6 14.5-13.3 15.8-1.2.4-3.3.3-38.5.3zm42.8 20.2c-2.8-.7-3.3-.5-42.8-.5v35c39.6 0 40 .2 42.8-.5 7.5-1.5 13.5-8 13.5-17 0-8.7-6-15.5-13.5-17zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM182 192.3h-57c0 67.1 10.7 109.7-35.8 109.7-19.5 0-38.8-5.7-57.2-14.8v28c30 8.3 68 8.3 68 8.3 97.9 0 82-47.7 82-131.2zm178.5 4.5c-63.4-16-165-14.9-165 59.3 0 77.1 108.2 73.6 165 59.2V287C312.9 311.7 253 309 253 256s59.8-55.6 107.5-31.2v-28zM544 286.5c0-18.5-16.5-30.5-38-32v-.8c19.5-2.7 30.3-15.5 30.3-30.2 0-19-15.7-30-37-31 0 0 6.3-.3-120.3-.3v127.5h122.7c24.3.1 42.3-12.9 42.3-33.2z\"},\"child\":[]}]})(props);\n};\nexport function FaCcMastercard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M482.9 410.3c0 6.8-4.6 11.7-11.2 11.7-6.8 0-11.2-5.2-11.2-11.7 0-6.5 4.4-11.7 11.2-11.7 6.6 0 11.2 5.2 11.2 11.7zm-310.8-11.7c-7.1 0-11.2 5.2-11.2 11.7 0 6.5 4.1 11.7 11.2 11.7 6.5 0 10.9-4.9 10.9-11.7-.1-6.5-4.4-11.7-10.9-11.7zm117.5-.3c-5.4 0-8.7 3.5-9.5 8.7h19.1c-.9-5.7-4.4-8.7-9.6-8.7zm107.8.3c-6.8 0-10.9 5.2-10.9 11.7 0 6.5 4.1 11.7 10.9 11.7 6.8 0 11.2-4.9 11.2-11.7 0-6.5-4.4-11.7-11.2-11.7zm105.9 26.1c0 .3.3.5.3 1.1 0 .3-.3.5-.3 1.1-.3.3-.3.5-.5.8-.3.3-.5.5-1.1.5-.3.3-.5.3-1.1.3-.3 0-.5 0-1.1-.3-.3 0-.5-.3-.8-.5-.3-.3-.5-.5-.5-.8-.3-.5-.3-.8-.3-1.1 0-.5 0-.8.3-1.1 0-.5.3-.8.5-1.1.3-.3.5-.3.8-.5.5-.3.8-.3 1.1-.3.5 0 .8 0 1.1.3.5.3.8.3 1.1.5s.2.6.5 1.1zm-2.2 1.4c.5 0 .5-.3.8-.3.3-.3.3-.5.3-.8 0-.3 0-.5-.3-.8-.3 0-.5-.3-1.1-.3h-1.6v3.5h.8V426h.3l1.1 1.4h.8l-1.1-1.3zM576 81v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V81c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM64 220.6c0 76.5 62.1 138.5 138.5 138.5 27.2 0 53.9-8.2 76.5-23.1-72.9-59.3-72.4-171.2 0-230.5-22.6-15-49.3-23.1-76.5-23.1-76.4-.1-138.5 62-138.5 138.2zm224 108.8c70.5-55 70.2-162.2 0-217.5-70.2 55.3-70.5 162.6 0 217.5zm-142.3 76.3c0-8.7-5.7-14.4-14.7-14.7-4.6 0-9.5 1.4-12.8 6.5-2.4-4.1-6.5-6.5-12.2-6.5-3.8 0-7.6 1.4-10.6 5.4V392h-8.2v36.7h8.2c0-18.9-2.5-30.2 9-30.2 10.2 0 8.2 10.2 8.2 30.2h7.9c0-18.3-2.5-30.2 9-30.2 10.2 0 8.2 10 8.2 30.2h8.2v-23zm44.9-13.7h-7.9v4.4c-2.7-3.3-6.5-5.4-11.7-5.4-10.3 0-18.2 8.2-18.2 19.3 0 11.2 7.9 19.3 18.2 19.3 5.2 0 9-1.9 11.7-5.4v4.6h7.9V392zm40.5 25.6c0-15-22.9-8.2-22.9-15.2 0-5.7 11.9-4.8 18.5-1.1l3.3-6.5c-9.4-6.1-30.2-6-30.2 8.2 0 14.3 22.9 8.3 22.9 15 0 6.3-13.5 5.8-20.7.8l-3.5 6.3c11.2 7.6 32.6 6 32.6-7.5zm35.4 9.3l-2.2-6.8c-3.8 2.1-12.2 4.4-12.2-4.1v-16.6h13.1V392h-13.1v-11.2h-8.2V392h-7.6v7.3h7.6V416c0 17.6 17.3 14.4 22.6 10.9zm13.3-13.4h27.5c0-16.2-7.4-22.6-17.4-22.6-10.6 0-18.2 7.9-18.2 19.3 0 20.5 22.6 23.9 33.8 14.2l-3.8-6c-7.8 6.4-19.6 5.8-21.9-4.9zm59.1-21.5c-4.6-2-11.6-1.8-15.2 4.4V392h-8.2v36.7h8.2V408c0-11.6 9.5-10.1 12.8-8.4l2.4-7.6zm10.6 18.3c0-11.4 11.6-15.1 20.7-8.4l3.8-6.5c-11.6-9.1-32.7-4.1-32.7 15 0 19.8 22.4 23.8 32.7 15l-3.8-6.5c-9.2 6.5-20.7 2.6-20.7-8.6zm66.7-18.3H408v4.4c-8.3-11-29.9-4.8-29.9 13.9 0 19.2 22.4 24.7 29.9 13.9v4.6h8.2V392zm33.7 0c-2.4-1.2-11-2.9-15.2 4.4V392h-7.9v36.7h7.9V408c0-11 9-10.3 12.8-8.4l2.4-7.6zm40.3-14.9h-7.9v19.3c-8.2-10.9-29.9-5.1-29.9 13.9 0 19.4 22.5 24.6 29.9 13.9v4.6h7.9v-51.7zm7.6-75.1v4.6h.8V302h1.9v-.8h-4.6v.8h1.9zm6.6 123.8c0-.5 0-1.1-.3-1.6-.3-.3-.5-.8-.8-1.1-.3-.3-.8-.5-1.1-.8-.5 0-1.1-.3-1.6-.3-.3 0-.8.3-1.4.3-.5.3-.8.5-1.1.8-.5.3-.8.8-.8 1.1-.3.5-.3 1.1-.3 1.6 0 .3 0 .8.3 1.4 0 .3.3.8.8 1.1.3.3.5.5 1.1.8.5.3 1.1.3 1.4.3.5 0 1.1 0 1.6-.3.3-.3.8-.5 1.1-.8.3-.3.5-.8.8-1.1.3-.6.3-1.1.3-1.4zm3.2-124.7h-1.4l-1.6 3.5-1.6-3.5h-1.4v5.4h.8v-4.1l1.6 3.5h1.1l1.4-3.5v4.1h1.1v-5.4zm4.4-80.5c0-76.2-62.1-138.3-138.5-138.3-27.2 0-53.9 8.2-76.5 23.1 72.1 59.3 73.2 171.5 0 230.5 22.6 15 49.5 23.1 76.5 23.1 76.4.1 138.5-61.9 138.5-138.4z\"},\"child\":[]}]})(props);\n};\nexport function FaCcPaypal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M186.3 258.2c0 12.2-9.7 21.5-22 21.5-9.2 0-16-5.2-16-15 0-12.2 9.5-22 21.7-22 9.3 0 16.3 5.7 16.3 15.5zM80.5 209.7h-4.7c-1.5 0-3 1-3.2 2.7l-4.3 26.7 8.2-.3c11 0 19.5-1.5 21.5-14.2 2.3-13.4-6.2-14.9-17.5-14.9zm284 0H360c-1.8 0-3 1-3.2 2.7l-4.2 26.7 8-.3c13 0 22-3 22-18-.1-10.6-9.6-11.1-18.1-11.1zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM128.3 215.4c0-21-16.2-28-34.7-28h-40c-2.5 0-5 2-5.2 4.7L32 294.2c-.3 2 1.2 4 3.2 4h19c2.7 0 5.2-2.9 5.5-5.7l4.5-26.6c1-7.2 13.2-4.7 18-4.7 28.6 0 46.1-17 46.1-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.2 8.2-5.8-8.5-14.2-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9 0 20.2-4.9 26.5-11.9-.5 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H200c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm40.5 97.9l63.7-92.6c.5-.5.5-1 .5-1.7 0-1.7-1.5-3.5-3.2-3.5h-19.2c-1.7 0-3.5 1-4.5 2.5l-26.5 39-11-37.5c-.8-2.2-3-4-5.5-4h-18.7c-1.7 0-3.2 1.8-3.2 3.5 0 1.2 19.5 56.8 21.2 62.1-2.7 3.8-20.5 28.6-20.5 31.6 0 1.8 1.5 3.2 3.2 3.2h19.2c1.8-.1 3.5-1.1 4.5-2.6zm159.3-106.7c0-21-16.2-28-34.7-28h-39.7c-2.7 0-5.2 2-5.5 4.7l-16.2 102c-.2 2 1.3 4 3.2 4h20.5c2 0 3.5-1.5 4-3.2l4.5-29c1-7.2 13.2-4.7 18-4.7 28.4 0 45.9-17 45.9-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.3 8.2-5.5-8.5-14-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9.3 0 20.5-4.9 26.5-11.9-.3 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H484c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm47.5-33.3c0-2-1.5-3.5-3.2-3.5h-18.5c-1.5 0-3 1.2-3.2 2.7l-16.2 104-.3.5c0 1.8 1.5 3.5 3.5 3.5h16.5c2.5 0 5-2.9 5.2-5.7L544 191.2v-.3zm-90 51.8c-12.2 0-21.7 9.7-21.7 22 0 9.7 7 15 16.2 15 12 0 21.7-9.2 21.7-21.5.1-9.8-6.9-15.5-16.2-15.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCcStripe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M492.4 220.8c-8.9 0-18.7 6.7-18.7 22.7h36.7c0-16-9.3-22.7-18-22.7zM375 223.4c-8.2 0-13.3 2.9-17 7l.2 52.8c3.5 3.7 8.5 6.7 16.8 6.7 13.1 0 21.9-14.3 21.9-33.4 0-18.6-9-33.2-21.9-33.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM122.2 281.1c0 25.6-20.3 40.1-49.9 40.3-12.2 0-25.6-2.4-38.8-8.1v-33.9c12 6.4 27.1 11.3 38.9 11.3 7.9 0 13.6-2.1 13.6-8.7 0-17-54-10.6-54-49.9 0-25.2 19.2-40.2 48-40.2 11.8 0 23.5 1.8 35.3 6.5v33.4c-10.8-5.8-24.5-9.1-35.3-9.1-7.5 0-12.1 2.2-12.1 7.7 0 16 54.3 8.4 54.3 50.7zm68.8-56.6h-27V275c0 20.9 22.5 14.4 27 12.6v28.9c-4.7 2.6-13.3 4.7-24.9 4.7-21.1 0-36.9-15.5-36.9-36.5l.2-113.9 34.7-7.4v30.8H191zm74 2.4c-4.5-1.5-18.7-3.6-27.1 7.4v84.4h-35.5V194.2h30.7l2.2 10.5c8.3-15.3 24.9-12.2 29.6-10.5h.1zm44.1 91.8h-35.7V194.2h35.7zm0-142.9l-35.7 7.6v-28.9l35.7-7.6zm74.1 145.5c-12.4 0-20-5.3-25.1-9l-.1 40.2-35.5 7.5V194.2h31.3l1.8 8.8c4.9-4.5 13.9-11.1 27.8-11.1 24.9 0 48.4 22.5 48.4 63.8 0 45.1-23.2 65.5-48.6 65.6zm160.4-51.5h-69.5c1.6 16.6 13.8 21.5 27.6 21.5 14.1 0 25.2-3 34.9-7.9V312c-9.7 5.3-22.4 9.2-39.4 9.2-34.6 0-58.8-21.7-58.8-64.5 0-36.2 20.5-64.9 54.3-64.9 33.7 0 51.3 28.7 51.3 65.1 0 3.5-.3 10.9-.4 12.9z\"},\"child\":[]}]})(props);\n};\nexport function FaCcVisa (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z\"},\"child\":[]}]})(props);\n};\nexport function FaCentercode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M329.2 268.6c-3.8 35.2-35.4 60.6-70.6 56.8-35.2-3.8-60.6-35.4-56.8-70.6 3.8-35.2 35.4-60.6 70.6-56.8 35.1 3.8 60.6 35.4 56.8 70.6zm-85.8 235.1C96.7 496-8.2 365.5 10.1 224.3c11.2-86.6 65.8-156.9 139.1-192 161-77.1 349.7 37.4 354.7 216.6 4.1 147-118.4 262.2-260.5 254.8zm179.9-180c27.9-118-160.5-205.9-237.2-234.2-57.5 56.3-69.1 188.6-33.8 344.4 68.8 15.8 169.1-26.4 271-110.2z\"},\"child\":[]}]})(props);\n};\nexport function FaCentos (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M289.6 97.5l31.6 31.7-76.3 76.5V97.5zm-162.4 31.7l76.3 76.5V97.5h-44.7zm41.5-41.6h44.7v127.9l10.8 10.8 10.8-10.8V87.6h44.7L224.2 32zm26.2 168.1l-10.8-10.8H55.5v-44.8L0 255.7l55.5 55.6v-44.8h128.6l10.8-10.8zm79.3-20.7h107.9v-44.8l-31.6-31.7zm173.3 20.7L392 200.1v44.8H264.3l-10.8 10.8 10.8 10.8H392v44.8l55.5-55.6zM65.4 176.2l32.5-31.7 90.3 90.5h15.3v-15.3l-90.3-90.5 31.6-31.7H65.4zm316.7-78.7h-78.5l31.6 31.7-90.3 90.5V235h15.3l90.3-90.5 31.6 31.7zM203.5 413.9V305.8l-76.3 76.5 31.6 31.7h44.7zM65.4 235h108.8l-76.3-76.5-32.5 31.7zm316.7 100.2l-31.6 31.7-90.3-90.5h-15.3v15.3l90.3 90.5-31.6 31.7h78.5zm0-58.8H274.2l76.3 76.5 31.6-31.7zm-60.9 105.8l-76.3-76.5v108.1h44.7zM97.9 352.9l76.3-76.5H65.4v44.8zm181.8 70.9H235V295.9l-10.8-10.8-10.8 10.8v127.9h-44.7l55.5 55.6zm-166.5-41.6l90.3-90.5v-15.3h-15.3l-90.3 90.5-32.5-31.7v78.7h79.4z\"},\"child\":[]}]})(props);\n};\nexport function FaChrome (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M131.5 217.5L55.1 100.1c47.6-59.2 119-91.8 192-92.1 42.3-.3 85.5 10.5 124.8 33.2 43.4 25.2 76.4 61.4 97.4 103L264 133.4c-58.1-3.4-113.4 29.3-132.5 84.1zm32.9 38.5c0 46.2 37.4 83.6 83.6 83.6s83.6-37.4 83.6-83.6-37.4-83.6-83.6-83.6-83.6 37.3-83.6 83.6zm314.9-89.2L339.6 174c37.9 44.3 38.5 108.2 6.6 157.2L234.1 503.6c46.5 2.5 94.4-7.7 137.8-32.9 107.4-62 150.9-192 107.4-303.9zM133.7 303.6L40.4 120.1C14.9 159.1 0 205.9 0 256c0 124 90.8 226.7 209.5 244.9l63.7-124.8c-57.6 10.8-113.2-20.8-139.5-72.5z\"},\"child\":[]}]})(props);\n};\nexport function FaChromecast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M447.8,64H64c-23.6,0-42.7,19.1-42.7,42.7v63.9H64v-63.9h383.8v298.6H298.6V448H448c23.6,0,42.7-19.1,42.7-42.7V106.7 C490.7,83.1,471.4,64,447.8,64z M21.3,383.6L21.3,383.6l0,63.9h63.9C85.2,412.2,56.6,383.6,21.3,383.6L21.3,383.6z M21.3,298.6V341 c58.9,0,106.6,48.1,106.6,107h42.7C170.7,365.6,103.7,298.7,21.3,298.6z M213.4,448h42.7c-0.5-129.5-105.3-234.3-234.8-234.6l0,42.4 C127.3,255.6,213.3,342,213.4,448z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudflare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M407.906,319.913l-230.8-2.928a4.58,4.58,0,0,1-3.632-1.926,4.648,4.648,0,0,1-.494-4.147,6.143,6.143,0,0,1,5.361-4.076L411.281,303.9c27.631-1.26,57.546-23.574,68.022-50.784l13.286-34.542a7.944,7.944,0,0,0,.524-2.936,7.735,7.735,0,0,0-.164-1.631A151.91,151.91,0,0,0,201.257,198.4,68.12,68.12,0,0,0,94.2,269.59C41.924,271.106,0,313.728,0,366.12a96.054,96.054,0,0,0,1.029,13.958,4.508,4.508,0,0,0,4.445,3.871l426.1.051c.043,0,.08-.019.122-.02a5.606,5.606,0,0,0,5.271-4l3.273-11.265c3.9-13.4,2.448-25.8-4.1-34.9C430.124,325.423,420.09,320.487,407.906,319.913ZM513.856,221.1c-2.141,0-4.271.062-6.391.164a3.771,3.771,0,0,0-3.324,2.653l-9.077,31.193c-3.9,13.4-2.449,25.786,4.1,34.89,6.02,8.4,16.054,13.323,28.238,13.9l49.2,2.939a4.491,4.491,0,0,1,3.51,1.894,4.64,4.64,0,0,1,.514,4.169,6.153,6.153,0,0,1-5.351,4.075l-51.125,2.939c-27.754,1.27-57.669,23.574-68.145,50.784l-3.695,9.606a2.716,2.716,0,0,0,2.427,3.68c.046,0,.088.017.136.017h175.91a4.69,4.69,0,0,0,4.539-3.37,124.807,124.807,0,0,0,4.682-34C640,277.3,583.524,221.1,513.856,221.1Z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudscale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M318.1 154l-9.4 7.6c-22.5-19.3-51.5-33.6-83.3-33.6C153.8 128 96 188.8 96 260.3c0 6.6.4 13.1 1.4 19.4-2-56 41.8-97.4 92.6-97.4 24.2 0 46.2 9.4 62.6 24.7l-25.2 20.4c-8.3-.9-16.8 1.8-23.1 8.1-11.1 11-11.1 28.9 0 40 11.1 11 28.9 11 40 0 6.3-6.3 9-14.9 8.1-23.1l75.2-88.8c6.3-6.5-3.3-15.9-9.5-9.6zm-83.8 111.5c-5.6 5.5-14.6 5.5-20.2 0-5.6-5.6-5.6-14.6 0-20.2s14.6-5.6 20.2 0 5.6 14.7 0 20.2zM224 32C100.5 32 0 132.5 0 256s100.5 224 224 224 224-100.5 224-224S347.5 32 224 32zm0 384c-88.2 0-160-71.8-160-160S135.8 96 224 96s160 71.8 160 160-71.8 160-160 160z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudsmith (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 332 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M332.5 419.9c0 46.4-37.6 84.1-84 84.1s-84-37.7-84-84.1 37.6-84 84-84 84 37.6 84 84zm-84-243.9c46.4 0 80-37.6 80-84s-33.6-84-80-84-88 37.6-88 84-29.6 76-76 76-84 41.6-84 88 37.6 80 84 80 84-33.6 84-80 33.6-80 80-80z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudversify (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 616 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M148.6 304c8.2 68.5 67.4 115.5 146 111.3 51.2 43.3 136.8 45.8 186.4-5.6 69.2 1.1 118.5-44.6 131.5-99.5 14.8-62.5-18.2-132.5-92.1-155.1-33-88.1-131.4-101.5-186.5-85-57.3 17.3-84.3 53.2-99.3 109.7-7.8 2.7-26.5 8.9-45 24.1 11.7 0 15.2 8.9 15.2 19.5v20.4c0 10.7-8.7 19.5-19.5 19.5h-20.2c-10.7 0-19.5-6-19.5-16.7V240H98.8C95 240 88 244.3 88 251.9v40.4c0 6.4 5.3 11.8 11.7 11.8h48.9zm227.4 8c-10.7 46.3 21.7 72.4 55.3 86.8C324.1 432.6 259.7 348 296 288c-33.2 21.6-33.7 71.2-29.2 92.9-17.9-12.4-53.8-32.4-57.4-79.8-3-39.9 21.5-75.7 57-93.9C297 191.4 369.9 198.7 400 248c-14.1-48-53.8-70.1-101.8-74.8 30.9-30.7 64.4-50.3 114.2-43.7 69.8 9.3 133.2 82.8 67.7 150.5 35-16.3 48.7-54.4 47.5-76.9l10.5 19.6c11.8 22 15.2 47.6 9.4 72-9.2 39-40.6 68.8-79.7 76.5-32.1 6.3-83.1-5.1-91.8-59.2zM128 208H88.2c-8.9 0-16.2-7.3-16.2-16.2v-39.6c0-8.9 7.3-16.2 16.2-16.2H128c8.9 0 16.2 7.3 16.2 16.2v39.6c0 8.9-7.3 16.2-16.2 16.2zM10.1 168C4.5 168 0 163.5 0 157.9v-27.8c0-5.6 4.5-10.1 10.1-10.1h27.7c5.5 0 10.1 4.5 10.1 10.1v27.8c0 5.6-4.5 10.1-10.1 10.1H10.1zM168 142.7v-21.4c0-5.1 4.2-9.3 9.3-9.3h21.4c5.1 0 9.3 4.2 9.3 9.3v21.4c0 5.1-4.2 9.3-9.3 9.3h-21.4c-5.1 0-9.3-4.2-9.3-9.3zM56 235.5v25c0 6.3-5.1 11.5-11.4 11.5H19.4C13.1 272 8 266.8 8 260.5v-25c0-6.3 5.1-11.5 11.4-11.5h25.1c6.4 0 11.5 5.2 11.5 11.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCodepen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.285 159.704l-234-156c-7.987-4.915-16.511-4.96-24.571 0l-234 156C3.714 163.703 0 170.847 0 177.989v155.999c0 7.143 3.714 14.286 9.715 18.286l234 156.022c7.987 4.915 16.511 4.96 24.571 0l234-156.022c6-3.999 9.715-11.143 9.715-18.286V177.989c-.001-7.142-3.715-14.286-9.716-18.285zM278 63.131l172.286 114.858-76.857 51.429L278 165.703V63.131zm-44 0v102.572l-95.429 63.715-76.857-51.429L234 63.131zM44 219.132l55.143 36.857L44 292.846v-73.714zm190 229.715L61.714 333.989l76.857-51.429L234 346.275v102.572zm22-140.858l-77.715-52 77.715-52 77.715 52-77.715 52zm22 140.858V346.275l95.429-63.715 76.857 51.429L278 448.847zm190-156.001l-55.143-36.857L468 219.132v73.714z\"},\"child\":[]}]})(props);\n};\nexport function FaCodiepie (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 472 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M422.5 202.9c30.7 0 33.5 53.1-.3 53.1h-10.8v44.3h-26.6v-97.4h37.7zM472 352.6C429.9 444.5 350.4 504 248 504 111 504 0 393 0 256S111 8 248 8c97.4 0 172.8 53.7 218.2 138.4l-186 108.8L472 352.6zm-38.5 12.5l-60.3-30.7c-27.1 44.3-70.4 71.4-122.4 71.4-82.5 0-149.2-66.7-149.2-148.9 0-82.5 66.7-149.2 149.2-149.2 48.4 0 88.9 23.5 116.9 63.4l59.5-34.6c-40.7-62.6-104.7-100-179.2-100-121.2 0-219.5 98.3-219.5 219.5S126.8 475.5 248 475.5c78.6 0 146.5-42.1 185.5-110.4z\"},\"child\":[]}]})(props);\n};\nexport function FaConfluence (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.3 412.2c-4.5 7.6-2.1 17.5 5.5 22.2l105.9 65.2c7.7 4.7 17.7 2.4 22.4-5.3 0-.1.1-.2.1-.2 67.1-112.2 80.5-95.9 280.9-.7 8.1 3.9 17.8.4 21.7-7.7.1-.1.1-.3.2-.4l50.4-114.1c3.6-8.1-.1-17.6-8.1-21.3-22.2-10.4-66.2-31.2-105.9-50.3C127.5 179 44.6 345.3 2.3 412.2zm507.4-312.1c4.5-7.6 2.1-17.5-5.5-22.2L398.4 12.8c-7.5-5-17.6-3.1-22.6 4.4-.2.3-.4.6-.6 1-67.3 112.6-81.1 95.6-280.6.9-8.1-3.9-17.8-.4-21.7 7.7-.1.1-.1.3-.2.4L22.2 141.3c-3.6 8.1.1 17.6 8.1 21.3 22.2 10.4 66.3 31.2 106 50.4 248 120 330.8-45.4 373.4-112.9z\"},\"child\":[]}]})(props);\n};\nexport function FaConnectdevelop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M550.5 241l-50.089-86.786c1.071-2.142 1.875-4.553 1.875-7.232 0-8.036-6.696-14.733-14.732-15.001l-55.447-95.893c.536-1.607 1.071-3.214 1.071-4.821 0-8.571-6.964-15.268-15.268-15.268-4.821 0-8.839 2.143-11.786 5.625H299.518C296.839 18.143 292.821 16 288 16s-8.839 2.143-11.518 5.625H170.411C167.464 18.143 163.447 16 158.625 16c-8.303 0-15.268 6.696-15.268 15.268 0 1.607.536 3.482 1.072 4.821l-55.983 97.233c-5.356 2.41-9.107 7.5-9.107 13.661 0 .535.268 1.071.268 1.607l-53.304 92.143c-7.232 1.339-12.59 7.5-12.59 15 0 7.232 5.089 13.393 12.054 15l55.179 95.358c-.536 1.607-.804 2.946-.804 4.821 0 7.232 5.089 13.393 12.054 14.732l51.697 89.732c-.536 1.607-1.071 3.482-1.071 5.357 0 8.571 6.964 15.268 15.268 15.268 4.821 0 8.839-2.143 11.518-5.357h106.875C279.161 493.857 283.447 496 288 496s8.839-2.143 11.518-5.357h107.143c2.678 2.946 6.696 4.821 10.982 4.821 8.571 0 15.268-6.964 15.268-15.268 0-1.607-.267-2.946-.803-4.285l51.697-90.268c6.964-1.339 12.054-7.5 12.054-14.732 0-1.607-.268-3.214-.804-4.821l54.911-95.358c6.964-1.339 12.322-7.5 12.322-15-.002-7.232-5.092-13.393-11.788-14.732zM153.535 450.732l-43.66-75.803h43.66v75.803zm0-83.839h-43.66c-.268-1.071-.804-2.142-1.339-3.214l44.999-47.41v50.624zm0-62.411l-50.357 53.304c-1.339-.536-2.679-1.34-4.018-1.607L43.447 259.75c.535-1.339.535-2.679.535-4.018s0-2.41-.268-3.482l51.965-90c2.679-.268 5.357-1.072 7.768-2.679l50.089 51.965v92.946zm0-102.322l-45.803-47.41c1.339-2.143 2.143-4.821 2.143-7.767 0-.268-.268-.804-.268-1.072l43.928-15.804v72.053zm0-80.625l-43.66 15.804 43.66-75.536v59.732zm326.519 39.108l.804 1.339L445.5 329.125l-63.75-67.232 98.036-101.518.268.268zM291.75 355.107l11.518 11.786H280.5l11.25-11.786zm-.268-11.25l-83.303-85.446 79.553-84.375 83.036 87.589-79.286 82.232zm5.357 5.893l79.286-82.232 67.5 71.25-5.892 28.125H313.714l-16.875-17.143zM410.411 44.393c1.071.536 2.142 1.072 3.482 1.34l57.857 100.714v.536c0 2.946.803 5.624 2.143 7.767L376.393 256l-83.035-87.589L410.411 44.393zm-9.107-2.143L287.732 162.518l-57.054-60.268 166.339-60h4.287zm-123.483 0c2.678 2.678 6.16 4.285 10.179 4.285s7.5-1.607 10.179-4.285h75L224.786 95.821 173.893 42.25h103.928zm-116.249 5.625l1.071-2.142a33.834 33.834 0 0 0 2.679-.804l51.161 53.84-54.911 19.821V47.875zm0 79.286l60.803-21.964 59.732 63.214-79.553 84.107-40.982-42.053v-83.304zm0 92.678L198 257.607l-36.428 38.304v-76.072zm0 87.858l42.053-44.464 82.768 85.982-17.143 17.678H161.572v-59.196zm6.964 162.053c-1.607-1.607-3.482-2.678-5.893-3.482l-1.071-1.607v-89.732h99.91l-91.607 94.821h-1.339zm129.911 0c-2.679-2.41-6.428-4.285-10.447-4.285s-7.767 1.875-10.447 4.285h-96.429l91.607-94.821h38.304l91.607 94.821H298.447zm120-11.786l-4.286 7.5c-1.339.268-2.41.803-3.482 1.339l-89.196-91.875h114.376l-17.412 83.036zm12.856-22.232l12.858-60.803h21.964l-34.822 60.803zm34.822-68.839h-20.357l4.553-21.16 17.143 18.214c-.535.803-1.071 1.874-1.339 2.946zm66.161-107.411l-55.447 96.697c-1.339.535-2.679 1.071-4.018 1.874l-20.625-21.964 34.554-163.928 45.803 79.286c-.267 1.339-.803 2.678-.803 4.285 0 1.339.268 2.411.536 3.75z\"},\"child\":[]}]})(props);\n};\nexport function FaContao (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M45.4 305c14.4 67.1 26.4 129 68.2 175H34c-18.7 0-34-15.2-34-34V66c0-18.7 15.2-34 34-34h57.7C77.9 44.6 65.6 59.2 54.8 75.6c-45.4 70-27 146.8-9.4 229.4zM478 32h-90.2c21.4 21.4 39.2 49.5 52.7 84.1l-137.1 29.3c-14.9-29-37.8-53.3-82.6-43.9-24.6 5.3-41 19.3-48.3 34.6-8.8 18.7-13.2 39.8 8.2 140.3 21.1 100.2 33.7 117.7 49.5 131.2 12.9 11.1 33.4 17 58.3 11.7 44.5-9.4 55.7-40.7 57.4-73.2l137.4-29.6c3.2 71.5-18.7 125.2-57.4 163.6H478c18.7 0 34-15.2 34-34V66c0-18.8-15.2-34-34-34z\"},\"child\":[]}]})(props);\n};\nexport function FaCottonBureau (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M474.31 330.41c-23.66 91.85-94.23 144.59-201.9 148.35V429.6c0-48 26.41-74.39 74.39-74.39 62 0 99.2-37.2 99.2-99.21 0-61.37-36.53-98.28-97.38-99.06-33-69.32-146.5-64.65-177.24 0C110.52 157.72 74 194.63 74 256c0 62.13 37.27 99.41 99.4 99.41 48 0 74.55 26.23 74.55 74.39V479c-134.43-5-211.1-85.07-211.1-223 0-141.82 81.35-223.2 223.2-223.2 114.77 0 189.84 53.2 214.69 148.81H500C473.88 71.51 388.22 8 259.82 8 105 8 12 101.19 12 255.82 12 411.14 105.19 504.34 259.82 504c128.27 0 213.87-63.81 239.67-173.59zM357 182.33c41.37 3.45 64.2 29 64.2 73.67 0 48-26.43 74.41-74.4 74.41-28.61 0-49.33-9.59-61.59-27.33 83.06-16.55 75.59-99.67 71.79-120.75zm-81.68 97.36c-2.46-10.34-16.33-87 56.23-97 2.27 10.09 16.52 87.11-56.26 97zM260 132c28.61 0 49 9.67 61.44 27.61-28.36 5.48-49.36 20.59-61.59 43.45-12.23-22.86-33.23-38-61.6-43.45 12.41-17.69 33.27-27.35 61.57-27.35zm-71.52 50.72c73.17 10.57 58.91 86.81 56.49 97-72.41-9.84-59-86.95-56.25-97zM173.2 330.41c-48 0-74.4-26.4-74.4-74.41 0-44.36 22.86-70 64.22-73.67-6.75 37.2-1.38 106.53 71.65 120.75-12.14 17.63-32.84 27.3-61.14 27.3zm53.21 12.39A80.8 80.8 0 0 0 260 309.25c7.77 14.49 19.33 25.54 33.82 33.55a80.28 80.28 0 0 0-33.58 33.83c-8-14.5-19.07-26.23-33.56-33.83z\"},\"child\":[]}]})(props);\n};\nexport function FaCpanel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M210.3 220.2c-5.6-24.8-26.9-41.2-51-41.2h-37c-7.1 0-12.5 4.5-14.3 10.9L73.1 320l24.7-.1c6.8 0 12.3-4.5 14.2-10.7l25.8-95.7h19.8c8.4 0 16.2 5.6 18.3 14.8 2.5 10.9-5.9 22.6-18.3 22.6h-10.3c-7 0-12.5 4.6-14.3 10.8l-6.4 23.8h32c37.2 0 58.3-36.2 51.7-65.3zm-156.5 28h18.6c6.9 0 12.4-4.4 14.3-10.9l6.2-23.6h-40C30 213.7 9 227.8 1.7 254.8-7 288.6 18.5 320 52 320h12.4l7.1-26.1c1.2-4.4-2.2-8.3-6.4-8.3H53.8c-24.7 0-24.9-37.4 0-37.4zm247.5-34.8h-77.9l-3.5 13.4c-2.4 9.6 4.5 18.5 14.2 18.5h57.5c4 0 2.4 4.3 2.1 5.3l-8.6 31.8c-.4 1.4-.9 5.3-5.5 5.3h-34.9c-5.3 0-5.3-7.9 0-7.9h21.6c6.8 0 12.3-4.6 14.2-10.8l3.5-13.2h-48.4c-39.2 0-43.6 63.8-.7 63.8l57.5.2c11.2 0 20.6-7.2 23.4-17.8l14-51.8c4.8-19.2-9.7-36.8-28.5-36.8zM633.1 179h-18.9c-4.9 0-9.2 3.2-10.4 7.9L568.2 320c20.7 0 39.8-13.8 44.9-34.5l26.5-98.2c1.2-4.3-2-8.3-6.5-8.3zm-236.3 34.7v.1h-48.3l-26.2 98c-1.2 4.4 2.2 8.3 6.4 8.3h18.9c4.8 0 9.2-3 10.4-7.8l17.2-64H395c12.5 0 21.4 11.8 18.1 23.4l-10.6 40c-1.2 4.3 1.9 8.3 6.4 8.3H428c4.6 0 9.1-2.9 10.3-7.8l8.8-33.1c9-33.1-15.9-65.4-50.3-65.4zm98.3 74.6c-3.6 0-6-3.4-5.1-6.7l8-30c.9-3.9 3.7-6 7.8-6h32.9c2.6 0 4.6 2.4 3.9 5.1l-.7 2.6c-.6 2-1.9 3-3.9 3h-21.6c-7 0-12.6 4.6-14.2 10.8l-3.5 13h53.4c10.5 0 20.3-6.6 23.2-17.6l3.2-12c4.9-19.1-9.3-36.8-28.3-36.8h-47.3c-17.9 0-33.8 12-38.6 29.6l-10.8 40c-5 17.7 8.3 36.7 28.3 36.7h66.7c6.8 0 12.3-4.5 14.2-10.7l5.7-21z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsBy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsNcEu (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.7 8C103.6 8 0 124.8 0 256c0 136.3 111.7 248 247.7 248C377.9 504 496 403.1 496 256 496 117 388.4 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-23.2 3.7-45.2 10.9-66l65.7 29.1h-4.7v29.5h23.3c0 6.2-.4 3.2-.4 19.5h-22.8v29.5h27c11.4 67 67.2 101.3 124.6 101.3 26.6 0 50.6-7.9 64.8-15.8l-10-46.1c-8.7 4.6-28.2 10.8-47.3 10.8-28.2 0-58.1-10.9-67.3-50.2h90.3l128.3 56.8c-1.5 2.1-56.2 104.3-178.8 104.3zm-16.7-190.6l-.5-.4.9.4h-.4zm77.2-19.5h3.7v-29.5h-70.3l-28.6-12.6c2.5-5.5 5.4-10.5 8.8-14.3 12.9-15.8 31.1-22.4 51.1-22.4 18.3 0 35.3 5.4 46.1 10l11.6-47.3c-15-6.6-37-12.4-62.3-12.4-39 0-72.2 15.8-95.9 42.3-5.3 6.1-9.8 12.9-13.9 20.1l-81.6-36.1c64.6-96.8 157.7-93.6 170.7-93.6 113 0 203 90.2 203 203.4 0 18.7-2.1 36.3-6.3 52.9l-136.1-60.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsNcJp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.7 8C103.6 8 0 124.8 0 256c0 136.4 111.8 248 247.7 248C377.9 504 496 403.2 496 256 496 117.2 388.5 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-21.1 3-41.2 9-60.3l127 56.5h-27.9v38.6h58.1l5.7 11.8v18.7h-63.8V360h63.8v56h61.7v-56h64.2v-35.7l81 36.1c-1.5 2.2-57.1 98.3-175.2 98.3zm87.6-137.3h-57.6v-18.7l2.9-5.6 54.7 24.3zm6.5-51.4v-17.8h-38.6l63-116H301l-43.4 96-23-10.2-39.6-85.7h-65.8l27.3 51-81.9-36.5c27.8-44.1 82.6-98.1 173.7-98.1 112.8 0 203 90 203 203.4 0 21-2.7 40.6-7.9 59l-101-45.1z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsNc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C387.4 8 496 115.9 496 256c0 147.2-118.5 248-248.4 248C113.1 504 0 393.2 0 256 0 123.1 104.7 8 247.6 8zM55.8 189.1c-7.4 20.4-11.1 42.7-11.1 66.9 0 110.9 92.1 202.4 203.7 202.4 122.4 0 177.2-101.8 178.5-104.1l-93.4-41.6c-7.7 37.1-41.2 53-68.2 55.4v38.1h-28.8V368c-27.5-.3-52.6-10.2-75.3-29.7l34.1-34.5c31.7 29.4 86.4 31.8 86.4-2.2 0-6.2-2.2-11.2-6.6-15.1-14.2-6-1.8-.1-219.3-97.4zM248.4 52.3c-38.4 0-112.4 8.7-170.5 93l94.8 42.5c10-31.3 40.4-42.9 63.8-44.3v-38.1h28.8v38.1c22.7 1.2 43.4 8.9 62 23L295 199.7c-42.7-29.9-83.5-8-70 11.1 53.4 24.1 43.8 19.8 93 41.6l127.1 56.7c4.1-17.4 6.2-35.1 6.2-53.1 0-57-19.8-105-59.3-143.9-39.3-39.9-87.2-59.8-143.6-59.8z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsNd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsPdAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C104.7 8 0 123.1 0 256c0 138.5 113.6 248 247.6 248C377.5 504 496 403.1 496 256 496 118.1 389.4 8 247.6 8zm.8 450.8c-112.5 0-203.7-93-203.7-202.8 0-105.4 85.5-203.3 203.7-203.3 112.6 0 202.9 89.5 202.8 203.3 0 121.7-99.6 202.8-202.8 202.8zM316.7 186h-53.2v137.2h53.2c21.4 0 70-5.1 70-68.6 0-63.4-48.6-68.6-70-68.6zm.8 108.5h-19.9v-79.7l19.4-.1c3.8 0 35-2.1 35 39.9 0 24.6-10.5 39.9-34.5 39.9zM203.7 186h-68.2v137.3h34.6V279h27c54.1 0 57.1-37.5 57.1-46.5 0-31-16.8-46.5-50.5-46.5zm-4.9 67.3h-29.2v-41.6h28.3c30.9 0 28.8 41.6.9 41.6z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsPd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm0 449.5c-139.2 0-235.8-138-190.2-267.9l78.8 35.1c-2.1 10.5-3.3 21.5-3.3 32.9 0 99 73.9 126.9 120.4 126.9 22.9 0 53.5-6.7 79.4-29.5L297 311.1c-5.5 6.3-17.6 16.7-36.3 16.7-37.8 0-53.7-39.9-53.9-71.9 230.4 102.6 216.5 96.5 217.9 96.8-34.3 62.4-100.6 104.8-176.7 104.8zm194.2-150l-224-100c18.8-34 54.9-30.7 74.7-11l40.4-41.6c-27.1-23.3-58-27.5-78.1-27.5-47.4 0-80.9 20.5-100.7 51.6l-74.9-33.4c36.1-54.9 98.1-91.2 168.5-91.2 111.1 0 201.5 90.4 201.5 201.5 0 18-2.4 35.4-6.8 52-.3-.1-.4-.2-.6-.4z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsRemix (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm161.7 207.7l4.9 2.2v70c-7.2 3.6-63.4 27.5-67.3 28.8-6.5-1.8-113.7-46.8-137.3-56.2l-64.2 26.6-63.3-27.5v-63.8l59.3-24.8c-.7-.7-.4 5-.4-70.4l67.3-29.7L361 178.5v61.6l49.1 20.3zm-70.4 81.5v-43.8h-.4v-1.8l-113.8-46.5V295l113.8 46.9v-.4l.4.4zm7.5-57.6l39.9-16.4-36.8-15.5-39 16.4 35.9 15.5zm52.3 38.1v-43L355.2 298v43.4l44.3-19z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsSa (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zM137.7 221c13-83.9 80.5-95.7 108.9-95.7 99.8 0 127.5 82.5 127.5 134.2 0 63.6-41 132.9-128.9 132.9-38.9 0-99.1-20-109.4-97h62.5c1.5 30.1 19.6 45.2 54.5 45.2 23.3 0 58-18.2 58-82.8 0-82.5-49.1-80.6-56.7-80.6-33.1 0-51.7 14.6-55.8 43.8h18.2l-49.2 49.2-49-49.2h19.4z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsSamplingPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm107 205.6c-4.7 0-9 2.8-10.7 7.2l-4 9.5-11-92.8c-1.7-13.9-22-13.4-23.1.4l-4.3 51.4-5.2-68.8c-1.1-14.3-22.1-14.2-23.2 0l-3.5 44.9-5.9-94.3c-.9-14.5-22.3-14.4-23.2 0l-5.1 83.7-4.3-66.3c-.9-14.4-22.2-14.4-23.2 0l-5.3 80.2-4.1-57c-1.1-14.3-22-14.3-23.2-.2l-7.7 89.8-1.8-12.2c-1.7-11.4-17.1-13.6-22-3.3l-13.2 27.7H87.5v23.2h51.3c4.4 0 8.4-2.5 10.4-6.4l10.7 73.1c2 13.5 21.9 13 23.1-.7l3.8-43.6 5.7 78.3c1.1 14.4 22.3 14.2 23.2-.1l4.6-70.4 4.8 73.3c.9 14.4 22.3 14.4 23.2-.1l4.9-80.5 4.5 71.8c.9 14.3 22.1 14.5 23.2.2l4.6-58.6 4.9 64.4c1.1 14.3 22 14.2 23.1.1l6.8-83 2.7 22.3c1.4 11.8 17.7 14.1 22.3 3.1l18-43.4h50.5V258l-58.4.3zm-78 5.2h-21.9v21.9c0 4.1-3.3 7.5-7.5 7.5-4.1 0-7.5-3.3-7.5-7.5v-21.9h-21.9c-4.1 0-7.5-3.3-7.5-7.5 0-4.1 3.4-7.5 7.5-7.5h21.9v-21.9c0-4.1 3.4-7.5 7.5-7.5s7.5 3.3 7.5 7.5v21.9h21.9c4.1 0 7.5 3.3 7.5 7.5 0 4.1-3.4 7.5-7.5 7.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsSampling (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm3.6 53.2c2.8-.3 11.5 1 11.5 11.5l6.6 107.2 4.9-59.3c0-6 4.7-10.6 10.6-10.6 5.9 0 10.6 4.7 10.6 10.6 0 2.5-.5-5.7 5.7 81.5l5.8-64.2c.3-2.9 2.9-9.3 10.2-9.3 3.8 0 9.9 2.3 10.6 8.9l11.5 96.5 5.3-12.8c1.8-4.4 5.2-6.6 10.2-6.6h58v21.3h-50.9l-18.2 44.3c-3.9 9.9-19.5 9.1-20.8-3.1l-4-31.9-7.5 92.6c-.3 3-3 9.3-10.2 9.3-3 0-9.8-2.1-10.6-9.3 0-1.9.6 5.8-6.2-77.9l-5.3 72.2c-1.1 4.8-4.8 9.3-10.6 9.3-2.9 0-9.8-2-10.6-9.3 0-1.9.5 6.7-5.8-87.7l-5.8 94.8c0 6.3-3.6 12.4-10.6 12.4-5.2 0-10.6-4.1-10.6-12l-5.8-87.7c-5.8 92.5-5.3 84-5.3 85.9-1.1 4.8-4.8 9.3-10.6 9.3-3 0-9.8-2.1-10.6-9.3 0-.7-.4-1.1-.4-2.6l-6.2-88.6L182 348c-.7 6.5-6.7 9.3-10.6 9.3-5.8 0-9.6-4.1-10.6-8.9L149.7 272c-2 4-3.5 8.4-11.1 8.4H87.2v-21.3H132l13.7-27.9c4.4-9.9 18.2-7.2 19.9 2.7l3.1 20.4 8.4-97.9c0-6 4.8-10.6 10.6-10.6.5 0 10.6-.2 10.6 12.4l4.9 69.1 6.6-92.6c0-10.1 9.5-10.6 10.2-10.6.6 0 10.6.7 10.6 10.6l5.3 80.6 6.2-97.9c.1-1.1-.6-10.3 9.9-11.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsShare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm101 132.4c7.8 0 13.7 6.1 13.7 13.7v182.5c0 7.7-6.1 13.7-13.7 13.7H214.3c-7.7 0-13.7-6-13.7-13.7v-54h-54c-7.8 0-13.7-6-13.7-13.7V131.1c0-8.2 6.6-12.7 12.4-13.7h136.4c7.7 0 13.7 6 13.7 13.7v54h54zM159.9 300.3h40.7V198.9c0-7.4 5.8-12.6 12-13.7h55.8v-40.3H159.9v155.4zm176.2-88.1H227.6v155.4h108.5V212.2z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommonsZero (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm-.4 60.5c-81.9 0-102.5 77.3-102.5 142.8 0 65.5 20.6 142.8 102.5 142.8S350.5 321.5 350.5 256c0-65.5-20.6-142.8-102.5-142.8zm0 53.9c3.3 0 6.4.5 9.2 1.2 5.9 5.1 8.8 12.1 3.1 21.9l-54.5 100.2c-1.7-12.7-1.9-25.1-1.9-34.4 0-28.8 2-88.9 44.1-88.9zm40.8 46.2c2.9 15.4 3.3 31.4 3.3 42.7 0 28.9-2 88.9-44.1 88.9-13.5 0-32.6-7.7-20.1-26.4l60.9-105.2z\"},\"child\":[]}]})(props);\n};\nexport function FaCreativeCommons (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M245.83 214.87l-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0l-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z\"},\"child\":[]}]})(props);\n};\nexport function FaCriticalRole (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M225.82 0c.26.15 216.57 124.51 217.12 124.72 3 1.18 3.7 3.46 3.7 6.56q-.11 125.17 0 250.36a5.88 5.88 0 0 1-3.38 5.78c-21.37 12-207.86 118.29-218.93 124.58h-3C142 466.34 3.08 386.56 2.93 386.48a3.29 3.29 0 0 1-1.88-3.24c0-.87 0-225.94-.05-253.1a5 5 0 0 1 2.93-4.93C27.19 112.11 213.2 6 224.07 0zM215.4 20.42l-.22-.16Q118.06 75.55 21 130.87c0 .12.08.23.13.35l30.86 11.64c-7.71 6-8.32 6-10.65 5.13-.1 0-24.17-9.28-26.8-10v230.43c.88-1.41 64.07-110.91 64.13-111 1.62-2.82 3-1.92 9.12-1.52 1.4.09 1.48.22.78 1.42-41.19 71.33-36.4 63-67.48 116.94-.81 1.4-.61 1.13 1.25 1.13h186.5c1.44 0 1.69-.23 1.7-1.64v-8.88c0-1.34 2.36-.81-18.37-1-7.46-.07-14.14-3.22-21.38-12.7-7.38-9.66-14.62-19.43-21.85-29.21-2.28-3.08-3.45-2.38-16.76-2.38-1.75 0-1.78 0-1.76 1.82.29 26.21.15 25.27 1 32.66.52 4.37 2.16 4.2 9.69 4.81 3.14.26 3.88 4.08.52 4.92-1.57.39-31.6.51-33.67-.1a2.42 2.42 0 0 1 .3-4.73c3.29-.76 6.16.81 6.66-4.44 1.3-13.66 1.17-9 1.1-79.42 0-10.82-.35-12.58-5.36-13.55-1.22-.24-3.54-.16-4.69-.55-2.88-1-2-4.84 1.77-4.85 33.67 0 46.08-1.07 56.06 4.86 7.74 4.61 12 11.48 12.51 20.4.88 14.59-6.51 22.35-15 32.59a1.46 1.46 0 0 0 0 2.22c2.6 3.25 5 6.63 7.71 9.83 27.56 33.23 24.11 30.54 41.28 33.06.89.13 1-.42 1-1.15v-11c0-1 .32-1.43 1.41-1.26a72.37 72.37 0 0 0 23.58-.3c1.08-.15 1.5.2 1.48 1.33 0 .11.88 26.69.87 26.8-.05 1.52.67 1.62 1.89 1.62h186.71Q386.51 304.6 346 234.33c2.26-.66-.4 0 6.69-1.39 2-.39 2.05-.41 3.11 1.44 7.31 12.64 77.31 134 77.37 134.06V138c-1.72.5-103.3 38.72-105.76 39.68-1.08.42-1.55.2-1.91-.88-.63-1.9-1.34-3.76-2.09-5.62-.32-.79-.09-1.13.65-1.39.1 0 95.53-35.85 103-38.77-65.42-37.57-130.56-75-196-112.6l86.82 150.39-.28.33c-9.57-.9-10.46-1.6-11.8-3.94-1-1.69-73.5-127.71-82-142.16-9.1 14.67-83.56 146.21-85.37 146.32-2.93.17-5.88.08-9.25.08q43.25-74.74 86.18-149zm51.93 129.92a37.68 37.68 0 0 0 5.54-.85c1.69-.3 2.53.2 2.6 1.92 0 .11.07 19.06-.86 20.45s-1.88 1.22-2.6-.19c-5-9.69 6.22-9.66-39.12-12-.7 0-1 .23-1 .93 0 .13 3.72 122 3.73 122.11 0 .89.52 1.2 1.21 1.51a83.92 83.92 0 0 1 8.7 4.05c7.31 4.33 11.38 10.84 12.41 19.31 1.44 11.8-2.77 35.77-32.21 37.14-2.75.13-28.26 1.08-34.14-23.25-4.66-19.26 8.26-32.7 19.89-36.4a2.45 2.45 0 0 0 2-2.66c.1-5.63 3-107.1 3.71-121.35.05-1.08-.62-1.16-1.35-1.15-32.35.52-36.75-.34-40.22 8.52-2.42 6.18-4.14 1.32-3.95.23q1.59-9 3.31-18c.4-2.11 1.43-2.61 3.43-1.86 5.59 2.11 6.72 1.7 37.25 1.92 1.73 0 1.78-.08 1.82-1.85.68-27.49.58-22.59 1-29.55a2.69 2.69 0 0 0-1.63-2.8c-5.6-2.91-8.75-7.55-8.9-13.87-.35-14.81 17.72-21.67 27.38-11.51 6.84 7.19 5.8 18.91-2.45 24.15a4.35 4.35 0 0 0-2.22 4.34c0 .59-.11-4.31 1 30.05 0 .9.43 1.12 1.24 1.11.1 0 23-.09 34.47-.37zM68.27 141.7c19.84-4.51 32.68-.56 52.49 1.69 2.76.31 3.74 1.22 3.62 4-.21 5-1.16 22.33-1.24 23.15a2.65 2.65 0 0 1-1.63 2.34c-4.06 1.7-3.61-4.45-4-7.29-3.13-22.43-73.87-32.7-74.63 25.4-.31 23.92 17 53.63 54.08 50.88 27.24-2 19-20.19 24.84-20.47a2.72 2.72 0 0 1 3 3.36c-1.83 10.85-3.42 18.95-3.45 19.15-1.54 9.17-86.7 22.09-93.35-42.06-2.71-25.85 10.44-53.37 40.27-60.15zm80 87.67h-19.49a2.57 2.57 0 0 1-2.66-1.79c2.38-3.75 5.89.92 5.86-6.14-.08-25.75.21-38 .23-40.1 0-3.42-.53-4.65-3.32-4.94-7-.72-3.11-3.37-1.11-3.38 11.84-.1 22.62-.18 30.05.72 8.77 1.07 16.71 12.63 7.93 22.62-2 2.25-4 4.42-6.14 6.73.95 1.15 6.9 8.82 17.28 19.68 2.66 2.78 6.15 3.51 9.88 3.13a2.21 2.21 0 0 0 2.23-2.12c.3-3.42.26 4.73.45-40.58 0-5.65-.34-6.58-3.23-6.83-3.95-.35-4-2.26-.69-3.37l19.09-.09c.32 0 4.49.53 1 3.38 0 .05-.16 0-.24 0-3.61.26-3.94 1-4 4.62-.27 43.93.07 40.23.41 42.82.11.84.27 2.23 5.1 2.14 2.49 0 3.86 3.37 0 3.4-10.37.08-20.74 0-31.11.07-10.67 0-13.47-6.2-24.21-20.82-1.6-2.18-8.31-2.36-8.2-.37.88 16.47 0 17.78 4 17.67 4.75-.1 4.73 3.57.83 3.55zm275-10.15c-1.21 7.13.17 10.38-5.3 10.34-61.55-.42-47.82-.22-50.72-.31a18.4 18.4 0 0 1-3.63-.73c-2.53-.6 1.48-1.23-.38-5.6-1.43-3.37-2.78-6.78-4.11-10.19a1.94 1.94 0 0 0-2-1.44 138 138 0 0 0-14.58.07 2.23 2.23 0 0 0-1.62 1.06c-1.58 3.62-3.07 7.29-4.51 11-1.27 3.23 7.86 1.32 12.19 2.16 3 .57 4.53 3.72.66 3.73H322.9c-2.92 0-3.09-3.15-.74-3.21a6.3 6.3 0 0 0 5.92-3.47c1.5-3 2.8-6 4.11-9.09 18.18-42.14 17.06-40.17 18.42-41.61a1.83 1.83 0 0 1 3 0c2.93 3.34 18.4 44.71 23.62 51.92 2 2.7 5.74 2 6.36 2 3.61.13 4-1.11 4.13-4.29.09-1.87.08 1.17.07-41.24 0-4.46-2.36-3.74-5.55-4.27-.26 0-2.56-.63-.08-3.06.21-.2-.89-.24 21.7-.15 2.32 0 5.32 2.75-1.21 3.45a2.56 2.56 0 0 0-2.66 2.83c-.07 1.63-.19 38.89.29 41.21a3.06 3.06 0 0 0 3.23 2.43c13.25.43 14.92.44 16-3.41 1.67-5.78 4.13-2.52 3.73-.19zm-104.72 64.37c-4.24 0-4.42-3.39-.61-3.41 35.91-.16 28.11.38 37.19-.65 1.68-.19 2.38.24 2.25 1.89-.26 3.39-.64 6.78-1 10.16-.25 2.16-3.2 2.61-3.4-.15-.38-5.31-2.15-4.45-15.63-5.08-1.58-.07-1.64 0-1.64 1.52V304c0 1.65 0 1.6 1.62 1.47 3.12-.25 10.31.34 15.69-1.52.47-.16 3.3-1.79 3.07 1.76 0 .21-.76 10.35-1.18 11.39-.53 1.29-1.88 1.51-2.58.32-1.17-2 0-5.08-3.71-5.3-15.42-.9-12.91-2.55-12.91 6 0 12.25-.76 16.11 3.89 16.24 16.64.48 14.4 0 16.43-5.71.84-2.37 3.5-1.77 3.18.58-.44 3.21-.85 6.43-1.23 9.64 0 .36-.16 2.4-4.66 2.39-37.16-.08-34.54-.19-35.21-.31-2.72-.51-2.2-3 .22-3.45 1.1-.19 4 .54 4.16-2.56 2.44-56.22-.07-51.34-3.91-51.33zm-.41-109.52c2.46.61 3.13 1.76 2.95 4.65-.33 5.3-.34 9-.55 9.69-.66 2.23-3.15 2.12-3.34-.27-.38-4.81-3.05-7.82-7.57-9.15-26.28-7.73-32.81 15.46-27.17 30.22 5.88 15.41 22 15.92 28.86 13.78 5.92-1.85 5.88-6.5 6.91-7.58 1.23-1.3 2.25-1.84 3.12 1.1 0 .1.57 11.89-6 12.75-1.6.21-19.38 3.69-32.68-3.39-21-11.19-16.74-35.47-6.88-45.33 14-14.06 39.91-7.06 42.32-6.47zM289.8 280.14c3.28 0 3.66 3 .16 3.43-2.61.32-5-.42-5 5.46 0 2-.19 29.05.4 41.45.11 2.29 1.15 3.52 3.44 3.65 22 1.21 14.95-1.65 18.79-6.34 1.83-2.24 2.76.84 2.76 1.08.35 13.62-4 12.39-5.19 12.4l-38.16-.19c-1.93-.23-2.06-3-.42-3.38 2-.48 4.94.4 5.13-2.8 1-15.87.57-44.65.34-47.81-.27-3.77-2.8-3.27-5.68-3.71-2.47-.38-2-3.22.34-3.22 1.45-.02 17.97-.03 23.09-.02zm-31.63-57.79c.07 4.08 2.86 3.46 6 3.58 2.61.1 2.53 3.41-.07 3.43-6.48 0-13.7 0-21.61-.06-3.84 0-3.38-3.35 0-3.37 4.49 0 3.24 1.61 3.41-45.54 0-5.08-3.27-3.54-4.72-4.23-2.58-1.23-1.36-3.09.41-3.15 1.29 0 20.19-.41 21.17.21s1.87 1.65-.42 2.86c-1 .52-3.86-.28-4.15 2.47 0 .21-.82 1.63-.07 43.8zm-36.91 274.27a2.93 2.93 0 0 0 3.26 0c17-9.79 182-103.57 197.42-112.51-.14-.43 11.26-.18-181.52-.27-1.22 0-1.57.37-1.53 1.56 0 .1 1.25 44.51 1.22 50.38a28.33 28.33 0 0 1-1.36 7.71c-.55 1.83.38-.5-13.5 32.23-.73 1.72-1 2.21-2-.08-4.19-10.34-8.28-20.72-12.57-31a23.6 23.6 0 0 1-2-10.79c.16-2.46.8-16.12 1.51-48 0-1.95 0-2-2-2h-183c2.58 1.63 178.32 102.57 196 112.76zm-90.9-188.75c0 2.4.36 2.79 2.76 3 11.54 1.17 21 3.74 25.64-7.32 6-14.46 2.66-34.41-12.48-38.84-2-.59-16-2.76-15.94 1.51.05 8.04.01 11.61.02 41.65zm105.75-15.05c0 2.13 1.07 38.68 1.09 39.13.34 9.94-25.58 5.77-25.23-2.59.08-2 1.37-37.42 1.1-39.43-14.1 7.44-14.42 40.21 6.44 48.8a17.9 17.9 0 0 0 22.39-7.07c4.91-7.76 6.84-29.47-5.43-39a2.53 2.53 0 0 1-.36.12zm-12.28-198c-9.83 0-9.73 14.75-.07 14.87s10.1-14.88.07-14.91zm-80.15 103.83c0 1.8.41 2.4 2.17 2.58 13.62 1.39 12.51-11 12.16-13.36-1.69-11.22-14.38-10.2-14.35-7.81.05 4.5-.03 13.68.02 18.59zm212.32 6.4l-6.1-15.84c-2.16 5.48-4.16 10.57-6.23 15.84z\"},\"child\":[]}]})(props);\n};\nexport function FaCss3Alt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z\"},\"child\":[]}]})(props);\n};\nexport function FaCss3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 32l-64 368-223.3 80L0 400l19.6-94.8h82l-8 40.6L210 390.2l134.1-44.4 18.8-97.1H29.5l16-82h333.7l10.5-52.7H56.3l16.3-82H480z\"},\"child\":[]}]})(props);\n};\nexport function FaCuttlefish (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 440 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M344 305.5c-17.5 31.6-57.4 54.5-96 54.5-56.6 0-104-47.4-104-104s47.4-104 104-104c38.6 0 78.5 22.9 96 54.5 13.7-50.9 41.7-93.3 87-117.8C385.7 39.1 320.5 8 248 8 111 8 0 119 0 256s111 248 248 248c72.5 0 137.7-31.1 183-80.7-45.3-24.5-73.3-66.9-87-117.8z\"},\"child\":[]}]})(props);\n};\nexport function FaDAndDBeyond (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.8 241.5c13.8 0 21-10.1 24.8-17.9-1-1.1-5-4.2-7.4-6.6-2.4 4.3-8.2 10.7-13.9 10.7-10.2 0-15.4-14.7-3.2-26.6-.5-.2-4.3-1.8-8 2.4 0-3 1-5.1 2.1-6.6-3.5 1.3-9.8 5.6-11.4 7.9.2-5.8 1.6-7.5.6-9l-.2-.2s-8.5 5.6-9.3 14.7c0 0 1.1-1.6 2.1-1.9.6-.3 1.3 0 .6 1.9-.2.6-5.8 15.7 5.1 26-.6-1.6-1.9-7.6 2.4-1.9-.3.1 5.8 7.1 15.7 7.1zm52.4-21.1c0-4-4.9-4.4-5.6-4.5 2 3.9.9 7.5.2 9 2.5-.4 5.4-1.6 5.4-4.5zm10.3 5.2c0-6.4-6.2-11.4-13.5-10.7 8 1.3 5.6 13.8-5 11.4 3.7-2.6 3.2-9.9-1.3-12.5 1.4 4.2-3 8.2-7.4 4.6-2.4-1.9-8-6.6-10.6-8.6-2.4-2.1-5.5-1-6.6-1.8-1.3-1.1-.5-3.8-2.2-5-1.6-.8-3-.3-4.8-1-1.6-.6-2.7-1.9-2.6-3.5-2.5 4.4 3.4 6.3 4.5 8.5 1 1.9-.8 4.8 4 8.5 14.8 11.6 9.1 8 10.4 18.1.6 4.3 4.2 6.7 6.4 7.4-2.1-1.9-2.9-6.4 0-9.3 0 13.9 19.2 13.3 23.1 6.4-2.4 1.1-7-.2-9-1.9 7.7 1 14.2-4.1 14.6-10.6zm-39.4-18.4c2 .8 1.6.7 6.4 4.5 10.2-24.5 21.7-15.7 22-15.5 2.2-1.9 9.8-3.8 13.8-2.7-2.4-2.7-7.5-6.2-13.3-6.2-4.7 0-7.4 2.2-8 1.3-.8-1.4 3.2-3.4 3.2-3.4-5.4.2-9.6 6.7-11.2 5.9-1.1-.5 1.4-3.7 1.4-3.7-5.1 2.9-9.3 9.1-10.2 13 4.6-5.8 13.8-9.8 19.7-9-10.5.5-19.5 9.7-23.8 15.8zm242.5 51.9c-20.7 0-40 1.3-50.3 2.1l7.4 8.2v77.2l-7.4 8.2c10.4.8 30.9 2.1 51.6 2.1 42.1 0 59.1-20.7 59.1-48.9 0-29.3-23.2-48.9-60.4-48.9zm-15.1 75.6v-53.3c30.1-3.3 46.8 3.8 46.8 26.3 0 25.6-21.4 30.2-46.8 27zM301.6 181c-1-3.4-.2-6.9 1.1-9.4 1 3 2.6 6.4 7.5 9-.5-2.4-.2-5.6.5-8-1.4-5.4 2.1-9.9 6.4-9.9 6.9 0 8.5 8.8 4.7 14.4 2.1 3.2 5.5 5.6 7.7 7.8 3.2-3.7 5.5-9.5 5.5-13.8 0-8.2-5.5-15.9-16.7-16.5-20-.9-20.2 16.6-20 18.9.5 5.2 3.4 7.8 3.3 7.5zm-.4 6c-.5 1.8-7 3.7-10.2 6.9 4.8-1 7-.2 7.8 1.8.5 1.4-.2 3.4-.5 5.6 1.6-1.8 7-5.5 11-6.2-1-.3-3.4-.8-4.3-.8 2.9-3.4 9.3-4.5 12.8-3.7-2.2-.2-6.7 1.1-8.5 2.6 1.6.3 3 .6 4.3 1.1-2.1.8-4.8 3.4-5.8 6.1 7-5 13.1 5.2 7 8.2.8.2 2.7 0 3.5-.5-.3 1.1-1.9 3-3 3.4 2.9 0 7-1.9 8.2-4.6 0 0-1.8.6-2.6-.2s.3-4.3.3-4.3c-2.3 2.9-3.4-1.3-1.3-4.2-1-.3-3.5-.6-4.6-.5 3.2-1.1 10.4-1.8 11.2-.3.6 1.1-1 3.4-1 3.4 4-.5 8.3 1.1 6.7 5.1 2.9-1.4 5.5-5.9 4.8-10.4-.3 1-1.6 2.4-2.9 2.7.2-1.4-1-2.2-1.9-2.6 1.7-9.6-14.6-14.2-14.1-23.9-1 1.3-1.8 5-.8 7.1 2.7 3.2 8.7 6.7 10.1 12.2-2.6-6.4-15.1-11.4-14.6-20.2-1.6 1.6-2.6 7.8-1.3 11 2.4 1.4 4.5 3.8 4.8 6.1-2.2-5.1-11.4-6.1-13.9-12.2-.6 2.2-.3 5 1 6.7 0 0-2.2-.8-7-.6 1.7.6 5.1 3.5 4.8 5.2zm25.9 7.4c-2.7 0-3.5-2.1-4.2-4.3 3.3 1.3 4.2 4.3 4.2 4.3zm38.9 3.7l-1-.6c-1.1-1-2.9-1.4-4.7-1.4-2.9 0-5.8 1.3-7.5 3.4-.8.8-1.4 1.8-2.1 2.6v15.7c3.5 2.6 7.1-2.9 3-7.2 1.5.3 4.6 2.7 5.1 3.2 0 0 2.6-.5 5-.5 2.1 0 3.9.3 5.6 1.1V196c-1.1.5-2.2 1-2.7 1.4zM79.9 305.9c17.2-4.6 16.2-18 16.2-19.9 0-20.6-24.1-25-37-25H3l8.3 8.6v29.5H0l11.4 14.6V346L3 354.6c61.7 0 73.8 1.5 86.4-5.9 6.7-4 9.9-9.8 9.9-17.6 0-5.1 2.6-18.8-19.4-25.2zm-41.3-27.5c20 0 29.6-.8 29.6 9.1v3c0 12.1-19 8.8-29.6 8.8zm0 59.2V315c12.2 0 32.7-2.3 32.7 8.8v4.5h.2c0 11.2-12.5 9.3-32.9 9.3zm101.2-19.3l23.1.2v-.2l14.1-21.2h-37.2v-14.9h52.4l-14.1-21v-.2l-73.5.2 7.4 8.2v77.1l-7.4 8.2h81.2l14.1-21.2-60.1.2zm214.7-60.1c-73.9 0-77.5 99.3-.3 99.3 77.9 0 74.1-99.3.3-99.3zm-.3 77.5c-37.4 0-36.9-55.3.2-55.3 36.8.1 38.8 55.3-.2 55.3zm-91.3-8.3l44.1-66.2h-41.7l6.1 7.2-20.5 37.2h-.3l-21-37.2 6.4-7.2h-44.9l44.1 65.8.2 19.4-7.7 8.2h42.6l-7.2-8.2zm-28.4-151.3c1.6 1.3 2.9 2.4 2.9 6.6v38.8c0 4.2-.8 5.3-2.7 6.4-.1.1-7.5 4.5-7.9 4.6h35.1c10 0 17.4-1.5 26-8.6-.6-5 .2-9.5.8-12 0-.2-1.8 1.4-2.7 3.5 0-5.7 1.6-15.4 9.6-20.5-.1 0-3.7-.8-9 1.1 2-3.1 10-7.9 10.4-7.9-8.2-26-38-22.9-32.2-22.9-30.9 0-32.6.3-39.9-4 .1.8.5 8.2 9.6 14.9zm21.5 5.5c4.6 0 23.1-3.3 23.1 17.3 0 20.7-18.4 17.3-23.1 17.3zm228.9 79.6l7 8.3V312h-.3c-5.4-14.4-42.3-41.5-45.2-50.9h-31.6l7.4 8.5v76.9l-7.2 8.3h39l-7.4-8.2v-47.4h.3c3.7 10.6 44.5 42.9 48.5 55.6h21.3v-85.2l7.4-8.3zm-106.7-96.1c-32.2 0-32.8.2-39.9-4 .1.7.5 8.3 9.6 14.9 3.1 2 2.9 4.3 2.9 9.5 1.8-1.1 3.8-2.2 6.1-3-1.1 1.1-2.7 2.7-3.5 4.5 1-1.1 7.5-5.1 14.6-3.5-1.6.3-4 1.1-6.1 2.9.1 0 2.1-1.1 7.5-.3v-4.3c4.7 0 23.1-3.4 23.1 17.3 0 20.5-18.5 17.3-19.7 17.3 5.7 4.4 5.8 12 2.2 16.3h.3c33.4 0 36.7-27.3 36.7-34 0-3.8-1.1-32-33.8-33.6z\"},\"child\":[]}]})(props);\n};\nexport function FaDAndD (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M82.5 98.9c-.6-17.2 2-33.8 12.7-48.2.3 7.4 1.2 14.5 4.2 21.6 5.9-27.5 19.7-49.3 42.3-65.5-1.9 5.9-3.5 11.8-3 17.7 8.7-7.4 18.8-17.8 44.4-22.7 14.7-2.8 29.7-2 42.1 1 38.5 9.3 61 34.3 69.7 72.3 5.3 23.1.7 45-8.3 66.4-5.2 12.4-12 24.4-20.7 35.1-2-1.9-3.9-3.8-5.8-5.6-42.8-40.8-26.8-25.2-37.4-37.4-1.1-1.2-1-2.2-.1-3.6 8.3-13.5 11.8-28.2 10-44-1.1-9.8-4.3-18.9-11.3-26.2-14.5-15.3-39.2-15-53.5.6-11.4 12.5-14.1 27.4-10.9 43.6.2 1.3.4 2.7 0 3.9-3.4 13.7-4.6 27.6-2.5 41.6.1.5.1 1.1.1 1.6 0 .3-.1.5-.2 1.1-21.8-11-36-28.3-43.2-52.2-8.3 17.8-11.1 35.5-6.6 54.1-15.6-15.2-21.3-34.3-22-55.2zm469.6 123.2c-11.6-11.6-25-20.4-40.1-26.6-12.8-5.2-26-7.9-39.9-7.1-10 .6-19.6 3.1-29 6.4-2.5.9-5.1 1.6-7.7 2.2-4.9 1.2-7.3-3.1-4.7-6.8 3.2-4.6 3.4-4.2 15-12 .6-.4 1.2-.8 2.2-1.5h-2.5c-.6 0-1.2.2-1.9.3-19.3 3.3-30.7 15.5-48.9 29.6-10.4 8.1-13.8 3.8-12-.5 1.4-3.5 3.3-6.7 5.1-10 1-1.8 2.3-3.4 3.5-5.1-.2-.2-.5-.3-.7-.5-27 18.3-46.7 42.4-57.7 73.3.3.3.7.6 1 .9.3-.6.5-1.2.9-1.7 10.4-12.1 22.8-21.8 36.6-29.8 18.2-10.6 37.5-18.3 58.7-20.2 4.3-.4 8.7-.1 13.1-.1-1.8.7-3.5.9-5.3 1.1-18.5 2.4-35.5 9-51.5 18.5-30.2 17.9-54.5 42.2-75.1 70.4-.3.4-.4.9-.7 1.3 14.5 5.3 24 17.3 36.1 25.6.2-.1.3-.2.4-.4l1.2-2.7c12.2-26.9 27-52.3 46.7-74.5 16.7-18.8 38-25.3 62.5-20 5.9 1.3 11.4 4.4 17.2 6.8 2.3-1.4 5.1-3.2 8-4.7 8.4-4.3 17.4-7 26.7-9 14.7-3.1 29.5-4.9 44.5-1.3v-.5c-.5-.4-1.2-.8-1.7-1.4zM316.7 397.6c-39.4-33-22.8-19.5-42.7-35.6-.8.9 0-.2-1.9 3-11.2 19.1-25.5 35.3-44 47.6-10.3 6.8-21.5 11.8-34.1 11.8-21.6 0-38.2-9.5-49.4-27.8-12-19.5-13.3-40.7-8.2-62.6 7.8-33.8 30.1-55.2 38.6-64.3-18.7-6.2-33 1.7-46.4 13.9.8-13.9 4.3-26.2 11.8-37.3-24.3 10.6-45.9 25-64.8 43.9-.3-5.8 5.4-43.7 5.6-44.7.3-2.7-.6-5.3-3-7.4-24.2 24.7-44.5 51.8-56.1 84.6 7.4-5.9 14.9-11.4 23.6-16.2-8.3 22.3-19.6 52.8-7.8 101.1 4.6 19 11.9 36.8 24.1 52.3 2.9 3.7 6.3 6.9 9.5 10.3.2-.2.4-.3.6-.5-1.4-7-2.2-14.1-1.5-21.9 2.2 3.2 3.9 6 5.9 8.6 12.6 16 28.7 27.4 47.2 35.6 25 11.3 51.1 13.3 77.9 8.6 54.9-9.7 90.7-48.6 116-98.8 1-1.8.6-2.9-.9-4.2zm172-46.4c-9.5-3.1-22.2-4.2-28.7-2.9 9.9 4 14.1 6.6 18.8 12 12.6 14.4 10.4 34.7-5.4 45.6-11.7 8.1-24.9 10.5-38.9 9.1-1.2-.1-2.3-.4-3-.6 2.8-3.7 6-7 8.1-10.8 9.4-16.8 5.4-42.1-8.7-56.1-2.1-2.1-4.6-3.9-7-5.9-.3 1.3-.1 2.1.1 2.8 4.2 16.6-8.1 32.4-24.8 31.8-7.6-.3-13.9-3.8-19.6-8.5-19.5-16.1-39.1-32.1-58.5-48.3-5.9-4.9-12.5-8.1-20.1-8.7-4.6-.4-9.3-.6-13.9-.9-5.9-.4-8.8-2.8-10.4-8.4-.9-3.4-1.5-6.8-2.2-10.2-1.5-8.1-6.2-13-14.3-14.2-4.4-.7-8.9-1-13.3-1.5-13-1.4-19.8-7.4-22.6-20.3-5 11-1.6 22.4 7.3 29.9 4.5 3.8 9.3 7.3 13.8 11.2 4.6 3.8 7.4 8.7 7.9 14.8.4 4.7.8 9.5 1.8 14.1 2.2 10.6 8.9 18.4 17 25.1 16.5 13.7 33 27.3 49.5 41.1 17.9 15 13.9 32.8 13 56-.9 22.9 12.2 42.9 33.5 51.2 1 .4 2 .6 3.6 1.1-15.7-18.2-10.1-44.1.7-52.3.3 2.2.4 4.3.9 6.4 9.4 44.1 45.4 64.2 85 56.9 16-2.9 30.6-8.9 42.9-19.8 2-1.8 3.7-4.1 5.9-6.5-19.3 4.6-35.8.1-50.9-10.6.7-.3 1.3-.3 1.9-.3 21.3 1.8 40.6-3.4 57-17.4 19.5-16.6 26.6-42.9 17.4-66-8.3-20.1-23.6-32.3-43.8-38.9zM99.4 179.3c-5.3-9.2-13.2-15.6-22.1-21.3 13.7-.5 26.6.2 39.6 3.7-7-12.2-8.5-24.7-5-38.7 5.3 11.9 13.7 20.1 23.6 26.8 19.7 13.2 35.7 19.6 46.7 30.2 3.4 3.3 6.3 7.1 9.6 10.9-.8-2.1-1.4-4.1-2.2-6-5-10.6-13-18.6-22.6-25-1.8-1.2-2.8-2.5-3.4-4.5-3.3-12.5-3-25.1-.7-37.6 1-5.5 2.8-10.9 4.5-16.3.8-2.4 2.3-4.6 4-6.6.6 6.9 0 25.5 19.6 46 10.8 11.3 22.4 21.9 33.9 32.7 9 8.5 18.3 16.7 25.5 26.8 1.1 1.6 2.2 3.3 3.8 4.7-5-13-14.2-24.1-24.2-33.8-9.6-9.3-19.4-18.4-29.2-27.4-3.3-3-4.6-6.7-5.1-10.9-1.2-10.4 0-20.6 4.3-30.2.5-1 1.1-2 1.9-3.3.5 4.2.6 7.9 1.4 11.6 4.8 23.1 20.4 36.3 49.3 63.5 10 9.4 19.3 19.2 25.6 31.6 4.8 9.3 7.3 19 5.7 29.6-.1.6.5 1.7 1.1 2 6.2 2.6 10 6.9 9.7 14.3 7.7-2.6 12.5-8 16.4-14.5 4.2 20.2-9.1 50.3-27.2 58.7.4-4.5 5-23.4-16.5-27.7-6.8-1.3-12.8-1.3-22.9-2.1 4.7-9 10.4-20.6.5-22.4-24.9-4.6-52.8 1.9-57.8 4.6 8.2.4 16.3 1 23.5 3.3-2 6.5-4 12.7-5.8 18.9-1.9 6.5 2.1 14.6 9.3 9.6 1.2-.9 2.3-1.9 3.3-2.7-3.1 17.9-2.9 15.9-2.8 18.3.3 10.2 9.5 7.8 15.7 7.3-2.5 11.8-29.5 27.3-45.4 25.8 7-4.7 12.7-10.3 15.9-17.9-6.5.8-12.9 1.6-19.2 2.4l-.3-.9c4.7-3.4 8-7.8 10.2-13.1 8.7-21.1-3.6-38-25-39.9-9.1-.8-17.8.8-25.9 5.5 6.2-15.6 17.2-26.6 32.6-34.5-15.2-4.3-8.9-2.7-24.6-6.3 14.6-9.3 30.2-13.2 46.5-14.6-5.2-3.2-48.1-3.6-70.2 20.9 7.9 1.4 15.5 2.8 23.2 4.2-23.8 7-44 19.7-62.4 35.6 1.1-4.8 2.7-9.5 3.3-14.3.6-4.5.8-9.2.1-13.6-1.5-9.4-8.9-15.1-19.7-16.3-7.9-.9-15.6.1-23.3 1.3-.9.1-1.7.3-2.9 0 15.8-14.8 36-21.7 53.1-33.5 6-4.5 6.8-8.2 3-14.9zm128.4 26.8c3.3 16 12.6 25.5 23.8 24.3-4.6-11.3-12.1-19.5-23.8-24.3z\"},\"child\":[]}]})(props);\n};\nexport function FaDailymotion (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M298.93,267a48.4,48.4,0,0,0-24.36-6.21q-19.83,0-33.44,13.27t-13.61,33.42q0,21.16,13.28,34.6t33.43,13.44q20.5,0,34.11-13.78T322,307.47A47.13,47.13,0,0,0,315.9,284,44.13,44.13,0,0,0,298.93,267ZM0,32V480H448V32ZM374.71,405.26h-53.1V381.37h-.67q-15.79,26.2-55.78,26.2-27.56,0-48.89-13.1a88.29,88.29,0,0,1-32.94-35.77q-11.6-22.68-11.59-50.89,0-27.56,11.76-50.22a89.9,89.9,0,0,1,32.93-35.78q21.18-13.09,47.72-13.1a80.87,80.87,0,0,1,29.74,5.21q13.28,5.21,25,17V153l55.79-12.09Z\"},\"child\":[]}]})(props);\n};\nexport function FaDashcube (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M326.6 104H110.4c-51.1 0-91.2 43.3-91.2 93.5V427c0 50.5 40.1 85 91.2 85h227.2c51.1 0 91.2-34.5 91.2-85V0L326.6 104zM153.9 416.5c-17.7 0-32.4-15.1-32.4-32.8V240.8c0-17.7 14.7-32.5 32.4-32.5h140.7c17.7 0 32 14.8 32 32.5v123.5l51.1 52.3H153.9z\"},\"child\":[]}]})(props);\n};\nexport function FaDeezer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M451.46,244.71H576V172H451.46Zm0-173.89v72.67H576V70.82Zm0,275.06H576V273.2H451.46ZM0,447.09H124.54V374.42H0Zm150.47,0H275V374.42H150.47Zm150.52,0H425.53V374.42H301Zm150.47,0H576V374.42H451.46ZM301,345.88H425.53V273.2H301Zm-150.52,0H275V273.2H150.47Zm0-101.17H275V172H150.47Z\"},\"child\":[]}]})(props);\n};\nexport function FaDelicious (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M446.5 68c-.4-1.5-.9-3-1.4-4.5-.9-2.5-2-4.8-3.3-7.1-1.4-2.4-3-4.8-4.7-6.9-2.1-2.5-4.4-4.8-6.9-6.8-1.1-.9-2.2-1.7-3.3-2.5-1.3-.9-2.6-1.7-4-2.4-1.8-1-3.6-1.8-5.5-2.5-1.7-.7-3.5-1.3-5.4-1.7-3.8-1-7.9-1.5-12-1.5H48C21.5 32 0 53.5 0 80v352c0 4.1.5 8.2 1.5 12 2 7.7 5.8 14.6 11 20.3 1 1.1 2.1 2.2 3.3 3.3 5.7 5.2 12.6 9 20.3 11 3.8 1 7.9 1.5 12 1.5h352c26.5 0 48-21.5 48-48V80c-.1-4.1-.6-8.2-1.6-12zM416 432c0 8.8-7.2 16-16 16H224V256H32V80c0-8.8 7.2-16 16-16h176v192h192z\"},\"child\":[]}]})(props);\n};\nexport function FaDeploydog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M382.2 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.6 0-33.2 16.4-33.2 32.6zM188.5 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.7 0-33.2 16.4-33.2 32.6zM448 96c17.5 0 32 14.4 32 32v256c0 17.5-14.4 32-32 32H64c-17.5 0-32-14.4-32-32V128c0-17.5 14.4-32 32-32h384m0-32H64C28.8 64 0 92.8 0 128v256c0 35.2 28.8 64 64 64h384c35.2 0 64-28.8 64-64V128c0-35.2-28.8-64-64-64z\"},\"child\":[]}]})(props);\n};\nexport function FaDeskpro (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M205.9 512l31.1-38.4c12.3-.2 25.6-1.4 36.5-6.6 38.9-18.6 38.4-61.9 38.3-63.8-.1-5-.8-4.4-28.9-37.4H362c-.2 50.1-7.3 68.5-10.2 75.7-9.4 23.7-43.9 62.8-95.2 69.4-8.7 1.1-32.8 1.2-50.7 1.1zm200.4-167.7c38.6 0 58.5-13.6 73.7-30.9l-175.5-.3-17.4 31.3 119.2-.1zm-43.6-223.9v168.3h-73.5l-32.7 55.5H250c-52.3 0-58.1-56.5-58.3-58.9-1.2-13.2-21.3-11.6-20.1 1.8 1.4 15.8 8.8 40 26.4 57.1h-91c-25.5 0-110.8-26.8-107-114V16.9C0 .9 9.7.3 15 .1h82c.2 0 .3.1.5.1 4.3-.4 50.1-2.1 50.1 43.7 0 13.3 20.2 13.4 20.2 0 0-18.2-5.5-32.8-15.8-43.7h84.2c108.7-.4 126.5 79.4 126.5 120.2zm-132.5 56l64 29.3c13.3-45.5-42.2-71.7-64-29.3z\"},\"child\":[]}]})(props);\n};\nexport function FaDev (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M120.12 208.29c-3.88-2.9-7.77-4.35-11.65-4.35H91.03v104.47h17.45c3.88 0 7.77-1.45 11.65-4.35 3.88-2.9 5.82-7.25 5.82-13.06v-69.65c-.01-5.8-1.96-10.16-5.83-13.06zM404.1 32H43.9C19.7 32 .06 51.59 0 75.8v360.4C.06 460.41 19.7 480 43.9 480h360.2c24.21 0 43.84-19.59 43.9-43.8V75.8c-.06-24.21-19.7-43.8-43.9-43.8zM154.2 291.19c0 18.81-11.61 47.31-48.36 47.25h-46.4V172.98h47.38c35.44 0 47.36 28.46 47.37 47.28l.01 70.93zm100.68-88.66H201.6v38.42h32.57v29.57H201.6v38.41h53.29v29.57h-62.18c-11.16.29-20.44-8.53-20.72-19.69V193.7c-.27-11.15 8.56-20.41 19.71-20.69h63.19l-.01 29.52zm103.64 115.29c-13.2 30.75-36.85 24.63-47.44 0l-38.53-144.8h32.57l29.71 113.72 29.57-113.72h32.58l-38.46 144.8z\"},\"child\":[]}]})(props);\n};\nexport function FaDeviantart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 93.2l-98.2 179.1 7.4 9.5H320v127.7H159.1l-13.5 9.2-43.7 84c-.3 0-8.6 8.6-9.2 9.2H0v-93.2l93.2-179.4-7.4-9.2H0V102.5h156l13.5-9.2 43.7-84c.3 0 8.6-8.6 9.2-9.2H320v93.1z\"},\"child\":[]}]})(props);\n};\nexport function FaDhl (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M238 301.2h58.7L319 271h-58.7L238 301.2zM0 282.9v6.4h81.8l4.7-6.4H0zM172.9 271c-8.7 0-6-3.6-4.6-5.5 2.8-3.8 7.6-10.4 10.4-14.1 2.8-3.7 2.8-5.9-2.8-5.9h-51l-41.1 55.8h100.1c33.1 0 51.5-22.5 57.2-30.3h-68.2zm317.5-6.9l39.3-53.4h-62.2l-39.3 53.4h62.2zM95.3 271H0v6.4h90.6l4.7-6.4zm111-26.6c-2.8 3.8-7.5 10.4-10.3 14.2-1.4 2-4.1 5.5 4.6 5.5h45.6s7.3-10 13.5-18.4c8.4-11.4.7-35-29.2-35H112.6l-20.4 27.8h111.4c5.6 0 5.5 2.2 2.7 5.9zM0 301.2h73.1l4.7-6.4H0v6.4zm323 0h58.7L404 271h-58.7c-.1 0-22.3 30.2-22.3 30.2zm222 .1h95v-6.4h-90.3l-4.7 6.4zm22.3-30.3l-4.7 6.4H640V271h-72.7zm-13.5 18.3H640v-6.4h-81.5l-4.7 6.4zm-164.2-78.6l-22.5 30.6h-26.2l22.5-30.6h-58.7l-39.3 53.4H409l39.3-53.4h-58.7zm33.5 60.3s-4.3 5.9-6.4 8.7c-7.4 10-.9 21.6 23.2 21.6h94.3l22.3-30.3H423.1z\"},\"child\":[]}]})(props);\n};\nexport function FaDiaspora (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M251.64 354.55c-1.4 0-88 119.9-88.7 119.9S76.34 414 76 413.25s86.6-125.7 86.6-127.4c0-2.2-129.6-44-137.6-47.1-1.3-.5 31.4-101.8 31.7-102.1.6-.7 144.4 47 145.5 47 .4 0 .9-.6 1-1.3.4-2 1-148.6 1.7-149.6.8-1.2 104.5-.7 105.1-.3 1.5 1 3.5 156.1 6.1 156.1 1.4 0 138.7-47 139.3-46.3.8.9 31.9 102.2 31.5 102.6-.9.9-140.2 47.1-140.6 48.8-.3 1.4 82.8 122.1 82.5 122.9s-85.5 63.5-86.3 63.5c-1-.2-89-125.5-90.9-125.5z\"},\"child\":[]}]})(props);\n};\nexport function FaDigg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M81.7 172.3H0v174.4h132.7V96h-51v76.3zm0 133.4H50.9v-92.3h30.8v92.3zm297.2-133.4v174.4h81.8v28.5h-81.8V416H512V172.3H378.9zm81.8 133.4h-30.8v-92.3h30.8v92.3zm-235.6 41h82.1v28.5h-82.1V416h133.3V172.3H225.1v174.4zm51.2-133.3h30.8v92.3h-30.8v-92.3zM153.3 96h51.3v51h-51.3V96zm0 76.3h51.3v174.4h-51.3V172.3z\"},\"child\":[]}]})(props);\n};\nexport function FaDigitalOcean (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M87 481.8h73.7v-73.6H87zM25.4 346.6v61.6H87v-61.6zm466.2-169.7c-23-74.2-82.4-133.3-156.6-156.6C164.9-32.8 8 93.7 8 255.9h95.8c0-101.8 101-180.5 208.1-141.7 39.7 14.3 71.5 46.1 85.8 85.7 39.1 107-39.7 207.8-141.4 208v.3h-.3V504c162.6 0 288.8-156.8 235.6-327.1zm-235.3 231v-95.3h-95.6v95.6H256v-.3z\"},\"child\":[]}]})(props);\n};\nexport function FaDiscord (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M524.531,69.836a1.5,1.5,0,0,0-.764-.7A485.065,485.065,0,0,0,404.081,32.03a1.816,1.816,0,0,0-1.923.91,337.461,337.461,0,0,0-14.9,30.6,447.848,447.848,0,0,0-134.426,0,309.541,309.541,0,0,0-15.135-30.6,1.89,1.89,0,0,0-1.924-.91A483.689,483.689,0,0,0,116.085,69.137a1.712,1.712,0,0,0-.788.676C39.068,183.651,18.186,294.69,28.43,404.354a2.016,2.016,0,0,0,.765,1.375A487.666,487.666,0,0,0,176.02,479.918a1.9,1.9,0,0,0,2.063-.676A348.2,348.2,0,0,0,208.12,430.4a1.86,1.86,0,0,0-1.019-2.588,321.173,321.173,0,0,1-45.868-21.853,1.885,1.885,0,0,1-.185-3.126c3.082-2.309,6.166-4.711,9.109-7.137a1.819,1.819,0,0,1,1.9-.256c96.229,43.917,200.41,43.917,295.5,0a1.812,1.812,0,0,1,1.924.233c2.944,2.426,6.027,4.851,9.132,7.16a1.884,1.884,0,0,1-.162,3.126,301.407,301.407,0,0,1-45.89,21.83,1.875,1.875,0,0,0-1,2.611,391.055,391.055,0,0,0,30.014,48.815,1.864,1.864,0,0,0,2.063.7A486.048,486.048,0,0,0,610.7,405.729a1.882,1.882,0,0,0,.765-1.352C623.729,277.594,590.933,167.465,524.531,69.836ZM222.491,337.58c-28.972,0-52.844-26.587-52.844-59.239S193.056,219.1,222.491,219.1c29.665,0,53.306,26.82,52.843,59.239C275.334,310.993,251.924,337.58,222.491,337.58Zm195.38,0c-28.971,0-52.843-26.587-52.843-59.239S388.437,219.1,417.871,219.1c29.667,0,53.307,26.82,52.844,59.239C470.715,310.993,447.538,337.58,417.871,337.58Z\"},\"child\":[]}]})(props);\n};\nexport function FaDiscourse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M225.9 32C103.3 32 0 130.5 0 252.1 0 256 .1 480 .1 480l225.8-.2c122.7 0 222.1-102.3 222.1-223.9C448 134.3 348.6 32 225.9 32zM224 384c-19.4 0-37.9-4.3-54.4-12.1L88.5 392l22.9-75c-9.8-18.1-15.4-38.9-15.4-61 0-70.7 57.3-128 128-128s128 57.3 128 128-57.3 128-128 128z\"},\"child\":[]}]})(props);\n};\nexport function FaDochub (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 416 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M397.9 160H256V19.6L397.9 160zM304 192v130c0 66.8-36.5 100.1-113.3 100.1H96V84.8h94.7c12 0 23.1.8 33.1 2.5v-84C212.9 1.1 201.4 0 189.2 0H0v512h189.2C329.7 512 400 447.4 400 318.1V192h-96z\"},\"child\":[]}]})(props);\n};\nexport function FaDocker (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M349.9 236.3h-66.1v-59.4h66.1v59.4zm0-204.3h-66.1v60.7h66.1V32zm78.2 144.8H362v59.4h66.1v-59.4zm-156.3-72.1h-66.1v60.1h66.1v-60.1zm78.1 0h-66.1v60.1h66.1v-60.1zm276.8 100c-14.4-9.7-47.6-13.2-73.1-8.4-3.3-24-16.7-44.9-41.1-63.7l-14-9.3-9.3 14c-18.4 27.8-23.4 73.6-3.7 103.8-8.7 4.7-25.8 11.1-48.4 10.7H2.4c-8.7 50.8 5.8 116.8 44 162.1 37.1 43.9 92.7 66.2 165.4 66.2 157.4 0 273.9-72.5 328.4-204.2 21.4.4 67.6.1 91.3-45.2 1.5-2.5 6.6-13.2 8.5-17.1l-13.3-8.9zm-511.1-27.9h-66v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm-78.1-72.1h-66.1v60.1h66.1v-60.1z\"},\"child\":[]}]})(props);\n};\nexport function FaDraft2Digital (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 398.1l-144-82.2v64.7h-91.3c30.8-35 81.8-95.9 111.8-149.3 35.2-62.6 16.1-123.4-12.8-153.3-4.4-4.6-62.2-62.9-166-41.2-59.1 12.4-89.4 43.4-104.3 67.3-13.1 20.9-17 39.8-18.2 47.7-5.5 33 19.4 67.1 56.7 67.1 31.7 0 57.3-25.7 57.3-57.4 0-27.1-19.7-52.1-48-56.8 1.8-7.3 17.7-21.1 26.3-24.7 41.1-17.3 78 5.2 83.3 33.5 8.3 44.3-37.1 90.4-69.7 127.6C84.5 328.1 18.3 396.8 0 415.9l336-.1V480zM369.9 371l47.1 27.2-47.1 27.2zM134.2 161.4c0 12.4-10 22.4-22.4 22.4s-22.4-10-22.4-22.4 10-22.4 22.4-22.4 22.4 10.1 22.4 22.4zM82.5 380.5c25.6-27.4 97.7-104.7 150.8-169.9 35.1-43.1 40.3-82.4 28.4-112.7-7.4-18.8-17.5-30.2-24.3-35.7 45.3 2.1 68 23.4 82.2 38.3 0 0 42.4 48.2 5.8 113.3-37 65.9-110.9 147.5-128.5 166.7z\"},\"child\":[]}]})(props);\n};\nexport function FaDribbbleSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M90.2 228.2c8.9-42.4 37.4-77.7 75.7-95.7 3.6 4.9 28 38.8 50.7 79-64 17-120.3 16.8-126.4 16.7zM314.6 154c-33.6-29.8-79.3-41.1-122.6-30.6 3.8 5.1 28.6 38.9 51 80 48.6-18.3 69.1-45.9 71.6-49.4zM140.1 364c40.5 31.6 93.3 36.7 137.3 18-2-12-10-53.8-29.2-103.6-55.1 18.8-93.8 56.4-108.1 85.6zm98.8-108.2c-3.4-7.8-7.2-15.5-11.1-23.2C159.6 253 93.4 252.2 87.4 252c0 1.4-.1 2.8-.1 4.2 0 35.1 13.3 67.1 35.1 91.4 22.2-37.9 67.1-77.9 116.5-91.8zm34.9 16.3c17.9 49.1 25.1 89.1 26.5 97.4 30.7-20.7 52.5-53.6 58.6-91.6-4.6-1.5-42.3-12.7-85.1-5.8zm-20.3-48.4c4.8 9.8 8.3 17.8 12 26.8 45.5-5.7 90.7 3.4 95.2 4.4-.3-32.3-11.8-61.9-30.9-85.1-2.9 3.9-25.8 33.2-76.3 53.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 176c0-88.2-71.8-160-160-160S64 167.8 64 256s71.8 160 160 160 160-71.8 160-160z\"},\"child\":[]}]})(props);\n};\nexport function FaDribbble (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.252 8 8 119.252 8 256s111.252 248 248 248 248-111.252 248-248S392.748 8 256 8zm163.97 114.366c29.503 36.046 47.369 81.957 47.835 131.955-6.984-1.477-77.018-15.682-147.502-6.818-5.752-14.041-11.181-26.393-18.617-41.614 78.321-31.977 113.818-77.482 118.284-83.523zM396.421 97.87c-3.81 5.427-35.697 48.286-111.021 76.519-34.712-63.776-73.185-116.168-79.04-124.008 67.176-16.193 137.966 1.27 190.061 47.489zm-230.48-33.25c5.585 7.659 43.438 60.116 78.537 122.509-99.087 26.313-186.36 25.934-195.834 25.809C62.38 147.205 106.678 92.573 165.941 64.62zM44.17 256.323c0-2.166.043-4.322.108-6.473 9.268.19 111.92 1.513 217.706-30.146 6.064 11.868 11.857 23.915 17.174 35.949-76.599 21.575-146.194 83.527-180.531 142.306C64.794 360.405 44.17 310.73 44.17 256.323zm81.807 167.113c22.127-45.233 82.178-103.622 167.579-132.756 29.74 77.283 42.039 142.053 45.189 160.638-68.112 29.013-150.015 21.053-212.768-27.882zm248.38 8.489c-2.171-12.886-13.446-74.897-41.152-151.033 66.38-10.626 124.7 6.768 131.947 9.055-9.442 58.941-43.273 109.844-90.795 141.978z\"},\"child\":[]}]})(props);\n};\nexport function FaDropbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 528 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M264.4 116.3l-132 84.3 132 84.3-132 84.3L0 284.1l132.3-84.3L0 116.3 132.3 32l132.1 84.3zM131.6 395.7l132-84.3 132 84.3-132 84.3-132-84.3zm132.8-111.6l132-84.3-132-83.6L395.7 32 528 116.3l-132.3 84.3L528 284.8l-132.3 84.3-131.3-85z\"},\"child\":[]}]})(props);\n};\nexport function FaDrupal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M319.5 114.7c-22.2-14-43.5-19.5-64.7-33.5-13-8.8-31.3-30-46.5-48.3-2.7 29.3-11.5 41.2-22 49.5-21.3 17-34.8 22.2-53.5 32.3C117 123 32 181.5 32 290.5 32 399.7 123.8 480 225.8 480 327.5 480 416 406 416 294c0-112.3-83-171-96.5-179.3zm2.5 325.6c-20.1 20.1-90.1 28.7-116.7 4.2-4.8-4.8.3-12 6.5-12 0 0 17 13.3 51.5 13.3 27 0 46-7.7 54.5-14 6.1-4.6 8.4 4.3 4.2 8.5zm-54.5-52.6c8.7-3.6 29-3.8 36.8 1.3 4.1 2.8 16.1 18.8 6.2 23.7-8.4 4.2-1.2-15.7-26.5-15.7-14.7 0-19.5 5.2-26.7 11-7 6-9.8 8-12.2 4.7-6-8.2 15.9-22.3 22.4-25zM360 405c-15.2-1-45.5-48.8-65-49.5-30.9-.9-104.1 80.7-161.3 42-38.8-26.6-14.6-104.8 51.8-105.2 49.5-.5 83.8 49 108.5 48.5 21.3-.3 61.8-41.8 81.8-41.8 48.7 0 23.3 109.3-15.8 106z\"},\"child\":[]}]})(props);\n};\nexport function FaDyalog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 416 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v119.2h64V96h107.2C284.6 96 352 176.2 352 255.9 352 332 293.4 416 171.2 416H0v64h171.2C331.9 480 416 367.3 416 255.9c0-58.7-22.1-113.4-62.3-154.3C308.9 56 245.7 32 171.2 32H0z\"},\"child\":[]}]})(props);\n};\nexport function FaEarlybirds (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.2 47.5c1.2-13 21.3-14 36.6-8.7.9.3 26.2 9.7 19 15.2-27.9-7.4-56.4 18.2-55.6-6.5zm-201 6.9c30.7-8.1 62 20 61.1-7.1-1.3-14.2-23.4-15.3-40.2-9.6-1 .3-28.7 10.5-20.9 16.7zM319.4 160c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-159.7 0c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm318.5 163.2c-9.9 24-40.7 11-63.9-1.2-13.5 69.1-58.1 111.4-126.3 124.2.3.9-2-.1 24 1 33.6 1.4 63.8-3.1 97.4-8-19.8-13.8-11.4-37.1-9.8-38.1 1.4-.9 14.7 1.7 21.6 11.5 8.6-12.5 28.4-14.8 30.2-13.6 1.6 1.1 6.6 20.9-6.9 34.6 4.7-.9 8.2-1.6 9.8-2.1 2.6-.8 17.7 11.3 3.1 13.3-14.3 2.3-22.6 5.1-47.1 10.8-45.9 10.7-85.9 11.8-117.7 12.8l1 11.6c3.8 18.1-23.4 24.3-27.6 6.2.8 17.9-27.1 21.8-28.4-1l-.5 5.3c-.7 18.4-28.4 17.9-28.3-.6-7.5 13.5-28.1 6.8-26.4-8.5l1.2-12.4c-36.7.9-59.7 3.1-61.8 3.1-20.9 0-20.9-31.6 0-31.6 2.4 0 27.7 1.3 63.2 2.8-61.1-15.5-103.7-55-114.9-118.2-25 12.8-57.5 26.8-68.2.8-10.5-25.4 21.5-42.6 66.8-73.4.7-6.6 1.6-13.3 2.7-19.8-14.4-19.6-11.6-36.3-16.1-60.4-16.8 2.4-23.2-9.1-23.6-23.1.3-7.3 2.1-14.9 2.4-15.4 1.1-1.8 10.1-2 12.7-2.6 6-31.7 50.6-33.2 90.9-34.5 19.7-21.8 45.2-41.5 80.9-48.3C203.3 29 215.2 8.5 216.2 8c1.7-.8 21.2 4.3 26.3 23.2 5.2-8.8 18.3-11.4 19.6-10.7 1.1.6 6.4 15-4.9 25.9 40.3 3.5 72.2 24.7 96 50.7 36.1 1.5 71.8 5.9 77.1 34 2.7.6 11.6.8 12.7 2.6.3.5 2.1 8.1 2.4 15.4-.5 13.9-6.8 25.4-23.6 23.1-3.2 17.3-2.7 32.9-8.7 47.7 2.4 11.7 4 23.8 4.8 36.4 37 25.4 70.3 42.5 60.3 66.9zM207.4 159.9c.9-44-37.9-42.2-78.6-40.3-21.7 1-38.9 1.9-45.5 13.9-11.4 20.9 5.9 92.9 23.2 101.2 9.8 4.7 73.4 7.9 86.3-7.1 8.2-9.4 15-49.4 14.6-67.7zm52 58.3c-4.3-12.4-6-30.1-15.3-32.7-2-.5-9-.5-11 0-10 2.8-10.8 22.1-17 37.2 15.4 0 19.3 9.7 23.7 9.7 4.3 0 6.3-11.3 19.6-14.2zm135.7-84.7c-6.6-12.1-24.8-12.9-46.5-13.9-40.2-1.9-78.2-3.8-77.3 40.3-.5 18.3 5 58.3 13.2 67.8 13 14.9 76.6 11.8 86.3 7.1 15.8-7.6 36.5-78.9 24.3-101.3z\"},\"child\":[]}]})(props);\n};\nexport function FaEbay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M606 189.5l-54.8 109.9-54.9-109.9h-37.5l10.9 20.6c-11.5-19-35.9-26-63.3-26-31.8 0-67.9 8.7-71.5 43.1h33.7c1.4-13.8 15.7-21.8 35-21.8 26 0 41 9.6 41 33v3.4c-12.7 0-28 .1-41.7.4-42.4.9-69.6 10-76.7 34.4 1-5.2 1.5-10.6 1.5-16.2 0-52.1-39.7-76.2-75.4-76.2-21.3 0-43 5.5-58.7 24.2v-80.6h-32.1v169.5c0 10.3-.6 22.9-1.1 33.1h31.5c.7-6.3 1.1-12.9 1.1-19.5 13.6 16.6 35.4 24.9 58.7 24.9 36.9 0 64.9-21.9 73.3-54.2-.5 2.8-.7 5.8-.7 9 0 24.1 21.1 45 60.6 45 26.6 0 45.8-5.7 61.9-25.5 0 6.6.3 13.3 1.1 20.2h29.8c-.7-8.2-1-17.5-1-26.8v-65.6c0-9.3-1.7-17.2-4.8-23.8l61.5 116.1-28.5 54.1h35.9L640 189.5zM243.7 313.8c-29.6 0-50.2-21.5-50.2-53.8 0-32.4 20.6-53.8 50.2-53.8 29.8 0 50.2 21.4 50.2 53.8 0 32.3-20.4 53.8-50.2 53.8zm200.9-47.3c0 30-17.9 48.4-51.6 48.4-25.1 0-35-13.4-35-25.8 0-19.1 18.1-24.4 47.2-25.3 13.1-.5 27.6-.6 39.4-.6zm-411.9 1.6h128.8v-8.5c0-51.7-33.1-75.4-78.4-75.4-56.8 0-83 30.8-83 77.6 0 42.5 25.3 74 82.5 74 31.4 0 68-11.7 74.4-46.1h-33.1c-12 35.8-87.7 36.7-91.2-21.6zm95-21.4H33.3c6.9-56.6 92.1-54.7 94.4 0z\"},\"child\":[]}]})(props);\n};\nexport function FaEdgeLegacy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M25.71,228.16l.35-.48c0,.16,0,.32-.07.48Zm460.58,15.51c0-44-7.76-84.46-28.81-122.4C416.5,47.88,343.91,8,258.89,8,119,7.72,40.62,113.21,26.06,227.68c42.42-61.31,117.07-121.38,220.37-125,0,0,109.67,0,99.42,105H170c6.37-37.39,18.55-59,34.34-78.93-75.05,34.9-121.85,96.1-120.75,188.32.83,71.45,50.13,144.84,120.75,172,83.35,31.84,192.77,7.2,240.13-21.33V363.31C363.6,419.8,173.6,424.23,172.21,295.74H486.29V243.67Z\"},\"child\":[]}]})(props);\n};\nexport function FaEdge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M481.92,134.48C440.87,54.18,352.26,8,255.91,8,137.05,8,37.51,91.68,13.47,203.66c26-46.49,86.22-79.14,149.46-79.14,79.27,0,121.09,48.93,122.25,50.18,22,23.8,33,50.39,33,83.1,0,10.4-5.31,25.82-15.11,38.57-1.57,2-6.39,4.84-6.39,11,0,5.06,3.29,9.92,9.14,14,27.86,19.37,80.37,16.81,80.51,16.81A115.39,115.39,0,0,0,444.94,322a118.92,118.92,0,0,0,58.95-102.44C504.39,176.13,488.39,147.26,481.92,134.48ZM212.77,475.67a154.88,154.88,0,0,1-46.64-45c-32.94-47.42-34.24-95.6-20.1-136A155.5,155.5,0,0,1,203,215.75c59-45.2,94.84-5.65,99.06-1a80,80,0,0,0-4.89-10.14c-9.24-15.93-24-36.41-56.56-53.51-33.72-17.69-70.59-18.59-77.64-18.59-38.71,0-77.9,13-107.53,35.69C35.68,183.3,12.77,208.72,8.6,243c-1.08,12.31-2.75,62.8,23,118.27a248,248,0,0,0,248.3,141.61C241.78,496.26,214.05,476.24,212.77,475.67Zm250.72-98.33a7.76,7.76,0,0,0-7.92-.23,181.66,181.66,0,0,1-20.41,9.12,197.54,197.54,0,0,1-69.55,12.52c-91.67,0-171.52-63.06-171.52-144A61.12,61.12,0,0,1,200.61,228,168.72,168.72,0,0,0,161.85,278c-14.92,29.37-33,88.13,13.33,151.66,6.51,8.91,23,30,56,47.67,23.57,12.65,49,19.61,71.7,19.61,35.14,0,115.43-33.44,163-108.87A7.75,7.75,0,0,0,463.49,377.34Z\"},\"child\":[]}]})(props);\n};\nexport function FaElementor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M425.6 32H22.4C10 32 0 42 0 54.4v403.2C0 470 10 480 22.4 480h403.2c12.4 0 22.4-10 22.4-22.4V54.4C448 42 438 32 425.6 32M164.3 355.5h-39.8v-199h39.8v199zm159.3 0H204.1v-39.8h119.5v39.8zm0-79.6H204.1v-39.8h119.5v39.8zm0-79.7H204.1v-39.8h119.5v39.8z\"},\"child\":[]}]})(props);\n};\nexport function FaEllo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm143.84 285.2C375.31 358.51 315.79 404.8 248 404.8s-127.31-46.29-143.84-111.6c-1.65-7.44 2.48-15.71 9.92-17.36 7.44-1.65 15.71 2.48 17.36 9.92 14.05 52.91 62 90.11 116.56 90.11s102.51-37.2 116.56-90.11c1.65-7.44 9.92-12.4 17.36-9.92 7.44 1.65 12.4 9.92 9.92 17.36z\"},\"child\":[]}]})(props);\n};\nexport function FaEmber (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M639.9 254.6c-1.1-10.7-10.7-6.8-10.7-6.8s-15.6 12.1-29.3 10.7c-13.7-1.3-9.4-32-9.4-32s3-28.1-5.1-30.4c-8.1-2.4-18 7.3-18 7.3s-12.4 13.7-18.3 31.2l-1.6.5s1.9-30.6-.3-37.6c-1.6-3.5-16.4-3.2-18.8 3s-14.2 49.2-15 67.2c0 0-23.1 19.6-43.3 22.8s-25-9.4-25-9.4 54.8-15.3 52.9-59.1-44.2-27.6-49-24c-4.6 3.5-29.4 18.4-36.6 59.7-.2 1.4-.7 7.5-.7 7.5s-21.2 14.2-33 18c0 0 33-55.6-7.3-80.9-11.4-6.8-21.3-.5-27.2 5.3 13.6-17.3 46.4-64.2 36.9-105.2-5.8-24.4-18-27.1-29.2-23.1-17 6.7-23.5 16.7-23.5 16.7s-22 32-27.1 79.5-12.6 105.1-12.6 105.1-10.5 10.2-20.2 10.7-5.4-28.7-5.4-28.7 7.5-44.6 7-52.1-1.1-11.6-9.9-14.2c-8.9-2.7-18.5 8.6-18.5 8.6s-25.5 38.7-27.7 44.6l-1.3 2.4-1.3-1.6s18-52.7.8-53.5-28.5 18.8-28.5 18.8-19.6 32.8-20.4 36.5l-1.3-1.6s8.1-38.2 6.4-47.6c-1.6-9.4-10.5-7.5-10.5-7.5s-11.3-1.3-14.2 5.9-13.7 55.3-15 70.7c0 0-28.2 20.2-46.8 20.4-18.5.3-16.7-11.8-16.7-11.8s68-23.3 49.4-69.2c-8.3-11.8-18-15.5-31.7-15.3-13.7.3-30.3 8.6-41.3 33.3-5.3 11.8-6.8 23-7.8 31.5 0 0-12.3 2.4-18.8-2.9s-10 0-10 0-11.2 14-.1 18.3 28.1 6.1 28.1 6.1c1.6 7.5 6.2 19.5 19.6 29.7 20.2 15.3 58.8-1.3 58.8-1.3l15.9-8.8s.5 14.6 12.1 16.7 16.4 1 36.5-47.9c11.8-25 12.6-23.6 12.6-23.6l1.3-.3s-9.1 46.8-5.6 59.7C187.7 319.4 203 318 203 318s8.3 2.4 15-21.2 19.6-49.9 19.6-49.9h1.6s-5.6 48.1 3 63.7 30.9 5.3 30.9 5.3 15.6-7.8 18-10.2c0 0 18.5 15.8 44.6 12.9 58.3-11.5 79.1-25.9 79.1-25.9s10 24.4 41.1 26.7c35.5 2.7 54.8-18.6 54.8-18.6s-.3 13.5 12.1 18.6 20.7-22.8 20.7-22.8l20.7-57.2h1.9s1.1 37.3 21.5 43.2 47-13.7 47-13.7 6.4-3.5 5.3-14.3zm-578 5.3c.8-32 21.8-45.9 29-39 7.3 7 4.6 22-9.1 31.4-13.7 9.5-19.9 7.6-19.9 7.6zm272.8-123.8s19.1-49.7 23.6-25.5-40 96.2-40 96.2c.5-16.2 16.4-70.7 16.4-70.7zm22.8 138.4c-12.6 33-43.3 19.6-43.3 19.6s-3.5-11.8 6.4-44.9 33.3-20.2 33.3-20.2 16.2 12.4 3.6 45.5zm84.6-14.6s-3-10.5 8.1-30.6c11-20.2 19.6-9.1 19.6-9.1s9.4 10.2-1.3 25.5-26.4 14.2-26.4 14.2z\"},\"child\":[]}]})(props);\n};\nexport function FaEmpire (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M287.6 54.2c-10.8-2.2-22.1-3.3-33.5-3.6V32.4c78.1 2.2 146.1 44 184.6 106.6l-15.8 9.1c-6.1-9.7-12.7-18.8-20.2-27.1l-18 15.5c-26-29.6-61.4-50.7-101.9-58.4l4.8-23.9zM53.4 322.4l23-7.7c-6.4-18.3-10-38.2-10-58.7s3.3-40.4 9.7-58.7l-22.7-7.7c3.6-10.8 8.3-21.3 13.6-31l-15.8-9.1C34 181 24.1 217.5 24.1 256s10 75 27.1 106.6l15.8-9.1c-5.3-10-9.7-20.3-13.6-31.1zM213.1 434c-40.4-8-75.8-29.1-101.9-58.7l-18 15.8c-7.5-8.6-14.4-17.7-20.2-27.4l-16 9.4c38.5 62.3 106.8 104.3 184.9 106.6v-18.3c-11.3-.3-22.7-1.7-33.5-3.6l4.7-23.8zM93.3 120.9l18 15.5c26-29.6 61.4-50.7 101.9-58.4l-4.7-23.8c10.8-2.2 22.1-3.3 33.5-3.6V32.4C163.9 34.6 95.9 76.4 57.4 139l15.8 9.1c6-9.7 12.6-18.9 20.1-27.2zm309.4 270.2l-18-15.8c-26 29.6-61.4 50.7-101.9 58.7l4.7 23.8c-10.8 1.9-22.1 3.3-33.5 3.6v18.3c78.1-2.2 146.4-44.3 184.9-106.6l-16.1-9.4c-5.7 9.7-12.6 18.8-20.1 27.4zM496 256c0 137-111 248-248 248S0 393 0 256 111 8 248 8s248 111 248 248zm-12.2 0c0-130.1-105.7-235.8-235.8-235.8S12.2 125.9 12.2 256 117.9 491.8 248 491.8 483.8 386.1 483.8 256zm-39-106.6l-15.8 9.1c5.3 9.7 10 20.2 13.6 31l-22.7 7.7c6.4 18.3 9.7 38.2 9.7 58.7s-3.6 40.4-10 58.7l23 7.7c-3.9 10.8-8.3 21-13.6 31l15.8 9.1C462 331 471.9 294.5 471.9 256s-9.9-75-27.1-106.6zm-183 177.7c16.3-3.3 30.4-11.6 40.7-23.5l51.2 44.8c11.9-13.6 21.3-29.3 27.1-46.8l-64.2-22.1c2.5-7.5 3.9-15.2 3.9-23.5s-1.4-16.1-3.9-23.5l64.5-22.1c-6.1-17.4-15.5-33.2-27.4-46.8l-51.2 44.8c-10.2-11.9-24.4-20.5-40.7-23.8l13.3-66.4c-8.6-1.9-17.7-2.8-27.1-2.8-9.4 0-18.5.8-27.1 2.8l13.3 66.4c-16.3 3.3-30.4 11.9-40.7 23.8l-51.2-44.8c-11.9 13.6-21.3 29.3-27.4 46.8l64.5 22.1c-2.5 7.5-3.9 15.2-3.9 23.5s1.4 16.1 3.9 23.5l-64.2 22.1c5.8 17.4 15.2 33.2 27.1 46.8l51.2-44.8c10.2 11.9 24.4 20.2 40.7 23.5l-13.3 66.7c8.6 1.7 17.7 2.8 27.1 2.8 9.4 0 18.5-1.1 27.1-2.8l-13.3-66.7z\"},\"child\":[]}]})(props);\n};\nexport function FaEnvira (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32c477.6 0 366.6 317.3 367.1 366.3L448 480h-26l-70.4-71.2c-39 4.2-124.4 34.5-214.4-37C47 300.3 52 214.7 0 32zm79.7 46c-49.7-23.5-5.2 9.2-5.2 9.2 45.2 31.2 66 73.7 90.2 119.9 31.5 60.2 79 139.7 144.2 167.7 65 28 34.2 12.5 6-8.5-28.2-21.2-68.2-87-91-130.2-31.7-60-61-118.6-144.2-158.1z\"},\"child\":[]}]})(props);\n};\nexport function FaErlang (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M87.2 53.5H0v405h100.4c-49.7-52.6-78.8-125.3-78.7-212.1-.1-76.7 24-142.7 65.5-192.9zm238.2 9.7c-45.9.1-85.1 33.5-89.2 83.2h169.9c-1.1-49.7-34.5-83.1-80.7-83.2zm230.7-9.6h.3l-.1-.1zm.3 0c31.4 42.7 48.7 97.5 46.2 162.7.5 6 .5 11.7 0 24.1H230.2c-.2 109.7 38.9 194.9 138.6 195.3 68.5-.3 118-51 151.9-106.1l96.4 48.2c-17.4 30.9-36.5 57.8-57.9 80.8H640v-405z\"},\"child\":[]}]})(props);\n};\nexport function FaEthereum (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M311.9 260.8L160 353.6 8 260.8 160 0l151.9 260.8zM160 383.4L8 290.6 160 512l152-221.4-152 92.8z\"},\"child\":[]}]})(props);\n};\nexport function FaEtsy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 348c-1.75 10.75-13.75 110-15.5 132-117.879-4.299-219.895-4.743-368.5 0v-25.5c45.457-8.948 60.627-8.019 61-35.25 1.793-72.322 3.524-244.143 0-322-1.029-28.46-12.13-26.765-61-36v-25.5c73.886 2.358 255.933 8.551 362.999-3.75-3.5 38.25-7.75 126.5-7.75 126.5H332C320.947 115.665 313.241 68 277.25 68h-137c-10.25 0-10.75 3.5-10.75 9.75V241.5c58 .5 88.5-2.5 88.5-2.5 29.77-.951 27.56-8.502 40.75-65.251h25.75c-4.407 101.351-3.91 61.829-1.75 160.25H257c-9.155-40.086-9.065-61.045-39.501-61.5 0 0-21.5-2-88-2v139c0 26 14.25 38.25 44.25 38.25H263c63.636 0 66.564-24.996 98.751-99.75H384z\"},\"child\":[]}]})(props);\n};\nexport function FaEvernote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M120.82 132.21c1.6 22.31-17.55 21.59-21.61 21.59-68.93 0-73.64-1-83.58 3.34-.56.22-.74 0-.37-.37L123.79 46.45c.38-.37.6-.22.38.37-4.35 9.99-3.35 15.09-3.35 85.39zm79 308c-14.68-37.08 13-76.93 52.52-76.62 17.49 0 22.6 23.21 7.95 31.42-6.19 3.3-24.95 1.74-25.14 19.2-.05 17.09 19.67 25 31.2 24.89A45.64 45.64 0 0 0 312 393.45v-.08c0-11.63-7.79-47.22-47.54-55.34-7.72-1.54-65-6.35-68.35-50.52-3.74 16.93-17.4 63.49-43.11 69.09-8.74 1.94-69.68 7.64-112.92-36.77 0 0-18.57-15.23-28.23-57.95-3.38-15.75-9.28-39.7-11.14-62 0-18 11.14-30.45 25.07-32.2 81 0 90 2.32 101-7.8 9.82-9.24 7.8-15.5 7.8-102.78 1-8.3 7.79-30.81 53.41-24.14 6 .86 31.91 4.18 37.48 30.64l64.26 11.15c20.43 3.71 70.94 7 80.6 57.94 22.66 121.09 8.91 238.46 7.8 238.46C362.15 485.53 267.06 480 267.06 480c-18.95-.23-54.25-9.4-67.27-39.83zm80.94-204.84c-1 1.92-2.2 6 .85 7 14.09 4.93 39.75 6.84 45.88 5.53 3.11-.25 3.05-4.43 2.48-6.65-3.53-21.85-40.83-26.5-49.24-5.92z\"},\"child\":[]}]})(props);\n};\nexport function FaExpeditedssl (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 43.4C130.6 43.4 35.4 138.6 35.4 256S130.6 468.6 248 468.6 460.6 373.4 460.6 256 365.4 43.4 248 43.4zm-97.4 132.9c0-53.7 43.7-97.4 97.4-97.4s97.4 43.7 97.4 97.4v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6c0-82.1-124-82.1-124 0v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6zM389.7 380c0 9.7-8 17.7-17.7 17.7H124c-9.7 0-17.7-8-17.7-17.7V238.3c0-9.7 8-17.7 17.7-17.7h248c9.7 0 17.7 8 17.7 17.7V380zm-248-137.3v132.9c0 2.5-1.9 4.4-4.4 4.4h-8.9c-2.5 0-4.4-1.9-4.4-4.4V242.7c0-2.5 1.9-4.4 4.4-4.4h8.9c2.5 0 4.4 1.9 4.4 4.4zm141.7 48.7c0 13-7.2 24.4-17.7 30.4v31.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-31.6c-10.5-6.1-17.7-17.4-17.7-30.4 0-19.7 15.8-35.4 35.4-35.4s35.5 15.8 35.5 35.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 478.3C121 486.3 17.7 383 17.7 256S121 25.7 248 25.7 478.3 129 478.3 256 375 486.3 248 486.3z\"},\"child\":[]}]})(props);\n};\nexport function FaFacebookF (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"},\"child\":[]}]})(props);\n};\nexport function FaFacebookMessenger (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256.55 8C116.52 8 8 110.34 8 248.57c0 72.3 29.71 134.78 78.07 177.94 8.35 7.51 6.63 11.86 8.05 58.23A19.92 19.92 0 0 0 122 502.31c52.91-23.3 53.59-25.14 62.56-22.7C337.85 521.8 504 423.7 504 248.57 504 110.34 396.59 8 256.55 8zm149.24 185.13l-73 115.57a37.37 37.37 0 0 1-53.91 9.93l-58.08-43.47a15 15 0 0 0-18 0l-78.37 59.44c-10.46 7.93-24.16-4.6-17.11-15.67l73-115.57a37.36 37.36 0 0 1 53.91-9.93l58.06 43.46a15 15 0 0 0 18 0l78.41-59.38c10.44-7.98 24.14 4.54 17.09 15.62z\"},\"child\":[]}]})(props);\n};\nexport function FaFacebookSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h137.25V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.27c-30.81 0-40.42 19.12-40.42 38.73V256h68.78l-11 71.69h-57.78V480H400a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaFacebook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z\"},\"child\":[]}]})(props);\n};\nexport function FaFantasyFlightGames (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32.86L32.86 256 256 479.14 479.14 256 256 32.86zM88.34 255.83c1.96-2 11.92-12.3 96.49-97.48 41.45-41.75 86.19-43.77 119.77-18.69 24.63 18.4 62.06 58.9 62.15 59 .68.74 1.07 2.86.58 3.38-11.27 11.84-22.68 23.54-33.5 34.69-34.21-32.31-40.52-38.24-48.51-43.95-17.77-12.69-41.4-10.13-56.98 5.1-2.17 2.13-1.79 3.43.12 5.35 2.94 2.95 28.1 28.33 35.09 35.78-11.95 11.6-23.66 22.97-35.69 34.66-12.02-12.54-24.48-25.53-36.54-38.11-21.39 21.09-41.69 41.11-61.85 60.99a42569.01 42569.01 0 0 1-41.13-40.72zm234.82 101.6c-35.49 35.43-78.09 38.14-106.99 20.47-22.08-13.5-39.38-32.08-72.93-66.84 12.05-12.37 23.79-24.42 35.37-36.31 33.02 31.91 37.06 36.01 44.68 42.09 18.48 14.74 42.52 13.67 59.32-1.8 3.68-3.39 3.69-3.64.14-7.24-10.59-10.73-21.19-21.44-31.77-32.18-1.32-1.34-3.03-2.48-.8-4.69 10.79-10.71 21.48-21.52 32.21-32.29.26-.26.65-.38 1.91-1.07 12.37 12.87 24.92 25.92 37.25 38.75 21.01-20.73 41.24-40.68 61.25-60.42 13.68 13.4 27.13 26.58 40.86 40.03-20.17 20.86-81.68 82.71-100.5 101.5zM256 0L0 256l256 256 256-256L256 0zM16 256L256 16l240 240-240 240L16 256z\"},\"child\":[]}]})(props);\n};\nexport function FaFedex (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M586 284.5l53.3-59.9h-62.4l-21.7 24.8-22.5-24.8H414v-16h56.1v-48.1H318.9V236h-.5c-9.6-11-21.5-14.8-35.4-14.8-28.4 0-49.8 19.4-57.3 44.9-18-59.4-97.4-57.6-121.9-14v-24.2H49v-26.2h60v-41.1H0V345h49v-77.5h48.9c-1.5 5.7-2.3 11.8-2.3 18.2 0 73.1 102.6 91.4 130.2 23.7h-42c-14.7 20.9-45.8 8.9-45.8-14.6h85.5c3.7 30.5 27.4 56.9 60.1 56.9 14.1 0 27-6.9 34.9-18.6h.5V345h212.2l22.1-25 22.3 25H640l-54-60.5zm-446.7-16.6c6.1-26.3 41.7-25.6 46.5 0h-46.5zm153.4 48.9c-34.6 0-34-62.8 0-62.8 32.6 0 34.5 62.8 0 62.8zm167.8 19.1h-94.4V169.4h95v30.2H405v33.9h55.5v28.1h-56.1v44.7h56.1v29.6zm-45.9-39.8v-24.4h56.1v-44l50.7 57-50.7 57v-45.6h-56.1zm138.6 10.3l-26.1 29.5H489l45.6-51.2-45.6-51.2h39.7l26.6 29.3 25.6-29.3h38.5l-45.4 51 46 51.4h-40.5l-26.3-29.5z\"},\"child\":[]}]})(props);\n};\nexport function FaFedora (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M225 32C101.3 31.7.8 131.7.4 255.4L0 425.7a53.6 53.6 0 0 0 53.6 53.9l170.2.4c123.7.3 224.3-99.7 224.6-223.4S348.7 32.3 225 32zm169.8 157.2L333 126.6c2.3-4.7 3.8-9.2 3.8-14.3v-1.6l55.2 56.1a101 101 0 0 1 2.8 22.4zM331 94.3a106.06 106.06 0 0 1 58.5 63.8l-54.3-54.6a26.48 26.48 0 0 0-4.2-9.2zM118.1 247.2a49.66 49.66 0 0 0-7.7 11.4l-8.5-8.5a85.78 85.78 0 0 1 16.2-2.9zM97 251.4l11.8 11.9-.9 8a34.74 34.74 0 0 0 2.4 12.5l-27-27.2a80.6 80.6 0 0 1 13.7-5.2zm-18.2 7.4l38.2 38.4a53.17 53.17 0 0 0-14.1 4.7L67.6 266a107 107 0 0 1 11.2-7.2zm-15.2 9.8l35.3 35.5a67.25 67.25 0 0 0-10.5 8.5L53.5 278a64.33 64.33 0 0 1 10.1-9.4zm-13.3 12.3l34.9 35a56.84 56.84 0 0 0-7.7 11.4l-35.8-35.9c2.8-3.8 5.7-7.2 8.6-10.5zm-11 14.3l36.4 36.6a48.29 48.29 0 0 0-3.6 15.2l-39.5-39.8a99.81 99.81 0 0 1 6.7-12zm-8.8 16.3l41.3 41.8a63.47 63.47 0 0 0 6.7 26.2L25.8 326c1.4-4.9 2.9-9.6 4.7-14.5zm-7.9 43l61.9 62.2a31.24 31.24 0 0 0-3.6 14.3v1.1l-55.4-55.7a88.27 88.27 0 0 1-2.9-21.9zm5.3 30.7l54.3 54.6a28.44 28.44 0 0 0 4.2 9.2 106.32 106.32 0 0 1-58.5-63.8zm-5.3-37a80.69 80.69 0 0 1 2.1-17l72.2 72.5a37.59 37.59 0 0 0-9.9 8.7zm253.3-51.8l-42.6-.1-.1 56c-.2 69.3-64.4 115.8-125.7 102.9-5.7 0-19.9-8.7-19.9-24.2a24.89 24.89 0 0 1 24.5-24.6c6.3 0 6.3 1.6 15.7 1.6a55.91 55.91 0 0 0 56.1-55.9l.1-47c0-4.5-4.5-9-8.9-9l-33.6-.1c-32.6-.1-32.5-49.4.1-49.3l42.6.1.1-56a105.18 105.18 0 0 1 105.6-105 86.35 86.35 0 0 1 20.2 2.3c11.2 1.8 19.9 11.9 19.9 24 0 15.5-14.9 27.8-30.3 23.9-27.4-5.9-65.9 14.4-66 54.9l-.1 47a8.94 8.94 0 0 0 8.9 9l33.6.1c32.5.2 32.4 49.5-.2 49.4zm23.5-.3a35.58 35.58 0 0 0 7.6-11.4l8.5 8.5a102 102 0 0 1-16.1 2.9zm21-4.2L308.6 280l.9-8.1a34.74 34.74 0 0 0-2.4-12.5l27 27.2a74.89 74.89 0 0 1-13.7 5.3zm18-7.4l-38-38.4c4.9-1.1 9.6-2.4 13.7-4.7l36.2 35.9c-3.8 2.5-7.9 5-11.9 7.2zm15.5-9.8l-35.3-35.5a61.06 61.06 0 0 0 10.5-8.5l34.9 35a124.56 124.56 0 0 1-10.1 9zm13.2-12.3l-34.9-35a63.18 63.18 0 0 0 7.7-11.4l35.8 35.9a130.28 130.28 0 0 1-8.6 10.5zm11-14.3l-36.4-36.6a48.29 48.29 0 0 0 3.6-15.2l39.5 39.8a87.72 87.72 0 0 1-6.7 12zm13.5-30.9a140.63 140.63 0 0 1-4.7 14.3L345.6 190a58.19 58.19 0 0 0-7.1-26.2zm1-5.6l-71.9-72.1a32 32 0 0 0 9.9-9.2l64.3 64.7a90.93 90.93 0 0 1-2.3 16.6z\"},\"child\":[]}]})(props);\n};\nexport function FaFigma (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 95.7924C14 42.8877 56.8878 0 109.793 0H274.161C327.066 0 369.954 42.8877 369.954 95.7924C369.954 129.292 352.758 158.776 326.711 175.897C352.758 193.019 369.954 222.502 369.954 256.002C369.954 308.907 327.066 351.795 274.161 351.795H272.081C247.279 351.795 224.678 342.369 207.666 326.904V415.167C207.666 468.777 163.657 512 110.309 512C57.5361 512 14 469.243 14 416.207C14 382.709 31.1945 353.227 57.2392 336.105C31.1945 318.983 14 289.5 14 256.002C14 222.502 31.196 193.019 57.2425 175.897C31.196 158.776 14 129.292 14 95.7924ZM176.288 191.587H109.793C74.2172 191.587 45.3778 220.427 45.3778 256.002C45.3778 291.44 73.9948 320.194 109.381 320.416C109.518 320.415 109.655 320.415 109.793 320.415H176.288V191.587ZM207.666 256.002C207.666 291.577 236.505 320.417 272.081 320.417H274.161C309.737 320.417 338.576 291.577 338.576 256.002C338.576 220.427 309.737 191.587 274.161 191.587H272.081C236.505 191.587 207.666 220.427 207.666 256.002ZM109.793 351.795C109.655 351.795 109.518 351.794 109.381 351.794C73.9948 352.015 45.3778 380.769 45.3778 416.207C45.3778 451.652 74.6025 480.622 110.309 480.622C146.591 480.622 176.288 451.186 176.288 415.167V351.795H109.793ZM109.793 31.3778C74.2172 31.3778 45.3778 60.2173 45.3778 95.7924C45.3778 131.368 74.2172 160.207 109.793 160.207H176.288V31.3778H109.793ZM207.666 160.207H274.161C309.737 160.207 338.576 131.368 338.576 95.7924C338.576 60.2173 309.737 31.3778 274.161 31.3778H207.666V160.207Z\"},\"child\":[]}]})(props);\n};\nexport function FaFirefoxBrowser (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M189.37,152.86Zm-58.74-29.37C130.79,123.5,130.71,123.5,130.63,123.49Zm351.42,45.35c-10.61-25.5-32.08-53-48.94-61.73,13.72,26.89,21.67,53.88,24.7,74,0,0,0,.14.05.41-27.58-68.75-74.35-96.47-112.55-156.83-1.93-3.05-3.86-6.11-5.74-9.33-1-1.65-1.86-3.34-2.69-5.05A44.88,44.88,0,0,1,333.24.69a.63.63,0,0,0-.55-.66.9.9,0,0,0-.46,0l-.12.07-.18.1.1-.14c-54.23,31.77-76.72,87.38-82.5,122.78a130,130,0,0,0-48.33,12.33,6.25,6.25,0,0,0-3.09,7.75,6.13,6.13,0,0,0,7.79,3.79l.52-.21a117.84,117.84,0,0,1,42.11-11l1.42-.1c2-.12,4-.2,6-.22A122.61,122.61,0,0,1,291,140c.67.2,1.32.42,2,.63,1.89.57,3.76,1.2,5.62,1.87,1.36.5,2.71,1,4.05,1.58,1.09.44,2.18.88,3.25,1.35q2.52,1.13,5,2.35c.75.37,1.5.74,2.25,1.13q2.4,1.26,4.74,2.63,1.51.87,3,1.8a124.89,124.89,0,0,1,42.66,44.13c-13-9.15-36.35-18.19-58.82-14.28,87.74,43.86,64.18,194.9-57.39,189.2a108.43,108.43,0,0,1-31.74-6.12c-2.42-.91-4.8-1.89-7.16-2.93-1.38-.63-2.76-1.27-4.12-2C174.5,346,149.9,316.92,146.83,281.59c0,0,11.25-41.95,80.62-41.95,7.5,0,28.93-20.92,29.33-27-.09-2-42.54-18.87-59.09-35.18-8.85-8.71-13.05-12.91-16.77-16.06a69.58,69.58,0,0,0-6.31-4.77A113.05,113.05,0,0,1,173.92,97c-25.06,11.41-44.55,29.45-58.71,45.37h-.12c-9.67-12.25-9-52.65-8.43-61.08-.12-.53-7.22,3.68-8.15,4.31a178.54,178.54,0,0,0-23.84,20.43A214,214,0,0,0,51.9,133.36l0,0a.08.08,0,0,1,0,0,205.84,205.84,0,0,0-32.73,73.9c-.06.27-2.33,10.21-4,22.48q-.42,2.87-.78,5.74c-.57,3.69-1,7.71-1.44,14,0,.24,0,.48-.05.72-.18,2.71-.34,5.41-.49,8.12,0,.41,0,.82,0,1.24,0,134.7,109.21,243.89,243.92,243.89,120.64,0,220.82-87.58,240.43-202.62.41-3.12.74-6.26,1.11-9.41,4.85-41.83-.54-85.79-15.82-122.55Z\"},\"child\":[]}]})(props);\n};\nexport function FaFirefox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M503.52,241.48c-.12-1.56-.24-3.12-.24-4.68v-.12l-.36-4.68v-.12a245.86,245.86,0,0,0-7.32-41.15c0-.12,0-.12-.12-.24l-1.08-4c-.12-.24-.12-.48-.24-.6-.36-1.2-.72-2.52-1.08-3.72-.12-.24-.12-.6-.24-.84-.36-1.2-.72-2.4-1.08-3.48-.12-.36-.24-.6-.36-1-.36-1.2-.72-2.28-1.2-3.48l-.36-1.08c-.36-1.08-.84-2.28-1.2-3.36a8.27,8.27,0,0,0-.36-1c-.48-1.08-.84-2.28-1.32-3.36-.12-.24-.24-.6-.36-.84-.48-1.2-1-2.28-1.44-3.48,0-.12-.12-.24-.12-.36-1.56-3.84-3.24-7.68-5-11.4l-.36-.72c-.48-1-.84-1.8-1.32-2.64-.24-.48-.48-1.08-.72-1.56-.36-.84-.84-1.56-1.2-2.4-.36-.6-.6-1.2-1-1.8s-.84-1.44-1.2-2.28c-.36-.6-.72-1.32-1.08-1.92s-.84-1.44-1.2-2.16a18.07,18.07,0,0,0-1.2-2c-.36-.72-.84-1.32-1.2-2s-.84-1.32-1.2-2-.84-1.32-1.2-1.92-.84-1.44-1.32-2.16a15.63,15.63,0,0,0-1.2-1.8L463.2,119a15.63,15.63,0,0,0-1.2-1.8c-.48-.72-1.08-1.56-1.56-2.28-.36-.48-.72-1.08-1.08-1.56l-1.8-2.52c-.36-.48-.6-.84-1-1.32-1-1.32-1.8-2.52-2.76-3.72a248.76,248.76,0,0,0-23.51-26.64A186.82,186.82,0,0,0,412,62.46c-4-3.48-8.16-6.72-12.48-9.84a162.49,162.49,0,0,0-24.6-15.12c-2.4-1.32-4.8-2.52-7.2-3.72a254,254,0,0,0-55.43-19.56c-1.92-.36-3.84-.84-5.64-1.2h-.12c-1-.12-1.8-.36-2.76-.48a236.35,236.35,0,0,0-38-4H255.14a234.62,234.62,0,0,0-45.48,5c-33.59,7.08-63.23,21.24-82.91,39-1.08,1-1.92,1.68-2.4,2.16l-.48.48H124l-.12.12.12-.12a.12.12,0,0,0,.12-.12l-.12.12a.42.42,0,0,1,.24-.12c14.64-8.76,34.92-16,49.44-19.56l5.88-1.44c.36-.12.84-.12,1.2-.24,1.68-.36,3.36-.72,5.16-1.08.24,0,.6-.12.84-.12C250.94,20.94,319.34,40.14,367,85.61a171.49,171.49,0,0,1,26.88,32.76c30.36,49.2,27.48,111.11,3.84,147.59-34.44,53-111.35,71.27-159,24.84a84.19,84.19,0,0,1-25.56-59,74.05,74.05,0,0,1,6.24-31c1.68-3.84,13.08-25.67,18.24-24.59-13.08-2.76-37.55,2.64-54.71,28.19-15.36,22.92-14.52,58.2-5,83.28a132.85,132.85,0,0,1-12.12-39.24c-12.24-82.55,43.31-153,94.31-170.51-27.48-24-96.47-22.31-147.71,15.36-29.88,22-51.23,53.16-62.51,90.36,1.68-20.88,9.6-52.08,25.8-83.88-17.16,8.88-39,37-49.8,62.88-15.6,37.43-21,82.19-16.08,124.79.36,3.24.72,6.36,1.08,9.6,19.92,117.11,122,206.38,244.78,206.38C392.77,503.42,504,392.19,504,255,503.88,250.48,503.76,245.92,503.52,241.48Z\"},\"child\":[]}]})(props);\n};\nexport function FaFirstOrderAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 488.21C115.34 496.21 7.79 388.66 7.79 256S115.34 15.79 248 15.79 488.21 123.34 488.21 256 380.66 496.21 248 496.21zm0-459.92C126.66 36.29 28.29 134.66 28.29 256S126.66 475.71 248 475.71 467.71 377.34 467.71 256 369.34 36.29 248 36.29zm0 431.22c-116.81 0-211.51-94.69-211.51-211.51S131.19 44.49 248 44.49 459.51 139.19 459.51 256 364.81 467.51 248 467.51zm186.23-162.98a191.613 191.613 0 0 1-20.13 48.69l-74.13-35.88 61.48 54.82a193.515 193.515 0 0 1-37.2 37.29l-54.8-61.57 35.88 74.27a190.944 190.944 0 0 1-48.63 20.23l-27.29-78.47 4.79 82.93c-8.61 1.18-17.4 1.8-26.33 1.8s-17.72-.62-26.33-1.8l4.76-82.46-27.15 78.03a191.365 191.365 0 0 1-48.65-20.2l35.93-74.34-54.87 61.64a193.85 193.85 0 0 1-37.22-37.28l61.59-54.9-74.26 35.93a191.638 191.638 0 0 1-20.14-48.69l77.84-27.11-82.23 4.76c-1.16-8.57-1.78-17.32-1.78-26.21 0-9 .63-17.84 1.82-26.51l82.38 4.77-77.94-27.16a191.726 191.726 0 0 1 20.23-48.67l74.22 35.92-61.52-54.86a193.85 193.85 0 0 1 37.28-37.22l54.76 61.53-35.83-74.17a191.49 191.49 0 0 1 48.65-20.13l26.87 77.25-4.71-81.61c8.61-1.18 17.39-1.8 26.32-1.8s17.71.62 26.32 1.8l-4.74 82.16 27.05-77.76c17.27 4.5 33.6 11.35 48.63 20.17l-35.82 74.12 54.72-61.47a193.13 193.13 0 0 1 37.24 37.23l-61.45 54.77 74.12-35.86a191.515 191.515 0 0 1 20.2 48.65l-77.81 27.1 82.24-4.75c1.19 8.66 1.82 17.5 1.82 26.49 0 8.88-.61 17.63-1.78 26.19l-82.12-4.75 77.72 27.09z\"},\"child\":[]}]})(props);\n};\nexport function FaFirstOrder (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.9 229.2c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4h-.2zM224 96.6c-7.1 0-14.6.6-21.4 1.7l3.7 67.4-22-64c-14.3 3.7-27.7 9.4-40 16.6l29.4 61.4-45.1-50.9c-11.4 8.9-21.7 19.1-30.6 30.9l50.6 45.4-61.1-29.7c-7.1 12.3-12.9 25.7-16.6 40l64.3 22.6-68-4c-.9 7.1-1.4 14.6-1.4 22s.6 14.6 1.4 21.7l67.7-4-64 22.6c3.7 14.3 9.4 27.7 16.6 40.3l61.1-29.7L97.7 352c8.9 11.7 19.1 22.3 30.9 30.9l44.9-50.9-29.5 61.4c12.3 7.4 25.7 13.1 40 16.9l22.3-64.6-4 68c7.1 1.1 14.6 1.7 21.7 1.7 7.4 0 14.6-.6 21.7-1.7l-4-68.6 22.6 65.1c14.3-4 27.7-9.4 40-16.9L274.9 332l44.9 50.9c11.7-8.9 22-19.1 30.6-30.9l-50.6-45.1 61.1 29.4c7.1-12.3 12.9-25.7 16.6-40.3l-64-22.3 67.4 4c1.1-7.1 1.4-14.3 1.4-21.7s-.3-14.9-1.4-22l-67.7 4 64-22.3c-3.7-14.3-9.1-28-16.6-40.3l-60.9 29.7 50.6-45.4c-8.9-11.7-19.1-22-30.6-30.9l-45.1 50.9 29.4-61.1c-12.3-7.4-25.7-13.1-40-16.9L241.7 166l4-67.7c-7.1-1.2-14.3-1.7-21.7-1.7zM443.4 128v256L224 512 4.6 384V128L224 0l219.4 128zm-17.1 10.3L224 20.9 21.7 138.3v235.1L224 491.1l202.3-117.7V138.3zM224 37.1l187.7 109.4v218.9L224 474.9 36.3 365.4V146.6L224 37.1zm0 50.9c-92.3 0-166.9 75.1-166.9 168 0 92.6 74.6 167.7 166.9 167.7 92 0 166.9-75.1 166.9-167.7 0-92.9-74.9-168-166.9-168z\"},\"child\":[]}]})(props);\n};\nexport function FaFirstdraft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 192h-64v128H192v128H0v-25.6h166.4v-128h128v-128H384V192zm-25.6 38.4v128h-128v128H64V512h192V384h128V230.4h-25.6zm25.6 192h-89.6V512H320v-64h64v-25.6zM0 0v384h128V256h128V128h128V0H0z\"},\"child\":[]}]})(props);\n};\nexport function FaFlickr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM144.5 319c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5zm159 0c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5z\"},\"child\":[]}]})(props);\n};\nexport function FaFlipboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v448h448V32H0zm358.4 179.2h-89.6v89.6h-89.6v89.6H89.6V121.6h268.8v89.6z\"},\"child\":[]}]})(props);\n};\nexport function FaFly (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M197.8 427.8c12.9 11.7 33.7 33.3 33.2 50.7 0 .8-.1 1.6-.1 2.5-1.8 19.8-18.8 31.1-39.1 31-25-.1-39.9-16.8-38.7-35.8 1-16.2 20.5-36.7 32.4-47.6 2.3-2.1 2.7-2.7 5.6-3.6 3.4 0 3.9.3 6.7 2.8zM331.9 67.3c-16.3-25.7-38.6-40.6-63.3-52.1C243.1 4.5 214-.2 192 0c-44.1 0-71.2 13.2-81.1 17.3C57.3 45.2 26.5 87.2 28 158.6c7.1 82.2 97 176 155.8 233.8 1.7 1.6 4.5 4.5 6.2 5.1l3.3.1c2.1-.7 1.8-.5 3.5-2.1 52.3-49.2 140.7-145.8 155.9-215.7 7-39.2 3.1-72.5-20.8-112.5zM186.8 351.9c-28-51.1-65.2-130.7-69.3-189-3.4-47.5 11.4-131.2 69.3-136.7v325.7zM328.7 180c-16.4 56.8-77.3 128-118.9 170.3C237.6 298.4 275 217 277 158.4c1.6-45.9-9.8-105.8-48-131.4 88.8 18.3 115.5 98.1 99.7 153z\"},\"child\":[]}]})(props);\n};\nexport function FaFontAwesomeAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48A48 48 0 0 0 0 80V432a48 48 0 0 0 48 48H400a48 48 0 0 0 48-48V80A48 48 0 0 0 400 32Zm16 400a16 16 0 0 1-16 16H48a16 16 0 0 1-16-16V80A16 16 0 0 1 48 64H400a16 16 0 0 1 16 16ZM201.6 152c-25.4 0-37.4 10.4-57.6 14.4V160a16 16 0 0 0-32 0V352a16 16 0 0 0 32 0V198.4c20.2-4 32.2-14.4 57.6-14.4 31.4 0 43.2 16 74.6 16 10.2 0 17.8-1.4 27.8-4.6v96c-10 3.2-17.6 4.6-27.8 4.6-31.4 0-43.4-16-74.6-16a85.9 85.9 0 0 0-25.6 4v32a80 80 0 0 1 25.6-4c31.4 0 43.2 16 74.6 16 18.6 0 28.2-4.8 59.8-16V152c-31.6 11.2-41.2 16-59.8 16C244.8 168 232.8 152 201.6 152Z\"},\"child\":[]}]})(props);\n};\nexport function FaFontAwesomeFlag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 48V384c-63 23-82 32-119 32-63 0-87-32-150-32-20 0-36 4-51 8V328c15-4 31-8 51-8 63 0 87 32 150 32 20 0 35-3 55-9V135c-20 6-35 9-55 9-63 0-87-32-150-32-51 0-75 21-115 29V448a31.6 31.6 0 0 1-32 32A31.6 31.6 0 0 1 0 448V64A31.6 31.6 0 0 1 32 32 31.6 31.6 0 0 1 64 64V77c40-8 64-29 115-29 63 0 87 32 150 32C366 80 385 71 448 48Z\"},\"child\":[]}]})(props);\n};\nexport function FaFontAwesomeLogoFull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 3992 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1209.7 156.5c-57.8 0-102 43.9-102 99.1 0 56 44.6 99.1 102 99.1 57.4 0 102-43.1 102-99.1C1311.7 200.4 1267.5 156.5 1209.7 156.5Zm0 152.7c-35.1 0-51.8-27.4-51.8-53.2 0-25.8 16.7-53.2 51.8-53.2 35.1 0 51.8 27.8 51.8 53.2C1261.1 281.8 1244.8 309.2 1209.7 309.2Zm962.1-136.1c-4.4-10.9-12.3-16.5-23.5-16.5s-19.1 5.6-23.5 16.5l-59.4 145.8c-7.2 17.7 2.8 27.4 4.4 29a24.6 24.6 0 0 0 17.5 6.8c10.8 0 18.7-6 23.1-18.1l4-10.1h67.7l4 10.1c4.8 12.1 12.3 18.1 23.1 18.1a24.6 24.6 0 0 0 17.5-6.8c10-10.1 6.8-22.6 4.4-29Zm-43 113.6 19.1-56 19.1 56Zm-574.5-130.1c-14.3 0-24.7 10.9-24.7 25.4v76.5l-68.5-85.8c-4.4-5.6-11.6-16.1-25.5-16.1-19.1 0-24.3 17.7-24.3 25.4V329.7c0 14.1 10.4 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V252.8l68.9 86.2c4.8 5.6 11.6 16.1 25.5 16.1 19.1 0 23.9-17.3 23.9-25.4V181.9C1579 167.4 1568.6 156.5 1554.3 156.5Zm-554.1 1.6H916.5c-19.9 0-25.1 17.3-25.1 25.4V328.1c0 19.7 16.7 25.4 24.7 25.4 8 0 24.7-5.2 24.7-25.4V285h44.6c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.5-22.1-22.7-22.1H940.8V203.6h59.4c12.8 0 22.7-9.3 22.7-22.6C1022.9 163 1007.3 158.1 1000.2 158.1Zm815.1 0H1691.7c-7.2 0-22.7 4.4-22.7 22.2 0 13.3 10 22.6 22.7 22.6h37V327.7c0 14.1 10.4 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V202.8h37c12.7 0 22.7-9.3 22.7-22.6C1837.9 163 1822.4 158.1 1815.2 158.1Zm1789.5-1.6c-9.6 0-17.5 6-25.1 18.1l-46.6 76.1L3486.4 174.6q-10.8-18.1-25.1-18.1c-19.5 0-24.7 18.1-24.7 25.8V329.7c0 14.1 10.4 25.4 24.7 25.4s24.7-10.9 24.7-25.4V262.8L3510.7 302.7c6.4 10.1 13.9 15.3 22.3 15.3 8.8 0 15.9-5.2 22.3-15.3l24.7-39.9v66.9c0 14.1 10.3 25.4 24.7 25.4 14.3 0 24.7-10.9 24.7-25.4V182.3C3629.4 174.2 3624.6 156.5 3604.7 156.5Zm248.6 149.8h-65.7V272.9h39.4c11.9 0 21.1-8.9 21.1-20.9 0-12.1-9.2-20.9-21.1-20.9h-39.4V204.8h62.1c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.6-22.2-22.7-22.2h-86.4c-19.9 0-25.1 17.3-25.1 25.4V326.5c0 8.1 5.2 25.4 25.1 25.4h90c12.8 0 22.7-9.3 22.7-22.6C3876 311.2 3860.5 306.3 3853.3 306.3ZM3235 156.5c-57.8 0-102 43.9-102 99.1 0 56 44.6 99.1 102 99.1 57.4 0 102-43.1 102-99.1C3337 200.4 3292.8 156.5 3235 156.5Zm0 152.7c-35.1 0-51.8-27.4-51.8-53.2 0-25.8 16.7-53.2 51.8-53.2 35.1 0 51.8 27.8 51.8 53.2C3286.8 281.8 3270.1 309.2 3235 309.2ZM2550.2 156.5c-11.2 0-19.1 5.6-23.1 16.5l-34.3 94.7-31.5-92.2c-4.4-12.5-12.3-18.9-24.3-18.9-11.9 0-19.9 6.4-24.3 18.9l-31.5 92.2-34.3-95.5q-5.4-15.7-22.7-15.7c-6.8 0-12.3 2.4-17.5 7.3-5.2 5.2-10.8 14.5-4.8 28.6l55.8 145.8c4 11.3 11.6 16.9 23.1 16.9q16.7 0 22.7-16.9l33.5-91.8 33.5 91.8q6 16.9 22.7 16.9c11.2 0 19.1-5.6 23.1-16.9l55.8-145.8c3.6-9.3 4.4-19.3-4.8-28.6A23 23 0 0 0 2550.2 156.5Zm444.2 81-21.9-9.3c-11.9-4.8-16.3-8.5-16.3-15.7q0-12.1 16.7-12.1c12.7 0 19.5 7.7 24.3 10.9 7.2 5.2 18.3 6.8 27.9-2 10.8-10.5 6.8-23.8 1.2-30.6-12.3-14.9-30.3-22.2-53.8-22.2-19.1 0-35.1 5.2-47.4 15.7-12.3 10.5-18.7 24.2-18.7 41.1 0 24.2 15.9 43.5 47.8 57.6l19.5 8.9c15.9 6.8 19.1 9.7 19.1 17.7 0 9.3-6.4 14.1-19.5 14.1-19.1 0-34.7-14.9-36.3-16.1-10.8-7.3-21.5-2-26.3 2.8-6.8 6.4-12.7 20.9 3.2 36.2 6.8 6.4 15.5 11.7 26.7 15.3a94.6 94.6 0 0 0 32.7 5.6c19.9 0 36.7-5.2 49.8-16.1 13.1-10.9 19.5-25.4 19.5-43.5q0-20.5-12-33.8C3022.7 253.2 3010.7 244.3 2994.4 237.5Zm-206.4 68.9h-65.7V272.9h39.4c12 0 21.1-8.9 21.1-20.9 0-12.1-9.2-20.9-21.1-20.9h-39.4V204.8h62.1c12.8 0 22.7-9.3 22.7-22.6 0-17.7-15.5-22.2-22.7-22.2h-86.4c-19.9 0-25.1 17.3-25.1 25.4V326.5c0 8.1 5.2 25.4 25.1 25.4h90c12.7 0 22.7-9.3 22.7-22.6C2810.8 311.2 2795.2 306.3 2788 306.3ZM178.3 49.1c-50.5 0-74.4 20.7-114.6 28.7V65A31.8 31.8 0 1 0 0 65V447a31.8 31.8 0 0 0 63.7 0V141.4c40.2-8 64.1-28.7 114.6-28.7 62.5 0 86 31.8 148.4 31.8 20.3 0 35.4-2.8 55.3-9.2v191c-19.9 6.4-35 9.2-55.3 9.2-62.5 0-86.4-31.8-148.4-31.8-20.3 0-36.2 3.6-50.9 8V375.4a159.1 159.1 0 0 1 50.9-8c62.5 0 86 31.8 148.4 31.8 37 0 56.1-9.6 119-31.8V49.1C382.8 71.4 363.7 80.9 326.7 80.9 264.2 80.9 240.4 49.1 178.3 49.1Z\"},\"child\":[]}]})(props);\n};\nexport function FaFontAwesome (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48A48 48 0 0 0 0 80V432a48 48 0 0 0 48 48H400a48 48 0 0 0 48-48V80A48 48 0 0 0 400 32ZM336 312c-31.6 11.2-41.2 16-59.8 16-31.4 0-43.2-16-74.6-16a80 80 0 0 0-25.6 4V284a85.9 85.9 0 0 1 25.6-4c31.2 0 43.2 16 74.6 16 10.2 0 17.8-1.4 27.8-4.6v-96c-10 3.2-17.6 4.6-27.8 4.6-31.4 0-43.2-16-74.6-16-25.4 0-37.4 10.4-57.6 14.4V352a16 16 0 0 1-32 0V160a16 16 0 0 1 32 0v6.4c20.2-4 32.2-14.4 57.6-14.4 31.2 0 43.2 16 74.6 16 18.6 0 28.2-4.8 59.8-16Z\"},\"child\":[]}]})(props);\n};\nexport function FaFonticonsFi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M114.4 224h92.4l-15.2 51.2h-76.4V433c0 8-2.8 9.2 4.4 10l59.6 5.6V483H0v-35.2l29.2-2.8c7.2-.8 9.2-3.2 9.2-10.8V278.4c0-3.2-4-3.2-8-3.2H0V224h38.4v-28.8c0-68 36.4-96 106-96 46.8 0 88.8 11.2 88.8 72.4l-69.6 8.4c.4-25.6-6-31.6-22.4-31.6-25.2 0-26 13.6-26 37.6v32c0 3.2-4.8 6-.8 6zM384 483H243.2v-34.4l28-3.6c7.2-.8 10.4-2.4 10.4-10V287c0-5.6-4-9.2-9.2-10.8l-33.2-8.8 9.2-40.4h110v208c0 8-3.6 8.8 4 10l21.6 3.6V483zm-30-347.2l12.4 45.6-10 10-42.8-22.8-42.8 22.8-10-10 12.4-45.6-30-36.4 4.8-10h38L307.2 51H320l21.2 38.4h38l4.8 13.2-30 33.2z\"},\"child\":[]}]})(props);\n};\nexport function FaFonticons (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v448h448V32zm187 140.9c-18.4 0-19 9.9-19 27.4v23.3c0 2.4-3.5 4.4-.6 4.4h67.4l-11.1 37.3H168v112.9c0 5.8-2 6.7 3.2 7.3l43.5 4.1v25.1H84V389l21.3-2c5.2-.6 6.7-2.3 6.7-7.9V267.7c0-2.3-2.9-2.3-5.8-2.3H84V228h28v-21c0-49.6 26.5-70 77.3-70 34.1 0 64.7 8.2 64.7 52.8l-50.7 6.1c.3-18.7-4.4-23-16.3-23zm74.3 241.8v-25.1l20.4-2.6c5.2-.6 7.6-1.7 7.6-7.3V271.8c0-4.1-2.9-6.7-6.7-7.9l-24.2-6.4 6.7-29.5h80.2v151.7c0 5.8-2.6 6.4 2.9 7.3l15.7 2.6v25.1zm80.8-255.5l9 33.2-7.3 7.3-31.2-16.6-31.2 16.6-7.3-7.3 9-33.2-21.8-24.2 3.5-9.6h27.7l15.5-28h9.3l15.5 28h27.7l3.5 9.6z\"},\"child\":[]}]})(props);\n};\nexport function FaFortAwesomeAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 237.4h-22.2c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7H208c2.1 0 3.7-1.6 3.7-3.7v-51.7c0-2.1-1.6-3.7-3.7-3.7zm118.2 0H304c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7h22.2c2.1 0 3.7-1.6 3.7-3.7v-51.7c-.1-2.1-1.7-3.7-3.7-3.7zm132-125.1c-2.3-3.2-4.6-6.4-7.1-9.5-9.8-12.5-20.8-24-32.8-34.4-4.5-3.9-9.1-7.6-13.9-11.2-1.6-1.2-3.2-2.3-4.8-3.5C372 34.1 340.3 20 306 13c-16.2-3.3-32.9-5-50-5s-33.9 1.7-50 5c-34.3 7.1-66 21.2-93.3 40.8-1.6 1.1-3.2 2.3-4.8 3.5-4.8 3.6-9.4 7.3-13.9 11.2-3 2.6-5.9 5.3-8.8 8s-5.7 5.5-8.4 8.4c-5.5 5.7-10.7 11.8-15.6 18-2.4 3.1-4.8 6.3-7.1 9.5C25.2 153 8.3 202.5 8.3 256c0 2 .1 4 .1 6 .1.7.1 1.3.1 2 .1 1.3.1 2.7.2 4 0 .8.1 1.5.1 2.3 0 1.3.1 2.5.2 3.7.1.8.1 1.6.2 2.4.1 1.1.2 2.3.3 3.5 0 .8.1 1.6.2 2.4.1 1.2.3 2.4.4 3.6.1.8.2 1.5.3 2.3.1 1.3.3 2.6.5 3.9.1.6.2 1.3.3 1.9l.9 5.7c.1.6.2 1.1.3 1.7.3 1.3.5 2.7.8 4 .2.8.3 1.6.5 2.4.2 1 .5 2.1.7 3.2.2.9.4 1.7.6 2.6.2 1 .4 2 .7 3 .2.9.5 1.8.7 2.7.3 1 .5 1.9.8 2.9.3.9.5 1.8.8 2.7.2.9.5 1.9.8 2.8s.5 1.8.8 2.7c.3 1 .6 1.9.9 2.8.6 1.6 1.1 3.3 1.7 4.9.4 1 .7 1.9 1 2.8.3 1 .7 2 1.1 3 .3.8.6 1.5.9 2.3l1.2 3c.3.7.6 1.5.9 2.2.4 1 .9 2 1.3 3l.9 2.1c.5 1 .9 2 1.4 3 .3.7.6 1.3.9 2 .5 1 1 2.1 1.5 3.1.2.6.5 1.1.8 1.7.6 1.1 1.1 2.2 1.7 3.3.1.2.2.3.3.5 2.2 4.1 4.4 8.2 6.8 12.2.2.4.5.8.7 1.2.7 1.1 1.3 2.2 2 3.3.3.5.6.9.9 1.4.6 1.1 1.3 2.1 2 3.2.3.5.6.9.9 1.4.7 1.1 1.4 2.1 2.1 3.2.2.4.5.8.8 1.2.7 1.1 1.5 2.2 2.3 3.3.2.2.3.5.5.7 37.5 51.7 94.4 88.5 160 99.4.9.1 1.7.3 2.6.4 1 .2 2.1.4 3.1.5s1.9.3 2.8.4c1 .2 2 .3 3 .4.9.1 1.9.2 2.9.3s1.9.2 2.9.3 2.1.2 3.1.3c.9.1 1.8.1 2.7.2 1.1.1 2.3.1 3.4.2.8 0 1.7.1 2.5.1 1.3 0 2.6.1 3.9.1.7.1 1.4.1 2.1.1 2 .1 4 .1 6 .1s4-.1 6-.1c.7 0 1.4-.1 2.1-.1 1.3 0 2.6 0 3.9-.1.8 0 1.7-.1 2.5-.1 1.1-.1 2.3-.1 3.4-.2.9 0 1.8-.1 2.7-.2 1-.1 2.1-.2 3.1-.3s1.9-.2 2.9-.3c.9-.1 1.9-.2 2.9-.3s2-.3 3-.4 1.9-.3 2.8-.4c1-.2 2.1-.3 3.1-.5.9-.1 1.7-.3 2.6-.4 65.6-11 122.5-47.7 160.1-102.4.2-.2.3-.5.5-.7.8-1.1 1.5-2.2 2.3-3.3.2-.4.5-.8.8-1.2.7-1.1 1.4-2.1 2.1-3.2.3-.5.6-.9.9-1.4.6-1.1 1.3-2.1 2-3.2.3-.5.6-.9.9-1.4.7-1.1 1.3-2.2 2-3.3.2-.4.5-.8.7-1.2 2.4-4 4.6-8.1 6.8-12.2.1-.2.2-.3.3-.5.6-1.1 1.1-2.2 1.7-3.3.2-.6.5-1.1.8-1.7.5-1 1-2.1 1.5-3.1.3-.7.6-1.3.9-2 .5-1 1-2 1.4-3l.9-2.1c.5-1 .9-2 1.3-3 .3-.7.6-1.5.9-2.2l1.2-3c.3-.8.6-1.5.9-2.3.4-1 .7-2 1.1-3s.7-1.9 1-2.8c.6-1.6 1.2-3.3 1.7-4.9.3-1 .6-1.9.9-2.8s.5-1.8.8-2.7c.2-.9.5-1.9.8-2.8s.6-1.8.8-2.7c.3-1 .5-1.9.8-2.9.2-.9.5-1.8.7-2.7.2-1 .5-2 .7-3 .2-.9.4-1.7.6-2.6.2-1 .5-2.1.7-3.2.2-.8.3-1.6.5-2.4.3-1.3.6-2.7.8-4 .1-.6.2-1.1.3-1.7l.9-5.7c.1-.6.2-1.3.3-1.9.1-1.3.3-2.6.5-3.9.1-.8.2-1.5.3-2.3.1-1.2.3-2.4.4-3.6 0-.8.1-1.6.2-2.4.1-1.1.2-2.3.3-3.5.1-.8.1-1.6.2-2.4.1 1.7.1.5.2-.7 0-.8.1-1.5.1-2.3.1-1.3.2-2.7.2-4 .1-.7.1-1.3.1-2 .1-2 .1-4 .1-6 0-53.5-16.9-103-45.8-143.7zM448 371.5c-9.4 15.5-20.6 29.9-33.6 42.9-20.6 20.6-44.5 36.7-71.2 48-13.9 5.8-28.2 10.3-42.9 13.2v-75.8c0-58.6-88.6-58.6-88.6 0v75.8c-14.7-2.9-29-7.3-42.9-13.2-26.7-11.3-50.6-27.4-71.2-48-13-13-24.2-27.4-33.6-42.9v-71.3c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7V326h29.6V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7H208c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-4.8 6.5-3.7 9.5-3.7V88.1c-4.4-2-7.4-6.7-7.4-11.5 0-16.8 25.4-16.8 25.4 0 0 4.8-3 9.4-7.4 11.5V92c6.3-1.4 12.7-2.3 19.2-2.3 9.4 0 18.4 3.5 26.3 3.5 7.2 0 15.2-3.5 19.4-3.5 2.1 0 3.7 1.6 3.7 3.7v48.4c0 5.6-18.7 6.5-22.4 6.5-8.6 0-16.6-3.5-25.4-3.5-7 0-14.1 1.2-20.8 2.8v30.7c3 0 9.5-1.1 9.5 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v144h29.5v-25.8c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7z\"},\"child\":[]}]})(props);\n};\nexport function FaFortAwesome (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M489.2 287.9h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6V146.2c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-6-8-4.6-11.7-4.6v-38c8.3-2 17.1-3.4 25.7-3.4 10.9 0 20.9 4.3 31.4 4.3 4.6 0 27.7-1.1 27.7-8v-60c0-2.6-2-4.6-4.6-4.6-5.1 0-15.1 4.3-24 4.3-9.7 0-20.9-4.3-32.6-4.3-8 0-16 1.1-23.7 2.9v-4.9c5.4-2.6 9.1-8.3 9.1-14.3 0-20.7-31.4-20.8-31.4 0 0 6 3.7 11.7 9.1 14.3v111.7c-3.7 0-11.7-1.4-11.7 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32H128v-32c0-2.6-2-4.6-4.6-4.6H96c-2.6 0-4.6 2-4.6 4.6v178.3H54.8v-32c0-2.6-2-4.6-4.6-4.6H22.8c-2.6 0-4.6 2-4.6 4.6V512h182.9v-96c0-72.6 109.7-72.6 109.7 0v96h182.9V292.5c.1-2.6-1.9-4.6-4.5-4.6zm-288.1-4.5c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64zm146.4 0c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64z\"},\"child\":[]}]})(props);\n};\nexport function FaForumbee (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.8 309.7C2 292.7 0 275.5 0 258.3 0 135 99.8 35 223.1 35c16.6 0 33.3 2 49.3 5.5C149 87.5 51.9 186 5.8 309.7zm392.9-189.2C385 103 369 87.8 350.9 75.2c-149.6 44.3-266.3 162.1-309.7 312 12.5 18.1 28 35.6 45.2 49 43.1-151.3 161.2-271.7 312.3-315.7zm15.8 252.7c15.2-25.1 25.4-53.7 29.5-82.8-79.4 42.9-145 110.6-187.6 190.3 30-4.4 58.9-15.3 84.6-31.3 35 13.1 70.9 24.3 107 33.6-9.3-36.5-20.4-74.5-33.5-109.8zm29.7-145.5c-2.6-19.5-7.9-38.7-15.8-56.8C290.5 216.7 182 327.5 137.1 466c18.1 7.6 37 12.5 56.6 15.2C240 367.1 330.5 274.4 444.2 227.7z\"},\"child\":[]}]})(props);\n};\nexport function FaFoursquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 368 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M323.1 3H49.9C12.4 3 0 31.3 0 49.1v433.8c0 20.3 12.1 27.7 18.2 30.1 6.2 2.5 22.8 4.6 32.9-7.1C180 356.5 182.2 354 182.2 354c3.1-3.4 3.4-3.1 6.8-3.1h83.4c35.1 0 40.6-25.2 44.3-39.7l48.6-243C373.8 25.8 363.1 3 323.1 3zm-16.3 73.8l-11.4 59.7c-1.2 6.5-9.5 13.2-16.9 13.2H172.1c-12 0-20.6 8.3-20.6 20.3v13c0 12 8.6 20.6 20.6 20.6h90.4c8.3 0 16.6 9.2 14.8 18.2-1.8 8.9-10.5 53.8-11.4 58.8-.9 4.9-6.8 13.5-16.9 13.5h-73.5c-13.5 0-17.2 1.8-26.5 12.6 0 0-8.9 11.4-89.5 108.3-.9.9-1.8.6-1.8-.3V75.9c0-7.7 6.8-16.6 16.6-16.6h219c8.2 0 15.6 7.7 13.5 17.5z\"},\"child\":[]}]})(props);\n};\nexport function FaFreeCodeCamp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M97.22,96.21c10.36-10.65,16-17.12,16-21.9,0-2.76-1.92-5.51-3.83-7.42A14.81,14.81,0,0,0,101,64.05c-8.48,0-20.92,8.79-35.84,25.69C23.68,137,2.51,182.81,3.37,250.34s17.47,117,54.06,161.87C76.22,435.86,90.62,448,100.9,448a13.55,13.55,0,0,0,8.37-3.84c1.91-2.76,3.81-5.63,3.81-8.38,0-5.63-3.86-12.2-13.2-20.55-44.45-42.33-67.32-97-67.48-165C32.25,188.8,54,137.83,97.22,96.21ZM239.47,420.07c.58.37.91.55.91.55Zm93.79.55.17-.13C333.24,420.62,333.17,420.67,333.26,420.62Zm3.13-158.18c-16.24-4.15,50.41-82.89-68.05-177.17,0,0,15.54,49.38-62.83,159.57-74.27,104.35,23.46,168.73,34,175.23-6.73-4.35-47.4-35.7,9.55-128.64,11-18.3,25.53-34.87,43.5-72.16,0,0,15.91,22.45,7.6,71.13C287.7,364,354,342.91,355,343.94c22.75,26.78-17.72,73.51-21.58,76.55,5.49-3.65,117.71-78,33-188.1C360.43,238.4,352.62,266.59,336.39,262.44ZM510.88,89.69C496,72.79,483.52,64,475,64a14.81,14.81,0,0,0-8.39,2.84c-1.91,1.91-3.83,4.66-3.83,7.42,0,4.78,5.6,11.26,16,21.9,43.23,41.61,65,92.59,64.82,154.06-.16,68-23,122.63-67.48,165-9.34,8.35-13.18,14.92-13.2,20.55,0,2.75,1.9,5.62,3.81,8.38A13.61,13.61,0,0,0,475.1,448c10.28,0,24.68-12.13,43.47-35.79,36.59-44.85,53.14-94.38,54.06-161.87S552.32,137,510.88,89.69Z\"},\"child\":[]}]})(props);\n};\nexport function FaFreebsd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M303.7 96.2c11.1-11.1 115.5-77 139.2-53.2 23.7 23.7-42.1 128.1-53.2 139.2-11.1 11.1-39.4.9-63.1-22.9-23.8-23.7-34.1-52-22.9-63.1zM109.9 68.1C73.6 47.5 22 24.6 5.6 41.1c-16.6 16.6 7.1 69.4 27.9 105.7 18.5-32.2 44.8-59.3 76.4-78.7zM406.7 174c3.3 11.3 2.7 20.7-2.7 26.1-20.3 20.3-87.5-27-109.3-70.1-18-32.3-11.1-53.4 14.9-48.7 5.7-3.6 12.3-7.6 19.6-11.6-29.8-15.5-63.6-24.3-99.5-24.3-119.1 0-215.6 96.5-215.6 215.6 0 119 96.5 215.6 215.6 215.6S445.3 380.1 445.3 261c0-38.4-10.1-74.5-27.7-105.8-3.9 7-7.6 13.3-10.9 18.8z\"},\"child\":[]}]})(props);\n};\nexport function FaFulcrum (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M95.75 164.14l-35.38 43.55L25 164.14l35.38-43.55zM144.23 0l-20.54 198.18L72.72 256l51 57.82L144.23 512V300.89L103.15 256l41.08-44.89zm79.67 164.14l35.38 43.55 35.38-43.55-35.38-43.55zm-48.48 47L216.5 256l-41.08 44.89V512L196 313.82 247 256l-51-57.82L175.42 0z\"},\"child\":[]}]})(props);\n};\nexport function FaGalacticRepublic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 504C111.25 504 0 392.75 0 256S111.25 8 248 8s248 111.25 248 248-111.25 248-248 248zm0-479.47C120.37 24.53 16.53 128.37 16.53 256S120.37 487.47 248 487.47 479.47 383.63 479.47 256 375.63 24.53 248 24.53zm27.62 21.81v24.62a185.933 185.933 0 0 1 83.57 34.54l17.39-17.36c-28.75-22.06-63.3-36.89-100.96-41.8zm-55.37.07c-37.64 4.94-72.16 19.8-100.88 41.85l17.28 17.36h.08c24.07-17.84 52.55-30.06 83.52-34.67V46.41zm12.25 50.17v82.87c-10.04 2.03-19.42 5.94-27.67 11.42l-58.62-58.59-21.93 21.93 58.67 58.67c-5.47 8.23-9.45 17.59-11.47 27.62h-82.9v31h82.9c2.02 10.02 6.01 19.31 11.47 27.54l-58.67 58.69 21.93 21.93 58.62-58.62a77.873 77.873 0 0 0 27.67 11.47v82.9h31v-82.9c10.05-2.03 19.37-6.06 27.62-11.55l58.67 58.69 21.93-21.93-58.67-58.69c5.46-8.23 9.47-17.52 11.5-27.54h82.87v-31h-82.87c-2.02-10.02-6.03-19.38-11.5-27.62l58.67-58.67-21.93-21.93-58.67 58.67c-8.25-5.49-17.57-9.47-27.62-11.5V96.58h-31zm183.24 30.72l-17.36 17.36a186.337 186.337 0 0 1 34.67 83.67h24.62c-4.95-37.69-19.83-72.29-41.93-101.03zm-335.55.13c-22.06 28.72-36.91 63.26-41.85 100.91h24.65c4.6-30.96 16.76-59.45 34.59-83.52l-17.39-17.39zM38.34 283.67c4.92 37.64 19.75 72.18 41.8 100.9l17.36-17.39c-17.81-24.07-29.92-52.57-34.51-83.52H38.34zm394.7 0c-4.61 30.99-16.8 59.5-34.67 83.6l17.36 17.36c22.08-28.74 36.98-63.29 41.93-100.96h-24.62zM136.66 406.38l-17.36 17.36c28.73 22.09 63.3 36.98 100.96 41.93v-24.64c-30.99-4.63-59.53-16.79-83.6-34.65zm222.53.05c-24.09 17.84-52.58 30.08-83.57 34.67v24.57c37.67-4.92 72.21-19.79 100.96-41.85l-17.31-17.39h-.08z\"},\"child\":[]}]})(props);\n};\nexport function FaGalacticSenate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M249.86 33.48v26.07C236.28 80.17 226 168.14 225.39 274.9c11.74-15.62 19.13-33.33 19.13-48.24v-16.88c-.03-5.32.75-10.53 2.19-15.65.65-2.14 1.39-4.08 2.62-5.82 1.23-1.75 3.43-3.79 6.68-3.79 3.24 0 5.45 2.05 6.68 3.79 1.23 1.75 1.97 3.68 2.62 5.82 1.44 5.12 2.22 10.33 2.19 15.65v16.88c0 14.91 7.39 32.62 19.13 48.24-.63-106.76-10.91-194.73-24.49-215.35V33.48h-12.28zm-26.34 147.77c-9.52 2.15-18.7 5.19-27.46 9.08 8.9 16.12 9.76 32.64 1.71 37.29-8 4.62-21.85-4.23-31.36-19.82-11.58 8.79-21.88 19.32-30.56 31.09 14.73 9.62 22.89 22.92 18.32 30.66-4.54 7.7-20.03 7.14-35.47-.96-5.78 13.25-9.75 27.51-11.65 42.42 9.68.18 18.67 2.38 26.18 6.04 17.78-.3 32.77-1.96 40.49-4.22 5.55-26.35 23.02-48.23 46.32-59.51.73-25.55 1.88-49.67 3.48-72.07zm64.96 0c1.59 22.4 2.75 46.52 3.47 72.07 23.29 11.28 40.77 33.16 46.32 59.51 7.72 2.26 22.71 3.92 40.49 4.22 7.51-3.66 16.5-5.85 26.18-6.04-1.9-14.91-5.86-29.17-11.65-42.42-15.44 8.1-30.93 8.66-35.47.96-4.57-7.74 3.6-21.05 18.32-30.66-8.68-11.77-18.98-22.3-30.56-31.09-9.51 15.59-23.36 24.44-31.36 19.82-8.05-4.65-7.19-21.16 1.71-37.29a147.49 147.49 0 0 0-27.45-9.08zm-32.48 8.6c-3.23 0-5.86 8.81-6.09 19.93h-.05v16.88c0 41.42-49.01 95.04-93.49 95.04-52 0-122.75-1.45-156.37 29.17v2.51c9.42 17.12 20.58 33.17 33.18 47.97C45.7 380.26 84.77 360.4 141.2 360c45.68 1.02 79.03 20.33 90.76 40.87.01.01-.01.04 0 .05 7.67 2.14 15.85 3.23 24.04 3.21 8.19.02 16.37-1.07 24.04-3.21.01-.01-.01-.04 0-.05 11.74-20.54 45.08-39.85 90.76-40.87 56.43.39 95.49 20.26 108.02 41.35 12.6-14.8 23.76-30.86 33.18-47.97v-2.51c-33.61-30.62-104.37-29.17-156.37-29.17-44.48 0-93.49-53.62-93.49-95.04v-16.88h-.05c-.23-11.12-2.86-19.93-6.09-19.93zm0 96.59c22.42 0 40.6 18.18 40.6 40.6s-18.18 40.65-40.6 40.65-40.6-18.23-40.6-40.65c0-22.42 18.18-40.6 40.6-40.6zm0 7.64c-18.19 0-32.96 14.77-32.96 32.96S237.81 360 256 360s32.96-14.77 32.96-32.96-14.77-32.96-32.96-32.96zm0 6.14c14.81 0 26.82 12.01 26.82 26.82s-12.01 26.82-26.82 26.82-26.82-12.01-26.82-26.82 12.01-26.82 26.82-26.82zm-114.8 66.67c-10.19.07-21.6.36-30.5 1.66.43 4.42 1.51 18.63 7.11 29.76 9.11-2.56 18.36-3.9 27.62-3.9 41.28.94 71.48 34.35 78.26 74.47l.11 4.7c10.4 1.91 21.19 2.94 32.21 2.94 11.03 0 21.81-1.02 32.21-2.94l.11-4.7c6.78-40.12 36.98-73.53 78.26-74.47 9.26 0 18.51 1.34 27.62 3.9 5.6-11.13 6.68-25.34 7.11-29.76-8.9-1.3-20.32-1.58-30.5-1.66-18.76.42-35.19 4.17-48.61 9.67-12.54 16.03-29.16 30.03-49.58 33.07-.09.02-.17.04-.27.05-.05.01-.11.04-.16.05-5.24 1.07-10.63 1.6-16.19 1.6-5.55 0-10.95-.53-16.19-1.6-.05-.01-.11-.04-.16-.05-.1-.02-.17-.04-.27-.05-20.42-3.03-37.03-17.04-49.58-33.07-13.42-5.49-29.86-9.25-48.61-9.67z\"},\"child\":[]}]})(props);\n};\nexport function FaGetPocket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M407.6 64h-367C18.5 64 0 82.5 0 104.6v135.2C0 364.5 99.7 464 224.2 464c124 0 223.8-99.5 223.8-224.2V104.6c0-22.4-17.7-40.6-40.4-40.6zm-162 268.5c-12.4 11.8-31.4 11.1-42.4 0C89.5 223.6 88.3 227.4 88.3 209.3c0-16.9 13.8-30.7 30.7-30.7 17 0 16.1 3.8 105.2 89.3 90.6-86.9 88.6-89.3 105.5-89.3 16.9 0 30.7 13.8 30.7 30.7 0 17.8-2.9 15.7-114.8 123.2z\"},\"child\":[]}]})(props);\n};\nexport function FaGgCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M257 8C120 8 9 119 9 256s111 248 248 248 248-111 248-248S394 8 257 8zm-49.5 374.8L81.8 257.1l125.7-125.7 35.2 35.4-24.2 24.2-11.1-11.1-77.2 77.2 77.2 77.2 26.6-26.6-53.1-52.9 24.4-24.4 77.2 77.2-75 75.2zm99-2.2l-35.2-35.2 24.1-24.4 11.1 11.1 77.2-77.2-77.2-77.2-26.5 26.5 53.1 52.9-24.4 24.4-77.2-77.2 75-75L432.2 255 306.5 380.6z\"},\"child\":[]}]})(props);\n};\nexport function FaGg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M179.2 230.4l102.4 102.4-102.4 102.4L0 256 179.2 76.8l44.8 44.8-25.6 25.6-19.2-19.2-128 128 128 128 51.5-51.5-77.1-76.5 25.6-25.6zM332.8 76.8L230.4 179.2l102.4 102.4 25.6-25.6-77.1-76.5 51.5-51.5 128 128-128 128-19.2-19.2-25.6 25.6 44.8 44.8L512 256 332.8 76.8z\"},\"child\":[]}]})(props);\n};\nexport function FaGitAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M439.55 236.05L244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z\"},\"child\":[]}]})(props);\n};\nexport function FaGitSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M100.59 334.24c48.57 3.31 58.95 2.11 58.95 11.94 0 20-65.55 20.06-65.55 1.52.01-5.09 3.29-9.4 6.6-13.46zm27.95-116.64c-32.29 0-33.75 44.47-.75 44.47 32.51 0 31.71-44.47.75-44.47zM448 80v352a48 48 0 0 1-48 48H48a48 48 0 0 1-48-48V80a48 48 0 0 1 48-48h352a48 48 0 0 1 48 48zm-227 69.31c0 14.49 8.38 22.88 22.86 22.88 14.74 0 23.13-8.39 23.13-22.88S258.62 127 243.88 127c-14.48 0-22.88 7.84-22.88 22.31zM199.18 195h-49.55c-25-6.55-81.56-4.85-81.56 46.75 0 18.8 9.4 32 21.85 38.11C74.23 294.23 66.8 301 66.8 310.6c0 6.87 2.79 13.22 11.18 16.76-8.9 8.4-14 14.48-14 25.92C64 373.35 81.53 385 127.52 385c44.22 0 69.87-16.51 69.87-45.73 0-36.67-28.23-35.32-94.77-39.38l8.38-13.43c17 4.74 74.19 6.23 74.19-42.43 0-11.69-4.83-19.82-9.4-25.67l23.38-1.78zm84.34 109.84l-13-1.78c-3.82-.51-4.07-1-4.07-5.09V192.52h-52.6l-2.79 20.57c15.75 5.55 17 4.86 17 10.17V298c0 5.62-.31 4.58-17 6.87v20.06h72.42zM384 315l-6.87-22.37c-40.93 15.37-37.85-12.41-37.85-16.73v-60.72h37.85v-25.41h-35.82c-2.87 0-2 2.52-2-38.63h-24.18c-2.79 27.7-11.68 38.88-34 41.42v22.62c20.47 0 19.82-.85 19.82 2.54v66.57c0 28.72 11.43 40.91 41.67 40.91 14.45 0 30.45-4.83 41.38-10.2z\"},\"child\":[]}]})(props);\n};\nexport function FaGit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216.29 158.39H137C97 147.9 6.51 150.63 6.51 233.18c0 30.09 15 51.23 35 61-25.1 23-37 33.85-37 49.21 0 11 4.47 21.14 17.89 26.81C8.13 383.61 0 393.35 0 411.65c0 32.11 28.05 50.82 101.63 50.82 70.75 0 111.79-26.42 111.79-73.18 0-58.66-45.16-56.5-151.63-63l13.43-21.55c27.27 7.58 118.7 10 118.7-67.89 0-18.7-7.73-31.71-15-41.07l37.41-2.84zm-63.42 241.9c0 32.06-104.89 32.1-104.89 2.43 0-8.14 5.27-15 10.57-21.54 77.71 5.3 94.32 3.37 94.32 19.11zm-50.81-134.58c-52.8 0-50.46-71.16 1.2-71.16 49.54 0 50.82 71.16-1.2 71.16zm133.3 100.51v-32.1c26.75-3.66 27.24-2 27.24-11V203.61c0-8.5-2.05-7.38-27.24-16.26l4.47-32.92H324v168.71c0 6.51.4 7.32 6.51 8.14l20.73 2.84v32.1zm52.45-244.31c-23.17 0-36.59-13.43-36.59-36.61s13.42-35.77 36.59-35.77c23.58 0 37 12.62 37 35.77s-13.42 36.61-37 36.61zM512 350.46c-17.49 8.53-43.1 16.26-66.28 16.26-48.38 0-66.67-19.5-66.67-65.46V194.75c0-5.42 1.05-4.06-31.71-4.06V154.5c35.78-4.07 50-22 54.47-66.27h38.63c0 65.83-1.34 61.81 3.26 61.81H501v40.65h-60.56v97.15c0 6.92-4.92 51.41 60.57 26.84z\"},\"child\":[]}]})(props);\n};\nexport function FaGithubAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M186.1 328.7c0 20.9-10.9 55.1-36.7 55.1s-36.7-34.2-36.7-55.1 10.9-55.1 36.7-55.1 36.7 34.2 36.7 55.1zM480 278.2c0 31.9-3.2 65.7-17.5 95-37.9 76.6-142.1 74.8-216.7 74.8-75.8 0-186.2 2.7-225.6-74.8-14.6-29-20.2-63.1-20.2-95 0-41.9 13.9-81.5 41.5-113.6-5.2-15.8-7.7-32.4-7.7-48.8 0-21.5 4.9-32.3 14.6-51.8 45.3 0 74.3 9 108.8 36 29-6.9 58.8-10 88.7-10 27 0 54.2 2.9 80.4 9.2 34-26.7 63-35.2 107.8-35.2 9.8 19.5 14.6 30.3 14.6 51.8 0 16.4-2.6 32.7-7.7 48.2 27.5 32.4 39 72.3 39 114.2zm-64.3 50.5c0-43.9-26.7-82.6-73.5-82.6-18.9 0-37 3.4-56 6-14.9 2.3-29.8 3.2-45.1 3.2-15.2 0-30.1-.9-45.1-3.2-18.7-2.6-37-6-56-6-46.8 0-73.5 38.7-73.5 82.6 0 87.8 80.4 101.3 150.4 101.3h48.2c70.3 0 150.6-13.4 150.6-101.3zm-82.6-55.1c-25.8 0-36.7 34.2-36.7 55.1s10.9 55.1 36.7 55.1 36.7-34.2 36.7-55.1-10.9-55.1-36.7-55.1z\"},\"child\":[]}]})(props);\n};\nexport function FaGithubSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM277.3 415.7c-8.4 1.5-11.5-3.7-11.5-8 0-5.4.2-33 .2-55.3 0-15.6-5.2-25.5-11.3-30.7 37-4.1 76-9.2 76-73.1 0-18.2-6.5-27.3-17.1-39 1.7-4.3 7.4-22-1.7-45-13.9-4.3-45.7 17.9-45.7 17.9-13.2-3.7-27.5-5.6-41.6-5.6-14.1 0-28.4 1.9-41.6 5.6 0 0-31.8-22.2-45.7-17.9-9.1 22.9-3.5 40.6-1.7 45-10.6 11.7-15.6 20.8-15.6 39 0 63.6 37.3 69 74.3 73.1-4.8 4.3-9.1 11.7-10.6 22.3-9.5 4.3-33.8 11.7-48.3-13.9-9.1-15.8-25.5-17.1-25.5-17.1-16.2-.2-1.1 10.2-1.1 10.2 10.8 5 18.4 24.2 18.4 24.2 9.7 29.7 56.1 19.7 56.1 19.7 0 13.9.2 36.5.2 40.6 0 4.3-3 9.5-11.5 8-66-22.1-112.2-84.9-112.2-158.3 0-91.8 70.2-161.5 162-161.5S388 165.6 388 257.4c.1 73.4-44.7 136.3-110.7 158.3zm-98.1-61.1c-1.9.4-3.7-.4-3.9-1.7-.2-1.5 1.1-2.8 3-3.2 1.9-.2 3.7.6 3.9 1.9.3 1.3-1 2.6-3 3zm-9.5-.9c0 1.3-1.5 2.4-3.5 2.4-2.2.2-3.7-.9-3.7-2.4 0-1.3 1.5-2.4 3.5-2.4 1.9-.2 3.7.9 3.7 2.4zm-13.7-1.1c-.4 1.3-2.4 1.9-4.1 1.3-1.9-.4-3.2-1.9-2.8-3.2.4-1.3 2.4-1.9 4.1-1.5 2 .6 3.3 2.1 2.8 3.4zm-12.3-5.4c-.9 1.1-2.8.9-4.3-.6-1.5-1.3-1.9-3.2-.9-4.1.9-1.1 2.8-.9 4.3.6 1.3 1.3 1.8 3.3.9 4.1zm-9.1-9.1c-.9.6-2.6 0-3.7-1.5s-1.1-3.2 0-3.9c1.1-.9 2.8-.2 3.7 1.3 1.1 1.5 1.1 3.3 0 4.1zm-6.5-9.7c-.9.9-2.4.4-3.5-.6-1.1-1.3-1.3-2.8-.4-3.5.9-.9 2.4-.4 3.5.6 1.1 1.3 1.3 2.8.4 3.5zm-6.7-7.4c-.4.9-1.7 1.1-2.8.4-1.3-.6-1.9-1.7-1.5-2.6.4-.6 1.5-.9 2.8-.4 1.3.7 1.9 1.8 1.5 2.6z\"},\"child\":[]}]})(props);\n};\nexport function FaGithub (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"},\"child\":[]}]})(props);\n};\nexport function FaGitkraken (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 592 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M565.7 118.1c-2.3-6.1-9.3-9.2-15.3-6.6-5.7 2.4-8.5 8.9-6.3 14.6 10.9 29 16.9 60.5 16.9 93.3 0 134.6-100.3 245.7-230.2 262.7V358.4c7.9-1.5 15.5-3.6 23-6.2v104c106.7-25.9 185.9-122.1 185.9-236.8 0-91.8-50.8-171.8-125.8-213.3-5.7-3.2-13-.9-15.9 5-2.7 5.5-.6 12.2 4.7 15.1 67.9 37.6 113.9 110 113.9 193.2 0 93.3-57.9 173.1-139.8 205.4v-92.2c14.2-4.5 24.9-17.7 24.9-33.5 0-13.1-6.8-24.4-17.3-30.5 8.3-79.5 44.5-58.6 44.5-83.9V170c0-38-87.9-161.8-129-164.7-2.5-.2-5-.2-7.6 0C251.1 8.3 163.2 132 163.2 170v14.8c0 25.3 36.3 4.3 44.5 83.9-10.6 6.1-17.3 17.4-17.3 30.5 0 15.8 10.6 29 24.8 33.5v92.2c-81.9-32.2-139.8-112-139.8-205.4 0-83.1 46-155.5 113.9-193.2 5.4-3 7.4-9.6 4.7-15.1-2.9-5.9-10.1-8.2-15.9-5-75 41.5-125.8 121.5-125.8 213.3 0 114.7 79.2 210.8 185.9 236.8v-104c7.6 2.5 15.1 4.6 23 6.2v123.7C131.4 465.2 31 354.1 31 219.5c0-32.8 6-64.3 16.9-93.3 2.2-5.8-.6-12.2-6.3-14.6-6-2.6-13 .4-15.3 6.6C14.5 149.7 8 183.8 8 219.5c0 155.1 122.6 281.6 276.3 287.8V361.4c6.8.4 15 .5 23.4 0v145.8C461.4 501.1 584 374.6 584 219.5c0-35.7-6.5-69.8-18.3-101.4zM365.9 275.5c13 0 23.7 10.5 23.7 23.7 0 13.1-10.6 23.7-23.7 23.7-13 0-23.7-10.5-23.7-23.7 0-13.1 10.6-23.7 23.7-23.7zm-139.8 47.3c-13.2 0-23.7-10.7-23.7-23.7s10.5-23.7 23.7-23.7c13.1 0 23.7 10.6 23.7 23.7 0 13-10.5 23.7-23.7 23.7z\"},\"child\":[]}]})(props);\n};\nexport function FaGitlab (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M105.2 24.9c-3.1-8.9-15.7-8.9-18.9 0L29.8 199.7h132c-.1 0-56.6-174.8-56.6-174.8zM.9 287.7c-2.6 8 .3 16.9 7.1 22l247.9 184-226.2-294zm160.8-88l94.3 294 94.3-294zm349.4 88l-28.8-88-226.3 294 247.9-184c6.9-5.1 9.7-14 7.2-22zM425.7 24.9c-3.1-8.9-15.7-8.9-18.9 0l-56.6 174.8h132z\"},\"child\":[]}]})(props);\n};\nexport function FaGitter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M66.4 322.5H16V0h50.4v322.5zM166.9 76.1h-50.4V512h50.4V76.1zm100.6 0h-50.4V512h50.4V76.1zM368 76h-50.4v247H368V76z\"},\"child\":[]}]})(props);\n};\nexport function FaGlideG (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M407.1 211.2c-3.5-1.4-11.6-3.8-15.4-3.8-37.1 0-62.2 16.8-93.5 34.5l-.9-.9c7-47.3 23.5-91.9 23.5-140.4C320.8 29.1 282.6 0 212.4 0 97.3 0 39 113.7 39 198.4 39 286.3 90.3 335 177.6 335c12 0 11-1 11 3.8-16.9 128.9-90.8 133.1-90.8 94.6 0-39.2 45-58.6 45.5-61-.3-12.2-47-27.6-58.9-27.6-33.9.1-52.4 51.2-52.4 79.3C32 476 64.8 512 117.5 512c77.4 0 134-77.8 151.4-145.4 15.1-60.5 11.2-63.3 19.7-67.6 32.2-16.2 57.5-27 93.8-27 17.8 0 30.5 3.7 58.9 8.4 2.9 0 6.7-2.9 6.7-5.8 0-8-33.4-60.5-40.9-63.4zm-175.3-84.4c-9.3 44.7-18.6 89.6-27.8 134.3-2.3 10.2-13.3 7.8-22 7.8-38.3 0-49-41.8-49-73.1 0-47 18-109.3 61.8-133.4 7-4.1 14.8-6.7 22.6-6.7 18.6 0 20 13.3 20 28.7-.1 14.3-2.7 28.5-5.6 42.4z\"},\"child\":[]}]})(props);\n};\nexport function FaGlide (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M252.8 148.6c0 8.8-1.6 17.7-3.4 26.4-5.8 27.8-11.6 55.8-17.3 83.6-1.4 6.3-8.3 4.9-13.7 4.9-23.8 0-30.5-26-30.5-45.5 0-29.3 11.2-68.1 38.5-83.1 4.3-2.5 9.2-4.2 14.1-4.2 11.4 0 12.3 8.3 12.3 17.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 187c0-5.1-20.8-37.7-25.5-39.5-2.2-.9-7.2-2.3-9.6-2.3-23.1 0-38.7 10.5-58.2 21.5l-.5-.5c4.3-29.4 14.6-57.2 14.6-87.4 0-44.6-23.8-62.7-67.5-62.7-71.7 0-108 70.8-108 123.5 0 54.7 32 85 86.3 85 7.5 0 6.9-.6 6.9 2.3-10.5 80.3-56.5 82.9-56.5 58.9 0-24.4 28-36.5 28.3-38-.2-7.6-29.3-17.2-36.7-17.2-21.1 0-32.7 33-32.7 50.6 0 32.3 20.4 54.7 53.3 54.7 48.2 0 83.4-49.7 94.3-91.7 9.4-37.7 7-39.4 12.3-42.1 20-10.1 35.8-16.8 58.4-16.8 11.1 0 19 2.3 36.7 5.2 1.8.1 4.1-1.7 4.1-3.5z\"},\"child\":[]}]})(props);\n};\nexport function FaGofore (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 400 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M324 319.8h-13.2v34.7c-24.5 23.1-56.3 35.8-89.9 35.8-73.2 0-132.4-60.2-132.4-134.4 0-74.1 59.2-134.4 132.4-134.4 35.3 0 68.6 14 93.6 39.4l62.3-63.3C335 55.3 279.7 32 220.7 32 98 32 0 132.6 0 256c0 122.5 97 224 220.7 224 63.2 0 124.5-26.2 171-82.5-2-27.6-13.4-77.7-67.7-77.7zm-12.1-112.5H205.6v89H324c33.5 0 60.5 15.1 76 41.8v-30.6c0-65.2-40.4-100.2-88.1-100.2z\"},\"child\":[]}]})(props);\n};\nexport function FaGoodreadsG (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M42.6 403.3h2.8c12.7 0 25.5 0 38.2.1 1.6 0 3.1-.4 3.6 2.1 7.1 34.9 30 54.6 62.9 63.9 26.9 7.6 54.1 7.8 81.3 1.8 33.8-7.4 56-28.3 68-60.4 8-21.5 10.7-43.8 11-66.5.1-5.8.3-47-.2-52.8l-.9-.3c-.8 1.5-1.7 2.9-2.5 4.4-22.1 43.1-61.3 67.4-105.4 69.1-103 4-169.4-57-172-176.2-.5-23.7 1.8-46.9 8.3-69.7C58.3 47.7 112.3.6 191.6 0c61.3-.4 101.5 38.7 116.2 70.3.5 1.1 1.3 2.3 2.4 1.9V10.6h44.3c0 280.3.1 332.2.1 332.2-.1 78.5-26.7 143.7-103 162.2-69.5 16.9-159 4.8-196-57.2-8-13.5-11.8-28.3-13-44.5zM188.9 36.5c-52.5-.5-108.5 40.7-115 133.8-4.1 59 14.8 122.2 71.5 148.6 27.6 12.9 74.3 15 108.3-8.7 47.6-33.2 62.7-97 54.8-154-9.7-71.1-47.8-120-119.6-119.7z\"},\"child\":[]}]})(props);\n};\nexport function FaGoodreads (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M299.9 191.2c5.1 37.3-4.7 79-35.9 100.7-22.3 15.5-52.8 14.1-70.8 5.7-37.1-17.3-49.5-58.6-46.8-97.2 4.3-60.9 40.9-87.9 75.3-87.5 46.9-.2 71.8 31.8 78.2 78.3zM448 88v336c0 30.9-25.1 56-56 56H56c-30.9 0-56-25.1-56-56V88c0-30.9 25.1-56 56-56h336c30.9 0 56 25.1 56 56zM330 313.2s-.1-34-.1-217.3h-29v40.3c-.8.3-1.2-.5-1.6-1.2-9.6-20.7-35.9-46.3-76-46-51.9.4-87.2 31.2-100.6 77.8-4.3 14.9-5.8 30.1-5.5 45.6 1.7 77.9 45.1 117.8 112.4 115.2 28.9-1.1 54.5-17 69-45.2.5-1 1.1-1.9 1.7-2.9.2.1.4.1.6.2.3 3.8.2 30.7.1 34.5-.2 14.8-2 29.5-7.2 43.5-7.8 21-22.3 34.7-44.5 39.5-17.8 3.9-35.6 3.8-53.2-1.2-21.5-6.1-36.5-19-41.1-41.8-.3-1.6-1.3-1.3-2.3-1.3h-26.8c.8 10.6 3.2 20.3 8.5 29.2 24.2 40.5 82.7 48.5 128.2 37.4 49.9-12.3 67.3-54.9 67.4-106.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGoogleDrive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M339 314.9L175.4 32h161.2l163.6 282.9H339zm-137.5 23.6L120.9 480h310.5L512 338.5H201.5zM154.1 67.4L0 338.5 80.6 480 237 208.8 154.1 67.4z\"},\"child\":[]}]})(props);\n};\nexport function FaGooglePay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M105.72,215v41.25h57.1a49.66,49.66,0,0,1-21.14,32.6c-9.54,6.55-21.72,10.28-36,10.28-27.6,0-50.93-18.91-59.3-44.22a65.61,65.61,0,0,1,0-41l0,0c8.37-25.46,31.7-44.37,59.3-44.37a56.43,56.43,0,0,1,40.51,16.08L176.47,155a101.24,101.24,0,0,0-70.75-27.84,105.55,105.55,0,0,0-94.38,59.11,107.64,107.64,0,0,0,0,96.18v.15a105.41,105.41,0,0,0,94.38,59c28.47,0,52.55-9.53,70-25.91,20-18.61,31.41-46.15,31.41-78.91A133.76,133.76,0,0,0,205.38,215Zm389.41-4c-10.13-9.38-23.93-14.14-41.39-14.14-22.46,0-39.34,8.34-50.5,24.86l20.85,13.26q11.45-17,31.26-17a34.05,34.05,0,0,1,22.75,8.79A28.14,28.14,0,0,1,487.79,248v5.51c-9.1-5.07-20.55-7.75-34.64-7.75-16.44,0-29.65,3.88-39.49,11.77s-14.82,18.31-14.82,31.56a39.74,39.74,0,0,0,13.94,31.27c9.25,8.34,21,12.51,34.79,12.51,16.29,0,29.21-7.3,39-21.89h1v17.72h22.61V250C510.25,233.45,505.26,220.34,495.13,211ZM475.9,300.3a37.32,37.32,0,0,1-26.57,11.16A28.61,28.61,0,0,1,431,305.21a19.41,19.41,0,0,1-7.77-15.63c0-7,3.22-12.81,9.54-17.42s14.53-7,24.07-7C470,265,480.3,268,487.64,273.94,487.64,284.07,483.68,292.85,475.9,300.3Zm-93.65-142A55.71,55.71,0,0,0,341.74,142H279.07V328.74H302.7V253.1h39c16,0,29.5-5.36,40.51-15.93.88-.89,1.76-1.79,2.65-2.68A54.45,54.45,0,0,0,382.25,158.26Zm-16.58,62.23a30.65,30.65,0,0,1-23.34,9.68H302.7V165h39.63a32,32,0,0,1,22.6,9.23A33.18,33.18,0,0,1,365.67,220.49ZM614.31,201,577.77,292.7h-.45L539.9,201H514.21L566,320.55l-29.35,64.32H561L640,201Z\"},\"child\":[]}]})(props);\n};\nexport function FaGooglePlay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M325.3 234.3L104.6 13l280.8 161.2-60.1 60.1zM47 0C34 6.8 25.3 19.2 25.3 35.3v441.3c0 16.1 8.7 28.5 21.7 35.3l256.6-256L47 0zm425.2 225.6l-58.9-34.1-65.7 64.5 65.7 64.5 60.1-34.1c18-14.3 18-46.5-1.2-60.8zM104.6 499l280.8-161.2-60.1-60.1L104.6 499z\"},\"child\":[]}]})(props);\n};\nexport function FaGooglePlusG (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M386.061 228.496c1.834 9.692 3.143 19.384 3.143 31.956C389.204 370.205 315.599 448 204.8 448c-106.084 0-192-85.915-192-192s85.916-192 192-192c51.864 0 95.083 18.859 128.611 50.292l-52.126 50.03c-14.145-13.621-39.028-29.599-76.485-29.599-65.484 0-118.92 54.221-118.92 121.277 0 67.056 53.436 121.277 118.92 121.277 75.961 0 104.513-54.745 108.965-82.773H204.8v-66.009h181.261zm185.406 6.437V179.2h-56.001v55.733h-55.733v56.001h55.733v55.733h56.001v-55.733H627.2v-56.001h-55.733z\"},\"child\":[]}]})(props);\n};\nexport function FaGooglePlusSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM164 356c-55.3 0-100-44.7-100-100s44.7-100 100-100c27 0 49.5 9.8 67 26.2l-27.1 26.1c-7.4-7.1-20.3-15.4-39.8-15.4-34.1 0-61.9 28.2-61.9 63.2 0 34.9 27.8 63.2 61.9 63.2 39.6 0 54.4-28.5 56.8-43.1H164v-34.4h94.4c1 5 1.6 10.1 1.6 16.6 0 57.1-38.3 97.6-96 97.6zm220-81.8h-29v29h-29.2v-29h-29V245h29v-29H355v29h29v29.2z\"},\"child\":[]}]})(props);\n};\nexport function FaGooglePlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256,8C119.1,8,8,119.1,8,256S119.1,504,256,504,504,392.9,504,256,392.9,8,256,8ZM185.3,380a124,124,0,0,1,0-248c31.3,0,60.1,11,83,32.3l-33.6,32.6c-13.2-12.9-31.3-19.1-49.4-19.1-42.9,0-77.2,35.5-77.2,78.1S142.3,334,185.3,334c32.6,0,64.9-19.1,70.1-53.3H185.3V238.1H302.2a109.2,109.2,0,0,1,1.9,20.7c0,70.8-47.5,121.2-118.8,121.2ZM415.5,273.8v35.5H380V273.8H344.5V238.3H380V202.8h35.5v35.5h35.2v35.5Z\"},\"child\":[]}]})(props);\n};\nexport function FaGoogleWallet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M156.8 126.8c37.6 60.6 64.2 113.1 84.3 162.5-8.3 33.8-18.8 66.5-31.3 98.3-13.2-52.3-26.5-101.3-56-148.5 6.5-36.4 2.3-73.6 3-112.3zM109.3 200H16.1c-6.5 0-10.5 7.5-6.5 12.7C51.8 267 81.3 330.5 101.3 400h103.5c-16.2-69.7-38.7-133.7-82.5-193.5-3-4-8-6.5-13-6.5zm47.8-88c68.5 108 130 234.5 138.2 368H409c-12-138-68.4-265-143.2-368H157.1zm251.8-68.5c-1.8-6.8-8.2-11.5-15.2-11.5h-88.3c-5.3 0-9 5-7.8 10.3 13.2 46.5 22.3 95.5 26.5 146 48.2 86.2 79.7 178.3 90.6 270.8 15.8-60.5 25.3-133.5 25.3-203 0-73.6-12.1-145.1-31.1-212.6z\"},\"child\":[]}]})(props);\n};\nexport function FaGoogle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 488 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"},\"child\":[]}]})(props);\n};\nexport function FaGratipay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm114.6 226.4l-113 152.7-112.7-152.7c-8.7-11.9-19.1-50.4 13.6-72 28.1-18.1 54.6-4.2 68.5 11.9 15.9 17.9 46.6 16.9 61.7 0 13.9-16.1 40.4-30 68.1-11.9 32.9 21.6 22.6 60 13.8 72z\"},\"child\":[]}]})(props);\n};\nexport function FaGrav (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M301.1 212c4.4 4.4 4.4 11.9 0 16.3l-9.7 9.7c-4.4 4.7-11.9 4.7-16.6 0l-10.5-10.5c-4.4-4.7-4.4-11.9 0-16.6l9.7-9.7c4.4-4.4 11.9-4.4 16.6 0l10.5 10.8zm-30.2-19.7c3-3 3-7.8 0-10.5-2.8-3-7.5-3-10.5 0-2.8 2.8-2.8 7.5 0 10.5 3.1 2.8 7.8 2.8 10.5 0zm-26 5.3c-3 2.8-3 7.5 0 10.2 2.8 3 7.5 3 10.5 0 2.8-2.8 2.8-7.5 0-10.2-3-3-7.7-3-10.5 0zm72.5-13.3c-19.9-14.4-33.8-43.2-11.9-68.1 21.6-24.9 40.7-17.2 59.8.8 11.9 11.3 29.3 24.9 17.2 48.2-12.5 23.5-45.1 33.2-65.1 19.1zm47.7-44.5c-8.9-10-23.3 6.9-15.5 16.1 7.4 9 32.1 2.4 15.5-16.1zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-66.2 42.6c2.5-16.1-20.2-16.6-25.2-25.7-13.6-24.1-27.7-36.8-54.5-30.4 11.6-8 23.5-6.1 23.5-6.1.3-6.4 0-13-9.4-24.9 3.9-12.5.3-22.4.3-22.4 15.5-8.6 26.8-24.4 29.1-43.2 3.6-31-18.8-59.2-49.8-62.8-22.1-2.5-43.7 7.7-54.3 25.7-23.2 40.1 1.4 70.9 22.4 81.4-14.4-1.4-34.3-11.9-40.1-34.3-6.6-25.7 2.8-49.8 8.9-61.4 0 0-4.4-5.8-8-8.9 0 0-13.8 0-24.6 5.3 11.9-15.2 25.2-14.4 25.2-14.4 0-6.4-.6-14.9-3.6-21.6-5.4-11-23.8-12.9-31.7 2.8.1-.2.3-.4.4-.5-5 11.9-1.1 55.9 16.9 87.2-2.5 1.4-9.1 6.1-13 10-21.6 9.7-56.2 60.3-56.2 60.3-28.2 10.8-77.2 50.9-70.6 79.7.3 3 1.4 5.5 3 7.5-2.8 2.2-5.5 5-8.3 8.3-11.9 13.8-5.3 35.2 17.7 24.4 15.8-7.2 29.6-20.2 36.3-30.4 0 0-5.5-5-16.3-4.4 27.7-6.6 34.3-9.4 46.2-9.1 8 3.9 8-34.3 8-34.3 0-14.7-2.2-31-11.1-41.5 12.5 12.2 29.1 32.7 28 60.6-.8 18.3-15.2 23-15.2 23-9.1 16.6-43.2 65.9-30.4 106 0 0-9.7-14.9-10.2-22.1-17.4 19.4-46.5 52.3-24.6 64.5 26.6 14.7 108.8-88.6 126.2-142.3 34.6-20.8 55.4-47.3 63.9-65 22 43.5 95.3 94.5 101.1 59z\"},\"child\":[]}]})(props);\n};\nexport function FaGripfire (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M112.5 301.4c0-73.8 105.1-122.5 105.1-203 0-47.1-34-88-39.1-90.4.4 3.3.6 6.7.6 10C179.1 110.1 32 171.9 32 286.6c0 49.8 32.2 79.2 66.5 108.3 65.1 46.7 78.1 71.4 78.1 86.6 0 10.1-4.8 17-4.8 22.3 13.1-16.7 17.4-31.9 17.5-46.4 0-29.6-21.7-56.3-44.2-86.5-16-22.3-32.6-42.6-32.6-69.5zm205.3-39c-12.1-66.8-78-124.4-94.7-130.9l4 7.2c2.4 5.1 3.4 10.9 3.4 17.1 0 44.7-54.2 111.2-56.6 116.7-2.2 5.1-3.2 10.5-3.2 15.8 0 20.1 15.2 42.1 17.9 42.1 2.4 0 56.6-55.4 58.1-87.7 6.4 11.7 9.1 22.6 9.1 33.4 0 41.2-41.8 96.9-41.8 96.9 0 11.6 31.9 53.2 35.5 53.2 1 0 2.2-1.4 3.2-2.4 37.9-39.3 67.3-85 67.3-136.8 0-8-.7-16.2-2.2-24.6z\"},\"child\":[]}]})(props);\n};\nexport function FaGrunt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M61.3 189.3c-1.1 10 5.2 19.1 5.2 19.1.7-7.5 2.2-12.8 4-16.6.4 10.3 3.2 23.5 12.8 34.1 6.9 7.6 35.6 23.3 54.9 6.1 1 2.4 2.1 5.3 3 8.5 2.9 10.3-2.7 25.3-2.7 25.3s15.1-17.1 13.9-32.5c10.8-.5 21.4-8.4 21.1-19.5 0 0-18.9 10.4-35.5-8.8-9.7-11.2-40.9-42-83.1-31.8 4.3 1 8.9 2.4 13.5 4.1h-.1c-4.2 2-6.5 7.1-7 12zm28.3-1.8c19.5 11 37.4 25.7 44.9 37-5.7 3.3-21.7 10.4-38-1.7-10.3-7.6-9.8-26.2-6.9-35.3zm142.1 45.8c-1.2 15.5 13.9 32.5 13.9 32.5s-5.6-15-2.7-25.3c.9-3.2 2-6 3-8.5 19.3 17.3 48 1.5 54.8-6.1 9.6-10.6 12.3-23.8 12.8-34.1 1.8 3.8 3.4 9.1 4 16.6 0 0 6.4-9.1 5.2-19.1-.6-5-2.9-10-7-11.8h-.1c4.6-1.8 9.2-3.2 13.5-4.1-42.3-10.2-73.4 20.6-83.1 31.8-16.7 19.2-35.5 8.8-35.5 8.8-.2 10.9 10.4 18.9 21.2 19.3zm62.7-45.8c3 9.1 3.4 27.7-7 35.4-16.3 12.1-32.2 5-37.9 1.6 7.5-11.4 25.4-26 44.9-37zM160 418.5h-29.4c-5.5 0-8.2 1.6-9.5 2.9-1.9 2-2.2 4.7-.9 8.1 3.5 9.1 11.4 16.5 13.7 18.6 3.1 2.7 7.5 4.3 11.8 4.3 4.4 0 8.3-1.7 11-4.6 7.5-8.2 11.9-17.1 13-19.8.6-1.5 1.3-4.5-.9-6.8-1.8-1.8-4.7-2.7-8.8-2.7zm189.2-101.2c-2.4 17.9-13 33.8-24.6 43.7-3.1-22.7-3.7-55.5-3.7-62.4 0-14.7 9.5-24.5 12.2-26.1 2.5-1.5 5.4-3 8.3-4.6 18-9.6 40.4-21.6 40.4-43.7 0-16.2-9.3-23.2-15.4-27.8-.8-.6-1.5-1.1-2.2-1.7-2.1-1.7-3.7-3-4.3-4.4-4.4-9.8-3.6-34.2-1.7-37.6.6-.6 16.7-20.9 11.8-39.2-2-7.4-6.9-13.3-14.1-17-5.3-2.7-11.9-4.2-19.5-4.5-.1-2-.5-3.9-.9-5.9-.6-2.6-1.1-5.3-.9-8.1.4-4.7.8-9 2.2-11.3 8.4-13.3 28.8-17.6 29-17.6l12.3-2.4-8.1-9.5c-.1-.2-17.3-17.5-46.3-17.5-7.9 0-16 1.3-24.1 3.9-24.2 7.8-42.9 30.5-49.4 39.3-3.1-1-6.3-1.9-9.6-2.7-4.2-15.8 9-38.5 9-38.5s-13.6-3-33.7 15.2c-2.6-6.5-8.1-20.5-1.8-37.2C184.6 10.1 177.2 26 175 40.4c-7.6-5.4-6.7-23.1-7.2-27.6-7.5.9-29.2 21.9-28.2 48.3-2 .5-3.9 1.1-5.9 1.7-6.5-8.8-25.1-31.5-49.4-39.3-7.9-2.2-16-3.5-23.9-3.5-29 0-46.1 17.3-46.3 17.5L6 46.9l12.3 2.4c.2 0 20.6 4.3 29 17.6 1.4 2.2 1.8 6.6 2.2 11.3.2 2.8-.4 5.5-.9 8.1-.4 1.9-.8 3.9-.9 5.9-7.7.3-14.2 1.8-19.5 4.5-7.2 3.7-12.1 9.6-14.1 17-5 18.2 11.2 38.5 11.8 39.2 1.9 3.4 2.7 27.8-1.7 37.6-.6 1.4-2.2 2.7-4.3 4.4-.7.5-1.4 1.1-2.2 1.7-6.1 4.6-15.4 11.7-15.4 27.8 0 22.1 22.4 34.1 40.4 43.7 3 1.6 5.8 3.1 8.3 4.6 2.7 1.6 12.2 11.4 12.2 26.1 0 6.9-.6 39.7-3.7 62.4-11.6-9.9-22.2-25.9-24.6-43.8 0 0-29.2 22.6-20.6 70.8 5.2 29.5 23.2 46.1 47 54.7 8.8 19.1 29.4 45.7 67.3 49.6C143 504.3 163 512 192.2 512h.2c29.1 0 49.1-7.7 63.6-19.5 37.9-3.9 58.5-30.5 67.3-49.6 23.8-8.7 41.7-25.2 47-54.7 8.2-48.4-21.1-70.9-21.1-70.9zM305.7 37.7c5.6-1.8 11.6-2.7 17.7-2.7 11 0 19.9 3 24.7 5-3.1 1.4-6.4 3.2-9.7 5.3-2.4-.4-5.6-.8-9.2-.8-10.5 0-20.5 3.1-28.7 8.9-12.3 8.7-18 16.9-20.7 22.4-2.2-1.3-4.5-2.5-7.1-3.7-1.6-.8-3.1-1.5-4.7-2.2 6.1-9.1 19.9-26.5 37.7-32.2zm21 18.2c-.8 1-1.6 2.1-2.3 3.2-3.3 5.2-3.9 11.6-4.4 17.8-.5 6.4-1.1 12.5-4.4 17-4.2.8-8.1 1.7-11.5 2.7-2.3-3.1-5.6-7-10.5-11.2 1.4-4.8 5.5-16.1 13.5-22.5 5.6-4.3 12.2-6.7 19.6-7zM45.6 45.3c-3.3-2.2-6.6-4-9.7-5.3 4.8-2 13.7-5 24.7-5 6.1 0 12 .9 17.7 2.7 17.8 5.8 31.6 23.2 37.7 32.1-1.6.7-3.2 1.4-4.8 2.2-2.5 1.2-4.9 2.5-7.1 3.7-2.6-5.4-8.3-13.7-20.7-22.4-8.3-5.8-18.2-8.9-28.8-8.9-3.4.1-6.6.5-9 .9zm44.7 40.1c-4.9 4.2-8.3 8-10.5 11.2-3.4-.9-7.3-1.9-11.5-2.7C65 89.5 64.5 83.4 64 77c-.5-6.2-1.1-12.6-4.4-17.8-.7-1.1-1.5-2.2-2.3-3.2 7.4.3 14 2.6 19.5 7 8 6.3 12.1 17.6 13.5 22.4zM58.1 259.9c-2.7-1.6-5.6-3.1-8.4-4.6-14.9-8-30.2-16.3-30.2-30.5 0-11.1 4.3-14.6 8.9-18.2l.5-.4c.7-.6 1.4-1.2 2.2-1.8-.9 7.2-1.9 13.3-2.7 14.9 0 0 12.1-15 15.7-44.3 1.4-11.5-1.1-34.3-5.1-43 .2 4.9 0 9.8-.3 14.4-.4-.8-.8-1.6-1.3-2.2-3.2-4-11.8-17.5-9.4-26.6.9-3.5 3.1-6 6.7-7.8 3.8-1.9 8.8-2.9 15.1-2.9 12.3 0 25.9 3.7 32.9 6 25.1 8 55.4 30.9 64.1 37.7.2.2.4.3.4.3l5.6 3.9-3.5-5.8c-.2-.3-19.1-31.4-53.2-46.5 2-2.9 7.4-8.1 21.6-15.1 21.4-10.5 46.5-15.8 74.3-15.8 27.9 0 52.9 5.3 74.3 15.8 14.2 6.9 19.6 12.2 21.6 15.1-34 15.1-52.9 46.2-53.1 46.5l-3.5 5.8 5.6-3.9s.2-.1.4-.3c8.7-6.8 39-29.8 64.1-37.7 7-2.2 20.6-6 32.9-6 6.3 0 11.3 1 15.1 2.9 3.5 1.8 5.7 4.4 6.7 7.8 2.5 9.1-6.1 22.6-9.4 26.6-.5.6-.9 1.3-1.3 2.2-.3-4.6-.5-9.5-.3-14.4-4 8.8-6.5 31.5-5.1 43 3.6 29.3 15.7 44.3 15.7 44.3-.8-1.6-1.8-7.7-2.7-14.9.7.6 1.5 1.2 2.2 1.8l.5.4c4.6 3.7 8.9 7.1 8.9 18.2 0 14.2-15.4 22.5-30.2 30.5-2.9 1.5-5.7 3.1-8.4 4.6-8.7 5-18 16.7-19.1 34.2-.9 14.6.9 49.9 3.4 75.9-12.4 4.8-26.7 6.4-39.7 6.8-2-4.1-3.9-8.5-5.5-13.1-.7-2-19.6-51.1-26.4-62.2 5.5 39 17.5 73.7 23.5 89.6-3.5-.5-7.3-.7-11.7-.7h-117c-4.4 0-8.3.3-11.7.7 6-15.9 18.1-50.6 23.5-89.6-6.8 11.2-25.7 60.3-26.4 62.2-1.6 4.6-3.5 9-5.5 13.1-13-.4-27.2-2-39.7-6.8 2.5-26 4.3-61.2 3.4-75.9-.9-17.4-10.3-29.2-19-34.2zM34.8 404.6c-12.1-20-8.7-54.1-3.7-59.1 10.9 34.4 47.2 44.3 74.4 45.4-2.7 4.2-5.2 7.6-7 10l-1.4 1.4c-7.2 7.8-8.6 18.5-4.1 31.8-22.7-.1-46.3-9.8-58.2-29.5zm45.7 43.5c6 1.1 12.2 1.9 18.6 2.4 3.5 8 7.4 15.9 12.3 23.1-14.4-5.9-24.4-16-30.9-25.5zM192 498.2c-60.6-.1-78.3-45.8-84.9-64.7-3.7-10.5-3.4-18.2.9-23.1 2.9-3.3 9.5-7.2 24.6-7.2h118.8c15.1 0 21.8 3.9 24.6 7.2 4.2 4.8 4.5 12.6.9 23.1-6.6 18.8-24.3 64.6-84.9 64.7zm80.6-24.6c4.9-7.2 8.8-15.1 12.3-23.1 6.4-.5 12.6-1.3 18.6-2.4-6.5 9.5-16.5 19.6-30.9 25.5zm76.6-69c-12 19.7-35.6 29.3-58.1 29.7 4.5-13.3 3.1-24.1-4.1-31.8-.4-.5-.9-1-1.4-1.5-1.8-2.4-4.3-5.8-7-10 27.2-1.2 63.5-11 74.4-45.4 5 5 8.4 39.1-3.8 59zM191.9 187.7h.2c12.7-.1 27.2-17.8 27.2-17.8-9.9 6-18.8 8.1-27.3 8.3-8.5-.2-17.4-2.3-27.3-8.3 0 0 14.5 17.6 27.2 17.8zm61.7 230.7h-29.4c-4.2 0-7.2.9-8.9 2.7-2.2 2.3-1.5 5.2-.9 6.7 1 2.6 5.5 11.3 13 19.3 2.7 2.9 6.6 4.5 11 4.5s8.7-1.6 11.8-4.2c2.3-2 10.2-9.2 13.7-18.1 1.3-3.3 1-6-.9-7.9-1.3-1.3-4-2.9-9.4-3z\"},\"child\":[]}]})(props);\n};\nexport function FaGuilded (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M443.427,64H4.571c0,103.26,22.192,180.06,43.418,222.358C112.046,414.135,224,448,225.256,448a312.824,312.824,0,0,0,140.55-103.477c25.907-33.923,53.1-87.19,65.916-145.761H171.833c4.14,36.429,22.177,67.946,45.1,86.944h88.589c-17.012,28.213-48.186,54.4-80.456,69.482-31.232-13.259-69.09-46.544-96.548-98.362-26.726-53.833-27.092-105.883-27.092-105.883H437.573A625.91,625.91,0,0,0,443.427,64Z\"},\"child\":[]}]})(props);\n};\nexport function FaGulp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M209.8 391.1l-14.1 24.6-4.6 80.2c0 8.9-28.3 16.1-63.1 16.1s-63.1-7.2-63.1-16.1l-5.8-79.4-14.9-25.4c41.2 17.3 126 16.7 165.6 0zm-196-253.3l13.6 125.5c5.9-20 20.8-47 40-55.2 6.3-2.7 12.7-2.7 18.7.9 5.2 3 9.6 9.3 10.1 11.8 1.2 6.5-2 9.1-4.5 9.1-3 0-5.3-4.6-6.8-7.3-4.1-7.3-10.3-7.6-16.9-2.8-6.9 5-12.9 13.4-17.1 20.7-5.1 8.8-9.4 18.5-12 28.2-1.5 5.6-2.9 14.6-.6 19.9 1 2.2 2.5 3.6 4.9 3.6 5 0 12.3-6.6 15.8-10.1 4.5-4.5 10.3-11.5 12.5-16l5.2-15.5c2.6-6.8 9.9-5.6 9.9 0 0 10.2-3.7 13.6-10 34.7-5.8 19.5-7.6 25.8-7.6 25.8-.7 2.8-3.4 7.5-6.3 7.5-1.2 0-2.1-.4-2.6-1.2-1-1.4-.9-5.3-.8-6.3.2-3.2 6.3-22.2 7.3-25.2-2 2.2-4.1 4.4-6.4 6.6-5.4 5.1-14.1 11.8-21.5 11.8-3.4 0-5.6-.9-7.7-2.4l7.6 79.6c2 5 39.2 17.1 88.2 17.1 49.1 0 86.3-12.2 88.2-17.1l10.9-94.6c-5.7 5.2-12.3 11.6-19.6 14.8-5.4 2.3-17.4 3.8-17.4-5.7 0-5.2 9.1-14.8 14.4-21.5 1.4-1.7 4.7-5.9 4.7-8.1 0-2.9-6-2.2-11.7 2.5-3.2 2.7-6.2 6.3-8.7 9.7-4.3 6-6.6 11.2-8.5 15.5-6.2 14.2-4.1 8.6-9.1 22-5 13.3-4.2 11.8-5.2 14-.9 1.9-2.2 3.5-4 4.5-1.9 1-4.5.9-6.1-.3-.9-.6-1.3-1.9-1.3-3.7 0-.9.1-1.8.3-2.7 1.5-6.1 7.8-18.1 15-34.3 1.6-3.7 1-2.6.8-2.3-6.2 6-10.9 8.9-14.4 10.5-5.8 2.6-13 2.6-14.5-4.1-.1-.4-.1-.8-.2-1.2-11.8 9.2-24.3 11.7-20-8.1-4.6 8.2-12.6 14.9-22.4 14.9-4.1 0-7.1-1.4-8.6-5.1-2.3-5.5 1.3-14.9 4.6-23.8 1.7-4.5 4-9.9 7.1-16.2 1.6-3.4 4.2-5.4 7.6-4.5.6.2 1.1.4 1.6.7 2.6 1.8 1.6 4.5.3 7.2-3.8 7.5-7.1 13-9.3 20.8-.9 3.3-2 9 1.5 9 2.4 0 4.7-.8 6.9-2.4 4.6-3.4 8.3-8.5 11.1-13.5 2-3.6 4.4-8.3 5.6-12.3.5-1.7 1.1-3.3 1.8-4.8 1.1-2.5 2.6-5.1 5.2-5.1 1.3 0 2.4.5 3.2 1.5 1.7 2.2 1.3 4.5.4 6.9-2 5.6-4.7 10.6-6.9 16.7-1.3 3.5-2.7 8-2.7 11.7 0 3.4 3.7 2.6 6.8 1.2 2.4-1.1 4.8-2.8 6.8-4.5 1.2-4.9.9-3.8 26.4-68.2 1.3-3.3 3.7-4.7 6.1-4.7 1.2 0 2.2.4 3.2 1.1 1.7 1.3 1.7 4.1 1 6.2-.7 1.9-.6 1.3-4.5 10.5-5.2 12.1-8.6 20.8-13.2 31.9-1.9 4.6-7.7 18.9-8.7 22.3-.6 2.2-1.3 5.8 1 5.8 5.4 0 19.3-13.1 23.1-17 .2-.3.5-.4.9-.6.6-1.9 1.2-3.7 1.7-5.5 1.4-3.8 2.7-8.2 5.3-11.3.8-1 1.7-1.6 2.7-1.6 2.8 0 4.2 1.2 4.2 4 0 1.1-.7 5.1-1.1 6.2 1.4-1.5 2.9-3 4.5-4.5 15-13.9 25.7-6.8 25.7.2 0 7.4-8.9 17.7-13.8 23.4-1.6 1.9-4.9 5.4-5 6.4 0 1.3.9 1.8 2.2 1.8 2 0 6.4-3.5 8-4.7 5-3.9 11.8-9.9 16.6-14.1l14.8-136.8c-30.5 17.1-197.6 17.2-228.3.2zm229.7-8.5c0 21-231.2 21-231.2 0 0-8.8 51.8-15.9 115.6-15.9 9 0 17.8.1 26.3.4l12.6-48.7L228.1.6c1.4-1.4 5.8-.2 9.9 3.5s6.6 7.9 5.3 9.3l-.1.1L185.9 74l-10 40.7c39.9 2.6 67.6 8.1 67.6 14.6zm-69.4 4.6c0-.8-.9-1.5-2.5-2.1l-.2.8c0 1.3-5 2.4-11.1 2.4s-11.1-1.1-11.1-2.4c0-.1 0-.2.1-.3l.2-.7c-1.8.6-3 1.4-3 2.3 0 2.1 6.2 3.7 13.7 3.7 7.7.1 13.9-1.6 13.9-3.7z\"},\"child\":[]}]})(props);\n};\nexport function FaHackerNewsSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.2 229.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z\"},\"child\":[]}]})(props);\n};\nexport function FaHackerNews (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v448h448V32H0zm21.2 197.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z\"},\"child\":[]}]})(props);\n};\nexport function FaHackerrank (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M477.5 128C463 103.05 285.13 0 256.16 0S49.25 102.79 34.84 128s-14.49 230.8 0 256 192.38 128 221.32 128S463 409.08 477.49 384s14.51-231 .01-256zM316.13 414.22c-4 0-40.91-35.77-38-38.69.87-.87 6.26-1.48 17.55-1.83 0-26.23.59-68.59.94-86.32 0-2-.44-3.43-.44-5.85h-79.93c0 7.1-.46 36.2 1.37 72.88.23 4.54-1.58 6-5.74 5.94-10.13 0-20.27-.11-30.41-.08-4.1 0-5.87-1.53-5.74-6.11.92-33.44 3-84-.15-212.67v-3.17c-9.67-.35-16.38-1-17.26-1.84-2.92-2.92 34.54-38.69 38.49-38.69s41.17 35.78 38.27 38.69c-.87.87-7.9 1.49-16.77 1.84v3.16c-2.42 25.75-2 79.59-2.63 105.39h80.26c0-4.55.39-34.74-1.2-83.64-.1-3.39.95-5.17 4.21-5.2 11.07-.08 22.15-.13 33.23-.06 3.46 0 4.57 1.72 4.5 5.38C333 354.64 336 341.29 336 373.69c8.87.35 16.82 1 17.69 1.84 2.88 2.91-33.62 38.69-37.58 38.69z\"},\"child\":[]}]})(props);\n};\nexport function FaHips (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M251.6 157.6c0-1.9-.9-2.8-2.8-2.8h-40.9c-1.6 0-2.7 1.4-2.7 2.8v201.8c0 1.4 1.1 2.8 2.7 2.8h40.9c1.9 0 2.8-.9 2.8-2.8zM156.5 168c-16.1-11.8-36.3-17.9-60.3-18-18.1-.1-34.6 3.7-49.8 11.4V80.2c0-1.8-.9-2.7-2.8-2.7H2.7c-1.8 0-2.7.9-2.7 2.7v279.2c0 1.9.9 2.8 2.7 2.8h41c1.9 0 2.8-.9 2.8-2.8V223.3c0-.8-2.8-27 45.8-27 48.5 0 45.8 26.1 45.8 27v122.6c0 9 7.3 16.3 16.4 16.3h27.3c1.8 0 2.7-.9 2.7-2.8V223.3c0-23.4-9.3-41.8-28-55.3zm478.4 110.1c-6.8-15.7-18.4-27-34.9-34.1l-57.6-25.3c-8.6-3.6-9.2-11.2-2.6-16.1 7.4-5.5 44.3-13.9 84 6.8 1.7 1 4-.3 4-2.4v-44.7c0-1.3-.6-2.1-1.9-2.6-17.7-6.6-36.1-9.9-55.1-9.9-26.5 0-45.3 5.8-58.5 15.4-.5.4-28.4 20-22.7 53.7 3.4 19.6 15.8 34.2 37.2 43.6l53.6 23.5c11.6 5.1 15.2 13.3 12.2 21.2-3.7 9.1-13.2 13.6-36.5 13.6-24.3 0-44.7-8.9-58.4-19.1-2.1-1.4-4.4.2-4.4 2.3v34.4c0 10.4 4.9 17.3 14.6 20.7 15.6 5.5 31.6 8.2 48.2 8.2 12.7 0 25.8-1.2 36.3-4.3.7-.3 36-8.9 45.6-45.8 3.5-13.5 2.4-26.5-3.1-39.1zM376.2 149.8c-31.7 0-104.2 20.1-104.2 103.5v183.5c0 .8.6 2.7 2.7 2.7h40.9c1.9 0 2.8-.9 2.8-2.7V348c16.5 12.7 35.8 19.1 57.7 19.1 60.5 0 108.7-48.5 108.7-108.7.1-60.3-48.2-108.6-108.6-108.6zm0 170.9c-17.2 0-31.9-6.1-44-18.2-12.2-12.2-18.2-26.8-18.2-44 0-34.5 27.6-62.2 62.2-62.2 34.5 0 62.2 27.6 62.2 62.2.1 34.3-27.3 62.2-62.2 62.2zM228.3 72.5c-15.9 0-28.8 12.9-28.9 28.9 0 15.6 12.7 28.9 28.9 28.9s28.9-13.1 28.9-28.9c0-16.2-13-28.9-28.9-28.9z\"},\"child\":[]}]})(props);\n};\nexport function FaHireAHelper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M443.1 0H71.9C67.9 37.3 37.4 67.8 0 71.7v371.5c37.4 4.9 66 32.4 71.9 68.8h372.2c3-36.4 32.5-65.8 67.9-69.8V71.7c-36.4-5.9-65-35.3-68.9-71.7zm-37 404.9c-36.3 0-18.8-2-55.1-2-35.8 0-21 2-56.1 2-5.9 0-4.9-8.2 0-9.8 22.8-7.6 22.9-10.2 24.6-12.8 10.4-15.6 5.9-83 5.9-113 0-5.3-6.4-12.8-13.8-12.8H200.4c-7.4 0-13.8 7.5-13.8 12.8 0 30-4.5 97.4 5.9 113 1.7 2.5 1.8 5.2 24.6 12.8 4.9 1.6 6 9.8 0 9.8-35.1 0-20.3-2-56.1-2-36.3 0-18.8 2-55.1 2-7.9 0-5.8-10.8 0-10.8 10.2-3.4 13.5-3.5 21.7-13.8 7.7-12.9 7.9-44.4 7.9-127.8V151.3c0-22.2-12.2-28.3-28.6-32.4-8.8-2.2-4-11.8 1-11.8 36.5 0 20.6 2 57.1 2 32.7 0 16.5-2 49.2-2 3.3 0 8.5 8.3 1 10.8-4.9 1.6-27.6 3.7-27.6 39.3 0 45.6-.2 55.8 1 68.8 0 1.3 2.3 12.8 12.8 12.8h109.2c10.5 0 12.8-11.5 12.8-12.8 1.2-13 1-23.2 1-68.8 0-35.6-22.7-37.7-27.6-39.3-7.5-2.5-2.3-10.8 1-10.8 32.7 0 16.5 2 49.2 2 36.5 0 20.6-2 57.1-2 4.9 0 9.9 9.6 1 11.8-16.4 4.1-28.6 10.3-28.6 32.4v101.2c0 83.4.1 114.9 7.9 127.8 8.2 10.2 11.4 10.4 21.7 13.8 5.8 0 7.8 10.8 0 10.8z\"},\"child\":[]}]})(props);\n};\nexport function FaHive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M260.353,254.878,131.538,33.1a2.208,2.208,0,0,0-3.829.009L.3,254.887A2.234,2.234,0,0,0,.3,257.122L129.116,478.9a2.208,2.208,0,0,0,3.83-.009L260.358,257.113A2.239,2.239,0,0,0,260.353,254.878Zm39.078-25.713a2.19,2.19,0,0,0,1.9,1.111h66.509a2.226,2.226,0,0,0,1.9-3.341L259.115,33.111a2.187,2.187,0,0,0-1.9-1.111H190.707a2.226,2.226,0,0,0-1.9,3.341ZM511.7,254.886,384.9,33.112A2.2,2.2,0,0,0,382.99,32h-66.6a2.226,2.226,0,0,0-1.906,3.34L440.652,256,314.481,476.66a2.226,2.226,0,0,0,1.906,3.34h66.6a2.2,2.2,0,0,0,1.906-1.112L511.7,257.114A2.243,2.243,0,0,0,511.7,254.886ZM366.016,284.917H299.508a2.187,2.187,0,0,0-1.9,1.111l-108.8,190.631a2.226,2.226,0,0,0,1.9,3.341h66.509a2.187,2.187,0,0,0,1.9-1.111l108.8-190.631A2.226,2.226,0,0,0,366.016,284.917Z\"},\"child\":[]}]})(props);\n};\nexport function FaHooli (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144.5 352l38.3.8c-13.2-4.6-26-10.2-38.3-16.8zm57.7-5.3v5.3l-19.4.8c36.5 12.5 69.9 14.2 94.7 7.2-19.9.2-45.8-2.6-75.3-13.3zm408.9-115.2c15.9 0 28.9-12.9 28.9-28.9s-12.9-24.5-28.9-24.5c-15.9 0-28.9 8.6-28.9 24.5s12.9 28.9 28.9 28.9zm-29 120.5H640V241.5h-57.9zm-73.7 0h57.9V156.7L508.4 184zm-31-119.4c-18.2-18.2-50.4-17.1-50.4-17.1s-32.3-1.1-50.4 17.1c-18.2 18.2-16.8 33.9-16.8 52.6s-1.4 34.3 16.8 52.5 50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.8-33.8 16.8-52.5-.1-18.8 1.3-34.5-16.8-52.6zm-39.8 71.9c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9zm-106.2-71.9c-18.2-18.2-50.4-17.1-50.4-17.1s-32.2-1.1-50.4 17.1c-1.9 1.9-3.7 3.9-5.3 6-38.2-29.6-72.5-46.5-102.1-61.1v-20.7l-22.5 10.6c-54.4-22.1-89-18.2-97.3.1 0 0-24.9 32.8 61.8 110.8V352h57.9v-28.6c-6.5-4.2-13-8.7-19.4-13.6-14.8-11.2-27.4-21.6-38.4-31.4v-31c13.1 14.7 30.5 31.4 53.4 50.3l4.5 3.6v-29.8c0-6.9 1.7-18.2 10.8-18.2s10.6 6.9 10.6 15V317c18 12.2 37.3 22.1 57.7 29.6v-93.9c0-18.7-13.4-37.4-40.6-37.4-15.8-.1-30.5 8.2-38.5 21.9v-54.3c41.9 20.9 83.9 46.5 99.9 58.3-10.2 14.6-9.3 28.1-9.3 43.7 0 18.7-1.4 34.3 16.8 52.5s50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.7-33.8 16.7-52.5 0-18.5 1.5-34.2-16.7-52.3zM65.2 184v63.3c-48.7-54.5-38.9-76-35.2-79.1 13.5-11.4 37.5-8 64.4 2.1zm226.5 120.5c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9z\"},\"child\":[]}]})(props);\n};\nexport function FaHornbill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M76.38 370.3a37.8 37.8 0 1 1-32.07-32.42c-78.28-111.35 52-190.53 52-190.53-5.86 43-8.24 91.16-8.24 91.16-67.31 41.49.93 64.06 39.81 72.87a140.38 140.38 0 0 0 131.66 91.94c1.92 0 3.77-.21 5.67-.28l.11 18.86c-99.22 1.39-158.7-29.14-188.94-51.6zm108-327.7A37.57 37.57 0 0 0 181 21.45a37.95 37.95 0 1 0-31.17 54.22c-22.55 29.91-53.83 89.57-52.42 190l21.84-.15c0-.9-.14-1.77-.14-2.68A140.42 140.42 0 0 1 207 132.71c8-37.71 30.7-114.3 73.8-44.29 0 0 48.14 2.38 91.18 8.24 0 0-77.84-128-187.59-54.06zm304.19 134.17a37.94 37.94 0 1 0-53.84-28.7C403 126.13 344.89 99 251.28 100.33l.14 22.5c2.7-.15 5.39-.41 8.14-.41a140.37 140.37 0 0 1 130.49 88.76c39.1 9 105.06 31.58 38.46 72.54 0 0-2.34 48.13-8.21 91.16 0 0 133.45-81.16 49-194.61a37.45 37.45 0 0 0 19.31-3.5zM374.06 436.24c21.43-32.46 46.42-89.69 45.14-179.66l-19.52.14c.08 2.06.3 4.07.3 6.15a140.34 140.34 0 0 1-91.39 131.45c-8.85 38.95-31.44 106.66-72.77 39.49 0 0-48.12-2.34-91.19-8.22 0 0 79.92 131.34 191.9 51a37.5 37.5 0 0 0 3.64 14 37.93 37.93 0 1 0 33.89-54.29z\"},\"child\":[]}]})(props);\n};\nexport function FaHotjar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.9 161.5C340.2 29 121.1 0 121.1 0S222.2 110.4 93 197.7C11.3 252.8-21 324.4 14 402.6c26.8 59.9 83.5 84.3 144.6 93.4-29.2-55.1-6.6-122.4-4.1-129.6 57.1 86.4 165 0 110.8-93.9 71 15.4 81.6 138.6 27.1 215.5 80.5-25.3 134.1-88.9 148.8-145.6 15.5-59.3 3.7-127.9-26.3-180.9z\"},\"child\":[]}]})(props);\n};\nexport function FaHouzz (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M275.9 330.7H171.3V480H17V32h109.5v104.5l305.1 85.6V480H275.9z\"},\"child\":[]}]})(props);\n};\nexport function FaHtml5 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z\"},\"child\":[]}]})(props);\n};\nexport function FaHubspot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M267.4 211.6c-25.1 23.7-40.8 57.3-40.8 94.6 0 29.3 9.7 56.3 26 78L203.1 434c-4.4-1.6-9.1-2.5-14-2.5-10.8 0-20.9 4.2-28.5 11.8-7.6 7.6-11.8 17.8-11.8 28.6s4.2 20.9 11.8 28.5c7.6 7.6 17.8 11.6 28.5 11.6 10.8 0 20.9-3.9 28.6-11.6 7.6-7.6 11.8-17.8 11.8-28.5 0-4.2-.6-8.2-1.9-12.1l50-50.2c22 16.9 49.4 26.9 79.3 26.9 71.9 0 130-58.3 130-130.2 0-65.2-47.7-119.2-110.2-128.7V116c17.5-7.4 28.2-23.8 28.2-42.9 0-26.1-20.9-47.9-47-47.9S311.2 47 311.2 73.1c0 19.1 10.7 35.5 28.2 42.9v61.2c-15.2 2.1-29.6 6.7-42.7 13.6-27.6-20.9-117.5-85.7-168.9-124.8 1.2-4.4 2-9 2-13.8C129.8 23.4 106.3 0 77.4 0 48.6 0 25.2 23.4 25.2 52.2c0 28.9 23.4 52.3 52.2 52.3 9.8 0 18.9-2.9 26.8-7.6l163.2 114.7zm89.5 163.6c-38.1 0-69-30.9-69-69s30.9-69 69-69 69 30.9 69 69-30.9 69-69 69z\"},\"child\":[]}]})(props);\n};\nexport function FaIdeal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M125.61,165.48a49.07,49.07,0,1,0,49.06,49.06A49.08,49.08,0,0,0,125.61,165.48ZM86.15,425.84h78.94V285.32H86.15Zm151.46-211.6c0-20-10-22.53-18.74-22.53H204.82V237.5h14.05C228.62,237.5,237.61,234.69,237.61,214.24Zm201.69,46V168.93h22.75V237.5h33.69C486.5,113.08,388.61,86.19,299.67,86.19H204.84V169h14c25.6,0,41.5,17.35,41.5,45.26,0,28.81-15.52,46-41.5,46h-14V425.88h94.83c144.61,0,194.94-67.16,196.72-165.64Zm-109.75,0H273.3V169h54.43v22.73H296v10.58h30V225H296V237.5h33.51Zm74.66,0-5.16-17.67H369.31l-5.18,17.67H340.47L368,168.92h32.35l27.53,91.34ZM299.65,32H32V480H299.65c161.85,0,251-79.73,251-224.52C550.62,172,518,32,299.65,32Zm0,426.92H53.07V53.07H299.65c142.1,0,229.9,64.61,229.9,202.41C529.55,389.57,448.55,458.92,299.65,458.92Zm83.86-264.85L376,219.88H392.4l-7.52-25.81Z\"},\"child\":[]}]})(props);\n};\nexport function FaImdb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.3 229.2H21c.1-.1.2-.3.3-.4zM97 319.8H64V192h33zm113.2 0h-28.7v-86.4l-11.6 86.4h-20.6l-12.2-84.5v84.5h-29V192h42.8c3.3 19.8 6 39.9 8.7 59.9l7.6-59.9h43zm11.4 0V192h24.6c17.6 0 44.7-1.6 49 20.9 1.7 7.6 1.4 16.3 1.4 24.4 0 88.5 11.1 82.6-75 82.5zm160.9-29.2c0 15.7-2.4 30.9-22.2 30.9-9 0-15.2-3-20.9-9.8l-1.9 8.1h-29.8V192h31.7v41.7c6-6.5 12-9.2 20.9-9.2 21.4 0 22.2 12.8 22.2 30.1zM265 229.9c0-9.7 1.6-16-10.3-16v83.7c12.2.3 10.3-8.7 10.3-18.4zm85.5 26.1c0-5.4 1.1-12.7-6.2-12.7-6 0-4.9 8.9-4.9 12.7 0 .6-1.1 39.6 1.1 44.7.8 1.6 2.2 2.4 3.8 2.4 7.8 0 6.2-9 6.2-14.4z\"},\"child\":[]}]})(props);\n};\nexport function FaInnosoft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M422.559,159.71a27.379,27.379,0,0,0-13.866-23.337,26.42,26.42,0,0,0-26.211.133L73.943,314.647V176.261a11.955,11.955,0,0,1,6.047-10.34L218.066,86.208a12.153,12.153,0,0,1,11.922.025l32.656,18.853L112.581,191.723v56L359.642,105.086,241.129,36.679c-10.992-6.129-22.3-6.255-33.8-.27l-164.6,95.026c-10.634,6.12-16.771,16.39-17.29,29.124l0,191.5c.17,10.135,5.08,18.672,13.474,23.428a27.037,27.037,0,0,0,26.736-.045L374.057,197.376V335.657a11.976,11.976,0,0,1-5.92,10.368L230.025,425.77a12.175,12.175,0,0,1-11.937.062l-32.723-18.9,150.051-86.627v-56L88.367,406.932l118.794,68.583a33.88,33.88,0,0,0,34.25-.327l164.527-94.995c10.746-6.631,16.649-17.118,16.624-29.528Z\"},\"child\":[]}]})(props);\n};\nexport function FaInstagramSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224,202.66A53.34,53.34,0,1,0,277.36,256,53.38,53.38,0,0,0,224,202.66Zm124.71-41a54,54,0,0,0-30.41-30.41c-21-8.29-71-6.43-94.3-6.43s-73.25-1.93-94.31,6.43a54,54,0,0,0-30.41,30.41c-8.28,21-6.43,71.05-6.43,94.33S91,329.26,99.32,350.33a54,54,0,0,0,30.41,30.41c21,8.29,71,6.43,94.31,6.43s73.24,1.93,94.3-6.43a54,54,0,0,0,30.41-30.41c8.35-21,6.43-71.05,6.43-94.33S357.1,182.74,348.75,161.67ZM224,338a82,82,0,1,1,82-82A81.9,81.9,0,0,1,224,338Zm85.38-148.3a19.14,19.14,0,1,1,19.13-19.14A19.1,19.1,0,0,1,309.42,189.74ZM400,32H48A48,48,0,0,0,0,80V432a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V80A48,48,0,0,0,400,32ZM382.88,322c-1.29,25.63-7.14,48.34-25.85,67s-41.4,24.63-67,25.85c-26.41,1.49-105.59,1.49-132,0-25.63-1.29-48.26-7.15-67-25.85s-24.63-41.42-25.85-67c-1.49-26.42-1.49-105.61,0-132,1.29-25.63,7.07-48.34,25.85-67s41.47-24.56,67-25.78c26.41-1.49,105.59-1.49,132,0,25.63,1.29,48.33,7.15,67,25.85s24.63,41.42,25.85,67.05C384.37,216.44,384.37,295.56,382.88,322Z\"},\"child\":[]}]})(props);\n};\nexport function FaInstagram (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z\"},\"child\":[]}]})(props);\n};\nexport function FaInstalod (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M153.384,480H387.113L502.554,275.765,204.229,333.211ZM504.726,240.078,387.113,32H155.669L360.23,267.9ZM124.386,48.809,7.274,256,123.236,461.154,225.627,165.561Z\"},\"child\":[]}]})(props);\n};\nexport function FaIntercom (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M392 32H56C25.1 32 0 57.1 0 88v336c0 30.9 25.1 56 56 56h336c30.9 0 56-25.1 56-56V88c0-30.9-25.1-56-56-56zm-108.3 82.1c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zm-74.6-7.5c0-19.8 29.9-19.8 29.9 0v216.5c0 19.8-29.9 19.8-29.9 0V106.6zm-74.7 7.5c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zM59.7 144c0-19.8 29.9-19.8 29.9 0v134.3c0 19.8-29.9 19.8-29.9 0V144zm323.4 227.8c-72.8 63-241.7 65.4-318.1 0-15-12.8 4.4-35.5 19.4-22.7 65.9 55.3 216.1 53.9 279.3 0 14.9-12.9 34.3 9.8 19.4 22.7zm5.2-93.5c0 19.8-29.9 19.8-29.9 0V144c0-19.8 29.9-19.8 29.9 0v134.3z\"},\"child\":[]}]})(props);\n};\nexport function FaInternetExplorer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M483.049 159.706c10.855-24.575 21.424-60.438 21.424-87.871 0-72.722-79.641-98.371-209.673-38.577-107.632-7.181-211.221 73.67-237.098 186.457 30.852-34.862 78.271-82.298 121.977-101.158C125.404 166.85 79.128 228.002 43.992 291.725 23.246 329.651 0 390.94 0 436.747c0 98.575 92.854 86.5 180.251 42.006 31.423 15.43 66.559 15.573 101.695 15.573 97.124 0 184.249-54.294 216.814-146.022H377.927c-52.509 88.593-196.819 52.996-196.819-47.436H509.9c6.407-43.581-1.655-95.715-26.851-141.162zM64.559 346.877c17.711 51.15 53.703 95.871 100.266 123.304-88.741 48.94-173.267 29.096-100.266-123.304zm115.977-108.873c2-55.151 50.276-94.871 103.98-94.871 53.418 0 101.981 39.72 103.981 94.871H180.536zm184.536-187.6c21.425-10.287 48.563-22.003 72.558-22.003 31.422 0 54.274 21.717 54.274 53.722 0 20.003-7.427 49.007-14.569 67.867-26.28-42.292-65.986-81.584-112.263-99.586z\"},\"child\":[]}]})(props);\n};\nexport function FaInvision (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M407.4 32H40.6C18.2 32 0 50.2 0 72.6v366.8C0 461.8 18.2 480 40.6 480h366.8c22.4 0 40.6-18.2 40.6-40.6V72.6c0-22.4-18.2-40.6-40.6-40.6zM176.1 145.6c.4 23.4-22.4 27.3-26.6 27.4-14.9 0-27.1-12-27.1-27 .1-35.2 53.1-35.5 53.7-.4zM332.8 377c-65.6 0-34.1-74-25-106.6 14.1-46.4-45.2-59-59.9.7l-25.8 103.3H177l8.1-32.5c-31.5 51.8-94.6 44.4-94.6-4.3.1-14.3.9-14 23-104.1H81.7l9.7-35.6h76.4c-33.6 133.7-32.6 126.9-32.9 138.2 0 20.9 40.9 13.5 57.4-23.2l19.8-79.4h-32.3l9.7-35.6h68.8l-8.9 40.5c40.5-75.5 127.9-47.8 101.8 38-14.2 51.1-14.6 50.7-14.9 58.8 0 15.5 17.5 22.6 31.8-16.9L386 325c-10.5 36.7-29.4 52-53.2 52z\"},\"child\":[]}]})(props);\n};\nexport function FaIoxhost (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M616 160h-67.3C511.2 70.7 422.9 8 320 8 183 8 72 119 72 256c0 16.4 1.6 32.5 4.7 48H24c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h67.3c37.5 89.3 125.8 152 228.7 152 137 0 248-111 248-248 0-16.4-1.6-32.5-4.7-48H616c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24zm-96 96c0 110.5-89.5 200-200 200-75.7 0-141.6-42-175.5-104H424c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24H125.8c-3.8-15.4-5.8-31.4-5.8-48 0-110.5 89.5-200 200-200 75.7 0 141.6 42 175.5 104H216c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h298.2c3.8 15.4 5.8 31.4 5.8 48zm-304-24h208c13.3 0 24 10.7 24 24 0 13.2-10.7 24-24 24H216c-13.3 0-24-10.7-24-24 0-13.2 10.7-24 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaItchIo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M71.92 34.77C50.2 47.67 7.4 96.84 7 109.73v21.34c0 27.06 25.29 50.84 48.25 50.84 27.57 0 50.54-22.85 50.54-50 0 27.12 22.18 50 49.76 50s49-22.85 49-50c0 27.12 23.59 50 51.16 50h.5c27.57 0 51.16-22.85 51.16-50 0 27.12 21.47 50 49 50s49.76-22.85 49.76-50c0 27.12 23 50 50.54 50 23 0 48.25-23.78 48.25-50.84v-21.34c-.4-12.9-43.2-62.07-64.92-75C372.56 32.4 325.76 32 256 32S91.14 33.1 71.92 34.77zm132.32 134.39c-22 38.4-77.9 38.71-99.85.25-13.17 23.14-43.17 32.07-56 27.66-3.87 40.15-13.67 237.13 17.73 269.15 80 18.67 302.08 18.12 379.76 0 31.65-32.27 21.32-232 17.75-269.15-12.92 4.44-42.88-4.6-56-27.66-22 38.52-77.85 38.1-99.85-.24-7.1 12.49-23.05 28.94-51.76 28.94a57.54 57.54 0 0 1-51.75-28.94zm-41.58 53.77c16.47 0 31.09 0 49.22 19.78a436.91 436.91 0 0 1 88.18 0C318.22 223 332.85 223 349.31 223c52.33 0 65.22 77.53 83.87 144.45 17.26 62.15-5.52 63.67-33.95 63.73-42.15-1.57-65.49-32.18-65.49-62.79-39.25 6.43-101.93 8.79-155.55 0 0 30.61-23.34 61.22-65.49 62.79-28.42-.06-51.2-1.58-33.94-63.73 18.67-67 31.56-144.45 83.88-144.45zM256 270.79s-44.38 40.77-52.35 55.21l29-1.17v25.32c0 1.55 21.34.16 23.33.16 11.65.54 23.31 1 23.31-.16v-25.28l29 1.17c-8-14.48-52.35-55.24-52.35-55.24z\"},\"child\":[]}]})(props);\n};\nexport function FaItunesNote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M381.9 388.2c-6.4 27.4-27.2 42.8-55.1 48-24.5 4.5-44.9 5.6-64.5-10.2-23.9-20.1-24.2-53.4-2.7-74.4 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 6.4-7.2 4.4-4.1 4.4-163.2 0-11.2-5.5-14.3-17-12.3-8.2 1.4-185.7 34.6-185.7 34.6-10.2 2.2-13.4 5.2-13.4 16.7 0 234.7 1.1 223.9-2.5 239.5-4.2 18.2-15.4 31.9-30.2 39.5-16.8 9.3-47.2 13.4-63.4 10.4-43.2-8.1-58.4-58-29.1-86.6 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 10.1-11.5 1.8-256.6 5.2-270.2.8-5.2 3-9.6 7.1-12.9 4.2-3.5 11.8-5.5 13.4-5.5 204-38.2 228.9-43.1 232.4-43.1 11.5-.8 18.1 6 18.1 17.6.2 344.5 1.1 326-1.8 338.5z\"},\"child\":[]}]})(props);\n};\nexport function FaItunes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M223.6 80.3C129 80.3 52.5 157 52.5 251.5S129 422.8 223.6 422.8s171.2-76.7 171.2-171.2c0-94.6-76.7-171.3-171.2-171.3zm79.4 240c-3.2 13.6-13.5 21.2-27.3 23.8-12.1 2.2-22.2 2.8-31.9-5-11.8-10-12-26.4-1.4-36.8 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 3.2-3.6 2.2-2 2.2-80.8 0-5.6-2.7-7.1-8.4-6.1-4 .7-91.9 17.1-91.9 17.1-5 1.1-6.7 2.6-6.7 8.3 0 116.1.5 110.8-1.2 118.5-2.1 9-7.6 15.8-14.9 19.6-8.3 4.6-23.4 6.6-31.4 5.2-21.4-4-28.9-28.7-14.4-42.9 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 5-5.7.9-127 2.6-133.7.4-2.6 1.5-4.8 3.5-6.4 2.1-1.7 5.8-2.7 6.7-2.7 101-19 113.3-21.4 115.1-21.4 5.7-.4 9 3 9 8.7-.1 170.6.4 161.4-1 167.6zM345.2 32H102.8C45.9 32 0 77.9 0 134.8v242.4C0 434.1 45.9 480 102.8 480h242.4c57 0 102.8-45.9 102.8-102.8V134.8C448 77.9 402.1 32 345.2 32zM223.6 444c-106.3 0-192.5-86.2-192.5-192.5S117.3 59 223.6 59s192.5 86.2 192.5 192.5S329.9 444 223.6 444z\"},\"child\":[]}]})(props);\n};\nexport function FaJava (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M277.74 312.9c9.8-6.7 23.4-12.5 23.4-12.5s-38.7 7-77.2 10.2c-47.1 3.9-97.7 4.7-123.1 1.3-60.1-8 33-30.1 33-30.1s-36.1-2.4-80.6 19c-52.5 25.4 130 37 224.5 12.1zm-85.4-32.1c-19-42.7-83.1-80.2 0-145.8C296 53.2 242.84 0 242.84 0c21.5 84.5-75.6 110.1-110.7 162.6-23.9 35.9 11.7 74.4 60.2 118.2zm114.6-176.2c.1 0-175.2 43.8-91.5 140.2 24.7 28.4-6.5 54-6.5 54s62.7-32.4 33.9-72.9c-26.9-37.8-47.5-56.6 64.1-121.3zm-6.1 270.5a12.19 12.19 0 0 1-2 2.6c128.3-33.7 81.1-118.9 19.8-97.3a17.33 17.33 0 0 0-8.2 6.3 70.45 70.45 0 0 1 11-3c31-6.5 75.5 41.5-20.6 91.4zM348 437.4s14.5 11.9-15.9 21.2c-57.9 17.5-240.8 22.8-291.6.7-18.3-7.9 16-19 26.8-21.3 11.2-2.4 17.7-2 17.7-2-20.3-14.3-131.3 28.1-56.4 40.2C232.84 509.4 401 461.3 348 437.4zM124.44 396c-78.7 22 47.9 67.4 148.1 24.5a185.89 185.89 0 0 1-28.2-13.8c-44.7 8.5-65.4 9.1-106 4.5-33.5-3.8-13.9-15.2-13.9-15.2zm179.8 97.2c-78.7 14.8-175.8 13.1-233.3 3.6 0-.1 11.8 9.7 72.4 13.6 92.2 5.9 233.8-3.3 237.1-46.9 0 0-6.4 16.5-76.2 29.7zM260.64 353c-59.2 11.4-93.5 11.1-136.8 6.6-33.5-3.5-11.6-19.7-11.6-19.7-86.8 28.8 48.2 61.4 169.5 25.9a60.37 60.37 0 0 1-21.1-12.8z\"},\"child\":[]}]})(props);\n};\nexport function FaJediOrder (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M398.5 373.6c95.9-122.1 17.2-233.1 17.2-233.1 45.4 85.8-41.4 170.5-41.4 170.5 105-171.5-60.5-271.5-60.5-271.5 96.9 72.7-10.1 190.7-10.1 190.7 85.8 158.4-68.6 230.1-68.6 230.1s-.4-16.9-2.2-85.7c4.3 4.5 34.5 36.2 34.5 36.2l-24.2-47.4 62.6-9.1-62.6-9.1 20.2-55.5-31.4 45.9c-2.2-87.7-7.8-305.1-7.9-306.9v-2.4 1-1 2.4c0 1-5.6 219-7.9 306.9l-31.4-45.9 20.2 55.5-62.6 9.1 62.6 9.1-24.2 47.4 34.5-36.2c-1.8 68.8-2.2 85.7-2.2 85.7s-154.4-71.7-68.6-230.1c0 0-107-118.1-10.1-190.7 0 0-165.5 99.9-60.5 271.5 0 0-86.8-84.8-41.4-170.5 0 0-78.7 111 17.2 233.1 0 0-26.2-16.1-49.4-77.7 0 0 16.9 183.3 222 185.7h4.1c205-2.4 222-185.7 222-185.7-23.6 61.5-49.9 77.7-49.9 77.7z\"},\"child\":[]}]})(props);\n};\nexport function FaJenkins (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M487.1 425c-1.4-11.2-19-23.1-28.2-31.9-5.1-5-29-23.1-30.4-29.9-1.4-6.6 9.7-21.5 13.3-28.9 5.1-10.7 8.8-23.7 11.3-32.6 18.8-66.1 20.7-156.9-6.2-211.2-10.2-20.6-38.6-49-56.4-62.5-42-31.7-119.6-35.3-170.1-16.6-14.1 5.2-27.8 9.8-40.1 17.1-33.1 19.4-68.3 32.5-78.1 71.6-24.2 10.8-31.5 41.8-30.3 77.8.2 7 4.1 15.8 2.7 22.4-.7 3.3-5.2 7.6-6.1 9.8-11.6 27.7-2.3 64 11.1 83.7 8.1 11.9 21.5 22.4 39.2 25.2.7 10.6 3.3 19.7 8.2 30.4 3.1 6.8 14.7 19 10.4 27.7-2.2 4.4-21 13.8-27.3 17.6C89 407.2 73.7 415 54.2 429c-12.6 9-32.3 10.2-29.2 31.1 2.1 14.1 10.1 31.6 14.7 45.8.7 2 1.4 4.1 2.1 6h422c4.9-15.3 9.7-30.9 14.6-47.2 3.4-11.4 10.2-27.8 8.7-39.7zM205.9 33.7c1.8-.5 3.4.7 4.9 2.4-.2 5.2-5.4 5.1-8.9 6.8-5.4 6.7-13.4 9.8-20 17.2-6.8 7.5-14.4 27.7-23.4 30-4.5 1.1-9.7-.8-13.6-.5-10.4.7-17.7 6-28.3 7.5 13.6-29.9 56.1-54 89.3-63.4zm-104.8 93.6c13.5-14.9 32.1-24.1 54.8-25.9 11.7 29.7-8.4 65-.9 97.6 2.3 9.9 10.2 25.4-2.4 25.7.3-28.3-34.8-46.3-61.3-29.6-1.8-21.5-4.9-51.7 9.8-67.8zm36.7 200.2c-1-4.1-2.7-12.9-2.3-15.1 1.6-8.7 17.1-12.5 11-24.7-11.3-.1-13.8 10.2-24.1 11.3-26.7 2.6-45.6-35.4-44.4-58.4 1-19.5 17.6-38.2 40.1-35.8 16 1.8 21.4 19.2 24.5 34.7 9.2.5 22.5-.4 26.9-7.6-.6-17.5-8.8-31.6-8.2-47.7 1-30.3 17.5-57.6 4.8-87.4 13.6-30.9 53.5-55.3 83.1-70 36.6-18.3 94.9-3.7 129.3 15.8 19.7 11.1 34.4 32.7 48.3 50.7-19.5-5.8-36.1 4.2-33.1 20.3 16.3-14.9 44.2-.2 52.5 16.4 7.9 15.8 7.8 39.3 9 62.8 2.9 57-10.4 115.9-39.1 157.1-7.7 11-14.1 23-24.9 30.6-26 18.2-65.4 34.7-99.2 23.4-44.7-15-65-44.8-89.5-78.8.7 18.7 13.8 34.1 26.8 48.4 11.3 12.5 25 26.6 39.7 32.4-12.3-2.9-31.1-3.8-36.2 7.2-28.6-1.9-55.1-4.8-68.7-24.2-10.6-15.4-21.4-41.4-26.3-61.4zm222 124.1c4.1-3 11.1-2.9 17.4-3.6-5.4-2.7-13-3.7-19.3-2.2-.1-4.2-2-6.8-3.2-10.2 10.6-3.8 35.5-28.5 49.6-20.3 6.7 3.9 9.5 26.2 10.1 37 .4 9-.8 18-4.5 22.8-18.8-.6-35.8-2.8-50.7-7 .9-6.1-1-12.1.6-16.5zm-17.2-20c-16.8.8-26-1.2-38.3-10.8.2-.8 1.4-.5 1.5-1.4 18 8 40.8-3.3 59-4.9-7.9 5.1-14.6 11.6-22.2 17.1zm-12.1 33.2c-1.6-9.4-3.5-12-2.8-20.2 25-16.6 29.7 28.6 2.8 20.2zM226 438.6c-11.6-.7-48.1-14-38.5-23.7 9.4 6.5 27.5 4.9 41.3 7.3.8 4.4-2.8 10.2-2.8 16.4zM57.7 497.1c-4.3-12.7-9.2-25.1-14.8-36.9 30.8-23.8 65.3-48.9 102.2-63.5 2.8-1.1 23.2 25.4 26.2 27.6 16.5 11.7 37 21 56.2 30.2 1.2 8.8 3.9 20.2 8.7 35.5.7 2.3 1.4 4.7 2.2 7.2H57.7zm240.6 5.7h-.8c.3-.2.5-.4.8-.5v.5zm7.5-5.7c2.1-1.4 4.3-2.8 6.4-4.3 1.1 1.4 2.2 2.8 3.2 4.3h-9.6zm15.1-24.7c-10.8 7.3-20.6 18.3-33.3 25.2-6 3.3-27 11.7-33.4 10.2-3.6-.8-3.9-5.3-5.4-9.5-3.1-9-10.1-23.4-10.8-37-.8-17.2-2.5-46 16-42.4 14.9 2.9 32.3 9.7 43.9 16.1 7.1 3.9 11.1 8.6 21.9 9.5-.1 1.4-.1 2.8-.2 4.3-5.9 3.9-15.3 3.8-21.8 7.1 9.5.4 17 2.7 23.5 5.9-.1 3.4-.3 7-.4 10.6zm53.4 24.7h-14c-.1-3.2-2.8-5.8-6.1-5.8s-5.9 2.6-6.1 5.8h-17.4c-2.8-4.4-5.7-8.6-8.9-12.5 2.1-2.2 4-4.7 6-6.9 9 3.7 14.8-4.9 21.7-4.2 7.9.8 14.2 11.7 25.4 11l-.6 12.6zm8.7 0c.2-4 .4-7.8.6-11.5 15.6-7.3 29 1.3 35.7 11.5H383zm83.4-37c-2.3 11.2-5.8 24-9.9 37.1-.2-.1-.4-.1-.6-.1H428c.6-1.1 1.2-2.2 1.9-3.3-2.6-6.1-9-8.7-10.9-15.5 12.1-22.7 6.5-93.4-24.2-78.5 4.3-6.3 15.6-11.5 20.8-19.3 13 10.4 20.8 20.3 33.2 31.4 6.8 6 20 13.3 21.4 23.1.8 5.5-2.6 18.9-3.8 25.1zM222.2 130.5c5.4-14.9 27.2-34.7 45-32 7.7 1.2 18 8.2 12.2 17.7-30.2-7-45.2 12.6-54.4 33.1-8.1-2-4.9-13.1-2.8-18.8zm184.1 63.1c8.2-3.6 22.4-.7 29.6-5.3-4.2-11.5-10.3-21.4-9.3-37.7.5 0 1 0 1.4.1 6.8 14.2 12.7 29.2 21.4 41.7-5.7 13.5-43.6 25.4-43.1 1.2zm20.4-43zm-117.2 45.7c-6.8-10.9-19-32.5-14.5-45.3 6.5 11.9 8.6 24.4 17.8 33.3 4.1 4 12.2 9 8.2 20.2-.9 2.7-7.8 8.6-11.7 9.7-14.4 4.3-47.9.9-36.6-17.1 11.9.7 27.9 7.8 36.8-.8zm27.3 70c3.8 6.6 1.4 18.7 12.1 20.6 20.2 3.4 43.6-12.3 58.1-17.8 9-15.2-.8-20.7-8.9-30.5-16.6-20-38.8-44.8-38-74.7 6.7-4.9 7.3 7.4 8.2 9.7 8.7 20.3 30.4 46.2 46.3 63.5 3.9 4.3 10.3 8.4 11 11.2 2.1 8.2-5.4 18-4.5 23.5-21.7 13.9-45.8 29.1-81.4 25.6-7.4-6.7-10.3-21.4-2.9-31.1zm-201.3-9.2c-6.8-3.9-8.4-21-16.4-21.4-11.4-.7-9.3 22.2-9.3 35.5-7.8-7.1-9.2-29.1-3.5-40.3-6.6-3.2-9.5 3.6-13.1 5.9 4.7-34.1 49.8-15.8 42.3 20.3zm299.6 28.8c-10.1 19.2-24.4 40.4-54 41-.6-6.2-1.1-15.6 0-19.4 22.7-2.2 36.6-13.7 54-21.6zm-141.9 12.4c18.9 9.9 53.6 11 79.3 10.2 1.4 5.6 1.3 12.6 1.4 19.4-33 1.8-72-6.4-80.7-29.6zm92.2 46.7c-1.7 4.3-5.3 9.3-9.8 11.1-12.1 4.9-45.6 8.7-62.4-.3-10.7-5.7-17.5-18.5-23.4-26-2.8-3.6-16.9-12.9-.2-12.9 13.1 32.7 58 29 95.8 28.1z\"},\"child\":[]}]})(props);\n};\nexport function FaJira (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M490 241.7C417.1 169 320.6 71.8 248.5 0 83 164.9 6 241.7 6 241.7c-7.9 7.9-7.9 20.7 0 28.7C138.8 402.7 67.8 331.9 248.5 512c379.4-378 15.7-16.7 241.5-241.7 8-7.9 8-20.7 0-28.6zm-241.5 90l-76-75.7 76-75.7 76 75.7-76 75.7z\"},\"child\":[]}]})(props);\n};\nexport function FaJoget (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M378.1 45C337.6 19.9 292.6 8 248.2 8 165 8 83.8 49.9 36.9 125.9c-71.9 116.6-35.6 269.3 81 341.2s269.3 35.6 341.2-80.9c71.9-116.6 35.6-269.4-81-341.2zm51.8 323.2c-40.4 65.5-110.4 101.5-182 101.5-6.8 0-13.6-.4-20.4-1-9-13.6-19.9-33.3-23.7-42.4-5.7-13.7-27.2-45.6 31.2-67.1 51.7-19.1 176.7-16.5 208.8-17.6-4 9-8.6 17.9-13.9 26.6zm-200.8-86.3c-55.5-1.4-81.7-20.8-58.5-48.2s51.1-40.7 68.9-51.2c17.9-10.5 27.3-33.7-23.6-29.7C87.3 161.5 48.6 252.1 37.6 293c-8.8-49.7-.1-102.7 28.5-149.1C128 43.4 259.6 12.2 360.1 74.1c74.8 46.1 111.2 130.9 99.3 212.7-24.9-.5-179.3-3.6-230.3-4.9zm183.8-54.8c-22.7-6-57 11.3-86.7 27.2-29.7 15.8-31.1 8.2-31.1 8.2s40.2-28.1 50.7-34.5 31.9-14 13.4-24.6c-3.2-1.8-6.7-2.7-10.4-2.7-17.8 0-41.5 18.7-67.5 35.6-31.5 20.5-65.3 31.3-65.3 31.3l169.5-1.6 46.5-23.4s3.6-9.5-19.1-15.5z\"},\"child\":[]}]})(props);\n};\nexport function FaJoomla (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.6 92.1C.6 58.8 27.4 32 60.4 32c30 0 54.5 21.9 59.2 50.2 32.6-7.6 67.1.6 96.5 30l-44.3 44.3c-20.5-20.5-42.6-16.3-55.4-3.5-14.3 14.3-14.3 37.9 0 52.2l99.5 99.5-44 44.3c-87.7-87.2-49.7-49.7-99.8-99.7-26.8-26.5-35-64.8-24.8-98.9C20.4 144.6.6 120.7.6 92.1zm129.5 116.4l44.3 44.3c10-10 89.7-89.7 99.7-99.8 14.3-14.3 37.6-14.3 51.9 0 12.8 12.8 17 35-3.5 55.4l44 44.3c31.2-31.2 38.5-67.6 28.9-101.2 29.2-4.1 51.9-29.2 51.9-59.5 0-33.2-26.8-60.1-59.8-60.1-30.3 0-55.4 22.5-59.5 51.6-33.8-9.9-71.7-1.5-98.3 25.1-18.3 19.1-71.1 71.5-99.6 99.9zm266.3 152.2c8.2-32.7-.9-68.5-26.3-93.9-11.8-12.2 5 4.7-99.5-99.7l-44.3 44.3 99.7 99.7c14.3 14.3 14.3 37.6 0 51.9-12.8 12.8-35 17-55.4-3.5l-44 44.3c27.6 30.2 68 38.8 102.7 28 5.5 27.4 29.7 48.1 58.9 48.1 33 0 59.8-26.8 59.8-60.1 0-30.2-22.5-55-51.6-59.1zm-84.3-53.1l-44-44.3c-87 86.4-50.4 50.4-99.7 99.8-14.3 14.3-37.6 14.3-51.9 0-13.1-13.4-16.9-35.3 3.2-55.4l-44-44.3c-30.2 30.2-38 65.2-29.5 98.3-26.7 6-46.2 29.9-46.2 58.2C0 453.2 26.8 480 59.8 480c28.6 0 52.5-19.8 58.6-46.7 32.7 8.2 68.5-.6 94.2-26 32.1-32 12.2-12.4 99.5-99.7z\"},\"child\":[]}]})(props);\n};\nexport function FaJsSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"},\"child\":[]}]})(props);\n};\nexport function FaJs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v448h448V32H0zm243.8 349.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"},\"child\":[]}]})(props);\n};\nexport function FaJsfiddle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M510.634 237.462c-4.727-2.621-5.664-5.748-6.381-10.776-2.352-16.488-3.539-33.619-9.097-49.095-35.895-99.957-153.99-143.386-246.849-91.646-27.37 15.25-48.971 36.369-65.493 63.903-3.184-1.508-5.458-2.71-7.824-3.686-30.102-12.421-59.049-10.121-85.331 9.167-25.531 18.737-36.422 44.548-32.676 76.408.355 3.025-1.967 7.621-4.514 9.545-39.712 29.992-56.031 78.065-41.902 124.615 13.831 45.569 57.514 79.796 105.608 81.433 30.291 1.031 60.637.546 90.959.539 84.041-.021 168.09.531 252.12-.48 52.664-.634 96.108-36.873 108.212-87.293 11.54-48.074-11.144-97.3-56.832-122.634zm21.107 156.88c-18.23 22.432-42.343 35.253-71.28 35.65-56.874.781-113.767.23-170.652.23 0 .7-163.028.159-163.728.154-43.861-.332-76.739-19.766-95.175-59.995-18.902-41.245-4.004-90.848 34.186-116.106 9.182-6.073 12.505-11.566 10.096-23.136-5.49-26.361 4.453-47.956 26.42-62.981 22.987-15.723 47.422-16.146 72.034-3.083 10.269 5.45 14.607 11.564 22.198-2.527 14.222-26.399 34.557-46.727 60.671-61.294 97.46-54.366 228.37 7.568 230.24 132.697.122 8.15 2.412 12.428 9.848 15.894 57.56 26.829 74.456 96.122 35.142 144.497zm-87.789-80.499c-5.848 31.157-34.622 55.096-66.666 55.095-16.953-.001-32.058-6.545-44.079-17.705-27.697-25.713-71.141-74.98-95.937-93.387-20.056-14.888-41.99-12.333-60.272 3.782-49.996 44.071 15.859 121.775 67.063 77.188 4.548-3.96 7.84-9.543 12.744-12.844 8.184-5.509 20.766-.884 13.168 10.622-17.358 26.284-49.33 38.197-78.863 29.301-28.897-8.704-48.84-35.968-48.626-70.179 1.225-22.485 12.364-43.06 35.414-55.965 22.575-12.638 46.369-13.146 66.991 2.474C295.68 280.7 320.467 323.97 352.185 343.47c24.558 15.099 54.254 7.363 68.823-17.506 28.83-49.209-34.592-105.016-78.868-63.46-3.989 3.744-6.917 8.932-11.41 11.72-10.975 6.811-17.333-4.113-12.809-10.353 20.703-28.554 50.464-40.44 83.271-28.214 31.429 11.714 49.108 44.366 42.76 78.186z\"},\"child\":[]}]})(props);\n};\nexport function FaKaggle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304.2 501.5L158.4 320.3 298.2 185c2.6-2.7 1.7-10.5-5.3-10.5h-69.2c-3.5 0-7 1.8-10.5 5.3L80.9 313.5V7.5q0-7.5-7.5-7.5H21.5Q14 0 14 7.5v497q0 7.5 7.5 7.5h51.9q7.5 0 7.5-7.5v-109l30.8-29.3 110.5 140.6c3 3.5 6.5 5.3 10.5 5.3h66.9q5.25 0 6-3z\"},\"child\":[]}]})(props);\n};\nexport function FaKeybase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M286.17 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18zm111.92-147.6c-9.5-14.62-39.37-52.45-87.26-73.71q-9.1-4.06-18.38-7.27a78.43 78.43 0 0 0-47.88-104.13c-12.41-4.1-23.33-6-32.41-5.77-.6-2-1.89-11 9.4-35L198.66 32l-5.48 7.56c-8.69 12.06-16.92 23.55-24.34 34.89a51 51 0 0 0-8.29-1.25c-41.53-2.45-39-2.33-41.06-2.33-50.61 0-50.75 52.12-50.75 45.88l-2.36 36.68c-1.61 27 19.75 50.21 47.63 51.85l8.93.54a214 214 0 0 0-46.29 35.54C14 304.66 14 374 14 429.77v33.64l23.32-29.8a148.6 148.6 0 0 0 14.56 37.56c5.78 10.13 14.87 9.45 19.64 7.33 4.21-1.87 10-6.92 3.75-20.11a178.29 178.29 0 0 1-15.76-53.13l46.82-59.83-24.66 74.11c58.23-42.4 157.38-61.76 236.25-38.59 34.2 10.05 67.45.69 84.74-23.84.72-1 1.2-2.16 1.85-3.22a156.09 156.09 0 0 1 2.8 28.43c0 23.3-3.69 52.93-14.88 81.64-2.52 6.46 1.76 14.5 8.6 15.74 7.42 1.57 15.33-3.1 18.37-11.15C429 443 434 414 434 382.32c0-38.58-13-77.46-35.91-110.92zM142.37 128.58l-15.7-.93-1.39 21.79 13.13.78a93 93 0 0 0 .32 19.57l-22.38-1.34a12.28 12.28 0 0 1-11.76-12.79L107 119c1-12.17 13.87-11.27 13.26-11.32l29.11 1.73a144.35 144.35 0 0 0-7 19.17zm148.42 172.18a10.51 10.51 0 0 1-14.35-1.39l-9.68-11.49-34.42 27a8.09 8.09 0 0 1-11.13-1.08l-15.78-18.64a7.38 7.38 0 0 1 1.34-10.34l34.57-27.18-14.14-16.74-17.09 13.45a7.75 7.75 0 0 1-10.59-1s-3.72-4.42-3.8-4.53a7.38 7.38 0 0 1 1.37-10.34L214 225.19s-18.51-22-18.6-22.14a9.56 9.56 0 0 1 1.74-13.42 10.38 10.38 0 0 1 14.3 1.37l81.09 96.32a9.58 9.58 0 0 1-1.74 13.44zM187.44 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18z\"},\"child\":[]}]})(props);\n};\nexport function FaKeycdn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M63.8 409.3l60.5-59c32.1 42.8 71.1 66 126.6 67.4 30.5.7 60.3-7 86.4-22.4 5.1 5.3 18.5 19.5 20.9 22-32.2 20.7-69.6 31.1-108.1 30.2-43.3-1.1-84.6-16.7-117.7-44.4.3-.6-38.2 37.5-38.6 37.9 9.5 29.8-13.1 62.4-46.3 62.4C20.7 503.3 0 481.7 0 454.9c0-34.3 33.1-56.6 63.8-45.6zm354.9-252.4c19.1 31.3 29.6 67.4 28.7 104-1.1 44.8-19 87.5-48.6 121 .3.3 23.8 25.2 24.1 25.5 9.6-1.3 19.2 2 25.9 9.1 11.3 12 10.9 30.9-1.1 42.4-12 11.3-30.9 10.9-42.4-1.1-6.7-7-9.4-16.8-7.6-26.3-24.9-26.6-44.4-47.2-44.4-47.2 42.7-34.1 63.3-79.6 64.4-124.2.7-28.9-7.2-57.2-21.1-82.2l22.1-21zM104 53.1c6.7 7 9.4 16.8 7.6 26.3l45.9 48.1c-4.7 3.8-13.3 10.4-22.8 21.3-25.4 28.5-39.6 64.8-40.7 102.9-.7 28.9 6.1 57.2 20 82.4l-22 21.5C72.7 324 63.1 287.9 64.2 250.9c1-44.6 18.3-87.6 47.5-121.1l-25.3-26.4c-9.6 1.3-19.2-2-25.9-9.1-11.3-12-10.9-30.9 1.1-42.4C73.5 40.7 92.2 41 104 53.1zM464.9 8c26 0 47.1 22.4 47.1 48.3S490.9 104 464.9 104c-6.3.1-14-1.1-15.9-1.8l-62.9 59.7c-32.7-43.6-76.7-65.9-126.9-67.2-30.5-.7-60.3 6.8-86.2 22.4l-21.1-22C184.1 74.3 221.5 64 260 64.9c43.3 1.1 84.6 16.7 117.7 44.6l41.1-38.6c-1.5-4.7-2.2-9.6-2.2-14.5C416.5 29.7 438.9 8 464.9 8zM256.7 113.4c5.5 0 10.9.4 16.4 1.1 78.1 9.8 133.4 81.1 123.8 159.1-9.8 78.1-81.1 133.4-159.1 123.8-78.1-9.8-133.4-81.1-123.8-159.2 9.3-72.4 70.1-124.6 142.7-124.8zm-59 119.4c.6 22.7 12.2 41.8 32.4 52.2l-11 51.7h73.7l-11-51.7c20.1-10.9 32.1-29 32.4-52.2-.4-32.8-25.8-57.5-58.3-58.3-32.1.8-57.3 24.8-58.2 58.3zM256 160\"},\"child\":[]}]})(props);\n};\nexport function FaKickstarterK (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M147.3 114.4c0-56.2-32.5-82.4-73.4-82.4C26.2 32 0 68.2 0 113.4v283c0 47.3 25.3 83.4 74.9 83.4 39.8 0 72.4-25.6 72.4-83.4v-76.5l112.1 138.3c22.7 27.2 72.1 30.7 103.2 0 27-27.6 27.3-67.4 7.4-92.2l-90.8-114.8 74.9-107.4c17.4-24.7 17.5-63.1-10.4-89.8-30.3-29-82.4-31.6-113.6 12.8L147.3 185v-70.6z\"},\"child\":[]}]})(props);\n};\nexport function FaKickstarter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 480H48c-26.4 0-48-21.6-48-48V80c0-26.4 21.6-48 48-48h352c26.4 0 48 21.6 48 48v352c0 26.4-21.6 48-48 48zM199.6 178.5c0-30.7-17.6-45.1-39.7-45.1-25.8 0-40 19.8-40 44.5v154.8c0 25.8 13.7 45.6 40.5 45.6 21.5 0 39.2-14 39.2-45.6v-41.8l60.6 75.7c12.3 14.9 39 16.8 55.8 0 14.6-15.1 14.8-36.8 4-50.4l-49.1-62.8 40.5-58.7c9.4-13.5 9.5-34.5-5.6-49.1-16.4-15.9-44.6-17.3-61.4 7l-44.8 64.7v-38.8z\"},\"child\":[]}]})(props);\n};\nexport function FaKorvue (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 446 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M386.5 34h-327C26.8 34 0 60.8 0 93.5v327.1C0 453.2 26.8 480 59.5 480h327.1c33 0 59.5-26.8 59.5-59.5v-327C446 60.8 419.2 34 386.5 34zM87.1 120.8h96v116l61.8-116h110.9l-81.2 132H87.1v-132zm161.8 272.1l-65.7-113.6v113.6h-96V262.1h191.5l88.6 130.8H248.9z\"},\"child\":[]}]})(props);\n};\nexport function FaLaravel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504.4,115.83a5.72,5.72,0,0,0-.28-.68,8.52,8.52,0,0,0-.53-1.25,6,6,0,0,0-.54-.71,9.36,9.36,0,0,0-.72-.94c-.23-.22-.52-.4-.77-.6a8.84,8.84,0,0,0-.9-.68L404.4,55.55a8,8,0,0,0-8,0L300.12,111h0a8.07,8.07,0,0,0-.88.69,7.68,7.68,0,0,0-.78.6,8.23,8.23,0,0,0-.72.93c-.17.24-.39.45-.54.71a9.7,9.7,0,0,0-.52,1.25c-.08.23-.21.44-.28.68a8.08,8.08,0,0,0-.28,2.08V223.18l-80.22,46.19V63.44a7.8,7.8,0,0,0-.28-2.09c-.06-.24-.2-.45-.28-.68a8.35,8.35,0,0,0-.52-1.24c-.14-.26-.37-.47-.54-.72a9.36,9.36,0,0,0-.72-.94,9.46,9.46,0,0,0-.78-.6,9.8,9.8,0,0,0-.88-.68h0L115.61,1.07a8,8,0,0,0-8,0L11.34,56.49h0a6.52,6.52,0,0,0-.88.69,7.81,7.81,0,0,0-.79.6,8.15,8.15,0,0,0-.71.93c-.18.25-.4.46-.55.72a7.88,7.88,0,0,0-.51,1.24,6.46,6.46,0,0,0-.29.67,8.18,8.18,0,0,0-.28,2.1v329.7a8,8,0,0,0,4,6.95l192.5,110.84a8.83,8.83,0,0,0,1.33.54c.21.08.41.2.63.26a7.92,7.92,0,0,0,4.1,0c.2-.05.37-.16.55-.22a8.6,8.6,0,0,0,1.4-.58L404.4,400.09a8,8,0,0,0,4-6.95V287.88l92.24-53.11a8,8,0,0,0,4-7V117.92A8.63,8.63,0,0,0,504.4,115.83ZM111.6,17.28h0l80.19,46.15-80.2,46.18L31.41,63.44Zm88.25,60V278.6l-46.53,26.79-33.69,19.4V123.5l46.53-26.79Zm0,412.78L23.37,388.5V77.32L57.06,96.7l46.52,26.8V338.68a6.94,6.94,0,0,0,.12.9,8,8,0,0,0,.16,1.18h0a5.92,5.92,0,0,0,.38.9,6.38,6.38,0,0,0,.42,1v0a8.54,8.54,0,0,0,.6.78,7.62,7.62,0,0,0,.66.84l0,0c.23.22.52.38.77.58a8.93,8.93,0,0,0,.86.66l0,0,0,0,92.19,52.18Zm8-106.17-80.06-45.32,84.09-48.41,92.26-53.11,80.13,46.13-58.8,33.56Zm184.52,4.57L215.88,490.11V397.8L346.6,323.2l45.77-26.15Zm0-119.13L358.68,250l-46.53-26.79V131.79l33.69,19.4L392.37,178Zm8-105.28-80.2-46.17,80.2-46.16,80.18,46.15Zm8,105.28V178L455,151.19l33.68-19.4v91.39h0Z\"},\"child\":[]}]})(props);\n};\nexport function FaLastfmSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-92.2 312.9c-63.4 0-85.4-28.6-97.1-64.1-16.3-51-21.5-84.3-63-84.3-22.4 0-45.1 16.1-45.1 61.2 0 35.2 18 57.2 43.3 57.2 28.6 0 47.6-21.3 47.6-21.3l11.7 31.9s-19.8 19.4-61.2 19.4c-51.3 0-79.9-30.1-79.9-85.8 0-57.9 28.6-92 82.5-92 73.5 0 80.8 41.4 100.8 101.9 8.8 26.8 24.2 46.2 61.2 46.2 24.9 0 38.1-5.5 38.1-19.1 0-19.9-21.8-22-49.9-28.6-30.4-7.3-42.5-23.1-42.5-48 0-40 32.3-52.4 65.2-52.4 37.4 0 60.1 13.6 63 46.6l-36.7 4.4c-1.5-15.8-11-22.4-28.6-22.4-16.1 0-26 7.3-26 19.8 0 11 4.8 17.6 20.9 21.3 32.7 7.1 71.8 12 71.8 57.5.1 36.7-30.7 50.6-76.1 50.6z\"},\"child\":[]}]})(props);\n};\nexport function FaLastfm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M225.8 367.1l-18.8-51s-30.5 34-76.2 34c-40.5 0-69.2-35.2-69.2-91.5 0-72.1 36.4-97.9 72.1-97.9 66.5 0 74.8 53.3 100.9 134.9 18.8 56.9 54 102.6 155.4 102.6 72.7 0 122-22.3 122-80.9 0-72.9-62.7-80.6-115-92.1-25.8-5.9-33.4-16.4-33.4-34 0-19.9 15.8-31.7 41.6-31.7 28.2 0 43.4 10.6 45.7 35.8l58.6-7c-4.7-52.8-41.1-74.5-100.9-74.5-52.8 0-104.4 19.9-104.4 83.9 0 39.9 19.4 65.1 68 76.8 44.9 10.6 79.8 13.8 79.8 45.7 0 21.7-21.1 30.5-61 30.5-59.2 0-83.9-31.1-97.9-73.9-32-96.8-43.6-163-161.3-163C45.7 113.8 0 168.3 0 261c0 89.1 45.7 137.2 127.9 137.2 66.2 0 97.9-31.1 97.9-31.1z\"},\"child\":[]}]})(props);\n};\nexport function FaLeanpub (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M386.539 111.485l15.096 248.955-10.979-.275c-36.232-.824-71.64 8.783-102.657 27.997-31.016-19.214-66.424-27.997-102.657-27.997-45.564 0-82.07 10.705-123.516 27.723L93.117 129.6c28.546-11.803 61.484-18.115 92.226-18.115 41.173 0 73.836 13.175 102.657 42.544 27.723-28.271 59.013-41.721 98.539-42.544zM569.07 448c-25.526 0-47.485-5.215-70.542-15.645-34.31-15.645-69.993-24.978-107.871-24.978-38.977 0-74.934 12.901-102.657 40.623-27.723-27.723-63.68-40.623-102.657-40.623-37.878 0-73.561 9.333-107.871 24.978C55.239 442.236 32.731 448 8.303 448H6.93L49.475 98.859C88.726 76.626 136.486 64 181.775 64 218.83 64 256.984 71.685 288 93.095 319.016 71.685 357.17 64 394.225 64c45.289 0 93.049 12.626 132.3 34.859L569.07 448zm-43.368-44.741l-34.036-280.246c-30.742-13.999-67.248-21.41-101.009-21.41-38.428 0-74.385 12.077-102.657 38.702-28.272-26.625-64.228-38.702-102.657-38.702-33.761 0-70.267 7.411-101.009 21.41L50.298 403.259c47.211-19.487 82.894-33.486 135.045-33.486 37.604 0 70.817 9.606 102.657 29.644 31.84-20.038 65.052-29.644 102.657-29.644 52.151 0 87.834 13.999 135.045 33.486z\"},\"child\":[]}]})(props);\n};\nexport function FaLess (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M612.7 219c0-20.5 3.2-32.6 3.2-54.6 0-34.2-12.6-45.2-40.5-45.2h-20.5v24.2h6.3c14.2 0 17.3 4.7 17.3 22.1 0 16.3-1.6 32.6-1.6 51.5 0 24.2 7.9 33.6 23.6 37.3v1.6c-15.8 3.7-23.6 13.1-23.6 37.3 0 18.9 1.6 34.2 1.6 51.5 0 17.9-3.7 22.6-17.3 22.6v.5h-6.3V393h20.5c27.8 0 40.5-11 40.5-45.2 0-22.6-3.2-34.2-3.2-54.6 0-11 6.8-22.6 27.3-23.6v-27.3c-20.5-.7-27.3-12.3-27.3-23.3zm-105.6 32c-15.8-6.3-30.5-10-30.5-20.5 0-7.9 6.3-12.6 17.9-12.6s22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-21 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51s-22.5-41-43-47.8zm-358.9 59.4c-3.7 0-8.4-3.2-8.4-13.1V119.1H65.2c-28.4 0-41 11-41 45.2 0 22.6 3.2 35.2 3.2 54.6 0 11-6.8 22.6-27.3 23.6v27.3c20.5.5 27.3 12.1 27.3 23.1 0 19.4-3.2 31-3.2 53.6 0 34.2 12.6 45.2 40.5 45.2h20.5v-24.2h-6.3c-13.1 0-17.3-5.3-17.3-22.6s1.6-32.1 1.6-51.5c0-24.2-7.9-33.6-23.6-37.3v-1.6c15.8-3.7 23.6-13.1 23.6-37.3 0-18.9-1.6-34.2-1.6-51.5s3.7-22.1 17.3-22.1H93v150.8c0 32.1 11 53.1 43.1 53.1 10 0 17.9-1.6 23.6-3.7l-5.3-34.2c-3.1.8-4.6.8-6.2.8zM379.9 251c-16.3-6.3-31-10-31-20.5 0-7.9 6.3-12.6 17.9-12.6 11.6 0 22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-20.5 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51 .1-28.9-22.5-41-43-47.8zm-155-68.8c-38.4 0-75.1 32.1-74.1 82.5 0 52 34.2 82.5 79.3 82.5 18.9 0 39.9-6.8 56.2-17.9l-15.8-27.8c-11.6 6.8-22.6 10-34.2 10-21 0-37.3-10-41.5-34.2H290c.5-3.7 1.6-11 1.6-19.4.6-42.6-22.6-75.7-66.7-75.7zm-30 66.2c3.2-21 15.8-31 30.5-31 18.9 0 26.3 13.1 26.3 31h-56.8z\"},\"child\":[]}]})(props);\n};\nexport function FaLine (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272.1 204.2v71.1c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.1 0-2.1-.6-2.6-1.3l-32.6-44v42.2c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.8 0-3.2-1.4-3.2-3.2v-71.1c0-1.8 1.4-3.2 3.2-3.2H219c1 0 2.1.5 2.6 1.4l32.6 44v-42.2c0-1.8 1.4-3.2 3.2-3.2h11.4c1.8-.1 3.3 1.4 3.3 3.1zm-82-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 1.8 1.4 3.2 3.2 3.2h11.4c1.8 0 3.2-1.4 3.2-3.2v-71.1c0-1.7-1.4-3.2-3.2-3.2zm-27.5 59.6h-31.1v-56.4c0-1.8-1.4-3.2-3.2-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 .9.3 1.6.9 2.2.6.5 1.3.9 2.2.9h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.7-1.4-3.2-3.1-3.2zM332.1 201h-45.7c-1.7 0-3.2 1.4-3.2 3.2v71.1c0 1.7 1.4 3.2 3.2 3.2h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2V234c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2v-11.4c-.1-1.7-1.5-3.2-3.2-3.2zM448 113.7V399c-.1 44.8-36.8 81.1-81.7 81H81c-44.8-.1-81.1-36.9-81-81.7V113c.1-44.8 36.9-81.1 81.7-81H367c44.8.1 81.1 36.8 81 81.7zm-61.6 122.6c0-73-73.2-132.4-163.1-132.4-89.9 0-163.1 59.4-163.1 132.4 0 65.4 58 120.2 136.4 130.6 19.1 4.1 16.9 11.1 12.6 36.8-.7 4.1-3.3 16.1 14.1 8.8 17.4-7.3 93.9-55.3 128.2-94.7 23.6-26 34.9-52.3 34.9-81.5z\"},\"child\":[]}]})(props);\n};\nexport function FaLinkedinIn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z\"},\"child\":[]}]})(props);\n};\nexport function FaLinkedin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z\"},\"child\":[]}]})(props);\n};\nexport function FaLinode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M437.4 226.3c-.3-.9-.9-1.4-1.4-2l-70-38.6c-.9-.6-2-.6-3.1 0l-58.9 36c-.9.6-1.4 1.7-1.4 2.6l-.9 31.4-24-16c-.9-.6-2.3-.6-3.1 0L240 260.9l-1.4-35.1c0-.9-.6-2-1.4-2.3l-36-24.3 33.7-17.4c1.1-.6 1.7-1.7 1.7-2.9l-5.7-132.3c0-.9-.9-2-1.7-2.6L138.6.3c-.9-.3-1.7-.3-2.3-.3L12.6 38.6c-1.4.6-2.3 2-2 3.7L38 175.4c.9 3.4 34 27.4 38.6 30.9l-26.9 12.9c-1.4.9-2 2.3-1.7 3.4l20.6 100.3c.6 2.9 23.7 23.1 27.1 26.3l-17.4 10.6c-.9.6-1.7 2-1.4 3.1 1.4 7.1 15.4 77.7 16.9 79.1l65.1 69.1c.6.6 1.4.6 2.3.9.6 0 1.1-.3 1.7-.6l83.7-66.9c.9-.6 1.1-1.4 1.1-2.3l-2-46 28 23.7c1.1.9 2.9.9 4 0l66.9-53.4c.9-.6 1.1-1.4 1.1-2.3l2.3-33.4 20.3 14c1.1.9 2.6.9 3.7 0l54.6-43.7c.6-.3 1.1-1.1 1.1-2 .9-6.5 10.3-70.8 9.7-72.8zm-204.8 4.8l4 92.6-90.6 61.2-14-96.6 100.6-57.2zm-7.7-180l5.4 126-106.6 55.4L104 97.7l120.9-46.6zM44 173.1L18 48l79.7 49.4 19.4 132.9L44 173.1zm30.6 147.8L55.7 230l70 58.3 13.7 93.4-64.8-60.8zm24.3 117.7l-13.7-67.1 61.7 60.9 9.7 67.4-57.7-61.2zm64.5 64.5l-10.6-70.9 85.7-61.4 3.1 70-78.2 62.3zm82-115.1c0-3.4.9-22.9-2-25.1l-24.3-20 22.3-14.9c2.3-1.7 1.1-5.7 1.1-8l29.4 22.6.6 68.3-27.1-22.9zm94.3-25.4l-60.9 48.6-.6-68.6 65.7-46.9-4.2 66.9zm27.7-25.7l-19.1-13.4 2-34c.3-.9-.3-2-1.1-2.6L308 259.7l.6-30 64.6 40.6-5.8 66.6zm54.6-39.8l-48.3 38.3 5.7-65.1 51.1-36.6-8.5 63.4z\"},\"child\":[]}]})(props);\n};\nexport function FaLinux (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M220.8 123.3c1 .5 1.8 1.7 3 1.7 1.1 0 2.8-.4 2.9-1.5.2-1.4-1.9-2.3-3.2-2.9-1.7-.7-3.9-1-5.5-.1-.4.2-.8.7-.6 1.1.3 1.3 2.3 1.1 3.4 1.7zm-21.9 1.7c1.2 0 2-1.2 3-1.7 1.1-.6 3.1-.4 3.5-1.6.2-.4-.2-.9-.6-1.1-1.6-.9-3.8-.6-5.5.1-1.3.6-3.4 1.5-3.2 2.9.1 1 1.8 1.5 2.8 1.4zM420 403.8c-3.6-4-5.3-11.6-7.2-19.7-1.8-8.1-3.9-16.8-10.5-22.4-1.3-1.1-2.6-2.1-4-2.9-1.3-.8-2.7-1.5-4.1-2 9.2-27.3 5.6-54.5-3.7-79.1-11.4-30.1-31.3-56.4-46.5-74.4-17.1-21.5-33.7-41.9-33.4-72C311.1 85.4 315.7.1 234.8 0 132.4-.2 158 103.4 156.9 135.2c-1.7 23.4-6.4 41.8-22.5 64.7-18.9 22.5-45.5 58.8-58.1 96.7-6 17.9-8.8 36.1-6.2 53.3-6.5 5.8-11.4 14.7-16.6 20.2-4.2 4.3-10.3 5.9-17 8.3s-14 6-18.5 14.5c-2.1 3.9-2.8 8.1-2.8 12.4 0 3.9.6 7.9 1.2 11.8 1.2 8.1 2.5 15.7.8 20.8-5.2 14.4-5.9 24.4-2.2 31.7 3.8 7.3 11.4 10.5 20.1 12.3 17.3 3.6 40.8 2.7 59.3 12.5 19.8 10.4 39.9 14.1 55.9 10.4 11.6-2.6 21.1-9.6 25.9-20.2 12.5-.1 26.3-5.4 48.3-6.6 14.9-1.2 33.6 5.3 55.1 4.1.6 2.3 1.4 4.6 2.5 6.7v.1c8.3 16.7 23.8 24.3 40.3 23 16.6-1.3 34.1-11 48.3-27.9 13.6-16.4 36-23.2 50.9-32.2 7.4-4.5 13.4-10.1 13.9-18.3.4-8.2-4.4-17.3-15.5-29.7zM223.7 87.3c9.8-22.2 34.2-21.8 44-.4 6.5 14.2 3.6 30.9-4.3 40.4-1.6-.8-5.9-2.6-12.6-4.9 1.1-1.2 3.1-2.7 3.9-4.6 4.8-11.8-.2-27-9.1-27.3-7.3-.5-13.9 10.8-11.8 23-4.1-2-9.4-3.5-13-4.4-1-6.9-.3-14.6 2.9-21.8zM183 75.8c10.1 0 20.8 14.2 19.1 33.5-3.5 1-7.1 2.5-10.2 4.6 1.2-8.9-3.3-20.1-9.6-19.6-8.4.7-9.8 21.2-1.8 28.1 1 .8 1.9-.2-5.9 5.5-15.6-14.6-10.5-52.1 8.4-52.1zm-13.6 60.7c6.2-4.6 13.6-10 14.1-10.5 4.7-4.4 13.5-14.2 27.9-14.2 7.1 0 15.6 2.3 25.9 8.9 6.3 4.1 11.3 4.4 22.6 9.3 8.4 3.5 13.7 9.7 10.5 18.2-2.6 7.1-11 14.4-22.7 18.1-11.1 3.6-19.8 16-38.2 14.9-3.9-.2-7-1-9.6-2.1-8-3.5-12.2-10.4-20-15-8.6-4.8-13.2-10.4-14.7-15.3-1.4-4.9 0-9 4.2-12.3zm3.3 334c-2.7 35.1-43.9 34.4-75.3 18-29.9-15.8-68.6-6.5-76.5-21.9-2.4-4.7-2.4-12.7 2.6-26.4v-.2c2.4-7.6.6-16-.6-23.9-1.2-7.8-1.8-15 .9-20 3.5-6.7 8.5-9.1 14.8-11.3 10.3-3.7 11.8-3.4 19.6-9.9 5.5-5.7 9.5-12.9 14.3-18 5.1-5.5 10-8.1 17.7-6.9 8.1 1.2 15.1 6.8 21.9 16l19.6 35.6c9.5 19.9 43.1 48.4 41 68.9zm-1.4-25.9c-4.1-6.6-9.6-13.6-14.4-19.6 7.1 0 14.2-2.2 16.7-8.9 2.3-6.2 0-14.9-7.4-24.9-13.5-18.2-38.3-32.5-38.3-32.5-13.5-8.4-21.1-18.7-24.6-29.9s-3-23.3-.3-35.2c5.2-22.9 18.6-45.2 27.2-59.2 2.3-1.7.8 3.2-8.7 20.8-8.5 16.1-24.4 53.3-2.6 82.4.6-20.7 5.5-41.8 13.8-61.5 12-27.4 37.3-74.9 39.3-112.7 1.1.8 4.6 3.2 6.2 4.1 4.6 2.7 8.1 6.7 12.6 10.3 12.4 10 28.5 9.2 42.4 1.2 6.2-3.5 11.2-7.5 15.9-9 9.9-3.1 17.8-8.6 22.3-15 7.7 30.4 25.7 74.3 37.2 95.7 6.1 11.4 18.3 35.5 23.6 64.6 3.3-.1 7 .4 10.9 1.4 13.8-35.7-11.7-74.2-23.3-84.9-4.7-4.6-4.9-6.6-2.6-6.5 12.6 11.2 29.2 33.7 35.2 59 2.8 11.6 3.3 23.7.4 35.7 16.4 6.8 35.9 17.9 30.7 34.8-2.2-.1-3.2 0-4.2 0 3.2-10.1-3.9-17.6-22.8-26.1-19.6-8.6-36-8.6-38.3 12.5-12.1 4.2-18.3 14.7-21.4 27.3-2.8 11.2-3.6 24.7-4.4 39.9-.5 7.7-3.6 18-6.8 29-32.1 22.9-76.7 32.9-114.3 7.2zm257.4-11.5c-.9 16.8-41.2 19.9-63.2 46.5-13.2 15.7-29.4 24.4-43.6 25.5s-26.5-4.8-33.7-19.3c-4.7-11.1-2.4-23.1 1.1-36.3 3.7-14.2 9.2-28.8 9.9-40.6.8-15.2 1.7-28.5 4.2-38.7 2.6-10.3 6.6-17.2 13.7-21.1.3-.2.7-.3 1-.5.8 13.2 7.3 26.6 18.8 29.5 12.6 3.3 30.7-7.5 38.4-16.3 9-.3 15.7-.9 22.6 5.1 9.9 8.5 7.1 30.3 17.1 41.6 10.6 11.6 14 19.5 13.7 24.6zM173.3 148.7c2 1.9 4.7 4.5 8 7.1 6.6 5.2 15.8 10.6 27.3 10.6 11.6 0 22.5-5.9 31.8-10.8 4.9-2.6 10.9-7 14.8-10.4s5.9-6.3 3.1-6.6-2.6 2.6-6 5.1c-4.4 3.2-9.7 7.4-13.9 9.8-7.4 4.2-19.5 10.2-29.9 10.2s-18.7-4.8-24.9-9.7c-3.1-2.5-5.7-5-7.7-6.9-1.5-1.4-1.9-4.6-4.3-4.9-1.4-.1-1.8 3.7 1.7 6.5z\"},\"child\":[]}]})(props);\n};\nexport function FaLyft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 81.1h77.8v208.7c0 33.1 15 52.8 27.2 61-12.7 11.1-51.2 20.9-80.2-2.8C7.8 334 0 310.7 0 289V81.1zm485.9 173.5v-22h23.8v-76.8h-26.1c-10.1-46.3-51.2-80.7-100.3-80.7-56.6 0-102.7 46-102.7 102.7V357c16 2.3 35.4-.3 51.7-14 17.1-14 24.8-37.2 24.8-59v-6.7h38.8v-76.8h-38.8v-23.3c0-34.6 52.2-34.6 52.2 0v77.1c0 56.6 46 102.7 102.7 102.7v-76.5c-14.5 0-26.1-11.7-26.1-25.9zm-294.3-99v113c0 15.4-23.8 15.4-23.8 0v-113H91v132.7c0 23.8 8 54 45 63.9 37 9.8 58.2-10.6 58.2-10.6-2.1 13.4-14.5 23.3-34.9 25.3-15.5 1.6-35.2-3.6-45-7.8v70.3c25.1 7.5 51.5 9.8 77.6 4.7 47.1-9.1 76.8-48.4 76.8-100.8V155.1h-77.1v.5z\"},\"child\":[]}]})(props);\n};\nexport function FaMagento (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M445.7 127.9V384l-63.4 36.5V164.7L223.8 73.1 65.2 164.7l.4 255.9L2.3 384V128.1L224.2 0l221.5 127.9zM255.6 420.5L224 438.9l-31.8-18.2v-256l-63.3 36.6.1 255.9 94.9 54.9 95.1-54.9v-256l-63.4-36.6v255.9z\"},\"child\":[]}]})(props);\n};\nexport function FaMailchimp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M330.61 243.52a36.15 36.15 0 0 1 9.3 0c1.66-3.83 1.95-10.43.45-17.61-2.23-10.67-5.25-17.14-11.48-16.13s-6.47 8.74-4.24 19.42c1.26 6 3.49 11.14 6 14.32zM277.05 252c4.47 2 7.2 3.26 8.28 2.13 1.89-1.94-3.48-9.39-12.12-13.09a31.44 31.44 0 0 0-30.61 3.68c-3 2.18-5.81 5.22-5.41 7.06.85 3.74 10-2.71 22.6-3.48 7-.44 12.8 1.75 17.26 3.71zm-9 5.13c-9.07 1.42-15 6.53-13.47 10.1.9.34 1.17.81 5.21-.81a37 37 0 0 1 18.72-1.95c2.92.34 4.31.52 4.94-.49 1.46-2.22-5.71-8-15.39-6.85zm54.17 17.1c3.38-6.87-10.9-13.93-14.3-7s10.92 13.88 14.32 6.97zm15.66-20.47c-7.66-.13-7.95 15.8-.26 15.93s7.98-15.81.28-15.96zm-218.79 78.9c-1.32.31-6 1.45-8.47-2.35-5.2-8 11.11-20.38 3-35.77-9.1-17.47-27.82-13.54-35.05-5.54-8.71 9.6-8.72 23.54-5 24.08 4.27.57 4.08-6.47 7.38-11.63a12.83 12.83 0 0 1 17.85-3.72c11.59 7.59 1.37 17.76 2.28 28.62 1.39 16.68 18.42 16.37 21.58 9a2.08 2.08 0 0 0-.2-2.33c.03.89.68-1.3-3.35-.39zm299.72-17.07c-3.35-11.73-2.57-9.22-6.78-20.52 2.45-3.67 15.29-24-3.07-43.25-10.4-10.92-33.9-16.54-41.1-18.54-1.5-11.39 4.65-58.7-21.52-83 20.79-21.55 33.76-45.29 33.73-65.65-.06-39.16-48.15-51-107.42-26.47l-12.55 5.33c-.06-.05-22.71-22.27-23.05-22.57C169.5-18-41.77 216.81 25.78 273.85l14.76 12.51a72.49 72.49 0 0 0-4.1 33.5c3.36 33.4 36 60.42 67.53 60.38 57.73 133.06 267.9 133.28 322.29 3 1.74-4.47 9.11-24.61 9.11-42.38s-10.09-25.27-16.53-25.27zm-316 48.16c-22.82-.61-47.46-21.15-49.91-45.51-6.17-61.31 74.26-75.27 84-12.33 4.54 29.64-4.67 58.49-34.12 57.81zM84.3 249.55C69.14 252.5 55.78 261.09 47.6 273c-4.88-4.07-14-12-15.59-15-13.01-24.85 14.24-73 33.3-100.21C112.42 90.56 186.19 39.68 220.36 48.91c5.55 1.57 23.94 22.89 23.94 22.89s-34.15 18.94-65.8 45.35c-42.66 32.85-74.89 80.59-94.2 132.4zM323.18 350.7s-35.74 5.3-69.51-7.07c6.21-20.16 27 6.1 96.4-13.81 15.29-4.38 35.37-13 51-25.35a102.85 102.85 0 0 1 7.12 24.28c3.66-.66 14.25-.52 11.44 18.1-3.29 19.87-11.73 36-25.93 50.84A106.86 106.86 0 0 1 362.55 421a132.45 132.45 0 0 1-20.34 8.58c-53.51 17.48-108.3-1.74-126-43a66.33 66.33 0 0 1-3.55-9.74c-7.53-27.2-1.14-59.83 18.84-80.37 1.23-1.31 2.48-2.85 2.48-4.79a8.45 8.45 0 0 0-1.92-4.54c-7-10.13-31.19-27.4-26.33-60.83 3.5-24 24.49-40.91 44.07-39.91l5 .29c8.48.5 15.89 1.59 22.88 1.88 11.69.5 22.2-1.19 34.64-11.56 4.2-3.5 7.57-6.54 13.26-7.51a17.45 17.45 0 0 1 13.6 2.24c10 6.64 11.4 22.73 11.92 34.49.29 6.72 1.1 23 1.38 27.63.63 10.67 3.43 12.17 9.11 14 3.19 1.05 6.15 1.83 10.51 3.06 13.21 3.71 21 7.48 26 12.31a16.38 16.38 0 0 1 4.74 9.29c1.56 11.37-8.82 25.4-36.31 38.16-46.71 21.68-93.68 14.45-100.48 13.68-20.15-2.71-31.63 23.32-19.55 41.15 22.64 33.41 122.4 20 151.37-21.35.69-1 .12-1.59-.73-1-41.77 28.58-97.06 38.21-128.46 26-4.77-1.85-14.73-6.44-15.94-16.67 43.6 13.49 71 .74 71 .74s2.03-2.79-.56-2.53zm-68.47-5.7zm-83.4-187.5c16.74-19.35 37.36-36.18 55.83-45.63a.73.73 0 0 1 1 1c-1.46 2.66-4.29 8.34-5.19 12.65a.75.75 0 0 0 1.16.79c11.49-7.83 31.48-16.22 49-17.3a.77.77 0 0 1 .52 1.38 41.86 41.86 0 0 0-7.71 7.74.75.75 0 0 0 .59 1.19c12.31.09 29.66 4.4 41 10.74.76.43.22 1.91-.64 1.72-69.55-15.94-123.08 18.53-134.5 26.83a.76.76 0 0 1-1-1.12z\"},\"child\":[]}]})(props);\n};\nexport function FaMandalorian (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M232.27 511.89c-1-3.26-1.69-15.83-1.39-24.58.55-15.89 1-24.72 1.4-28.76.64-6.2 2.87-20.72 3.28-21.38.6-1 .4-27.87-.24-33.13-.31-2.58-.63-11.9-.69-20.73-.13-16.47-.53-20.12-2.73-24.76-1.1-2.32-1.23-3.84-1-11.43a92.38 92.38 0 0 0-.34-12.71c-2-13-3.46-27.7-3.25-33.9s.43-7.15 2.06-9.67c3.05-4.71 6.51-14 8.62-23.27 2.26-9.86 3.88-17.18 4.59-20.74a109.54 109.54 0 0 1 4.42-15.05c2.27-6.25 2.49-15.39.37-15.39-.3 0-1.38 1.22-2.41 2.71s-4.76 4.8-8.29 7.36c-8.37 6.08-11.7 9.39-12.66 12.58s-1 7.23-.16 7.76c.34.21 1.29 2.4 2.11 4.88a28.83 28.83 0 0 1 .72 15.36c-.39 1.77-1 5.47-1.46 8.23s-1 6.46-1.25 8.22a9.85 9.85 0 0 1-1.55 4.26c-1 1-1.14.91-2.05-.53a14.87 14.87 0 0 1-1.44-4.75c-.25-1.74-1.63-7.11-3.08-11.93-3.28-10.9-3.52-16.15-1-21a14.24 14.24 0 0 0 1.67-4.61c0-2.39-2.2-5.32-7.41-9.89-7-6.18-8.63-7.92-10.23-11.3-1.71-3.6-3.06-4.06-4.54-1.54-1.78 3-2.6 9.11-3 22l-.34 12.19 2 2.25c3.21 3.7 12.07 16.45 13.78 19.83 3.41 6.74 4.34 11.69 4.41 23.56s.95 22.75 2 24.71c.36.66.51 1.35.34 1.52s.41 2.09 1.29 4.27a38.14 38.14 0 0 1 2.06 9 91 91 0 0 0 1.71 10.37c2.23 9.56 2.77 14.08 2.39 20.14-.2 3.27-.53 11.07-.73 17.32-1.31 41.76-1.85 58-2 61.21-.12 2-.39 11.51-.6 21.07-.36 16.3-1.3 27.37-2.42 28.65-.64.73-8.07-4.91-12.52-9.49-3.75-3.87-4-4.79-2.83-9.95.7-3 2.26-18.29 3.33-32.62.36-4.78.81-10.5 1-12.71.83-9.37 1.66-20.35 2.61-34.78.56-8.46 1.33-16.44 1.72-17.73s.89-9.89 1.13-19.11l.43-16.77-2.26-4.3c-1.72-3.28-4.87-6.94-13.22-15.34-6-6.07-11.84-12.3-12.91-13.85l-1.95-2.81.75-10.9c1.09-15.71 1.1-48.57 0-59.06l-.89-8.7-3.28-4.52c-5.86-8.08-5.8-7.75-6.22-33.27-.1-6.07-.38-11.5-.63-12.06-.83-1.87-3.05-2.66-8.54-3.05-8.86-.62-11-1.9-23.85-14.55-6.15-6-12.34-12-13.75-13.19-2.81-2.42-2.79-2-.56-9.63l1.35-4.65-1.69-3a32.22 32.22 0 0 0-2.59-4.07c-1.33-1.51-5.5-10.89-6-13.49a4.24 4.24 0 0 1 .87-3.9c2.23-2.86 3.4-5.68 4.45-10.73 2.33-11.19 7.74-26.09 10.6-29.22 3.18-3.47 7.7-1 9.41 5 1.34 4.79 1.37 9.79.1 18.55a101.2 101.2 0 0 0-1 11.11c0 4 .19 4.69 2.25 7.39 3.33 4.37 7.73 7.41 15.2 10.52a18.67 18.67 0 0 1 4.72 2.85c11.17 10.72 18.62 16.18 22.95 16.85 5.18.8 8 4.54 10 13.39 1.31 5.65 4 11.14 5.46 11.14a9.38 9.38 0 0 0 3.33-1.39c2-1.22 2.25-1.73 2.25-4.18a132.88 132.88 0 0 0-2-17.84c-.37-1.66-.78-4.06-.93-5.35s-.61-3.85-1-5.69c-2.55-11.16-3.65-15.46-4.1-16-1.55-2-4.08-10.2-4.93-15.92-1.64-11.11-4-14.23-12.91-17.39A43.15 43.15 0 0 1 165.24 78c-1.15-1-4-3.22-6.35-5.06s-4.41-3.53-4.6-3.76a22.7 22.7 0 0 0-2.69-2c-6.24-4.22-8.84-7-11.26-12l-2.44-5-.22-13-.22-13 6.91-6.55c3.95-3.75 8.48-7.35 10.59-8.43 3.31-1.69 4.45-1.89 11.37-2 8.53-.19 10.12 0 11.66 1.56s1.36 6.4-.29 8.5a6.66 6.66 0 0 0-1.34 2.32c0 .58-2.61 4.91-5.42 9a30.39 30.39 0 0 0-2.37 6.82c20.44 13.39 21.55 3.77 14.07 29L194 66.92c3.11-8.66 6.47-17.26 8.61-26.22.29-7.63-12-4.19-15.4-8.68-2.33-5.93 3.13-14.18 6.06-19.2 1.6-2.34 6.62-4.7 8.82-4.15.88.22 4.16-.35 7.37-1.28a45.3 45.3 0 0 1 7.55-1.68 29.57 29.57 0 0 0 6-1.29c3.65-1.11 4.5-1.17 6.35-.4a29.54 29.54 0 0 0 5.82 1.36 18.18 18.18 0 0 1 6 1.91 22.67 22.67 0 0 0 5 2.17c2.51.68 3 .57 7.05-1.67l4.35-2.4L268.32 5c10.44-.4 10.81-.47 15.26-2.68L288.16 0l2.46 1.43c1.76 1 3.14 2.73 4.85 6 2.36 4.51 2.38 4.58 1.37 7.37-.88 2.44-.89 3.3-.1 6.39a35.76 35.76 0 0 0 2.1 5.91 13.55 13.55 0 0 1 1.31 4c.31 4.33 0 5.3-2.41 6.92-2.17 1.47-7 7.91-7 9.34a14.77 14.77 0 0 1-1.07 3c-5 11.51-6.76 13.56-14.26 17-9.2 4.2-12.3 5.19-16.21 5.19-3.1 0-4 .25-4.54 1.26a18.33 18.33 0 0 1-4.09 3.71 13.62 13.62 0 0 0-4.38 4.78 5.89 5.89 0 0 1-2.49 2.91 6.88 6.88 0 0 0-2.45 1.71 67.62 67.62 0 0 1-7 5.38c-3.33 2.34-6.87 5-7.87 6A7.27 7.27 0 0 1 224 100a5.76 5.76 0 0 0-2.13 1.65c-1.31 1.39-1.49 2.11-1.14 4.6a36.45 36.45 0 0 0 1.42 5.88c1.32 3.8 1.31 7.86 0 10.57s-.89 6.65 1.35 9.59c2 2.63 2.16 4.56.71 8.84a33.45 33.45 0 0 0-1.06 8.91c0 4.88.22 6.28 1.46 8.38s1.82 2.48 3.24 2.32c2-.23 2.3-1.05 4.71-12.12 2.18-10 3.71-11.92 13.76-17.08 2.94-1.51 7.46-4 10-5.44s6.79-3.69 9.37-4.91a40.09 40.09 0 0 0 15.22-11.67c7.11-8.79 10-16.22 12.85-33.3a18.37 18.37 0 0 1 2.86-7.73 20.39 20.39 0 0 0 2.89-7.31c1-5.3 2.85-9.08 5.58-11.51 4.7-4.18 6-1.09 4.59 10.87-.46 3.86-1.1 10.33-1.44 14.38l-.61 7.36 4.45 4.09 4.45 4.09.11 8.42c.06 4.63.47 9.53.92 10.89l.82 2.47-6.43 6.28c-8.54 8.33-12.88 13.93-16.76 21.61-1.77 3.49-3.74 7.11-4.38 8-2.18 3.11-6.46 13-8.76 20.26l-2.29 7.22-7 6.49c-3.83 3.57-8 7.25-9.17 8.17-3.05 2.32-4.26 5.15-4.26 10a14.62 14.62 0 0 0 1.59 7.26 42 42 0 0 1 2.09 4.83 9.28 9.28 0 0 0 1.57 2.89c1.4 1.59 1.92 16.12.83 23.22-.68 4.48-3.63 12-4.7 12-1.79 0-4.06 9.27-5.07 20.74-.18 2-.62 5.94-1 8.7s-1 10-1.35 16.05c-.77 12.22-.19 18.77 2 23.15 3.41 6.69.52 12.69-11 22.84l-4 3.49.07 5.19a40.81 40.81 0 0 0 1.14 8.87c4.61 16 4.73 16.92 4.38 37.13-.46 26.4-.26 40.27.63 44.15a61.31 61.31 0 0 1 1.08 7c.17 2 .66 5.33 1.08 7.36.47 2.26.78 11 .79 22.74v19.06l-1.81 2.63c-2.71 3.91-15.11 13.54-15.49 12.29zm29.53-45.11c-.18-.3-.33-6.87-.33-14.59 0-14.06-.89-27.54-2.26-34.45-.4-2-.81-9.7-.9-17.06-.15-11.93-1.4-24.37-2.64-26.38-.66-1.07-3-17.66-3-21.3 0-4.23 1-6 5.28-9.13s4.86-3.14 5.48-.72c.28 1.1 1.45 5.62 2.6 10 3.93 15.12 4.14 16.27 4.05 21.74-.1 5.78-.13 6.13-1.74 17.73-1 7.07-1.17 12.39-1 28.43.17 19.4-.64 35.73-2 41.27-.71 2.78-2.8 5.48-3.43 4.43zm-71-37.58a101 101 0 0 1-1.73-10.79 100.5 100.5 0 0 0-1.73-10.79 37.53 37.53 0 0 1-1-6.49c-.31-3.19-.91-7.46-1.33-9.48-1-4.79-3.35-19.35-3.42-21.07 0-.74-.34-4.05-.7-7.36-.67-6.21-.84-27.67-.22-28.29 1-1 6.63 2.76 11.33 7.43l5.28 5.25-.45 6.47c-.25 3.56-.6 10.23-.78 14.83s-.49 9.87-.67 11.71-.61 9.36-.94 16.72c-.79 17.41-1.94 31.29-2.65 32a.62.62 0 0 1-1-.14zm-87.18-266.59c21.07 12.79 17.84 14.15 28.49 17.66 13 4.29 18.87 7.13 23.15 16.87C111.6 233.28 86.25 255 78.55 268c-31 52-6 101.59 62.75 87.21-14.18 29.23-78 28.63-98.68-4.9-24.68-39.95-22.09-118.3 61-187.66zm210.79 179c56.66 6.88 82.32-37.74 46.54-89.23 0 0-26.87-29.34-64.28-68 3-15.45 9.49-32.12 30.57-53.82 89.2 63.51 92 141.61 92.46 149.36 4.3 70.64-78.7 91.18-105.29 61.71z\"},\"child\":[]}]})(props);\n};\nexport function FaMarkdown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M593.8 59.1H46.2C20.7 59.1 0 79.8 0 105.2v301.5c0 25.5 20.7 46.2 46.2 46.2h547.7c25.5 0 46.2-20.7 46.1-46.1V105.2c0-25.4-20.7-46.1-46.2-46.1zM338.5 360.6H277v-120l-61.5 76.9-61.5-76.9v120H92.3V151.4h61.5l61.5 76.9 61.5-76.9h61.5v209.2zm135.3 3.1L381.5 256H443V151.4h61.5V256H566z\"},\"child\":[]}]})(props);\n};\nexport function FaMastodon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M433 179.11c0-97.2-63.71-125.7-63.71-125.7-62.52-28.7-228.56-28.4-290.48 0 0 0-63.72 28.5-63.72 125.7 0 115.7-6.6 259.4 105.63 289.1 40.51 10.7 75.32 13 103.33 11.4 50.81-2.8 79.32-18.1 79.32-18.1l-1.7-36.9s-36.31 11.4-77.12 10.1c-40.41-1.4-83-4.4-89.63-54a102.54 102.54 0 0 1-.9-13.9c85.63 20.9 158.65 9.1 178.75 6.7 56.12-6.7 105-41.3 111.23-72.9 9.8-49.8 9-121.5 9-121.5zm-75.12 125.2h-46.63v-114.2c0-49.7-64-51.6-64 6.9v62.5h-46.33V197c0-58.5-64-56.6-64-6.9v114.2H90.19c0-122.1-5.2-147.9 18.41-175 25.9-28.9 79.82-30.8 103.83 6.1l11.6 19.5 11.6-19.5c24.11-37.1 78.12-34.8 103.83-6.1 23.71 27.3 18.4 53 18.4 175z\"},\"child\":[]}]})(props);\n};\nexport function FaMaxcdn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M461.1 442.7h-97.4L415.6 200c2.3-10.2.9-19.5-4.4-25.7-5-6.1-13.7-9.6-24.2-9.6h-49.3l-59.5 278h-97.4l59.5-278h-83.4l-59.5 278H0l59.5-278-44.6-95.4H387c39.4 0 75.3 16.3 98.3 44.9 23.3 28.6 31.8 67.4 23.6 105.9l-47.8 222.6z\"},\"child\":[]}]})(props);\n};\nexport function FaMdb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M17.37 160.41L7 352h43.91l5.59-79.83L84.43 352h44.71l25.54-77.43 4.79 77.43H205l-12.79-191.59H146.7L106 277.74 63.67 160.41zm281 0h-47.9V352h47.9s95 .8 94.2-95.79c-.78-94.21-94.18-95.78-94.18-95.78zm-1.2 146.46V204.78s46 4.27 46.8 50.57-46.78 51.54-46.78 51.54zm238.29-74.24a56.16 56.16 0 0 0 8-38.31c-5.34-35.76-55.08-34.32-55.08-34.32h-51.9v191.58H482s87 4.79 87-63.85c0-43.14-33.52-55.08-33.52-55.08zm-51.9-31.94s13.57-1.59 16 9.59c1.43 6.66-4 12-4 12h-12v-21.57zm-.1 109.46l.1-24.92V267h.08s41.58-4.73 41.19 22.43c-.33 25.65-41.35 20.74-41.35 20.74z\"},\"child\":[]}]})(props);\n};\nexport function FaMedapps (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M118.3 238.4c3.5-12.5 6.9-33.6 13.2-33.6 8.3 1.8 9.6 23.4 18.6 36.6 4.6-23.5 5.3-85.1 14.1-86.7 9-.7 19.7 66.5 22 77.5 9.9 4.1 48.9 6.6 48.9 6.6 1.9 7.3-24 7.6-40 7.8-4.6 14.8-5.4 27.7-11.4 28-4.7.2-8.2-28.8-17.5-49.6l-9.4 65.5c-4.4 13-15.5-22.5-21.9-39.3-3.3-.1-62.4-1.6-47.6-7.8l31-5zM228 448c21.2 0 21.2-32 0-32H92c-21.2 0-21.2 32 0 32h136zm-24 64c21.2 0 21.2-32 0-32h-88c-21.2 0-21.2 32 0 32h88zm34.2-141.5c3.2-18.9 5.2-36.4 11.9-48.8 7.9-14.7 16.1-28.1 24-41 24.6-40.4 45.9-75.2 45.9-125.5C320 69.6 248.2 0 160 0S0 69.6 0 155.2c0 50.2 21.3 85.1 45.9 125.5 7.9 12.9 16 26.3 24 41 6.7 12.5 8.7 29.8 11.9 48.9 3.5 21 36.1 15.7 32.6-5.1-3.6-21.7-5.6-40.7-15.3-58.6C66.5 246.5 33 211.3 33 155.2 33 87.3 90 32 160 32s127 55.3 127 123.2c0 56.1-33.5 91.3-66.1 151.6-9.7 18-11.7 37.4-15.3 58.6-3.4 20.6 29 26.4 32.6 5.1z\"},\"child\":[]}]})(props);\n};\nexport function FaMediumM (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M71.5 142.3c.6-5.9-1.7-11.8-6.1-15.8L20.3 72.1V64h140.2l108.4 237.7L364.2 64h133.7v8.1l-38.6 37c-3.3 2.5-5 6.7-4.3 10.8v272c-.7 4.1 1 8.3 4.3 10.8l37.7 37v8.1H307.3v-8.1l39.1-37.9c3.8-3.8 3.8-5 3.8-10.8V171.2L241.5 447.1h-14.7L100.4 171.2v184.9c-1.1 7.8 1.5 15.6 7 21.2l50.8 61.6v8.1h-144v-8L65 377.3c5.4-5.6 7.9-13.5 6.5-21.2V142.3z\"},\"child\":[]}]})(props);\n};\nexport function FaMedium (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v448h448V32H0zm372.2 106.1l-24 23c-2.1 1.6-3.1 4.2-2.7 6.7v169.3c-.4 2.6.6 5.2 2.7 6.7l23.5 23v5.1h-118V367l24.3-23.6c2.4-2.4 2.4-3.1 2.4-6.7V199.8l-67.6 171.6h-9.1L125 199.8v115c-.7 4.8 1 9.7 4.4 13.2l31.6 38.3v5.1H71.2v-5.1l31.6-38.3c3.4-3.5 4.9-8.4 4.1-13.2v-133c.4-3.7-1-7.3-3.8-9.8L75 138.1V133h87.3l67.4 148L289 133.1h83.2v5z\"},\"child\":[]}]})(props);\n};\nexport function FaMedrt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 544 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M113.7 256c0 121.8 83.9 222.8 193.5 241.1-18.7 4.5-38.2 6.9-58.2 6.9C111.4 504 0 393 0 256S111.4 8 248.9 8c20.1 0 39.6 2.4 58.2 6.9C197.5 33.2 113.7 134.2 113.7 256m297.4 100.3c-77.7 55.4-179.6 47.5-240.4-14.6 5.5 14.1 12.7 27.7 21.7 40.5 61.6 88.2 182.4 109.3 269.7 47 87.3-62.3 108.1-184.3 46.5-272.6-9-12.9-19.3-24.3-30.5-34.2 37.4 78.8 10.7 178.5-67 233.9m-218.8-244c-1.4 1-2.7 2.1-4 3.1 64.3-17.8 135.9 4 178.9 60.5 35.7 47 42.9 106.6 24.4 158 56.7-56.2 67.6-142.1 22.3-201.8-50-65.5-149.1-74.4-221.6-19.8M296 224c-4.4 0-8-3.6-8-8v-40c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v40c0 4.4-3.6 8-8 8h-40c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h40c4.4 0 8 3.6 8 8v40c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-40c0-4.4 3.6-8 8-8h40c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8h-40z\"},\"child\":[]}]})(props);\n};\nexport function FaMeetup (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M99 414.3c1.1 5.7-2.3 11.1-8 12.3-5.4 1.1-10.9-2.3-12-8-1.1-5.4 2.3-11.1 7.7-12.3 5.4-1.2 11.1 2.3 12.3 8zm143.1 71.4c-6.3 4.6-8 13.4-3.7 20 4.6 6.6 13.4 8.3 20 3.7 6.3-4.6 8-13.4 3.4-20-4.2-6.5-13.1-8.3-19.7-3.7zm-86-462.3c6.3-1.4 10.3-7.7 8.9-14-1.1-6.6-7.4-10.6-13.7-9.1-6.3 1.4-10.3 7.7-9.1 14 1.4 6.6 7.6 10.6 13.9 9.1zM34.4 226.3c-10-6.9-23.7-4.3-30.6 6-6.9 10-4.3 24 5.7 30.9 10 7.1 23.7 4.6 30.6-5.7 6.9-10.4 4.3-24.1-5.7-31.2zm272-170.9c10.6-6.3 13.7-20 7.7-30.3-6.3-10.6-19.7-14-30-7.7s-13.7 20-7.4 30.6c6 10.3 19.4 13.7 29.7 7.4zm-191.1 58c7.7-5.4 9.4-16 4.3-23.7s-15.7-9.4-23.1-4.3c-7.7 5.4-9.4 16-4.3 23.7 5.1 7.8 15.6 9.5 23.1 4.3zm372.3 156c-7.4 1.7-12.3 9.1-10.6 16.9 1.4 7.4 8.9 12.3 16.3 10.6 7.4-1.4 12.3-8.9 10.6-16.6-1.5-7.4-8.9-12.3-16.3-10.9zm39.7-56.8c-1.1-5.7-6.6-9.1-12-8-5.7 1.1-9.1 6.9-8 12.6 1.1 5.4 6.6 9.1 12.3 8 5.4-1.5 9.1-6.9 7.7-12.6zM447 138.9c-8.6 6-10.6 17.7-4.9 26.3 5.7 8.6 17.4 10.6 26 4.9 8.3-6 10.3-17.7 4.6-26.3-5.7-8.7-17.4-10.9-25.7-4.9zm-6.3 139.4c26.3 43.1 15.1 100-26.3 129.1-17.4 12.3-37.1 17.7-56.9 17.1-12 47.1-69.4 64.6-105.1 32.6-1.1.9-2.6 1.7-3.7 2.9-39.1 27.1-92.3 17.4-119.4-22.3-9.7-14.3-14.6-30.6-15.1-46.9-65.4-10.9-90-94-41.1-139.7-28.3-46.9.6-107.4 53.4-114.9C151.6 70 234.1 38.6 290.1 82c67.4-22.3 136.3 29.4 130.9 101.1 41.1 12.6 52.8 66.9 19.7 95.2zm-70 74.3c-3.1-20.6-40.9-4.6-43.1-27.1-3.1-32 43.7-101.1 40-128-3.4-24-19.4-29.1-33.4-29.4-13.4-.3-16.9 2-21.4 4.6-2.9 1.7-6.6 4.9-11.7-.3-6.3-6-11.1-11.7-19.4-12.9-12.3-2-17.7 2-26.6 9.7-3.4 2.9-12 12.9-20 9.1-3.4-1.7-15.4-7.7-24-11.4-16.3-7.1-40 4.6-48.6 20-12.9 22.9-38 113.1-41.7 125.1-8.6 26.6 10.9 48.6 36.9 47.1 11.1-.6 18.3-4.6 25.4-17.4 4-7.4 41.7-107.7 44.6-112.6 2-3.4 8.9-8 14.6-5.1 5.7 3.1 6.9 9.4 6 15.1-1.1 9.7-28 70.9-28.9 77.7-3.4 22.9 26.9 26.6 38.6 4 3.7-7.1 45.7-92.6 49.4-98.3 4.3-6.3 7.4-8.3 11.7-8 3.1 0 8.3.9 7.1 10.9-1.4 9.4-35.1 72.3-38.9 87.7-4.6 20.6 6.6 41.4 24.9 50.6 11.4 5.7 62.5 15.7 58.5-11.1zm5.7 92.3c-10.3 7.4-12.9 22-5.7 32.6 7.1 10.6 21.4 13.1 32 6 10.6-7.4 13.1-22 6-32.6-7.4-10.6-21.7-13.5-32.3-6z\"},\"child\":[]}]})(props);\n};\nexport function FaMegaport (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M214.5 209.6v66.2l33.5 33.5 33.3-33.3v-66.4l-33.4-33.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm145.1 414.4L367 441.6l-26-19.2v-65.5l-33.4-33.4-33.4 33.4v65.5L248 441.6l-26.1-19.2v-65.5l-33.4-33.4-33.5 33.4v65.5l-26.1 19.2-26.1-19.2v-87l59.5-59.5V188l59.5-59.5V52.9l26.1-19.2L274 52.9v75.6l59.5 59.5v87.6l59.7 59.7v87.1z\"},\"child\":[]}]})(props);\n};\nexport function FaMendeley (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624.6 325.2c-12.3-12.4-29.7-19.2-48.4-17.2-43.3-1-49.7-34.9-37.5-98.8 22.8-57.5-14.9-131.5-87.4-130.8-77.4.7-81.7 82-130.9 82-48.1 0-54-81.3-130.9-82-72.9-.8-110.1 73.3-87.4 130.8 12.2 63.9 5.8 97.8-37.5 98.8-21.2-2.3-37 6.5-53 22.5-19.9 19.7-19.3 94.8 42.6 102.6 47.1 5.9 81.6-42.9 61.2-87.8-47.3-103.7 185.9-106.1 146.5-8.2-.1.1-.2.2-.3.4-26.8 42.8 6.8 97.4 58.8 95.2 52.1 2.1 85.4-52.6 58.8-95.2-.1-.2-.2-.3-.3-.4-39.4-97.9 193.8-95.5 146.5 8.2-4.6 10-6.7 21.3-5.7 33 4.9 53.4 68.7 74.1 104.9 35.2 17.8-14.8 23.1-65.6 0-88.3zm-303.9-19.1h-.6c-43.4 0-62.8-37.5-62.8-62.8 0-34.7 28.2-62.8 62.8-62.8h.6c34.7 0 62.8 28.1 62.8 62.8 0 25-19.2 62.8-62.8 62.8z\"},\"child\":[]}]})(props);\n};\nexport function FaMicroblog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M399.36,362.23c29.49-34.69,47.1-78.34,47.1-125.79C446.46,123.49,346.86,32,224,32S1.54,123.49,1.54,236.44,101.14,440.87,224,440.87a239.28,239.28,0,0,0,79.44-13.44,7.18,7.18,0,0,1,8.12,2.56c18.58,25.09,47.61,42.74,79.89,49.92a4.42,4.42,0,0,0,5.22-3.43,4.37,4.37,0,0,0-.85-3.62,87,87,0,0,1,3.69-110.69ZM329.52,212.4l-57.3,43.49L293,324.75a6.5,6.5,0,0,1-9.94,7.22L224,290.92,164.94,332a6.51,6.51,0,0,1-9.95-7.22l20.79-68.86-57.3-43.49a6.5,6.5,0,0,1,3.8-11.68l71.88-1.51,23.66-67.92a6.5,6.5,0,0,1,12.28,0l23.66,67.92,71.88,1.51a6.5,6.5,0,0,1,3.88,11.68Z\"},\"child\":[]}]})(props);\n};\nexport function FaMicrosoft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32h214.6v214.6H0V32zm233.4 0H448v214.6H233.4V32zM0 265.4h214.6V480H0V265.4zm233.4 0H448V480H233.4V265.4z\"},\"child\":[]}]})(props);\n};\nexport function FaMix (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 64v348.9c0 56.2 88 58.1 88 0V174.3c7.9-52.9 88-50.4 88 6.5v175.3c0 57.9 96 58 96 0V240c5.3-54.7 88-52.5 88 4.3v23.8c0 59.9 88 56.6 88 0V64H0z\"},\"child\":[]}]})(props);\n};\nexport function FaMixcloud (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M424.43 219.729C416.124 134.727 344.135 68 256.919 68c-72.266 0-136.224 46.516-159.205 114.074-54.545 8.029-96.63 54.822-96.63 111.582 0 62.298 50.668 112.966 113.243 112.966h289.614c52.329 0 94.969-42.362 94.969-94.693 0-45.131-32.118-83.063-74.48-92.2zm-20.489 144.53H114.327c-39.04 0-70.881-31.564-70.881-70.604s31.841-70.604 70.881-70.604c18.827 0 36.548 7.475 49.838 20.766 19.963 19.963 50.133-10.227 30.18-30.18-14.675-14.398-32.672-24.365-52.053-29.349 19.935-44.3 64.79-73.926 114.628-73.926 69.496 0 125.979 56.483 125.979 125.702 0 13.568-2.215 26.857-6.369 39.594-8.943 27.517 32.133 38.939 40.147 13.29 2.769-8.306 4.984-16.889 6.369-25.472 19.381 7.476 33.502 26.303 33.502 48.453 0 28.795-23.535 52.33-52.607 52.33zm235.069-52.33c0 44.024-12.737 86.386-37.102 122.657-4.153 6.092-10.798 9.414-17.72 9.414-16.317 0-27.127-18.826-17.443-32.949 19.381-29.349 29.903-63.682 29.903-99.122s-10.521-69.773-29.903-98.845c-15.655-22.831 19.361-47.24 35.163-23.534 24.366 35.993 37.102 78.356 37.102 122.379zm-70.88 0c0 31.565-9.137 62.021-26.857 88.325-4.153 6.091-10.798 9.136-17.72 9.136-17.201 0-27.022-18.979-17.443-32.948 13.013-19.104 19.658-41.255 19.658-64.513 0-22.981-6.645-45.408-19.658-64.512-15.761-22.986 19.008-47.095 35.163-23.535 17.719 26.026 26.857 56.483 26.857 88.047z\"},\"child\":[]}]})(props);\n};\nexport function FaMixer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M114.57,76.07a45.71,45.71,0,0,0-67.51-6.41c-17.58,16.18-19,43.52-4.75,62.77l91.78,123L41.76,379.58c-14.23,19.25-13.11,46.59,4.74,62.77A45.71,45.71,0,0,0,114,435.94L242.89,262.7a12.14,12.14,0,0,0,0-14.23ZM470.24,379.58,377.91,255.45l91.78-123c14.22-19.25,12.83-46.59-4.75-62.77a45.71,45.71,0,0,0-67.51,6.41l-128,172.12a12.14,12.14,0,0,0,0,14.23L398,435.94a45.71,45.71,0,0,0,67.51,6.41C483.35,426.17,484.47,398.83,470.24,379.58Z\"},\"child\":[]}]})(props);\n};\nexport function FaMizuni (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm-80 351.9c-31.4 10.6-58.8 27.3-80 48.2V136c0-22.1 17.9-40 40-40s40 17.9 40 40v223.9zm120-9.9c-12.9-2-26.2-3.1-39.8-3.1-13.8 0-27.2 1.1-40.2 3.1V136c0-22.1 17.9-40 40-40s40 17.9 40 40v214zm120 57.7c-21.2-20.8-48.6-37.4-80-48V136c0-22.1 17.9-40 40-40s40 17.9 40 40v271.7z\"},\"child\":[]}]})(props);\n};\nexport function FaModx (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M356 241.8l36.7 23.7V480l-133-83.8L356 241.8zM440 75H226.3l-23 37.8 153.5 96.5L440 75zm-89 142.8L55.2 32v214.5l46 29L351 217.8zM97 294.2L8 437h213.7l125-200.5L97 294.2z\"},\"child\":[]}]})(props);\n};\nexport function FaMonero (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 384h108.4C417 455.9 338.1 504 248 504S79 455.9 35.6 384H144V256.2L248 361l104-105v128zM88 336V128l159.4 159.4L408 128v208h74.8c8.5-25.1 13.2-52 13.2-80C496 119 385 8 248 8S0 119 0 256c0 28 4.6 54.9 13.2 80H88z\"},\"child\":[]}]})(props);\n};\nexport function FaNapster (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M298.3 373.6c-14.2 13.6-31.3 24.1-50.4 30.5-19-6.4-36.2-16.9-50.3-30.5h100.7zm44-199.6c20-16.9 43.6-29.2 69.6-36.2V299c0 219.4-328 217.6-328 .3V137.7c25.9 6.9 49.6 19.6 69.5 36.4 56.8-40 132.5-39.9 188.9-.1zm-208.8-58.5c64.4-60 164.3-60.1 228.9-.2-7.1 3.5-13.9 7.3-20.6 11.5-58.7-30.5-129.2-30.4-187.9.1-6.3-4-13.9-8.2-20.4-11.4zM43.8 93.2v69.3c-58.4 36.5-58.4 121.1.1 158.3 26.4 245.1 381.7 240.3 407.6 1.5l.3-1.7c58.7-36.3 58.9-121.7.2-158.2V93.2c-17.3.5-34 3-50.1 7.4-82-91.5-225.5-91.5-307.5.1-16.3-4.4-33.1-7-50.6-7.5zM259.2 352s36-.3 61.3-1.5c10.2-.5 21.1-4 25.5-6.5 26.3-15.1 25.4-39.2 26.2-47.4-79.5-.6-99.9-3.9-113 55.4zm-135.5-55.3c.8 8.2-.1 32.3 26.2 47.4 4.4 2.5 15.2 6 25.5 6.5 25.3 1.1 61.3 1.5 61.3 1.5-13.2-59.4-33.7-56.1-113-55.4zm169.1 123.4c-3.2-5.3-6.9-7.3-6.9-7.3-24.8 7.3-52.2 6.9-75.9 0 0 0-2.9 1.5-6.4 6.6-2.8 4.1-3.7 9.6-3.7 9.6 29.1 17.6 67.1 17.6 96.2 0-.1-.1-.3-4-3.3-8.9z\"},\"child\":[]}]})(props);\n};\nexport function FaNeos (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M415.44 512h-95.11L212.12 357.46v91.1L125.69 512H28V29.82L68.47 0h108.05l123.74 176.13V63.45L386.69 0h97.69v461.5zM38.77 35.27V496l72-52.88V194l215.5 307.64h84.79l52.35-38.17h-78.27L69 13zm82.54 466.61l80-58.78v-101l-79.76-114.4v220.94L49 501.89h72.34zM80.63 10.77l310.6 442.57h82.37V10.77h-79.75v317.56L170.91 10.77zM311 191.65l72 102.81V15.93l-72 53v122.72z\"},\"child\":[]}]})(props);\n};\nexport function FaNimblr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M246.6 299.29c15.57 0 27.15 11.46 27.15 27s-11.62 27-27.15 27c-15.7 0-27.15-11.57-27.15-27s11.55-27 27.15-27zM113 326.25c0-15.61 11.68-27 27.15-27s27.15 11.46 27.15 27-11.47 27-27.15 27c-15.44 0-27.15-11.31-27.15-27M191.76 159C157 159 89.45 178.77 59.25 227L14 0v335.48C14 433.13 93.61 512 191.76 512s177.76-78.95 177.76-176.52S290.13 159 191.76 159zm0 308.12c-73.27 0-132.51-58.9-132.51-131.59s59.24-131.59 132.51-131.59 132.51 58.86 132.51 131.54S265 467.07 191.76 467.07z\"},\"child\":[]}]})(props);\n};\nexport function FaNodeJs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 508c-6.7 0-13.5-1.8-19.4-5.2l-61.7-36.5c-9.2-5.2-4.7-7-1.7-8 12.3-4.3 14.8-5.2 27.9-12.7 1.4-.8 3.2-.5 4.6.4l47.4 28.1c1.7 1 4.1 1 5.7 0l184.7-106.6c1.7-1 2.8-3 2.8-5V149.3c0-2.1-1.1-4-2.9-5.1L226.8 37.7c-1.7-1-4-1-5.7 0L36.6 144.3c-1.8 1-2.9 3-2.9 5.1v213.1c0 2 1.1 4 2.9 4.9l50.6 29.2c27.5 13.7 44.3-2.4 44.3-18.7V167.5c0-3 2.4-5.3 5.4-5.3h23.4c2.9 0 5.4 2.3 5.4 5.3V378c0 36.6-20 57.6-54.7 57.6-10.7 0-19.1 0-42.5-11.6l-48.4-27.9C8.1 389.2.7 376.3.7 362.4V149.3c0-13.8 7.4-26.8 19.4-33.7L204.6 9c11.7-6.6 27.2-6.6 38.8 0l184.7 106.7c12 6.9 19.4 19.8 19.4 33.7v213.1c0 13.8-7.4 26.7-19.4 33.7L243.4 502.8c-5.9 3.4-12.6 5.2-19.4 5.2zm149.1-210.1c0-39.9-27-50.5-83.7-58-57.4-7.6-63.2-11.5-63.2-24.9 0-11.1 4.9-25.9 47.4-25.9 37.9 0 51.9 8.2 57.7 33.8.5 2.4 2.7 4.2 5.2 4.2h24c1.5 0 2.9-.6 3.9-1.7s1.5-2.6 1.4-4.1c-3.7-44.1-33-64.6-92.2-64.6-52.7 0-84.1 22.2-84.1 59.5 0 40.4 31.3 51.6 81.8 56.6 60.5 5.9 65.2 14.8 65.2 26.7 0 20.6-16.6 29.4-55.5 29.4-48.9 0-59.6-12.3-63.2-36.6-.4-2.6-2.6-4.5-5.3-4.5h-23.9c-3 0-5.3 2.4-5.3 5.3 0 31.1 16.9 68.2 97.8 68.2 58.4-.1 92-23.2 92-63.4z\"},\"child\":[]}]})(props);\n};\nexport function FaNode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M316.3 452c-2.1 0-4.2-.6-6.1-1.6L291 439c-2.9-1.6-1.5-2.2-.5-2.5 3.8-1.3 4.6-1.6 8.7-4 .4-.2 1-.1 1.4.1l14.8 8.8c.5.3 1.3.3 1.8 0L375 408c.5-.3.9-.9.9-1.6v-66.7c0-.7-.3-1.3-.9-1.6l-57.8-33.3c-.5-.3-1.2-.3-1.8 0l-57.8 33.3c-.6.3-.9 1-.9 1.6v66.7c0 .6.4 1.2.9 1.5l15.8 9.1c8.6 4.3 13.9-.8 13.9-5.8v-65.9c0-.9.7-1.7 1.7-1.7h7.3c.9 0 1.7.7 1.7 1.7v65.9c0 11.5-6.2 18-17.1 18-3.3 0-6 0-13.3-3.6l-15.2-8.7c-3.7-2.2-6.1-6.2-6.1-10.5v-66.7c0-4.3 2.3-8.4 6.1-10.5l57.8-33.4c3.7-2.1 8.5-2.1 12.1 0l57.8 33.4c3.7 2.2 6.1 6.2 6.1 10.5v66.7c0 4.3-2.3 8.4-6.1 10.5l-57.8 33.4c-1.7 1.1-3.8 1.7-6 1.7zm46.7-65.8c0-12.5-8.4-15.8-26.2-18.2-18-2.4-19.8-3.6-19.8-7.8 0-3.5 1.5-8.1 14.8-8.1 11.9 0 16.3 2.6 18.1 10.6.2.8.8 1.3 1.6 1.3h7.5c.5 0 .9-.2 1.2-.5.3-.4.5-.8.4-1.3-1.2-13.8-10.3-20.2-28.8-20.2-16.5 0-26.3 7-26.3 18.6 0 12.7 9.8 16.1 25.6 17.7 18.9 1.9 20.4 4.6 20.4 8.3 0 6.5-5.2 9.2-17.4 9.2-15.3 0-18.7-3.8-19.8-11.4-.1-.8-.8-1.4-1.7-1.4h-7.5c-.9 0-1.7.7-1.7 1.7 0 9.7 5.3 21.3 30.6 21.3 18.5 0 29-7.2 29-19.8zm54.5-50.1c0 6.1-5 11.1-11.1 11.1s-11.1-5-11.1-11.1c0-6.3 5.2-11.1 11.1-11.1 6-.1 11.1 4.8 11.1 11.1zm-1.8 0c0-5.2-4.2-9.3-9.4-9.3-5.1 0-9.3 4.1-9.3 9.3 0 5.2 4.2 9.4 9.3 9.4 5.2-.1 9.4-4.3 9.4-9.4zm-4.5 6.2h-2.6c-.1-.6-.5-3.8-.5-3.9-.2-.7-.4-1.1-1.3-1.1h-2.2v5h-2.4v-12.5h4.3c1.5 0 4.4 0 4.4 3.3 0 2.3-1.5 2.8-2.4 3.1 1.7.1 1.8 1.2 2.1 2.8.1 1 .3 2.7.6 3.3zm-2.8-8.8c0-1.7-1.2-1.7-1.8-1.7h-2v3.5h1.9c1.6 0 1.9-1.1 1.9-1.8zM137.3 191c0-2.7-1.4-5.1-3.7-6.4l-61.3-35.3c-1-.6-2.2-.9-3.4-1h-.6c-1.2 0-2.3.4-3.4 1L3.7 184.6C1.4 185.9 0 188.4 0 191l.1 95c0 1.3.7 2.5 1.8 3.2 1.1.7 2.5.7 3.7 0L42 268.3c2.3-1.4 3.7-3.8 3.7-6.4v-44.4c0-2.6 1.4-5.1 3.7-6.4l15.5-8.9c1.2-.7 2.4-1 3.7-1 1.3 0 2.6.3 3.7 1l15.5 8.9c2.3 1.3 3.7 3.8 3.7 6.4v44.4c0 2.6 1.4 5.1 3.7 6.4l36.4 20.9c1.1.7 2.6.7 3.7 0 1.1-.6 1.8-1.9 1.8-3.2l.2-95zM472.5 87.3v176.4c0 2.6-1.4 5.1-3.7 6.4l-61.3 35.4c-2.3 1.3-5.1 1.3-7.4 0l-61.3-35.4c-2.3-1.3-3.7-3.8-3.7-6.4v-70.8c0-2.6 1.4-5.1 3.7-6.4l61.3-35.4c2.3-1.3 5.1-1.3 7.4 0l15.3 8.8c1.7 1 3.9-.3 3.9-2.2v-94c0-2.8 3-4.6 5.5-3.2l36.5 20.4c2.3 1.2 3.8 3.7 3.8 6.4zm-46 128.9c0-.7-.4-1.3-.9-1.6l-21-12.2c-.6-.3-1.3-.3-1.9 0l-21 12.2c-.6.3-.9.9-.9 1.6v24.3c0 .7.4 1.3.9 1.6l21 12.1c.6.3 1.3.3 1.8 0l21-12.1c.6-.3.9-.9.9-1.6v-24.3zm209.8-.7c2.3-1.3 3.7-3.8 3.7-6.4V192c0-2.6-1.4-5.1-3.7-6.4l-60.9-35.4c-2.3-1.3-5.1-1.3-7.4 0l-61.3 35.4c-2.3 1.3-3.7 3.8-3.7 6.4v70.8c0 2.7 1.4 5.1 3.7 6.4l60.9 34.7c2.2 1.3 5 1.3 7.3 0l36.8-20.5c2.5-1.4 2.5-5 0-6.4L550 241.6c-1.2-.7-1.9-1.9-1.9-3.2v-22.2c0-1.3.7-2.5 1.9-3.2l19.2-11.1c1.1-.7 2.6-.7 3.7 0l19.2 11.1c1.1.7 1.9 1.9 1.9 3.2v17.4c0 2.8 3.1 4.6 5.6 3.2l36.7-21.3zM559 219c-.4.3-.7.7-.7 1.2v13.6c0 .5.3 1 .7 1.2l11.8 6.8c.4.3 1 .3 1.4 0L584 235c.4-.3.7-.7.7-1.2v-13.6c0-.5-.3-1-.7-1.2l-11.8-6.8c-.4-.3-1-.3-1.4 0L559 219zm-254.2 43.5v-70.4c0-2.6-1.6-5.1-3.9-6.4l-61.1-35.2c-2.1-1.2-5-1.4-7.4 0l-61.1 35.2c-2.3 1.3-3.9 3.7-3.9 6.4v70.4c0 2.8 1.9 5.2 4 6.4l61.2 35.2c2.4 1.4 5.2 1.3 7.4 0l61-35.2c1.8-1 3.1-2.7 3.6-4.7.1-.5.2-1.1.2-1.7zm-74.3-124.9l-.8.5h1.1l-.3-.5zm76.2 130.2l-.4-.7v.9l.4-.2z\"},\"child\":[]}]})(props);\n};\nexport function FaNpm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 288h-32v-64h32v64zm288-128v192H288v32H160v-32H0V160h576zm-416 32H32v128h64v-96h32v96h32V192zm160 0H192v160h64v-32h64V192zm224 0H352v128h64v-96h32v96h32v-96h32v96h32V192z\"},\"child\":[]}]})(props);\n};\nexport function FaNs8 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M104.324,269.172h26.067V242.994H104.324Zm52.466-26.178-.055-26.178v-.941a39.325,39.325,0,0,0-78.644.941v.166h26.4v-.166a12.98,12.98,0,0,1,25.956,0v26.178Zm52.356,25.846a91.1,91.1,0,0,1-91.1,91.1h-.609a91.1,91.1,0,0,1-91.1-91.1H0v.166A117.33,117.33,0,0,0,117.44,386.28h.775A117.331,117.331,0,0,0,235.49,268.84V242.828H209.146Zm-157.233,0a65.362,65.362,0,0,0,130.723,0H156.292a39.023,39.023,0,0,1-78.035,0V242.883H51.968v-26.62A65.42,65.42,0,0,1,182.8,217.48v25.293h26.344V217.48a91.761,91.761,0,0,0-183.522,0v25.4H51.913Zm418.4-71.173c13.67,0,24.573,6.642,30.052,18.264l.719,1.549,23.245-11.511-.609-1.439c-8.025-19.26-28.5-31.27-53.407-31.27-23.134,0-43.611,11.4-50.972,28.447-.123,26.876-.158,23.9,0,24.85,4.7,11.013,14.555,19.37,28.668,24.241a102.033,102.033,0,0,0,19.813,3.984c5.479.72,10.626,1.384,15.829,3.1,6.364,2.1,10.46,5.257,12.84,9.851v9.851c-3.708,7.527-13.781,12.342-25.791,12.342-14.334,0-25.956-6.918-31.933-19.039l-.72-1.494L415.026,280.9l.553,1.439c7.915,19.426,29.609,32.044,55.289,32.044,23.632,0,44.608-11.4,52.3-28.447l.166-25.9-.166-.664c-4.87-11.014-15.219-19.647-28.944-24.241-7.693-2.712-14.335-3.6-20.7-4.427a83.777,83.777,0,0,1-14.832-2.878c-6.31-1.937-10.4-5.092-12.619-9.63v-8.412C449.45,202.427,458.969,197.667,470.315,197.667ZM287.568,311.344h26.067v-68.4H287.568Zm352.266-53.3c-2.933-6.254-8.3-12.01-15.441-16.714A37.99,37.99,0,0,0,637.4,226l.166-25.347-.166-.664C630.038,184,610.667,173.26,589.25,173.26S548.461,184,541.1,199.992l-.166,25.347.166.664a39.643,39.643,0,0,0,13.006,15.331c-7.2,4.7-12.508,10.46-15.441,16.714l-.166,28.889.166.72c7.582,15.994,27.893,26.731,50.585,26.731s43.057-10.737,50.584-26.731l.166-28.89Zm-73.22-50.806c3.6-6.31,12.563-10.516,22.58-10.516s19.038,4.206,22.636,10.516v13.725c-3.542,6.2-12.563,10.349-22.636,10.349s-19.094-4.15-22.58-10.349Zm47.319,72.169c-3.764,6.641-13.338,10.9-24.683,10.9-11.125,0-20.976-4.372-24.684-10.9V263.25c3.708-6.309,13.5-10.515,24.684-10.515,11.345,0,20.919,4.15,24.683,10.515ZM376.4,265.962l-59.827-89.713h-29v40.623h26.51v.387l62.539,94.085H402.3V176.249H376.4Z\"},\"child\":[]}]})(props);\n};\nexport function FaNutritionix (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 400 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M88 8.1S221.4-.1 209 112.5c0 0 19.1-74.9 103-40.6 0 0-17.7 74-88 56 0 0 14.6-54.6 66.1-56.6 0 0-39.9-10.3-82.1 48.8 0 0-19.8-94.5-93.6-99.7 0 0 75.2 19.4 77.6 107.5 0 .1-106.4 7-104-119.8zm312 315.6c0 48.5-9.7 95.3-32 132.3-42.2 30.9-105 48-168 48-62.9 0-125.8-17.1-168-48C9.7 419 0 372.2 0 323.7 0 275.3 17.7 229 40 192c42.2-30.9 97.1-48.6 160-48.6 63 0 117.8 17.6 160 48.6 22.3 37 40 83.3 40 131.7zM120 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM192 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM264 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM336 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm24-39.6c-4.8-22.3-7.4-36.9-16-56-38.8-19.9-90.5-32-144-32S94.8 180.1 56 200c-8.8 19.5-11.2 33.9-16 56 42.2-7.9 98.7-14.8 160-14.8s117.8 6.9 160 14.8z\"},\"child\":[]}]})(props);\n};\nexport function FaOctopusDeploy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M455.6,349.2c-45.891-39.09-36.67-77.877-16.095-128.11C475.16,134.04,415.967,34.14,329.93,8.3,237.04-19.6,134.252,24.341,99.677,117.147a180.862,180.862,0,0,0-10.988,73.544c1.733,29.543,14.717,52.97,24.09,80.3,17.2,50.161-28.1,92.743-66.662,117.582-46.806,30.2-36.319,39.857-8.428,41.858,23.378,1.68,44.478-4.548,65.265-15.045,9.2-4.647,40.687-18.931,45.13-28.588C135.9,413.388,111.122,459.5,126.621,488.9c19.1,36.229,67.112-31.77,76.709-45.812,8.591-12.572,42.963-81.279,63.627-46.926,18.865,31.361,8.6,76.391,35.738,104.622,32.854,34.2,51.155-18.312,51.412-44.221.163-16.411-6.1-95.852,29.9-59.944C405.428,418,436.912,467.8,472.568,463.642c38.736-4.516-22.123-67.967-28.262-78.695,5.393,4.279,53.665,34.128,53.818,9.52C498.234,375.678,468.039,359.8,455.6,349.2Z\"},\"child\":[]}]})(props);\n};\nexport function FaOdnoklassnikiSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M184.2 177.1c0-22.1 17.9-40 39.8-40s39.8 17.9 39.8 40c0 22-17.9 39.8-39.8 39.8s-39.8-17.9-39.8-39.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-305.1 97.1c0 44.6 36.4 80.9 81.1 80.9s81.1-36.2 81.1-80.9c0-44.8-36.4-81.1-81.1-81.1s-81.1 36.2-81.1 81.1zm174.5 90.7c-4.6-9.1-17.3-16.8-34.1-3.6 0 0-22.7 18-59.3 18s-59.3-18-59.3-18c-16.8-13.2-29.5-5.5-34.1 3.6-7.9 16.1 1.1 23.7 21.4 37 17.3 11.1 41.2 15.2 56.6 16.8l-12.9 12.9c-18.2 18-35.5 35.5-47.7 47.7-17.6 17.6 10.7 45.8 28.4 28.6l47.7-47.9c18.2 18.2 35.7 35.7 47.7 47.9 17.6 17.2 46-10.7 28.6-28.6l-47.7-47.7-13-12.9c15.5-1.6 39.1-5.9 56.2-16.8 20.4-13.3 29.3-21 21.5-37z\"},\"child\":[]}]})(props);\n};\nexport function FaOdnoklassniki (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M275.1 334c-27.4 17.4-65.1 24.3-90 26.9l20.9 20.6 76.3 76.3c27.9 28.6-17.5 73.3-45.7 45.7-19.1-19.4-47.1-47.4-76.3-76.6L84 503.4c-28.2 27.5-73.6-17.6-45.4-45.7 19.4-19.4 47.1-47.4 76.3-76.3l20.6-20.6c-24.6-2.6-62.9-9.1-90.6-26.9-32.6-21-46.9-33.3-34.3-59 7.4-14.6 27.7-26.9 54.6-5.7 0 0 36.3 28.9 94.9 28.9s94.9-28.9 94.9-28.9c26.9-21.1 47.1-8.9 54.6 5.7 12.4 25.7-1.9 38-34.5 59.1zM30.3 129.7C30.3 58 88.6 0 160 0s129.7 58 129.7 129.7c0 71.4-58.3 129.4-129.7 129.4s-129.7-58-129.7-129.4zm66 0c0 35.1 28.6 63.7 63.7 63.7s63.7-28.6 63.7-63.7c0-35.4-28.6-64-63.7-64s-63.7 28.6-63.7 64z\"},\"child\":[]}]})(props);\n};\nexport function FaOldRepublic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M235.76 10.23c7.5-.31 15-.28 22.5-.09 3.61.14 7.2.4 10.79.73 4.92.27 9.79 1.03 14.67 1.62 2.93.43 5.83.98 8.75 1.46 7.9 1.33 15.67 3.28 23.39 5.4 12.24 3.47 24.19 7.92 35.76 13.21 26.56 12.24 50.94 29.21 71.63 49.88 20.03 20.09 36.72 43.55 48.89 69.19 1.13 2.59 2.44 5.1 3.47 7.74 2.81 6.43 5.39 12.97 7.58 19.63 4.14 12.33 7.34 24.99 9.42 37.83.57 3.14 1.04 6.3 1.4 9.47.55 3.83.94 7.69 1.18 11.56.83 8.34.84 16.73.77 25.1-.07 4.97-.26 9.94-.75 14.89-.24 3.38-.51 6.76-.98 10.12-.39 2.72-.63 5.46-1.11 8.17-.9 5.15-1.7 10.31-2.87 15.41-4.1 18.5-10.3 36.55-18.51 53.63-15.77 32.83-38.83 62.17-67.12 85.12a246.503 246.503 0 0 1-56.91 34.86c-6.21 2.68-12.46 5.25-18.87 7.41-3.51 1.16-7.01 2.38-10.57 3.39-6.62 1.88-13.29 3.64-20.04 5-4.66.91-9.34 1.73-14.03 2.48-5.25.66-10.5 1.44-15.79 1.74-6.69.66-13.41.84-20.12.81-6.82.03-13.65-.12-20.45-.79-3.29-.23-6.57-.5-9.83-.95-2.72-.39-5.46-.63-8.17-1.11-4.12-.72-8.25-1.37-12.35-2.22-4.25-.94-8.49-1.89-12.69-3.02-8.63-2.17-17.08-5.01-25.41-8.13-10.49-4.12-20.79-8.75-30.64-14.25-2.14-1.15-4.28-2.29-6.35-3.57-11.22-6.58-21.86-14.1-31.92-22.34-34.68-28.41-61.41-66.43-76.35-108.7-3.09-8.74-5.71-17.65-7.8-26.68-1.48-6.16-2.52-12.42-3.58-18.66-.4-2.35-.61-4.73-.95-7.09-.6-3.96-.75-7.96-1.17-11.94-.8-9.47-.71-18.99-.51-28.49.14-3.51.34-7.01.7-10.51.31-3.17.46-6.37.92-9.52.41-2.81.65-5.65 1.16-8.44.7-3.94 1.3-7.9 2.12-11.82 3.43-16.52 8.47-32.73 15.26-48.18 1.15-2.92 2.59-5.72 3.86-8.59 8.05-16.71 17.9-32.56 29.49-47.06 20-25.38 45.1-46.68 73.27-62.47 7.5-4.15 15.16-8.05 23.07-11.37 15.82-6.88 32.41-11.95 49.31-15.38 3.51-.67 7.04-1.24 10.56-1.85 2.62-.47 5.28-.7 7.91-1.08 3.53-.53 7.1-.68 10.65-1.04 2.46-.24 4.91-.36 7.36-.51m8.64 24.41c-9.23.1-18.43.99-27.57 2.23-7.3 1.08-14.53 2.6-21.71 4.3-13.91 3.5-27.48 8.34-40.46 14.42-10.46 4.99-20.59 10.7-30.18 17.22-4.18 2.92-8.4 5.8-12.34 9.03-5.08 3.97-9.98 8.17-14.68 12.59-2.51 2.24-4.81 4.7-7.22 7.06-28.22 28.79-48.44 65.39-57.5 104.69-2.04 8.44-3.54 17.02-4.44 25.65-1.1 8.89-1.44 17.85-1.41 26.8.11 7.14.38 14.28 1.22 21.37.62 7.12 1.87 14.16 3.2 21.18 1.07 4.65 2.03 9.32 3.33 13.91 6.29 23.38 16.5 45.7 30.07 65.75 8.64 12.98 18.78 24.93 29.98 35.77 16.28 15.82 35.05 29.04 55.34 39.22 7.28 3.52 14.66 6.87 22.27 9.63 5.04 1.76 10.06 3.57 15.22 4.98 11.26 3.23 22.77 5.6 34.39 7.06 2.91.29 5.81.61 8.72.9 13.82 1.08 27.74 1 41.54-.43 4.45-.6 8.92-.99 13.35-1.78 3.63-.67 7.28-1.25 10.87-2.1 4.13-.98 8.28-1.91 12.36-3.07 26.5-7.34 51.58-19.71 73.58-36.2 15.78-11.82 29.96-25.76 42.12-41.28 3.26-4.02 6.17-8.31 9.13-12.55 3.39-5.06 6.58-10.25 9.6-15.54 2.4-4.44 4.74-8.91 6.95-13.45 5.69-12.05 10.28-24.62 13.75-37.49 2.59-10.01 4.75-20.16 5.9-30.45 1.77-13.47 1.94-27.1 1.29-40.65-.29-3.89-.67-7.77-1-11.66-2.23-19.08-6.79-37.91-13.82-55.8-5.95-15.13-13.53-29.63-22.61-43.13-12.69-18.8-28.24-35.68-45.97-49.83-25.05-20-54.47-34.55-85.65-42.08-7.78-1.93-15.69-3.34-23.63-4.45-3.91-.59-7.85-.82-11.77-1.24-7.39-.57-14.81-.72-22.22-.58zM139.26 83.53c13.3-8.89 28.08-15.38 43.3-20.18-3.17 1.77-6.44 3.38-9.53 5.29-11.21 6.68-21.52 14.9-30.38 24.49-6.8 7.43-12.76 15.73-17.01 24.89-3.29 6.86-5.64 14.19-6.86 21.71-.93 4.85-1.3 9.81-1.17 14.75.13 13.66 4.44 27.08 11.29 38.82 5.92 10.22 13.63 19.33 22.36 27.26 4.85 4.36 10.24 8.09 14.95 12.6 2.26 2.19 4.49 4.42 6.43 6.91 2.62 3.31 4.89 6.99 5.99 11.1.9 3.02.66 6.2.69 9.31.02 4.1-.04 8.2.03 12.3.14 3.54-.02 7.09.11 10.63.08 2.38.02 4.76.05 7.14.16 5.77.06 11.53.15 17.3.11 2.91.02 5.82.13 8.74.03 1.63.13 3.28-.03 4.91-.91.12-1.82.18-2.73.16-10.99 0-21.88-2.63-31.95-6.93-6-2.7-11.81-5.89-17.09-9.83-5.75-4.19-11.09-8.96-15.79-14.31-6.53-7.24-11.98-15.39-16.62-23.95-1.07-2.03-2.24-4.02-3.18-6.12-1.16-2.64-2.62-5.14-3.67-7.82-4.05-9.68-6.57-19.94-8.08-30.31-.49-4.44-1.09-8.88-1.2-13.35-.7-15.73.84-31.55 4.67-46.82 2.12-8.15 4.77-16.18 8.31-23.83 6.32-14.2 15.34-27.18 26.3-38.19 6.28-6.2 13.13-11.84 20.53-16.67zm175.37-20.12c2.74.74 5.41 1.74 8.09 2.68 6.36 2.33 12.68 4.84 18.71 7.96 13.11 6.44 25.31 14.81 35.82 24.97 10.2 9.95 18.74 21.6 25.14 34.34 1.28 2.75 2.64 5.46 3.81 8.26 6.31 15.1 10 31.26 11.23 47.57.41 4.54.44 9.09.45 13.64.07 11.64-1.49 23.25-4.3 34.53-1.97 7.27-4.35 14.49-7.86 21.18-3.18 6.64-6.68 13.16-10.84 19.24-6.94 10.47-15.6 19.87-25.82 27.22-10.48 7.64-22.64 13.02-35.4 15.38-3.51.69-7.08 1.08-10.66 1.21-1.85.06-3.72.16-5.56-.1-.28-2.15 0-4.31-.01-6.46-.03-3.73.14-7.45.1-11.17.19-7.02.02-14.05.21-21.07.03-2.38-.03-4.76.03-7.14.17-5.07-.04-10.14.14-15.21.1-2.99-.24-6.04.51-8.96.66-2.5 1.78-4.86 3.09-7.08 4.46-7.31 11.06-12.96 17.68-18.26 5.38-4.18 10.47-8.77 15.02-13.84 7.68-8.37 14.17-17.88 18.78-28.27 2.5-5.93 4.52-12.1 5.55-18.46.86-4.37 1.06-8.83 1.01-13.27-.02-7.85-1.4-15.65-3.64-23.17-1.75-5.73-4.27-11.18-7.09-16.45-3.87-6.93-8.65-13.31-13.96-19.2-9.94-10.85-21.75-19.94-34.6-27.1-1.85-1.02-3.84-1.82-5.63-2.97zm-100.8 58.45c.98-1.18 1.99-2.33 3.12-3.38-.61.93-1.27 1.81-1.95 2.68-3.1 3.88-5.54 8.31-7.03 13.06-.87 3.27-1.68 6.6-1.73 10-.07 2.52-.08 5.07.32 7.57 1.13 7.63 4.33 14.85 8.77 21.12 2 2.7 4.25 5.27 6.92 7.33 1.62 1.27 3.53 2.09 5.34 3.05 3.11 1.68 6.32 3.23 9.07 5.48 2.67 2.09 4.55 5.33 4.4 8.79-.01 73.67 0 147.34-.01 221.02 0 1.35-.08 2.7.04 4.04.13 1.48.82 2.83 1.47 4.15.86 1.66 1.78 3.34 3.18 4.62.85.77 1.97 1.4 3.15 1.24 1.5-.2 2.66-1.35 3.45-2.57.96-1.51 1.68-3.16 2.28-4.85.76-2.13.44-4.42.54-6.63.14-4.03-.02-8.06.14-12.09.03-5.89.03-11.77.06-17.66.14-3.62.03-7.24.11-10.86.15-4.03-.02-8.06.14-12.09.03-5.99.03-11.98.07-17.97.14-3.62.02-7.24.11-10.86.14-3.93-.02-7.86.14-11.78.03-5.99.03-11.98.06-17.97.16-3.94-.01-7.88.19-11.82.29 1.44.13 2.92.22 4.38.19 3.61.42 7.23.76 10.84.32 3.44.44 6.89.86 10.32.37 3.1.51 6.22.95 9.31.57 4.09.87 8.21 1.54 12.29 1.46 9.04 2.83 18.11 5.09 26.99 1.13 4.82 2.4 9.61 4 14.3 2.54 7.9 5.72 15.67 10.31 22.62 1.73 2.64 3.87 4.98 6.1 7.21.27.25.55.51.88.71.6.25 1.31-.07 1.7-.57.71-.88 1.17-1.94 1.7-2.93 4.05-7.8 8.18-15.56 12.34-23.31.7-1.31 1.44-2.62 2.56-3.61 1.75-1.57 3.84-2.69 5.98-3.63 2.88-1.22 5.9-2.19 9.03-2.42 6.58-.62 13.11.75 19.56 1.85 3.69.58 7.4 1.17 11.13 1.41 3.74.1 7.48.05 11.21-.28 8.55-.92 16.99-2.96 24.94-6.25 5.3-2.24 10.46-4.83 15.31-7.93 11.46-7.21 21.46-16.57 30.04-27.01 1.17-1.42 2.25-2.9 3.46-4.28-1.2 3.24-2.67 6.37-4.16 9.48-1.25 2.9-2.84 5.61-4.27 8.42-5.16 9.63-11.02 18.91-17.75 27.52-4.03 5.21-8.53 10.05-13.33 14.57-6.64 6.05-14.07 11.37-22.43 14.76-8.21 3.37-17.31 4.63-26.09 3.29-3.56-.58-7.01-1.69-10.41-2.88-2.79-.97-5.39-2.38-8.03-3.69-3.43-1.71-6.64-3.81-9.71-6.08 2.71 3.06 5.69 5.86 8.7 8.61 4.27 3.76 8.74 7.31 13.63 10.23 3.98 2.45 8.29 4.4 12.84 5.51 1.46.37 2.96.46 4.45.6-1.25 1.1-2.63 2.04-3.99 2.98-9.61 6.54-20.01 11.86-30.69 16.43-20.86 8.7-43.17 13.97-65.74 15.34-4.66.24-9.32.36-13.98.36-4.98-.11-9.97-.13-14.92-.65-11.2-.76-22.29-2.73-33.17-5.43-10.35-2.71-20.55-6.12-30.3-10.55-8.71-3.86-17.12-8.42-24.99-13.79-1.83-1.31-3.74-2.53-5.37-4.08 6.6-1.19 13.03-3.39 18.99-6.48 5.74-2.86 10.99-6.66 15.63-11.07 2.24-2.19 4.29-4.59 6.19-7.09-3.43 2.13-6.93 4.15-10.62 5.78-4.41 2.16-9.07 3.77-13.81 5.02-5.73 1.52-11.74 1.73-17.61 1.14-8.13-.95-15.86-4.27-22.51-8.98-4.32-2.94-8.22-6.43-11.96-10.06-9.93-10.16-18.2-21.81-25.66-33.86-3.94-6.27-7.53-12.75-11.12-19.22-1.05-2.04-2.15-4.05-3.18-6.1 2.85 2.92 5.57 5.97 8.43 8.88 8.99 8.97 18.56 17.44 29.16 24.48 7.55 4.9 15.67 9.23 24.56 11.03 3.11.73 6.32.47 9.47.81 2.77.28 5.56.2 8.34.3 5.05.06 10.11.04 15.16-.16 3.65-.16 7.27-.66 10.89-1.09 2.07-.25 4.11-.71 6.14-1.2 3.88-.95 8.11-.96 11.83.61 4.76 1.85 8.44 5.64 11.38 9.71 2.16 3.02 4.06 6.22 5.66 9.58 1.16 2.43 2.46 4.79 3.55 7.26 1 2.24 2.15 4.42 3.42 6.52.67 1.02 1.4 2.15 2.62 2.55 1.06-.75 1.71-1.91 2.28-3.03 2.1-4.16 3.42-8.65 4.89-13.05 2.02-6.59 3.78-13.27 5.19-20.02 2.21-9.25 3.25-18.72 4.54-28.13.56-3.98.83-7.99 1.31-11.97.87-10.64 1.9-21.27 2.24-31.94.08-1.86.24-3.71.25-5.57.01-4.35.25-8.69.22-13.03-.01-2.38-.01-4.76 0-7.13.05-5.07-.2-10.14-.22-15.21-.2-6.61-.71-13.2-1.29-19.78-.73-5.88-1.55-11.78-3.12-17.51-2.05-7.75-5.59-15.03-9.8-21.82-3.16-5.07-6.79-9.88-11.09-14.03-3.88-3.86-8.58-7.08-13.94-8.45-1.5-.41-3.06-.45-4.59-.64.07-2.99.7-5.93 1.26-8.85 1.59-7.71 3.8-15.3 6.76-22.6 1.52-4.03 3.41-7.9 5.39-11.72 3.45-6.56 7.62-12.79 12.46-18.46zm31.27 1.7c.35-.06.71-.12 1.07-.19.19 1.79.09 3.58.1 5.37v38.13c-.01 1.74.13 3.49-.15 5.22-.36-.03-.71-.05-1.06-.05-.95-3.75-1.72-7.55-2.62-11.31-.38-1.53-.58-3.09-1.07-4.59-1.7-.24-3.43-.17-5.15-.2-5.06-.01-10.13 0-15.19-.01-1.66-.01-3.32.09-4.98-.03-.03-.39-.26-.91.16-1.18 1.28-.65 2.72-.88 4.06-1.35 3.43-1.14 6.88-2.16 10.31-3.31 1.39-.48 2.9-.72 4.16-1.54.04-.56.02-1.13-.05-1.68-1.23-.55-2.53-.87-3.81-1.28-3.13-1.03-6.29-1.96-9.41-3.02-1.79-.62-3.67-1-5.41-1.79-.03-.37-.07-.73-.11-1.09 5.09-.19 10.2.06 15.3-.12 3.36-.13 6.73.08 10.09-.07.12-.39.26-.77.37-1.16 1.08-4.94 2.33-9.83 3.39-14.75zm5.97-.2c.36.05.72.12 1.08.2.98 3.85 1.73 7.76 2.71 11.61.36 1.42.56 2.88 1.03 4.27 2.53.18 5.07-.01 7.61.05 5.16.12 10.33.12 15.49.07.76-.01 1.52.03 2.28.08-.04.36-.07.72-.1 1.08-1.82.83-3.78 1.25-5.67 1.89-3.73 1.23-7.48 2.39-11.22 3.57-.57.17-1.12.42-1.67.64-.15.55-.18 1.12-.12 1.69.87.48 1.82.81 2.77 1.09 4.88 1.52 9.73 3.14 14.63 4.6.38.13.78.27 1.13.49.4.27.23.79.15 1.18-1.66.13-3.31.03-4.97.04-5.17.01-10.33-.01-15.5.01-1.61.03-3.22-.02-4.82.21-.52 1.67-.72 3.42-1.17 5.11-.94 3.57-1.52 7.24-2.54 10.78-.36.01-.71.02-1.06.06-.29-1.73-.15-3.48-.15-5.22v-38.13c.02-1.78-.08-3.58.11-5.37zM65.05 168.33c1.12-2.15 2.08-4.4 3.37-6.46-1.82 7.56-2.91 15.27-3.62 23-.8 7.71-.85 15.49-.54 23.23 1.05 19.94 5.54 39.83 14.23 57.88 2.99 5.99 6.35 11.83 10.5 17.11 6.12 7.47 12.53 14.76 19.84 21.09 4.8 4.1 9.99 7.78 15.54 10.8 3.27 1.65 6.51 3.39 9.94 4.68 5.01 2.03 10.19 3.61 15.42 4.94 3.83.96 7.78 1.41 11.52 2.71 5 1.57 9.47 4.61 13.03 8.43 4.93 5.23 8.09 11.87 10.2 18.67.99 2.9 1.59 5.91 2.17 8.92.15.75.22 1.52.16 2.29-6.5 2.78-13.26 5.06-20.26 6.18-4.11.78-8.29.99-12.46 1.08-10.25.24-20.47-1.76-30.12-5.12-3.74-1.42-7.49-2.85-11.03-4.72-8.06-3.84-15.64-8.7-22.46-14.46-2.92-2.55-5.83-5.13-8.4-8.03-9.16-9.83-16.3-21.41-21.79-33.65-2.39-5.55-4.61-11.18-6.37-16.96-1.17-3.94-2.36-7.89-3.26-11.91-.75-2.94-1.22-5.95-1.87-8.92-.46-2.14-.69-4.32-1.03-6.48-.85-5.43-1.28-10.93-1.33-16.43.11-6.18.25-12.37 1.07-18.5.4-2.86.67-5.74 1.15-8.6.98-5.7 2.14-11.37 3.71-16.93 3.09-11.65 7.48-22.95 12.69-33.84zm363.73-6.44c1.1 1.66 1.91 3.48 2.78 5.26 2.1 4.45 4.24 8.9 6.02 13.49 7.61 18.76 12.3 38.79 13.04 59.05.02 1.76.07 3.52.11 5.29.13 9.57-1.27 19.09-3.18 28.45-.73 3.59-1.54 7.17-2.58 10.69-4.04 14.72-10 29-18.41 41.78-8.21 12.57-19.01 23.55-31.84 31.41-5.73 3.59-11.79 6.64-18.05 9.19-5.78 2.19-11.71 4.03-17.8 5.11-6.4 1.05-12.91 1.52-19.4 1.23-7.92-.48-15.78-2.07-23.21-4.85-1.94-.8-3.94-1.46-5.84-2.33-.21-1.51.25-2.99.53-4.46 1.16-5.74 3.03-11.36 5.7-16.58 2.37-4.51 5.52-8.65 9.46-11.9 2.43-2.05 5.24-3.61 8.16-4.83 3.58-1.5 7.47-1.97 11.24-2.83 7.23-1.71 14.37-3.93 21.15-7 10.35-4.65 19.71-11.38 27.65-19.46 1.59-1.61 3.23-3.18 4.74-4.87 3.37-3.76 6.71-7.57 9.85-11.53 7.48-10.07 12.82-21.59 16.71-33.48 1.58-5.3 3.21-10.6 4.21-16.05.63-2.87 1.04-5.78 1.52-8.68.87-6.09 1.59-12.22 1.68-18.38.12-6.65.14-13.32-.53-19.94-.73-7.99-1.87-15.96-3.71-23.78z\"},\"child\":[]}]})(props);\n};\nexport function FaOpencart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M423.3 440.7c0 25.3-20.3 45.6-45.6 45.6s-45.8-20.3-45.8-45.6 20.6-45.8 45.8-45.8c25.4 0 45.6 20.5 45.6 45.8zm-253.9-45.8c-25.3 0-45.6 20.6-45.6 45.8s20.3 45.6 45.6 45.6 45.8-20.3 45.8-45.6-20.5-45.8-45.8-45.8zm291.7-270C158.9 124.9 81.9 112.1 0 25.7c34.4 51.7 53.3 148.9 373.1 144.2 333.3-5 130 86.1 70.8 188.9 186.7-166.7 319.4-233.9 17.2-233.9z\"},\"child\":[]}]})(props);\n};\nexport function FaOpenid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M271.5 432l-68 32C88.5 453.7 0 392.5 0 318.2c0-71.5 82.5-131 191.7-144.3v43c-71.5 12.5-124 53-124 101.3 0 51 58.5 93.3 135.7 103v-340l68-33.2v384zM448 291l-131.3-28.5 36.8-20.7c-19.5-11.5-43.5-20-70-24.8v-43c46.2 5.5 87.7 19.5 120.3 39.3l35-19.8L448 291z\"},\"child\":[]}]})(props);\n};\nexport function FaOpera (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.9 32.7c-170.2 0-252.6 223.8-147.5 355.1 36.5 45.4 88.6 75.6 147.5 75.6 36.3 0 70.3-11.1 99.4-30.4-43.8 39.2-101.9 63-165.3 63-3.9 0-8 0-11.9-.3C104.6 489.6 0 381.1 0 248 0 111 111 0 248 0h.8c63.1.3 120.7 24.1 164.4 63.1-29-19.4-63.1-30.4-99.3-30.4zm101.8 397.7c-40.9 24.7-90.7 23.6-132-5.8 56.2-20.5 97.7-91.6 97.7-176.6 0-84.7-41.2-155.8-97.4-176.6 41.8-29.2 91.2-30.3 132.9-5 105.9 98.7 105.5 265.7-1.2 364z\"},\"child\":[]}]})(props);\n};\nexport function FaOptinMonster (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M572.6 421.4c5.6-9.5 4.7-15.2-5.4-11.6-3-4.9-7-9.5-11.1-13.8 2.9-9.7-.7-14.2-10.8-9.2-4.6-3.2-10.3-6.5-15.9-9.2 0-15.1-11.6-11.6-17.6-5.7-10.4-1.5-18.7-.3-26.8 5.7.3-6.5.3-13 .3-19.7 12.6 0 40.2-11 45.9-36.2 1.4-6.8 1.6-13.8-.3-21.9-3-13.5-14.3-21.3-25.1-25.7-.8-5.9-7.6-14.3-14.9-15.9s-12.4 4.9-14.1 10.3c-8.5 0-19.2 2.8-21.1 8.4-5.4-.5-11.1-1.4-16.8-1.9 2.7-1.9 5.4-3.5 8.4-4.6 5.4-9.2 14.6-11.4 25.7-11.6V256c19.5-.5 43-5.9 53.8-18.1 12.7-13.8 14.6-37.3 12.4-55.1-2.4-17.3-9.7-37.6-24.6-48.1-8.4-5.9-21.6-.8-22.7 9.5-2.2 19.6 1.2 30-38.6 25.1-10.3-23.8-24.6-44.6-42.7-60C341 49.6 242.9 55.5 166.4 71.7c19.7 4.6 41.1 8.6 59.7 16.5-26.2 2.4-52.7 11.3-76.2 23.2-32.8 17-44 29.9-56.7 42.4 14.9-2.2 28.9-5.1 43.8-3.8-9.7 5.4-18.4 12.2-26.5 20-25.8.9-23.8-5.3-26.2-25.9-1.1-10.5-14.3-15.4-22.7-9.7-28.1 19.9-33.5 79.9-12.2 103.5 10.8 12.2 35.1 17.3 54.9 17.8-.3 1.1-.3 1.9-.3 2.7 10.8.5 19.5 2.7 24.6 11.6 3 1.1 5.7 2.7 8.1 4.6-5.4.5-11.1 1.4-16.5 1.9-3.3-6.6-13.7-8.1-21.1-8.1-1.6-5.7-6.5-12.2-14.1-10.3-6.8 1.9-14.1 10-14.9 15.9-22.5 9.5-30.1 26.8-25.1 47.6 5.3 24.8 33 36.2 45.9 36.2v19.7c-6.6-5-14.3-7.5-26.8-5.7-5.5-5.5-17.3-10.1-17.3 5.7-5.9 2.7-11.4 5.9-15.9 9.2-9.8-4.9-13.6-1.7-11.1 9.2-4.1 4.3-7.8 8.6-11.1 13.8-10.2-3.7-11 2.2-5.4 11.6-1.1 3.5-1.6 7-1.9 10.8-.5 31.6 44.6 64 73.5 65.1 17.3.5 34.6-8.4 43-23.5 113.2 4.9 226.7 4.1 340.2 0 8.1 15.1 25.4 24.3 42.7 23.5 29.2-1.1 74.3-33.5 73.5-65.1.2-3.7-.7-7.2-1.7-10.7zm-73.8-254c1.1-3 2.4-8.4 2.4-14.6 0-5.9 6.8-8.1 14.1-.8 11.1 11.6 14.9 40.5 13.8 51.1-4.1-13.6-13-29-30.3-35.7zm-4.6 6.7c19.5 6.2 28.6 27.6 29.7 48.9-1.1 2.7-3 5.4-4.9 7.6-5.7 5.9-15.4 10-26.2 12.2 4.3-21.3.3-47.3-12.7-63 4.9-.8 10.9-2.4 14.1-5.7zm-24.1 6.8c13.8 11.9 20 39.2 14.1 63.5-4.1.5-8.1.8-11.6.8-1.9-21.9-6.8-44-14.3-64.6 3.7.3 8.1.3 11.8.3zM47.5 203c-1.1-10.5 2.4-39.5 13.8-51.1 7-7.3 14.1-5.1 14.1.8 0 6.2 1.4 11.6 2.4 14.6-17.3 6.8-26.2 22.2-30.3 35.7zm9.7 27.6c-1.9-2.2-3.5-4.9-4.9-7.6 1.4-21.3 10.3-42.7 29.7-48.9 3.2 3.2 9.2 4.9 14.1 5.7-13 15.7-17 41.6-12.7 63-10.8-2.2-20.5-6-26.2-12.2zm47.9 14.6c-4.1 0-8.1-.3-12.7-.8-4.6-18.6-1.9-38.9 5.4-53v.3l12.2-5.1c4.9-1.9 9.7-3.8 14.9-4.9-10.7 19.7-17.4 41.3-19.8 63.5zm184-162.7c41.9 0 76.2 34 76.2 75.9 0 42.2-34.3 76.2-76.2 76.2s-76.2-34-76.2-76.2c0-41.8 34.3-75.9 76.2-75.9zm115.6 174.3c-.3 17.8-7 48.9-23 57-13.2 6.6-6.5-7.5-16.5-58.1 13.3.3 26.6.3 39.5 1.1zm-54-1.6c.8 4.9 3.8 40.3-1.6 41.9-11.6 3.5-40 4.3-51.1-1.1-4.1-3-4.6-35.9-4.3-41.1v.3c18.9-.3 38.1-.3 57 0zM278.3 309c-13 3.5-41.6 4.1-54.6-1.6-6.5-2.7-3.8-42.4-1.9-51.6 19.2-.5 38.4-.5 57.8-.8v.3c1.1 8.3 3.3 51.2-1.3 53.7zm-106.5-51.1c12.2-.8 24.6-1.4 36.8-1.6-2.4 15.4-3 43.5-4.9 52.2-1.1 6.8-4.3 6.8-9.7 4.3-21.9-9.8-27.6-35.2-22.2-54.9zm-35.4 31.3c7.8-1.1 15.7-1.9 23.5-2.7 1.6 6.2 3.8 11.9 7 17.6 10 17 44 35.7 45.1 7 6.2 14.9 40.8 12.2 54.9 10.8 15.7-1.4 23.8-1.4 26.8-14.3 12.4 4.3 30.8 4.1 44 3 11.3-.8 20.8-.5 24.6-8.9 1.1 5.1 1.9 11.6 4.6 16.8 10.8 21.3 37.3 1.4 46.8-31.6 8.6.8 17.6 1.9 26.5 2.7-.4 1.3-3.8 7.3 7.3 11.6-47.6 47-95.7 87.8-163.2 107-63.2-20.8-112.1-59.5-155.9-106.5 9.6-3.4 10.4-8.8 8-12.5zm-21.6 172.5c-3.8 17.8-21.9 29.7-39.7 28.9-19.2-.8-46.5-17-59.2-36.5-2.7-31.1 43.8-61.3 66.2-54.6 14.9 4.3 27.8 30.8 33.5 54 0 3-.3 5.7-.8 8.2zm-8.7-66c-.5-13.5-.5-27-.3-40.5h.3c2.7-1.6 5.7-3.8 7.8-6.5 6.5-1.6 13-5.1 15.1-9.2 3.3-7.1-7-7.5-5.4-12.4 2.7-1.1 5.7-2.2 7.8-3.5 29.2 29.2 58.6 56.5 97.3 77-36.8 11.3-72.4 27.6-105.9 47-1.2-18.6-7.7-35.9-16.7-51.9zm337.6 64.6c-103 3.5-206.2 4.1-309.4 0 0 .3 0 .3-.3.3v-.3h.3c35.1-21.6 72.2-39.2 112.4-50.8 11.6 5.1 23 9.5 34.9 13.2 2.2.8 2.2.8 4.3 0 14.3-4.1 28.4-9.2 42.2-15.4 41.5 11.7 78.8 31.7 115.6 53zm10.5-12.4c-35.9-19.5-73-35.9-111.9-47.6 38.1-20 71.9-47.3 103.5-76.7 2.2 1.4 4.6 2.4 7.6 3.2 0 .8.3 1.9.5 2.4-4.6 2.7-7.8 6.2-5.9 10.3 2.2 3.8 8.6 7.6 15.1 8.9 2.4 2.7 5.1 5.1 8.1 6.8 0 13.8-.3 27.6-.8 41.3l.3-.3c-9.3 15.9-15.5 37-16.5 51.7zm105.9 6.2c-12.7 19.5-40 35.7-59.2 36.5-19.3.9-40.5-13.2-40.5-37 5.7-23.2 18.9-49.7 33.5-54 22.7-6.9 69.2 23.4 66.2 54.5zM372.9 75.2c-3.8-72.1-100.8-79.7-126-23.5 44.6-24.3 90.3-15.7 126 23.5zM74.8 407.1c-15.7 1.6-49.5 25.4-49.5 43.2 0 11.6 15.7 19.5 32.2 14.9 12.2-3.2 31.1-17.6 35.9-27.3 6-11.6-3.7-32.7-18.6-30.8zm215.9-176.2c28.6 0 51.9-21.6 51.9-48.4 0-36.1-40.5-58.1-72.2-44.3 9.5 3 16.5 11.6 16.5 21.6 0 23.3-33.3 32-46.5 11.3-7.3 34.1 19.4 59.8 50.3 59.8zM68 474.1c.5 6.5 12.2 12.7 21.6 9.5 6.8-2.7 14.6-10.5 17.3-16.2 3-7-1.1-20-9.7-18.4-8.9 1.6-29.7 16.7-29.2 25.1zm433.2-67c-14.9-1.9-24.6 19.2-18.9 30.8 4.9 9.7 24.1 24.1 36.2 27.3 16.5 4.6 32.2-3.2 32.2-14.9 0-17.8-33.8-41.6-49.5-43.2zM478.8 449c-8.4-1.6-12.4 11.3-9.5 18.4 2.4 5.7 10.3 13.5 17.3 16.2 9.2 3.2 21.1-3 21.3-9.5.9-8.4-20.2-23.5-29.1-25.1z\"},\"child\":[]}]})(props);\n};\nexport function FaOrcid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M294.75 188.19h-45.92V342h47.47c67.62 0 83.12-51.34 83.12-76.91 0-41.64-26.54-76.9-84.67-76.9zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-80.79 360.76h-29.84v-207.5h29.84zm-14.92-231.14a19.57 19.57 0 1 1 19.57-19.57 19.64 19.64 0 0 1-19.57 19.57zM300 369h-81V161.26h80.6c76.73 0 110.44 54.83 110.44 103.85C410 318.39 368.38 369 300 369z\"},\"child\":[]}]})(props);\n};\nexport function FaOsi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 266.44C10.3 130.64 105.4 34 221.8 18.34c138.8-18.6 255.6 75.8 278 201.1 21.3 118.8-44 230-151.6 274-9.3 3.8-14.4 1.7-18-7.7q-26.7-69.45-53.4-139c-3.1-8.1-1-13.2 7-16.8 24.2-11 39.3-29.4 43.3-55.8a71.47 71.47 0 0 0-64.5-82.2c-39-3.4-71.8 23.7-77.5 59.7-5.2 33 11.1 63.7 41.9 77.7 9.6 4.4 11.5 8.6 7.8 18.4q-26.85 69.9-53.7 139.9c-2.6 6.9-8.3 9.3-15.5 6.5-52.6-20.3-101.4-61-130.8-119-24.9-49.2-25.2-87.7-26.8-108.7zm20.9-1.9c.4 6.6.6 14.3 1.3 22.1 6.3 71.9 49.6 143.5 131 183.1 3.2 1.5 4.4.8 5.6-2.3q22.35-58.65 45-117.3c1.3-3.3.6-4.8-2.4-6.7-31.6-19.9-47.3-48.5-45.6-86 1-21.6 9.3-40.5 23.8-56.3 30-32.7 77-39.8 115.5-17.6a91.64 91.64 0 0 1 45.2 90.4c-3.6 30.6-19.3 53.9-45.7 69.8-2.7 1.6-3.5 2.9-2.3 6q22.8 58.8 45.2 117.7c1.2 3.1 2.4 3.8 5.6 2.3 35.5-16.6 65.2-40.3 88.1-72 34.8-48.2 49.1-101.9 42.3-161-13.7-117.5-119.4-214.8-255.5-198-106.1 13-195.3 102.5-197.1 225.8z\"},\"child\":[]}]})(props);\n};\nexport function FaPage4 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 504C111 504 0 393 0 256S111 8 248 8c20.9 0 41.3 2.6 60.7 7.5L42.3 392H248v112zm0-143.6V146.8L98.6 360.4H248zm96 31.6v92.7c45.7-19.2 84.5-51.7 111.4-92.7H344zm57.4-138.2l-21.2 8.4 21.2 8.3v-16.7zm-20.3 54.5c-6.7 0-8 6.3-8 12.9v7.7h16.2v-10c0-5.9-2.3-10.6-8.2-10.6zM496 256c0 37.3-8.2 72.7-23 104.4H344V27.3C433.3 64.8 496 153.1 496 256zM360.4 143.6h68.2V96h-13.9v32.6h-13.9V99h-13.9v29.6h-12.7V96h-13.9v47.6zm68.1 185.3H402v-11c0-15.4-5.6-25.2-20.9-25.2-15.4 0-20.7 10.6-20.7 25.9v25.3h68.2v-15zm0-103l-68.2 29.7V268l68.2 29.5v-16.6l-14.4-5.7v-26.5l14.4-5.9v-16.9zm-4.8-68.5h-35.6V184H402v-12.2h11c8.6 15.8 1.3 35.3-18.6 35.3-22.5 0-28.3-25.3-15.5-37.7l-11.6-10.6c-16.2 17.5-12.2 63.9 27.1 63.9 34 0 44.7-35.9 29.3-65.3z\"},\"child\":[]}]})(props);\n};\nexport function FaPagelines (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 312.7c-55.1 136.7-187.1 54-187.1 54-40.5 81.8-107.4 134.4-184.6 134.7-16.1 0-16.6-24.4 0-24.4 64.4-.3 120.5-42.7 157.2-110.1-41.1 15.9-118.6 27.9-161.6-82.2 109-44.9 159.1 11.2 178.3 45.5 9.9-24.4 17-50.9 21.6-79.7 0 0-139.7 21.9-149.5-98.1 119.1-47.9 152.6 76.7 152.6 76.7 1.6-16.7 3.3-52.6 3.3-53.4 0 0-106.3-73.7-38.1-165.2 124.6 43 61.4 162.4 61.4 162.4.5 1.6.5 23.8 0 33.4 0 0 45.2-89 136.4-57.5-4.2 134-141.9 106.4-141.9 106.4-4.4 27.4-11.2 53.4-20 77.5 0 0 83-91.8 172-20z\"},\"child\":[]}]})(props);\n};\nexport function FaPalfed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384.9 193.9c0-47.4-55.2-44.2-95.4-29.8-1.3 39.4-2.5 80.7-3 119.8.7 2.8 2.6 6.2 15.1 6.2 36.8 0 83.4-42.8 83.3-96.2zm-194.5 72.2c.2 0 6.5-2.7 11.2-2.7 26.6 0 20.7 44.1-14.4 44.1-21.5 0-37.1-18.1-37.1-43 0-42 42.9-95.6 100.7-126.5 1-12.4 3-22 10.5-28.2 11.2-9 26.6-3.5 29.5 11.1 72.2-22.2 135.2 1 135.2 72 0 77.9-79.3 152.6-140.1 138.2-.1 39.4.9 74.4 2.7 100v.2c.2 3.4.6 12.5-5.3 19.1-9.6 10.6-33.4 10-36.4-22.3-4.1-44.4.2-206.1 1.4-242.5-21.5 15-58.5 50.3-58.5 75.9.2 2.5.4 4 .6 4.6zM8 181.1s-.1 37.4 38.4 37.4h30l22.4 217.2s0 44.3 44.7 44.3h288.9s44.7-.4 44.7-44.3l22.4-217.2h30s38.4 1.2 38.4-37.4c0 0 .1-37.4-38.4-37.4h-30.1c-7.3-25.6-30.2-74.3-119.4-74.3h-28V50.3s-2.7-18.4-21.1-18.4h-85.8s-21.1 0-21.1 18.4v19.1h-28.1s-105 4.2-120.5 74.3h-29S8 142.5 8 181.1z\"},\"child\":[]}]})(props);\n};\nexport function FaPatreon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 194.8c0 101.3-82.4 183.8-183.8 183.8-101.7 0-184.4-82.4-184.4-183.8 0-101.6 82.7-184.3 184.4-184.3C429.6 10.5 512 93.2 512 194.8zM0 501.5h90v-491H0v491z\"},\"child\":[]}]})(props);\n};\nexport function FaPaypal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z\"},\"child\":[]}]})(props);\n};\nexport function FaPennyArcade (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M421.91 164.27c-4.49 19.45-1.4 6.06-15.1 65.29l39.73-10.61c-22.34-49.61-17.29-38.41-24.63-54.68zm-206.09 51.11c-20.19 5.4-11.31 3.03-39.63 10.58l4.46 46.19c28.17-7.59 20.62-5.57 34.82-9.34 42.3-9.79 32.85-56.42.35-47.43zm326.16-26.19l-45.47-99.2c-5.69-12.37-19.46-18.84-32.62-15.33-70.27 18.75-38.72 10.32-135.59 36.23a27.618 27.618 0 0 0-18.89 17.41C144.26 113.27 0 153.75 0 226.67c0 33.5 30.67 67.11 80.9 95.37l1.74 17.88a27.891 27.891 0 0 0-17.77 28.67l4.3 44.48c1.39 14.31 13.43 25.21 27.8 25.2 5.18-.01-3.01 1.78 122.53-31.76 12.57-3.37 21.12-15.02 20.58-28.02 216.59 45.5 401.99-5.98 399.89-84.83.01-28.15-22.19-66.56-97.99-104.47zM255.14 298.3l-21.91 5.88-48.44 12.91 2.46 23.55 20.53-5.51 4.51 44.51-115.31 30.78-4.3-44.52 20.02-5.35-11.11-114.64-20.12 5.39-4.35-44.5c178.15-47.54 170.18-46.42 186.22-46.65 56.66-1.13 64.15 71.84 42.55 104.43a86.7 86.7 0 0 1-50.75 33.72zm199.18 16.62l-3.89-39.49 14.9-3.98-6.61-14.68-57.76 15.42-4.1 17.54 19.2-5.12 4.05 39.54-112.85 30.07-4.46-44.43 20.99-5.59 33.08-126.47-17.15 4.56-4.2-44.48c93.36-24.99 65.01-17.41 135.59-36.24l66.67 145.47 20.79-5.56 4.3 44.48-108.55 28.96z\"},\"child\":[]}]})(props);\n};\nexport function FaPerbyte (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M305.314,284.578H246.6V383.3h58.711q24.423,0,38.193-13.77t13.77-36.11q0-21.826-14.032-35.335T305.314,284.578ZM149.435,128.7H90.724v98.723h58.711q24.42,0,38.19-13.773t13.77-36.107q0-21.826-14.029-35.338T149.435,128.7ZM366.647,32H81.353A81.445,81.445,0,0,0,0,113.352V398.647A81.445,81.445,0,0,0,81.353,480H366.647A81.445,81.445,0,0,0,448,398.647V113.352A81.445,81.445,0,0,0,366.647,32Zm63.635,366.647a63.706,63.706,0,0,1-63.635,63.635H81.353a63.706,63.706,0,0,1-63.635-63.635V113.352A63.706,63.706,0,0,1,81.353,49.718H366.647a63.706,63.706,0,0,1,63.635,63.634ZM305.314,128.7H246.6v98.723h58.711q24.423,0,38.193-13.773t13.77-36.107q0-21.826-14.032-35.338T305.314,128.7Z\"},\"child\":[]}]})(props);\n};\nexport function FaPeriscope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M370 63.6C331.4 22.6 280.5 0 226.6 0 111.9 0 18.5 96.2 18.5 214.4c0 75.1 57.8 159.8 82.7 192.7C137.8 455.5 192.6 512 226.6 512c41.6 0 112.9-94.2 120.9-105 24.6-33.1 82-118.3 82-192.6 0-56.5-21.1-110.1-59.5-150.8zM226.6 493.9c-42.5 0-190-167.3-190-279.4 0-107.4 83.9-196.3 190-196.3 100.8 0 184.7 89 184.7 196.3.1 112.1-147.4 279.4-184.7 279.4zM338 206.8c0 59.1-51.1 109.7-110.8 109.7-100.6 0-150.7-108.2-92.9-181.8v.4c0 24.5 20.1 44.4 44.8 44.4 24.7 0 44.8-19.9 44.8-44.4 0-18.2-11.1-33.8-26.9-40.7 76.6-19.2 141 39.3 141 112.4z\"},\"child\":[]}]})(props);\n};\nexport function FaPhabricator (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M323 262.1l-.1-13s21.7-19.8 21.1-21.2l-9.5-20c-.6-1.4-29.5-.5-29.5-.5l-9.4-9.3s.2-28.5-1.2-29.1l-20.1-9.2c-1.4-.6-20.7 21-20.7 21l-13.1-.2s-20.5-21.4-21.9-20.8l-20 8.3c-1.4.5.2 28.9.2 28.9l-9.1 9.1s-29.2-.9-29.7.4l-8.1 19.8c-.6 1.4 21 21 21 21l.1 12.9s-21.7 19.8-21.1 21.2l9.5 20c.6 1.4 29.5.5 29.5.5l9.4 9.3s-.2 31.8 1.2 32.3l20.1 8.3c1.4.6 20.7-23.5 20.7-23.5l13.1.2s20.5 23.8 21.8 23.3l20-7.5c1.4-.6-.2-32.1-.2-32.1l9.1-9.1s29.2.9 29.7-.5l8.1-19.8c.7-1.1-20.9-20.7-20.9-20.7zm-44.9-8.7c.7 17.1-12.8 31.6-30.1 32.4-17.3.8-32.1-12.5-32.8-29.6-.7-17.1 12.8-31.6 30.1-32.3 17.3-.8 32.1 12.5 32.8 29.5zm201.2-37.9l-97-97-.1.1c-75.1-73.3-195.4-72.8-269.8 1.6-50.9 51-27.8 27.9-95.7 95.3-22.3 22.3-22.3 58.7 0 81 69.9 69.4 46.4 46 97.4 97l.1-.1c75.1 73.3 195.4 72.9 269.8-1.6 51-50.9 27.9-27.9 95.3-95.3 22.3-22.3 22.3-58.7 0-81zM140.4 363.8c-59.6-59.5-59.6-156 0-215.5 59.5-59.6 156-59.5 215.6 0 59.5 59.5 59.6 156 0 215.6-59.6 59.5-156 59.4-215.6-.1z\"},\"child\":[]}]})(props);\n};\nexport function FaPhoenixFramework (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M212.9 344.3c3.8-.1 22.8-1.4 25.6-2.2-2.4-2.6-43.6-1-68-49.6-4.3-8.6-7.5-17.6-6.4-27.6 2.9-25.5 32.9-30 52-18.5 36 21.6 63.3 91.3 113.7 97.5 37 4.5 84.6-17 108.2-45.4-.6-.1-.8-.2-1-.1-.4.1-.8.2-1.1.3-33.3 12.1-94.3 9.7-134.7-14.8-37.6-22.8-53.1-58.7-51.8-74.6 1.8-21.3 22.9-23.2 35.9-19.6 14.4 3.9 24.4 17.6 38.9 27.4 15.6 10.4 32.9 13.7 51.3 10.3 14.9-2.7 34.4-12.3 36.5-14.5-1.1-.1-1.8-.1-2.5-.2-6.2-.6-12.4-.8-18.5-1.7C279.8 194.5 262.1 47.4 138.5 37.9 94.2 34.5 39.1 46 2.2 72.9c-.8.6-1.5 1.2-2.2 1.8.1.2.1.3.2.5.8 0 1.6-.1 2.4-.2 6.3-1 12.5-.8 18.7.3 23.8 4.3 47.7 23.1 55.9 76.5 5.3 34.3-.7 50.8 8 86.1 19 77.1 91 107.6 127.7 106.4zM75.3 64.9c-.9-1-.9-1.2-1.3-2 12.1-2.6 24.2-4.1 36.6-4.8-1.1 14.7-22.2 21.3-35.3 6.8zm196.9 350.5c-42.8 1.2-92-26.7-123.5-61.4-4.6-5-16.8-20.2-18.6-23.4l.4-.4c6.6 4.1 25.7 18.6 54.8 27 24.2 7 48.1 6.3 71.6-3.3 22.7-9.3 41-.5 43.1 2.9-18.5 3.8-20.1 4.4-24 7.9-5.1 4.4-4.6 11.7 7 17.2 26.2 12.4 63-2.8 97.2 25.4 2.4 2 8.1 7.8 10.1 10.7-.1.2-.3.3-.4.5-4.8-1.5-16.4-7.5-40.2-9.3-24.7-2-46.3 5.3-77.5 6.2zm174.8-252c16.4-5.2 41.3-13.4 66.5-3.3 16.1 6.5 26.2 18.7 32.1 34.6 3.5 9.4 5.1 19.7 5.1 28.7-.2 0-.4 0-.6.1-.2-.4-.4-.9-.5-1.3-5-22-29.9-43.8-67.6-29.9-50.2 18.6-130.4 9.7-176.9-48-.7-.9-2.4-1.7-1.3-3.2.1-.2 2.1.6 3 1.3 18.1 13.4 38.3 21.9 60.3 26.2 30.5 6.1 54.6 2.9 79.9-5.2zm102.7 117.5c-32.4.2-33.8 50.1-103.6 64.4-18.2 3.7-38.7 4.6-44.9 4.2v-.4c2.8-1.5 14.7-2.6 29.7-16.6 7.9-7.3 15.3-15.1 22.8-22.9 19.5-20.2 41.4-42.2 81.9-39 23.1 1.8 29.3 8.2 36.1 12.7.3.2.4.5.7.9-.5 0-.7.1-.9 0-7-2.7-14.3-3.3-21.8-3.3zm-12.3-24.1c-.1.2-.1.4-.2.6-28.9-4.4-48-7.9-68.5 4-17 9.9-31.4 20.5-62 24.4-27.1 3.4-45.1 2.4-66.1-8-.3-.2-.6-.4-1-.6 0-.2.1-.3.1-.5 24.9 3.8 36.4 5.1 55.5-5.8 22.3-12.9 40.1-26.6 71.3-31 29.6-4.1 51.3 2.5 70.9 16.9zM268.6 97.3c-.6-.6-1.1-1.2-2.1-2.3 7.6 0 29.7-1.2 53.4 8.4 19.7 8 32.2 21 50.2 32.9 11.1 7.3 23.4 9.3 36.4 8.1 4.3-.4 8.5-1.2 12.8-1.7.4-.1.9 0 1.5.3-.6.4-1.2.9-1.8 1.2-8.1 4-16.7 6.3-25.6 7.1-26.1 2.6-50.3-3.7-73.4-15.4-19.3-9.9-36.4-22.9-51.4-38.6zM640 335.7c-3.5 3.1-22.7 11.6-42.7 5.3-12.3-3.9-19.5-14.9-31.6-24.1-10-7.6-20.9-7.9-28.1-8.4.6-.8.9-1.2 1.2-1.4 14.8-9.2 30.5-12.2 47.3-6.5 12.5 4.2 19.2 13.5 30.4 24.2 10.8 10.4 21 9.9 23.1 10.5.1-.1.2 0 .4.4zm-212.5 137c2.2 1.2 1.6 1.5 1.5 2-18.5-1.4-33.9-7.6-46.8-22.2-21.8-24.7-41.7-27.9-48.6-29.7.5-.2.8-.4 1.1-.4 13.1.1 26.1.7 38.9 3.9 25.3 6.4 35 25.4 41.6 35.3 3.2 4.8 7.3 8.3 12.3 11.1z\"},\"child\":[]}]})(props);\n};\nexport function FaPhoenixSquadron (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 63.38C142.49 27.25 201.55 7.31 260.51 8.81c29.58-.38 59.11 5.37 86.91 15.33-24.13-4.63-49-6.34-73.38-2.45C231.17 27 191 48.84 162.21 80.87c5.67-1 10.78-3.67 16-5.86 18.14-7.87 37.49-13.26 57.23-14.83 19.74-2.13 39.64-.43 59.28 1.92-14.42 2.79-29.12 4.57-43 9.59-34.43 11.07-65.27 33.16-86.3 62.63-13.8 19.71-23.63 42.86-24.67 67.13-.35 16.49 5.22 34.81 19.83 44a53.27 53.27 0 0 0 37.52 6.74c15.45-2.46 30.07-8.64 43.6-16.33 11.52-6.82 22.67-14.55 32-24.25 3.79-3.22 2.53-8.45 2.62-12.79-2.12-.34-4.38-1.11-6.3.3a203 203 0 0 1-35.82 15.37c-20 6.17-42.16 8.46-62.1.78 12.79 1.73 26.06.31 37.74-5.44 20.23-9.72 36.81-25.2 54.44-38.77a526.57 526.57 0 0 1 88.9-55.31c25.71-12 52.94-22.78 81.57-24.12-15.63 13.72-32.15 26.52-46.78 41.38-14.51 14-27.46 29.5-40.11 45.18-3.52 4.6-8.95 6.94-13.58 10.16a150.7 150.7 0 0 0-51.89 60.1c-9.33 19.68-14.5 41.85-11.77 63.65 1.94 13.69 8.71 27.59 20.9 34.91 12.9 8 29.05 8.07 43.48 5.1 32.8-7.45 61.43-28.89 81-55.84 20.44-27.52 30.52-62.2 29.16-96.35-.52-7.5-1.57-15-1.66-22.49 8 19.48 14.82 39.71 16.65 60.83 2 14.28.75 28.76-1.62 42.9-1.91 11-5.67 21.51-7.78 32.43a165 165 0 0 0 39.34-81.07 183.64 183.64 0 0 0-14.21-104.64c20.78 32 32.34 69.58 35.71 107.48.49 12.73.49 25.51 0 38.23A243.21 243.21 0 0 1 482 371.34c-26.12 47.34-68 85.63-117.19 108-78.29 36.23-174.68 31.32-248-14.68A248.34 248.34 0 0 1 25.36 366 238.34 238.34 0 0 1 0 273.08v-31.34C3.93 172 40.87 105.82 96 63.38m222 80.33a79.13 79.13 0 0 0 16-4.48c5-1.77 9.24-5.94 10.32-11.22-8.96 4.99-17.98 9.92-26.32 15.7z\"},\"child\":[]}]})(props);\n};\nexport function FaPhp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 104.5c171.4 0 303.2 72.2 303.2 151.5S491.3 407.5 320 407.5c-171.4 0-303.2-72.2-303.2-151.5S148.7 104.5 320 104.5m0-16.8C143.3 87.7 0 163 0 256s143.3 168.3 320 168.3S640 349 640 256 496.7 87.7 320 87.7zM218.2 242.5c-7.9 40.5-35.8 36.3-70.1 36.3l13.7-70.6c38 0 63.8-4.1 56.4 34.3zM97.4 350.3h36.7l8.7-44.8c41.1 0 66.6 3 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7h-70.7L97.4 350.3zm185.7-213.6h36.5l-8.7 44.8c31.5 0 60.7-2.3 74.8 10.7 14.8 13.6 7.7 31-8.3 113.1h-37c15.4-79.4 18.3-86 12.7-92-5.4-5.8-17.7-4.6-47.4-4.6l-18.8 96.6h-36.5l32.7-168.6zM505 242.5c-8 41.1-36.7 36.3-70.1 36.3l13.7-70.6c38.2 0 63.8-4.1 56.4 34.3zM384.2 350.3H421l8.7-44.8c43.2 0 67.1 2.5 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7H417l-32.8 168.7z\"},\"child\":[]}]})(props);\n};\nexport function FaPiedPiperAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M244 246c-3.2-2-6.3-2.9-10.1-2.9-6.6 0-12.6 3.2-19.3 3.7l1.7 4.9zm135.9 197.9c-19 0-64.1 9.5-79.9 19.8l6.9 45.1c35.7 6.1 70.1 3.6 106-9.8-4.8-10-23.5-55.1-33-55.1zM340.8 177c6.6 2.8 11.5 9.2 22.7 22.1 2-1.4 7.5-5.2 7.5-8.6 0-4.9-11.8-13.2-13.2-23 11.2-5.7 25.2-6 37.6-8.9 68.1-16.4 116.3-52.9 146.8-116.7C548.3 29.3 554 16.1 554.6 2l-2 2.6c-28.4 50-33 63.2-81.3 100-31.9 24.4-69.2 40.2-106.6 54.6l-6.3-.3v-21.8c-19.6 1.6-19.7-14.6-31.6-23-18.7 20.6-31.6 40.8-58.9 51.1-12.7 4.8-19.6 10-25.9 21.8 34.9-16.4 91.2-13.5 98.8-10zM555.5 0l-.6 1.1-.3.9.6-.6zm-59.2 382.1c-33.9-56.9-75.3-118.4-150-115.5l-.3-6c-1.1-13.5 32.8 3.2 35.1-31l-14.4 7.2c-19.8-45.7-8.6-54.3-65.5-54.3-14.7 0-26.7 1.7-41.4 4.6 2.9 18.6 2.2 36.7-10.9 50.3l19.5 5.5c-1.7 3.2-2.9 6.3-2.9 9.8 0 21 42.8 2.9 42.8 33.6 0 18.4-36.8 60.1-54.9 60.1-8 0-53.7-50-53.4-60.1l.3-4.6 52.3-11.5c13-2.6 12.3-22.7-2.9-22.7-3.7 0-43.1 9.2-49.4 10.6-2-5.2-7.5-14.1-13.8-14.1-3.2 0-6.3 3.2-9.5 4-9.2 2.6-31 2.9-21.5 20.1L15.9 298.5c-5.5 1.1-8.9 6.3-8.9 11.8 0 6 5.5 10.9 11.5 10.9 8 0 131.3-28.4 147.4-32.2 2.6 3.2 4.6 6.3 7.8 8.6 20.1 14.4 59.8 85.9 76.4 85.9 24.1 0 58-22.4 71.3-41.9 3.2-4.3 6.9-7.5 12.4-6.9.6 13.8-31.6 34.2-33 43.7-1.4 10.2-1 35.2-.3 41.1 26.7 8.1 52-3.6 77.9-2.9 4.3-21 10.6-41.9 9.8-63.5l-.3-9.5c-1.4-34.2-10.9-38.5-34.8-58.6-1.1-1.1-2.6-2.6-3.7-4 2.2-1.4 1.1-1 4.6-1.7 88.5 0 56.3 183.6 111.5 229.9 33.1-15 72.5-27.9 103.5-47.2-29-25.6-52.6-45.7-72.7-79.9zm-196.2 46.1v27.2l11.8-3.4-2.9-23.8zm-68.7-150.4l24.1 61.2 21-13.8-31.3-50.9zm84.4 154.9l2 12.4c9-1.5 58.4-6.6 58.4-14.1 0-1.4-.6-3.2-.9-4.6-26.8 0-36.9 3.8-59.5 6.3z\"},\"child\":[]}]})(props);\n};\nexport function FaPiedPiperHat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M640 24.9c-80.8 53.6-89.4 92.5-96.4 104.4-6.7 12.2-11.7 60.3-23.3 83.6-11.7 23.6-54.2 42.2-66.1 50-11.7 7.8-28.3 38.1-41.9 64.2-108.1-4.4-167.4 38.8-259.2 93.6 29.4-9.7 43.3-16.7 43.3-16.7 94.2-36 139.3-68.3 281.1-49.2 1.1 0 1.9.6 2.8.8 3.9 2.2 5.3 6.9 3.1 10.8l-53.9 95.8c-2.5 4.7-7.8 7.2-13.1 6.1-126.8-23.8-226.9 17.3-318.9 18.6C24.1 488 0 453.4 0 451.8c0-1.1.6-1.7 1.7-1.7 0 0 38.3 0 103.1-15.3C178.4 294.5 244 245.4 315.4 245.4c0 0 71.7 0 90.6 61.9 22.8-39.7 28.3-49.2 28.3-49.2 5.3-9.4 35-77.2 86.4-141.4 51.5-64 90.4-79.9 119.3-91.8z\"},\"child\":[]}]})(props);\n};\nexport function FaPiedPiperPp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M205.3 174.6c0 21.1-14.2 38.1-31.7 38.1-7.1 0-12.8-1.2-17.2-3.7v-68c4.4-2.7 10.1-4.2 17.2-4.2 17.5 0 31.7 16.9 31.7 37.8zm52.6 67c-7.1 0-12.8 1.5-17.2 4.2v68c4.4 2.5 10.1 3.7 17.2 3.7 17.4 0 31.7-16.9 31.7-37.8 0-21.1-14.3-38.1-31.7-38.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM185 255.1c41 0 74.2-35.6 74.2-79.6 0-44-33.2-79.6-74.2-79.6-12 0-24.1 3.2-34.6 8.8h-45.7V311l51.8-10.1v-50.6c8.6 3.1 18.1 4.8 28.5 4.8zm158.4 25.3c0-44-33.2-79.6-73.9-79.6-3.2 0-6.4.2-9.6.7-3.7 12.5-10.1 23.8-19.2 33.4-13.8 15-32.2 23.8-51.8 24.8V416l51.8-10.1v-50.6c8.6 3.2 18.2 4.7 28.7 4.7 40.8 0 74-35.6 74-79.6z\"},\"child\":[]}]})(props);\n};\nexport function FaPiedPiperSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 419L0 479.2l.8-328C.8 85.3 54 32 120 32h327.2c-93 28.9-189.9 94.2-253.9 168.6C122.7 282 82.6 338 32 419M448 32S305.2 98.8 261.6 199.1c-23.2 53.6-28.9 118.1-71 158.6-28.9 27.8-69.8 38.2-105.3 56.3-23.2 12-66.4 40.5-84.9 66h328.4c66 0 119.3-53.3 119.3-119.2-.1 0-.1-328.8-.1-328.8z\"},\"child\":[]}]})(props);\n};\nexport function FaPiedPiper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M455.93,23.2C429.23,30,387.79,51.69,341.35,90.66A206,206,0,0,0,240,64C125.13,64,32,157.12,32,272s93.13,208,208,208,208-93.13,208-208a207.25,207.25,0,0,0-58.75-144.81,155.35,155.35,0,0,0-17,27.4A176.16,176.16,0,0,1,417.1,272c0,97.66-79.44,177.11-177.09,177.11a175.81,175.81,0,0,1-87.63-23.4c82.94-107.33,150.79-37.77,184.31-226.65,5.79-32.62,28-94.26,126.23-160.18C471,33.45,465.35,20.8,455.93,23.2ZM125,406.4A176.66,176.66,0,0,1,62.9,272C62.9,174.34,142.35,94.9,240,94.9a174,174,0,0,1,76.63,17.75C250.64,174.76,189.77,265.52,125,406.4Z\"},\"child\":[]}]})(props);\n};\nexport function FaPinterestP (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z\"},\"child\":[]}]})(props);\n};\nexport function FaPinterestSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 80v352c0 26.5-21.5 48-48 48H154.4c9.8-16.4 22.4-40 27.4-59.3 3-11.5 15.3-58.4 15.3-58.4 8 15.3 31.4 28.2 56.3 28.2 74.1 0 127.4-68.1 127.4-152.7 0-81.1-66.2-141.8-151.4-141.8-106 0-162.2 71.1-162.2 148.6 0 36 19.2 80.8 49.8 95.1 4.7 2.2 7.1 1.2 8.2-3.3.8-3.4 5-20.1 6.8-27.8.6-2.5.3-4.6-1.7-7-10.1-12.3-18.3-34.9-18.3-56 0-54.2 41-106.6 110.9-106.6 60.3 0 102.6 41.1 102.6 99.9 0 66.4-33.5 112.4-77.2 112.4-24.1 0-42.1-19.9-36.4-44.4 6.9-29.2 20.3-60.7 20.3-81.8 0-53-75.5-45.7-75.5 25 0 21.7 7.3 36.5 7.3 36.5-31.4 132.8-36.1 134.5-29.6 192.6l2.2.8H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaPinterest (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 256c0 137-111 248-248 248-25.6 0-50.2-3.9-73.4-11.1 10.1-16.5 25.2-43.5 30.8-65 3-11.6 15.4-59 15.4-59 8.1 15.4 31.7 28.5 56.8 28.5 74.8 0 128.7-68.8 128.7-154.3 0-81.9-66.9-143.2-152.9-143.2-107 0-163.9 71.8-163.9 150.1 0 36.4 19.4 81.7 50.3 96.1 4.7 2.2 7.2 1.2 8.3-3.3.8-3.4 5-20.3 6.9-28.1.6-2.5.3-4.7-1.7-7.1-10.1-12.5-18.3-35.3-18.3-56.6 0-54.7 41.4-107.6 112-107.6 60.9 0 103.6 41.5 103.6 100.9 0 67.1-33.9 113.6-78 113.6-24.3 0-42.6-20.1-36.7-44.8 7-29.5 20.5-61.3 20.5-82.6 0-19-10.2-34.9-31.4-34.9-24.9 0-44.9 25.7-44.9 60.2 0 22 7.4 36.8 7.4 36.8s-24.5 103.8-29 123.2c-5 21.4-3 51.6-.9 71.2C65.4 450.9 0 361.1 0 256 0 119 111 8 248 8s248 111 248 248z\"},\"child\":[]}]})(props);\n};\nexport function FaPlaystation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M570.9 372.3c-11.3 14.2-38.8 24.3-38.8 24.3L327 470.2v-54.3l150.9-53.8c17.1-6.1 19.8-14.8 5.8-19.4-13.9-4.6-39.1-3.3-56.2 2.9L327 381.1v-56.4c23.2-7.8 47.1-13.6 75.7-16.8 40.9-4.5 90.9.6 130.2 15.5 44.2 14 49.2 34.7 38 48.9zm-224.4-92.5v-139c0-16.3-3-31.3-18.3-35.6-11.7-3.8-19 7.1-19 23.4v347.9l-93.8-29.8V32c39.9 7.4 98 24.9 129.2 35.4C424.1 94.7 451 128.7 451 205.2c0 74.5-46 102.8-104.5 74.6zM43.2 410.2c-45.4-12.8-53-39.5-32.3-54.8 19.1-14.2 51.7-24.9 51.7-24.9l134.5-47.8v54.5l-96.8 34.6c-17.1 6.1-19.7 14.8-5.8 19.4 13.9 4.6 39.1 3.3 56.2-2.9l46.4-16.9v48.8c-51.6 9.3-101.4 7.3-153.9-10z\"},\"child\":[]}]})(props);\n};\nexport function FaProductHunt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M326.3 218.8c0 20.5-16.7 37.2-37.2 37.2h-70.3v-74.4h70.3c20.5 0 37.2 16.7 37.2 37.2zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-128.1-37.2c0-47.9-38.9-86.8-86.8-86.8H169.2v248h49.6v-74.4h70.3c47.9 0 86.8-38.9 86.8-86.8z\"},\"child\":[]}]})(props);\n};\nexport function FaPushed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 432 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M407 111.9l-98.5-9 14-33.4c10.4-23.5-10.8-40.4-28.7-37L22.5 76.9c-15.1 2.7-26 18.3-21.4 36.6l105.1 348.3c6.5 21.3 36.7 24.2 47.7 7l35.3-80.8 235.2-231.3c16.4-16.8 4.3-42.9-17.4-44.8zM297.6 53.6c5.1-.7 7.5 2.5 5.2 7.4L286 100.9 108.6 84.6l189-31zM22.7 107.9c-3.1-5.1 1-10 6.1-9.1l248.7 22.7-96.9 230.7L22.7 107.9zM136 456.4c-2.6 4-7.9 3.1-9.4-1.2L43.5 179.7l127.7 197.6c-7 15-35.2 79.1-35.2 79.1zm272.8-314.5L210.1 337.3l89.7-213.7 106.4 9.7c4 1.1 5.7 5.3 2.6 8.6z\"},\"child\":[]}]})(props);\n};\nexport function FaPython (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z\"},\"child\":[]}]})(props);\n};\nexport function FaQq (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M433.754 420.445c-11.526 1.393-44.86-52.741-44.86-52.741 0 31.345-16.136 72.247-51.051 101.786 16.842 5.192 54.843 19.167 45.803 34.421-7.316 12.343-125.51 7.881-159.632 4.037-34.122 3.844-152.316 8.306-159.632-4.037-9.045-15.25 28.918-29.214 45.783-34.415-34.92-29.539-51.059-70.445-51.059-101.792 0 0-33.334 54.134-44.859 52.741-5.37-.65-12.424-29.644 9.347-99.704 10.261-33.024 21.995-60.478 40.144-105.779C60.683 98.063 108.982.006 224 0c113.737.006 163.156 96.133 160.264 214.963 18.118 45.223 29.912 72.85 40.144 105.778 21.768 70.06 14.716 99.053 9.346 99.704z\"},\"child\":[]}]})(props);\n};\nexport function FaQuinscape (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.6 474.6h-1a158.1 158.1 0 0 1 0-316.2c94.9 0 168.2 83.1 157 176.6 4 5.1 8.2 9.6 11.2 15.3 13.4-30.3 20.3-62.4 20.3-97.7C501.1 117.5 391.6 8 256.5 8S12 117.5 12 252.6s109.5 244.6 244.5 244.6a237.36 237.36 0 0 0 70.4-10.1c-5.2-3.5-8.9-8.1-13.3-12.5zm-.1-.1l.4.1zm78.4-168.9a99.2 99.2 0 1 0 99.2 99.2 99.18 99.18 0 0 0-99.2-99.2z\"},\"child\":[]}]})(props);\n};\nexport function FaQuora (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.5 386.7h-29.3c-1.5 13.5-10.5 30.8-33 30.8-20.5 0-35.3-14.2-49.5-35.8 44.2-34.2 74.7-87.5 74.7-153C403.5 111.2 306.8 32 205 32 105.3 32 7.3 111.7 7.3 228.7c0 134.1 131.3 221.6 249 189C276 451.3 302 480 351.5 480c81.8 0 90.8-75.3 89-93.3zM297 329.2C277.5 300 253.3 277 205.5 277c-30.5 0-54.3 10-69 22.8l12.2 24.3c6.2-3 13-4 19.8-4 35.5 0 53.7 30.8 69.2 61.3-10 3-20.7 4.2-32.7 4.2-75 0-107.5-53-107.5-156.7C97.5 124.5 130 71 205 71c76.2 0 108.7 53.5 108.7 157.7.1 41.8-5.4 75.6-16.7 100.5z\"},\"child\":[]}]})(props);\n};\nexport function FaRProject (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 581 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z\"},\"child\":[]}]})(props);\n};\nexport function FaRaspberryPi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 407 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M372 232.5l-3.7-6.5c.1-46.4-21.4-65.3-46.5-79.7 7.6-2 15.4-3.6 17.6-13.2 13.1-3.3 15.8-9.4 17.1-15.8 3.4-2.3 14.8-8.7 13.6-19.7 6.4-4.4 10-10.1 8.1-18.1 6.9-7.5 8.7-13.7 5.8-19.4 8.3-10.3 4.6-15.6 1.1-20.9 6.2-11.2.7-23.2-16.6-21.2-6.9-10.1-21.9-7.8-24.2-7.8-2.6-3.2-6-6-16.5-4.7-6.8-6.1-14.4-5-22.3-2.1-9.3-7.3-15.5-1.4-22.6.8C271.6.6 269 5.5 263.5 7.6c-12.3-2.6-16.1 3-22 8.9l-6.9-.1c-18.6 10.8-27.8 32.8-31.1 44.1-3.3-11.3-12.5-33.3-31.1-44.1l-6.9.1c-5.9-5.9-9.7-11.5-22-8.9-5.6-2-8.1-7-19.4-3.4-4.6-1.4-8.9-4.4-13.9-4.3-2.6.1-5.5 1-8.7 3.5-7.9-3-15.5-4-22.3 2.1-10.5-1.3-14 1.4-16.5 4.7-2.3 0-17.3-2.3-24.2 7.8C21.2 16 15.8 28 22 39.2c-3.5 5.4-7.2 10.7 1.1 20.9-2.9 5.7-1.1 11.9 5.8 19.4-1.8 8 1.8 13.7 8.1 18.1-1.2 11 10.2 17.4 13.6 19.7 1.3 6.4 4 12.4 17.1 15.8 2.2 9.5 10 11.2 17.6 13.2-25.1 14.4-46.6 33.3-46.5 79.7l-3.7 6.5c-28.8 17.2-54.7 72.7-14.2 117.7 2.6 14.1 7.1 24.2 11 35.4 5.9 45.2 44.5 66.3 54.6 68.8 14.9 11.2 30.8 21.8 52.2 29.2C159 504.2 181 512 203 512h1c22.1 0 44-7.8 64.2-28.4 21.5-7.4 37.3-18 52.2-29.2 10.2-2.5 48.7-23.6 54.6-68.8 3.9-11.2 8.4-21.3 11-35.4 40.6-45.1 14.7-100.5-14-117.7zm-22.2-8c-1.5 18.7-98.9-65.1-82.1-67.9 45.7-7.5 83.6 19.2 82.1 67.9zm-43 93.1c-24.5 15.8-59.8 5.6-78.8-22.8s-14.6-64.2 9.9-80c24.5-15.8 59.8-5.6 78.8 22.8s14.6 64.2-9.9 80zM238.9 29.3c.8 4.2 1.8 6.8 2.9 7.6 5.4-5.8 9.8-11.7 16.8-17.3 0 3.3-1.7 6.8 2.5 9.4 3.7-5 8.8-9.5 15.5-13.3-3.2 5.6-.6 7.3 1.2 9.6 5.1-4.4 10-8.8 19.4-12.3-2.6 3.1-6.2 6.2-2.4 9.8 5.3-3.3 10.6-6.6 23.1-8.9-2.8 3.1-8.7 6.3-5.1 9.4 6.6-2.5 14-4.4 22.1-5.4-3.9 3.2-7.1 6.3-3.9 8.8 7.1-2.2 16.9-5.1 26.4-2.6l-6 6.1c-.7.8 14.1.6 23.9.8-3.6 5-7.2 9.7-9.3 18.2 1 1 5.8.4 10.4 0-4.7 9.9-12.8 12.3-14.7 16.6 2.9 2.2 6.8 1.6 11.2.1-3.4 6.9-10.4 11.7-16 17.3 1.4 1 3.9 1.6 9.7.9-5.2 5.5-11.4 10.5-18.8 15 1.3 1.5 5.8 1.5 10 1.6-6.7 6.5-15.3 9.9-23.4 14.2 4 2.7 6.9 2.1 10 2.1-5.7 4.7-15.4 7.1-24.4 10 1.7 2.7 3.4 3.4 7.1 4.1-9.5 5.3-23.2 2.9-27 5.6.9 2.7 3.6 4.4 6.7 5.8-15.4.9-57.3-.6-65.4-32.3 15.7-17.3 44.4-37.5 93.7-62.6-38.4 12.8-73 30-102 53.5-34.3-15.9-10.8-55.9 5.8-71.8zm-34.4 114.6c24.2-.3 54.1 17.8 54 34.7-.1 15-21 27.1-53.8 26.9-32.1-.4-53.7-15.2-53.6-29.8 0-11.9 26.2-32.5 53.4-31.8zm-123-12.8c3.7-.7 5.4-1.5 7.1-4.1-9-2.8-18.7-5.3-24.4-10 3.1 0 6 .7 10-2.1-8.1-4.3-16.7-7.7-23.4-14.2 4.2-.1 8.7 0 10-1.6-7.4-4.5-13.6-9.5-18.8-15 5.8.7 8.3.1 9.7-.9-5.6-5.6-12.7-10.4-16-17.3 4.3 1.5 8.3 2 11.2-.1-1.9-4.2-10-6.7-14.7-16.6 4.6.4 9.4 1 10.4 0-2.1-8.5-5.8-13.3-9.3-18.2 9.8-.1 24.6 0 23.9-.8l-6-6.1c9.5-2.5 19.3.4 26.4 2.6 3.2-2.5-.1-5.6-3.9-8.8 8.1 1.1 15.4 2.9 22.1 5.4 3.5-3.1-2.3-6.3-5.1-9.4 12.5 2.3 17.8 5.6 23.1 8.9 3.8-3.6.2-6.7-2.4-9.8 9.4 3.4 14.3 7.9 19.4 12.3 1.7-2.3 4.4-4 1.2-9.6 6.7 3.8 11.8 8.3 15.5 13.3 4.1-2.6 2.5-6.2 2.5-9.4 7 5.6 11.4 11.5 16.8 17.3 1.1-.8 2-3.4 2.9-7.6 16.6 15.9 40.1 55.9 6 71.8-29-23.5-63.6-40.7-102-53.5 49.3 25 78 45.3 93.7 62.6-8 31.8-50 33.2-65.4 32.3 3.1-1.4 5.8-3.2 6.7-5.8-4-2.8-17.6-.4-27.2-5.6zm60.1 24.1c16.8 2.8-80.6 86.5-82.1 67.9-1.5-48.7 36.5-75.5 82.1-67.9zM38.2 342c-23.7-18.8-31.3-73.7 12.6-98.3 26.5-7 9 107.8-12.6 98.3zm91 98.2c-13.3 7.9-45.8 4.7-68.8-27.9-15.5-27.4-13.5-55.2-2.6-63.4 16.3-9.8 41.5 3.4 60.9 25.6 16.9 20 24.6 55.3 10.5 65.7zm-26.4-119.7c-24.5-15.8-28.9-51.6-9.9-80s54.3-38.6 78.8-22.8 28.9 51.6 9.9 80c-19.1 28.4-54.4 38.6-78.8 22.8zM205 496c-29.4 1.2-58.2-23.7-57.8-32.3-.4-12.7 35.8-22.6 59.3-22 23.7-1 55.6 7.5 55.7 18.9.5 11-28.8 35.9-57.2 35.4zm58.9-124.9c.2 29.7-26.2 53.8-58.8 54-32.6.2-59.2-23.8-59.4-53.4v-.6c-.2-29.7 26.2-53.8 58.8-54 32.6-.2 59.2 23.8 59.4 53.4v.6zm82.2 42.7c-25.3 34.6-59.6 35.9-72.3 26.3-13.3-12.4-3.2-50.9 15.1-72 20.9-23.3 43.3-38.5 58.9-26.6 10.5 10.3 16.7 49.1-1.7 72.3zm22.9-73.2c-21.5 9.4-39-105.3-12.6-98.3 43.9 24.7 36.3 79.6 12.6 98.3z\"},\"child\":[]}]})(props);\n};\nexport function FaRavelry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M498.252,234.223c-1.208-10.34-1.7-20.826-3.746-31a310.306,310.306,0,0,0-9.622-36.6,184.068,184.068,0,0,0-30.874-57.5,251.154,251.154,0,0,0-18.818-21.689,237.362,237.362,0,0,0-47.113-36.116A240.8,240.8,0,0,0,331.356,26.65c-11.018-3.1-22.272-5.431-33.515-7.615-6.78-1.314-13.749-1.667-20.627-2.482-.316-.036-.6-.358-.9-.553q-16.143.009-32.288.006c-2.41.389-4.808.925-7.236,1.15a179.331,179.331,0,0,0-34.256,7.1,221.5,221.5,0,0,0-39.768,16.355,281.385,281.385,0,0,0-38.08,24.158c-6.167,4.61-12.268,9.36-17.974,14.518C96.539,88.494,86.34,97.72,76.785,107.555a243.878,243.878,0,0,0-33.648,43.95,206.488,206.488,0,0,0-20.494,44.6,198.2,198.2,0,0,0-7.691,34.759A201.13,201.13,0,0,0,13.4,266.385a299.716,299.716,0,0,0,4.425,40.24,226.865,226.865,0,0,0,16.73,53.3,210.543,210.543,0,0,0,24,39.528,213.589,213.589,0,0,0,26.358,28.416A251.313,251.313,0,0,0,126.7,458.455a287.831,287.831,0,0,0,55.9,25.277,269.5,269.5,0,0,0,40.641,9.835c6.071,1.01,12.275,1.253,18.412,1.873a4.149,4.149,0,0,1,1.19.56h32.289c2.507-.389,5-.937,7.527-1.143,16.336-1.332,32.107-5.335,47.489-10.717A219.992,219.992,0,0,0,379.1,460.322c9.749-6.447,19.395-13.077,28.737-20.1,5.785-4.348,10.988-9.5,16.3-14.457,3.964-3.7,7.764-7.578,11.51-11.5a232.162,232.162,0,0,0,31.427-41.639c9.542-16.045,17.355-32.905,22.3-50.926,2.859-10.413,4.947-21.045,7.017-31.652,1.032-5.279,1.251-10.723,1.87-16.087.036-.317.358-.6.552-.9V236.005A9.757,9.757,0,0,1,498.252,234.223Zm-161.117-1.15s-16.572-2.98-28.47-2.98c-27.2,0-33.57,14.9-33.57,37.04V360.8H201.582V170.062H275.1v31.931c8.924-26.822,26.771-36.189,62.04-36.189Z\"},\"child\":[]}]})(props);\n};\nexport function FaReact (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M418.2 177.2c-5.4-1.8-10.8-3.5-16.2-5.1.9-3.7 1.7-7.4 2.5-11.1 12.3-59.6 4.2-107.5-23.1-123.3-26.3-15.1-69.2.6-112.6 38.4-4.3 3.7-8.5 7.6-12.5 11.5-2.7-2.6-5.5-5.2-8.3-7.7-45.5-40.4-91.1-57.4-118.4-41.5-26.2 15.2-34 60.3-23 116.7 1.1 5.6 2.3 11.1 3.7 16.7-6.4 1.8-12.7 3.8-18.6 5.9C38.3 196.2 0 225.4 0 255.6c0 31.2 40.8 62.5 96.3 81.5 4.5 1.5 9 3 13.6 4.3-1.5 6-2.8 11.9-4 18-10.5 55.5-2.3 99.5 23.9 114.6 27 15.6 72.4-.4 116.6-39.1 3.5-3.1 7-6.3 10.5-9.7 4.4 4.3 9 8.4 13.6 12.4 42.8 36.8 85.1 51.7 111.2 36.6 27-15.6 35.8-62.9 24.4-120.5-.9-4.4-1.9-8.9-3-13.5 3.2-.9 6.3-1.9 9.4-2.9 57.7-19.1 99.5-50 99.5-81.7 0-30.3-39.4-59.7-93.8-78.4zM282.9 92.3c37.2-32.4 71.9-45.1 87.7-36 16.9 9.7 23.4 48.9 12.8 100.4-.7 3.4-1.4 6.7-2.3 10-22.2-5-44.7-8.6-67.3-10.6-13-18.6-27.2-36.4-42.6-53.1 3.9-3.7 7.7-7.2 11.7-10.7zM167.2 307.5c5.1 8.7 10.3 17.4 15.8 25.9-15.6-1.7-31.1-4.2-46.4-7.5 4.4-14.4 9.9-29.3 16.3-44.5 4.6 8.8 9.3 17.5 14.3 26.1zm-30.3-120.3c14.4-3.2 29.7-5.8 45.6-7.8-5.3 8.3-10.5 16.8-15.4 25.4-4.9 8.5-9.7 17.2-14.2 26-6.3-14.9-11.6-29.5-16-43.6zm27.4 68.9c6.6-13.8 13.8-27.3 21.4-40.6s15.8-26.2 24.4-38.9c15-1.1 30.3-1.7 45.9-1.7s31 .6 45.9 1.7c8.5 12.6 16.6 25.5 24.3 38.7s14.9 26.7 21.7 40.4c-6.7 13.8-13.9 27.4-21.6 40.8-7.6 13.3-15.7 26.2-24.2 39-14.9 1.1-30.4 1.6-46.1 1.6s-30.9-.5-45.6-1.4c-8.7-12.7-16.9-25.7-24.6-39s-14.8-26.8-21.5-40.6zm180.6 51.2c5.1-8.8 9.9-17.7 14.6-26.7 6.4 14.5 12 29.2 16.9 44.3-15.5 3.5-31.2 6.2-47 8 5.4-8.4 10.5-17 15.5-25.6zm14.4-76.5c-4.7-8.8-9.5-17.6-14.5-26.2-4.9-8.5-10-16.9-15.3-25.2 16.1 2 31.5 4.7 45.9 8-4.6 14.8-10 29.2-16.1 43.4zM256.2 118.3c10.5 11.4 20.4 23.4 29.6 35.8-19.8-.9-39.7-.9-59.5 0 9.8-12.9 19.9-24.9 29.9-35.8zM140.2 57c16.8-9.8 54.1 4.2 93.4 39 2.5 2.2 5 4.6 7.6 7-15.5 16.7-29.8 34.5-42.9 53.1-22.6 2-45 5.5-67.2 10.4-1.3-5.1-2.4-10.3-3.5-15.5-9.4-48.4-3.2-84.9 12.6-94zm-24.5 263.6c-4.2-1.2-8.3-2.5-12.4-3.9-21.3-6.7-45.5-17.3-63-31.2-10.1-7-16.9-17.8-18.8-29.9 0-18.3 31.6-41.7 77.2-57.6 5.7-2 11.5-3.8 17.3-5.5 6.8 21.7 15 43 24.5 63.6-9.6 20.9-17.9 42.5-24.8 64.5zm116.6 98c-16.5 15.1-35.6 27.1-56.4 35.3-11.1 5.3-23.9 5.8-35.3 1.3-15.9-9.2-22.5-44.5-13.5-92 1.1-5.6 2.3-11.2 3.7-16.7 22.4 4.8 45 8.1 67.9 9.8 13.2 18.7 27.7 36.6 43.2 53.4-3.2 3.1-6.4 6.1-9.6 8.9zm24.5-24.3c-10.2-11-20.4-23.2-30.3-36.3 9.6.4 19.5.6 29.5.6 10.3 0 20.4-.2 30.4-.7-9.2 12.7-19.1 24.8-29.6 36.4zm130.7 30c-.9 12.2-6.9 23.6-16.5 31.3-15.9 9.2-49.8-2.8-86.4-34.2-4.2-3.6-8.4-7.5-12.7-11.5 15.3-16.9 29.4-34.8 42.2-53.6 22.9-1.9 45.7-5.4 68.2-10.5 1 4.1 1.9 8.2 2.7 12.2 4.9 21.6 5.7 44.1 2.5 66.3zm18.2-107.5c-2.8.9-5.6 1.8-8.5 2.6-7-21.8-15.6-43.1-25.5-63.8 9.6-20.4 17.7-41.4 24.5-62.9 5.2 1.5 10.2 3.1 15 4.7 46.6 16 79.3 39.8 79.3 58 0 19.6-34.9 44.9-84.8 61.4zm-149.7-15c25.3 0 45.8-20.5 45.8-45.8s-20.5-45.8-45.8-45.8c-25.3 0-45.8 20.5-45.8 45.8s20.5 45.8 45.8 45.8z\"},\"child\":[]}]})(props);\n};\nexport function FaReacteurope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M250.6 211.74l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm63.7 0l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.2-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm-91.3 50.5h-3.4c-4.8 0-3.8 4-3.8 12.1 0 4.7-2.3 6.1-5.8 6.1s-5.8-1.4-5.8-6.1v-36.6c0-4.7 2.3-6.1 5.8-6.1s5.8 1.4 5.8 6.1c0 7.2-.7 10.5 3.8 10.5h3.4c4.7-.1 3.8-3.9 3.8-12.3 0-9.9-6.7-14.1-16.8-14.1h-.2c-10.1 0-16.8 4.2-16.8 14.1V276c0 10.4 6.7 14.1 16.8 14.1h.2c10.1 0 16.8-3.8 16.8-14.1 0-9.86 1.1-13.76-3.8-13.76zm-80.7 17.4h-14.7v-19.3H139c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-11.4v-18.3H142c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-21.7c-2.4-.1-3.7 1.3-3.7 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h21.9c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8zm-42-18.5c4.6-2 7.3-6 7.3-12.4v-11.9c0-10.1-6.7-14.1-16.8-14.1H77.4c-2.5 0-3.8 1.3-3.8 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5 0 3.8-1.3 3.8-3.8v-22.9h5.6l7.4 23.5a4.1 4.1 0 0 0 4.3 3.2h3.3c2.8 0 4-1.8 3.2-4.4zm-3.8-14c0 4.8-2.5 6.1-6.1 6.1h-5.8v-20.9h5.8c3.6 0 6.1 1.3 6.1 6.1zM176 226a3.82 3.82 0 0 0-4.2-3.4h-6.9a3.68 3.68 0 0 0-4 3.4l-11 59.2c-.5 2.7.9 4.1 3.4 4.1h3a3.74 3.74 0 0 0 4.1-3.5l1.8-11.3h12.2l1.8 11.3a3.74 3.74 0 0 0 4.1 3.5h3.5c2.6 0 3.9-1.4 3.4-4.1zm-12.3 39.3l4.7-29.7 4.7 29.7zm89.3 20.2v-53.2h7.5c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-25.8c-2.5 0-3.8 1.3-3.8 3.8v2.1c0 2.5 1.3 3.8 3.8 3.8h7.3v53.2c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5.04 3.8-1.3 3.8-3.76zm248-.8h-19.4V258h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9H501a1.81 1.81 0 0 0 2-1.9v-.8a1.84 1.84 0 0 0-2-1.96zm-93.1-62.9h-.8c-10.1 0-15.3 4.7-15.3 14.1V276c0 9.3 5.2 14.1 15.3 14.1h.8c10.1 0 15.3-4.8 15.3-14.1v-40.1c0-9.36-5.2-14.06-15.3-14.06zm10.2 52.4c-.1 8-3 11.1-10.5 11.1s-10.5-3.1-10.5-11.1v-36.6c0-7.9 3-11.1 10.5-11.1s10.5 3.2 10.5 11.1zm-46.5-14.5c6.1-1.6 9.2-6.1 9.2-13.3v-9.7c0-9.4-5.2-14.1-15.3-14.1h-13.7a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.9h11.6l10.4 27.2a2.32 2.32 0 0 0 2.3 1.5h1.5c1.4 0 2-1 1.5-2.3zm-6.4-3.9H355v-28.5h10.2c7.5 0 10.5 3.1 10.5 11.1v6.4c0 7.84-3 11.04-10.5 11.04zm85.9-33.1h-13.7a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.1h10.6c10.1 0 15.3-4.8 15.3-14.1v-10.5c0-9.4-5.2-14.1-15.3-14.1zm10.2 22.8c0 7.9-3 11.1-10.5 11.1h-10.2v-29.2h10.2c7.5-.1 10.5 3.1 10.5 11zM259.5 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm227.6-136.1a364.42 364.42 0 0 0-35.6-11.3c19.6-78 11.6-134.7-22.3-153.9C394.7-12.66 343.3 11 291 61.94q5.1 4.95 10.2 10.2c82.5-80 119.6-53.5 120.9-52.8 22.4 12.7 36 55.8 15.5 137.8a587.83 587.83 0 0 0-84.6-13C281.1 43.64 212.4 2 170.8 2 140 2 127 23 123.2 29.74c-18.1 32-13.3 84.2.1 133.8-70.5 20.3-120.7 54.1-120.3 95 .5 59.6 103.2 87.8 122.1 92.8-20.5 81.9-10.1 135.6 22.3 153.9 28 15.8 75.1 6 138.2-55.2q-5.1-4.95-10.2-10.2c-82.5 80-119.7 53.5-120.9 52.8-22.3-12.6-36-55.6-15.5-137.9 12.4 2.9 41.8 9.5 84.6 13 71.9 100.4 140.6 142 182.1 142 30.8 0 43.8-21 47.6-27.7 18-31.9 13.3-84.1-.1-133.8 152.3-43.8 156.2-130.2 33.9-176.3zM135.9 36.84c2.9-5.1 11.9-20.3 34.9-20.3 36.8 0 98.8 39.6 163.3 126.2a714 714 0 0 0-93.9.9 547.76 547.76 0 0 1 42.2-52.4Q277.3 86 272.2 81a598.25 598.25 0 0 0-50.7 64.2 569.69 569.69 0 0 0-84.4 14.6c-.2-1.4-24.3-82.2-1.2-123zm304.8 438.3c-2.9 5.1-11.8 20.3-34.9 20.3-36.7 0-98.7-39.4-163.3-126.2a695.38 695.38 0 0 0 93.9-.9 547.76 547.76 0 0 1-42.2 52.4q5.1 5.25 10.2 10.2a588.47 588.47 0 0 0 50.7-64.2c47.3-4.7 80.3-13.5 84.4-14.6 22.7 84.4 4.5 117 1.2 123zm9.1-138.6c-3.6-11.9-7.7-24.1-12.4-36.4a12.67 12.67 0 0 1-10.7-5.7l-.1.1a19.61 19.61 0 0 1-5.4 3.6c5.7 14.3 10.6 28.4 14.7 42.2a535.3 535.3 0 0 1-72 13c3.5-5.3 17.2-26.2 32.2-54.2a24.6 24.6 0 0 1-6-3.2c-1.1 1.2-3.6 4.2-10.9 4.2-6.2 11.2-17.4 30.9-33.9 55.2a711.91 711.91 0 0 1-112.4 1c-7.9-11.2-21.5-31.1-36.8-57.8a21 21 0 0 1-3-1.5c-1.9 1.6-3.9 3.2-12.6 3.2 6.3 11.2 17.5 30.7 33.8 54.6a548.81 548.81 0 0 1-72.2-11.7q5.85-21 14.1-42.9c-3.2 0-5.4.2-8.4-1a17.58 17.58 0 0 1-6.9 1c-4.9 13.4-9.1 26.5-12.7 39.4C-31.7 297-12.1 216 126.7 175.64c3.6 11.9 7.7 24.1 12.4 36.4 10.4 0 12.9 3.4 14.4 5.3a12 12 0 0 1 2.3-2.2c-5.8-14.7-10.9-29.2-15.2-43.3 7-1.8 32.4-8.4 72-13-15.9 24.3-26.7 43.9-32.8 55.3a14.22 14.22 0 0 1 6.4 8 23.42 23.42 0 0 1 10.2-8.4c6.5-11.7 17.9-31.9 34.8-56.9a711.72 711.72 0 0 1 112.4-1c31.5 44.6 28.9 48.1 42.5 64.5a21.42 21.42 0 0 1 10.4-7.4c-6.4-11.4-17.6-31-34.3-55.5 40.4 4.1 65 10 72.2 11.7-4 14.4-8.9 29.2-14.6 44.2a20.74 20.74 0 0 1 6.8 4.3l.1.1a12.72 12.72 0 0 1 8.9-5.6c4.9-13.4 9.2-26.6 12.8-39.5a359.71 359.71 0 0 1 34.5 11c106.1 39.9 74 87.9 72.6 90.4-19.8 35.1-80.1 55.2-105.7 62.5zm-114.4-114h-1.2a1.74 1.74 0 0 0-1.9 1.9v49.8c0 7.9-2.6 11.1-10.1 11.1s-10.1-3.1-10.1-11.1v-49.8a1.69 1.69 0 0 0-1.9-1.9H309a1.81 1.81 0 0 0-2 1.9v51.5c0 9.6 5 14.1 15.1 14.1h.4c10.1 0 15.1-4.6 15.1-14.1v-51.5a2 2 0 0 0-2.2-1.9zM321.7 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm-31.1 7.4l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm5.1-30.8h-19.4v-26.7h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h22.5a1.77 1.77 0 0 0 2-1.9v-.8a1.83 1.83 0 0 0-2-2.06zm-7.4-99.4L286 192l-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1z\"},\"child\":[]}]})(props);\n};\nexport function FaReadme (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528.3 46.5H388.5c-48.1 0-89.9 33.3-100.4 80.3-10.6-47-52.3-80.3-100.4-80.3H48c-26.5 0-48 21.5-48 48v245.8c0 26.5 21.5 48 48 48h89.7c102.2 0 132.7 24.4 147.3 75 .7 2.8 5.2 2.8 6 0 14.7-50.6 45.2-75 147.3-75H528c26.5 0 48-21.5 48-48V94.6c0-26.4-21.3-47.9-47.7-48.1zM242 311.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5V289c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V251zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm259.3 121.7c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5V228c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.8c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V190z\"},\"child\":[]}]})(props);\n};\nexport function FaRebel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256.5 504C117.2 504 9 387.8 13.2 249.9 16 170.7 56.4 97.7 129.7 49.5c.3 0 1.9-.6 1.1.8-5.8 5.5-111.3 129.8-14.1 226.4 49.8 49.5 90 2.5 90 2.5 38.5-50.1-.6-125.9-.6-125.9-10-24.9-45.7-40.1-45.7-40.1l28.8-31.8c24.4 10.5 43.2 38.7 43.2 38.7.8-29.6-21.9-61.4-21.9-61.4L255.1 8l44.3 50.1c-20.5 28.8-21.9 62.6-21.9 62.6 13.8-23 43.5-39.3 43.5-39.3l28.5 31.8c-27.4 8.9-45.4 39.9-45.4 39.9-15.8 28.5-27.1 89.4.6 127.3 32.4 44.6 87.7-2.8 87.7-2.8 102.7-91.9-10.5-225-10.5-225-6.1-5.5.8-2.8.8-2.8 50.1 36.5 114.6 84.4 116.2 204.8C500.9 400.2 399 504 256.5 504z\"},\"child\":[]}]})(props);\n};\nexport function FaRedRiver (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M353.2 32H94.8C42.4 32 0 74.4 0 126.8v258.4C0 437.6 42.4 480 94.8 480h258.4c52.4 0 94.8-42.4 94.8-94.8V126.8c0-52.4-42.4-94.8-94.8-94.8zM144.9 200.9v56.3c0 27-21.9 48.9-48.9 48.9V151.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9h-56.3c-12.3-.6-24.6 11.6-24 24zm176.3 72h-56.3c-12.3-.6-24.6 11.6-24 24v56.3c0 27-21.9 48.9-48.9 48.9V247.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9z\"},\"child\":[]}]})(props);\n};\nexport function FaRedditAlien (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z\"},\"child\":[]}]})(props);\n};\nexport function FaRedditSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M283.2 345.5c2.7 2.7 2.7 6.8 0 9.2-24.5 24.5-93.8 24.6-118.4 0-2.7-2.4-2.7-6.5 0-9.2 2.4-2.4 6.5-2.4 8.9 0 18.7 19.2 81 19.6 100.5 0 2.4-2.3 6.6-2.3 9 0zm-91.3-53.8c0-14.9-11.9-26.8-26.5-26.8-14.9 0-26.8 11.9-26.8 26.8 0 14.6 11.9 26.5 26.8 26.5 14.6 0 26.5-11.9 26.5-26.5zm90.7-26.8c-14.6 0-26.5 11.9-26.5 26.8 0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-11.9 26.8-26.5 0-14.9-11.9-26.8-26.8-26.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-99.7 140.6c-10.1 0-19 4.2-25.6 10.7-24.1-16.7-56.5-27.4-92.5-28.6l18.7-84.2 59.5 13.4c0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-12.2 26.8-26.8 0-14.6-11.9-26.8-26.8-26.8-10.4 0-19.3 6.2-23.8 14.9l-65.7-14.6c-3.3-.9-6.5 1.5-7.4 4.8l-20.5 92.8c-35.7 1.5-67.8 12.2-91.9 28.9-6.5-6.8-15.8-11-25.9-11-37.5 0-49.8 50.4-15.5 67.5-1.2 5.4-1.8 11-1.8 16.7 0 56.5 63.7 102.3 141.9 102.3 78.5 0 142.2-45.8 142.2-102.3 0-5.7-.6-11.6-2.1-17 33.6-17.2 21.2-67.2-16.1-67.2z\"},\"child\":[]}]})(props);\n};\nexport function FaReddit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M201.5 305.5c-13.8 0-24.9-11.1-24.9-24.6 0-13.8 11.1-24.9 24.9-24.9 13.6 0 24.6 11.1 24.6 24.9 0 13.6-11.1 24.6-24.6 24.6zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-132.3-41.2c-9.4 0-17.7 3.9-23.8 10-22.4-15.5-52.6-25.5-86.1-26.6l17.4-78.3 55.4 12.5c0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.3 24.9-24.9s-11.1-24.9-24.9-24.9c-9.7 0-18 5.8-22.1 13.8l-61.2-13.6c-3-.8-6.1 1.4-6.9 4.4l-19.1 86.4c-33.2 1.4-63.1 11.3-85.5 26.8-6.1-6.4-14.7-10.2-24.1-10.2-34.9 0-46.3 46.9-14.4 62.8-1.1 5-1.7 10.2-1.7 15.5 0 52.6 59.2 95.2 132 95.2 73.1 0 132.3-42.6 132.3-95.2 0-5.3-.6-10.8-1.9-15.8 31.3-16 19.8-62.5-14.9-62.5zM302.8 331c-18.2 18.2-76.1 17.9-93.6 0-2.2-2.2-6.1-2.2-8.3 0-2.5 2.5-2.5 6.4 0 8.6 22.8 22.8 87.3 22.8 110.2 0 2.5-2.2 2.5-6.1 0-8.6-2.2-2.2-6.1-2.2-8.3 0zm7.7-75c-13.6 0-24.6 11.1-24.6 24.9 0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.1 24.9-24.6 0-13.8-11-24.9-24.9-24.9z\"},\"child\":[]}]})(props);\n};\nexport function FaRedhat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M341.52 285.56c33.65 0 82.34-6.94 82.34-47 .22-6.74.86-1.82-20.88-96.24-4.62-19.15-8.68-27.84-42.31-44.65-26.09-13.34-82.92-35.37-99.73-35.37-15.66 0-20.2 20.17-38.87 20.17-18 0-31.31-15.06-48.12-15.06-16.14 0-26.66 11-34.78 33.62-27.5 77.55-26.28 74.27-26.12 78.27 0 24.8 97.64 106.11 228.47 106.11M429 254.84c4.65 22 4.65 24.35 4.65 27.25 0 37.66-42.33 58.56-98 58.56-125.74.08-235.91-73.65-235.91-122.33a49.55 49.55 0 0 1 4.06-19.72C58.56 200.86 0 208.93 0 260.63c0 84.67 200.63 189 359.49 189 121.79 0 152.51-55.08 152.51-98.58 0-34.21-29.59-73.05-82.93-96.24\"},\"child\":[]}]})(props);\n};\nexport function FaRenren (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M214 169.1c0 110.4-61 205.4-147.6 247.4C30 373.2 8 317.7 8 256.6 8 133.9 97.1 32.2 214 12.5v156.6zM255 504c-42.9 0-83.3-11-118.5-30.4C193.7 437.5 239.9 382.9 255 319c15.5 63.9 61.7 118.5 118.8 154.7C338.7 493 298.3 504 255 504zm190.6-87.5C359 374.5 298 279.6 298 169.1V12.5c116.9 19.7 206 121.4 206 244.1 0 61.1-22 116.6-58.4 159.9z\"},\"child\":[]}]})(props);\n};\nexport function FaReplyd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 480H128C57.6 480 0 422.4 0 352V160C0 89.6 57.6 32 128 32h192c70.4 0 128 57.6 128 128v192c0 70.4-57.6 128-128 128zM193.4 273.2c-6.1-2-11.6-3.1-16.4-3.1-7.2 0-13.5 1.9-18.9 5.6-5.4 3.7-9.6 9-12.8 15.8h-1.1l-4.2-18.3h-28v138.9h36.1v-89.7c1.5-5.4 4.4-9.8 8.7-13.2 4.3-3.4 9.8-5.1 16.2-5.1 4.6 0 9.8 1 15.6 3.1l4.8-34zm115.2 103.4c-3.2 2.4-7.7 4.8-13.7 7.1-6 2.3-12.8 3.5-20.4 3.5-12.2 0-21.1-3-26.5-8.9-5.5-5.9-8.5-14.7-9-26.4h83.3c.9-4.8 1.6-9.4 2.1-13.9.5-4.4.7-8.6.7-12.5 0-10.7-1.6-19.7-4.7-26.9-3.2-7.2-7.3-13-12.5-17.2-5.2-4.3-11.1-7.3-17.8-9.2-6.7-1.8-13.5-2.8-20.6-2.8-21.1 0-37.5 6.1-49.2 18.3s-17.5 30.5-17.5 55c0 22.8 5.2 40.7 15.6 53.7 10.4 13.1 26.8 19.6 49.2 19.6 10.7 0 20.9-1.5 30.4-4.6 9.5-3.1 17.1-6.8 22.6-11.2l-12-23.6zm-21.8-70.3c3.8 5.4 5.3 13.1 4.6 23.1h-51.7c.9-9.4 3.7-17 8.2-22.6 4.5-5.6 11.5-8.5 21-8.5 8.2-.1 14.1 2.6 17.9 8zm79.9 2.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4s2 11.7 6.1 15.6zm0 100.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4 0 6.6 2 11.7 6.1 15.6z\"},\"child\":[]}]})(props);\n};\nexport function FaResearchgate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32v448h448V32H0zm262.2 334.4c-6.6 3-33.2 6-50-14.2-9.2-10.6-25.3-33.3-42.2-63.6-8.9 0-14.7 0-21.4-.6v46.4c0 23.5 6 21.2 25.8 23.9v8.1c-6.9-.3-23.1-.8-35.6-.8-13.1 0-26.1.6-33.6.8v-8.1c15.5-2.9 22-1.3 22-23.9V225c0-22.6-6.4-21-22-23.9V193c25.8 1 53.1-.6 70.9-.6 31.7 0 55.9 14.4 55.9 45.6 0 21.1-16.7 42.2-39.2 47.5 13.6 24.2 30 45.6 42.2 58.9 7.2 7.8 17.2 14.7 27.2 14.7v7.3zm22.9-135c-23.3 0-32.2-15.7-32.2-32.2V167c0-12.2 8.8-30.4 34-30.4s30.4 17.9 30.4 17.9l-10.7 7.2s-5.5-12.5-19.7-12.5c-7.9 0-19.7 7.3-19.7 19.7v26.8c0 13.4 6.6 23.3 17.9 23.3 14.1 0 21.5-10.9 21.5-26.8h-17.9v-10.7h30.4c0 20.5 4.7 49.9-34 49.9zm-116.5 44.7c-9.4 0-13.6-.3-20-.8v-69.7c6.4-.6 15-.6 22.5-.6 23.3 0 37.2 12.2 37.2 34.5 0 21.9-15 36.6-39.7 36.6z\"},\"child\":[]}]})(props);\n};\nexport function FaResolving (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M281.2 278.2c46-13.3 49.6-23.5 44-43.4L314 195.5c-6.1-20.9-18.4-28.1-71.1-12.8L54.7 236.8l28.6 98.6 197.9-57.2zM248.5 8C131.4 8 33.2 88.7 7.2 197.5l221.9-63.9c34.8-10.2 54.2-11.7 79.3-8.2 36.3 6.1 52.7 25 61.4 55.2l10.7 37.8c8.2 28.1 1 50.6-23.5 73.6-19.4 17.4-31.2 24.5-61.4 33.2L203 351.8l220.4 27.1 9.7 34.2-48.1 13.3-286.8-37.3 23 80.2c36.8 22 80.3 34.7 126.3 34.7 137 0 248.5-111.4 248.5-248.3C497 119.4 385.5 8 248.5 8zM38.3 388.6L0 256.8c0 48.5 14.3 93.4 38.3 131.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRev (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M289.67 274.89a65.57 65.57 0 1 1-65.56-65.56 65.64 65.64 0 0 1 65.56 65.56zm139.55-5.05h-.13a204.69 204.69 0 0 0-74.32-153l-45.38 26.2a157.07 157.07 0 0 1 71.81 131.84C381.2 361.5 310.73 432 224.11 432S67 361.5 67 274.88c0-81.88 63-149.27 143-156.43v39.12l108.77-62.79L210 32v38.32c-106.7 7.25-191 96-191 204.57 0 111.59 89.12 202.29 200.06 205v.11h210.16V269.84z\"},\"child\":[]}]})(props);\n};\nexport function FaRocketchat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M284.046,224.8a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,284.046,224.8Zm-110.45,0a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,173.6,224.8Zm220.923,0a34.114,34.114,0,1,0,34.317,34.113A34.215,34.215,0,0,0,394.519,224.8Zm153.807-55.319c-15.535-24.172-37.31-45.57-64.681-63.618-52.886-34.817-122.374-54-195.666-54a405.975,405.975,0,0,0-72.032,6.357,238.524,238.524,0,0,0-49.51-36.588C99.684-11.7,40.859.711,11.135,11.421A14.291,14.291,0,0,0,5.58,34.782C26.542,56.458,61.222,99.3,52.7,138.252c-33.142,33.9-51.112,74.776-51.112,117.337,0,43.372,17.97,84.248,51.112,118.148,8.526,38.956-26.154,81.816-47.116,103.491a14.284,14.284,0,0,0,5.555,23.34c29.724,10.709,88.549,23.147,155.324-10.2a238.679,238.679,0,0,0,49.51-36.589A405.972,405.972,0,0,0,288,460.14c73.313,0,142.8-19.159,195.667-53.975,27.371-18.049,49.145-39.426,64.679-63.619,17.309-26.923,26.07-55.916,26.07-86.125C574.394,225.4,565.634,196.43,548.326,169.485ZM284.987,409.9a345.65,345.65,0,0,1-89.446-11.5l-20.129,19.393a184.366,184.366,0,0,1-37.138,27.585,145.767,145.767,0,0,1-52.522,14.87c.983-1.771,1.881-3.563,2.842-5.356q30.258-55.68,16.325-100.078c-32.992-25.962-52.778-59.2-52.778-95.4,0-83.1,104.254-150.469,232.846-150.469s232.867,67.373,232.867,150.469C517.854,342.525,413.6,409.9,284.987,409.9Z\"},\"child\":[]}]})(props);\n};\nexport function FaRockrms (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm157.4 419.5h-90l-112-131.3c-17.9-20.4-3.9-56.1 26.6-56.1h75.3l-84.6-99.3-84.3 98.9h-90L193.5 67.2c14.4-18.4 41.3-17.3 54.5 0l157.7 185.1c19 22.8 2 57.2-27.6 56.1-.6 0-74.2.2-74.2.2l101.5 118.9z\"},\"child\":[]}]})(props);\n};\nexport function FaRust (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M508.52,249.75,486.7,236.24c-.17-2-.34-3.93-.55-5.88l18.72-17.5a7.35,7.35,0,0,0-2.44-12.25l-24-9c-.54-1.88-1.08-3.78-1.67-5.64l15-20.83a7.35,7.35,0,0,0-4.79-11.54l-25.42-4.15c-.9-1.73-1.79-3.45-2.73-5.15l10.68-23.42a7.35,7.35,0,0,0-6.95-10.39l-25.82.91q-1.79-2.22-3.61-4.4L439,81.84A7.36,7.36,0,0,0,430.16,73L405,78.93q-2.17-1.83-4.4-3.61l.91-25.82a7.35,7.35,0,0,0-10.39-7L367.7,53.23c-1.7-.94-3.43-1.84-5.15-2.73L358.4,25.08a7.35,7.35,0,0,0-11.54-4.79L326,35.26c-1.86-.59-3.75-1.13-5.64-1.67l-9-24a7.35,7.35,0,0,0-12.25-2.44l-17.5,18.72c-1.95-.21-3.91-.38-5.88-.55L262.25,3.48a7.35,7.35,0,0,0-12.5,0L236.24,25.3c-2,.17-3.93.34-5.88.55L212.86,7.13a7.35,7.35,0,0,0-12.25,2.44l-9,24c-1.89.55-3.79,1.08-5.66,1.68l-20.82-15a7.35,7.35,0,0,0-11.54,4.79l-4.15,25.41c-1.73.9-3.45,1.79-5.16,2.73L120.88,42.55a7.35,7.35,0,0,0-10.39,7l.92,25.81c-1.49,1.19-3,2.39-4.42,3.61L81.84,73A7.36,7.36,0,0,0,73,81.84L78.93,107c-1.23,1.45-2.43,2.93-3.62,4.41l-25.81-.91a7.42,7.42,0,0,0-6.37,3.26,7.35,7.35,0,0,0-.57,7.13l10.66,23.41c-.94,1.7-1.83,3.43-2.73,5.16L25.08,153.6a7.35,7.35,0,0,0-4.79,11.54l15,20.82c-.59,1.87-1.13,3.77-1.68,5.66l-24,9a7.35,7.35,0,0,0-2.44,12.25l18.72,17.5c-.21,1.95-.38,3.91-.55,5.88L3.48,249.75a7.35,7.35,0,0,0,0,12.5L25.3,275.76c.17,2,.34,3.92.55,5.87L7.13,299.13a7.35,7.35,0,0,0,2.44,12.25l24,9c.55,1.89,1.08,3.78,1.68,5.65l-15,20.83a7.35,7.35,0,0,0,4.79,11.54l25.42,4.15c.9,1.72,1.79,3.45,2.73,5.14L42.56,391.12a7.35,7.35,0,0,0,.57,7.13,7.13,7.13,0,0,0,6.37,3.26l25.83-.91q1.77,2.22,3.6,4.4L73,430.16A7.36,7.36,0,0,0,81.84,439L107,433.07q2.18,1.83,4.41,3.61l-.92,25.82a7.35,7.35,0,0,0,10.39,6.95l23.43-10.68c1.69.94,3.42,1.83,5.14,2.73l4.15,25.42a7.34,7.34,0,0,0,11.54,4.78l20.83-15c1.86.6,3.76,1.13,5.65,1.68l9,24a7.36,7.36,0,0,0,12.25,2.44l17.5-18.72c1.95.21,3.92.38,5.88.55l13.51,21.82a7.35,7.35,0,0,0,12.5,0l13.51-21.82c2-.17,3.93-.34,5.88-.56l17.5,18.73a7.36,7.36,0,0,0,12.25-2.44l9-24c1.89-.55,3.78-1.08,5.65-1.68l20.82,15a7.34,7.34,0,0,0,11.54-4.78l4.15-25.42c1.72-.9,3.45-1.79,5.15-2.73l23.42,10.68a7.35,7.35,0,0,0,10.39-6.95l-.91-25.82q2.22-1.79,4.4-3.61L430.16,439a7.36,7.36,0,0,0,8.84-8.84L433.07,405q1.83-2.17,3.61-4.4l25.82.91a7.23,7.23,0,0,0,6.37-3.26,7.35,7.35,0,0,0,.58-7.13L458.77,367.7c.94-1.7,1.83-3.43,2.73-5.15l25.42-4.15a7.35,7.35,0,0,0,4.79-11.54l-15-20.83c.59-1.87,1.13-3.76,1.67-5.65l24-9a7.35,7.35,0,0,0,2.44-12.25l-18.72-17.5c.21-1.95.38-3.91.55-5.87l21.82-13.51a7.35,7.35,0,0,0,0-12.5Zm-151,129.08A13.91,13.91,0,0,0,341,389.51l-7.64,35.67A187.51,187.51,0,0,1,177,424.44l-7.64-35.66a13.87,13.87,0,0,0-16.46-10.68l-31.51,6.76a187.38,187.38,0,0,1-16.26-19.21H258.3c1.72,0,2.89-.29,2.89-1.91V309.55c0-1.57-1.17-1.91-2.89-1.91H213.47l.05-34.35H262c4.41,0,23.66,1.28,29.79,25.87,1.91,7.55,6.17,32.14,9.06,40,2.89,8.82,14.6,26.46,27.1,26.46H407a187.3,187.3,0,0,1-17.34,20.09Zm25.77,34.49A15.24,15.24,0,1,1,368,398.08h.44A15.23,15.23,0,0,1,383.24,413.32Zm-225.62-.68a15.24,15.24,0,1,1-15.25-15.25h.45A15.25,15.25,0,0,1,157.62,412.64ZM69.57,234.15l32.83-14.6a13.88,13.88,0,0,0,7.06-18.33L102.69,186h26.56V305.73H75.65A187.65,187.65,0,0,1,69.57,234.15ZM58.31,198.09a15.24,15.24,0,0,1,15.23-15.25H74a15.24,15.24,0,1,1-15.67,15.24Zm155.16,24.49.05-35.32h63.26c3.28,0,23.07,3.77,23.07,18.62,0,12.29-15.19,16.7-27.68,16.7ZM399,306.71c-9.8,1.13-20.63-4.12-22-10.09-5.78-32.49-15.39-39.4-30.57-51.4,18.86-11.95,38.46-29.64,38.46-53.26,0-25.52-17.49-41.59-29.4-49.48-16.76-11-35.28-13.23-40.27-13.23H116.32A187.49,187.49,0,0,1,221.21,70.06l23.47,24.6a13.82,13.82,0,0,0,19.6.44l26.26-25a187.51,187.51,0,0,1,128.37,91.43l-18,40.57A14,14,0,0,0,408,220.43l34.59,15.33a187.12,187.12,0,0,1,.4,32.54H423.71c-1.91,0-2.69,1.27-2.69,3.13v8.82C421,301,409.31,305.58,399,306.71ZM240,60.21A15.24,15.24,0,0,1,255.21,45h.45A15.24,15.24,0,1,1,240,60.21ZM436.84,214a15.24,15.24,0,1,1,0-30.48h.44a15.24,15.24,0,0,1-.44,30.48Z\"},\"child\":[]}]})(props);\n};\nexport function FaSafari (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M274.69,274.69l-37.38-37.38L166,346ZM256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM411.85,182.79l14.78-6.13A8,8,0,0,1,437.08,181h0a8,8,0,0,1-4.33,10.46L418,197.57a8,8,0,0,1-10.45-4.33h0A8,8,0,0,1,411.85,182.79ZM314.43,94l6.12-14.78A8,8,0,0,1,331,74.92h0a8,8,0,0,1,4.33,10.45l-6.13,14.78a8,8,0,0,1-10.45,4.33h0A8,8,0,0,1,314.43,94ZM256,60h0a8,8,0,0,1,8,8V84a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V68A8,8,0,0,1,256,60ZM181,74.92a8,8,0,0,1,10.46,4.33L197.57,94a8,8,0,1,1-14.78,6.12l-6.13-14.78A8,8,0,0,1,181,74.92Zm-63.58,42.49h0a8,8,0,0,1,11.31,0L140,128.72A8,8,0,0,1,140,140h0a8,8,0,0,1-11.31,0l-11.31-11.31A8,8,0,0,1,117.41,117.41ZM60,256h0a8,8,0,0,1,8-8H84a8,8,0,0,1,8,8h0a8,8,0,0,1-8,8H68A8,8,0,0,1,60,256Zm40.15,73.21-14.78,6.13A8,8,0,0,1,74.92,331h0a8,8,0,0,1,4.33-10.46L94,314.43a8,8,0,0,1,10.45,4.33h0A8,8,0,0,1,100.15,329.21Zm4.33-136h0A8,8,0,0,1,94,197.57l-14.78-6.12A8,8,0,0,1,74.92,181h0a8,8,0,0,1,10.45-4.33l14.78,6.13A8,8,0,0,1,104.48,193.24ZM197.57,418l-6.12,14.78a8,8,0,0,1-14.79-6.12l6.13-14.78A8,8,0,1,1,197.57,418ZM264,444a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V428a8,8,0,0,1,8-8h0a8,8,0,0,1,8,8Zm67-6.92h0a8,8,0,0,1-10.46-4.33L314.43,418a8,8,0,0,1,4.33-10.45h0a8,8,0,0,1,10.45,4.33l6.13,14.78A8,8,0,0,1,331,437.08Zm63.58-42.49h0a8,8,0,0,1-11.31,0L372,383.28A8,8,0,0,1,372,372h0a8,8,0,0,1,11.31,0l11.31,11.31A8,8,0,0,1,394.59,394.59ZM286.25,286.25,110.34,401.66,225.75,225.75,401.66,110.34ZM437.08,331h0a8,8,0,0,1-10.45,4.33l-14.78-6.13a8,8,0,0,1-4.33-10.45h0A8,8,0,0,1,418,314.43l14.78,6.12A8,8,0,0,1,437.08,331ZM444,264H428a8,8,0,0,1-8-8h0a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8h0A8,8,0,0,1,444,264Z\"},\"child\":[]}]})(props);\n};\nexport function FaSalesforce (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248.89 245.64h-26.35c.69-5.16 3.32-14.12 13.64-14.12 6.75 0 11.97 3.82 12.71 14.12zm136.66-13.88c-.47 0-14.11-1.77-14.11 20s13.63 20 14.11 20c13 0 14.11-13.54 14.11-20 0-21.76-13.66-20-14.11-20zm-243.22 23.76a8.63 8.63 0 0 0-3.29 7.29c0 4.78 2.08 6.05 3.29 7.05 4.7 3.7 15.07 2.12 20.93.95v-16.94c-5.32-1.07-16.73-1.96-20.93 1.65zM640 232c0 87.58-80 154.39-165.36 136.43-18.37 33-70.73 70.75-132.2 41.63-41.16 96.05-177.89 92.18-213.81-5.17C8.91 428.78-50.19 266.52 53.36 205.61 18.61 126.18 76 32 167.67 32a124.24 124.24 0 0 1 98.56 48.7c20.7-21.4 49.4-34.81 81.15-34.81 42.34 0 79 23.52 98.8 58.57C539 63.78 640 132.69 640 232zm-519.55 31.8c0-11.76-11.69-15.17-17.87-17.17-5.27-2.11-13.41-3.51-13.41-8.94 0-9.46 17-6.66 25.17-2.12 0 0 1.17.71 1.64-.47.24-.7 2.36-6.58 2.59-7.29a1.13 1.13 0 0 0-.7-1.41c-12.33-7.63-40.7-8.51-40.7 12.7 0 12.46 11.49 15.44 17.88 17.17 4.72 1.58 13.17 3 13.17 8.7 0 4-3.53 7.06-9.17 7.06a31.76 31.76 0 0 1-19-6.35c-.47-.23-1.42-.71-1.65.71l-2.4 7.47c-.47.94.23 1.18.23 1.41 1.75 1.4 10.3 6.59 22.82 6.59 13.17 0 21.4-7.06 21.4-18.11zm32-42.58c-10.13 0-18.66 3.17-21.4 5.18a1 1 0 0 0-.24 1.41l2.59 7.06a1 1 0 0 0 1.18.7c.65 0 6.8-4 16.93-4 4 0 7.06.71 9.18 2.36 3.6 2.8 3.06 8.29 3.06 10.58-4.79-.3-19.11-3.44-29.41 3.76a16.92 16.92 0 0 0-7.34 14.54c0 5.9 1.51 10.4 6.59 14.35 12.24 8.16 36.28 2 38.1 1.41 1.58-.32 3.53-.66 3.53-1.88v-33.88c.04-4.61.32-21.64-22.78-21.64zM199 200.24a1.11 1.11 0 0 0-1.18-1.18H188a1.11 1.11 0 0 0-1.17 1.18v79a1.11 1.11 0 0 0 1.17 1.18h9.88a1.11 1.11 0 0 0 1.18-1.18zm55.75 28.93c-2.1-2.31-6.79-7.53-17.65-7.53-3.51 0-14.16.23-20.7 8.94-6.35 7.63-6.58 18.11-6.58 21.41 0 3.12.15 14.26 7.06 21.17 2.64 2.91 9.06 8.23 22.81 8.23 10.82 0 16.47-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.35-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.94-16.7h37.17a1.23 1.23 0 0 0 1.17-.94c-.29 0 2.07-14.7-6.09-24.23zm36.69 52.69c13.17 0 21.41-7.06 21.41-18.11 0-11.76-11.7-15.17-17.88-17.17-4.14-1.66-13.41-3.38-13.41-8.94 0-3.76 3.29-6.35 8.47-6.35a38.11 38.11 0 0 1 16.7 4.23s1.18.71 1.65-.47c.23-.7 2.35-6.58 2.58-7.29a1.13 1.13 0 0 0-.7-1.41c-7.91-4.9-16.74-4.94-20.23-4.94-12 0-20.46 7.29-20.46 17.64 0 12.46 11.48 15.44 17.87 17.17 6.11 2 13.17 3.26 13.17 8.7 0 4-3.52 7.06-9.17 7.06a31.8 31.8 0 0 1-19-6.35 1 1 0 0 0-1.65.71l-2.35 7.52c-.47.94.23 1.18.23 1.41 1.72 1.4 10.33 6.59 22.79 6.59zM357.09 224c0-.71-.24-1.18-1.18-1.18h-11.76c0-.14.94-8.94 4.47-12.47 4.16-4.15 11.76-1.64 12-1.64 1.17.47 1.41 0 1.64-.47l2.83-7.77c.7-.94 0-1.17-.24-1.41-5.09-2-17.35-2.87-24.46 4.24-5.48 5.48-7 13.92-8 19.52h-8.47a1.28 1.28 0 0 0-1.17 1.18l-1.42 7.76c0 .7.24 1.17 1.18 1.17h8.23c-8.51 47.9-8.75 50.21-10.35 55.52-1.08 3.62-3.29 6.9-5.88 7.76-.09 0-3.88 1.68-9.64-.24 0 0-.94-.47-1.41.71-.24.71-2.59 6.82-2.83 7.53s0 1.41.47 1.41c5.11 2 13 1.77 17.88 0 6.28-2.28 9.72-7.89 11.53-12.94 2.75-7.71 2.81-9.79 11.76-59.74h12.23a1.29 1.29 0 0 0 1.18-1.18zm53.39 16c-.56-1.68-5.1-18.11-25.17-18.11-15.25 0-23 10-25.16 18.11-1 3-3.18 14 0 23.52.09.3 4.41 18.12 25.16 18.12 14.95 0 22.9-9.61 25.17-18.12 3.21-9.61 1.01-20.52 0-23.52zm45.4-16.7c-5-1.65-16.62-1.9-22.11 5.41v-4.47a1.11 1.11 0 0 0-1.18-1.17h-9.4a1.11 1.11 0 0 0-1.18 1.17v55.28a1.12 1.12 0 0 0 1.18 1.18h9.64a1.12 1.12 0 0 0 1.18-1.18v-27.77c0-2.91.05-11.37 4.46-15.05 4.9-4.9 12-3.36 13.41-3.06a1.57 1.57 0 0 0 1.41-.94 74 74 0 0 0 3.06-8 1.16 1.16 0 0 0-.47-1.41zm46.81 54.1l-2.12-7.29c-.47-1.18-1.41-.71-1.41-.71-4.23 1.82-10.15 1.89-11.29 1.89-4.64 0-17.17-1.13-17.17-19.76 0-6.23 1.85-19.76 16.47-19.76a34.85 34.85 0 0 1 11.52 1.65s.94.47 1.18-.71c.94-2.59 1.64-4.47 2.59-7.53.23-.94-.47-1.17-.71-1.17-11.59-3.87-22.34-2.53-27.76 0-1.59.74-16.23 6.49-16.23 27.52 0 2.9-.58 30.11 28.94 30.11a44.45 44.45 0 0 0 15.52-2.83 1.3 1.3 0 0 0 .47-1.42zm53.87-39.52c-.8-3-5.37-16.23-22.35-16.23-16 0-23.52 10.11-25.64 18.59a38.58 38.58 0 0 0-1.65 11.76c0 25.87 18.84 29.4 29.88 29.4 10.82 0 16.46-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.36-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.93-16.7h37.16a1.25 1.25 0 0 0 1.18-.94c-.24-.01.94-7.07-1.41-15.54zm-23.29-6.35c-10.33 0-13 9-13.64 14.12H546c-.88-11.92-7.62-14.13-12.73-14.13z\"},\"child\":[]}]})(props);\n};\nexport function FaSass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M301.84 378.92c-.3.6-.6 1.08 0 0zm249.13-87a131.16 131.16 0 0 0-58 13.5c-5.9-11.9-12-22.3-13-30.1-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.3-6.7-24 2.5-25.29 5.9a122.83 122.83 0 0 0-5.3 19.1c-2.3 11.7-25.79 53.5-39.09 75.3-4.4-8.5-8.1-16-8.9-22-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.29-6.7-24 2.5-25.3 5.9-2.7 11.4-5.3 19.1-33.89 77.3-42.08 95.4c-4.2 9.2-7.8 16.6-10.4 21.6-.4.8-.7 1.3-.9 1.7.3-.5.5-1 .5-.8-2.2 4.3-3.5 6.7-3.5 6.7v.1c-1.7 3.2-3.6 6.1-4.5 6.1-.6 0-1.9-8.4.3-19.9 4.7-24.2 15.8-61.8 15.7-63.1-.1-.7 2.1-7.2-7.3-10.7-9.1-3.3-12.4 2.2-13.2 2.2s-1.4 2-1.4 2 10.1-42.4-19.39-42.4c-18.4 0-44 20.2-56.58 38.5-7.9 4.3-25 13.6-43 23.5-6.9 3.8-14 7.7-20.7 11.4-.5-.5-.9-1-1.4-1.5-35.79-38.2-101.87-65.2-99.07-116.5 1-18.7 7.5-67.8 127.07-127.4 98-48.8 176.35-35.4 189.84-5.6 19.4 42.5-41.89 121.6-143.66 133-38.79 4.3-59.18-10.7-64.28-16.3-5.3-5.9-6.1-6.2-8.1-5.1-3.3 1.8-1.2 7 0 10.1 3 7.9 15.5 21.9 36.79 28.9 18.7 6.1 64.18 9.5 119.17-11.8 61.78-23.8 109.87-90.1 95.77-145.6C386.52 18.32 293-.18 204.57 31.22c-52.69 18.7-109.67 48.1-150.66 86.4-48.69 45.6-56.48 85.3-53.28 101.9 11.39 58.9 92.57 97.3 125.06 125.7-1.6.9-3.1 1.7-4.5 2.5-16.29 8.1-78.18 40.5-93.67 74.7-17.5 38.8 2.9 66.6 16.29 70.4 41.79 11.6 84.58-9.3 107.57-43.6s20.2-79.1 9.6-99.5c-.1-.3-.3-.5-.4-.8 4.2-2.5 8.5-5 12.8-7.5 8.29-4.9 16.39-9.4 23.49-13.3-4 10.8-6.9 23.8-8.4 42.6-1.8 22 7.3 50.5 19.1 61.7 5.2 4.9 11.49 5 15.39 5 13.8 0 20-11.4 26.89-25 8.5-16.6 16-35.9 16-35.9s-9.4 52.2 16.3 52.2c9.39 0 18.79-12.1 23-18.3v.1s.2-.4.7-1.2c1-1.5 1.5-2.4 1.5-2.4v-.3c3.8-6.5 12.1-21.4 24.59-46 16.2-31.8 31.69-71.5 31.69-71.5a201.24 201.24 0 0 0 6.2 25.8c2.8 9.5 8.7 19.9 13.4 30-3.8 5.2-6.1 8.2-6.1 8.2a.31.31 0 0 0 .1.2c-3 4-6.4 8.3-9.9 12.5-12.79 15.2-28 32.6-30 37.6-2.4 5.9-1.8 10.3 2.8 13.7 3.4 2.6 9.4 3 15.69 2.5 11.5-.8 19.6-3.6 23.5-5.4a82.2 82.2 0 0 0 20.19-10.6c12.5-9.2 20.1-22.4 19.4-39.8-.4-9.6-3.5-19.2-7.3-28.2 1.1-1.6 2.3-3.3 3.4-5C434.8 301.72 450.1 270 450.1 270a201.24 201.24 0 0 0 6.2 25.8c2.4 8.1 7.09 17 11.39 25.7-18.59 15.1-30.09 32.6-34.09 44.1-7.4 21.3-1.6 30.9 9.3 33.1 4.9 1 11.9-1.3 17.1-3.5a79.46 79.46 0 0 0 21.59-11.1c12.5-9.2 24.59-22.1 23.79-39.6-.3-7.9-2.5-15.8-5.4-23.4 15.7-6.6 36.09-10.2 62.09-7.2 55.68 6.5 66.58 41.3 64.48 55.8s-13.8 22.6-17.7 25-5.1 3.3-4.8 5.1c.5 2.6 2.3 2.5 5.6 1.9 4.6-.8 29.19-11.8 30.29-38.7 1.6-34-31.09-71.4-89-71.1zm-429.18 144.7c-18.39 20.1-44.19 27.7-55.28 21.3C54.61 451 59.31 421.42 82 400c13.8-13 31.59-25 43.39-32.4 2.7-1.6 6.6-4 11.4-6.9.8-.5 1.2-.7 1.2-.7.9-.6 1.9-1.1 2.9-1.7 8.29 30.4.3 57.2-19.1 78.3zm134.36-91.4c-6.4 15.7-19.89 55.7-28.09 53.6-7-1.8-11.3-32.3-1.4-62.3 5-15.1 15.6-33.1 21.9-40.1 10.09-11.3 21.19-14.9 23.79-10.4 3.5 5.9-12.2 49.4-16.2 59.2zm111 53c-2.7 1.4-5.2 2.3-6.4 1.6-.9-.5 1.1-2.4 1.1-2.4s13.9-14.9 19.4-21.7c3.2-4 6.9-8.7 10.89-13.9 0 .5.1 1 .1 1.6-.13 17.9-17.32 30-25.12 34.8zm85.58-19.5c-2-1.4-1.7-6.1 5-20.7 2.6-5.7 8.59-15.3 19-24.5a36.18 36.18 0 0 1 1.9 10.8c-.1 22.5-16.2 30.9-25.89 34.4z\"},\"child\":[]}]})(props);\n};\nexport function FaSchlix (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M350.5 157.7l-54.2-46.1 73.4-39 78.3 44.2-97.5 40.9zM192 122.1l45.7-28.2 34.7 34.6-55.4 29-25-35.4zm-65.1 6.6l31.9-22.1L176 135l-36.7 22.5-12.4-28.8zm-23.3 88.2l-8.8-34.8 29.6-18.3 13.1 35.3-33.9 17.8zm-21.2-83.7l23.9-18.1 8.9 24-26.7 18.3-6.1-24.2zM59 206.5l-3.6-28.4 22.3-15.5 6.1 28.7L59 206.5zm-30.6 16.6l20.8-12.8 3.3 33.4-22.9 12-1.2-32.6zM1.4 268l19.2-10.2.4 38.2-21 8.8L1.4 268zm59.1 59.3l-28.3 8.3-1.6-46.8 25.1-10.7 4.8 49.2zM99 263.2l-31.1 13-5.2-40.8L90.1 221l8.9 42.2zM123.2 377l-41.6 5.9-8.1-63.5 35.2-10.8 14.5 68.4zm28.5-139.9l21.2 57.1-46.2 13.6-13.7-54.1 38.7-16.6zm85.7 230.5l-70.9-3.3-24.3-95.8 55.2-8.6 40 107.7zm-84.9-279.7l42.2-22.4 28 45.9-50.8 21.3-19.4-44.8zm41 94.9l61.3-18.7 52.8 86.6-79.8 11.3-34.3-79.2zm51.4-85.6l67.3-28.8 65.5 65.4-88.6 26.2-44.2-62.8z\"},\"child\":[]}]})(props);\n};\nexport function FaScribd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M42.3 252.7c-16.1-19-24.7-45.9-24.8-79.9 0-100.4 75.2-153.1 167.2-153.1 98.6-1.6 156.8 49 184.3 70.6l-50.5 72.1-37.3-24.6 26.9-38.6c-36.5-24-79.4-36.5-123-35.8-50.7-.8-111.7 27.2-111.7 76.2 0 18.7 11.2 20.7 28.6 15.6 23.3-5.3 41.9.6 55.8 14 26.4 24.3 23.2 67.6-.7 91.9-29.2 29.5-85.2 27.3-114.8-8.4zm317.7 5.9c-15.5-18.8-38.9-29.4-63.2-28.6-38.1-2-71.1 28-70.5 67.2-.7 16.8 6 33 18.4 44.3 14.1 13.9 33 19.7 56.3 14.4 17.4-5.1 28.6-3.1 28.6 15.6 0 4.3-.5 8.5-1.4 12.7-16.7 40.9-59.5 64.4-121.4 64.4-51.9.2-102.4-16.4-144.1-47.3l33.7-39.4-35.6-27.4L0 406.3l15.4 13.8c52.5 46.8 120.4 72.5 190.7 72.2 51.4 0 94.4-10.5 133.6-44.1 57.1-51.4 54.2-149.2 20.3-189.6z\"},\"child\":[]}]})(props);\n};\nexport function FaSearchengin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 460 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M220.6 130.3l-67.2 28.2V43.2L98.7 233.5l54.7-24.2v130.3l67.2-209.3zm-83.2-96.7l-1.3 4.7-15.2 52.9C80.6 106.7 52 145.8 52 191.5c0 52.3 34.3 95.9 83.4 105.5v53.6C57.5 340.1 0 272.4 0 191.6c0-80.5 59.8-147.2 137.4-158zm311.4 447.2c-11.2 11.2-23.1 12.3-28.6 10.5-5.4-1.8-27.1-19.9-60.4-44.4-33.3-24.6-33.6-35.7-43-56.7-9.4-20.9-30.4-42.6-57.5-52.4l-9.7-14.7c-24.7 16.9-53 26.9-81.3 28.7l2.1-6.6 15.9-49.5c46.5-11.9 80.9-54 80.9-104.2 0-54.5-38.4-102.1-96-107.1V32.3C254.4 37.4 320 106.8 320 191.6c0 33.6-11.2 64.7-29 90.4l14.6 9.6c9.8 27.1 31.5 48 52.4 57.4s32.2 9.7 56.8 43c24.6 33.2 42.7 54.9 44.5 60.3s.7 17.3-10.5 28.5zm-9.9-17.9c0-4.4-3.6-8-8-8s-8 3.6-8 8 3.6 8 8 8 8-3.6 8-8z\"},\"child\":[]}]})(props);\n};\nexport function FaSellcast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M353.4 32H94.7C42.6 32 0 74.6 0 126.6v258.7C0 437.4 42.6 480 94.7 480h258.7c52.1 0 94.7-42.6 94.7-94.6V126.6c0-52-42.6-94.6-94.7-94.6zm-50 316.4c-27.9 48.2-89.9 64.9-138.2 37.2-22.9 39.8-54.9 8.6-42.3-13.2l15.7-27.2c5.9-10.3 19.2-13.9 29.5-7.9 18.6 10.8-.1-.1 18.5 10.7 27.6 15.9 63.4 6.3 79.4-21.3 15.9-27.6 6.3-63.4-21.3-79.4-17.8-10.2-.6-.4-18.6-10.6-24.6-14.2-3.4-51.9 21.6-37.5 18.6 10.8-.1-.1 18.5 10.7 48.4 28 65.1 90.3 37.2 138.5zm21.8-208.8c-17 29.5-16.3 28.8-19 31.5-6.5 6.5-16.3 8.7-26.5 3.6-18.6-10.8.1.1-18.5-10.7-27.6-15.9-63.4-6.3-79.4 21.3s-6.3 63.4 21.3 79.4c0 0 18.5 10.6 18.6 10.6 24.6 14.2 3.4 51.9-21.6 37.5-18.6-10.8.1.1-18.5-10.7-48.2-27.8-64.9-90.1-37.1-138.4 27.9-48.2 89.9-64.9 138.2-37.2l4.8-8.4c14.3-24.9 52-3.3 37.7 21.5z\"},\"child\":[]}]})(props);\n};\nexport function FaSellsy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M539.71 237.308c3.064-12.257 4.29-24.821 4.29-37.384C544 107.382 468.618 32 376.076 32c-77.22 0-144.634 53.012-163.02 127.781-15.322-13.176-34.934-20.53-55.157-20.53-46.271 0-83.962 37.69-83.962 83.961 0 7.354.92 15.015 3.065 22.369-42.9 20.225-70.785 63.738-70.785 111.234C6.216 424.843 61.68 480 129.401 480h381.198c67.72 0 123.184-55.157 123.184-123.184.001-56.384-38.916-106.025-94.073-119.508zM199.88 401.554c0 8.274-7.048 15.321-15.321 15.321H153.61c-8.274 0-15.321-7.048-15.321-15.321V290.626c0-8.273 7.048-15.321 15.321-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v110.928zm89.477 0c0 8.274-7.048 15.321-15.322 15.321h-30.949c-8.274 0-15.321-7.048-15.321-15.321V270.096c0-8.274 7.048-15.321 15.321-15.321h30.949c8.274 0 15.322 7.048 15.322 15.321v131.458zm89.477 0c0 8.274-7.047 15.321-15.321 15.321h-30.949c-8.274 0-15.322-7.048-15.322-15.321V238.84c0-8.274 7.048-15.321 15.322-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v162.714zm87.027 0c0 8.274-7.048 15.321-15.322 15.321h-28.497c-8.274 0-15.321-7.048-15.321-15.321V176.941c0-8.579 7.047-15.628 15.321-15.628h28.497c8.274 0 15.322 7.048 15.322 15.628v224.613z\"},\"child\":[]}]})(props);\n};\nexport function FaServicestack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M88 216c81.7 10.2 273.7 102.3 304 232H0c99.5-8.1 184.5-137 88-232zm32-152c32.3 35.6 47.7 83.9 46.4 133.6C249.3 231.3 373.7 321.3 400 448h96C455.3 231.9 222.8 79.5 120 64z\"},\"child\":[]}]})(props);\n};\nexport function FaShirtsinbulk (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M100 410.3l30.6 13.4 4.4-9.9-30.6-13.4zm39.4 17.5l30.6 13.4 4.4-9.9-30.6-13.4zm172.1-14l4.4 9.9 30.6-13.4-4.4-9.9zM179.1 445l30.3 13.7 4.4-9.9-30.3-13.4zM60.4 392.8L91 406.2l4.4-9.6-30.6-13.7zm211.4 38.5l4.4 9.9 30.6-13.4-4.4-9.9zm-39.3 17.5l4.4 9.9 30.6-13.7-4.4-9.6zm118.4-52.2l4.4 9.6 30.6-13.4-4.4-9.9zM170 46.6h-33.5v10.5H170zm-47.2 0H89.2v10.5h33.5zm-47.3 0H42.3v10.5h33.3zm141.5 0h-33.2v10.5H217zm94.5 0H278v10.5h33.5zm47.3 0h-33.5v10.5h33.5zm-94.6 0H231v10.5h33.2zm141.5 0h-33.3v10.5h33.3zM52.8 351.1H42v33.5h10.8zm70-215.9H89.2v10.5h33.5zm-70 10.6h22.8v-10.5H42v33.5h10.8zm168.9 228.6c50.5 0 91.3-40.8 91.3-91.3 0-50.2-40.8-91.3-91.3-91.3-50.2 0-91.3 41.1-91.3 91.3 0 50.5 41.1 91.3 91.3 91.3zm-48.2-111.1c0-25.4 29.5-31.8 49.6-31.8 16.9 0 29.2 5.8 44.3 12l-8.8 16.9h-.9c-6.4-9.9-24.8-13.1-35.6-13.1-9 0-29.8 1.8-29.8 14.9 0 21.6 78.5-10.2 78.5 37.9 0 25.4-31.5 31.2-51 31.2-18.1 0-32.4-2.9-47.2-12.2l9-18.4h.9c6.1 12.2 23.6 14.9 35.9 14.9 8.7 0 32.7-1.2 32.7-14.3 0-26.1-77.6 6.3-77.6-38zM52.8 178.4H42V212h10.8zm342.4 206.2H406v-33.5h-10.8zM52.8 307.9H42v33.5h10.8zM0 3.7v406l221.7 98.6L448 409.7V3.7zm418.8 387.1L222 476.5 29.2 390.8V120.7h389.7v270.1zm0-299.3H29.2V32.9h389.7v58.6zm-366 130.1H42v33.5h10.8zm0 43.2H42v33.5h10.8zM170 135.2h-33.5v10.5H170zm225.2 163.1H406v-33.5h-10.8zm0-43.2H406v-33.5h-10.8zM217 135.2h-33.2v10.5H217zM395.2 212H406v-33.5h-10.8zm0 129.5H406V308h-10.8zm-131-206.3H231v10.5h33.2zm47.3 0H278v10.5h33.5zm83.7 33.6H406v-33.5h-33.5v10.5h22.8zm-36.4-33.6h-33.5v10.5h33.5z\"},\"child\":[]}]})(props);\n};\nexport function FaShopify (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M388.32,104.1a4.66,4.66,0,0,0-4.4-4c-2,0-37.23-.8-37.23-.8s-21.61-20.82-29.62-28.83V503.2L442.76,472S388.72,106.5,388.32,104.1ZM288.65,70.47a116.67,116.67,0,0,0-7.21-17.61C271,32.85,255.42,22,237,22a15,15,0,0,0-4,.4c-.4-.8-1.2-1.2-1.6-2C223.4,11.63,213,7.63,200.58,8c-24,.8-48,18-67.25,48.83-13.61,21.62-24,48.84-26.82,70.06-27.62,8.4-46.83,14.41-47.23,14.81-14,4.4-14.41,4.8-16,18-1.2,10-38,291.82-38,291.82L307.86,504V65.67a41.66,41.66,0,0,0-4.4.4S297.86,67.67,288.65,70.47ZM233.41,87.69c-16,4.8-33.63,10.4-50.84,15.61,4.8-18.82,14.41-37.63,25.62-50,4.4-4.4,10.41-9.61,17.21-12.81C232.21,54.86,233.81,74.48,233.41,87.69ZM200.58,24.44A27.49,27.49,0,0,1,215,28c-6.4,3.2-12.81,8.41-18.81,14.41-15.21,16.42-26.82,42-31.62,66.45-14.42,4.41-28.83,8.81-42,12.81C131.33,83.28,163.75,25.24,200.58,24.44ZM154.15,244.61c1.6,25.61,69.25,31.22,73.25,91.66,2.8,47.64-25.22,80.06-65.65,82.47-48.83,3.2-75.65-25.62-75.65-25.62l10.4-44s26.82,20.42,48.44,18.82c14-.8,19.22-12.41,18.81-20.42-2-33.62-57.24-31.62-60.84-86.86-3.2-46.44,27.22-93.27,94.47-97.68,26-1.6,39.23,4.81,39.23,4.81L221.4,225.39s-17.21-8-37.63-6.4C154.15,221,153.75,239.8,154.15,244.61ZM249.42,82.88c0-12-1.6-29.22-7.21-43.63,18.42,3.6,27.22,24,31.23,36.43Q262.63,78.68,249.42,82.88Z\"},\"child\":[]}]})(props);\n};\nexport function FaShopware (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M403.5 455.41A246.17 246.17 0 0 1 256 504C118.81 504 8 393 8 256 8 118.81 119 8 256 8a247.39 247.39 0 0 1 165.7 63.5 3.57 3.57 0 0 1-2.86 6.18A418.62 418.62 0 0 0 362.13 74c-129.36 0-222.4 53.47-222.4 155.35 0 109 92.13 145.88 176.83 178.73 33.64 13 65.4 25.36 87 41.59a3.58 3.58 0 0 1 0 5.72zM503 233.09a3.64 3.64 0 0 0-1.27-2.44c-51.76-43-93.62-60.48-144.48-60.48-84.13 0-80.25 52.17-80.25 53.63 0 42.6 52.06 62 112.34 84.49 31.07 11.59 63.19 23.57 92.68 39.93a3.57 3.57 0 0 0 5-1.82A249 249 0 0 0 503 233.09z\"},\"child\":[]}]})(props);\n};\nexport function FaSimplybuilt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M481.2 64h-106c-14.5 0-26.6 11.8-26.6 26.3v39.6H163.3V90.3c0-14.5-12-26.3-26.6-26.3h-106C16.1 64 4.3 75.8 4.3 90.3v331.4c0 14.5 11.8 26.3 26.6 26.3h450.4c14.8 0 26.6-11.8 26.6-26.3V90.3c-.2-14.5-12-26.3-26.7-26.3zM149.8 355.8c-36.6 0-66.4-29.7-66.4-66.4 0-36.9 29.7-66.6 66.4-66.6 36.9 0 66.6 29.7 66.6 66.6 0 36.7-29.7 66.4-66.6 66.4zm212.4 0c-36.9 0-66.6-29.7-66.6-66.6 0-36.6 29.7-66.4 66.6-66.4 36.6 0 66.4 29.7 66.4 66.4 0 36.9-29.8 66.6-66.4 66.6z\"},\"child\":[]}]})(props);\n};\nexport function FaSistrix (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 449L301.2 300.2c20-27.9 31.9-62.2 31.9-99.2 0-93.1-74.7-168.9-166.5-168.9C74.7 32 0 107.8 0 200.9s74.7 168.9 166.5 168.9c39.8 0 76.3-14.2 105-37.9l146 148.1 30.5-31zM166.5 330.8c-70.6 0-128.1-58.3-128.1-129.9S95.9 71 166.5 71s128.1 58.3 128.1 129.9-57.4 129.9-128.1 129.9z\"},\"child\":[]}]})(props);\n};\nexport function FaSith (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 32l69.71 118.75-58.86-11.52 69.84 91.03a146.741 146.741 0 0 0 0 51.45l-69.84 91.03 58.86-11.52L0 480l118.75-69.71-11.52 58.86 91.03-69.84c17.02 3.04 34.47 3.04 51.48 0l91.03 69.84-11.52-58.86L448 480l-69.71-118.78 58.86 11.52-69.84-91.03c3.03-17.01 3.04-34.44 0-51.45l69.84-91.03-58.86 11.52L448 32l-118.75 69.71 11.52-58.9-91.06 69.87c-8.5-1.52-17.1-2.29-25.71-2.29s-17.21.78-25.71 2.29l-91.06-69.87 11.52 58.9L0 32zm224 99.78c31.8 0 63.6 12.12 87.85 36.37 48.5 48.5 48.49 127.21 0 175.7s-127.2 48.46-175.7-.03c-48.5-48.5-48.49-127.21 0-175.7 24.24-24.25 56.05-36.34 87.85-36.34zm0 36.66c-22.42 0-44.83 8.52-61.92 25.61-34.18 34.18-34.19 89.68 0 123.87s89.65 34.18 123.84 0c34.18-34.18 34.19-89.68 0-123.87-17.09-17.09-39.5-25.61-61.92-25.61z\"},\"child\":[]}]})(props);\n};\nexport function FaSketch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M27.5 162.2L9 187.1h90.5l6.9-130.7-78.9 105.8zM396.3 45.7L267.7 32l135.7 147.2-7.1-133.5zM112.2 218.3l-11.2-22H9.9L234.8 458zm2-31.2h284l-81.5-88.5L256.3 33zm297.3 9.1L277.6 458l224.8-261.7h-90.9zM415.4 69L406 56.4l.9 17.3 6.1 113.4h90.3zM113.5 93.5l-4.6 85.6L244.7 32 116.1 45.7zm287.7 102.7h-290l42.4 82.9L256.3 480l144.9-283.8z\"},\"child\":[]}]})(props);\n};\nexport function FaSkyatlas (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M640 329.3c0 65.9-52.5 114.4-117.5 114.4-165.9 0-196.6-249.7-359.7-249.7-146.9 0-147.1 212.2 5.6 212.2 42.5 0 90.9-17.8 125.3-42.5 5.6-4.1 16.9-16.3 22.8-16.3s10.9 5 10.9 10.9c0 7.8-13.1 19.1-18.7 24.1-40.9 35.6-100.3 61.2-154.7 61.2-83.4.1-154-59-154-144.9s67.5-149.1 152.8-149.1c185.3 0 222.5 245.9 361.9 245.9 99.9 0 94.8-139.7 3.4-139.7-17.5 0-35 11.6-46.9 11.6-8.4 0-15.9-7.2-15.9-15.6 0-11.6 5.3-23.7 5.3-36.3 0-66.6-50.9-114.7-116.9-114.7-53.1 0-80 36.9-88.8 36.9-6.2 0-11.2-5-11.2-11.2 0-5.6 4.1-10.3 7.8-14.4 25.3-28.8 64.7-43.7 102.8-43.7 79.4 0 139.1 58.4 139.1 137.8 0 6.9-.3 13.7-1.2 20.6 11.9-3.1 24.1-4.7 35.9-4.7 60.7 0 111.9 45.3 111.9 107.2z\"},\"child\":[]}]})(props);\n};\nexport function FaSkype (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M424.7 299.8c2.9-14 4.7-28.9 4.7-43.8 0-113.5-91.9-205.3-205.3-205.3-14.9 0-29.7 1.7-43.8 4.7C161.3 40.7 137.7 32 112 32 50.2 32 0 82.2 0 144c0 25.7 8.7 49.3 23.3 68.2-2.9 14-4.7 28.9-4.7 43.8 0 113.5 91.9 205.3 205.3 205.3 14.9 0 29.7-1.7 43.8-4.7 19 14.6 42.6 23.3 68.2 23.3 61.8 0 112-50.2 112-112 .1-25.6-8.6-49.2-23.2-68.1zm-194.6 91.5c-65.6 0-120.5-29.2-120.5-65 0-16 9-30.6 29.5-30.6 31.2 0 34.1 44.9 88.1 44.9 25.7 0 42.3-11.4 42.3-26.3 0-18.7-16-21.6-42-28-62.5-15.4-117.8-22-117.8-87.2 0-59.2 58.6-81.1 109.1-81.1 55.1 0 110.8 21.9 110.8 55.4 0 16.9-11.4 31.8-30.3 31.8-28.3 0-29.2-33.5-75-33.5-25.7 0-42 7-42 22.5 0 19.8 20.8 21.8 69.1 33 41.4 9.3 90.7 26.8 90.7 77.6 0 59.1-57.1 86.5-112 86.5z\"},\"child\":[]}]})(props);\n};\nexport function FaSlackHash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M446.2 270.4c-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-30.3-90 45.4-15.1c19.1-6.2 29.1-26.8 23-45.9-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-93.4 31.2-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-45.3 15c-19.1 6.2-29.1 26.8-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l30.3 90L78 354.8c-19 6.2-29.1 26.9-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 93.6-31.3 15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 45.4-15.1c19-6 29.1-26.7 22.9-45.7zm-254.1 47.2l-30.3-90.2 93.5-31.3 30.3 90.2-93.5 31.3z\"},\"child\":[]}]})(props);\n};\nexport function FaSlack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z\"},\"child\":[]}]})(props);\n};\nexport function FaSlideshare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M187.7 153.7c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7s61.7-26 61.7-57.7c0-32-27.7-57.7-61.7-57.7zm143.4 0c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7 34.3 0 61.7-26 61.7-57.7.1-32-27.4-57.7-61.7-57.7zm156.6 90l-6 4.3V49.7c0-27.4-20.6-49.7-46-49.7H76.6c-25.4 0-46 22.3-46 49.7V248c-2-1.4-4.3-2.9-6.3-4.3-15.1-10.6-25.1 4-16 17.7 18.3 22.6 53.1 50.3 106.3 72C58.3 525.1 252 555.7 248.9 457.5c0-.7.3-56.6.3-96.6 5.1 1.1 9.4 2.3 13.7 3.1 0 39.7.3 92.8.3 93.5-3.1 98.3 190.6 67.7 134.3-124 53.1-21.7 88-49.4 106.3-72 9.1-13.8-.9-28.3-16.1-17.8zm-30.5 19.2c-68.9 37.4-128.3 31.1-160.6 29.7-23.7-.9-32.6 9.1-33.7 24.9-10.3-7.7-18.6-15.5-20.3-17.1-5.1-5.4-13.7-8-27.1-7.7-31.7 1.1-89.7 7.4-157.4-28V72.3c0-34.9 8.9-45.7 40.6-45.7h317.7c30.3 0 40.9 12.9 40.9 45.7v190.6z\"},\"child\":[]}]})(props);\n};\nexport function FaSnapchatGhost (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M510.846 392.673c-5.211 12.157-27.239 21.089-67.36 27.318-2.064 2.786-3.775 14.686-6.507 23.956-1.625 5.566-5.623 8.869-12.128 8.869l-.297-.005c-9.395 0-19.203-4.323-38.852-4.323-26.521 0-35.662 6.043-56.254 20.588-21.832 15.438-42.771 28.764-74.027 27.399-31.646 2.334-58.025-16.908-72.871-27.404-20.714-14.643-29.828-20.582-56.241-20.582-18.864 0-30.736 4.72-38.852 4.72-8.073 0-11.213-4.922-12.422-9.04-2.703-9.189-4.404-21.263-6.523-24.13-20.679-3.209-67.31-11.344-68.498-32.15a10.627 10.627 0 0 1 8.877-11.069c69.583-11.455 100.924-82.901 102.227-85.934.074-.176.155-.344.237-.515 3.713-7.537 4.544-13.849 2.463-18.753-5.05-11.896-26.872-16.164-36.053-19.796-23.715-9.366-27.015-20.128-25.612-27.504 2.437-12.836 21.725-20.735 33.002-15.453 8.919 4.181 16.843 6.297 23.547 6.297 5.022 0 8.212-1.204 9.96-2.171-2.043-35.936-7.101-87.29 5.687-115.969C158.122 21.304 229.705 15.42 250.826 15.42c.944 0 9.141-.089 10.11-.089 52.148 0 102.254 26.78 126.723 81.643 12.777 28.65 7.749 79.792 5.695 116.009 1.582.872 4.357 1.942 8.599 2.139 6.397-.286 13.815-2.389 22.069-6.257 6.085-2.846 14.406-2.461 20.48.058l.029.01c9.476 3.385 15.439 10.215 15.589 17.87.184 9.747-8.522 18.165-25.878 25.018-2.118.835-4.694 1.655-7.434 2.525-9.797 3.106-24.6 7.805-28.616 17.271-2.079 4.904-1.256 11.211 2.46 18.748.087.168.166.342.239.515 1.301 3.03 32.615 74.46 102.23 85.934 6.427 1.058 11.163 7.877 7.725 15.859z\"},\"child\":[]}]})(props);\n};\nexport function FaSnapchatSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-6.5 314.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C159.1 100 206.7 96 220.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z\"},\"child\":[]}]})(props);\n};\nexport function FaSnapchat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm169.5 338.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C183.1 100 230.7 96 244.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z\"},\"child\":[]}]})(props);\n};\nexport function FaSoundcloud (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M111.4 256.3l5.8 65-5.8 68.3c-.3 2.5-2.2 4.4-4.4 4.4s-4.2-1.9-4.2-4.4l-5.6-68.3 5.6-65c0-2.2 1.9-4.2 4.2-4.2 2.2 0 4.1 2 4.4 4.2zm21.4-45.6c-2.8 0-4.7 2.2-5 5l-5 105.6 5 68.3c.3 2.8 2.2 5 5 5 2.5 0 4.7-2.2 4.7-5l5.8-68.3-5.8-105.6c0-2.8-2.2-5-4.7-5zm25.5-24.1c-3.1 0-5.3 2.2-5.6 5.3l-4.4 130 4.4 67.8c.3 3.1 2.5 5.3 5.6 5.3 2.8 0 5.3-2.2 5.3-5.3l5.3-67.8-5.3-130c0-3.1-2.5-5.3-5.3-5.3zM7.2 283.2c-1.4 0-2.2 1.1-2.5 2.5L0 321.3l4.7 35c.3 1.4 1.1 2.5 2.5 2.5s2.2-1.1 2.5-2.5l5.6-35-5.6-35.6c-.3-1.4-1.1-2.5-2.5-2.5zm23.6-21.9c-1.4 0-2.5 1.1-2.5 2.5l-6.4 57.5 6.4 56.1c0 1.7 1.1 2.8 2.5 2.8s2.5-1.1 2.8-2.5l7.2-56.4-7.2-57.5c-.3-1.4-1.4-2.5-2.8-2.5zm25.3-11.4c-1.7 0-3.1 1.4-3.3 3.3L47 321.3l5.8 65.8c.3 1.7 1.7 3.1 3.3 3.1 1.7 0 3.1-1.4 3.1-3.1l6.9-65.8-6.9-68.1c0-1.9-1.4-3.3-3.1-3.3zm25.3-2.2c-1.9 0-3.6 1.4-3.6 3.6l-5.8 70 5.8 67.8c0 2.2 1.7 3.6 3.6 3.6s3.6-1.4 3.9-3.6l6.4-67.8-6.4-70c-.3-2.2-2-3.6-3.9-3.6zm241.4-110.9c-1.1-.8-2.8-1.4-4.2-1.4-2.2 0-4.2.8-5.6 1.9-1.9 1.7-3.1 4.2-3.3 6.7v.8l-3.3 176.7 1.7 32.5 1.7 31.7c.3 4.7 4.2 8.6 8.9 8.6s8.6-3.9 8.6-8.6l3.9-64.2-3.9-177.5c-.4-3-2-5.8-4.5-7.2zm-26.7 15.3c-1.4-.8-2.8-1.4-4.4-1.4s-3.1.6-4.4 1.4c-2.2 1.4-3.6 3.9-3.6 6.7l-.3 1.7-2.8 160.8s0 .3 3.1 65.6v.3c0 1.7.6 3.3 1.7 4.7 1.7 1.9 3.9 3.1 6.4 3.1 2.2 0 4.2-1.1 5.6-2.5 1.7-1.4 2.5-3.3 2.5-5.6l.3-6.7 3.1-58.6-3.3-162.8c-.3-2.8-1.7-5.3-3.9-6.7zm-111.4 22.5c-3.1 0-5.8 2.8-5.8 6.1l-4.4 140.6 4.4 67.2c.3 3.3 2.8 5.8 5.8 5.8 3.3 0 5.8-2.5 6.1-5.8l5-67.2-5-140.6c-.2-3.3-2.7-6.1-6.1-6.1zm376.7 62.8c-10.8 0-21.1 2.2-30.6 6.1-6.4-70.8-65.8-126.4-138.3-126.4-17.8 0-35 3.3-50.3 9.4-6.1 2.2-7.8 4.4-7.8 9.2v249.7c0 5 3.9 8.6 8.6 9.2h218.3c43.3 0 78.6-35 78.6-78.3.1-43.6-35.2-78.9-78.5-78.9zm-296.7-60.3c-4.2 0-7.5 3.3-7.8 7.8l-3.3 136.7 3.3 65.6c.3 4.2 3.6 7.5 7.8 7.5 4.2 0 7.5-3.3 7.5-7.5l3.9-65.6-3.9-136.7c-.3-4.5-3.3-7.8-7.5-7.8zm-53.6-7.8c-3.3 0-6.4 3.1-6.4 6.7l-3.9 145.3 3.9 66.9c.3 3.6 3.1 6.4 6.4 6.4 3.6 0 6.4-2.8 6.7-6.4l4.4-66.9-4.4-145.3c-.3-3.6-3.1-6.7-6.7-6.7zm26.7 3.4c-3.9 0-6.9 3.1-6.9 6.9L227 321.3l3.9 66.4c.3 3.9 3.1 6.9 6.9 6.9s6.9-3.1 6.9-6.9l4.2-66.4-4.2-141.7c0-3.9-3-6.9-6.9-6.9z\"},\"child\":[]}]})(props);\n};\nexport function FaSourcetree (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M427.2 203c0-112.1-90.9-203-203-203C112.1-.2 21.2 90.6 21 202.6A202.86 202.86 0 0 0 161.5 396v101.7a14.3 14.3 0 0 0 14.3 14.3h96.4a14.3 14.3 0 0 0 14.3-14.3V396.1A203.18 203.18 0 0 0 427.2 203zm-271.6 0c0-90.8 137.3-90.8 137.3 0-.1 89.9-137.3 91-137.3 0z\"},\"child\":[]}]})(props);\n};\nexport function FaSpeakap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 391.78C-15.41 303.59-8 167.42 80.64 87.64s224.8-73 304.21 15.24 72 224.36-16.64 304.14c-18.74 16.87 64 43.09 42 52.26-82.06 34.21-253.91 35-346.23-67.5zm213.31-211.6l38.5-40.86c-9.61-8.89-32-26.83-76.17-27.6-52.33-.91-95.86 28.3-96.77 80-.2 11.33.29 36.72 29.42 54.83 34.46 21.42 86.52 21.51 86 52.26-.37 21.28-26.42 25.81-38.59 25.6-3-.05-30.23-.46-47.61-24.62l-40 42.61c28.16 27 59 32.62 83.49 33.05 10.23.18 96.42.33 97.84-81 .28-15.81-2.07-39.72-28.86-56.59-34.36-21.64-85-19.45-84.43-49.75.41-23.25 31-25.37 37.53-25.26.43 0 26.62.26 39.62 17.37z\"},\"child\":[]}]})(props);\n};\nexport function FaSpeakerDeck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M213.86 296H100a100 100 0 0 1 0-200h132.84a40 40 0 0 1 0 80H98c-26.47 0-26.45 40 0 40h113.82a100 100 0 0 1 0 200H40a40 40 0 0 1 0-80h173.86c26.48 0 26.46-40 0-40zM298 416a120.21 120.21 0 0 0 51.11-80h64.55a19.83 19.83 0 0 0 19.66-20V196a19.83 19.83 0 0 0-19.66-20H296.42a60.77 60.77 0 0 0 0-80h136.93c43.44 0 78.65 35.82 78.65 80v160c0 44.18-35.21 80-78.65 80z\"},\"child\":[]}]})(props);\n};\nexport function FaSpotify (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm100.7 364.9c-4.2 0-6.8-1.3-10.7-3.6-62.4-37.6-135-39.2-206.7-24.5-3.9 1-9 2.6-11.9 2.6-9.7 0-15.8-7.7-15.8-15.8 0-10.3 6.1-15.2 13.6-16.8 81.9-18.1 165.6-16.5 237 26.2 6.1 3.9 9.7 7.4 9.7 16.5s-7.1 15.4-15.2 15.4zm26.9-65.6c-5.2 0-8.7-2.3-12.3-4.2-62.5-37-155.7-51.9-238.6-29.4-4.8 1.3-7.4 2.6-11.9 2.6-10.7 0-19.4-8.7-19.4-19.4s5.2-17.8 15.5-20.7c27.8-7.8 56.2-13.6 97.8-13.6 64.9 0 127.6 16.1 177 45.5 8.1 4.8 11.3 11 11.3 19.7-.1 10.8-8.5 19.5-19.4 19.5zm31-76.2c-5.2 0-8.4-1.3-12.9-3.9-71.2-42.5-198.5-52.7-280.9-29.7-3.6 1-8.1 2.6-12.9 2.6-13.2 0-23.3-10.3-23.3-23.6 0-13.6 8.4-21.3 17.4-23.9 35.2-10.3 74.6-15.2 117.5-15.2 73 0 149.5 15.2 205.4 47.8 7.8 4.5 12.9 10.7 12.9 22.6 0 13.6-11 23.3-23.2 23.3z\"},\"child\":[]}]})(props);\n};\nexport function FaSquarespace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M186.12 343.34c-9.65 9.65-9.65 25.29 0 34.94 9.65 9.65 25.29 9.65 34.94 0L378.24 221.1c19.29-19.29 50.57-19.29 69.86 0s19.29 50.57 0 69.86L293.95 445.1c19.27 19.29 50.53 19.31 69.82.04l.04-.04 119.25-119.24c38.59-38.59 38.59-101.14 0-139.72-38.59-38.59-101.15-38.59-139.72 0l-157.22 157.2zm244.53-104.8c-9.65-9.65-25.29-9.65-34.93 0l-157.2 157.18c-19.27 19.29-50.53 19.31-69.82.05l-.05-.05c-9.64-9.64-25.27-9.65-34.92-.01l-.01.01c-9.65 9.64-9.66 25.28-.02 34.93l.02.02c38.58 38.57 101.14 38.57 139.72 0l157.2-157.2c9.65-9.65 9.65-25.29.01-34.93zm-261.99 87.33l157.18-157.18c9.64-9.65 9.64-25.29 0-34.94-9.64-9.64-25.27-9.64-34.91 0L133.72 290.93c-19.28 19.29-50.56 19.3-69.85.01l-.01-.01c-19.29-19.28-19.31-50.54-.03-69.84l.03-.03L218.03 66.89c-19.28-19.29-50.55-19.3-69.85-.02l-.02.02L28.93 186.14c-38.58 38.59-38.58 101.14 0 139.72 38.6 38.59 101.13 38.59 139.73.01zm-87.33-52.4c9.64 9.64 25.27 9.64 34.91 0l157.21-157.19c19.28-19.29 50.55-19.3 69.84-.02l.02.02c9.65 9.65 25.29 9.65 34.93 0 9.65-9.65 9.65-25.29 0-34.93-38.59-38.59-101.13-38.59-139.72 0L81.33 238.54c-9.65 9.64-9.65 25.28-.01 34.93h.01z\"},\"child\":[]}]})(props);\n};\nexport function FaStackExchange (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M17.7 332.3h412.7v22c0 37.7-29.3 68-65.3 68h-19L259.3 512v-89.7H83c-36 0-65.3-30.3-65.3-68v-22zm0-23.6h412.7v-85H17.7v85zm0-109.4h412.7v-85H17.7v85zM365 0H83C47 0 17.7 30.3 17.7 67.7V90h412.7V67.7C430.3 30.3 401 0 365 0z\"},\"child\":[]}]})(props);\n};\nexport function FaStackOverflow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M290.7 311L95 269.7 86.8 309l195.7 41zm51-87L188.2 95.7l-25.5 30.8 153.5 128.3zm-31.2 39.7L129.2 179l-16.7 36.5L293.7 300zM262 32l-32 24 119.3 160.3 32-24zm20.5 328h-200v39.7h200zm39.7 80H42.7V320h-40v160h359.5V320h-40z\"},\"child\":[]}]})(props);\n};\nexport function FaStackpath (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M244.6 232.4c0 8.5-4.26 20.49-21.34 20.49h-19.61v-41.47h19.61c17.13 0 21.34 12.36 21.34 20.98zM448 32v448H0V32zM151.3 287.84c0-21.24-12.12-34.54-46.72-44.85-20.57-7.41-26-10.91-26-18.63s7-14.61 20.41-14.61c14.09 0 20.79 8.45 20.79 18.35h30.7l.19-.57c.5-19.57-15.06-41.65-51.12-41.65-23.37 0-52.55 10.75-52.55 38.29 0 19.4 9.25 31.29 50.74 44.37 17.26 6.15 21.91 10.4 21.91 19.48 0 15.2-19.13 14.23-19.47 14.23-20.4 0-25.65-9.1-25.65-21.9h-30.8l-.18.56c-.68 31.32 28.38 45.22 56.63 45.22 29.98 0 51.12-13.55 51.12-38.29zm125.38-55.63c0-25.3-18.43-45.46-53.42-45.46h-51.78v138.18h32.17v-47.36h19.61c30.25 0 53.42-15.95 53.42-45.36zM297.94 325L347 186.78h-31.09L268 325zm106.52-138.22h-31.09L325.46 325h29.94z\"},\"child\":[]}]})(props);\n};\nexport function FaStaylinked (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 440 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M382.7 292.5l2.7 2.7-170-167.3c-3.5-3.5-9.7-3.7-13.8-.5L144.3 171c-4.2 3.2-4.6 8.7-1.1 12.2l68.1 64.3c3.6 3.5 9.9 3.7 14 .5l.1-.1c4.1-3.2 10.4-3 14 .5l84 81.3c3.6 3.5 3.2 9-.9 12.2l-93.2 74c-4.2 3.3-10.5 3.1-14.2-.4L63.2 268c-3.5-3.5-9.7-3.7-13.9-.5L3.5 302.4c-4.2 3.2-4.7 8.7-1.2 12.2L211 510.7s7.4 6.8 17.3-.8l198-163.9c4-3.2 4.4-8.7.7-12.2zm54.5-83.4L226.7 2.5c-1.5-1.2-8-5.5-16.3 1.1L3.6 165.7c-4.2 3.2-4.8 8.7-1.2 12.2l42.3 41.7 171.7 165.1c3.7 3.5 10.1 3.7 14.3.4l50.2-38.8-.3-.3 7.7-6c4.2-3.2 4.6-8.7.9-12.2l-57.1-54.4c-3.6-3.5-10-3.7-14.2-.5l-.1.1c-4.2 3.2-10.5 3.1-14.2-.4L109 180.8c-3.6-3.5-3.1-8.9 1.1-12.2l92.2-71.5c4.1-3.2 10.3-3 13.9.5l160.4 159c3.7 3.5 10 3.7 14.1.5l45.8-35.8c4.1-3.2 4.4-8.7.7-12.2z\"},\"child\":[]}]})(props);\n};\nexport function FaSteamSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M185.2 356.5c7.7-18.5-1-39.7-19.6-47.4l-29.5-12.2c11.4-4.3 24.3-4.5 36.4.5 12.2 5.1 21.6 14.6 26.7 26.7 5 12.2 5 25.6-.1 37.7-10.5 25.1-39.4 37-64.6 26.5-11.6-4.8-20.4-13.6-25.4-24.2l28.5 11.8c18.6 7.8 39.9-.9 47.6-19.4zM400 32H48C21.5 32 0 53.5 0 80v160.7l116.6 48.1c12-8.2 26.2-12.1 40.7-11.3l55.4-80.2v-1.1c0-48.2 39.3-87.5 87.6-87.5s87.6 39.3 87.6 87.5c0 49.2-40.9 88.7-89.6 87.5l-79 56.3c1.6 38.5-29.1 68.8-65.7 68.8-31.8 0-58.5-22.7-64.5-52.7L0 319.2V432c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-99.7 222.5c-32.2 0-58.4-26.1-58.4-58.3s26.2-58.3 58.4-58.3 58.4 26.2 58.4 58.3-26.2 58.3-58.4 58.3zm.1-14.6c24.2 0 43.9-19.6 43.9-43.8 0-24.2-19.6-43.8-43.9-43.8-24.2 0-43.9 19.6-43.9 43.8 0 24.2 19.7 43.8 43.9 43.8z\"},\"child\":[]}]})(props);\n};\nexport function FaSteamSymbol (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M395.5 177.5c0 33.8-27.5 61-61 61-33.8 0-61-27.3-61-61s27.3-61 61-61c33.5 0 61 27.2 61 61zm52.5.2c0 63-51 113.8-113.7 113.8L225 371.3c-4 43-40.5 76.8-84.5 76.8-40.5 0-74.7-28.8-83-67L0 358V250.7L97.2 290c15.1-9.2 32.2-13.3 52-11.5l71-101.7c.5-62.3 51.5-112.8 114-112.8C397 64 448 115 448 177.7zM203 363c0-34.7-27.8-62.5-62.5-62.5-4.5 0-9 .5-13.5 1.5l26 10.5c25.5 10.2 38 39 27.7 64.5-10.2 25.5-39.2 38-64.7 27.5-10.2-4-20.5-8.3-30.7-12.2 10.5 19.7 31.2 33.2 55.2 33.2 34.7 0 62.5-27.8 62.5-62.5zm207.5-185.3c0-42-34.3-76.2-76.2-76.2-42.3 0-76.5 34.2-76.5 76.2 0 42.2 34.3 76.2 76.5 76.2 41.9.1 76.2-33.9 76.2-76.2z\"},\"child\":[]}]})(props);\n};\nexport function FaSteam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 256c0 137-111.2 248-248.4 248-113.8 0-209.6-76.3-239-180.4l95.2 39.3c6.4 32.1 34.9 56.4 68.9 56.4 39.2 0 71.9-32.4 70.2-73.5l84.5-60.2c52.1 1.3 95.8-40.9 95.8-93.5 0-51.6-42-93.5-93.7-93.5s-93.7 42-93.7 93.5v1.2L176.6 279c-15.5-.9-30.7 3.4-43.5 12.1L0 236.1C10.2 108.4 117.1 8 247.6 8 384.8 8 496 119 496 256zM155.7 384.3l-30.5-12.6a52.79 52.79 0 0 0 27.2 25.8c26.9 11.2 57.8-1.6 69-28.4 5.4-13 5.5-27.3.1-40.3-5.4-13-15.5-23.2-28.5-28.6-12.9-5.4-26.7-5.2-38.9-.6l31.5 13c19.8 8.2 29.2 30.9 20.9 50.7-8.3 19.9-31 29.2-50.8 21zm173.8-129.9c-34.4 0-62.4-28-62.4-62.3s28-62.3 62.4-62.3 62.4 28 62.4 62.3-27.9 62.3-62.4 62.3zm.1-15.6c25.9 0 46.9-21 46.9-46.8 0-25.9-21-46.8-46.9-46.8s-46.9 21-46.9 46.8c.1 25.8 21.1 46.8 46.9 46.8z\"},\"child\":[]}]})(props);\n};\nexport function FaStickerMule (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M561.7 199.6c-1.3.3.3 0 0 0zm-6.2-77.4c-7.7-22.3-5.1-7.2-13.4-36.9-1.6-6.5-3.6-14.5-6.2-20-4.4-8.7-4.6-7.5-4.6-9.5 0-5.3 30.7-45.3 19-46.9-5.7-.6-12.2 11.6-20.6 17-8.6 4.2-8 5-10.3 5-2.6 0-5.7-3-6.2-5-2-5.7 1.9-25.9-3.6-25.9-3.6 0-12.3 24.8-17 25.8-5.2 1.3-27.9-11.4-75.1 18-25.3 13.2-86.9 65.2-87 65.3-6.7 4.7-20 4.7-35.5 16-44.4 30.1-109.6 9.4-110.7 9-110.6-26.8-128-15.2-159 11.5-20.8 17.9-23.7 36.5-24.2 38.9-4.2 20.4 5.2 48.3 6.7 64.3 1.8 19.3-2.7 17.7 7.7 98.3.5 1 4.1 0 5.1 1.5 0 8.4-3.8 12.1-4.1 13-1.5 4.5-1.5 10.5 0 16 2.3 8.2 8.2 37.2 8.2 46.9 0 41.8.4 44 2.6 49.4 3.9 10 12.5 9.1 17 12 3.1 3.5-.5 8.5 1 12.5.5 2 3.6 4 6.2 5 9.2 3.6 27 .3 29.9-2.5 1.6-1.5.5-4.5 3.1-5 5.1 0 10.8-.5 14.4-2.5 5.1-2.5 4.1-6 1.5-10.5-.4-.8-7-13.3-9.8-16-2.1-2-5.1-3-7.2-4.5-5.8-4.9-10.3-19.4-10.3-19.5-4.6-19.4-10.3-46.3-4.1-66.8 4.6-17.2 39.5-87.7 39.6-87.8 4.1-6.5 17-11.5 27.3-7 6 1.9 19.3 22 65.4 30.9 47.9 8.7 97.4-2 112.2-2 2.8 2-1.9 13-.5 38.9 0 26.4-.4 13.7-4.1 29.9-2.2 9.7 3.4 23.2-1.5 46.9-1.4 9.8-9.9 32.7-8.2 43.4.5 1 1 2 1.5 3.5.5 4.5 1.5 8.5 4.6 10 7.3 3.6 12-3.5 9.8 11.5-.7 3.1-2.6 12 1.5 15 4.4 3.7 30.6 3.4 36.5.5 2.6-1.5 1.6-4.5 6.4-7.4 1.9-.9 11.3-.4 11.3-6.5.3-1.8-9.2-19.9-9.3-20-2.6-3.5-9.2-4.5-11.3-8-6.9-10.1-1.7-52.6.5-59.4 3-11 5.6-22.4 8.7-32.4 11-42.5 10.3-50.6 16.5-68.3.8-1.8 6.4-23.1 10.3-29.9 9.3-17 21.7-32.4 33.5-47.4 18-22.9 34-46.9 52-69.8 6.1-7 8.2-13.7 18-8 10.8 5.7 21.6 7 31.9 17 14.6 12.8 10.2 18.2 11.8 22.9 1.5 5 7.7 10.5 14.9 9.5 10.4-2 13-2.5 13.4-2.5 2.6-.5 5.7-5 7.2-8 3.1-5.5 7.2-9 7.2-16.5 0-7.7-.4-2.8-20.6-52.9z\"},\"child\":[]}]})(props);\n};\nexport function FaStrava (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M158.4 0L7 292h89.2l62.2-116.1L220.1 292h88.5zm150.2 292l-43.9 88.2-44.6-88.2h-67.6l112.2 220 111.5-220z\"},\"child\":[]}]})(props);\n};\nexport function FaStripeS (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M155.3 154.6c0-22.3 18.6-30.9 48.4-30.9 43.4 0 98.5 13.3 141.9 36.7V26.1C298.3 7.2 251.1 0 203.8 0 88.1 0 11 60.4 11 161.4c0 157.9 216.8 132.3 216.8 200.4 0 26.4-22.9 34.9-54.7 34.9-47.2 0-108.2-19.5-156.1-45.5v128.5a396.09 396.09 0 0 0 156 32.4c118.6 0 200.3-51 200.3-153.6 0-170.2-218-139.7-218-203.9z\"},\"child\":[]}]})(props);\n};\nexport function FaStripe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M165 144.7l-43.3 9.2-.2 142.4c0 26.3 19.8 43.3 46.1 43.3 14.6 0 25.3-2.7 31.2-5.9v-33.8c-5.7 2.3-33.7 10.5-33.7-15.7V221h33.7v-37.8h-33.7zm89.1 51.6l-2.7-13.1H213v153.2h44.3V233.3c10.5-13.8 28.2-11.1 33.9-9.3v-40.8c-6-2.1-26.7-6-37.1 13.1zm92.3-72.3l-44.6 9.5v36.2l44.6-9.5zM44.9 228.3c0-6.9 5.8-9.6 15.1-9.7 13.5 0 30.7 4.1 44.2 11.4v-41.8c-14.7-5.8-29.4-8.1-44.1-8.1-36 0-60 18.8-60 50.2 0 49.2 67.5 41.2 67.5 62.4 0 8.2-7.1 10.9-17 10.9-14.7 0-33.7-6.1-48.6-14.2v40c16.5 7.1 33.2 10.1 48.5 10.1 36.9 0 62.3-15.8 62.3-47.8 0-52.9-67.9-43.4-67.9-63.4zM640 261.6c0-45.5-22-81.4-64.2-81.4s-67.9 35.9-67.9 81.1c0 53.5 30.3 78.2 73.5 78.2 21.2 0 37.1-4.8 49.2-11.5v-33.4c-12.1 6.1-26 9.8-43.6 9.8-17.3 0-32.5-6.1-34.5-26.9h86.9c.2-2.3.6-11.6.6-15.9zm-87.9-16.8c0-20 12.3-28.4 23.4-28.4 10.9 0 22.5 8.4 22.5 28.4zm-112.9-64.6c-17.4 0-28.6 8.2-34.8 13.9l-2.3-11H363v204.8l44.4-9.4.1-50.2c6.4 4.7 15.9 11.2 31.4 11.2 31.8 0 60.8-23.2 60.8-79.6.1-51.6-29.3-79.7-60.5-79.7zm-10.6 122.5c-10.4 0-16.6-3.8-20.9-8.4l-.3-66c4.6-5.1 11-8.8 21.2-8.8 16.2 0 27.4 18.2 27.4 41.4.1 23.9-10.9 41.8-27.4 41.8zm-126.7 33.7h44.6V183.2h-44.6z\"},\"child\":[]}]})(props);\n};\nexport function FaStudiovinari (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480.3 187.7l4.2 28v28l-25.1 44.1-39.8 78.4-56.1 67.5-79.1 37.8-17.7 24.5-7.7 12-9.6 4s17.3-63.6 19.4-63.6c2.1 0 20.3.7 20.3.7l66.7-38.6-92.5 26.1-55.9 36.8-22.8 28-6.6 1.4 20.8-73.6 6.9-5.5 20.7 12.9 88.3-45.2 56.8-51.5 14.8-68.4-125.4 23.3 15.2-18.2-173.4-53.3 81.9-10.5-166-122.9L133.5 108 32.2 0l252.9 126.6-31.5-38L378 163 234.7 64l18.7 38.4-49.6-18.1L158.3 0l194.6 122L310 66.2l108 96.4 12-8.9-21-16.4 4.2-37.8L451 89.1l29.2 24.7 11.5 4.2-7 6.2 8.5 12-13.1 7.4-10.3 20.2 10.5 23.9z\"},\"child\":[]}]})(props);\n};\nexport function FaStumbleuponCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 177.5c-9.8 0-17.8 8-17.8 17.8v106.9c0 40.9-33.9 73.9-74.9 73.9-41.4 0-74.9-33.5-74.9-74.9v-46.5h57.3v45.8c0 10 8 17.8 17.8 17.8s17.8-7.9 17.8-17.8V200.1c0-40 34.2-72.1 74.7-72.1 40.7 0 74.7 32.3 74.7 72.6v23.7l-34.1 10.1-22.9-10.7v-20.6c.1-9.6-7.9-17.6-17.7-17.6zm167.6 123.6c0 41.4-33.5 74.9-74.9 74.9-41.2 0-74.9-33.2-74.9-74.2V263l22.9 10.7 34.1-10.1v47.1c0 9.8 8 17.6 17.8 17.6s17.8-7.9 17.8-17.6v-48h57.3c-.1 45.9-.1 46.4-.1 46.4z\"},\"child\":[]}]})(props);\n};\nexport function FaStumbleupon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.9 266v69.7c0 62.1-50.3 112.4-112.4 112.4-61.8 0-112.4-49.8-112.4-111.3v-70.2l34.3 16 51.1-15.2V338c0 14.7 12 26.5 26.7 26.5S417 352.7 417 338v-72h85.9zm-224.7-58.2l34.3 16 51.1-15.2V173c0-60.5-51.1-109-112.1-109-60.8 0-112.1 48.2-112.1 108.2v162.4c0 14.9-12 26.7-26.7 26.7S86 349.5 86 334.6V266H0v69.7C0 397.7 50.3 448 112.4 448c61.6 0 112.4-49.5 112.4-110.8V176.9c0-14.7 12-26.7 26.7-26.7s26.7 12 26.7 26.7v30.9z\"},\"child\":[]}]})(props);\n};\nexport function FaSuperpowers (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 32c-83.3 11-166.8 22-250 33-92 12.5-163.3 86.7-169 180-3.3 55.5 18 109.5 57.8 148.2L0 480c83.3-11 166.5-22 249.8-33 91.8-12.5 163.3-86.8 168.7-179.8 3.5-55.5-18-109.5-57.7-148.2L448 32zm-79.7 232.3c-4.2 79.5-74 139.2-152.8 134.5-79.5-4.7-140.7-71-136.3-151 4.5-79.2 74.3-139.3 153-134.5 79.3 4.7 140.5 71 136.1 151z\"},\"child\":[]}]})(props);\n};\nexport function FaSupple (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M640 262.5c0 64.1-109 116.1-243.5 116.1-24.8 0-48.6-1.8-71.1-5 7.7.4 15.5.6 23.4.6 134.5 0 243.5-56.9 243.5-127.1 0-29.4-19.1-56.4-51.2-78 60 21.1 98.9 55.1 98.9 93.4zM47.7 227.9c-.1-70.2 108.8-127.3 243.3-127.6 7.9 0 15.6.2 23.3.5-22.5-3.2-46.3-4.9-71-4.9C108.8 96.3-.1 148.5 0 212.6c.1 38.3 39.1 72.3 99.3 93.3-32.3-21.5-51.5-48.6-51.6-78zm60.2 39.9s10.5 13.2 29.3 13.2c17.9 0 28.4-11.5 28.4-25.1 0-28-40.2-25.1-40.2-39.7 0-5.4 5.3-9.1 12.5-9.1 5.7 0 11.3 2.6 11.3 6.6v3.9h14.2v-7.9c0-12.1-15.4-16.8-25.4-16.8-16.5 0-28.5 10.2-28.5 24.1 0 26.6 40.2 25.4 40.2 39.9 0 6.6-5.8 10.1-12.3 10.1-11.9 0-20.7-10.1-20.7-10.1l-8.8 10.9zm120.8-73.6v54.4c0 11.3-7.1 17.8-17.8 17.8-10.7 0-17.8-6.5-17.8-17.7v-54.5h-15.8v55c0 18.9 13.4 31.9 33.7 31.9 20.1 0 33.4-13 33.4-31.9v-55h-15.7zm34.4 85.4h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.8-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5.1 14.7-14 14.7h-12.6zm57 43h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.7-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5 14.7-14 14.7h-12.6zm57.1 34.8c0 5.8 2.4 8.2 8.2 8.2h37.6c5.8 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-18.6c-1.7 0-2.6-1-2.6-2.6v-61.2c0-5.7-2.4-8.2-8.2-8.2H401v13.4h5.2c1.7 0 2.6 1 2.6 2.6v61.2zm63.4 0c0 5.8 2.4 8.2 8.2 8.2H519c5.7 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-19.7c-1.7 0-2.6-1-2.6-2.6v-20.3h27.7v-13.4H488v-22.4h19.2c1.7 0 2.6 1 2.6 2.6v5.2H524v-13c0-5.7-2.5-8.2-8.2-8.2h-51.6v13.4h7.8v63.9zm58.9-76v5.9h1.6v-5.9h2.7v-1.2h-7v1.2h2.7zm5.7-1.2v7.1h1.5v-5.7l2.3 5.7h1.3l2.3-5.7v5.7h1.5v-7.1h-2.3l-2.1 5.1-2.1-5.1h-2.4z\"},\"child\":[]}]})(props);\n};\nexport function FaSuse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M471.08 102.66s-.3 18.3-.3 20.3c-9.1-3-74.4-24.1-135.7-26.3-51.9-1.8-122.8-4.3-223 57.3-19.4 12.4-73.9 46.1-99.6 109.7C7 277-.12 307 7 335.06a111 111 0 0 0 16.5 35.7c17.4 25 46.6 41.6 78.1 44.4 44.4 3.9 78.1-16 90-53.3 8.2-25.8 0-63.6-31.5-82.9-25.6-15.7-53.3-12.1-69.2-1.6-13.9 9.2-21.8 23.5-21.6 39.2.3 27.8 24.3 42.6 41.5 42.6a49 49 0 0 0 15.8-2.7c6.5-1.8 13.3-6.5 13.3-14.9 0-12.1-11.6-14.8-16.8-13.9-2.9.5-4.5 2-11.8 2.4-2-.2-12-3.1-12-14V316c.2-12.3 13.2-18 25.5-16.9 32.3 2.8 47.7 40.7 28.5 65.7-18.3 23.7-76.6 23.2-99.7-20.4-26-49.2 12.7-111.2 87-98.4 33.2 5.7 83.6 35.5 102.4 104.3h45.9c-5.7-17.6-8.9-68.3 42.7-68.3 56.7 0 63.9 39.9 79.8 68.3H460c-12.8-18.3-21.7-38.7-18.9-55.8 5.6-33.8 39.7-18.4 82.4-17.4 66.5.4 102.1-27 103.1-28 3.7-3.1 6.5-15.8 7-17.7 1.3-5.1-3.2-2.4-3.2-2.4-8.7 5.2-30.5 15.2-50.9 15.6-25.3.5-76.2-25.4-81.6-28.2-.3-.4.1 1.2-11-25.5 88.4 58.3 118.3 40.5 145.2 21.7.8-.6 4.3-2.9 3.6-5.7-13.8-48.1-22.4-62.7-34.5-69.6-37-21.6-125-34.7-129.2-35.3.1-.1-.9-.3-.9.7zm60.4 72.8a37.54 37.54 0 0 1 38.9-36.3c33.4 1.2 48.8 42.3 24.4 65.2-24.2 22.7-64.4 4.6-63.3-28.9zm38.6-25.3a26.27 26.27 0 1 0 25.4 27.2 26.19 26.19 0 0 0-25.4-27.2zm4.3 28.8c-15.4 0-15.4-15.6 0-15.6s15.4 15.64 0 15.64z\"},\"child\":[]}]})(props);\n};\nexport function FaSwift (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 156.09c0-4.51-.08-9-.2-13.52a196.31 196.31 0 0 0-2.58-29.42 99.62 99.62 0 0 0-9.22-28A94.08 94.08 0 0 0 394.84 44a99.17 99.17 0 0 0-28-9.22 195 195 0 0 0-29.43-2.59c-4.51-.12-9-.17-13.52-.2H124.14c-4.51 0-9 .08-13.52.2-2.45.07-4.91.15-7.37.27a171.68 171.68 0 0 0-22.06 2.32 103.06 103.06 0 0 0-21.21 6.1q-3.46 1.45-6.81 3.12a94.66 94.66 0 0 0-18.39 12.32c-1.88 1.61-3.69 3.28-5.43 5A93.86 93.86 0 0 0 12 85.17a99.45 99.45 0 0 0-9.22 28 196.31 196.31 0 0 0-2.54 29.4c-.13 4.51-.18 9-.21 13.52v199.83c0 4.51.08 9 .21 13.51a196.08 196.08 0 0 0 2.58 29.42 99.3 99.3 0 0 0 9.22 28A94.31 94.31 0 0 0 53.17 468a99.47 99.47 0 0 0 28 9.21 195 195 0 0 0 29.43 2.59c4.5.12 9 .17 13.52.2H323.91c4.51 0 9-.08 13.52-.2a196.59 196.59 0 0 0 29.44-2.59 99.57 99.57 0 0 0 28-9.21A94.22 94.22 0 0 0 436 426.84a99.3 99.3 0 0 0 9.22-28 194.79 194.79 0 0 0 2.59-29.42c.12-4.5.17-9 .2-13.51V172.14c-.01-5.35-.01-10.7-.01-16.05zm-69.88 241c-20-38.93-57.23-29.27-76.31-19.47-1.72 1-3.48 2-5.25 3l-.42.25c-39.5 21-92.53 22.54-145.85-.38A234.64 234.64 0 0 1 45 290.12a230.63 230.63 0 0 0 39.17 23.37c56.36 26.4 113 24.49 153 0-57-43.85-104.6-101-141.09-147.22a197.09 197.09 0 0 1-18.78-25.9c43.7 40 112.7 90.22 137.48 104.12-52.57-55.49-98.89-123.94-96.72-121.74 82.79 83.42 159.18 130.59 159.18 130.59 2.88 1.58 5 2.85 6.73 4a127.44 127.44 0 0 0 4.16-12.47c13.22-48.33-1.66-103.58-35.31-149.2C329.61 141.75 375 229.34 356.4 303.42c-.44 1.73-.95 3.4-1.44 5.09 38.52 47.4 28.04 98.17 23.13 88.59z\"},\"child\":[]}]})(props);\n};\nexport function FaSymfony (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm133.74 143.54c-11.47.41-19.4-6.45-19.77-16.87-.27-9.18 6.68-13.44 6.53-18.85-.23-6.55-10.16-6.82-12.87-6.67-39.78 1.29-48.59 57-58.89 113.85 21.43 3.15 36.65-.72 45.14-6.22 12-7.75-3.34-15.72-1.42-24.56 4-18.16 32.55-19 32 5.3-.36 17.86-25.92 41.81-77.6 35.7-10.76 59.52-18.35 115-58.2 161.72-29 34.46-58.4 39.82-71.58 40.26-24.65.85-41-12.31-41.58-29.84-.56-17 14.45-26.26 24.31-26.59 21.89-.75 30.12 25.67 14.88 34-12.09 9.71.11 12.61 2.05 12.55 10.42-.36 17.34-5.51 22.18-9 24-20 33.24-54.86 45.35-118.35 8.19-49.66 17-78 18.23-82-16.93-12.75-27.08-28.55-49.85-34.72-15.61-4.23-25.12-.63-31.81 7.83-7.92 10-5.29 23 2.37 30.7l12.63 14c15.51 17.93 24 31.87 20.8 50.62-5.06 29.93-40.72 52.9-82.88 39.94-36-11.11-42.7-36.56-38.38-50.62 7.51-24.15 42.36-11.72 34.62 13.6-2.79 8.6-4.92 8.68-6.28 13.07-4.56 14.77 41.85 28.4 51-1.39 4.47-14.52-5.3-21.71-22.25-39.85-28.47-31.75-16-65.49 2.95-79.67C204.23 140.13 251.94 197 262 205.29c37.17-109 100.53-105.46 102.43-105.53 25.16-.81 44.19 10.59 44.83 28.65.25 7.69-4.17 22.59-19.52 23.13z\"},\"child\":[]}]})(props);\n};\nexport function FaTeamspeak (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M244.2 346.79c2.4-12.3-12-30-32.4-48.7-20.9-19.2-48.2-39.1-63.4-46.6-21.7-12-41.7-1.8-46.3 22.7-5 26.2 0 51.4 14.5 73.9 10.2 15.5 25.4 22.7 43.4 24 11.6.6 52.5 2.2 61.7-1 11.9-4.3 20.1-11.8 22.5-24.3zm205 20.8a5.22 5.22 0 0 0-8.3 2.4c-8 25.4-44.7 112.5-172.1 121.5-149.7 10.5 80.3 43.6 145.4-6.4 22.7-17.4 47.6-35 46.6-85.4-.4-10.1-4.9-26.69-11.6-32.1zm62-122.4c-.3-18.9-8.6-33.4-26-42.2-2.9-1.3-5-2.7-5.9-6.4A222.64 222.64 0 0 0 438.9 103c-1.1-1.5-3.5-3.2-2.2-5 8.5-11.5-.3-18-7-24.4Q321.4-31.11 177.4 13.09c-40.1 12.3-73.9 35.6-102 67.4-4 4.3-6.7 9.1-3 14.5 3 4 1.3 6.2-1 9.3C51.6 132 38.2 162.59 32.1 196c-.7 4.3-2.9 6-6.4 7.8-14.2 7-22.5 18.5-24.9 34L0 264.29v20.9c0 30.8 21 50.4 51.8 49 7.7-.3 11.7-4.3 12-11.5 2-77.5-2.4-95.4 3.7-125.8C92.1 72.39 234.3 5 345.3 65.39 411.4 102 445.7 159 447.6 234.79c.8 28.2 0 56.5 0 84.6 0 7 2.2 12.5 9.4 14.2 24.1 5 49.2-12 53.2-36.7 2.9-17.1 1-34.5 1-51.7zm-159.6 131.5c36.5 2.8 59.3-28.5 58.4-60.5-2.1-45.2-66.2-16.5-87.8-8-73.2 28.1-45 54.9-22.2 60.8z\"},\"child\":[]}]})(props);\n};\nexport function FaTelegramPlane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M446.7 98.6l-67.6 318.8c-5.1 22.5-18.4 28.1-37.3 17.5l-103-75.9-49.7 47.8c-5.5 5.5-10.1 10.1-20.7 10.1l7.4-104.9 190.9-172.5c8.3-7.4-1.8-11.5-12.9-4.1L117.8 284 16.2 252.2c-22.1-6.9-22.5-22.1 4.6-32.7L418.2 66.4c18.4-6.9 34.5 4.1 28.5 32.2z\"},\"child\":[]}]})(props);\n};\nexport function FaTelegram (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm121.8 169.9l-40.7 191.8c-3 13.6-11.1 16.9-22.4 10.5l-62-45.7-29.9 28.8c-3.3 3.3-6.1 6.1-12.5 6.1l4.4-63.1 114.9-103.8c5-4.4-1.1-6.9-7.7-2.5l-142 89.4-61.2-19.1c-13.3-4.2-13.6-13.3 2.8-19.7l239.1-92.2c11.1-4 20.8 2.7 17.2 19.5z\"},\"child\":[]}]})(props);\n};\nexport function FaTencentWeibo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M72.3 495.8c1.4 19.9-27.6 22.2-29.7 2.9C31 368.8 73.7 259.2 144 185.5c-15.6-34 9.2-77.1 50.6-77.1 30.3 0 55.1 24.6 55.1 55.1 0 44-49.5 70.8-86.9 45.1-65.7 71.3-101.4 169.8-90.5 287.2zM192 .1C66.1.1-12.3 134.3 43.7 242.4 52.4 259.8 79 246.9 70 229 23.7 136.4 91 29.8 192 29.8c75.4 0 136.9 61.4 136.9 136.9 0 90.8-86.9 153.9-167.7 133.1-19.1-4.1-25.6 24.4-6.6 29.1 110.7 23.2 204-60 204-162.3C358.6 74.7 284 .1 192 .1z\"},\"child\":[]}]})(props);\n};\nexport function FaTheRedYeti (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488.23 241.7l20.7 7.1c-9.6-23.9-23.9-37-31.7-44.8l7.1-18.2c.2 0 12.3-27.8-2.5-30.7-.6-11.3-6.6-27-18.4-27-7.6-10.6-17.7-12.3-30.7-5.9a122.2 122.2 0 0 0-25.3 16.5c-5.3-6.4-3 .4-3-29.8-37.1-24.3-45.4-11.7-74.8 3l.5.5a239.36 239.36 0 0 0-68.4-13.3c-5.5-8.7-18.6-19.1-25.1-25.1l24.8 7.1c-5.5-5.5-26.8-12.9-34.2-15.2 18.2-4.1 29.8-20.8 42.5-33-34.9-10.1-67.9-5.9-97.9 11.8l12-44.2L182 0c-31.6 24.2-33 41.9-33.7 45.5-.9-2.4-6.3-19.6-15.2-27a35.12 35.12 0 0 0-.5 25.3c3 8.4 5.9 14.8 8.4 18.9-16-3.3-28.3-4.9-49.2 0h-3.7l33 14.3a194.26 194.26 0 0 0-46.7 67.4l-1.7 8.4 1.7 1.7 7.6-4.7c-3.3 11.6-5.3 19.4-6.6 25.8a200.18 200.18 0 0 0-27.8 40.3c-15 1-31.8 10.8-40.3 14.3l3 3.4 28.8 1c-.5 1-.7 2.2-1.2 3.2-7.3 6.4-39.8 37.7-33 80.7l20.2-22.4c.5 1.7.7 3.4 1.2 5.2 0 25.5.4 89.6 64.9 150.5 43.6 40 96 60.2 157.5 60.2 121.7 0 223-87.3 223-211.5 6.8-9.7-1.2 3 16.7-25.1l13 14.3 2.5-.5A181.84 181.84 0 0 0 495 255a44.74 44.74 0 0 0-6.8-13.3zM398 111.2l-.5 21.9c5.5 18.1 16.9 17.2 22.4 17.2l-3.4-4.7 22.4-5.4a242.44 242.44 0 0 1-27 0c12.8-2.1 33.3-29 43-11.3 3.4 7.6 6.4 17.2 9.3 27.8l1.7-5.9a56.38 56.38 0 0 1-1.7-15.2c5.4.5 8.8 3.4 9.3 10.1.5 6.4 1.7 14.8 3.4 25.3l4.7-11.3c4.6 0 4.5-3.6-2.5 20.7-20.9-8.7-35.1-8.4-46.5-8.4l18.2-16c-25.3 8.2-33 10.8-54.8 20.9-1.1-5.4-5-13.5-16-19.9-3.2 3.8-2.8.9-.7 14.8h-2.5a62.32 62.32 0 0 0-8.4-23.1l4.2-3.4c8.4-7.1 11.8-14.3 10.6-21.9-.5-6.4-5.4-13.5-13.5-20.7 5.6-3.4 15.2-.4 28.3 8.5zm-39.6-10.1c2.7 1.9 11.4 5.4 18.9 17.2 4.2 8.4 4 9.8 3.4 11.1-.5 2.4-.5 4.3-3 7.1-1.7 2.5-5.4 4.7-11.8 7.6-7.6-13-16.5-23.6-27.8-31.2zM91 143.1l1.2-1.7c1.2-2.9 4.2-7.6 9.3-15.2l2.5-3.4-13 12.3 5.4-4.7-10.1 9.3-4.2 1.2c12.3-24.1 23.1-41.3 32.5-50.2 9.3-9.3 16-16 20.2-19.4l-6.4 1.2c-11.3-4.2-19.4-7.1-24.8-8.4 2.5-.5 3.7-.5 3.2-.5 10.3 0 17.5.5 20.9 1.2a52.35 52.35 0 0 0 16 2.5l.5-1.7-8.4-35.8 13.5 29a42.89 42.89 0 0 0 5.9-14.3c1.7-6.4 5.4-13 10.1-19.4s7.6-10.6 9.3-11.3a234.68 234.68 0 0 0-6.4 25.3l-1.7 7.1-.5 4.7 2.5 2.5C190.4 39.9 214 34 239.8 34.5l21.1.5c-11.8 13.5-27.8 21.9-48.5 24.8a201.26 201.26 0 0 1-23.4 2.9l-.2-.5-2.5-1.2a20.75 20.75 0 0 0-14 2c-2.5-.2-4.9-.5-7.1-.7l-2.5 1.7.5 1.2c2 .2 3.9.5 6.2.7l-2 3.4 3.4-.5-10.6 11.3c-4.2 3-5.4 6.4-4.2 9.3l5.4-3.4h1.2a39.4 39.4 0 0 1 25.3-15.2v-3c6.4.5 13 1 19.4 1.2 6.4 0 8.4.5 5.4 1.2a189.6 189.6 0 0 1 20.7 13.5c13.5 10.1 23.6 21.9 30 35.4 8.8 18.2 13.5 37.1 13.5 56.6a141.13 141.13 0 0 1-3 28.3 209.91 209.91 0 0 1-16 46l2.5.5c18.2-19.7 41.9-16 49.2-16l-6.4 5.9 22.4 17.7-1.7 30.7c-5.4-12.3-16.5-21.1-33-27.8 16.5 14.8 23.6 21.1 21.9 20.2-4.8-2.8-3.5-1.9-10.8-3.7 4.1 4.1 17.5 18.8 18.2 20.7l.2.2-.2.2c0 1.8 1.6-1.2-14 22.9-75.2-15.3-106.27-42.7-141.2-63.2l11.8 1.2c-11.8-18.5-15.6-17.7-38.4-26.1L149 225c-8.8-3-18.2-3-28.3.5l7.6-10.6-1.2-1.7c-14.9 4.3-19.8 9.2-22.6 11.3-1.1-5.5-2.8-12.4-12.3-28.8l-1.2 27-13.2-5c1.5-25.2 5.4-50.5 13.2-74.6zm276.5 330c-49.9 25-56.1 22.4-59 23.9-29.8-11.8-50.9-31.7-63.5-58.8l30 16.5c-9.8-9.3-18.3-16.5-38.4-44.3l11.8 23.1-17.7-7.6c14.2 21.1 23.5 51.7 66.6 73.5-120.8 24.2-199-72.1-200.9-74.3a262.57 262.57 0 0 0 35.4 24.8c3.4 1.7 7.1 2.5 10.1 1.2l-16-20.7c9.2 4.2 9.5 4.5 69.1 29-42.5-20.7-73.8-40.8-93.2-60.2-.5 6.4-1.2 10.1-1.2 10.1a80.25 80.25 0 0 1 20.7 26.6c-39-18.9-57.6-47.6-71.3-82.6 49.9 55.1 118.9 37.5 120.5 37.1 34.8 16.4 69.9 23.6 113.9 10.6 3.3 0 20.3 17 25.3 39.1l4.2-3-2.5-23.6c9 9 24.9 22.6 34.4 13-15.6-5.3-23.5-9.5-29.5-31.7 4.6 4.2 7.6 9 27.8 15l1.2-1.2-10.5-14.2c11.7-4.8-3.5 1 32-10.8 4.3 34.3 9 49.2.7 89.5zm115.3-214.4l-2.5.5 3 9.3c-3.5 5.9-23.7 44.3-71.6 79.7-39.5 29.8-76.6 39.1-80.9 40.3l-7.6-7.1-1.2 3 14.3 16-7.1-4.7 3.4 4.2h-1.2l-21.9-13.5 9.3 26.6-19-27.9-1.2 2.5 7.6 29c-6.1-8.2-21-32.6-56.8-39.6l32.5 21.2a214.82 214.82 0 0 1-93.2-6.4c-4.2-1.2-8.9-2.5-13.5-4.2l1.2-3-44.8-22.4 26.1 22.4c-57.7 9.1-113-25.4-126.4-83.4l-2.5-16.4-22.27 22.3c19.5-57.5 25.6-57.9 51.4-70.1-9.1-5.3-1.6-3.3-38.4-9.3 15.8-5.8 33-15.4 73 5.2a18.5 18.5 0 0 1 3.7-1.7c.6-3.2.4-.8 1-11.8 3.9 10 3.6 8.7 3 9.3l1.7.5c12.7-6.5 8.9-4.5 17-8.9l-5.4 13.5 22.3-5.8-8.4 8.4 2.5 2.5c4.5-1.8 30.3 3.4 40.8 16l-23.6-2.5c39.4 23 51.5 54 55.8 69.6l1.7-1.2c-2.8-22.3-12.4-33.9-16-40.1 4.2 5 39.2 34.6 110.4 46-11.3-.5-23.1 5.4-34.9 18.9l46.7-20.2-9.3 21.9c7.6-10.1 14.8-23.6 21.2-39.6v-.5l1.2-3-1.2 16c13.5-41.8 25.3-78.5 35.4-109.7l13.5-27.8v-2l-5.4-4.2h10.1l5.9 4.2 2.5-1.2-3.4-16 12.3 18.9 41.8-20.2-14.8 13 .5 2.9 17.7-.5a184 184 0 0 1 33 4.2l-23.6 2.5-1.2 3 26.6 23.1a254.21 254.21 0 0 1 27 32c-11.2-3.3-10.3-3.4-21.2-3.4l12.3 32.5zm-6.1-71.3l-3.9 13-14.3-11.8zm-254.8 7.1c1.7 10.6 4.7 17.7 8.8 21.9-9.3 6.6-27.5 13.9-46.5 16l.5 1.2a50.22 50.22 0 0 0 24.8-2.5l-7.1 13c4.2-1.7 10.1-7.1 17.7-14.8 11.9-5.5 12.7-5.1 20.2-16-12.7-6.4-15.7-13.7-18.4-18.8zm3.7-102.3c-6.4-3.4-10.6 3-12.3 18.9s2.5 29.5 11.8 39.6 18.2 10.6 26.1 3 3.4-23.6-11.3-47.7a39.57 39.57 0 0 0-14.27-13.8zm-4.7 46.3c5.4 2.2 10.5 1.9 12.3-10.6v-4.7l-1.2.5c-4.3-3.1-2.5-4.5-1.7-6.2l.5-.5c-.9-1.2-5-8.1-12.5 4.7-.5-13.5.5-21.9 3-24.8 1.2-2.5 4.7-1.2 11.3 4.2 6.4 5.4 11.3 16 15.2 32.5 6.5 28-19.8 26.2-26.9 4.9zm-45-5.5c1.6.3 9.3-1.1 9.3-14.8h-.5c-5.4-1.1-2.2-5.5-.7-5.9-1.7-3-3.4-4.2-5.4-4.7-8.1 0-11.6 12.7-8.1 21.2a7.51 7.51 0 0 0 5.43 4.2zM216 82.9l-2.5.5.5 3a48.94 48.94 0 0 1 26.1 5.9c-2.5-5.5-10-14.3-28.3-14.3l.5 2.5zm-71.8 49.4c21.7 16.8 16.5 21.4 46.5 23.6l-2.9-4.7a42.67 42.67 0 0 0 14.8-28.3c1.7-16-1.2-29.5-8.8-41.3l13-7.6a2.26 2.26 0 0 0-.5-1.7 14.21 14.21 0 0 0-13.5 1.7c-12.7 6.7-28 20.9-29 22.4-1.7 1.7-3.4 5.9-5.4 13.5a99.61 99.61 0 0 0-2.9 23.6c-4.7-8-10.5-6.4-19.9-5.9l7.1 7.6c-16.5 0-23.3 15.4-23.6 16 6.8 0 4.6-7.6 30-12.3-4.3-6.3-3.3-5-4.9-6.6zm18.7-18.7c1.2-7.6 3.4-13 6.4-17.2 5.4-6.4 10.6-10.1 16-11.8 4.2-1.7 7.1 1.2 10.1 9.3a72.14 72.14 0 0 1 3 25.3c-.5 9.3-3.4 17.2-8.4 23.1-2.9 3.4-5.4 5.9-6.4 7.6a39.21 39.21 0 0 1-11.3-.5l-7.1-3.4-5.4-6.4c.8-10 1.3-18.8 3.1-26zm42 56.1c-34.8 14.4-34.7 14-36.1 14.3-20.8 4.7-19-24.4-18.9-24.8l5.9-1.2-.5-2.5c-20.2-2.6-31 4.2-32.5 4.9.5.5 3 3.4 5.9 9.3 4.2-6.4 8.8-10.1 15.2-10.6a83.47 83.47 0 0 0 1.7 33.7c.1.5 2.6 17.4 27.5 24.1 11.3 3 27 1.2 48.9-5.4l-9.2.5c-4.2-14.8-6.4-24.8-5.9-29.5 11.3-8.8 21.9-11.3 30.7-7.6h2.5l-11.8-7.6-7.1.5c-5.9 1.2-12.3 4.2-19.4 8.4z\"},\"child\":[]}]})(props);\n};\nexport function FaThemeco (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M202.9 8.43c9.9-5.73 26-5.82 35.95-.21L430 115.85c10 5.6 18 19.44 18 30.86V364c0 11.44-8.06 25.29-18 31L238.81 503.74c-9.93 5.66-26 5.57-35.85-.21L17.86 395.12C8 389.34 0 375.38 0 364V146.71c0-11.44 8-25.36 17.91-31.08zm-77.4 199.83c-15.94 0-31.89.14-47.83.14v101.45H96.8V280h28.7c49.71 0 49.56-71.74 0-71.74zm140.14 100.29l-30.73-34.64c37-7.51 34.8-65.23-10.87-65.51-16.09 0-32.17-.14-48.26-.14v101.59h19.13v-33.91h18.41l29.56 33.91h22.76zm-41.59-82.32c23.34 0 23.26 32.46 0 32.46h-29.13v-32.46zm-95.56-1.6c21.18 0 21.11 38.85 0 38.85H96.18v-38.84zm192.65-18.25c-68.46 0-71 105.8 0 105.8 69.48-.01 69.41-105.8 0-105.8zm0 17.39c44.12 0 44.8 70.86 0 70.86s-44.43-70.86 0-70.86z\"},\"child\":[]}]})(props);\n};\nexport function FaThemeisle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 88.286c0-10 6.286-21.714 17.715-21.714 11.142 0 17.714 11.714 17.714 21.714 0 10.285-6.572 21.714-17.714 21.714C214.286 110 208 98.571 208 88.286zm304 160c0 36.001-11.429 102.286-36.286 129.714-22.858 24.858-87.428 61.143-120.857 70.572l-1.143.286v32.571c0 16.286-12.572 30.571-29.143 30.571-10 0-19.429-5.714-24.572-14.286-5.427 8.572-14.856 14.286-24.856 14.286-10 0-19.429-5.714-24.858-14.286-5.142 8.572-14.571 14.286-24.57 14.286-10.286 0-19.429-5.714-24.858-14.286-5.143 8.572-14.571 14.286-24.571 14.286-18.857 0-29.429-15.714-29.429-32.857-16.286 12.285-35.715 19.428-56.571 19.428-22 0-43.429-8.285-60.286-22.857 10.285-.286 20.571-2.286 30.285-5.714-20.857-5.714-39.428-18.857-52-36.286 21.37 4.645 46.209 1.673 67.143-11.143-22-22-56.571-58.857-68.572-87.428C1.143 321.714 0 303.714 0 289.429c0-49.714 20.286-160 86.286-160 10.571 0 18.857 4.858 23.143 14.857a158.792 158.792 0 0 1 12-15.428c2-2.572 5.714-5.429 7.143-8.286 7.999-12.571 11.714-21.142 21.714-34C182.571 45.428 232 17.143 285.143 17.143c6 0 12 .285 17.714 1.143C313.714 6.571 328.857 0 344.572 0c14.571 0 29.714 6 40 16.286.857.858 1.428 2.286 1.428 3.428 0 3.714-10.285 13.429-12.857 16.286 4.286 1.429 15.714 6.858 15.714 12 0 2.857-2.857 5.143-4.571 7.143 31.429 27.714 49.429 67.143 56.286 108 4.286-5.143 10.285-8.572 17.143-8.572 10.571 0 20.857 7.144 28.571 14.001C507.143 187.143 512 221.714 512 248.286zM188 89.428c0 18.286 12.571 37.143 32.286 37.143 19.714 0 32.285-18.857 32.285-37.143 0-18-12.571-36.857-32.285-36.857-19.715 0-32.286 18.858-32.286 36.857zM237.714 194c0-19.714 3.714-39.143 8.571-58.286-52.039 79.534-13.531 184.571 68.858 184.571 21.428 0 42.571-7.714 60-20 2-7.429 3.714-14.857 3.714-22.572 0-14.286-6.286-21.428-20.572-21.428-4.571 0-9.143.857-13.429 1.714-63.343 12.668-107.142 3.669-107.142-63.999zm-41.142 254.858c0-11.143-8.858-20.857-20.286-20.857-11.429 0-20 9.715-20 20.857v32.571c0 11.143 8.571 21.142 20 21.142 11.428 0 20.286-9.715 20.286-21.142v-32.571zm49.143 0c0-11.143-8.572-20.857-20-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20-10 20-21.142v-32.571zm49.713 0c0-11.143-8.857-20.857-20.285-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20.285-9.715 20.285-21.142v-32.571zm49.715 0c0-11.143-8.857-20.857-20.286-20.857-11.428 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.858 21.142 20.286 21.142 11.429 0 20.286-10 20.286-21.142v-32.571zM421.714 286c-30.857 59.142-90.285 102.572-158.571 102.572-96.571 0-160.571-84.572-160.571-176.572 0-16.857 2-33.429 6-49.714-20 33.715-29.714 72.572-29.714 111.429 0 60.286 24.857 121.715 71.429 160.857 5.143-9.714 14.857-16.286 26-16.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.571-14.286 24.858-14.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.857-14.286 24.858-14.286 10 0 19.428 5.714 24.857 14.286 5.143-8.571 14.571-14.286 24.572-14.286 10.857 0 20.857 6.572 25.714 16 43.427-36.286 68.569-92 71.426-148.286zm10.572-99.714c0-53.714-34.571-105.714-92.572-105.714-30.285 0-58.571 15.143-78.857 36.857C240.862 183.812 233.41 254 302.286 254c28.805 0 97.357-28.538 84.286 36.857 28.857-26 45.714-65.714 45.714-104.571z\"},\"child\":[]}]})(props);\n};\nexport function FaThinkPeaks (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M465.4 409.4l87.1-150.2-32-.3-55.1 95L259.2 0 23 407.4l32 .3L259.2 55.6zm-355.3-44.1h32.1l117.4-202.5L463 511.9l32.5.1-235.8-404.6z\"},\"child\":[]}]})(props);\n};\nexport function FaTiktok (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448,209.91a210.06,210.06,0,0,1-122.77-39.25V349.38A162.55,162.55,0,1,1,185,188.31V278.2a74.62,74.62,0,1,0,52.23,71.18V0l88,0a121.18,121.18,0,0,0,1.86,22.17h0A122.18,122.18,0,0,0,381,102.39a121.43,121.43,0,0,0,67,20.14Z\"},\"child\":[]}]})(props);\n};\nexport function FaTradeFederation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8.8c-137 0-248 111-248 248s111 248 248 248 248-111 248-248-111-248-248-248zm0 482.8c-129.7 0-234.8-105.1-234.8-234.8S118.3 22 248 22s234.8 105.1 234.8 234.8S377.7 491.6 248 491.6zm155.1-328.5v-46.8H209.3V198H54.2l36.7 46h117.7v196.8h48.8V245h83.3v-47h-83.3v-34.8h145.7zm-73.3 45.1v23.9h-82.9v197.4h-26.8V232.1H96.3l-20.1-23.9h143.9v-80.6h171.8V152h-145v56.2zm-161.3-69l-12.4-20.7 2.1 23.8-23.5 5.4 23.3 5.4-2.1 24 12.3-20.5 22.2 9.5-15.7-18.1 15.8-18.1zm-29.6-19.7l9.3-11.5-12.7 5.9-8-12.4 1.7 13.9-14.3 3.8 13.7 2.7-.8 14.7 6.8-12.2 13.8 5.3zm165.4 145.2l-13.1 5.6-7.3-12.2 1.3 14.2-13.9 3.2 13.9 3.2-1.2 14.2 7.3-12.2 13.1 5.5-9.4-10.7zm106.9-77.2l-20.9 9.1-12-19.6 2.2 22.7-22.3 5.4 22.2 4.9-1.8 22.9 11.5-19.6 21.2 8.8-15.1-17zM248 29.9c-125.3 0-226.9 101.6-226.9 226.9S122.7 483.7 248 483.7s226.9-101.6 226.9-226.9S373.3 29.9 248 29.9zM342.6 196v51h-83.3v195.7h-52.7V245.9H89.9l-40-49.9h157.4v-81.6h197.8v50.7H259.4V196zM248 43.2c60.3 0 114.8 25 153.6 65.2H202.5V190H45.1C73.1 104.8 153.4 43.2 248 43.2zm0 427.1c-117.9 0-213.6-95.6-213.6-213.5 0-21.2 3.1-41.8 8.9-61.1L87.1 252h114.7v196.8h64.6V253h83.3v-62.7h-83.2v-19.2h145.6v-50.8c30.8 37 49.3 84.6 49.3 136.5.1 117.9-95.5 213.5-213.4 213.5zM178.8 275l-11-21.4 1.7 24.5-23.7 3.9 23.8 5.9-3.7 23.8 13-20.9 21.5 10.8-15.8-18.8 16.9-17.1z\"},\"child\":[]}]})(props);\n};\nexport function FaTrello (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M392.3 32H56.1C25.1 32 0 57.1 0 88c-.1 0 0-4 0 336 0 30.9 25.1 56 56 56h336.2c30.8-.2 55.7-25.2 55.7-56V88c.1-30.8-24.8-55.8-55.6-56zM197 371.3c-.2 14.7-12.1 26.6-26.9 26.6H87.4c-14.8.1-26.9-11.8-27-26.6V117.1c0-14.8 12-26.9 26.9-26.9h82.9c14.8 0 26.9 12 26.9 26.9v254.2zm193.1-112c0 14.8-12 26.9-26.9 26.9h-81c-14.8 0-26.9-12-26.9-26.9V117.2c0-14.8 12-26.9 26.8-26.9h81.1c14.8 0 26.9 12 26.9 26.9v142.1z\"},\"child\":[]}]})(props);\n};\nexport function FaTripadvisor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528.91,178.82,576,127.58H471.66a326.11,326.11,0,0,0-367,0H0l47.09,51.24A143.911,143.911,0,0,0,241.86,390.73L288,440.93l46.11-50.17A143.94,143.94,0,0,0,575.88,285.18h-.03A143.56,143.56,0,0,0,528.91,178.82ZM144.06,382.57a97.39,97.39,0,1,1,97.39-97.39A97.39,97.39,0,0,1,144.06,382.57ZM288,282.37c0-64.09-46.62-119.08-108.09-142.59a281,281,0,0,1,216.17,0C334.61,163.3,288,218.29,288,282.37Zm143.88,100.2h-.01a97.405,97.405,0,1,1,.01,0ZM144.06,234.12h-.01a51.06,51.06,0,1,0,51.06,51.06v-.11A51,51,0,0,0,144.06,234.12Zm287.82,0a51.06,51.06,0,1,0,51.06,51.06A51.06,51.06,0,0,0,431.88,234.12Z\"},\"child\":[]}]})(props);\n};\nexport function FaTumblrSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-82.3 364.2c-8.5 9.1-31.2 19.8-60.9 19.8-75.5 0-91.9-55.5-91.9-87.9v-90h-29.7c-3.4 0-6.2-2.8-6.2-6.2v-42.5c0-4.5 2.8-8.5 7.1-10 38.8-13.7 50.9-47.5 52.7-73.2.5-6.9 4.1-10.2 10-10.2h44.3c3.4 0 6.2 2.8 6.2 6.2v72h51.9c3.4 0 6.2 2.8 6.2 6.2v51.1c0 3.4-2.8 6.2-6.2 6.2h-52.1V321c0 21.4 14.8 33.5 42.5 22.4 3-1.2 5.6-2 8-1.4 2.2.5 3.6 2.1 4.6 4.9l13.8 40.2c1 3.2 2 6.7-.3 9.1z\"},\"child\":[]}]})(props);\n};\nexport function FaTumblr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M309.8 480.3c-13.6 14.5-50 31.7-97.4 31.7-120.8 0-147-88.8-147-140.6v-144H17.9c-5.5 0-10-4.5-10-10v-68c0-7.2 4.5-13.6 11.3-16 62-21.8 81.5-76 84.3-117.1.8-11 6.5-16.3 16.1-16.3h70.9c5.5 0 10 4.5 10 10v115.2h83c5.5 0 10 4.4 10 9.9v81.7c0 5.5-4.5 10-10 10h-83.4V360c0 34.2 23.7 53.6 68 35.8 4.8-1.9 9-3.2 12.7-2.2 3.5.9 5.8 3.4 7.4 7.9l22 64.3c1.8 5 3.3 10.6-.4 14.5z\"},\"child\":[]}]})(props);\n};\nexport function FaTwitch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M391.17,103.47H352.54v109.7h38.63ZM285,103H246.37V212.75H285ZM120.83,0,24.31,91.42V420.58H140.14V512l96.53-91.42h77.25L487.69,256V0ZM449.07,237.75l-77.22,73.12H294.61l-67.6,64v-64H140.14V36.58H449.07Z\"},\"child\":[]}]})(props);\n};\nexport function FaTwitterSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-48.9 158.8c.2 2.8.2 5.7.2 8.5 0 86.7-66 186.6-186.6 186.6-37.2 0-71.7-10.8-100.7-29.4 5.3.6 10.4.8 15.8.8 30.7 0 58.9-10.4 81.4-28-28.8-.6-53-19.5-61.3-45.5 10.1 1.5 19.2 1.5 29.6-1.2-30-6.1-52.5-32.5-52.5-64.4v-.8c8.7 4.9 18.9 7.9 29.6 8.3a65.447 65.447 0 0 1-29.2-54.6c0-12.2 3.2-23.4 8.9-33.1 32.3 39.8 80.8 65.8 135.2 68.6-9.3-44.5 24-80.6 64-80.6 18.9 0 35.9 7.9 47.9 20.7 14.8-2.8 29-8.3 41.6-15.8-4.9 15.2-15.2 28-28.8 36.1 13.2-1.4 26-5.1 37.8-10.2-8.9 13.1-20.1 24.7-32.9 34z\"},\"child\":[]}]})(props);\n};\nexport function FaTwitter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"},\"child\":[]}]})(props);\n};\nexport function FaTypo3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M178.7 78.4c0-24.7 5.4-32.4 13.9-39.4-69.5 8.5-149.3 34-176.3 66.4-5.4 7.7-9.3 20.8-9.3 37.1C7 246 113.8 480 191.1 480c36.3 0 97.3-59.5 146.7-139-7 2.3-11.6 2.3-18.5 2.3-57.2 0-140.6-198.5-140.6-264.9zM301.5 32c-30.1 0-41.7 5.4-41.7 36.3 0 66.4 53.8 198.5 101.7 198.5 26.3 0 78.8-99.7 78.8-182.3 0-40.9-67-52.5-138.8-52.5z\"},\"child\":[]}]})(props);\n};\nexport function FaUber (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.1 32H33.9C15.2 32 0 47.2 0 65.9V446c0 18.8 15.2 34 33.9 34H414c18.7 0 33.9-15.2 33.9-33.9V65.9C448 47.2 432.8 32 414.1 32zM237.6 391.1C163 398.6 96.4 344.2 88.9 269.6h94.4V290c0 3.7 3 6.8 6.8 6.8H258c3.7 0 6.8-3 6.8-6.8v-67.9c0-3.7-3-6.8-6.8-6.8h-67.9c-3.7 0-6.8 3-6.8 6.8v20.4H88.9c7-69.4 65.4-122.2 135.1-122.2 69.7 0 128.1 52.8 135.1 122.2 7.5 74.5-46.9 141.1-121.5 148.6z\"},\"child\":[]}]})(props);\n};\nexport function FaUbuntu (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm52.7 93c8.8-15.2 28.3-20.5 43.5-11.7 15.3 8.8 20.5 28.3 11.7 43.6-8.8 15.2-28.3 20.5-43.5 11.7-15.3-8.9-20.5-28.4-11.7-43.6zM87.4 287.9c-17.6 0-31.9-14.3-31.9-31.9 0-17.6 14.3-31.9 31.9-31.9 17.6 0 31.9 14.3 31.9 31.9 0 17.6-14.3 31.9-31.9 31.9zm28.1 3.1c22.3-17.9 22.4-51.9 0-69.9 8.6-32.8 29.1-60.7 56.5-79.1l23.7 39.6c-51.5 36.3-51.5 112.5 0 148.8L172 370c-27.4-18.3-47.8-46.3-56.5-79zm228.7 131.7c-15.3 8.8-34.7 3.6-43.5-11.7-8.8-15.3-3.6-34.8 11.7-43.6 15.2-8.8 34.7-3.6 43.5 11.7 8.8 15.3 3.6 34.8-11.7 43.6zm.3-69.5c-26.7-10.3-56.1 6.6-60.5 35-5.2 1.4-48.9 14.3-96.7-9.4l22.5-40.3c57 26.5 123.4-11.7 128.9-74.4l46.1.7c-2.3 34.5-17.3 65.5-40.3 88.4zm-5.9-105.3c-5.4-62-71.3-101.2-128.9-74.4l-22.5-40.3c47.9-23.7 91.5-10.8 96.7-9.4 4.4 28.3 33.8 45.3 60.5 35 23.1 22.9 38 53.9 40.2 88.5l-46 .6z\"},\"child\":[]}]})(props);\n};\nexport function FaUikit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M443.9 128v256L218 512 0 384V169.7l87.6 45.1v117l133.5 75.5 135.8-75.5v-151l-101.1-57.6 87.6-53.1L443.9 128zM308.6 49.1L223.8 0l-88.6 54.8 86 47.3 87.4-53z\"},\"child\":[]}]})(props);\n};\nexport function FaUmbraco (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 510 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M255.35 8C118.36 7.83 7.14 118.72 7 255.68c-.07 137 111 248.2 248 248.27 136.85 0 247.82-110.7 248-247.67S392.34 8.17 255.35 8zm145 266q-1.14 40.68-14 65t-43.51 35q-30.61 10.7-85.45 10.47h-4.6q-54.78.22-85.44-10.47t-43.52-35q-12.85-24.36-14-65a224.81 224.81 0 0 1 0-30.71 418.37 418.37 0 0 1 3.6-43.88c1.88-13.39 3.57-22.58 5.4-32 1-4.88 1.28-6.42 1.82-8.45a5.09 5.09 0 0 1 4.9-3.89h.69l32 5a5.07 5.07 0 0 1 4.16 5 5 5 0 0 1 0 .77l-1.7 8.78q-2.41 13.25-4.84 33.68a380.62 380.62 0 0 0-2.64 42.15q-.28 40.43 8.13 59.83a43.87 43.87 0 0 0 31.31 25.18A243 243 0 0 0 250 340.6h10.25a242.64 242.64 0 0 0 57.27-5.16 43.86 43.86 0 0 0 31.15-25.23q8.53-19.42 8.13-59.78a388 388 0 0 0-2.6-42.15q-2.48-20.38-4.89-33.68l-1.69-8.78a5 5 0 0 1 0-.77 5 5 0 0 1 4.2-5l32-5h.82a5 5 0 0 1 4.9 3.89c.55 2.05.81 3.57 1.83 8.45 1.82 9.62 3.52 18.78 5.39 32a415.71 415.71 0 0 1 3.61 43.88 228.06 228.06 0 0 1-.04 30.73z\"},\"child\":[]}]})(props);\n};\nexport function FaUncharted (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M171.73,232.813A5.381,5.381,0,0,0,176.7,229.5,48.081,48.081,0,0,1,191.6,204.244c1.243-.828,1.657-2.484,1.657-4.141a4.22,4.22,0,0,0-2.071-3.312L74.429,128.473,148.958,85a9.941,9.941,0,0,0,4.968-8.281,9.108,9.108,0,0,0-4.968-8.281L126.6,55.6a9.748,9.748,0,0,0-9.523,0l-100.2,57.966a9.943,9.943,0,0,0-4.969,8.281V236.954a9.109,9.109,0,0,0,4.969,8.281L39.235,258.07a8.829,8.829,0,0,0,4.968,1.242,9.4,9.4,0,0,0,6.625-2.484,10.8,10.8,0,0,0,2.9-7.039V164.5L169.66,232.4A4.5,4.5,0,0,0,171.73,232.813ZM323.272,377.73a12.478,12.478,0,0,0-4.969,1.242l-74.528,43.062V287.882c0-2.9-2.9-5.8-6.211-4.555a53.036,53.036,0,0,1-28.984.414,4.86,4.86,0,0,0-6.21,4.555V421.619l-74.529-43.061a8.83,8.83,0,0,0-4.969-1.242,9.631,9.631,0,0,0-9.523,9.523v26.085a9.107,9.107,0,0,0,4.969,8.281l100.2,57.553A8.829,8.829,0,0,0,223.486,480a11.027,11.027,0,0,0,4.969-1.242l100.2-57.553a9.941,9.941,0,0,0,4.968-8.281V386.839C332.8,382.285,328.24,377.73,323.272,377.73ZM286.007,78a23,23,0,1,0-23-23A23,23,0,0,0,286.007,78Zm63.627-10.086a23,23,0,1,0,23,23A23,23,0,0,0,349.634,67.914ZM412.816,151.6a23,23,0,1,0-23-23A23,23,0,0,0,412.816,151.6Zm-63.182-9.2a23,23,0,1,0,23,23A23,23,0,0,0,349.634,142.4Zm-63.627,83.244a23,23,0,1,0-23-23A23,23,0,0,0,286.007,225.648Zm-62.074,36.358a23,23,0,1,0-23-23A23,23,0,0,0,223.933,262.006Zm188.883-82.358a23,23,0,1,0,23,23A23,23,0,0,0,412.816,179.648Zm0,72.272a23,23,0,1,0,23,23A23,23,0,0,0,412.816,251.92Z\"},\"child\":[]}]})(props);\n};\nexport function FaUniregistry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 480c39.5 0 76.2-11.8 106.8-32.2H85.3C115.8 468.2 152.5 480 192 480zm-89.1-193.1v-12.4H0v12.4c0 2.5 0 5 .1 7.4h103.1c-.2-2.4-.3-4.9-.3-7.4zm20.5 57H8.5c2.6 8.5 5.8 16.8 9.6 24.8h138.3c-12.9-5.7-24.1-14.2-33-24.8zm-17.7-34.7H1.3c.9 7.6 2.2 15 3.9 22.3h109.7c-4-6.9-7.2-14.4-9.2-22.3zm-2.8-69.3H0v17.3h102.9zm0-173.2H0v4.9h102.9zm0-34.7H0v2.5h102.9zm0 69.3H0v7.4h102.9zm0 104H0v14.8h102.9zm0-69.3H0v9.9h102.9zm0 34.6H0V183h102.9zm166.2 160.9h109.7c1.8-7.3 3.1-14.7 3.9-22.3H278.3c-2.1 7.9-5.2 15.4-9.2 22.3zm12-185.7H384V136H281.1zm0 37.2H384v-12.4H281.1zm0-74.3H384v-7.4H281.1zm0-76.7v2.5H384V32zm-203 410.9h227.7c11.8-8.7 22.7-18.6 32.2-29.7H44.9c9.6 11 21.4 21 33.2 29.7zm203-371.3H384v-4.9H281.1zm0 148.5H384v-14.8H281.1zM38.8 405.7h305.3c6.7-8.5 12.6-17.6 17.8-27.2H23c5.2 9.6 9.2 18.7 15.8 27.2zm188.8-37.1H367c3.7-8 5.8-16.2 8.5-24.8h-115c-8.8 10.7-20.1 19.2-32.9 24.8zm53.5-81.7c0 2.5-.1 5-.4 7.4h103.1c.1-2.5.2-4.9.2-7.4v-12.4H281.1zm0-29.7H384v-17.3H281.1z\"},\"child\":[]}]})(props);\n};\nexport function FaUnity (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M498.11,206.4,445.31,14.72,248.2,66.08,219,116.14l-59.2-.43L15.54,256,159.82,396.32l59.17-.43,29.24,50,197.08,51.36,52.8-191.62-30-49.63ZM223.77,124.2,374.55,86.51,288,232.33H114.87Zm0,263.63L114.87,279.71H288l86.55,145.81Zm193,14L330.17,256l86.58-145.84L458.56,256Z\"},\"child\":[]}]})(props);\n};\nexport function FaUnsplash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448,230.17V480H0V230.17H141.13V355.09H306.87V230.17ZM306.87,32H141.13V156.91H306.87Z\"},\"child\":[]}]})(props);\n};\nexport function FaUntappd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M401.3 49.9c-79.8 160.1-84.6 152.5-87.9 173.2l-5.2 32.8c-1.9 12-6.6 23.5-13.7 33.4L145.6 497.1c-7.6 10.6-20.4 16.2-33.4 14.6-40.3-5-77.8-32.2-95.3-68.5-5.7-11.8-4.5-25.8 3.1-36.4l148.9-207.9c7.1-9.9 16.4-18 27.2-23.7l29.3-15.5c18.5-9.8 9.7-11.9 135.6-138.9 1-4.8 1-7.3 3.6-8 3-.7 6.6-1 6.3-4.6l-.4-4.6c-.2-1.9 1.3-3.6 3.2-3.6 4.5-.1 13.2 1.2 25.6 10 12.3 8.9 16.4 16.8 17.7 21.1.6 1.8-.6 3.7-2.4 4.2l-4.5 1.1c-3.4.9-2.5 4.4-2.3 7.4.1 2.8-2.3 3.6-6.5 6.1zM230.1 36.4c3.4.9 2.5 4.4 2.3 7.4-.2 2.7 2.1 3.5 6.4 6 7.9 15.9 15.3 30.5 22.2 44 .7 1.3 2.3 1.5 3.3.5 11.2-12 24.6-26.2 40.5-42.6 1.3-1.4 1.4-3.5.1-4.9-8-8.2-16.5-16.9-25.6-26.1-1-4.7-1-7.3-3.6-8-3-.8-6.6-1-6.3-4.6.3-3.3 1.4-8.1-2.8-8.2-4.5-.1-13.2 1.1-25.6 10-12.3 8.9-16.4 16.8-17.7 21.1-1.4 4.2 3.6 4.6 6.8 5.4zM620 406.7L471.2 198.8c-13.2-18.5-26.6-23.4-56.4-39.1-11.2-5.9-14.2-10.9-30.5-28.9-1-1.1-2.9-.9-3.6.5-46.3 88.8-47.1 82.8-49 94.8-1.7 10.7-1.3 20 .3 29.8 1.9 12 6.6 23.5 13.7 33.4l148.9 207.9c7.6 10.6 20.2 16.2 33.1 14.7 40.3-4.9 78-32 95.7-68.6 5.4-11.9 4.3-25.9-3.4-36.6z\"},\"child\":[]}]})(props);\n};\nexport function FaUps (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M103.2 303c-5.2 3.6-32.6 13.1-32.6-19V180H37.9v102.6c0 74.9 80.2 51.1 97.9 39V180h-32.6zM4 74.82v220.9c0 103.7 74.9 135.2 187.7 184.1 112.4-48.9 187.7-80.2 187.7-184.1V74.82c-116.3-61.6-281.8-49.6-375.4 0zm358.1 220.9c0 86.6-53.2 113.6-170.4 165.3-117.5-51.8-170.5-78.7-170.5-165.3v-126.4c102.3-93.8 231.6-100 340.9-89.8zm-209.6-107.4v212.8h32.7v-68.7c24.4 7.3 71.7-2.6 71.7-78.5 0-97.4-80.7-80.92-104.4-65.6zm32.7 117.3v-100.3c8.4-4.2 38.4-12.7 38.4 49.3 0 67.9-36.4 51.8-38.4 51zm79.1-86.4c.1 47.3 51.6 42.5 52.2 70.4.6 23.5-30.4 23-50.8 4.9v30.1c36.2 21.5 81.9 8.1 83.2-33.5 1.7-51.5-54.1-46.6-53.4-73.2.6-20.3 30.6-20.5 48.5-2.2v-28.4c-28.5-22-79.9-9.2-79.7 31.9z\"},\"child\":[]}]})(props);\n};\nexport function FaUsb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M641.5 256c0 3.1-1.7 6.1-4.5 7.5L547.9 317c-1.4.8-2.8 1.4-4.5 1.4-1.4 0-3.1-.3-4.5-1.1-2.8-1.7-4.5-4.5-4.5-7.8v-35.6H295.7c25.3 39.6 40.5 106.9 69.6 106.9H392V354c0-5 3.9-8.9 8.9-8.9H490c5 0 8.9 3.9 8.9 8.9v89.1c0 5-3.9 8.9-8.9 8.9h-89.1c-5 0-8.9-3.9-8.9-8.9v-26.7h-26.7c-75.4 0-81.1-142.5-124.7-142.5H140.3c-8.1 30.6-35.9 53.5-69 53.5C32 327.3 0 295.3 0 256s32-71.3 71.3-71.3c33.1 0 61 22.8 69 53.5 39.1 0 43.9 9.5 74.6-60.4C255 88.7 273 95.7 323.8 95.7c7.5-20.9 27-35.6 50.4-35.6 29.5 0 53.5 23.9 53.5 53.5s-23.9 53.5-53.5 53.5c-23.4 0-42.9-14.8-50.4-35.6H294c-29.1 0-44.3 67.4-69.6 106.9h310.1v-35.6c0-3.3 1.7-6.1 4.5-7.8 2.8-1.7 6.4-1.4 8.9.3l89.1 53.5c2.8 1.1 4.5 4.1 4.5 7.2z\"},\"child\":[]}]})(props);\n};\nexport function FaUsps (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M460.3 241.7c25.8-41.3 15.2-48.8-11.7-48.8h-27c-.1 0-1.5-1.4-10.9 8-11.2 5.6-37.9 6.3-37.9 8.7 0 4.5 70.3-3.1 88.1 0 9.5 1.5-1.5 20.4-4.4 32-.5 4.5 2.4 2.3 3.8.1zm-112.1 22.6c64-21.3 97.3-23.9 102-26.2 4.4-2.9-4.4-6.6-26.2-5.8-51.7 2.2-137.6 37.1-172.6 53.9l-30.7-93.3h196.6c-2.7-28.2-152.9-22.6-337.9-22.6L27 415.8c196.4-97.3 258.9-130.3 321.2-151.5zM94.7 96c253.3 53.7 330 65.7 332.1 85.2 36.4 0 45.9 0 52.4 6.6 21.1 19.7-14.6 67.7-14.6 67.7-4.4 2.9-406.4 160.2-406.4 160.2h423.1L549 96z\"},\"child\":[]}]})(props);\n};\nexport function FaUssunnah (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M156.8 285.1l5.7 14.4h-8.2c-1.3-3.2-3.1-7.7-3.8-9.5-2.5-6.3-1.1-8.4 0-10 1.9-2.7 3.2-4.4 3.6-5.2 0 2.2.8 5.7 2.7 10.3zm297.3 18.8c-2.1 13.8-5.7 27.1-10.5 39.7l43 23.4-44.8-18.8c-5.3 13.2-12 25.6-19.9 37.2l34.2 30.2-36.8-26.4c-8.4 11.8-18 22.6-28.7 32.3l24.9 34.7-28.1-31.8c-11 9.6-23.1 18-36.1 25.1l15.7 37.2-19.3-35.3c-13.1 6.8-27 12.1-41.6 15.9l6.7 38.4-10.5-37.4c-14.3 3.4-29.2 5.3-44.5 5.4L256 512l-1.9-38.4c-15.3-.1-30.2-2-44.5-5.3L199 505.6l6.7-38.2c-14.6-3.7-28.6-9.1-41.7-15.8l-19.2 35.1 15.6-37c-13-7-25.2-15.4-36.2-25.1l-27.9 31.6 24.7-34.4c-10.7-9.7-20.4-20.5-28.8-32.3l-36.5 26.2 33.9-29.9c-7.9-11.6-14.6-24.1-20-37.3l-44.4 18.7L67.8 344c-4.8-12.7-8.4-26.1-10.5-39.9l-51 9 50.3-14.2c-1.1-8.5-1.7-17.1-1.7-25.9 0-4.7.2-9.4.5-14.1L0 256l56-2.8c1.3-13.1 3.8-25.8 7.5-38.1L6.4 199l58.9 10.4c4-12 9.1-23.5 15.2-34.4l-55.1-30 58.3 24.6C90 159 97.2 149.2 105.3 140L55.8 96.4l53.9 38.7c8.1-8.6 17-16.5 26.6-23.6l-40-55.6 45.6 51.6c9.5-6.6 19.7-12.3 30.3-17.2l-27.3-64.9 33.8 62.1c10.5-4.4 21.4-7.9 32.7-10.4L199 6.4l19.5 69.2c11-2.1 22.3-3.2 33.8-3.4L256 0l3.6 72.2c11.5.2 22.8 1.4 33.8 3.5L313 6.4l-12.4 70.7c11.3 2.6 22.2 6.1 32.6 10.5l33.9-62.2-27.4 65.1c10.6 4.9 20.7 10.7 30.2 17.2l45.8-51.8-40.1 55.9c9.5 7.1 18.4 15 26.5 23.6l54.2-38.9-49.7 43.9c8 9.1 15.2 18.9 21.5 29.4l58.7-24.7-55.5 30.2c6.1 10.9 11.1 22.3 15.1 34.3l59.3-10.4-57.5 16.2c3.7 12.2 6.2 24.9 7.5 37.9L512 256l-56 2.8c.3 4.6.5 9.3.5 14.1 0 8.7-.6 17.3-1.6 25.8l50.7 14.3-51.5-9.1zm-21.8-31c0-97.5-79-176.5-176.5-176.5s-176.5 79-176.5 176.5 79 176.5 176.5 176.5 176.5-79 176.5-176.5zm-24 0c0 84.3-68.3 152.6-152.6 152.6s-152.6-68.3-152.6-152.6 68.3-152.6 152.6-152.6 152.6 68.3 152.6 152.6zM195 241c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-40.7-19c0 2.1 1.3 3.8 3.6 5.1 3.5 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-19 0c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.4 6.8-9.6 10.9-9.6 12.6zm204.9 87.9c-8.4-3-8.7-6.8-8.7-15.6V182c-8.2 12.5-14.2 18.6-18 18.6 6.3 14.4 9.5 23.9 9.5 28.3v64.3c0 2.2-2.2 6.5-4.7 6.5h-18c-2.8-7.5-10.2-26.9-15.3-40.3-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3 2.6 6.7 6.4 16.5 7.9 20.2h-9.2c-3.9-10.4-9.6-25.4-11.8-31.1-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3.8 2 2.8 7.3 4.3 10.9H256c-1.5-4.1-5.6-14.6-8.4-22-2 2.5-7.2 9.2-10.7 13.7 2.5 1.6 4.3 3.6 5.2 6.3.2.6.5 1.4.6 1.7H225c-4.6-13.9-11.4-27.7-11.4-34.1 0-2.2.3-5.1 1.1-8.2-8.8 10.8-14 15.9-14 25 0 7.5 10.4 28.3 10.4 33.3 0 1.7-.5 3.3-1.4 4.9-9.6-12.7-15.5-20.7-18.8-20.7h-12l-11.2-28c-3.8-9.6-5.7-16-5.7-18.8 0-3.8.5-7.7 1.7-12.2-1 1.3-3.7 4.7-5.5 7.1-.8-2.1-3.1-7.7-4.6-11.5-2.1 2.5-7.5 9.1-11.2 13.6.9 2.3 3.3 8.1 4.9 12.2-2.5 3.3-9.1 11.8-13.6 17.7-4 5.3-5.8 13.3-2.7 21.8 2.5 6.7 2 7.9-1.7 14.1H191c5.5 0 14.3 14 15.5 22 13.2-16 15.4-19.6 16.8-21.6h107c3.9 0 7.2-1.9 9.9-5.8zm20.1-26.6V181.7c-9 12.5-15.9 18.6-20.7 18.6 7.1 14.4 10.7 23.9 10.7 28.3v66.3c0 17.5 8.6 20.4 24 20.4 8.1 0 12.5-.8 13.7-2.7-4.3-1.6-7.6-2.5-9.9-3.3-8.1-3.2-17.8-7.4-17.8-26z\"},\"child\":[]}]})(props);\n};\nexport function FaVaadin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224.5 140.7c1.5-17.6 4.9-52.7 49.8-52.7h98.6c20.7 0 32.1-7.8 32.1-21.6V54.1c0-12.2 9.3-22.1 21.5-22.1S448 41.9 448 54.1v36.5c0 42.9-21.5 62-66.8 62H280.7c-30.1 0-33 14.7-33 27.1 0 1.3-.1 2.5-.2 3.7-.7 12.3-10.9 22.2-23.4 22.2s-22.7-9.8-23.4-22.2c-.1-1.2-.2-2.4-.2-3.7 0-12.3-3-27.1-33-27.1H66.8c-45.3 0-66.8-19.1-66.8-62V54.1C0 41.9 9.4 32 21.6 32s21.5 9.9 21.5 22.1v12.3C43.1 80.2 54.5 88 75.2 88h98.6c44.8 0 48.3 35.1 49.8 52.7h.9zM224 456c11.5 0 21.4-7 25.7-16.3 1.1-1.8 97.1-169.6 98.2-171.4 11.9-19.6-3.2-44.3-27.2-44.3-13.9 0-23.3 6.4-29.8 20.3L224 362l-66.9-117.7c-6.4-13.9-15.9-20.3-29.8-20.3-24 0-39.1 24.6-27.2 44.3 1.1 1.9 97.1 169.6 98.2 171.4 4.3 9.3 14.2 16.3 25.7 16.3z\"},\"child\":[]}]})(props);\n};\nexport function FaViacoin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32h-64l-80.7 192h-94.5L64 32H0l48 112H0v48h68.5l13.8 32H0v48h102.8L192 480l89.2-208H384v-48h-82.3l13.8-32H384v-48h-48l48-112zM192 336l-27-64h54l-27 64z\"},\"child\":[]}]})(props);\n};\nexport function FaViadeoSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM280.7 381.2c-42.4 46.2-120 46.6-162.4 0-68-73.6-19.8-196.1 81.2-196.1 13.3 0 26.6 2.1 39.1 6.7-4.3 8.4-7.3 17.6-8.4 27.1-9.7-4.1-20.2-6-30.7-6-48.8 0-84.6 41.7-84.6 88.9 0 43 28.5 78.7 69.5 85.9 61.5-24 72.9-117.6 72.9-175 0-7.3 0-14.8-.6-22.1-11.2-32.9-26.6-64.6-44.2-94.5 27.1 18.3 41.9 62.5 44.2 94.1v.4c7.7 22.5 11.8 46.2 11.8 70 0 54.1-21.9 99-68.3 128.2l-2.4.2c50 1 86.2-38.6 86.2-87.2 0-12.2-2.1-24.3-6.9-35.7 9.5-1.9 18.5-5.6 26.4-10.5 15.3 36.6 12.6 87.3-22.8 125.6zM309 233.7c-13.3 0-25.1-7.1-34.4-16.1 21.9-12 49.6-30.7 62.3-53 1.5-3 4.1-8.6 4.5-12-12.5 27.9-44.2 49.8-73.9 56.7-4.7-7.3-7.5-15.5-7.5-24.3 0-10.3 5.2-24.1 12.9-31.6 21.6-20.5 53-8.5 72.4-50 32.5 46.2 13.1 130.3-36.3 130.3z\"},\"child\":[]}]})(props);\n};\nexport function FaViadeo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M276.2 150.5v.7C258.3 98.6 233.6 47.8 205.4 0c43.3 29.2 67 100 70.8 150.5zm32.7 121.7c7.6 18.2 11 37.5 11 57 0 77.7-57.8 141-137.8 139.4l3.8-.3c74.2-46.7 109.3-118.6 109.3-205.1 0-38.1-6.5-75.9-18.9-112 1 11.7 1 23.7 1 35.4 0 91.8-18.1 241.6-116.6 280C95 455.2 49.4 398 49.4 329.2c0-75.6 57.4-142.3 135.4-142.3 16.8 0 33.7 3.1 49.1 9.6 1.7-15.1 6.5-29.9 13.4-43.3-19.9-7.2-41.2-10.7-62.5-10.7-161.5 0-238.7 195.9-129.9 313.7 67.9 74.6 192 73.9 259.8 0 56.6-61.3 60.9-142.4 36.4-201-12.7 8-27.1 13.9-42.2 17zM418.1 11.7c-31 66.5-81.3 47.2-115.8 80.1-12.4 12-20.6 34-20.6 50.5 0 14.1 4.5 27.1 12 38.8 47.4-11 98.3-46 118.2-90.7-.7 5.5-4.8 14.4-7.2 19.2-20.3 35.7-64.6 65.6-99.7 84.9 14.8 14.4 33.7 25.8 55 25.8 79 0 110.1-134.6 58.1-208.6z\"},\"child\":[]}]})(props);\n};\nexport function FaViber (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M444 49.9C431.3 38.2 379.9.9 265.3.4c0 0-135.1-8.1-200.9 52.3C27.8 89.3 14.9 143 13.5 209.5c-1.4 66.5-3.1 191.1 117 224.9h.1l-.1 51.6s-.8 20.9 13 25.1c16.6 5.2 26.4-10.7 42.3-27.8 8.7-9.4 20.7-23.2 29.8-33.7 82.2 6.9 145.3-8.9 152.5-11.2 16.6-5.4 110.5-17.4 125.7-142 15.8-128.6-7.6-209.8-49.8-246.5zM457.9 287c-12.9 104-89 110.6-103 115.1-6 1.9-61.5 15.7-131.2 11.2 0 0-52 62.7-68.2 79-5.3 5.3-11.1 4.8-11-5.7 0-6.9.4-85.7.4-85.7-.1 0-.1 0 0 0-101.8-28.2-95.8-134.3-94.7-189.8 1.1-55.5 11.6-101 42.6-131.6 55.7-50.5 170.4-43 170.4-43 96.9.4 143.3 29.6 154.1 39.4 35.7 30.6 53.9 103.8 40.6 211.1zm-139-80.8c.4 8.6-12.5 9.2-12.9.6-1.1-22-11.4-32.7-32.6-33.9-8.6-.5-7.8-13.4.7-12.9 27.9 1.5 43.4 17.5 44.8 46.2zm20.3 11.3c1-42.4-25.5-75.6-75.8-79.3-8.5-.6-7.6-13.5.9-12.9 58 4.2 88.9 44.1 87.8 92.5-.1 8.6-13.1 8.2-12.9-.3zm47 13.4c.1 8.6-12.9 8.7-12.9.1-.6-81.5-54.9-125.9-120.8-126.4-8.5-.1-8.5-12.9 0-12.9 73.7.5 133 51.4 133.7 139.2zM374.9 329v.2c-10.8 19-31 40-51.8 33.3l-.2-.3c-21.1-5.9-70.8-31.5-102.2-56.5-16.2-12.8-31-27.9-42.4-42.4-10.3-12.9-20.7-28.2-30.8-46.6-21.3-38.5-26-55.7-26-55.7-6.7-20.8 14.2-41 33.3-51.8h.2c9.2-4.8 18-3.2 23.9 3.9 0 0 12.4 14.8 17.7 22.1 5 6.8 11.7 17.7 15.2 23.8 6.1 10.9 2.3 22-3.7 26.6l-12 9.6c-6.1 4.9-5.3 14-5.3 14s17.8 67.3 84.3 84.3c0 0 9.1.8 14-5.3l9.6-12c4.6-6 15.7-9.8 26.6-3.7 14.7 8.3 33.4 21.2 45.8 32.9 7 5.7 8.6 14.4 3.8 23.6z\"},\"child\":[]}]})(props);\n};\nexport function FaVimeoSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-16.2 149.6c-1.4 31.1-23.2 73.8-65.3 127.9-43.5 56.5-80.3 84.8-110.4 84.8-18.7 0-34.4-17.2-47.3-51.6-25.2-92.3-35.9-146.4-56.7-146.4-2.4 0-10.8 5-25.1 15.1L64 192c36.9-32.4 72.1-68.4 94.1-70.4 24.9-2.4 40.2 14.6 46 51.1 20.5 129.6 29.6 149.2 66.8 90.5 13.4-21.2 20.6-37.2 21.5-48.3 3.4-32.8-25.6-30.6-45.2-22.2 15.7-51.5 45.8-76.5 90.1-75.1 32.9 1 48.4 22.4 46.5 64z\"},\"child\":[]}]})(props);\n};\nexport function FaVimeoV (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M447.8 153.6c-2 43.6-32.4 103.3-91.4 179.1-60.9 79.2-112.4 118.8-154.6 118.8-26.1 0-48.2-24.1-66.3-72.3C100.3 250 85.3 174.3 56.2 174.3c-3.4 0-15.1 7.1-35.2 21.1L0 168.2c51.6-45.3 100.9-95.7 131.8-98.5 34.9-3.4 56.3 20.5 64.4 71.5 28.7 181.5 41.4 208.9 93.6 126.7 18.7-29.6 28.8-52.1 30.2-67.6 4.8-45.9-35.8-42.8-63.3-31 22-72.1 64.1-107.1 126.2-105.1 45.8 1.2 67.5 31.1 64.9 89.4z\"},\"child\":[]}]})(props);\n};\nexport function FaVimeo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M403.2 32H44.8C20.1 32 0 52.1 0 76.8v358.4C0 459.9 20.1 480 44.8 480h358.4c24.7 0 44.8-20.1 44.8-44.8V76.8c0-24.7-20.1-44.8-44.8-44.8zM377 180.8c-1.4 31.5-23.4 74.7-66 129.4-44 57.2-81.3 85.8-111.7 85.8-18.9 0-34.8-17.4-47.9-52.3-25.5-93.3-36.4-148-57.4-148-2.4 0-10.9 5.1-25.4 15.2l-15.2-19.6c37.3-32.8 72.9-69.2 95.2-71.2 25.2-2.4 40.7 14.8 46.5 51.7 20.7 131.2 29.9 151 67.6 91.6 13.5-21.4 20.8-37.7 21.8-48.9 3.5-33.2-25.9-30.9-45.8-22.4 15.9-52.1 46.3-77.4 91.2-76 33.3.9 49 22.5 47.1 64.7z\"},\"child\":[]}]})(props);\n};\nexport function FaVine (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 254.7v52.1c-18.4 4.2-36.9 6.1-52.1 6.1-36.9 77.4-103 143.8-125.1 156.2-14 7.9-27.1 8.4-42.7-.8C137 452 34.2 367.7 0 102.7h74.5C93.2 261.8 139 343.4 189.3 404.5c27.9-27.9 54.8-65.1 75.6-106.9-49.8-25.3-80.1-80.9-80.1-145.6 0-65.6 37.7-115.1 102.2-115.1 114.9 0 106.2 127.9 81.6 181.5 0 0-46.4 9.2-63.5-20.5 3.4-11.3 8.2-30.8 8.2-48.5 0-31.3-11.3-46.6-28.4-46.6-18.2 0-30.8 17.1-30.8 50 .1 79.2 59.4 118.7 129.9 101.9z\"},\"child\":[]}]})(props);\n};\nexport function FaVk (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M545 117.7c3.7-12.5 0-21.7-17.8-21.7h-58.9c-15 0-21.9 7.9-25.6 16.7 0 0-30 73.1-72.4 120.5-13.7 13.7-20 18.1-27.5 18.1-3.7 0-9.4-4.4-9.4-16.9V117.7c0-15-4.2-21.7-16.6-21.7h-92.6c-9.4 0-15 7-15 13.5 0 14.2 21.2 17.5 23.4 57.5v86.8c0 19-3.4 22.5-10.9 22.5-20 0-68.6-73.4-97.4-157.4-5.8-16.3-11.5-22.9-26.6-22.9H38.8c-16.8 0-20.2 7.9-20.2 16.7 0 15.6 20 93.1 93.1 195.5C160.4 378.1 229 416 291.4 416c37.5 0 42.1-8.4 42.1-22.9 0-66.8-3.4-73.1 15.4-73.1 8.7 0 23.7 4.4 58.7 38.1 40 40 46.6 57.9 69 57.9h58.9c16.8 0 25.3-8.4 20.4-25-11.2-34.9-86.9-106.7-90.3-111.5-8.7-11.2-6.2-16.2 0-26.2.1-.1 72-101.3 79.4-135.6z\"},\"child\":[]}]})(props);\n};\nexport function FaVnv (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M104.9 352c-34.1 0-46.4-30.4-46.4-30.4L2.6 210.1S-7.8 192 13 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.7-74.5c5.6-9.5 8.4-18.1 18.8-18.1h32.8c20.8 0 10.4 18.1 10.4 18.1l-55.8 111.5S174.2 352 140 352h-35.1zm395 0c-34.1 0-46.4-30.4-46.4-30.4l-55.9-111.5S387.2 192 408 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.8-74.5c5.6-9.5 8.4-18.1 18.8-18.1H627c20.8 0 10.4 18.1 10.4 18.1l-55.9 111.5S569.3 352 535.1 352h-35.2zM337.6 192c34.1 0 46.4 30.4 46.4 30.4l55.9 111.5s10.4 18.1-10.4 18.1h-32.8c-10.4 0-13.2-8.7-18.8-18.1l-36.7-74.5s-5.2-13.1-21.1-13.1c-15.9 0-21.1 13.1-21.1 13.1l-36.7 74.5c-5.6 9.4-8.4 18.1-18.8 18.1h-32.9c-20.8 0-10.4-18.1-10.4-18.1l55.9-111.5s12.2-30.4 46.4-30.4h35.1z\"},\"child\":[]}]})(props);\n};\nexport function FaVuejs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M356.9 64.3H280l-56 88.6-48-88.6H0L224 448 448 64.3h-91.1zm-301.2 32h53.8L224 294.5 338.4 96.3h53.8L224 384.5 55.7 96.3z\"},\"child\":[]}]})(props);\n};\nexport function FaWatchmanMonitoring (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256,16C123.452,16,16,123.452,16,256S123.452,496,256,496,496,388.548,496,256,388.548,16,256,16ZM121.69,429.122C70.056,388.972,36.741,326.322,36.741,256a218.519,218.519,0,0,1,9.587-64.122l102.9-17.895-.121,10.967-13.943,2.013s-.144,12.5-.144,19.549a12.778,12.778,0,0,0,4.887,10.349l9.468,7.4Zm105.692-283.27,8.48-7.618s6.934-5.38-.143-9.344c-7.188-4.024-39.53-34.5-39.53-34.5-5.348-5.477-8.257-7.347-15.46,0,0,0-32.342,30.474-39.529,34.5-7.078,3.964-.144,9.344-.144,9.344l8.481,7.618-.048,4.369L75.982,131.045c39.644-56.938,105.532-94.3,180.018-94.3A218.754,218.754,0,0,1,420.934,111.77l-193.512,37.7Zm34.063,329.269-33.9-250.857,9.467-7.4a12.778,12.778,0,0,0,4.888-10.349c0-7.044-.144-19.549-.144-19.549l-13.943-2.013-.116-10.474,241.711,31.391A218.872,218.872,0,0,1,475.259,256C475.259,375.074,379.831,472.212,261.445,475.121Z\"},\"child\":[]}]})(props);\n};\nexport function FaWaze (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.17 201.67C516.69 287.53 471.23 369.59 389 409.8c13 34.1-12.4 70.2-48.32 70.2a51.68 51.68 0 0 1-51.57-49c-6.44.19-64.2 0-76.33-.64A51.69 51.69 0 0 1 159 479.92c-33.86-1.36-57.95-34.84-47-67.92-37.21-13.11-72.54-34.87-99.62-70.8-13-17.28-.48-41.8 20.84-41.8 46.31 0 32.22-54.17 43.15-110.26C94.8 95.2 193.12 32 288.09 32c102.48 0 197.15 70.67 214.08 169.67zM373.51 388.28c42-19.18 81.33-56.71 96.29-102.14 40.48-123.09-64.15-228-181.71-228-83.45 0-170.32 55.42-186.07 136-9.53 48.91 5 131.35-68.75 131.35C58.21 358.6 91.6 378.11 127 389.54c24.66-21.8 63.87-15.47 79.83 14.34 14.22 1 79.19 1.18 87.9.82a51.69 51.69 0 0 1 78.78-16.42zM205.12 187.13c0-34.74 50.84-34.75 50.84 0s-50.84 34.74-50.84 0zm116.57 0c0-34.74 50.86-34.75 50.86 0s-50.86 34.75-50.86 0zm-122.61 70.69c-3.44-16.94 22.18-22.18 25.62-5.21l.06.28c4.14 21.42 29.85 44 64.12 43.07 35.68-.94 59.25-22.21 64.11-42.77 4.46-16.05 28.6-10.36 25.47 6-5.23 22.18-31.21 62-91.46 62.9-42.55 0-80.88-27.84-87.9-64.25z\"},\"child\":[]}]})(props);\n};\nexport function FaWeebly (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M425.09 65.83c-39.88 0-73.28 25.73-83.66 64.33-18.16-58.06-65.5-64.33-84.95-64.33-19.78 0-66.8 6.28-85.28 64.33-10.38-38.6-43.45-64.33-83.66-64.33C38.59 65.83 0 99.72 0 143.03c0 28.96 4.18 33.27 77.17 233.48 22.37 60.57 67.77 69.35 92.74 69.35 39.23 0 70.04-19.46 85.93-53.98 15.89 34.83 46.69 54.29 85.93 54.29 24.97 0 70.36-9.1 92.74-69.67 76.55-208.65 77.5-205.58 77.5-227.2.63-48.32-36.01-83.47-86.92-83.47zm26.34 114.81l-65.57 176.44c-7.92 21.49-21.22 37.22-46.24 37.22-23.44 0-37.38-12.41-44.03-33.9l-39.28-117.42h-.95L216.08 360.4c-6.96 21.5-20.9 33.6-44.02 33.6-25.02 0-38.33-15.74-46.24-37.22L60.88 181.55c-5.38-14.83-7.92-23.91-7.92-34.5 0-16.34 15.84-29.36 38.33-29.36 18.69 0 31.99 11.8 36.11 29.05l44.03 139.82h.95l44.66-136.79c6.02-19.67 16.47-32.08 38.96-32.08s32.94 12.11 38.96 32.08l44.66 136.79h.95l44.03-139.82c4.12-17.25 17.42-29.05 36.11-29.05 22.17 0 38.33 13.32 38.33 35.71-.32 7.87-4.12 16.04-7.61 27.24z\"},\"child\":[]}]})(props);\n};\nexport function FaWeibo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M407 177.6c7.6-24-13.4-46.8-37.4-41.7-22 4.8-28.8-28.1-7.1-32.8 50.1-10.9 92.3 37.1 76.5 84.8-6.8 21.2-38.8 10.8-32-10.3zM214.8 446.7C108.5 446.7 0 395.3 0 310.4c0-44.3 28-95.4 76.3-143.7C176 67 279.5 65.8 249.9 161c-4 13.1 12.3 5.7 12.3 6 79.5-33.6 140.5-16.8 114 51.4-3.7 9.4 1.1 10.9 8.3 13.1 135.7 42.3 34.8 215.2-169.7 215.2zm143.7-146.3c-5.4-55.7-78.5-94-163.4-85.7-84.8 8.6-148.8 60.3-143.4 116s78.5 94 163.4 85.7c84.8-8.6 148.8-60.3 143.4-116zM347.9 35.1c-25.9 5.6-16.8 43.7 8.3 38.3 72.3-15.2 134.8 52.8 111.7 124-7.4 24.2 29.1 37 37.4 12 31.9-99.8-55.1-195.9-157.4-174.3zm-78.5 311c-17.1 38.8-66.8 60-109.1 46.3-40.8-13.1-58-53.4-40.3-89.7 17.7-35.4 63.1-55.4 103.4-45.1 42 10.8 63.1 50.2 46 88.5zm-86.3-30c-12.9-5.4-30 .3-38 12.9-8.3 12.9-4.3 28 8.6 34 13.1 6 30.8.3 39.1-12.9 8-13.1 3.7-28.3-9.7-34zm32.6-13.4c-5.1-1.7-11.4.6-14.3 5.4-2.9 5.1-1.4 10.6 3.7 12.9 5.1 2 11.7-.3 14.6-5.4 2.8-5.2 1.1-10.9-4-12.9z\"},\"child\":[]}]})(props);\n};\nexport function FaWeixin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M385.2 167.6c6.4 0 12.6.3 18.8 1.1C387.4 90.3 303.3 32 207.7 32 100.5 32 13 104.8 13 197.4c0 53.4 29.3 97.5 77.9 131.6l-19.3 58.6 68-34.1c24.4 4.8 43.8 9.7 68.2 9.7 6.2 0 12.1-.3 18.3-.8-4-12.9-6.2-26.6-6.2-40.8-.1-84.9 72.9-154 165.3-154zm-104.5-52.9c14.5 0 24.2 9.7 24.2 24.4 0 14.5-9.7 24.2-24.2 24.2-14.8 0-29.3-9.7-29.3-24.2.1-14.7 14.6-24.4 29.3-24.4zm-136.4 48.6c-14.5 0-29.3-9.7-29.3-24.2 0-14.8 14.8-24.4 29.3-24.4 14.8 0 24.4 9.7 24.4 24.4 0 14.6-9.6 24.2-24.4 24.2zM563 319.4c0-77.9-77.9-141.3-165.4-141.3-92.7 0-165.4 63.4-165.4 141.3S305 460.7 397.6 460.7c19.3 0 38.9-5.1 58.6-9.9l53.4 29.3-14.8-48.6C534 402.1 563 363.2 563 319.4zm-219.1-24.5c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.8 0 24.4 9.7 24.4 19.3 0 10-9.7 19.6-24.4 19.6zm107.1 0c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.5 0 24.4 9.7 24.4 19.3.1 10-9.9 19.6-24.4 19.6z\"},\"child\":[]}]})(props);\n};\nexport function FaWhatsappSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 122.8c-72.7 0-131.8 59.1-131.9 131.8 0 24.9 7 49.2 20.2 70.1l3.1 5-13.3 48.6 49.9-13.1 4.8 2.9c20.2 12 43.4 18.4 67.1 18.4h.1c72.6 0 133.3-59.1 133.3-131.8 0-35.2-15.2-68.3-40.1-93.2-25-25-58-38.7-93.2-38.7zm77.5 188.4c-3.3 9.3-19.1 17.7-26.7 18.8-12.6 1.9-22.4.9-47.5-9.9-39.7-17.2-65.7-57.2-67.7-59.8-2-2.6-16.2-21.5-16.2-41s10.2-29.1 13.9-33.1c3.6-4 7.9-5 10.6-5 2.6 0 5.3 0 7.6.1 2.4.1 5.7-.9 8.9 6.8 3.3 7.9 11.2 27.4 12.2 29.4s1.7 4.3.3 6.9c-7.6 15.2-15.7 14.6-11.6 21.6 15.3 26.3 30.6 35.4 53.9 47.1 4 2 6.3 1.7 8.6-1 2.3-2.6 9.9-11.6 12.5-15.5 2.6-4 5.3-3.3 8.9-2 3.6 1.3 23.1 10.9 27.1 12.9s6.6 3 7.6 4.6c.9 1.9.9 9.9-2.4 19.1zM400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM223.9 413.2c-26.6 0-52.7-6.7-75.8-19.3L64 416l22.5-82.2c-13.9-24-21.2-51.3-21.2-79.3C65.4 167.1 136.5 96 223.9 96c42.4 0 82.2 16.5 112.2 46.5 29.9 30 47.9 69.8 47.9 112.2 0 87.4-72.7 158.5-160.1 158.5z\"},\"child\":[]}]})(props);\n};\nexport function FaWhatsapp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z\"},\"child\":[]}]})(props);\n};\nexport function FaWhmcs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 161v-21.3l-28.5-8.8-2.2-10.4 20.1-20.7L427 80.4l-29 7.5-7.2-7.5 7.5-28.2-19.1-11.6-21.3 21-10.7-3.2-7-26.4h-22.6l-6.2 26.4-12.1 3.2-19.7-21-19.4 11 8.1 27.7-8.1 8.4-28.5-7.5-11 19.1 20.7 21-2.9 10.4-28.5 7.8-.3 21.7 28.8 7.5 2.4 12.1-20.1 19.9 10.4 18.5 29.6-7.5 7.2 8.6-8.1 26.9 19.9 11.6 19.4-20.4 11.6 2.9 6.7 28.5 22.6.3 6.7-28.8 11.6-3.5 20.7 21.6 20.4-12.1-8.8-28 7.8-8.1 28.8 8.8 10.3-20.1-20.9-18.8 2.2-12.1 29.1-7zm-119.2 45.2c-31.3 0-56.8-25.4-56.8-56.8s25.4-56.8 56.8-56.8 56.8 25.4 56.8 56.8c0 31.5-25.4 56.8-56.8 56.8zm72.3 16.4l46.9 14.5V277l-55.1 13.4-4.1 22.7 38.9 35.3-19.2 37.9-54-16.7-14.6 15.2 16.7 52.5-38.3 22.7-38.9-40.5-21.7 6.6-12.6 54-42.4-.5-12.6-53.6-21.7-5.6-36.4 38.4-37.4-21.7 15.2-50.5-13.7-16.1-55.5 14.1-19.7-34.8 37.9-37.4-4.8-22.8-54-14.1.5-40.9L54 219.9l5.7-19.7-38.9-39.4L41.5 125l53.6 14.1 15.2-15.7-15.2-52 36.4-20.7 36.8 39.4L191 84l11.6-52H245l11.6 45.9L234 72l-6.3-1.7-3.3 5.7-11 19.1-3.3 5.6 4.6 4.6 17.2 17.4-.3 1-23.8 6.5-6.2 1.7-.1 6.4-.2 12.9C153.8 161.6 118 204 118 254.7c0 58.3 47.3 105.7 105.7 105.7 50.5 0 92.7-35.4 103.2-82.8l13.2.2 6.9.1 1.6-6.7 5.6-24 1.9-.6 17.1 17.8 4.7 4.9 5.8-3.4 20.4-12.1 5.8-3.5-2-6.5-6.8-21.2z\"},\"child\":[]}]})(props);\n};\nexport function FaWikipediaW (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M640 51.2l-.3 12.2c-28.1.8-45 15.8-55.8 40.3-25 57.8-103.3 240-155.3 358.6H415l-81.9-193.1c-32.5 63.6-68.3 130-99.2 193.1-.3.3-15 0-15-.3C172 352.3 122.8 243.4 75.8 133.4 64.4 106.7 26.4 63.4.2 63.7c0-3.1-.3-10-.3-14.2h161.9v13.9c-19.2 1.1-52.8 13.3-43.3 34.2 21.9 49.7 103.6 240.3 125.6 288.6 15-29.7 57.8-109.2 75.3-142.8-13.9-28.3-58.6-133.9-72.8-160-9.7-17.8-36.1-19.4-55.8-19.7V49.8l142.5.3v13.1c-19.4.6-38.1 7.8-29.4 26.1 18.9 40 30.6 68.1 48.1 104.7 5.6-10.8 34.7-69.4 48.1-100.8 8.9-20.6-3.9-28.6-38.6-29.4.3-3.6 0-10.3.3-13.6 44.4-.3 111.1-.3 123.1-.6v13.6c-22.5.8-45.8 12.8-58.1 31.7l-59.2 122.8c6.4 16.1 63.3 142.8 69.2 156.7L559.2 91.8c-8.6-23.1-36.4-28.1-47.2-28.3V49.6l127.8 1.1.2.5z\"},\"child\":[]}]})(props);\n};\nexport function FaWindows (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 93.7l183.6-25.3v177.4H0V93.7zm0 324.6l183.6 25.3V268.4H0v149.9zm203.8 28L448 480V268.4H203.8v177.9zm0-380.6v180.1H448V32L203.8 65.7z\"},\"child\":[]}]})(props);\n};\nexport function FaWix (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M393.38 131.69c0 13.03 2.08 32.69-28.68 43.83-9.52 3.45-15.95 9.66-15.95 9.66 0-31 4.72-42.22 17.4-48.86 9.75-5.11 27.23-4.63 27.23-4.63zm-115.8 35.54l-34.24 132.66-28.48-108.57c-7.69-31.99-20.81-48.53-48.43-48.53-27.37 0-40.66 16.18-48.43 48.53L89.52 299.89 55.28 167.23C49.73 140.51 23.86 128.96 0 131.96l65.57 247.93s21.63 1.56 32.46-3.96c14.22-7.25 20.98-12.84 29.59-46.57 7.67-30.07 29.11-118.41 31.12-124.7 4.76-14.94 11.09-13.81 15.4 0 1.97 6.3 23.45 94.63 31.12 124.7 8.6 33.73 15.37 39.32 29.59 46.57 10.82 5.52 32.46 3.96 32.46 3.96l65.57-247.93c-24.42-3.07-49.82 8.93-55.3 35.27zm115.78 5.21s-4.1 6.34-13.46 11.57c-6.01 3.36-11.78 5.64-17.97 8.61-15.14 7.26-13.18 13.95-13.18 35.2v152.07s16.55 2.09 27.37-3.43c13.93-7.1 17.13-13.95 17.26-44.78V181.41l-.02.01v-8.98zm163.44 84.08L640 132.78s-35.11-5.98-52.5 9.85c-13.3 12.1-24.41 29.55-54.18 72.47-.47.73-6.25 10.54-13.07 0-29.29-42.23-40.8-60.29-54.18-72.47-17.39-15.83-52.5-9.85-52.5-9.85l83.2 123.74-82.97 123.36s36.57 4.62 53.95-11.21c11.49-10.46 17.58-20.37 52.51-70.72 6.81-10.52 12.57-.77 13.07 0 29.4 42.38 39.23 58.06 53.14 70.72 17.39 15.83 53.32 11.21 53.32 11.21L556.8 256.52z\"},\"child\":[]}]})(props);\n};\nexport function FaWizardsOfTheCoast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M219.19 345.69c-1.9 1.38-11.07 8.44-.26 23.57 4.64 6.42 14.11 12.79 21.73 6.55 6.5-4.88 7.35-12.92.26-23.04-5.47-7.76-14.28-12.88-21.73-7.08zm336.75 75.94c-.34 1.7-.55 1.67.79 0 2.09-4.19 4.19-10.21 4.98-19.9 3.14-38.49-40.33-71.49-101.34-78.03-54.73-6.02-124.38 9.17-188.8 60.49l-.26 1.57c2.62 4.98 4.98 10.74 3.4 21.21l.79.26c63.89-58.4 131.19-77.25 184.35-73.85 58.4 3.67 100.03 34.04 100.03 68.08-.01 9.96-2.63 15.72-3.94 20.17zM392.28 240.42c.79 7.07 4.19 10.21 9.17 10.47 5.5.26 9.43-2.62 10.47-6.55.79-3.4 2.09-29.85 2.09-29.85s-11.26 6.55-14.93 10.47c-3.66 3.68-7.33 8.39-6.8 15.46zm-50.02-151.1C137.75 89.32 13.1 226.8.79 241.2c-1.05.52-1.31.79.79 1.31 60.49 16.5 155.81 81.18 196.13 202.16l1.05.26c55.25-69.92 140.88-128.05 236.99-128.05 80.92 0 130.15 42.16 130.15 80.39 0 18.33-6.55 33.52-22.26 46.35 0 .96-.2.79.79.79 14.66-10.74 27.5-28.8 27.5-48.18 0-22.78-12.05-38.23-12.05-38.23 7.07 7.07 10.74 16.24 10.74 16.24 5.76-40.85 26.97-62.32 26.97-62.32-2.36-9.69-6.81-17.81-6.81-17.81 7.59 8.12 14.4 27.5 14.4 41.37 0 10.47-3.4 22.78-12.57 31.95l.26.52c8.12-4.98 16.5-16.76 16.5-37.97 0-15.71-4.71-25.92-4.71-25.92 5.76-5.24 11.26-9.17 15.97-11.78.79 3.4 2.09 9.69 2.36 14.93 0 1.05.79 1.83 1.05 0 .79-5.76-.26-16.24-.26-16.5 6.02-3.14 9.69-4.45 9.69-4.45C617.74 176 489.43 89.32 342.26 89.32zm-99.24 289.62c-11.06 8.99-24.2 4.08-30.64-4.19-7.45-9.58-6.76-24.09 4.19-32.47 14.85-11.35 27.08-.49 31.16 5.5.28.39 12.13 16.57-4.71 31.16zm2.09-136.43l9.43-17.81 11.78 70.96-12.57 6.02-24.62-28.8 14.14-26.71 3.67 4.45-1.83-8.11zm18.59 117.58l-.26-.26c2.05-4.1-2.5-6.61-17.54-31.69-1.31-2.36-3.14-2.88-4.45-2.62l-.26-.52c7.86-5.76 15.45-10.21 25.4-15.71l.52.26c1.31 1.83 2.09 2.88 3.4 4.71l-.26.52c-1.05-.26-2.36-.79-5.24.26-2.09.79-7.86 3.67-12.31 7.59v1.31c1.57 2.36 3.93 6.55 5.76 9.69h.26c10.05-6.28 7.56-4.55 11.52-7.86h.26c.52 1.83.52 1.83 1.83 5.5l-.26.26c-3.06.61-4.65.34-11.52 5.5v.26c9.46 17.02 11.01 16.75 12.57 15.97l.26.26c-2.34 1.59-6.27 4.21-9.68 6.57zm55.26-32.47c-3.14 1.57-6.02 2.88-9.95 4.98l-.26-.26c1.29-2.59 1.16-2.71-11.78-32.47l-.26-.26c-.15 0-8.9 3.65-9.95 7.33h-.52l-1.05-5.76.26-.52c7.29-4.56 25.53-11.64 27.76-12.57l.52.26 3.14 4.98-.26.52c-3.53-1.76-7.35.76-12.31 2.62v.26c12.31 32.01 12.67 30.64 14.66 30.64v.25zm44.77-16.5c-4.19 1.05-5.24 1.31-9.69 2.88l-.26-.26.52-4.45c-1.05-3.4-3.14-11.52-3.67-13.62l-.26-.26c-3.4.79-8.9 2.62-12.83 3.93l-.26.26c.79 2.62 3.14 9.95 4.19 13.88.79 2.36 1.83 2.88 2.88 3.14v.52c-3.67 1.05-7.07 2.62-10.21 3.93l-.26-.26c1.05-1.31 1.05-2.88.26-4.98-1.05-3.14-8.12-23.83-9.17-27.23-.52-1.83-1.57-3.14-2.62-3.14v-.52c3.14-1.05 6.02-2.09 10.74-3.4l.26.26-.26 4.71c1.31 3.93 2.36 7.59 3.14 9.69h.26c3.93-1.31 9.43-2.88 12.83-3.93l.26-.26-2.62-9.43c-.52-1.83-1.05-3.4-2.62-3.93v-.26c4.45-1.05 7.33-1.83 10.74-2.36l.26.26c-1.05 1.31-1.05 2.88-.52 4.45 1.57 6.28 4.71 20.43 6.28 26.45.54 2.62 1.85 3.41 2.63 3.93zm32.21-6.81l-.26.26c-4.71.52-14.14 2.36-22.52 4.19l-.26-.26.79-4.19c-1.57-7.86-3.4-18.59-4.98-26.19-.26-1.83-.79-2.88-2.62-3.67l.79-.52c9.17-1.57 20.16-2.36 24.88-2.62l.26.26c.52 2.36.79 3.14 1.57 5.5l-.26.26c-1.14-1.14-3.34-3.2-16.24-.79l-.26.26c.26 1.57 1.05 6.55 1.57 9.95l.26.26c9.52-1.68 4.76-.06 10.74-2.36h.26c0 1.57-.26 1.83-.26 5.24h-.26c-4.81-1.03-2.15-.9-10.21 0l-.26.26c.26 2.09 1.57 9.43 2.09 12.57l.26.26c1.15.38 14.21-.65 16.24-4.71h.26c-.53 2.38-1.05 4.21-1.58 6.04zm10.74-44.51c-4.45 2.36-8.12 2.88-11 2.88-.25.02-11.41 1.09-17.54-9.95-6.74-10.79-.98-25.2 5.5-31.69 8.8-8.12 23.35-10.1 28.54-17.02 8.03-10.33-13.04-22.31-29.59-5.76l-2.62-2.88 5.24-16.24c25.59-1.57 45.2-3.04 50.02 16.24.79 3.14 0 9.43-.26 12.05 0 2.62-1.83 18.85-2.09 23.04-.52 4.19-.79 18.33-.79 20.69.26 2.36.52 4.19 1.57 5.5 1.57 1.83 5.76 1.83 5.76 1.83l-.79 4.71c-11.82-1.07-10.28-.59-20.43-1.05-3.22-5.15-2.23-3.28-4.19-7.86 0 .01-4.19 3.94-7.33 5.51zm37.18 21.21c-6.35-10.58-19.82-7.16-21.73 5.5-2.63 17.08 14.3 19.79 20.69 10.21l.26.26c-.52 1.83-1.83 6.02-1.83 6.28l-.52.52c-10.3 6.87-28.5-2.5-25.66-18.59 1.94-10.87 14.44-18.93 28.8-9.95l.26.52c0 1.06-.27 3.41-.27 5.25zm5.77-87.73v-6.55c.69 0 19.65 3.28 27.76 7.33l-1.57 17.54s10.21-9.43 15.45-10.74c5.24-1.57 14.93 7.33 14.93 7.33l-11.26 11.26c-12.07-6.35-19.59-.08-20.69.79-5.29 38.72-8.6 42.17 4.45 46.09l-.52 4.71c-17.55-4.29-18.53-4.5-36.92-7.33l.79-4.71c7.25 0 7.48-5.32 7.59-6.81 0 0 4.98-53.16 4.98-55.25-.02-2.87-4.99-3.66-4.99-3.66zm10.99 114.44c-8.12-2.09-14.14-11-10.74-20.69 3.14-9.43 12.31-12.31 18.85-10.21 9.17 2.62 12.83 11.78 10.74 19.38-2.61 8.9-9.42 13.87-18.85 11.52zm42.16 9.69c-2.36-.52-7.07-2.36-8.64-2.88v-.26l1.57-1.83c.59-8.24.59-7.27.26-7.59-4.82-1.81-6.66-2.36-7.07-2.36-1.31 1.83-2.88 4.45-3.67 5.5l-.79 3.4v.26c-1.31-.26-3.93-1.31-6.02-1.57v-.26l2.62-1.83c3.4-4.71 9.95-14.14 13.88-20.16v-2.09l.52-.26c2.09.79 5.5 2.09 7.59 2.88.48.48.18-1.87-1.05 25.14-.24 1.81.02 2.6.8 3.91zm-4.71-89.82c11.25-18.27 30.76-16.19 34.04-3.4L539.7 198c2.34-6.25-2.82-9.9-4.45-11.26l1.83-3.67c12.22 10.37 16.38 13.97 22.52 20.43-25.91 73.07-30.76 80.81-24.62 84.32l-1.83 4.45c-6.37-3.35-8.9-4.42-17.81-8.64l2.09-6.81c-.26-.26-3.93 3.93-9.69 3.67-19.06-1.3-22.89-31.75-9.67-52.9zm29.33 79.34c0-5.71-6.34-7.89-7.86-5.24-1.31 2.09 1.05 4.98 2.88 8.38 1.57 2.62 2.62 6.28 1.05 9.43-2.64 6.34-12.4 5.31-15.45-.79 0-.7-.27.09 1.83-4.71l.79-.26c-.57 5.66 6.06 9.61 8.38 4.98 1.05-2.09-.52-5.5-2.09-8.38-1.57-2.62-3.67-6.28-1.83-9.69 2.72-5.06 11.25-4.47 14.66 2.36v.52l-2.36 3.4zm21.21 13.36c-1.96-3.27-.91-2.14-4.45-4.71h-.26c-2.36 4.19-5.76 10.47-8.64 16.24-1.31 2.36-1.05 3.4-.79 3.93l-.26.26-5.76-4.45.26-.26 2.09-1.31c3.14-5.76 6.55-12.05 9.17-17.02v-.26c-2.64-1.98-1.22-1.51-6.02-1.83v-.26l3.14-3.4h.26c3.67 2.36 9.95 6.81 12.31 8.9l.26.26-1.31 3.91zm27.23-44.26l-2.88-2.88c.79-2.36 1.83-4.98 2.09-7.59.75-9.74-11.52-11.84-11.52-4.98 0 4.98 7.86 19.38 7.86 27.76 0 10.21-5.76 15.71-13.88 16.5-8.38.79-20.16-10.47-20.16-10.47l4.98-14.4 2.88 2.09c-2.97 17.8 17.68 20.37 13.35 5.24-1.06-4.02-18.75-34.2 2.09-38.23 13.62-2.36 23.04 16.5 23.04 16.5l-7.85 10.46zm35.62-10.21c-11-30.38-60.49-127.53-191.95-129.62-53.42-1.05-94.27 15.45-132.76 37.97l85.63-9.17-91.39 20.69 25.14 19.64-3.93-16.5c7.5-1.71 39.15-8.45 66.77-8.9l-22.26 80.39c13.61-.7 18.97-8.98 19.64-22.78l4.98-1.05.26 26.71c-22.46 3.21-37.3 6.69-49.49 9.95l13.09-43.21-61.54-36.66 2.36 8.12 10.21 4.98c6.28 18.59 19.38 56.56 20.43 58.66 1.95 4.28 3.16 5.78 12.05 4.45l1.05 4.98c-16.08 4.86-23.66 7.61-39.02 14.4l-2.36-4.71c4.4-2.94 8.73-3.94 5.5-12.83-23.7-62.5-21.48-58.14-22.78-59.44l2.36-4.45 33.52 67.3c-3.84-11.87 1.68 1.69-32.99-78.82l-41.9 88.51 4.71-13.88-35.88-42.16 27.76 93.48-11.78 8.38C95 228.58 101.05 231.87 93.23 231.52c-5.5-.26-13.62 5.5-13.62 5.5L74.63 231c30.56-23.53 31.62-24.33 58.4-42.68l4.19 7.07s-5.76 4.19-7.86 7.07c-5.9 9.28 1.67 13.28 61.8 75.68l-18.85-58.92 39.8-10.21 25.66 30.64 4.45-12.31-4.98-24.62 13.09-3.4.52 3.14 3.67-10.47-94.27 29.33 11.26-4.98-13.62-42.42 17.28-9.17 30.11 36.14 28.54-13.09c-1.41-7.47-2.47-14.5-4.71-19.64l17.28 13.88 4.71-2.09-59.18-42.68 23.08 11.5c18.98-6.07 25.23-7.47 32.21-9.69l2.62 11c-12.55 12.55 1.43 16.82 6.55 19.38l-13.62-61.01 12.05 28.28c4.19-1.31 7.33-2.09 7.33-2.09l2.62 8.64s-3.14 1.05-6.28 2.09l8.9 20.95 33.78-65.73-20.69 61.01c42.42-24.09 81.44-36.66 131.98-35.88 67.04 1.05 167.33 40.85 199.8 139.83.78 2.1-.01 2.63-.79.27zM203.48 152.43s1.83-.52 4.19-1.31l9.43 7.59c-.4 0-3.44-.25-11.26 2.36l-2.36-8.64zm143.76 38.5c-1.57-.6-26.46-4.81-33.26 20.69l21.73 17.02 11.53-37.71zM318.43 67.07c-58.4 0-106.05 12.05-114.96 14.4v.79c8.38 2.09 14.4 4.19 21.21 11.78l1.57.26c6.55-1.83 48.97-13.88 110.24-13.88 180.16 0 301.67 116.79 301.67 223.37v9.95c0 1.31.79 2.62 1.05.52.52-2.09.79-8.64.79-19.64.26-83.79-96.63-227.55-321.57-227.55zm211.06 169.68c1.31-5.76 0-12.31-7.33-13.09-9.62-1.13-16.14 23.79-17.02 33.52-.79 5.5-1.31 14.93 6.02 14.93 4.68-.01 9.72-.91 18.33-35.36zm-61.53 42.95c-2.62-.79-9.43-.79-12.57 10.47-1.83 6.81.52 13.35 6.02 14.66 3.67 1.05 8.9.52 11.78-10.74 2.62-9.94-1.83-13.61-5.23-14.39zM491 300.65c1.83.52 3.14 1.05 5.76 1.83 0-1.83.52-8.38.79-12.05-1.05 1.31-5.5 8.12-6.55 9.95v.27z\"},\"child\":[]}]})(props);\n};\nexport function FaWodu (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M178.414 339.706H141.1L112.166 223.475h-.478L83.228 339.706H45.2L0 168.946H37.548L64.574 285.177h.478L94.707 168.946h35.157l29.178 117.667h.479L187.5 168.946h36.831zM271.4 212.713c38.984 0 64.1 25.828 64.1 65.291 0 39.222-25.111 65.05-64.1 65.05-38.743 0-63.855-25.828-63.855-65.05C207.547 238.541 232.659 212.713 271.4 212.713zm0 104.753c23.2 0 30.133-19.852 30.133-39.462 0-19.852-6.934-39.7-30.133-39.7-27.7 0-29.894 19.85-29.894 39.7C241.508 297.614 248.443 317.466 271.4 317.466zM435.084 323.922h-.478c-7.893 13.392-21.765 19.132-37.548 19.132-37.31 0-55.485-32.045-55.485-66.246 0-33.243 18.415-64.095 54.767-64.095 14.589 0 28.938 6.218 36.831 18.416h.24V168.946h33.96v170.76H435.084zM405.428 238.3c-22.24 0-29.894 19.134-29.894 39.463 0 19.371 8.848 39.7 29.894 39.7 22.482 0 29.178-19.613 29.178-39.94C434.606 257.436 427.432 238.3 405.428 238.3zM592.96 339.706H560.673V322.487h-.718c-8.609 13.87-23.436 20.567-37.786 20.567-36.113 0-45.2-20.328-45.2-50.941V216.061h33.959V285.9c0 20.329 5.979 30.372 21.765 30.372 18.415 0 26.306-10.283 26.306-35.393V216.061H592.96zM602.453 302.876H640v36.83H602.453z\"},\"child\":[]}]})(props);\n};\nexport function FaWolfPackBattalion (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M267.73 471.53l10.56 15.84 5.28-12.32 5.28 7V512c21.06-7.92 21.11-66.86 25.51-97.21 4.62-31.89-.88-92.81 81.37-149.11-8.88-23.61-12-49.43-2.64-80.05C421 189 447 196.21 456.43 239.73l-30.35 8.36c11.15 23 17 46.76 13.2 72.14L412 313.18l-6.16 33.43-18.47-7-8.8 33.39-19.35-7 26.39 21.11 8.8-28.15L419 364.2l7-35.63 26.39 14.52c.25-20 7-58.06-8.8-84.45l26.39 5.28c4-22.07-2.38-39.21-7.92-56.74l22.43 9.68c-.44-25.07-29.94-56.79-61.58-58.5-20.22-1.09-56.74-25.17-54.1-51.9 2-19.87 17.45-42.62 43.11-49.7-44 36.51-9.68 67.3 5.28 73.46 4.4-11.44 17.54-69.08 0-130.2-40.39 22.87-89.65 65.1-93.2 147.79l-58 38.71-3.52 93.25L369.78 220l7 7-17.59 3.52-44 38.71-15.84-5.28-28.1 49.25-3.52 119.64 21.11 15.84-32.55 15.84-32.55-15.84 21.11-15.84-3.52-119.64-28.15-49.26-15.84 5.28-44-38.71-17.58-3.51 7-7 107.33 59.82-3.52-93.25-58.06-38.71C185 65.1 135.77 22.87 95.3 0c-17.54 61.12-4.4 118.76 0 130.2 15-6.16 49.26-36.95 5.28-73.46 25.66 7.08 41.15 29.83 43.11 49.7 2.63 26.74-33.88 50.81-54.1 51.9-31.65 1.72-61.15 33.44-61.59 58.51l22.43-9.68c-5.54 17.53-11.91 34.67-7.92 56.74l26.39-5.28c-15.76 26.39-9.05 64.43-8.8 84.45l26.39-14.52 7 35.63 24.63-5.28 8.8 28.15L153.35 366 134 373l-8.8-33.43-18.47 7-6.16-33.43-27.27 7c-3.82-25.38 2-49.1 13.2-72.14l-30.35-8.36c9.4-43.52 35.47-50.77 63.34-54.1 9.36 30.62 6.24 56.45-2.64 80.05 82.25 56.3 76.75 117.23 81.37 149.11 4.4 30.35 4.45 89.29 25.51 97.21v-29.83l5.28-7 5.28 12.32 10.56-15.84 11.44 21.11 11.43-21.1zm79.17-95L331.06 366c7.47-4.36 13.76-8.42 19.35-12.32-.6 7.22-.27 13.84-3.51 22.84zm28.15-49.26c-.4 10.94-.9 21.66-1.76 31.67-7.85-1.86-15.57-3.8-21.11-7 8.24-7.94 15.55-16.32 22.87-24.68zm24.63 5.28c0-13.43-2.05-24.21-5.28-33.43a235 235 0 0 1-18.47 27.27zm3.52-80.94c19.44 12.81 27.8 33.66 29.91 56.3-12.32-4.53-24.63-9.31-36.95-10.56 5.06-12 6.65-28.14 7-45.74zm-1.76-45.74c.81 14.3 1.84 28.82 1.76 42.23 19.22-8.11 29.78-9.72 44-14.08-10.61-18.96-27.2-25.53-45.76-28.16zM165.68 376.52L181.52 366c-7.47-4.36-13.76-8.42-19.35-12.32.6 7.26.27 13.88 3.51 22.88zm-28.15-49.26c.4 10.94.9 21.66 1.76 31.67 7.85-1.86 15.57-3.8 21.11-7-8.24-7.93-15.55-16.31-22.87-24.67zm-24.64 5.28c0-13.43 2-24.21 5.28-33.43a235 235 0 0 0 18.47 27.27zm-3.52-80.94c-19.44 12.81-27.8 33.66-29.91 56.3 12.32-4.53 24.63-9.31 37-10.56-5-12-6.65-28.14-7-45.74zm1.76-45.74c-.81 14.3-1.84 28.82-1.76 42.23-19.22-8.11-29.78-9.72-44-14.08 10.63-18.95 27.23-25.52 45.76-28.15z\"},\"child\":[]}]})(props);\n};\nexport function FaWordpressSimple (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.3 8 8 119.2 8 256c0 136.7 111.3 248 248 248s248-111.3 248-248C504 119.2 392.7 8 256 8zM33 256c0-32.3 6.9-63 19.3-90.7l106.4 291.4C84.3 420.5 33 344.2 33 256zm223 223c-21.9 0-43-3.2-63-9.1l66.9-194.4 68.5 187.8c.5 1.1 1 2.1 1.6 3.1-23.1 8.1-48 12.6-74 12.6zm30.7-327.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-21.9 0-58.7-2.8-58.7-2.8-12-.7-13.4 17.7-1.4 18.4 0 0 11.4 1.4 23.4 2.1l34.7 95.2L200.6 393l-81.2-241.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-4.2 0-9.1-.1-14.4-.3C109.6 73 178.1 33 256 33c58 0 110.9 22.2 150.6 58.5-1-.1-1.9-.2-2.9-.2-21.9 0-37.4 19.1-37.4 39.6 0 18.4 10.6 33.9 21.9 52.3 8.5 14.8 18.4 33.9 18.4 61.5 0 19.1-7.3 41.2-17 72.1l-22.2 74.3-80.7-239.6zm81.4 297.2l68.1-196.9c12.7-31.8 17-57.2 17-79.9 0-8.2-.5-15.8-1.5-22.9 17.4 31.8 27.3 68.2 27.3 107 0 82.3-44.6 154.1-110.9 192.7z\"},\"child\":[]}]})(props);\n};\nexport function FaWordpress (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M61.7 169.4l101.5 278C92.2 413 43.3 340.2 43.3 256c0-30.9 6.6-60.1 18.4-86.6zm337.9 75.9c0-26.3-9.4-44.5-17.5-58.7-10.8-17.5-20.9-32.4-20.9-49.9 0-19.6 14.8-37.8 35.7-37.8.9 0 1.8.1 2.8.2-37.9-34.7-88.3-55.9-143.7-55.9-74.3 0-139.7 38.1-177.8 95.9 5 .2 9.7.3 13.7.3 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l77.5 230.4L249.8 247l-33.1-90.8c-11.5-.7-22.3-2-22.3-2-11.5-.7-10.1-18.2 1.3-17.5 0 0 35.1 2.7 56 2.7 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l76.9 228.7 21.2-70.9c9-29.4 16-50.5 16-68.7zm-139.9 29.3l-63.8 185.5c19.1 5.6 39.2 8.7 60.1 8.7 24.8 0 48.5-4.3 70.6-12.1-.6-.9-1.1-1.9-1.5-2.9l-65.4-179.2zm183-120.7c.9 6.8 1.4 14 1.4 21.9 0 21.6-4 45.8-16.2 76.2l-65 187.9C426.2 403 468.7 334.5 468.7 256c0-37-9.4-71.8-26-102.1zM504 256c0 136.8-111.3 248-248 248C119.2 504 8 392.7 8 256 8 119.2 119.2 8 256 8c136.7 0 248 111.2 248 248zm-11.4 0c0-130.5-106.2-236.6-236.6-236.6C125.5 19.4 19.4 125.5 19.4 256S125.6 492.6 256 492.6c130.5 0 236.6-106.1 236.6-236.6z\"},\"child\":[]}]})(props);\n};\nexport function FaWpbeginner (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M462.799 322.374C519.01 386.682 466.961 480 370.944 480c-39.602 0-78.824-17.687-100.142-50.04-6.887.356-22.702.356-29.59 0C219.848 462.381 180.588 480 141.069 480c-95.49 0-148.348-92.996-91.855-157.626C-29.925 190.523 80.479 32 256.006 32c175.632 0 285.87 158.626 206.793 290.374zm-339.647-82.972h41.529v-58.075h-41.529v58.075zm217.18 86.072v-23.839c-60.506 20.915-132.355 9.198-187.589-33.971l.246 24.897c51.101 46.367 131.746 57.875 187.343 32.913zm-150.753-86.072h166.058v-58.075H189.579v58.075z\"},\"child\":[]}]})(props);\n};\nexport function FaWpexplorer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 256c0 141.2-114.7 256-256 256C114.8 512 0 397.3 0 256S114.7 0 256 0s256 114.7 256 256zm-32 0c0-123.2-100.3-224-224-224C132.5 32 32 132.5 32 256s100.5 224 224 224 224-100.5 224-224zM160.9 124.6l86.9 37.1-37.1 86.9-86.9-37.1 37.1-86.9zm110 169.1l46.6 94h-14.6l-50-100-48.9 100h-14l51.1-106.9-22.3-9.4 6-14 68.6 29.1-6 14.3-16.5-7.1zm-11.8-116.3l68.6 29.4-29.4 68.3L230 246l29.1-68.6zm80.3 42.9l54.6 23.1-23.4 54.3-54.3-23.1 23.1-54.3z\"},\"child\":[]}]})(props);\n};\nexport function FaWpforms (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 75.2v361.7c0 24.3-19 43.2-43.2 43.2H43.2C19.3 480 0 461.4 0 436.8V75.2C0 51.1 18.8 32 43.2 32h361.7c24 0 43.1 18.8 43.1 43.2zm-37.3 361.6V75.2c0-3-2.6-5.8-5.8-5.8h-9.3L285.3 144 224 94.1 162.8 144 52.5 69.3h-9.3c-3.2 0-5.8 2.8-5.8 5.8v361.7c0 3 2.6 5.8 5.8 5.8h361.7c3.2.1 5.8-2.7 5.8-5.8zM150.2 186v37H76.7v-37h73.5zm0 74.4v37.3H76.7v-37.3h73.5zm11.1-147.3l54-43.7H96.8l64.5 43.7zm210 72.9v37h-196v-37h196zm0 74.4v37.3h-196v-37.3h196zm-84.6-147.3l64.5-43.7H232.8l53.9 43.7zM371.3 335v37.3h-99.4V335h99.4z\"},\"child\":[]}]})(props);\n};\nexport function FaWpressr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm171.33 158.6c-15.18 34.51-30.37 69.02-45.63 103.5-2.44 5.51-6.89 8.24-12.97 8.24-23.02-.01-46.03.06-69.05-.05-5.12-.03-8.25 1.89-10.34 6.72-10.19 23.56-20.63 47-30.95 70.5-1.54 3.51-4.06 5.29-7.92 5.29-45.94-.01-91.87-.02-137.81 0-3.13 0-5.63-1.15-7.72-3.45-11.21-12.33-22.46-24.63-33.68-36.94-2.69-2.95-2.79-6.18-1.21-9.73 8.66-19.54 17.27-39.1 25.89-58.66 12.93-29.35 25.89-58.69 38.75-88.08 1.7-3.88 4.28-5.68 8.54-5.65 14.24.1 28.48.02 42.72.05 6.24.01 9.2 4.84 6.66 10.59-13.6 30.77-27.17 61.55-40.74 92.33-5.72 12.99-11.42 25.99-17.09 39-3.91 8.95 7.08 11.97 10.95 5.6.23-.37-1.42 4.18 30.01-67.69 1.36-3.1 3.41-4.4 6.77-4.39 15.21.08 30.43.02 45.64.04 5.56.01 7.91 3.64 5.66 8.75-8.33 18.96-16.71 37.9-24.98 56.89-4.98 11.43 8.08 12.49 11.28 5.33.04-.08 27.89-63.33 32.19-73.16 2.02-4.61 5.44-6.51 10.35-6.5 26.43.05 52.86 0 79.29.05 12.44.02 13.93-13.65 3.9-13.64-25.26.03-50.52.02-75.78.02-6.27 0-7.84-2.47-5.27-8.27 5.78-13.06 11.59-26.11 17.3-39.21 1.73-3.96 4.52-5.79 8.84-5.78 23.09.06 25.98.02 130.78.03 6.08-.01 8.03 2.79 5.62 8.27z\"},\"child\":[]}]})(props);\n};\nexport function FaXbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.9 318.2c44.3 54.3 64.7 98.8 54.4 118.7-7.9 15.1-56.7 44.6-92.6 55.9-29.6 9.3-68.4 13.3-100.4 10.2-38.2-3.7-76.9-17.4-110.1-39C93.3 445.8 87 438.3 87 423.4c0-29.9 32.9-82.3 89.2-142.1 32-33.9 76.5-73.7 81.4-72.6 9.4 2.1 84.3 75.1 112.3 109.5zM188.6 143.8c-29.7-26.9-58.1-53.9-86.4-63.4-15.2-5.1-16.3-4.8-28.7 8.1-29.2 30.4-53.5 79.7-60.3 122.4-5.4 34.2-6.1 43.8-4.2 60.5 5.6 50.5 17.3 85.4 40.5 120.9 9.5 14.6 12.1 17.3 9.3 9.9-4.2-11-.3-37.5 9.5-64 14.3-39 53.9-112.9 120.3-194.4zm311.6 63.5C483.3 127.3 432.7 77 425.6 77c-7.3 0-24.2 6.5-36 13.9-23.3 14.5-41 31.4-64.3 52.8C367.7 197 427.5 283.1 448.2 346c6.8 20.7 9.7 41.1 7.4 52.3-1.7 8.5-1.7 8.5 1.4 4.6 6.1-7.7 19.9-31.3 25.4-43.5 7.4-16.2 15-40.2 18.6-58.7 4.3-22.5 3.9-70.8-.8-93.4zM141.3 43C189 40.5 251 77.5 255.6 78.4c.7.1 10.4-4.2 21.6-9.7 63.9-31.1 94-25.8 107.4-25.2-63.9-39.3-152.7-50-233.9-11.7-23.4 11.1-24 11.9-9.4 11.2z\"},\"child\":[]}]})(props);\n};\nexport function FaXingSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM140.4 320.2H93.8c-5.5 0-8.7-5.3-6-10.3l49.3-86.7c.1 0 .1-.1 0-.2l-31.4-54c-3-5.6.2-10.1 6-10.1h46.6c5.2 0 9.5 2.9 12.9 8.7l31.9 55.3c-1.3 2.3-18 31.7-50.1 88.2-3.5 6.2-7.7 9.1-12.6 9.1zm219.7-214.1L257.3 286.8v.2l65.5 119c2.8 5.1.1 10.1-6 10.1h-46.6c-5.5 0-9.7-2.9-12.9-8.7l-66-120.3c2.3-4.1 36.8-64.9 103.4-182.3 3.3-5.8 7.4-8.7 12.5-8.7h46.9c5.7-.1 8.8 4.7 6 10z\"},\"child\":[]}]})(props);\n};\nexport function FaXing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M162.7 210c-1.8 3.3-25.2 44.4-70.1 123.5-4.9 8.3-10.8 12.5-17.7 12.5H9.8c-7.7 0-12.1-7.5-8.5-14.4l69-121.3c.2 0 .2-.1 0-.3l-43.9-75.6c-4.3-7.8.3-14.1 8.5-14.1H100c7.3 0 13.3 4.1 18 12.2l44.7 77.5zM382.6 46.1l-144 253v.3L330.2 466c3.9 7.1.2 14.1-8.5 14.1h-65.2c-7.6 0-13.6-4-18-12.2l-92.4-168.5c3.3-5.8 51.5-90.8 144.8-255.2 4.6-8.1 10.4-12.2 17.5-12.2h65.7c8 0 12.3 6.7 8.5 14.1z\"},\"child\":[]}]})(props);\n};\nexport function FaYCombinator (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 32v448H0V32h448zM236 287.5L313.5 142h-32.7L235 233c-4.7 9.3-9 18.3-12.8 26.8L210 233l-45.2-91h-35l76.7 143.8v94.5H236v-92.8z\"},\"child\":[]}]})(props);\n};\nexport function FaYahoo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M223.69,141.06,167,284.23,111,141.06H14.93L120.76,390.19,82.19,480h94.17L317.27,141.06Zm105.4,135.79a58.22,58.22,0,1,0,58.22,58.22A58.22,58.22,0,0,0,329.09,276.85ZM394.65,32l-93,223.47H406.44L499.07,32Z\"},\"child\":[]}]})(props);\n};\nexport function FaYammer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M421.78 152.17A23.06 23.06 0 0 0 400.9 112c-.83.43-1.71.9-2.63 1.4-15.25 8.4-118.33 80.62-106.69 88.77s82.04-23.61 130.2-50zm0 217.17c-48.16-26.38-118.64-58.1-130.2-50s91.42 80.35 106.69 88.74c.92.51 1.8 1 2.63 1.41a23.07 23.07 0 0 0 20.88-40.15zM464.21 237c-.95 0-1.95-.06-3-.06-17.4 0-142.52 13.76-136.24 26.51s83.3 18.74 138.21 18.76a23 23 0 0 0 1-45.21zM31 96.65a24.88 24.88 0 0 1 46.14-18.4l81 205.06h1.21l77-203.53a23.52 23.52 0 0 1 44.45 15.27L171.2 368.44C152.65 415.66 134.08 448 77.91 448a139.67 139.67 0 0 1-23.81-1.95 21.31 21.31 0 0 1 6.9-41.77c.66.06 10.91.66 13.86.66 30.47 0 43.74-18.94 58.07-59.41z\"},\"child\":[]}]})(props);\n};\nexport function FaYandexInternational (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M129.5 512V345.9L18.5 48h55.8l81.8 229.7L250.2 0h51.3L180.8 347.8V512h-51.3z\"},\"child\":[]}]})(props);\n};\nexport function FaYandex (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M153.1 315.8L65.7 512H2l96-209.8c-45.1-22.9-75.2-64.4-75.2-141.1C22.7 53.7 90.8 0 171.7 0H254v512h-55.1V315.8h-45.8zm45.8-269.3h-29.4c-44.4 0-87.4 29.4-87.4 114.6 0 82.3 39.4 108.8 87.4 108.8h29.4V46.5z\"},\"child\":[]}]})(props);\n};\nexport function FaYarn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M393.9 345.2c-39 9.3-48.4 32.1-104 47.4 0 0-2.7 4-10.4 5.8-13.4 3.3-63.9 6-68.5 6.1-12.4.1-19.9-3.2-22-8.2-6.4-15.3 9.2-22 9.2-22-8.1-5-9-9.9-9.8-8.1-2.4 5.8-3.6 20.1-10.1 26.5-8.8 8.9-25.5 5.9-35.3.8-10.8-5.7.8-19.2.8-19.2s-5.8 3.4-10.5-3.6c-6-9.3-17.1-37.3 11.5-62-1.3-10.1-4.6-53.7 40.6-85.6 0 0-20.6-22.8-12.9-43.3 5-13.4 7-13.3 8.6-13.9 5.7-2.2 11.3-4.6 15.4-9.1 20.6-22.2 46.8-18 46.8-18s12.4-37.8 23.9-30.4c3.5 2.3 16.3 30.6 16.3 30.6s13.6-7.9 15.1-5c8.2 16 9.2 46.5 5.6 65.1-6.1 30.6-21.4 47.1-27.6 57.5-1.4 2.4 16.5 10 27.8 41.3 10.4 28.6 1.1 52.7 2.8 55.3.8 1.4 13.7.8 36.4-13.2 12.8-7.9 28.1-16.9 45.4-17 16.7-.5 17.6 19.2 4.9 22.2zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-79.3 75.2c-1.7-13.6-13.2-23-28-22.8-22 .3-40.5 11.7-52.8 19.2-4.8 3-8.9 5.2-12.4 6.8 3.1-44.5-22.5-73.1-28.7-79.4 7.8-11.3 18.4-27.8 23.4-53.2 4.3-21.7 3-55.5-6.9-74.5-1.6-3.1-7.4-11.2-21-7.4-9.7-20-13-22.1-15.6-23.8-1.1-.7-23.6-16.4-41.4 28-12.2.9-31.3 5.3-47.5 22.8-2 2.2-5.9 3.8-10.1 5.4h.1c-8.4 3-12.3 9.9-16.9 22.3-6.5 17.4.2 34.6 6.8 45.7-17.8 15.9-37 39.8-35.7 82.5-34 36-11.8 73-5.6 79.6-1.6 11.1 3.7 19.4 12 23.8 12.6 6.7 30.3 9.6 43.9 2.8 4.9 5.2 13.8 10.1 30 10.1 6.8 0 58-2.9 72.6-6.5 6.8-1.6 11.5-4.5 14.6-7.1 9.8-3.1 36.8-12.3 62.2-28.7 18-11.7 24.2-14.2 37.6-17.4 12.9-3.2 21-15.1 19.4-28.2z\"},\"child\":[]}]})(props);\n};\nexport function FaYelp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M42.9 240.32l99.62 48.61c19.2 9.4 16.2 37.51-4.5 42.71L30.5 358.45a22.79 22.79 0 0 1-28.21-19.6 197.16 197.16 0 0 1 9-85.32 22.8 22.8 0 0 1 31.61-13.21zm44 239.25a199.45 199.45 0 0 0 79.42 32.11A22.78 22.78 0 0 0 192.94 490l3.9-110.82c.7-21.3-25.5-31.91-39.81-16.1l-74.21 82.4a22.82 22.82 0 0 0 4.09 34.09zm145.34-109.92l58.81 94a22.93 22.93 0 0 0 34 5.5 198.36 198.36 0 0 0 52.71-67.61A23 23 0 0 0 364.17 370l-105.42-34.26c-20.31-6.5-37.81 15.8-26.51 33.91zm148.33-132.23a197.44 197.44 0 0 0-50.41-69.31 22.85 22.85 0 0 0-34 4.4l-62 91.92c-11.9 17.7 4.7 40.61 25.2 34.71L366 268.63a23 23 0 0 0 14.61-31.21zM62.11 30.18a22.86 22.86 0 0 0-9.9 32l104.12 180.44c11.7 20.2 42.61 11.9 42.61-11.4V22.88a22.67 22.67 0 0 0-24.5-22.8 320.37 320.37 0 0 0-112.33 30.1z\"},\"child\":[]}]})(props);\n};\nexport function FaYoast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M91.3 76h186l-7 18.9h-179c-39.7 0-71.9 31.6-71.9 70.3v205.4c0 35.4 24.9 70.3 84 70.3V460H91.3C41.2 460 0 419.8 0 370.5V165.2C0 115.9 40.7 76 91.3 76zm229.1-56h66.5C243.1 398.1 241.2 418.9 202.2 459.3c-20.8 21.6-49.3 31.7-78.3 32.7v-51.1c49.2-7.7 64.6-49.9 64.6-75.3 0-20.1.6-12.6-82.1-223.2h61.4L218.2 299 320.4 20zM448 161.5V460H234c6.6-9.6 10.7-16.3 12.1-19.4h182.5V161.5c0-32.5-17.1-51.9-48.2-62.9l6.7-17.6c41.7 13.6 60.9 43.1 60.9 80.5z\"},\"child\":[]}]})(props);\n};\nexport function FaYoutubeSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M186.8 202.1l95.2 54.1-95.2 54.1V202.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-42 176.3s0-59.6-7.6-88.2c-4.2-15.8-16.5-28.2-32.2-32.4C337.9 128 224 128 224 128s-113.9 0-142.2 7.7c-15.7 4.2-28 16.6-32.2 32.4-7.6 28.5-7.6 88.2-7.6 88.2s0 59.6 7.6 88.2c4.2 15.8 16.5 27.7 32.2 31.9C110.1 384 224 384 224 384s113.9 0 142.2-7.7c15.7-4.2 28-16.1 32.2-31.9 7.6-28.5 7.6-88.1 7.6-88.1z\"},\"child\":[]}]})(props);\n};\nexport function FaYoutube (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z\"},\"child\":[]}]})(props);\n};\nexport function FaZhihu (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M170.54 148.13v217.54l23.43.01 7.71 26.37 42.01-26.37h49.53V148.13H170.54zm97.75 193.93h-27.94l-27.9 17.51-5.08-17.47-11.9-.04V171.75h72.82v170.31zm-118.46-94.39H97.5c1.74-27.1 2.2-51.59 2.2-73.46h51.16s1.97-22.56-8.58-22.31h-88.5c3.49-13.12 7.87-26.66 13.12-40.67 0 0-24.07 0-32.27 21.57-3.39 8.9-13.21 43.14-30.7 78.12 5.89-.64 25.37-1.18 36.84-22.21 2.11-5.89 2.51-6.66 5.14-14.53h28.87c0 10.5-1.2 66.88-1.68 73.44H20.83c-11.74 0-15.56 23.62-15.56 23.62h65.58C66.45 321.1 42.83 363.12 0 396.34c20.49 5.85 40.91-.93 51-9.9 0 0 22.98-20.9 35.59-69.25l53.96 64.94s7.91-26.89-1.24-39.99c-7.58-8.92-28.06-33.06-36.79-41.81L87.9 311.95c4.36-13.98 6.99-27.55 7.87-40.67h61.65s-.09-23.62-7.59-23.62v.01zm412.02-1.6c20.83-25.64 44.98-58.57 44.98-58.57s-18.65-14.8-27.38-4.06c-6 8.15-36.83 48.2-36.83 48.2l19.23 14.43zm-150.09-59.09c-9.01-8.25-25.91 2.13-25.91 2.13s39.52 55.04 41.12 57.45l19.46-13.73s-25.67-37.61-34.66-45.86h-.01zM640 258.35c-19.78 0-130.91.93-131.06.93v-101c4.81 0 12.42-.4 22.85-1.2 40.88-2.41 70.13-4 87.77-4.81 0 0 12.22-27.19-.59-33.44-3.07-1.18-23.17 4.58-23.17 4.58s-165.22 16.49-232.36 18.05c1.6 8.82 7.62 17.08 15.78 19.55 13.31 3.48 22.69 1.7 49.15.89 24.83-1.6 43.68-2.43 56.51-2.43v99.81H351.41s2.82 22.31 25.51 22.85h107.94v70.92c0 13.97-11.19 21.99-24.48 21.12-14.08.11-26.08-1.15-41.69-1.81 1.99 3.97 6.33 14.39 19.31 21.84 9.88 4.81 16.17 6.57 26.02 6.57 29.56 0 45.67-17.28 44.89-45.31v-73.32h122.36c9.68 0 8.7-23.78 8.7-23.78l.03-.01z\"},\"child\":[]}]})(props);\n};\nexport function FaAd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M157.52 272h36.96L176 218.78 157.52 272zM352 256c-13.23 0-24 10.77-24 24s10.77 24 24 24 24-10.77 24-24-10.77-24-24-24zM464 64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM250.58 352h-16.94c-6.81 0-12.88-4.32-15.12-10.75L211.15 320h-70.29l-7.38 21.25A16 16 0 0 1 118.36 352h-16.94c-11.01 0-18.73-10.85-15.12-21.25L140 176.12A23.995 23.995 0 0 1 162.67 160h26.66A23.99 23.99 0 0 1 212 176.13l53.69 154.62c3.61 10.4-4.11 21.25-15.11 21.25zM424 336c0 8.84-7.16 16-16 16h-16c-4.85 0-9.04-2.27-11.98-5.68-8.62 3.66-18.09 5.68-28.02 5.68-39.7 0-72-32.3-72-72s32.3-72 72-72c8.46 0 16.46 1.73 24 4.42V176c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v160z\"},\"child\":[]}]})(props);\n};\nexport function FaAddressBook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 160c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h320c26.5 0 48-21.5 48-48v-48h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20v-64h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20v-64h20zm-228-32c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H118.4C106 384 96 375.4 96 364.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2z\"},\"child\":[]}]})(props);\n};\nexport function FaAddressCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-352 96c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H86.4C74 384 64 375.4 64 364.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2zM512 312c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-64c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-64c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16z\"},\"child\":[]}]})(props);\n};\nexport function FaAdjust (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 256c0 136.966 111.033 248 248 248s248-111.034 248-248S392.966 8 256 8 8 119.033 8 256zm248 184V72c101.705 0 184 82.311 184 184 0 101.705-82.311 184-184 184z\"},\"child\":[]}]})(props);\n};\nexport function FaAirFreshener (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 160H96C43 160 0 203 0 256V480C0 497.625 14.375 512 32 512H288C305.625 512 320 497.625 320 480V256C320 203 277 160 224 160ZM160 416C115.875 416 80 380.125 80 336S115.875 256 160 256S240 291.875 240 336S204.125 416 160 416ZM224 32C224 14.375 209.625 0 192 0H128C110.375 0 96 14.375 96 32V128H224V32ZM381.781 51.578C383 50.969 384 49.359 384 48C384 46.625 383 45.031 381.781 44.422L352 32L339.562 2.219C338.969 1 337.375 0 336 0S333.031 1 332.406 2.219L320 32L290.219 44.422C289 45.031 288 46.625 288 48C288 49.359 289 50.969 290.219 51.578L320 64L332.406 93.781C333.031 95 334.625 96 336 96S338.969 95 339.562 93.781L352 64L381.781 51.578ZM448 64L460.406 93.781C461.031 95 462.625 96 464 96S466.969 95 467.562 93.781L480 64L509.781 51.578C511 50.969 512 49.359 512 48C512 46.625 511 45.031 509.781 44.422L480 32L467.562 2.219C466.969 1 465.375 0 464 0S461.031 1 460.406 2.219L448 32L418.219 44.422C417 45.031 416 46.625 416 48C416 49.359 417 50.969 418.219 51.578L448 64ZM480 224L467.562 194.219C466.969 193 465.375 192 464 192S461.031 193 460.406 194.219L448 224L418.219 236.422C417 237.031 416 238.625 416 240C416 241.359 417 242.969 418.219 243.578L448 256L460.406 285.781C461.031 287 462.625 288 464 288S466.969 287 467.562 285.781L480 256L509.781 243.578C511 242.969 512 241.359 512 240C512 238.625 511 237.031 509.781 236.422L480 224ZM445.781 147.578C447 146.969 448 145.359 448 144C448 142.625 447 141.031 445.781 140.422L416 128L403.562 98.219C402.969 97 401.375 96 400 96S397.031 97 396.406 98.219L384 128L354.219 140.422C353 141.031 352 142.625 352 144C352 145.359 353 146.969 354.219 147.578L384 160L396.406 189.781C397.031 191 398.625 192 400 192S402.969 191 403.562 189.781L416 160L445.781 147.578Z\"},\"child\":[]}]})(props);\n};\nexport function FaAlignCenter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 160H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 256H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM108.1 96h231.81A12.09 12.09 0 0 0 352 83.9V44.09A12.09 12.09 0 0 0 339.91 32H108.1A12.09 12.09 0 0 0 96 44.09V83.9A12.1 12.1 0 0 0 108.1 96zm231.81 256A12.09 12.09 0 0 0 352 339.9v-39.81A12.09 12.09 0 0 0 339.91 288H108.1A12.09 12.09 0 0 0 96 300.09v39.81a12.1 12.1 0 0 0 12.1 12.1z\"},\"child\":[]}]})(props);\n};\nexport function FaAlignJustify (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaAlignLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.83 352h262.34A12.82 12.82 0 0 0 288 339.17v-38.34A12.82 12.82 0 0 0 275.17 288H12.83A12.82 12.82 0 0 0 0 300.83v38.34A12.82 12.82 0 0 0 12.83 352zm0-256h262.34A12.82 12.82 0 0 0 288 83.17V44.83A12.82 12.82 0 0 0 275.17 32H12.83A12.82 12.82 0 0 0 0 44.83v38.34A12.82 12.82 0 0 0 12.83 96zM432 160H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 256H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaAlignRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 224h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm416 192H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm3.17-384H172.83A12.82 12.82 0 0 0 160 44.83v38.34A12.82 12.82 0 0 0 172.83 96h262.34A12.82 12.82 0 0 0 448 83.17V44.83A12.82 12.82 0 0 0 435.17 32zm0 256H172.83A12.82 12.82 0 0 0 160 300.83v38.34A12.82 12.82 0 0 0 172.83 352h262.34A12.82 12.82 0 0 0 448 339.17v-38.34A12.82 12.82 0 0 0 435.17 288z\"},\"child\":[]}]})(props);\n};\nexport function FaAllergies (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 112c-17.6 0-32 14.4-32 32v72c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V64c0-17.6-14.4-32-32-32s-32 14.4-32 32v152c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V32c0-17.6-14.4-32-32-32s-32 14.4-32 32v184c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V64c0-17.6-14.4-32-32-32S96 46.4 96 64v241l-23.6-32.5c-13-17.9-38-21.8-55.9-8.8s-21.8 38-8.8 55.9l125.6 172.7c9 12.4 23.5 19.8 38.8 19.8h197.6c22.3 0 41.6-15.3 46.7-37l26.5-112.7c3.2-13.7 4.9-28.3 5.1-42.3V144c0-17.6-14.4-32-32-32zM176 416c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-96c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm64 128c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-96c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm64 32c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm32 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm32-128c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaAmbulance (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 352h-16V243.9c0-12.7-5.1-24.9-14.1-33.9L494 110.1c-9-9-21.2-14.1-33.9-14.1H416V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v320c0 26.5 21.5 48 48 48h16c0 53 43 96 96 96s96-43 96-96h128c0 53 43 96 96 96s96-43 96-96h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM160 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm144-248c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48zm176 248c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-208H416V144h44.1l99.9 99.9V256z\"},\"child\":[]}]})(props);\n};\nexport function FaAmericanSignLanguageInterpreting (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M290.547 189.039c-20.295-10.149-44.147-11.199-64.739-3.89 42.606 0 71.208 20.475 85.578 50.576 8.576 17.899-5.148 38.071-23.617 38.071 18.429 0 32.211 20.136 23.617 38.071-14.725 30.846-46.123 50.854-80.298 50.854-.557 0-94.471-8.615-94.471-8.615l-66.406 33.347c-9.384 4.693-19.815.379-23.895-7.781L1.86 290.747c-4.167-8.615-1.111-18.897 6.946-23.621l58.072-33.069L108 159.861c6.39-57.245 34.731-109.767 79.743-146.726 11.391-9.448 28.341-7.781 37.51 3.613 9.446 11.394 7.78 28.067-3.612 37.516-12.503 10.559-23.618 22.509-32.509 35.57 21.672-14.729 46.679-24.732 74.186-28.067 14.725-1.945 28.063 8.336 29.73 23.065 1.945 14.728-8.336 28.067-23.062 29.734-16.116 1.945-31.12 7.503-44.178 15.284 26.114-5.713 58.712-3.138 88.079 11.115 13.336 6.669 18.893 22.509 12.224 35.848-6.389 13.06-22.504 18.617-35.564 12.226zm-27.229 69.472c-6.112-12.505-18.338-20.286-32.231-20.286a35.46 35.46 0 0 0-35.565 35.57c0 21.428 17.808 35.57 35.565 35.57 13.893 0 26.119-7.781 32.231-20.286 4.446-9.449 13.614-15.006 23.339-15.284-9.725-.277-18.893-5.835-23.339-15.284zm374.821-37.237c4.168 8.615 1.111 18.897-6.946 23.621l-58.071 33.069L532 352.16c-6.39 57.245-34.731 109.767-79.743 146.726-10.932 9.112-27.799 8.144-37.51-3.613-9.446-11.394-7.78-28.067 3.613-37.516 12.503-10.559 23.617-22.509 32.508-35.57-21.672 14.729-46.679 24.732-74.186 28.067-10.021 2.506-27.552-5.643-29.73-23.065-1.945-14.728 8.336-28.067 23.062-29.734 16.116-1.946 31.12-7.503 44.178-15.284-26.114 5.713-58.712 3.138-88.079-11.115-13.336-6.669-18.893-22.509-12.224-35.848 6.389-13.061 22.505-18.619 35.565-12.227 20.295 10.149 44.147 11.199 64.739 3.89-42.606 0-71.208-20.475-85.578-50.576-8.576-17.899 5.148-38.071 23.617-38.071-18.429 0-32.211-20.136-23.617-38.071 14.033-29.396 44.039-50.887 81.966-50.854l92.803 8.615 66.406-33.347c9.408-4.704 19.828-.354 23.894 7.781l44.455 88.926zm-229.227-18.618c-13.893 0-26.119 7.781-32.231 20.286-4.446 9.449-13.614 15.006-23.339 15.284 9.725.278 18.893 5.836 23.339 15.284 6.112 12.505 18.338 20.286 32.231 20.286a35.46 35.46 0 0 0 35.565-35.57c0-21.429-17.808-35.57-35.565-35.57z\"},\"child\":[]}]})(props);\n};\nexport function FaAnchor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.971 352h32.394C67.172 454.735 181.944 512 288 512c106.229 0 220.853-57.38 242.635-160h32.394c10.691 0 16.045-12.926 8.485-20.485l-67.029-67.029c-4.686-4.686-12.284-4.686-16.971 0l-67.029 67.029c-7.56 7.56-2.206 20.485 8.485 20.485h35.146c-20.29 54.317-84.963 86.588-144.117 94.015V256h52c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-52v-5.47c37.281-13.178 63.995-48.725 64-90.518C384.005 43.772 341.605.738 289.37.01 235.723-.739 192 42.525 192 96c0 41.798 26.716 77.35 64 90.53V192h-52c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h52v190.015c-58.936-7.399-123.82-39.679-144.117-94.015h35.146c10.691 0 16.045-12.926 8.485-20.485l-67.029-67.029c-4.686-4.686-12.284-4.686-16.971 0L4.485 331.515C-3.074 339.074 2.28 352 12.971 352zM288 64c17.645 0 32 14.355 32 32s-14.355 32-32 32-32-14.355-32-32 14.355-32 32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaAngleDoubleDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M143 256.3L7 120.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0L313 86.3c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.4 9.5-24.6 9.5-34 .1zm34 192l136-136c9.4-9.4 9.4-24.6 0-33.9l-22.6-22.6c-9.4-9.4-24.6-9.4-33.9 0L160 352.1l-96.4-96.4c-9.4-9.4-24.6-9.4-33.9 0L7 278.3c-9.4 9.4-9.4 24.6 0 33.9l136 136c9.4 9.5 24.6 9.5 34 .1z\"},\"child\":[]}]})(props);\n};\nexport function FaAngleDoubleLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M223.7 239l136-136c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9L319.9 256l96.4 96.4c9.4 9.4 9.4 24.6 0 33.9L393.7 409c-9.4 9.4-24.6 9.4-33.9 0l-136-136c-9.5-9.4-9.5-24.6-.1-34zm-192 34l136 136c9.4 9.4 24.6 9.4 33.9 0l22.6-22.6c9.4-9.4 9.4-24.6 0-33.9L127.9 256l96.4-96.4c9.4-9.4 9.4-24.6 0-33.9L201.7 103c-9.4-9.4-24.6-9.4-33.9 0l-136 136c-9.5 9.4-9.5 24.6-.1 34z\"},\"child\":[]}]})(props);\n};\nexport function FaAngleDoubleRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34zm192-34l-136-136c-9.4-9.4-24.6-9.4-33.9 0l-22.6 22.6c-9.4 9.4-9.4 24.6 0 33.9l96.4 96.4-96.4 96.4c-9.4 9.4-9.4 24.6 0 33.9l22.6 22.6c9.4 9.4 24.6 9.4 33.9 0l136-136c9.4-9.2 9.4-24.4 0-33.8z\"},\"child\":[]}]})(props);\n};\nexport function FaAngleDoubleUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M177 255.7l136 136c9.4 9.4 9.4 24.6 0 33.9l-22.6 22.6c-9.4 9.4-24.6 9.4-33.9 0L160 351.9l-96.4 96.4c-9.4 9.4-24.6 9.4-33.9 0L7 425.7c-9.4-9.4-9.4-24.6 0-33.9l136-136c9.4-9.5 24.6-9.5 34-.1zm-34-192L7 199.7c-9.4 9.4-9.4 24.6 0 33.9l22.6 22.6c9.4 9.4 24.6 9.4 33.9 0l96.4-96.4 96.4 96.4c9.4 9.4 24.6 9.4 33.9 0l22.6-22.6c9.4-9.4 9.4-24.6 0-33.9l-136-136c-9.2-9.4-24.4-9.4-33.8 0z\"},\"child\":[]}]})(props);\n};\nexport function FaAngleDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M143 352.3L7 216.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.2 9.4-24.4 9.4-33.8 0z\"},\"child\":[]}]})(props);\n};\nexport function FaAngleLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M31.7 239l136-136c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9L127.9 256l96.4 96.4c9.4 9.4 9.4 24.6 0 33.9L201.7 409c-9.4 9.4-24.6 9.4-33.9 0l-136-136c-9.5-9.4-9.5-24.6-.1-34z\"},\"child\":[]}]})(props);\n};\nexport function FaAngleRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34z\"},\"child\":[]}]})(props);\n};\nexport function FaAngleUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M177 159.7l136 136c9.4 9.4 9.4 24.6 0 33.9l-22.6 22.6c-9.4 9.4-24.6 9.4-33.9 0L160 255.9l-96.4 96.4c-9.4 9.4-24.6 9.4-33.9 0L7 329.7c-9.4-9.4-9.4-24.6 0-33.9l136-136c9.4-9.5 24.6-9.5 34-.1z\"},\"child\":[]}]})(props);\n};\nexport function FaAngry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM136 240c0-9.3 4.1-17.5 10.5-23.4l-31-9.3c-8.5-2.5-13.3-11.5-10.7-19.9 2.5-8.5 11.4-13.2 19.9-10.7l80 24c8.5 2.5 13.3 11.5 10.7 19.9-2.1 6.9-8.4 11.4-15.3 11.4-.5 0-1.1-.2-1.7-.2.7 2.7 1.7 5.3 1.7 8.2 0 17.7-14.3 32-32 32S136 257.7 136 240zm168 154.2c-27.8-33.4-84.2-33.4-112.1 0-13.5 16.3-38.2-4.2-24.6-20.5 20-24 49.4-37.8 80.6-37.8s60.6 13.8 80.6 37.8c13.8 16.5-11.1 36.6-24.5 20.5zm76.6-186.9l-31 9.3c6.3 5.8 10.5 14.1 10.5 23.4 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-2.9.9-5.6 1.7-8.2-.6.1-1.1.2-1.7.2-6.9 0-13.2-4.5-15.3-11.4-2.5-8.5 2.3-17.4 10.7-19.9l80-24c8.4-2.5 17.4 2.3 19.9 10.7 2.5 8.5-2.3 17.4-10.8 19.9z\"},\"child\":[]}]})(props);\n};\nexport function FaAnkh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M296 256h-44.62C272.46 222.01 288 181.65 288 144 288 55.63 230.69 0 160 0S32 55.63 32 144c0 37.65 15.54 78.01 36.62 112H24c-13.25 0-24 10.74-24 24v32c0 13.25 10.75 24 24 24h96v152c0 13.25 10.75 24 24 24h32c13.25 0 24-10.75 24-24V336h96c13.25 0 24-10.75 24-24v-32c0-13.26-10.75-24-24-24zM160 80c29.61 0 48 24.52 48 64 0 34.66-27.14 78.14-48 100.87-20.86-22.72-48-66.21-48-100.87 0-39.48 18.39-64 48-64z\"},\"child\":[]}]})(props);\n};\nexport function FaAppleAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M350.85 129c25.97 4.67 47.27 18.67 63.92 42 14.65 20.67 24.64 46.67 29.96 78 4.67 28.67 4.32 57.33-1 86-7.99 47.33-23.97 87-47.94 119-28.64 38.67-64.59 58-107.87 58-10.66 0-22.3-3.33-34.96-10-8.66-5.33-18.31-8-28.97-8s-20.3 2.67-28.97 8c-12.66 6.67-24.3 10-34.96 10-43.28 0-79.23-19.33-107.87-58-23.97-32-39.95-71.67-47.94-119-5.32-28.67-5.67-57.33-1-86 5.32-31.33 15.31-57.33 29.96-78 16.65-23.33 37.95-37.33 63.92-42 15.98-2.67 37.95-.33 65.92 7 23.97 6.67 44.28 14.67 60.93 24 16.65-9.33 36.96-17.33 60.93-24 27.98-7.33 49.96-9.67 65.94-7zm-54.94-41c-9.32 8.67-21.65 15-36.96 19-10.66 3.33-22.3 5-34.96 5l-14.98-1c-1.33-9.33-1.33-20 0-32 2.67-24 10.32-42.33 22.97-55 9.32-8.67 21.65-15 36.96-19 10.66-3.33 22.3-5 34.96-5l14.98 1 1 15c0 12.67-1.67 24.33-4.99 35-3.99 15.33-10.31 27.67-18.98 37z\"},\"child\":[]}]})(props);\n};\nexport function FaArchive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 448c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V160H32v288zm160-212c0-6.6 5.4-12 12-12h104c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-8zM480 32H32C14.3 32 0 46.3 0 64v48c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16V64c0-17.7-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaArchway (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M560 448h-16V96H32v352H16.02c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16H176c8.84 0 16-7.16 16-16V320c0-53.02 42.98-96 96-96s96 42.98 96 96l.02 160v16c0 8.84 7.16 16 16 16H560c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm0-448H16C7.16 0 0 7.16 0 16v32c0 8.84 7.16 16 16 16h544c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowAltCircleDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zM212 140v116h-70.9c-10.7 0-16.1 13-8.5 20.5l114.9 114.3c4.7 4.7 12.2 4.7 16.9 0l114.9-114.3c7.6-7.6 2.2-20.5-8.5-20.5H300V140c0-6.6-5.4-12-12-12h-64c-6.6 0-12 5.4-12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowAltCircleLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zm116-292H256v-70.9c0-10.7-13-16.1-20.5-8.5L121.2 247.5c-4.7 4.7-4.7 12.2 0 16.9l114.3 114.9c7.6 7.6 20.5 2.2 20.5-8.5V300h116c6.6 0 12-5.4 12-12v-64c0-6.6-5.4-12-12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowAltCircleRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zM140 300h116v70.9c0 10.7 13 16.1 20.5 8.5l114.3-114.9c4.7-4.7 4.7-12.2 0-16.9l-114.3-115c-7.6-7.6-20.5-2.2-20.5 8.5V212H140c-6.6 0-12 5.4-12 12v64c0 6.6 5.4 12 12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowAltCircleUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 256C8 119 119 8 256 8s248 111 248 248-111 248-248 248S8 393 8 256zm292 116V256h70.9c10.7 0 16.1-13 8.5-20.5L264.5 121.2c-4.7-4.7-12.2-4.7-16.9 0l-115 114.3c-7.6 7.6-2.2 20.5 8.5 20.5H212v116c0 6.6 5.4 12 12 12h64c6.6 0 12-5.4 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowCircleDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-143.6-28.9L288 302.6V120c0-13.3-10.7-24-24-24h-16c-13.3 0-24 10.7-24 24v182.6l-72.4-75.5c-9.3-9.7-24.8-9.9-34.3-.4l-10.9 11c-9.4 9.4-9.4 24.6 0 33.9L239 404.3c9.4 9.4 24.6 9.4 33.9 0l132.7-132.7c9.4-9.4 9.4-24.6 0-33.9l-10.9-11c-9.5-9.5-25-9.3-34.3.4z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowCircleLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zm28.9-143.6L209.4 288H392c13.3 0 24-10.7 24-24v-16c0-13.3-10.7-24-24-24H209.4l75.5-72.4c9.7-9.3 9.9-24.8.4-34.3l-11-10.9c-9.4-9.4-24.6-9.4-33.9 0L107.7 239c-9.4 9.4-9.4 24.6 0 33.9l132.7 132.7c9.4 9.4 24.6 9.4 33.9 0l11-10.9c9.5-9.5 9.3-25-.4-34.3z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowCircleRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 273c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowCircleUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 256C8 119 119 8 256 8s248 111 248 248-111 248-248 248S8 393 8 256zm143.6 28.9l72.4-75.5V392c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24V209.4l72.4 75.5c9.3 9.7 24.8 9.9 34.3.4l10.9-11c9.4-9.4 9.4-24.6 0-33.9L273 107.7c-9.4-9.4-24.6-9.4-33.9 0L106.3 240.4c-9.4 9.4-9.4 24.6 0 33.9l10.9 11c9.6 9.5 25.1 9.3 34.4-.4z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M413.1 222.5l22.2 22.2c9.4 9.4 9.4 24.6 0 33.9L241 473c-9.4 9.4-24.6 9.4-33.9 0L12.7 278.6c-9.4-9.4-9.4-24.6 0-33.9l22.2-22.2c9.5-9.5 25-9.3 34.3.4L184 343.4V56c0-13.3 10.7-24 24-24h32c13.3 0 24 10.7 24 24v287.4l114.8-120.5c9.3-9.8 24.8-10 34.3-.4z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M34.9 289.5l-22.2-22.2c-9.4-9.4-9.4-24.6 0-33.9L207 39c9.4-9.4 24.6-9.4 33.9 0l194.3 194.3c9.4 9.4 9.4 24.6 0 33.9L413 289.4c-9.5 9.5-25 9.3-34.3-.4L264 168.6V456c0 13.3-10.7 24-24 24h-32c-13.3 0-24-10.7-24-24V168.6L69.2 289.1c-9.3 9.8-24.8 10-34.3.4z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowsAltH (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M377.941 169.941V216H134.059v-46.059c0-21.382-25.851-32.09-40.971-16.971L7.029 239.029c-9.373 9.373-9.373 24.568 0 33.941l86.059 86.059c15.119 15.119 40.971 4.411 40.971-16.971V296h243.882v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.568 0-33.941l-86.059-86.059c-15.119-15.12-40.971-4.412-40.971 16.97z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowsAltV (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M214.059 377.941H168V134.059h46.059c21.382 0 32.09-25.851 16.971-40.971L144.971 7.029c-9.373-9.373-24.568-9.373-33.941 0L24.971 93.088c-15.119 15.119-4.411 40.971 16.971 40.971H88v243.882H41.941c-21.382 0-32.09 25.851-16.971 40.971l86.059 86.059c9.373 9.373 24.568 9.373 33.941 0l86.059-86.059c15.12-15.119 4.412-40.971-16.97-40.971z\"},\"child\":[]}]})(props);\n};\nexport function FaArrowsAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352.201 425.775l-79.196 79.196c-9.373 9.373-24.568 9.373-33.941 0l-79.196-79.196c-15.119-15.119-4.411-40.971 16.971-40.97h51.162L228 284H127.196v51.162c0 21.382-25.851 32.09-40.971 16.971L7.029 272.937c-9.373-9.373-9.373-24.569 0-33.941L86.225 159.8c15.119-15.119 40.971-4.411 40.971 16.971V228H228V127.196h-51.23c-21.382 0-32.09-25.851-16.971-40.971l79.196-79.196c9.373-9.373 24.568-9.373 33.941 0l79.196 79.196c15.119 15.119 4.411 40.971-16.971 40.971h-51.162V228h100.804v-51.162c0-21.382 25.851-32.09 40.97-16.971l79.196 79.196c9.373 9.373 9.373 24.569 0 33.941L425.773 352.2c-15.119 15.119-40.971 4.411-40.97-16.971V284H284v100.804h51.23c21.382 0 32.09 25.851 16.971 40.971z\"},\"child\":[]}]})(props);\n};\nexport function FaAssistiveListeningSystems (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216 260c0 15.464-12.536 28-28 28s-28-12.536-28-28c0-44.112 35.888-80 80-80s80 35.888 80 80c0 15.464-12.536 28-28 28s-28-12.536-28-28c0-13.234-10.767-24-24-24s-24 10.766-24 24zm24-176c-97.047 0-176 78.953-176 176 0 15.464 12.536 28 28 28s28-12.536 28-28c0-66.168 53.832-120 120-120s120 53.832 120 120c0 75.164-71.009 70.311-71.997 143.622L288 404c0 28.673-23.327 52-52 52-15.464 0-28 12.536-28 28s12.536 28 28 28c59.475 0 107.876-48.328 108-107.774.595-34.428 72-48.24 72-144.226 0-97.047-78.953-176-176-176zm-80 236c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zM32 448c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm480-187.993c0-1.518-.012-3.025-.045-4.531C510.076 140.525 436.157 38.47 327.994 1.511c-14.633-4.998-30.549 2.809-35.55 17.442-5 14.633 2.81 30.549 17.442 35.55 85.906 29.354 144.61 110.513 146.077 201.953l.003.188c.026 1.118.033 2.236.033 3.363 0 15.464 12.536 28 28 28s28.001-12.536 28.001-28zM152.971 439.029l-80-80L39.03 392.97l80 80 33.941-33.941z\"},\"child\":[]}]})(props);\n};\nexport function FaAsterisk (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M478.21 334.093L336 256l142.21-78.093c11.795-6.477 15.961-21.384 9.232-33.037l-19.48-33.741c-6.728-11.653-21.72-15.499-33.227-8.523L296 186.718l3.475-162.204C299.763 11.061 288.937 0 275.48 0h-38.96c-13.456 0-24.283 11.061-23.994 24.514L216 186.718 77.265 102.607c-11.506-6.976-26.499-3.13-33.227 8.523l-19.48 33.741c-6.728 11.653-2.562 26.56 9.233 33.037L176 256 33.79 334.093c-11.795 6.477-15.961 21.384-9.232 33.037l19.48 33.741c6.728 11.653 21.721 15.499 33.227 8.523L216 325.282l-3.475 162.204C212.237 500.939 223.064 512 236.52 512h38.961c13.456 0 24.283-11.061 23.995-24.514L296 325.282l138.735 84.111c11.506 6.976 26.499 3.13 33.227-8.523l19.48-33.741c6.728-11.653 2.563-26.559-9.232-33.036z\"},\"child\":[]}]})(props);\n};\nexport function FaAt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C118.941 8 8 118.919 8 256c0 137.059 110.919 248 248 248 48.154 0 95.342-14.14 135.408-40.223 12.005-7.815 14.625-24.288 5.552-35.372l-10.177-12.433c-7.671-9.371-21.179-11.667-31.373-5.129C325.92 429.757 291.314 440 256 440c-101.458 0-184-82.542-184-184S154.542 72 256 72c100.139 0 184 57.619 184 160 0 38.786-21.093 79.742-58.17 83.693-17.349-.454-16.91-12.857-13.476-30.024l23.433-121.11C394.653 149.75 383.308 136 368.225 136h-44.981a13.518 13.518 0 0 0-13.432 11.993l-.01.092c-14.697-17.901-40.448-21.775-59.971-21.775-74.58 0-137.831 62.234-137.831 151.46 0 65.303 36.785 105.87 96 105.87 26.984 0 57.369-15.637 74.991-38.333 9.522 34.104 40.613 34.103 70.71 34.103C462.609 379.41 504 307.798 504 232 504 95.653 394.023 8 256 8zm-21.68 304.43c-22.249 0-36.07-15.623-36.07-40.771 0-44.993 30.779-72.729 58.63-72.729 22.292 0 35.601 15.241 35.601 40.77 0 45.061-33.875 72.73-58.161 72.73z\"},\"child\":[]}]})(props);\n};\nexport function FaAtlas (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M318.38 208h-39.09c-1.49 27.03-6.54 51.35-14.21 70.41 27.71-13.24 48.02-39.19 53.3-70.41zm0-32c-5.29-31.22-25.59-57.17-53.3-70.41 7.68 19.06 12.72 43.38 14.21 70.41h39.09zM224 97.31c-7.69 7.45-20.77 34.42-23.43 78.69h46.87c-2.67-44.26-15.75-71.24-23.44-78.69zm-41.08 8.28c-27.71 13.24-48.02 39.19-53.3 70.41h39.09c1.49-27.03 6.53-51.35 14.21-70.41zm0 172.82c-7.68-19.06-12.72-43.38-14.21-70.41h-39.09c5.28 31.22 25.59 57.17 53.3 70.41zM247.43 208h-46.87c2.66 44.26 15.74 71.24 23.43 78.69 7.7-7.45 20.78-34.43 23.44-78.69zM448 358.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16c0-6.4-3.2-12.8-9.6-19.2-3.2-16-3.2-60.8 0-73.6 6.4-3.2 9.6-9.6 9.6-19.2zM224 64c70.69 0 128 57.31 128 128s-57.31 128-128 128S96 262.69 96 192 153.31 64 224 64zm160 384H96c-19.2 0-32-12.8-32-32s16-32 32-32h288v64z\"},\"child\":[]}]})(props);\n};\nexport function FaAtom (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M223.99908,224a32,32,0,1,0,32.00782,32A32.06431,32.06431,0,0,0,223.99908,224Zm214.172-96c-10.877-19.5-40.50979-50.75-116.27544-41.875C300.39168,34.875,267.63386,0,223.99908,0s-76.39066,34.875-97.89653,86.125C50.3369,77.375,20.706,108.5,9.82907,128-6.54984,157.375-5.17484,201.125,34.958,256-5.17484,310.875-6.54984,354.625,9.82907,384c29.13087,52.375,101.64652,43.625,116.27348,41.875C147.60842,477.125,180.36429,512,223.99908,512s76.3926-34.875,97.89652-86.125c14.62891,1.75,87.14456,10.5,116.27544-41.875C454.55,354.625,453.175,310.875,413.04017,256,453.175,201.125,454.55,157.375,438.171,128ZM63.33886,352c-4-7.25-.125-24.75,15.00391-48.25,6.87695,6.5,14.12891,12.875,21.88087,19.125,1.625,13.75,4,27.125,6.75,40.125C82.34472,363.875,67.09081,358.625,63.33886,352Zm36.88478-162.875c-7.752,6.25-15.00392,12.625-21.88087,19.125-15.12891-23.5-19.00392-41-15.00391-48.25,3.377-6.125,16.37891-11.5,37.88478-11.5,1.75,0,3.875.375,5.75.375C104.09864,162.25,101.84864,175.625,100.22364,189.125ZM223.99908,64c9.50195,0,22.25586,13.5,33.88282,37.25-11.252,3.75-22.50391,8-33.88282,12.875-11.377-4.875-22.62892-9.125-33.88283-12.875C201.74516,77.5,214.49712,64,223.99908,64Zm0,384c-9.502,0-22.25392-13.5-33.88283-37.25,11.25391-3.75,22.50587-8,33.88283-12.875C235.378,402.75,246.62994,407,257.8819,410.75,246.25494,434.5,233.501,448,223.99908,448Zm0-112a80,80,0,1,1,80-80A80.00023,80.00023,0,0,1,223.99908,336ZM384.6593,352c-3.625,6.625-19.00392,11.875-43.63479,11,2.752-13,5.127-26.375,6.752-40.125,7.75195-6.25,15.00391-12.625,21.87891-19.125C384.7843,327.25,388.6593,344.75,384.6593,352ZM369.65538,208.25c-6.875-6.5-14.127-12.875-21.87891-19.125-1.625-13.5-3.875-26.875-6.752-40.25,1.875,0,4.002-.375,5.752-.375,21.50391,0,34.50782,5.375,37.88283,11.5C388.6593,167.25,384.7843,184.75,369.65538,208.25Z\"},\"child\":[]}]})(props);\n};\nexport function FaAudioDescription (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M162.925 238.709l8.822 30.655h-25.606l9.041-30.652c1.277-4.421 2.651-9.994 3.872-15.245 1.22 5.251 2.594 10.823 3.871 15.242zm166.474-32.099h-14.523v98.781h14.523c29.776 0 46.175-17.678 46.175-49.776 0-32.239-17.49-49.005-46.175-49.005zM512 112v288c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48zM245.459 336.139l-57.097-168A12.001 12.001 0 0 0 177 160h-35.894a12.001 12.001 0 0 0-11.362 8.139l-57.097 168C70.003 343.922 75.789 352 84.009 352h29.133a12 12 0 0 0 11.535-8.693l8.574-29.906h51.367l8.793 29.977A12 12 0 0 0 204.926 352h29.172c8.22 0 14.006-8.078 11.361-15.861zm184.701-80.525c0-58.977-37.919-95.614-98.96-95.614h-57.366c-6.627 0-12 5.373-12 12v168c0 6.627 5.373 12 12 12H331.2c61.041 0 98.96-36.933 98.96-96.386z\"},\"child\":[]}]})(props);\n};\nexport function FaAward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M97.12 362.63c-8.69-8.69-4.16-6.24-25.12-11.85-9.51-2.55-17.87-7.45-25.43-13.32L1.2 448.7c-4.39 10.77 3.81 22.47 15.43 22.03l52.69-2.01L105.56 507c8 8.44 22.04 5.81 26.43-4.96l52.05-127.62c-10.84 6.04-22.87 9.58-35.31 9.58-19.5 0-37.82-7.59-51.61-21.37zM382.8 448.7l-45.37-111.24c-7.56 5.88-15.92 10.77-25.43 13.32-21.07 5.64-16.45 3.18-25.12 11.85-13.79 13.78-32.12 21.37-51.62 21.37-12.44 0-24.47-3.55-35.31-9.58L252 502.04c4.39 10.77 18.44 13.4 26.43 4.96l36.25-38.28 52.69 2.01c11.62.44 19.82-11.27 15.43-22.03zM263 340c15.28-15.55 17.03-14.21 38.79-20.14 13.89-3.79 24.75-14.84 28.47-28.98 7.48-28.4 5.54-24.97 25.95-45.75 10.17-10.35 14.14-25.44 10.42-39.58-7.47-28.38-7.48-24.42 0-52.83 3.72-14.14-.25-29.23-10.42-39.58-20.41-20.78-18.47-17.36-25.95-45.75-3.72-14.14-14.58-25.19-28.47-28.98-27.88-7.61-24.52-5.62-44.95-26.41-10.17-10.35-25-14.4-38.89-10.61-27.87 7.6-23.98 7.61-51.9 0-13.89-3.79-28.72.25-38.89 10.61-20.41 20.78-17.05 18.8-44.94 26.41-13.89 3.79-24.75 14.84-28.47 28.98-7.47 28.39-5.54 24.97-25.95 45.75-10.17 10.35-14.15 25.44-10.42 39.58 7.47 28.36 7.48 24.4 0 52.82-3.72 14.14.25 29.23 10.42 39.59 20.41 20.78 18.47 17.35 25.95 45.75 3.72 14.14 14.58 25.19 28.47 28.98C104.6 325.96 106.27 325 121 340c13.23 13.47 33.84 15.88 49.74 5.82a39.676 39.676 0 0 1 42.53 0c15.89 10.06 36.5 7.65 49.73-5.82zM97.66 175.96c0-53.03 42.24-96.02 94.34-96.02s94.34 42.99 94.34 96.02-42.24 96.02-94.34 96.02-94.34-42.99-94.34-96.02z\"},\"child\":[]}]})(props);\n};\nexport function FaBabyCarriage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144.8 17c-11.3-17.8-37.2-22.8-54-9.4C35.3 51.9 0 118 0 192h256L144.8 17zM496 96h-48c-35.3 0-64 28.7-64 64v64H0c0 50.6 23 96.4 60.3 130.7C25.7 363.6 0 394.7 0 432c0 44.2 35.8 80 80 80s80-35.8 80-80c0-8.9-1.8-17.2-4.4-25.2 21.6 5.9 44.6 9.2 68.4 9.2s46.9-3.3 68.4-9.2c-2.7 8-4.4 16.3-4.4 25.2 0 44.2 35.8 80 80 80s80-35.8 80-80c0-37.3-25.7-68.4-60.3-77.3C425 320.4 448 274.6 448 224v-64h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM80 464c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm320-32c0 17.6-14.4 32-32 32s-32-14.4-32-32 14.4-32 32-32 32 14.4 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaBaby (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 160c44.2 0 80-35.8 80-80S236.2 0 192 0s-80 35.8-80 80 35.8 80 80 80zm-53.4 248.8l25.6-32-61.5-51.2L56.8 383c-11.4 14.2-11.7 34.4-.8 49l48 64c7.9 10.5 19.9 16 32 16 8.3 0 16.8-2.6 24-8 17.7-13.2 21.2-38.3 8-56l-29.4-39.2zm142.7-83.2l-61.5 51.2 25.6 32L216 448c-13.2 17.7-9.7 42.8 8 56 7.2 5.4 15.6 8 24 8 12.2 0 24.2-5.5 32-16l48-64c10.9-14.6 10.6-34.8-.8-49l-45.9-57.4zM376.7 145c-12.7-18.1-37.6-22.4-55.7-9.8l-40.6 28.5c-52.7 37-124.2 37-176.8 0L63 135.3C44.9 122.6 20 127 7.3 145-5.4 163.1-1 188 17 200.7l40.6 28.5c17 11.9 35.4 20.9 54.4 27.9V288h160v-30.8c19-7 37.4-16 54.4-27.9l40.6-28.5c18.1-12.8 22.4-37.7 9.7-55.8z\"},\"child\":[]}]})(props);\n};\nexport function FaBackspace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M576 64H205.26A63.97 63.97 0 0 0 160 82.75L9.37 233.37c-12.5 12.5-12.5 32.76 0 45.25L160 429.25c12 12 28.28 18.75 45.25 18.75H576c35.35 0 64-28.65 64-64V128c0-35.35-28.65-64-64-64zm-84.69 254.06c6.25 6.25 6.25 16.38 0 22.63l-22.62 22.62c-6.25 6.25-16.38 6.25-22.63 0L384 301.25l-62.06 62.06c-6.25 6.25-16.38 6.25-22.63 0l-22.62-22.62c-6.25-6.25-6.25-16.38 0-22.63L338.75 256l-62.06-62.06c-6.25-6.25-6.25-16.38 0-22.63l22.62-22.62c6.25-6.25 16.38-6.25 22.63 0L384 210.75l62.06-62.06c6.25-6.25 16.38-6.25 22.63 0l22.62 22.62c6.25 6.25 6.25 16.38 0 22.63L429.25 256l62.06 62.06z\"},\"child\":[]}]})(props);\n};\nexport function FaBackward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 280.6l192 160c20.6 17.2 52.5 2.8 52.5-24.6V96c0-27.4-31.9-41.8-52.5-24.6l-192 160c-15.3 12.8-15.3 36.4 0 49.2zm256 0l192 160c20.6 17.2 52.5 2.8 52.5-24.6V96c0-27.4-31.9-41.8-52.5-24.6l-192 160c-15.3 12.8-15.3 36.4 0 49.2z\"},\"child\":[]}]})(props);\n};\nexport function FaBacon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M218.92 336.39c34.89-34.89 44.2-59.7 54.05-86 10.61-28.29 21.59-57.54 61.37-97.34s69.05-50.77 97.35-61.38c23.88-9 46.64-17.68 76.79-45.37L470.81 8.91a31 31 0 0 0-40.18-2.83c-13.64 10.1-25.15 14.39-41 20.3C247 79.52 209.26 191.29 200.65 214.1c-29.75 78.83-89.55 94.68-98.72 98.09-24.86 9.26-54.73 20.38-91.07 50.36C-3 374-3.63 395 9.07 407.61l35.76 35.51C80 410.52 107 400.15 133 390.39c26.27-9.84 51.06-19.12 85.92-54zm348-232l-35.75-35.51c-35.19 32.63-62.18 43-88.25 52.79-26.26 9.85-51.06 19.16-85.95 54s-44.19 59.69-54 86C292.33 290 281.34 319.22 241.55 359s-69 50.73-97.3 61.32c-23.86 9-46.61 17.66-76.72 45.33l37.68 37.43a31 31 0 0 0 40.18 2.82c13.6-10.06 25.09-14.34 40.94-20.24 142.2-53 180-164.1 188.94-187.69C405 219.18 464.8 203.3 474 199.86c24.87-9.27 54.74-20.4 91.11-50.41 13.89-11.4 14.52-32.45 1.82-45.05z\"},\"child\":[]}]})(props);\n};\nexport function FaBacteria (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272.35,226.4A17.71,17.71,0,0,0,281.46,203l-4-9.08a121.29,121.29,0,0,1,12.36-3.08A83.34,83.34,0,0,0,323.57,177l10,9a17.76,17.76,0,1,0,23.92-26.27l-9.72-8.76a83.12,83.12,0,0,0,11.65-48.18l11.85-3.51a17.73,17.73,0,1,0-10.15-34l-11.34,3.36a84,84,0,0,0-36.38-35.57l2.84-10.85a17.8,17.8,0,0,0-34.47-8.93l-2.82,10.78a83.25,83.25,0,0,0-16.74,1.1C250.83,27,240,30.22,229.1,33.39l-3.38-9.46a17.8,17.8,0,0,0-33.56,11.89l3.49,9.8a286.74,286.74,0,0,0-43.94,23.57l-6.32-8.43a17.9,17.9,0,0,0-24.94-3.6A17.69,17.69,0,0,0,116.84,82l6.45,8.61a286.59,286.59,0,0,0-34.95,35.33l-8.82-6.42a17.84,17.84,0,0,0-24.89,3.86,17.66,17.66,0,0,0,3.88,24.77l8.88,6.47a286.6,286.6,0,0,0-23,43.91l-10.48-3.59a17.73,17.73,0,1,0-11.59,33.52L32.67,232c-2.79,10-5.79,19.84-7.52,30.22a83.16,83.16,0,0,0-.82,19l-11.58,3.43a17.73,17.73,0,1,0,10.13,34l11.27-3.33a83.51,83.51,0,0,0,36.39,35.43l-2.88,11.06a17.81,17.81,0,0,0,34.48,8.92l2.87-11c1,0,2.07.26,3.1.26a83.39,83.39,0,0,0,45.65-13.88l8.59,8.8a17.77,17.77,0,0,0,25.56-24.7l-9.14-9.37a83.41,83.41,0,0,0,12.08-31.05,119.08,119.08,0,0,1,3.87-15.53l9,4.22a17.74,17.74,0,1,0,15.15-32.09l-8.8-4.11c.67-1,1.2-2.08,1.9-3.05a119.89,119.89,0,0,1,7.87-9.41,121.73,121.73,0,0,1,11.65-11.4,119.49,119.49,0,0,1,9.94-7.82c1.12-.77,2.32-1.42,3.47-2.15l3.92,8.85a17.86,17.86,0,0,0,16.32,10.58A18.14,18.14,0,0,0,272.35,226.4ZM128,256a32,32,0,1,1,32-32A32,32,0,0,1,128,256Zm80-96a16,16,0,1,1,16-16A16,16,0,0,1,208,160Zm431.26,45.3a17.79,17.79,0,0,0-17.06-12.69,17.55,17.55,0,0,0-5.08.74l-11.27,3.33a83.61,83.61,0,0,0-36.39-35.43l2.88-11.06a17.81,17.81,0,0,0-34.48-8.91l-2.87,11c-1,0-2.07-.26-3.1-.26a83.32,83.32,0,0,0-45.65,13.89l-8.59-8.81a17.77,17.77,0,0,0-25.56,24.7l9.14,9.37a83.28,83.28,0,0,0-12.08,31.06,119.34,119.34,0,0,1-3.87,15.52l-9-4.22a17.74,17.74,0,1,0-15.15,32.09l8.8,4.11c-.67,1-1.2,2.08-1.89,3.05a117.71,117.71,0,0,1-7.94,9.47,119,119,0,0,1-11.57,11.33,121.59,121.59,0,0,1-10,7.83c-1.12.77-2.32,1.42-3.47,2.15l-3.92-8.85a17.86,17.86,0,0,0-16.32-10.58,18.14,18.14,0,0,0-7.18,1.5A17.71,17.71,0,0,0,358.54,309l4,9.08a118.71,118.71,0,0,1-12.36,3.08,83.34,83.34,0,0,0-33.77,13.9l-10-9a17.77,17.77,0,1,0-23.92,26.28l9.72,8.75a83.12,83.12,0,0,0-11.65,48.18l-11.86,3.51a17.73,17.73,0,1,0,10.16,34l11.34-3.36A84,84,0,0,0,326.61,479l-2.84,10.85a17.8,17.8,0,0,0,34.47,8.93L361.06,488a83.3,83.3,0,0,0,16.74-1.1c11.37-1.89,22.24-5.07,33.1-8.24l3.38,9.46a17.8,17.8,0,0,0,33.56-11.89l-3.49-9.79a287.66,287.66,0,0,0,43.94-23.58l6.32,8.43a17.88,17.88,0,0,0,24.93,3.6A17.67,17.67,0,0,0,523.16,430l-6.45-8.61a287.37,287.37,0,0,0,34.95-35.34l8.82,6.42a17.76,17.76,0,1,0,21-28.63l-8.88-6.46a287.17,287.17,0,0,0,23-43.92l10.48,3.59a17.73,17.73,0,1,0,11.59-33.52L607.33,280c2.79-10,5.79-19.84,7.52-30.21a83.27,83.27,0,0,0,.82-19.05l11.58-3.43A17.7,17.7,0,0,0,639.26,205.3ZM416,416a32,32,0,1,1,32-32A32,32,0,0,1,416,416Z\"},\"child\":[]}]})(props);\n};\nexport function FaBacterium (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M511,102.93A23.76,23.76,0,0,0,481.47,87l-15.12,4.48a111.85,111.85,0,0,0-48.5-47.42l3.79-14.47a23.74,23.74,0,0,0-46-11.91l-3.76,14.37a111.94,111.94,0,0,0-22.33,1.47,386.74,386.74,0,0,0-44.33,10.41l-4.3-12a23.74,23.74,0,0,0-44.75,15.85l4.3,12.05a383.4,383.4,0,0,0-58.69,31.83l-8-10.63a23.85,23.85,0,0,0-33.24-4.8,23.57,23.57,0,0,0-4.83,33.09l8,10.63a386.14,386.14,0,0,0-46.7,47.44l-11-8a23.68,23.68,0,1,0-28,38.17l11.09,8.06a383.45,383.45,0,0,0-30.92,58.75l-12.93-4.43a23.65,23.65,0,1,0-15.47,44.69l13,4.48a385.81,385.81,0,0,0-9.3,40.53A111.58,111.58,0,0,0,32.44,375L17,379.56a23.64,23.64,0,0,0,13.51,45.31l15-4.44a111.49,111.49,0,0,0,48.53,47.24l-3.85,14.75a23.66,23.66,0,0,0,17,28.83,24.7,24.7,0,0,0,6,.75,23.73,23.73,0,0,0,23-17.7L140,479.67c1.37.05,2.77.35,4.13.35A111.22,111.22,0,0,0,205,461.5l11.45,11.74a23.7,23.7,0,0,0,34.08-32.93l-12.19-12.5a111,111,0,0,0,16.11-41.4,158.69,158.69,0,0,1,5.16-20.71l12,5.64a23.66,23.66,0,1,0,20.19-42.79l-11.72-5.49c.89-1.32,1.59-2.77,2.52-4.06a157.86,157.86,0,0,1,10.46-12.49,159.5,159.5,0,0,1,15.59-15.28,162.18,162.18,0,0,1,13.23-10.4c1.5-1,3.1-1.89,4.63-2.87l5.23,11.8a23.74,23.74,0,0,0,43.48-19.08l-5.36-12.11a158.87,158.87,0,0,1,16.49-4.1,111,111,0,0,0,45-18.54l13.33,12a23.69,23.69,0,1,0,31.88-35l-12.94-11.67A110.83,110.83,0,0,0,479.21,137L495,132.32A23.61,23.61,0,0,0,511,102.93ZM160,368a48,48,0,1,1,48-48A48,48,0,0,1,160,368Zm80-136a24,24,0,1,1,24-24A24,24,0,0,1,240,232Z\"},\"child\":[]}]})(props);\n};\nexport function FaBahai (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496.25 202.52l-110-15.44 41.82-104.34c6.67-16.64-11.6-32.18-26.59-22.63L307.44 120 273.35 12.82C270.64 4.27 263.32 0 256 0c-7.32 0-14.64 4.27-17.35 12.82l-34.09 107.19-94.04-59.89c-14.99-9.55-33.25 5.99-26.59 22.63l41.82 104.34-110 15.43c-17.54 2.46-21.68 26.27-6.03 34.67l98.16 52.66-74.48 83.54c-10.92 12.25-1.72 30.93 13.29 30.93 1.31 0 2.67-.14 4.07-.45l108.57-23.65-4.11 112.55c-.43 11.65 8.87 19.22 18.41 19.22 5.15 0 10.39-2.21 14.2-7.18l68.18-88.9 68.18 88.9c3.81 4.97 9.04 7.18 14.2 7.18 9.54 0 18.84-7.57 18.41-19.22l-4.11-112.55 108.57 23.65c17.36 3.76 29.21-17.2 17.35-30.49l-74.48-83.54 98.16-52.66c15.64-8.39 11.5-32.2-6.04-34.66zM338.51 311.68l-51.89-11.3 1.97 53.79L256 311.68l-32.59 42.49 1.96-53.79-51.89 11.3 35.6-39.93-46.92-25.17 52.57-7.38-19.99-49.87 44.95 28.62L256 166.72l16.29 51.23 44.95-28.62-19.99 49.87 52.57 7.38-46.92 25.17 35.61 39.93z\"},\"child\":[]}]})(props);\n};\nexport function FaBalanceScaleLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 448H352V153.25c20.42-8.94 36.1-26.22 43.38-47.47l132-44.26c8.38-2.81 12.89-11.88 10.08-20.26l-10.17-30.34C524.48 2.54 515.41-1.97 507.03.84L389.11 40.37C375.3 16.36 349.69 0 320 0c-44.18 0-80 35.82-80 80 0 3.43.59 6.71 1.01 10.03l-128.39 43.05c-8.38 2.81-12.89 11.88-10.08 20.26l10.17 30.34c2.81 8.38 11.88 12.89 20.26 10.08l142.05-47.63c4.07 2.77 8.43 5.12 12.99 7.12V496c0 8.84 7.16 16 16 16h224c8.84 0 16-7.16 16-16v-32c-.01-8.84-7.17-16-16.01-16zm111.98-144c0-16.18 1.34-8.73-85.05-181.51-17.65-35.29-68.19-35.36-85.87 0-87.12 174.26-85.04 165.84-85.04 181.51H384c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02zM440 288l72-144 72 144H440zm-269.07-37.51c-17.65-35.29-68.19-35.36-85.87 0C-2.06 424.75.02 416.33.02 432H0c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02c0-16.18 1.34-8.73-85.05-181.51zM56 416l72-144 72 144H56z\"},\"child\":[]}]})(props);\n};\nexport function FaBalanceScaleRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 464v32c0 8.84 7.16 16 16 16h224c8.84 0 16-7.16 16-16V153.25c4.56-2 8.92-4.35 12.99-7.12l142.05 47.63c8.38 2.81 17.45-1.71 20.26-10.08l10.17-30.34c2.81-8.38-1.71-17.45-10.08-20.26l-128.4-43.05c.42-3.32 1.01-6.6 1.01-10.03 0-44.18-35.82-80-80-80-29.69 0-55.3 16.36-69.11 40.37L132.96.83c-8.38-2.81-17.45 1.71-20.26 10.08l-10.17 30.34c-2.81 8.38 1.71 17.45 10.08 20.26l132 44.26c7.28 21.25 22.96 38.54 43.38 47.47V448H112c-8.84 0-16 7.16-16 16zM0 304c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02c0-15.67 2.08-7.25-85.05-181.51-17.68-35.36-68.22-35.29-85.87 0C-1.32 295.27.02 287.82.02 304H0zm56-16l72-144 72 144H56zm328.02 144H384c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02c0-15.67 2.08-7.25-85.05-181.51-17.68-35.36-68.22-35.29-85.87 0-86.38 172.78-85.04 165.33-85.04 181.51zM440 416l72-144 72 144H440z\"},\"child\":[]}]})(props);\n};\nexport function FaBalanceScale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 336h-.02c0-16.18 1.34-8.73-85.05-181.51-17.65-35.29-68.19-35.36-85.87 0C-2.06 328.75.02 320.33.02 336H0c0 44.18 57.31 80 128 80s128-35.82 128-80zM128 176l72 144H56l72-144zm511.98 160c0-16.18 1.34-8.73-85.05-181.51-17.65-35.29-68.19-35.36-85.87 0-87.12 174.26-85.04 165.84-85.04 181.51H384c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02zM440 320l72-144 72 144H440zm88 128H352V153.25c23.51-10.29 41.16-31.48 46.39-57.25H528c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16H383.64C369.04 12.68 346.09 0 320 0s-49.04 12.68-63.64 32H112c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h129.61c5.23 25.76 22.87 46.96 46.39 57.25V448H112c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaBan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.034 8 8 119.033 8 256s111.034 248 248 248 248-111.034 248-248S392.967 8 256 8zm130.108 117.892c65.448 65.448 70 165.481 20.677 235.637L150.47 105.216c70.204-49.356 170.226-44.735 235.638 20.676zM125.892 386.108c-65.448-65.448-70-165.481-20.677-235.637L361.53 406.784c-70.203 49.356-170.226 44.736-235.638-20.676z\"},\"child\":[]}]})(props);\n};\nexport function FaBandAid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 160v192c0 35.3 28.7 64 64 64h96V96H64c-35.3 0-64 28.7-64 64zm576-64h-96v320h96c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64zM192 416h256V96H192v320zm176-232c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm0 96c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm-96-96c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm0 96c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaBarcode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 448V64h18v384H0zm26.857-.273V64H36v383.727h-9.143zm27.143 0V64h8.857v383.727H54zm44.857 0V64h8.857v383.727h-8.857zm36 0V64h17.714v383.727h-17.714zm44.857 0V64h8.857v383.727h-8.857zm18 0V64h8.857v383.727h-8.857zm18 0V64h8.857v383.727h-8.857zm35.715 0V64h18v383.727h-18zm44.857 0V64h18v383.727h-18zm35.999 0V64h18.001v383.727h-18.001zm36.001 0V64h18.001v383.727h-18.001zm26.857 0V64h18v383.727h-18zm45.143 0V64h26.857v383.727h-26.857zm35.714 0V64h9.143v383.727H476zm18 .273V64h18v384h-18z\"},\"child\":[]}]})(props);\n};\nexport function FaBars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaBaseballBall (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368.5 363.9l28.8-13.9c11.1 22.9 26 43.2 44.1 60.9 34-42.5 54.5-96.3 54.5-154.9 0-58.5-20.4-112.2-54.2-154.6-17.8 17.3-32.6 37.1-43.6 59.5l-28.7-14.1c12.8-26 30-49 50.8-69C375.6 34.7 315 8 248 8 181.1 8 120.5 34.6 75.9 77.7c20.7 19.9 37.9 42.9 50.7 68.8l-28.7 14.1c-11-22.3-25.7-42.1-43.5-59.4C20.4 143.7 0 197.4 0 256c0 58.6 20.4 112.3 54.4 154.7 18.2-17.7 33.2-38 44.3-61l28.8 13.9c-12.9 26.7-30.3 50.3-51.5 70.7 44.5 43.1 105.1 69.7 172 69.7 66.8 0 127.3-26.5 171.9-69.5-21.1-20.4-38.5-43.9-51.4-70.6zm-228.3-32l-30.5-9.8c14.9-46.4 12.7-93.8-.6-134l30.4-10c15 45.6 18 99.9.7 153.8zm216.3-153.4l30.4 10c-13.2 40.1-15.5 87.5-.6 134l-30.5 9.8c-17.3-54-14.3-108.3.7-153.8z\"},\"child\":[]}]})(props);\n};\nexport function FaBasketballBall (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M212.3 10.3c-43.8 6.3-86.2 24.1-122.2 53.8l77.4 77.4c27.8-35.8 43.3-81.2 44.8-131.2zM248 222L405.9 64.1c-42.4-35-93.6-53.5-145.5-56.1-1.2 63.9-21.5 122.3-58.7 167.7L248 222zM56.1 98.1c-29.7 36-47.5 78.4-53.8 122.2 50-1.5 95.5-17 131.2-44.8L56.1 98.1zm272.2 204.2c45.3-37.1 103.7-57.4 167.7-58.7-2.6-51.9-21.1-103.1-56.1-145.5L282 256l46.3 46.3zM248 290L90.1 447.9c42.4 34.9 93.6 53.5 145.5 56.1 1.3-64 21.6-122.4 58.7-167.7L248 290zm191.9 123.9c29.7-36 47.5-78.4 53.8-122.2-50.1 1.6-95.5 17.1-131.2 44.8l77.4 77.4zM167.7 209.7C122.3 246.9 63.9 267.3 0 268.4c2.6 51.9 21.1 103.1 56.1 145.5L214 256l-46.3-46.3zm116 292c43.8-6.3 86.2-24.1 122.2-53.8l-77.4-77.4c-27.7 35.7-43.2 81.2-44.8 131.2z\"},\"child\":[]}]})(props);\n};\nexport function FaBath (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32,384a95.4,95.4,0,0,0,32,71.09V496a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V480H384v16a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V455.09A95.4,95.4,0,0,0,480,384V336H32ZM496,256H80V69.25a21.26,21.26,0,0,1,36.28-15l19.27,19.26c-13.13,29.88-7.61,59.11,8.62,79.73l-.17.17A16,16,0,0,0,144,176l11.31,11.31a16,16,0,0,0,22.63,0L283.31,81.94a16,16,0,0,0,0-22.63L272,48a16,16,0,0,0-22.62,0l-.17.17c-20.62-16.23-49.83-21.75-79.73-8.62L150.22,20.28A69.25,69.25,0,0,0,32,69.25V256H16A16,16,0,0,0,0,272v16a16,16,0,0,0,16,16H496a16,16,0,0,0,16-16V272A16,16,0,0,0,496,256Z\"},\"child\":[]}]})(props);\n};\nexport function FaBatteryEmpty (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaBatteryFull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48zm-48 96H96v128h416V192z\"},\"child\":[]}]})(props);\n};\nexport function FaBatteryHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48zm-240 96H96v128h224V192z\"},\"child\":[]}]})(props);\n};\nexport function FaBatteryQuarter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48zm-336 96H96v128h128V192z\"},\"child\":[]}]})(props);\n};\nexport function FaBatteryThreeQuarters (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48zm-144 96H96v128h320V192z\"},\"child\":[]}]})(props);\n};\nexport function FaBed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 256c44.11 0 80-35.89 80-80s-35.89-80-80-80-80 35.89-80 80 35.89 80 80 80zm352-128H304c-8.84 0-16 7.16-16 16v144H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v352c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48h512v48c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V240c0-61.86-50.14-112-112-112z\"},\"child\":[]}]})(props);\n};\nexport function FaBeer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 96h-48V56c0-13.255-10.745-24-24-24H24C10.745 32 0 42.745 0 56v400c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24v-42.11l80.606-35.977C429.396 365.063 448 336.388 448 304.86V176c0-44.112-35.888-80-80-80zm16 208.86a16.018 16.018 0 0 1-9.479 14.611L320 343.805V160h48c8.822 0 16 7.178 16 16v128.86zM208 384c-8.836 0-16-7.164-16-16V144c0-8.836 7.164-16 16-16s16 7.164 16 16v224c0 8.836-7.164 16-16 16zm-96 0c-8.836 0-16-7.164-16-16V144c0-8.836 7.164-16 16-16s16 7.164 16 16v224c0 8.836-7.164 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaBellSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M633.82 458.1l-90.62-70.05c.19-1.38.8-2.66.8-4.06.05-7.55-2.61-15.27-8.61-21.71-19.32-20.76-55.47-51.99-55.47-154.29 0-77.7-54.48-139.9-127.94-155.16V32c0-17.67-14.32-32-31.98-32s-31.98 14.33-31.98 32v20.84c-40.33 8.38-74.66 31.07-97.59 62.57L45.47 3.37C38.49-2.05 28.43-.8 23.01 6.18L3.37 31.45C-2.05 38.42-.8 48.47 6.18 53.9l588.35 454.73c6.98 5.43 17.03 4.17 22.46-2.81l19.64-25.27c5.42-6.97 4.17-17.02-2.81-22.45zM157.23 251.54c-8.61 67.96-36.41 93.33-52.62 110.75-6 6.45-8.66 14.16-8.61 21.71.11 16.4 12.98 32 32.1 32h241.92L157.23 251.54zM320 512c35.32 0 63.97-28.65 63.97-64H256.03c0 35.35 28.65 64 63.97 64z\"},\"child\":[]}]})(props);\n};\nexport function FaBell (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 512c35.32 0 63.97-28.65 63.97-64H160.03c0 35.35 28.65 64 63.97 64zm215.39-149.71c-19.32-20.76-55.47-51.99-55.47-154.29 0-77.7-54.48-139.9-127.94-155.16V32c0-17.67-14.32-32-31.98-32s-31.98 14.33-31.98 32v20.84C118.56 68.1 64.08 130.3 64.08 208c0 102.3-36.15 133.53-55.47 154.29-6 6.45-8.66 14.16-8.61 21.71.11 16.4 12.98 32 32.1 32h383.8c19.12 0 32-15.6 32.1-32 .05-7.55-2.61-15.27-8.61-21.71z\"},\"child\":[]}]})(props);\n};\nexport function FaBezierCurve (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 32h-96c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zM208 88h-84.75C113.75 64.56 90.84 48 64 48 28.66 48 0 76.65 0 112s28.66 64 64 64c26.84 0 49.75-16.56 59.25-40h79.73c-55.37 32.52-95.86 87.32-109.54 152h49.4c11.3-41.61 36.77-77.21 71.04-101.56-3.7-8.08-5.88-16.99-5.88-26.44V88zm-48 232H64c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32zM576 48c-26.84 0-49.75 16.56-59.25 40H432v72c0 9.45-2.19 18.36-5.88 26.44 34.27 24.35 59.74 59.95 71.04 101.56h49.4c-13.68-64.68-54.17-119.48-109.54-152h79.73c9.5 23.44 32.41 40 59.25 40 35.34 0 64-28.65 64-64s-28.66-64-64-64zm0 272h-96c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaBible (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 358.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16c0-6.4-3.2-12.8-9.6-19.2-3.2-16-3.2-60.8 0-73.6 6.4-3.2 9.6-9.6 9.6-19.2zM144 144c0-8.84 7.16-16 16-16h48V80c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v48h48c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16h-48v112c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16V192h-48c-8.84 0-16-7.16-16-16v-32zm236.8 304H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8v64z\"},\"child\":[]}]})(props);\n};\nexport function FaBicycle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512.509 192.001c-16.373-.064-32.03 2.955-46.436 8.495l-77.68-125.153A24 24 0 0 0 368.001 64h-64c-8.837 0-16 7.163-16 16v16c0 8.837 7.163 16 16 16h50.649l14.896 24H256.002v-16c0-8.837-7.163-16-16-16h-87.459c-13.441 0-24.777 10.999-24.536 24.437.232 13.044 10.876 23.563 23.995 23.563h48.726l-29.417 47.52c-13.433-4.83-27.904-7.483-42.992-7.52C58.094 191.83.412 249.012.002 319.236-.413 390.279 57.055 448 128.002 448c59.642 0 109.758-40.793 123.967-96h52.033a24 24 0 0 0 20.406-11.367L410.37 201.77l14.938 24.067c-25.455 23.448-41.385 57.081-41.307 94.437.145 68.833 57.899 127.051 126.729 127.719 70.606.685 128.181-55.803 129.255-125.996 1.086-70.941-56.526-129.72-127.476-129.996zM186.75 265.772c9.727 10.529 16.673 23.661 19.642 38.228h-43.306l23.664-38.228zM128.002 400c-44.112 0-80-35.888-80-80s35.888-80 80-80c5.869 0 11.586.653 17.099 1.859l-45.505 73.509C89.715 331.327 101.213 352 120.002 352h81.3c-12.37 28.225-40.562 48-73.3 48zm162.63-96h-35.624c-3.96-31.756-19.556-59.894-42.383-80.026L237.371 184h127.547l-74.286 120zm217.057 95.886c-41.036-2.165-74.049-35.692-75.627-76.755-.812-21.121 6.633-40.518 19.335-55.263l44.433 71.586c4.66 7.508 14.524 9.816 22.032 5.156l13.594-8.437c7.508-4.66 9.817-14.524 5.156-22.032l-44.468-71.643a79.901 79.901 0 0 1 19.858-2.497c44.112 0 80 35.888 80 80-.001 45.54-38.252 82.316-84.313 79.885z\"},\"child\":[]}]})(props);\n};\nexport function FaBiking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 96a48 48 0 1 0-48-48 48 48 0 0 0 48 48zm-4 121a31.9 31.9 0 0 0 20 7h64a32 32 0 0 0 0-64h-52.78L356 103a31.94 31.94 0 0 0-40.81.68l-112 96a32 32 0 0 0 3.08 50.92L288 305.12V416a32 32 0 0 0 64 0V288a32 32 0 0 0-14.25-26.62l-41.36-27.57 58.25-49.92zm116 39a128 128 0 1 0 128 128 128 128 0 0 0-128-128zm0 192a64 64 0 1 1 64-64 64 64 0 0 1-64 64zM128 256a128 128 0 1 0 128 128 128 128 0 0 0-128-128zm0 192a64 64 0 1 1 64-64 64 64 0 0 1-64 64z\"},\"child\":[]}]})(props);\n};\nexport function FaBinoculars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 48c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v48h96V48zM63.91 159.99C61.4 253.84 3.46 274.22 0 404v44c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32V288h32V128H95.84c-17.63 0-31.45 14.37-31.93 31.99zm384.18 0c-.48-17.62-14.3-31.99-31.93-31.99H320v160h32v160c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-44c-3.46-129.78-61.4-150.16-63.91-244.01zM176 32h-64c-8.84 0-16 7.16-16 16v48h96V48c0-8.84-7.16-16-16-16zm48 256h64V128h-64v160z\"},\"child\":[]}]})(props);\n};\nexport function FaBiohazard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M287.9 112c18.6 0 36.2 3.8 52.8 9.6 13.3-10.3 23.6-24.3 29.5-40.7-25.2-10.9-53-17-82.2-17-29.1 0-56.9 6-82.1 16.9 5.9 16.4 16.2 30.4 29.5 40.7 16.5-5.7 34-9.5 52.5-9.5zM163.6 438.7c12-11.8 20.4-26.4 24.5-42.4-32.9-26.4-54.8-65.3-58.9-109.6-8.5-2.8-17.2-4.6-26.4-4.6-7.6 0-15.2 1-22.5 3.1 4.1 62.8 35.8 118 83.3 153.5zm224.2-42.6c4.1 16 12.5 30.7 24.5 42.5 47.4-35.5 79.1-90.7 83-153.5-7.2-2-14.7-3-22.2-3-9.2 0-18 1.9-26.6 4.7-4.1 44.2-26 82.9-58.7 109.3zm113.5-205c-17.6-10.4-36.3-16.6-55.3-19.9 6-17.7 10-36.4 10-56.2 0-41-14.5-80.8-41-112.2-2.5-3-6.6-3.7-10-1.8-3.3 1.9-4.8 6-3.6 9.7 4.5 13.8 6.6 26.3 6.6 38.5 0 67.8-53.8 122.9-120 122.9S168 117 168 49.2c0-12.1 2.2-24.7 6.6-38.5 1.2-3.7-.3-7.8-3.6-9.7-3.4-1.9-7.5-1.2-10 1.8C134.6 34.2 120 74 120 115c0 19.8 3.9 38.5 10 56.2-18.9 3.3-37.7 9.5-55.3 19.9-34.6 20.5-61 53.3-74.3 92.4-1.3 3.7.2 7.7 3.5 9.8 3.3 2 7.5 1.3 10-1.6 9.4-10.8 19-19.1 29.2-25.1 57.3-33.9 130.8-13.7 163.9 45 33.1 58.7 13.4 134-43.9 167.9-10.2 6.1-22 10.4-35.8 13.4-3.7.8-6.4 4.2-6.4 8.1.1 4 2.7 7.3 6.5 8 39.7 7.8 80.6.8 115.2-19.7 18-10.6 32.9-24.5 45.3-40.1 12.4 15.6 27.3 29.5 45.3 40.1 34.6 20.5 75.5 27.5 115.2 19.7 3.8-.7 6.4-4 6.5-8 0-3.9-2.6-7.3-6.4-8.1-13.9-2.9-25.6-7.3-35.8-13.4-57.3-33.9-77-109.2-43.9-167.9s106.6-78.9 163.9-45c10.2 6.1 19.8 14.3 29.2 25.1 2.5 2.9 6.7 3.6 10 1.6s4.8-6.1 3.5-9.8c-13.1-39.1-39.5-72-74.1-92.4zm-213.4 129c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaBirthdayCake (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 384c-28.02 0-31.26-32-74.5-32-43.43 0-46.825 32-74.75 32-27.695 0-31.454-32-74.75-32-42.842 0-47.218 32-74.5 32-28.148 0-31.202-32-74.75-32-43.547 0-46.653 32-74.75 32v-80c0-26.5 21.5-48 48-48h16V112h64v144h64V112h64v144h64V112h64v144h16c26.5 0 48 21.5 48 48v80zm0 128H0v-96c43.356 0 46.767-32 74.75-32 27.951 0 31.253 32 74.75 32 42.843 0 47.217-32 74.5-32 28.148 0 31.201 32 74.75 32 43.357 0 46.767-32 74.75-32 27.488 0 31.252 32 74.5 32v96zM96 96c-17.75 0-32-14.25-32-32 0-31 32-23 32-64 12 0 32 29.5 32 56s-14.25 40-32 40zm128 0c-17.75 0-32-14.25-32-32 0-31 32-23 32-64 12 0 32 29.5 32 56s-14.25 40-32 40zm128 0c-17.75 0-32-14.25-32-32 0-31 32-23 32-64 12 0 32 29.5 32 56s-14.25 40-32 40z\"},\"child\":[]}]})(props);\n};\nexport function FaBlenderPhone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M392 64h166.54L576 0H192v352h288l17.46-64H392c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h114.18l17.46-64H392c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h140.36l17.46-64H392c-4.42 0-8-3.58-8-8V72c0-4.42 3.58-8 8-8zM158.8 335.01l-25.78-63.26c-2.78-6.81-9.8-10.99-17.24-10.26l-45.03 4.42c-17.28-46.94-17.65-99.78 0-147.72l45.03 4.42c7.43.73 14.46-3.46 17.24-10.26l25.78-63.26c3.02-7.39.2-15.85-6.68-20.07l-39.28-24.1C98.51-3.87 80.09-.5 68.95 11.97c-92.57 103.6-92 259.55 2.1 362.49 9.87 10.8 29.12 12.48 41.65 4.8l39.41-24.18c6.89-4.22 9.7-12.67 6.69-20.07zM480 384H192c-35.35 0-64 28.65-64 64v32c0 17.67 14.33 32 32 32h352c17.67 0 32-14.33 32-32v-32c0-35.35-28.65-64-64-64zm-144 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaBlender (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 384H160c-35.35 0-64 28.65-64 64v32c0 17.67 14.33 32 32 32h320c17.67 0 32-14.33 32-32v-32c0-35.35-28.65-64-64-64zm-128 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm40-416h166.54L512 0H48C21.49 0 0 21.49 0 48v160c0 26.51 21.49 48 48 48h103.27l8.73 96h256l17.46-64H328c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h114.18l17.46-64H328c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h140.36l17.46-64H328c-4.42 0-8-3.58-8-8V72c0-4.42 3.58-8 8-8zM64 192V64h69.82l11.64 128H64z\"},\"child\":[]}]})(props);\n};\nexport function FaBlind (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M380.15 510.837a8 8 0 0 1-10.989-2.687l-125.33-206.427a31.923 31.923 0 0 0 12.958-9.485l126.048 207.608a8 8 0 0 1-2.687 10.991zM142.803 314.338l-32.54 89.485 36.12 88.285c6.693 16.36 25.377 24.192 41.733 17.501 16.357-6.692 24.193-25.376 17.501-41.734l-62.814-153.537zM96 88c24.301 0 44-19.699 44-44S120.301 0 96 0 52 19.699 52 44s19.699 44 44 44zm154.837 169.128l-120-152c-4.733-5.995-11.75-9.108-18.837-9.112V96H80v.026c-7.146.003-14.217 3.161-18.944 9.24L0 183.766v95.694c0 13.455 11.011 24.791 24.464 24.536C37.505 303.748 48 293.1 48 280v-79.766l16-20.571v140.698L9.927 469.055c-6.04 16.609 2.528 34.969 19.138 41.009 16.602 6.039 34.968-2.524 41.009-19.138L136 309.638V202.441l-31.406-39.816a4 4 0 1 1 6.269-4.971l102.3 129.217c9.145 11.584 24.368 11.339 33.708 3.965 10.41-8.216 12.159-23.334 3.966-33.708z\"},\"child\":[]}]})(props);\n};\nexport function FaBlog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M172.2 226.8c-14.6-2.9-28.2 8.9-28.2 23.8V301c0 10.2 7.1 18.4 16.7 22 18.2 6.8 31.3 24.4 31.3 45 0 26.5-21.5 48-48 48s-48-21.5-48-48V120c0-13.3-10.7-24-24-24H24c-13.3 0-24 10.7-24 24v248c0 89.5 82.1 160.2 175 140.7 54.4-11.4 98.3-55.4 109.7-109.7 17.4-82.9-37-157.2-112.5-172.2zM209 0c-9.2-.5-17 6.8-17 16v31.6c0 8.5 6.6 15.5 15 15.9 129.4 7 233.4 112 240.9 241.5.5 8.4 7.5 15 15.9 15h32.1c9.2 0 16.5-7.8 16-17C503.4 139.8 372.2 8.6 209 0zm.3 96c-9.3-.7-17.3 6.7-17.3 16.1v32.1c0 8.4 6.5 15.3 14.8 15.9 76.8 6.3 138 68.2 144.9 145.2.8 8.3 7.6 14.7 15.9 14.7h32.2c9.3 0 16.8-8 16.1-17.3-8.4-110.1-96.5-198.2-206.6-206.7z\"},\"child\":[]}]})(props);\n};\nexport function FaBold (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M333.49 238a122 122 0 0 0 27-65.21C367.87 96.49 308 32 233.42 32H34a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h31.87v288H34a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h209.32c70.8 0 134.14-51.75 141-122.4 4.74-48.45-16.39-92.06-50.83-119.6zM145.66 112h87.76a48 48 0 0 1 0 96h-87.76zm87.76 288h-87.76V288h87.76a56 56 0 0 1 0 112z\"},\"child\":[]}]})(props);\n};\nexport function FaBolt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M296 160H180.6l42.6-129.8C227.2 15 215.7 0 200 0H56C44 0 33.8 8.9 32.2 20.8l-32 240C-1.7 275.2 9.5 288 24 288h118.7L96.6 482.5c-3.6 15.2 8 29.5 23.3 29.5 8.4 0 16.4-4.4 20.8-12l176-304c9.3-15.9-2.2-36-20.7-36z\"},\"child\":[]}]})(props);\n};\nexport function FaBomb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.5 88.5l-52 52L415 167c9.4 9.4 9.4 24.6 0 33.9l-17.4 17.4c11.8 26.1 18.4 55.1 18.4 85.6 0 114.9-93.1 208-208 208S0 418.9 0 304 93.1 96 208 96c30.5 0 59.5 6.6 85.6 18.4L311 97c9.4-9.4 24.6-9.4 33.9 0l26.5 26.5 52-52 17.1 17zM500 60h-24c-6.6 0-12 5.4-12 12s5.4 12 12 12h24c6.6 0 12-5.4 12-12s-5.4-12-12-12zM440 0c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12s12-5.4 12-12V12c0-6.6-5.4-12-12-12zm33.9 55l17-17c4.7-4.7 4.7-12.3 0-17-4.7-4.7-12.3-4.7-17 0l-17 17c-4.7 4.7-4.7 12.3 0 17 4.8 4.7 12.4 4.7 17 0zm-67.8 0c4.7 4.7 12.3 4.7 17 0 4.7-4.7 4.7-12.3 0-17l-17-17c-4.7-4.7-12.3-4.7-17 0-4.7 4.7-4.7 12.3 0 17l17 17zm67.8 34c-4.7-4.7-12.3-4.7-17 0-4.7 4.7-4.7 12.3 0 17l17 17c4.7 4.7 12.3 4.7 17 0 4.7-4.7 4.7-12.3 0-17l-17-17zM112 272c0-35.3 28.7-64 64-64 8.8 0 16-7.2 16-16s-7.2-16-16-16c-52.9 0-96 43.1-96 96 0 8.8 7.2 16 16 16s16-7.2 16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaBone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M598.88 244.56c25.2-12.6 41.12-38.36 41.12-66.53v-7.64C640 129.3 606.7 96 565.61 96c-32.02 0-60.44 20.49-70.57 50.86-7.68 23.03-11.6 45.14-38.11 45.14H183.06c-27.38 0-31.58-25.54-38.11-45.14C134.83 116.49 106.4 96 74.39 96 33.3 96 0 129.3 0 170.39v7.64c0 28.17 15.92 53.93 41.12 66.53 9.43 4.71 9.43 18.17 0 22.88C15.92 280.04 0 305.8 0 333.97v7.64C0 382.7 33.3 416 74.38 416c32.02 0 60.44-20.49 70.57-50.86 7.68-23.03 11.6-45.14 38.11-45.14h273.87c27.38 0 31.58 25.54 38.11 45.14C505.17 395.51 533.6 416 565.61 416c41.08 0 74.38-33.3 74.38-74.39v-7.64c0-28.18-15.92-53.93-41.12-66.53-9.42-4.71-9.42-18.17.01-22.88z\"},\"child\":[]}]})(props);\n};\nexport function FaBong (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M302.5 512c23.18 0 44.43-12.58 56-32.66C374.69 451.26 384 418.75 384 384c0-36.12-10.08-69.81-27.44-98.62L400 241.94l9.38 9.38c6.25 6.25 16.38 6.25 22.63 0l11.3-11.32c6.25-6.25 6.25-16.38 0-22.63l-52.69-52.69c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63l9.38 9.38-39.41 39.41c-11.56-11.37-24.53-21.33-38.65-29.51V63.74l15.97-.02c8.82-.01 15.97-7.16 15.98-15.98l.04-31.72C320 7.17 312.82-.01 303.97 0L80.03.26c-8.82.01-15.97 7.16-15.98 15.98l-.04 31.73c-.01 8.85 7.17 16.02 16.02 16.01L96 63.96v153.93C38.67 251.1 0 312.97 0 384c0 34.75 9.31 67.27 25.5 95.34C37.08 499.42 58.33 512 81.5 512h221zM120.06 259.43L144 245.56V63.91l96-.11v181.76l23.94 13.87c24.81 14.37 44.12 35.73 56.56 60.57h-257c12.45-24.84 31.75-46.2 56.56-60.57z\"},\"child\":[]}]})(props);\n};\nexport function FaBookDead (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 136c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm176 222.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16c0-6.4-3.2-12.8-9.6-19.2-3.2-16-3.2-60.8 0-73.6 6.4-3.2 9.6-9.6 9.6-19.2zM240 56c44.2 0 80 28.7 80 64 0 20.9-12.7 39.2-32 50.9V184c0 8.8-7.2 16-16 16h-64c-8.8 0-16-7.2-16-16v-13.1c-19.3-11.7-32-30-32-50.9 0-35.3 35.8-64 80-64zM124.8 223.3l6.3-14.7c1.7-4.1 6.4-5.9 10.5-4.2l98.3 42.1 98.4-42.1c4.1-1.7 8.8.1 10.5 4.2l6.3 14.7c1.7 4.1-.1 8.8-4.2 10.5L280.6 264l70.3 30.1c4.1 1.7 5.9 6.4 4.2 10.5l-6.3 14.7c-1.7 4.1-6.4 5.9-10.5 4.2L240 281.4l-98.3 42.2c-4.1 1.7-8.8-.1-10.5-4.2l-6.3-14.7c-1.7-4.1.1-8.8 4.2-10.5l70.4-30.1-70.5-30.3c-4.1-1.7-5.9-6.4-4.2-10.5zm256 224.7H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8zM208 136c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaBookMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 358.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16q0-9.6-9.6-19.2c-3.2-16-3.2-60.8 0-73.6q9.6-4.8 9.6-19.2zM144 168a8 8 0 0 1 8-8h56v-56a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v56h56a8 8 0 0 1 8 8v48a8 8 0 0 1-8 8h-56v56a8 8 0 0 1-8 8h-48a8 8 0 0 1-8-8v-56h-56a8 8 0 0 1-8-8zm236.8 280H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8z\"},\"child\":[]}]})(props);\n};\nexport function FaBookOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M542.22 32.05c-54.8 3.11-163.72 14.43-230.96 55.59-4.64 2.84-7.27 7.89-7.27 13.17v363.87c0 11.55 12.63 18.85 23.28 13.49 69.18-34.82 169.23-44.32 218.7-46.92 16.89-.89 30.02-14.43 30.02-30.66V62.75c.01-17.71-15.35-31.74-33.77-30.7zM264.73 87.64C197.5 46.48 88.58 35.17 33.78 32.05 15.36 31.01 0 45.04 0 62.75V400.6c0 16.24 13.13 29.78 30.02 30.66 49.49 2.6 149.59 12.11 218.77 46.95 10.62 5.35 23.21-1.94 23.21-13.46V100.63c0-5.29-2.62-10.14-7.27-12.99z\"},\"child\":[]}]})(props);\n};\nexport function FaBookReader (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 96c0-53.02-42.98-96-96-96s-96 42.98-96 96 42.98 96 96 96 96-42.98 96-96zM233.59 241.1c-59.33-36.32-155.43-46.3-203.79-49.05C13.55 191.13 0 203.51 0 219.14v222.8c0 14.33 11.59 26.28 26.49 27.05 43.66 2.29 131.99 10.68 193.04 41.43 9.37 4.72 20.48-1.71 20.48-11.87V252.56c-.01-4.67-2.32-8.95-6.42-11.46zm248.61-49.05c-48.35 2.74-144.46 12.73-203.78 49.05-4.1 2.51-6.41 6.96-6.41 11.63v245.79c0 10.19 11.14 16.63 20.54 11.9 61.04-30.72 149.32-39.11 192.97-41.4 14.9-.78 26.49-12.73 26.49-27.06V219.14c-.01-15.63-13.56-28.01-29.81-27.09z\"},\"child\":[]}]})(props);\n};\nexport function FaBook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 360V24c0-13.3-10.7-24-24-24H96C43 0 0 43 0 96v320c0 53 43 96 96 96h328c13.3 0 24-10.7 24-24v-16c0-7.5-3.5-14.3-8.9-18.7-4.2-15.4-4.2-59.3 0-74.7 5.4-4.3 8.9-11.1 8.9-18.6zM128 134c0-3.3 2.7-6 6-6h212c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H134c-3.3 0-6-2.7-6-6v-20zm0 64c0-3.3 2.7-6 6-6h212c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H134c-3.3 0-6-2.7-6-6v-20zm253.4 250H96c-17.7 0-32-14.3-32-32 0-17.6 14.4-32 32-32h285.4c-1.9 17.1-1.9 46.9 0 64z\"},\"child\":[]}]})(props);\n};\nexport function FaBookmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 512V48C0 21.49 21.49 0 48 0h288c26.51 0 48 21.49 48 48v464L192 400 0 512z\"},\"child\":[]}]})(props);\n};\nexport function FaBorderAll (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 32H32A32 32 0 0 0 0 64v384a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm-32 64v128H256V96zm-192 0v128H64V96zM64 416V288h128v128zm192 0V288h128v128z\"},\"child\":[]}]})(props);\n};\nexport function FaBorderNone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 224h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-288 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 192h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-96h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-192h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM240 320h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-192h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-96 288h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96-384h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM48 224H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 192H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-96H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-192H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-96H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaBorderStyle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 416h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm192 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96-192h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 96h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 96h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-288h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-96H32A32 32 0 0 0 0 64v400a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V96h368a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaBowlingBall (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM120 192c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm64-96c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm48 144c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaBoxOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M425.7 256c-16.9 0-32.8-9-41.4-23.4L320 126l-64.2 106.6c-8.7 14.5-24.6 23.5-41.5 23.5-4.5 0-9-.6-13.3-1.9L64 215v178c0 14.7 10 27.5 24.2 31l216.2 54.1c10.2 2.5 20.9 2.5 31 0L551.8 424c14.2-3.6 24.2-16.4 24.2-31V215l-137 39.1c-4.3 1.3-8.8 1.9-13.3 1.9zm212.6-112.2L586.8 41c-3.1-6.2-9.8-9.8-16.7-8.9L320 64l91.7 152.1c3.8 6.3 11.4 9.3 18.5 7.3l197.9-56.5c9.9-2.9 14.7-13.9 10.2-23.1zM53.2 41L1.7 143.8c-4.6 9.2.3 20.2 10.1 23l197.9 56.5c7.1 2 14.7-1 18.5-7.3L320 64 69.8 32.1c-6.9-.8-13.5 2.7-16.6 8.9z\"},\"child\":[]}]})(props);\n};\nexport function FaBoxTissue (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M383.88,287.82l64-192H338.47a70.2,70.2,0,0,1-66.59-48,70.21,70.21,0,0,0-66.6-48H63.88l64,288Zm-384,192a32,32,0,0,0,32,32h448a32,32,0,0,0,32-32v-64H-.12Zm480-256H438.94l-21.33,64h14.27a16,16,0,0,1,0,32h-352a16,16,0,1,1,0-32H95.09l-14.22-64h-49a32,32,0,0,0-32,32v128h512v-128A32,32,0,0,0,479.88,223.82Z\"},\"child\":[]}]})(props);\n};\nexport function FaBox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M509.5 184.6L458.9 32.8C452.4 13.2 434.1 0 413.4 0H272v192h238.7c-.4-2.5-.4-5-1.2-7.4zM240 0H98.6c-20.7 0-39 13.2-45.5 32.8L2.5 184.6c-.8 2.4-.8 4.9-1.2 7.4H240V0zM0 224v240c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V224H0z\"},\"child\":[]}]})(props);\n};\nexport function FaBoxes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M560 288h-80v96l-32-21.3-32 21.3v-96h-80c-8.8 0-16 7.2-16 16v192c0 8.8 7.2 16 16 16h224c8.8 0 16-7.2 16-16V304c0-8.8-7.2-16-16-16zm-384-64h224c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16h-80v96l-32-21.3L256 96V0h-80c-8.8 0-16 7.2-16 16v192c0 8.8 7.2 16 16 16zm64 64h-80v96l-32-21.3L96 384v-96H16c-8.8 0-16 7.2-16 16v192c0 8.8 7.2 16 16 16h224c8.8 0 16-7.2 16-16V304c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaBraille (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 256c0 35.346-28.654 64-64 64S0 291.346 0 256s28.654-64 64-64 64 28.654 64 64zM64 384c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0-352C28.654 32 0 60.654 0 96s28.654 64 64 64 64-28.654 64-64-28.654-64-64-64zm160 192c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0 160c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0-352c-35.346 0-64 28.654-64 64s28.654 64 64 64 64-28.654 64-64-28.654-64-64-64zm224 192c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0 160c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0-352c-35.346 0-64 28.654-64 64s28.654 64 64 64 64-28.654 64-64-28.654-64-64-64zm160 192c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0 160c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0-320c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaBrain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 0c-29.9 0-54.7 20.5-61.8 48.2-.8 0-1.4-.2-2.2-.2-35.3 0-64 28.7-64 64 0 4.8.6 9.5 1.7 14C52.5 138 32 166.6 32 200c0 12.6 3.2 24.3 8.3 34.9C16.3 248.7 0 274.3 0 304c0 33.3 20.4 61.9 49.4 73.9-.9 4.6-1.4 9.3-1.4 14.1 0 39.8 32.2 72 72 72 4.1 0 8.1-.5 12-1.2 9.6 28.5 36.2 49.2 68 49.2 39.8 0 72-32.2 72-72V64c0-35.3-28.7-64-64-64zm368 304c0-29.7-16.3-55.3-40.3-69.1 5.2-10.6 8.3-22.3 8.3-34.9 0-33.4-20.5-62-49.7-74 1-4.5 1.7-9.2 1.7-14 0-35.3-28.7-64-64-64-.8 0-1.5.2-2.2.2C422.7 20.5 397.9 0 368 0c-35.3 0-64 28.6-64 64v376c0 39.8 32.2 72 72 72 31.8 0 58.4-20.7 68-49.2 3.9.7 7.9 1.2 12 1.2 39.8 0 72-32.2 72-72 0-4.8-.5-9.5-1.4-14.1 29-12 49.4-40.6 49.4-73.9z\"},\"child\":[]}]})(props);\n};\nexport function FaBreadSlice (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 0C108 0 0 93.4 0 169.14 0 199.44 24.24 224 64 224v256c0 17.67 16.12 32 36 32h376c19.88 0 36-14.33 36-32V224c39.76 0 64-24.56 64-54.86C576 93.4 468 0 288 0z\"},\"child\":[]}]})(props);\n};\nexport function FaBriefcaseMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 128h-80V80c0-26.5-21.5-48-48-48H176c-26.5 0-48 21.5-48 48v48H48c-26.5 0-48 21.5-48 48v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48zM192 96h128v32H192V96zm160 248c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48z\"},\"child\":[]}]})(props);\n};\nexport function FaBriefcase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 336c0 8.84-7.16 16-16 16h-96c-8.84 0-16-7.16-16-16v-48H0v144c0 25.6 22.4 48 48 48h416c25.6 0 48-22.4 48-48V288H320v48zm144-208h-80V80c0-25.6-22.4-48-48-48H176c-25.6 0-48 22.4-48 48v48H48c-25.6 0-48 22.4-48 48v80h512v-80c0-25.6-22.4-48-48-48zm-144 0H192V96h128v32z\"},\"child\":[]}]})(props);\n};\nexport function FaBroadcastTower (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M150.94 192h33.73c11.01 0 18.61-10.83 14.86-21.18-4.93-13.58-7.55-27.98-7.55-42.82s2.62-29.24 7.55-42.82C203.29 74.83 195.68 64 184.67 64h-33.73c-7.01 0-13.46 4.49-15.41 11.23C130.64 92.21 128 109.88 128 128c0 18.12 2.64 35.79 7.54 52.76 1.94 6.74 8.39 11.24 15.4 11.24zM89.92 23.34C95.56 12.72 87.97 0 75.96 0H40.63c-6.27 0-12.14 3.59-14.74 9.31C9.4 45.54 0 85.65 0 128c0 24.75 3.12 68.33 26.69 118.86 2.62 5.63 8.42 9.14 14.61 9.14h34.84c12.02 0 19.61-12.74 13.95-23.37-49.78-93.32-16.71-178.15-.17-209.29zM614.06 9.29C611.46 3.58 605.6 0 599.33 0h-35.42c-11.98 0-19.66 12.66-14.02 23.25 18.27 34.29 48.42 119.42.28 209.23-5.72 10.68 1.8 23.52 13.91 23.52h35.23c6.27 0 12.13-3.58 14.73-9.29C630.57 210.48 640 170.36 640 128s-9.42-82.48-25.94-118.71zM489.06 64h-33.73c-11.01 0-18.61 10.83-14.86 21.18 4.93 13.58 7.55 27.98 7.55 42.82s-2.62 29.24-7.55 42.82c-3.76 10.35 3.85 21.18 14.86 21.18h33.73c7.02 0 13.46-4.49 15.41-11.24 4.9-16.97 7.53-34.64 7.53-52.76 0-18.12-2.64-35.79-7.54-52.76-1.94-6.75-8.39-11.24-15.4-11.24zm-116.3 100.12c7.05-10.29 11.2-22.71 11.2-36.12 0-35.35-28.63-64-63.96-64-35.32 0-63.96 28.65-63.96 64 0 13.41 4.15 25.83 11.2 36.12l-130.5 313.41c-3.4 8.15.46 17.52 8.61 20.92l29.51 12.31c8.15 3.4 17.52-.46 20.91-8.61L244.96 384h150.07l49.2 118.15c3.4 8.16 12.76 12.01 20.91 8.61l29.51-12.31c8.15-3.4 12-12.77 8.61-20.92l-130.5-313.41zM271.62 320L320 203.81 368.38 320h-96.76z\"},\"child\":[]}]})(props);\n};\nexport function FaBroom (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256.47 216.77l86.73 109.18s-16.6 102.36-76.57 150.12C206.66 523.85 0 510.19 0 510.19s3.8-23.14 11-55.43l94.62-112.17c3.97-4.7-.87-11.62-6.65-9.5l-60.4 22.09c14.44-41.66 32.72-80.04 54.6-97.47 59.97-47.76 163.3-40.94 163.3-40.94zM636.53 31.03l-19.86-25c-5.49-6.9-15.52-8.05-22.41-2.56l-232.48 177.8-34.14-42.97c-5.09-6.41-15.14-5.21-18.59 2.21l-25.33 54.55 86.73 109.18 58.8-12.45c8-1.69 11.42-11.2 6.34-17.6l-34.09-42.92 232.48-177.8c6.89-5.48 8.04-15.53 2.55-22.44z\"},\"child\":[]}]})(props);\n};\nexport function FaBrush (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 0H32C14.33 0 0 14.33 0 32v224h384V32c0-17.67-14.33-32-32-32zM0 320c0 35.35 28.66 64 64 64h64v64c0 35.35 28.66 64 64 64s64-28.65 64-64v-64h64c35.34 0 64-28.65 64-64v-32H0v32zm192 104c13.25 0 24 10.74 24 24 0 13.25-10.75 24-24 24s-24-10.75-24-24c0-13.26 10.75-24 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaBug (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M511.988 288.9c-.478 17.43-15.217 31.1-32.653 31.1H424v16c0 21.864-4.882 42.584-13.6 61.145l60.228 60.228c12.496 12.497 12.496 32.758 0 45.255-12.498 12.497-32.759 12.496-45.256 0l-54.736-54.736C345.886 467.965 314.351 480 280 480V236c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v244c-34.351 0-65.886-12.035-90.636-32.108l-54.736 54.736c-12.498 12.497-32.759 12.496-45.256 0-12.496-12.497-12.496-32.758 0-45.255l60.228-60.228C92.882 378.584 88 357.864 88 336v-16H32.666C15.23 320 .491 306.33.013 288.9-.484 270.816 14.028 256 32 256h56v-58.745l-46.628-46.628c-12.496-12.497-12.496-32.758 0-45.255 12.498-12.497 32.758-12.497 45.256 0L141.255 160h229.489l54.627-54.627c12.498-12.497 32.758-12.497 45.256 0 12.496 12.497 12.496 32.758 0 45.255L424 197.255V256h56c17.972 0 32.484 14.816 31.988 32.9zM257 0c-61.856 0-112 50.144-112 112h224C369 50.144 318.856 0 257 0z\"},\"child\":[]}]})(props);\n};\nexport function FaBuilding (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 480h-20V24c0-13.255-10.745-24-24-24H56C42.745 0 32 10.745 32 24v456H12c-6.627 0-12 5.373-12 12v20h448v-20c0-6.627-5.373-12-12-12zM128 76c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12V76zm0 96c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40zm52 148h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12zm76 160h-64v-84c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v84zm64-172c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40zm0-96c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40zm0-96c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12V76c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40z\"},\"child\":[]}]})(props);\n};\nexport function FaBullhorn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M576 240c0-23.63-12.95-44.04-32-55.12V32.01C544 23.26 537.02 0 512 0c-7.12 0-14.19 2.38-19.98 7.02l-85.03 68.03C364.28 109.19 310.66 128 256 128H64c-35.35 0-64 28.65-64 64v96c0 35.35 28.65 64 64 64h33.7c-1.39 10.48-2.18 21.14-2.18 32 0 39.77 9.26 77.35 25.56 110.94 5.19 10.69 16.52 17.06 28.4 17.06h74.28c26.05 0 41.69-29.84 25.9-50.56-16.4-21.52-26.15-48.36-26.15-77.44 0-11.11 1.62-21.79 4.41-32H256c54.66 0 108.28 18.81 150.98 52.95l85.03 68.03a32.023 32.023 0 0 0 19.98 7.02c24.92 0 32-22.78 32-32V295.13C563.05 284.04 576 263.63 576 240zm-96 141.42l-33.05-26.44C392.95 311.78 325.12 288 256 288v-96c69.12 0 136.95-23.78 190.95-66.98L480 98.58v282.84z\"},\"child\":[]}]})(props);\n};\nexport function FaBullseye (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 432c-101.69 0-184-82.29-184-184 0-101.69 82.29-184 184-184 101.69 0 184 82.29 184 184 0 101.69-82.29 184-184 184zm0-312c-70.69 0-128 57.31-128 128s57.31 128 128 128 128-57.31 128-128-57.31-128-128-128zm0 192c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64z\"},\"child\":[]}]})(props);\n};\nexport function FaBurn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 0C79.7 101.3 0 220.9 0 300.5 0 425 79 512 192 512s192-87 192-211.5c0-79.9-80.2-199.6-192-300.5zm0 448c-56.5 0-96-39-96-94.8 0-13.5 4.6-61.5 96-161.2 91.4 99.7 96 147.7 96 161.2 0 55.8-39.5 94.8-96 94.8z\"},\"child\":[]}]})(props);\n};\nexport function FaBusAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 128h-8V80c0-44.8-99.2-80-224-80S32 35.2 32 80v48h-8c-13.25 0-24 10.74-24 24v80c0 13.25 10.75 24 24 24h8v160c0 17.67 14.33 32 32 32v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h192v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h6.4c16 0 25.6-12.8 25.6-25.6V256h8c13.25 0 24-10.75 24-24v-80c0-13.26-10.75-24-24-24zM160 72c0-4.42 3.58-8 8-8h176c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H168c-4.42 0-8-3.58-8-8V72zm-48 328c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm128-112H128c-17.67 0-32-14.33-32-32v-96c0-17.67 14.33-32 32-32h112v160zm32 0V128h112c17.67 0 32 14.33 32 32v96c0 17.67-14.33 32-32 32H272zm128 112c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaBus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 128h-8V80c0-44.8-99.2-80-224-80S32 35.2 32 80v48h-8c-13.25 0-24 10.74-24 24v80c0 13.25 10.75 24 24 24h8v160c0 17.67 14.33 32 32 32v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h192v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h6.4c16 0 25.6-12.8 25.6-25.6V256h8c13.25 0 24-10.75 24-24v-80c0-13.26-10.75-24-24-24zM112 400c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm16-112c-17.67 0-32-14.33-32-32V128c0-17.67 14.33-32 32-32h256c17.67 0 32 14.33 32 32v128c0 17.67-14.33 32-32 32H128zm272 112c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaBusinessTime (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 224c-79.59 0-144 64.41-144 144s64.41 144 144 144 144-64.41 144-144-64.41-144-144-144zm64 150.29c0 5.34-4.37 9.71-9.71 9.71h-60.57c-5.34 0-9.71-4.37-9.71-9.71v-76.57c0-5.34 4.37-9.71 9.71-9.71h12.57c5.34 0 9.71 4.37 9.71 9.71V352h38.29c5.34 0 9.71 4.37 9.71 9.71v12.58zM496 192c5.4 0 10.72.33 16 .81V144c0-25.6-22.4-48-48-48h-80V48c0-25.6-22.4-48-48-48H176c-25.6 0-48 22.4-48 48v48H48c-25.6 0-48 22.4-48 48v80h395.12c28.6-20.09 63.35-32 100.88-32zM320 96H192V64h128v32zm6.82 224H208c-8.84 0-16-7.16-16-16v-48H0v144c0 25.6 22.4 48 48 48h291.43C327.1 423.96 320 396.82 320 368c0-16.66 2.48-32.72 6.82-48z\"},\"child\":[]}]})(props);\n};\nexport function FaCalculator (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 0H48C22.4 0 0 22.4 0 48v416c0 25.6 22.4 48 48 48h352c25.6 0 48-22.4 48-48V48c0-25.6-22.4-48-48-48zM128 435.2c0 6.4-6.4 12.8-12.8 12.8H76.8c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm0-128c0 6.4-6.4 12.8-12.8 12.8H76.8c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm128 128c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm0-128c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm128 128c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8V268.8c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v166.4zm0-256c0 6.4-6.4 12.8-12.8 12.8H76.8c-6.4 0-12.8-6.4-12.8-12.8V76.8C64 70.4 70.4 64 76.8 64h294.4c6.4 0 12.8 6.4 12.8 12.8v102.4z\"},\"child\":[]}]})(props);\n};\nexport function FaCalendarAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V192H0v272zm320-196c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zM192 268c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zM64 268c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zM400 64h-48V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H160V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H48C21.5 64 0 85.5 0 112v48h448v-48c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaCalendarCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 160H12c-6.627 0-12-5.373-12-12v-36c0-26.51 21.49-48 48-48h48V12c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v52h128V12c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v52h48c26.51 0 48 21.49 48 48v36c0 6.627-5.373 12-12 12zM12 192h424c6.627 0 12 5.373 12 12v260c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V204c0-6.627 5.373-12 12-12zm333.296 95.947l-28.169-28.398c-4.667-4.705-12.265-4.736-16.97-.068L194.12 364.665l-45.98-46.352c-4.667-4.705-12.266-4.736-16.971-.068l-28.397 28.17c-4.705 4.667-4.736 12.265-.068 16.97l82.601 83.269c4.667 4.705 12.265 4.736 16.97.068l142.953-141.805c4.705-4.667 4.736-12.265.068-16.97z\"},\"child\":[]}]})(props);\n};\nexport function FaCalendarDay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V192H0v272zm64-192c0-8.8 7.2-16 16-16h96c8.8 0 16 7.2 16 16v96c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-96zM400 64h-48V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H160V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H48C21.5 64 0 85.5 0 112v48h448v-48c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaCalendarMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 160H12c-6.6 0-12-5.4-12-12v-36c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48v36c0 6.6-5.4 12-12 12zM12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm304 192c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12H132c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h184z\"},\"child\":[]}]})(props);\n};\nexport function FaCalendarPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 160H12c-6.6 0-12-5.4-12-12v-36c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48v36c0 6.6-5.4 12-12 12zM12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm316 140c0-6.6-5.4-12-12-12h-60v-60c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v60h-60c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h60v60c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-60h60c6.6 0 12-5.4 12-12v-40z\"},\"child\":[]}]})(props);\n};\nexport function FaCalendarTimes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 160H12c-6.6 0-12-5.4-12-12v-36c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48v36c0 6.6-5.4 12-12 12zM12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm257.3 160l48.1-48.1c4.7-4.7 4.7-12.3 0-17l-28.3-28.3c-4.7-4.7-12.3-4.7-17 0L224 306.7l-48.1-48.1c-4.7-4.7-12.3-4.7-17 0l-28.3 28.3c-4.7 4.7-4.7 12.3 0 17l48.1 48.1-48.1 48.1c-4.7 4.7-4.7 12.3 0 17l28.3 28.3c4.7 4.7 12.3 4.7 17 0l48.1-48.1 48.1 48.1c4.7 4.7 12.3 4.7 17 0l28.3-28.3c4.7-4.7 4.7-12.3 0-17L269.3 352z\"},\"child\":[]}]})(props);\n};\nexport function FaCalendarWeek (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V192H0v272zm64-192c0-8.8 7.2-16 16-16h288c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-64zM400 64h-48V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H160V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H48C21.5 64 0 85.5 0 112v48h448v-48c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaCalendar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm436-44v-36c0-26.5-21.5-48-48-48h-48V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H160V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H48C21.5 64 0 85.5 0 112v36c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaCameraRetro (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 32C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48zm0 32h106c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H38c-3.3 0-6-2.7-6-6V80c0-8.8 7.2-16 16-16zm426 96H38c-3.3 0-6-2.7-6-6v-36c0-3.3 2.7-6 6-6h138l30.2-45.3c1.1-1.7 3-2.7 5-2.7H464c8.8 0 16 7.2 16 16v74c0 3.3-2.7 6-6 6zM256 424c-66.2 0-120-53.8-120-120s53.8-120 120-120 120 53.8 120 120-53.8 120-120 120zm0-208c-48.5 0-88 39.5-88 88s39.5 88 88 88 88-39.5 88-88-39.5-88-88-88zm-48 104c-8.8 0-16-7.2-16-16 0-35.3 28.7-64 64-64 8.8 0 16 7.2 16 16s-7.2 16-16 16c-17.6 0-32 14.4-32 32 0 8.8-7.2 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaCamera (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 144v288c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48h88l12.3-32.9c7-18.7 24.9-31.1 44.9-31.1h125.5c20 0 37.9 12.4 44.9 31.1L376 96h88c26.5 0 48 21.5 48 48zM376 288c0-66.2-53.8-120-120-120s-120 53.8-120 120 53.8 120 120 120 120-53.8 120-120zm-32 0c0 48.5-39.5 88-88 88s-88-39.5-88-88 39.5-88 88-88 88 39.5 88 88z\"},\"child\":[]}]})(props);\n};\nexport function FaCampground (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 448h-24.68L359.54 117.75l53.41-73.55c5.19-7.15 3.61-17.16-3.54-22.35l-25.9-18.79c-7.15-5.19-17.15-3.61-22.35 3.55L320 63.3 278.83 6.6c-5.19-7.15-15.2-8.74-22.35-3.55l-25.88 18.8c-7.15 5.19-8.74 15.2-3.54 22.35l53.41 73.55L40.68 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM320 288l116.36 160H203.64L320 288z\"},\"child\":[]}]})(props);\n};\nexport function FaCandyCane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M497.5 92C469.6 33.1 411.8 0 352.4 0c-27.9 0-56.2 7.3-81.8 22.6L243.1 39c-15.2 9.1-20.1 28.7-11 43.9l32.8 54.9c6 10 16.6 15.6 27.5 15.6 5.6 0 11.2-1.5 16.4-4.5l27.5-16.4c5.1-3.1 10.8-4.5 16.4-4.5 10.9 0 21.5 5.6 27.5 15.6 9.1 15.1 4.1 34.8-11 43.9L15.6 397.6c-15.2 9.1-20.1 28.7-11 43.9l32.8 54.9c6 10 16.6 15.6 27.5 15.6 5.6 0 11.2-1.5 16.4-4.5L428.6 301c71.7-42.9 104.6-133.5 68.9-209zm-177.7 13l-2.5 1.5L296.8 45c9.7-4.7 19.8-8.1 30.3-10.2l20.6 61.8c-9.8.8-19.4 3.3-27.9 8.4zM145.9 431.8l-60.5-38.5 30.8-18.3 60.5 38.5-30.8 18.3zm107.5-63.9l-60.5-38.5 30.8-18.3 60.5 38.5-30.8 18.3zM364.3 302l-60.5-38.5 30.8-18.3 60.5 38.5-30.8 18.3zm20.4-197.3l46-46c8.4 6.5 16 14.1 22.6 22.6L407.6 127c-5.7-9.3-13.7-16.9-22.9-22.3zm82.1 107.8l-59.5-19.8c3.2-5.3 5.8-10.9 7.4-17.1 1.1-4.5 1.7-9.1 1.8-13.6l60.4 20.1c-2.1 10.4-5.5 20.6-10.1 30.4z\"},\"child\":[]}]})(props);\n};\nexport function FaCannabis (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M503.47 360.25c-1.56-.82-32.39-16.89-76.78-25.81 64.25-75.12 84.05-161.67 84.93-165.64 1.18-5.33-.44-10.9-4.3-14.77-3.03-3.04-7.12-4.7-11.32-4.7-1.14 0-2.29.12-3.44.38-3.88.85-86.54 19.59-160.58 79.76.01-1.46.01-2.93.01-4.4 0-118.79-59.98-213.72-62.53-217.7A15.973 15.973 0 0 0 256 0c-5.45 0-10.53 2.78-13.47 7.37-2.55 3.98-62.53 98.91-62.53 217.7 0 1.47.01 2.94.01 4.4-74.03-60.16-156.69-78.9-160.58-79.76-1.14-.25-2.29-.38-3.44-.38-4.2 0-8.29 1.66-11.32 4.7A15.986 15.986 0 0 0 .38 168.8c.88 3.97 20.68 90.52 84.93 165.64-44.39 8.92-75.21 24.99-76.78 25.81a16.003 16.003 0 0 0-.02 28.29c2.45 1.29 60.76 31.72 133.49 31.72 6.14 0 11.96-.1 17.5-.31-11.37 22.23-16.52 38.31-16.81 39.22-1.8 5.68-.29 11.89 3.91 16.11a16.019 16.019 0 0 0 16.1 3.99c1.83-.57 37.72-11.99 77.3-39.29V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-64.01c39.58 27.3 75.47 38.71 77.3 39.29a16.019 16.019 0 0 0 16.1-3.99c4.2-4.22 5.71-10.43 3.91-16.11-.29-.91-5.45-16.99-16.81-39.22 5.54.21 11.37.31 17.5.31 72.72 0 131.04-30.43 133.49-31.72 5.24-2.78 8.52-8.22 8.51-14.15-.01-5.94-3.29-11.39-8.53-14.15z\"},\"child\":[]}]})(props);\n};\nexport function FaCapsules (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M555.3 300.1L424.2 112.8C401.9 81 366.4 64 330.4 64c-22.6 0-45.5 6.7-65.5 20.7-19.7 13.8-33.7 32.8-41.5 53.8C220.5 79.2 172 32 112 32 50.1 32 0 82.1 0 144v224c0 61.9 50.1 112 112 112s112-50.1 112-112V218.9c3.3 8.6 7.3 17.1 12.8 25L368 431.2c22.2 31.8 57.7 48.8 93.8 48.8 22.7 0 45.5-6.7 65.5-20.7 51.7-36.2 64.2-107.5 28-159.2zM160 256H64V144c0-26.5 21.5-48 48-48s48 21.5 48 48v112zm194.8 44.9l-65.6-93.7c-7.7-11-10.7-24.4-8.3-37.6 2.3-13.2 9.7-24.8 20.7-32.5 8.5-6 18.5-9.1 28.8-9.1 16.5 0 31.9 8 41.3 21.5l65.6 93.7-82.5 57.7z\"},\"child\":[]}]})(props);\n};\nexport function FaCarAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M438.66 212.33l-11.24-28.1-19.93-49.83C390.38 91.63 349.57 64 303.5 64h-127c-46.06 0-86.88 27.63-103.99 70.4l-19.93 49.83-11.24 28.1C17.22 221.5 0 244.66 0 272v48c0 16.12 6.16 30.67 16 41.93V416c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h256v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-54.07c9.84-11.25 16-25.8 16-41.93v-48c0-27.34-17.22-50.5-41.34-59.67zm-306.73-54.16c7.29-18.22 24.94-30.17 44.57-30.17h127c19.63 0 37.28 11.95 44.57 30.17L368 208H112l19.93-49.83zM80 319.8c-19.2 0-32-12.76-32-31.9S60.8 256 80 256s48 28.71 48 47.85-28.8 15.95-48 15.95zm320 0c-19.2 0-48 3.19-48-15.95S380.8 256 400 256s32 12.76 32 31.9-12.8 31.9-32 31.9z\"},\"child\":[]}]})(props);\n};\nexport function FaCarBattery (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 128h-32V80c0-8.84-7.16-16-16-16h-96c-8.84 0-16 7.16-16 16v48H192V80c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v48H32c-17.67 0-32 14.33-32 32v256c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32zM192 264c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16zm256 0c0 4.42-3.58 8-8 8h-40v40c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-40h-40c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h40v-40c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v40h40c4.42 0 8 3.58 8 8v16z\"},\"child\":[]}]})(props);\n};\nexport function FaCarCrash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M143.25 220.81l-12.42 46.37c-3.01 11.25-3.63 22.89-2.41 34.39l-35.2 28.98c-6.57 5.41-16.31-.43-14.62-8.77l15.44-76.68c1.06-5.26-2.66-10.28-8-10.79l-77.86-7.55c-8.47-.82-11.23-11.83-4.14-16.54l65.15-43.3c4.46-2.97 5.38-9.15 1.98-13.29L21.46 93.22c-5.41-6.57.43-16.3 8.78-14.62l76.68 15.44c5.26 1.06 10.28-2.66 10.8-8l7.55-77.86c.82-8.48 11.83-11.23 16.55-4.14l43.3 65.14c2.97 4.46 9.15 5.38 13.29 1.98l60.4-49.71c6.57-5.41 16.3.43 14.62 8.77L262.1 86.38c-2.71 3.05-5.43 6.09-7.91 9.4l-32.15 42.97-10.71 14.32c-32.73 8.76-59.18 34.53-68.08 67.74zm494.57 132.51l-12.42 46.36c-3.13 11.68-9.38 21.61-17.55 29.36a66.876 66.876 0 0 1-8.76 7l-13.99 52.23c-1.14 4.27-3.1 8.1-5.65 11.38-7.67 9.84-20.74 14.68-33.54 11.25L515 502.62c-17.07-4.57-27.2-22.12-22.63-39.19l8.28-30.91-247.28-66.26-8.28 30.91c-4.57 17.07-22.12 27.2-39.19 22.63l-30.91-8.28c-12.8-3.43-21.7-14.16-23.42-26.51-.57-4.12-.35-8.42.79-12.68l13.99-52.23a66.62 66.62 0 0 1-4.09-10.45c-3.2-10.79-3.65-22.52-.52-34.2l12.42-46.37c5.31-19.8 19.36-34.83 36.89-42.21a64.336 64.336 0 0 1 18.49-4.72l18.13-24.23 32.15-42.97c3.45-4.61 7.19-8.9 11.2-12.84 8-7.89 17.03-14.44 26.74-19.51 4.86-2.54 9.89-4.71 15.05-6.49 10.33-3.58 21.19-5.63 32.24-6.04 11.05-.41 22.31.82 33.43 3.8l122.68 32.87c11.12 2.98 21.48 7.54 30.85 13.43a111.11 111.11 0 0 1 34.69 34.5c8.82 13.88 14.64 29.84 16.68 46.99l6.36 53.29 3.59 30.05a64.49 64.49 0 0 1 22.74 29.93c4.39 11.88 5.29 25.19 1.75 38.39zM255.58 234.34c-18.55-4.97-34.21 4.04-39.17 22.53-4.96 18.49 4.11 34.12 22.65 39.09 18.55 4.97 45.54 15.51 50.49-2.98 4.96-18.49-15.43-53.67-33.97-58.64zm290.61 28.17l-6.36-53.29c-.58-4.87-1.89-9.53-3.82-13.86-5.8-12.99-17.2-23.01-31.42-26.82l-122.68-32.87a48.008 48.008 0 0 0-50.86 17.61l-32.15 42.97 172 46.08 75.29 20.18zm18.49 54.65c-18.55-4.97-53.8 15.31-58.75 33.79-4.95 18.49 23.69 22.86 42.24 27.83 18.55 4.97 34.21-4.04 39.17-22.53 4.95-18.48-4.11-34.12-22.66-39.09z\"},\"child\":[]}]})(props);\n};\nexport function FaCarSide (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 192h-16L419.22 56.02A64.025 64.025 0 0 0 369.24 32H155.33c-26.17 0-49.7 15.93-59.42 40.23L48 194.26C20.44 201.4 0 226.21 0 256v112c0 8.84 7.16 16 16 16h48c0 53.02 42.98 96 96 96s96-42.98 96-96h128c0 53.02 42.98 96 96 96s96-42.98 96-96h48c8.84 0 16-7.16 16-16v-80c0-53.02-42.98-96-96-96zM160 432c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48zm72-240H116.93l38.4-96H232v96zm48 0V96h89.24l76.8 96H280zm200 240c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaCar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M499.99 176h-59.87l-16.64-41.6C406.38 91.63 365.57 64 319.5 64h-127c-46.06 0-86.88 27.63-103.99 70.4L71.87 176H12.01C4.2 176-1.53 183.34.37 190.91l6 24C7.7 220.25 12.5 224 18.01 224h20.07C24.65 235.73 16 252.78 16 272v48c0 16.12 6.16 30.67 16 41.93V416c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h256v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-54.07c9.84-11.25 16-25.8 16-41.93v-48c0-19.22-8.65-36.27-22.07-48H494c5.51 0 10.31-3.75 11.64-9.09l6-24c1.89-7.57-3.84-14.91-11.65-14.91zm-352.06-17.83c7.29-18.22 24.94-30.17 44.57-30.17h127c19.63 0 37.28 11.95 44.57 30.17L384 208H128l19.93-49.83zM96 319.8c-19.2 0-32-12.76-32-31.9S76.8 256 96 256s48 28.71 48 47.85-28.8 15.95-48 15.95zm320 0c-19.2 0-48 3.19-48-15.95S396.8 256 416 256s32 12.76 32 31.9-12.8 31.9-32 31.9z\"},\"child\":[]}]})(props);\n};\nexport function FaCaravan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416,208a16,16,0,1,0,16,16A16,16,0,0,0,416,208ZM624,320H576V160A160,160,0,0,0,416,0H64A64,64,0,0,0,0,64V320a64,64,0,0,0,64,64H96a96,96,0,0,0,192,0H624a16,16,0,0,0,16-16V336A16,16,0,0,0,624,320ZM192,432a48,48,0,1,1,48-48A48.05,48.05,0,0,1,192,432Zm64-240a32,32,0,0,1-32,32H96a32,32,0,0,1-32-32V128A32,32,0,0,1,96,96H224a32,32,0,0,1,32,32ZM448,320H320V128a32,32,0,0,1,32-32h64a32,32,0,0,1,32,32Z\"},\"child\":[]}]})(props);\n};\nexport function FaCaretDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z\"},\"child\":[]}]})(props);\n};\nexport function FaCaretLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 192 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 127.338v257.324c0 17.818-21.543 26.741-34.142 14.142L29.196 270.142c-7.81-7.81-7.81-20.474 0-28.284l128.662-128.662c12.599-12.6 34.142-3.676 34.142 14.142z\"},\"child\":[]}]})(props);\n};\nexport function FaCaretRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 192 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 384.662V127.338c0-17.818 21.543-26.741 34.142-14.142l128.662 128.662c7.81 7.81 7.81 20.474 0 28.284L34.142 398.804C21.543 411.404 0 402.48 0 384.662z\"},\"child\":[]}]})(props);\n};\nexport function FaCaretSquareDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM92.5 220.5l123 123c4.7 4.7 12.3 4.7 17 0l123-123c7.6-7.6 2.2-20.5-8.5-20.5H101c-10.7 0-16.1 12.9-8.5 20.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCaretSquareLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 480H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48zM259.515 124.485l-123.03 123.03c-4.686 4.686-4.686 12.284 0 16.971l123.029 123.029c7.56 7.56 20.485 2.206 20.485-8.485V132.971c.001-10.691-12.925-16.045-20.484-8.486z\"},\"child\":[]}]})(props);\n};\nexport function FaCaretSquareRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 32h352c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48zm140.485 355.515l123.029-123.029c4.686-4.686 4.686-12.284 0-16.971l-123.029-123.03c-7.56-7.56-20.485-2.206-20.485 8.485v246.059c0 10.691 12.926 16.045 20.485 8.486z\"},\"child\":[]}]})(props);\n};\nexport function FaCaretSquareUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 432V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48zm355.515-140.485l-123.03-123.03c-4.686-4.686-12.284-4.686-16.971 0L92.485 291.515c-7.56 7.56-2.206 20.485 8.485 20.485h246.059c10.691 0 16.045-12.926 8.486-20.485z\"},\"child\":[]}]})(props);\n};\nexport function FaCaretUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288.662 352H31.338c-17.818 0-26.741-21.543-14.142-34.142l128.662-128.662c7.81-7.81 20.474-7.81 28.284 0l128.662 128.662c12.6 12.599 3.676 34.142-14.142 34.142z\"},\"child\":[]}]})(props);\n};\nexport function FaCarrot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M298.2 156.6c-52.7-25.7-114.5-10.5-150.2 32.8l55.2 55.2c6.3 6.3 6.3 16.4 0 22.6-3.1 3.1-7.2 4.7-11.3 4.7s-8.2-1.6-11.3-4.7L130.4 217 2.3 479.7c-2.9 6-3.1 13.3 0 19.7 5.4 11.1 18.9 15.7 30 10.3l133.6-65.2-49.2-49.2c-6.3-6.2-6.3-16.4 0-22.6 6.3-6.2 16.4-6.2 22.6 0l57 57 102-49.8c24-11.7 44.5-31.3 57.1-57.1 30.1-61.7 4.5-136.1-57.2-166.2zm92.1-34.9C409.8 81 399.7 32.9 360 0c-50.3 41.7-52.5 107.5-7.9 151.9l8 8c44.4 44.6 110.3 42.4 151.9-7.9-32.9-39.7-81-49.8-121.7-30.3z\"},\"child\":[]}]})(props);\n};\nexport function FaCartArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504.717 320H211.572l6.545 32h268.418c15.401 0 26.816 14.301 23.403 29.319l-5.517 24.276C523.112 414.668 536 433.828 536 456c0 31.202-25.519 56.444-56.824 55.994-29.823-.429-54.35-24.631-55.155-54.447-.44-16.287 6.085-31.049 16.803-41.548H231.176C241.553 426.165 248 440.326 248 456c0 31.813-26.528 57.431-58.67 55.938-28.54-1.325-51.751-24.385-53.251-52.917-1.158-22.034 10.436-41.455 28.051-51.586L93.883 64H24C10.745 64 0 53.255 0 40V24C0 10.745 10.745 0 24 0h102.529c11.401 0 21.228 8.021 23.513 19.19L159.208 64H551.99c15.401 0 26.816 14.301 23.403 29.319l-47.273 208C525.637 312.246 515.923 320 504.717 320zM403.029 192H360v-60c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v60h-43.029c-10.691 0-16.045 12.926-8.485 20.485l67.029 67.029c4.686 4.686 12.284 4.686 16.971 0l67.029-67.029c7.559-7.559 2.205-20.485-8.486-20.485z\"},\"child\":[]}]})(props);\n};\nexport function FaCartPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504.717 320H211.572l6.545 32h268.418c15.401 0 26.816 14.301 23.403 29.319l-5.517 24.276C523.112 414.668 536 433.828 536 456c0 31.202-25.519 56.444-56.824 55.994-29.823-.429-54.35-24.631-55.155-54.447-.44-16.287 6.085-31.049 16.803-41.548H231.176C241.553 426.165 248 440.326 248 456c0 31.813-26.528 57.431-58.67 55.938-28.54-1.325-51.751-24.385-53.251-52.917-1.158-22.034 10.436-41.455 28.051-51.586L93.883 64H24C10.745 64 0 53.255 0 40V24C0 10.745 10.745 0 24 0h102.529c11.401 0 21.228 8.021 23.513 19.19L159.208 64H551.99c15.401 0 26.816 14.301 23.403 29.319l-47.273 208C525.637 312.246 515.923 320 504.717 320zM408 168h-48v-40c0-8.837-7.163-16-16-16h-16c-8.837 0-16 7.163-16 16v40h-48c-8.837 0-16 7.163-16 16v16c0 8.837 7.163 16 16 16h48v40c0 8.837 7.163 16 16 16h16c8.837 0 16-7.163 16-16v-40h48c8.837 0 16-7.163 16-16v-16c0-8.837-7.163-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaCashRegister (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M511.1 378.8l-26.7-160c-2.6-15.4-15.9-26.7-31.6-26.7H208v-64h96c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h96v64H59.1c-15.6 0-29 11.3-31.6 26.7L.8 378.7c-.6 3.5-.9 7-.9 10.5V480c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32v-90.7c.1-3.5-.2-7-.8-10.5zM280 248c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16zm-32 64h16c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16zm-32-80c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h16zM80 80V48h192v32H80zm40 200h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16zm16 64v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16zm216 112c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h176c4.4 0 8 3.6 8 8v16zm24-112c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16zm48-80c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16z\"},\"child\":[]}]})(props);\n};\nexport function FaCat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M290.59 192c-20.18 0-106.82 1.98-162.59 85.95V192c0-52.94-43.06-96-96-96-17.67 0-32 14.33-32 32s14.33 32 32 32c17.64 0 32 14.36 32 32v256c0 35.3 28.7 64 64 64h176c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-32l128-96v144c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V289.86c-10.29 2.67-20.89 4.54-32 4.54-61.81 0-113.52-44.05-125.41-102.4zM448 96h-64l-64-64v134.4c0 53.02 42.98 96 96 96s96-42.98 96-96V32l-64 64zm-72 80c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm80 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaCertificate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M458.622 255.92l45.985-45.005c13.708-12.977 7.316-36.039-10.664-40.339l-62.65-15.99 17.661-62.015c4.991-17.838-11.829-34.663-29.661-29.671l-61.994 17.667-15.984-62.671C337.085.197 313.765-6.276 300.99 7.228L256 53.57 211.011 7.229c-12.63-13.351-36.047-7.234-40.325 10.668l-15.984 62.671-61.995-17.667C74.87 57.907 58.056 74.738 63.046 92.572l17.661 62.015-62.65 15.99C.069 174.878-6.31 197.944 7.392 210.915l45.985 45.005-45.985 45.004c-13.708 12.977-7.316 36.039 10.664 40.339l62.65 15.99-17.661 62.015c-4.991 17.838 11.829 34.663 29.661 29.671l61.994-17.667 15.984 62.671c4.439 18.575 27.696 24.018 40.325 10.668L256 458.61l44.989 46.001c12.5 13.488 35.987 7.486 40.325-10.668l15.984-62.671 61.994 17.667c17.836 4.994 34.651-11.837 29.661-29.671l-17.661-62.015 62.65-15.99c17.987-4.302 24.366-27.367 10.664-40.339l-45.984-45.004z\"},\"child\":[]}]})(props);\n};\nexport function FaChair (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M112 128c0-29.5 16.2-55 40-68.9V256h48V48h48v208h48V59.1c23.8 13.9 40 39.4 40 68.9v128h48V128C384 57.3 326.7 0 256 0h-64C121.3 0 64 57.3 64 128v128h48zm334.3 213.9l-10.7-32c-4.4-13.1-16.6-21.9-30.4-21.9H42.7c-13.8 0-26 8.8-30.4 21.9l-10.7 32C-5.2 362.6 10.2 384 32 384v112c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V384h256v112c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V384c21.8 0 37.2-21.4 30.3-42.1z\"},\"child\":[]}]})(props);\n};\nexport function FaChalkboardTeacher (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 352c-2.39 0-4.78.35-7.06 1.09C187.98 357.3 174.35 360 160 360c-14.35 0-27.98-2.7-40.95-6.91-2.28-.74-4.66-1.09-7.05-1.09C49.94 352-.33 402.48 0 464.62.14 490.88 21.73 512 48 512h224c26.27 0 47.86-21.12 48-47.38.33-62.14-49.94-112.62-112-112.62zm-48-32c53.02 0 96-42.98 96-96s-42.98-96-96-96-96 42.98-96 96 42.98 96 96 96zM592 0H208c-26.47 0-48 22.25-48 49.59V96c23.42 0 45.1 6.78 64 17.8V64h352v288h-64v-64H384v64h-76.24c19.1 16.69 33.12 38.73 39.69 64H592c26.47 0 48-22.25 48-49.59V49.59C640 22.25 618.47 0 592 0z\"},\"child\":[]}]})(props);\n};\nexport function FaChalkboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 64h448v352h64V40c0-22.06-17.94-40-40-40H72C49.94 0 32 17.94 32 40v376h64V64zm528 384H480v-64H288v64H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaChargingStation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h320c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm208-320V80c0-8.84-7.16-16-16-16s-16 7.16-16 16v48h-32V80c0-8.84-7.16-16-16-16s-16 7.16-16 16v48h-16c-8.84 0-16 7.16-16 16v32c0 35.76 23.62 65.69 56 75.93v118.49c0 13.95-9.5 26.92-23.26 29.19C431.22 402.5 416 388.99 416 372v-28c0-48.6-39.4-88-88-88h-8V64c0-35.35-28.65-64-64-64H96C60.65 0 32 28.65 32 64v352h288V304h8c22.09 0 40 17.91 40 40v24.61c0 39.67 28.92 75.16 68.41 79.01C481.71 452.05 520 416.41 520 372V251.93c32.38-10.24 56-40.17 56-75.93v-32c0-8.84-7.16-16-16-16h-16zm-283.91 47.76l-93.7 139c-2.2 3.33-6.21 5.24-10.39 5.24-7.67 0-13.47-6.28-11.67-12.92L167.35 224H108c-7.25 0-12.85-5.59-11.89-11.89l16-107C112.9 99.9 117.98 96 124 96h68c7.88 0 13.62 6.54 11.6 13.21L192 160h57.7c9.24 0 15.01 8.78 10.39 15.76z\"},\"child\":[]}]})(props);\n};\nexport function FaChartArea (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M500 384c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v308h436zM372.7 159.5L288 216l-85.3-113.7c-5.1-6.8-15.5-6.3-19.9 1L96 248v104h384l-89.9-187.8c-3.2-6.5-11.4-8.7-17.4-4.7z\"},\"child\":[]}]})(props);\n};\nexport function FaChartBar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M332.8 320h38.4c6.4 0 12.8-6.4 12.8-12.8V172.8c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h38.4c6.4 0 12.8-6.4 12.8-12.8V76.8c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-288 0h38.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h38.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zM496 384H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaChartLine (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 384H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM464 96H345.94c-21.38 0-32.09 25.85-16.97 40.97l32.4 32.4L288 242.75l-73.37-73.37c-12.5-12.5-32.76-12.5-45.25 0l-68.69 68.69c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L192 237.25l73.37 73.37c12.5 12.5 32.76 12.5 45.25 0l96-96 32.4 32.4c15.12 15.12 40.97 4.41 40.97-16.97V112c.01-8.84-7.15-16-15.99-16z\"},\"child\":[]}]})(props);\n};\nexport function FaChartPie (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 544 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M527.79 288H290.5l158.03 158.03c6.04 6.04 15.98 6.53 22.19.68 38.7-36.46 65.32-85.61 73.13-140.86 1.34-9.46-6.51-17.85-16.06-17.85zm-15.83-64.8C503.72 103.74 408.26 8.28 288.8.04 279.68-.59 272 7.1 272 16.24V240h223.77c9.14 0 16.82-7.68 16.19-16.8zM224 288V50.71c0-9.55-8.39-17.4-17.84-16.06C86.99 51.49-4.1 155.6.14 280.37 4.5 408.51 114.83 513.59 243.03 511.98c50.4-.63 96.97-16.87 135.26-44.03 7.9-5.6 8.42-17.23 1.57-24.08L224 288z\"},\"child\":[]}]})(props);\n};\nexport function FaCheckCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z\"},\"child\":[]}]})(props);\n};\nexport function FaCheckDouble (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M505 174.8l-39.6-39.6c-9.4-9.4-24.6-9.4-33.9 0L192 374.7 80.6 263.2c-9.4-9.4-24.6-9.4-33.9 0L7 302.9c-9.4 9.4-9.4 24.6 0 34L175 505c9.4 9.4 24.6 9.4 33.9 0l296-296.2c9.4-9.5 9.4-24.7.1-34zm-324.3 106c6.2 6.3 16.4 6.3 22.6 0l208-208.2c6.2-6.3 6.2-16.4 0-22.6L366.1 4.7c-6.2-6.3-16.4-6.3-22.6 0L192 156.2l-55.4-55.5c-6.2-6.3-16.4-6.3-22.6 0L68.7 146c-6.2 6.3-6.2 16.4 0 22.6l112 112.2z\"},\"child\":[]}]})(props);\n};\nexport function FaCheckSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 480H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48zm-204.686-98.059l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.248-16.379-6.249-22.628 0L184 302.745l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.25 16.379 6.25 22.628.001z\"},\"child\":[]}]})(props);\n};\nexport function FaCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z\"},\"child\":[]}]})(props);\n};\nexport function FaCheese (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 288v160a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V288zM299.83 32a32 32 0 0 0-21.13 7L0 256h512c0-119.89-94-217.8-212.17-224z\"},\"child\":[]}]})(props);\n};\nexport function FaChessBishop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 287.88c0 51.64 22.14 73.83 56 84.6V416h192v-43.52c33.86-10.77 56-33 56-84.6 0-30.61-10.73-67.1-26.69-102.56L185 285.65a8 8 0 0 1-11.31 0l-11.31-11.31a8 8 0 0 1 0-11.31L270.27 155.1c-20.8-37.91-46.47-72.1-70.87-92.59C213.4 59.09 224 47.05 224 32a32 32 0 0 0-32-32h-64a32 32 0 0 0-32 32c0 15 10.6 27.09 24.6 30.51C67.81 106.8 8 214.5 8 287.88zM304 448H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaChessBoard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M255.9.2h-64v64h64zM0 64.17v64h64v-64zM128 .2H64v64h64zm64 255.9v64h64v-64zM0 192.12v64h64v-64zM383.85.2h-64v64h64zm128 0h-64v64h64zM128 256.1H64v64h64zM511.8 448v-64h-64v64zm0-128v-64h-64v64zM383.85 512h64v-64h-64zm128-319.88v-64h-64v64zM128 512h64v-64h-64zM0 512h64v-64H0zm255.9 0h64v-64h-64zM0 320.07v64h64v-64zm319.88-191.92v-64h-64v64zm-64 128h64v-64h-64zm-64 128v64h64v-64zm128-64h64v-64h-64zm0-127.95h64v-64h-64zm0 191.93v64h64v-64zM64 384.05v64h64v-64zm128-255.9v-64h-64v64zm191.92 255.9h64v-64h-64zm-128-191.93v-64h-64v64zm128-127.95v64h64v-64zm-128 255.9v64h64v-64zm-64-127.95H128v64h64zm191.92 64h64v-64h-64zM128 128.15H64v64h64zm0 191.92v64h64v-64z\"},\"child\":[]}]})(props);\n};\nexport function FaChessKing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 448H48a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm16-288H256v-48h40a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8h-40V8a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v40h-40a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8h40v48H32a32 32 0 0 0-30.52 41.54L74.56 416h298.88l73.08-214.46A32 32 0 0 0 416 160z\"},\"child\":[]}]})(props);\n};\nexport function FaChessKnight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M19 272.47l40.63 18.06a32 32 0 0 0 24.88.47l12.78-5.12a32 32 0 0 0 18.76-20.5l9.22-30.65a24 24 0 0 1 12.55-15.65L159.94 208v50.33a48 48 0 0 1-26.53 42.94l-57.22 28.65A80 80 0 0 0 32 401.48V416h319.86V224c0-106-85.92-192-191.92-192H12A12 12 0 0 0 0 44a16.9 16.9 0 0 0 1.79 7.58L16 80l-9 9a24 24 0 0 0-7 17v137.21a32 32 0 0 0 19 29.26zM52 128a20 20 0 1 1-20 20 20 20 0 0 1 20-20zm316 320H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaChessPawn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M105.1 224H80a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h16v5.49c0 44-4.14 86.6-24 122.51h176c-19.89-35.91-24-78.51-24-122.51V288h16a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-25.1c29.39-18.38 49.1-50.78 49.1-88a104 104 0 0 0-208 0c0 37.22 19.71 69.62 49.1 88zM304 448H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaChessQueen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 112a56 56 0 1 0-56-56 56 56 0 0 0 56 56zm176 336H80a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm72.87-263.84l-28.51-15.92c-7.44-5-16.91-2.46-22.29 4.68a47.59 47.59 0 0 1-47.23 18.23C383.7 186.86 368 164.93 368 141.4a13.4 13.4 0 0 0-13.4-13.4h-38.77c-6 0-11.61 4-12.86 9.91a48 48 0 0 1-93.94 0c-1.25-5.92-6.82-9.91-12.86-9.91H157.4a13.4 13.4 0 0 0-13.4 13.4c0 25.69-19 48.75-44.67 50.49a47.5 47.5 0 0 1-41.54-19.15c-5.28-7.09-14.73-9.45-22.09-4.54l-28.57 16a16 16 0 0 0-5.44 20.47L104.24 416h303.52l102.55-211.37a16 16 0 0 0-5.44-20.47z\"},\"child\":[]}]})(props);\n};\nexport function FaChessRook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 32h-56a16 16 0 0 0-16 16v48h-48V48a16 16 0 0 0-16-16h-80a16 16 0 0 0-16 16v48H88.1V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48v176l64 32c0 48.33-1.54 95-13.21 160h282.42C321.54 351 320 303.72 320 256l64-32V48a16 16 0 0 0-16-16zM224 320h-64v-64a32 32 0 0 1 64 0zm144 128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaChess (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M74 208H64a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h15.94A535.78 535.78 0 0 1 64 384h128a535.78 535.78 0 0 1-15.94-128H192a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-10l33.89-90.38a16 16 0 0 0-15-21.62H144V64h24a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8h-24V8a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v24H88a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v32H55.09a16 16 0 0 0-15 21.62zm173.16 251.58L224 448v-16a16 16 0 0 0-16-16H48a16 16 0 0 0-16 16v16L8.85 459.58A16 16 0 0 0 0 473.89V496a16 16 0 0 0 16 16h224a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31zm92.77-157.78l-3.29 82.2h126.72l-3.29-82.21 24.6-20.79A32 32 0 0 0 496 256.54V198a6 6 0 0 0-6-6h-26.38a6 6 0 0 0-6 6v26h-24.71v-26a6 6 0 0 0-6-6H373.1a6 6 0 0 0-6 6v26h-24.71v-26a6 6 0 0 0-6-6H310a6 6 0 0 0-6 6v58.6a32 32 0 0 0 11.36 24.4zM384 304a16 16 0 0 1 32 0v32h-32zm119.16 155.58L480 448v-16a16 16 0 0 0-16-16H336a16 16 0 0 0-16 16v16l-23.15 11.58a16 16 0 0 0-8.85 14.31V496a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31z\"},\"child\":[]}]})(props);\n};\nexport function FaChevronCircleDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zM273 369.9l135.5-135.5c9.4-9.4 9.4-24.6 0-33.9l-17-17c-9.4-9.4-24.6-9.4-33.9 0L256 285.1 154.4 183.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L239 369.9c9.4 9.4 24.6 9.4 34 0z\"},\"child\":[]}]})(props);\n};\nexport function FaChevronCircleLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zM142.1 273l135.5 135.5c9.4 9.4 24.6 9.4 33.9 0l17-17c9.4-9.4 9.4-24.6 0-33.9L226.9 256l101.6-101.6c9.4-9.4 9.4-24.6 0-33.9l-17-17c-9.4-9.4-24.6-9.4-33.9 0L142.1 239c-9.4 9.4-9.4 24.6 0 34z\"},\"child\":[]}]})(props);\n};\nexport function FaChevronCircleRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm113.9 231L234.4 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L285.1 256 183.5 357.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L369.9 273c9.4-9.4 9.4-24.6 0-34z\"},\"child\":[]}]})(props);\n};\nexport function FaChevronCircleUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 256C8 119 119 8 256 8s248 111 248 248-111 248-248 248S8 393 8 256zm231-113.9L103.5 277.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L256 226.9l101.6 101.6c9.4 9.4 24.6 9.4 33.9 0l17-17c9.4-9.4 9.4-24.6 0-33.9L273 142.1c-9.4-9.4-24.6-9.4-34 0z\"},\"child\":[]}]})(props);\n};\nexport function FaChevronDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z\"},\"child\":[]}]})(props);\n};\nexport function FaChevronLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M34.52 239.03L228.87 44.69c9.37-9.37 24.57-9.37 33.94 0l22.67 22.67c9.36 9.36 9.37 24.52.04 33.9L131.49 256l154.02 154.75c9.34 9.38 9.32 24.54-.04 33.9l-22.67 22.67c-9.37 9.37-24.57 9.37-33.94 0L34.52 272.97c-9.37-9.37-9.37-24.57 0-33.94z\"},\"child\":[]}]})(props);\n};\nexport function FaChevronRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M285.476 272.971L91.132 467.314c-9.373 9.373-24.569 9.373-33.941 0l-22.667-22.667c-9.357-9.357-9.375-24.522-.04-33.901L188.505 256 34.484 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L285.475 239.03c9.373 9.372 9.373 24.568.001 33.941z\"},\"child\":[]}]})(props);\n};\nexport function FaChevronUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z\"},\"child\":[]}]})(props);\n};\nexport function FaChild (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M120 72c0-39.765 32.235-72 72-72s72 32.235 72 72c0 39.764-32.235 72-72 72s-72-32.236-72-72zm254.627 1.373c-12.496-12.497-32.758-12.497-45.254 0L242.745 160H141.254L54.627 73.373c-12.496-12.497-32.758-12.497-45.254 0-12.497 12.497-12.497 32.758 0 45.255L104 213.254V480c0 17.673 14.327 32 32 32h16c17.673 0 32-14.327 32-32V368h16v112c0 17.673 14.327 32 32 32h16c17.673 0 32-14.327 32-32V213.254l94.627-94.627c12.497-12.497 12.497-32.757 0-45.254z\"},\"child\":[]}]})(props);\n};\nexport function FaChurch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464.46 246.68L352 179.2V128h48c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16h-48V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v48h-48c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h48v51.2l-112.46 67.48A31.997 31.997 0 0 0 160 274.12V512h96v-96c0-35.35 28.65-64 64-64s64 28.65 64 64v96h96V274.12c0-11.24-5.9-21.66-15.54-27.44zM0 395.96V496c0 8.84 7.16 16 16 16h112V320L19.39 366.54A32.024 32.024 0 0 0 0 395.96zm620.61-29.42L512 320v192h112c8.84 0 16-7.16 16-16V395.96c0-12.8-7.63-24.37-19.39-29.42z\"},\"child\":[]}]})(props);\n};\nexport function FaCircleNotch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 39.056v16.659c0 10.804 7.281 20.159 17.686 23.066C383.204 100.434 440 171.518 440 256c0 101.689-82.295 184-184 184-101.689 0-184-82.295-184-184 0-84.47 56.786-155.564 134.312-177.219C216.719 75.874 224 66.517 224 55.712V39.064c0-15.709-14.834-27.153-30.046-23.234C86.603 43.482 7.394 141.206 8.003 257.332c.72 137.052 111.477 246.956 248.531 246.667C393.255 503.711 504 392.788 504 256c0-115.633-79.14-212.779-186.211-240.236C302.678 11.889 288 23.456 288 39.056z\"},\"child\":[]}]})(props);\n};\nexport function FaCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z\"},\"child\":[]}]})(props);\n};\nexport function FaCity (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M616 192H480V24c0-13.26-10.74-24-24-24H312c-13.26 0-24 10.74-24 24v72h-64V16c0-8.84-7.16-16-16-16h-16c-8.84 0-16 7.16-16 16v80h-64V16c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v80H24c-13.26 0-24 10.74-24 24v360c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V216c0-13.26-10.75-24-24-24zM128 404c0 6.63-5.37 12-12 12H76c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12H76c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12H76c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm128 192c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm160 96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12V76c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm160 288c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40z\"},\"child\":[]}]})(props);\n};\nexport function FaClinicMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 115L69.47 307.71c-1.62 1.46-3.69 2.14-5.47 3.35V496a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V311.1c-1.7-1.16-3.72-1.82-5.26-3.2zm96 261a8 8 0 0 1-8 8h-56v56a8 8 0 0 1-8 8h-48a8 8 0 0 1-8-8v-56h-56a8 8 0 0 1-8-8v-48a8 8 0 0 1 8-8h56v-56a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v56h56a8 8 0 0 1 8 8zm186.69-139.72l-255.94-226a39.85 39.85 0 0 0-53.45 0l-256 226a16 16 0 0 0-1.21 22.6L25.5 282.7a16 16 0 0 0 22.6 1.21L277.42 81.63a16 16 0 0 1 21.17 0L527.91 283.9a16 16 0 0 0 22.6-1.21l21.4-23.82a16 16 0 0 0-1.22-22.59z\"},\"child\":[]}]})(props);\n};\nexport function FaClipboardCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 40c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm121.2 231.8l-143 141.8c-4.7 4.7-12.3 4.6-17-.1l-82.6-83.3c-4.7-4.7-4.6-12.3.1-17L99.1 285c4.7-4.7 12.3-4.6 17 .1l46 46.4 106-105.2c4.7-4.7 12.3-4.6 17 .1l28.2 28.4c4.7 4.8 4.6 12.3-.1 17z\"},\"child\":[]}]})(props);\n};\nexport function FaClipboardList (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM96 424c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm0-96c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm0-96c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm96-192c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm128 368c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16z\"},\"child\":[]}]})(props);\n};\nexport function FaClipboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 112v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h80c0-35.29 28.71-64 64-64s64 28.71 64 64h80c26.51 0 48 21.49 48 48zM192 40c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24m96 114v-20a6 6 0 0 0-6-6H102a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h180a6 6 0 0 0 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaClock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm92.49,313h0l-20,25a16,16,0,0,1-22.49,2.5h0l-67-49.72a40,40,0,0,1-15-31.23V112a16,16,0,0,1,16-16h32a16,16,0,0,1,16,16V256l58,42.5A16,16,0,0,1,348.49,321Z\"},\"child\":[]}]})(props);\n};\nexport function FaClone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 0c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48H176c-26.51 0-48-21.49-48-48V48c0-26.51 21.49-48 48-48h288M176 416c-44.112 0-80-35.888-80-80V128H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48v-48H176z\"},\"child\":[]}]})(props);\n};\nexport function FaClosedCaptioning (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM218.1 287.7c2.8-2.5 7.1-2.1 9.2.9l19.5 27.7c1.7 2.4 1.5 5.6-.5 7.7-53.6 56.8-172.8 32.1-172.8-67.9 0-97.3 121.7-119.5 172.5-70.1 2.1 2 2.5 3.2 1 5.7l-17.5 30.5c-1.9 3.1-6.2 4-9.1 1.7-40.8-32-94.6-14.9-94.6 31.2.1 48 51.1 70.5 92.3 32.6zm190.4 0c2.8-2.5 7.1-2.1 9.2.9l19.5 27.7c1.7 2.4 1.5 5.6-.5 7.7-53.5 56.9-172.7 32.1-172.7-67.9 0-97.3 121.7-119.5 172.5-70.1 2.1 2 2.5 3.2 1 5.7L420 222.2c-1.9 3.1-6.2 4-9.1 1.7-40.8-32-94.6-14.9-94.6 31.2 0 48 51 70.5 92.2 32.6z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudDownloadAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudMeatball (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 352c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm416 0c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm-119 11.1c4.6-14.5 1.6-30.8-9.8-42.3-11.5-11.5-27.8-14.4-42.3-9.9-7-13.5-20.7-23-36.9-23s-29.9 9.5-36.9 23c-14.5-4.6-30.8-1.6-42.3 9.9-11.5 11.5-14.4 27.8-9.9 42.3-13.5 7-23 20.7-23 36.9s9.5 29.9 23 36.9c-4.6 14.5-1.6 30.8 9.9 42.3 8.2 8.2 18.9 12.3 29.7 12.3 4.3 0 8.5-1.1 12.6-2.5 7 13.5 20.7 23 36.9 23s29.9-9.5 36.9-23c4.1 1.3 8.3 2.5 12.6 2.5 10.8 0 21.5-4.1 29.7-12.3 11.5-11.5 14.4-27.8 9.8-42.3 13.5-7 23-20.7 23-36.9s-9.5-29.9-23-36.9zM512 224c0-53-43-96-96-96-.6 0-1.1.2-1.6.2 1.1-5.2 1.6-10.6 1.6-16.2 0-44.2-35.8-80-80-80-24.6 0-46.3 11.3-61 28.8C256.4 24.8 219.3 0 176 0 114.1 0 64 50.1 64 112c0 7.3.8 14.3 2.1 21.2C27.8 145.8 0 181.5 0 224c0 53 43 96 96 96h43.4c3.6-8 8.4-15.4 14.8-21.8 13.5-13.5 31.5-21.1 50.8-21.3 13.5-13.2 31.7-20.9 51-20.9s37.5 7.7 51 20.9c19.3.2 37.3 7.8 50.8 21.3 6.4 6.4 11.3 13.8 14.8 21.8H416c53 0 96-43 96-96z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudMoonRain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M350.5 225.5c-6.9-37.2-39.3-65.5-78.5-65.5-12.3 0-23.9 3-34.3 8-17.4-24.1-45.6-40-77.7-40-53 0-96 43-96 96 0 .5.2 1.1.2 1.6C27.6 232.9 0 265.2 0 304c0 44.2 35.8 80 80 80h256c44.2 0 80-35.8 80-80 0-39.2-28.2-71.7-65.5-78.5zm217.4-1.7c-70.4 13.3-135-40.3-135-110.8 0-40.6 21.9-78 57.5-98.1 5.5-3.1 4.1-11.4-2.1-12.5C479.6.8 470.7 0 461.8 0c-77.9 0-141.1 61.2-144.4 137.9 26.7 11.9 48.2 33.8 58.9 61.7 37.1 14.3 64 47.4 70.2 86.8 5.1.5 10 1.5 15.2 1.5 44.7 0 85.6-20.2 112.6-53.3 4.2-4.8-.2-12-6.4-10.8zM364.5 418.1c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudMoon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M342.8 352.7c5.7-9.6 9.2-20.7 9.2-32.7 0-35.3-28.7-64-64-64-17.2 0-32.8 6.9-44.3 17.9-16.3-29.6-47.5-49.9-83.7-49.9-53 0-96 43-96 96 0 2 .5 3.8.6 5.7C27.1 338.8 0 374.1 0 416c0 53 43 96 96 96h240c44.2 0 80-35.8 80-80 0-41.9-32.3-75.8-73.2-79.3zm222.5-54.3c-93.1 17.7-178.5-53.7-178.5-147.7 0-54.2 29-104 76.1-130.8 7.3-4.1 5.4-15.1-2.8-16.7C448.4 1.1 436.7 0 425 0 319.1 0 233.1 85.9 233.1 192c0 8.5.7 16.8 1.8 25 5.9 4.3 11.6 8.9 16.7 14.2 11.4-4.7 23.7-7.2 36.4-7.2 52.9 0 96 43.1 96 96 0 3.6-.2 7.2-.6 10.7 23.6 10.8 42.4 29.5 53.5 52.6 54.4-3.4 103.7-29.3 137.1-70.4 5.3-6.5-.5-16.1-8.7-14.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudRain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 128c-.6 0-1.1.2-1.6.2 1.1-5.2 1.6-10.6 1.6-16.2 0-44.2-35.8-80-80-80-24.6 0-46.3 11.3-61 28.8C256.4 24.8 219.3 0 176 0 114.1 0 64 50.1 64 112c0 7.3.8 14.3 2.1 21.2C27.8 145.8 0 181.5 0 224c0 53 43 96 96 96h320c53 0 96-43 96-96s-43-96-96-96zM88 374.2c-12.8 44.4-40 56.4-40 87.7 0 27.7 21.5 50.1 48 50.1s48-22.4 48-50.1c0-31.4-27.2-43.1-40-87.7-2.2-8.1-13.5-8.5-16 0zm160 0c-12.8 44.4-40 56.4-40 87.7 0 27.7 21.5 50.1 48 50.1s48-22.4 48-50.1c0-31.4-27.2-43.1-40-87.7-2.2-8.1-13.5-8.5-16 0zm160 0c-12.8 44.4-40 56.4-40 87.7 0 27.7 21.5 50.1 48 50.1s48-22.4 48-50.1c0-31.4-27.2-43.1-40-87.7-2.2-8.1-13.5-8.5-16 0z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudShowersHeavy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M183.9 370.1c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zm96 0c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zm-192 0c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zm384 0c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zm-96 0c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zM416 128c-.6 0-1.1.2-1.6.2 1.1-5.2 1.6-10.6 1.6-16.2 0-44.2-35.8-80-80-80-24.6 0-46.3 11.3-61 28.8C256.4 24.8 219.3 0 176 0 114.2 0 64 50.1 64 112c0 7.3.8 14.3 2.1 21.2C27.8 145.8 0 181.5 0 224c0 53 43 96 96 96h320c53 0 96-43 96-96s-43-96-96-96z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudSunRain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M510.5 225.5c-6.9-37.2-39.3-65.5-78.5-65.5-12.3 0-23.9 3-34.3 8-17.4-24.1-45.6-40-77.7-40-53 0-96 43-96 96 0 .5.2 1.1.2 1.6C187.6 233 160 265.2 160 304c0 44.2 35.8 80 80 80h256c44.2 0 80-35.8 80-80 0-39.2-28.2-71.7-65.5-78.5zm-386.4 34.4c-37.4-37.4-37.4-98.3 0-135.8 34.6-34.6 89.1-36.8 126.7-7.4 20-12.9 43.6-20.7 69.2-20.7.7 0 1.3.2 2 .2l8.9-26.7c3.4-10.2-6.3-19.8-16.5-16.4l-75.3 25.1-35.5-71c-4.8-9.6-18.5-9.6-23.3 0l-35.5 71-75.3-25.1c-10.2-3.4-19.8 6.3-16.4 16.5l25.1 75.3-71 35.5c-9.6 4.8-9.6 18.5 0 23.3l71 35.5-25.1 75.3c-3.4 10.2 6.3 19.8 16.5 16.5l59.2-19.7c-.2-2.4-.7-4.7-.7-7.2 0-12.5 2.3-24.5 6.2-35.9-3.6-2.7-7.1-5.2-10.2-8.3zm69.8-58c4.3-24.5 15.8-46.4 31.9-64-9.8-6.2-21.4-9.9-33.8-9.9-35.3 0-64 28.7-64 64 0 18.7 8.2 35.4 21.1 47.1 11.3-15.9 26.6-28.9 44.8-37.2zm330.6 216.2c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudSun (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M575.2 325.7c.2-1.9.8-3.7.8-5.6 0-35.3-28.7-64-64-64-12.6 0-24.2 3.8-34.1 10-17.6-38.8-56.5-66-101.9-66-61.8 0-112 50.1-112 112 0 3 .7 5.8.9 8.7-49.6 3.7-88.9 44.7-88.9 95.3 0 53 43 96 96 96h272c53 0 96-43 96-96 0-42.1-27.2-77.4-64.8-90.4zm-430.4-22.6c-43.7-43.7-43.7-114.7 0-158.3 43.7-43.7 114.7-43.7 158.4 0 9.7 9.7 16.9 20.9 22.3 32.7 9.8-3.7 20.1-6 30.7-7.5L386 81.1c4-11.9-7.3-23.1-19.2-19.2L279 91.2 237.5 8.4C232-2.8 216-2.8 210.4 8.4L169 91.2 81.1 61.9C69.3 58 58 69.3 61.9 81.1l29.3 87.8-82.8 41.5c-11.2 5.6-11.2 21.5 0 27.1l82.8 41.4-29.3 87.8c-4 11.9 7.3 23.1 19.2 19.2l76.1-25.3c6.1-12.4 14-23.7 23.6-33.5-13.1-5.4-25.4-13.4-36-24zm-4.8-79.2c0 40.8 29.3 74.8 67.9 82.3 8-4.7 16.3-8.8 25.2-11.7 5.4-44.3 31-82.5 67.4-105C287.3 160.4 258 140 224 140c-46.3 0-84 37.6-84 83.9z\"},\"child\":[]}]})(props);\n};\nexport function FaCloudUploadAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zM393.4 288H328v112c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V288h-65.4c-14.3 0-21.4-17.2-11.3-27.3l105.4-105.4c6.2-6.2 16.4-6.2 22.6 0l105.4 105.4c10.1 10.1 2.9 27.3-11.3 27.3z\"},\"child\":[]}]})(props);\n};\nexport function FaCloud (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4z\"},\"child\":[]}]})(props);\n};\nexport function FaCocktail (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M296 464h-56V338.78l168.74-168.73c15.52-15.52 4.53-42.05-17.42-42.05H24.68c-21.95 0-32.94 26.53-17.42 42.05L176 338.78V464h-56c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h240c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40zM432 0c-62.61 0-115.35 40.2-135.18 96h52.54c16.65-28.55 47.27-48 82.64-48 52.93 0 96 43.06 96 96s-43.07 96-96 96c-14.04 0-27.29-3.2-39.32-8.64l-35.26 35.26C379.23 279.92 404.59 288 432 288c79.53 0 144-64.47 144-144S511.53 0 432 0z\"},\"child\":[]}]})(props);\n};\nexport function FaCodeBranch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 144c0-44.2-35.8-80-80-80s-80 35.8-80 80c0 36.4 24.3 67.1 57.5 76.8-.6 16.1-4.2 28.5-11 36.9-15.4 19.2-49.3 22.4-85.2 25.7-28.2 2.6-57.4 5.4-81.3 16.9v-144c32.5-10.2 56-40.5 56-76.3 0-44.2-35.8-80-80-80S0 35.8 0 80c0 35.8 23.5 66.1 56 76.3v199.3C23.5 365.9 0 396.2 0 432c0 44.2 35.8 80 80 80s80-35.8 80-80c0-34-21.2-63.1-51.2-74.6 3.1-5.2 7.8-9.8 14.9-13.4 16.2-8.2 40.4-10.4 66.1-12.8 42.2-3.9 90-8.4 118.2-43.4 14-17.4 21.1-39.8 21.6-67.9 31.6-10.8 54.4-40.7 54.4-75.9zM80 64c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16zm0 384c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm224-320c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M278.9 511.5l-61-17.7c-6.4-1.8-10-8.5-8.2-14.9L346.2 8.7c1.8-6.4 8.5-10 14.9-8.2l61 17.7c6.4 1.8 10 8.5 8.2 14.9L293.8 503.3c-1.9 6.4-8.5 10.1-14.9 8.2zm-114-112.2l43.5-46.4c4.6-4.9 4.3-12.7-.8-17.2L117 256l90.6-79.7c5.1-4.5 5.5-12.3.8-17.2l-43.5-46.4c-4.5-4.8-12.1-5.1-17-.5L3.8 247.2c-5.1 4.7-5.1 12.8 0 17.5l144.1 135.1c4.9 4.6 12.5 4.4 17-.5zm327.2.6l144.1-135.1c5.1-4.7 5.1-12.8 0-17.5L492.1 112.1c-4.8-4.5-12.4-4.3-17 .5L431.6 159c-4.6 4.9-4.3 12.7.8 17.2L523 256l-90.6 79.7c-5.1 4.5-5.5 12.3-.8 17.2l43.5 46.4c4.5 4.9 12.1 5.1 17 .6z\"},\"child\":[]}]})(props);\n};\nexport function FaCoffee (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 384h192c53 0 96-43 96-96h32c70.6 0 128-57.4 128-128S582.6 32 512 32H120c-13.3 0-24 10.7-24 24v232c0 53 43 96 96 96zM512 96c35.3 0 64 28.7 64 64s-28.7 64-64 64h-32V96h32zm47.7 384H48.3c-47.6 0-61-64-36-64h583.3c25 0 11.8 64-35.9 64z\"},\"child\":[]}]})(props);\n};\nexport function FaCog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M487.4 315.7l-42.6-24.6c4.3-23.2 4.3-47 0-70.2l42.6-24.6c4.9-2.8 7.1-8.6 5.5-14-11.1-35.6-30-67.8-54.7-94.6-3.8-4.1-10-5.1-14.8-2.3L380.8 110c-17.9-15.4-38.5-27.3-60.8-35.1V25.8c0-5.6-3.9-10.5-9.4-11.7-36.7-8.2-74.3-7.8-109.2 0-5.5 1.2-9.4 6.1-9.4 11.7V75c-22.2 7.9-42.8 19.8-60.8 35.1L88.7 85.5c-4.9-2.8-11-1.9-14.8 2.3-24.7 26.7-43.6 58.9-54.7 94.6-1.7 5.4.6 11.2 5.5 14L67.3 221c-4.3 23.2-4.3 47 0 70.2l-42.6 24.6c-4.9 2.8-7.1 8.6-5.5 14 11.1 35.6 30 67.8 54.7 94.6 3.8 4.1 10 5.1 14.8 2.3l42.6-24.6c17.9 15.4 38.5 27.3 60.8 35.1v49.2c0 5.6 3.9 10.5 9.4 11.7 36.7 8.2 74.3 7.8 109.2 0 5.5-1.2 9.4-6.1 9.4-11.7v-49.2c22.2-7.9 42.8-19.8 60.8-35.1l42.6 24.6c4.9 2.8 11 1.9 14.8-2.3 24.7-26.7 43.6-58.9 54.7-94.6 1.5-5.5-.7-11.3-5.6-14.1zM256 336c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaCogs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512.1 191l-8.2 14.3c-3 5.3-9.4 7.5-15.1 5.4-11.8-4.4-22.6-10.7-32.1-18.6-4.6-3.8-5.8-10.5-2.8-15.7l8.2-14.3c-6.9-8-12.3-17.3-15.9-27.4h-16.5c-6 0-11.2-4.3-12.2-10.3-2-12-2.1-24.6 0-37.1 1-6 6.2-10.4 12.2-10.4h16.5c3.6-10.1 9-19.4 15.9-27.4l-8.2-14.3c-3-5.2-1.9-11.9 2.8-15.7 9.5-7.9 20.4-14.2 32.1-18.6 5.7-2.1 12.1.1 15.1 5.4l8.2 14.3c10.5-1.9 21.2-1.9 31.7 0L552 6.3c3-5.3 9.4-7.5 15.1-5.4 11.8 4.4 22.6 10.7 32.1 18.6 4.6 3.8 5.8 10.5 2.8 15.7l-8.2 14.3c6.9 8 12.3 17.3 15.9 27.4h16.5c6 0 11.2 4.3 12.2 10.3 2 12 2.1 24.6 0 37.1-1 6-6.2 10.4-12.2 10.4h-16.5c-3.6 10.1-9 19.4-15.9 27.4l8.2 14.3c3 5.2 1.9 11.9-2.8 15.7-9.5 7.9-20.4 14.2-32.1 18.6-5.7 2.1-12.1-.1-15.1-5.4l-8.2-14.3c-10.4 1.9-21.2 1.9-31.7 0zm-10.5-58.8c38.5 29.6 82.4-14.3 52.8-52.8-38.5-29.7-82.4 14.3-52.8 52.8zM386.3 286.1l33.7 16.8c10.1 5.8 14.5 18.1 10.5 29.1-8.9 24.2-26.4 46.4-42.6 65.8-7.4 8.9-20.2 11.1-30.3 5.3l-29.1-16.8c-16 13.7-34.6 24.6-54.9 31.7v33.6c0 11.6-8.3 21.6-19.7 23.6-24.6 4.2-50.4 4.4-75.9 0-11.5-2-20-11.9-20-23.6V418c-20.3-7.2-38.9-18-54.9-31.7L74 403c-10 5.8-22.9 3.6-30.3-5.3-16.2-19.4-33.3-41.6-42.2-65.7-4-10.9.4-23.2 10.5-29.1l33.3-16.8c-3.9-20.9-3.9-42.4 0-63.4L12 205.8c-10.1-5.8-14.6-18.1-10.5-29 8.9-24.2 26-46.4 42.2-65.8 7.4-8.9 20.2-11.1 30.3-5.3l29.1 16.8c16-13.7 34.6-24.6 54.9-31.7V57.1c0-11.5 8.2-21.5 19.6-23.5 24.6-4.2 50.5-4.4 76-.1 11.5 2 20 11.9 20 23.6v33.6c20.3 7.2 38.9 18 54.9 31.7l29.1-16.8c10-5.8 22.9-3.6 30.3 5.3 16.2 19.4 33.2 41.6 42.1 65.8 4 10.9.1 23.2-10 29.1l-33.7 16.8c3.9 21 3.9 42.5 0 63.5zm-117.6 21.1c59.2-77-28.7-164.9-105.7-105.7-59.2 77 28.7 164.9 105.7 105.7zm243.4 182.7l-8.2 14.3c-3 5.3-9.4 7.5-15.1 5.4-11.8-4.4-22.6-10.7-32.1-18.6-4.6-3.8-5.8-10.5-2.8-15.7l8.2-14.3c-6.9-8-12.3-17.3-15.9-27.4h-16.5c-6 0-11.2-4.3-12.2-10.3-2-12-2.1-24.6 0-37.1 1-6 6.2-10.4 12.2-10.4h16.5c3.6-10.1 9-19.4 15.9-27.4l-8.2-14.3c-3-5.2-1.9-11.9 2.8-15.7 9.5-7.9 20.4-14.2 32.1-18.6 5.7-2.1 12.1.1 15.1 5.4l8.2 14.3c10.5-1.9 21.2-1.9 31.7 0l8.2-14.3c3-5.3 9.4-7.5 15.1-5.4 11.8 4.4 22.6 10.7 32.1 18.6 4.6 3.8 5.8 10.5 2.8 15.7l-8.2 14.3c6.9 8 12.3 17.3 15.9 27.4h16.5c6 0 11.2 4.3 12.2 10.3 2 12 2.1 24.6 0 37.1-1 6-6.2 10.4-12.2 10.4h-16.5c-3.6 10.1-9 19.4-15.9 27.4l8.2 14.3c3 5.2 1.9 11.9-2.8 15.7-9.5 7.9-20.4 14.2-32.1 18.6-5.7 2.1-12.1-.1-15.1-5.4l-8.2-14.3c-10.4 1.9-21.2 1.9-31.7 0zM501.6 431c38.5 29.6 82.4-14.3 52.8-52.8-38.5-29.6-82.4 14.3-52.8 52.8z\"},\"child\":[]}]})(props);\n};\nexport function FaCoins (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 405.3V448c0 35.3 86 64 192 64s192-28.7 192-64v-42.7C342.7 434.4 267.2 448 192 448S41.3 434.4 0 405.3zM320 128c106 0 192-28.7 192-64S426 0 320 0 128 28.7 128 64s86 64 192 64zM0 300.4V352c0 35.3 86 64 192 64s192-28.7 192-64v-51.6c-41.3 34-116.9 51.6-192 51.6S41.3 334.4 0 300.4zm416 11c57.3-11.1 96-31.7 96-55.4v-42.7c-23.2 16.4-57.3 27.6-96 34.5v63.6zM192 160C86 160 0 195.8 0 240s86 80 192 80 192-35.8 192-80-86-80-192-80zm219.3 56.3c60-10.8 100.7-32 100.7-56.3v-42.7c-35.5 25.1-96.5 38.6-160.7 41.8 29.5 14.3 51.2 33.5 60 57.2z\"},\"child\":[]}]})(props);\n};\nexport function FaColumns (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM224 416H64V160h160v256zm224 0H288V160h160v256z\"},\"child\":[]}]})(props);\n};\nexport function FaCommentAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 0H64C28.7 0 0 28.7 0 64v288c0 35.3 28.7 64 64 64h96v84c0 9.8 11.2 15.5 19.1 9.7L304 416h144c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64z\"},\"child\":[]}]})(props);\n};\nexport function FaCommentDollar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C114.62 32 0 125.12 0 240c0 49.56 21.41 95.01 57.02 130.74C44.46 421.05 2.7 465.97 2.2 466.5A7.995 7.995 0 0 0 8 480c66.26 0 115.99-31.75 140.6-51.38C181.29 440.93 217.59 448 256 448c141.38 0 256-93.12 256-208S397.38 32 256 32zm24 302.44V352c0 8.84-7.16 16-16 16h-16c-8.84 0-16-7.16-16-16v-17.73c-11.42-1.35-22.28-5.19-31.78-11.46-6.22-4.11-6.82-13.11-1.55-18.38l17.52-17.52c3.74-3.74 9.31-4.24 14.11-2.03 3.18 1.46 6.66 2.22 10.26 2.22h32.78c4.66 0 8.44-3.78 8.44-8.42 0-3.75-2.52-7.08-6.12-8.11l-50.07-14.3c-22.25-6.35-40.01-24.71-42.91-47.67-4.05-32.07 19.03-59.43 49.32-63.05V128c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v17.73c11.42 1.35 22.28 5.19 31.78 11.46 6.22 4.11 6.82 13.11 1.55 18.38l-17.52 17.52c-3.74 3.74-9.31 4.24-14.11 2.03a24.516 24.516 0 0 0-10.26-2.22h-32.78c-4.66 0-8.44 3.78-8.44 8.42 0 3.75 2.52 7.08 6.12 8.11l50.07 14.3c22.25 6.36 40.01 24.71 42.91 47.67 4.05 32.06-19.03 59.42-49.32 63.04z\"},\"child\":[]}]})(props);\n};\nexport function FaCommentDots (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C114.6 32 0 125.1 0 240c0 49.6 21.4 95 57 130.7C44.5 421.1 2.7 466 2.2 466.5c-2.2 2.3-2.8 5.7-1.5 8.7S4.8 480 8 480c66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 141.4 0 256-93.1 256-208S397.4 32 256 32zM128 272c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaCommentMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C114.62 32 0 125.12 0 240c0 49.56 21.41 95 57 130.74C44.46 421.05 2.7 466 2.2 466.5A8 8 0 0 0 8 480c66.26 0 116-31.75 140.6-51.38A304.66 304.66 0 0 0 256 448c141.39 0 256-93.12 256-208S397.39 32 256 32zm96 232a8 8 0 0 1-8 8h-56v56a8 8 0 0 1-8 8h-48a8 8 0 0 1-8-8v-56h-56a8 8 0 0 1-8-8v-48a8 8 0 0 1 8-8h56v-56a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v56h56a8 8 0 0 1 8 8z\"},\"child\":[]}]})(props);\n};\nexport function FaCommentSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 240c0 49.6 21.4 95 57 130.7-12.6 50.3-54.3 95.2-54.8 95.8-2.2 2.3-2.8 5.7-1.5 8.7 1.3 2.9 4.1 4.8 7.3 4.8 66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 27.4 0 53.7-3.6 78.4-10L72.9 186.4c-5.6 17.1-8.9 35-8.9 53.6zm569.8 218.1l-114.4-88.4C554.6 334.1 576 289.2 576 240c0-114.9-114.6-208-256-208-65.1 0-124.2 20.1-169.4 52.7L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4l588.4 454.7c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.4-6.8 4.1-16.9-2.9-22.3z\"},\"child\":[]}]})(props);\n};\nexport function FaComment (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C114.6 32 0 125.1 0 240c0 49.6 21.4 95 57 130.7C44.5 421.1 2.7 466 2.2 466.5c-2.2 2.3-2.8 5.7-1.5 8.7S4.8 480 8 480c66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 141.4 0 256-93.1 256-208S397.4 32 256 32z\"},\"child\":[]}]})(props);\n};\nexport function FaCommentsDollar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 192c0-88.37-93.12-160-208-160S0 103.63 0 192c0 34.27 14.13 65.95 37.97 91.98C24.61 314.22 2.52 338.16 2.2 338.5A7.995 7.995 0 0 0 8 352c36.58 0 66.93-12.25 88.73-24.98C128.93 342.76 167.02 352 208 352c114.88 0 208-71.63 208-160zm-224 96v-16.29c-11.29-.58-22.27-4.52-31.37-11.35-3.9-2.93-4.1-8.77-.57-12.14l11.75-11.21c2.77-2.64 6.89-2.76 10.13-.73 3.87 2.42 8.26 3.72 12.82 3.72h28.11c6.5 0 11.8-5.92 11.8-13.19 0-5.95-3.61-11.19-8.77-12.73l-45-13.5c-18.59-5.58-31.58-23.42-31.58-43.39 0-24.52 19.05-44.44 42.67-45.07V96c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16.29c11.29.58 22.27 4.51 31.37 11.35 3.9 2.93 4.1 8.77.57 12.14l-11.75 11.21c-2.77 2.64-6.89 2.76-10.13.73-3.87-2.43-8.26-3.72-12.82-3.72h-28.11c-6.5 0-11.8 5.92-11.8 13.19 0 5.95 3.61 11.19 8.77 12.73l45 13.5c18.59 5.58 31.58 23.42 31.58 43.39 0 24.53-19.05 44.44-42.67 45.07V288c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8zm346.01 123.99C561.87 385.96 576 354.27 576 320c0-66.94-53.49-124.2-129.33-148.07.86 6.6 1.33 13.29 1.33 20.07 0 105.87-107.66 192-240 192-10.78 0-21.32-.77-31.73-1.88C207.8 439.63 281.77 480 368 480c40.98 0 79.07-9.24 111.27-24.98C501.07 467.75 531.42 480 568 480c3.2 0 6.09-1.91 7.34-4.84 1.27-2.94.66-6.34-1.55-8.67-.31-.33-22.42-24.24-35.78-54.5z\"},\"child\":[]}]})(props);\n};\nexport function FaComments (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 192c0-88.4-93.1-160-208-160S0 103.6 0 192c0 34.3 14.1 65.9 38 92-13.4 30.2-35.5 54.2-35.8 54.5-2.2 2.3-2.8 5.7-1.5 8.7S4.8 352 8 352c36.6 0 66.9-12.3 88.7-25 32.2 15.7 70.3 25 111.3 25 114.9 0 208-71.6 208-160zm122 220c23.9-26 38-57.7 38-92 0-66.9-53.5-124.2-129.3-148.1.9 6.6 1.3 13.3 1.3 20.1 0 105.9-107.7 192-240 192-10.8 0-21.3-.8-31.7-1.9C207.8 439.6 281.8 480 368 480c41 0 79.1-9.2 111.3-25 21.8 12.7 52.1 25 88.7 25 3.2 0 6.1-1.9 7.3-4.8 1.3-2.9.7-6.3-1.5-8.7-.3-.3-22.4-24.2-35.8-54.5z\"},\"child\":[]}]})(props);\n};\nexport function FaCompactDisc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM88 256H56c0-105.9 86.1-192 192-192v32c-88.2 0-160 71.8-160 160zm160 96c-53 0-96-43-96-96s43-96 96-96 96 43 96 96-43 96-96 96zm0-128c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaCompass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M225.38 233.37c-12.5 12.5-12.5 32.76 0 45.25 12.49 12.5 32.76 12.5 45.25 0 12.5-12.5 12.5-32.76 0-45.25-12.5-12.49-32.76-12.49-45.25 0zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm126.14 148.05L308.17 300.4a31.938 31.938 0 0 1-15.77 15.77l-144.34 65.97c-16.65 7.61-33.81-9.55-26.2-26.2l65.98-144.35a31.938 31.938 0 0 1 15.77-15.77l144.34-65.97c16.65-7.6 33.8 9.55 26.19 26.2z\"},\"child\":[]}]})(props);\n};\nexport function FaCompressAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.686 427.314L104 328l-32.922-31.029C55.958 281.851 66.666 256 88.048 256h112C213.303 256 224 266.745 224 280v112c0 21.382-25.803 32.09-40.922 16.971L152 376l-99.314 99.314c-6.248 6.248-16.379 6.248-22.627 0L4.686 449.941c-6.248-6.248-6.248-16.379 0-22.627zM443.314 84.686L344 184l32.922 31.029c15.12 15.12 4.412 40.971-16.97 40.971h-112C234.697 256 224 245.255 224 232V120c0-21.382 25.803-32.09 40.922-16.971L296 136l99.314-99.314c6.248-6.248 16.379-6.248 22.627 0l25.373 25.373c6.248 6.248 6.248 16.379 0 22.627z\"},\"child\":[]}]})(props);\n};\nexport function FaCompressArrowsAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M200 288H88c-21.4 0-32.1 25.8-17 41l32.9 31-99.2 99.3c-6.2 6.2-6.2 16.4 0 22.6l25.4 25.4c6.2 6.2 16.4 6.2 22.6 0L152 408l31.1 33c15.1 15.1 40.9 4.4 40.9-17V312c0-13.3-10.7-24-24-24zm112-64h112c21.4 0 32.1-25.9 17-41l-33-31 99.3-99.3c6.2-6.2 6.2-16.4 0-22.6L481.9 4.7c-6.2-6.2-16.4-6.2-22.6 0L360 104l-31.1-33C313.8 55.9 288 66.6 288 88v112c0 13.3 10.7 24 24 24zm96 136l33-31.1c15.1-15.1 4.4-40.9-17-40.9H312c-13.3 0-24 10.7-24 24v112c0 21.4 25.9 32.1 41 17l31-32.9 99.3 99.3c6.2 6.2 16.4 6.2 22.6 0l25.4-25.4c6.2-6.2 6.2-16.4 0-22.6L408 360zM183 71.1L152 104 52.7 4.7c-6.2-6.2-16.4-6.2-22.6 0L4.7 30.1c-6.2 6.2-6.2 16.4 0 22.6L104 152l-33 31.1C55.9 198.2 66.6 224 88 224h112c13.3 0 24-10.7 24-24V88c0-21.3-25.9-32-41-16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaCompress (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 192H312c-13.3 0-24-10.7-24-24V44c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v84h84c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm-276-24V44c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v84H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24zm0 300V344c0-13.3-10.7-24-24-24H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm192 0v-84h84c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12H312c-13.3 0-24 10.7-24 24v124c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaConciergeBell (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 130.54V112h16c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16h-96c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h16v18.54C115.49 146.11 32 239.18 32 352h448c0-112.82-83.49-205.89-192-221.46zM496 384H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaCookieBite (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M510.52 255.82c-69.97-.85-126.47-57.69-126.47-127.86-70.17 0-127-56.49-127.86-126.45-27.26-4.14-55.13.3-79.72 12.82l-69.13 35.22a132.221 132.221 0 0 0-57.79 57.81l-35.1 68.88a132.645 132.645 0 0 0-12.82 80.95l12.08 76.27a132.521 132.521 0 0 0 37.16 72.96l54.77 54.76a132.036 132.036 0 0 0 72.71 37.06l76.71 12.15c27.51 4.36 55.7-.11 80.53-12.76l69.13-35.21a132.273 132.273 0 0 0 57.79-57.81l35.1-68.88c12.56-24.64 17.01-52.58 12.91-79.91zM176 368c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm32-160c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm160 128c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaCookie (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M510.37 254.79l-12.08-76.26a132.493 132.493 0 0 0-37.16-72.95l-54.76-54.75c-19.73-19.72-45.18-32.7-72.71-37.05l-76.7-12.15c-27.51-4.36-55.69.11-80.52 12.76L107.32 49.6a132.25 132.25 0 0 0-57.79 57.8l-35.1 68.88a132.602 132.602 0 0 0-12.82 80.94l12.08 76.27a132.493 132.493 0 0 0 37.16 72.95l54.76 54.75a132.087 132.087 0 0 0 72.71 37.05l76.7 12.14c27.51 4.36 55.69-.11 80.52-12.75l69.12-35.21a132.302 132.302 0 0 0 57.79-57.8l35.1-68.87c12.71-24.96 17.2-53.3 12.82-80.96zM176 368c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm32-160c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm160 128c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaCopy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 448v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V120c0-13.255 10.745-24 24-24h72v296c0 30.879 25.121 56 56 56h168zm0-344V0H152c-13.255 0-24 10.745-24 24v368c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V128H344c-13.2 0-24-10.8-24-24zm120.971-31.029L375.029 7.029A24 24 0 0 0 358.059 0H352v96h96v-6.059a24 24 0 0 0-7.029-16.97z\"},\"child\":[]}]})(props);\n};\nexport function FaCopyright (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm117.134 346.753c-1.592 1.867-39.776 45.731-109.851 45.731-84.692 0-144.484-63.26-144.484-145.567 0-81.303 62.004-143.401 143.762-143.401 66.957 0 101.965 37.315 103.422 38.904a12 12 0 0 1 1.238 14.623l-22.38 34.655c-4.049 6.267-12.774 7.351-18.234 2.295-.233-.214-26.529-23.88-61.88-23.88-46.116 0-73.916 33.575-73.916 76.082 0 39.602 25.514 79.692 74.277 79.692 38.697 0 65.28-28.338 65.544-28.625 5.132-5.565 14.059-5.033 18.508 1.053l24.547 33.572a12.001 12.001 0 0 1-.553 14.866z\"},\"child\":[]}]})(props);\n};\nexport function FaCouch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 224v64h320v-64c0-35.3 28.7-64 64-64h32c0-53-43-96-96-96H160c-53 0-96 43-96 96h32c35.3 0 64 28.7 64 64zm416-32h-32c-17.7 0-32 14.3-32 32v96H128v-96c0-17.7-14.3-32-32-32H64c-35.3 0-64 28.7-64 64 0 23.6 13 44 32 55.1V432c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-16h384v16c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V311.1c19-11.1 32-31.5 32-55.1 0-35.3-28.7-64-64-64z\"},\"child\":[]}]})(props);\n};\nexport function FaCreditCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 432c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V256H0v176zm192-68c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-40zm-128 0c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zM576 80v48H0V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaCropAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 352h-40V96c0-17.67-14.33-32-32-32H192v96h160v328c0 13.25 10.75 24 24 24h48c13.25 0 24-10.75 24-24v-40h40c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24zM160 24c0-13.26-10.75-24-24-24H88C74.75 0 64 10.74 64 24v40H24C10.75 64 0 74.74 0 88v48c0 13.25 10.75 24 24 24h40v256c0 17.67 14.33 32 32 32h224v-96H160V24z\"},\"child\":[]}]})(props);\n};\nexport function FaCrop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 352h-40V109.25l59.31-59.31c6.25-6.25 6.25-16.38 0-22.63L484.69 4.69c-6.25-6.25-16.38-6.25-22.63 0L402.75 64H192v96h114.75L160 306.75V24c0-13.26-10.75-24-24-24H88C74.75 0 64 10.74 64 24v40H24C10.75 64 0 74.74 0 88v48c0 13.25 10.75 24 24 24h40v264c0 13.25 10.75 24 24 24h232v-96H205.25L352 205.25V488c0 13.25 10.75 24 24 24h48c13.25 0 24-10.75 24-24v-40h40c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaCross (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 128h-96V32c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v96H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h96v224c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V256h96c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaCrosshairs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M500 224h-30.364C455.724 130.325 381.675 56.276 288 42.364V12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v30.364C130.325 56.276 56.276 130.325 42.364 224H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h30.364C56.276 381.675 130.325 455.724 224 469.636V500c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-30.364C381.675 455.724 455.724 381.675 469.636 288H500c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12zM288 404.634V364c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40.634C165.826 392.232 119.783 346.243 107.366 288H148c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40.634C119.768 165.826 165.757 119.783 224 107.366V148c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40.634C346.174 119.768 392.217 165.757 404.634 224H364c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40.634C392.232 346.174 346.243 392.217 288 404.634zM288 256c0 17.673-14.327 32-32 32s-32-14.327-32-32c0-17.673 14.327-32 32-32s32 14.327 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaCrow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 32h-16.36C513.04 12.68 490.09 0 464 0c-44.18 0-80 35.82-80 80v20.98L12.09 393.57A30.216 30.216 0 0 0 0 417.74c0 22.46 23.64 37.07 43.73 27.03L165.27 384h96.49l44.41 120.1c2.27 6.23 9.15 9.44 15.38 7.17l22.55-8.21c6.23-2.27 9.44-9.15 7.17-15.38L312.94 384H352c1.91 0 3.76-.23 5.66-.29l44.51 120.38c2.27 6.23 9.15 9.44 15.38 7.17l22.55-8.21c6.23-2.27 9.44-9.15 7.17-15.38l-41.24-111.53C485.74 352.8 544 279.26 544 192v-80l96-16c0-35.35-42.98-64-96-64zm-80 72c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaCrown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 448H112c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm64-320c-26.5 0-48 21.5-48 48 0 7.1 1.6 13.7 4.4 19.8L476 239.2c-15.4 9.2-35.3 4-44.2-11.6L350.3 85C361 76.2 368 63 368 48c0-26.5-21.5-48-48-48s-48 21.5-48 48c0 15 7 28.2 17.7 37l-81.5 142.6c-8.9 15.6-28.9 20.8-44.2 11.6l-72.3-43.4c2.7-6 4.4-12.7 4.4-19.8 0-26.5-21.5-48-48-48S0 149.5 0 176s21.5 48 48 48c2.6 0 5.2-.4 7.7-.8L128 416h384l72.3-192.8c2.5.4 5.1.8 7.7.8 26.5 0 48-21.5 48-48s-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaCrutch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M507.31 185.71l-181-181a16 16 0 0 0-22.62 0L281 27.31a16 16 0 0 0 0 22.63l181 181a16 16 0 0 0 22.63 0l22.62-22.63a16 16 0 0 0 .06-22.6zm-179.54 66.41l-67.89-67.89 55.1-55.1-45.25-45.25-109.67 109.67a96.08 96.08 0 0 0-25.67 46.29L106.65 360.1l-102 102a16 16 0 0 0 0 22.63l22.62 22.62a16 16 0 0 0 22.63 0l102-102 120.25-27.75a95.88 95.88 0 0 0 46.29-25.65l109.68-109.68L382.87 197zm-54.57 54.57a32 32 0 0 1-15.45 8.54l-79.3 18.32 18.3-79.3a32.22 32.22 0 0 1 8.56-15.45l9.31-9.31 67.89 67.89z\"},\"child\":[]}]})(props);\n};\nexport function FaCube (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z\"},\"child\":[]}]})(props);\n};\nexport function FaCubes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488.6 250.2L392 214V105.5c0-15-9.3-28.4-23.4-33.7l-100-37.5c-8.1-3.1-17.1-3.1-25.3 0l-100 37.5c-14.1 5.3-23.4 18.7-23.4 33.7V214l-96.6 36.2C9.3 255.5 0 268.9 0 283.9V394c0 13.6 7.7 26.1 19.9 32.2l100 50c10.1 5.1 22.1 5.1 32.2 0l103.9-52 103.9 52c10.1 5.1 22.1 5.1 32.2 0l100-50c12.2-6.1 19.9-18.6 19.9-32.2V283.9c0-15-9.3-28.4-23.4-33.7zM358 214.8l-85 31.9v-68.2l85-37v73.3zM154 104.1l102-38.2 102 38.2v.6l-102 41.4-102-41.4v-.6zm84 291.1l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6zm240 112l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6z\"},\"child\":[]}]})(props);\n};\nexport function FaCut (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M278.06 256L444.48 89.57c4.69-4.69 4.69-12.29 0-16.97-32.8-32.8-85.99-32.8-118.79 0L210.18 188.12l-24.86-24.86c4.31-10.92 6.68-22.81 6.68-35.26 0-53.02-42.98-96-96-96S0 74.98 0 128s42.98 96 96 96c4.54 0 8.99-.32 13.36-.93L142.29 256l-32.93 32.93c-4.37-.61-8.83-.93-13.36-.93-53.02 0-96 42.98-96 96s42.98 96 96 96 96-42.98 96-96c0-12.45-2.37-24.34-6.68-35.26l24.86-24.86L325.69 439.4c32.8 32.8 85.99 32.8 118.79 0 4.69-4.68 4.69-12.28 0-16.97L278.06 256zM96 160c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm0 256c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDatabase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 73.143v45.714C448 159.143 347.667 192 224 192S0 159.143 0 118.857V73.143C0 32.857 100.333 0 224 0s224 32.857 224 73.143zM448 176v102.857C448 319.143 347.667 352 224 352S0 319.143 0 278.857V176c48.125 33.143 136.208 48.572 224 48.572S399.874 209.143 448 176zm0 160v102.857C448 479.143 347.667 512 224 512S0 479.143 0 438.857V336c48.125 33.143 136.208 48.572 224 48.572S399.874 369.143 448 336z\"},\"child\":[]}]})(props);\n};\nexport function FaDeaf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216 260c0 15.464-12.536 28-28 28s-28-12.536-28-28c0-44.112 35.888-80 80-80s80 35.888 80 80c0 15.464-12.536 28-28 28s-28-12.536-28-28c0-13.234-10.767-24-24-24s-24 10.766-24 24zm24-176c-97.047 0-176 78.953-176 176 0 15.464 12.536 28 28 28s28-12.536 28-28c0-66.168 53.832-120 120-120s120 53.832 120 120c0 75.164-71.009 70.311-71.997 143.622L288 404c0 28.673-23.327 52-52 52-15.464 0-28 12.536-28 28s12.536 28 28 28c59.475 0 107.876-48.328 108-107.774.595-34.428 72-48.24 72-144.226 0-97.047-78.953-176-176-176zm268.485-52.201L480.2 3.515c-4.687-4.686-12.284-4.686-16.971 0L376.2 90.544c-4.686 4.686-4.686 12.284 0 16.971l28.285 28.285c4.686 4.686 12.284 4.686 16.97 0l87.03-87.029c4.687-4.688 4.687-12.286 0-16.972zM168.97 314.745c-4.686-4.686-12.284-4.686-16.97 0L3.515 463.23c-4.686 4.686-4.686 12.284 0 16.971L31.8 508.485c4.687 4.686 12.284 4.686 16.971 0L197.256 360c4.686-4.686 4.686-12.284 0-16.971l-28.286-28.284z\"},\"child\":[]}]})(props);\n};\nexport function FaDemocrat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M637.3 256.9l-19.6-29.4c-28.2-42.3-75.3-67.5-126.1-67.5H256l-81.2-81.2c20.1-20.1 22.6-51.1 7.5-73.9-3.4-5.2-10.8-5.9-15.2-1.5l-41.8 41.8L82.4 2.4c-3.6-3.6-9.6-3-12.4 1.2-12.3 18.6-10.3 44 6.1 60.4 3.3 3.3 7.3 5.3 11.3 7.5-2.2 1.7-4.7 3.1-6.4 5.4L6.4 176.2c-7.3 9.7-8.4 22.7-3 33.5l14.3 28.6c5.4 10.8 16.5 17.7 28.6 17.7h31c8.5 0 16.6-3.4 22.6-9.4L138 212l54 108h352v-77.8c16.2 12.2 18.3 17.6 40.1 50.3 4.9 7.4 14.8 9.3 22.2 4.4l26.6-17.7c7.3-5 9.3-14.9 4.4-22.3zm-341.1-13.6l-16.5 16.1 3.9 22.7c.7 4.1-3.6 7.2-7.2 5.3L256 276.7l-20.4 10.7c-3.6 1.9-7.9-1.2-7.2-5.3l3.9-22.7-16.5-16.1c-3-2.9-1.3-7.9 2.8-8.5l22.8-3.3 10.2-20.7c1.8-3.7 7.1-3.7 9 0l10.2 20.7 22.8 3.3c4 .6 5.6 5.6 2.6 8.5zm112 0l-16.5 16.1 3.9 22.7c.7 4.1-3.6 7.2-7.2 5.3L368 276.7l-20.4 10.7c-3.6 1.9-7.9-1.2-7.2-5.3l3.9-22.7-16.5-16.1c-3-2.9-1.3-7.9 2.8-8.5l22.8-3.3 10.2-20.7c1.8-3.7 7.1-3.7 9 0l10.2 20.7 22.8 3.3c4 .6 5.6 5.6 2.6 8.5zm112 0l-16.5 16.1 3.9 22.7c.7 4.1-3.6 7.2-7.2 5.3L480 276.7l-20.4 10.7c-3.6 1.9-7.9-1.2-7.2-5.3l3.9-22.7-16.5-16.1c-3-2.9-1.3-7.9 2.8-8.5l22.8-3.3 10.2-20.7c1.8-3.7 7.1-3.7 9 0l10.2 20.7 22.8 3.3c4 .6 5.6 5.6 2.6 8.5zM192 496c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-80h160v80c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V352H192v144z\"},\"child\":[]}]})(props);\n};\nexport function FaDesktop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 0H48C21.5 0 0 21.5 0 48v320c0 26.5 21.5 48 48 48h192l-16 48h-72c-13.3 0-24 10.7-24 24s10.7 24 24 24h272c13.3 0 24-10.7 24-24s-10.7-24-24-24h-72l-16-48h192c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zm-16 352H64V64h448v288z\"},\"child\":[]}]})(props);\n};\nexport function FaDharmachakra (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M495 225.06l-17.22 1.08c-5.27-39.49-20.79-75.64-43.86-105.84l12.95-11.43c6.92-6.11 7.25-16.79.73-23.31L426.44 64.4c-6.53-6.53-17.21-6.19-23.31.73L391.7 78.07c-30.2-23.06-66.35-38.58-105.83-43.86L286.94 17c.58-9.21-6.74-17-15.97-17h-29.94c-9.23 0-16.54 7.79-15.97 17l1.08 17.22c-39.49 5.27-75.64 20.79-105.83 43.86l-11.43-12.95c-6.11-6.92-16.79-7.25-23.31-.73L64.4 85.56c-6.53 6.53-6.19 17.21.73 23.31l12.95 11.43c-23.06 30.2-38.58 66.35-43.86 105.84L17 225.06c-9.21-.58-17 6.74-17 15.97v29.94c0 9.23 7.79 16.54 17 15.97l17.22-1.08c5.27 39.49 20.79 75.64 43.86 105.83l-12.95 11.43c-6.92 6.11-7.25 16.79-.73 23.31l21.17 21.17c6.53 6.53 17.21 6.19 23.31-.73l11.43-12.95c30.2 23.06 66.35 38.58 105.84 43.86L225.06 495c-.58 9.21 6.74 17 15.97 17h29.94c9.23 0 16.54-7.79 15.97-17l-1.08-17.22c39.49-5.27 75.64-20.79 105.84-43.86l11.43 12.95c6.11 6.92 16.79 7.25 23.31.73l21.17-21.17c6.53-6.53 6.19-17.21-.73-23.31l-12.95-11.43c23.06-30.2 38.58-66.35 43.86-105.83l17.22 1.08c9.21.58 17-6.74 17-15.97v-29.94c-.01-9.23-7.8-16.54-17.01-15.97zM281.84 98.61c24.81 4.07 47.63 13.66 67.23 27.78l-42.62 48.29c-8.73-5.44-18.32-9.54-28.62-11.95l4.01-64.12zm-51.68 0l4.01 64.12c-10.29 2.41-19.89 6.52-28.62 11.95l-42.62-48.29c19.6-14.12 42.42-23.71 67.23-27.78zm-103.77 64.33l48.3 42.61c-5.44 8.73-9.54 18.33-11.96 28.62l-64.12-4.01c4.07-24.81 13.66-47.62 27.78-67.22zm-27.78 118.9l64.12-4.01c2.41 10.29 6.52 19.89 11.95 28.62l-48.29 42.62c-14.12-19.6-23.71-42.42-27.78-67.23zm131.55 131.55c-24.81-4.07-47.63-13.66-67.23-27.78l42.61-48.3c8.73 5.44 18.33 9.54 28.62 11.96l-4 64.12zM256 288c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm25.84 125.39l-4.01-64.12c10.29-2.41 19.89-6.52 28.62-11.96l42.61 48.3c-19.6 14.12-42.41 23.71-67.22 27.78zm103.77-64.33l-48.29-42.62c5.44-8.73 9.54-18.32 11.95-28.62l64.12 4.01c-4.07 24.82-13.66 47.64-27.78 67.23zm-36.34-114.89c-2.41-10.29-6.52-19.89-11.96-28.62l48.3-42.61c14.12 19.6 23.71 42.42 27.78 67.23l-64.12 4z\"},\"child\":[]}]})(props);\n};\nexport function FaDiagnoses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 256c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm-176-80c48.5 0 88-39.5 88-88S368.5 0 320 0s-88 39.5-88 88 39.5 88 88 88zM59.8 364c10.2 15.3 29.3 17.8 42.9 9.8 16.2-9.6 56.2-31.7 105.3-48.6V416h224v-90.7c49.1 16.8 89.1 39 105.3 48.6 13.6 8 32.7 5.3 42.9-9.8l17.8-26.7c8.8-13.2 7.6-34.6-10-45.1-11.9-7.1-29.7-17-51.1-27.4-28.1 46.1-99.4 17.8-87.7-35.1C409.3 217.2 365.1 208 320 208c-57 0-112.9 14.5-160 32.2-.2 40.2-47.6 63.3-79.2 36-11.2 6-21.3 11.6-28.7 16-17.6 10.5-18.8 31.8-10 45.1L59.8 364zM368 344c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm-96-96c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm-160 8c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm512 192H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaDiceD20 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M106.75 215.06L1.2 370.95c-3.08 5 .1 11.5 5.93 12.14l208.26 22.07-108.64-190.1zM7.41 315.43L82.7 193.08 6.06 147.1c-2.67-1.6-6.06.32-6.06 3.43v162.81c0 4.03 5.29 5.53 7.41 2.09zM18.25 423.6l194.4 87.66c5.3 2.45 11.35-1.43 11.35-7.26v-65.67l-203.55-22.3c-4.45-.5-6.23 5.59-2.2 7.57zm81.22-257.78L179.4 22.88c4.34-7.06-3.59-15.25-10.78-11.14L17.81 110.35c-2.47 1.62-2.39 5.26.13 6.78l81.53 48.69zM240 176h109.21L253.63 7.62C250.5 2.54 245.25 0 240 0s-10.5 2.54-13.63 7.62L130.79 176H240zm233.94-28.9l-76.64 45.99 75.29 122.35c2.11 3.44 7.41 1.94 7.41-2.1V150.53c0-3.11-3.39-5.03-6.06-3.43zm-93.41 18.72l81.53-48.7c2.53-1.52 2.6-5.16.13-6.78l-150.81-98.6c-7.19-4.11-15.12 4.08-10.78 11.14l79.93 142.94zm79.02 250.21L256 438.32v65.67c0 5.84 6.05 9.71 11.35 7.26l194.4-87.66c4.03-1.97 2.25-8.06-2.2-7.56zm-86.3-200.97l-108.63 190.1 208.26-22.07c5.83-.65 9.01-7.14 5.93-12.14L373.25 215.06zM240 208H139.57L240 383.75 340.43 208H240z\"},\"child\":[]}]})(props);\n};\nexport function FaDiceD6 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M422.19 109.95L256.21 9.07c-19.91-12.1-44.52-12.1-64.43 0L25.81 109.95c-5.32 3.23-5.29 11.27.06 14.46L224 242.55l198.14-118.14c5.35-3.19 5.38-11.22.05-14.46zm13.84 44.63L240 271.46v223.82c0 12.88 13.39 20.91 24.05 14.43l152.16-92.48c19.68-11.96 31.79-33.94 31.79-57.7v-197.7c0-6.41-6.64-10.43-11.97-7.25zM0 161.83v197.7c0 23.77 12.11 45.74 31.79 57.7l152.16 92.47c10.67 6.48 24.05-1.54 24.05-14.43V271.46L11.97 154.58C6.64 151.4 0 155.42 0 161.83z\"},\"child\":[]}]})(props);\n};\nexport function FaDiceFive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm96 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm96 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDiceFour (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm192 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDiceOne (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM224 288c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDiceSix (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm192 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDiceThree (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm96 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm96 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDiceTwo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm192 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDice (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M592 192H473.26c12.69 29.59 7.12 65.2-17 89.32L320 417.58V464c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48V240c0-26.51-21.49-48-48-48zM480 376c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm-46.37-186.7L258.7 14.37c-19.16-19.16-50.23-19.16-69.39 0L14.37 189.3c-19.16 19.16-19.16 50.23 0 69.39L189.3 433.63c19.16 19.16 50.23 19.16 69.39 0L433.63 258.7c19.16-19.17 19.16-50.24 0-69.4zM96 248c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm128 128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm0-128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm0-128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm128 128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaDigitalTachograph (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M608 96H32c-17.67 0-32 14.33-32 32v256c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V128c0-17.67-14.33-32-32-32zM304 352c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-8c0-4.42 3.58-8 8-8h224c4.42 0 8 3.58 8 8v8zM72 288v-16c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H80c-4.42 0-8-3.58-8-8zm64 0v-16c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8zm64 0v-16c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8zm64 0v-16c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8zm40-64c0 8.84-7.16 16-16 16H80c-8.84 0-16-7.16-16-16v-48c0-8.84 7.16-16 16-16h208c8.84 0 16 7.16 16 16v48zm272 128c0 4.42-3.58 8-8 8H344c-4.42 0-8-3.58-8-8v-8c0-4.42 3.58-8 8-8h224c4.42 0 8 3.58 8 8v8z\"},\"child\":[]}]})(props);\n};\nexport function FaDirections (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.61 233.32L278.68 9.39c-12.52-12.52-32.83-12.52-45.36 0L9.39 233.32c-12.52 12.53-12.52 32.83 0 45.36l223.93 223.93c12.52 12.53 32.83 12.53 45.36 0l223.93-223.93c12.52-12.53 12.52-32.83 0-45.36zm-100.98 12.56l-84.21 77.73c-5.12 4.73-13.43 1.1-13.43-5.88V264h-96v64c0 4.42-3.58 8-8 8h-32c-4.42 0-8-3.58-8-8v-80c0-17.67 14.33-32 32-32h112v-53.73c0-6.97 8.3-10.61 13.43-5.88l84.21 77.73c3.43 3.17 3.43 8.59 0 11.76z\"},\"child\":[]}]})(props);\n};\nexport function FaDisease (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M472.29 195.9l-67.06-23c-19.28-6.6-33.54-20.92-38.14-38.31l-16-60.45c-11.58-43.77-76.57-57.13-110-22.62L195 99.24c-13.26 13.71-33.54 20.93-54.2 19.31l-71.9-5.62c-52-4.07-86.93 44.89-59 82.84l38.54 52.42c11.08 15.07 12.82 33.86 4.64 50.24l-28.43 57C4 396.67 47.46 440.29 98.11 429.23l70-15.28c20.11-4.39 41.45 0 57.07 11.73l54.32 40.83c39.32 29.56 101 7.57 104.45-37.22l4.7-61.86c1.35-17.8 12.8-33.87 30.63-43l62-31.74c44.84-22.96 39.55-80.17-8.99-96.79zM160 256a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm128 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm16-128a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaDivide (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 352c-35.35 0-64 28.65-64 64s28.65 64 64 64 64-28.65 64-64-28.65-64-64-64zm0-192c35.35 0 64-28.65 64-64s-28.65-64-64-64-64 28.65-64 64 28.65 64 64 64zm192 48H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaDizzy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-96 206.6l-28.7 28.7c-14.8 14.8-37.8-7.5-22.6-22.6l28.7-28.7-28.7-28.7c-15-15 7.7-37.6 22.6-22.6l28.7 28.7 28.7-28.7c15-15 37.6 7.7 22.6 22.6L174.6 192l28.7 28.7c15.2 15.2-7.9 37.4-22.6 22.6L152 214.6zM248 416c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm147.3-195.3c15.2 15.2-7.9 37.4-22.6 22.6L344 214.6l-28.7 28.7c-14.8 14.8-37.8-7.5-22.6-22.6l28.7-28.7-28.7-28.7c-15-15 7.7-37.6 22.6-22.6l28.7 28.7 28.7-28.7c15-15 37.6 7.7 22.6 22.6L366.6 192l28.7 28.7z\"},\"child\":[]}]})(props);\n};\nexport function FaDna (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.1 494.1c-1.1 9.5 6.3 17.8 15.9 17.8l32.3.1c8.1 0 14.9-5.9 16-13.9.7-4.9 1.8-11.1 3.4-18.1H380c1.6 6.9 2.9 13.2 3.5 18.1 1.1 8 7.9 14 16 13.9l32.3-.1c9.6 0 17.1-8.3 15.9-17.8-4.6-37.9-25.6-129-118.9-207.7-17.6 12.4-37.1 24.2-58.5 35.4 6.2 4.6 11.4 9.4 17 14.2H159.7c21.3-18.1 47-35.6 78.7-51.4C410.5 199.1 442.1 65.8 447.9 17.9 449 8.4 441.6.1 432 .1L399.6 0c-8.1 0-14.9 5.9-16 13.9-.7 4.9-1.8 11.1-3.4 18.1H67.8c-1.6-7-2.7-13.1-3.4-18.1-1.1-8-7.9-14-16-13.9L16.1.1C6.5.1-1 8.4.1 17.9 5.3 60.8 31.4 171.8 160 256 31.5 340.2 5.3 451.2.1 494.1zM224 219.6c-25.1-13.7-46.4-28.4-64.3-43.6h128.5c-17.8 15.2-39.1 30-64.2 43.6zM355.1 96c-5.8 10.4-12.8 21.1-21 32H114c-8.3-10.9-15.3-21.6-21-32h262.1zM92.9 416c5.8-10.4 12.8-21.1 21-32h219.4c8.3 10.9 15.4 21.6 21.2 32H92.9z\"},\"child\":[]}]})(props);\n};\nexport function FaDog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M298.06,224,448,277.55V496a16,16,0,0,1-16,16H368a16,16,0,0,1-16-16V384H192V496a16,16,0,0,1-16,16H112a16,16,0,0,1-16-16V282.09C58.84,268.84,32,233.66,32,192a32,32,0,0,1,64,0,32.06,32.06,0,0,0,32,32ZM544,112v32a64,64,0,0,1-64,64H448v35.58L320,197.87V48c0-14.25,17.22-21.39,27.31-11.31L374.59,64h53.63c10.91,0,23.75,7.92,28.62,17.69L464,96h64A16,16,0,0,1,544,112Zm-112,0a16,16,0,1,0-16,16A16,16,0,0,0,432,112Z\"},\"child\":[]}]})(props);\n};\nexport function FaDollarSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M209.2 233.4l-108-31.6C88.7 198.2 80 186.5 80 173.5c0-16.3 13.2-29.5 29.5-29.5h66.3c12.2 0 24.2 3.7 34.2 10.5 6.1 4.1 14.3 3.1 19.5-2l34.8-34c7.1-6.9 6.1-18.4-1.8-24.5C238 74.8 207.4 64.1 176 64V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48h-2.5C45.8 64-5.4 118.7.5 183.6c4.2 46.1 39.4 83.6 83.8 96.6l102.5 30c12.5 3.7 21.2 15.3 21.2 28.3 0 16.3-13.2 29.5-29.5 29.5h-66.3C100 368 88 364.3 78 357.5c-6.1-4.1-14.3-3.1-19.5 2l-34.8 34c-7.1 6.9-6.1 18.4 1.8 24.5 24.5 19.2 55.1 29.9 86.5 30v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-48.2c46.6-.9 90.3-28.6 105.7-72.7 21.5-61.6-14.6-124.8-72.5-141.7z\"},\"child\":[]}]})(props);\n};\nexport function FaDollyFlatbed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 320h384c8.8 0 16-7.2 16-16V48c0-8.8-7.2-16-16-16H448v128l-48-32-48 32V32H208c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zm416 64H128V16c0-8.8-7.2-16-16-16H16C7.2 0 0 7.2 0 16v32c0 8.8 7.2 16 16 16h48v368c0 8.8 7.2 16 16 16h82.9c-1.8 5-2.9 10.4-2.9 16 0 26.5 21.5 48 48 48s48-21.5 48-48c0-5.6-1.2-11-2.9-16H451c-1.8 5-2.9 10.4-2.9 16 0 26.5 21.5 48 48 48s48-21.5 48-48c0-5.6-1.2-11-2.9-16H624c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaDolly (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M294.2 277.7c18 5 34.7 13.4 49.5 24.7l161.5-53.8c8.4-2.8 12.9-11.9 10.1-20.2L454.9 47.2c-2.8-8.4-11.9-12.9-20.2-10.1l-61.1 20.4 33.1 99.4L346 177l-33.1-99.4-61.6 20.5c-8.4 2.8-12.9 11.9-10.1 20.2l53 159.4zm281 48.7L565 296c-2.8-8.4-11.9-12.9-20.2-10.1l-213.5 71.2c-17.2-22-43.6-36.4-73.5-37L158.4 21.9C154 8.8 141.8 0 128 0H16C7.2 0 0 7.2 0 16v32c0 8.8 7.2 16 16 16h88.9l92.2 276.7c-26.1 20.4-41.7 53.6-36 90.5 6.1 39.4 37.9 72.3 77.3 79.2 60.2 10.7 112.3-34.8 113.4-92.6l213.3-71.2c8.3-2.8 12.9-11.8 10.1-20.2zM256 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaDonate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 416c114.9 0 208-93.1 208-208S370.9 0 256 0 48 93.1 48 208s93.1 208 208 208zM233.8 97.4V80.6c0-9.2 7.4-16.6 16.6-16.6h11.1c9.2 0 16.6 7.4 16.6 16.6v17c15.5.8 30.5 6.1 43 15.4 5.6 4.1 6.2 12.3 1.2 17.1L306 145.6c-3.8 3.7-9.5 3.8-14 1-5.4-3.4-11.4-5.1-17.8-5.1h-38.9c-9 0-16.3 8.2-16.3 18.3 0 8.2 5 15.5 12.1 17.6l62.3 18.7c25.7 7.7 43.7 32.4 43.7 60.1 0 34-26.4 61.5-59.1 62.4v16.8c0 9.2-7.4 16.6-16.6 16.6h-11.1c-9.2 0-16.6-7.4-16.6-16.6v-17c-15.5-.8-30.5-6.1-43-15.4-5.6-4.1-6.2-12.3-1.2-17.1l16.3-15.5c3.8-3.7 9.5-3.8 14-1 5.4 3.4 11.4 5.1 17.8 5.1h38.9c9 0 16.3-8.2 16.3-18.3 0-8.2-5-15.5-12.1-17.6l-62.3-18.7c-25.7-7.7-43.7-32.4-43.7-60.1.1-34 26.4-61.5 59.1-62.4zM480 352h-32.5c-19.6 26-44.6 47.7-73 64h63.8c5.3 0 9.6 3.6 9.6 8v16c0 4.4-4.3 8-9.6 8H73.6c-5.3 0-9.6-3.6-9.6-8v-16c0-4.4 4.3-8 9.6-8h63.8c-28.4-16.3-53.3-38-73-64H32c-17.7 0-32 14.3-32 32v96c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32v-96c0-17.7-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaDoorClosed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 448H512V50.8C512 22.78 490.47 0 464 0H175.99c-26.47 0-48 22.78-48 50.8V448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM415.99 288c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32c.01 17.67-14.32 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDoorOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 448h-80V113.45C544 86.19 522.47 64 496 64H384v64h96v384h144c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM312.24 1.01l-192 49.74C105.99 54.44 96 67.7 96 82.92V448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h336V33.18c0-21.58-19.56-37.41-39.76-32.17zM264 288c-13.25 0-24-14.33-24-32s10.75-32 24-32 24 14.33 24 32-10.75 32-24 32z\"},\"child\":[]}]})(props);\n};\nexport function FaDotCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm80 248c0 44.112-35.888 80-80 80s-80-35.888-80-80 35.888-80 80-80 80 35.888 80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaDove (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 167.2v-28.1c-28.2-36.3-47.1-79.3-54.1-125.2-2.1-13.5-19-18.8-27.8-8.3-21.1 24.9-37.7 54.1-48.9 86.5 34.2 38.3 80 64.6 130.8 75.1zM400 64c-44.2 0-80 35.9-80 80.1v59.4C215.6 197.3 127 133 87 41.8c-5.5-12.5-23.2-13.2-29-.9C41.4 76 32 115.2 32 156.6c0 70.8 34.1 136.9 85.1 185.9 13.2 12.7 26.1 23.2 38.9 32.8l-143.9 36C1.4 414-3.4 426.4 2.6 435.7 20 462.6 63 508.2 155.8 512c8 .3 16-2.6 22.1-7.9l65.2-56.1H320c88.4 0 160-71.5 160-159.9V128l32-64H400zm0 96.1c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaDownload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z\"},\"child\":[]}]})(props);\n};\nexport function FaDraftingCompass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M457.01 344.42c-25.05 20.33-52.63 37.18-82.54 49.05l54.38 94.19 53.95 23.04c9.81 4.19 20.89-2.21 22.17-12.8l7.02-58.25-54.98-95.23zm42.49-94.56c4.86-7.67 1.89-17.99-6.05-22.39l-28.07-15.57c-7.48-4.15-16.61-1.46-21.26 5.72C403.01 281.15 332.25 320 256 320c-23.93 0-47.23-4.25-69.41-11.53l67.36-116.68c.7.02 1.34.21 2.04.21s1.35-.19 2.04-.21l51.09 88.5c31.23-8.96 59.56-25.75 82.61-48.92l-51.79-89.71C347.39 128.03 352 112.63 352 96c0-53.02-42.98-96-96-96s-96 42.98-96 96c0 16.63 4.61 32.03 12.05 45.66l-68.3 118.31c-12.55-11.61-23.96-24.59-33.68-39-4.79-7.1-13.97-9.62-21.38-5.33l-27.75 16.07c-7.85 4.54-10.63 14.9-5.64 22.47 15.57 23.64 34.69 44.21 55.98 62.02L0 439.66l7.02 58.25c1.28 10.59 12.36 16.99 22.17 12.8l53.95-23.04 70.8-122.63C186.13 377.28 220.62 384 256 384c99.05 0 190.88-51.01 243.5-134.14zM256 64c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaDragon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M18.32 255.78L192 223.96l-91.28 68.69c-10.08 10.08-2.94 27.31 11.31 27.31h222.7c-9.44-26.4-14.73-54.47-14.73-83.38v-42.27l-119.73-87.6c-23.82-15.88-55.29-14.01-77.06 4.59L5.81 227.64c-12.38 10.33-3.45 30.42 12.51 28.14zm556.87 34.1l-100.66-50.31A47.992 47.992 0 0 1 448 196.65v-36.69h64l28.09 22.63c6 6 14.14 9.37 22.63 9.37h30.97a32 32 0 0 0 28.62-17.69l14.31-28.62a32.005 32.005 0 0 0-3.02-33.51l-74.53-99.38C553.02 4.7 543.54 0 533.47 0H296.02c-7.13 0-10.7 8.57-5.66 13.61L352 63.96 292.42 88.8c-5.9 2.95-5.9 11.36 0 14.31L352 127.96v108.62c0 72.08 36.03 139.39 96 179.38-195.59 6.81-344.56 41.01-434.1 60.91C5.78 478.67 0 485.88 0 494.2 0 504 7.95 512 17.76 512h499.08c63.29.01 119.61-47.56 122.99-110.76 2.52-47.28-22.73-90.4-64.64-111.36zM489.18 66.25l45.65 11.41c-2.75 10.91-12.47 18.89-24.13 18.26-12.96-.71-25.85-12.53-21.52-29.67z\"},\"child\":[]}]})(props);\n};\nexport function FaDrawPolygon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 352c-.35 0-.67.1-1.02.1l-39.2-65.32c5.07-9.17 8.22-19.56 8.22-30.78s-3.14-21.61-8.22-30.78l39.2-65.32c.35.01.67.1 1.02.1 35.35 0 64-28.65 64-64s-28.65-64-64-64c-23.63 0-44.04 12.95-55.12 32H119.12C108.04 44.95 87.63 32 64 32 28.65 32 0 60.65 0 96c0 23.63 12.95 44.04 32 55.12v209.75C12.95 371.96 0 392.37 0 416c0 35.35 28.65 64 64 64 23.63 0 44.04-12.95 55.12-32h209.75c11.09 19.05 31.49 32 55.12 32 35.35 0 64-28.65 64-64 .01-35.35-28.64-64-63.99-64zm-288 8.88V151.12A63.825 63.825 0 0 0 119.12 128h208.36l-38.46 64.1c-.35-.01-.67-.1-1.02-.1-35.35 0-64 28.65-64 64s28.65 64 64 64c.35 0 .67-.1 1.02-.1l38.46 64.1H119.12A63.748 63.748 0 0 0 96 360.88zM272 256c0-8.82 7.18-16 16-16s16 7.18 16 16-7.18 16-16 16-16-7.18-16-16zM400 96c0 8.82-7.18 16-16 16s-16-7.18-16-16 7.18-16 16-16 16 7.18 16 16zM64 80c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16zM48 416c0-8.82 7.18-16 16-16s16 7.18 16 16-7.18 16-16 16-16-7.18-16-16zm336 16c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaDrumSteelpan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 32C128.94 32 0 89.31 0 160v192c0 70.69 128.94 128 288 128s288-57.31 288-128V160c0-70.69-128.94-128-288-128zm-82.99 158.36c-4.45 16.61-14.54 30.57-28.31 40.48C100.23 217.46 48 190.78 48 160c0-30.16 50.11-56.39 124.04-70.03l25.6 44.34c9.86 17.09 12.48 36.99 7.37 56.05zM288 240c-21.08 0-41.41-1-60.89-2.7 8.06-26.13 32.15-45.3 60.89-45.3s52.83 19.17 60.89 45.3C329.41 239 309.08 240 288 240zm64-144c0 35.29-28.71 64-64 64s-64-28.71-64-64V82.96c20.4-1.88 41.8-2.96 64-2.96s43.6 1.08 64 2.96V96zm46.93 134.9c-13.81-9.91-23.94-23.9-28.4-40.54-5.11-19.06-2.49-38.96 7.38-56.04l25.65-44.42C477.72 103.5 528 129.79 528 160c0 30.83-52.4 57.54-129.07 70.9z\"},\"child\":[]}]})(props);\n};\nexport function FaDrum (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M431.34 122.05l73.53-47.42a16 16 0 0 0 4.44-22.19l-8.87-13.31a16 16 0 0 0-22.19-4.44l-110.06 71C318.43 96.91 271.22 96 256 96 219.55 96 0 100.55 0 208.15v160.23c0 30.27 27.5 57.68 72 77.86v-101.9a24 24 0 1 1 48 0v118.93c33.05 9.11 71.07 15.06 112 16.73V376.39a24 24 0 1 1 48 0V480c40.93-1.67 78.95-7.62 112-16.73V344.34a24 24 0 1 1 48 0v101.9c44.5-20.18 72-47.59 72-77.86V208.15c0-43.32-35.76-69.76-80.66-86.1zM256 272.24c-114.88 0-208-28.69-208-64.09s93.12-64.08 208-64.08c17.15 0 33.73.71 49.68 1.91l-72.81 47a16 16 0 0 0-4.43 22.19l8.87 13.31a16 16 0 0 0 22.19 4.44l118.64-76.52C430.09 168 464 186.84 464 208.15c0 35.4-93.13 64.09-208 64.09z\"},\"child\":[]}]})(props);\n};\nexport function FaDrumstickBite (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M462.8 49.57a169.44 169.44 0 0 0-239.5 0C187.82 85 160.13 128 160.13 192v85.83l-40.62 40.59c-9.7 9.69-24 11.07-36.78 6a60.33 60.33 0 0 0-65 98.72C33 438.39 54.24 442.7 73.85 438.21c-4.5 19.6-.18 40.83 15.1 56.1a60.35 60.35 0 0 0 98.8-65c-5.09-12.73-3.72-27 6-36.75L234.36 352h85.89a187.87 187.87 0 0 0 61.89-10c-39.64-43.89-39.83-110.23 1.05-151.07 34.38-34.36 86.76-39.46 128.74-16.8 1.3-44.96-14.81-90.28-49.13-124.56z\"},\"child\":[]}]})(props);\n};\nexport function FaDumbbell (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M104 96H56c-13.3 0-24 10.7-24 24v104H8c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h24v104c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24zm528 128h-24V120c0-13.3-10.7-24-24-24h-48c-13.3 0-24 10.7-24 24v272c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V288h24c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM456 32h-48c-13.3 0-24 10.7-24 24v168H256V56c0-13.3-10.7-24-24-24h-48c-13.3 0-24 10.7-24 24v400c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V288h128v168c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaDumpsterFire (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M418.7 104.1l.2-.2-14.4-72H304v128h60.8c16.2-19.3 34.2-38.2 53.9-55.8zM272 32H171.5l-25.6 128H272V32zm189.3 72.1c18.2 16.3 35.5 33.7 51.1 51.5 5.7-5.6 11.4-11.1 17.3-16.3l21.3-19 21.3 19c1.1.9 2.1 2.1 3.1 3.1-.1-.8.2-1.5 0-2.3l-24-96C549.7 37 543.3 32 536 32h-98.9l12.3 61.5 11.9 10.6zM16 160h97.3l25.6-128H40c-7.3 0-13.7 5-15.5 12.1l-24 96C-2 150.2 5.6 160 16 160zm324.6 32H32l4 32H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h28l20 160v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208.8c-30.2-33.7-48.8-77.9-48.8-126.4 0-35.9 19.9-82.9 52.6-129.6zm210.5-28.8c-14.9 13.3-28.3 27.2-40.2 41.2-19.5-25.8-43.6-52-71-76.4-70.2 62.7-120 144.3-120 193.6 0 87.5 71.6 158.4 160 158.4s160-70.9 160-158.4c.1-36.6-37-112.2-88.8-158.4zm-18.6 229.4c-14.7 10.7-32.9 17-52.5 17-49 0-88.9-33.5-88.9-88 0-27.1 16.5-51 49.4-91.9 4.7 5.6 67.1 88.1 67.1 88.1l39.8-47c2.8 4.8 5.4 9.5 7.7 14 18.6 36.7 10.8 83.6-22.6 107.8z\"},\"child\":[]}]})(props);\n};\nexport function FaDumpster (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M560 160c10.4 0 18-9.8 15.5-19.9l-24-96C549.7 37 543.3 32 536 32h-98.9l25.6 128H560zM272 32H171.5l-25.6 128H272V32zm132.5 0H304v128h126.1L404.5 32zM16 160h97.3l25.6-128H40c-7.3 0-13.7 5-15.5 12.1l-24 96C-2 150.2 5.6 160 16 160zm544 64h-20l4-32H32l4 32H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h28l20 160v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h320v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16l20-160h28c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaDungeon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128.73 195.32l-82.81-51.76c-8.04-5.02-18.99-2.17-22.93 6.45A254.19 254.19 0 0 0 .54 239.28C-.05 248.37 7.59 256 16.69 256h97.13c7.96 0 14.08-6.25 15.01-14.16 1.09-9.33 3.24-18.33 6.24-26.94 2.56-7.34.25-15.46-6.34-19.58zM319.03 8C298.86 2.82 277.77 0 256 0s-42.86 2.82-63.03 8c-9.17 2.35-13.91 12.6-10.39 21.39l37.47 104.03A16.003 16.003 0 0 0 235.1 144h41.8c6.75 0 12.77-4.23 15.05-10.58l37.47-104.03c3.52-8.79-1.22-19.03-10.39-21.39zM112 288H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm0 128H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm77.31-283.67l-36.32-90.8c-3.53-8.83-14.13-12.99-22.42-8.31a257.308 257.308 0 0 0-71.61 59.89c-6.06 7.32-3.85 18.48 4.22 23.52l82.93 51.83c6.51 4.07 14.66 2.62 20.11-2.79 5.18-5.15 10.79-9.85 16.79-14.05 6.28-4.41 9.15-12.17 6.3-19.29zM398.18 256h97.13c9.1 0 16.74-7.63 16.15-16.72a254.135 254.135 0 0 0-22.45-89.27c-3.94-8.62-14.89-11.47-22.93-6.45l-82.81 51.76c-6.59 4.12-8.9 12.24-6.34 19.58 3.01 8.61 5.15 17.62 6.24 26.94.93 7.91 7.05 14.16 15.01 14.16zm54.85-162.89a257.308 257.308 0 0 0-71.61-59.89c-8.28-4.68-18.88-.52-22.42 8.31l-36.32 90.8c-2.85 7.12.02 14.88 6.3 19.28 6 4.2 11.61 8.9 16.79 14.05 5.44 5.41 13.6 6.86 20.11 2.79l82.93-51.83c8.07-5.03 10.29-16.19 4.22-23.51zM496 288h-96c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm0 128h-96c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zM240 177.62V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V177.62c-5.23-.89-10.52-1.62-16-1.62s-10.77.73-16 1.62zm-64 41.51V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V189.36c-12.78 7.45-23.84 17.47-32 29.77zm128-29.77V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V219.13c-8.16-12.3-19.22-22.32-32-29.77z\"},\"child\":[]}]})(props);\n};\nexport function FaEdit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M402.6 83.2l90.2 90.2c3.8 3.8 3.8 10 0 13.8L274.4 405.6l-92.8 10.3c-12.4 1.4-22.9-9.1-21.5-21.5l10.3-92.8L388.8 83.2c3.8-3.8 10-3.8 13.8 0zm162-22.9l-48.8-48.8c-15.2-15.2-39.9-15.2-55.2 0l-35.4 35.4c-3.8 3.8-3.8 10 0 13.8l90.2 90.2c3.8 3.8 10 3.8 13.8 0l35.4-35.4c15.2-15.3 15.2-40 0-55.2zM384 346.2V448H64V128h229.8c3.2 0 6.2-1.3 8.5-3.5l40-40c7.6-7.6 2.2-20.5-8.5-20.5H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V306.2c0-10.7-12.9-16-20.5-8.5l-40 40c-2.2 2.3-3.5 5.3-3.5 8.5z\"},\"child\":[]}]})(props);\n};\nexport function FaEgg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 0C86 0 0 214 0 320s86 192 192 192 192-86 192-192S298 0 192 0z\"},\"child\":[]}]})(props);\n};\nexport function FaEject (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 384v64c0 17.673-14.327 32-32 32H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h384c17.673 0 32 14.327 32 32zM48.053 320h351.886c41.651 0 63.581-49.674 35.383-80.435L259.383 47.558c-19.014-20.743-51.751-20.744-70.767 0L12.67 239.565C-15.475 270.268 6.324 320 48.053 320z\"},\"child\":[]}]})(props);\n};\nexport function FaEllipsisH (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M328 256c0 39.8-32.2 72-72 72s-72-32.2-72-72 32.2-72 72-72 72 32.2 72 72zm104-72c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zm-352 0c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72z\"},\"child\":[]}]})(props);\n};\nexport function FaEllipsisV (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 192 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 184c39.8 0 72 32.2 72 72s-32.2 72-72 72-72-32.2-72-72 32.2-72 72-72zM24 80c0 39.8 32.2 72 72 72s72-32.2 72-72S135.8 8 96 8 24 40.2 24 80zm0 352c0 39.8 32.2 72 72 72s72-32.2 72-72-32.2-72-72-72-72 32.2-72 72z\"},\"child\":[]}]})(props);\n};\nexport function FaEnvelopeOpenText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 216h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16H176c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16zm-16 80c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16H176c-8.84 0-16 7.16-16 16v16zm96 121.13c-16.42 0-32.84-5.06-46.86-15.19L0 250.86V464c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V250.86L302.86 401.94c-14.02 10.12-30.44 15.19-46.86 15.19zm237.61-254.18c-8.85-6.94-17.24-13.47-29.61-22.81V96c0-26.51-21.49-48-48-48h-77.55c-3.04-2.2-5.87-4.26-9.04-6.56C312.6 29.17 279.2-.35 256 0c-23.2-.35-56.59 29.17-73.41 41.44-3.17 2.3-6 4.36-9.04 6.56H96c-26.51 0-48 21.49-48 48v44.14c-12.37 9.33-20.76 15.87-29.61 22.81A47.995 47.995 0 0 0 0 200.72v10.65l96 69.35V96h320v184.72l96-69.35v-10.65c0-14.74-6.78-28.67-18.39-37.77z\"},\"child\":[]}]})(props);\n};\nexport function FaEnvelopeOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 464c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V200.724a48 48 0 0 1 18.387-37.776c24.913-19.529 45.501-35.365 164.2-121.511C199.412 29.17 232.797-.347 256 .003c23.198-.354 56.596 29.172 73.413 41.433 118.687 86.137 139.303 101.995 164.2 121.512A48 48 0 0 1 512 200.724V464zm-65.666-196.605c-2.563-3.728-7.7-4.595-11.339-1.907-22.845 16.873-55.462 40.705-105.582 77.079-16.825 12.266-50.21 41.781-73.413 41.43-23.211.344-56.559-29.143-73.413-41.43-50.114-36.37-82.734-60.204-105.582-77.079-3.639-2.688-8.776-1.821-11.339 1.907l-9.072 13.196a7.998 7.998 0 0 0 1.839 10.967c22.887 16.899 55.454 40.69 105.303 76.868 20.274 14.781 56.524 47.813 92.264 47.573 35.724.242 71.961-32.771 92.263-47.573 49.85-36.179 82.418-59.97 105.303-76.868a7.998 7.998 0 0 0 1.839-10.967l-9.071-13.196z\"},\"child\":[]}]})(props);\n};\nexport function FaEnvelopeSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM178.117 262.104C87.429 196.287 88.353 196.121 64 177.167V152c0-13.255 10.745-24 24-24h272c13.255 0 24 10.745 24 24v25.167c-24.371 18.969-23.434 19.124-114.117 84.938-10.5 7.655-31.392 26.12-45.883 25.894-14.503.218-35.367-18.227-45.883-25.895zM384 217.775V360c0 13.255-10.745 24-24 24H88c-13.255 0-24-10.745-24-24V217.775c13.958 10.794 33.329 25.236 95.303 70.214 14.162 10.341 37.975 32.145 64.694 32.01 26.887.134 51.037-22.041 64.72-32.025 61.958-44.965 81.325-59.406 95.283-70.199z\"},\"child\":[]}]})(props);\n};\nexport function FaEnvelope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z\"},\"child\":[]}]})(props);\n};\nexport function FaEquals (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 304H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32zm0-192H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaEraser (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M497.941 273.941c18.745-18.745 18.745-49.137 0-67.882l-160-160c-18.745-18.745-49.136-18.746-67.883 0l-256 256c-18.745 18.745-18.745 49.137 0 67.882l96 96A48.004 48.004 0 0 0 144 480h356c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12H355.883l142.058-142.059zm-302.627-62.627l137.373 137.373L265.373 416H150.628l-80-80 124.686-124.686z\"},\"child\":[]}]})(props);\n};\nexport function FaEthernet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 192h-48v-48c0-8.8-7.2-16-16-16h-48V80c0-8.8-7.2-16-16-16H144c-8.8 0-16 7.2-16 16v48H80c-8.8 0-16 7.2-16 16v48H16c-8.8 0-16 7.2-16 16v224c0 8.8 7.2 16 16 16h80V320h32v128h64V320h32v128h64V320h32v128h64V320h32v128h80c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaEuroSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M310.706 413.765c-1.314-6.63-7.835-10.872-14.424-9.369-10.692 2.439-27.422 5.413-45.426 5.413-56.763 0-101.929-34.79-121.461-85.449h113.689a12 12 0 0 0 11.708-9.369l6.373-28.36c1.686-7.502-4.019-14.631-11.708-14.631H115.22c-1.21-14.328-1.414-28.287.137-42.245H261.95a12 12 0 0 0 11.723-9.434l6.512-29.755c1.638-7.484-4.061-14.566-11.723-14.566H130.184c20.633-44.991 62.69-75.03 117.619-75.03 14.486 0 28.564 2.25 37.851 4.145 6.216 1.268 12.347-2.498 14.002-8.623l11.991-44.368c1.822-6.741-2.465-13.616-9.326-14.917C290.217 34.912 270.71 32 249.635 32 152.451 32 74.03 92.252 45.075 176H12c-6.627 0-12 5.373-12 12v29.755c0 6.627 5.373 12 12 12h21.569c-1.009 13.607-1.181 29.287-.181 42.245H12c-6.627 0-12 5.373-12 12v28.36c0 6.627 5.373 12 12 12h30.114C67.139 414.692 145.264 480 249.635 480c26.301 0 48.562-4.544 61.101-7.788 6.167-1.595 10.027-7.708 8.788-13.957l-8.818-44.49z\"},\"child\":[]}]})(props);\n};\nexport function FaExchangeAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 168v-16c0-13.255 10.745-24 24-24h360V80c0-21.367 25.899-32.042 40.971-16.971l80 80c9.372 9.373 9.372 24.569 0 33.941l-80 80C409.956 271.982 384 261.456 384 240v-48H24c-13.255 0-24-10.745-24-24zm488 152H128v-48c0-21.314-25.862-32.08-40.971-16.971l-80 80c-9.372 9.373-9.372 24.569 0 33.941l80 80C102.057 463.997 128 453.437 128 432v-48h360c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaExclamationCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zm-248 50c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z\"},\"child\":[]}]})(props);\n};\nexport function FaExclamationTriangle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z\"},\"child\":[]}]})(props);\n};\nexport function FaExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 192 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 432c0 44.112-35.888 80-80 80s-80-35.888-80-80 35.888-80 80-80 80 35.888 80 80zM25.26 25.199l13.6 272C39.499 309.972 50.041 320 62.83 320h66.34c12.789 0 23.331-10.028 23.97-22.801l13.6-272C167.425 11.49 156.496 0 142.77 0H49.23C35.504 0 24.575 11.49 25.26 25.199z\"},\"child\":[]}]})(props);\n};\nexport function FaExpandAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M212.686 315.314L120 408l32.922 31.029c15.12 15.12 4.412 40.971-16.97 40.971h-112C10.697 480 0 469.255 0 456V344c0-21.382 25.803-32.09 40.922-16.971L72 360l92.686-92.686c6.248-6.248 16.379-6.248 22.627 0l25.373 25.373c6.249 6.248 6.249 16.378 0 22.627zm22.628-118.628L328 104l-32.922-31.029C279.958 57.851 290.666 32 312.048 32h112C437.303 32 448 42.745 448 56v112c0 21.382-25.803 32.09-40.922 16.971L376 152l-92.686 92.686c-6.248 6.248-16.379 6.248-22.627 0l-25.373-25.373c-6.249-6.248-6.249-16.378 0-22.627z\"},\"child\":[]}]})(props);\n};\nexport function FaExpandArrowsAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 344v112a23.94 23.94 0 0 1-24 24H312c-21.39 0-32.09-25.9-17-41l36.2-36.2L224 295.6 116.77 402.9 153 439c15.09 15.1 4.39 41-17 41H24a23.94 23.94 0 0 1-24-24V344c0-21.4 25.89-32.1 41-17l36.19 36.2L184.46 256 77.18 148.7 41 185c-15.1 15.1-41 4.4-41-17V56a23.94 23.94 0 0 1 24-24h112c21.39 0 32.09 25.9 17 41l-36.2 36.2L224 216.4l107.23-107.3L295 73c-15.09-15.1-4.39-41 17-41h112a23.94 23.94 0 0 1 24 24v112c0 21.4-25.89 32.1-41 17l-36.19-36.2L263.54 256l107.28 107.3L407 327.1c15.1-15.2 41-4.5 41 16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaExpand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H64v84c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12zM288 44v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V56c0-13.3-10.7-24-24-24H300c-6.6 0-12 5.4-12 12zm148 276h-40c-6.6 0-12 5.4-12 12v84h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24V332c0-6.6-5.4-12-12-12zM160 468v-40c0-6.6-5.4-12-12-12H64v-84c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v124c0 13.3 10.7 24 24 24h124c6.6 0 12-5.4 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaExternalLinkAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432,320H400a16,16,0,0,0-16,16V448H64V128H208a16,16,0,0,0,16-16V80a16,16,0,0,0-16-16H48A48,48,0,0,0,0,112V464a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V336A16,16,0,0,0,432,320ZM488,0h-128c-21.37,0-32.05,25.91-17,41l35.73,35.73L135,320.37a24,24,0,0,0,0,34L157.67,377a24,24,0,0,0,34,0L435.28,133.32,471,169c15,15,41,4.5,41-17V24A24,24,0,0,0,488,0Z\"},\"child\":[]}]})(props);\n};\nexport function FaExternalLinkSquareAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zm-88 16H248.029c-21.313 0-32.08 25.861-16.971 40.971l31.984 31.987L67.515 364.485c-4.686 4.686-4.686 12.284 0 16.971l31.029 31.029c4.687 4.686 12.285 4.686 16.971 0l195.526-195.526 31.988 31.991C358.058 263.977 384 253.425 384 231.979V120c0-13.255-10.745-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaEyeDropper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M50.75 333.25c-12 12-18.75 28.28-18.75 45.26V424L0 480l32 32 56-32h45.49c16.97 0 33.25-6.74 45.25-18.74l126.64-126.62-128-128L50.75 333.25zM483.88 28.12c-37.47-37.5-98.28-37.5-135.75 0l-77.09 77.09-13.1-13.1c-9.44-9.44-24.65-9.31-33.94 0l-40.97 40.97c-9.37 9.37-9.37 24.57 0 33.94l161.94 161.94c9.44 9.44 24.65 9.31 33.94 0L419.88 288c9.37-9.37 9.37-24.57 0-33.94l-13.1-13.1 77.09-77.09c37.51-37.48 37.51-98.26.01-135.75z\"},\"child\":[]}]})(props);\n};\nexport function FaEyeSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 400c-75.85 0-137.25-58.71-142.9-133.11L72.2 185.82c-13.79 17.3-26.48 35.59-36.72 55.59a32.35 32.35 0 0 0 0 29.19C89.71 376.41 197.07 448 320 448c26.91 0 52.87-4 77.89-10.46L346 397.39a144.13 144.13 0 0 1-26 2.61zm313.82 58.1l-110.55-85.44a331.25 331.25 0 0 0 81.25-102.07 32.35 32.35 0 0 0 0-29.19C550.29 135.59 442.93 64 320 64a308.15 308.15 0 0 0-147.32 37.7L45.46 3.37A16 16 0 0 0 23 6.18L3.37 31.45A16 16 0 0 0 6.18 53.9l588.36 454.73a16 16 0 0 0 22.46-2.81l19.64-25.27a16 16 0 0 0-2.82-22.45zm-183.72-142l-39.3-30.38A94.75 94.75 0 0 0 416 256a94.76 94.76 0 0 0-121.31-92.21A47.65 47.65 0 0 1 304 192a46.64 46.64 0 0 1-1.54 10l-73.61-56.89A142.31 142.31 0 0 1 320 112a143.92 143.92 0 0 1 144 144c0 21.63-5.29 41.79-13.9 60.11z\"},\"child\":[]}]})(props);\n};\nexport function FaEye (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M572.52 241.4C518.29 135.59 410.93 64 288 64S57.68 135.64 3.48 241.41a32.35 32.35 0 0 0 0 29.19C57.71 376.41 165.07 448 288 448s230.32-71.64 284.52-177.41a32.35 32.35 0 0 0 0-29.19zM288 400a144 144 0 1 1 144-144 143.93 143.93 0 0 1-144 144zm0-240a95.31 95.31 0 0 0-25.31 3.79 47.85 47.85 0 0 1-66.9 66.9A95.78 95.78 0 1 0 288 160z\"},\"child\":[]}]})(props);\n};\nexport function FaFan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352.57 128c-28.09 0-54.09 4.52-77.06 12.86l12.41-123.11C289 7.31 279.81-1.18 269.33.13 189.63 10.13 128 77.64 128 159.43c0 28.09 4.52 54.09 12.86 77.06L17.75 224.08C7.31 223-1.18 232.19.13 242.67c10 79.7 77.51 141.33 159.3 141.33 28.09 0 54.09-4.52 77.06-12.86l-12.41 123.11c-1.05 10.43 8.11 18.93 18.59 17.62 79.7-10 141.33-77.51 141.33-159.3 0-28.09-4.52-54.09-12.86-77.06l123.11 12.41c10.44 1.05 18.93-8.11 17.62-18.59-10-79.7-77.51-141.33-159.3-141.33zM256 288a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaFastBackward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 436V76c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v151.9L235.5 71.4C256.1 54.3 288 68.6 288 96v131.9L459.5 71.4C480.1 54.3 512 68.6 512 96v320c0 27.4-31.9 41.7-52.5 24.6L288 285.3V416c0 27.4-31.9 41.7-52.5 24.6L64 285.3V436c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaFastForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 76v360c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12V284.1L276.5 440.6c-20.6 17.2-52.5 2.8-52.5-24.6V284.1L52.5 440.6C31.9 457.8 0 443.4 0 416V96c0-27.4 31.9-41.7 52.5-24.6L224 226.8V96c0-27.4 31.9-41.7 52.5-24.6L448 226.8V76c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaFaucet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352,256H313.39c-15.71-13.44-35.46-23.07-57.39-28V180.44l-32-3.38-32,3.38V228c-21.93,5-41.68,14.6-57.39,28H16A16,16,0,0,0,0,272v96a16,16,0,0,0,16,16h92.79C129.38,421.73,173,448,224,448s94.62-26.27,115.21-64H352a32,32,0,0,1,32,32,32,32,0,0,0,32,32h64a32,32,0,0,0,32-32A160,160,0,0,0,352,256ZM81.59,159.91l142.41-15,142.41,15c9.42,1,17.59-6.81,17.59-16.8V112.89c0-10-8.17-17.8-17.59-16.81L256,107.74V80a16,16,0,0,0-16-16H208a16,16,0,0,0-16,16v27.74L81.59,96.08C72.17,95.09,64,102.9,64,112.89v30.22C64,153.1,72.17,160.91,81.59,159.91Z\"},\"child\":[]}]})(props);\n};\nexport function FaFax (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 160V77.25a32 32 0 0 0-9.38-22.63L425.37 9.37A32 32 0 0 0 402.75 0H160a32 32 0 0 0-32 32v448a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32zM288 432a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm0-128a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm128 128a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm0-128a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm0-112H192V64h160v48a16 16 0 0 0 16 16h48zM64 128H32a32 32 0 0 0-32 32v320a32 32 0 0 0 32 32h32a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaFeatherAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 0C460.22 3.56 96.44 38.2 71.01 287.61c-3.09 26.66-4.84 53.44-5.99 80.24l178.87-178.69c6.25-6.25 16.4-6.25 22.65 0s6.25 16.38 0 22.63L7.04 471.03c-9.38 9.37-9.38 24.57 0 33.94 9.38 9.37 24.59 9.37 33.98 0l57.13-57.07c42.09-.14 84.15-2.53 125.96-7.36 53.48-5.44 97.02-26.47 132.58-56.54H255.74l146.79-48.88c11.25-14.89 21.37-30.71 30.45-47.12h-81.14l106.54-53.21C500.29 132.86 510.19 26.26 512 0z\"},\"child\":[]}]})(props);\n};\nexport function FaFeather (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M467.14 44.84c-62.55-62.48-161.67-64.78-252.28 25.73-78.61 78.52-60.98 60.92-85.75 85.66-60.46 60.39-70.39 150.83-63.64 211.17l178.44-178.25c6.26-6.25 16.4-6.25 22.65 0s6.25 16.38 0 22.63L7.04 471.03c-9.38 9.37-9.38 24.57 0 33.94 9.38 9.37 24.6 9.37 33.98 0l66.1-66.03C159.42 454.65 279 457.11 353.95 384h-98.19l147.57-49.14c49.99-49.93 36.38-36.18 46.31-46.86h-97.78l131.54-43.8c45.44-74.46 34.31-148.84-16.26-199.36z\"},\"child\":[]}]})(props);\n};\nexport function FaFemale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 0c35.346 0 64 28.654 64 64s-28.654 64-64 64c-35.346 0-64-28.654-64-64S92.654 0 128 0m119.283 354.179l-48-192A24 24 0 0 0 176 144h-11.36c-22.711 10.443-49.59 10.894-73.28 0H80a24 24 0 0 0-23.283 18.179l-48 192C4.935 369.305 16.383 384 32 384h56v104c0 13.255 10.745 24 24 24h32c13.255 0 24-10.745 24-24V384h56c15.591 0 27.071-14.671 23.283-29.821z\"},\"child\":[]}]})(props);\n};\nexport function FaFighterJet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 224l-128-16-48-16h-24L227.158 44h39.509C278.333 44 288 41.375 288 38s-9.667-6-21.333-6H152v12h16v164h-48l-66.667-80H18.667L8 138.667V208h8v16h48v2.666l-64 8v42.667l64 8V288H16v16H8v69.333L18.667 384h34.667L120 304h48v164h-16v12h114.667c11.667 0 21.333-2.625 21.333-6s-9.667-6-21.333-6h-39.509L344 320h24l48-16 128-16c96-21.333 96-26.583 96-32 0-5.417 0-10.667-96-32z\"},\"child\":[]}]})(props);\n};\nexport function FaFileAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm64 236c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm0-64c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm0-72v8c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm96-114.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileArchive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zM128.4 336c-17.9 0-32.4 12.1-32.4 27 0 15 14.6 27 32.5 27s32.4-12.1 32.4-27-14.6-27-32.5-27zM224 136V0h-63.6v32h-32V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM95.9 32h32v32h-32zm32.3 384c-33.2 0-58-30.4-51.4-62.9L96.4 256v-32h32v-32h-32v-32h32v-32h-32V96h32V64h32v32h-32v32h32v32h-32v32h32v32h-32v32h22.1c5.7 0 10.7 4.1 11.8 9.7l17.3 87.7c6.4 32.4-18.4 62.6-51.4 62.6z\"},\"child\":[]}]})(props);\n};\nexport function FaFileAudio (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm-64 268c0 10.7-12.9 16-20.5 8.5L104 376H76c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h28l35.5-36.5c7.6-7.6 20.5-2.2 20.5 8.5v136zm33.2-47.6c9.1-9.3 9.1-24.1 0-33.4-22.1-22.8 12.2-56.2 34.4-33.5 27.2 27.9 27.2 72.4 0 100.4-21.8 22.3-56.9-10.4-34.4-33.5zm86-117.1c54.4 55.9 54.4 144.8 0 200.8-21.8 22.4-57-10.3-34.4-33.5 36.2-37.2 36.3-96.5 0-133.8-22.1-22.8 12.3-56.3 34.4-33.5zM384 121.9v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 121.941V128H256V0h6.059c6.365 0 12.47 2.529 16.971 7.029l97.941 97.941A24.005 24.005 0 0 1 384 121.941zM248 160c-13.2 0-24-10.8-24-24V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248zM123.206 400.505a5.4 5.4 0 0 1-7.633.246l-64.866-60.812a5.4 5.4 0 0 1 0-7.879l64.866-60.812a5.4 5.4 0 0 1 7.633.246l19.579 20.885a5.4 5.4 0 0 1-.372 7.747L101.65 336l40.763 35.874a5.4 5.4 0 0 1 .372 7.747l-19.579 20.884zm51.295 50.479l-27.453-7.97a5.402 5.402 0 0 1-3.681-6.692l61.44-211.626a5.402 5.402 0 0 1 6.692-3.681l27.452 7.97a5.4 5.4 0 0 1 3.68 6.692l-61.44 211.626a5.397 5.397 0 0 1-6.69 3.681zm160.792-111.045l-64.866 60.812a5.4 5.4 0 0 1-7.633-.246l-19.58-20.885a5.4 5.4 0 0 1 .372-7.747L284.35 336l-40.763-35.874a5.4 5.4 0 0 1-.372-7.747l19.58-20.885a5.4 5.4 0 0 1 7.633-.246l64.866 60.812a5.4 5.4 0 0 1-.001 7.879z\"},\"child\":[]}]})(props);\n};\nexport function FaFileContract (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM64 72c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8V72zm0 64c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16zm192.81 248H304c8.84 0 16 7.16 16 16s-7.16 16-16 16h-47.19c-16.45 0-31.27-9.14-38.64-23.86-2.95-5.92-8.09-6.52-10.17-6.52s-7.22.59-10.02 6.19l-7.67 15.34a15.986 15.986 0 0 1-14.31 8.84c-.38 0-.75-.02-1.14-.05-6.45-.45-12-4.75-14.03-10.89L144 354.59l-10.61 31.88c-5.89 17.66-22.38 29.53-41 29.53H80c-8.84 0-16-7.16-16-16s7.16-16 16-16h12.39c4.83 0 9.11-3.08 10.64-7.66l18.19-54.64c3.3-9.81 12.44-16.41 22.78-16.41s19.48 6.59 22.77 16.41l13.88 41.64c19.77-16.19 54.05-9.7 66 14.16 2.02 4.06 5.96 6.5 10.16 6.5zM377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileCsv (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm-96 144c0 4.42-3.58 8-8 8h-8c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h8c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-8c-26.51 0-48-21.49-48-48v-32c0-26.51 21.49-48 48-48h8c4.42 0 8 3.58 8 8v16zm44.27 104H160c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h12.27c5.95 0 10.41-3.5 10.41-6.62 0-1.3-.75-2.66-2.12-3.84l-21.89-18.77c-8.47-7.22-13.33-17.48-13.33-28.14 0-21.3 19.02-38.62 42.41-38.62H200c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-12.27c-5.95 0-10.41 3.5-10.41 6.62 0 1.3.75 2.66 2.12 3.84l21.89 18.77c8.47 7.22 13.33 17.48 13.33 28.14.01 21.29-19 38.62-42.39 38.62zM256 264v20.8c0 20.27 5.7 40.17 16 56.88 10.3-16.7 16-36.61 16-56.88V264c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v20.8c0 35.48-12.88 68.89-36.28 94.09-3.02 3.25-7.27 5.11-11.72 5.11s-8.7-1.86-11.72-5.11c-23.4-25.2-36.28-58.61-36.28-94.09V264c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8zm121-159L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileDownload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm76.45 211.36l-96.42 95.7c-6.65 6.61-17.39 6.61-24.04 0l-96.42-95.7C73.42 337.29 80.54 320 94.82 320H160v-80c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v80h65.18c14.28 0 21.4 17.29 11.27 27.36zM377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileExcel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm60.1 106.5L224 336l60.1 93.5c5.1 8-.6 18.5-10.1 18.5h-34.9c-4.4 0-8.5-2.4-10.6-6.3C208.9 405.5 192 373 192 373c-6.4 14.8-10 20-36.6 68.8-2.1 3.9-6.1 6.3-10.5 6.3H110c-9.5 0-15.2-10.5-10.1-18.5l60.3-93.5-60.3-93.5c-5.2-8 .6-18.5 10.1-18.5h34.8c4.4 0 8.5 2.4 10.6 6.3 26.1 48.8 20 33.6 36.6 68.5 0 0 6.1-11.7 36.6-68.5 2.1-3.9 6.2-6.3 10.6-6.3H274c9.5-.1 15.2 10.4 10.1 18.4zM384 121.9v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileExport (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 121.9c0-6.3-2.5-12.4-7-16.9L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128zM571 308l-95.7-96.4c-10.1-10.1-27.4-3-27.4 11.3V288h-64v64h64v65.2c0 14.3 17.3 21.4 27.4 11.3L571 332c6.6-6.6 6.6-17.4 0-24zm-379 28v-32c0-8.8 7.2-16 16-16h176V160H248c-13.2 0-24-10.8-24-24V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V352H208c-8.8 0-16-7.2-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaFileImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 121.941V128H256V0h6.059a24 24 0 0 1 16.97 7.029l97.941 97.941a24.002 24.002 0 0 1 7.03 16.971zM248 160c-13.2 0-24-10.8-24-24V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248zm-135.455 16c26.51 0 48 21.49 48 48s-21.49 48-48 48-48-21.49-48-48 21.491-48 48-48zm208 240h-256l.485-48.485L104.545 328c4.686-4.686 11.799-4.201 16.485.485L160.545 368 264.06 264.485c4.686-4.686 12.284-4.686 16.971 0L320.545 304v112z\"},\"child\":[]}]})(props);\n};\nexport function FaFileImport (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 288c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h112v-64zm489-183L407.1 7c-4.5-4.5-10.6-7-17-7H384v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H152c-13.3 0-24 10.7-24 24v264h128v-65.2c0-14.3 17.3-21.4 27.4-11.3L379 308c6.6 6.7 6.6 17.4 0 24l-95.7 96.4c-10.1 10.1-27.4 3-27.4-11.3V352H128v136c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H376c-13.2 0-24-10.8-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaFileInvoiceDollar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM64 72c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8V72zm0 80v-16c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8zm144 263.88V440c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-24.29c-11.29-.58-22.27-4.52-31.37-11.35-3.9-2.93-4.1-8.77-.57-12.14l11.75-11.21c2.77-2.64 6.89-2.76 10.13-.73 3.87 2.42 8.26 3.72 12.82 3.72h28.11c6.5 0 11.8-5.92 11.8-13.19 0-5.95-3.61-11.19-8.77-12.73l-45-13.5c-18.59-5.58-31.58-23.42-31.58-43.39 0-24.52 19.05-44.44 42.67-45.07V232c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v24.29c11.29.58 22.27 4.51 31.37 11.35 3.9 2.93 4.1 8.77.57 12.14l-11.75 11.21c-2.77 2.64-6.89 2.76-10.13.73-3.87-2.43-8.26-3.72-12.82-3.72h-28.11c-6.5 0-11.8 5.92-11.8 13.19 0 5.95 3.61 11.19 8.77 12.73l45 13.5c18.59 5.58 31.58 23.42 31.58 43.39 0 24.53-19.05 44.44-42.67 45.07z\"},\"child\":[]}]})(props);\n};\nexport function FaFileInvoice (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 256H96v64h192v-64zm89-151L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM64 72c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8V72zm0 64c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16zm256 304c0 4.42-3.58 8-8 8h-80c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16zm0-200v96c0 8.84-7.16 16-16 16H80c-8.84 0-16-7.16-16-16v-96c0-8.84 7.16-16 16-16h224c8.84 0 16 7.16 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaFileMedicalAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 136V0H88C74.7 0 64 10.7 64 24v232H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h140.9c3 0 5.8 1.7 7.2 4.4l19.9 39.8 56.8-113.7c2.9-5.9 11.4-5.9 14.3 0l34.7 69.5H352c8.8 0 16 7.2 16 16s-7.2 16-16 16h-89.9L240 275.8l-56.8 113.7c-2.9 5.9-11.4 5.9-14.3 0L134.1 320H64v168c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H312c-13.2 0-24-10.8-24-24zm153-31L343.1 7c-4.5-4.5-10.6-7-17-7H320v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm64 160v48c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8z\"},\"child\":[]}]})(props);\n};\nexport function FaFilePdf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M181.9 256.1c-5-16-4.9-46.9-2-46.9 8.4 0 7.6 36.9 2 46.9zm-1.7 47.2c-7.7 20.2-17.3 43.3-28.4 62.7 18.3-7 39-17.2 62.9-21.9-12.7-9.6-24.9-23.4-34.5-40.8zM86.1 428.1c0 .8 13.2-5.4 34.9-40.2-6.7 6.3-29.1 24.5-34.9 40.2zM248 160h136v328c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V24C0 10.7 10.7 0 24 0h200v136c0 13.2 10.8 24 24 24zm-8 171.8c-20-12.2-33.3-29-42.7-53.8 4.5-18.5 11.6-46.6 6.2-64.2-4.7-29.4-42.4-26.5-47.8-6.8-5 18.3-.4 44.1 8.1 77-11.6 27.6-28.7 64.6-40.8 85.8-.1 0-.1.1-.2.1-27.1 13.9-73.6 44.5-54.5 68 5.6 6.9 16 10 21.5 10 17.9 0 35.7-18 61.1-61.8 25.8-8.5 54.1-19.1 79-23.2 21.7 11.8 47.1 19.5 64 19.5 29.2 0 31.2-32 19.7-43.4-13.9-13.6-54.3-9.7-73.6-7.2zM377 105L279 7c-4.5-4.5-10.6-7-17-7h-6v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-74.1 255.3c4.1-2.7-2.5-11.9-42.8-9 37.1 15.8 42.8 9 42.8 9z\"},\"child\":[]}]})(props);\n};\nexport function FaFilePowerpoint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M193.7 271.2c8.8 0 15.5 2.7 20.3 8.1 9.6 10.9 9.8 32.7-.2 44.1-4.9 5.6-11.9 8.5-21.1 8.5h-26.9v-60.7h27.9zM377 105L279 7c-4.5-4.5-10.6-7-17-7h-6v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm53 165.2c0 90.3-88.8 77.6-111.1 77.6V436c0 6.6-5.4 12-12 12h-30.8c-6.6 0-12-5.4-12-12V236.2c0-6.6 5.4-12 12-12h81c44.5 0 72.9 32.8 72.9 77z\"},\"child\":[]}]})(props);\n};\nexport function FaFilePrescription (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm68.53 179.48l11.31 11.31c6.25 6.25 6.25 16.38 0 22.63l-29.9 29.9L304 409.38c6.25 6.25 6.25 16.38 0 22.63l-11.31 11.31c-6.25 6.25-16.38 6.25-22.63 0L240 413.25l-30.06 30.06c-6.25 6.25-16.38 6.25-22.63 0L176 432c-6.25-6.25-6.25-16.38 0-22.63l30.06-30.06L146.74 320H128v48c0 8.84-7.16 16-16 16H96c-8.84 0-16-7.16-16-16V208c0-8.84 7.16-16 16-16h80c35.35 0 64 28.65 64 64 0 24.22-13.62 45.05-33.46 55.92L240 345.38l29.9-29.9c6.25-6.25 16.38-6.25 22.63 0zM176 272h-48v-32h48c8.82 0 16 7.18 16 16s-7.18 16-16 16zm208-150.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileSignature (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M218.17 424.14c-2.95-5.92-8.09-6.52-10.17-6.52s-7.22.59-10.02 6.19l-7.67 15.34c-6.37 12.78-25.03 11.37-29.48-2.09L144 386.59l-10.61 31.88c-5.89 17.66-22.38 29.53-41 29.53H80c-8.84 0-16-7.16-16-16s7.16-16 16-16h12.39c4.83 0 9.11-3.08 10.64-7.66l18.19-54.64c3.3-9.81 12.44-16.41 22.78-16.41s19.48 6.59 22.77 16.41l13.88 41.64c19.75-16.19 54.06-9.7 66 14.16 1.89 3.78 5.49 5.95 9.36 6.26v-82.12l128-127.09V160H248c-13.2 0-24-10.8-24-24V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24v-40l-128-.11c-16.12-.31-30.58-9.28-37.83-23.75zM384 121.9c0-6.3-2.5-12.4-7-16.9L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1zm-96 225.06V416h68.99l161.68-162.78-67.88-67.88L288 346.96zm280.54-179.63l-31.87-31.87c-9.94-9.94-26.07-9.94-36.01 0l-27.25 27.25 67.88 67.88 27.25-27.25c9.95-9.94 9.95-26.07 0-36.01z\"},\"child\":[]}]})(props);\n};\nexport function FaFileUpload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm65.18 216.01H224v80c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-80H94.82c-14.28 0-21.41-17.29-11.27-27.36l96.42-95.7c6.65-6.61 17.39-6.61 24.04 0l96.42 95.7c10.15 10.07 3.03 27.36-11.25 27.36zM377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFileVideo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 121.941V128H256V0h6.059c6.365 0 12.47 2.529 16.971 7.029l97.941 97.941A24.005 24.005 0 0 1 384 121.941zM224 136V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248c-13.2 0-24-10.8-24-24zm96 144.016v111.963c0 21.445-25.943 31.998-40.971 16.971L224 353.941V392c0 13.255-10.745 24-24 24H88c-13.255 0-24-10.745-24-24V280c0-13.255 10.745-24 24-24h112c13.255 0 24 10.745 24 24v38.059l55.029-55.013c15.011-15.01 40.971-4.491 40.971 16.97z\"},\"child\":[]}]})(props);\n};\nexport function FaFileWord (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm57.1 120H305c7.7 0 13.4 7.1 11.7 14.7l-38 168c-1.2 5.5-6.1 9.3-11.7 9.3h-38c-5.5 0-10.3-3.8-11.6-9.1-25.8-103.5-20.8-81.2-25.6-110.5h-.5c-1.1 14.3-2.4 17.4-25.6 110.5-1.3 5.3-6.1 9.1-11.6 9.1H117c-5.6 0-10.5-3.9-11.7-9.4l-37.8-168c-1.7-7.5 4-14.6 11.7-14.6h24.5c5.7 0 10.7 4 11.8 9.7 15.6 78 20.1 109.5 21 122.2 1.6-10.2 7.3-32.7 29.4-122.7 1.3-5.4 6.1-9.1 11.7-9.1h29.1c5.6 0 10.4 3.8 11.7 9.2 24 100.4 28.8 124 29.6 129.4-.2-11.2-2.6-17.8 21.6-129.2 1-5.6 5.9-9.5 11.5-9.5zM384 121.9v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFile (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm160-14.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaFillDrip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 320s-64 92.65-64 128c0 35.35 28.66 64 64 64s64-28.65 64-64-64-128-64-128zm-9.37-102.94L294.94 9.37C288.69 3.12 280.5 0 272.31 0s-16.38 3.12-22.62 9.37l-81.58 81.58L81.93 4.76c-6.25-6.25-16.38-6.25-22.62 0L36.69 27.38c-6.24 6.25-6.24 16.38 0 22.62l86.19 86.18-94.76 94.76c-37.49 37.48-37.49 98.26 0 135.75l117.19 117.19c18.74 18.74 43.31 28.12 67.87 28.12 24.57 0 49.13-9.37 67.87-28.12l221.57-221.57c12.5-12.5 12.5-32.75.01-45.25zm-116.22 70.97H65.93c1.36-3.84 3.57-7.98 7.43-11.83l13.15-13.15 81.61-81.61 58.6 58.6c12.49 12.49 32.75 12.49 45.24 0s12.49-32.75 0-45.24l-58.6-58.6 58.95-58.95 162.44 162.44-48.34 48.34z\"},\"child\":[]}]})(props);\n};\nexport function FaFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.63 217.06L294.94 9.37C288.69 3.12 280.5 0 272.31 0s-16.38 3.12-22.62 9.37l-81.58 81.58L81.93 4.77c-6.24-6.25-16.38-6.25-22.62 0L36.69 27.38c-6.24 6.25-6.24 16.38 0 22.63l86.19 86.18-94.76 94.76c-37.49 37.49-37.49 98.26 0 135.75l117.19 117.19c18.75 18.74 43.31 28.12 67.87 28.12 24.57 0 49.13-9.37 67.88-28.12l221.57-221.57c12.49-12.5 12.49-32.76 0-45.26zm-116.22 70.97H65.93c1.36-3.84 3.57-7.98 7.43-11.83l13.15-13.15 81.61-81.61 58.61 58.6c12.49 12.49 32.75 12.49 45.24 0 12.49-12.49 12.49-32.75 0-45.24l-58.61-58.6 58.95-58.95 162.45 162.44-48.35 48.34z\"},\"child\":[]}]})(props);\n};\nexport function FaFilm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 64h-8v20c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12V64H96v20c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12V64h-8C10.7 64 0 74.7 0 88v336c0 13.3 10.7 24 24 24h8v-20c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v20h320v-20c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v20h8c13.3 0 24-10.7 24-24V88c0-13.3-10.7-24-24-24zM96 372c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm272 208c0 6.6-5.4 12-12 12H156c-6.6 0-12-5.4-12-12v-96c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v96zm0-168c0 6.6-5.4 12-12 12H156c-6.6 0-12-5.4-12-12v-96c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v96zm112 152c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40z\"},\"child\":[]}]})(props);\n};\nexport function FaFilter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M487.976 0H24.028C2.71 0-8.047 25.866 7.058 40.971L192 225.941V432c0 7.831 3.821 15.17 10.237 19.662l80 55.98C298.02 518.69 320 507.493 320 487.98V225.941l184.947-184.97C520.021 25.896 509.338 0 487.976 0z\"},\"child\":[]}]})(props);\n};\nexport function FaFingerprint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256.12 245.96c-13.25 0-24 10.74-24 24 1.14 72.25-8.14 141.9-27.7 211.55-2.73 9.72 2.15 30.49 23.12 30.49 10.48 0 20.11-6.92 23.09-17.52 13.53-47.91 31.04-125.41 29.48-224.52.01-13.25-10.73-24-23.99-24zm-.86-81.73C194 164.16 151.25 211.3 152.1 265.32c.75 47.94-3.75 95.91-13.37 142.55-2.69 12.98 5.67 25.69 18.64 28.36 13.05 2.67 25.67-5.66 28.36-18.64 10.34-50.09 15.17-101.58 14.37-153.02-.41-25.95 19.92-52.49 54.45-52.34 31.31.47 57.15 25.34 57.62 55.47.77 48.05-2.81 96.33-10.61 143.55-2.17 13.06 6.69 25.42 19.76 27.58 19.97 3.33 26.81-15.1 27.58-19.77 8.28-50.03 12.06-101.21 11.27-152.11-.88-55.8-47.94-101.88-104.91-102.72zm-110.69-19.78c-10.3-8.34-25.37-6.8-33.76 3.48-25.62 31.5-39.39 71.28-38.75 112 .59 37.58-2.47 75.27-9.11 112.05-2.34 13.05 6.31 25.53 19.36 27.89 20.11 3.5 27.07-14.81 27.89-19.36 7.19-39.84 10.5-80.66 9.86-121.33-.47-29.88 9.2-57.88 28-80.97 8.35-10.28 6.79-25.39-3.49-33.76zm109.47-62.33c-15.41-.41-30.87 1.44-45.78 4.97-12.89 3.06-20.87 15.98-17.83 28.89 3.06 12.89 16 20.83 28.89 17.83 11.05-2.61 22.47-3.77 34-3.69 75.43 1.13 137.73 61.5 138.88 134.58.59 37.88-1.28 76.11-5.58 113.63-1.5 13.17 7.95 25.08 21.11 26.58 16.72 1.95 25.51-11.88 26.58-21.11a929.06 929.06 0 0 0 5.89-119.85c-1.56-98.75-85.07-180.33-186.16-181.83zm252.07 121.45c-2.86-12.92-15.51-21.2-28.61-18.27-12.94 2.86-21.12 15.66-18.26 28.61 4.71 21.41 4.91 37.41 4.7 61.6-.11 13.27 10.55 24.09 23.8 24.2h.2c13.17 0 23.89-10.61 24-23.8.18-22.18.4-44.11-5.83-72.34zm-40.12-90.72C417.29 43.46 337.6 1.29 252.81.02 183.02-.82 118.47 24.91 70.46 72.94 24.09 119.37-.9 181.04.14 246.65l-.12 21.47c-.39 13.25 10.03 24.31 23.28 24.69.23.02.48.02.72.02 12.92 0 23.59-10.3 23.97-23.3l.16-23.64c-.83-52.5 19.16-101.86 56.28-139 38.76-38.8 91.34-59.67 147.68-58.86 69.45 1.03 134.73 35.56 174.62 92.39 7.61 10.86 22.56 13.45 33.42 5.86 10.84-7.62 13.46-22.59 5.84-33.43z\"},\"child\":[]}]})(props);\n};\nexport function FaFireAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M323.56 51.2c-20.8 19.3-39.58 39.59-56.22 59.97C240.08 73.62 206.28 35.53 168 0 69.74 91.17 0 209.96 0 281.6 0 408.85 100.29 512 224 512s224-103.15 224-230.4c0-53.27-51.98-163.14-124.44-230.4zm-19.47 340.65C282.43 407.01 255.72 416 226.86 416 154.71 416 96 368.26 96 290.75c0-38.61 24.31-72.63 72.79-130.75 6.93 7.98 98.83 125.34 98.83 125.34l58.63-66.88c4.14 6.85 7.91 13.55 11.27 19.97 27.35 52.19 15.81 118.97-33.43 153.42z\"},\"child\":[]}]})(props);\n};\nexport function FaFireExtinguisher (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M434.027 26.329l-168 28C254.693 56.218 256 67.8 256 72h-58.332C208.353 36.108 181.446 0 144 0c-39.435 0-66.368 39.676-52.228 76.203-52.039 13.051-75.381 54.213-90.049 90.884-4.923 12.307 1.063 26.274 13.37 31.197 12.317 4.926 26.279-1.075 31.196-13.37C75.058 112.99 106.964 120 168 120v27.076c-41.543 10.862-72 49.235-72 94.129V488c0 13.255 10.745 24 24 24h144c13.255 0 24-10.745 24-24V240c0-44.731-30.596-82.312-72-92.97V120h40c0 2.974-1.703 15.716 10.027 17.671l168 28C441.342 166.89 448 161.25 448 153.834V38.166c0-7.416-6.658-13.056-13.973-11.837zM144 72c-8.822 0-16-7.178-16-16s7.178-16 16-16 16 7.178 16 16-7.178 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaFire (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216 23.86c0-23.8-30.65-32.77-44.15-13.04C48 191.85 224 200 224 288c0 35.63-29.11 64.46-64.85 63.99-35.17-.45-63.15-29.77-63.15-64.94v-85.51c0-21.7-26.47-32.23-41.43-16.5C27.8 213.16 0 261.33 0 320c0 105.87 86.13 192 192 192s192-86.13 192-192c0-170.29-168-193-168-296.14z\"},\"child\":[]}]})(props);\n};\nexport function FaFirstAid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 80v352c0 26.5 21.5 48 48 48h48V32H48C21.5 32 0 53.5 0 80zm128 400h320V32H128v448zm64-248c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48zM528 32h-48v448h48c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaFish (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M327.1 96c-89.97 0-168.54 54.77-212.27 101.63L27.5 131.58c-12.13-9.18-30.24.6-27.14 14.66L24.54 256 .35 365.77c-3.1 14.06 15.01 23.83 27.14 14.66l87.33-66.05C158.55 361.23 237.13 416 327.1 416 464.56 416 576 288 576 256S464.56 96 327.1 96zm87.43 184c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24 13.26 0 24 10.74 24 24 0 13.25-10.75 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaFistRaised (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M255.98 160V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v146.93c5.02-1.78 10.34-2.93 15.97-2.93h48.03zm128 95.99c-.01-35.34-28.66-63.99-63.99-63.99H207.85c-8.78 0-15.9 7.07-15.9 15.85v.56c0 26.27 21.3 47.59 47.57 47.59h35.26c9.68 0 13.2 3.58 13.2 8v16.2c0 4.29-3.59 7.78-7.88 8-44.52 2.28-64.16 24.71-96.05 72.55l-6.31 9.47a7.994 7.994 0 0 1-11.09 2.22l-13.31-8.88a7.994 7.994 0 0 1-2.22-11.09l6.31-9.47c15.73-23.6 30.2-43.26 47.31-58.08-17.27-5.51-31.4-18.12-38.87-34.45-6.59 3.41-13.96 5.52-21.87 5.52h-32c-12.34 0-23.49-4.81-32-12.48C71.48 251.19 60.33 256 48 256H16c-5.64 0-10.97-1.15-16-2.95v77.93c0 33.95 13.48 66.5 37.49 90.51L63.99 448v64h255.98v-63.96l35.91-35.92A96.035 96.035 0 0 0 384 344.21l-.02-88.22zm-32.01-90.09V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v112h32c11.28 0 21.94 2.31 32 5.9zM16 224h32c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v128c0 8.84 7.16 16 16 16zm95.99 0h32c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v160c0 8.84 7.16 16 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaFlagCheckered (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M243.2 189.9V258c26.1 5.9 49.3 15.6 73.6 22.3v-68.2c-26-5.8-49.4-15.5-73.6-22.2zm223.3-123c-34.3 15.9-76.5 31.9-117 31.9C296 98.8 251.7 64 184.3 64c-25 0-47.3 4.4-68 12 2.8-7.3 4.1-15.2 3.6-23.6C118.1 24 94.8 1.2 66.3 0 34.3-1.3 8 24.3 8 56c0 19 9.5 35.8 24 45.9V488c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24v-94.4c28.3-12.1 63.6-22.1 114.4-22.1 53.6 0 97.8 34.8 165.2 34.8 48.2 0 86.7-16.3 122.5-40.9 8.7-6 13.8-15.8 13.8-26.4V95.9c.1-23.3-24.2-38.8-45.4-29zM169.6 325.5c-25.8 2.7-50 8.2-73.6 16.6v-70.5c26.2-9.3 47.5-15 73.6-17.4zM464 191c-23.6 9.8-46.3 19.5-73.6 23.9V286c24.8-3.4 51.4-11.8 73.6-26v70.5c-25.1 16.1-48.5 24.7-73.6 27.1V286c-27 3.7-47.9 1.5-73.6-5.6v67.4c-23.9-7.4-47.3-16.7-73.6-21.3V258c-19.7-4.4-40.8-6.8-73.6-3.8v-70c-22.4 3.1-44.6 10.2-73.6 20.9v-70.5c33.2-12.2 50.1-19.8 73.6-22v71.6c27-3.7 48.4-1.3 73.6 5.7v-67.4c23.7 7.4 47.2 16.7 73.6 21.3v68.4c23.7 5.3 47.6 6.9 73.6 2.7V143c27-4.8 52.3-13.6 73.6-22.5z\"},\"child\":[]}]})(props);\n};\nexport function FaFlagUsa (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 0C14.3 0 0 14.3 0 32v464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V32C64 14.3 49.7 0 32 0zm267.9 303.6c-57.2-15.1-111.7-28.8-203.9 11.1V384c185.7-92.2 221.7 53.3 397.5-23.1 11.4-5 18.5-16.5 18.5-28.8v-36c-43.6 17.3-80.2 24.1-112.1 24.1-37.4-.1-68.9-8.4-100-16.6zm0-96c-57.2-15.1-111.7-28.8-203.9 11.1v61.5c94.8-37.6 154.6-22.7 212.1-7.6 57.2 15.1 111.7 28.8 203.9-11.1V200c-43.6 17.3-80.2 24.1-112.1 24.1-37.4 0-68.9-8.3-100-16.5zm9.5-125.9c51.8 15.6 97.4 29 202.6-20.1V30.8c0-25.1-26.8-38.1-49.4-26.6C291.3 91.5 305.4-62.2 96 32.4v151.9c94.8-37.5 154.6-22.7 212.1-7.6 57.2 15 111.7 28.7 203.9-11.1V96.7c-53.6 23.5-93.3 31.4-126.1 31.4s-59-7.8-85.7-15.9c-4-1.2-8.1-2.4-12.1-3.5V75.5c7.2 2 14.3 4.1 21.3 6.2zM160 128.1c-8.8 0-16-7.1-16-16 0-8.8 7.2-16 16-16s16 7.1 16 16-7.2 16-16 16zm0-55.8c-8.8 0-16-7.1-16-16 0-8.8 7.2-16 16-16s16 7.1 16 16c0 8.8-7.2 16-16 16zm64 47.9c-8.8 0-16-7.1-16-16 0-8.8 7.2-16 16-16s16 7.1 16 16c0 8.8-7.2 16-16 16zm0-55.9c-8.8 0-16-7.1-16-16 0-8.8 7.2-16 16-16s16 7.1 16 16c0 8.8-7.2 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaFlag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M349.565 98.783C295.978 98.783 251.721 64 184.348 64c-24.955 0-47.309 4.384-68.045 12.013a55.947 55.947 0 0 0 3.586-23.562C118.117 24.015 94.806 1.206 66.338.048 34.345-1.254 8 24.296 8 56c0 19.026 9.497 35.825 24 45.945V488c0 13.255 10.745 24 24 24h16c13.255 0 24-10.745 24-24v-94.4c28.311-12.064 63.582-22.122 114.435-22.122 53.588 0 97.844 34.783 165.217 34.783 48.169 0 86.667-16.294 122.505-40.858C506.84 359.452 512 349.571 512 339.045v-243.1c0-23.393-24.269-38.87-45.485-29.016-34.338 15.948-76.454 31.854-116.95 31.854z\"},\"child\":[]}]})(props);\n};\nexport function FaFlask (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M437.2 403.5L320 215V64h8c13.3 0 24-10.7 24-24V24c0-13.3-10.7-24-24-24H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h8v151L10.8 403.5C-18.5 450.6 15.3 512 70.9 512h306.2c55.7 0 89.4-61.5 60.1-108.5zM137.9 320l48.2-77.6c3.7-5.2 5.8-11.6 5.8-18.4V64h64v160c0 6.9 2.2 13.2 5.8 18.4l48.2 77.6h-172z\"},\"child\":[]}]})(props);\n};\nexport function FaFlushed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M344 200c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-192 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM80 224c0-39.8 32.2-72 72-72s72 32.2 72 72-32.2 72-72 72-72-32.2-72-72zm232 176H184c-21.2 0-21.2-32 0-32h128c21.2 0 21.2 32 0 32zm32-104c-39.8 0-72-32.2-72-72s32.2-72 72-72 72 32.2 72 72-32.2 72-72 72z\"},\"child\":[]}]})(props);\n};\nexport function FaFolderMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 128H272l-64-64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48zm-96 168c0 8.84-7.16 16-16 16H160c-8.84 0-16-7.16-16-16v-16c0-8.84 7.16-16 16-16h192c8.84 0 16 7.16 16 16v16z\"},\"child\":[]}]})(props);\n};\nexport function FaFolderOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M572.694 292.093L500.27 416.248A63.997 63.997 0 0 1 444.989 448H45.025c-18.523 0-30.064-20.093-20.731-36.093l72.424-124.155A64 64 0 0 1 152 256h399.964c18.523 0 30.064 20.093 20.73 36.093zM152 224h328v-48c0-26.51-21.49-48-48-48H272l-64-64H48C21.49 64 0 85.49 0 112v278.046l69.077-118.418C86.214 242.25 117.989 224 152 224z\"},\"child\":[]}]})(props);\n};\nexport function FaFolderPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464,128H272L208,64H48A48,48,0,0,0,0,112V400a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48V176A48,48,0,0,0,464,128ZM359.5,296a16,16,0,0,1-16,16h-64v64a16,16,0,0,1-16,16h-16a16,16,0,0,1-16-16V312h-64a16,16,0,0,1-16-16V280a16,16,0,0,1,16-16h64V200a16,16,0,0,1,16-16h16a16,16,0,0,1,16,16v64h64a16,16,0,0,1,16,16Z\"},\"child\":[]}]})(props);\n};\nexport function FaFolder (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 128H272l-64-64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaFont (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 416h-23.41L277.88 53.69A32 32 0 0 0 247.58 32h-47.16a32 32 0 0 0-30.3 21.69L39.41 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-19.58l23.3-64h152.56l23.3 64H304a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM176.85 272L224 142.51 271.15 272z\"},\"child\":[]}]})(props);\n};\nexport function FaFootballBall (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M481.5 60.3c-4.8-18.2-19.1-32.5-37.3-37.4C420.3 16.5 383 8.9 339.4 8L496 164.8c-.8-43.5-8.2-80.6-14.5-104.5zm-467 391.4c4.8 18.2 19.1 32.5 37.3 37.4 23.9 6.4 61.2 14 104.8 14.9L0 347.2c.8 43.5 8.2 80.6 14.5 104.5zM4.2 283.4L220.4 500c132.5-19.4 248.8-118.7 271.5-271.4L275.6 12C143.1 31.4 26.8 130.7 4.2 283.4zm317.3-123.6c3.1-3.1 8.2-3.1 11.3 0l11.3 11.3c3.1 3.1 3.1 8.2 0 11.3l-28.3 28.3 28.3 28.3c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-28.3-28.3-22.6 22.7 28.3 28.3c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0L248 278.6l-22.6 22.6 28.3 28.3c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-28.3-28.3-28.3 28.3c-3.1 3.1-8.2 3.1-11.3 0l-11.3-11.3c-3.1-3.1-3.1-8.2 0-11.3l28.3-28.3-28.3-28.2c-3.1-3.1-3.1-8.2 0-11.3l11.3-11.3c3.1-3.1 8.2-3.1 11.3 0l28.3 28.3 22.6-22.6-28.3-28.3c-3.1-3.1-3.1-8.2 0-11.3l11.3-11.3c3.1-3.1 8.2-3.1 11.3 0l28.3 28.3 22.6-22.6-28.3-28.3c-3.1-3.1-3.1-8.2 0-11.3l11.3-11.3c3.1-3.1 8.2-3.1 11.3 0l28.3 28.3 28.3-28.5z\"},\"child\":[]}]})(props);\n};\nexport function FaForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M500.5 231.4l-192-160C287.9 54.3 256 68.6 256 96v320c0 27.4 31.9 41.8 52.5 24.6l192-160c15.3-12.8 15.3-36.4 0-49.2zm-256 0l-192-160C31.9 54.3 0 68.6 0 96v320c0 27.4 31.9 41.8 52.5 24.6l192-160c15.3-12.8 15.3-36.4 0-49.2z\"},\"child\":[]}]})(props);\n};\nexport function FaFrog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M446.53 97.43C439.67 60.23 407.19 32 368 32c-39.23 0-71.72 28.29-78.54 65.54C126.75 112.96-.5 250.12 0 416.98.11 451.9 29.08 480 64 480h304c8.84 0 16-7.16 16-16 0-17.67-14.33-32-32-32h-79.49l35.8-48.33c24.14-36.23 10.35-88.28-33.71-106.6-23.89-9.93-51.55-4.65-72.24 10.88l-32.76 24.59c-7.06 5.31-17.09 3.91-22.41-3.19-5.3-7.08-3.88-17.11 3.19-22.41l34.78-26.09c36.84-27.66 88.28-27.62 125.13 0 10.87 8.15 45.87 39.06 40.8 93.21L469.62 480H560c8.84 0 16-7.16 16-16 0-17.67-14.33-32-32-32h-53.63l-98.52-104.68 154.44-86.65A58.16 58.16 0 0 0 576 189.94c0-21.4-11.72-40.95-30.48-51.23-40.56-22.22-98.99-41.28-98.99-41.28zM368 136c-13.26 0-24-10.75-24-24 0-13.26 10.74-24 24-24 13.25 0 24 10.74 24 24 0 13.25-10.75 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaFrownOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM136 208c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm187.3 183.3c-31.2-9.6-59.4-15.3-75.3-15.3s-44.1 5.7-75.3 15.3c-11.5 3.5-22.5-6.3-20.5-18.1 7-40 60.1-61.2 95.8-61.2s88.8 21.3 95.8 61.2c2 11.9-9.1 21.6-20.5 18.1zM328 240c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaFrown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm170.2 218.2C315.8 367.4 282.9 352 248 352s-67.8 15.4-90.2 42.2c-13.5 16.3-38.1-4.2-24.6-20.5C161.7 339.6 203.6 320 248 320s86.3 19.6 114.7 53.8c13.6 16.2-11 36.7-24.5 20.4z\"},\"child\":[]}]})(props);\n};\nexport function FaFunnelDollar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M433.46 165.94l101.2-111.87C554.61 34.12 540.48 0 512.26 0H31.74C3.52 0-10.61 34.12 9.34 54.07L192 256v155.92c0 12.59 5.93 24.44 16 32l79.99 60c20.86 15.64 48.47 6.97 59.22-13.57C310.8 455.38 288 406.35 288 352c0-89.79 62.05-165.17 145.46-186.06zM480 192c-88.37 0-160 71.63-160 160s71.63 160 160 160 160-71.63 160-160-71.63-160-160-160zm16 239.88V448c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-16.29c-11.29-.58-22.27-4.52-31.37-11.35-3.9-2.93-4.1-8.77-.57-12.14l11.75-11.21c2.77-2.64 6.89-2.76 10.13-.73 3.87 2.42 8.26 3.72 12.82 3.72h28.11c6.5 0 11.8-5.92 11.8-13.19 0-5.95-3.61-11.19-8.77-12.73l-45-13.5c-18.59-5.58-31.58-23.42-31.58-43.39 0-24.52 19.05-44.44 42.67-45.07V256c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16.29c11.29.58 22.27 4.51 31.37 11.35 3.9 2.93 4.1 8.77.57 12.14l-11.75 11.21c-2.77 2.64-6.89 2.76-10.13.73-3.87-2.43-8.26-3.72-12.82-3.72h-28.11c-6.5 0-11.8 5.92-11.8 13.19 0 5.95 3.61 11.19 8.77 12.73l45 13.5c18.59 5.58 31.58 23.42 31.58 43.39 0 24.53-19.04 44.44-42.67 45.07z\"},\"child\":[]}]})(props);\n};\nexport function FaFutbol (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zm-48 0l-.003-.282-26.064 22.741-62.679-58.5 16.454-84.355 34.303 3.072c-24.889-34.216-60.004-60.089-100.709-73.141l13.651 31.939L256 139l-74.953-41.525 13.651-31.939c-40.631 13.028-75.78 38.87-100.709 73.141l34.565-3.073 16.192 84.355-62.678 58.5-26.064-22.741-.003.282c0 43.015 13.497 83.952 38.472 117.991l7.704-33.897 85.138 10.447 36.301 77.826-29.902 17.786c40.202 13.122 84.29 13.148 124.572 0l-29.902-17.786 36.301-77.826 85.138-10.447 7.704 33.897C442.503 339.952 456 299.015 456 256zm-248.102 69.571l-29.894-91.312L256 177.732l77.996 56.527-29.622 91.312h-96.476z\"},\"child\":[]}]})(props);\n};\nexport function FaGamepad (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480.07 96H160a160 160 0 1 0 114.24 272h91.52A160 160 0 1 0 480.07 96zM248 268a12 12 0 0 1-12 12h-52v52a12 12 0 0 1-12 12h-24a12 12 0 0 1-12-12v-52H84a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h52v-52a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12v52h52a12 12 0 0 1 12 12zm216 76a40 40 0 1 1 40-40 40 40 0 0 1-40 40zm64-96a40 40 0 1 1 40-40 40 40 0 0 1-40 40z\"},\"child\":[]}]})(props);\n};\nexport function FaGasPump (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 448H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h320c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm157.2-340.7l-81-81c-6.2-6.2-16.4-6.2-22.6 0l-11.3 11.3c-6.2 6.2-6.2 16.4 0 22.6L416 97.9V160c0 28.1 20.9 51.3 48 55.2V376c0 13.2-10.8 24-24 24s-24-10.8-24-24v-32c0-48.6-39.4-88-88-88h-8V64c0-35.3-28.7-64-64-64H96C60.7 0 32 28.7 32 64v352h288V304h8c22.1 0 40 17.9 40 40v27.8c0 37.7 27 72 64.5 75.9 43 4.3 79.5-29.5 79.5-71.7V152.6c0-17-6.8-33.3-18.8-45.3zM256 192H96V64h160v128z\"},\"child\":[]}]})(props);\n};\nexport function FaGavel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504.971 199.362l-22.627-22.627c-9.373-9.373-24.569-9.373-33.941 0l-5.657 5.657L329.608 69.255l5.657-5.657c9.373-9.373 9.373-24.569 0-33.941L312.638 7.029c-9.373-9.373-24.569-9.373-33.941 0L154.246 131.48c-9.373 9.373-9.373 24.569 0 33.941l22.627 22.627c9.373 9.373 24.569 9.373 33.941 0l5.657-5.657 39.598 39.598-81.04 81.04-5.657-5.657c-12.497-12.497-32.758-12.497-45.255 0L9.373 412.118c-12.497 12.497-12.497 32.758 0 45.255l45.255 45.255c12.497 12.497 32.758 12.497 45.255 0l114.745-114.745c12.497-12.497 12.497-32.758 0-45.255l-5.657-5.657 81.04-81.04 39.598 39.598-5.657 5.657c-9.373 9.373-9.373 24.569 0 33.941l22.627 22.627c9.373 9.373 24.569 9.373 33.941 0l124.451-124.451c9.372-9.372 9.372-24.568 0-33.941z\"},\"child\":[]}]})(props);\n};\nexport function FaGem (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M485.5 0L576 160H474.9L405.7 0h79.8zm-128 0l69.2 160H149.3L218.5 0h139zm-267 0h79.8l-69.2 160H0L90.5 0zM0 192h100.7l123 251.7c1.5 3.1-2.7 5.9-5 3.3L0 192zm148.2 0h279.6l-137 318.2c-1 2.4-4.5 2.4-5.5 0L148.2 192zm204.1 251.7l123-251.7H576L357.3 446.9c-2.3 2.7-6.5-.1-5-3.2z\"},\"child\":[]}]})(props);\n};\nexport function FaGenderless (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144 176c44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80 35.9-80 80-80m0-64C64.5 112 0 176.5 0 256s64.5 144 144 144 144-64.5 144-144-64.5-144-144-144z\"},\"child\":[]}]})(props);\n};\nexport function FaGhost (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M186.1.09C81.01 3.24 0 94.92 0 200.05v263.92c0 14.26 17.23 21.39 27.31 11.31l24.92-18.53c6.66-4.95 16-3.99 21.51 2.21l42.95 48.35c6.25 6.25 16.38 6.25 22.63 0l40.72-45.85c6.37-7.17 17.56-7.17 23.92 0l40.72 45.85c6.25 6.25 16.38 6.25 22.63 0l42.95-48.35c5.51-6.2 14.85-7.17 21.51-2.21l24.92 18.53c10.08 10.08 27.31 2.94 27.31-11.31V192C384 84 294.83-3.17 186.1.09zM128 224c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm128 0c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaGift (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 448c0 17.7 14.3 32 32 32h160V320H32v128zm256 32h160c17.7 0 32-14.3 32-32V320H288v160zm192-320h-42.1c6.2-12.1 10.1-25.5 10.1-40 0-48.5-39.5-88-88-88-41.6 0-68.5 21.3-103 68.3-34.5-47-61.4-68.3-103-68.3-48.5 0-88 39.5-88 88 0 14.5 3.8 27.9 10.1 40H32c-17.7 0-32 14.3-32 32v80c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16v-80c0-17.7-14.3-32-32-32zm-326.1 0c-22.1 0-40-17.9-40-40s17.9-40 40-40c19.9 0 34.6 3.3 86.1 80h-86.1zm206.1 0h-86.1c51.4-76.5 65.7-80 86.1-80 22.1 0 40 17.9 40 40s-17.9 40-40 40z\"},\"child\":[]}]})(props);\n};\nexport function FaGifts (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240.6 194.1c1.9-30.8 17.3-61.2 44-79.8C279.4 103.5 268.7 96 256 96h-29.4l30.7-22c7.2-5.1 8.9-15.1 3.7-22.3l-9.3-13c-5.1-7.2-15.1-8.9-22.3-3.7l-32 22.9 11.5-30.6c3.1-8.3-1.1-17.5-9.4-20.6l-15-5.6c-8.3-3.1-17.5 1.1-20.6 9.4l-19.9 53-19.9-53.1C121 2.1 111.8-2.1 103.5 1l-15 5.6C80.2 9.7 76 19 79.2 27.2l11.5 30.6L58.6 35c-7.2-5.1-17.2-3.5-22.3 3.7l-9.3 13c-5.1 7.2-3.5 17.2 3.7 22.3l30.7 22H32c-17.7 0-32 14.3-32 32v352c0 17.7 14.3 32 32 32h168.9c-5.5-9.5-8.9-20.3-8.9-32V256c0-29.9 20.8-55 48.6-61.9zM224 480c0 17.7 14.3 32 32 32h160V384H224v96zm224 32h160c17.7 0 32-14.3 32-32v-96H448v128zm160-288h-20.4c2.6-7.6 4.4-15.5 4.4-23.8 0-35.5-27-72.2-72.1-72.2-48.1 0-75.9 47.7-87.9 75.3-12.1-27.6-39.9-75.3-87.9-75.3-45.1 0-72.1 36.7-72.1 72.2 0 8.3 1.7 16.2 4.4 23.8H256c-17.7 0-32 14.3-32 32v96h192V224h15.3l.7-.2.7.2H448v128h192v-96c0-17.7-14.3-32-32-32zm-272 0c-2.7-1.4-5.1-3-7.2-4.8-7.3-6.4-8.8-13.8-8.8-19 0-9.7 6.4-24.2 24.1-24.2 18.7 0 35.6 27.4 44.5 48H336zm199.2-4.8c-2.1 1.8-4.5 3.4-7.2 4.8h-52.6c8.8-20.3 25.8-48 44.5-48 17.7 0 24.1 14.5 24.1 24.2 0 5.2-1.5 12.6-8.8 19z\"},\"child\":[]}]})(props);\n};\nexport function FaGlassCheers (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M639.4 433.6c-8.4-20.4-31.8-30.1-52.2-21.6l-22.1 9.2-38.7-101.9c47.9-35 64.8-100.3 34.5-152.8L474.3 16c-8-13.9-25.1-19.7-40-13.6L320 49.8 205.7 2.4c-14.9-6.2-32-.3-40 13.6L79.1 166.5C48.9 219 65.7 284.3 113.6 319.2L74.9 421.1l-22.1-9.2c-20.4-8.5-43.7 1.2-52.2 21.6-1.7 4.1.2 8.8 4.3 10.5l162.3 67.4c4.1 1.7 8.7-.2 10.4-4.3 8.4-20.4-1.2-43.8-21.6-52.3l-22.1-9.2L173.3 342c4.4.5 8.8 1.3 13.1 1.3 51.7 0 99.4-33.1 113.4-85.3l20.2-75.4 20.2 75.4c14 52.2 61.7 85.3 113.4 85.3 4.3 0 8.7-.8 13.1-1.3L506 445.6l-22.1 9.2c-20.4 8.5-30.1 31.9-21.6 52.3 1.7 4.1 6.4 6 10.4 4.3L635.1 444c4-1.7 6-6.3 4.3-10.4zM275.9 162.1l-112.1-46.5 36.5-63.4 94.5 39.2-18.9 70.7zm88.2 0l-18.9-70.7 94.5-39.2 36.5 63.4-112.1 46.5z\"},\"child\":[]}]})(props);\n};\nexport function FaGlassMartiniAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.05 57.6C523.3 36.34 508.25 0 478.2 0H33.8C3.75 0-11.3 36.34 9.95 57.6L224 271.64V464h-56c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h240c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40h-56V271.64L502.05 57.6zM443.77 48l-48 48H116.24l-48-48h375.53z\"},\"child\":[]}]})(props);\n};\nexport function FaGlassMartini (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.05 57.6C523.3 36.34 508.25 0 478.2 0H33.8C3.75 0-11.3 36.34 9.95 57.6L224 271.64V464h-56c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h240c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40h-56V271.64L502.05 57.6z\"},\"child\":[]}]})(props);\n};\nexport function FaGlassWhiskey (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 32H32C12.5 32-2.4 49.2.3 68.5l56 356.5c4.5 31.5 31.5 54.9 63.4 54.9h273c31.8 0 58.9-23.4 63.4-54.9l55.6-356.5C514.4 49.2 499.5 32 480 32zm-37.4 64l-30 192h-313L69.4 96h373.2z\"},\"child\":[]}]})(props);\n};\nexport function FaGlasses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M574.1 280.37L528.75 98.66c-5.91-23.7-21.59-44.05-43-55.81-21.44-11.73-46.97-14.11-70.19-6.33l-15.25 5.08c-8.39 2.79-12.92 11.86-10.12 20.24l5.06 15.18c2.79 8.38 11.85 12.91 20.23 10.12l13.18-4.39c10.87-3.62 23-3.57 33.16 1.73 10.29 5.37 17.57 14.56 20.37 25.82l38.46 153.82c-22.19-6.81-49.79-12.46-81.2-12.46-34.77 0-73.98 7.02-114.85 26.74h-73.18c-40.87-19.74-80.08-26.75-114.86-26.75-31.42 0-59.02 5.65-81.21 12.46l38.46-153.83c2.79-11.25 10.09-20.45 20.38-25.81 10.16-5.3 22.28-5.35 33.15-1.73l13.17 4.39c8.38 2.79 17.44-1.74 20.23-10.12l5.06-15.18c2.8-8.38-1.73-17.45-10.12-20.24l-15.25-5.08c-23.22-7.78-48.75-5.41-70.19 6.33-21.41 11.77-37.09 32.11-43 55.8L1.9 280.37A64.218 64.218 0 0 0 0 295.86v70.25C0 429.01 51.58 480 115.2 480h37.12c60.28 0 110.37-45.94 114.88-105.37l2.93-38.63h35.75l2.93 38.63C313.31 434.06 363.4 480 423.68 480h37.12c63.62 0 115.2-50.99 115.2-113.88v-70.25c0-5.23-.64-10.43-1.9-15.5zm-370.72 89.42c-1.97 25.91-24.4 46.21-51.06 46.21H115.2C86.97 416 64 393.62 64 366.11v-37.54c18.12-6.49 43.42-12.92 72.58-12.92 23.86 0 47.26 4.33 69.93 12.92l-3.13 41.22zM512 366.12c0 27.51-22.97 49.88-51.2 49.88h-37.12c-26.67 0-49.1-20.3-51.06-46.21l-3.13-41.22c22.67-8.59 46.08-12.92 69.95-12.92 29.12 0 54.43 6.44 72.55 12.93v37.54z\"},\"child\":[]}]})(props);\n};\nexport function FaGlobeAfrica (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm160 215.5v6.93c0 5.87-3.32 11.24-8.57 13.86l-15.39 7.7a15.485 15.485 0 0 1-15.53-.97l-18.21-12.14a15.52 15.52 0 0 0-13.5-1.81l-2.65.88c-9.7 3.23-13.66 14.79-7.99 23.3l13.24 19.86c2.87 4.31 7.71 6.9 12.89 6.9h8.21c8.56 0 15.5 6.94 15.5 15.5v11.34c0 3.35-1.09 6.62-3.1 9.3l-18.74 24.98c-1.42 1.9-2.39 4.1-2.83 6.43l-4.3 22.83c-.62 3.29-2.29 6.29-4.76 8.56a159.608 159.608 0 0 0-25 29.16l-13.03 19.55a27.756 27.756 0 0 1-23.09 12.36c-10.51 0-20.12-5.94-24.82-15.34a78.902 78.902 0 0 1-8.33-35.29V367.5c0-8.56-6.94-15.5-15.5-15.5h-25.88c-14.49 0-28.38-5.76-38.63-16a54.659 54.659 0 0 1-16-38.63v-14.06c0-17.19 8.1-33.38 21.85-43.7l27.58-20.69a54.663 54.663 0 0 1 32.78-10.93h.89c8.48 0 16.85 1.97 24.43 5.77l14.72 7.36c3.68 1.84 7.93 2.14 11.83.84l47.31-15.77c6.33-2.11 10.6-8.03 10.6-14.7 0-8.56-6.94-15.5-15.5-15.5h-10.09c-4.11 0-8.05-1.63-10.96-4.54l-6.92-6.92a15.493 15.493 0 0 0-10.96-4.54H199.5c-8.56 0-15.5-6.94-15.5-15.5v-4.4c0-7.11 4.84-13.31 11.74-15.04l14.45-3.61c3.74-.94 7-3.23 9.14-6.44l8.08-12.11c2.87-4.31 7.71-6.9 12.89-6.9h24.21c8.56 0 15.5-6.94 15.5-15.5v-21.7C359.23 71.63 422.86 131.02 441.93 208H423.5c-8.56 0-15.5 6.94-15.5 15.5z\"},\"child\":[]}]})(props);\n};\nexport function FaGlobeAmericas (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm82.29 357.6c-3.9 3.88-7.99 7.95-11.31 11.28-2.99 3-5.1 6.7-6.17 10.71-1.51 5.66-2.73 11.38-4.77 16.87l-17.39 46.85c-13.76 3-28 4.69-42.65 4.69v-27.38c1.69-12.62-7.64-36.26-22.63-51.25-6-6-9.37-14.14-9.37-22.63v-32.01c0-11.64-6.27-22.34-16.46-27.97-14.37-7.95-34.81-19.06-48.81-26.11-11.48-5.78-22.1-13.14-31.65-21.75l-.8-.72a114.792 114.792 0 0 1-18.06-20.74c-9.38-13.77-24.66-36.42-34.59-51.14 20.47-45.5 57.36-82.04 103.2-101.89l24.01 12.01C203.48 89.74 216 82.01 216 70.11v-11.3c7.99-1.29 16.12-2.11 24.39-2.42l28.3 28.3c6.25 6.25 6.25 16.38 0 22.63L264 112l-10.34 10.34c-3.12 3.12-3.12 8.19 0 11.31l4.69 4.69c3.12 3.12 3.12 8.19 0 11.31l-8 8a8.008 8.008 0 0 1-5.66 2.34h-8.99c-2.08 0-4.08.81-5.58 2.27l-9.92 9.65a8.008 8.008 0 0 0-1.58 9.31l15.59 31.19c2.66 5.32-1.21 11.58-7.15 11.58h-5.64c-1.93 0-3.79-.7-5.24-1.96l-9.28-8.06a16.017 16.017 0 0 0-15.55-3.1l-31.17 10.39a11.95 11.95 0 0 0-8.17 11.34c0 4.53 2.56 8.66 6.61 10.69l11.08 5.54c9.41 4.71 19.79 7.16 30.31 7.16s22.59 27.29 32 32h66.75c8.49 0 16.62 3.37 22.63 9.37l13.69 13.69a30.503 30.503 0 0 1 8.93 21.57 46.536 46.536 0 0 1-13.72 32.98zM417 274.25c-5.79-1.45-10.84-5-14.15-9.97l-17.98-26.97a23.97 23.97 0 0 1 0-26.62l19.59-29.38c2.32-3.47 5.5-6.29 9.24-8.15l12.98-6.49C440.2 193.59 448 223.87 448 256c0 8.67-.74 17.16-1.82 25.54L417 274.25z\"},\"child\":[]}]})(props);\n};\nexport function FaGlobeAsia (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm-11.34 240.23c-2.89 4.82-8.1 7.77-13.72 7.77h-.31c-4.24 0-8.31 1.69-11.31 4.69l-5.66 5.66c-3.12 3.12-3.12 8.19 0 11.31l5.66 5.66c3 3 4.69 7.07 4.69 11.31V304c0 8.84-7.16 16-16 16h-6.11c-6.06 0-11.6-3.42-14.31-8.85l-22.62-45.23c-2.44-4.88-8.95-5.94-12.81-2.08l-19.47 19.46c-3 3-7.07 4.69-11.31 4.69H50.81C49.12 277.55 48 266.92 48 256c0-110.28 89.72-200 200-200 21.51 0 42.2 3.51 61.63 9.82l-50.16 38.53c-5.11 3.41-4.63 11.06.86 13.81l10.83 5.41c5.42 2.71 8.84 8.25 8.84 14.31V216c0 4.42-3.58 8-8 8h-3.06c-3.03 0-5.8-1.71-7.15-4.42-1.56-3.12-5.96-3.29-7.76-.3l-17.37 28.95zM408 358.43c0 4.24-1.69 8.31-4.69 11.31l-9.57 9.57c-3 3-7.07 4.69-11.31 4.69h-15.16c-4.24 0-8.31-1.69-11.31-4.69l-13.01-13.01a26.767 26.767 0 0 0-25.42-7.04l-21.27 5.32c-1.27.32-2.57.48-3.88.48h-10.34c-4.24 0-8.31-1.69-11.31-4.69l-11.91-11.91a8.008 8.008 0 0 1-2.34-5.66v-10.2c0-3.27 1.99-6.21 5.03-7.43l39.34-15.74c1.98-.79 3.86-1.82 5.59-3.05l23.71-16.89a7.978 7.978 0 0 1 4.64-1.48h12.09c3.23 0 6.15 1.94 7.39 4.93l5.35 12.85a4 4 0 0 0 3.69 2.46h3.8c1.78 0 3.35-1.18 3.84-2.88l4.2-14.47c.5-1.71 2.06-2.88 3.84-2.88h6.06c2.21 0 4 1.79 4 4v12.93c0 2.12.84 4.16 2.34 5.66l11.91 11.91c3 3 4.69 7.07 4.69 11.31v24.6z\"},\"child\":[]}]})(props);\n};\nexport function FaGlobeEurope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm200 248c0 22.5-3.9 44.2-10.8 64.4h-20.3c-4.3 0-8.4-1.7-11.4-4.8l-32-32.6c-4.5-4.6-4.5-12.1.1-16.7l12.5-12.5v-8.7c0-3-1.2-5.9-3.3-8l-9.4-9.4c-2.1-2.1-5-3.3-8-3.3h-16c-6.2 0-11.3-5.1-11.3-11.3 0-3 1.2-5.9 3.3-8l9.4-9.4c2.1-2.1 5-3.3 8-3.3h32c6.2 0 11.3-5.1 11.3-11.3v-9.4c0-6.2-5.1-11.3-11.3-11.3h-36.7c-8.8 0-16 7.2-16 16v4.5c0 6.9-4.4 13-10.9 15.2l-31.6 10.5c-3.3 1.1-5.5 4.1-5.5 7.6v2.2c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8s-3.6-8-8-8H247c-3 0-5.8 1.7-7.2 4.4l-9.4 18.7c-2.7 5.4-8.2 8.8-14.3 8.8H194c-8.8 0-16-7.2-16-16V199c0-4.2 1.7-8.3 4.7-11.3l20.1-20.1c4.6-4.6 7.2-10.9 7.2-17.5 0-3.4 2.2-6.5 5.5-7.6l40-13.3c1.7-.6 3.2-1.5 4.4-2.7l26.8-26.8c2.1-2.1 3.3-5 3.3-8 0-6.2-5.1-11.3-11.3-11.3H258l-16 16v8c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8v-20c0-2.5 1.2-4.9 3.2-6.4l28.9-21.7c1.9-.1 3.8-.3 5.7-.3C358.3 56 448 145.7 448 256zM130.1 149.1c0-3 1.2-5.9 3.3-8l25.4-25.4c2.1-2.1 5-3.3 8-3.3 6.2 0 11.3 5.1 11.3 11.3v16c0 3-1.2 5.9-3.3 8l-9.4 9.4c-2.1 2.1-5 3.3-8 3.3h-16c-6.2 0-11.3-5.1-11.3-11.3zm128 306.4v-7.1c0-8.8-7.2-16-16-16h-20.2c-10.8 0-26.7-5.3-35.4-11.8l-22.2-16.7c-11.5-8.6-18.2-22.1-18.2-36.4v-23.9c0-16 8.4-30.8 22.1-39l42.9-25.7c7.1-4.2 15.2-6.5 23.4-6.5h31.2c10.9 0 21.4 3.9 29.6 10.9l43.2 37.1h18.3c8.5 0 16.6 3.4 22.6 9.4l17.3 17.3c3.4 3.4 8.1 5.3 12.9 5.3H423c-32.4 58.9-93.8 99.5-164.9 103.1z\"},\"child\":[]}]})(props);\n};\nexport function FaGlobe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336.5 160C322 70.7 287.8 8 248 8s-74 62.7-88.5 152h177zM152 256c0 22.2 1.2 43.5 3.3 64h185.3c2.1-20.5 3.3-41.8 3.3-64s-1.2-43.5-3.3-64H155.3c-2.1 20.5-3.3 41.8-3.3 64zm324.7-96c-28.6-67.9-86.5-120.4-158-141.6 24.4 33.8 41.2 84.7 50 141.6h108zM177.2 18.4C105.8 39.6 47.8 92.1 19.3 160h108c8.7-56.9 25.5-107.8 49.9-141.6zM487.4 192H372.7c2.1 21 3.3 42.5 3.3 64s-1.2 43-3.3 64h114.6c5.5-20.5 8.6-41.8 8.6-64s-3.1-43.5-8.5-64zM120 256c0-21.5 1.2-43 3.3-64H8.6C3.2 212.5 0 233.8 0 256s3.2 43.5 8.6 64h114.6c-2-21-3.2-42.5-3.2-64zm39.5 96c14.5 89.3 48.7 152 88.5 152s74-62.7 88.5-152h-177zm159.3 141.6c71.4-21.2 129.4-73.7 158-141.6h-108c-8.8 56.9-25.6 107.8-50 141.6zM19.3 352c28.6 67.9 86.5 120.4 158 141.6-24.4-33.8-41.2-84.7-50-141.6h-108z\"},\"child\":[]}]})(props);\n};\nexport function FaGolfBall (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 416 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 416h224c0 17.7-14.3 32-32 32h-16c-17.7 0-32 14.3-32 32v20c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-20c0-17.7-14.3-32-32-32h-16c-17.7 0-32-14.3-32-32zm320-208c0 74.2-39 139.2-97.5 176h-221C39 347.2 0 282.2 0 208 0 93.1 93.1 0 208 0s208 93.1 208 208zm-180.1 43.9c18.3 0 33.1-14.8 33.1-33.1 0-14.4-9.3-26.3-22.1-30.9 9.6 26.8-15.6 51.3-41.9 41.9 4.6 12.8 16.5 22.1 30.9 22.1zm49.1 46.9c0-14.4-9.3-26.3-22.1-30.9 9.6 26.8-15.6 51.3-41.9 41.9 4.6 12.8 16.5 22.1 30.9 22.1 18.3 0 33.1-14.9 33.1-33.1zm64-64c0-14.4-9.3-26.3-22.1-30.9 9.6 26.8-15.6 51.3-41.9 41.9 4.6 12.8 16.5 22.1 30.9 22.1 18.3 0 33.1-14.9 33.1-33.1z\"},\"child\":[]}]})(props);\n};\nexport function FaGopuram (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 352h-16V240c0-8.8-7.2-16-16-16h-16v-80c0-8.8-7.2-16-16-16h-16V16c0-8.8-7.2-16-16-16s-16 7.2-16 16v16h-64V16c0-8.8-7.2-16-16-16s-16 7.2-16 16v16h-64V16c0-8.8-7.2-16-16-16s-16 7.2-16 16v16h-64V16c0-8.8-7.2-16-16-16S96 7.2 96 16v112H80c-8.8 0-16 7.2-16 16v80H48c-8.8 0-16 7.2-16 16v112H16c-8.8 0-16 7.2-16 16v128c0 8.8 7.2 16 16 16h80V352h32V224h32v-96h32v96h-32v128h-32v160h80v-80c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16v80h80V352h-32V224h-32v-96h32v96h32v128h32v160h80c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16zM232 176c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v48h-48zm56 176h-64v-64c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaGraduationCap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M622.34 153.2L343.4 67.5c-15.2-4.67-31.6-4.67-46.79 0L17.66 153.2c-23.54 7.23-23.54 38.36 0 45.59l48.63 14.94c-10.67 13.19-17.23 29.28-17.88 46.9C38.78 266.15 32 276.11 32 288c0 10.78 5.68 19.85 13.86 25.65L20.33 428.53C18.11 438.52 25.71 448 35.94 448h56.11c10.24 0 17.84-9.48 15.62-19.47L82.14 313.65C90.32 307.85 96 298.78 96 288c0-11.57-6.47-21.25-15.66-26.87.76-15.02 8.44-28.3 20.69-36.72L296.6 284.5c9.06 2.78 26.44 6.25 46.79 0l278.95-85.7c23.55-7.24 23.55-38.36 0-45.6zM352.79 315.09c-28.53 8.76-52.84 3.92-65.59 0l-145.02-44.55L128 384c0 35.35 85.96 64 192 64s192-28.65 192-64l-14.18-113.47-145.03 44.56z\"},\"child\":[]}]})(props);\n};\nexport function FaGreaterThanEqual (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M55.22 107.69l175.56 68.09-175.44 68.05c-18.39 6.03-27.88 24.39-21.2 41l12.09 30.08c6.68 16.61 26.99 25.19 45.38 19.15L393.02 214.2c13.77-4.52 22.98-16.61 22.98-30.17v-15.96c0-13.56-9.21-25.65-22.98-30.17L91.3 17.92c-18.29-6-38.51 2.53-45.15 19.06L34.12 66.9c-6.64 16.53 2.81 34.79 21.1 40.79zM424 400H24c-13.25 0-24 10.74-24 24v48c0 13.25 10.75 24 24 24h400c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaGreaterThan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M365.52 209.85L59.22 67.01c-16.06-7.49-35.15-.54-42.64 15.52L3.01 111.61c-7.49 16.06-.54 35.15 15.52 42.64L236.96 256.1 18.49 357.99C2.47 365.46-4.46 384.5 3.01 400.52l13.52 29C24 445.54 43.04 452.47 59.06 445l306.47-142.91a32.003 32.003 0 0 0 18.48-29v-34.23c-.01-12.45-7.21-23.76-18.49-29.01z\"},\"child\":[]}]})(props);\n};\nexport function FaGrimace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM144 400h-8c-17.7 0-32-14.3-32-32v-8h40v40zm0-56h-40v-8c0-17.7 14.3-32 32-32h8v40zm-8-136c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm72 192h-48v-40h48v40zm0-56h-48v-40h48v40zm64 56h-48v-40h48v40zm0-56h-48v-40h48v40zm64 56h-48v-40h48v40zm0-56h-48v-40h48v40zm-8-104c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm64 128c0 17.7-14.3 32-32 32h-8v-40h40v8zm0-24h-40v-40h8c17.7 0 32 14.3 32 32v8z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm63.7 128.7c7.6-11.4 24.7-11.7 32.7 0 12.4 18.4 15.1 36.9 15.7 55.3-.5 18.4-3.3 36.9-15.7 55.3-7.6 11.4-24.7 11.7-32.7 0-12.4-18.4-15.1-36.9-15.7-55.3.5-18.4 3.3-36.9 15.7-55.3zm-160 0c7.6-11.4 24.7-11.7 32.7 0 12.4 18.4 15.1 36.9 15.7 55.3-.5 18.4-3.3 36.9-15.7 55.3-7.6 11.4-24.7 11.7-32.7 0-12.4-18.4-15.1-36.9-15.7-55.3.5-18.4 3.3-36.9 15.7-55.3zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinBeamSweat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 504 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M456 128c26.5 0 48-21 48-47 0-20-28.5-60.4-41.6-77.8-3.2-4.3-9.6-4.3-12.8 0C436.5 20.6 408 61 408 81c0 26 21.5 47 48 47zm0 32c-44.1 0-80-35.4-80-79 0-4.4.3-14.2 8.1-32.2C345 23.1 298.3 8 248 8 111 8 0 119 0 256s111 248 248 248 248-111 248-248c0-35.1-7.4-68.4-20.5-98.6-6.3 1.5-12.7 2.6-19.5 2.6zm-128-8c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 12-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.1 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm-160 0c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 12-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm80 280c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.2 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinBeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 144c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.1 7.3-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm-160 0c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm80 280c-60.6 0-134.5-38.3-143.8-93.3-2-11.9 9.4-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinHearts (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM90.4 183.6c6.7-17.6 26.7-26.7 44.9-21.9l7.1 1.9 2-7.1c5-18.1 22.8-30.9 41.5-27.9 21.4 3.4 34.4 24.2 28.8 44.5L195.3 243c-1.2 4.5-5.9 7.2-10.5 6l-70.2-18.2c-20.4-5.4-31.9-27-24.2-47.2zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.2-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.6 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3zm133.4-201.3l-70.2 18.2c-4.5 1.2-9.2-1.5-10.5-6L281.3 173c-5.6-20.3 7.4-41.1 28.8-44.5 18.6-3 36.4 9.8 41.5 27.9l2 7.1 7.1-1.9c18.2-4.7 38.2 4.3 44.9 21.9 7.7 20.3-3.8 41.9-24.2 47.2z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinSquintTears (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M409.6 111.9c22.6-3.2 73.5-12 88.3-26.8 19.2-19.2 18.9-50.6-.7-70.2S446-5 426.9 14.2c-14.8 14.8-23.5 65.7-26.8 88.3-.8 5.5 3.9 10.2 9.5 9.4zM102.4 400.1c-22.6 3.2-73.5 12-88.3 26.8-19.1 19.1-18.8 50.6.8 70.2s51 19.9 70.2.7c14.8-14.8 23.5-65.7 26.8-88.3.8-5.5-3.9-10.2-9.5-9.4zm311.7-256.5c-33 3.9-48.6-25.1-45.7-45.7 3.4-24 7.4-42.1 11.5-56.5C285.1-13.4 161.8-.5 80.6 80.6-.5 161.7-13.4 285 41.4 379.9c14.4-4.1 32.4-8 56.5-11.5 33.2-3.9 48.6 25.2 45.7 45.7-3.4 24-7.4 42.1-11.5 56.5 94.8 54.8 218.1 41.9 299.3-39.2s94-204.4 39.2-299.3c-14.4 4.1-32.5 8-56.5 11.5zM255.7 106c3.3-13.2 22.4-11.5 23.6 1.8l4.8 52.3 52.3 4.8c13.4 1.2 14.9 20.3 1.8 23.6l-90.5 22.6c-8.9 2.2-16.7-5.9-14.5-14.5l22.5-90.6zm-90.9 230.3L160 284l-52.3-4.8c-13.4-1.2-14.9-20.3-1.8-23.6l90.5-22.6c8.8-2.2 16.7 5.8 14.5 14.5L188.3 338c-3.1 13.2-22.2 11.7-23.5-1.7zm215.7 44.2c-29.3 29.3-75.7 50.4-116.7 50.4-18.9 0-36.6-4.5-51-14.7-9.8-6.9-8.7-21.8 2-27.2 28.3-14.6 63.9-42.4 97.8-76.3s61.7-69.6 76.3-97.8c5.4-10.5 20.2-11.9 27.3-2 32.3 45.3 7.1 124.7-35.7 167.6z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinSquint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm33.8 189.7l80-48c11.6-6.9 24 7.7 15.4 18L343.6 208l33.6 40.3c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.7-4.7-7.7-15.9 0-20.6zm-163-30c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.8 4.7 7.8 15.9 0 20.6l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3-33.6-40.3zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.9 9.4-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.2 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinStars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM94.6 168.9l34.9-5 15.5-31.6c2.9-5.8 11-5.8 13.9 0l15.5 31.6 34.9 5c6.2 1 8.9 8.6 4.3 13.2l-25.4 24.6 6 34.9c1 6.2-5.3 11-11 7.9L152 233.3l-31.3 16.3c-5.7 3.1-12-1.7-11-7.9l6-34.9-25.4-24.6c-4.6-4.7-1.9-12.3 4.3-13.3zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3zm157.7-249.9l-25.4 24.6 6 34.9c1 6.2-5.3 11-11 7.9L344 233.3l-31.3 16.3c-5.7 3.1-12-1.7-11-7.9l6-34.9-25.4-24.6c-4.5-4.6-1.9-12.2 4.3-13.2l34.9-5 15.5-31.6c2.9-5.8 11-5.8 13.9 0l15.5 31.6 34.9 5c6.3.9 9 8.5 4.4 13.1z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinTears (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M102.4 256.1c-22.6 3.2-73.5 12-88.3 26.8-19.1 19.1-18.8 50.6.8 70.2s51 19.9 70.2.7c14.8-14.8 23.5-65.7 26.8-88.3.8-5.5-3.9-10.2-9.5-9.4zm523.4 26.8c-14.8-14.8-65.7-23.5-88.3-26.8-5.5-.8-10.3 3.9-9.5 9.5 3.2 22.6 12 73.5 26.8 88.3 19.2 19.2 50.6 18.9 70.2-.7s20-51.2.8-70.3zm-129.4-12.8c-3.8-26.6 19.1-49.5 45.7-45.7 8.9 1.3 16.8 2.7 24.3 4.1C552.7 104.5 447.7 8 320 8S87.3 104.5 73.6 228.5c7.5-1.4 15.4-2.8 24.3-4.1 33.2-3.9 48.6 25.3 45.7 45.7-11.8 82.3-29.9 100.4-35.8 106.4-.9.9-2 1.6-3 2.5 42.7 74.6 123 125 215.2 125s172.5-50.4 215.2-125.1c-1-.9-2.1-1.5-3-2.5-5.9-5.9-24-24-35.8-106.3zM400 152c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 12-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm-160 0c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 12-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm80 280c-60.6 0-134.5-38.3-143.8-93.3-2-11.7 9.2-21.6 20.7-17.9C227.1 330.5 272 336 320 336s92.9-5.5 123.1-15.2c11.4-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinTongueSquint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M293.1 374.6c-14.4-6.5-31.1 2.2-34.6 17.6l-1.8 7.8c-2.1 9.2-15.2 9.2-17.3 0l-1.8-7.8c-3.5-15.4-20.2-24.1-34.6-17.6-.9.4.3-.2-18.9 9.4v63c0 35.2 28 64.5 63.1 64.9 35.7.5 64.9-28.4 64.9-64v-64c-19.5-9.6-18.2-8.9-19-9.3zM248 8C111 8 0 119 0 256c0 106.3 67 196.7 161 232-5.6-12.2-9-25.7-9-40v-45.5c-24.7-16.2-43.5-38.1-47.8-63.8-2-11.8 9.2-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.7 22.6 6.1 20.7 17.9-4.3 25.7-23.1 47.6-47.8 63.8V448c0 14.3-3.4 27.8-9 40 94-35.3 161-125.7 161-232C496 119 385 8 248 8zm-33.8 210.3l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3-33.6-40.3c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.7 4.7 7.7 15.9 0 20.6zm163 30c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.8-4.7-7.8-15.9 0-20.6l80-48c11.7-6.9 23.9 7.7 15.4 18L343.6 208l33.6 40.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinTongueWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M344 184c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM248 8C111 8 0 119 0 256c0 106.3 67 196.7 161 232-5.6-12.2-9-25.7-9-40v-45.5c-24.7-16.2-43.5-38.1-47.8-63.8-2-11.8 9.3-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.1 20.7 17.9-4.3 25.7-23.1 47.6-47.8 63.8V448c0 14.3-3.4 27.8-9 40 94-35.3 161-125.7 161-232C496 119 385 8 248 8zm-56 225l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L112 233c-8.5 7.4-21.6.3-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S208 197 212 222.2c1.6 11.1-11.6 18.2-20 10.8zm152 39c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm-50.9 102.6c-14.4-6.5-31.1 2.2-34.6 17.6l-1.8 7.8c-2.1 9.2-15.2 9.2-17.3 0l-1.8-7.8c-3.5-15.4-20.2-24.1-34.6-17.6-.9.4.3-.2-18.9 9.4v63c0 35.2 28 64.5 63.1 64.9 35.7.5 64.9-28.4 64.9-64v-64c-19.5-9.6-18.2-8.9-19-9.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinTongue (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256c0 106.3 67 196.7 161 232-5.6-12.2-9-25.7-9-40v-45.5c-24.7-16.2-43.5-38.1-47.8-63.8-2-11.8 9.3-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.6 22.6 6.1 20.7 17.9-4.3 25.7-23.1 47.6-47.8 63.8V448c0 14.3-3.4 27.8-9 40 94-35.3 161-125.7 161-232C496 119 385 8 248 8zm-80 232c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm160 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm-34.9 134.6c-14.4-6.5-31.1 2.2-34.6 17.6l-1.8 7.8c-2.1 9.2-15.2 9.2-17.3 0l-1.8-7.8c-3.5-15.4-20.2-24.1-34.6-17.6-.9.4.3-.2-18.9 9.4v63c0 35.2 28 64.5 63.1 64.9 35.7.5 64.9-28.4 64.9-64v-64c-19.5-9.6-18.2-8.9-19-9.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGrinWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 256c0 137 111 248 248 248s248-111 248-248S385 8 248 8 0 119 0 256zm200-48c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm168 25l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L288 233c-8.3 7.4-21.6.4-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S384 197 388 222.2c1.6 11-11.5 18.2-20 10.8zm-243.1 87.8C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.3-3.7 22.6 6 20.7 17.9-9.2 55-83.2 93.3-143.8 93.3s-134.5-38.3-143.8-93.3c-2-11.9 9.3-21.6 20.7-17.9z\"},\"child\":[]}]})(props);\n};\nexport function FaGrin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm80 256c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.3-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z\"},\"child\":[]}]})(props);\n};\nexport function FaGripHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 288H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM96 96H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaGripLinesVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 496V16c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v480c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16zm128 0V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v480c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaGripLines (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 288H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-128H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaGripVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 32H32C14.33 32 0 46.33 0 64v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM288 32h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaGuitar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.63 39L473 9.37a32 32 0 0 0-45.26 0L381.46 55.7a35.14 35.14 0 0 0-8.53 13.79L360.77 106l-76.26 76.26c-12.16-8.76-25.5-15.74-40.1-19.14-33.45-7.78-67-.88-89.88 22a82.45 82.45 0 0 0-20.24 33.47c-6 18.56-23.21 32.69-42.15 34.46-23.7 2.27-45.73 11.45-62.61 28.44C-16.11 327-7.9 409 47.58 464.45S185 528 230.56 482.52c17-16.88 26.16-38.9 28.45-62.71 1.76-18.85 15.89-36.13 34.43-42.14a82.6 82.6 0 0 0 33.48-20.25c22.87-22.88 29.74-56.36 22-89.75-3.39-14.64-10.37-28-19.16-40.2L406 151.23l36.48-12.16a35.14 35.14 0 0 0 13.79-8.53l46.33-46.32a32 32 0 0 0 .03-45.22zM208 352a48 48 0 1 1 48-48 48 48 0 0 1-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaHSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zm-112 48h-32c-8.837 0-16 7.163-16 16v80H160v-80c0-8.837-7.163-16-16-16h-32c-8.837 0-16 7.163-16 16v224c0 8.837 7.163 16 16 16h32c8.837 0 16-7.163 16-16v-80h128v80c0 8.837 7.163 16 16 16h32c8.837 0 16-7.163 16-16V144c0-8.837-7.163-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaHamburger (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256H48a48 48 0 0 0 0 96h416a48 48 0 0 0 0-96zm16 128H32a16 16 0 0 0-16 16v16a64 64 0 0 0 64 64h352a64 64 0 0 0 64-64v-16a16 16 0 0 0-16-16zM58.64 224h394.72c34.57 0 54.62-43.9 34.82-75.88C448 83.2 359.55 32.1 256 32c-103.54.1-192 51.2-232.18 116.11C4 180.09 24.07 224 58.64 224zM384 112a16 16 0 1 1-16 16 16 16 0 0 1 16-16zM256 80a16 16 0 1 1-16 16 16 16 0 0 1 16-16zm-128 32a16 16 0 1 1-16 16 16 16 0 0 1 16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaHammer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M571.31 193.94l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31-28.9-28.9c5.63-21.31.36-44.9-16.35-61.61l-45.25-45.25c-62.48-62.48-163.79-62.48-226.28 0l90.51 45.25v18.75c0 16.97 6.74 33.25 18.75 45.25l49.14 49.14c16.71 16.71 40.3 21.98 61.61 16.35l28.9 28.9-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l90.51-90.51c6.23-6.24 6.23-16.37-.02-22.62zm-286.72-15.2c-3.7-3.7-6.84-7.79-9.85-11.95L19.64 404.96c-25.57 23.88-26.26 64.19-1.53 88.93s65.05 24.05 88.93-1.53l238.13-255.07c-3.96-2.91-7.9-5.87-11.44-9.41l-49.14-49.14z\"},\"child\":[]}]})(props);\n};\nexport function FaHamsa (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M509.34 307.25C504.28 295.56 492.75 288 480 288h-64V80c0-22-18-40-40-40s-40 18-40 40v134c0 5.52-4.48 10-10 10h-20c-5.52 0-10-4.48-10-10V40c0-22-18-40-40-40s-40 18-40 40v174c0 5.52-4.48 10-10 10h-20c-5.52 0-10-4.48-10-10V80c0-22-18-40-40-40S96 58 96 80v208H32c-12.75 0-24.28 7.56-29.34 19.25a31.966 31.966 0 0 0 5.94 34.58l102.69 110.03C146.97 490.08 199.69 512 256 512s109.03-21.92 144.72-60.14L503.4 341.83a31.966 31.966 0 0 0 5.94-34.58zM256 416c-53.02 0-96-64-96-64s42.98-64 96-64 96 64 96 64-42.98 64-96 64zm0-96c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaHandHoldingHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M275.3 250.5c7 7.4 18.4 7.4 25.5 0l108.9-114.2c31.6-33.2 29.8-88.2-5.6-118.8-30.8-26.7-76.7-21.9-104.9 7.7L288 36.9l-11.1-11.6C248.7-4.4 202.8-9.2 172 17.5c-35.3 30.6-37.2 85.6-5.6 118.8l108.9 114.2zm290 77.6c-11.8-10.7-30.2-10-42.6 0L430.3 402c-11.3 9.1-25.4 14-40 14H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h78.3c15.9 0 30.7-10.9 33.3-26.6 3.3-20-12.1-37.4-31.6-37.4H192c-27 0-53.1 9.3-74.1 26.3L71.4 384H16c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h356.8c14.5 0 28.6-4.9 40-14L564 377c15.2-12.1 16.4-35.3 1.3-48.9z\"},\"child\":[]}]})(props);\n};\nexport function FaHandHoldingMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M159.88,175.82h64v64a16,16,0,0,0,16,16h64a16,16,0,0,0,16-16v-64h64a16,16,0,0,0,16-16v-64a16,16,0,0,0-16-16h-64v-64a16,16,0,0,0-16-16h-64a16,16,0,0,0-16,16v64h-64a16,16,0,0,0-16,16v64A16,16,0,0,0,159.88,175.82ZM568.07,336.13a39.91,39.91,0,0,0-55.93-8.47L392.47,415.84H271.86a16,16,0,0,1,0-32H350.1c16,0,30.75-10.87,33.37-26.61a32.06,32.06,0,0,0-31.62-37.38h-160a117.7,117.7,0,0,0-74.12,26.25l-46.5,37.74H15.87a16.11,16.11,0,0,0-16,16v96a16.11,16.11,0,0,0,16,16h347a104.8,104.8,0,0,0,61.7-20.27L559.6,392A40,40,0,0,0,568.07,336.13Z\"},\"child\":[]}]})(props);\n};\nexport function FaHandHoldingUsd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M271.06,144.3l54.27,14.3a8.59,8.59,0,0,1,6.63,8.1c0,4.6-4.09,8.4-9.12,8.4h-35.6a30,30,0,0,1-11.19-2.2c-5.24-2.2-11.28-1.7-15.3,2l-19,17.5a11.68,11.68,0,0,0-2.25,2.66,11.42,11.42,0,0,0,3.88,15.74,83.77,83.77,0,0,0,34.51,11.5V240c0,8.8,7.83,16,17.37,16h17.37c9.55,0,17.38-7.2,17.38-16V222.4c32.93-3.6,57.84-31,53.5-63-3.15-23-22.46-41.3-46.56-47.7L282.68,97.4a8.59,8.59,0,0,1-6.63-8.1c0-4.6,4.09-8.4,9.12-8.4h35.6A30,30,0,0,1,332,83.1c5.23,2.2,11.28,1.7,15.3-2l19-17.5A11.31,11.31,0,0,0,368.47,61a11.43,11.43,0,0,0-3.84-15.78,83.82,83.82,0,0,0-34.52-11.5V16c0-8.8-7.82-16-17.37-16H295.37C285.82,0,278,7.2,278,16V33.6c-32.89,3.6-57.85,31-53.51,63C227.63,119.6,247,137.9,271.06,144.3ZM565.27,328.1c-11.8-10.7-30.2-10-42.6,0L430.27,402a63.64,63.64,0,0,1-40,14H272a16,16,0,0,1,0-32h78.29c15.9,0,30.71-10.9,33.25-26.6a31.2,31.2,0,0,0,.46-5.46A32,32,0,0,0,352,320H192a117.66,117.66,0,0,0-74.1,26.29L71.4,384H16A16,16,0,0,0,0,400v96a16,16,0,0,0,16,16H372.77a64,64,0,0,0,40-14L564,377a32,32,0,0,0,1.28-48.9Z\"},\"child\":[]}]})(props);\n};\nexport function FaHandHoldingWater (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 256c53 0 96-42.1 96-94 0-40-57.1-120.7-83.2-155.6-6.4-8.5-19.2-8.5-25.6 0C249.1 41.3 192 122 192 162c0 51.9 43 94 96 94zm277.3 72.1c-11.8-10.7-30.2-10-42.6 0L430.3 402c-11.3 9.1-25.4 14-40 14H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h78.3c15.9 0 30.7-10.9 33.3-26.6 3.3-20-12.1-37.4-31.6-37.4H192c-27 0-53.1 9.3-74.1 26.3L71.4 384H16c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h356.8c14.5 0 28.6-4.9 40-14L564 377c15.2-12.1 16.4-35.3 1.3-48.9z\"},\"child\":[]}]})(props);\n};\nexport function FaHandHolding (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M565.3 328.1c-11.8-10.7-30.2-10-42.6 0L430.3 402c-11.3 9.1-25.4 14-40 14H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h78.3c15.9 0 30.7-10.9 33.3-26.6 3.3-20-12.1-37.4-31.6-37.4H192c-27 0-53.1 9.3-74.1 26.3L71.4 384H16c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h356.8c14.5 0 28.6-4.9 40-14L564 377c15.2-12.1 16.4-35.3 1.3-48.9z\"},\"child\":[]}]})(props);\n};\nexport function FaHandLizard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 480h192V363.778a95.998 95.998 0 0 0-14.833-51.263L398.127 54.368A48 48 0 0 0 357.544 32H24C10.745 32 0 42.745 0 56v16c0 30.928 25.072 56 56 56h229.981c12.844 0 21.556 13.067 16.615 24.923l-21.41 51.385A32 32 0 0 1 251.648 224H128c-35.346 0-64 28.654-64 64v8c0 13.255 10.745 24 24 24h147.406a47.995 47.995 0 0 1 25.692 7.455l111.748 70.811A24.001 24.001 0 0 1 384 418.539V480z\"},\"child\":[]}]})(props);\n};\nexport function FaHandMiddleFinger (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M479.93 317.12a37.33 37.33 0 0 0-28.28-36.19L416 272v-49.59c0-11.44-9.69-21.29-23.15-23.54l-38.4-6.4C336.63 189.5 320 200.86 320 216v32a8 8 0 0 1-16 0V50c0-26.28-20.25-49.2-46.52-50A48 48 0 0 0 208 48v200a8 8 0 0 1-16 0v-32c0-15.15-16.63-26.51-34.45-23.54l-30.68 5.12c-18 3-30.87 16.12-30.87 31.38V376a8 8 0 0 1-16 0v-76l-27.36 15A37.34 37.34 0 0 0 32 348.4v73.47a37.31 37.31 0 0 0 10.93 26.39l30.93 30.93A112 112 0 0 0 153.05 512h215A112 112 0 0 0 480 400z\"},\"child\":[]}]})(props);\n};\nexport function FaHandPaper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408.781 128.007C386.356 127.578 368 146.36 368 168.79V256h-8V79.79c0-22.43-18.356-41.212-40.781-40.783C297.488 39.423 280 57.169 280 79v177h-8V40.79C272 18.36 253.644-.422 231.219.007 209.488.423 192 18.169 192 40v216h-8V80.79c0-22.43-18.356-41.212-40.781-40.783C121.488 40.423 104 58.169 104 80v235.992l-31.648-43.519c-12.993-17.866-38.009-21.817-55.877-8.823-17.865 12.994-21.815 38.01-8.822 55.877l125.601 172.705A48 48 0 0 0 172.073 512h197.59c22.274 0 41.622-15.324 46.724-37.006l26.508-112.66a192.011 192.011 0 0 0 5.104-43.975V168c.001-21.831-17.487-39.577-39.218-39.993z\"},\"child\":[]}]})(props);\n};\nexport function FaHandPeace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408 216c-22.092 0-40 17.909-40 40h-8v-32c0-22.091-17.908-40-40-40s-40 17.909-40 40v32h-8V48c0-26.51-21.49-48-48-48s-48 21.49-48 48v208h-13.572L92.688 78.449C82.994 53.774 55.134 41.63 30.461 51.324 5.787 61.017-6.356 88.877 3.337 113.551l74.765 190.342-31.09 24.872c-15.381 12.306-19.515 33.978-9.741 51.081l64 112A39.998 39.998 0 0 0 136 512h240c18.562 0 34.686-12.77 38.937-30.838l32-136A39.97 39.97 0 0 0 448 336v-80c0-22.091-17.908-40-40-40z\"},\"child\":[]}]})(props);\n};\nexport function FaHandPointDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M91.826 467.2V317.966c-8.248 5.841-16.558 10.57-24.918 14.153C35.098 345.752-.014 322.222 0 288c.008-18.616 10.897-32.203 29.092-40 28.286-12.122 64.329-78.648 77.323-107.534 7.956-17.857 25.479-28.453 43.845-28.464l.001-.002h171.526c11.812 0 21.897 8.596 23.703 20.269 7.25 46.837 38.483 61.76 38.315 123.731-.007 2.724.195 13.254.195 16 0 50.654-22.122 81.574-71.263 72.6-9.297 18.597-39.486 30.738-62.315 16.45-21.177 24.645-53.896 22.639-70.944 6.299V467.2c0 24.15-20.201 44.8-43.826 44.8-23.283 0-43.826-21.35-43.826-44.8zM112 72V24c0-13.255 10.745-24 24-24h192c13.255 0 24 10.745 24 24v48c0 13.255-10.745 24-24 24H136c-13.255 0-24-10.745-24-24zm212-24c0-11.046-8.954-20-20-20s-20 8.954-20 20 8.954 20 20 20 20-8.954 20-20z\"},\"child\":[]}]})(props);\n};\nexport function FaHandPointLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M44.8 155.826h149.234c-5.841-8.248-10.57-16.558-14.153-24.918C166.248 99.098 189.778 63.986 224 64c18.616.008 32.203 10.897 40 29.092 12.122 28.286 78.648 64.329 107.534 77.323 17.857 7.956 28.453 25.479 28.464 43.845l.002.001v171.526c0 11.812-8.596 21.897-20.269 23.703-46.837 7.25-61.76 38.483-123.731 38.315-2.724-.007-13.254.195-16 .195-50.654 0-81.574-22.122-72.6-71.263-18.597-9.297-30.738-39.486-16.45-62.315-24.645-21.177-22.639-53.896-6.299-70.944H44.8c-24.15 0-44.8-20.201-44.8-43.826 0-23.283 21.35-43.826 44.8-43.826zM440 176h48c13.255 0 24 10.745 24 24v192c0 13.255-10.745 24-24 24h-48c-13.255 0-24-10.745-24-24V200c0-13.255 10.745-24 24-24zm24 212c11.046 0 20-8.954 20-20s-8.954-20-20-20-20 8.954-20 20 8.954 20 20 20z\"},\"child\":[]}]})(props);\n};\nexport function FaHandPointRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 199.652c0 23.625-20.65 43.826-44.8 43.826h-99.851c16.34 17.048 18.346 49.766-6.299 70.944 14.288 22.829 2.147 53.017-16.45 62.315C353.574 425.878 322.654 448 272 448c-2.746 0-13.276-.203-16-.195-61.971.168-76.894-31.065-123.731-38.315C120.596 407.683 112 397.599 112 385.786V214.261l.002-.001c.011-18.366 10.607-35.889 28.464-43.845 28.886-12.994 95.413-49.038 107.534-77.323 7.797-18.194 21.384-29.084 40-29.092 34.222-.014 57.752 35.098 44.119 66.908-3.583 8.359-8.312 16.67-14.153 24.918H467.2c23.45 0 44.8 20.543 44.8 43.826zM96 200v192c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V200c0-13.255 10.745-24 24-24h48c13.255 0 24 10.745 24 24zM68 368c0-11.046-8.954-20-20-20s-20 8.954-20 20 8.954 20 20 20 20-8.954 20-20z\"},\"child\":[]}]})(props);\n};\nexport function FaHandPointUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M135.652 0c23.625 0 43.826 20.65 43.826 44.8v99.851c17.048-16.34 49.766-18.346 70.944 6.299 22.829-14.288 53.017-2.147 62.315 16.45C361.878 158.426 384 189.346 384 240c0 2.746-.203 13.276-.195 16 .168 61.971-31.065 76.894-38.315 123.731C343.683 391.404 333.599 400 321.786 400H150.261l-.001-.002c-18.366-.011-35.889-10.607-43.845-28.464C93.421 342.648 57.377 276.122 29.092 264 10.897 256.203.008 242.616 0 224c-.014-34.222 35.098-57.752 66.908-44.119 8.359 3.583 16.67 8.312 24.918 14.153V44.8c0-23.45 20.543-44.8 43.826-44.8zM136 416h192c13.255 0 24 10.745 24 24v48c0 13.255-10.745 24-24 24H136c-13.255 0-24-10.745-24-24v-48c0-13.255 10.745-24 24-24zm168 28c-11.046 0-20 8.954-20 20s8.954 20 20 20 20-8.954 20-20-8.954-20-20-20z\"},\"child\":[]}]})(props);\n};\nexport function FaHandPointer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 240v96c0 3.084-.356 6.159-1.063 9.162l-32 136C410.686 499.23 394.562 512 376 512H168a40.004 40.004 0 0 1-32.35-16.473l-127.997-176c-12.993-17.866-9.043-42.883 8.822-55.876 17.867-12.994 42.884-9.043 55.877 8.823L104 315.992V40c0-22.091 17.908-40 40-40s40 17.909 40 40v200h8v-40c0-22.091 17.908-40 40-40s40 17.909 40 40v40h8v-24c0-22.091 17.908-40 40-40s40 17.909 40 40v24h8c0-22.091 17.908-40 40-40s40 17.909 40 40zm-256 80h-8v96h8v-96zm88 0h-8v96h8v-96zm88 0h-8v96h8v-96z\"},\"child\":[]}]})(props);\n};\nexport function FaHandRock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464.8 80c-26.9-.4-48.8 21.2-48.8 48h-8V96.8c0-26.3-20.9-48.3-47.2-48.8-26.9-.4-48.8 21.2-48.8 48v32h-8V80.8c0-26.3-20.9-48.3-47.2-48.8-26.9-.4-48.8 21.2-48.8 48v48h-8V96.8c0-26.3-20.9-48.3-47.2-48.8-26.9-.4-48.8 21.2-48.8 48v136l-8-7.1v-48.1c0-26.3-20.9-48.3-47.2-48.8C21.9 127.6 0 149.2 0 176v66.4c0 27.4 11.7 53.5 32.2 71.8l111.7 99.3c10.2 9.1 16.1 22.2 16.1 35.9v6.7c0 13.3 10.7 24 24 24h240c13.3 0 24-10.7 24-24v-2.9c0-12.8 2.6-25.5 7.5-37.3l49-116.3c5-11.8 7.5-24.5 7.5-37.3V128.8c0-26.3-20.9-48.4-47.2-48.8z\"},\"child\":[]}]})(props);\n};\nexport function FaHandScissors (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216 440c0-22.092 17.909-40 40-40v-8h-32c-22.091 0-40-17.908-40-40s17.909-40 40-40h32v-8H48c-26.51 0-48-21.49-48-48s21.49-48 48-48h208v-13.572l-177.551-69.74c-24.674-9.694-36.818-37.555-27.125-62.228 9.693-24.674 37.554-36.817 62.228-27.124l190.342 74.765 24.872-31.09c12.306-15.381 33.978-19.515 51.081-9.741l112 64A40.002 40.002 0 0 1 512 168v240c0 18.562-12.77 34.686-30.838 38.937l-136 32A39.982 39.982 0 0 1 336 480h-80c-22.091 0-40-17.908-40-40z\"},\"child\":[]}]})(props);\n};\nexport function FaHandSparkles (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M106.66,170.64l.09,0,49.55-20.65a7.32,7.32,0,0,0,3.68-6h0a7.29,7.29,0,0,0-3.68-6l-49.57-20.67-.07,0L86,67.68a6.66,6.66,0,0,0-11.92,0l-20.7,49.63-.05,0L3.7,138A7.29,7.29,0,0,0,0,144H0a7.32,7.32,0,0,0,3.68,6L53.27,170.6l.07,0L74,220.26a6.65,6.65,0,0,0,11.92,0l20.69-49.62ZM471.38,467.41l-1-.42-1-.5a38.67,38.67,0,0,1,0-69.14l1-.49,1-.43,37.49-15.63,15.63-37.48.41-1,.47-.95c3.85-7.74,10.58-13.63,18.35-17.34,0-1.33.25-2.69.27-4V144a32,32,0,0,0-64,0v72a8,8,0,0,1-8,8H456a8,8,0,0,1-8-8V64a32,32,0,0,0-64,0V216a8,8,0,0,1-8,8H360a8,8,0,0,1-8-8V32a32,32,0,0,0-64,0V216a8,8,0,0,1-8,8H264a8,8,0,0,1-8-8V64a32,32,0,0,0-64,0v241l-23.59-32.49a40,40,0,0,0-64.71,47.09L229.3,492.21A48.07,48.07,0,0,0,268.09,512H465.7c19.24,0,35.65-11.73,43.24-28.79l-.07-.17ZM349.79,339.52,320,351.93l-12.42,29.78a4,4,0,0,1-7.15,0L288,351.93l-29.79-12.41a4,4,0,0,1,0-7.16L288,319.94l12.42-29.78a4,4,0,0,1,7.15,0L320,319.94l29.79,12.42a4,4,0,0,1,0,7.16ZM640,431.91a7.28,7.28,0,0,0-3.68-6l-49.57-20.67-.07,0L566,355.63a6.66,6.66,0,0,0-11.92,0l-20.7,49.63-.05,0L483.7,426a7.28,7.28,0,0,0-3.68,6h0a7.29,7.29,0,0,0,3.68,5.95l49.57,20.67.07,0L554,508.21a6.65,6.65,0,0,0,11.92,0l20.69-49.62h0l.09,0,49.55-20.66a7.29,7.29,0,0,0,3.68-5.95h0Z\"},\"child\":[]}]})(props);\n};\nexport function FaHandSpock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M510.9005,145.27027,442.604,432.09391A103.99507,103.99507,0,0,1,341.43745,512H214.074a135.96968,135.96968,0,0,1-93.18489-36.95291L12.59072,373.12723a39.992,39.992,0,0,1,54.8122-58.24988l60.59342,57.02528v0a283.24849,283.24849,0,0,0-11.6703-80.46734L73.63726,147.36011a40.00575,40.00575,0,1,1,76.71833-22.7187l37.15458,125.39477a8.33113,8.33113,0,0,0,16.05656-4.4414L153.26183,49.95406A39.99638,39.99638,0,1,1,230.73015,30.0166l56.09491,218.15825a10.42047,10.42047,0,0,0,20.30018-.501L344.80766,63.96966a40.052,40.052,0,0,1,51.30245-30.0893c19.86073,6.2998,30.86262,27.67378,26.67564,48.08487l-33.83869,164.966a7.55172,7.55172,0,0,0,14.74406,3.2666l29.3973-123.45874a39.99414,39.99414,0,1,1,77.81208,18.53121Z\"},\"child\":[]}]})(props);\n};\nexport function FaHandsHelping (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 192H336v56c0 39.7-32.3 72-72 72s-72-32.3-72-72V126.4l-64.9 39C107.8 176.9 96 197.8 96 220.2v47.3l-80 46.2C.7 322.5-4.6 342.1 4.3 357.4l80 138.6c8.8 15.3 28.4 20.5 43.7 11.7L231.4 448H368c35.3 0 64-28.7 64-64h16c17.7 0 32-14.3 32-32v-64h8c13.3 0 24-10.7 24-24v-48c0-13.3-10.7-24-24-24zm147.7-37.4L555.7 16C546.9.7 527.3-4.5 512 4.3L408.6 64H306.4c-12 0-23.7 3.4-33.9 9.7L239 94.6c-9.4 5.8-15 16.1-15 27.1V248c0 22.1 17.9 40 40 40s40-17.9 40-40v-88h184c30.9 0 56 25.1 56 56v28.5l80-46.2c15.3-8.9 20.5-28.4 11.7-43.7z\"},\"child\":[]}]})(props);\n};\nexport function FaHandsWash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496,224a48,48,0,1,0-48-48A48,48,0,0,0,496,224ZM311.47,178.45A56.77,56.77,0,0,1,328,176a56,56,0,0,1,19,3.49l15.35-48.61A24,24,0,0,0,342,99.74c-11.53-1.35-22.21,6.44-25.71,17.51l-20.9,66.17ZM93.65,386.33c.8-.19,1.54-.54,2.35-.71V359.93a156,156,0,0,1,107.06-148l73.7-22.76L310.92,81.05a24,24,0,0,0-20.33-31.11c-11.53-1.34-22.22,6.45-25.72,17.52L231.42,173.88a8,8,0,0,1-15.26-4.83L259.53,31.26A24,24,0,0,0,239.2.15C227.67-1.19,217,6.6,213.49,17.66L165.56,169.37a8,8,0,1,1-15.26-4.82l38.56-122a24,24,0,0,0-20.33-31.11C157,10,146.32,17.83,142.82,28.9l-60,189.85L80.76,168.7A24,24,0,0,0,56.9,144.55c-13.23-.05-24.72,10.54-24.9,23.86V281.14A123.69,123.69,0,0,0,93.65,386.33ZM519.1,336H360a8,8,0,0,1,0-16H488a24,24,0,0,0,23.54-28.76C509.35,279.84,498.71,272,487.1,272H288l47.09-17.06a24,24,0,0,0-14.18-45.88L213.19,242.31A123.88,123.88,0,0,0,128,360v25.65a79.78,79.78,0,0,1,58,108.63A118.9,118.9,0,0,0,248,512H456a24,24,0,0,0,23.54-28.76C477.35,471.84,466.71,464,455.1,464H360a8,8,0,0,1,0-16H488a24,24,0,0,0,23.54-28.76C509.35,407.84,498.71,400,487.1,400H360a8,8,0,0,1,0-16H520a24,24,0,0,0,23.54-28.76C541.35,343.84,530.71,336,519.1,336ZM416,64a32,32,0,1,0-32-32A32,32,0,0,0,416,64ZM112,416a48,48,0,1,0,48,48A48,48,0,0,0,112,416Z\"},\"child\":[]}]})(props);\n};\nexport function FaHands (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M204.8 230.4c-10.6-14.1-30.7-17-44.8-6.4-14.1 10.6-17 30.7-6.4 44.8l38.1 50.8c4.8 6.4 4.1 15.3-1.5 20.9l-12.8 12.8c-6.7 6.7-17.6 6.2-23.6-1.1L64 244.4V96c0-17.7-14.3-32-32-32S0 78.3 0 96v218.4c0 10.9 3.7 21.5 10.5 30l104.1 134.3c5 6.5 8.4 13.9 10.4 21.7 1.8 6.9 8.1 11.6 15.3 11.6H272c8.8 0 16-7.2 16-16V384c0-27.7-9-54.6-25.6-76.8l-57.6-76.8zM608 64c-17.7 0-32 14.3-32 32v148.4l-89.8 107.8c-6 7.2-17 7.7-23.6 1.1l-12.8-12.8c-5.6-5.6-6.3-14.5-1.5-20.9l38.1-50.8c10.6-14.1 7.7-34.2-6.4-44.8-14.1-10.6-34.2-7.7-44.8 6.4l-57.6 76.8C361 329.4 352 356.3 352 384v112c0 8.8 7.2 16 16 16h131.7c7.1 0 13.5-4.7 15.3-11.6 2-7.8 5.4-15.2 10.4-21.7l104.1-134.3c6.8-8.5 10.5-19.1 10.5-30V96c0-17.7-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaHandshakeAltSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M358.59,195.6,504.2,313.8a63.4,63.4,0,0,1,22.21,37.91H624a16.05,16.05,0,0,0,16-16V143.91A16,16,0,0,0,624,128H512L457.41,73.41A32,32,0,0,0,434.8,64H348.91a32,32,0,0,0-21.61,8.41l-88.12,80.68-25.69-19.85L289.09,64H205.3a32,32,0,0,0-22.6,9.41l-20.34,20.3L45.47,3.38A16,16,0,0,0,23,6.19L3.38,31.46A16,16,0,0,0,6.19,53.91L594.54,508.63A16,16,0,0,0,617,505.82l19.64-25.27a16,16,0,0,0-2.81-22.45L303.4,202.72l32.69-29.92,27-24.7a16,16,0,0,1,21.61,23.61ZM16,128A16.05,16.05,0,0,0,0,144V335.91a16,16,0,0,0,16,16H146.3l90.5,81.89a64,64,0,0,0,90-9.3l.2-.2,17.91,15.5a37.16,37.16,0,0,0,52.29-5.39l8.8-10.82L23.56,128Z\"},\"child\":[]}]})(props);\n};\nexport function FaHandshakeSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0,128.21V384H64a32,32,0,0,0,32-32V184L23.83,128.21ZM48,320.1a16,16,0,1,1-16,16A16,16,0,0,1,48,320.1Zm80,31.81h18.3l90.5,81.89a64,64,0,0,0,90-9.3l.2-.2,17.91,15.5a37.16,37.16,0,0,0,52.29-5.39l8.8-10.82L128,208.72Zm416-223.7V352.1a32,32,0,0,0,32,32h64V128.21ZM592,352.1a16,16,0,1,1,16-16A16,16,0,0,1,592,352.1ZM303.33,202.67l59.58-54.57a16,16,0,0,1,21.59,23.61L358.41,195.6,504,313.8a73.08,73.08,0,0,1,7.91,7.7V128L457.3,73.41A31.76,31.76,0,0,0,434.7,64H348.8a31.93,31.93,0,0,0-21.6,8.41l-88.07,80.64-25.64-19.81L289.09,64H205.3a32,32,0,0,0-22.6,9.41L162.36,93.72,45.47,3.38A16,16,0,0,0,23,6.19L3.38,31.46A16,16,0,0,0,6.19,53.91L594.53,508.63A16,16,0,0,0,617,505.82l19.65-25.27a16,16,0,0,0-2.82-22.45Z\"},\"child\":[]}]})(props);\n};\nexport function FaHandshake (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M434.7 64h-85.9c-8 0-15.7 3-21.6 8.4l-98.3 90c-.1.1-.2.3-.3.4-16.6 15.6-16.3 40.5-2.1 56 12.7 13.9 39.4 17.6 56.1 2.7.1-.1.3-.1.4-.2l79.9-73.2c6.5-5.9 16.7-5.5 22.6 1 6 6.5 5.5 16.6-1 22.6l-26.1 23.9L504 313.8c2.9 2.4 5.5 5 7.9 7.7V128l-54.6-54.6c-5.9-6-14.1-9.4-22.6-9.4zM544 128.2v223.9c0 17.7 14.3 32 32 32h64V128.2h-96zm48 223.9c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zM0 384h64c17.7 0 32-14.3 32-32V128.2H0V384zm48-63.9c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16c0-8.9 7.2-16 16-16zm435.9 18.6L334.6 217.5l-30 27.5c-29.7 27.1-75.2 24.5-101.7-4.4-26.9-29.4-24.8-74.9 4.4-101.7L289.1 64h-83.8c-8.5 0-16.6 3.4-22.6 9.4L128 128v223.9h18.3l90.5 81.9c27.4 22.3 67.7 18.1 90-9.3l.2-.2 17.9 15.5c15.9 13 39.4 10.5 52.3-5.4l31.4-38.6 5.4 4.4c13.7 11.1 33.9 9.1 45-4.7l9.5-11.7c11.2-13.8 9.1-33.9-4.6-45.1z\"},\"child\":[]}]})(props);\n};\nexport function FaHanukiah (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M232 160c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm-64 0c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm224 0c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm88 8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v120h32V168zm-440-8c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm520 0h-32c-8.84 0-16 7.16-16 16v112c0 17.67-14.33 32-32 32H352V128c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v192H96c-17.67 0-32-14.33-32-32V176c0-8.84-7.16-16-16-16H16c-8.84 0-16 7.16-16 16v112c0 53.02 42.98 96 96 96h192v64H112c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16H352v-64h192c53.02 0 96-42.98 96-96V176c0-8.84-7.16-16-16-16zm-16-32c13.25 0 24-11.94 24-26.67S608 48 608 48s-24 38.61-24 53.33S594.75 128 608 128zm-576 0c13.25 0 24-11.94 24-26.67S32 48 32 48 8 86.61 8 101.33 18.75 128 32 128zm288-48c13.25 0 24-11.94 24-26.67S320 0 320 0s-24 38.61-24 53.33S306.75 80 320 80zm-208 48c13.25 0 24-11.94 24-26.67S112 48 112 48s-24 38.61-24 53.33S98.75 128 112 128zm64 0c13.25 0 24-11.94 24-26.67S176 48 176 48s-24 38.61-24 53.33S162.75 128 176 128zm64 0c13.25 0 24-11.94 24-26.67S240 48 240 48s-24 38.61-24 53.33S226.75 128 240 128zm160 0c13.25 0 24-11.94 24-26.67S400 48 400 48s-24 38.61-24 53.33S386.75 128 400 128zm64 0c13.25 0 24-11.94 24-26.67S464 48 464 48s-24 38.61-24 53.33S450.75 128 464 128zm64 0c13.25 0 24-11.94 24-26.67S528 48 528 48s-24 38.61-24 53.33S514.75 128 528 128z\"},\"child\":[]}]})(props);\n};\nexport function FaHardHat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 288c0-80.25-49.28-148.92-119.19-177.62L320 192V80a16 16 0 0 0-16-16h-96a16 16 0 0 0-16 16v112l-40.81-81.62C81.28 139.08 32 207.75 32 288v64h448zm16 96H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h480a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaHashtag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.667 182.109l7.143-40c1.313-7.355-4.342-14.109-11.813-14.109h-74.81l14.623-81.891C377.123 38.754 371.468 32 363.997 32h-40.632a12 12 0 0 0-11.813 9.891L296.175 128H197.54l14.623-81.891C213.477 38.754 207.822 32 200.35 32h-40.632a12 12 0 0 0-11.813 9.891L132.528 128H53.432a12 12 0 0 0-11.813 9.891l-7.143 40C33.163 185.246 38.818 192 46.289 192h74.81L98.242 320H19.146a12 12 0 0 0-11.813 9.891l-7.143 40C-1.123 377.246 4.532 384 12.003 384h74.81L72.19 465.891C70.877 473.246 76.532 480 84.003 480h40.632a12 12 0 0 0 11.813-9.891L151.826 384h98.634l-14.623 81.891C234.523 473.246 240.178 480 247.65 480h40.632a12 12 0 0 0 11.813-9.891L315.472 384h79.096a12 12 0 0 0 11.813-9.891l7.143-40c1.313-7.355-4.342-14.109-11.813-14.109h-74.81l22.857-128h79.096a12 12 0 0 0 11.813-9.891zM261.889 320h-98.634l22.857-128h98.634l-22.857 128z\"},\"child\":[]}]})(props);\n};\nexport function FaHatCowboySide (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M260.8 291.06c-28.63-22.94-62-35.06-96.4-35.06C87 256 21.47 318.72 1.43 412.06c-3.55 16.6-.43 33.83 8.57 47.3C18.75 472.47 31.83 480 45.88 480H592c-103.21 0-155-37.07-233.19-104.46zm234.65-18.29L468.4 116.2A64 64 0 0 0 392 64.41L200.85 105a64 64 0 0 0-50.35 55.79L143.61 226c6.9-.83 13.7-2 20.79-2 41.79 0 82 14.55 117.29 42.82l98 84.48C450.76 412.54 494.9 448 592 448a48 48 0 0 0 48-48c0-25.39-29.6-119.33-144.55-127.23z\"},\"child\":[]}]})(props);\n};\nexport function FaHatCowboy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M490 296.9C480.51 239.51 450.51 64 392.3 64c-14 0-26.49 5.93-37 14a58.21 58.21 0 0 1-70.58 0c-10.51-8-23-14-37-14-58.2 0-88.2 175.47-97.71 232.88C188.81 309.47 243.73 320 320 320s131.23-10.51 170-23.1zm142.9-37.18a16 16 0 0 0-19.75 1.5c-1 .9-101.27 90.78-293.16 90.78-190.82 0-292.22-89.94-293.24-90.84A16 16 0 0 0 1 278.53C1.73 280.55 78.32 480 320 480s318.27-199.45 319-201.47a16 16 0 0 0-6.09-18.81z\"},\"child\":[]}]})(props);\n};\nexport function FaHatWizard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-304-64l-64-32 64-32 32-64 32 64 64 32-64 32-16 32h208l-86.41-201.63a63.955 63.955 0 0 1-1.89-45.45L416 0 228.42 107.19a127.989 127.989 0 0 0-53.46 59.15L64 416h144l-16-32zm64-224l16-32 16 32 32 16-32 16-16 32-16-32-32-16 32-16z\"},\"child\":[]}]})(props);\n};\nexport function FaHdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M576 304v96c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48v-96c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48zm-48-80a79.557 79.557 0 0 1 30.777 6.165L462.25 85.374A48.003 48.003 0 0 0 422.311 64H153.689a48 48 0 0 0-39.938 21.374L17.223 230.165A79.557 79.557 0 0 1 48 224h480zm-48 96c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm-96 0c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaHeadSideCoughSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M454.11,319.21c19.56-3.81,31.62-25,23.11-44.21-21-47.12-48.5-151.75-73.12-186.75A208.13,208.13,0,0,0,234.1,0H192A190.64,190.64,0,0,0,84.18,33.3L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.46A16,16,0,0,0,6.18,53.91L594.53,508.63A16,16,0,0,0,617,505.82l19.64-25.27a16,16,0,0,0-2.81-22.45ZM313.39,210.45,263.61,172c5.88-7.14,14.43-12,24.36-12a32.06,32.06,0,0,1,32,32C320,199,317.24,205.17,313.39,210.45ZM616,304a24,24,0,1,0-24-24A24,24,0,0,0,616,304Zm-64,64a24,24,0,1,0-24-24A24,24,0,0,0,552,368ZM288,384a32,32,0,0,1,32-32h19.54L20.73,105.59A190.86,190.86,0,0,0,0,192c0,56.75,24.75,107.62,64,142.88V512H288V480h64a64,64,0,0,0,64-64H320A32,32,0,0,1,288,384Zm328-24a24,24,0,1,0,24,24A24,24,0,0,0,616,360Z\"},\"child\":[]}]})(props);\n};\nexport function FaHeadSideCough (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M616,304a24,24,0,1,0-24-24A24,24,0,0,0,616,304ZM552,416a24,24,0,1,0,24,24A24,24,0,0,0,552,416Zm-64-56a24,24,0,1,0,24,24A24,24,0,0,0,488,360ZM616,464a24,24,0,1,0,24,24A24,24,0,0,0,616,464Zm0-104a24,24,0,1,0,24,24A24,24,0,0,0,616,360Zm-64-40a24,24,0,1,0,24,24A24,24,0,0,0,552,320Zm-74.78-45c-21-47.12-48.5-151.75-73.12-186.75A208.13,208.13,0,0,0,234.1,0H192C86,0,0,86,0,192c0,56.75,24.75,107.62,64,142.88V512H288V480h64a64,64,0,0,0,64-64H320a32,32,0,0,1,0-64h96V320h32A32,32,0,0,0,477.22,275ZM288,224a32,32,0,1,1,32-32A32.07,32.07,0,0,1,288,224Z\"},\"child\":[]}]})(props);\n};\nexport function FaHeadSideMask (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.15,184.42C-2.17,244.21,23,298.06,64,334.88V512H224V316.51L3.67,156.25A182.28,182.28,0,0,0,.15,184.42ZM509.22,275c-21-47.12-48.5-151.75-73.12-186.75A208.11,208.11,0,0,0,266.11,0H200C117,0,42.48,50.57,13.25,123.65L239.21,288H511.76A31.35,31.35,0,0,0,509.22,275ZM320,224a32,32,0,1,1,32-32A32.07,32.07,0,0,1,320,224Zm16,144H496l16-48H256V512H401.88a64,64,0,0,0,60.71-43.76L464,464H336a16,16,0,0,1,0-32H474.67l10.67-32H336a16,16,0,0,1,0-32Z\"},\"child\":[]}]})(props);\n};\nexport function FaHeadSideVirus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272,240a16,16,0,1,0,16,16A16,16,0,0,0,272,240Zm-64-64a16,16,0,1,0,16,16A16,16,0,0,0,208,176Zm301.2,99c-20.93-47.12-48.43-151.73-73.07-186.75A207.9,207.9,0,0,0,266.09,0H192C86,0,0,86,0,192A191.23,191.23,0,0,0,64,334.81V512H320V448h64a64,64,0,0,0,64-64V320H480A32,32,0,0,0,509.2,275ZM368,240H355.88c-28.51,0-42.79,34.47-22.63,54.63l8.58,8.57a16,16,0,1,1-22.63,22.63l-8.57-8.58C290.47,297.09,256,311.37,256,339.88V352a16,16,0,0,1-32,0V339.88c0-28.51-34.47-42.79-54.63-22.63l-8.57,8.58a16,16,0,0,1-22.63-22.63l8.58-8.57c20.16-20.16,5.88-54.63-22.63-54.63H112a16,16,0,0,1,0-32h12.12c28.51,0,42.79-34.47,22.63-54.63l-8.58-8.57a16,16,0,0,1,22.63-22.63l8.57,8.58c20.16,20.16,54.63,5.88,54.63-22.63V96a16,16,0,0,1,32,0v12.12c0,28.51,34.47,42.79,54.63,22.63l8.57-8.58a16,16,0,0,1,22.63,22.63l-8.58,8.57C313.09,173.53,327.37,208,355.88,208H368a16,16,0,0,1,0,32Z\"},\"child\":[]}]})(props);\n};\nexport function FaHeading (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 96v320h32a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H320a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32V288H160v128h32a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32V96H32a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16h-32v128h192V96h-32a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaHeadphonesAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 288h-16c-35.35 0-64 28.7-64 64.12v63.76c0 35.41 28.65 64.12 64 64.12h16c17.67 0 32-14.36 32-32.06V320.06c0-17.71-14.33-32.06-32-32.06zm208 0h-16c-17.67 0-32 14.35-32 32.06v127.88c0 17.7 14.33 32.06 32 32.06h16c35.35 0 64-28.71 64-64.12v-63.76c0-35.41-28.65-64.12-64-64.12zM256 32C112.91 32 4.57 151.13 0 288v112c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16V288c0-114.67 93.33-207.8 208-207.82 114.67.02 208 93.15 208 207.82v112c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16V288C507.43 151.13 399.09 32 256 32z\"},\"child\":[]}]})(props);\n};\nexport function FaHeadphones (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C114.52 32 0 146.496 0 288v48a32 32 0 0 0 17.689 28.622l14.383 7.191C34.083 431.903 83.421 480 144 480h24c13.255 0 24-10.745 24-24V280c0-13.255-10.745-24-24-24h-24c-31.342 0-59.671 12.879-80 33.627V288c0-105.869 86.131-192 192-192s192 86.131 192 192v1.627C427.671 268.879 399.342 256 368 256h-24c-13.255 0-24 10.745-24 24v176c0 13.255 10.745 24 24 24h24c60.579 0 109.917-48.098 111.928-108.187l14.382-7.191A32 32 0 0 0 512 336v-48c0-141.479-114.496-256-256-256z\"},\"child\":[]}]})(props);\n};\nexport function FaHeadset (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 208c0-17.67-14.33-32-32-32h-16c-35.35 0-64 28.65-64 64v48c0 35.35 28.65 64 64 64h16c17.67 0 32-14.33 32-32V208zm176 144c35.35 0 64-28.65 64-64v-48c0-35.35-28.65-64-64-64h-16c-17.67 0-32 14.33-32 32v112c0 17.67 14.33 32 32 32h16zM256 0C113.18 0 4.58 118.83 0 256v16c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-16c0-114.69 93.31-208 208-208s208 93.31 208 208h-.12c.08 2.43.12 165.72.12 165.72 0 23.35-18.93 42.28-42.28 42.28H320c0-26.51-21.49-48-48-48h-32c-26.51 0-48 21.49-48 48s21.49 48 48 48h181.72c49.86 0 90.28-40.42 90.28-90.28V256C507.42 118.83 398.82 0 256 0z\"},\"child\":[]}]})(props);\n};\nexport function FaHeartBroken (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M473.7 73.8l-2.4-2.5c-46-47-118-51.7-169.6-14.8L336 159.9l-96 64 48 128-144-144 96-64-28.6-86.5C159.7 19.6 87 24 40.7 71.4l-2.4 2.4C-10.4 123.6-12.5 202.9 31 256l212.1 218.6c7.1 7.3 18.6 7.3 25.7 0L481 255.9c43.5-53 41.4-132.3-7.3-182.1z\"},\"child\":[]}]})(props);\n};\nexport function FaHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M462.3 62.6C407.5 15.9 326 24.3 275.7 76.2L256 96.5l-19.7-20.3C186.1 24.3 104.5 15.9 49.7 62.6c-62.8 53.6-66.1 149.8-9.9 207.9l193.5 199.8c12.5 12.9 32.8 12.9 45.3 0l193.5-199.8c56.3-58.1 53-154.3-9.8-207.9z\"},\"child\":[]}]})(props);\n};\nexport function FaHeartbeat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320.2 243.8l-49.7 99.4c-6 12.1-23.4 11.7-28.9-.6l-56.9-126.3-30 71.7H60.6l182.5 186.5c7.1 7.3 18.6 7.3 25.7 0L451.4 288H342.3l-22.1-44.2zM473.7 73.9l-2.4-2.5c-51.5-52.6-135.8-52.6-187.4 0L256 100l-27.9-28.5c-51.5-52.7-135.9-52.7-187.4 0l-2.4 2.4C-10.4 123.7-12.5 203 31 256h102.4l35.9-86.2c5.4-12.9 23.6-13.2 29.4-.4l58.2 129.3 49-97.9c5.9-11.8 22.7-11.8 28.6 0l27.6 55.2H481c43.5-53 41.4-132.3-7.3-182.1z\"},\"child\":[]}]})(props);\n};\nexport function FaHelicopter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 384h272c17.67 0 32-14.33 32-32 0-123.71-100.29-224-224-224V64h176c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16H144c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h176v64H112L68.8 70.4C65.78 66.37 61.03 64 56 64H16.01C5.6 64-2.04 73.78.49 83.88L32 192l160 64 86.4 115.2A31.992 31.992 0 0 0 304 384zm112-188.49C478.55 208.3 528.03 257.44 540.79 320H416V195.51zm219.37 263.3l-22.15-22.2c-6.25-6.26-16.24-6.1-22.64.01-7.09 6.77-13.84 11.25-24.64 11.25H240c-8.84 0-16 7.18-16 16.03v32.06c0 8.85 7.16 16.03 16 16.03h325.94c14.88 0 35.3-.47 68.45-29.52 7.02-6.14 7.57-17.05.98-23.66z\"},\"child\":[]}]})(props);\n};\nexport function FaHighlighter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 544 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 479.98L99.92 512l35.45-35.45-67.04-67.04L0 479.98zm124.61-240.01a36.592 36.592 0 0 0-10.79 38.1l13.05 42.83-50.93 50.94 96.23 96.23 50.86-50.86 42.74 13.08c13.73 4.2 28.65-.01 38.15-10.78l35.55-41.64-173.34-173.34-41.52 35.44zm403.31-160.7l-63.2-63.2c-20.49-20.49-53.38-21.52-75.12-2.35L190.55 183.68l169.77 169.78L530.27 154.4c19.18-21.74 18.15-54.63-2.35-75.13z\"},\"child\":[]}]})(props);\n};\nexport function FaHiking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M80.95 472.23c-4.28 17.16 6.14 34.53 23.28 38.81 2.61.66 5.22.95 7.8.95 14.33 0 27.37-9.7 31.02-24.23l25.24-100.97-52.78-52.78-34.56 138.22zm14.89-196.12L137 117c2.19-8.42-3.14-16.95-11.92-19.06-43.88-10.52-88.35 15.07-99.32 57.17L.49 253.24c-2.19 8.42 3.14 16.95 11.92 19.06l63.56 15.25c8.79 2.1 17.68-3.02 19.87-11.44zM368 160h-16c-8.84 0-16 7.16-16 16v16h-34.75l-46.78-46.78C243.38 134.11 228.61 128 212.91 128c-27.02 0-50.47 18.3-57.03 44.52l-26.92 107.72a32.012 32.012 0 0 0 8.42 30.39L224 397.25V480c0 17.67 14.33 32 32 32s32-14.33 32-32v-82.75c0-17.09-6.66-33.16-18.75-45.25l-46.82-46.82c.15-.5.49-.89.62-1.41l19.89-79.57 22.43 22.43c6 6 14.14 9.38 22.62 9.38h48v240c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16V176c.01-8.84-7.15-16-15.99-16zM240 96c26.51 0 48-21.49 48-48S266.51 0 240 0s-48 21.49-48 48 21.49 48 48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaHippo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M581.12 96.2c-27.67-.15-52.5 17.58-76.6 26.62C489.98 88.27 455.83 64 416 64c-11.28 0-21.95 2.3-32 5.88V56c0-13.26-10.75-24-24-24h-16c-13.25 0-24 10.74-24 24v48.98C286.01 79.58 241.24 64 192 64 85.96 64 0 135.64 0 224v240c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16v-70.79C128.35 407.57 166.72 416 208 416s79.65-8.43 112-22.79V464c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V288h128v32c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-32c17.67 0 32-14.33 32-32v-92.02c0-34.09-24.79-67.59-58.88-67.78zM448 176c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaHistory (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 255.531c.253 136.64-111.18 248.372-247.82 248.468-59.015.042-113.223-20.53-155.822-54.911-11.077-8.94-11.905-25.541-1.839-35.607l11.267-11.267c8.609-8.609 22.353-9.551 31.891-1.984C173.062 425.135 212.781 440 256 440c101.705 0 184-82.311 184-184 0-101.705-82.311-184-184-184-48.814 0-93.149 18.969-126.068 49.932l50.754 50.754c10.08 10.08 2.941 27.314-11.313 27.314H24c-8.837 0-16-7.163-16-16V38.627c0-14.254 17.234-21.393 27.314-11.314l49.372 49.372C129.209 34.136 189.552 8 256 8c136.81 0 247.747 110.78 248 247.531zm-180.912 78.784l9.823-12.63c8.138-10.463 6.253-25.542-4.21-33.679L288 256.349V152c0-13.255-10.745-24-24-24h-16c-13.255 0-24 10.745-24 24v135.651l65.409 50.874c10.463 8.137 25.541 6.253 33.679-4.21z\"},\"child\":[]}]})(props);\n};\nexport function FaHockeyPuck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 160c0-53 114.6-96 256-96s256 43 256 96-114.6 96-256 96S0 213 0 160zm0 82.2V352c0 53 114.6 96 256 96s256-43 256-96V242.2c-113.4 82.3-398.5 82.4-512 0z\"},\"child\":[]}]})(props);\n};\nexport function FaHollyBerry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144 192c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48zm112-48c0 26.5 21.5 48 48 48s48-21.5 48-48-21.5-48-48-48-48 21.5-48 48zm-32-48c26.5 0 48-21.5 48-48S250.5 0 224 0s-48 21.5-48 48 21.5 48 48 48zm-16.2 139.1c.1-12.4-13.1-20.1-23.8-13.7-34.3 20.3-71.4 32.7-108.7 36.2-9.7.9-15.6 11.3-11.6 20.2 6.2 13.9 11.1 28.6 14.7 43.8 3.6 15.2-5.3 30.6-20.2 35.1-14.9 4.5-30.1 7.6-45.3 9.1-9.7 1-15.7 11.3-11.7 20.2 15 32.8 22.9 69.5 23 107.7.1 14.4 15.2 23.1 27.6 16 33.2-19 68.9-30.5 104.8-33.9 9.7-.9 15.6-11.3 11.6-20.2-6.2-13.9-11.1-28.6-14.7-43.8-3.6-15.2 5.3-30.6 20.2-35.1 14.9-4.5 30.1-7.6 45.3-9.1 9.7-1 15.7-11.3 11.7-20.2-15.5-34.2-23.3-72.5-22.9-112.3zM435 365.6c-15.2-1.6-30.3-4.7-45.3-9.1-14.9-4.5-23.8-19.9-20.2-35.1 3.6-15.2 8.5-29.8 14.7-43.8 4-8.9-1.9-19.3-11.6-20.2-37.3-3.5-74.4-15.9-108.7-36.2-10.7-6.3-23.9 1.4-23.8 13.7 0 1.6-.2 3.2-.2 4.9.2 33.3 7 65.7 19.9 94 5.7 12.4 5.2 26.6-.6 38.9 4.9 1.2 9.9 2.2 14.8 3.7 14.9 4.5 23.8 19.9 20.2 35.1-3.6 15.2-8.5 29.8-14.7 43.8-4 8.9 1.9 19.3 11.6 20.2 35.9 3.4 71.6 14.9 104.8 33.9 12.5 7.1 27.6-1.6 27.6-16 .2-38.2 8-75 23-107.7 4.3-8.7-1.8-19.1-11.5-20.1z\"},\"child\":[]}]})(props);\n};\nexport function FaHome (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M280.37 148.26L96 300.11V464a16 16 0 0 0 16 16l112.06-.29a16 16 0 0 0 15.92-16V368a16 16 0 0 1 16-16h64a16 16 0 0 1 16 16v95.64a16 16 0 0 0 16 16.05L464 480a16 16 0 0 0 16-16V300L295.67 148.26a12.19 12.19 0 0 0-15.3 0zM571.6 251.47L488 182.56V44.05a12 12 0 0 0-12-12h-56a12 12 0 0 0-12 12v72.61L318.47 43a48 48 0 0 0-61 0L4.34 251.47a12 12 0 0 0-1.6 16.9l25.5 31A12 12 0 0 0 45.15 301l235.22-193.74a12.19 12.19 0 0 1 15.3 0L530.9 301a12 12 0 0 0 16.9-1.6l25.5-31a12 12 0 0 0-1.7-16.93z\"},\"child\":[]}]})(props);\n};\nexport function FaHorseHead (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M509.8 332.5l-69.9-164.3c-14.9-41.2-50.4-71-93-79.2 18-10.6 46.3-35.9 34.2-82.3-1.3-5-7.1-7.9-12-6.1L166.9 76.3C35.9 123.4 0 238.9 0 398.8V480c0 17.7 14.3 32 32 32h236.2c23.8 0 39.3-25 28.6-46.3L256 384v-.7c-45.6-3.5-84.6-30.7-104.3-69.6-1.6-3.1-.9-6.9 1.6-9.3l12.1-12.1c3.9-3.9 10.6-2.7 12.9 2.4 14.8 33.7 48.2 57.4 87.4 57.4 17.2 0 33-5.1 46.8-13.2l46 63.9c6 8.4 15.7 13.3 26 13.3h50.3c8.5 0 16.6-3.4 22.6-9.4l45.3-39.8c8.9-9.1 11.7-22.6 7.1-34.4zM328 224c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaHorse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M575.92 76.6c-.01-8.13-3.02-15.87-8.58-21.8-3.78-4.03-8.58-9.12-13.69-14.5 11.06-6.84 19.5-17.49 22.18-30.66C576.85 4.68 572.96 0 567.9 0H447.92c-70.69 0-128 57.31-128 128H160c-28.84 0-54.4 12.98-72 33.11V160c-48.53 0-88 39.47-88 88v56c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-56c0-13.22 6.87-24.39 16.78-31.68-.21 2.58-.78 5.05-.78 7.68 0 27.64 11.84 52.36 30.54 69.88l-25.72 68.6a63.945 63.945 0 0 0-2.16 37.99l24.85 99.41A15.982 15.982 0 0 0 107.02 512h65.96c10.41 0 18.05-9.78 15.52-19.88l-26.31-105.26 23.84-63.59L320 345.6V496c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V318.22c19.74-20.19 32-47.75 32-78.22 0-.22-.07-.42-.08-.64V136.89l16 7.11 18.9 37.7c7.45 14.87 25.05 21.55 40.49 15.37l32.55-13.02a31.997 31.997 0 0 0 20.12-29.74l-.06-77.71zm-64 19.4c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaHospitalAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 96H416V32c0-17.7-14.3-32-32-32H192c-17.7 0-32 14.3-32 32v64H32c-17.7 0-32 14.3-32 32v368c0 8.8 7.2 16 16 16h544c8.8 0 16-7.2 16-16V128c0-17.7-14.3-32-32-32zM160 436c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-128c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm160 128c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-128c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm16-170c0 3.3-2.7 6-6 6h-26v26c0 3.3-2.7 6-6 6h-20c-3.3 0-6-2.7-6-6v-26h-26c-3.3 0-6-2.7-6-6v-20c0-3.3 2.7-6 6-6h26V86c0-3.3 2.7-6 6-6h20c3.3 0 6 2.7 6 6v26h26c3.3 0 6 2.7 6 6v20zm144 298c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-128c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40z\"},\"child\":[]}]})(props);\n};\nexport function FaHospitalSymbol (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm112 376c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-88h-96v88c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V136c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v88h96v-88c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v240z\"},\"child\":[]}]})(props);\n};\nexport function FaHospitalUser (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 320a96 96 0 1 0-96-96 96 96 0 0 0 96 96zm48 32a22.88 22.88 0 0 0-7.06 1.09 124.76 124.76 0 0 1-81.89 0A22.82 22.82 0 0 0 432 352a112 112 0 0 0-112 112.62c.14 26.26 21.73 47.38 48 47.38h224c26.27 0 47.86-21.12 48-47.38A112 112 0 0 0 528 352zm-198.09 10.45A145.19 145.19 0 0 1 352 344.62V128a32 32 0 0 0-32-32h-32V32a32 32 0 0 0-32-32H96a32 32 0 0 0-32 32v64H32a32 32 0 0 0-32 32v368a16 16 0 0 0 16 16h288.31A78.62 78.62 0 0 1 288 464.79a143.06 143.06 0 0 1 41.91-102.34zM144 404a12 12 0 0 1-12 12H92a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12zm0-128a12 12 0 0 1-12 12H92a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12zm48-122a6 6 0 0 1-6 6h-20a6 6 0 0 1-6-6v-26h-26a6 6 0 0 1-6-6v-20a6 6 0 0 1 6-6h26V70a6 6 0 0 1 6-6h20a6 6 0 0 1 6 6v26h26a6 6 0 0 1 6 6v20a6 6 0 0 1-6 6h-26zm80 250a12 12 0 0 1-12 12h-40a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12zm0-128a12 12 0 0 1-12 12h-40a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaHospital (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 492v20H0v-20c0-6.627 5.373-12 12-12h20V120c0-13.255 10.745-24 24-24h88V24c0-13.255 10.745-24 24-24h112c13.255 0 24 10.745 24 24v72h88c13.255 0 24 10.745 24 24v360h20c6.627 0 12 5.373 12 12zM308 192h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12zm-168 64h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12zm104 128h-40c-6.627 0-12 5.373-12 12v84h64v-84c0-6.627-5.373-12-12-12zm64-96h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12zm-116 12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40zM182 96h26v26a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6V96h26a6 6 0 0 0 6-6V70a6 6 0 0 0-6-6h-26V38a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v26h-26a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6z\"},\"child\":[]}]})(props);\n};\nexport function FaHotTub (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.21 177.65c1.02 8.21 7.75 14.35 15.75 14.35h16.12c9.51 0 17.08-8.57 16-18.35-4.34-39.11-22.4-74.53-50.13-97.16-17.37-14.17-28.82-36.75-31.98-62.15C378.96 6.14 372.22 0 364.23 0h-16.12c-9.51 0-17.09 8.57-16 18.35 4.34 39.11 22.4 74.53 50.13 97.16 17.36 14.17 28.82 36.75 31.97 62.14zm-108 0c1.02 8.21 7.75 14.35 15.75 14.35h16.12c9.51 0 17.08-8.57 16-18.35-4.34-39.11-22.4-74.53-50.13-97.16-17.37-14.17-28.82-36.75-31.98-62.15C270.96 6.14 264.22 0 256.23 0h-16.12c-9.51 0-17.09 8.57-16 18.35 4.34 39.11 22.4 74.53 50.13 97.16 17.36 14.17 28.82 36.75 31.97 62.14zM480 256H256l-110.93-83.2a63.99 63.99 0 0 0-38.4-12.8H64c-35.35 0-64 28.65-64 64v224c0 35.35 28.65 64 64 64h384c35.35 0 64-28.65 64-64V288c0-17.67-14.33-32-32-32zM128 440c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8V328c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v112zm96 0c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8V328c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v112zm96 0c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8V328c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v112zm96 0c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8V328c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v112zM64 128c35.35 0 64-28.65 64-64S99.35 0 64 0 0 28.65 0 64s28.65 64 64 64z\"},\"child\":[]}]})(props);\n};\nexport function FaHotdog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488.56 23.44a80 80 0 0 0-113.12 0l-352 352a80 80 0 1 0 113.12 113.12l352-352a80 80 0 0 0 0-113.12zm-49.93 95.19c-19.6 19.59-37.52 22.67-51.93 25.14C373.76 146 364.4 147.6 352 160s-14 21.76-16.23 34.71c-2.48 14.4-5.55 32.33-25.15 51.92s-37.52 22.67-51.92 25.15C245.75 274 236.4 275.6 224 288s-14 21.75-16.23 34.7c-2.47 14.4-5.54 32.33-25.14 51.92s-37.53 22.68-51.93 25.15C117.76 402 108.4 403.6 96 416a16 16 0 0 1-22.63-22.63c19.6-19.59 37.52-22.67 51.92-25.14 13-2.22 22.3-3.82 34.71-16.23s14-21.75 16.22-34.7c2.48-14.4 5.55-32.33 25.15-51.92s37.52-22.67 51.92-25.14c13-2.22 22.3-3.83 34.7-16.23s14-21.76 16.24-34.71c2.47-14.4 5.54-32.33 25.14-51.92s37.52-22.68 51.92-25.15C394.24 110 403.59 108.41 416 96a16 16 0 0 1 22.63 22.63zM31.44 322.18L322.18 31.44l-11.54-11.55c-25-25-63.85-26.66-86.79-3.72L16.17 223.85c-22.94 22.94-21.27 61.79 3.72 86.78zm449.12-132.36L189.82 480.56l11.54 11.55c25 25 63.85 26.66 86.79 3.72l207.68-207.68c22.94-22.94 21.27-61.79-3.72-86.79z\"},\"child\":[]}]})(props);\n};\nexport function FaHotel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M560 64c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16H16C7.16 0 0 7.16 0 16v32c0 8.84 7.16 16 16 16h15.98v384H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h240v-80c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v80h240c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16h-16V64h16zm-304 44.8c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4zm0 96c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4zm-128-96c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4zM179.2 256h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4c0 6.4-6.4 12.8-12.8 12.8zM192 384c0-53.02 42.98-96 96-96s96 42.98 96 96H192zm256-140.8c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm0-96c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4z\"},\"child\":[]}]})(props);\n};\nexport function FaHourglassEnd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M360 64c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24 0 90.965 51.016 167.734 120.842 192C75.016 280.266 24 357.035 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24 0-90.965-51.016-167.734-120.842-192C308.984 231.734 360 154.965 360 64zM192 208c-57.787 0-104-66.518-104-144h208c0 77.945-46.51 144-104 144z\"},\"child\":[]}]})(props);\n};\nexport function FaHourglassHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M360 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24 0 90.965 51.016 167.734 120.842 192C75.016 280.266 24 357.035 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24 0-90.965-51.016-167.734-120.842-192C308.984 231.734 360 154.965 360 64c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24zm-75.078 384H99.08c17.059-46.797 52.096-80 92.92-80 40.821 0 75.862 33.196 92.922 80zm.019-256H99.078C91.988 108.548 88 86.748 88 64h208c0 22.805-3.987 44.587-11.059 64z\"},\"child\":[]}]})(props);\n};\nexport function FaHourglassStart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M360 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24 0 90.965 51.016 167.734 120.842 192C75.016 280.266 24 357.035 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24 0-90.965-51.016-167.734-120.842-192C308.984 231.734 360 154.965 360 64c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24zm-64 448H88c0-77.458 46.204-144 104-144 57.786 0 104 66.517 104 144z\"},\"child\":[]}]})(props);\n};\nexport function FaHourglass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M360 64c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24 0 90.965 51.016 167.734 120.842 192C75.016 280.266 24 357.035 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24 0-90.965-51.016-167.734-120.842-192C308.984 231.734 360 154.965 360 64z\"},\"child\":[]}]})(props);\n};\nexport function FaHouseDamage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 114.96L69.47 307.71c-1.62 1.46-3.69 2.14-5.47 3.35V496c0 8.84 7.16 16 16 16h149.23L192 439.19l104.11-64-60.16-119.22L384 392.75l-104.11 64L319.81 512H496c8.84 0 16-7.16 16-16V311.1c-1.7-1.16-3.72-1.82-5.26-3.2L288 114.96zm282.69 121.32L512 184.45V48c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v51.69L314.75 10.31C307.12 3.45 297.56.01 288 0s-19.1 3.41-26.7 10.27L5.31 236.28c-6.57 5.91-7.12 16.02-1.21 22.6l21.4 23.82c5.9 6.57 16.02 7.12 22.6 1.21L277.42 81.63c6.05-5.33 15.12-5.33 21.17 0L527.91 283.9c6.57 5.9 16.69 5.36 22.6-1.21l21.4-23.82c5.9-6.57 5.36-16.69-1.22-22.59z\"},\"child\":[]}]})(props);\n};\nexport function FaHouseUser (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M570.69,236.27,512,184.44V48a16,16,0,0,0-16-16H432a16,16,0,0,0-16,16V99.67L314.78,10.3C308.5,4.61,296.53,0,288,0s-20.46,4.61-26.74,10.3l-256,226A18.27,18.27,0,0,0,0,248.2a18.64,18.64,0,0,0,4.09,10.71L25.5,282.7a21.14,21.14,0,0,0,12,5.3,21.67,21.67,0,0,0,10.69-4.11l15.9-14V480a32,32,0,0,0,32,32H480a32,32,0,0,0,32-32V269.88l15.91,14A21.94,21.94,0,0,0,538.63,288a20.89,20.89,0,0,0,11.87-5.31l21.41-23.81A21.64,21.64,0,0,0,576,248.19,21,21,0,0,0,570.69,236.27ZM288,176a64,64,0,1,1-64,64A64,64,0,0,1,288,176ZM400,448H176a16,16,0,0,1-16-16,96,96,0,0,1,96-96h64a96,96,0,0,1,96,96A16,16,0,0,1,400,448Z\"},\"child\":[]}]})(props);\n};\nexport function FaHryvnia (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 240c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16h-41.86c13.41-28.63 13.74-63.33-4.13-94.05C303.34 49.84 267.1 32 229.96 32h-78.82c-24.32 0-47.86 8.53-66.54 24.09L72.83 65.9c-10.18 8.49-11.56 23.62-3.07 33.8l20.49 24.59c8.49 10.19 23.62 11.56 33.81 3.07l11.73-9.78c4.32-3.6 9.77-5.57 15.39-5.57h83.62c11.69 0 21.2 9.52 21.2 21.2 0 5.91-2.48 11.58-6.81 15.58L219.7 176H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h134.37l-34.67 32H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h41.86c-13.41 28.63-13.74 63.33 4.13 94.05C80.66 462.15 116.9 480 154.04 480h78.82c24.32 0 47.86-8.53 66.54-24.09l11.77-9.81c10.18-8.49 11.56-23.62 3.07-33.8l-20.49-24.59c-8.49-10.19-23.62-11.56-33.81-3.07l-11.75 9.8a23.992 23.992 0 0 1-15.36 5.56H149.2c-11.69 0-21.2-9.52-21.2-21.2 0-5.91 2.48-11.58 6.81-15.58L164.3 336H368c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16H233.63l34.67-32H368z\"},\"child\":[]}]})(props);\n};\nexport function FaICursor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 52.048V12.065C256 5.496 250.726.148 244.158.066 211.621-.344 166.469.011 128 37.959 90.266.736 46.979-.114 11.913.114 5.318.157 0 5.519 0 12.114v39.645c0 6.687 5.458 12.078 12.145 11.998C38.111 63.447 96 67.243 96 112.182V224H60c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h36v112c0 44.932-56.075 48.031-83.95 47.959C5.404 447.942 0 453.306 0 459.952v39.983c0 6.569 5.274 11.917 11.842 11.999 32.537.409 77.689.054 116.158-37.894 37.734 37.223 81.021 38.073 116.087 37.845 6.595-.043 11.913-5.405 11.913-12V460.24c0-6.687-5.458-12.078-12.145-11.998C217.889 448.553 160 444.939 160 400V288h36c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-36V112.182c0-44.932 56.075-48.213 83.95-48.142 6.646.018 12.05-5.346 12.05-11.992z\"},\"child\":[]}]})(props);\n};\nexport function FaIceCream (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 160h-.94a144 144 0 1 0-286.12 0H80a48 48 0 0 0 0 96h288a48 48 0 0 0 0-96zM195.38 493.69a31.52 31.52 0 0 0 57.24 0L352 288H96z\"},\"child\":[]}]})(props);\n};\nexport function FaIcicles (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M511.4 37.9C515.1 18.2 500 0 480 0H32C10.6 0-4.8 20.7 1.4 41.2l87.1 273.4c2.5 7.2 12.7 7.2 15.1 0L140 190.5l44.2 187.3c1.9 8.3 13.7 8.3 15.6 0l46.5-196.9 34.1 133.4c2.3 7.6 13 7.6 15.3 0l45.8-172.5 66.7 363.8c1.7 8.6 14 8.6 15.7 0l87.5-467.7z\"},\"child\":[]}]})(props);\n};\nexport function FaIcons (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M116.65 219.35a15.68 15.68 0 0 0 22.65 0l96.75-99.83c28.15-29 26.5-77.1-4.91-103.88C203.75-7.7 163-3.5 137.86 22.44L128 32.58l-9.85-10.14C93.05-3.5 52.25-7.7 24.86 15.64c-31.41 26.78-33 74.85-5 103.88zm143.92 100.49h-48l-7.08-14.24a27.39 27.39 0 0 0-25.66-17.78h-71.71a27.39 27.39 0 0 0-25.66 17.78l-7 14.24h-48A27.45 27.45 0 0 0 0 347.3v137.25A27.44 27.44 0 0 0 27.43 512h233.14A27.45 27.45 0 0 0 288 484.55V347.3a27.45 27.45 0 0 0-27.43-27.46zM144 468a52 52 0 1 1 52-52 52 52 0 0 1-52 52zm355.4-115.9h-60.58l22.36-50.75c2.1-6.65-3.93-13.21-12.18-13.21h-75.59c-6.3 0-11.66 3.9-12.5 9.1l-16.8 106.93c-1 6.3 4.88 11.89 12.5 11.89h62.31l-24.2 83c-1.89 6.65 4.2 12.9 12.23 12.9a13.26 13.26 0 0 0 10.92-5.25l92.4-138.91c4.88-6.91-1.16-15.7-10.87-15.7zM478.08.33L329.51 23.17C314.87 25.42 304 38.92 304 54.83V161.6a83.25 83.25 0 0 0-16-1.7c-35.35 0-64 21.48-64 48s28.65 48 64 48c35.2 0 63.73-21.32 64-47.66V99.66l112-17.22v47.18a83.25 83.25 0 0 0-16-1.7c-35.35 0-64 21.48-64 48s28.65 48 64 48c35.2 0 63.73-21.32 64-47.66V32c0-19.48-16-34.42-33.92-31.67z\"},\"child\":[]}]})(props);\n};\nexport function FaIdBadge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM144 32h96c8.8 0 16 7.2 16 16s-7.2 16-16 16h-96c-8.8 0-16-7.2-16-16s7.2-16 16-16zm48 128c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H102.4C90 416 80 407.4 80 396.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2z\"},\"child\":[]}]})(props);\n};\nexport function FaIdCardAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 64H384v96H192V64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM288 224c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm93.3 224H194.7c-10.4 0-18.8-10-15.6-19.8 8.3-25.6 32.4-44.2 60.9-44.2h8.2c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h8.2c28.4 0 52.5 18.5 60.9 44.2 3.2 9.8-5.2 19.8-15.6 19.8zM352 32c0-17.7-14.3-32-32-32h-64c-17.7 0-32 14.3-32 32v96h128V32z\"},\"child\":[]}]})(props);\n};\nexport function FaIdCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 32H48C21.5 32 0 53.5 0 80v16h576V80c0-26.5-21.5-48-48-48zM0 432c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V128H0v304zm352-232c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16zm0 64c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16zm0 64c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16zM176 192c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zM67.1 396.2C75.5 370.5 99.6 352 128 352h8.2c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h8.2c28.4 0 52.5 18.5 60.9 44.2 3.2 9.9-5.2 19.8-15.6 19.8H82.7c-10.4 0-18.8-10-15.6-19.8z\"},\"child\":[]}]})(props);\n};\nexport function FaIgloo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 33.9c-10.5-1.2-21.2-1.9-32-1.9-99.8 0-187.8 50.8-239.4 128H320V33.9zM96 192H30.3C11.1 230.6 0 274 0 320h96V192zM352 39.4V160h175.4C487.2 99.9 424.8 55.9 352 39.4zM480 320h96c0-46-11.1-89.4-30.3-128H480v128zm-64 64v96h128c17.7 0 32-14.3 32-32v-96H411.5c2.6 10.3 4.5 20.9 4.5 32zm32-192H128v128h49.8c22.2-38.1 63-64 110.2-64s88 25.9 110.2 64H448V192zM0 448c0 17.7 14.3 32 32 32h128v-96c0-11.1 1.9-21.7 4.5-32H0v96zm288-160c-53 0-96 43-96 96v96h192v-96c0-53-43-96-96-96z\"},\"child\":[]}]})(props);\n};\nexport function FaImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z\"},\"child\":[]}]})(props);\n};\nexport function FaImages (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 416v16c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v208c0 44.112 35.888 80 80 80h336zm96-80V80c0-26.51-21.49-48-48-48H144c-26.51 0-48 21.49-48 48v256c0 26.51 21.49 48 48 48h384c26.51 0 48-21.49 48-48zM256 128c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-96 144l55.515-55.515c4.686-4.686 12.284-4.686 16.971 0L272 256l135.515-135.515c4.686-4.686 12.284-4.686 16.971 0L512 208v112H160v-48z\"},\"child\":[]}]})(props);\n};\nexport function FaInbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M567.938 243.908L462.25 85.374A48.003 48.003 0 0 0 422.311 64H153.689a48 48 0 0 0-39.938 21.374L8.062 243.908A47.994 47.994 0 0 0 0 270.533V400c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V270.533a47.994 47.994 0 0 0-8.062-26.625zM162.252 128h251.497l85.333 128H376l-32 64H232l-32-64H76.918l85.334-128z\"},\"child\":[]}]})(props);\n};\nexport function FaIndent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M27.31 363.3l96-96a16 16 0 0 0 0-22.62l-96-96C17.27 138.66 0 145.78 0 160v192c0 14.31 17.33 21.3 27.31 11.3zM432 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm3.17-128H204.83A12.82 12.82 0 0 0 192 300.83v38.34A12.82 12.82 0 0 0 204.83 352h230.34A12.82 12.82 0 0 0 448 339.17v-38.34A12.82 12.82 0 0 0 435.17 288zm0-128H204.83A12.82 12.82 0 0 0 192 172.83v38.34A12.82 12.82 0 0 0 204.83 224h230.34A12.82 12.82 0 0 0 448 211.17v-38.34A12.82 12.82 0 0 0 435.17 160zM432 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaIndustry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M475.115 163.781L336 252.309v-68.28c0-18.916-20.931-30.399-36.885-20.248L160 252.309V56c0-13.255-10.745-24-24-24H24C10.745 32 0 42.745 0 56v400c0 13.255 10.745 24 24 24h464c13.255 0 24-10.745 24-24V184.029c0-18.917-20.931-30.399-36.885-20.248z\"},\"child\":[]}]})(props);\n};\nexport function FaInfinity (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M471.1 96C405 96 353.3 137.3 320 174.6 286.7 137.3 235 96 168.9 96 75.8 96 0 167.8 0 256s75.8 160 168.9 160c66.1 0 117.8-41.3 151.1-78.6 33.3 37.3 85 78.6 151.1 78.6 93.1 0 168.9-71.8 168.9-160S564.2 96 471.1 96zM168.9 320c-40.2 0-72.9-28.7-72.9-64s32.7-64 72.9-64c38.2 0 73.4 36.1 94 64-20.4 27.6-55.9 64-94 64zm302.2 0c-38.2 0-73.4-36.1-94-64 20.4-27.6 55.9-64 94-64 40.2 0 72.9 28.7 72.9 64s-32.7 64-72.9 64z\"},\"child\":[]}]})(props);\n};\nexport function FaInfoCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"},\"child\":[]}]})(props);\n};\nexport function FaInfo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 192 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M20 424.229h20V279.771H20c-11.046 0-20-8.954-20-20V212c0-11.046 8.954-20 20-20h112c11.046 0 20 8.954 20 20v212.229h20c11.046 0 20 8.954 20 20V492c0 11.046-8.954 20-20 20H20c-11.046 0-20-8.954-20-20v-47.771c0-11.046 8.954-20 20-20zM96 0C56.235 0 24 32.235 24 72s32.235 72 72 72 72-32.235 72-72S135.764 0 96 0z\"},\"child\":[]}]})(props);\n};\nexport function FaItalic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 48v32a16 16 0 0 1-16 16h-62.76l-80 320H208a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H16a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h62.76l80-320H112a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h192a16 16 0 0 1 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaJedi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M535.95308,352c-42.64069,94.17188-137.64086,160-247.9848,160q-6.39844,0-12.84377-.29688C171.15558,506.9375,81.26481,442.23438,40.01474,352H79.93668L21.3272,293.40625a264.82522,264.82522,0,0,1-5.10938-39.42187,273.6653,273.6653,0,0,1,.5-29.98438H63.93665L22.546,182.625A269.79782,269.79782,0,0,1,130.51489,20.54688a16.06393,16.06393,0,0,1,9.28127-3,16.36332,16.36332,0,0,1,13.5,7.25,16.02739,16.02739,0,0,1,1.625,15.09374,138.387,138.387,0,0,0-9.84376,51.26563c0,45.10937,21.04691,86.57813,57.71884,113.73437a16.29989,16.29989,0,0,1,1.20313,25.39063c-26.54692,23.98437-41.17194,56.5-41.17194,91.57813,0,60.03124,42.95319,110.28124,99.89079,121.92187l2.5-65.26563L238.062,397a8.33911,8.33911,0,0,1-10-.75,8.025,8.025,0,0,1-1.39063-9.9375l20.125-33.76562-42.06257-8.73438a7.9898,7.9898,0,0,1,0-15.65625l42.06257-8.71875-20.10941-33.73438a7.99122,7.99122,0,0,1,11.35939-10.71874L268.437,295.64062,279.95265,7.67188a7.97138,7.97138,0,0,1,8-7.67188h.04687a8.02064,8.02064,0,0,1,7.95314,7.70312L307.48394,295.625l30.39068-20.67188a8.08327,8.08327,0,0,1,10,.8125,7.99866,7.99866,0,0,1,1.39062,9.90626L329.12461,319.4375l42.07819,8.73438a7.99373,7.99373,0,0,1,0,15.65624l-42.07819,8.71876,20.1094,33.73437a7.97791,7.97791,0,0,1-1.32812,9.92187A8.25739,8.25739,0,0,1,337.87462,397L310.7027,378.53125l2.5,65.34375c48.48446-9.40625,87.57828-48.15625,97.31267-96.5A123.52652,123.52652,0,0,0,371.9528,230.29688a16.30634,16.30634,0,0,1,1.20313-25.42188c36.65631-27.17188,57.6876-68.60938,57.6876-113.73438a138.01689,138.01689,0,0,0-9.85939-51.3125,15.98132,15.98132,0,0,1,1.60937-15.09374,16.36914,16.36914,0,0,1,13.5-7.23438,16.02453,16.02453,0,0,1,9.25,2.98438A271.26947,271.26947,0,0,1,553.25,182.76562L511.99992,224h46.9532C559.3125,229.76562,560,235.45312,560,241.26562a270.092,270.092,0,0,1-5.125,51.85938L495.98427,352Z\"},\"child\":[]}]})(props);\n};\nexport function FaJoint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M444.34 181.1c22.38 15.68 35.66 41.16 35.66 68.59V280c0 4.42 3.58 8 8 8h48c4.42 0 8-3.58 8-8v-30.31c0-43.24-21.01-83.41-56.34-108.06C463.85 125.02 448 99.34 448 70.31V8c0-4.42-3.58-8-8-8h-48c-4.42 0-8 3.58-8 8v66.4c0 43.69 24.56 81.63 60.34 106.7zM194.97 358.98C126.03 370.07 59.69 394.69 0 432c83.65 52.28 180.3 80 278.94 80h88.57L254.79 380.49c-14.74-17.2-37.45-25.11-59.82-21.51zM553.28 87.09c-5.67-3.8-9.28-9.96-9.28-16.78V8c0-4.42-3.58-8-8-8h-48c-4.42 0-8 3.58-8 8v62.31c0 22.02 10.17 43.41 28.64 55.39C550.79 153.04 576 199.54 576 249.69V280c0 4.42 3.58 8 8 8h48c4.42 0 8-3.58 8-8v-30.31c0-65.44-32.41-126.19-86.72-162.6zM360.89 352.05c-34.4.06-86.81.15-88.21.17l117.8 137.43A63.987 63.987 0 0 0 439.07 512h88.45L409.57 374.4a63.955 63.955 0 0 0-48.68-22.35zM616 352H432l117.99 137.65A63.987 63.987 0 0 0 598.58 512H616c13.25 0 24-10.75 24-24V376c0-13.26-10.75-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaJournalWhills (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M438.40625,377.59375c-3.20313,12.8125-3.20313,57.60937,0,73.60937Q447.9922,460.78907,448,470.40625v16c0,16-12.79688,25.59375-25.59375,25.59375H96c-54.40625,0-96-41.59375-96-96V96C0,41.59375,41.59375,0,96,0H422.40625C438.40625,0,448,9.59375,448,25.59375v332.8125Q448,372.79688,438.40625,377.59375ZM380.79688,384H96c-16,0-32,12.79688-32,32s12.79688,32,32,32H380.79688ZM128.01562,176.01562c0,.51563.14063.98438.14063,1.5l37.10937,32.46876A7.99954,7.99954,0,0,1,160,224h-.01562a9.17678,9.17678,0,0,1-5.25-1.98438L131.14062,201.375C142.6875,250.95312,186.90625,288,240,288s97.3125-37.04688,108.875-86.625l-23.59375,20.64062a8.02516,8.02516,0,0,1-5.26563,1.96876H320a9.14641,9.14641,0,0,1-6.01562-2.71876A9.26508,9.26508,0,0,1,312,216a9.097,9.097,0,0,1,2.73438-6.01562l37.10937-32.46876c.01563-.53124.15625-1,.15625-1.51562,0-11.04688-2.09375-21.51562-5.06251-31.59375l-21.26562,21.25a8.00467,8.00467,0,0,1-11.32812-11.3125l26.42187-26.40625a111.81517,111.81517,0,0,0-46.35937-49.26562,63.02336,63.02336,0,0,1-14.0625,82.64062A55.83846,55.83846,0,0,1,251.625,254.73438l-1.42188-34.28126,12.67188,8.625a3.967,3.967,0,0,0,2.25.6875,3.98059,3.98059,0,0,0,3.43749-6.03124l-8.53124-14.3125,17.90625-3.71876a4.00647,4.00647,0,0,0,0-7.84374l-17.90625-3.71876,8.53124-14.3125a3.98059,3.98059,0,0,0-3.43749-6.03124,4.726,4.726,0,0,0-2.25.67187L248.6875,184.125,244,71.82812a4.00386,4.00386,0,0,0-8,0l-4.625,110.8125-12-8.15624a4.003,4.003,0,0,0-5.68751,5.35937l8.53126,14.3125L204.3125,197.875a3.99686,3.99686,0,0,0,0,7.82812l17.90625,3.73438-8.53126,14.29688a4.72469,4.72469,0,0,0-.56249,2.04687,4.59547,4.59547,0,0,0,1.25,2.90625,4.01059,4.01059,0,0,0,2.75,1.09375,4.09016,4.09016,0,0,0,2.25-.6875l10.35937-7.04687L228.375,254.76562a55.86414,55.86414,0,0,1-28.71875-93.45312,63.01119,63.01119,0,0,1-14.04688-82.65625,111.93158,111.93158,0,0,0-46.375,49.26563l26.42187,26.42187a7.99917,7.99917,0,0,1-11.3125,11.3125l-21.26563-21.26563C130.09375,154.48438,128,164.95312,128.01562,176.01562Z\"},\"child\":[]}]})(props);\n};\nexport function FaKaaba (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M554.12 83.51L318.36 4.93a95.962 95.962 0 0 0-60.71 0L21.88 83.51A32.006 32.006 0 0 0 0 113.87v49.01l265.02-79.51c15.03-4.5 30.92-4.5 45.98 0l265 79.51v-49.01c0-13.77-8.81-26-21.88-30.36zm-279.9 30.52L0 196.3v228.38c0 15 10.42 27.98 25.06 31.24l242.12 53.8a95.937 95.937 0 0 0 41.65 0l242.12-53.8c14.64-3.25 25.06-16.24 25.06-31.24V196.29l-274.2-82.26c-9.04-2.72-18.59-2.72-27.59 0zM128 230.11c0 3.61-2.41 6.77-5.89 7.72l-80 21.82C37.02 261.03 32 257.2 32 251.93v-16.58c0-3.61 2.41-6.77 5.89-7.72l80-21.82c5.09-1.39 10.11 2.44 10.11 7.72v16.58zm144-39.28c0 3.61-2.41 6.77-5.89 7.72l-96 26.18c-5.09 1.39-10.11-2.44-10.11-7.72v-16.58c0-3.61 2.41-6.77 5.89-7.72l96-26.18c5.09-1.39 10.11 2.44 10.11 7.72v16.58zm176 22.7c0-5.28 5.02-9.11 10.11-7.72l80 21.82c3.48.95 5.89 4.11 5.89 7.72v16.58c0 5.28-5.02 9.11-10.11 7.72l-80-21.82a7.997 7.997 0 0 1-5.89-7.72v-16.58zm-144-39.27c0-5.28 5.02-9.11 10.11-7.72l96 26.18c3.48.95 5.89 4.11 5.89 7.72v16.58c0 5.28-5.02 9.11-10.11 7.72l-96-26.18a7.997 7.997 0 0 1-5.89-7.72v-16.58z\"},\"child\":[]}]})(props);\n};\nexport function FaKey (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 176.001C512 273.203 433.202 352 336 352c-11.22 0-22.19-1.062-32.827-3.069l-24.012 27.014A23.999 23.999 0 0 1 261.223 384H224v40c0 13.255-10.745 24-24 24h-40v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24v-78.059c0-6.365 2.529-12.47 7.029-16.971l161.802-161.802C163.108 213.814 160 195.271 160 176 160 78.798 238.797.001 335.999 0 433.488-.001 512 78.511 512 176.001zM336 128c0 26.51 21.49 48 48 48s48-21.49 48-48-21.49-48-48-48-48 21.49-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaKeyboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM128 180v-40c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm288 0v-40c0-6.627-5.373-12-12-12H172c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h232c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaKhanda (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M415.81 66c-6.37-3.5-14.37-2.33-19.36 3.02a15.974 15.974 0 0 0-1.91 19.52c16.49 26.16 25.2 56.39 25.2 87.41-.19 53.25-26.77 102.69-71.27 132.41l-76.63 53.35v-20.1l44.05-36.09c3.92-4.2 5-10.09 2.81-15.28L310.85 273c33.84-19.26 56.94-55.25 56.94-96.99 0-40.79-22.02-76.13-54.59-95.71l5.22-11.44c2.34-5.53.93-11.83-3.57-16.04L255.86 0l-58.99 52.81c-4.5 4.21-5.9 10.51-3.57 16.04l5.22 11.44c-32.57 19.58-54.59 54.93-54.59 95.72 0 41.75 23.09 77.73 56.94 96.99l-7.85 17.24c-2.19 5.18-1.1 11.07 2.81 15.28l44.05 36.09v19.9l-76.59-53.33C119.02 278.62 92.44 229.19 92.26 176c0-31.08 8.71-61.31 25.2-87.47 3.87-6.16 2.4-13.77-2.59-19.08-5-5.34-13.68-6.2-20.02-2.7C16.32 109.6-22.3 205.3 13.36 295.99c7.07 17.99 17.89 34.38 30.46 49.06l55.97 65.36c4.87 5.69 13.04 7.24 19.65 3.72l79.35-42.23L228 392.23l-47.08 32.78c-1.67-.37-3.23-1.01-5.01-1.01-13.25 0-23.99 10.74-23.99 24 0 13.25 10.74 24 23.99 24 12.1 0 21.69-9.11 23.33-20.76l40.63-28.28v29.95c-9.39 5.57-15.99 15.38-15.99 27.1 0 17.67 14.32 32 31.98 32s31.98-14.33 31.98-32c0-11.71-6.61-21.52-15.99-27.1v-30.15l40.91 28.48C314.41 462.89 324 472 336.09 472c13.25 0 23.99-10.75 23.99-24 0-13.26-10.74-24-23.99-24-1.78 0-3.34.64-5.01 1.01L284 392.23l29.21-20.34 79.35 42.23c6.61 3.52 14.78 1.97 19.65-3.71l52.51-61.31c18.87-22.02 34-47.5 41.25-75.59 21.62-83.66-16.45-167.27-90.16-207.51zm-95.99 110c0 22.3-11.49 41.92-28.83 53.38l-5.65-12.41c-8.75-24.52-8.75-51.04 0-75.56l7.83-17.18c16.07 11.65 26.65 30.45 26.65 51.77zm-127.93 0c0-21.32 10.58-40.12 26.66-51.76l7.83 17.18c8.75 24.52 8.75 51.03 0 75.56l-5.65 12.41c-17.34-11.46-28.84-31.09-28.84-53.39z\"},\"child\":[]}]})(props);\n};\nexport function FaKissBeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-39 219.9l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.5 8.5-10.9 12-15.1 4.5zM304 396c0 19.2-28.7 41.5-71.5 44-8.5.8-12.1-11.8-3.6-15.4l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-6-2.5-6.1-12.2 0-14.8l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-8.6-3.6-4.8-16.5 3.6-15.4 42.8 2.5 71.5 24.8 71.5 44 0 13-13.4 27.3-35.2 36C290.6 368.7 304 383 304 396zm65-168.1l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.1 7.3-15.6 4-14.9-4.5 3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.5 8.5-10.9 12-15.1 4.5z\"},\"child\":[]}]})(props);\n};\nexport function FaKissWinkHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 504 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M501.1 402.5c-8-20.8-31.5-31.5-53.1-25.9l-8.4 2.2-2.3-8.4c-5.9-21.4-27-36.5-49-33-25.2 4-40.6 28.6-34 52.6l22.9 82.6c1.5 5.3 7 8.5 12.4 7.1l83-21.5c24.1-6.3 37.7-31.8 28.5-55.7zm-177.6-4c-5.6-20.3-2.3-42 9-59.7 29.7-46.3 98.7-45.5 127.8 4.3 6.4.1 12.6 1.4 18.6 2.9 10.9-27.9 17.1-58.2 17.1-90C496 119 385 8 248 8S0 119 0 256s111 248 248 248c35.4 0 68.9-7.5 99.4-20.9-.3-.7-23.9-84.6-23.9-84.6zM168 240c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm120 156c0 19.2-28.7 41.5-71.5 44-8.5.8-12.1-11.8-3.6-15.4l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-6-2.5-5.7-12.3 0-14.8l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-8.8-3.7-4.6-16.6 3.6-15.4 42.8 2.5 71.5 24.8 71.5 44 0 13-13.4 27.3-35.2 36C274.6 368.7 288 383 288 396zm16-179c-8.3 7.4-21.6.4-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S400 181 404 206.2c1.7 11.1-11.3 18.3-19.8 10.8l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L304 217z\"},\"child\":[]}]})(props);\n};\nexport function FaKiss (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-80 232c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm136 156c0 19.2-28.7 41.5-71.5 44-8.5.8-12.1-11.8-3.6-15.4l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-6-2.5-6.1-12.2 0-14.8l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-8.6-3.6-4.8-16.5 3.6-15.4 42.8 2.5 71.5 24.8 71.5 44 0 13-13.4 27.3-35.2 36C290.6 368.7 304 383 304 396zm24-156c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaKiwiBird (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M575.81 217.98C572.64 157.41 518.28 112 457.63 112h-9.37c-52.82 0-104.25-16.25-147.74-46.24-41.99-28.96-96.04-41.62-153.21-28.7C129.3 41.12-.08 78.24 0 224c.04 70.95 38.68 132.8 95.99 166.01V464c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-54.26c15.36 3.96 31.4 6.26 48 6.26 5.44 0 10.68-.73 16-1.18V464c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-59.43c14.24-5.06 27.88-11.39 40.34-19.51C342.07 355.25 393.86 336 448.46 336c25.48 0 16.01-.31 23.05-.78l74.41 136.44c2.86 5.23 8.3 8.34 14.05 8.34 1.31 0 2.64-.16 3.95-.5 7.09-1.8 12.05-8.19 12.05-15.5 0 0 .14-240.24-.16-246.02zM463.97 248c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm80 153.25l-39.86-73.08c15.12-5.83 28.73-14.6 39.86-25.98v99.06z\"},\"child\":[]}]})(props);\n};\nexport function FaLandmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M501.62 92.11L267.24 2.04a31.958 31.958 0 0 0-22.47 0L10.38 92.11A16.001 16.001 0 0 0 0 107.09V144c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-36.91c0-6.67-4.14-12.64-10.38-14.98zM64 192v160H48c-8.84 0-16 7.16-16 16v48h448v-48c0-8.84-7.16-16-16-16h-16V192h-64v160h-96V192h-64v160h-96V192H64zm432 256H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaLanguage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M152.1 236.2c-3.5-12.1-7.8-33.2-7.8-33.2h-.5s-4.3 21.1-7.8 33.2l-11.1 37.5H163zM616 96H336v320h280c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24zm-24 120c0 6.6-5.4 12-12 12h-11.4c-6.9 23.6-21.7 47.4-42.7 69.9 8.4 6.4 17.1 12.5 26.1 18 5.5 3.4 7.3 10.5 4.1 16.2l-7.9 13.9c-3.4 5.9-10.9 7.8-16.7 4.3-12.6-7.8-24.5-16.1-35.4-24.9-10.9 8.7-22.7 17.1-35.4 24.9-5.8 3.5-13.3 1.6-16.7-4.3l-7.9-13.9c-3.2-5.6-1.4-12.8 4.2-16.2 9.3-5.7 18-11.7 26.1-18-7.9-8.4-14.9-17-21-25.7-4-5.7-2.2-13.6 3.7-17.1l6.5-3.9 7.3-4.3c5.4-3.2 12.4-1.7 16 3.4 5 7 10.8 14 17.4 20.9 13.5-14.2 23.8-28.9 30-43.2H412c-6.6 0-12-5.4-12-12v-16c0-6.6 5.4-12 12-12h64v-16c0-6.6 5.4-12 12-12h16c6.6 0 12 5.4 12 12v16h64c6.6 0 12 5.4 12 12zM0 120v272c0 13.3 10.7 24 24 24h280V96H24c-13.3 0-24 10.7-24 24zm58.9 216.1L116.4 167c1.7-4.9 6.2-8.1 11.4-8.1h32.5c5.1 0 9.7 3.3 11.4 8.1l57.5 169.1c2.6 7.8-3.1 15.9-11.4 15.9h-22.9a12 12 0 0 1-11.5-8.6l-9.4-31.9h-60.2l-9.1 31.8c-1.5 5.1-6.2 8.7-11.5 8.7H70.3c-8.2 0-14-8.1-11.4-15.9z\"},\"child\":[]}]})(props);\n};\nexport function FaLaptopCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M255.03 261.65c6.25 6.25 16.38 6.25 22.63 0l11.31-11.31c6.25-6.25 6.25-16.38 0-22.63L253.25 192l35.71-35.72c6.25-6.25 6.25-16.38 0-22.63l-11.31-11.31c-6.25-6.25-16.38-6.25-22.63 0l-58.34 58.34c-6.25 6.25-6.25 16.38 0 22.63l58.35 58.34zm96.01-11.3l11.31 11.31c6.25 6.25 16.38 6.25 22.63 0l58.34-58.34c6.25-6.25 6.25-16.38 0-22.63l-58.34-58.34c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63L386.75 192l-35.71 35.72c-6.25 6.25-6.25 16.38 0 22.63zM624 416H381.54c-.74 19.81-14.71 32-32.74 32H288c-18.69 0-33.02-17.47-32.77-32H16c-8.8 0-16 7.2-16 16v16c0 35.2 28.8 64 64 64h512c35.2 0 64-28.8 64-64v-16c0-8.8-7.2-16-16-16zM576 48c0-26.4-21.6-48-48-48H112C85.6 0 64 21.6 64 48v336h512V48zm-64 272H128V64h384v256z\"},\"child\":[]}]})(props);\n};\nexport function FaLaptopHouse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272,288H208a16,16,0,0,1-16-16V208a16,16,0,0,1,16-16h64a16,16,0,0,1,16,16v37.12C299.11,232.24,315,224,332.8,224H469.74l6.65-7.53A16.51,16.51,0,0,0,480,207a16.31,16.31,0,0,0-4.75-10.61L416,144V48a16,16,0,0,0-16-16H368a16,16,0,0,0-16,16V87.3L263.5,8.92C258,4,247.45,0,240.05,0s-17.93,4-23.47,8.92L4.78,196.42A16.15,16.15,0,0,0,0,207a16.4,16.4,0,0,0,3.55,9.39L22.34,237.7A16.22,16.22,0,0,0,33,242.48,16.51,16.51,0,0,0,42.34,239L64,219.88V384a32,32,0,0,0,32,32H272ZM629.33,448H592V288c0-17.67-12.89-32-28.8-32H332.8c-15.91,0-28.8,14.33-28.8,32V448H266.67A10.67,10.67,0,0,0,256,458.67v10.66A42.82,42.82,0,0,0,298.6,512H597.4A42.82,42.82,0,0,0,640,469.33V458.67A10.67,10.67,0,0,0,629.33,448ZM544,448H352V304H544Z\"},\"child\":[]}]})(props);\n};\nexport function FaLaptopMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M232 224h56v56a8 8 0 0 0 8 8h48a8 8 0 0 0 8-8v-56h56a8 8 0 0 0 8-8v-48a8 8 0 0 0-8-8h-56v-56a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v56h-56a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8zM576 48a48.14 48.14 0 0 0-48-48H112a48.14 48.14 0 0 0-48 48v336h512zm-64 272H128V64h384zm112 96H381.54c-.74 19.81-14.71 32-32.74 32H288c-18.69 0-33-17.47-32.77-32H16a16 16 0 0 0-16 16v16a64.19 64.19 0 0 0 64 64h512a64.19 64.19 0 0 0 64-64v-16a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaLaptop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 416H381.54c-.74 19.81-14.71 32-32.74 32H288c-18.69 0-33.02-17.47-32.77-32H16c-8.8 0-16 7.2-16 16v16c0 35.2 28.8 64 64 64h512c35.2 0 64-28.8 64-64v-16c0-8.8-7.2-16-16-16zM576 48c0-26.4-21.6-48-48-48H112C85.6 0 64 21.6 64 48v336h512V48zm-64 272H128V64h384v256z\"},\"child\":[]}]})(props);\n};\nexport function FaLaughBeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm24 199.4c3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.8 4.1-15.1-4.5zm-160 0c3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.3 7.4-15.8 4-15.1-4.5zM398.9 306C390 377 329.4 432 256 432h-16c-73.4 0-134-55-142.9-126-1.2-9.5 6.3-18 15.9-18h270c9.6 0 17.1 8.4 15.9 18z\"},\"child\":[]}]})(props);\n};\nexport function FaLaughSquint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm33.8 161.7l80-48c11.6-6.9 24 7.7 15.4 18L343.6 180l33.6 40.3c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.7-4.7-7.7-15.9 0-20.6zm-163-30c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.8 4.7 7.8 15.9 0 20.6l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3-33.6-40.3zM398.9 306C390 377 329.4 432 256 432h-16c-73.4 0-134-55-142.9-126-1.2-9.5 6.3-18 15.9-18h270c9.6 0 17.1 8.4 15.9 18z\"},\"child\":[]}]})(props);\n};\nexport function FaLaughWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm20.1 198.1c4-25.2 34.2-42.1 59.9-42.1s55.9 16.9 59.9 42.1c1.7 11.1-11.4 18.3-19.8 10.8l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L288 217c-8.4 7.4-21.6.3-19.9-10.9zM168 160c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm230.9 146C390 377 329.4 432 256 432h-16c-73.4 0-134-55-142.9-126-1.2-9.5 6.3-18 15.9-18h270c9.6 0 17.1 8.4 15.9 18z\"},\"child\":[]}]})(props);\n};\nexport function FaLaugh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 152c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm88 272h-16c-73.4 0-134-55-142.9-126-1.2-9.5 6.3-18 15.9-18h270c9.6 0 17.1 8.4 15.9 18-8.9 71-69.5 126-142.9 126z\"},\"child\":[]}]})(props);\n};\nexport function FaLayerGroup (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.41 148.02l232.94 105.67c6.8 3.09 14.49 3.09 21.29 0l232.94-105.67c16.55-7.51 16.55-32.52 0-40.03L266.65 2.31a25.607 25.607 0 0 0-21.29 0L12.41 107.98c-16.55 7.51-16.55 32.53 0 40.04zm487.18 88.28l-58.09-26.33-161.64 73.27c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.51 209.97l-58.1 26.33c-16.55 7.5-16.55 32.5 0 40l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 276.3c16.55-7.5 16.55-32.5 0-40zm0 127.8l-57.87-26.23-161.86 73.37c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.29 337.87 12.41 364.1c-16.55 7.5-16.55 32.5 0 40l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 404.1c16.55-7.5 16.55-32.5 0-40z\"},\"child\":[]}]})(props);\n};\nexport function FaLeaf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M546.2 9.7c-5.6-12.5-21.6-13-28.3-1.2C486.9 62.4 431.4 96 368 96h-80C182 96 96 182 96 288c0 7 .8 13.7 1.5 20.5C161.3 262.8 253.4 224 384 224c8.8 0 16 7.2 16 16s-7.2 16-16 16C132.6 256 26 410.1 2.4 468c-6.6 16.3 1.2 34.9 17.5 41.6 16.4 6.8 35-1.1 41.8-17.3 1.5-3.6 20.9-47.9 71.9-90.6 32.4 43.9 94 85.8 174.9 77.2C465.5 467.5 576 326.7 576 154.3c0-50.2-10.8-102.2-29.8-144.6z\"},\"child\":[]}]})(props);\n};\nexport function FaLemon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M489.038 22.963C465.944-.13 434.648-5.93 413.947 6.129c-58.906 34.312-181.25-53.077-321.073 86.746S40.441 355.041 6.129 413.945c-12.059 20.702-6.26 51.999 16.833 75.093 23.095 23.095 54.392 28.891 75.095 16.832 58.901-34.31 181.246 53.079 321.068-86.743S471.56 156.96 505.871 98.056c12.059-20.702 6.261-51.999-16.833-75.093zM243.881 95.522c-58.189 14.547-133.808 90.155-148.358 148.358-1.817 7.27-8.342 12.124-15.511 12.124-1.284 0-2.59-.156-3.893-.481-8.572-2.144-13.784-10.83-11.642-19.403C81.901 166.427 166.316 81.93 236.119 64.478c8.575-2.143 17.261 3.069 19.403 11.642s-3.069 17.259-11.641 19.402z\"},\"child\":[]}]})(props);\n};\nexport function FaLessThanEqual (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M54.98 214.2l301.41 119.87c18.39 6.03 38.71-2.54 45.38-19.15l12.09-30.08c6.68-16.61-2.82-34.97-21.21-41l-175.44-68.05 175.56-68.09c18.29-6 27.74-24.27 21.1-40.79l-12.03-29.92c-6.64-16.53-26.86-25.06-45.15-19.06L54.98 137.89C41.21 142.41 32 154.5 32 168.07v15.96c0 13.56 9.21 25.65 22.98 30.17zM424 400H24c-13.25 0-24 10.74-24 24v48c0 13.25 10.75 24 24 24h400c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaLessThan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M365.46 357.74L147.04 255.89l218.47-101.88c16.02-7.47 22.95-26.51 15.48-42.53l-13.52-29C360 66.46 340.96 59.53 324.94 67L18.48 209.91a32.014 32.014 0 0 0-18.48 29v34.24c0 12.44 7.21 23.75 18.48 29l306.31 142.83c16.06 7.49 35.15.54 42.64-15.52l13.56-29.08c7.49-16.06.54-35.15-15.53-42.64z\"},\"child\":[]}]})(props);\n};\nexport function FaLevelDownAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.553 392.331L209.587 504.334c-9.485 10.214-25.676 10.229-35.174 0L70.438 392.331C56.232 377.031 67.062 352 88.025 352H152V80H68.024a11.996 11.996 0 0 1-8.485-3.515l-56-56C-4.021 12.926 1.333 0 12.024 0H208c13.255 0 24 10.745 24 24v328h63.966c20.878 0 31.851 24.969 17.587 40.331z\"},\"child\":[]}]})(props);\n};\nexport function FaLevelUpAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.553 119.669L209.587 7.666c-9.485-10.214-25.676-10.229-35.174 0L70.438 119.669C56.232 134.969 67.062 160 88.025 160H152v272H68.024a11.996 11.996 0 0 0-8.485 3.515l-56 56C-4.021 499.074 1.333 512 12.024 512H208c13.255 0 24-10.745 24-24V160h63.966c20.878 0 31.851-24.969 17.587-40.331z\"},\"child\":[]}]})(props);\n};\nexport function FaLifeRing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm173.696 119.559l-63.399 63.399c-10.987-18.559-26.67-34.252-45.255-45.255l63.399-63.399a218.396 218.396 0 0 1 45.255 45.255zM256 352c-53.019 0-96-42.981-96-96s42.981-96 96-96 96 42.981 96 96-42.981 96-96 96zM127.559 82.304l63.399 63.399c-18.559 10.987-34.252 26.67-45.255 45.255l-63.399-63.399a218.372 218.372 0 0 1 45.255-45.255zM82.304 384.441l63.399-63.399c10.987 18.559 26.67 34.252 45.255 45.255l-63.399 63.399a218.396 218.396 0 0 1-45.255-45.255zm302.137 45.255l-63.399-63.399c18.559-10.987 34.252-26.67 45.255-45.255l63.399 63.399a218.403 218.403 0 0 1-45.255 45.255z\"},\"child\":[]}]})(props);\n};\nexport function FaLightbulb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 352 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96.06 454.35c.01 6.29 1.87 12.45 5.36 17.69l17.09 25.69a31.99 31.99 0 0 0 26.64 14.28h61.71a31.99 31.99 0 0 0 26.64-14.28l17.09-25.69a31.989 31.989 0 0 0 5.36-17.69l.04-38.35H96.01l.05 38.35zM0 176c0 44.37 16.45 84.85 43.56 115.78 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h160.24c.04-.26.07-.51.11-.78 9.85-33.22 35.69-72.6 52.21-91.45C335.55 260.85 352 220.37 352 176 352 78.61 272.91-.3 175.45 0 73.44.31 0 82.97 0 176zm176-80c-44.11 0-80 35.89-80 80 0 8.84-7.16 16-16 16s-16-7.16-16-16c0-61.76 50.24-112 112-112 8.84 0 16 7.16 16 16s-7.16 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaLink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z\"},\"child\":[]}]})(props);\n};\nexport function FaLiraSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M371.994 256h-48.019C317.64 256 312 260.912 312 267.246 312 368 230.179 416 144 416V256.781l134.603-29.912A12 12 0 0 0 288 215.155v-40.976c0-7.677-7.109-13.38-14.603-11.714L144 191.219V160.78l134.603-29.912A12 12 0 0 0 288 119.154V78.179c0-7.677-7.109-13.38-14.603-11.714L144 95.219V44c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v68.997L9.397 125.131A12 12 0 0 0 0 136.845v40.976c0 7.677 7.109 13.38 14.603 11.714L64 178.558v30.439L9.397 221.131A12 12 0 0 0 0 232.845v40.976c0 7.677 7.109 13.38 14.603 11.714L64 274.558V468c0 6.627 5.373 12 12 12h79.583c134.091 0 223.255-77.834 228.408-211.592.261-6.782-5.211-12.408-11.997-12.408z\"},\"child\":[]}]})(props);\n};\nexport function FaListAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 480H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48zM128 120c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm0 96c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm0 96c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm288-136v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12zm0 96v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12zm0 96v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaListOl (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M61.77 401l17.5-20.15a19.92 19.92 0 0 0 5.07-14.19v-3.31C84.34 356 80.5 352 73 352H16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h22.83a157.41 157.41 0 0 0-11 12.31l-5.61 7c-4 5.07-5.25 10.13-2.8 14.88l1.05 1.93c3 5.76 6.29 7.88 12.25 7.88h4.73c10.33 0 15.94 2.44 15.94 9.09 0 4.72-4.2 8.22-14.36 8.22a41.54 41.54 0 0 1-15.47-3.12c-6.49-3.88-11.74-3.5-15.6 3.12l-5.59 9.31c-3.72 6.13-3.19 11.72 2.63 15.94 7.71 4.69 20.38 9.44 37 9.44 34.16 0 48.5-22.75 48.5-44.12-.03-14.38-9.12-29.76-28.73-34.88zM496 224H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-160H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 320H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM16 160h64a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H64V40a8 8 0 0 0-8-8H32a8 8 0 0 0-7.14 4.42l-8 16A8 8 0 0 0 24 64h8v64H16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm-3.91 160H80a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H41.32c3.29-10.29 48.34-18.68 48.34-56.44 0-29.06-25-39.56-44.47-39.56-21.36 0-33.8 10-40.46 18.75-4.37 5.59-3 10.84 2.8 15.37l8.58 6.88c5.61 4.56 11 2.47 16.12-2.44a13.44 13.44 0 0 1 9.46-3.84c3.33 0 9.28 1.56 9.28 8.75C51 248.19 0 257.31 0 304.59v4C0 316 5.08 320 12.09 320z\"},\"child\":[]}]})(props);\n};\nexport function FaListUl (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 48a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0 160a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0 160a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm448 16H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-320H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 160H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaList (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M80 368H16a16 16 0 0 0-16 16v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-64a16 16 0 0 0-16-16zm0-320H16A16 16 0 0 0 0 64v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16V64a16 16 0 0 0-16-16zm0 160H16a16 16 0 0 0-16 16v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-64a16 16 0 0 0-16-16zm416 176H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-320H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 160H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaLocationArrow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M444.52 3.52L28.74 195.42c-47.97 22.39-31.98 92.75 19.19 92.75h175.91v175.91c0 51.17 70.36 67.17 92.75 19.19l191.9-415.78c15.99-38.39-25.59-79.97-63.97-63.97z\"},\"child\":[]}]})(props);\n};\nexport function FaLockOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M423.5 0C339.5.3 272 69.5 272 153.5V224H48c-26.5 0-48 21.5-48 48v192c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48h-48v-71.1c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v80c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-80C576 68 507.5-.3 423.5 0z\"},\"child\":[]}]})(props);\n};\nexport function FaLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 224h-24v-72C376 68.2 307.8 0 224 0S72 68.2 72 152v72H48c-26.5 0-48 21.5-48 48v192c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48zm-104 0H152v-72c0-39.7 32.3-72 72-72s72 32.3 72 72v72z\"},\"child\":[]}]})(props);\n};\nexport function FaLongArrowAltDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M168 345.941V44c0-6.627-5.373-12-12-12h-56c-6.627 0-12 5.373-12 12v301.941H41.941c-21.382 0-32.09 25.851-16.971 40.971l86.059 86.059c9.373 9.373 24.569 9.373 33.941 0l86.059-86.059c15.119-15.119 4.411-40.971-16.971-40.971H168z\"},\"child\":[]}]})(props);\n};\nexport function FaLongArrowAltLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M134.059 296H436c6.627 0 12-5.373 12-12v-56c0-6.627-5.373-12-12-12H134.059v-46.059c0-21.382-25.851-32.09-40.971-16.971L7.029 239.029c-9.373 9.373-9.373 24.569 0 33.941l86.059 86.059c15.119 15.119 40.971 4.411 40.971-16.971V296z\"},\"child\":[]}]})(props);\n};\nexport function FaLongArrowAltRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.941 216H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h301.941v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.569 0-33.941l-86.059-86.059c-15.119-15.119-40.971-4.411-40.971 16.971V216z\"},\"child\":[]}]})(props);\n};\nexport function FaLongArrowAltUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M88 166.059V468c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12V166.059h46.059c21.382 0 32.09-25.851 16.971-40.971l-86.059-86.059c-9.373-9.373-24.569-9.373-33.941 0l-86.059 86.059c-15.119 15.119-4.411 40.971 16.971 40.971H88z\"},\"child\":[]}]})(props);\n};\nexport function FaLowVision (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M569.344 231.631C512.96 135.949 407.81 72 288 72c-28.468 0-56.102 3.619-82.451 10.409L152.778 10.24c-7.601-10.858-22.564-13.5-33.423-5.9l-13.114 9.178c-10.86 7.601-13.502 22.566-5.9 33.426l43.131 58.395C89.449 131.73 40.228 174.683 6.682 231.581c-.01.017-.023.033-.034.05-8.765 14.875-8.964 33.528 0 48.739 38.5 65.332 99.742 115.862 172.859 141.349L55.316 244.302A272.194 272.194 0 0 1 83.61 208.39l119.4 170.58h.01l40.63 58.04a330.055 330.055 0 0 0 78.94 1.17l-189.98-271.4a277.628 277.628 0 0 1 38.777-21.563l251.836 356.544c7.601 10.858 22.564 13.499 33.423 5.9l13.114-9.178c10.86-7.601 13.502-22.567 5.9-33.426l-43.12-58.377-.007-.009c57.161-27.978 104.835-72.04 136.81-126.301a47.938 47.938 0 0 0 .001-48.739zM390.026 345.94l-19.066-27.23c24.682-32.567 27.711-76.353 8.8-111.68v.03c0 23.65-19.17 42.82-42.82 42.82-23.828 0-42.82-19.349-42.82-42.82 0-23.65 19.17-42.82 42.82-42.82h.03c-24.75-13.249-53.522-15.643-79.51-7.68l-19.068-27.237C253.758 123.306 270.488 120 288 120c75.162 0 136 60.826 136 136 0 34.504-12.833 65.975-33.974 89.94z\"},\"child\":[]}]})(props);\n};\nexport function FaLuggageCart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 320h32V96h-32c-17.67 0-32 14.33-32 32v160c0 17.67 14.33 32 32 32zm352-32V128c0-17.67-14.33-32-32-32h-32v224h32c17.67 0 32-14.33 32-32zm48 96H128V16c0-8.84-7.16-16-16-16H16C7.16 0 0 7.16 0 16v32c0 8.84 7.16 16 16 16h48v368c0 8.84 7.16 16 16 16h82.94c-1.79 5.03-2.94 10.36-2.94 16 0 26.51 21.49 48 48 48s48-21.49 48-48c0-5.64-1.15-10.97-2.94-16h197.88c-1.79 5.03-2.94 10.36-2.94 16 0 26.51 21.49 48 48 48s48-21.49 48-48c0-5.64-1.15-10.97-2.94-16H624c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM480 96V48c0-26.51-21.49-48-48-48h-96c-26.51 0-48 21.49-48 48v272h192V96zm-48 0h-96V48h96v48z\"},\"child\":[]}]})(props);\n};\nexport function FaLungsVirus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M344,150.68V16A16,16,0,0,0,328,0H312a16,16,0,0,0-16,16V150.68a46.45,46.45,0,0,1,48,0ZM195.54,444.46a48.06,48.06,0,0,1,0-67.88l8.58-8.58H192a48,48,0,0,1,0-96h12.12l-8.58-8.57a48,48,0,0,1,60.46-74V161.75C256,125.38,224.62,96,186,96c-44,0-58,28.5-80.12,63.13a819.52,819.52,0,0,0-102,231A113.16,113.16,0,0,0,0,419.75C0,481,62.5,525.26,125.25,508.38l59.5-15.87a98.51,98.51,0,0,0,52.5-34.75,46.49,46.49,0,0,1-41.71-13.3Zm226.29-22.63a16,16,0,0,0,0-22.62l-8.58-8.58C393.09,370.47,407.37,336,435.88,336H448a16,16,0,0,0,0-32H435.88c-28.51,0-42.79-34.47-22.63-54.62l8.58-8.58a16,16,0,0,0-22.63-22.63l-8.57,8.58C370.47,246.91,336,232.63,336,204.12V192a16,16,0,0,0-32,0v12.12c0,28.51-34.47,42.79-54.63,22.63l-8.57-8.58a16,16,0,0,0-22.63,22.63l8.58,8.58c20.16,20.15,5.88,54.62-22.63,54.62H192a16,16,0,0,0,0,32h12.12c28.51,0,42.79,34.47,22.63,54.63l-8.58,8.58a16,16,0,1,0,22.63,22.62l8.57-8.57C269.53,393.1,304,407.38,304,435.88V448a16,16,0,0,0,32,0V435.88c0-28.5,34.47-42.78,54.63-22.62l8.57,8.57a16,16,0,0,0,22.63,0ZM288,304a16,16,0,1,1,16-16A16,16,0,0,1,288,304Zm64,64a16,16,0,1,1,16-16A16,16,0,0,1,352,368Zm284.12,22.13a819.52,819.52,0,0,0-102-231C512,124.5,498,96,454,96c-38.62,0-70,29.38-70,65.75v27.72a48,48,0,0,1,60.46,74L435.88,272H448a48,48,0,0,1,0,96H435.88l8.58,8.58a47.7,47.7,0,0,1-41.71,81.18,98.51,98.51,0,0,0,52.5,34.75l59.5,15.87C577.5,525.26,640,481,640,419.75A113.16,113.16,0,0,0,636.12,390.13Z\"},\"child\":[]}]})(props);\n};\nexport function FaLungs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M636.11 390.15C614.44 308.85 580.07 231 534.1 159.13 511.98 124.56 498.03 96 454.05 96 415.36 96 384 125.42 384 161.71v60.11l-32.88-21.92a15.996 15.996 0 0 1-7.12-13.31V16c0-8.84-7.16-16-16-16h-16c-8.84 0-16 7.16-16 16v170.59c0 5.35-2.67 10.34-7.12 13.31L256 221.82v-60.11C256 125.42 224.64 96 185.95 96c-43.98 0-57.93 28.56-80.05 63.13C59.93 231 25.56 308.85 3.89 390.15 1.3 399.84 0 409.79 0 419.78c0 61.23 62.48 105.44 125.24 88.62l59.5-15.95c42.18-11.3 71.26-47.47 71.26-88.62v-87.49l-85.84 57.23a7.992 7.992 0 0 1-11.09-2.22l-8.88-13.31a7.992 7.992 0 0 1 2.22-11.09L320 235.23l167.59 111.72a7.994 7.994 0 0 1 2.22 11.09l-8.88 13.31a7.994 7.994 0 0 1-11.09 2.22L384 316.34v87.49c0 41.15 29.08 77.31 71.26 88.62l59.5 15.95C577.52 525.22 640 481.01 640 419.78c0-9.99-1.3-19.94-3.89-29.63z\"},\"child\":[]}]})(props);\n};\nexport function FaMagic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 96l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32zM80 160l26.66-53.33L160 80l-53.34-26.67L80 0 53.34 53.33 0 80l53.34 26.67L80 160zm352 128l-26.66 53.33L352 368l53.34 26.67L432 448l26.66-53.33L512 368l-53.34-26.67L432 288zm70.62-193.77L417.77 9.38C411.53 3.12 403.34 0 395.15 0c-8.19 0-16.38 3.12-22.63 9.38L9.38 372.52c-12.5 12.5-12.5 32.76 0 45.25l84.85 84.85c6.25 6.25 14.44 9.37 22.62 9.37 8.19 0 16.38-3.12 22.63-9.37l363.14-363.15c12.5-12.48 12.5-32.75 0-45.24zM359.45 203.46l-50.91-50.91 86.6-86.6 50.91 50.91-86.6 86.6z\"},\"child\":[]}]})(props);\n};\nexport function FaMagnet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M164.07 148.1H12a12 12 0 0 1-12-12v-80a36 36 0 0 1 36-36h104a36 36 0 0 1 36 36v80a11.89 11.89 0 0 1-11.93 12zm347.93-12V56a36 36 0 0 0-36-36H372a36 36 0 0 0-36 36v80a12 12 0 0 0 12 12h152a11.89 11.89 0 0 0 12-11.9zm-164 44a12 12 0 0 0-12 12v52c0 128.1-160 127.9-160 0v-52a12 12 0 0 0-12-12H12.1a12 12 0 0 0-12 12.1c.1 21.4.6 40.3 0 53.3 0 150.6 136.17 246.6 256.75 246.6s255-96 255-246.7c-.6-12.8-.2-33 0-53.2a12 12 0 0 0-12-12.1z\"},\"child\":[]}]})(props);\n};\nexport function FaMailBulk (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 448c-25.6 0-51.2-22.4-64-32-64-44.8-83.2-60.8-96-70.4V480c0 17.67 14.33 32 32 32h256c17.67 0 32-14.33 32-32V345.6c-12.8 9.6-32 25.6-96 70.4-12.8 9.6-38.4 32-64 32zm128-192H32c-17.67 0-32 14.33-32 32v16c25.6 19.2 22.4 19.2 115.2 86.4 9.6 6.4 28.8 25.6 44.8 25.6s35.2-19.2 44.8-22.4c92.8-67.2 89.6-67.2 115.2-86.4V288c0-17.67-14.33-32-32-32zm256-96H224c-17.67 0-32 14.33-32 32v32h96c33.21 0 60.59 25.42 63.71 57.82l.29-.22V416h192c17.67 0 32-14.33 32-32V192c0-17.67-14.33-32-32-32zm-32 128h-64v-64h64v64zm-352-96c0-35.29 28.71-64 64-64h224V32c0-17.67-14.33-32-32-32H96C78.33 0 64 14.33 64 32v192h96v-32z\"},\"child\":[]}]})(props);\n};\nexport function FaMale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 192 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 0c35.346 0 64 28.654 64 64s-28.654 64-64 64-64-28.654-64-64S60.654 0 96 0m48 144h-11.36c-22.711 10.443-49.59 10.894-73.28 0H48c-26.51 0-48 21.49-48 48v136c0 13.255 10.745 24 24 24h16v136c0 13.255 10.745 24 24 24h64c13.255 0 24-10.745 24-24V352h16c13.255 0 24-10.745 24-24V192c0-26.51-21.49-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaMapMarkedAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 0c-69.59 0-126 56.41-126 126 0 56.26 82.35 158.8 113.9 196.02 6.39 7.54 17.82 7.54 24.2 0C331.65 284.8 414 182.26 414 126 414 56.41 357.59 0 288 0zm0 168c-23.2 0-42-18.8-42-42s18.8-42 42-42 42 18.8 42 42-18.8 42-42 42zM20.12 215.95A32.006 32.006 0 0 0 0 245.66v250.32c0 11.32 11.43 19.06 21.94 14.86L160 448V214.92c-8.84-15.98-16.07-31.54-21.25-46.42L20.12 215.95zM288 359.67c-14.07 0-27.38-6.18-36.51-16.96-19.66-23.2-40.57-49.62-59.49-76.72v182l192 64V266c-18.92 27.09-39.82 53.52-59.49 76.72-9.13 10.77-22.44 16.95-36.51 16.95zm266.06-198.51L416 224v288l139.88-55.95A31.996 31.996 0 0 0 576 426.34V176.02c0-11.32-11.43-19.06-21.94-14.86z\"},\"child\":[]}]})(props);\n};\nexport function FaMapMarked (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 0c-69.59 0-126 56.41-126 126 0 56.26 82.35 158.8 113.9 196.02 6.39 7.54 17.82 7.54 24.2 0C331.65 284.8 414 182.26 414 126 414 56.41 357.59 0 288 0zM20.12 215.95A32.006 32.006 0 0 0 0 245.66v250.32c0 11.32 11.43 19.06 21.94 14.86L160 448V214.92c-8.84-15.98-16.07-31.54-21.25-46.42L20.12 215.95zM288 359.67c-14.07 0-27.38-6.18-36.51-16.96-19.66-23.2-40.57-49.62-59.49-76.72v182l192 64V266c-18.92 27.09-39.82 53.52-59.49 76.72-9.13 10.77-22.44 16.95-36.51 16.95zm266.06-198.51L416 224v288l139.88-55.95A31.996 31.996 0 0 0 576 426.34V176.02c0-11.32-11.43-19.06-21.94-14.86z\"},\"child\":[]}]})(props);\n};\nexport function FaMapMarkerAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaMapMarker (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0z\"},\"child\":[]}]})(props);\n};\nexport function FaMapPin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M112 316.94v156.69l22.02 33.02c4.75 7.12 15.22 7.12 19.97 0L176 473.63V316.94c-10.39 1.92-21.06 3.06-32 3.06s-21.61-1.14-32-3.06zM144 0C64.47 0 0 64.47 0 144s64.47 144 144 144 144-64.47 144-144S223.53 0 144 0zm0 76c-37.5 0-68 30.5-68 68 0 6.62-5.38 12-12 12s-12-5.38-12-12c0-50.73 41.28-92 92-92 6.62 0 12 5.38 12 12s-5.38 12-12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaMapSigns (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M507.31 84.69L464 41.37c-6-6-14.14-9.37-22.63-9.37H288V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v16H56c-13.25 0-24 10.75-24 24v80c0 13.25 10.75 24 24 24h385.37c8.49 0 16.62-3.37 22.63-9.37l43.31-43.31c6.25-6.26 6.25-16.38 0-22.63zM224 496c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V384h-64v112zm232-272H288v-32h-64v32H70.63c-8.49 0-16.62 3.37-22.63 9.37L4.69 276.69c-6.25 6.25-6.25 16.38 0 22.63L48 342.63c6 6 14.14 9.37 22.63 9.37H456c13.25 0 24-10.75 24-24v-80c0-13.25-10.75-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaMap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 117.66v346.32c0 11.32 11.43 19.06 21.94 14.86L160 416V32L20.12 87.95A32.006 32.006 0 0 0 0 117.66zM192 416l192 64V96L192 32v384zM554.06 33.16L416 96v384l139.88-55.95A31.996 31.996 0 0 0 576 394.34V48.02c0-11.32-11.43-19.06-21.94-14.86z\"},\"child\":[]}]})(props);\n};\nexport function FaMarker (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M93.95 290.03A327.038 327.038 0 0 0 .17 485.11l-.03.23c-1.7 15.28 11.21 28.2 26.49 26.51a327.02 327.02 0 0 0 195.34-93.8l75.4-75.4-128.02-128.02-75.4 75.4zM485.49 26.51c-35.35-35.35-92.67-35.35-128.02 0l-21.76 21.76-36.56-36.55c-15.62-15.62-40.95-15.62-56.56 0L138.47 115.84c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0l87.15-87.15 19.59 19.59L191.98 192 320 320.02l165.49-165.49c35.35-35.35 35.35-92.66 0-128.02z\"},\"child\":[]}]})(props);\n};\nexport function FaMarsDouble (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M340 0h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-48.7 48.7C198.5 72.1 172.2 64 144 64 64.5 64 0 128.5 0 208s64.5 144 144 144 144-64.5 144-144c0-28.2-8.1-54.5-22.1-76.7l48.7-48.7 16.9 16.9c2.4 2.4 5.5 3.5 8.4 3.5 6.2 0 12.1-4.8 12.1-12V12c0-6.6-5.4-12-12-12zM144 288c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80zm356-128.1h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-48.7 48.7c-18.2-11.4-39-18.9-61.5-21.3-2.1 21.8-8.2 43.3-18.4 63.3 1.1 0 2.2-.1 3.2-.1 44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80c0-1.1 0-2.2.1-3.2-20 10.2-41.5 16.4-63.3 18.4C168.4 455.6 229.6 512 304 512c79.5 0 144-64.5 144-144 0-28.2-8.1-54.5-22.1-76.7l48.7-48.7 16.9 16.9c2.4 2.4 5.4 3.5 8.4 3.5 6.2 0 12.1-4.8 12.1-12v-79c0-6.7-5.4-12.1-12-12.1z\"},\"child\":[]}]})(props);\n};\nexport function FaMarsStrokeH (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M476.2 247.5l-55.9-55.9c-7.6-7.6-20.5-2.2-20.5 8.5V224H376v-20c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v20h-27.6c-5.8-25.6-18.7-49.9-38.6-69.8C189.6 98 98.4 98 42.2 154.2c-56.2 56.2-56.2 147.4 0 203.6 56.2 56.2 147.4 56.2 203.6 0 19.9-19.9 32.8-44.2 38.6-69.8H312v20c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-20h23.9v23.9c0 10.7 12.9 16 20.5 8.5l55.9-55.9c4.6-4.7 4.6-12.3-.1-17zm-275.6 65.1c-31.2 31.2-81.9 31.2-113.1 0-31.2-31.2-31.2-81.9 0-113.1 31.2-31.2 81.9-31.2 113.1 0 31.2 31.1 31.2 81.9 0 113.1z\"},\"child\":[]}]})(props);\n};\nexport function FaMarsStrokeV (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M245.8 234.2c-19.9-19.9-44.2-32.8-69.8-38.6v-25.4h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20V81.4h23.9c10.7 0 16-12.9 8.5-20.5L152.5 5.1c-4.7-4.7-12.3-4.7-17 0L79.6 61c-7.6 7.6-2.2 20.5 8.5 20.5H112v24.7H92c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h20v25.4c-25.6 5.8-49.9 18.7-69.8 38.6-56.2 56.2-56.2 147.4 0 203.6 56.2 56.2 147.4 56.2 203.6 0 56.3-56.2 56.3-147.4 0-203.6zm-45.2 158.4c-31.2 31.2-81.9 31.2-113.1 0-31.2-31.2-31.2-81.9 0-113.1 31.2-31.2 81.9-31.2 113.1 0 31.2 31.1 31.2 81.9 0 113.1z\"},\"child\":[]}]})(props);\n};\nexport function FaMarsStroke (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M372 64h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-17.5 17.5-14.1-14.1c-4.7-4.7-12.3-4.7-17 0L224.5 133c-4.7 4.7-4.7 12.3 0 17l14.1 14.1-18 18c-22.2-14-48.5-22.1-76.7-22.1C64.5 160 0 224.5 0 304s64.5 144 144 144 144-64.5 144-144c0-28.2-8.1-54.5-22.1-76.7l18-18 14.1 14.1c4.7 4.7 12.3 4.7 17 0l28.3-28.3c4.7-4.7 4.7-12.3 0-17L329.2 164l17.5-17.5 16.9 16.9c7.6 7.6 20.5 2.2 20.5-8.5V76c-.1-6.6-5.5-12-12.1-12zM144 384c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaMars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M372 64h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-80.7 80.7c-22.2-14-48.5-22.1-76.7-22.1C64.5 160 0 224.5 0 304s64.5 144 144 144 144-64.5 144-144c0-28.2-8.1-54.5-22.1-76.7l80.7-80.7 16.9 16.9c7.6 7.6 20.5 2.2 20.5-8.5V76c0-6.6-5.4-12-12-12zM144 384c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaMask (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320.67 64c-442.6 0-357.57 384-158.46 384 39.9 0 77.47-20.69 101.42-55.86l25.73-37.79c15.66-22.99 46.97-22.99 62.63 0l25.73 37.79C401.66 427.31 439.23 448 479.13 448c189.86 0 290.63-384-158.46-384zM184 308.36c-41.06 0-67.76-25.66-80.08-41.05-5.23-6.53-5.23-16.09 0-22.63 12.32-15.4 39.01-41.05 80.08-41.05s67.76 25.66 80.08 41.05c5.23 6.53 5.23 16.09 0 22.63-12.32 15.4-39.02 41.05-80.08 41.05zm272 0c-41.06 0-67.76-25.66-80.08-41.05-5.23-6.53-5.23-16.09 0-22.63 12.32-15.4 39.01-41.05 80.08-41.05s67.76 25.66 80.08 41.05c5.23 6.53 5.23 16.09 0 22.63-12.32 15.4-39.02 41.05-80.08 41.05z\"},\"child\":[]}]})(props);\n};\nexport function FaMedal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M223.75 130.75L154.62 15.54A31.997 31.997 0 0 0 127.18 0H16.03C3.08 0-4.5 14.57 2.92 25.18l111.27 158.96c29.72-27.77 67.52-46.83 109.56-53.39zM495.97 0H384.82c-11.24 0-21.66 5.9-27.44 15.54l-69.13 115.21c42.04 6.56 79.84 25.62 109.56 53.38L509.08 25.18C516.5 14.57 508.92 0 495.97 0zM256 160c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm92.52 157.26l-37.93 36.96 8.97 52.22c1.6 9.36-8.26 16.51-16.65 12.09L256 393.88l-46.9 24.65c-8.4 4.45-18.25-2.74-16.65-12.09l8.97-52.22-37.93-36.96c-6.82-6.64-3.05-18.23 6.35-19.59l52.43-7.64 23.43-47.52c2.11-4.28 6.19-6.39 10.28-6.39 4.11 0 8.22 2.14 10.33 6.39l23.43 47.52 52.43 7.64c9.4 1.36 13.17 12.95 6.35 19.59z\"},\"child\":[]}]})(props);\n};\nexport function FaMedkit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 480h320V128h-32V80c0-26.51-21.49-48-48-48H176c-26.51 0-48 21.49-48 48v48H96v352zm96-384h128v32H192V96zm320 80v256c0 26.51-21.49 48-48 48h-16V128h16c26.51 0 48 21.49 48 48zM64 480H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v352zm288-208v32c0 8.837-7.163 16-16 16h-48v48c0 8.837-7.163 16-16 16h-32c-8.837 0-16-7.163-16-16v-48h-48c-8.837 0-16-7.163-16-16v-32c0-8.837 7.163-16 16-16h48v-48c0-8.837 7.163-16 16-16h32c8.837 0 16 7.163 16 16v48h48c8.837 0 16 7.163 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaMehBlank (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-80 232c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm160 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaMehRollingEyes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM88 224c0-24.3 13.7-45.2 33.6-56-.7 2.6-1.6 5.2-1.6 8 0 17.7 14.3 32 32 32s32-14.3 32-32c0-2.8-.9-5.4-1.6-8 19.9 10.8 33.6 31.7 33.6 56 0 35.3-28.7 64-64 64s-64-28.7-64-64zm224 176H184c-21.2 0-21.2-32 0-32h128c21.2 0 21.2 32 0 32zm32-112c-35.3 0-64-28.7-64-64 0-24.3 13.7-45.2 33.6-56-.7 2.6-1.6 5.2-1.6 8 0 17.7 14.3 32 32 32s32-14.3 32-32c0-2.8-.9-5.4-1.6-8 19.9 10.8 33.6 31.7 33.6 56 0 35.3-28.7 64-64 64z\"},\"child\":[]}]})(props);\n};\nexport function FaMeh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm176 192H152c-21.2 0-21.2-32 0-32h192c21.2 0 21.2 32 0 32zm-16-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaMemory (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M640 130.94V96c0-17.67-14.33-32-32-32H32C14.33 64 0 78.33 0 96v34.94c18.6 6.61 32 24.19 32 45.06s-13.4 38.45-32 45.06V320h640v-98.94c-18.6-6.61-32-24.19-32-45.06s13.4-38.45 32-45.06zM224 256h-64V128h64v128zm128 0h-64V128h64v128zm128 0h-64V128h64v128zM0 448h64v-26.67c0-8.84 7.16-16 16-16s16 7.16 16 16V448h128v-26.67c0-8.84 7.16-16 16-16s16 7.16 16 16V448h128v-26.67c0-8.84 7.16-16 16-16s16 7.16 16 16V448h128v-26.67c0-8.84 7.16-16 16-16s16 7.16 16 16V448h64v-96H0v96z\"},\"child\":[]}]})(props);\n};\nexport function FaMenorah (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144 128h-32c-8.84 0-16 7.16-16 16v144h64V144c0-8.84-7.16-16-16-16zm96 0h-32c-8.84 0-16 7.16-16 16v144h64V144c0-8.84-7.16-16-16-16zm192 0h-32c-8.84 0-16 7.16-16 16v144h64V144c0-8.84-7.16-16-16-16zm96 0h-32c-8.84 0-16 7.16-16 16v144h64V144c0-8.84-7.16-16-16-16zm80-32c17.67 0 32-14.33 32-32S608 0 608 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S512 0 512 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S416 0 416 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S320 0 320 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S224 0 224 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S128 0 128 0 96 46.33 96 64s14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S32 0 32 0 0 46.33 0 64s14.33 32 32 32zm544 192c0 17.67-14.33 32-32 32H352V144c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v176H96c-17.67 0-32-14.33-32-32V144c0-8.84-7.16-16-16-16H16c-8.84 0-16 7.16-16 16v144c0 53.02 42.98 96 96 96h192v64H112c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16H352v-64h192c53.02 0 96-42.98 96-96V144c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v144z\"},\"child\":[]}]})(props);\n};\nexport function FaMercury (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 208c0-44.2-19.9-83.7-51.2-110.1 2.5-1.8 4.9-3.8 7.2-5.8 24.7-21.2 39.8-48.8 43.2-78.8.9-7.1-4.7-13.3-11.9-13.3h-40.5C229 0 224.1 4.1 223 9.8c-2.4 12.5-9.6 24.3-20.7 33.8C187 56.8 166.3 64 144 64s-43-7.2-58.4-20.4C74.5 34.1 67.4 22.3 64.9 9.8 63.8 4.1 58.9 0 53.2 0H12.7C5.5 0-.1 6.2.8 13.3 4.2 43.4 19.2 71 44 92.2c2.3 2 4.7 3.9 7.2 5.8C19.9 124.3 0 163.8 0 208c0 68.5 47.9 125.9 112 140.4V400H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v36c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-36h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-51.6c64.1-14.5 112-71.9 112-140.4zm-224 0c0-44.1 35.9-80 80-80s80 35.9 80 80-35.9 80-80 80-80-35.9-80-80z\"},\"child\":[]}]})(props);\n};\nexport function FaMeteor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M511.328,20.8027c-11.60759,38.70264-34.30724,111.70173-61.30311,187.70077,6.99893,2.09372,13.4042,4,18.60653,5.59368a16.06158,16.06158,0,0,1,9.49854,22.906c-22.106,42.29635-82.69047,152.795-142.47819,214.40356-.99984,1.09373-1.99969,2.5-2.99954,3.49995A194.83046,194.83046,0,1,1,57.085,179.41009c.99985-1,2.40588-2,3.49947-3,61.59994-59.90549,171.97367-120.40473,214.37343-142.4982a16.058,16.058,0,0,1,22.90274,9.49988c1.59351,5.09368,3.49947,11.5936,5.5929,18.59351C379.34818,35.00565,452.43074,12.30281,491.12794.70921A16.18325,16.18325,0,0,1,511.328,20.8027ZM319.951,320.00207A127.98041,127.98041,0,1,0,191.97061,448.00046,127.97573,127.97573,0,0,0,319.951,320.00207Zm-127.98041-31.9996a31.9951,31.9951,0,1,1-31.9951-31.9996A31.959,31.959,0,0,1,191.97061,288.00247Zm31.9951,79.999a15.99755,15.99755,0,1,1-15.99755-15.9998A16.04975,16.04975,0,0,1,223.96571,368.00147Z\"},\"child\":[]}]})(props);\n};\nexport function FaMicrochip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 48v416c0 26.51-21.49 48-48 48H144c-26.51 0-48-21.49-48-48V48c0-26.51 21.49-48 48-48h224c26.51 0 48 21.49 48 48zm96 58v12a6 6 0 0 1-6 6h-18v6a6 6 0 0 1-6 6h-42V88h42a6 6 0 0 1 6 6v6h18a6 6 0 0 1 6 6zm0 96v12a6 6 0 0 1-6 6h-18v6a6 6 0 0 1-6 6h-42v-48h42a6 6 0 0 1 6 6v6h18a6 6 0 0 1 6 6zm0 96v12a6 6 0 0 1-6 6h-18v6a6 6 0 0 1-6 6h-42v-48h42a6 6 0 0 1 6 6v6h18a6 6 0 0 1 6 6zm0 96v12a6 6 0 0 1-6 6h-18v6a6 6 0 0 1-6 6h-42v-48h42a6 6 0 0 1 6 6v6h18a6 6 0 0 1 6 6zM30 376h42v48H30a6 6 0 0 1-6-6v-6H6a6 6 0 0 1-6-6v-12a6 6 0 0 1 6-6h18v-6a6 6 0 0 1 6-6zm0-96h42v48H30a6 6 0 0 1-6-6v-6H6a6 6 0 0 1-6-6v-12a6 6 0 0 1 6-6h18v-6a6 6 0 0 1 6-6zm0-96h42v48H30a6 6 0 0 1-6-6v-6H6a6 6 0 0 1-6-6v-12a6 6 0 0 1 6-6h18v-6a6 6 0 0 1 6-6zm0-96h42v48H30a6 6 0 0 1-6-6v-6H6a6 6 0 0 1-6-6v-12a6 6 0 0 1 6-6h18v-6a6 6 0 0 1 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaMicrophoneAltSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M633.82 458.1L476.26 336.33C488.74 312.21 496 284.98 496 256v-48c0-8.84-7.16-16-16-16h-16c-8.84 0-16 7.16-16 16v48c0 17.92-3.96 34.8-10.72 50.2l-26.55-20.52c3.1-9.4 5.28-19.22 5.28-29.67h-43.67l-41.4-32H416v-32h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H416v-32h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H416c0-53.02-42.98-96-96-96s-96 42.98-96 96v45.36L45.47 3.37C38.49-2.05 28.43-.8 23.01 6.18L3.37 31.45C-2.05 38.42-.8 48.47 6.18 53.9l588.36 454.73c6.98 5.43 17.03 4.17 22.46-2.81l19.64-25.27c5.41-6.97 4.16-17.02-2.82-22.45zM400 464h-56v-33.78c11.71-1.62 23.1-4.28 33.96-8.08l-50.4-38.96c-6.71.4-13.41.87-20.35.2-55.85-5.45-98.74-48.63-111.18-101.85L144 241.31v6.85c0 89.64 63.97 169.55 152 181.69V464h-56c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaMicrophoneAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 352 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 192h-16c-8.84 0-16 7.16-16 16v48c0 74.8-64.49 134.82-140.79 127.38C96.71 376.89 48 317.11 48 250.3V208c0-8.84-7.16-16-16-16H16c-8.84 0-16 7.16-16 16v40.16c0 89.64 63.97 169.55 152 181.69V464H96c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16h-56v-33.77C285.71 418.47 352 344.9 352 256v-48c0-8.84-7.16-16-16-16zM176 352c53.02 0 96-42.98 96-96h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H272v-32h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H272v-32h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H272c0-53.02-42.98-96-96-96S80 42.98 80 96v160c0 53.02 42.98 96 96 96z\"},\"child\":[]}]})(props);\n};\nexport function FaMicrophoneSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M633.82 458.1l-157.8-121.96C488.61 312.13 496 285.01 496 256v-48c0-8.84-7.16-16-16-16h-16c-8.84 0-16 7.16-16 16v48c0 17.92-3.96 34.8-10.72 50.2l-26.55-20.52c3.1-9.4 5.28-19.22 5.28-29.67V96c0-53.02-42.98-96-96-96s-96 42.98-96 96v45.36L45.47 3.37C38.49-2.05 28.43-.8 23.01 6.18L3.37 31.45C-2.05 38.42-.8 48.47 6.18 53.9l588.36 454.73c6.98 5.43 17.03 4.17 22.46-2.81l19.64-25.27c5.41-6.97 4.16-17.02-2.82-22.45zM400 464h-56v-33.77c11.66-1.6 22.85-4.54 33.67-8.31l-50.11-38.73c-6.71.4-13.41.87-20.35.2-55.85-5.45-98.74-48.63-111.18-101.85L144 241.31v6.85c0 89.64 63.97 169.55 152 181.69V464h-56c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaMicrophone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 352 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 352c53.02 0 96-42.98 96-96V96c0-53.02-42.98-96-96-96S80 42.98 80 96v160c0 53.02 42.98 96 96 96zm160-160h-16c-8.84 0-16 7.16-16 16v48c0 74.8-64.49 134.82-140.79 127.38C96.71 376.89 48 317.11 48 250.3V208c0-8.84-7.16-16-16-16H16c-8.84 0-16 7.16-16 16v40.16c0 89.64 63.97 169.55 152 181.69V464H96c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16h-56v-33.77C285.71 418.47 352 344.9 352 256v-48c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaMicroscope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 320h12v16c0 8.84 7.16 16 16 16h40c8.84 0 16-7.16 16-16v-16h12c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32V16c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v16c-17.67 0-32 14.33-32 32v224c0 17.67 14.33 32 32 32zm304 128h-1.29C493.24 413.99 512 369.2 512 320c0-105.88-86.12-192-192-192v64c70.58 0 128 57.42 128 128s-57.42 128-128 128H48c-26.51 0-48 21.49-48 48 0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16 0-26.51-21.49-48-48-48zm-360-32h208c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8z\"},\"child\":[]}]})(props);\n};\nexport function FaMinusCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zM124 296c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h264c6.6 0 12 5.4 12 12v56c0 6.6-5.4 12-12 12H124z\"},\"child\":[]}]})(props);\n};\nexport function FaMinusSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM92 296c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h264c6.6 0 12 5.4 12 12v56c0 6.6-5.4 12-12 12H92z\"},\"child\":[]}]})(props);\n};\nexport function FaMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaMitten (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 416H48c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h320c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16zm57-209.1c-27.2-22.6-67.5-19-90.1 8.2l-20.9 25-29.6-128.4c-18-77.5-95.4-125.9-172.8-108C34.2 21.6-14.2 98.9 3.7 176.4L51.6 384h309l72.5-87c22.7-27.2 19-67.5-8.1-90.1z\"},\"child\":[]}]})(props);\n};\nexport function FaMobileAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h224c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM160 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm112-108c0 6.6-5.4 12-12 12H60c-6.6 0-12-5.4-12-12V60c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v312z\"},\"child\":[]}]})(props);\n};\nexport function FaMobile (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h224c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM160 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaMoneyBillAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 288h-16v-88c0-4.42-3.58-8-8-8h-13.58c-4.74 0-9.37 1.4-13.31 4.03l-15.33 10.22a7.994 7.994 0 0 0-2.22 11.09l8.88 13.31a7.994 7.994 0 0 0 11.09 2.22l.47-.31V288h-16c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h64c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM608 64H32C14.33 64 0 78.33 0 96v320c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zM48 400v-64c35.35 0 64 28.65 64 64H48zm0-224v-64h64c0 35.35-28.65 64-64 64zm272 192c-53.02 0-96-50.15-96-112 0-61.86 42.98-112 96-112s96 50.14 96 112c0 61.87-43 112-96 112zm272 32h-64c0-35.35 28.65-64 64-64v64zm0-224c-35.35 0-64-28.65-64-64h64v64z\"},\"child\":[]}]})(props);\n};\nexport function FaMoneyBillWaveAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M621.16 54.46C582.37 38.19 543.55 32 504.75 32c-123.17-.01-246.33 62.34-369.5 62.34-30.89 0-61.76-3.92-92.65-13.72-3.47-1.1-6.95-1.62-10.35-1.62C15.04 79 0 92.32 0 110.81v317.26c0 12.63 7.23 24.6 18.84 29.46C57.63 473.81 96.45 480 135.25 480c123.17 0 246.34-62.35 369.51-62.35 30.89 0 61.76 3.92 92.65 13.72 3.47 1.1 6.95 1.62 10.35 1.62 17.21 0 32.25-13.32 32.25-31.81V83.93c-.01-12.64-7.24-24.6-18.85-29.47zM320 352c-44.19 0-80-42.99-80-96 0-53.02 35.82-96 80-96s80 42.98 80 96c0 53.03-35.83 96-80 96z\"},\"child\":[]}]})(props);\n};\nexport function FaMoneyBillWave (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M621.16 54.46C582.37 38.19 543.55 32 504.75 32c-123.17-.01-246.33 62.34-369.5 62.34-30.89 0-61.76-3.92-92.65-13.72-3.47-1.1-6.95-1.62-10.35-1.62C15.04 79 0 92.32 0 110.81v317.26c0 12.63 7.23 24.6 18.84 29.46C57.63 473.81 96.45 480 135.25 480c123.17 0 246.34-62.35 369.51-62.35 30.89 0 61.76 3.92 92.65 13.72 3.47 1.1 6.95 1.62 10.35 1.62 17.21 0 32.25-13.32 32.25-31.81V83.93c-.01-12.64-7.24-24.6-18.85-29.47zM48 132.22c20.12 5.04 41.12 7.57 62.72 8.93C104.84 170.54 79 192.69 48 192.69v-60.47zm0 285v-47.78c34.37 0 62.18 27.27 63.71 61.4-22.53-1.81-43.59-6.31-63.71-13.62zM320 352c-44.19 0-80-42.99-80-96 0-53.02 35.82-96 80-96s80 42.98 80 96c0 53.03-35.83 96-80 96zm272 27.78c-17.52-4.39-35.71-6.85-54.32-8.44 5.87-26.08 27.5-45.88 54.32-49.28v57.72zm0-236.11c-30.89-3.91-54.86-29.7-55.81-61.55 19.54 2.17 38.09 6.23 55.81 12.66v48.89z\"},\"child\":[]}]})(props);\n};\nexport function FaMoneyBill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M608 64H32C14.33 64 0 78.33 0 96v320c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zM48 400v-64c35.35 0 64 28.65 64 64H48zm0-224v-64h64c0 35.35-28.65 64-64 64zm272 176c-44.19 0-80-42.99-80-96 0-53.02 35.82-96 80-96s80 42.98 80 96c0 53.03-35.83 96-80 96zm272 48h-64c0-35.35 28.65-64 64-64v64zm0-224c-35.35 0-64-28.65-64-64h64v64z\"},\"child\":[]}]})(props);\n};\nexport function FaMoneyCheckAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M608 32H32C14.33 32 0 46.33 0 64v384c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zM176 327.88V344c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-16.29c-11.29-.58-22.27-4.52-31.37-11.35-3.9-2.93-4.1-8.77-.57-12.14l11.75-11.21c2.77-2.64 6.89-2.76 10.13-.73 3.87 2.42 8.26 3.72 12.82 3.72h28.11c6.5 0 11.8-5.92 11.8-13.19 0-5.95-3.61-11.19-8.77-12.73l-45-13.5c-18.59-5.58-31.58-23.42-31.58-43.39 0-24.52 19.05-44.44 42.67-45.07V152c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16.29c11.29.58 22.27 4.51 31.37 11.35 3.9 2.93 4.1 8.77.57 12.14l-11.75 11.21c-2.77 2.64-6.89 2.76-10.13.73-3.87-2.43-8.26-3.72-12.82-3.72h-28.11c-6.5 0-11.8 5.92-11.8 13.19 0 5.95 3.61 11.19 8.77 12.73l45 13.5c18.59 5.58 31.58 23.42 31.58 43.39 0 24.53-19.05 44.44-42.67 45.07zM416 312c0 4.42-3.58 8-8 8H296c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16zm160 0c0 4.42-3.58 8-8 8h-80c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16zm0-96c0 4.42-3.58 8-8 8H296c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h272c4.42 0 8 3.58 8 8v16z\"},\"child\":[]}]})(props);\n};\nexport function FaMoneyCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 448c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V128H0v320zm448-208c0-8.84 7.16-16 16-16h96c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16h-96c-8.84 0-16-7.16-16-16v-32zm0 120c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H456c-4.42 0-8-3.58-8-8v-16zM64 264c0-4.42 3.58-8 8-8h304c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16zm0 96c0-4.42 3.58-8 8-8h176c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16zM624 32H16C7.16 32 0 39.16 0 48v48h640V48c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaMonument (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h352c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-78.86-347.26a31.97 31.97 0 0 0-9.21-19.44L203.31 4.69c-6.25-6.25-16.38-6.25-22.63 0l-76.6 76.61a31.97 31.97 0 0 0-9.21 19.44L64 416h256l-30.86-315.26zM240 307.2c0 6.4-6.4 12.8-12.8 12.8h-70.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h70.4c6.4 0 12.8 6.4 12.8 12.8v38.4z\"},\"child\":[]}]})(props);\n};\nexport function FaMoon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M283.211 512c78.962 0 151.079-35.925 198.857-94.792 7.068-8.708-.639-21.43-11.562-19.35-124.203 23.654-238.262-71.576-238.262-196.954 0-72.222 38.662-138.635 101.498-174.394 9.686-5.512 7.25-20.197-3.756-22.23A258.156 258.156 0 0 0 283.211 0c-141.309 0-256 114.511-256 256 0 141.309 114.511 256 256 256z\"},\"child\":[]}]})(props);\n};\nexport function FaMortarPestle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M501.54 60.91c17.22-17.22 12.51-46.25-9.27-57.14a35.696 35.696 0 0 0-37.37 3.37L251.09 160h151.37l99.08-99.09zM496 192H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16c0 80.98 50.2 150.11 121.13 178.32-12.76 16.87-21.72 36.8-24.95 58.69-1.46 9.92 6.04 18.98 16.07 18.98h223.5c10.03 0 17.53-9.06 16.07-18.98-3.22-21.89-12.18-41.82-24.95-58.69C429.8 406.11 480 336.98 480 256h16c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaMosque (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V160H0v320zm579.16-192c17.86-17.39 28.84-37.34 28.84-58.91 0-52.86-41.79-93.79-87.92-122.9-41.94-26.47-80.63-57.77-111.96-96.22L400 0l-8.12 9.97c-31.33 38.45-70.01 69.76-111.96 96.22C233.79 135.3 192 176.23 192 229.09c0 21.57 10.98 41.52 28.84 58.91h358.32zM608 320H192c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h32v-64c0-17.67 14.33-32 32-32s32 14.33 32 32v64h64v-72c0-48 48-72 48-72s48 24 48 72v72h64v-64c0-17.67 14.33-32 32-32s32 14.33 32 32v64h32c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32zM64 0S0 32 0 96v32h128V96c0-64-64-96-64-96z\"},\"child\":[]}]})(props);\n};\nexport function FaMotorcycle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512.9 192c-14.9-.1-29.1 2.3-42.4 6.9L437.6 144H520c13.3 0 24-10.7 24-24V88c0-13.3-10.7-24-24-24h-45.3c-6.8 0-13.3 2.9-17.8 7.9l-37.5 41.7-22.8-38C392.2 68.4 384.4 64 376 64h-80c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h66.4l19.2 32H227.9c-17.7-23.1-44.9-40-99.9-40H72.5C59 104 47.7 115 48 128.5c.2 13 10.9 23.5 24 23.5h56c24.5 0 38.7 10.9 47.8 24.8l-11.3 20.5c-13-3.9-26.9-5.7-41.3-5.2C55.9 194.5 1.6 249.6 0 317c-1.6 72.1 56.3 131 128 131 59.6 0 109.7-40.8 124-96h84.2c13.7 0 24.6-11.4 24-25.1-2.1-47.1 17.5-93.7 56.2-125l12.5 20.8c-27.6 23.7-45.1 58.9-44.8 98.2.5 69.6 57.2 126.5 126.8 127.1 71.6.7 129.8-57.5 129.2-129.1-.7-69.6-57.6-126.4-127.2-126.9zM128 400c-44.1 0-80-35.9-80-80s35.9-80 80-80c4.2 0 8.4.3 12.5 1L99 316.4c-8.8 16 2.8 35.6 21 35.6h81.3c-12.4 28.2-40.6 48-73.3 48zm463.9-75.6c-2.2 40.6-35 73.4-75.5 75.5-46.1 2.5-84.4-34.3-84.4-79.9 0-21.4 8.4-40.8 22.1-55.1l49.4 82.4c4.5 7.6 14.4 10 22 5.5l13.7-8.2c7.6-4.5 10-14.4 5.5-22l-48.6-80.9c5.2-1.1 10.5-1.6 15.9-1.6 45.6-.1 82.3 38.2 79.9 84.3z\"},\"child\":[]}]})(props);\n};\nexport function FaMountain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M634.92 462.7l-288-448C341.03 5.54 330.89 0 320 0s-21.03 5.54-26.92 14.7l-288 448a32.001 32.001 0 0 0-1.17 32.64A32.004 32.004 0 0 0 32 512h576c11.71 0 22.48-6.39 28.09-16.67a31.983 31.983 0 0 0-1.17-32.63zM320 91.18L405.39 224H320l-64 64-38.06-38.06L320 91.18z\"},\"child\":[]}]})(props);\n};\nexport function FaMousePointer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M302.189 329.126H196.105l55.831 135.993c3.889 9.428-.555 19.999-9.444 23.999l-49.165 21.427c-9.165 4-19.443-.571-23.332-9.714l-53.053-129.136-86.664 89.138C18.729 472.71 0 463.554 0 447.977V18.299C0 1.899 19.921-6.096 30.277 5.443l284.412 292.542c11.472 11.179 3.007 31.141-12.5 31.141z\"},\"child\":[]}]})(props);\n};\nexport function FaMouse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 352a160 160 0 0 0 160 160h64a160 160 0 0 0 160-160V224H0zM176 0h-16A160 160 0 0 0 0 160v32h176zm48 0h-16v192h176v-32A160 160 0 0 0 224 0z\"},\"child\":[]}]})(props);\n};\nexport function FaMugHot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M127.1 146.5c1.3 7.7 8 13.5 16 13.5h16.5c9.8 0 17.6-8.5 16.3-18-3.8-28.2-16.4-54.2-36.6-74.7-14.4-14.7-23.6-33.3-26.4-53.5C111.8 5.9 105 0 96.8 0H80.4C70.6 0 63 8.5 64.1 18c3.9 31.9 18 61.3 40.6 84.4 12 12.2 19.7 27.5 22.4 44.1zm112 0c1.3 7.7 8 13.5 16 13.5h16.5c9.8 0 17.6-8.5 16.3-18-3.8-28.2-16.4-54.2-36.6-74.7-14.4-14.7-23.6-33.3-26.4-53.5C223.8 5.9 217 0 208.8 0h-16.4c-9.8 0-17.5 8.5-16.3 18 3.9 31.9 18 61.3 40.6 84.4 12 12.2 19.7 27.5 22.4 44.1zM400 192H32c-17.7 0-32 14.3-32 32v192c0 53 43 96 96 96h192c53 0 96-43 96-96h16c61.8 0 112-50.2 112-112s-50.2-112-112-112zm0 160h-16v-96h16c26.5 0 48 21.5 48 48s-21.5 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaMusic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M470.38 1.51L150.41 96A32 32 0 0 0 128 126.51v261.41A139 139 0 0 0 96 384c-53 0-96 28.66-96 64s43 64 96 64 96-28.66 96-64V214.32l256-75v184.61a138.4 138.4 0 0 0-32-3.93c-53 0-96 28.66-96 64s43 64 96 64 96-28.65 96-64V32a32 32 0 0 0-41.62-30.49z\"},\"child\":[]}]})(props);\n};\nexport function FaNetworkWired (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M640 264v-16c0-8.84-7.16-16-16-16H344v-40h72c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32H224c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h72v40H16c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h104v40H64c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32h-56v-40h304v40h-56c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32h-56v-40h104c8.84 0 16-7.16 16-16zM256 128V64h128v64H256zm-64 320H96v-64h96v64zm352 0h-96v-64h96v64z\"},\"child\":[]}]})(props);\n};\nexport function FaNeuter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 68.5 47.9 125.9 112 140.4V468c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V316.4c64.1-14.5 112-71.9 112-140.4zm-144 80c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaNewspaper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M552 64H88c-13.255 0-24 10.745-24 24v8H24c-13.255 0-24 10.745-24 24v272c0 30.928 25.072 56 56 56h472c26.51 0 48-21.49 48-48V88c0-13.255-10.745-24-24-24zM56 400a8 8 0 0 1-8-8V144h16v248a8 8 0 0 1-8 8zm236-16H140c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h152c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12zm208 0H348c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h152c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12zm-208-96H140c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h152c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12zm208 0H348c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h152c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12zm0-96H140c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h360c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaNotEqual (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 208c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32h-23.88l51.87-66.81c5.37-7.02 4.04-17.06-2.97-22.43L415.61 3.3c-7.02-5.38-17.06-4.04-22.44 2.97L311.09 112H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h204.56l-74.53 96H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h55.49l-51.87 66.81c-5.37 7.01-4.04 17.05 2.97 22.43L64 508.7c7.02 5.38 17.06 4.04 22.43-2.97L168.52 400H416c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32H243.05l74.53-96H416z\"},\"child\":[]}]})(props);\n};\nexport function FaNotesMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 40c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm96 304c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48zm0-192c0 4.4-3.6 8-8 8H104c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h176c4.4 0 8 3.6 8 8v16z\"},\"child\":[]}]})(props);\n};\nexport function FaObjectGroup (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 128V96h20c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v20H64V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v40c0 6.627 5.373 12 12 12h20v320H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-20h384v20c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-20V128zM96 276V140c0-6.627 5.373-12 12-12h168c6.627 0 12 5.373 12 12v136c0 6.627-5.373 12-12 12H108c-6.627 0-12-5.373-12-12zm320 96c0 6.627-5.373 12-12 12H236c-6.627 0-12-5.373-12-12v-52h72c13.255 0 24-10.745 24-24v-72h84c6.627 0 12 5.373 12 12v136z\"},\"child\":[]}]})(props);\n};\nexport function FaObjectUngroup (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 320v26a6 6 0 0 1-6 6H6a6 6 0 0 1-6-6v-52a6 6 0 0 1 6-6h26V96H6a6 6 0 0 1-6-6V38a6 6 0 0 1 6-6h52a6 6 0 0 1 6 6v26h288V38a6 6 0 0 1 6-6h52a6 6 0 0 1 6 6v52a6 6 0 0 1-6 6h-26v192h26a6 6 0 0 1 6 6v52a6 6 0 0 1-6 6h-52a6 6 0 0 1-6-6v-26H64zm480-64v-32h26a6 6 0 0 0 6-6v-52a6 6 0 0 0-6-6h-52a6 6 0 0 0-6 6v26H408v72h8c13.255 0 24 10.745 24 24v64c0 13.255-10.745 24-24 24h-64c-13.255 0-24-10.745-24-24v-8H192v72h-26a6 6 0 0 0-6 6v52a6 6 0 0 0 6 6h52a6 6 0 0 0 6-6v-26h288v26a6 6 0 0 0 6 6h52a6 6 0 0 0 6-6v-52a6 6 0 0 0-6-6h-26V256z\"},\"child\":[]}]})(props);\n};\nexport function FaOilCan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M629.8 160.31L416 224l-50.49-25.24a64.07 64.07 0 0 0-28.62-6.76H280v-48h56c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16H176c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h56v48h-56L37.72 166.86a31.9 31.9 0 0 0-5.79-.53C14.67 166.33 0 180.36 0 198.34v94.95c0 15.46 11.06 28.72 26.28 31.48L96 337.46V384c0 17.67 14.33 32 32 32h274.63c8.55 0 16.75-3.42 22.76-9.51l212.26-214.75c1.5-1.5 2.34-3.54 2.34-5.66V168c.01-5.31-5.08-9.15-10.19-7.69zM96 288.67l-48-8.73v-62.43l48 8.73v62.43zm453.33 84.66c0 23.56 19.1 42.67 42.67 42.67s42.67-19.1 42.67-42.67S592 288 592 288s-42.67 61.77-42.67 85.33z\"},\"child\":[]}]})(props);\n};\nexport function FaOm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M360.6 60.94a10.43 10.43 0 0 0 14.76 0l21.57-21.56a10.43 10.43 0 0 0 0-14.76L375.35 3.06c-4.08-4.07-10.68-4.07-14.76 0l-21.57 21.56a10.43 10.43 0 0 0 0 14.76l21.58 21.56zM412.11 192c-26.69 0-51.77 10.39-70.64 29.25l-24.25 24.25c-6.78 6.77-15.78 10.5-25.38 10.5H245c10.54-22.1 14.17-48.11 7.73-75.23-10.1-42.55-46.36-76.11-89.52-83.19-36.15-5.93-70.9 5.04-96.01 28.78-7.36 6.96-6.97 18.85 1.12 24.93l26.15 19.63c5.72 4.3 13.66 4.32 19.2-.21 8.45-6.9 19.02-10.71 30.27-10.71 26.47 0 48.01 21.53 48.01 48s-21.54 48-48.01 48h-31.9c-11.96 0-19.74 12.58-14.39 23.28l16.09 32.17c2.53 5.06 7.6 8.1 13.17 8.55h33.03c35.3 0 64.01 28.7 64.01 64s-28.71 64-64.01 64c-96.02 0-122.35-54.02-145.15-92.03-4.53-7.55-14.77-3.58-14.79 5.22C-.09 416 41.13 512 159.94 512c70.59 0 128.02-57.42 128.02-128 0-23.42-6.78-45.1-17.81-64h21.69c26.69 0 51.77-10.39 70.64-29.25l24.25-24.25c6.78-6.77 15.78-10.5 25.38-10.5 19.78 0 35.88 16.09 35.88 35.88V392c0 13.23-18.77 24-32.01 24-39.4 0-66.67-24.24-81.82-42.89-4.77-5.87-14.2-2.54-14.2 5.02V416s0 64 96.02 64c48.54 0 96.02-39.47 96.02-88V291.88c0-55.08-44.8-99.88-99.89-99.88zm42.18-124.73c-85.55 65.12-169.05 2.75-172.58.05-6.02-4.62-14.44-4.38-20.14.55-5.74 4.92-7.27 13.17-3.66 19.8 1.61 2.95 40.37 72.34 118.8 72.34 79.92 0 98.78-31.36 101.75-37.66 1.02-2.12 1.53-4.47 1.53-6.83V80c0-13.22-15.14-20.69-25.7-12.73z\"},\"child\":[]}]})(props);\n};\nexport function FaOtter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M608 32h-32l-13.25-13.25A63.97 63.97 0 0 0 517.49 0H497c-11.14 0-22.08 2.91-31.75 8.43L312 96h-56C149.96 96 64 181.96 64 288v1.61c0 32.75-16 62.14-39.56 84.89-18.19 17.58-28.1 43.68-23.19 71.8 6.76 38.8 42.9 65.7 82.28 65.7H192c17.67 0 32-14.33 32-32s-14.33-32-32-32H80c-8.83 0-16-7.17-16-16s7.17-16 16-16h224c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-64l149.49-80.5L448 416h80c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-28.22l-55.11-110.21L521.14 192H544c53.02 0 96-42.98 96-96V64c0-17.67-14.33-32-32-32zm-96 16c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16zm32 96h-34.96L407.2 198.84l-13.77-27.55L512 112h77.05c-6.62 18.58-24.22 32-45.05 32z\"},\"child\":[]}]})(props);\n};\nexport function FaOutdent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M100.69 363.29c10 10 27.31 2.93 27.31-11.31V160c0-14.32-17.33-21.31-27.31-11.31l-96 96a16 16 0 0 0 0 22.62zM432 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm3.17-128H204.83A12.82 12.82 0 0 0 192 300.83v38.34A12.82 12.82 0 0 0 204.83 352h230.34A12.82 12.82 0 0 0 448 339.17v-38.34A12.82 12.82 0 0 0 435.17 288zm0-128H204.83A12.82 12.82 0 0 0 192 172.83v38.34A12.82 12.82 0 0 0 204.83 224h230.34A12.82 12.82 0 0 0 448 211.17v-38.34A12.82 12.82 0 0 0 435.17 160zM432 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaPager (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 64H64a64 64 0 0 0-64 64v256a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V128a64 64 0 0 0-64-64zM160 368H80a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h80zm128-16a16 16 0 0 1-16 16h-80v-48h80a16 16 0 0 1 16 16zm160-128a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32v-64a32 32 0 0 1 32-32h320a32 32 0 0 1 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaPaintBrush (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M167.02 309.34c-40.12 2.58-76.53 17.86-97.19 72.3-2.35 6.21-8 9.98-14.59 9.98-11.11 0-45.46-27.67-55.25-34.35C0 439.62 37.93 512 128 512c75.86 0 128-43.77 128-120.19 0-3.11-.65-6.08-.97-9.13l-88.01-73.34zM457.89 0c-15.16 0-29.37 6.71-40.21 16.45C213.27 199.05 192 203.34 192 257.09c0 13.7 3.25 26.76 8.73 38.7l63.82 53.18c7.21 1.8 14.64 3.03 22.39 3.03 62.11 0 98.11-45.47 211.16-256.46 7.38-14.35 13.9-29.85 13.9-45.99C512 20.64 486 0 457.89 0z\"},\"child\":[]}]})(props);\n};\nexport function FaPaintRoller (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 128V32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v96c0 17.67 14.33 32 32 32h352c17.67 0 32-14.33 32-32zm32-64v128c0 17.67-14.33 32-32 32H256c-35.35 0-64 28.65-64 64v32c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32v-32h160c53.02 0 96-42.98 96-96v-64c0-35.35-28.65-64-64-64z\"},\"child\":[]}]})(props);\n};\nexport function FaPalette (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M204.3 5C104.9 24.4 24.8 104.3 5.2 203.4c-37 187 131.7 326.4 258.8 306.7 41.2-6.4 61.4-54.6 42.5-91.7-23.1-45.4 9.9-98.4 60.9-98.4h79.7c35.8 0 64.8-29.6 64.9-65.3C511.5 97.1 368.1-26.9 204.3 5zM96 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm32-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaPallet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144 256h352c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H384v128l-64-32-64 32V0H144c-8.8 0-16 7.2-16 16v224c0 8.8 7.2 16 16 16zm480 128c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v64H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16h-48v-64h48zm-336 64H128v-64h160v64zm224 0H352v-64h160v64z\"},\"child\":[]}]})(props);\n};\nexport function FaPaperPlane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M476 3.2L12.5 270.6c-18.1 10.4-15.8 35.6 2.2 43.2L121 358.4l287.3-253.2c5.5-4.9 13.3 2.6 8.6 8.3L176 407v80.5c0 23.6 28.5 32.9 42.5 15.8L282 426l124.6 52.2c14.2 6 30.4-2.9 33-18.2l72-432C515 7.8 493.3-6.8 476 3.2z\"},\"child\":[]}]})(props);\n};\nexport function FaPaperclip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M43.246 466.142c-58.43-60.289-57.341-157.511 1.386-217.581L254.392 34c44.316-45.332 116.351-45.336 160.671 0 43.89 44.894 43.943 117.329 0 162.276L232.214 383.128c-29.855 30.537-78.633 30.111-107.982-.998-28.275-29.97-27.368-77.473 1.452-106.953l143.743-146.835c6.182-6.314 16.312-6.422 22.626-.241l22.861 22.379c6.315 6.182 6.422 16.312.241 22.626L171.427 319.927c-4.932 5.045-5.236 13.428-.648 18.292 4.372 4.634 11.245 4.711 15.688.165l182.849-186.851c19.613-20.062 19.613-52.725-.011-72.798-19.189-19.627-49.957-19.637-69.154 0L90.39 293.295c-34.763 35.56-35.299 93.12-1.191 128.313 34.01 35.093 88.985 35.137 123.058.286l172.06-175.999c6.177-6.319 16.307-6.433 22.626-.256l22.877 22.364c6.319 6.177 6.434 16.307.256 22.626l-172.06 175.998c-59.576 60.938-155.943 60.216-214.77-.485z\"},\"child\":[]}]})(props);\n};\nexport function FaParachuteBox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M511.9 175c-9.1-75.6-78.4-132.4-158.3-158.7C390 55.7 416 116.9 416 192h28.1L327.5 321.5c-2.5-.6-4.8-1.5-7.5-1.5h-48V192h112C384 76.8 315.1 0 256 0S128 76.8 128 192h112v128h-48c-2.7 0-5 .9-7.5 1.5L67.9 192H96c0-75.1 26-136.3 62.4-175.7C78.5 42.7 9.2 99.5.1 175c-1.1 9.1 6.8 17 16 17h8.7l136.7 151.9c-.7 2.6-1.6 5.2-1.6 8.1v128c0 17.7 14.3 32 32 32h128c17.7 0 32-14.3 32-32V352c0-2.9-.9-5.4-1.6-8.1L487.1 192h8.7c9.3 0 17.2-7.8 16.1-17z\"},\"child\":[]}]})(props);\n};\nexport function FaParagraph (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 48v32a16 16 0 0 1-16 16h-48v368a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16V96h-32v368a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16V352h-32a160 160 0 0 1 0-320h240a16 16 0 0 1 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaParking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM240 320h-48v48c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16h96c52.9 0 96 43.1 96 96s-43.1 96-96 96zm0-128h-48v64h48c17.6 0 32-14.4 32-32s-14.4-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaPassport (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M129.62 176h39.09c1.49-27.03 6.54-51.35 14.21-70.41-27.71 13.24-48.02 39.19-53.3 70.41zm0 32c5.29 31.22 25.59 57.17 53.3 70.41-7.68-19.06-12.72-43.38-14.21-70.41h-39.09zM224 286.69c7.69-7.45 20.77-34.42 23.43-78.69h-46.87c2.67 44.26 15.75 71.24 23.44 78.69zM200.57 176h46.87c-2.66-44.26-15.74-71.24-23.43-78.69-7.7 7.45-20.78 34.43-23.44 78.69zm64.51 102.41c27.71-13.24 48.02-39.19 53.3-70.41h-39.09c-1.49 27.03-6.53 51.35-14.21 70.41zM416 0H64C28.65 0 0 28.65 0 64v384c0 35.35 28.65 64 64 64h352c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zm-80 416H112c-8.8 0-16-7.2-16-16s7.2-16 16-16h224c8.8 0 16 7.2 16 16s-7.2 16-16 16zm-112-96c-70.69 0-128-57.31-128-128S153.31 64 224 64s128 57.31 128 128-57.31 128-128 128zm41.08-214.41c7.68 19.06 12.72 43.38 14.21 70.41h39.09c-5.28-31.22-25.59-57.17-53.3-70.41z\"},\"child\":[]}]})(props);\n};\nexport function FaPastafarianism (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624.54 347.67c-32.7-12.52-57.36 4.25-75.37 16.45-17.06 11.53-23.25 14.42-31.41 11.36-8.12-3.09-10.83-9.38-15.89-29.38-3.33-13.15-7.44-29.32-17.95-42.65 2.24-2.91 4.43-5.79 6.38-8.57C500.47 304.45 513.71 312 532 312c33.95 0 50.87-25.78 62.06-42.83 10.59-16.14 15-21.17 21.94-21.17 13.25 0 24-10.75 24-24s-10.75-24-24-24c-33.95 0-50.87 25.78-62.06 42.83-10.6 16.14-15 21.17-21.94 21.17-17.31 0-37.48-61.43-97.26-101.91l17.25-34.5C485.43 125.5 512 97.98 512 64c0-35.35-28.65-64-64-64s-64 28.65-64 64c0 13.02 3.94 25.1 10.62 35.21l-18.15 36.3c-16.98-4.6-35.6-7.51-56.46-7.51s-39.49 2.91-56.46 7.51l-18.15-36.3C252.06 89.1 256 77.02 256 64c0-35.35-28.65-64-64-64s-64 28.65-64 64c0 33.98 26.56 61.5 60.02 63.6l17.25 34.5C145.68 202.44 125.15 264 108 264c-6.94 0-11.34-5.03-21.94-21.17C74.88 225.78 57.96 200 24 200c-13.25 0-24 10.75-24 24s10.75 24 24 24c6.94 0 11.34 5.03 21.94 21.17C57.13 286.22 74.05 312 108 312c18.29 0 31.53-7.55 41.7-17.11 1.95 2.79 4.14 5.66 6.38 8.57-10.51 13.33-14.62 29.5-17.95 42.65-5.06 20-7.77 26.28-15.89 29.38-8.11 3.06-14.33.17-31.41-11.36-18.03-12.2-42.72-28.92-75.37-16.45-12.39 4.72-18.59 18.58-13.87 30.97 4.72 12.41 18.61 18.61 30.97 13.88 8.16-3.09 14.34-.19 31.39 11.36 13.55 9.16 30.83 20.86 52.42 20.84 7.17 0 14.83-1.28 22.97-4.39 32.66-12.44 39.98-41.33 45.33-62.44 2.21-8.72 3.99-14.49 5.95-18.87 16.62 13.61 36.95 25.88 61.64 34.17-9.96 37-32.18 90.8-60.26 90.8-13.25 0-24 10.75-24 24s10.75 24 24 24c66.74 0 97.05-88.63 107.42-129.14 6.69.6 13.42 1.14 20.58 1.14s13.89-.54 20.58-1.14C350.95 423.37 381.26 512 448 512c13.25 0 24-10.75 24-24s-10.75-24-24-24c-27.94 0-50.21-53.81-60.22-90.81 24.69-8.29 45-20.56 61.62-34.16 1.96 4.38 3.74 10.15 5.95 18.87 5.34 21.11 12.67 50 45.33 62.44 8.14 3.11 15.8 4.39 22.97 4.39 21.59 0 38.87-11.69 52.42-20.84 17.05-11.55 23.28-14.45 31.39-11.36 12.39 4.75 26.27-1.47 30.97-13.88 4.71-12.4-1.49-26.26-13.89-30.98zM448 48c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16zm-256 0c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaPaste (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 184c0-30.879 25.122-56 56-56h136V56c0-13.255-10.745-24-24-24h-80.61C204.306 12.89 183.637 0 160 0s-44.306 12.89-55.39 32H24C10.745 32 0 42.745 0 56v336c0 13.255 10.745 24 24 24h104V184zm32-144c13.255 0 24 10.745 24 24s-10.745 24-24 24-24-10.745-24-24 10.745-24 24-24zm184 248h104v200c0 13.255-10.745 24-24 24H184c-13.255 0-24-10.745-24-24V184c0-13.255 10.745-24 24-24h136v104c0 13.2 10.8 24 24 24zm104-38.059V256h-96v-96h6.059a24 24 0 0 1 16.97 7.029l65.941 65.941a24.002 24.002 0 0 1 7.03 16.971z\"},\"child\":[]}]})(props);\n};\nexport function FaPauseCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-16 328c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v160zm112 0c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v160z\"},\"child\":[]}]})(props);\n};\nexport function FaPause (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144 479H48c-26.5 0-48-21.5-48-48V79c0-26.5 21.5-48 48-48h96c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48zm304-48V79c0-26.5-21.5-48-48-48h-96c-26.5 0-48 21.5-48 48v352c0 26.5 21.5 48 48 48h96c26.5 0 48-21.5 48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaPaw (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 224c-79.41 0-192 122.76-192 200.25 0 34.9 26.81 55.75 71.74 55.75 48.84 0 81.09-25.08 120.26-25.08 39.51 0 71.85 25.08 120.26 25.08 44.93 0 71.74-20.85 71.74-55.75C448 346.76 335.41 224 256 224zm-147.28-12.61c-10.4-34.65-42.44-57.09-71.56-50.13-29.12 6.96-44.29 40.69-33.89 75.34 10.4 34.65 42.44 57.09 71.56 50.13 29.12-6.96 44.29-40.69 33.89-75.34zm84.72-20.78c30.94-8.14 46.42-49.94 34.58-93.36s-46.52-72.01-77.46-63.87-46.42 49.94-34.58 93.36c11.84 43.42 46.53 72.02 77.46 63.87zm281.39-29.34c-29.12-6.96-61.15 15.48-71.56 50.13-10.4 34.65 4.77 68.38 33.89 75.34 29.12 6.96 61.15-15.48 71.56-50.13 10.4-34.65-4.77-68.38-33.89-75.34zm-156.27 29.34c30.94 8.14 65.62-20.45 77.46-63.87 11.84-43.42-3.64-85.21-34.58-93.36s-65.62 20.45-77.46 63.87c-11.84 43.42 3.64 85.22 34.58 93.36z\"},\"child\":[]}]})(props);\n};\nexport function FaPeace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm184 248c0 31.93-8.2 61.97-22.57 88.17L280 240.63V74.97c86.23 15.21 152 90.5 152 181.03zM216 437.03c-33.86-5.97-64.49-21.2-89.29-43.02L216 322.57v114.46zm64-114.46L369.29 394c-24.8 21.82-55.43 37.05-89.29 43.02V322.57zm-64-247.6v165.66L86.57 344.17C72.2 317.97 64 287.93 64 256c0-90.53 65.77-165.82 152-181.03z\"},\"child\":[]}]})(props);\n};\nexport function FaPenAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M497.94 74.17l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.75 18.75-49.15 0-67.91zm-246.8-20.53c-15.62-15.62-40.94-15.62-56.56 0L75.8 172.43c-6.25 6.25-6.25 16.38 0 22.62l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l101.82-101.82 22.63 22.62L93.95 290.03A327.038 327.038 0 0 0 .17 485.11l-.03.23c-1.7 15.28 11.21 28.2 26.49 26.51a327.02 327.02 0 0 0 195.34-93.8l196.79-196.79-82.77-82.77-84.85-84.85z\"},\"child\":[]}]})(props);\n};\nexport function FaPenFancy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M79.18 282.94a32.005 32.005 0 0 0-20.24 20.24L0 480l4.69 4.69 92.89-92.89c-.66-2.56-1.57-5.03-1.57-7.8 0-17.67 14.33-32 32-32s32 14.33 32 32-14.33 32-32 32c-2.77 0-5.24-.91-7.8-1.57l-92.89 92.89L32 512l176.82-58.94a31.983 31.983 0 0 0 20.24-20.24l33.07-84.07-98.88-98.88-84.07 33.07zM369.25 28.32L186.14 227.81l97.85 97.85 199.49-183.11C568.4 67.48 443.73-55.94 369.25 28.32z\"},\"child\":[]}]})(props);\n};\nexport function FaPenNib (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M136.6 138.79a64.003 64.003 0 0 0-43.31 41.35L0 460l14.69 14.69L164.8 324.58c-2.99-6.26-4.8-13.18-4.8-20.58 0-26.51 21.49-48 48-48s48 21.49 48 48-21.49 48-48 48c-7.4 0-14.32-1.81-20.58-4.8L37.31 497.31 52 512l279.86-93.29a64.003 64.003 0 0 0 41.35-43.31L416 224 288 96l-151.4 42.79zm361.34-64.62l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.75 18.75-49.15 0-67.91z\"},\"child\":[]}]})(props);\n};\nexport function FaPenSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 480H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48zM238.1 177.9L102.4 313.6l-6.3 57.1c-.8 7.6 5.6 14.1 13.3 13.3l57.1-6.3L302.2 242c2.3-2.3 2.3-6.1 0-8.5L246.7 178c-2.5-2.4-6.3-2.4-8.6-.1zM345 165.1L314.9 135c-9.4-9.4-24.6-9.4-33.9 0l-23.1 23.1c-2.3 2.3-2.3 6.1 0 8.5l55.5 55.5c2.3 2.3 6.1 2.3 8.5 0L345 199c9.3-9.3 9.3-24.5 0-33.9z\"},\"child\":[]}]})(props);\n};\nexport function FaPen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M290.74 93.24l128.02 128.02-277.99 277.99-114.14 12.6C11.35 513.54-1.56 500.62.14 485.34l12.7-114.22 277.9-277.88zm207.2-19.06l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.76 18.75-49.16 0-67.91z\"},\"child\":[]}]})(props);\n};\nexport function FaPencilAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0zM124.1 339.9c-5.5-5.5-5.5-14.3 0-19.8l154-154c5.5-5.5 14.3-5.5 19.8 0s5.5 14.3 0 19.8l-154 154c-5.5 5.5-14.3 5.5-19.8 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z\"},\"child\":[]}]})(props);\n};\nexport function FaPencilRuler (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M109.46 244.04l134.58-134.56-44.12-44.12-61.68 61.68a7.919 7.919 0 0 1-11.21 0l-11.21-11.21c-3.1-3.1-3.1-8.12 0-11.21l61.68-61.68-33.64-33.65C131.47-3.1 111.39-3.1 99 9.29L9.29 99c-12.38 12.39-12.39 32.47 0 44.86l100.17 100.18zm388.47-116.8c18.76-18.76 18.75-49.17 0-67.93l-45.25-45.25c-18.76-18.76-49.18-18.76-67.95 0l-46.02 46.01 113.2 113.2 46.02-46.03zM316.08 82.71l-297 296.96L.32 487.11c-2.53 14.49 10.09 27.11 24.59 24.56l107.45-18.84L429.28 195.9 316.08 82.71zm186.63 285.43l-33.64-33.64-61.68 61.68c-3.1 3.1-8.12 3.1-11.21 0l-11.21-11.21c-3.09-3.1-3.09-8.12 0-11.21l61.68-61.68-44.14-44.14L267.93 402.5l100.21 100.2c12.39 12.39 32.47 12.39 44.86 0l89.71-89.7c12.39-12.39 12.39-32.47 0-44.86z\"},\"child\":[]}]})(props);\n};\nexport function FaPeopleArrows (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96,128A64,64,0,1,0,32,64,64,64,0,0,0,96,128Zm0,176.08a44.11,44.11,0,0,1,13.64-32L181.77,204c1.65-1.55,3.77-2.31,5.61-3.57A63.91,63.91,0,0,0,128,160H64A64,64,0,0,0,0,224v96a32,32,0,0,0,32,32V480a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V383.61l-50.36-47.53A44.08,44.08,0,0,1,96,304.08ZM480,128a64,64,0,1,0-64-64A64,64,0,0,0,480,128Zm32,32H448a63.91,63.91,0,0,0-59.38,40.42c1.84,1.27,4,2,5.62,3.59l72.12,68.06a44.37,44.37,0,0,1,0,64L416,383.62V480a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V352a32,32,0,0,0,32-32V224A64,64,0,0,0,512,160ZM444.4,295.34l-72.12-68.06A12,12,0,0,0,352,236v36H224V236a12,12,0,0,0-20.28-8.73L131.6,295.34a12.4,12.4,0,0,0,0,17.47l72.12,68.07A12,12,0,0,0,224,372.14V336H352v36.14a12,12,0,0,0,20.28,8.74l72.12-68.07A12.4,12.4,0,0,0,444.4,295.34Z\"},\"child\":[]}]})(props);\n};\nexport function FaPeopleCarry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 96c26.5 0 48-21.5 48-48S154.5 0 128 0 80 21.5 80 48s21.5 48 48 48zm384 0c26.5 0 48-21.5 48-48S538.5 0 512 0s-48 21.5-48 48 21.5 48 48 48zm125.7 372.1l-44-110-41.1 46.4-2 18.2 27.7 69.2c5 12.5 17 20.1 29.7 20.1 4 0 8-.7 11.9-2.3 16.4-6.6 24.4-25.2 17.8-41.6zm-34.2-209.8L585 178.1c-4.6-20-18.6-36.8-37.5-44.9-18.5-8-39-6.7-56.1 3.3-22.7 13.4-39.7 34.5-48.1 59.4L432 229.8 416 240v-96c0-8.8-7.2-16-16-16H240c-8.8 0-16 7.2-16 16v96l-16.1-10.2-11.3-33.9c-8.3-25-25.4-46-48.1-59.4-17.2-10-37.6-11.3-56.1-3.3-18.9 8.1-32.9 24.9-37.5 44.9l-18.4 80.2c-4.6 20 .7 41.2 14.4 56.7l67.2 75.9 10.1 92.6C130 499.8 143.8 512 160 512c1.2 0 2.3-.1 3.5-.2 17.6-1.9 30.2-17.7 28.3-35.3l-10.1-92.8c-1.5-13-6.9-25.1-15.6-35l-43.3-49 17.6-70.3 6.8 20.4c4.1 12.5 11.9 23.4 24.5 32.6l51.1 32.5c4.6 2.9 12.1 4.6 17.2 5h160c5.1-.4 12.6-2.1 17.2-5l51.1-32.5c12.6-9.2 20.4-20 24.5-32.6l6.8-20.4 17.6 70.3-43.3 49c-8.7 9.9-14.1 22-15.6 35l-10.1 92.8c-1.9 17.6 10.8 33.4 28.3 35.3 1.2.1 2.3.2 3.5.2 16.1 0 30-12.1 31.8-28.5l10.1-92.6 67.2-75.9c13.6-15.5 19-36.7 14.4-56.7zM46.3 358.1l-44 110c-6.6 16.4 1.4 35 17.8 41.6 16.8 6.6 35.1-1.7 41.6-17.8l27.7-69.2-2-18.2-41.1-46.4z\"},\"child\":[]}]})(props);\n};\nexport function FaPepperHot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M330.67 263.12V173.4l-52.75-24.22C219.44 218.76 197.58 400 56 400a56 56 0 0 0 0 112c212.64 0 370.65-122.87 419.18-210.34l-37.05-38.54zm131.09-128.37C493.92 74.91 477.18 26.48 458.62 3a8 8 0 0 0-11.93-.59l-22.9 23a8.06 8.06 0 0 0-.89 10.23c6.86 10.36 17.05 35.1-1.4 72.32A142.85 142.85 0 0 0 364.34 96c-28 0-54 8.54-76.34 22.59l74.67 34.29v78.24h89.09L506.44 288c3.26-12.62 5.56-25.63 5.56-39.31a154 154 0 0 0-50.24-113.94z\"},\"child\":[]}]})(props);\n};\nexport function FaPercent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M112 224c61.9 0 112-50.1 112-112S173.9 0 112 0 0 50.1 0 112s50.1 112 112 112zm0-160c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm224 224c-61.9 0-112 50.1-112 112s50.1 112 112 112 112-50.1 112-112-50.1-112-112-112zm0 160c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zM392.3.2l31.6-.1c19.4-.1 30.9 21.8 19.7 37.8L77.4 501.6a23.95 23.95 0 0 1-19.6 10.2l-33.4.1c-19.5 0-30.9-21.9-19.7-37.8l368-463.7C377.2 4 384.5.2 392.3.2z\"},\"child\":[]}]})(props);\n};\nexport function FaPercentage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M109.25 173.25c24.99-24.99 24.99-65.52 0-90.51-24.99-24.99-65.52-24.99-90.51 0-24.99 24.99-24.99 65.52 0 90.51 25 25 65.52 25 90.51 0zm256 165.49c-24.99-24.99-65.52-24.99-90.51 0-24.99 24.99-24.99 65.52 0 90.51 24.99 24.99 65.52 24.99 90.51 0 25-24.99 25-65.51 0-90.51zm-1.94-231.43l-22.62-22.62c-12.5-12.5-32.76-12.5-45.25 0L20.69 359.44c-12.5 12.5-12.5 32.76 0 45.25l22.62 22.62c12.5 12.5 32.76 12.5 45.25 0l274.75-274.75c12.5-12.49 12.5-32.75 0-45.25z\"},\"child\":[]}]})(props);\n};\nexport function FaPersonBooth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320h-64v176zm32-272h-50.9l-45.2-45.3C115.8 166.6 99.7 160 82.7 160H64c-17.1 0-33.2 6.7-45.3 18.8C6.7 190.9 0 207 0 224.1L.2 320 0 480c0 17.7 14.3 32 31.9 32 17.6 0 32-14.3 32-32l.1-100.7c.9.5 1.6 1.3 2.5 1.7l29.1 43v56c0 17.7 14.3 32 32 32s32-14.3 32-32v-56.5c0-9.9-2.3-19.8-6.7-28.6l-41.2-61.3V253l20.9 20.9c9.1 9.1 21.1 14.1 33.9 14.1H224c17.7 0 32-14.3 32-32s-14.3-32-32-32zM64 128c26.5 0 48-21.5 48-48S90.5 32 64 32 16 53.5 16 80s21.5 48 48 48zm224-96l31.5 223.1-30.9 154.6c-4.3 21.6 13 38.3 31.4 38.3 15.2 0 28-9.1 32.3-30.4.9 16.9 14.6 30.4 31.7 30.4 17.7 0 32-14.3 32-32 0 17.7 14.3 32 32 32s32-14.3 32-32V0H288v32zm-96 0v160h64V0h-32c-17.7 0-32 14.3-32 32zM544 0h-32v496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V32c0-17.7-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaPhoneAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M497.39 361.8l-112-48a24 24 0 0 0-28 6.9l-49.6 60.6A370.66 370.66 0 0 1 130.6 204.11l60.6-49.6a23.94 23.94 0 0 0 6.9-28l-48-112A24.16 24.16 0 0 0 122.6.61l-104 24A24 24 0 0 0 0 48c0 256.5 207.9 464 464 464a24 24 0 0 0 23.4-18.6l24-104a24.29 24.29 0 0 0-14.01-27.6z\"},\"child\":[]}]})(props);\n};\nexport function FaPhoneSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M268.2 381.4l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48c-10.7 4.6-16.5 16.1-13.9 27.5l24 104c2.5 10.8 12.1 18.6 23.4 18.6 100.7 0 193.7-32.4 269.7-86.9l-80-61.8c-10.9 6.5-22.1 12.7-33.6 18.1zm365.6 76.7L475.1 335.5C537.9 256.4 576 156.9 576 48c0-11.2-7.7-20.9-18.6-23.4l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-12.2 26.1-27.9 50.3-46 72.8L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4l588.4 454.7c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.4-6.8 4.1-16.9-2.9-22.3z\"},\"child\":[]}]})(props);\n};\nexport function FaPhoneSquareAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h352a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48zm-16.39 307.37l-15 65A15 15 0 0 1 354 416C194 416 64 286.29 64 126a15.7 15.7 0 0 1 11.63-14.61l65-15A18.23 18.23 0 0 1 144 96a16.27 16.27 0 0 1 13.79 9.09l30 70A17.9 17.9 0 0 1 189 181a17 17 0 0 1-5.5 11.61l-37.89 31a231.91 231.91 0 0 0 110.78 110.78l31-37.89A17 17 0 0 1 299 291a17.85 17.85 0 0 1 5.91 1.21l70 30A16.25 16.25 0 0 1 384 336a17.41 17.41 0 0 1-.39 3.37z\"},\"child\":[]}]})(props);\n};\nexport function FaPhoneSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM94 416c-7.033 0-13.057-4.873-14.616-11.627l-14.998-65a15 15 0 0 1 8.707-17.16l69.998-29.999a15 15 0 0 1 17.518 4.289l30.997 37.885c48.944-22.963 88.297-62.858 110.781-110.78l-37.886-30.997a15.001 15.001 0 0 1-4.289-17.518l30-69.998a15 15 0 0 1 17.16-8.707l65 14.998A14.997 14.997 0 0 1 384 126c0 160.292-129.945 290-290 290z\"},\"child\":[]}]})(props);\n};\nexport function FaPhoneVolume (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M97.333 506.966c-129.874-129.874-129.681-340.252 0-469.933 5.698-5.698 14.527-6.632 21.263-2.422l64.817 40.513a17.187 17.187 0 0 1 6.849 20.958l-32.408 81.021a17.188 17.188 0 0 1-17.669 10.719l-55.81-5.58c-21.051 58.261-20.612 122.471 0 179.515l55.811-5.581a17.188 17.188 0 0 1 17.669 10.719l32.408 81.022a17.188 17.188 0 0 1-6.849 20.958l-64.817 40.513a17.19 17.19 0 0 1-21.264-2.422zM247.126 95.473c11.832 20.047 11.832 45.008 0 65.055-3.95 6.693-13.108 7.959-18.718 2.581l-5.975-5.726c-3.911-3.748-4.793-9.622-2.261-14.41a32.063 32.063 0 0 0 0-29.945c-2.533-4.788-1.65-10.662 2.261-14.41l5.975-5.726c5.61-5.378 14.768-4.112 18.718 2.581zm91.787-91.187c60.14 71.604 60.092 175.882 0 247.428-4.474 5.327-12.53 5.746-17.552.933l-5.798-5.557c-4.56-4.371-4.977-11.529-.93-16.379 49.687-59.538 49.646-145.933 0-205.422-4.047-4.85-3.631-12.008.93-16.379l5.798-5.557c5.022-4.813 13.078-4.394 17.552.933zm-45.972 44.941c36.05 46.322 36.108 111.149 0 157.546-4.39 5.641-12.697 6.251-17.856 1.304l-5.818-5.579c-4.4-4.219-4.998-11.095-1.285-15.931 26.536-34.564 26.534-82.572 0-117.134-3.713-4.836-3.115-11.711 1.285-15.931l5.818-5.579c5.159-4.947 13.466-4.337 17.856 1.304z\"},\"child\":[]}]})(props);\n};\nexport function FaPhone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M493.4 24.6l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-36 76.7-98.9 140.5-177.2 177.2l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48C3.9 366.5-2 378.1.6 389.4l24 104C27.1 504.2 36.7 512 48 512c256.1 0 464-207.5 464-464 0-11.2-7.7-20.9-18.6-23.4z\"},\"child\":[]}]})(props);\n};\nexport function FaPhotoVideo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M608 0H160a32 32 0 0 0-32 32v96h160V64h192v320h128a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zM232 103a9 9 0 0 1-9 9h-30a9 9 0 0 1-9-9V73a9 9 0 0 1 9-9h30a9 9 0 0 1 9 9zm352 208a9 9 0 0 1-9 9h-30a9 9 0 0 1-9-9v-30a9 9 0 0 1 9-9h30a9 9 0 0 1 9 9zm0-104a9 9 0 0 1-9 9h-30a9 9 0 0 1-9-9v-30a9 9 0 0 1 9-9h30a9 9 0 0 1 9 9zm0-104a9 9 0 0 1-9 9h-30a9 9 0 0 1-9-9V73a9 9 0 0 1 9-9h30a9 9 0 0 1 9 9zm-168 57H32a32 32 0 0 0-32 32v288a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32zM96 224a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm288 224H64v-32l64-64 32 32 128-128 96 96z\"},\"child\":[]}]})(props);\n};\nexport function FaPiggyBank (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M560 224h-29.5c-8.8-20-21.6-37.7-37.4-52.5L512 96h-32c-29.4 0-55.4 13.5-73 34.3-7.6-1.1-15.1-2.3-23-2.3H256c-77.4 0-141.9 55-156.8 128H56c-14.8 0-26.5-13.5-23.5-28.8C34.7 215.8 45.4 208 57 208h1c3.3 0 6-2.7 6-6v-20c0-3.3-2.7-6-6-6-28.5 0-53.9 20.4-57.5 48.6C-3.9 258.8 22.7 288 56 288h40c0 52.2 25.4 98.1 64 127.3V496c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-48h128v48c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-80.7c11.8-8.9 22.3-19.4 31.3-31.3H560c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16zm-128 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zM256 96h128c5.4 0 10.7.4 15.9.8 0-.3.1-.5.1-.8 0-53-43-96-96-96s-96 43-96 96c0 2.1.5 4.1.6 6.2 15.2-3.9 31-6.2 47.4-6.2z\"},\"child\":[]}]})(props);\n};\nexport function FaPills (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M112 32C50.1 32 0 82.1 0 144v224c0 61.9 50.1 112 112 112s112-50.1 112-112V144c0-61.9-50.1-112-112-112zm48 224H64V144c0-26.5 21.5-48 48-48s48 21.5 48 48v112zm139.7-29.7c-3.5-3.5-9.4-3.1-12.3.8-45.3 62.5-40.4 150.1 15.9 206.4 56.3 56.3 143.9 61.2 206.4 15.9 4-2.9 4.3-8.8.8-12.3L299.7 226.3zm229.8-19c-56.3-56.3-143.9-61.2-206.4-15.9-4 2.9-4.3 8.8-.8 12.3l210.8 210.8c3.5 3.5 9.4 3.1 12.3-.8 45.3-62.6 40.5-150.1-15.9-206.4z\"},\"child\":[]}]})(props);\n};\nexport function FaPizzaSlice (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M158.87.15c-16.16-1.52-31.2 8.42-35.33 24.12l-14.81 56.27c187.62 5.49 314.54 130.61 322.48 317l56.94-15.78c15.72-4.36 25.49-19.68 23.62-35.9C490.89 165.08 340.78 17.32 158.87.15zm-58.47 112L.55 491.64a16.21 16.21 0 0 0 20 19.75l379-105.1c-4.27-174.89-123.08-292.14-299.15-294.1zM128 416a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm48-152a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm104 104a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaPlaceOfWorship (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M620.61 366.55L512 320v192h112c8.84 0 16-7.16 16-16V395.96a32 32 0 0 0-19.39-29.41zM0 395.96V496c0 8.84 7.16 16 16 16h112V320L19.39 366.55A32 32 0 0 0 0 395.96zm464.46-149.28L416 217.6V102.63c0-8.49-3.37-16.62-9.38-22.63L331.31 4.69c-6.25-6.25-16.38-6.25-22.62 0L233.38 80c-6 6-9.38 14.14-9.38 22.63V217.6l-48.46 29.08A31.997 31.997 0 0 0 160 274.12V512h96v-96c0-35.35 28.66-64 64-64s64 28.65 64 64v96h96V274.12c0-11.24-5.9-21.66-15.54-27.44z\"},\"child\":[]}]})(props);\n};\nexport function FaPlaneArrival (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM44.81 205.66l88.74 80a62.607 62.607 0 0 0 25.47 13.93l287.6 78.35c26.48 7.21 54.56 8.72 81 1.36 29.67-8.27 43.44-21.21 47.25-35.71 3.83-14.5-1.73-32.71-23.37-54.96-19.28-19.82-44.35-32.79-70.83-40l-97.51-26.56L282.8 30.22c-1.51-5.81-5.95-10.35-11.66-11.91L206.05.58c-10.56-2.88-20.9 5.32-20.71 16.44l47.92 164.21-102.2-27.84-27.59-67.88c-1.93-4.89-6.01-8.57-11.02-9.93L52.72 64.75c-10.34-2.82-20.53 5-20.72 15.88l.23 101.78c.19 8.91 6.03 17.34 12.58 23.25z\"},\"child\":[]}]})(props);\n};\nexport function FaPlaneDeparture (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM80.55 341.27c6.28 6.84 15.1 10.72 24.33 10.71l130.54-.18a65.62 65.62 0 0 0 29.64-7.12l290.96-147.65c26.74-13.57 50.71-32.94 67.02-58.31 18.31-28.48 20.3-49.09 13.07-63.65-7.21-14.57-24.74-25.27-58.25-27.45-29.85-1.94-59.54 5.92-86.28 19.48l-98.51 49.99-218.7-82.06a17.799 17.799 0 0 0-18-1.11L90.62 67.29c-10.67 5.41-13.25 19.65-5.17 28.53l156.22 98.1-103.21 52.38-72.35-36.47a17.804 17.804 0 0 0-16.07.02L9.91 230.22c-10.44 5.3-13.19 19.12-5.57 28.08l76.21 82.97z\"},\"child\":[]}]})(props);\n};\nexport function FaPlaneSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32.48,147.88,64,256,32.48,364.13A16,16,0,0,0,48,384H88a16,16,0,0,0,12.8-6.41L144,320H246.85l-49,171.59A16,16,0,0,0,213.2,512h65.5a16,16,0,0,0,13.89-8.06l66.6-116.54L34.35,136.34A15.47,15.47,0,0,0,32.48,147.88ZM633.82,458.09,455.14,320H512c35.34,0,96-28.66,96-64s-60.66-64-96-64H397.7L292.61,8.06C290.06,3.61,283.84,0,278.71,0H213.2a16,16,0,0,0-15.38,20.39l36.94,129.29L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.45A16,16,0,0,0,6.18,53.91L594.54,508.63A16,16,0,0,0,617,505.81l19.64-25.26A16,16,0,0,0,633.82,458.09Z\"},\"child\":[]}]})(props);\n};\nexport function FaPlane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 192H365.71L260.61 8.06A16.014 16.014 0 0 0 246.71 0h-65.5c-10.63 0-18.3 10.17-15.38 20.39L214.86 192H112l-43.2-57.6c-3.02-4.03-7.77-6.4-12.8-6.4H16.01C5.6 128-2.04 137.78.49 147.88L32 256 .49 364.12C-2.04 374.22 5.6 384 16.01 384H56c5.04 0 9.78-2.37 12.8-6.4L112 320h102.86l-49.03 171.6c-2.92 10.22 4.75 20.4 15.38 20.4h65.5c5.74 0 11.04-3.08 13.89-8.06L365.71 320H480c35.35 0 96-28.65 96-64s-60.65-64-96-64z\"},\"child\":[]}]})(props);\n};\nexport function FaPlayCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm115.7 272l-176 101c-15.8 8.8-35.7-2.5-35.7-21V152c0-18.4 19.8-29.8 35.7-21l176 107c16.4 9.2 16.4 32.9 0 42z\"},\"child\":[]}]})(props);\n};\nexport function FaPlay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M424.4 214.7L72.4 6.6C43.8-10.3 0 6.1 0 47.9V464c0 37.5 40.7 60.1 72.4 41.3l352-208c31.4-18.5 31.5-64.1 0-82.6z\"},\"child\":[]}]})(props);\n};\nexport function FaPlug (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320,32a32,32,0,0,0-64,0v96h64Zm48,128H16A16,16,0,0,0,0,176v32a16,16,0,0,0,16,16H32v32A160.07,160.07,0,0,0,160,412.8V512h64V412.8A160.07,160.07,0,0,0,352,256V224h16a16,16,0,0,0,16-16V176A16,16,0,0,0,368,160ZM128,32a32,32,0,0,0-64,0v96h64Z\"},\"child\":[]}]})(props);\n};\nexport function FaPlusCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm144 276c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92h-92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z\"},\"child\":[]}]})(props);\n};\nexport function FaPlusSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-32 252c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92H92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z\"},\"child\":[]}]})(props);\n};\nexport function FaPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaPodcast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M267.429 488.563C262.286 507.573 242.858 512 224 512c-18.857 0-38.286-4.427-43.428-23.437C172.927 460.134 160 388.898 160 355.75c0-35.156 31.142-43.75 64-43.75s64 8.594 64 43.75c0 32.949-12.871 104.179-20.571 132.813zM156.867 288.554c-18.693-18.308-29.958-44.173-28.784-72.599 2.054-49.724 42.395-89.956 92.124-91.881C274.862 121.958 320 165.807 320 220c0 26.827-11.064 51.116-28.866 68.552-2.675 2.62-2.401 6.986.628 9.187 9.312 6.765 16.46 15.343 21.234 25.363 1.741 3.654 6.497 4.66 9.449 1.891 28.826-27.043 46.553-65.783 45.511-108.565-1.855-76.206-63.595-138.208-139.793-140.369C146.869 73.753 80 139.215 80 220c0 41.361 17.532 78.7 45.55 104.989 2.953 2.771 7.711 1.77 9.453-1.887 4.774-10.021 11.923-18.598 21.235-25.363 3.029-2.2 3.304-6.566.629-9.185zM224 0C100.204 0 0 100.185 0 224c0 89.992 52.602 165.647 125.739 201.408 4.333 2.118 9.267-1.544 8.535-6.31-2.382-15.512-4.342-30.946-5.406-44.339-.146-1.836-1.149-3.486-2.678-4.512-47.4-31.806-78.564-86.016-78.187-147.347.592-96.237 79.29-174.648 175.529-174.899C320.793 47.747 400 126.797 400 224c0 61.932-32.158 116.49-80.65 147.867-.999 14.037-3.069 30.588-5.624 47.23-.732 4.767 4.203 8.429 8.535 6.31C395.227 389.727 448 314.187 448 224 448 100.205 347.815 0 224 0zm0 160c-35.346 0-64 28.654-64 64s28.654 64 64 64 64-28.654 64-64-28.654-64-64-64z\"},\"child\":[]}]})(props);\n};\nexport function FaPollH (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 432V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48zM112 192c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h128c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16H112zm0 96c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h224c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16H112zm0 96c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16h-64z\"},\"child\":[]}]})(props);\n};\nexport function FaPoll (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM160 368c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16V240c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v128zm96 0c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16V144c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v224zm96 0c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-64c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v64z\"},\"child\":[]}]})(props);\n};\nexport function FaPooStorm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M308 336h-57.7l17.3-64.9c2-7.6-3.7-15.1-11.6-15.1h-68c-6 0-11.1 4.5-11.9 10.4l-16 120c-1 7.2 4.6 13.6 11.9 13.6h59.3l-23 97.2c-1.8 7.6 4 14.8 11.7 14.8 4.2 0 8.2-2.2 10.4-6l88-152c4.6-8-1.2-18-10.4-18zm66.4-111.3c5.9-9.6 9.6-20.6 9.6-32.7 0-35.3-28.7-64-64-64h-5.9c3.6-10.1 5.9-20.7 5.9-32 0-53-43-96-96-96-5.2 0-10.2.7-15.1 1.5C218.3 14.6 224 30.6 224 48c0 44.2-35.8 80-80 80h-16c-35.3 0-64 28.7-64 64 0 12.1 3.7 23.1 9.6 32.7C32.6 228 0 262.2 0 304c0 44 36 80 80 80h48.3c.1-.6 0-1.2 0-1.8l16-120c3-21.8 21.7-38.2 43.7-38.2h68c13.8 0 26.5 6.3 34.9 17.2s11.2 24.8 7.6 38.1l-6.6 24.7h16c15.7 0 30.3 8.4 38.1 22 7.8 13.6 7.8 30.5 0 44l-8.1 14h30c44 0 80-36 80-80 .1-41.8-32.5-76-73.5-79.3z\"},\"child\":[]}]})(props);\n};\nexport function FaPoo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M451.4 369.1C468.7 356 480 335.4 480 312c0-39.8-32.2-72-72-72h-14.1c13.4-11.7 22.1-28.8 22.1-48 0-35.3-28.7-64-64-64h-5.9c3.6-10.1 5.9-20.7 5.9-32 0-53-43-96-96-96-5.2 0-10.2.7-15.1 1.5C250.3 14.6 256 30.6 256 48c0 44.2-35.8 80-80 80h-16c-35.3 0-64 28.7-64 64 0 19.2 8.7 36.3 22.1 48H104c-39.8 0-72 32.2-72 72 0 23.4 11.3 44 28.6 57.1C26.3 374.6 0 404.1 0 440c0 39.8 32.2 72 72 72h368c39.8 0 72-32.2 72-72 0-35.9-26.3-65.4-60.6-70.9zM192 256c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm159.5 139C341 422.9 293 448 256 448s-85-25.1-95.5-53c-2-5.3 2-11 7.8-11h175.4c5.8 0 9.8 5.7 7.8 11zM320 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaPoop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M451.36 369.14C468.66 355.99 480 335.41 480 312c0-39.77-32.24-72-72-72h-14.07c13.42-11.73 22.07-28.78 22.07-48 0-35.35-28.65-64-64-64h-5.88c3.57-10.05 5.88-20.72 5.88-32 0-53.02-42.98-96-96-96-5.17 0-10.15.74-15.11 1.52C250.31 14.64 256 30.62 256 48c0 44.18-35.82 80-80 80h-16c-35.35 0-64 28.65-64 64 0 19.22 8.65 36.27 22.07 48H104c-39.76 0-72 32.23-72 72 0 23.41 11.34 43.99 28.64 57.14C26.31 374.62 0 404.12 0 440c0 39.76 32.24 72 72 72h368c39.76 0 72-32.24 72-72 0-35.88-26.31-65.38-60.64-70.86z\"},\"child\":[]}]})(props);\n};\nexport function FaPortrait (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM192 128c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H102.4C90 384 80 375.4 80 364.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2z\"},\"child\":[]}]})(props);\n};\nexport function FaPoundSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M308 352h-45.495c-6.627 0-12 5.373-12 12v50.848H128V288h84c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-84v-63.556c0-32.266 24.562-57.086 61.792-57.086 23.658 0 45.878 11.505 57.652 18.849 5.151 3.213 11.888 2.051 15.688-2.685l28.493-35.513c4.233-5.276 3.279-13.005-2.119-17.081C273.124 54.56 236.576 32 187.931 32 106.026 32 48 84.742 48 157.961V224H20c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h28v128H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h296c6.627 0 12-5.373 12-12V364c0-6.627-5.373-12-12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaPowerOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 54.1c63 45 104 118.6 104 201.9 0 136.8-110.8 247.7-247.5 248C120 504.3 8.2 393 8 256.4 7.9 173.1 48.9 99.3 111.8 54.2c11.7-8.3 28-4.8 35 7.7L162.6 90c5.9 10.5 3.1 23.8-6.6 31-41.5 30.8-68 79.6-68 134.9-.1 92.3 74.5 168.1 168 168.1 91.6 0 168.6-74.2 168-169.1-.3-51.8-24.7-101.8-68.1-134-9.7-7.2-12.4-20.5-6.5-30.9l15.8-28.1c7-12.4 23.2-16.1 34.8-7.8zM296 264V24c0-13.3-10.7-24-24-24h-32c-13.3 0-24 10.7-24 24v240c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaPray (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 128c35.35 0 64-28.65 64-64S291.35 0 256 0s-64 28.65-64 64 28.65 64 64 64zm-30.63 169.75c14.06 16.72 39 19.09 55.97 5.22l88-72.02c17.09-13.98 19.59-39.19 5.62-56.28-13.97-17.11-39.19-19.59-56.31-5.62l-57.44 47-38.91-46.31c-15.44-18.39-39.22-27.92-64-25.33-24.19 2.48-45.25 16.27-56.37 36.92l-49.37 92.03c-23.4 43.64-8.69 96.37 34.19 123.75L131.56 432H40c-22.09 0-40 17.91-40 40s17.91 40 40 40h208c34.08 0 53.77-42.79 28.28-68.28L166.42 333.86l34.8-64.87 24.15 28.76z\"},\"child\":[]}]})(props);\n};\nexport function FaPrayingHands (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 191.91c-17.6 0-32 14.4-32 32v80c0 8.84-7.16 16-16 16s-16-7.16-16-16v-76.55c0-17.39 4.72-34.47 13.69-49.39l77.75-129.59c9.09-15.16 4.19-34.81-10.97-43.91-14.45-8.67-32.72-4.3-42.3 9.21-.2.23-.62.21-.79.48l-117.26 175.9C117.56 205.9 112 224.31 112 243.29v80.23l-90.12 30.04A31.974 31.974 0 0 0 0 383.91v96c0 10.82 8.52 32 32 32 2.69 0 5.41-.34 8.06-1.03l179.19-46.62C269.16 449.99 304 403.8 304 351.91v-128c0-17.6-14.4-32-32-32zm346.12 161.73L528 323.6v-80.23c0-18.98-5.56-37.39-16.12-53.23L394.62 14.25c-.18-.27-.59-.24-.79-.48-9.58-13.51-27.85-17.88-42.3-9.21-15.16 9.09-20.06 28.75-10.97 43.91l77.75 129.59c8.97 14.92 13.69 32 13.69 49.39V304c0 8.84-7.16 16-16 16s-16-7.16-16-16v-80c0-17.6-14.4-32-32-32s-32 14.4-32 32v128c0 51.89 34.84 98.08 84.75 112.34l179.19 46.62c2.66.69 5.38 1.03 8.06 1.03 23.48 0 32-21.18 32-32v-96c0-13.77-8.81-25.99-21.88-30.35z\"},\"child\":[]}]})(props);\n};\nexport function FaPrescriptionBottleAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M360 0H24C10.8 0 0 10.8 0 24v48c0 13.2 10.8 24 24 24h336c13.2 0 24-10.8 24-24V24c0-13.2-10.8-24-24-24zM32 480c0 17.6 14.4 32 32 32h256c17.6 0 32-14.4 32-32V128H32v352zm64-184c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48z\"},\"child\":[]}]})(props);\n};\nexport function FaPrescriptionBottle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 192h120c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H32v64h120c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H32v64h120c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H32v64c0 17.6 14.4 32 32 32h256c17.6 0 32-14.4 32-32V128H32v64zM360 0H24C10.8 0 0 10.8 0 24v48c0 13.2 10.8 24 24 24h336c13.2 0 24-10.8 24-24V24c0-13.2-10.8-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaPrescription (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M301.26 352l78.06-78.06c6.25-6.25 6.25-16.38 0-22.63l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0L256 306.74l-83.96-83.96C219.31 216.8 256 176.89 256 128c0-53.02-42.98-96-96-96H16C7.16 32 0 39.16 0 48v256c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-80h18.75l128 128-78.06 78.06c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0L256 397.25l78.06 78.06c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.25-6.25 6.25-16.38 0-22.63L301.26 352zM64 96h96c17.64 0 32 14.36 32 32s-14.36 32-32 32H64V96z\"},\"child\":[]}]})(props);\n};\nexport function FaPrint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 192V77.25c0-8.49-3.37-16.62-9.37-22.63L393.37 9.37c-6-6-14.14-9.37-22.63-9.37H96C78.33 0 64 14.33 64 32v160c-35.35 0-64 28.65-64 64v112c0 8.84 7.16 16 16 16h48v96c0 17.67 14.33 32 32 32h320c17.67 0 32-14.33 32-32v-96h48c8.84 0 16-7.16 16-16V256c0-35.35-28.65-64-64-64zm-64 256H128v-96h256v96zm0-224H128V64h192v48c0 8.84 7.16 16 16 16h48v96zm48 72c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaProcedures (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 224H272c-8.8 0-16 7.2-16 16v144H64V144c0-8.8-7.2-16-16-16H16c-8.8 0-16 7.2-16 16v352c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-48h512v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V336c0-61.9-50.1-112-112-112zM136 96h126.1l27.6 55.2c5.9 11.8 22.7 11.8 28.6 0L368 51.8 390.1 96H512c8.8 0 16-7.2 16-16s-7.2-16-16-16H409.9L382.3 8.8C376.4-3 359.6-3 353.7 8.8L304 108.2l-19.9-39.8c-1.4-2.7-4.1-4.4-7.2-4.4H136c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm24 256c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64z\"},\"child\":[]}]})(props);\n};\nexport function FaProjectDiagram (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 320H256c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h128c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32zM192 32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v128c0 17.67 14.33 32 32 32h95.72l73.16 128.04C211.98 300.98 232.4 288 256 288h.28L192 175.51V128h224V64H192V32zM608 0H480c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h128c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaPumpMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M235.51,159.82H84.24A64,64,0,0,0,20.51,218L.14,442a64,64,0,0,0,63.74,69.8h192A64,64,0,0,0,319.61,442L299.24,218A64,64,0,0,0,235.51,159.82Zm4.37,173.33a13.35,13.35,0,0,1-13.34,13.34h-40v40a13.33,13.33,0,0,1-13.33,13.33H146.54a13.33,13.33,0,0,1-13.33-13.33v-40h-40a13.34,13.34,0,0,1-13.33-13.34V306.49a13.33,13.33,0,0,1,13.33-13.34h40v-40a13.33,13.33,0,0,1,13.33-13.33h26.67a13.33,13.33,0,0,1,13.33,13.33v40h40a13.34,13.34,0,0,1,13.34,13.34ZM379.19,93.88,335.87,50.56a64,64,0,0,0-45.24-18.74H223.88a32,32,0,0,0-32-32h-64a32,32,0,0,0-32,32v96h128v-32h66.75l43.31,43.31a16,16,0,0,0,22.63,0l22.62-22.62A16,16,0,0,0,379.19,93.88Z\"},\"child\":[]}]})(props);\n};\nexport function FaPumpSoap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M235.63,160H84.37a64,64,0,0,0-63.74,58.21L.27,442.21A64,64,0,0,0,64,512H256a64,64,0,0,0,63.74-69.79l-20.36-224A64,64,0,0,0,235.63,160ZM160,416c-33.12,0-60-26.33-60-58.75,0-25,35.7-75.47,52-97.27A10,10,0,0,1,168,260c16.33,21.8,52,72.27,52,97.27C220,389.67,193.12,416,160,416ZM379.31,94.06,336,50.74A64,64,0,0,0,290.75,32H224A32,32,0,0,0,192,0H128A32,32,0,0,0,96,32v96H224V96h66.75l43.31,43.31a16,16,0,0,0,22.63,0l22.62-22.62A16,16,0,0,0,379.31,94.06Z\"},\"child\":[]}]})(props);\n};\nexport function FaPuzzlePiece (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M519.442 288.651c-41.519 0-59.5 31.593-82.058 31.593C377.409 320.244 432 144 432 144s-196.288 80-196.288-3.297c0-35.827 36.288-46.25 36.288-85.985C272 19.216 243.885 0 210.539 0c-34.654 0-66.366 18.891-66.366 56.346 0 41.364 31.711 59.277 31.711 81.75C175.885 207.719 0 166.758 0 166.758v333.237s178.635 41.047 178.635-28.662c0-22.473-40-40.107-40-81.471 0-37.456 29.25-56.346 63.577-56.346 33.673 0 61.788 19.216 61.788 54.717 0 39.735-36.288 50.158-36.288 85.985 0 60.803 129.675 25.73 181.23 25.73 0 0-34.725-120.101 25.827-120.101 35.962 0 46.423 36.152 86.308 36.152C556.712 416 576 387.99 576 354.443c0-34.199-18.962-65.792-56.558-65.792z\"},\"child\":[]}]})(props);\n};\nexport function FaQrcode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 224h192V32H0v192zM64 96h64v64H64V96zm192-64v192h192V32H256zm128 128h-64V96h64v64zM0 480h192V288H0v192zm64-128h64v64H64v-64zm352-64h32v128h-96v-32h-32v96h-64V288h96v32h64v-32zm0 160h32v32h-32v-32zm-64 0h32v32h-32v-32z\"},\"child\":[]}]})(props);\n};\nexport function FaQuestionCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zM262.655 90c-54.497 0-89.255 22.957-116.549 63.758-3.536 5.286-2.353 12.415 2.715 16.258l34.699 26.31c5.205 3.947 12.621 3.008 16.665-2.122 17.864-22.658 30.113-35.797 57.303-35.797 20.429 0 45.698 13.148 45.698 32.958 0 14.976-12.363 22.667-32.534 33.976C247.128 238.528 216 254.941 216 296v4c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12v-1.333c0-28.462 83.186-29.647 83.186-106.667 0-58.002-60.165-102-116.531-102zM256 338c-25.365 0-46 20.635-46 46 0 25.364 20.635 46 46 46s46-20.636 46-46c0-25.365-20.635-46-46-46z\"},\"child\":[]}]})(props);\n};\nexport function FaQuestion (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M202.021 0C122.202 0 70.503 32.703 29.914 91.026c-7.363 10.58-5.093 25.086 5.178 32.874l43.138 32.709c10.373 7.865 25.132 6.026 33.253-4.148 25.049-31.381 43.63-49.449 82.757-49.449 30.764 0 68.816 19.799 68.816 49.631 0 22.552-18.617 34.134-48.993 51.164-35.423 19.86-82.299 44.576-82.299 106.405V320c0 13.255 10.745 24 24 24h72.471c13.255 0 24-10.745 24-24v-5.773c0-42.86 125.268-44.645 125.268-160.627C377.504 66.256 286.902 0 202.021 0zM192 373.459c-38.196 0-69.271 31.075-69.271 69.271 0 38.195 31.075 69.27 69.271 69.27s69.271-31.075 69.271-69.271-31.075-69.27-69.271-69.27z\"},\"child\":[]}]})(props);\n};\nexport function FaQuidditch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256.5 216.8L343.2 326s-16.6 102.4-76.6 150.1C206.7 523.8 0 510.2 0 510.2s3.8-23.1 11-55.4l94.6-112.2c4-4.7-.9-11.6-6.6-9.5l-60.4 22.1c14.4-41.7 32.7-80 54.6-97.5 59.9-47.8 163.3-40.9 163.3-40.9zm238 135c-44 0-79.8 35.8-79.8 79.9 0 44.1 35.7 79.9 79.8 79.9 44.1 0 79.8-35.8 79.8-79.9 0-44.2-35.8-79.9-79.8-79.9zM636.5 31L616.7 6c-5.5-6.9-15.5-8-22.4-2.6L361.8 181.3l-34.1-43c-5.1-6.4-15.1-5.2-18.6 2.2l-25.3 54.6 86.7 109.2 58.8-12.4c8-1.7 11.4-11.2 6.3-17.6l-34.1-42.9L634 53.5c6.9-5.5 8-15.6 2.5-22.5z\"},\"child\":[]}]})(props);\n};\nexport function FaQuoteLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256h-80v-64c0-35.3 28.7-64 64-64h8c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24h-8c-88.4 0-160 71.6-160 160v240c0 26.5 21.5 48 48 48h128c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zm-288 0H96v-64c0-35.3 28.7-64 64-64h8c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24h-8C71.6 32 0 103.6 0 192v240c0 26.5 21.5 48 48 48h128c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaQuoteRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaQuran (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 358.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16c0-6.4-3.2-12.8-9.6-19.2-3.2-16-3.2-60.8 0-73.6 6.4-3.2 9.6-9.6 9.6-19.2zM301.08 145.82c.6-1.21 1.76-1.82 2.92-1.82s2.32.61 2.92 1.82l11.18 22.65 25 3.63c2.67.39 3.74 3.67 1.81 5.56l-18.09 17.63 4.27 24.89c.36 2.11-1.31 3.82-3.21 3.82-.5 0-1.02-.12-1.52-.38L304 211.87l-22.36 11.75c-.5.26-1.02.38-1.52.38-1.9 0-3.57-1.71-3.21-3.82l4.27-24.89-18.09-17.63c-1.94-1.89-.87-5.17 1.81-5.56l24.99-3.63 11.19-22.65zm-57.89-69.01c13.67 0 27.26 2.49 40.38 7.41a6.775 6.775 0 1 1-2.38 13.12c-.67 0-3.09-.21-4.13-.21-52.31 0-94.86 42.55-94.86 94.86 0 52.3 42.55 94.86 94.86 94.86 1.03 0 3.48-.21 4.13-.21 3.93 0 6.8 3.14 6.8 6.78 0 2.98-1.94 5.51-4.62 6.42-13.07 4.87-26.59 7.34-40.19 7.34C179.67 307.19 128 255.51 128 192c0-63.52 51.67-115.19 115.19-115.19zM380.8 448H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8v64z\"},\"child\":[]}]})(props);\n};\nexport function FaRadiationAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M312 256h79.1c9.2 0 16.9-7.7 16-16.8-4.6-43.6-27-81.8-59.5-107.8-7.6-6.1-18.8-4.5-24 3.8L281.9 202c18 11.2 30.1 31.2 30.1 54zm-97.8 54.1L172.4 377c-4.9 7.8-2.4 18.4 5.8 22.5 21.1 10.4 44.7 16.5 69.8 16.5s48.7-6.1 69.9-16.5c8.2-4.1 10.6-14.7 5.8-22.5l-41.8-66.9c-9.8 6.2-21.4 9.9-33.8 9.9s-24.1-3.7-33.9-9.9zM104.9 256H184c0-22.8 12.1-42.8 30.2-54.1l-41.7-66.8c-5.2-8.3-16.4-9.9-24-3.8-32.6 26-54.9 64.2-59.5 107.8-1.1 9.2 6.7 16.9 15.9 16.9zM248 504c137 0 248-111 248-248S385 8 248 8 0 119 0 256s111 248 248 248zm0-432c101.5 0 184 82.5 184 184s-82.5 184-184 184S64 357.5 64 256 146.5 72 248 72zm0 216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaRadiation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M328.2 255.8h151.6c9.1 0 16.8-7.7 16.2-16.8-5.1-75.8-44.4-142.2-102.5-184.2-7.4-5.3-17.9-2.9-22.7 4.8L290.4 188c22.6 14.3 37.8 39.2 37.8 67.8zm-37.8 67.7c-12.3 7.7-26.8 12.4-42.4 12.4-15.6 0-30-4.7-42.4-12.4L125.2 452c-4.8 7.7-2.4 18.1 5.6 22.4C165.7 493.2 205.6 504 248 504s82.3-10.8 117.2-29.6c8-4.3 10.4-14.8 5.6-22.4l-80.4-128.5zM248 303.8c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48zm-231.8-48h151.6c0-28.6 15.2-53.5 37.8-67.7L125.2 59.7c-4.8-7.7-15.3-10.2-22.7-4.8C44.4 96.9 5.1 163.3 0 239.1c-.6 9 7.1 16.7 16.2 16.7z\"},\"child\":[]}]})(props);\n};\nexport function FaRainbow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M268.3 32.7C115.4 42.9 0 176.9 0 330.2V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320C64 186.8 180.9 80.3 317.5 97.9 430.4 112.4 512 214 512 327.8V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-165.3-140-298.6-307.7-287.3zm-5.6 96.9C166 142 96 229.1 96 326.7V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-74.8 64.5-134.8 140.8-127.4 66.5 6.5 115.2 66.2 115.2 133.1V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-114.2-100.2-205.4-217.3-190.4zm6.2 96.3c-45.6 8.9-76.9 51.5-76.9 97.9V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-17.6 14.3-32 32-32s32 14.4 32 32v144c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-59.2-53.8-106-115.1-94.1z\"},\"child\":[]}]})(props);\n};\nexport function FaRandom (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504.971 359.029c9.373 9.373 9.373 24.569 0 33.941l-80 79.984c-15.01 15.01-40.971 4.49-40.971-16.971V416h-58.785a12.004 12.004 0 0 1-8.773-3.812l-70.556-75.596 53.333-57.143L352 336h32v-39.981c0-21.438 25.943-31.998 40.971-16.971l80 79.981zM12 176h84l52.781 56.551 53.333-57.143-70.556-75.596A11.999 11.999 0 0 0 122.785 96H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12zm372 0v39.984c0 21.46 25.961 31.98 40.971 16.971l80-79.984c9.373-9.373 9.373-24.569 0-33.941l-80-79.981C409.943 24.021 384 34.582 384 56.019V96h-58.785a12.004 12.004 0 0 0-8.773 3.812L96 336H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h110.785c3.326 0 6.503-1.381 8.773-3.812L352 176h32z\"},\"child\":[]}]})(props);\n};\nexport function FaReceipt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M358.4 3.2L320 48 265.6 3.2a15.9 15.9 0 0 0-19.2 0L192 48 137.6 3.2a15.9 15.9 0 0 0-19.2 0L64 48 25.6 3.2C15-4.7 0 2.8 0 16v480c0 13.2 15 20.7 25.6 12.8L64 464l54.4 44.8a15.9 15.9 0 0 0 19.2 0L192 464l54.4 44.8a15.9 15.9 0 0 0 19.2 0L320 464l38.4 44.8c10.5 7.9 25.6.4 25.6-12.8V16c0-13.2-15-20.7-25.6-12.8zM320 360c0 4.4-3.6 8-8 8H72c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h240c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H72c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h240c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H72c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h240c4.4 0 8 3.6 8 8v16z\"},\"child\":[]}]})(props);\n};\nexport function FaRecordVinyl (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 152a104 104 0 1 0 104 104 104 104 0 0 0-104-104zm0 128a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm0-272C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 376a128 128 0 1 1 128-128 128 128 0 0 1-128 128z\"},\"child\":[]}]})(props);\n};\nexport function FaRecycle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M184.561 261.903c3.232 13.997-12.123 24.635-24.068 17.168l-40.736-25.455-50.867 81.402C55.606 356.273 70.96 384 96.012 384H148c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12H96.115c-75.334 0-121.302-83.048-81.408-146.88l50.822-81.388-40.725-25.448c-12.081-7.547-8.966-25.961 4.879-29.158l110.237-25.45c8.611-1.988 17.201 3.381 19.189 11.99l25.452 110.237zm98.561-182.915l41.289 66.076-40.74 25.457c-12.051 7.528-9 25.953 4.879 29.158l110.237 25.45c8.672 1.999 17.215-3.438 19.189-11.99l25.45-110.237c3.197-13.844-11.99-24.719-24.068-17.168l-40.687 25.424-41.263-66.082c-37.521-60.033-125.209-60.171-162.816 0l-17.963 28.766c-3.51 5.62-1.8 13.021 3.82 16.533l33.919 21.195c5.62 3.512 13.024 1.803 16.536-3.817l17.961-28.743c12.712-20.341 41.973-19.676 54.257-.022zM497.288 301.12l-27.515-44.065c-3.511-5.623-10.916-7.334-16.538-3.821l-33.861 21.159c-5.62 3.512-7.33 10.915-3.818 16.536l27.564 44.112c13.257 21.211-2.057 48.96-27.136 48.96H320V336.02c0-14.213-17.242-21.383-27.313-11.313l-80 79.981c-6.249 6.248-6.249 16.379 0 22.627l80 79.989C302.689 517.308 320 510.3 320 495.989V448h95.88c75.274 0 121.335-82.997 81.408-146.88z\"},\"child\":[]}]})(props);\n};\nexport function FaRedoAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256.455 8c66.269.119 126.437 26.233 170.859 68.685l35.715-35.715C478.149 25.851 504 36.559 504 57.941V192c0 13.255-10.745 24-24 24H345.941c-21.382 0-32.09-25.851-16.971-40.971l41.75-41.75c-30.864-28.899-70.801-44.907-113.23-45.273-92.398-.798-170.283 73.977-169.484 169.442C88.764 348.009 162.184 424 256 424c41.127 0 79.997-14.678 110.629-41.556 4.743-4.161 11.906-3.908 16.368.553l39.662 39.662c4.872 4.872 4.631 12.815-.482 17.433C378.202 479.813 319.926 504 256 504 119.034 504 8.001 392.967 8 256.002 7.999 119.193 119.646 7.755 256.455 8z\"},\"child\":[]}]})(props);\n};\nexport function FaRedo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M500.33 0h-47.41a12 12 0 0 0-12 12.57l4 82.76A247.42 247.42 0 0 0 256 8C119.34 8 7.9 119.53 8 256.19 8.1 393.07 119.1 504 256 504a247.1 247.1 0 0 0 166.18-63.91 12 12 0 0 0 .48-17.43l-34-34a12 12 0 0 0-16.38-.55A176 176 0 1 1 402.1 157.8l-101.53-4.87a12 12 0 0 0-12.57 12v47.41a12 12 0 0 0 12 12h200.33a12 12 0 0 0 12-12V12a12 12 0 0 0-12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegistered (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M285.363 207.475c0 18.6-9.831 28.431-28.431 28.431h-29.876v-56.14h23.378c28.668 0 34.929 8.773 34.929 27.709zM504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM363.411 360.414c-46.729-84.825-43.299-78.636-44.702-80.98 23.432-15.172 37.945-42.979 37.945-74.486 0-54.244-31.5-89.252-105.498-89.252h-70.667c-13.255 0-24 10.745-24 24V372c0 13.255 10.745 24 24 24h22.567c13.255 0 24-10.745 24-24v-71.663h25.556l44.129 82.937a24.001 24.001 0 0 0 21.188 12.727h24.464c18.261-.001 29.829-19.591 21.018-35.587z\"},\"child\":[]}]})(props);\n};\nexport function FaRemoveFormat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 416h-11.17l9.26-27.77L267 336.4 240.49 416H208a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm297.82 42.1L377 259.59 426.17 112H544v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H176a16 16 0 0 0-16 16v43.9L45.46 3.38A16 16 0 0 0 23 6.19L3.37 31.46a16 16 0 0 0 2.81 22.45l588.36 454.72a16 16 0 0 0 22.46-2.81l19.64-25.27a16 16 0 0 0-2.82-22.45zM309.91 207.76L224 141.36V112h117.83z\"},\"child\":[]}]})(props);\n};\nexport function FaReplyAll (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M136.309 189.836L312.313 37.851C327.72 24.546 352 35.348 352 56.015v82.763c129.182 10.231 224 52.212 224 183.548 0 61.441-39.582 122.309-83.333 154.132-13.653 9.931-33.111-2.533-28.077-18.631 38.512-123.162-3.922-169.482-112.59-182.015v84.175c0 20.701-24.3 31.453-39.687 18.164L136.309 226.164c-11.071-9.561-11.086-26.753 0-36.328zm-128 36.328L184.313 378.15C199.7 391.439 224 380.687 224 359.986v-15.818l-108.606-93.785A55.96 55.96 0 0 1 96 207.998a55.953 55.953 0 0 1 19.393-42.38L224 71.832V56.015c0-20.667-24.28-31.469-39.687-18.164L8.309 189.836c-11.086 9.575-11.071 26.767 0 36.328z\"},\"child\":[]}]})(props);\n};\nexport function FaReply (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.309 189.836L184.313 37.851C199.719 24.546 224 35.347 224 56.015v80.053c160.629 1.839 288 34.032 288 186.258 0 61.441-39.581 122.309-83.333 154.132-13.653 9.931-33.111-2.533-28.077-18.631 45.344-145.012-21.507-183.51-176.59-185.742V360c0 20.7-24.3 31.453-39.687 18.164l-176.004-152c-11.071-9.562-11.086-26.753 0-36.328z\"},\"child\":[]}]})(props);\n};\nexport function FaRepublican (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 192c0-88.4-71.6-160-160-160H160C71.6 32 0 103.6 0 192v64h544v-64zm-367.7-21.6l-19.8 19.3 4.7 27.3c.8 4.9-4.3 8.6-8.7 6.3L128 210.4l-24.5 12.9c-4.3 2.3-9.5-1.4-8.7-6.3l4.7-27.3-19.8-19.3c-3.6-3.5-1.6-9.5 3.3-10.2l27.4-4 12.2-24.8c2.2-4.5 8.6-4.4 10.7 0l12.2 24.8 27.4 4c5 .7 6.9 6.7 3.4 10.2zm144 0l-19.8 19.3 4.7 27.3c.8 4.9-4.3 8.6-8.7 6.3L272 210.4l-24.5 12.9c-4.3 2.3-9.5-1.4-8.7-6.3l4.7-27.3-19.8-19.3c-3.6-3.5-1.6-9.5 3.3-10.2l27.4-4 12.2-24.8c2.2-4.5 8.6-4.4 10.7 0l12.2 24.8 27.4 4c5 .7 6.9 6.7 3.4 10.2zm144 0l-19.8 19.3 4.7 27.3c.8 4.9-4.3 8.6-8.7 6.3L416 210.4l-24.5 12.9c-4.3 2.3-9.5-1.4-8.7-6.3l4.7-27.3-19.8-19.3c-3.6-3.5-1.6-9.5 3.3-10.2l27.4-4 12.2-24.8c2.2-4.5 8.6-4.4 10.7 0l12.2 24.8 27.4 4c5 .7 6.9 6.7 3.4 10.2zM624 320h-32c-8.8 0-16 7.2-16 16v64c0 8.8-7.2 16-16 16s-16-7.2-16-16V288H0v176c0 8.8 7.2 16 16 16h96c8.8 0 16-7.2 16-16v-80h192v80c0 8.8 7.2 16 16 16h96c8.8 0 16-7.2 16-16V352h32v43.3c0 41.8 30 80.1 71.6 84.3 47.8 4.9 88.4-32.7 88.4-79.6v-64c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaRestroom (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 128c35.3 0 64-28.7 64-64S163.3 0 128 0 64 28.7 64 64s28.7 64 64 64zm384 0c35.3 0 64-28.7 64-64S547.3 0 512 0s-64 28.7-64 64 28.7 64 64 64zm127.3 226.5l-45.6-185.8c-3.3-13.5-15.5-23-29.8-24.2-15 9.7-32.8 15.5-52 15.5-19.2 0-37-5.8-52-15.5-14.3 1.2-26.5 10.7-29.8 24.2l-45.6 185.8C381 369.6 393 384 409.2 384H464v104c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V384h54.8c16.2 0 28.2-14.4 24.5-29.5zM336 0h-32c-8.8 0-16 7.2-16 16v480c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16zM180.1 144.4c-15 9.8-32.9 15.6-52.1 15.6-19.2 0-37.1-5.8-52.1-15.6C51.3 146.5 32 166.9 32 192v136c0 13.3 10.7 24 24 24h8v136c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24V352h8c13.3 0 24-10.7 24-24V192c0-25.1-19.3-45.5-43.9-47.6z\"},\"child\":[]}]})(props);\n};\nexport function FaRetweet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M629.657 343.598L528.971 444.284c-9.373 9.372-24.568 9.372-33.941 0L394.343 343.598c-9.373-9.373-9.373-24.569 0-33.941l10.823-10.823c9.562-9.562 25.133-9.34 34.419.492L480 342.118V160H292.451a24.005 24.005 0 0 1-16.971-7.029l-16-16C244.361 121.851 255.069 96 276.451 96H520c13.255 0 24 10.745 24 24v222.118l40.416-42.792c9.285-9.831 24.856-10.054 34.419-.492l10.823 10.823c9.372 9.372 9.372 24.569-.001 33.941zm-265.138 15.431A23.999 23.999 0 0 0 347.548 352H160V169.881l40.416 42.792c9.286 9.831 24.856 10.054 34.419.491l10.822-10.822c9.373-9.373 9.373-24.569 0-33.941L144.971 67.716c-9.373-9.373-24.569-9.373-33.941 0L10.343 168.402c-9.373 9.373-9.373 24.569 0 33.941l10.822 10.822c9.562 9.562 25.133 9.34 34.419-.491L96 169.881V392c0 13.255 10.745 24 24 24h243.549c21.382 0 32.09-25.851 16.971-40.971l-16.001-16z\"},\"child\":[]}]})(props);\n};\nexport function FaRibbon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.1 444.3c-9.6 10.8-7.5 27.6 4.5 35.7l68.8 27.9c9.9 6.7 23.3 5 31.3-3.8l91.8-101.9-79.2-87.9-117.2 130zm435.8 0s-292-324.6-295.4-330.1c15.4-8.4 40.2-17.9 77.5-17.9s62.1 9.5 77.5 17.9c-3.3 5.6-56 64.6-56 64.6l79.1 87.7 34.2-38c28.7-31.9 33.3-78.6 11.4-115.5l-43.7-73.5c-4.3-7.2-9.9-13.3-16.8-18-40.7-27.6-127.4-29.7-171.4 0-6.9 4.7-12.5 10.8-16.8 18l-43.6 73.2c-1.5 2.5-37.1 62.2 11.5 116L337.5 504c8 8.9 21.4 10.5 31.3 3.8l68.8-27.9c11.9-8 14-24.8 4.3-35.6z\"},\"child\":[]}]})(props);\n};\nexport function FaRing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 64C110.06 64 0 125.91 0 208v98.13C0 384.48 114.62 448 256 448s256-63.52 256-141.87V208c0-82.09-110.06-144-256-144zm0 64c106.04 0 192 35.82 192 80 0 9.26-3.97 18.12-10.91 26.39C392.15 208.21 328.23 192 256 192s-136.15 16.21-181.09 42.39C67.97 226.12 64 217.26 64 208c0-44.18 85.96-80 192-80zM120.43 264.64C155.04 249.93 201.64 240 256 240s100.96 9.93 135.57 24.64C356.84 279.07 308.93 288 256 288s-100.84-8.93-135.57-23.36z\"},\"child\":[]}]})(props);\n};\nexport function FaRoad (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M573.19 402.67l-139.79-320C428.43 71.29 417.6 64 405.68 64h-97.59l2.45 23.16c.5 4.72-3.21 8.84-7.96 8.84h-29.16c-4.75 0-8.46-4.12-7.96-8.84L267.91 64h-97.59c-11.93 0-22.76 7.29-27.73 18.67L2.8 402.67C-6.45 423.86 8.31 448 30.54 448h196.84l10.31-97.68c.86-8.14 7.72-14.32 15.91-14.32h68.8c8.19 0 15.05 6.18 15.91 14.32L348.62 448h196.84c22.23 0 36.99-24.14 27.73-45.33zM260.4 135.16a8 8 0 0 1 7.96-7.16h39.29c4.09 0 7.53 3.09 7.96 7.16l4.6 43.58c.75 7.09-4.81 13.26-11.93 13.26h-40.54c-7.13 0-12.68-6.17-11.93-13.26l4.59-43.58zM315.64 304h-55.29c-9.5 0-16.91-8.23-15.91-17.68l5.07-48c.86-8.14 7.72-14.32 15.91-14.32h45.15c8.19 0 15.05 6.18 15.91 14.32l5.07 48c1 9.45-6.41 17.68-15.91 17.68z\"},\"child\":[]}]})(props);\n};\nexport function FaRobot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32,224H64V416H32A31.96166,31.96166,0,0,1,0,384V256A31.96166,31.96166,0,0,1,32,224Zm512-48V448a64.06328,64.06328,0,0,1-64,64H160a64.06328,64.06328,0,0,1-64-64V176a79.974,79.974,0,0,1,80-80H288V32a32,32,0,0,1,64,0V96H464A79.974,79.974,0,0,1,544,176ZM264,256a40,40,0,1,0-40,40A39.997,39.997,0,0,0,264,256Zm-8,128H192v32h64Zm96,0H288v32h64ZM456,256a40,40,0,1,0-40,40A39.997,39.997,0,0,0,456,256Zm-8,128H384v32h64ZM640,256V384a31.96166,31.96166,0,0,1-32,32H576V224h32A31.96166,31.96166,0,0,1,640,256Z\"},\"child\":[]}]})(props);\n};\nexport function FaRocket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M505.12019,19.09375c-1.18945-5.53125-6.65819-11-12.207-12.1875C460.716,0,435.507,0,410.40747,0,307.17523,0,245.26909,55.20312,199.05238,128H94.83772c-16.34763.01562-35.55658,11.875-42.88664,26.48438L2.51562,253.29688A28.4,28.4,0,0,0,0,264a24.00867,24.00867,0,0,0,24.00582,24H127.81618l-22.47457,22.46875c-11.36521,11.36133-12.99607,32.25781,0,45.25L156.24582,406.625c11.15623,11.1875,32.15619,13.15625,45.27726,0l22.47457-22.46875V488a24.00867,24.00867,0,0,0,24.00581,24,28.55934,28.55934,0,0,0,10.707-2.51562l98.72834-49.39063c14.62888-7.29687,26.50776-26.5,26.50776-42.85937V312.79688c72.59753-46.3125,128.03493-108.40626,128.03493-211.09376C512.07526,76.5,512.07526,51.29688,505.12019,19.09375ZM384.04033,168A40,40,0,1,1,424.05,128,40.02322,40.02322,0,0,1,384.04033,168Z\"},\"child\":[]}]})(props);\n};\nexport function FaRoute (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 320h-96c-17.6 0-32-14.4-32-32s14.4-32 32-32h96s96-107 96-160-43-96-96-96-96 43-96 96c0 25.5 22.2 63.4 45.3 96H320c-52.9 0-96 43.1-96 96s43.1 96 96 96h96c17.6 0 32 14.4 32 32s-14.4 32-32 32H185.5c-16 24.8-33.8 47.7-47.3 64H416c52.9 0 96-43.1 96-96s-43.1-96-96-96zm0-256c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zM96 256c-53 0-96 43-96 96s96 160 96 160 96-107 96-160-43-96-96-96zm0 128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaRssSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM112 416c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm157.533 0h-34.335c-6.011 0-11.051-4.636-11.442-10.634-5.214-80.05-69.243-143.92-149.123-149.123-5.997-.39-10.633-5.431-10.633-11.441v-34.335c0-6.535 5.468-11.777 11.994-11.425 110.546 5.974 198.997 94.536 204.964 204.964.352 6.526-4.89 11.994-11.425 11.994zm103.027 0h-34.334c-6.161 0-11.175-4.882-11.427-11.038-5.598-136.535-115.204-246.161-251.76-251.76C68.882 152.949 64 147.935 64 141.774V107.44c0-6.454 5.338-11.664 11.787-11.432 167.83 6.025 302.21 141.191 308.205 308.205.232 6.449-4.978 11.787-11.432 11.787z\"},\"child\":[]}]})(props);\n};\nexport function FaRss (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z\"},\"child\":[]}]})(props);\n};\nexport function FaRubleSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M239.36 320C324.48 320 384 260.542 384 175.071S324.48 32 239.36 32H76c-6.627 0-12 5.373-12 12v206.632H12c-6.627 0-12 5.373-12 12V308c0 6.627 5.373 12 12 12h52v32H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h52v52c0 6.627 5.373 12 12 12h58.56c6.627 0 12-5.373 12-12v-52H308c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12H146.56v-32h92.8zm-92.8-219.252h78.72c46.72 0 74.88 29.11 74.88 74.323 0 45.832-28.16 75.561-76.16 75.561h-77.44V100.748z\"},\"child\":[]}]})(props);\n};\nexport function FaRulerCombined (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 288h-56c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h56v-64h-56c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h56V96h-56c-4.42 0-8-3.58-8-8V72c0-4.42 3.58-8 8-8h56V32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v448c0 2.77.91 5.24 1.57 7.8L160 329.38V288zm320 64h-32v56c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-56h-64v56c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-56h-64v56c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-56h-41.37L24.2 510.43c2.56.66 5.04 1.57 7.8 1.57h448c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaRulerHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 128h-48v88c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-88h-64v88c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-88h-64v88c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-88h-64v88c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-88h-64v88c0 4.42-3.58 8-8 8H88c-4.42 0-8-3.58-8-8v-88H32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h512c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaRulerVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M168 416c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h88v-64h-88c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h88v-64h-88c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h88v-64h-88c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h88V32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v448c0 17.67 14.33 32 32 32h192c17.67 0 32-14.33 32-32v-64h-88z\"},\"child\":[]}]})(props);\n};\nexport function FaRuler (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M635.7 167.2L556.1 31.7c-8.8-15-28.3-20.1-43.5-11.5l-69 39.1L503.3 161c2.2 3.8.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9L416 75l-55.2 31.3 27.9 47.4c2.2 3.8.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9L333.2 122 278 153.3 337.8 255c2.2 3.7.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9l-59.7-101.7-55.2 31.3 27.9 47.4c2.2 3.8.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9l-27.9-47.5-55.2 31.3 59.7 101.7c2.2 3.7.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9L84.9 262.9l-69 39.1C.7 310.7-4.6 329.8 4.2 344.8l79.6 135.6c8.8 15 28.3 20.1 43.5 11.5L624.1 210c15.2-8.6 20.4-27.8 11.6-42.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRunning (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 416 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 96c26.51 0 48-21.49 48-48S298.51 0 272 0s-48 21.49-48 48 21.49 48 48 48zM113.69 317.47l-14.8 34.52H32c-17.67 0-32 14.33-32 32s14.33 32 32 32h77.45c19.25 0 36.58-11.44 44.11-29.09l8.79-20.52-10.67-6.3c-17.32-10.23-30.06-25.37-37.99-42.61zM384 223.99h-44.03l-26.06-53.25c-12.5-25.55-35.45-44.23-61.78-50.94l-71.08-21.14c-28.3-6.8-57.77-.55-80.84 17.14l-39.67 30.41c-14.03 10.75-16.69 30.83-5.92 44.86s30.84 16.66 44.86 5.92l39.69-30.41c7.67-5.89 17.44-8 25.27-6.14l14.7 4.37-37.46 87.39c-12.62 29.48-1.31 64.01 26.3 80.31l84.98 50.17-27.47 87.73c-5.28 16.86 4.11 34.81 20.97 40.09 3.19 1 6.41 1.48 9.58 1.48 13.61 0 26.23-8.77 30.52-22.45l31.64-101.06c5.91-20.77-2.89-43.08-21.64-54.39l-61.24-36.14 31.31-78.28 20.27 41.43c8 16.34 24.92 26.89 43.11 26.89H384c17.67 0 32-14.33 32-32s-14.33-31.99-32-31.99z\"},\"child\":[]}]})(props);\n};\nexport function FaRupeeSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M308 96c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v44.748c0 6.627 5.373 12 12 12h85.28c27.308 0 48.261 9.958 60.97 27.252H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h158.757c-6.217 36.086-32.961 58.632-74.757 58.632H12c-6.627 0-12 5.373-12 12v53.012c0 3.349 1.4 6.546 3.861 8.818l165.052 152.356a12.001 12.001 0 0 0 8.139 3.182h82.562c10.924 0 16.166-13.408 8.139-20.818L116.871 319.906c76.499-2.34 131.144-53.395 138.318-127.906H308c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-58.69c-3.486-11.541-8.28-22.246-14.252-32H308z\"},\"child\":[]}]})(props);\n};\nexport function FaSadCry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256c0 90.1 48.2 168.7 120 212.1V288c0-8.8 7.2-16 16-16s16 7.2 16 16v196.7c29.5 12.4 62 19.3 96 19.3s66.5-6.9 96-19.3V288c0-8.8 7.2-16 16-16s16 7.2 16 16v180.1C447.8 424.7 496 346 496 256 496 119 385 8 248 8zm-65.5 216.5c-14.8-13.2-46.2-13.2-61 0L112 233c-3.8 3.3-9.3 4-13.7 1.6-4.4-2.4-6.9-7.4-6.1-12.4 4-25.2 34.2-42.1 59.9-42.1S208 197 212 222.2c.8 5-1.7 10-6.1 12.4-5.8 3.1-11.2.7-13.7-1.6l-9.7-8.5zM248 416c-26.5 0-48-28.7-48-64s21.5-64 48-64 48 28.7 48 64-21.5 64-48 64zm149.8-181.5c-5.8 3.1-11.2.7-13.7-1.6l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L304 233c-3.8 3.3-9.3 4-13.7 1.6-4.4-2.4-6.9-7.4-6.1-12.4 4-25.2 34.2-42.1 59.9-42.1S400 197 404 222.2c.6 4.9-1.8 9.9-6.2 12.3z\"},\"child\":[]}]})(props);\n};\nexport function FaSadTear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zM152 416c-26.5 0-48-21-48-47 0-20 28.5-60.4 41.6-77.8 3.2-4.3 9.6-4.3 12.8 0C171.5 308.6 200 349 200 369c0 26-21.5 47-48 47zm16-176c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm170.2 154.2C315.8 367.4 282.9 352 248 352c-21.2 0-21.2-32 0-32 44.4 0 86.3 19.6 114.7 53.8 13.8 16.4-11.2 36.5-24.5 20.4z\"},\"child\":[]}]})(props);\n};\nexport function FaSatelliteDish (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M305.44954,462.59c7.39157,7.29792,6.18829,20.09661-3.00038,25.00356-77.713,41.80281-176.72559,29.9105-242.34331-35.7082C-5.49624,386.28227-17.404,287.362,24.41381,209.554c4.89125-9.095,17.68975-10.29834,25.00318-3.00043L166.22872,323.36708l27.39411-27.39452c-.68759-2.60974-1.594-5.00071-1.594-7.81361a32.00407,32.00407,0,1,1,32.00407,32.00455c-2.79723,0-5.20378-.89075-7.79786-1.594l-27.40974,27.41015ZM511.9758,303.06732a16.10336,16.10336,0,0,1-16.002,17.00242H463.86031a15.96956,15.96956,0,0,1-15.89265-15.00213C440.46671,175.5492,336.45348,70.53427,207.03078,63.53328a15.84486,15.84486,0,0,1-15.00191-15.90852V16.02652A16.09389,16.09389,0,0,1,209.031.02425C372.25491,8.61922,503.47472,139.841,511.9758,303.06732Zm-96.01221-.29692a16.21093,16.21093,0,0,1-16.11142,17.29934H367.645a16.06862,16.06862,0,0,1-15.89265-14.70522c-6.90712-77.01094-68.118-138.91037-144.92467-145.22376a15.94,15.94,0,0,1-14.79876-15.89289V112.13393a16.134,16.134,0,0,1,17.29908-16.096C319.45132,104.5391,407.55627,192.64538,415.96359,302.7704Z\"},\"child\":[]}]})(props);\n};\nexport function FaSatellite (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.60969,310.04206l-96.70393,96.71625a31.88151,31.88151,0,0,1-45.00765,0L280.572,326.34115l-9.89231,9.90759a190.56343,190.56343,0,0,1-5.40716,168.52287c-4.50077,8.50115-16.39342,9.59505-23.20707,2.79725L134.54715,400.05428l-17.7999,17.79929c.70324,2.60972,1.60965,5.00067,1.60965,7.79793a32.00544,32.00544,0,1,1-32.00544-32.00434c2.79735,0,5.18838.90637,7.7982,1.60959l17.7999-17.79929L4.43129,269.94287c-6.798-6.81342-5.70409-18.6119,2.79735-23.20627a190.58161,190.58161,0,0,1,168.52864-5.407l9.79854-9.79821-80.31053-80.41716a32.002,32.002,0,0,1,0-45.09987L201.96474,9.29814A31.62639,31.62639,0,0,1,224.46868,0a31.99951,31.99951,0,0,1,22.59759,9.29814l80.32615,80.30777,47.805-47.89713a33.6075,33.6075,0,0,1,47.50808,0l47.50807,47.50645a33.63308,33.63308,0,0,1,0,47.50644l-47.805,47.89713L502.71908,265.036A31.78938,31.78938,0,0,1,502.60969,310.04206ZM219.56159,197.433l73.82505-73.82252-68.918-68.9-73.80942,73.80689Zm237.74352,90.106-68.90233-68.9156-73.825,73.82252,68.918,68.9Z\"},\"child\":[]}]})(props);\n};\nexport function FaSave (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM224 416c-35.346 0-64-28.654-64-64 0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64zm96-304.52V212c0 6.627-5.373 12-12 12H76c-6.627 0-12-5.373-12-12V108c0-6.627 5.373-12 12-12h228.52c3.183 0 6.235 1.264 8.485 3.515l3.48 3.48A11.996 11.996 0 0 1 320 111.48z\"},\"child\":[]}]})(props);\n};\nexport function FaSchool (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 224v272c0 8.84 7.16 16 16 16h80V192H32c-17.67 0-32 14.33-32 32zm360-48h-24v-40c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v64c0 4.42 3.58 8 8 8h48c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm137.75-63.96l-160-106.67a32.02 32.02 0 0 0-35.5 0l-160 106.67A32.002 32.002 0 0 0 128 138.66V512h128V368c0-8.84 7.16-16 16-16h96c8.84 0 16 7.16 16 16v144h128V138.67c0-10.7-5.35-20.7-14.25-26.63zM320 256c-44.18 0-80-35.82-80-80s35.82-80 80-80 80 35.82 80 80-35.82 80-80 80zm288-64h-64v320h80c8.84 0 16-7.16 16-16V224c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaScrewdriver (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 0L320 96v62.06l-83.03 83.03c6.79 4.25 13.27 9.06 19.07 14.87 5.8 5.8 10.62 12.28 14.87 19.07L353.94 192H416l96-128-64-64zM128 278.59L10.92 395.67c-14.55 14.55-14.55 38.15 0 52.71l52.7 52.7c14.56 14.56 38.15 14.56 52.71 0L233.41 384c29.11-29.11 29.11-76.3 0-105.41s-76.3-29.11-105.41 0z\"},\"child\":[]}]})(props);\n};\nexport function FaScroll (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 0C21.53 0 0 21.53 0 48v64c0 8.84 7.16 16 16 16h80V48C96 21.53 74.47 0 48 0zm208 412.57V352h288V96c0-52.94-43.06-96-96-96H111.59C121.74 13.41 128 29.92 128 48v368c0 38.87 34.65 69.65 74.75 63.12C234.22 474 256 444.46 256 412.57zM288 384v32c0 52.93-43.06 96-96 96h336c61.86 0 112-50.14 112-112 0-8.84-7.16-16-16-16H288z\"},\"child\":[]}]})(props);\n};\nexport function FaSdCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 0H128L0 128v320c0 35.3 28.7 64 64 64h256c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zM160 160h-48V64h48v96zm80 0h-48V64h48v96zm80 0h-48V64h48v96z\"},\"child\":[]}]})(props);\n};\nexport function FaSearchDollar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M505.04 442.66l-99.71-99.69c-4.5-4.5-10.6-7-17-7h-16.3c27.6-35.3 44-79.69 44-127.99C416.03 93.09 322.92 0 208.02 0S0 93.09 0 207.98s93.11 207.98 208.02 207.98c48.3 0 92.71-16.4 128.01-44v16.3c0 6.4 2.5 12.5 7 17l99.71 99.69c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.59.1-33.99zm-297.02-90.7c-79.54 0-144-64.34-144-143.98 0-79.53 64.35-143.98 144-143.98 79.54 0 144 64.34 144 143.98 0 79.53-64.35 143.98-144 143.98zm27.11-152.54l-45.01-13.5c-5.16-1.55-8.77-6.78-8.77-12.73 0-7.27 5.3-13.19 11.8-13.19h28.11c4.56 0 8.96 1.29 12.82 3.72 3.24 2.03 7.36 1.91 10.13-.73l11.75-11.21c3.53-3.37 3.33-9.21-.57-12.14-9.1-6.83-20.08-10.77-31.37-11.35V112c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v16.12c-23.63.63-42.68 20.55-42.68 45.07 0 19.97 12.99 37.81 31.58 43.39l45.01 13.5c5.16 1.55 8.77 6.78 8.77 12.73 0 7.27-5.3 13.19-11.8 13.19h-28.1c-4.56 0-8.96-1.29-12.82-3.72-3.24-2.03-7.36-1.91-10.13.73l-11.75 11.21c-3.53 3.37-3.33 9.21.57 12.14 9.1 6.83 20.08 10.77 31.37 11.35V304c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16.12c23.63-.63 42.68-20.54 42.68-45.07 0-19.97-12.99-37.81-31.59-43.39z\"},\"child\":[]}]})(props);\n};\nexport function FaSearchLocation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M505.04 442.66l-99.71-99.69c-4.5-4.5-10.6-7-17-7h-16.3c27.6-35.3 44-79.69 44-127.99C416.03 93.09 322.92 0 208.02 0S0 93.09 0 207.98s93.11 207.98 208.02 207.98c48.3 0 92.71-16.4 128.01-44v16.3c0 6.4 2.5 12.5 7 17l99.71 99.69c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.59.1-33.99zm-297.02-90.7c-79.54 0-144-64.34-144-143.98 0-79.53 64.35-143.98 144-143.98 79.54 0 144 64.34 144 143.98 0 79.53-64.35 143.98-144 143.98zm.02-239.96c-40.78 0-73.84 33.05-73.84 73.83 0 32.96 48.26 93.05 66.75 114.86a9.24 9.24 0 0 0 14.18 0c18.49-21.81 66.75-81.89 66.75-114.86 0-40.78-33.06-73.83-73.84-73.83zm0 96c-13.26 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaSearchMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 192v32c0 6.6-5.4 12-12 12H124c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm201 284.7L476.7 505c-9.4 9.4-24.6 9.4-33.9 0L343 405.3c-4.5-4.5-7-10.6-7-17V372c-35.3 27.6-79.7 44-128 44C93.1 416 0 322.9 0 208S93.1 0 208 0s208 93.1 208 208c0 48.3-16.4 92.7-44 128h16.3c6.4 0 12.5 2.5 17 7l99.7 99.7c9.3 9.4 9.3 24.6 0 34zM344 208c0-75.2-60.8-136-136-136S72 132.8 72 208s60.8 136 136 136 136-60.8 136-136z\"},\"child\":[]}]})(props);\n};\nexport function FaSearchPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 192v32c0 6.6-5.4 12-12 12h-56v56c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-56h-56c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h56v-56c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v56h56c6.6 0 12 5.4 12 12zm201 284.7L476.7 505c-9.4 9.4-24.6 9.4-33.9 0L343 405.3c-4.5-4.5-7-10.6-7-17V372c-35.3 27.6-79.7 44-128 44C93.1 416 0 322.9 0 208S93.1 0 208 0s208 93.1 208 208c0 48.3-16.4 92.7-44 128h16.3c6.4 0 12.5 2.5 17 7l99.7 99.7c9.3 9.4 9.3 24.6 0 34zM344 208c0-75.2-60.8-136-136-136S72 132.8 72 208s60.8 136 136 136 136-60.8 136-136z\"},\"child\":[]}]})(props);\n};\nexport function FaSearch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z\"},\"child\":[]}]})(props);\n};\nexport function FaSeedling (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 96H0c0 123.7 100.3 224 224 224v144c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320C288 196.3 187.7 96 64 96zm384-64c-84.2 0-157.4 46.5-195.7 115.2 27.7 30.2 48.2 66.9 59 107.6C424 243.1 512 147.9 512 32h-64z\"},\"child\":[]}]})(props);\n};\nexport function FaServer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 160H32c-17.673 0-32-14.327-32-32V64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm112 248H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm112 248H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaShapes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128,256A128,128,0,1,0,256,384,128,128,0,0,0,128,256Zm379-54.86L400.07,18.29a37.26,37.26,0,0,0-64.14,0L229,201.14C214.76,225.52,232.58,256,261.09,256H474.91C503.42,256,521.24,225.52,507,201.14ZM480,288H320a32,32,0,0,0-32,32V480a32,32,0,0,0,32,32H480a32,32,0,0,0,32-32V320A32,32,0,0,0,480,288Z\"},\"child\":[]}]})(props);\n};\nexport function FaShareAltSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zM304 296c-14.562 0-27.823 5.561-37.783 14.671l-67.958-40.775a56.339 56.339 0 0 0 0-27.793l67.958-40.775C276.177 210.439 289.438 216 304 216c30.928 0 56-25.072 56-56s-25.072-56-56-56-56 25.072-56 56c0 4.797.605 9.453 1.74 13.897l-67.958 40.775C171.823 205.561 158.562 200 144 200c-30.928 0-56 25.072-56 56s25.072 56 56 56c14.562 0 27.823-5.561 37.783-14.671l67.958 40.775a56.088 56.088 0 0 0-1.74 13.897c0 30.928 25.072 56 56 56s56-25.072 56-56C360 321.072 334.928 296 304 296z\"},\"child\":[]}]})(props);\n};\nexport function FaShareAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 320c-22.608 0-43.387 7.819-59.79 20.895l-102.486-64.054a96.551 96.551 0 0 0 0-41.683l102.486-64.054C308.613 184.181 329.392 192 352 192c53.019 0 96-42.981 96-96S405.019 0 352 0s-96 42.981-96 96c0 7.158.79 14.13 2.276 20.841L155.79 180.895C139.387 167.819 118.608 160 96 160c-53.019 0-96 42.981-96 96s42.981 96 96 96c22.608 0 43.387-7.819 59.79-20.895l102.486 64.054A96.301 96.301 0 0 0 256 416c0 53.019 42.981 96 96 96s96-42.981 96-96-42.981-96-96-96z\"},\"child\":[]}]})(props);\n};\nexport function FaShareSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M568.482 177.448L424.479 313.433C409.3 327.768 384 317.14 384 295.985v-71.963c-144.575.97-205.566 35.113-164.775 171.353 4.483 14.973-12.846 26.567-25.006 17.33C155.252 383.105 120 326.488 120 269.339c0-143.937 117.599-172.5 264-173.312V24.012c0-21.174 25.317-31.768 40.479-17.448l144.003 135.988c10.02 9.463 10.028 25.425 0 34.896zM384 379.128V448H64V128h50.916a11.99 11.99 0 0 0 8.648-3.693c14.953-15.568 32.237-27.89 51.014-37.676C185.708 80.83 181.584 64 169.033 64H48C21.49 64 0 85.49 0 112v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48v-88.806c0-8.288-8.197-14.066-16.011-11.302a71.83 71.83 0 0 1-34.189 3.377c-7.27-1.046-13.8 4.514-13.8 11.859z\"},\"child\":[]}]})(props);\n};\nexport function FaShare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M503.691 189.836L327.687 37.851C312.281 24.546 288 35.347 288 56.015v80.053C127.371 137.907 0 170.1 0 322.326c0 61.441 39.581 122.309 83.333 154.132 13.653 9.931 33.111-2.533 28.077-18.631C66.066 312.814 132.917 274.316 288 272.085V360c0 20.7 24.3 31.453 39.687 18.164l176.004-152c11.071-9.562 11.086-26.753 0-36.328z\"},\"child\":[]}]})(props);\n};\nexport function FaShekelSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 168v168c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V168c0-75.11-60.89-136-136-136H24C10.75 32 0 42.74 0 56v408c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V112h112c30.93 0 56 25.07 56 56zM432 32h-48c-8.84 0-16 7.16-16 16v296c0 30.93-25.07 56-56 56H200V176c0-8.84-7.16-16-16-16h-48c-8.84 0-16 7.16-16 16v280c0 13.25 10.75 24 24 24h168c75.11 0 136-60.89 136-136V48c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaShieldAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M466.5 83.7l-192-80a48.15 48.15 0 0 0-36.9 0l-192 80C27.7 91.1 16 108.6 16 128c0 198.5 114.5 335.7 221.5 380.3 11.8 4.9 25.1 4.9 36.9 0C360.1 472.6 496 349.3 496 128c0-19.4-11.7-36.9-29.5-44.3zM256.1 446.3l-.1-381 175.9 73.3c-3.3 151.4-82.1 261.1-175.8 307.7z\"},\"child\":[]}]})(props);\n};\nexport function FaShieldVirus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224,192a16,16,0,1,0,16,16A16,16,0,0,0,224,192ZM466.5,83.68l-192-80A57.4,57.4,0,0,0,256.05,0a57.4,57.4,0,0,0-18.46,3.67l-192,80A47.93,47.93,0,0,0,16,128C16,326.5,130.5,463.72,237.5,508.32a48.09,48.09,0,0,0,36.91,0C360.09,472.61,496,349.3,496,128A48,48,0,0,0,466.5,83.68ZM384,256H371.88c-28.51,0-42.79,34.47-22.63,54.63l8.58,8.57a16,16,0,1,1-22.63,22.63l-8.57-8.58C306.47,313.09,272,327.37,272,355.88V368a16,16,0,0,1-32,0V355.88c0-28.51-34.47-42.79-54.63-22.63l-8.57,8.58a16,16,0,0,1-22.63-22.63l8.58-8.57c20.16-20.16,5.88-54.63-22.63-54.63H128a16,16,0,0,1,0-32h12.12c28.51,0,42.79-34.47,22.63-54.63l-8.58-8.57a16,16,0,0,1,22.63-22.63l8.57,8.58c20.16,20.16,54.63,5.88,54.63-22.63V112a16,16,0,0,1,32,0v12.12c0,28.51,34.47,42.79,54.63,22.63l8.57-8.58a16,16,0,0,1,22.63,22.63l-8.58,8.57C329.09,189.53,343.37,224,371.88,224H384a16,16,0,0,1,0,32Zm-96,0a16,16,0,1,0,16,16A16,16,0,0,0,288,256Z\"},\"child\":[]}]})(props);\n};\nexport function FaShip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496.616 372.639l70.012-70.012c16.899-16.9 9.942-45.771-12.836-53.092L512 236.102V96c0-17.673-14.327-32-32-32h-64V24c0-13.255-10.745-24-24-24H248c-13.255 0-24 10.745-24 24v40h-64c-17.673 0-32 14.327-32 32v140.102l-41.792 13.433c-22.753 7.313-29.754 36.173-12.836 53.092l70.012 70.012C125.828 416.287 85.587 448 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24 61.023 0 107.499-20.61 143.258-59.396C181.677 487.432 216.021 512 256 512h128c39.979 0 74.323-24.568 88.742-59.396C508.495 491.384 554.968 512 616 512c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24-60.817 0-101.542-31.001-119.384-75.361zM192 128h256v87.531l-118.208-37.995a31.995 31.995 0 0 0-19.584 0L192 215.531V128z\"},\"child\":[]}]})(props);\n};\nexport function FaShippingFast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 352h-16V243.9c0-12.7-5.1-24.9-14.1-33.9L494 110.1c-9-9-21.2-14.1-33.9-14.1H416V48c0-26.5-21.5-48-48-48H112C85.5 0 64 21.5 64 48v48H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h272c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H40c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h208c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h208c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H64v128c0 53 43 96 96 96s96-43 96-96h128c0 53 43 96 96 96s96-43 96-96h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM160 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm320 0c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-208H416V144h44.1l99.9 99.9V256z\"},\"child\":[]}]})(props);\n};\nexport function FaShoePrints (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 160h32V32h-32c-35.35 0-64 28.65-64 64s28.65 64 64 64zM0 416c0 35.35 28.65 64 64 64h32V352H64c-35.35 0-64 28.65-64 64zm337.46-128c-34.91 0-76.16 13.12-104.73 32-24.79 16.38-44.52 32-104.73 32v128l57.53 15.97c26.21 7.28 53.01 13.12 80.31 15.05 32.69 2.31 65.6.67 97.58-6.2C472.9 481.3 512 429.22 512 384c0-64-84.18-96-174.54-96zM491.42 7.19C459.44.32 426.53-1.33 393.84.99c-27.3 1.93-54.1 7.77-80.31 15.04L256 32v128c60.2 0 79.94 15.62 104.73 32 28.57 18.88 69.82 32 104.73 32C555.82 224 640 192 640 128c0-45.22-39.1-97.3-148.58-120.81z\"},\"child\":[]}]})(props);\n};\nexport function FaShoppingBag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 160v-32C352 57.42 294.579 0 224 0 153.42 0 96 57.42 96 128v32H0v272c0 44.183 35.817 80 80 80h288c44.183 0 80-35.817 80-80V160h-96zm-192-32c0-35.29 28.71-64 64-64s64 28.71 64 64v32H160v-32zm160 120c-13.255 0-24-10.745-24-24s10.745-24 24-24 24 10.745 24 24-10.745 24-24 24zm-192 0c-13.255 0-24-10.745-24-24s10.745-24 24-24 24 10.745 24 24-10.745 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaShoppingBasket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M576 216v16c0 13.255-10.745 24-24 24h-8l-26.113 182.788C514.509 462.435 494.257 480 470.37 480H105.63c-23.887 0-44.139-17.565-47.518-41.212L32 256h-8c-13.255 0-24-10.745-24-24v-16c0-13.255 10.745-24 24-24h67.341l106.78-146.821c10.395-14.292 30.407-17.453 44.701-7.058 14.293 10.395 17.453 30.408 7.058 44.701L170.477 192h235.046L326.12 82.821c-10.395-14.292-7.234-34.306 7.059-44.701 14.291-10.395 34.306-7.235 44.701 7.058L484.659 192H552c13.255 0 24 10.745 24 24zM312 392V280c0-13.255-10.745-24-24-24s-24 10.745-24 24v112c0 13.255 10.745 24 24 24s24-10.745 24-24zm112 0V280c0-13.255-10.745-24-24-24s-24 10.745-24 24v112c0 13.255 10.745 24 24 24s24-10.745 24-24zm-224 0V280c0-13.255-10.745-24-24-24s-24 10.745-24 24v112c0 13.255 10.745 24 24 24s24-10.745 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaShoppingCart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z\"},\"child\":[]}]})(props);\n};\nexport function FaShower (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304,320a16,16,0,1,0,16,16A16,16,0,0,0,304,320Zm32-96a16,16,0,1,0,16,16A16,16,0,0,0,336,224Zm32,64a16,16,0,1,0-16-16A16,16,0,0,0,368,288Zm-32,32a16,16,0,1,0-16-16A16,16,0,0,0,336,320Zm-32-64a16,16,0,1,0,16,16A16,16,0,0,0,304,256Zm128-32a16,16,0,1,0-16-16A16,16,0,0,0,432,224Zm-48,16a16,16,0,1,0,16-16A16,16,0,0,0,384,240Zm-16-48a16,16,0,1,0,16,16A16,16,0,0,0,368,192Zm96,32a16,16,0,1,0,16,16A16,16,0,0,0,464,224Zm32-32a16,16,0,1,0,16,16A16,16,0,0,0,496,192Zm-64,64a16,16,0,1,0,16,16A16,16,0,0,0,432,256Zm-32,32a16,16,0,1,0,16,16A16,16,0,0,0,400,288Zm-64,64a16,16,0,1,0,16,16A16,16,0,0,0,336,352Zm-32,32a16,16,0,1,0,16,16A16,16,0,0,0,304,384Zm64-64a16,16,0,1,0,16,16A16,16,0,0,0,368,320Zm21.65-218.35-11.3-11.31a16,16,0,0,0-22.63,0L350.05,96A111.19,111.19,0,0,0,272,64c-19.24,0-37.08,5.3-52.9,13.85l-10-10A121.72,121.72,0,0,0,123.44,32C55.49,31.5,0,92.91,0,160.85V464a16,16,0,0,0,16,16H48a16,16,0,0,0,16-16V158.4c0-30.15,21-58.2,51-61.93a58.38,58.38,0,0,1,48.93,16.67l10,10C165.3,138.92,160,156.76,160,176a111.23,111.23,0,0,0,32,78.05l-5.66,5.67a16,16,0,0,0,0,22.62l11.3,11.31a16,16,0,0,0,22.63,0L389.65,124.28A16,16,0,0,0,389.65,101.65Z\"},\"child\":[]}]})(props);\n};\nexport function FaShuttleVan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M628.88 210.65L494.39 49.27A48.01 48.01 0 0 0 457.52 32H32C14.33 32 0 46.33 0 64v288c0 17.67 14.33 32 32 32h32c0 53.02 42.98 96 96 96s96-42.98 96-96h128c0 53.02 42.98 96 96 96s96-42.98 96-96h32c17.67 0 32-14.33 32-32V241.38c0-11.23-3.94-22.1-11.12-30.73zM64 192V96h96v96H64zm96 240c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm160-240h-96V96h96v96zm160 240c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm-96-240V96h66.02l80 96H384z\"},\"child\":[]}]})(props);\n};\nexport function FaSignInAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 448h-84c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h84c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32h-84c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h84c53 0 96 43 96 96v192c0 53-43 96-96 96zm-47-201L201 79c-15-15-41-4.5-41 17v96H24c-13.3 0-24 10.7-24 24v96c0 13.3 10.7 24 24 24h136v96c0 21.5 26 32 41 17l168-168c9.3-9.4 9.3-24.6 0-34z\"},\"child\":[]}]})(props);\n};\nexport function FaSignLanguage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M91.434 483.987c-.307-16.018 13.109-29.129 29.13-29.129h62.293v-5.714H56.993c-16.021 0-29.437-13.111-29.13-29.129C28.16 404.491 40.835 392 56.428 392h126.429v-5.714H29.136c-16.021 0-29.437-13.111-29.13-29.129.297-15.522 12.973-28.013 28.566-28.013h154.286v-5.714H57.707c-16.021 0-29.437-13.111-29.13-29.129.297-15.522 12.973-28.013 28.566-28.013h168.566l-31.085-22.606c-12.762-9.281-15.583-27.149-6.302-39.912 9.281-12.761 27.15-15.582 39.912-6.302l123.361 89.715a34.287 34.287 0 0 1 14.12 27.728v141.136c0 15.91-10.946 29.73-26.433 33.374l-80.471 18.934a137.16 137.16 0 0 1-31.411 3.646H120c-15.593-.001-28.269-12.492-28.566-28.014zm73.249-225.701h36.423l-11.187-8.136c-18.579-13.511-20.313-40.887-3.17-56.536l-13.004-16.7c-9.843-12.641-28.43-15.171-40.88-5.088-12.065 9.771-14.133 27.447-4.553 39.75l36.371 46.71zm283.298-2.103l-5.003-152.452c-.518-15.771-13.722-28.136-29.493-27.619-15.773.518-28.137 13.722-27.619 29.493l1.262 38.415L283.565 11.019c-9.58-12.303-27.223-14.63-39.653-5.328-12.827 9.599-14.929 28.24-5.086 40.881l76.889 98.745-4.509 3.511-94.79-121.734c-9.58-12.303-27.223-14.63-39.653-5.328-12.827 9.599-14.929 28.24-5.086 40.881l94.443 121.288-4.509 3.511-77.675-99.754c-9.58-12.303-27.223-14.63-39.653-5.328-12.827 9.599-14.929 28.24-5.086 40.881l52.053 66.849c12.497-8.257 29.055-8.285 41.69.904l123.36 89.714c10.904 7.93 17.415 20.715 17.415 34.198v16.999l61.064-47.549a34.285 34.285 0 0 0 13.202-28.177z\"},\"child\":[]}]})(props);\n};\nexport function FaSignOutAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M497 273L329 441c-15 15-41 4.5-41-17v-96H152c-13.3 0-24-10.7-24-24v-96c0-13.3 10.7-24 24-24h136V88c0-21.4 25.9-32 41-17l168 168c9.3 9.4 9.3 24.6 0 34zM192 436v-40c0-6.6-5.4-12-12-12H96c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32h84c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12H96c-53 0-96 43-96 96v192c0 53 43 96 96 96h84c6.6 0 12-5.4 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 64H128V16c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16v48H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h48v368c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V128h368c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16zM160 384h320V160H160v224z\"},\"child\":[]}]})(props);\n};\nexport function FaSignal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216 288h-48c-8.84 0-16 7.16-16 16v192c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V304c0-8.84-7.16-16-16-16zM88 384H40c-8.84 0-16 7.16-16 16v96c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16v-96c0-8.84-7.16-16-16-16zm256-192h-48c-8.84 0-16 7.16-16 16v288c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V208c0-8.84-7.16-16-16-16zm128-96h-48c-8.84 0-16 7.16-16 16v384c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V112c0-8.84-7.16-16-16-16zM600 0h-48c-8.84 0-16 7.16-16 16v480c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaSignature (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M623.2 192c-51.8 3.5-125.7 54.7-163.1 71.5-29.1 13.1-54.2 24.4-76.1 24.4-22.6 0-26-16.2-21.3-51.9 1.1-8 11.7-79.2-42.7-76.1-25.1 1.5-64.3 24.8-169.5 126L192 182.2c30.4-75.9-53.2-151.5-129.7-102.8L7.4 116.3C0 121-2.2 130.9 2.5 138.4l17.2 27c4.7 7.5 14.6 9.7 22.1 4.9l58-38.9c18.4-11.7 40.7 7.2 32.7 27.1L34.3 404.1C27.5 421 37 448 64 448c8.3 0 16.5-3.2 22.6-9.4 42.2-42.2 154.7-150.7 211.2-195.8-2.2 28.5-2.1 58.9 20.6 83.8 15.3 16.8 37.3 25.3 65.5 25.3 35.6 0 68-14.6 102.3-30 33-14.8 99-62.6 138.4-65.8 8.5-.7 15.2-7.3 15.2-15.8v-32.1c.2-9.1-7.5-16.8-16.6-16.2z\"},\"child\":[]}]})(props);\n};\nexport function FaSimCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 64v384c0 35.3 28.7 64 64 64h256c35.3 0 64-28.7 64-64V128L256 0H64C28.7 0 0 28.7 0 64zm224 192h-64v-64h64v64zm96 0h-64v-64h32c17.7 0 32 14.3 32 32v32zm-64 128h64v32c0 17.7-14.3 32-32 32h-32v-64zm-96 0h64v64h-64v-64zm-96 0h64v64H96c-17.7 0-32-14.3-32-32v-32zm0-96h256v64H64v-64zm0-64c0-17.7 14.3-32 32-32h32v64H64v-32z\"},\"child\":[]}]})(props);\n};\nexport function FaSink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32,416a96,96,0,0,0,96,96H384a96,96,0,0,0,96-96V384H32ZM496,288H400V256h64a16,16,0,0,0,16-16V224a16,16,0,0,0-16-16H384a32,32,0,0,0-32,32v48H288V96a32,32,0,0,1,64,0v16a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V96A96.16,96.16,0,0,0,300.87,1.86C255.29,10.71,224,53.36,224,99.79V288H160V240a32,32,0,0,0-32-32H48a16,16,0,0,0-16,16v16a16,16,0,0,0,16,16h64v32H16A16,16,0,0,0,0,304v32a16,16,0,0,0,16,16H496a16,16,0,0,0,16-16V304A16,16,0,0,0,496,288Z\"},\"child\":[]}]})(props);\n};\nexport function FaSitemap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 352H32c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32zm-24-80h192v48h48v-48h192v48h48v-57.59c0-21.17-17.23-38.41-38.41-38.41H344v-64h40c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32H256c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h40v64H94.41C73.23 224 56 241.23 56 262.41V320h48v-48zm264 80h-96c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32zm240 0h-96c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaSkating (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 0c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 448c-8.8 0-16 7.2-16 16s-7.2 16-16 16h-96c-8.8 0-16 7.2-16 16s7.2 16 16 16h96c26.5 0 48-21.5 48-48 0-8.8-7.2-16-16-16zm-282.2 8.6c-6.2 6.2-16.4 6.3-22.6 0l-67.9-67.9c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l67.9 67.9c9.4 9.4 21.7 14 34 14s24.6-4.7 33.9-14c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.3-22.7 0zm56.1-179.8l-93.7 93.7c-12.5 12.5-12.5 32.8 0 45.2 6.2 6.2 14.4 9.4 22.6 9.4s16.4-3.1 22.6-9.4l91.9-91.9-30.2-30.2c-5-5-9.4-10.7-13.2-16.8zM128 160h105.5l-20.1 17.2c-13.5 11.5-21.6 28.4-22.3 46.1-.7 17.8 6.1 35.2 18.7 47.7l78.2 78.2V432c0 17.7 14.3 32 32 32s32-14.3 32-32v-89.4c0-12.6-5.1-25-14.1-33.9l-61-61c.5-.4 1.2-.6 1.7-1.1l82.3-82.3c11.5-11.5 14.9-28.6 8.7-43.6-6.2-15-20.7-24.7-37-24.7H128c-17.7 0-32 14.3-32 32s14.3 32 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaSkiingNordic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 96c26.5 0 48-21.5 48-48S362.5 0 336 0s-48 21.5-48 48 21.5 48 48 48zm216 320c-13.2 0-24 10.7-24 24 0 13.2-10.8 24-24 24h-69.5L460 285.6c11.7-4.7 20.1-16.2 20.1-29.6 0-17.7-14.3-32-32-32h-44L378 170.8c-12.5-25.5-35.5-44.2-61.8-50.9L245 98.7c-28.3-6.8-57.8-.5-80.8 17.1l-39.7 30.4c-14 10.7-16.7 30.8-5.9 44.9.7.9 1.7 1.3 2.4 2.1L66.9 464H24c-13.2 0-24 10.7-24 24s10.8 24 24 24h480c39.7 0 72-32.3 72-72 0-13.2-10.8-24-24-24zm-260.5 48h-96.9l43.1-91-22-13c-12.1-7.2-21.9-16.9-29.5-27.8L123.7 464H99.5l52.3-261.4c4.1-1 8.1-2.9 11.7-5.6l39.7-30.4c7.7-5.9 17.4-8 25.3-6.1l14.7 4.4-37.5 87.4c-12.6 29.5-1.3 64 26.3 80.3l85 50.2-25.5 81.2zm110.6 0h-43.6l23.6-75.5c5.9-20.8-2.9-43.1-21.6-54.4L299.3 298l31.3-78.3 20.3 41.4c8 16.3 24.9 26.9 43.1 26.9h33.3l-25.2 176z\"},\"child\":[]}]})(props);\n};\nexport function FaSkiing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 96c26.5 0 48-21.5 48-48S458.5 0 432 0s-48 21.5-48 48 21.5 48 48 48zm73 356.1c-9.4-9.4-24.6-9.4-33.9 0-12.1 12.1-30.5 15.4-45.1 8.7l-135.8-70.2 49.2-73.8c12.7-19 10.2-44.5-6-60.6L293 215.7l-107-53.1c-2.9 19.9 3.4 40 17.7 54.4l75.1 75.2-45.9 68.8L35 258.7c-11.7-6-26.2-1.5-32.3 10.3-6.1 11.8-1.5 26.3 10.3 32.3l391.9 202.5c11.9 5.5 24.5 8.1 37.1 8.1 23.2 0 46-9 63-26 9.3-9.3 9.3-24.5 0-33.8zM120 91.6l-11.5 22.5c14.4 7.3 31.2 4.9 42.8-4.8l47.2 23.4c-.1.1-.1.2-.2.3l114.5 56.8 32.4-13 6.4 19.1c4 12.1 12.6 22 24 27.7l58.1 29c15.9 7.9 35 1.5 42.9-14.3 7.9-15.8 1.5-35-14.3-42.9l-52.1-26.1-17.1-51.2c-8.1-24.2-40.9-56.6-84.5-39.2l-81.2 32.5-62.5-31c.3-14.5-7.2-28.6-20.9-35.6l-11.1 21.7h-.2l-34.4-7c-1.8-.4-3.7.2-5 1.7-1.9 2.2-1.7 5.5.5 7.4l26.2 23z\"},\"child\":[]}]})(props);\n};\nexport function FaSkullCrossbones (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M439.15 453.06L297.17 384l141.99-69.06c7.9-3.95 11.11-13.56 7.15-21.46L432 264.85c-3.95-7.9-13.56-11.11-21.47-7.16L224 348.41 37.47 257.69c-7.9-3.95-17.51-.75-21.47 7.16L1.69 293.48c-3.95 7.9-.75 17.51 7.15 21.46L150.83 384 8.85 453.06c-7.9 3.95-11.11 13.56-7.15 21.47l14.31 28.63c3.95 7.9 13.56 11.11 21.47 7.15L224 419.59l186.53 90.72c7.9 3.95 17.51.75 21.47-7.15l14.31-28.63c3.95-7.91.74-17.52-7.16-21.47zM150 237.28l-5.48 25.87c-2.67 12.62 5.42 24.85 16.45 24.85h126.08c11.03 0 19.12-12.23 16.45-24.85l-5.5-25.87c41.78-22.41 70-62.75 70-109.28C368 57.31 303.53 0 224 0S80 57.31 80 128c0 46.53 28.22 86.87 70 109.28zM280 112c17.65 0 32 14.35 32 32s-14.35 32-32 32-32-14.35-32-32 14.35-32 32-32zm-112 0c17.65 0 32 14.35 32 32s-14.35 32-32 32-32-14.35-32-32 14.35-32 32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaSkull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 0C114.6 0 0 100.3 0 224c0 70.1 36.9 132.6 94.5 173.7 9.6 6.9 15.2 18.1 13.5 29.9l-9.4 66.2c-1.4 9.6 6 18.2 15.7 18.2H192v-56c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v56h64v-56c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v56h77.7c9.7 0 17.1-8.6 15.7-18.2l-9.4-66.2c-1.7-11.7 3.8-23 13.5-29.9C475.1 356.6 512 294.1 512 224 512 100.3 397.4 0 256 0zm-96 320c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm192 0c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z\"},\"child\":[]}]})(props);\n};\nexport function FaSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M594.53 508.63L6.18 53.9c-6.97-5.42-8.23-15.47-2.81-22.45L23.01 6.18C28.43-.8 38.49-2.06 45.47 3.37L633.82 458.1c6.97 5.42 8.23 15.47 2.81 22.45l-19.64 25.27c-5.42 6.98-15.48 8.23-22.46 2.81z\"},\"child\":[]}]})(props);\n};\nexport function FaSleigh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M612.7 350.7l-9.3-7.4c-6.9-5.5-17-4.4-22.5 2.5l-10 12.5c-5.5 6.9-4.4 17 2.5 22.5l9.3 7.4c5.9 4.7 9.2 11.7 9.2 19.2 0 13.6-11 24.6-24.6 24.6H48c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h516c39 0 73.7-29.3 75.9-68.3 1.4-23.8-8.7-46.3-27.2-61zM32 224c0 59.6 40.9 109.2 96 123.5V400h64v-48h192v48h64v-48c53 0 96-43 96-96v-96c17.7 0 32-14.3 32-32s-14.3-32-32-32h-96v64c0 35.3-28.7 64-64 64h-20.7c-65.8 0-125.9-37.2-155.3-96-29.4-58.8-89.6-96-155.3-96H32C14.3 32 0 46.3 0 64s14.3 32 32 32v128z\"},\"child\":[]}]})(props);\n};\nexport function FaSlidersH (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 384H160v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h80v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h336c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160h-80v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h336v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h80c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160H288V48c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h208v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaSmileBeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM112 223.4c3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.3 7.4-15.8 4-15.1-4.5zm250.8 122.8C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.5-16.3 11-36.7 24.6-20.5 22.4 26.9 55.2 42.2 90.2 42.2s67.8-15.4 90.2-42.2c13.6-16.2 38.1 4.3 24.6 20.5zm6.2-118.3l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.1 7.3-15.6 4-14.9-4.5 3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.6 8.6-11 11.9-15.1 4.5z\"},\"child\":[]}]})(props);\n};\nexport function FaSmileWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 256c0 137 111 248 248 248s248-111 248-248S385 8 248 8 0 119 0 256zm200-48c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm158.5 16.5c-14.8-13.2-46.2-13.2-61 0L288 233c-8.3 7.4-21.6.4-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S384 197 388 222.2c1.7 11.1-11.4 18.3-19.8 10.8l-9.7-8.5zM157.8 325.8C180.2 352.7 213 368 248 368s67.8-15.4 90.2-42.2c13.6-16.2 38.1 4.2 24.6 20.5C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.5-16.3 11.2-36.7 24.6-20.4z\"},\"child\":[]}]})(props);\n};\nexport function FaSmile (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm194.8 170.2C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.6-16.3 11-36.7 24.6-20.5 22.4 26.9 55.2 42.2 90.2 42.2s67.8-15.4 90.2-42.2c13.4-16.2 38.1 4.2 24.6 20.5z\"},\"child\":[]}]})(props);\n};\nexport function FaSmog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 368H80c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h544c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm-480 96H16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h128c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm416 0H224c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h336c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zM144 288h156.1c22.5 19.7 51.6 32 83.9 32s61.3-12.3 83.9-32H528c61.9 0 112-50.1 112-112S589.9 64 528 64c-18 0-34.7 4.6-49.7 12.1C454 31 406.8 0 352 0c-41 0-77.8 17.3-104 44.8C221.8 17.3 185 0 144 0 64.5 0 0 64.5 0 144s64.5 144 144 144z\"},\"child\":[]}]})(props);\n};\nexport function FaSmokingBan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 304c0 8.8 7.2 16 16 16h117.5l-96-96H112c-8.8 0-16 7.2-16 16v64zM256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm0 448c-105.9 0-192-86.1-192-192 0-41.4 13.3-79.7 35.7-111.1l267.4 267.4C335.7 434.7 297.4 448 256 448zm45.2-192H384v32h-50.8l-32-32zm111.1 111.1L365.2 320H400c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16H269.2L144.9 99.7C176.3 77.3 214.6 64 256 64c105.9 0 192 86.1 192 192 0 41.4-13.3 79.7-35.7 111.1zM320.6 128c-15.6 0-28.6-11.2-31.4-25.9-.7-3.6-4-6.1-7.7-6.1h-16.2c-5 0-8.7 4.5-8 9.4 4.6 30.9 31.2 54.6 63.3 54.6 15.6 0 28.6 11.2 31.4 25.9.7 3.6 4 6.1 7.7 6.1h16.2c5 0 8.7-4.5 8-9.4-4.6-30.9-31.2-54.6-63.3-54.6z\"},\"child\":[]}]})(props);\n};\nexport function FaSmoking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M632 352h-48c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V360c0-4.4-3.6-8-8-8zM553.3 87.1c-5.7-3.8-9.3-10-9.3-16.8V8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v62.3c0 22 10.2 43.4 28.6 55.4 42.2 27.3 67.4 73.8 67.4 124V280c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-30.3c0-65.5-32.4-126.2-86.7-162.6zM432 352H48c-26.5 0-48 21.5-48 48v64c0 26.5 21.5 48 48 48h384c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16zm-32 112H224v-64h176v64zm87.7-322.4C463.8 125 448 99.3 448 70.3V8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v66.4c0 43.7 24.6 81.6 60.3 106.7 22.4 15.7 35.7 41.2 35.7 68.6V280c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-30.3c0-43.3-21-83.4-56.3-108.1zM536 352h-48c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V360c0-4.4-3.6-8-8-8z\"},\"child\":[]}]})(props);\n};\nexport function FaSms (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C114.6 32 0 125.1 0 240c0 49.6 21.4 95 57 130.7C44.5 421.1 2.7 466 2.2 466.5c-2.2 2.3-2.8 5.7-1.5 8.7 1.3 3 4.1 4.8 7.3 4.8 66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 141.4 0 256-93.1 256-208S397.4 32 256 32zM128.2 304H116c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h12.3c6 0 10.4-3.5 10.4-6.6 0-1.3-.8-2.7-2.1-3.8l-21.9-18.8c-8.5-7.2-13.3-17.5-13.3-28.1 0-21.3 19-38.6 42.4-38.6H156c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8h-12.3c-6 0-10.4 3.5-10.4 6.6 0 1.3.8 2.7 2.1 3.8l21.9 18.8c8.5 7.2 13.3 17.5 13.3 28.1.1 21.3-19 38.6-42.4 38.6zm191.8-8c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8v-68.2l-24.8 55.8c-2.9 5.9-11.4 5.9-14.3 0L224 227.8V296c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V192c0-8.8 7.2-16 16-16h16c6.1 0 11.6 3.4 14.3 8.8l17.7 35.4 17.7-35.4c2.7-5.4 8.3-8.8 14.3-8.8h16c8.8 0 16 7.2 16 16v104zm48.3 8H356c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h12.3c6 0 10.4-3.5 10.4-6.6 0-1.3-.8-2.7-2.1-3.8l-21.9-18.8c-8.5-7.2-13.3-17.5-13.3-28.1 0-21.3 19-38.6 42.4-38.6H396c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8h-12.3c-6 0-10.4 3.5-10.4 6.6 0 1.3.8 2.7 2.1 3.8l21.9 18.8c8.5 7.2 13.3 17.5 13.3 28.1.1 21.3-18.9 38.6-42.3 38.6z\"},\"child\":[]}]})(props);\n};\nexport function FaSnowboarding (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 96c26.5 0 48-21.5 48-48S458.5 0 432 0s-48 21.5-48 48 21.5 48 48 48zm28.8 153.6c5.8 4.3 12.5 6.4 19.2 6.4 9.7 0 19.3-4.4 25.6-12.8 10.6-14.1 7.8-34.2-6.4-44.8l-111.4-83.5c-13.8-10.3-29.1-18.4-45.4-23.8l-63.7-21.2-26.1-52.1C244.7 2 225.5-4.4 209.7 3.5c-15.8 7.9-22.2 27.1-14.3 42.9l29.1 58.1c5.7 11.4 15.6 19.9 27.7 24l16.4 5.5-41.2 20.6c-21.8 10.9-35.4 32.8-35.4 57.2v53.1l-74.1 24.7c-16.8 5.6-25.8 23.7-20.2 40.5 1.7 5.2 4.9 9.4 8.7 12.9l-38.7-14.1c-9.7-3.5-17.4-10.6-21.8-20-5.6-12-19.9-17.2-31.9-11.6s-17.2 19.9-11.6 31.9c9.8 21 27.1 36.9 48.9 44.8l364.8 132.7c9.7 3.5 19.7 5.3 29.7 5.3 12.5 0 24.9-2.7 36.5-8.2 12-5.6 17.2-19.9 11.6-31.9S474 454.7 462 460.3c-9.3 4.4-19.8 4.8-29.5 1.3l-90.8-33.1c8.7-4.1 15.6-11.8 17.8-21.9l21.9-102c3.9-18.2-3.2-37.2-18.1-48.4l-52-39 66-30.5 83.5 62.9zm-144.4 51.7l-19.7 92c-1.5 7.1-.1 13.9 2.8 20l-169.4-61.6c2.7-.2 5.4-.4 8-1.3l85-28.4c19.6-6.5 32.8-24.8 32.8-45.5V256l60.5 45.3z\"},\"child\":[]}]})(props);\n};\nexport function FaSnowflake (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.3 345.2l-33.8-19.5 26-7c8.2-2.2 13.1-10.7 10.9-18.9l-4-14.9c-2.2-8.2-10.7-13.1-18.9-10.9l-70.8 19-63.9-37 63.8-36.9 70.8 19c8.2 2.2 16.7-2.7 18.9-10.9l4-14.9c2.2-8.2-2.7-16.7-10.9-18.9l-26-7 33.8-19.5c7.4-4.3 9.9-13.7 5.7-21.1L430.4 119c-4.3-7.4-13.7-9.9-21.1-5.7l-33.8 19.5 7-26c2.2-8.2-2.7-16.7-10.9-18.9l-14.9-4c-8.2-2.2-16.7 2.7-18.9 10.9l-19 70.8-62.8 36.2v-77.5l53.7-53.7c6.2-6.2 6.2-16.4 0-22.6l-11.3-11.3c-6.2-6.2-16.4-6.2-22.6 0L256 56.4V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v40.4l-19.7-19.7c-6.2-6.2-16.4-6.2-22.6 0L138.3 48c-6.3 6.2-6.3 16.4 0 22.6l53.7 53.7v77.5l-62.8-36.2-19-70.8c-2.2-8.2-10.7-13.1-18.9-10.9l-14.9 4c-8.2 2.2-13.1 10.7-10.9 18.9l7 26-33.8-19.5c-7.4-4.3-16.8-1.7-21.1 5.7L2.1 145.7c-4.3 7.4-1.7 16.8 5.7 21.1l33.8 19.5-26 7c-8.3 2.2-13.2 10.7-11 19l4 14.9c2.2 8.2 10.7 13.1 18.9 10.9l70.8-19 63.8 36.9-63.8 36.9-70.8-19c-8.2-2.2-16.7 2.7-18.9 10.9l-4 14.9c-2.2 8.2 2.7 16.7 10.9 18.9l26 7-33.8 19.6c-7.4 4.3-9.9 13.7-5.7 21.1l15.5 26.8c4.3 7.4 13.7 9.9 21.1 5.7l33.8-19.5-7 26c-2.2 8.2 2.7 16.7 10.9 18.9l14.9 4c8.2 2.2 16.7-2.7 18.9-10.9l19-70.8 62.8-36.2v77.5l-53.7 53.7c-6.3 6.2-6.3 16.4 0 22.6l11.3 11.3c6.2 6.2 16.4 6.2 22.6 0l19.7-19.7V496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-40.4l19.7 19.7c6.2 6.2 16.4 6.2 22.6 0l11.3-11.3c6.2-6.2 6.2-16.4 0-22.6L256 387.7v-77.5l62.8 36.2 19 70.8c2.2 8.2 10.7 13.1 18.9 10.9l14.9-4c8.2-2.2 13.1-10.7 10.9-18.9l-7-26 33.8 19.5c7.4 4.3 16.8 1.7 21.1-5.7l15.5-26.8c4.3-7.3 1.8-16.8-5.6-21z\"},\"child\":[]}]})(props);\n};\nexport function FaSnowman (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M510.9 152.3l-5.9-14.5c-3.3-8-12.6-11.9-20.8-8.7L456 140.6v-29c0-8.6-7.2-15.6-16-15.6h-16c-8.8 0-16 7-16 15.6v46.9c0 .5.3 1 .3 1.5l-56.4 23c-5.9-10-13.3-18.9-22-26.6 13.6-16.6 22-37.4 22-60.5 0-53-43-96-96-96s-96 43-96 96c0 23.1 8.5 43.9 22 60.5-8.7 7.7-16 16.6-22 26.6l-56.4-23c.1-.5.3-1 .3-1.5v-46.9C104 103 96.8 96 88 96H72c-8.8 0-16 7-16 15.6v29l-28.1-11.5c-8.2-3.2-17.5.7-20.8 8.7l-5.9 14.5c-3.3 8 .7 17.1 8.9 20.3l135.2 55.2c-.4 4-1.2 8-1.2 12.2 0 10.1 1.7 19.6 4.2 28.9C120.9 296.4 104 334.2 104 376c0 54 28.4 100.9 70.8 127.8 9.3 5.9 20.3 8.2 31.3 8.2h99.2c13.3 0 26.3-4.1 37.2-11.7 46.5-32.3 74.4-89.4 62.9-152.6-5.5-30.2-20.5-57.6-41.6-79 2.5-9.2 4.2-18.7 4.2-28.7 0-4.2-.8-8.1-1.2-12.2L502 172.6c8.1-3.1 12.1-12.2 8.9-20.3zM224 96c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm32 272c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-88s-16-23.2-16-32 7.2-16 16-16 16 7.2 16 16-16 32-16 32zm32-56c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaSnowplow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M120 376c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm80 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm80 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm80 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm238.6 49.4c-14.5-14.5-22.6-34.1-22.6-54.6V269.2c0-20.5 8.1-40.1 22.6-54.6l36.7-36.7c6.2-6.2 6.2-16.4 0-22.6l-22.6-22.6c-6.2-6.2-16.4-6.2-22.6 0l-36.7 36.7c-26.5 26.5-41.4 62.4-41.4 99.9V288h-64v-50.9c0-8.7-1.8-17.2-5.2-25.2L364.5 29.1C356.9 11.4 339.6 0 320.3 0H176c-26.5 0-48 21.5-48 48v112h-16c-26.5 0-48 21.5-48 48v91.2C26.3 317.2 0 355.4 0 400c0 61.9 50.1 112 112 112h256c61.9 0 112-50.1 112-112 0-17.3-4.2-33.4-11.2-48H512v18.7c0 37.5 14.9 73.4 41.4 99.9l36.7 36.7c6.2 6.2 16.4 6.2 22.6 0l22.6-22.6c6.2-6.2 6.2-16.4 0-22.6l-36.7-36.7zM192 64h117.8l68.6 160H256l-64-64V64zm176 384H112c-26.5 0-48-21.5-48-48s21.5-48 48-48h256c26.5 0 48 21.5 48 48s-21.5 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaSoap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416,192a95.42,95.42,0,0,1-30.94,70.21A95.8,95.8,0,0,1,352,448H160a96,96,0,0,1,0-192h88.91A95.3,95.3,0,0,1,224,192H96A96,96,0,0,0,0,288V416a96,96,0,0,0,96,96H416a96,96,0,0,0,96-96V288A96,96,0,0,0,416,192Zm-96,64a64,64,0,1,0-64-64A64,64,0,0,0,320,256ZM208,96a48,48,0,1,0-48-48A48,48,0,0,0,208,96ZM384,64a32,32,0,1,0-32-32A32,32,0,0,0,384,64ZM160,288a64,64,0,0,0,0,128H352a64,64,0,0,0,0-128Z\"},\"child\":[]}]})(props);\n};\nexport function FaSocks (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M214.66 311.01L288 256V96H128v176l-86.65 64.61c-39.4 29.56-53.86 84.42-29.21 127.06C30.39 495.25 63.27 512 96.08 512c20.03 0 40.25-6.25 57.52-19.2l21.86-16.39c-29.85-55.38-13.54-125.84 39.2-165.4zM288 32c0-11.05 3.07-21.3 8.02-30.38C293.4.92 290.85 0 288 0H160c-17.67 0-32 14.33-32 32v32h160V32zM480 0H352c-17.67 0-32 14.33-32 32v32h192V32c0-17.67-14.33-32-32-32zM320 272l-86.13 64.61c-39.4 29.56-53.86 84.42-29.21 127.06 18.25 31.58 50.61 48.33 83.42 48.33 20.03 0 40.25-6.25 57.52-19.2l115.2-86.4A127.997 127.997 0 0 0 512 304V96H320v176z\"},\"child\":[]}]})(props);\n};\nexport function FaSolarPanel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M431.98 448.01l-47.97.05V416h-128v32.21l-47.98.05c-8.82.01-15.97 7.16-15.98 15.99l-.05 31.73c-.01 8.85 7.17 16.03 16.02 16.02l223.96-.26c8.82-.01 15.97-7.16 15.98-15.98l.04-31.73c.01-8.85-7.17-16.03-16.02-16.02zM585.2 26.74C582.58 11.31 568.99 0 553.06 0H86.93C71 0 57.41 11.31 54.79 26.74-3.32 369.16.04 348.08.03 352c-.03 17.32 14.29 32 32.6 32h574.74c18.23 0 32.51-14.56 32.59-31.79.02-4.08 3.35 16.95-54.76-325.47zM259.83 64h120.33l9.77 96H250.06l9.77-96zm-75.17 256H71.09L90.1 208h105.97l-11.41 112zm16.29-160H98.24l16.29-96h96.19l-9.77 96zm32.82 160l11.4-112h149.65l11.4 112H233.77zm195.5-256h96.19l16.29 96H439.04l-9.77-96zm26.06 256l-11.4-112H549.9l19.01 112H455.33z\"},\"child\":[]}]})(props);\n};\nexport function FaSortAlphaDownAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm112-128h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 65.63V48a16 16 0 0 0-16-16H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 190.37V208a16 16 0 0 0 16 16zm159.06 234.62l-59.27-160A16 16 0 0 0 372.72 288h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 480h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 480H432a16 16 0 0 0 15.06-21.38zM335.61 400L352 352l16.39 48z\"},\"child\":[]}]})(props);\n};\nexport function FaSortAlphaDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm240-64H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 446.37V464a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 321.63V304a16 16 0 0 0-16-16zm31.06-85.38l-59.27-160A16 16 0 0 0 372.72 32h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 224h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 224H432a16 16 0 0 0 15.06-21.38zM335.61 144L352 96l16.39 48z\"},\"child\":[]}]})(props);\n};\nexport function FaSortAlphaUpAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160zm272 64h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 65.63V48a16 16 0 0 0-16-16H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 190.37V208a16 16 0 0 0 16 16zm159.06 234.62l-59.27-160A16 16 0 0 0 372.72 288h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 480h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 480H432a16 16 0 0 0 15.06-21.38zM335.61 400L352 352l16.39 48z\"},\"child\":[]}]})(props);\n};\nexport function FaSortAlphaUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160zm400 128H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 446.37V464a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 321.63V304a16 16 0 0 0-16-16zm31.06-85.38l-59.27-160A16 16 0 0 0 372.72 32h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 224h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 224H432a16 16 0 0 0 15.06-21.38zM335.61 144L352 96l16.39 48z\"},\"child\":[]}]})(props);\n};\nexport function FaSortAmountDownAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 96h64a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-64a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0 128h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm256 192H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-256-64h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm-64 0h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.37 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352z\"},\"child\":[]}]})(props);\n};\nexport function FaSortAmountDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 416h-64a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-128-64h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.37 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm256-192H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-64 128H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM496 32H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaSortAmountUpAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 96h64a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-64a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0 128h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm256 192H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-256-64h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zM16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.39-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160z\"},\"child\":[]}]})(props);\n};\nexport function FaSortAmountUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 416h-64a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.77 160 16 160zm416 0H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-64 128H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM496 32H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaSortDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41z\"},\"child\":[]}]})(props);\n};\nexport function FaSortNumericDownAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm224 64h-16V304a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 304 352h16v64h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM330.17 34.91a79 79 0 0 0-55 54.17c-14.27 51.05 21.19 97.77 68.83 102.53a84.07 84.07 0 0 1-20.85 12.91c-7.57 3.4-10.8 12.47-8.18 20.34l9.9 20c2.87 8.63 12.53 13.49 20.9 9.91 58-24.77 86.25-61.61 86.25-132V112c-.02-51.21-48.4-91.34-101.85-77.09zM352 132a20 20 0 1 1 20-20 20 20 0 0 1-20 20z\"},\"child\":[]}]})(props);\n};\nexport function FaSortNumericDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 96h16v64h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-16V48a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 304 96zm26.15 162.91a79 79 0 0 0-55 54.17c-14.25 51.05 21.21 97.77 68.85 102.53a84.07 84.07 0 0 1-20.85 12.91c-7.57 3.4-10.8 12.47-8.18 20.34l9.9 20c2.87 8.63 12.53 13.49 20.9 9.91 58-24.76 86.25-61.61 86.25-132V336c-.02-51.21-48.4-91.34-101.85-77.09zM352 356a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm-176-4h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352z\"},\"child\":[]}]})(props);\n};\nexport function FaSortNumericUpAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M107.31 36.69a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31zM400 416h-16V304a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 304 352h16v64h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM330.17 34.91a79 79 0 0 0-55 54.17c-14.27 51.05 21.19 97.77 68.83 102.53a84.07 84.07 0 0 1-20.85 12.91c-7.57 3.4-10.8 12.47-8.18 20.34l9.9 20c2.87 8.63 12.53 13.49 20.9 9.91 58-24.77 86.25-61.61 86.25-132V112c-.02-51.21-48.4-91.34-101.85-77.09zM352 132a20 20 0 1 1 20-20 20 20 0 0 1-20 20z\"},\"child\":[]}]})(props);\n};\nexport function FaSortNumericUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M330.17 258.91a79 79 0 0 0-55 54.17c-14.27 51.05 21.19 97.77 68.83 102.53a84.07 84.07 0 0 1-20.85 12.91c-7.57 3.4-10.8 12.47-8.18 20.34l9.9 20c2.87 8.63 12.53 13.49 20.9 9.91 58-24.76 86.25-61.61 86.25-132V336c-.02-51.21-48.4-91.34-101.85-77.09zM352 356a20 20 0 1 1 20-20 20 20 0 0 1-20 20zM304 96h16v64h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-16V48a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 304 96zM107.31 36.69a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31z\"},\"child\":[]}]})(props);\n};\nexport function FaSortUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M279 224H41c-21.4 0-32.1-25.9-17-41L143 64c9.4-9.4 24.6-9.4 33.9 0l119 119c15.2 15.1 4.5 41-16.9 41z\"},\"child\":[]}]})(props);\n};\nexport function FaSort (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z\"},\"child\":[]}]})(props);\n};\nexport function FaSpa (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M568.25 192c-29.04.13-135.01 6.16-213.84 83-33.12 29.63-53.36 63.3-66.41 94.86-13.05-31.56-33.29-65.23-66.41-94.86-78.83-76.84-184.8-82.87-213.84-83-4.41-.02-7.79 3.4-7.75 7.82.23 27.92 7.14 126.14 88.77 199.3C172.79 480.94 256 480 288 480s115.19.95 199.23-80.88c81.64-73.17 88.54-171.38 88.77-199.3.04-4.42-3.34-7.84-7.75-7.82zM287.98 302.6c12.82-18.85 27.6-35.78 44.09-50.52 19.09-18.61 39.58-33.3 60.26-45.18-16.44-70.5-51.72-133.05-96.73-172.22-4.11-3.58-11.02-3.58-15.14 0-44.99 39.14-80.27 101.63-96.74 172.07 20.37 11.7 40.5 26.14 59.22 44.39a282.768 282.768 0 0 1 45.04 51.46z\"},\"child\":[]}]})(props);\n};\nexport function FaSpaceShuttle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M592.604 208.244C559.735 192.836 515.777 184 472 184H186.327c-4.952-6.555-10.585-11.978-16.72-16H376C229.157 137.747 219.403 32 96.003 32H96v128H80V32c-26.51 0-48 28.654-48 64v64c-23.197 0-32 10.032-32 24v40c0 13.983 8.819 24 32 24v16c-23.197 0-32 10.032-32 24v40c0 13.983 8.819 24 32 24v64c0 35.346 21.49 64 48 64V352h16v128h.003c123.4 0 133.154-105.747 279.997-136H169.606c6.135-4.022 11.768-9.445 16.72-16H472c43.777 0 87.735-8.836 120.604-24.244C622.282 289.845 640 271.992 640 256s-17.718-33.845-47.396-47.756zM488 296a8 8 0 0 1-8-8v-64a8 8 0 0 1 8-8c31.909 0 31.942 80 0 80z\"},\"child\":[]}]})(props);\n};\nexport function FaSpellCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 256h91.36c43.2 0 82-32.2 84.51-75.34a79.82 79.82 0 0 0-25.26-63.07 79.81 79.81 0 0 0 9.06-44.91C427.9 30.57 389.3 0 347 0h-75a16 16 0 0 0-16 16v224a16 16 0 0 0 16 16zm40-200h40a24 24 0 0 1 0 48h-40zm0 96h56a24 24 0 0 1 0 48h-56zM155.12 22.25A32 32 0 0 0 124.64 0H99.36a32 32 0 0 0-30.48 22.25L.59 235.73A16 16 0 0 0 16 256h24.93a16 16 0 0 0 15.42-11.73L68.29 208h87.42l11.94 36.27A16 16 0 0 0 183.07 256H208a16 16 0 0 0 15.42-20.27zM89.37 144L112 75.3l22.63 68.7zm482 132.48l-45.21-45.3a15.88 15.88 0 0 0-22.59 0l-151.5 151.5-55.41-55.5a15.88 15.88 0 0 0-22.59 0l-45.3 45.3a16 16 0 0 0 0 22.59l112 112.21a15.89 15.89 0 0 0 22.6 0l208-208.21a16 16 0 0 0-.02-22.59z\"},\"child\":[]}]})(props);\n};\nexport function FaSpider (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M151.17 167.35L177.1 176h4.67l5.22-26.12c.72-3.58 1.8-7.58 3.21-11.79l-20.29-40.58 23.8-71.39c2.79-8.38-1.73-17.44-10.12-20.24L168.42.82c-8.38-2.8-17.45 1.73-20.24 10.12l-25.89 77.68a32.04 32.04 0 0 0 1.73 24.43l27.15 54.3zm422.14 182.03l-52.75-79.12a32.002 32.002 0 0 0-26.62-14.25H416l68.99-24.36a32.03 32.03 0 0 0 16.51-12.61l53.6-80.41c4.9-7.35 2.91-17.29-4.44-22.19l-13.31-8.88c-7.35-4.9-17.29-2.91-22.19 4.44l-50.56 75.83L404.1 208H368l-10.37-51.85C355.44 145.18 340.26 96 288 96c-52.26 0-67.44 49.18-69.63 60.15L208 208h-36.1l-60.49-20.17L60.84 112c-4.9-7.35-14.83-9.34-22.19-4.44l-13.31 8.88c-7.35 4.9-9.34 14.83-4.44 22.19l53.6 80.41a32.03 32.03 0 0 0 16.51 12.61L160 256H82.06a32.02 32.02 0 0 0-26.63 14.25L2.69 349.38c-4.9 7.35-2.92 17.29 4.44 22.19l13.31 8.88c7.35 4.9 17.29 2.91 22.19-4.44l48-72h47.06l-60.83 97.33A31.988 31.988 0 0 0 72 418.3V496c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-73.11l74.08-118.53c-1.01 14.05-2.08 28.11-2.08 42.21C192 399.64 232.76 448 288 448s96-48.36 96-101.43c0-14.1-1.08-28.16-2.08-42.21L456 422.89V496c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-77.71c0-6-1.69-11.88-4.86-16.96L438.31 304h47.06l48 72c4.9 7.35 14.84 9.34 22.19 4.44l13.31-8.88c7.36-4.9 9.34-14.83 4.44-22.18zM406.09 97.51l-20.29 40.58c1.41 4.21 2.49 8.21 3.21 11.79l5.22 26.12h4.67l25.93-8.65 27.15-54.3a31.995 31.995 0 0 0 1.73-24.43l-25.89-77.68C425.03 2.56 415.96-1.98 407.58.82l-15.17 5.06c-8.38 2.8-12.91 11.86-10.12 20.24l23.8 71.39z\"},\"child\":[]}]})(props);\n};\nexport function FaSpinner (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaSplotch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M472.29 195.89l-67.06-22.95c-19.28-6.6-33.54-20.92-38.14-38.3L351.1 74.19c-11.58-43.77-76.57-57.13-109.98-22.62l-46.14 47.67c-13.26 13.71-33.54 20.93-54.2 19.31l-71.88-5.62c-52.05-4.07-86.93 44.88-59.03 82.83l38.54 52.42c11.08 15.07 12.82 33.86 4.64 50.24L24.62 355.4c-20.59 41.25 22.84 84.87 73.49 73.81l69.96-15.28c20.11-4.39 41.45 0 57.07 11.73l54.32 40.83c39.32 29.56 101.04 7.57 104.45-37.22l4.7-61.86c1.35-17.79 12.8-33.86 30.63-42.99l62-31.74c44.88-22.96 39.59-80.17-8.95-96.79z\"},\"child\":[]}]})(props);\n};\nexport function FaSprayCan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 32c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v96h128V32zm256 96c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm-256 32H96c-53.02 0-96 42.98-96 96v224c0 17.67 14.33 32 32 32h256c17.67 0 32-14.33 32-32V256c0-53.02-42.98-96-96-96zm-64 256c-44.18 0-80-35.82-80-80s35.82-80 80-80 80 35.82 80 80-35.82 80-80 80zM480 96c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm-96 32c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm-96-96c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm96 0c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm96 192c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaSquareFull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 512H0V0h512v512z\"},\"child\":[]}]})(props);\n};\nexport function FaSquareRootAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M571.31 251.31l-22.62-22.62c-6.25-6.25-16.38-6.25-22.63 0L480 274.75l-46.06-46.06c-6.25-6.25-16.38-6.25-22.63 0l-22.62 22.62c-6.25 6.25-6.25 16.38 0 22.63L434.75 320l-46.06 46.06c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L480 365.25l46.06 46.06c6.25 6.25 16.38 6.25 22.63 0l22.62-22.62c6.25-6.25 6.25-16.38 0-22.63L525.25 320l46.06-46.06c6.25-6.25 6.25-16.38 0-22.63zM552 0H307.65c-14.54 0-27.26 9.8-30.95 23.87l-84.79 322.8-58.41-106.1A32.008 32.008 0 0 0 105.47 224H24c-13.25 0-24 10.74-24 24v48c0 13.25 10.75 24 24 24h43.62l88.88 163.73C168.99 503.5 186.3 512 204.94 512c17.27 0 44.44-9 54.28-41.48L357.03 96H552c13.25 0 24-10.75 24-24V24c0-13.26-10.75-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaStamp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 512h448v-64H32v64zm384-256h-66.56c-16.26 0-29.44-13.18-29.44-29.44v-9.46c0-27.37 8.88-53.41 21.46-77.72 9.11-17.61 12.9-38.39 9.05-60.42-6.77-38.78-38.47-70.7-77.26-77.45C212.62-9.04 160 37.33 160 96c0 14.16 3.12 27.54 8.69 39.58C182.02 164.43 192 194.7 192 226.49v.07c0 16.26-13.18 29.44-29.44 29.44H96c-53.02 0-96 42.98-96 96v32c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32v-32c0-53.02-42.98-96-96-96z\"},\"child\":[]}]})(props);\n};\nexport function FaStarAndCrescent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M340.47 466.36c-1.45 0-6.89.46-9.18.46-116.25 0-210.82-94.57-210.82-210.82S215.04 45.18 331.29 45.18c2.32 0 7.7.46 9.18.46 7.13 0 13.33-5.03 14.75-12.07 1.46-7.25-2.55-14.49-9.47-17.09C316.58 5.54 286.39 0 256 0 114.84 0 0 114.84 0 256s114.84 256 256 256c30.23 0 60.28-5.49 89.32-16.32 5.96-2.02 10.28-7.64 10.28-14.26 0-8.09-6.39-15.06-15.13-15.06zm162.99-252.5l-76.38-11.1-34.16-69.21c-1.83-3.7-5.38-5.55-8.93-5.55s-7.1 1.85-8.93 5.55l-34.16 69.21-76.38 11.1c-8.17 1.18-11.43 11.22-5.52 16.99l55.27 53.87-13.05 76.07c-1.11 6.44 4.01 11.66 9.81 11.66 1.53 0 3.11-.36 4.64-1.17L384 335.37l68.31 35.91c1.53.8 3.11 1.17 4.64 1.17 5.8 0 10.92-5.23 9.81-11.66l-13.05-76.07 55.27-53.87c5.91-5.77 2.65-15.81-5.52-16.99z\"},\"child\":[]}]})(props);\n};\nexport function FaStarHalfAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 536 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M508.55 171.51L362.18 150.2 296.77 17.81C290.89 5.98 279.42 0 267.95 0c-11.4 0-22.79 5.9-28.69 17.81l-65.43 132.38-146.38 21.29c-26.25 3.8-36.77 36.09-17.74 54.59l105.89 103-25.06 145.48C86.98 495.33 103.57 512 122.15 512c4.93 0 10-1.17 14.87-3.75l130.95-68.68 130.94 68.7c4.86 2.55 9.92 3.71 14.83 3.71 18.6 0 35.22-16.61 31.66-37.4l-25.03-145.49 105.91-102.98c19.04-18.5 8.52-50.8-17.73-54.6zm-121.74 123.2l-18.12 17.62 4.28 24.88 19.52 113.45-102.13-53.59-22.38-11.74.03-317.19 51.03 103.29 11.18 22.63 25.01 3.64 114.23 16.63-82.65 80.38z\"},\"child\":[]}]})(props);\n};\nexport function FaStarHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 0c-11.4 0-22.8 5.9-28.7 17.8L194 150.2 47.9 171.4c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.1 23 46 46.4 33.7L288 439.6V0z\"},\"child\":[]}]})(props);\n};\nexport function FaStarOfDavid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 464 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M405.68 256l53.21-89.39C473.3 142.4 455.48 112 426.88 112H319.96l-55.95-93.98C256.86 6.01 244.43 0 232 0s-24.86 6.01-32.01 18.02L144.04 112H37.11c-28.6 0-46.42 30.4-32.01 54.61L58.32 256 5.1 345.39C-9.31 369.6 8.51 400 37.11 400h106.93l55.95 93.98C207.14 505.99 219.57 512 232 512s24.86-6.01 32.01-18.02L319.96 400h106.93c28.6 0 46.42-30.4 32.01-54.61L405.68 256zm-12.78-88l-19.8 33.26L353.3 168h39.6zm-52.39 88l-52.39 88H175.88l-52.39-88 52.38-88h112.25l52.39 88zM232 73.72L254.79 112h-45.57L232 73.72zM71.1 168h39.6l-19.8 33.26L71.1 168zm0 176l19.8-33.26L110.7 344H71.1zM232 438.28L209.21 400h45.57L232 438.28zM353.29 344l19.8-33.26L392.9 344h-39.61z\"},\"child\":[]}]})(props);\n};\nexport function FaStarOfLife (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M471.99 334.43L336.06 256l135.93-78.43c7.66-4.42 10.28-14.2 5.86-21.86l-32.02-55.43c-4.42-7.65-14.21-10.28-21.87-5.86l-135.93 78.43V16c0-8.84-7.17-16-16.01-16h-64.04c-8.84 0-16.01 7.16-16.01 16v156.86L56.04 94.43c-7.66-4.42-17.45-1.79-21.87 5.86L2.15 155.71c-4.42 7.65-1.8 17.44 5.86 21.86L143.94 256 8.01 334.43c-7.66 4.42-10.28 14.21-5.86 21.86l32.02 55.43c4.42 7.65 14.21 10.27 21.87 5.86l135.93-78.43V496c0 8.84 7.17 16 16.01 16h64.04c8.84 0 16.01-7.16 16.01-16V339.14l135.93 78.43c7.66 4.42 17.45 1.8 21.87-5.86l32.02-55.43c4.42-7.65 1.8-17.43-5.86-21.85z\"},\"child\":[]}]})(props);\n};\nexport function FaStar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z\"},\"child\":[]}]})(props);\n};\nexport function FaStepBackward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 468V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12v176.4l195.5-181C352.1 22.3 384 36.6 384 64v384c0 27.4-31.9 41.7-52.5 24.6L136 292.7V468c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaStepForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 44v424c0 6.6-5.4 12-12 12h-48c-6.6 0-12-5.4-12-12V291.6l-195.5 181C95.9 489.7 64 475.4 64 448V64c0-27.4 31.9-41.7 52.5-24.6L312 219.3V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaStethoscope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M447.1 112c-34.2.5-62.3 28.4-63 62.6-.5 24.3 12.5 45.6 32 56.8V344c0 57.3-50.2 104-112 104-60 0-109.2-44.1-111.9-99.2C265 333.8 320 269.2 320 192V36.6c0-11.4-8.1-21.3-19.3-23.5L237.8.5c-13-2.6-25.6 5.8-28.2 18.8L206.4 35c-2.6 13 5.8 25.6 18.8 28.2l30.7 6.1v121.4c0 52.9-42.2 96.7-95.1 97.2-53.4.5-96.9-42.7-96.9-96V69.4l30.7-6.1c13-2.6 21.4-15.2 18.8-28.2l-3.1-15.7C107.7 6.4 95.1-2 82.1.6L19.3 13C8.1 15.3 0 25.1 0 36.6V192c0 77.3 55.1 142 128.1 156.8C130.7 439.2 208.6 512 304 512c97 0 176-75.4 176-168V231.4c19.1-11.1 32-31.7 32-55.4 0-35.7-29.2-64.5-64.9-64zm.9 80c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaStickyNote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M312 320h136V56c0-13.3-10.7-24-24-24H24C10.7 32 0 42.7 0 56v400c0 13.3 10.7 24 24 24h264V344c0-13.2 10.8-24 24-24zm129 55l-98 98c-4.5 4.5-10.6 7-17 7h-6V352h128v6.1c0 6.3-2.5 12.4-7 16.9z\"},\"child\":[]}]})(props);\n};\nexport function FaStopCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm96 328c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h160c8.8 0 16 7.2 16 16v160z\"},\"child\":[]}]})(props);\n};\nexport function FaStop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaStopwatch20 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M398.5,190.91l.59-.61,26.59-26.58a16,16,0,0,0,0-22.63L403,118.41a16,16,0,0,0-22.63,0l-24.68,24.68A206.68,206.68,0,0,0,256,98.5V64h32a16,16,0,0,0,16-16V16A16,16,0,0,0,288,0H160a16.05,16.05,0,0,0-16,16V48a16.05,16.05,0,0,0,16,16h32V98.5A207.92,207.92,0,0,0,16.09,297.57C12.64,411.5,106.76,510.22,220.72,512,337.13,513.77,432,420,432,304A206,206,0,0,0,398.5,190.91ZM204.37,377.55a8.2,8.2,0,0,1,8.32,8.07v22.31a8.2,8.2,0,0,1-8.32,8.07H121.52a16.46,16.46,0,0,1-16.61-17.62c2.78-35.22,14.67-57.41,38.45-91.37,20.42-29.19,27.1-37.32,27.1-62.34,0-16.92-1.79-24.27-12.21-24.27-9.39,0-12.69,7.4-12.69,22.68v5.23a8.2,8.2,0,0,1-8.33,8.07h-24.9a8.2,8.2,0,0,1-8.33-8.07v-4.07c0-27.3,8.48-60.24,56.43-60.24,43,0,55.57,25.85,55.57,61,0,35.58-12.44,51.21-34.35,81.31-11.56,15-24.61,35.57-26.41,51.2ZM344,352.32c0,35.16-12.3,63.68-57.23,63.68C243.19,416,232,386.48,232,352.55V247.22c0-40.73,19.58-63.22,56.2-63.22C325,184,344,206.64,344,245.3ZM287.87,221.73c-9.41,0-13.23,7.5-13.23,20V357.68c0,13.11,3.59,20.59,13.23,20.59s13-8,13-21.27V241.06C300.89,229.79,297.88,221.73,287.87,221.73Z\"},\"child\":[]}]})(props);\n};\nexport function FaStopwatch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 304c0 114.9-93.1 208-208 208S16 418.9 16 304c0-104 76.3-190.2 176-205.5V64h-28c-6.6 0-12-5.4-12-12V12c0-6.6 5.4-12 12-12h120c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-28v34.5c37.5 5.8 71.7 21.6 99.7 44.6l27.5-27.5c4.7-4.7 12.3-4.7 17 0l28.3 28.3c4.7 4.7 4.7 12.3 0 17l-29.4 29.4-.6.6C419.7 223.3 432 262.2 432 304zm-176 36V188.5c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12V340c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaStoreAltSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M17.89,123.62,5.51,142.2c-14.2,21.3,1,49.8,26.59,49.8h74.26ZM576,413.42V224H512V364L384,265V224H330.92l-41.4-32H608c25.5,0,40.7-28.5,26.59-49.8l-85.29-128A32.18,32.18,0,0,0,522.6,0H117.42A31.87,31.87,0,0,0,90.81,14.2l-10.66,16L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.46A16,16,0,0,0,6.18,53.91L594.53,508.63A16,16,0,0,0,617,505.81l19.64-25.26a16,16,0,0,0-2.81-22.45ZM320,384H128V224H64V480a32,32,0,0,0,32,32H352a32,32,0,0,0,32-32V406.59l-64-49.47Z\"},\"child\":[]}]})(props);\n};\nexport function FaStoreAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 384H128V224H64v256c0 17.7 14.3 32 32 32h256c17.7 0 32-14.3 32-32V224h-64v160zm314.6-241.8l-85.3-128c-6-8.9-16-14.2-26.7-14.2H117.4c-10.7 0-20.7 5.3-26.6 14.2l-85.3 128c-14.2 21.3 1 49.8 26.6 49.8H608c25.5 0 40.7-28.5 26.6-49.8zM512 496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V224h-64v272z\"},\"child\":[]}]})(props);\n};\nexport function FaStoreSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M121.51,384V284.2a119.43,119.43,0,0,1-28,3.8,123.46,123.46,0,0,1-17.1-1.2,114.88,114.88,0,0,1-15.58-3.6V480c0,17.7,13.59,32,30.4,32H505.75L348.42,384Zm-28-128.09c25.1,0,47.29-10.72,64-27.24L24,120.05c-30.52,53.39-2.45,126.53,56.49,135A95.68,95.68,0,0,0,93.48,255.91ZM602.13,458.09,547.2,413.41V283.2a93.5,93.5,0,0,1-15.57,3.6,127.31,127.31,0,0,1-17.29,1.2,114.89,114.89,0,0,1-28-3.8v79.68L348.52,251.77a88.06,88.06,0,0,0,25.41,4.14c28.11,0,53-13,70.11-33.11,17.19,20.11,42.08,33.11,70.11,33.11a94.31,94.31,0,0,0,13-.91c59.66-8.41,88-82.8,56.06-136.4L521.55,15A30.1,30.1,0,0,0,495.81,0H112A30.11,30.11,0,0,0,86.27,15L76.88,30.78,43.19,3.38A14.68,14.68,0,0,0,21.86,6.19L3.2,31.45A16.58,16.58,0,0,0,5.87,53.91L564.81,508.63a14.69,14.69,0,0,0,21.33-2.82l18.66-25.26A16.58,16.58,0,0,0,602.13,458.09Z\"},\"child\":[]}]})(props);\n};\nexport function FaStore (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 616 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M602 118.6L537.1 15C531.3 5.7 521 0 510 0H106C95 0 84.7 5.7 78.9 15L14 118.6c-33.5 53.5-3.8 127.9 58.8 136.4 4.5.6 9.1.9 13.7.9 29.6 0 55.8-13 73.8-33.1 18 20.1 44.3 33.1 73.8 33.1 29.6 0 55.8-13 73.8-33.1 18 20.1 44.3 33.1 73.8 33.1 29.6 0 55.8-13 73.8-33.1 18.1 20.1 44.3 33.1 73.8 33.1 4.7 0 9.2-.3 13.7-.9 62.8-8.4 92.6-82.8 59-136.4zM529.5 288c-10 0-19.9-1.5-29.5-3.8V384H116v-99.8c-9.6 2.2-19.5 3.8-29.5 3.8-6 0-12.1-.4-18-1.2-5.6-.8-11.1-2.1-16.4-3.6V480c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32V283.2c-5.4 1.6-10.8 2.9-16.4 3.6-6.1.8-12.1 1.2-18.2 1.2z\"},\"child\":[]}]})(props);\n};\nexport function FaStream (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 128h416c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16H16C7.16 32 0 39.16 0 48v64c0 8.84 7.16 16 16 16zm480 80H80c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm-64 176H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaStreetView (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M367.9 329.76c-4.62 5.3-9.78 10.1-15.9 13.65v22.94c66.52 9.34 112 28.05 112 49.65 0 30.93-93.12 56-208 56S48 446.93 48 416c0-21.6 45.48-40.3 112-49.65v-22.94c-6.12-3.55-11.28-8.35-15.9-13.65C58.87 345.34 0 378.05 0 416c0 53.02 114.62 96 256 96s256-42.98 256-96c0-37.95-58.87-70.66-144.1-86.24zM256 128c35.35 0 64-28.65 64-64S291.35 0 256 0s-64 28.65-64 64 28.65 64 64 64zm-64 192v96c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-96c17.67 0 32-14.33 32-32v-96c0-26.51-21.49-48-48-48h-11.8c-11.07 5.03-23.26 8-36.2 8s-25.13-2.97-36.2-8H208c-26.51 0-48 21.49-48 48v96c0 17.67 14.33 32 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaStrikethrough (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 224H293.9l-87.17-26.83A43.55 43.55 0 0 1 219.55 112h66.79A49.89 49.89 0 0 1 331 139.58a16 16 0 0 0 21.46 7.15l42.94-21.47a16 16 0 0 0 7.16-21.46l-.53-1A128 128 0 0 0 287.51 32h-68a123.68 123.68 0 0 0-123 135.64c2 20.89 10.1 39.83 21.78 56.36H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h480a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-180.24 96A43 43 0 0 1 336 356.45 43.59 43.59 0 0 1 292.45 400h-66.79A49.89 49.89 0 0 1 181 372.42a16 16 0 0 0-21.46-7.15l-42.94 21.47a16 16 0 0 0-7.16 21.46l.53 1A128 128 0 0 0 224.49 480h68a123.68 123.68 0 0 0 123-135.64 114.25 114.25 0 0 0-5.34-24.36z\"},\"child\":[]}]})(props);\n};\nexport function FaStroopwafel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M188.12 210.74L142.86 256l45.25 45.25L233.37 256l-45.25-45.26zm113.13-22.62L256 142.86l-45.25 45.25L256 233.37l45.25-45.25zm-90.5 135.76L256 369.14l45.26-45.26L256 278.63l-45.25 45.25zM256 0C114.62 0 0 114.62 0 256s114.62 256 256 256 256-114.62 256-256S397.38 0 256 0zm186.68 295.6l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0l-28.29-28.29-45.25 45.25 33.94 33.94 16.97-16.97c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31l-16.97 16.97 16.97 16.97c3.12 3.12 3.12 8.19 0 11.31l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0l-16.97-16.97-16.97 16.97c-3.12 3.12-8.19 3.12-11.31 0l-11.31-11.31c-3.12-3.12-3.12-8.19 0-11.31l16.97-16.97-33.94-33.94-45.26 45.26 28.29 28.29c3.12 3.12 3.12 8.19 0 11.31l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0L256 414.39l-28.29 28.29c-3.12 3.12-8.19 3.12-11.31 0l-11.31-11.31c-3.12-3.12-3.12-8.19 0-11.31l28.29-28.29-45.25-45.26-33.94 33.94 16.97 16.97c3.12 3.12 3.12 8.19 0 11.31l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0l-16.97-16.97-16.97 16.97c-3.12 3.12-8.19 3.12-11.31 0l-11.31-11.31c-3.12-3.12-3.12-8.19 0-11.31l16.97-16.97-16.97-16.97c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l16.97 16.97 33.94-33.94-45.25-45.25-28.29 28.29c-3.12 3.12-8.19 3.12-11.31 0L69.32 295.6c-3.12-3.12-3.12-8.19 0-11.31L97.61 256l-28.29-28.29c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l28.29 28.29 45.25-45.26-33.94-33.94-16.97 16.97c-3.12 3.12-8.19 3.12-11.31 0l-11.31-11.31c-3.12-3.12-3.12-8.19 0-11.31l16.97-16.97-16.97-16.97c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l16.97 16.97 16.97-16.97c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31l-16.97 16.97 33.94 33.94 45.26-45.25-28.29-28.29c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0L256 97.61l28.29-28.29c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31l-28.29 28.29 45.26 45.25 33.94-33.94-16.97-16.97c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l16.97 16.97 16.97-16.97c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31l-16.97 16.97 16.97 16.97c3.12 3.12 3.12 8.19 0 11.31l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0l-16.97-16.97-33.94 33.94 45.25 45.26 28.29-28.29c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31L414.39 256l28.29 28.28a8.015 8.015 0 0 1 0 11.32zM278.63 256l45.26 45.25L369.14 256l-45.25-45.26L278.63 256z\"},\"child\":[]}]})(props);\n};\nexport function FaSubscript (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 448h-16V304a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 400 352h16v96h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM336 64h-67a16 16 0 0 0-13.14 6.87l-79.9 115-79.9-115A16 16 0 0 0 83 64H16A16 16 0 0 0 0 80v48a16 16 0 0 0 16 16h33.48l77.81 112-77.81 112H16a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h67a16 16 0 0 0 13.14-6.87l79.9-115 79.9 115A16 16 0 0 0 269 448h67a16 16 0 0 0 16-16v-48a16 16 0 0 0-16-16h-33.48l-77.81-112 77.81-112H336a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaSubway (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 96v256c0 51.815-61.624 96-130.022 96l62.98 49.721C386.905 502.417 383.562 512 376 512H72c-7.578 0-10.892-9.594-4.957-14.279L130.022 448C61.82 448 0 403.954 0 352V96C0 42.981 64 0 128 0h192c65 0 128 42.981 128 96zM200 232V120c0-13.255-10.745-24-24-24H72c-13.255 0-24 10.745-24 24v112c0 13.255 10.745 24 24 24h104c13.255 0 24-10.745 24-24zm200 0V120c0-13.255-10.745-24-24-24H272c-13.255 0-24 10.745-24 24v112c0 13.255 10.745 24 24 24h104c13.255 0 24-10.745 24-24zm-48 56c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm-256 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaSuitcaseRolling (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 160H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h16v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16h128v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16h16c26.51 0 48-21.49 48-48V208c0-26.51-21.49-48-48-48zm-16 216c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h240c4.42 0 8 3.58 8 8v16zm0-96c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h240c4.42 0 8 3.58 8 8v16zM144 48h96v80h48V48c0-26.51-21.49-48-48-48h-96c-26.51 0-48 21.49-48 48v80h48V48z\"},\"child\":[]}]})(props);\n};\nexport function FaSuitcase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 480h256V80c0-26.5-21.5-48-48-48H176c-26.5 0-48 21.5-48 48v400zm64-384h128v32H192V96zm320 80v256c0 26.5-21.5 48-48 48h-48V128h48c26.5 0 48 21.5 48 48zM96 480H48c-26.5 0-48-21.5-48-48V176c0-26.5 21.5-48 48-48h48v352z\"},\"child\":[]}]})(props);\n};\nexport function FaSun (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm246.4 80.5l-94.7-47.3 33.5-100.4c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.4-94.8c-6.4-12.8-24.6-12.8-31 0l-47.3 94.7L92.7 70.8c-13.6-4.5-26.5 8.4-21.9 21.9l33.5 100.4-94.7 47.4c-12.8 6.4-12.8 24.6 0 31l94.7 47.3-33.5 100.5c-4.5 13.6 8.4 26.5 21.9 21.9l100.4-33.5 47.3 94.7c6.4 12.8 24.6 12.8 31 0l47.3-94.7 100.4 33.5c13.6 4.5 26.5-8.4 21.9-21.9l-33.5-100.4 94.7-47.3c13-6.5 13-24.7.2-31.1zm-155.9 106c-49.9 49.9-131.1 49.9-181 0-49.9-49.9-49.9-131.1 0-181 49.9-49.9 131.1-49.9 181 0 49.9 49.9 49.9 131.1 0 181z\"},\"child\":[]}]})(props);\n};\nexport function FaSuperscript (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 160h-16V16a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 400 64h16v96h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM336 64h-67a16 16 0 0 0-13.14 6.87l-79.9 115-79.9-115A16 16 0 0 0 83 64H16A16 16 0 0 0 0 80v48a16 16 0 0 0 16 16h33.48l77.81 112-77.81 112H16a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h67a16 16 0 0 0 13.14-6.87l79.9-115 79.9 115A16 16 0 0 0 269 448h67a16 16 0 0 0 16-16v-48a16 16 0 0 0-16-16h-33.48l-77.81-112 77.81-112H336a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaSurprise (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM136 208c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm112 208c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm80-176c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaSwatchbook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M434.66,167.71h0L344.5,77.36a31.83,31.83,0,0,0-45-.07h0l-.07.07L224,152.88V424L434.66,212.9A32,32,0,0,0,434.66,167.71ZM480,320H373.09L186.68,506.51c-2.06,2.07-4.5,3.58-6.68,5.49H480a32,32,0,0,0,32-32V352A32,32,0,0,0,480,320ZM192,32A32,32,0,0,0,160,0H32A32,32,0,0,0,0,32V416a96,96,0,0,0,192,0ZM96,440a24,24,0,1,1,24-24A24,24,0,0,1,96,440Zm32-184H64V192h64Zm0-128H64V64h64Z\"},\"child\":[]}]})(props);\n};\nexport function FaSwimmer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M189.61 310.58c3.54 3.26 15.27 9.42 34.39 9.42s30.86-6.16 34.39-9.42c16.02-14.77 34.5-22.58 53.46-22.58h16.3c18.96 0 37.45 7.81 53.46 22.58 3.54 3.26 15.27 9.42 34.39 9.42s30.86-6.16 34.39-9.42c14.86-13.71 31.88-21.12 49.39-22.16l-112.84-80.6 18-12.86c3.64-2.58 8.28-3.52 12.62-2.61l100.35 21.53c25.91 5.53 51.44-10.97 57-36.88 5.55-25.92-10.95-51.44-36.88-57L437.68 98.47c-30.73-6.58-63.02.12-88.56 18.38l-80.02 57.17c-10.38 7.39-19.36 16.44-26.72 26.94L173.75 299c5.47 3.23 10.82 6.93 15.86 11.58zM624 352h-16c-26.04 0-45.8-8.42-56.09-17.9-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C461.8 343.58 442.04 352 416 352s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C269.8 343.58 250.04 352 224 352s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C77.8 343.58 58.04 352 32 352H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16c38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84h16c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-512-96c44.18 0 80-35.82 80-80s-35.82-80-80-80-80 35.82-80 80 35.82 80 80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaSwimmingPool (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 416h-16c-26.04 0-45.8-8.42-56.09-17.9-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C461.8 407.58 442.04 416 416 416s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C269.8 407.58 250.04 416 224 416s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C77.8 407.58 58.04 416 32 416H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16c38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84h16c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-400-32v-96h192v96c19.12 0 30.86-6.16 34.39-9.42 9.17-8.46 19.2-14.34 29.61-18.07V128c0-17.64 14.36-32 32-32s32 14.36 32 32v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16c0-52.94-43.06-96-96-96s-96 43.06-96 96v96H224v-96c0-17.64 14.36-32 32-32s32 14.36 32 32v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16c0-52.94-43.06-96-96-96s-96 43.06-96 96v228.5c10.41 3.73 20.44 9.62 29.61 18.07 3.53 3.27 15.27 9.43 34.39 9.43z\"},\"child\":[]}]})(props);\n};\nexport function FaSynagogue (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M70 196.51L6.67 268.29A26.643 26.643 0 0 0 0 285.93V512h128V239.58l-38-43.07c-5.31-6.01-14.69-6.01-20 0zm563.33 71.78L570 196.51c-5.31-6.02-14.69-6.02-20 0l-38 43.07V512h128V285.93c0-6.5-2.37-12.77-6.67-17.64zM339.99 7.01c-11.69-9.35-28.29-9.35-39.98 0l-128 102.4A32.005 32.005 0 0 0 160 134.4V512h96v-92.57c0-31.88 21.78-61.43 53.25-66.55C349.34 346.35 384 377.13 384 416v96h96V134.4c0-9.72-4.42-18.92-12.01-24.99l-128-102.4zm52.07 215.55c1.98 3.15-.29 7.24-4 7.24h-38.94L324 269.79c-1.85 2.95-6.15 2.95-8 0l-25.12-39.98h-38.94c-3.72 0-5.98-4.09-4-7.24l19.2-30.56-19.2-30.56c-1.98-3.15.29-7.24 4-7.24h38.94l25.12-40c1.85-2.95 6.15-2.95 8 0l25.12 39.98h38.95c3.71 0 5.98 4.09 4 7.24L372.87 192l19.19 30.56z\"},\"child\":[]}]})(props);\n};\nexport function FaSyncAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M370.72 133.28C339.458 104.008 298.888 87.962 255.848 88c-77.458.068-144.328 53.178-162.791 126.85-1.344 5.363-6.122 9.15-11.651 9.15H24.103c-7.498 0-13.194-6.807-11.807-14.176C33.933 94.924 134.813 8 256 8c66.448 0 126.791 26.136 171.315 68.685L463.03 40.97C478.149 25.851 504 36.559 504 57.941V192c0 13.255-10.745 24-24 24H345.941c-21.382 0-32.09-25.851-16.971-40.971l41.75-41.749zM32 296h134.059c21.382 0 32.09 25.851 16.971 40.971l-41.75 41.75c31.262 29.273 71.835 45.319 114.876 45.28 77.418-.07 144.315-53.144 162.787-126.849 1.344-5.363 6.122-9.15 11.651-9.15h57.304c7.498 0 13.194 6.807 11.807 14.176C478.067 417.076 377.187 504 256 504c-66.448 0-126.791-26.136-171.315-68.685L48.97 471.03C33.851 486.149 8 475.441 8 454.059V320c0-13.255 10.745-24 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaSync (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.65 12.57l4 82.77A247.16 247.16 0 0 0 255.83 8C134.73 8 33.91 94.92 12.29 209.82A12 12 0 0 0 24.09 224h49.05a12 12 0 0 0 11.67-9.26 175.91 175.91 0 0 1 317-56.94l-101.46-4.86a12 12 0 0 0-12.57 12v47.41a12 12 0 0 0 12 12H500a12 12 0 0 0 12-12V12a12 12 0 0 0-12-12h-47.37a12 12 0 0 0-11.98 12.57zM255.83 432a175.61 175.61 0 0 1-146-77.8l101.8 4.87a12 12 0 0 0 12.57-12v-47.4a12 12 0 0 0-12-12H12a12 12 0 0 0-12 12V500a12 12 0 0 0 12 12h47.35a12 12 0 0 0 12-12.6l-4.15-82.57A247.17 247.17 0 0 0 255.83 504c121.11 0 221.93-86.92 243.55-201.82a12 12 0 0 0-11.8-14.18h-49.05a12 12 0 0 0-11.67 9.26A175.86 175.86 0 0 1 255.83 432z\"},\"child\":[]}]})(props);\n};\nexport function FaSyringe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M201.5 174.8l55.7 55.8c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-55.7-55.8-45.3 45.3 55.8 55.8c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0L111 265.2l-26.4 26.4c-17.3 17.3-25.6 41.1-23 65.4l7.1 63.6L2.3 487c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l66.3-66.3 63.6 7.1c23.9 2.6 47.9-5.4 65.4-23l181.9-181.9-135.7-135.7-64.9 65zm308.2-93.3L430.5 2.3c-3.1-3.1-8.2-3.1-11.3 0l-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l28.3 28.3-45.3 45.3-56.6-56.6-17-17c-3.1-3.1-8.2-3.1-11.3 0l-33.9 33.9c-3.1 3.1-3.1 8.2 0 11.3l17 17L424.8 223l17 17c3.1 3.1 8.2 3.1 11.3 0l33.9-34c3.1-3.1 3.1-8.2 0-11.3l-73.5-73.5 45.3-45.3 28.3 28.3c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.2 3.1-8.2 0-11.4z\"},\"child\":[]}]})(props);\n};\nexport function FaTableTennis (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496.2 296.5C527.7 218.7 512 126.2 449 63.1 365.1-21 229-21 145.1 63.1l-56 56.1 211.5 211.5c46.1-62.1 131.5-77.4 195.6-34.2zm-217.9 79.7L57.9 155.9c-27.3 45.3-21.7 105 17.3 144.1l34.5 34.6L6.7 424c-8.6 7.5-9.1 20.7-1 28.8l53.4 53.5c8 8.1 21.2 7.6 28.7-1L177.1 402l35.7 35.7c19.7 19.7 44.6 30.5 70.3 33.3-7.1-17-11-35.6-11-55.1-.1-13.8 2.5-27 6.2-39.7zM416 320c-53 0-96 43-96 96s43 96 96 96 96-43 96-96-43-96-96-96z\"},\"child\":[]}]})(props);\n};\nexport function FaTable (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM224 416H64v-96h160v96zm0-160H64v-96h160v96zm224 160H288v-96h160v96zm0-160H288v-96h160v96z\"},\"child\":[]}]})(props);\n};\nexport function FaTabletAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM224 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm176-108c0 6.6-5.4 12-12 12H60c-6.6 0-12-5.4-12-12V60c0-6.6 5.4-12 12-12h328c6.6 0 12 5.4 12 12v312z\"},\"child\":[]}]})(props);\n};\nexport function FaTablet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM224 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaTablets (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 192C78.9 192 12.5 250.5.1 326.7c-.8 4.8 3.3 9.3 8.3 9.3h303.3c5 0 9.1-4.5 8.3-9.3C307.5 250.5 241.1 192 160 192zm151.6 176H8.4c-5 0-9.1 4.5-8.3 9.3C12.5 453.5 78.9 512 160 512s147.5-58.5 159.9-134.7c.8-4.8-3.3-9.3-8.3-9.3zM593.4 46.6c-56.5-56.5-144.2-61.4-206.9-16-4 2.9-4.3 8.9-.8 12.3L597 254.3c3.5 3.5 9.5 3.2 12.3-.8 45.5-62.7 40.6-150.4-15.9-206.9zM363 65.7c-3.5-3.5-9.5-3.2-12.3.8-45.4 62.7-40.5 150.4 15.9 206.9 56.5 56.5 144.2 61.4 206.9 15.9 4-2.9 4.3-8.9.8-12.3L363 65.7z\"},\"child\":[]}]})(props);\n};\nexport function FaTachometerAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 32C128.94 32 0 160.94 0 320c0 52.8 14.25 102.26 39.06 144.8 5.61 9.62 16.3 15.2 27.44 15.2h443c11.14 0 21.83-5.58 27.44-15.2C561.75 422.26 576 372.8 576 320c0-159.06-128.94-288-288-288zm0 64c14.71 0 26.58 10.13 30.32 23.65-1.11 2.26-2.64 4.23-3.45 6.67l-9.22 27.67c-5.13 3.49-10.97 6.01-17.64 6.01-17.67 0-32-14.33-32-32S270.33 96 288 96zM96 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm48-160c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm246.77-72.41l-61.33 184C343.13 347.33 352 364.54 352 384c0 11.72-3.38 22.55-8.88 32H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-33.94 26.5-61.43 59.9-63.59l61.34-184.01c4.17-12.56 17.73-19.45 30.36-15.17 12.57 4.19 19.35 17.79 15.17 30.36zm14.66 57.2l15.52-46.55c3.47-1.29 7.13-2.23 11.05-2.23 17.67 0 32 14.33 32 32s-14.33 32-32 32c-11.38-.01-20.89-6.28-26.57-15.22zM480 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaTag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 252.118V48C0 21.49 21.49 0 48 0h204.118a48 48 0 0 1 33.941 14.059l211.882 211.882c18.745 18.745 18.745 49.137 0 67.882L293.823 497.941c-18.745 18.745-49.137 18.745-67.882 0L14.059 286.059A48 48 0 0 1 0 252.118zM112 64c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaTags (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M497.941 225.941L286.059 14.059A48 48 0 0 0 252.118 0H48C21.49 0 0 21.49 0 48v204.118a48 48 0 0 0 14.059 33.941l211.882 211.882c18.744 18.745 49.136 18.746 67.882 0l204.118-204.118c18.745-18.745 18.745-49.137 0-67.882zM112 160c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm513.941 133.823L421.823 497.941c-18.745 18.745-49.137 18.745-67.882 0l-.36-.36L527.64 323.522c16.999-16.999 26.36-39.6 26.36-63.64s-9.362-46.641-26.36-63.64L331.397 0h48.721a48 48 0 0 1 33.941 14.059l211.882 211.882c18.745 18.745 18.745 49.137 0 67.882z\"},\"child\":[]}]})(props);\n};\nexport function FaTape (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 192c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm400 224H380.6c41.5-40.7 67.4-97.3 67.4-160 0-123.7-100.3-224-224-224S0 132.3 0 256s100.3 224 224 224h400c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm-400-64c-53 0-96-43-96-96s43-96 96-96 96 43 96 96-43 96-96 96z\"},\"child\":[]}]})(props);\n};\nexport function FaTasks (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M139.61 35.5a12 12 0 0 0-17 0L58.93 98.81l-22.7-22.12a12 12 0 0 0-17 0L3.53 92.41a12 12 0 0 0 0 17l47.59 47.4a12.78 12.78 0 0 0 17.61 0l15.59-15.62L156.52 69a12.09 12.09 0 0 0 .09-17zm0 159.19a12 12 0 0 0-17 0l-63.68 63.72-22.7-22.1a12 12 0 0 0-17 0L3.53 252a12 12 0 0 0 0 17L51 316.5a12.77 12.77 0 0 0 17.6 0l15.7-15.69 72.2-72.22a12 12 0 0 0 .09-16.9zM64 368c-26.49 0-48.59 21.5-48.59 48S37.53 464 64 464a48 48 0 0 0 0-96zm432 16H208a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-320H208a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 160H208a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaTaxi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M462 241.64l-22-84.84c-9.6-35.2-41.6-60.8-76.8-60.8H352V64c0-17.67-14.33-32-32-32H192c-17.67 0-32 14.33-32 32v32h-11.2c-35.2 0-67.2 25.6-76.8 60.8l-22 84.84C21.41 248.04 0 273.47 0 304v48c0 23.63 12.95 44.04 32 55.12V448c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h256v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-40.88c19.05-11.09 32-31.5 32-55.12v-48c0-30.53-21.41-55.96-50-62.36zM96 352c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm20.55-112l17.2-66.36c2.23-8.16 9.59-13.64 15.06-13.64h214.4c5.47 0 12.83 5.48 14.85 12.86L395.45 240h-278.9zM416 352c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaTeethOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 0H96C42.98 0 0 42.98 0 96v64c0 35.35 28.66 64 64 64h512c35.34 0 64-28.65 64-64V96c0-53.02-42.98-96-96-96zM160 176c0 8.84-7.16 16-16 16H80c-8.84 0-16-7.16-16-16v-32c0-26.51 21.49-48 48-48s48 21.49 48 48v32zm144 0c0 8.84-7.16 16-16 16h-80c-8.84 0-16-7.16-16-16v-56c0-30.93 25.07-56 56-56s56 25.07 56 56v56zm144 0c0 8.84-7.16 16-16 16h-80c-8.84 0-16-7.16-16-16v-56c0-30.93 25.07-56 56-56s56 25.07 56 56v56zm128 0c0 8.84-7.16 16-16 16h-64c-8.84 0-16-7.16-16-16v-32c0-26.51 21.49-48 48-48s48 21.49 48 48v32zm0 144H64c-35.34 0-64 28.65-64 64v32c0 53.02 42.98 96 96 96h448c53.02 0 96-42.98 96-96v-32c0-35.35-28.66-64-64-64zm-416 80c0 26.51-21.49 48-48 48s-48-21.49-48-48v-32c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v32zm144-8c0 30.93-25.07 56-56 56s-56-25.07-56-56v-24c0-8.84 7.16-16 16-16h80c8.84 0 16 7.16 16 16v24zm144 0c0 30.93-25.07 56-56 56s-56-25.07-56-56v-24c0-8.84 7.16-16 16-16h80c8.84 0 16 7.16 16 16v24zm128 8c0 26.51-21.49 48-48 48s-48-21.49-48-48v-32c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v32z\"},\"child\":[]}]})(props);\n};\nexport function FaTeeth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M544 0H96C42.98 0 0 42.98 0 96v320c0 53.02 42.98 96 96 96h448c53.02 0 96-42.98 96-96V96c0-53.02-42.98-96-96-96zM160 368c0 26.51-21.49 48-48 48s-48-21.49-48-48v-64c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v64zm0-128c0 8.84-7.16 16-16 16H80c-8.84 0-16-7.16-16-16v-64c0-26.51 21.49-48 48-48s48 21.49 48 48v64zm144 120c0 30.93-25.07 56-56 56s-56-25.07-56-56v-56c0-8.84 7.16-16 16-16h80c8.84 0 16 7.16 16 16v56zm0-120c0 8.84-7.16 16-16 16h-80c-8.84 0-16-7.16-16-16v-88c0-30.93 25.07-56 56-56s56 25.07 56 56v88zm144 120c0 30.93-25.07 56-56 56s-56-25.07-56-56v-56c0-8.84 7.16-16 16-16h80c8.84 0 16 7.16 16 16v56zm0-120c0 8.84-7.16 16-16 16h-80c-8.84 0-16-7.16-16-16v-88c0-30.93 25.07-56 56-56s56 25.07 56 56v88zm128 128c0 26.51-21.49 48-48 48s-48-21.49-48-48v-64c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v64zm0-128c0 8.84-7.16 16-16 16h-64c-8.84 0-16-7.16-16-16v-64c0-26.51 21.49-48 48-48s48 21.49 48 48v64z\"},\"child\":[]}]})(props);\n};\nexport function FaTemperatureHigh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 0c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm0 128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm-160-16C256 50.1 205.9 0 144 0S32 50.1 32 112v166.5C12.3 303.2 0 334 0 368c0 79.5 64.5 144 144 144s144-64.5 144-144c0-34-12.3-64.9-32-89.5V112zM144 448c-44.1 0-80-35.9-80-80 0-25.5 12.2-48.9 32-63.8V112c0-26.5 21.5-48 48-48s48 21.5 48 48v192.2c19.8 14.8 32 38.3 32 63.8 0 44.1-35.9 80-80 80zm16-125.1V112c0-8.8-7.2-16-16-16s-16 7.2-16 16v210.9c-18.6 6.6-32 24.2-32 45.1 0 26.5 21.5 48 48 48s48-21.5 48-48c0-20.9-13.4-38.5-32-45.1z\"},\"child\":[]}]})(props);\n};\nexport function FaTemperatureLow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 0c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm0 128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm-160-16C256 50.1 205.9 0 144 0S32 50.1 32 112v166.5C12.3 303.2 0 334 0 368c0 79.5 64.5 144 144 144s144-64.5 144-144c0-34-12.3-64.9-32-89.5V112zM144 448c-44.1 0-80-35.9-80-80 0-25.5 12.2-48.9 32-63.8V112c0-26.5 21.5-48 48-48s48 21.5 48 48v192.2c19.8 14.8 32 38.3 32 63.8 0 44.1-35.9 80-80 80zm16-125.1V304c0-8.8-7.2-16-16-16s-16 7.2-16 16v18.9c-18.6 6.6-32 24.2-32 45.1 0 26.5 21.5 48 48 48s48-21.5 48-48c0-20.9-13.4-38.5-32-45.1z\"},\"child\":[]}]})(props);\n};\nexport function FaTenge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M372 160H12c-6.6 0-12 5.4-12 12v56c0 6.6 5.4 12 12 12h140v228c0 6.6 5.4 12 12 12h56c6.6 0 12-5.4 12-12V240h140c6.6 0 12-5.4 12-12v-56c0-6.6-5.4-12-12-12zm0-128H12C5.4 32 0 37.4 0 44v56c0 6.6 5.4 12 12 12h360c6.6 0 12-5.4 12-12V44c0-6.6-5.4-12-12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaTerminal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M257.981 272.971L63.638 467.314c-9.373 9.373-24.569 9.373-33.941 0L7.029 444.647c-9.357-9.357-9.375-24.522-.04-33.901L161.011 256 6.99 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L257.981 239.03c9.373 9.372 9.373 24.568 0 33.941zM640 456v-32c0-13.255-10.745-24-24-24H312c-13.255 0-24 10.745-24 24v32c0 13.255 10.745 24 24 24h304c13.255 0 24-10.745 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaTextHeight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 32H16A16 16 0 0 0 0 48v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32h56v304H80a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h160a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-40V112h56v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm256 336h-48V144h48c14.31 0 21.33-17.31 11.31-27.31l-80-80a16 16 0 0 0-22.62 0l-80 80C379.36 126 384.36 144 400 144h48v224h-48c-14.31 0-21.32 17.31-11.31 27.31l80 80a16 16 0 0 0 22.62 0l80-80C580.64 386 575.64 368 560 368z\"},\"child\":[]}]})(props);\n};\nexport function FaTextWidth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 32H16A16 16 0 0 0 0 48v80a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-16h120v112h-24a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-24V112h120v16a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm-68.69 260.69C354 283.36 336 288.36 336 304v48H112v-48c0-14.31-17.31-21.32-27.31-11.31l-80 80a16 16 0 0 0 0 22.62l80 80C94 484.64 112 479.64 112 464v-48h224v48c0 14.31 17.31 21.33 27.31 11.31l80-80a16 16 0 0 0 0-22.62z\"},\"child\":[]}]})(props);\n};\nexport function FaThLarge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M296 32h192c13.255 0 24 10.745 24 24v160c0 13.255-10.745 24-24 24H296c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24zm-80 0H24C10.745 32 0 42.745 0 56v160c0 13.255 10.745 24 24 24h192c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24zM0 296v160c0 13.255 10.745 24 24 24h192c13.255 0 24-10.745 24-24V296c0-13.255-10.745-24-24-24H24c-13.255 0-24 10.745-24 24zm296 184h192c13.255 0 24-10.745 24-24V296c0-13.255-10.745-24-24-24H296c-13.255 0-24 10.745-24 24v160c0 13.255 10.745 24 24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaThList (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M149.333 216v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24v-80c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zM0 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H24c-13.255 0-24 10.745-24 24zM125.333 32H24C10.745 32 0 42.745 0 56v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24zm80 448H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm-24-424v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24zm24 264H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaTh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M149.333 56v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zm181.334 240v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm32-240v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24zm-32 80V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm-205.334 56H24c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24zM0 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H24c-13.255 0-24 10.745-24 24zm386.667-56H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm0 160H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zM181.333 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaTheaterMasks (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M206.86 245.15c-35.88 10.45-59.95 41.2-57.53 74.1 11.4-12.72 28.81-23.7 49.9-30.92l7.63-43.18zM95.81 295L64.08 115.49c-.29-1.62.28-2.62.24-2.65 57.76-32.06 123.12-49.01 189.01-49.01 1.61 0 3.23.17 4.85.19 13.95-13.47 31.73-22.83 51.59-26 18.89-3.02 38.05-4.55 57.18-5.32-9.99-13.95-24.48-24.23-41.77-27C301.27 1.89 277.24 0 253.32 0 176.66 0 101.02 19.42 33.2 57.06 9.03 70.48-3.92 98.48 1.05 126.58l31.73 179.51c14.23 80.52 136.33 142.08 204.45 142.08 3.59 0 6.75-.46 10.01-.8-13.52-17.08-28.94-40.48-39.5-67.58-47.61-12.98-106.06-51.62-111.93-84.79zm97.55-137.46c-.73-4.12-2.23-7.87-4.07-11.4-8.25 8.91-20.67 15.75-35.32 18.32-14.65 2.58-28.67.4-39.48-5.17-.52 3.94-.64 7.98.09 12.1 3.84 21.7 24.58 36.19 46.34 32.37 21.75-3.82 36.28-24.52 32.44-46.22zM606.8 120.9c-88.98-49.38-191.43-67.41-291.98-51.35-27.31 4.36-49.08 26.26-54.04 54.36l-31.73 179.51c-15.39 87.05 95.28 196.27 158.31 207.35 63.03 11.09 204.47-53.79 219.86-140.84l31.73-179.51c4.97-28.11-7.98-56.11-32.15-69.52zm-273.24 96.8c3.84-21.7 24.58-36.19 46.34-32.36 21.76 3.83 36.28 24.52 32.45 46.22-.73 4.12-2.23 7.87-4.07 11.4-8.25-8.91-20.67-15.75-35.32-18.32-14.65-2.58-28.67-.4-39.48 5.17-.53-3.95-.65-7.99.08-12.11zm70.47 198.76c-55.68-9.79-93.52-59.27-89.04-112.9 20.6 25.54 56.21 46.17 99.49 53.78 43.28 7.61 83.82.37 111.93-16.6-14.18 51.94-66.71 85.51-122.38 75.72zm130.3-151.34c-8.25-8.91-20.68-15.75-35.33-18.32-14.65-2.58-28.67-.4-39.48 5.17-.52-3.94-.64-7.98.09-12.1 3.84-21.7 24.58-36.19 46.34-32.37 21.75 3.83 36.28 24.52 32.45 46.22-.73 4.13-2.23 7.88-4.07 11.4z\"},\"child\":[]}]})(props);\n};\nexport function FaThermometerEmpty (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 384c0 35.346-28.654 64-64 64s-64-28.654-64-64c0-35.346 28.654-64 64-64s64 28.654 64 64zm32-84.653c19.912 22.563 32 52.194 32 84.653 0 70.696-57.303 128-128 128-.299 0-.609-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.755 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM208 384c0-34.339-19.37-52.19-32-66.502V96c0-26.467-21.533-48-48-48S80 69.533 80 96v221.498c-12.732 14.428-31.825 32.1-31.999 66.08-.224 43.876 35.563 80.116 79.423 80.42L128 464c44.112 0 80-35.888 80-80z\"},\"child\":[]}]})(props);\n};\nexport function FaThermometerFull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 96c0-53.019-42.981-96-96-96S32 42.981 32 96v203.347C12.225 321.756.166 351.136.002 383.333c-.359 70.303 56.787 128.176 127.089 128.664.299.002.61.003.909.003 70.698 0 128-57.304 128-128 0-32.459-12.088-62.09-32-84.653V96zm-96 368l-.576-.002c-43.86-.304-79.647-36.544-79.423-80.42.173-33.98 19.266-51.652 31.999-66.08V96c0-26.467 21.533-48 48-48s48 21.533 48 48v221.498c12.63 14.312 32 32.164 32 66.502 0 44.112-35.888 80-80 80zm64-80c0 35.346-28.654 64-64 64s-64-28.654-64-64c0-23.685 12.876-44.349 32-55.417V96c0-17.673 14.327-32 32-32s32 14.327 32 32v232.583c19.124 11.068 32 31.732 32 55.417z\"},\"child\":[]}]})(props);\n};\nexport function FaThermometerHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 384c0 35.346-28.654 64-64 64s-64-28.654-64-64c0-23.685 12.876-44.349 32-55.417V224c0-17.673 14.327-32 32-32s32 14.327 32 32v104.583c19.124 11.068 32 31.732 32 55.417zm32-84.653c19.912 22.563 32 52.194 32 84.653 0 70.696-57.303 128-128 128-.299 0-.609-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.755 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM208 384c0-34.339-19.37-52.19-32-66.502V96c0-26.467-21.533-48-48-48S80 69.533 80 96v221.498c-12.732 14.428-31.825 32.1-31.999 66.08-.224 43.876 35.563 80.116 79.423 80.42L128 464c44.112 0 80-35.888 80-80z\"},\"child\":[]}]})(props);\n};\nexport function FaThermometerQuarter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 384c0 35.346-28.654 64-64 64s-64-28.654-64-64c0-23.685 12.876-44.349 32-55.417V288c0-17.673 14.327-32 32-32s32 14.327 32 32v40.583c19.124 11.068 32 31.732 32 55.417zm32-84.653c19.912 22.563 32 52.194 32 84.653 0 70.696-57.303 128-128 128-.299 0-.609-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.755 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM208 384c0-34.339-19.37-52.19-32-66.502V96c0-26.467-21.533-48-48-48S80 69.533 80 96v221.498c-12.732 14.428-31.825 32.1-31.999 66.08-.224 43.876 35.563 80.116 79.423 80.42L128 464c44.112 0 80-35.888 80-80z\"},\"child\":[]}]})(props);\n};\nexport function FaThermometerThreeQuarters (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 384c0 35.346-28.654 64-64 64-35.346 0-64-28.654-64-64 0-23.685 12.876-44.349 32-55.417V160c0-17.673 14.327-32 32-32s32 14.327 32 32v168.583c19.124 11.068 32 31.732 32 55.417zm32-84.653c19.912 22.563 32 52.194 32 84.653 0 70.696-57.303 128-128 128-.299 0-.609-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.755 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM208 384c0-34.339-19.37-52.19-32-66.502V96c0-26.467-21.533-48-48-48S80 69.533 80 96v221.498c-12.732 14.428-31.825 32.1-31.999 66.08-.224 43.876 35.563 80.116 79.423 80.42L128 464c44.112 0 80-35.888 80-80z\"},\"child\":[]}]})(props);\n};\nexport function FaThermometer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M476.8 20.4c-37.5-30.7-95.5-26.3-131.9 10.2l-45.7 46 50.5 50.5c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-50.4-50.5-45.1 45.4 50.3 50.4c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0L209 167.4l-45.1 45.4L214 263c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-50.1-50.2L96 281.1V382L7 471c-9.4 9.4-9.4 24.6 0 33.9 9.4 9.4 24.6 9.4 33.9 0l89-89h99.9L484 162.6c34.9-34.9 42.2-101.5-7.2-142.2z\"},\"child\":[]}]})(props);\n};\nexport function FaThumbsDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 56v240c0 13.255 10.745 24 24 24h80c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H24C10.745 32 0 42.745 0 56zm40 200c0-13.255 10.745-24 24-24s24 10.745 24 24-10.745 24-24 24-24-10.745-24-24zm272 256c-20.183 0-29.485-39.293-33.931-57.795-5.206-21.666-10.589-44.07-25.393-58.902-32.469-32.524-49.503-73.967-89.117-113.111a11.98 11.98 0 0 1-3.558-8.521V59.901c0-6.541 5.243-11.878 11.783-11.998 15.831-.29 36.694-9.079 52.651-16.178C256.189 17.598 295.709.017 343.995 0h2.844c42.777 0 93.363.413 113.774 29.737 8.392 12.057 10.446 27.034 6.148 44.632 16.312 17.053 25.063 48.863 16.382 74.757 17.544 23.432 19.143 56.132 9.308 79.469l.11.11c11.893 11.949 19.523 31.259 19.439 49.197-.156 30.352-26.157 58.098-59.553 58.098H350.723C358.03 364.34 384 388.132 384 430.548 384 504 336 512 312 512z\"},\"child\":[]}]})(props);\n};\nexport function FaThumbsUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M104 224H24c-13.255 0-24 10.745-24 24v240c0 13.255 10.745 24 24 24h80c13.255 0 24-10.745 24-24V248c0-13.255-10.745-24-24-24zM64 472c-13.255 0-24-10.745-24-24s10.745-24 24-24 24 10.745 24 24-10.745 24-24 24zM384 81.452c0 42.416-25.97 66.208-33.277 94.548h101.723c33.397 0 59.397 27.746 59.553 58.098.084 17.938-7.546 37.249-19.439 49.197l-.11.11c9.836 23.337 8.237 56.037-9.308 79.469 8.681 25.895-.069 57.704-16.382 74.757 4.298 17.598 2.244 32.575-6.148 44.632C440.202 511.587 389.616 512 346.839 512l-2.845-.001c-48.287-.017-87.806-17.598-119.56-31.725-15.957-7.099-36.821-15.887-52.651-16.178-6.54-.12-11.783-5.457-11.783-11.998v-213.77c0-3.2 1.282-6.271 3.558-8.521 39.614-39.144 56.648-80.587 89.117-113.111 14.804-14.832 20.188-37.236 25.393-58.902C282.515 39.293 291.817 0 312 0c24 0 72 8 72 81.452z\"},\"child\":[]}]})(props);\n};\nexport function FaThumbtack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M298.028 214.267L285.793 96H328c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24H56C42.745 0 32 10.745 32 24v48c0 13.255 10.745 24 24 24h42.207L85.972 214.267C37.465 236.82 0 277.261 0 328c0 13.255 10.745 24 24 24h136v104.007c0 1.242.289 2.467.845 3.578l24 48c2.941 5.882 11.364 5.893 14.311 0l24-48a8.008 8.008 0 0 0 .845-3.578V352h136c13.255 0 24-10.745 24-24-.001-51.183-37.983-91.42-85.973-113.733z\"},\"child\":[]}]})(props);\n};\nexport function FaTicketAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 160h320v192H128V160zm400 96c0 26.51 21.49 48 48 48v96c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48v-96c26.51 0 48-21.49 48-48s-21.49-48-48-48v-96c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48v96c-26.51 0-48 21.49-48 48zm-48-104c0-13.255-10.745-24-24-24H120c-13.255 0-24 10.745-24 24v208c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V152z\"},\"child\":[]}]})(props);\n};\nexport function FaTimesCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z\"},\"child\":[]}]})(props);\n};\nexport function FaTimes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 352 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z\"},\"child\":[]}]})(props);\n};\nexport function FaTintSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M633.82 458.1L494.97 350.78c.52-5.57 1.03-11.16 1.03-16.87 0-111.76-99.79-153.34-146.78-311.82-7.94-28.78-49.44-30.12-58.44 0-15.52 52.34-36.87 91.96-58.49 125.68L45.47 3.37C38.49-2.05 28.43-.8 23.01 6.18L3.37 31.45C-2.05 38.42-.8 48.47 6.18 53.9l588.36 454.73c6.98 5.43 17.03 4.17 22.46-2.81l19.64-25.27c5.41-6.97 4.16-17.02-2.82-22.45zM144 333.91C144 432.35 222.72 512 320 512c44.71 0 85.37-16.96 116.4-44.7L162.72 255.78c-11.41 23.5-18.72 48.35-18.72 78.13z\"},\"child\":[]}]})(props);\n};\nexport function FaTint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 352 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M205.22 22.09c-7.94-28.78-49.44-30.12-58.44 0C100.01 179.85 0 222.72 0 333.91 0 432.35 78.72 512 176 512s176-79.65 176-178.09c0-111.75-99.79-153.34-146.78-311.82zM176 448c-61.75 0-112-50.25-112-112 0-8.84 7.16-16 16-16s16 7.16 16 16c0 44.11 35.89 80 80 80 8.84 0 16 7.16 16 16s-7.16 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaTired (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm33.8 189.7l80-48c11.6-6.9 24 7.7 15.4 18L343.6 208l33.6 40.3c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.7-4.7-7.7-15.9 0-20.6zm-163-30c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.8 4.7 7.8 15.9 0 20.6l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3-33.6-40.3zM248 288c51.9 0 115.3 43.8 123.2 106.7 1.7 13.6-8 24.6-17.7 20.4-25.9-11.1-64.4-17.4-105.5-17.4s-79.6 6.3-105.5 17.4c-9.8 4.2-19.4-7-17.7-20.4C132.7 331.8 196.1 288 248 288z\"},\"child\":[]}]})(props);\n};\nexport function FaToggleOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 64H192C85.961 64 0 149.961 0 256s85.961 192 192 192h192c106.039 0 192-85.961 192-192S490.039 64 384 64zM64 256c0-70.741 57.249-128 128-128 70.741 0 128 57.249 128 128 0 70.741-57.249 128-128 128-70.741 0-128-57.249-128-128zm320 128h-48.905c65.217-72.858 65.236-183.12 0-256H384c70.741 0 128 57.249 128 128 0 70.74-57.249 128-128 128z\"},\"child\":[]}]})(props);\n};\nexport function FaToggleOn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 64H192C86 64 0 150 0 256s86 192 192 192h192c106 0 192-86 192-192S490 64 384 64zm0 320c-70.8 0-128-57.3-128-128 0-70.8 57.3-128 128-128 70.8 0 128 57.3 128 128 0 70.8-57.3 128-128 128z\"},\"child\":[]}]})(props);\n};\nexport function FaToiletPaperSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64,192V364.13c0,41.12-9.75,62.75-31.12,126.87A16,16,0,0,0,48,512H328.86a31.87,31.87,0,0,0,30.38-21.87c9.31-27.83,18-53.35,22.18-85.55l-316-244.25C64.53,170.66,64,181.19,64,192ZM633.82,458.09l-102-78.81C575.28,360.91,608,284.32,608,192,608,86,565,0,512,0s-96,86-96,192c0,42,7,80.4,18.43,112L384,265V192c0-83.62,23.63-153.5,60.5-192H160c-23.33,0-44.63,16.83-61.26,44.53L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.45A16,16,0,0,0,6.18,53.91L594.54,508.63A16,16,0,0,0,617,505.81l19.64-25.26A16,16,0,0,0,633.82,458.09ZM512,256c-17.63,0-32-28.62-32-64s14.37-64,32-64,32,28.63,32,64S529.62,256,512,256Z\"},\"child\":[]}]})(props);\n};\nexport function FaToiletPaper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 0C74.98 0 32 85.96 32 192v172.07c0 41.12-9.8 62.77-31.17 126.87C-2.62 501.3 5.09 512 16.01 512h280.92c13.77 0 26-8.81 30.36-21.88 12.83-38.48 24.71-72.4 24.71-126.05V192c0-83.6 23.67-153.52 60.44-192H128zM96 224c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm64 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm64 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm64 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zM480 0c-53.02 0-96 85.96-96 192s42.98 192 96 192 96-85.96 96-192S533.02 0 480 0zm0 256c-17.67 0-32-28.65-32-64s14.33-64 32-64 32 28.65 32 64-14.33 64-32 64z\"},\"child\":[]}]})(props);\n};\nexport function FaToilet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 48c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H16C7.2 0 0 7.2 0 16v16c0 8.8 7.2 16 16 16h16v156.7C11.8 214.8 0 226.9 0 240c0 67.2 34.6 126.2 86.8 160.5l-21.4 70.2C59.1 491.2 74.5 512 96 512h192c21.5 0 36.9-20.8 30.6-41.3l-21.4-70.2C349.4 366.2 384 307.2 384 240c0-13.1-11.8-25.2-32-35.3V48h16zM80 72c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H88c-4.4 0-8-3.6-8-8V72zm112 200c-77.1 0-139.6-14.3-139.6-32s62.5-32 139.6-32 139.6 14.3 139.6 32-62.5 32-139.6 32z\"},\"child\":[]}]})(props);\n};\nexport function FaToolbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M502.63 214.63l-45.25-45.25c-6-6-14.14-9.37-22.63-9.37H384V80c0-26.51-21.49-48-48-48H176c-26.51 0-48 21.49-48 48v80H77.25c-8.49 0-16.62 3.37-22.63 9.37L9.37 214.63c-6 6-9.37 14.14-9.37 22.63V320h128v-16c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v16h128v-16c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v16h128v-82.75c0-8.48-3.37-16.62-9.37-22.62zM320 160H192V96h128v64zm64 208c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-16H192v16c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-16H0v96c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32v-96H384v16z\"},\"child\":[]}]})(props);\n};\nexport function FaTools (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M501.1 395.7L384 278.6c-23.1-23.1-57.6-27.6-85.4-13.9L192 158.1V96L64 0 0 64l96 128h62.1l106.6 106.6c-13.6 27.8-9.2 62.3 13.9 85.4l117.1 117.1c14.6 14.6 38.2 14.6 52.7 0l52.7-52.7c14.5-14.6 14.5-38.2 0-52.7zM331.7 225c28.3 0 54.9 11 74.9 31l19.4 19.4c15.8-6.9 30.8-16.5 43.8-29.5 37.1-37.1 49.7-89.3 37.9-136.7-2.2-9-13.5-12.1-20.1-5.5l-74.4 74.4-67.9-11.3L334 98.9l74.4-74.4c6.6-6.6 3.4-17.9-5.7-20.2-47.4-11.7-99.6.9-136.6 37.9-28.5 28.5-41.9 66.1-41.2 103.6l82.1 82.1c8.1-1.9 16.5-2.9 24.7-2.9zm-103.9 82l-56.7-56.7L18.7 402.8c-25 25-25 65.5 0 90.5s65.5 25 90.5 0l123.6-123.6c-7.6-19.9-9.9-41.6-5-62.7zM64 472c-13.2 0-24-10.8-24-24 0-13.3 10.7-24 24-24s24 10.7 24 24c0 13.2-10.7 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaTooth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M443.98 96.25c-11.01-45.22-47.11-82.06-92.01-93.72-32.19-8.36-63 5.1-89.14 24.33-3.25 2.39-6.96 3.73-10.5 5.48l28.32 18.21c7.42 4.77 9.58 14.67 4.8 22.11-4.46 6.95-14.27 9.86-22.11 4.8L162.83 12.84c-20.7-10.85-43.38-16.4-66.81-10.31-44.9 11.67-81 48.5-92.01 93.72-10.13 41.62-.42 80.81 21.5 110.43 23.36 31.57 32.68 68.66 36.29 107.35 4.4 47.16 10.33 94.16 20.94 140.32l7.8 33.95c3.19 13.87 15.49 23.7 29.67 23.7 13.97 0 26.15-9.55 29.54-23.16l34.47-138.42c4.56-18.32 20.96-31.16 39.76-31.16s35.2 12.85 39.76 31.16l34.47 138.42c3.39 13.61 15.57 23.16 29.54 23.16 14.18 0 26.48-9.83 29.67-23.7l7.8-33.95c10.61-46.15 16.53-93.16 20.94-140.32 3.61-38.7 12.93-75.78 36.29-107.35 21.95-29.61 31.66-68.8 21.53-110.43z\"},\"child\":[]}]})(props);\n};\nexport function FaTorah (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320.05 366.48l17.72-29.64h-35.46zm99.21-166H382.4l18.46 30.82zM48 0C21.49 0 0 14.33 0 32v448c0 17.67 21.49 32 48 32s48-14.33 48-32V32C96 14.33 74.51 0 48 0zm172.74 311.5h36.85l-18.46-30.82zm161.71 0h36.86l-18.45-30.8zM128 464h384V48H128zm66.77-278.13a21.22 21.22 0 0 1 18.48-10.71h59.45l29.13-48.71a21.13 21.13 0 0 1 18.22-10.37A20.76 20.76 0 0 1 338 126.29l29.25 48.86h59.52a21.12 21.12 0 0 1 18.1 32L415.63 256 445 305a20.69 20.69 0 0 1 .24 21.12 21.25 21.25 0 0 1-18.48 10.72h-59.47l-29.13 48.7a21.13 21.13 0 0 1-18.16 10.4 20.79 20.79 0 0 1-18-10.22l-29.25-48.88h-59.5a21.11 21.11 0 0 1-18.1-32L224.36 256 195 207a20.7 20.7 0 0 1-.23-21.13zM592 0c-26.51 0-48 14.33-48 32v448c0 17.67 21.49 32 48 32s48-14.33 48-32V32c0-17.67-21.49-32-48-32zM320 145.53l-17.78 29.62h35.46zm-62.45 55h-36.81l18.44 30.8zm29.58 111h65.79L386.09 256l-33.23-55.52h-65.79L253.9 256z\"},\"child\":[]}]})(props);\n};\nexport function FaToriiGate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M376.45 32h-240.9A303.17 303.17 0 0 1 0 0v96c0 17.67 14.33 32 32 32h32v64H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h48v240c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V256h256v240c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V256h48c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16h-48v-64h32c17.67 0 32-14.33 32-32V0a303.17 303.17 0 0 1-135.55 32zM128 128h96v64h-96v-64zm256 64h-96v-64h96v64z\"},\"child\":[]}]})(props);\n};\nexport function FaTractor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 336c-48.6 0-88 39.4-88 88s39.4 88 88 88 88-39.4 88-88-39.4-88-88-88zm0 112c-13.23 0-24-10.77-24-24s10.77-24 24-24 24 10.77 24 24-10.77 24-24 24zm80-288h-64v-40.2c0-14.12 4.7-27.76 13.15-38.84 4.42-5.8 3.55-14.06-1.32-19.49L534.2 37.3c-6.66-7.45-18.32-6.92-24.7.78C490.58 60.9 480 89.81 480 119.8V160H377.67L321.58 29.14A47.914 47.914 0 0 0 277.45 0H144c-26.47 0-48 21.53-48 48v146.52c-8.63-6.73-20.96-6.46-28.89 1.47L36 227.1c-8.59 8.59-8.59 22.52 0 31.11l5.06 5.06c-4.99 9.26-8.96 18.82-11.91 28.72H22c-12.15 0-22 9.85-22 22v44c0 12.15 9.85 22 22 22h7.14c2.96 9.91 6.92 19.46 11.91 28.73l-5.06 5.06c-8.59 8.59-8.59 22.52 0 31.11L67.1 476c8.59 8.59 22.52 8.59 31.11 0l5.06-5.06c9.26 4.99 18.82 8.96 28.72 11.91V490c0 12.15 9.85 22 22 22h44c12.15 0 22-9.85 22-22v-7.14c9.9-2.95 19.46-6.92 28.72-11.91l5.06 5.06c8.59 8.59 22.52 8.59 31.11 0l31.11-31.11c8.59-8.59 8.59-22.52 0-31.11l-5.06-5.06c4.99-9.26 8.96-18.82 11.91-28.72H330c12.15 0 22-9.85 22-22v-6h80.54c21.91-28.99 56.32-48 95.46-48 18.64 0 36.07 4.61 51.8 12.2l50.82-50.82c6-6 9.37-14.14 9.37-22.63V192c.01-17.67-14.32-32-31.99-32zM176 416c-44.18 0-80-35.82-80-80s35.82-80 80-80 80 35.82 80 80-35.82 80-80 80zm22-256h-38V64h106.89l41.15 96H198z\"},\"child\":[]}]})(props);\n};\nexport function FaTrademark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M260.6 96H12c-6.6 0-12 5.4-12 12v43.1c0 6.6 5.4 12 12 12h85.1V404c0 6.6 5.4 12 12 12h54.3c6.6 0 12-5.4 12-12V163.1h85.1c6.6 0 12-5.4 12-12V108c.1-6.6-5.3-12-11.9-12zM640 403l-24-296c-.5-6.2-5.7-11-12-11h-65.4c-5.1 0-9.7 3.3-11.3 8.1l-43.8 127.1c-7.2 20.6-16.1 52.8-16.1 52.8h-.9s-8.9-32.2-16.1-52.8l-43.8-127.1c-1.7-4.8-6.2-8.1-11.3-8.1h-65.4c-6.2 0-11.4 4.8-12 11l-24.4 296c-.6 7 4.9 13 12 13H360c6.3 0 11.5-4.9 12-11.2l9.1-132.9c1.8-24.2 0-53.7 0-53.7h.9s10.7 33.6 17.9 53.7l30.7 84.7c1.7 4.7 6.2 7.9 11.3 7.9h50.3c5.1 0 9.6-3.2 11.3-7.9l30.7-84.7c7.2-20.1 17.9-53.7 17.9-53.7h.9s-1.8 29.5 0 53.7l9.1 132.9c.4 6.3 5.7 11.2 12 11.2H628c7 0 12.5-6 12-13z\"},\"child\":[]}]})(props);\n};\nexport function FaTrafficLight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 192h-64v-37.88c37.2-13.22 64-48.38 64-90.12h-64V32c0-17.67-14.33-32-32-32H96C78.33 0 64 14.33 64 32v32H0c0 41.74 26.8 76.9 64 90.12V192H0c0 41.74 26.8 76.9 64 90.12V320H0c0 42.84 28.25 78.69 66.99 91.05C79.42 468.72 130.6 512 192 512s112.58-43.28 125.01-100.95C355.75 398.69 384 362.84 384 320h-64v-37.88c37.2-13.22 64-48.38 64-90.12zM192 416c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm0-128c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm0-128c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaTrailer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624,320H544V80a16,16,0,0,0-16-16H16A16,16,0,0,0,0,80V368a16,16,0,0,0,16,16H65.61c7.83-54.21,54-96,110.39-96s102.56,41.79,110.39,96H624a16,16,0,0,0,16-16V336A16,16,0,0,0,624,320ZM96,243.68a176.29,176.29,0,0,0-32,20.71V136a8,8,0,0,1,8-8H88a8,8,0,0,1,8,8Zm96-18.54c-5.31-.49-10.57-1.14-16-1.14s-10.69.65-16,1.14V136a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8Zm96,39.25a176.29,176.29,0,0,0-32-20.71V136a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8ZM384,320H352V136a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8Zm96,0H448V136a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8Zm-304,0a80,80,0,1,0,80,80A80,80,0,0,0,176,320Zm0,112a32,32,0,1,1,32-32A32,32,0,0,1,176,432Z\"},\"child\":[]}]})(props);\n};\nexport function FaTrain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 96v256c0 51.815-61.624 96-130.022 96l62.98 49.721C386.905 502.417 383.562 512 376 512H72c-7.578 0-10.892-9.594-4.957-14.279L130.022 448C61.82 448 0 403.954 0 352V96C0 42.981 64 0 128 0h192c65 0 128 42.981 128 96zm-48 136V120c0-13.255-10.745-24-24-24H72c-13.255 0-24 10.745-24 24v112c0 13.255 10.745 24 24 24h304c13.255 0 24-10.745 24-24zm-176 64c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56z\"},\"child\":[]}]})(props);\n};\nexport function FaTram (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 64c17.7 0 32-14.3 32-32S305.7 0 288 0s-32 14.3-32 32 14.3 32 32 32zm223.5-12.1c-2.3-8.6-11-13.6-19.6-11.3l-480 128c-8.5 2.3-13.6 11-11.3 19.6C2.5 195.3 8.9 200 16 200c1.4 0 2.8-.2 4.1-.5L240 140.8V224H64c-17.7 0-32 14.3-32 32v224c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V256c0-17.7-14.3-32-32-32H272v-91.7l228.1-60.8c8.6-2.3 13.6-11.1 11.4-19.6zM176 384H80v-96h96v96zm160-96h96v96h-96v-96zm-32 0v96h-96v-96h96zM192 96c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaTransgenderAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M468 0h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-80.7 80.7C294.5 104.1 268.2 96 240 96c-28.2 0-54.5 8.1-76.7 22.1l-16.5-16.5 19.8-19.8c4.7-4.7 4.7-12.3 0-17l-28.3-28.3c-4.7-4.7-12.3-4.7-17 0l-19.8 19.8-19-19 16.9-16.9C107.1 12.9 101.7 0 91 0H12C5.4 0 0 5.4 0 12v79c0 10.7 12.9 16 20.5 8.5l16.9-16.9 19 19-19.8 19.8c-4.7 4.7-4.7 12.3 0 17l28.3 28.3c4.7 4.7 12.3 4.7 17 0l19.8-19.8 16.5 16.5C104.1 185.5 96 211.8 96 240c0 68.5 47.9 125.9 112 140.4V408h-36c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v28c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-28h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-27.6c64.1-14.6 112-71.9 112-140.4 0-28.2-8.1-54.5-22.1-76.7l80.7-80.7 16.9 16.9c7.6 7.6 20.5 2.2 20.5-8.5V12c0-6.6-5.4-12-12-12zM240 320c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaTransgender (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M372 0h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-80.7 80.7C198.5 104.1 172.2 96 144 96 64.5 96 0 160.5 0 240c0 68.5 47.9 125.9 112 140.4V408H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v28c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-28h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-27.6c64.1-14.6 112-71.9 112-140.4 0-28.2-8.1-54.5-22.1-76.7l80.7-80.7 16.9 16.9c7.6 7.6 20.5 2.2 20.5-8.5V12c0-6.6-5.4-12-12-12zM144 320c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaTrashAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 464a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128H32zm272-256a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zm-96 0a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zm-96 0a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zM432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaTrashRestoreAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 464a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128H32zm91.31-172.8l89.38-94.26a15.41 15.41 0 0 1 22.62 0l89.38 94.26c10.08 10.62 2.94 28.8-11.32 28.8H256v112a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16V320h-57.37c-14.26 0-21.4-18.18-11.32-28.8zM432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaTrashRestore (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M53.2 467a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128H32zm70.11-175.8l89.38-94.26a15.41 15.41 0 0 1 22.62 0l89.38 94.26c10.08 10.62 2.94 28.8-11.32 28.8H256v112a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16V320h-57.37c-14.26 0-21.4-18.18-11.32-28.8zM432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaTrash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM53.2 467a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128H32z\"},\"child\":[]}]})(props);\n};\nexport function FaTree (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M378.31 378.49L298.42 288h30.63c9.01 0 16.98-5 20.78-13.06 3.8-8.04 2.55-17.26-3.28-24.05L268.42 160h28.89c9.1 0 17.3-5.35 20.86-13.61 3.52-8.13 1.86-17.59-4.24-24.08L203.66 4.83c-6.03-6.45-17.28-6.45-23.32 0L70.06 122.31c-6.1 6.49-7.75 15.95-4.24 24.08C69.38 154.65 77.59 160 86.69 160h28.89l-78.14 90.91c-5.81 6.78-7.06 15.99-3.27 24.04C37.97 283 45.93 288 54.95 288h30.63L5.69 378.49c-6 6.79-7.36 16.09-3.56 24.26 3.75 8.05 12 13.25 21.01 13.25H160v24.45l-30.29 48.4c-5.32 10.64 2.42 23.16 14.31 23.16h95.96c11.89 0 19.63-12.52 14.31-23.16L224 440.45V416h136.86c9.01 0 17.26-5.2 21.01-13.25 3.8-8.17 2.44-17.47-3.56-24.26z\"},\"child\":[]}]})(props);\n};\nexport function FaTrophy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M552 64H448V24c0-13.3-10.7-24-24-24H152c-13.3 0-24 10.7-24 24v40H24C10.7 64 0 74.7 0 88v56c0 35.7 22.5 72.4 61.9 100.7 31.5 22.7 69.8 37.1 110 41.7C203.3 338.5 240 360 240 360v72h-48c-35.3 0-64 20.7-64 56v12c0 6.6 5.4 12 12 12h296c6.6 0 12-5.4 12-12v-12c0-35.3-28.7-56-64-56h-48v-72s36.7-21.5 68.1-73.6c40.3-4.6 78.6-19 110-41.7 39.3-28.3 61.9-65 61.9-100.7V88c0-13.3-10.7-24-24-24zM99.3 192.8C74.9 175.2 64 155.6 64 144v-16h64.2c1 32.6 5.8 61.2 12.8 86.2-15.1-5.2-29.2-12.4-41.7-21.4zM512 144c0 16.1-17.7 36.1-35.3 48.8-12.5 9-26.7 16.2-41.8 21.4 7-25 11.8-53.6 12.8-86.2H512v16z\"},\"child\":[]}]})(props);\n};\nexport function FaTruckLoading (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M50.2 375.6c2.3 8.5 11.1 13.6 19.6 11.3l216.4-58c8.5-2.3 13.6-11.1 11.3-19.6l-49.7-185.5c-2.3-8.5-11.1-13.6-19.6-11.3L151 133.3l24.8 92.7-61.8 16.5-24.8-92.7-77.3 20.7C3.4 172.8-1.7 181.6.6 190.1l49.6 185.5zM384 0c-17.7 0-32 14.3-32 32v323.6L5.9 450c-4.3 1.2-6.8 5.6-5.6 9.8l12.6 46.3c1.2 4.3 5.6 6.8 9.8 5.6l393.7-107.4C418.8 464.1 467.6 512 528 512c61.9 0 112-50.1 112-112V0H384zm144 448c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaTruckMonster (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 224h-16v-64c0-17.67-14.33-32-32-32h-73.6L419.22 24.02A64.025 64.025 0 0 0 369.24 0H256c-17.67 0-32 14.33-32 32v96H48c-8.84 0-16 7.16-16 16v80H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16.72c29.21-38.65 75.1-64 127.28-64s98.07 25.35 127.28 64h65.45c29.21-38.65 75.1-64 127.28-64s98.07 25.35 127.28 64H624c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-336-96V64h81.24l51.2 64H288zm304 224h-5.2c-2.2-7.33-5.07-14.28-8.65-20.89l3.67-3.67c6.25-6.25 6.25-16.38 0-22.63l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0l-3.67 3.67A110.85 110.85 0 0 0 512 277.2V272c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v5.2c-7.33 2.2-14.28 5.07-20.89 8.65l-3.67-3.67c-6.25-6.25-16.38-6.25-22.63 0l-22.63 22.63c-6.25 6.25-6.25 16.38 0 22.63l3.67 3.67A110.85 110.85 0 0 0 373.2 352H368c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h5.2c2.2 7.33 5.07 14.28 8.65 20.89l-3.67 3.67c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l3.67-3.67c6.61 3.57 13.57 6.45 20.9 8.65v5.2c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-5.2c7.33-2.2 14.28-5.07 20.9-8.65l3.67 3.67c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.25-6.25 6.25-16.38 0-22.63l-3.67-3.67a110.85 110.85 0 0 0 8.65-20.89h5.2c8.84 0 16-7.16 16-16v-32c-.02-8.84-7.18-16-16.02-16zm-112 80c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm-208-80h-5.2c-2.2-7.33-5.07-14.28-8.65-20.89l3.67-3.67c6.25-6.25 6.25-16.38 0-22.63l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0l-3.67 3.67A110.85 110.85 0 0 0 192 277.2V272c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v5.2c-7.33 2.2-14.28 5.07-20.89 8.65l-3.67-3.67c-6.25-6.25-16.38-6.25-22.63 0L58.18 304.8c-6.25 6.25-6.25 16.38 0 22.63l3.67 3.67a110.85 110.85 0 0 0-8.65 20.89H48c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h5.2c2.2 7.33 5.07 14.28 8.65 20.89l-3.67 3.67c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l3.67-3.67c6.61 3.57 13.57 6.45 20.9 8.65v5.2c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-5.2c7.33-2.2 14.28-5.07 20.9-8.65l3.67 3.67c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.25-6.25 6.25-16.38 0-22.63l-3.67-3.67a110.85 110.85 0 0 0 8.65-20.89h5.2c8.84 0 16-7.16 16-16v-32C288 359.16 280.84 352 272 352zm-112 80c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaTruckMoving (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M621.3 237.3l-58.5-58.5c-12-12-28.3-18.7-45.3-18.7H480V64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64v336c0 44.2 35.8 80 80 80 26.3 0 49.4-12.9 64-32.4 14.6 19.6 37.7 32.4 64 32.4 44.2 0 80-35.8 80-80 0-5.5-.6-10.8-1.6-16h163.2c-1.1 5.2-1.6 10.5-1.6 16 0 44.2 35.8 80 80 80s80-35.8 80-80c0-5.5-.6-10.8-1.6-16H624c8.8 0 16-7.2 16-16v-85.5c0-17-6.7-33.2-18.7-45.2zM80 432c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm128 0c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm272-224h37.5c4.3 0 8.3 1.7 11.3 4.7l43.3 43.3H480v-48zm48 224c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaTruckPickup (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 288h-16v-64c0-17.67-14.33-32-32-32h-48L419.22 56.02A64.025 64.025 0 0 0 369.24 32H256c-17.67 0-32 14.33-32 32v128H64c-17.67 0-32 14.33-32 32v64H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h49.61c-.76 5.27-1.61 10.52-1.61 16 0 61.86 50.14 112 112 112s112-50.14 112-112c0-5.48-.85-10.73-1.61-16h67.23c-.76 5.27-1.61 10.52-1.61 16 0 61.86 50.14 112 112 112s112-50.14 112-112c0-5.48-.85-10.73-1.61-16H624c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM288 96h81.24l76.8 96H288V96zM176 416c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48zm288 0c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48z\"},\"child\":[]}]})(props);\n};\nexport function FaTruck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 352h-16V243.9c0-12.7-5.1-24.9-14.1-33.9L494 110.1c-9-9-21.2-14.1-33.9-14.1H416V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v320c0 26.5 21.5 48 48 48h16c0 53 43 96 96 96s96-43 96-96h128c0 53 43 96 96 96s96-43 96-96h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM160 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm320 0c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-208H416V144h44.1l99.9 99.9V256z\"},\"child\":[]}]})(props);\n};\nexport function FaTshirt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M631.2 96.5L436.5 0C416.4 27.8 371.9 47.2 320 47.2S223.6 27.8 203.5 0L8.8 96.5c-7.9 4-11.1 13.6-7.2 21.5l57.2 114.5c4 7.9 13.6 11.1 21.5 7.2l56.6-27.7c10.6-5.2 23 2.5 23 14.4V480c0 17.7 14.3 32 32 32h256c17.7 0 32-14.3 32-32V226.3c0-11.8 12.4-19.6 23-14.4l56.6 27.7c7.9 4 17.5.8 21.5-7.2L638.3 118c4-7.9.8-17.6-7.1-21.5z\"},\"child\":[]}]})(props);\n};\nexport function FaTty (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.37 103.822c138.532-138.532 362.936-138.326 501.262 0 6.078 6.078 7.074 15.496 2.583 22.681l-43.214 69.138a18.332 18.332 0 0 1-22.356 7.305l-86.422-34.569a18.335 18.335 0 0 1-11.434-18.846L351.741 90c-62.145-22.454-130.636-21.986-191.483 0l5.953 59.532a18.331 18.331 0 0 1-11.434 18.846l-86.423 34.568a18.334 18.334 0 0 1-22.356-7.305L2.787 126.502a18.333 18.333 0 0 1 2.583-22.68zM96 308v-40c0-6.627-5.373-12-12-12H44c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12H92c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zM96 500v-40c0-6.627-5.373-12-12-12H44c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm288 0v-40c0-6.627-5.373-12-12-12H140c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h232c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaTv (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M592 0H48A48 48 0 0 0 0 48v320a48 48 0 0 0 48 48h240v32H112a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H352v-32h240a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zm-16 352H64V64h512z\"},\"child\":[]}]})(props);\n};\nexport function FaUmbrellaBeach (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M115.38 136.9l102.11 37.18c35.19-81.54 86.21-144.29 139-173.7-95.88-4.89-188.78 36.96-248.53 111.8-6.69 8.4-2.66 21.05 7.42 24.72zm132.25 48.16l238.48 86.83c35.76-121.38 18.7-231.66-42.63-253.98-7.4-2.7-15.13-4-23.09-4-58.02.01-128.27 69.17-172.76 171.15zM521.48 60.5c6.22 16.3 10.83 34.6 13.2 55.19 5.74 49.89-1.42 108.23-18.95 166.98l102.62 37.36c10.09 3.67 21.31-3.43 21.57-14.17 2.32-95.69-41.91-187.44-118.44-245.36zM560 447.98H321.06L386 269.5l-60.14-21.9-72.9 200.37H16c-8.84 0-16 7.16-16 16.01v32.01C0 504.83 7.16 512 16 512h544c8.84 0 16-7.17 16-16.01v-32.01c0-8.84-7.16-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaUmbrella (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M575.7 280.8C547.1 144.5 437.3 62.6 320 49.9V32c0-17.7-14.3-32-32-32s-32 14.3-32 32v17.9C138.3 62.6 29.5 144.5.3 280.8c-2.2 10.1 8.5 21.3 18.7 11.4 52-55 107.7-52.4 158.6 37 5.3 9.5 14.9 8.6 19.7 0 20.2-35.4 44.9-73.2 90.7-73.2 58.5 0 88.2 68.8 90.7 73.2 4.8 8.6 14.4 9.5 19.7 0 51-89.5 107.1-91.4 158.6-37 10.3 10 20.9-1.3 18.7-11.4zM256 301.7V432c0 8.8-7.2 16-16 16-7.8 0-13.2-5.3-15.1-10.7-5.9-16.7-24.1-25.4-40.8-19.5-16.7 5.9-25.4 24.2-19.5 40.8 11.2 31.9 41.6 53.3 75.4 53.3 44.1 0 80-35.9 80-80V301.6c-9.1-7.9-19.8-13.6-32-13.6-12.3.1-22.4 4.8-32 13.7z\"},\"child\":[]}]})(props);\n};\nexport function FaUnderline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 64h32v160c0 88.22 71.78 160 160 160s160-71.78 160-160V64h32a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16H272a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32v160a80 80 0 0 1-160 0V64h32a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16H32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm400 384H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaUndoAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M255.545 8c-66.269.119-126.438 26.233-170.86 68.685L48.971 40.971C33.851 25.851 8 36.559 8 57.941V192c0 13.255 10.745 24 24 24h134.059c21.382 0 32.09-25.851 16.971-40.971l-41.75-41.75c30.864-28.899 70.801-44.907 113.23-45.273 92.398-.798 170.283 73.977 169.484 169.442C423.236 348.009 349.816 424 256 424c-41.127 0-79.997-14.678-110.63-41.556-4.743-4.161-11.906-3.908-16.368.553L89.34 422.659c-4.872 4.872-4.631 12.815.482 17.433C133.798 479.813 192.074 504 256 504c136.966 0 247.999-111.033 248-247.998C504.001 119.193 392.354 7.755 255.545 8z\"},\"child\":[]}]})(props);\n};\nexport function FaUndo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M212.333 224.333H12c-6.627 0-12-5.373-12-12V12C0 5.373 5.373 0 12 0h48c6.627 0 12 5.373 12 12v78.112C117.773 39.279 184.26 7.47 258.175 8.007c136.906.994 246.448 111.623 246.157 248.532C504.041 393.258 393.12 504 256.333 504c-64.089 0-122.496-24.313-166.51-64.215-5.099-4.622-5.334-12.554-.467-17.42l33.967-33.967c4.474-4.474 11.662-4.717 16.401-.525C170.76 415.336 211.58 432 256.333 432c97.268 0 176-78.716 176-176 0-97.267-78.716-176-176-176-58.496 0-110.28 28.476-142.274 72.333h98.274c6.627 0 12 5.373 12 12v48c0 6.627-5.373 12-12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaUniversalAccess (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48c114.953 0 208 93.029 208 208 0 114.953-93.029 208-208 208-114.953 0-208-93.029-208-208 0-114.953 93.029-208 208-208m0-40C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 56C149.961 64 64 149.961 64 256s85.961 192 192 192 192-85.961 192-192S362.039 64 256 64zm0 44c19.882 0 36 16.118 36 36s-16.118 36-36 36-36-16.118-36-36 16.118-36 36-36zm117.741 98.023c-28.712 6.779-55.511 12.748-82.14 15.807.851 101.023 12.306 123.052 25.037 155.621 3.617 9.26-.957 19.698-10.217 23.315-9.261 3.617-19.699-.957-23.316-10.217-8.705-22.308-17.086-40.636-22.261-78.549h-9.686c-5.167 37.851-13.534 56.208-22.262 78.549-3.615 9.255-14.05 13.836-23.315 10.217-9.26-3.617-13.834-14.056-10.217-23.315 12.713-32.541 24.185-54.541 25.037-155.621-26.629-3.058-53.428-9.027-82.141-15.807-8.6-2.031-13.926-10.648-11.895-19.249s10.647-13.926 19.249-11.895c96.686 22.829 124.283 22.783 220.775 0 8.599-2.03 17.218 3.294 19.249 11.895 2.029 8.601-3.297 17.219-11.897 19.249z\"},\"child\":[]}]})(props);\n};\nexport function FaUniversity (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 128v16a8 8 0 0 1-8 8h-24v12c0 6.627-5.373 12-12 12H60c-6.627 0-12-5.373-12-12v-12H24a8 8 0 0 1-8-8v-16a8 8 0 0 1 4.941-7.392l232-88a7.996 7.996 0 0 1 6.118 0l232 88A8 8 0 0 1 496 128zm-24 304H40c-13.255 0-24 10.745-24 24v16a8 8 0 0 0 8 8h464a8 8 0 0 0 8-8v-16c0-13.255-10.745-24-24-24zM96 192v192H60c-6.627 0-12 5.373-12 12v20h416v-20c0-6.627-5.373-12-12-12h-36V192h-64v192h-64V192h-64v192h-64V192H96z\"},\"child\":[]}]})(props);\n};\nexport function FaUnlink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304.083 405.907c4.686 4.686 4.686 12.284 0 16.971l-44.674 44.674c-59.263 59.262-155.693 59.266-214.961 0-59.264-59.265-59.264-155.696 0-214.96l44.675-44.675c4.686-4.686 12.284-4.686 16.971 0l39.598 39.598c4.686 4.686 4.686 12.284 0 16.971l-44.675 44.674c-28.072 28.073-28.072 73.75 0 101.823 28.072 28.072 73.75 28.073 101.824 0l44.674-44.674c4.686-4.686 12.284-4.686 16.971 0l39.597 39.598zm-56.568-260.216c4.686 4.686 12.284 4.686 16.971 0l44.674-44.674c28.072-28.075 73.75-28.073 101.824 0 28.072 28.073 28.072 73.75 0 101.823l-44.675 44.674c-4.686 4.686-4.686 12.284 0 16.971l39.598 39.598c4.686 4.686 12.284 4.686 16.971 0l44.675-44.675c59.265-59.265 59.265-155.695 0-214.96-59.266-59.264-155.695-59.264-214.961 0l-44.674 44.674c-4.686 4.686-4.686 12.284 0 16.971l39.597 39.598zm234.828 359.28l22.627-22.627c9.373-9.373 9.373-24.569 0-33.941L63.598 7.029c-9.373-9.373-24.569-9.373-33.941 0L7.029 29.657c-9.373 9.373-9.373 24.569 0 33.941l441.373 441.373c9.373 9.372 24.569 9.372 33.941 0z\"},\"child\":[]}]})(props);\n};\nexport function FaUnlockAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"},\"child\":[]}]})(props);\n};\nexport function FaUnlock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaUpload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M296 384h-80c-13.3 0-24-10.7-24-24V192h-87.7c-17.8 0-26.7-21.5-14.1-34.1L242.3 5.7c7.5-7.5 19.8-7.5 27.3 0l152.2 152.2c12.6 12.6 3.7 34.1-14.1 34.1H320v168c0 13.3-10.7 24-24 24zm216-8v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h136v8c0 30.9 25.1 56 56 56h80c30.9 0 56-25.1 56-56v-8h136c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z\"},\"child\":[]}]})(props);\n};\nexport function FaUserAltSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M633.8 458.1L389.6 269.3C433.8 244.7 464 198.1 464 144 464 64.5 399.5 0 320 0c-67.1 0-123 46.1-139 108.2L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4l588.4 454.7c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.4-6.8 4.1-16.9-2.9-22.3zM198.4 320C124.2 320 64 380.2 64 454.4v9.6c0 26.5 21.5 48 48 48h382.2L245.8 320h-47.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUserAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 288c79.5 0 144-64.5 144-144S335.5 0 256 0 112 64.5 112 144s64.5 144 144 144zm128 32h-55.1c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16H128C57.3 320 0 377.3 0 448v16c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48v-16c0-70.7-57.3-128-128-128z\"},\"child\":[]}]})(props);\n};\nexport function FaUserAstronaut (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 224h13.5c24.7 56.5 80.9 96 146.5 96s121.8-39.5 146.5-96H384c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16h-13.5C345.8 39.5 289.6 0 224 0S102.2 39.5 77.5 96H64c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16zm40-88c0-22.1 21.5-40 48-40h144c26.5 0 48 17.9 48 40v24c0 53-43 96-96 96h-48c-53 0-96-43-96-96v-24zm72 72l12-36 36-12-36-12-12-36-12 36-36 12 36 12 12 36zm151.6 113.4C297.7 340.7 262.2 352 224 352s-73.7-11.3-103.6-30.6C52.9 328.5 0 385 0 454.4v9.6c0 26.5 21.5 48 48 48h80v-64c0-17.7 14.3-32 32-32h128c17.7 0 32 14.3 32 32v64h80c26.5 0 48-21.5 48-48v-9.6c0-69.4-52.9-125.9-120.4-133zM272 448c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-96 0c-8.8 0-16 7.2-16 16v48h32v-48c0-8.8-7.2-16-16-16z\"},\"child\":[]}]})(props);\n};\nexport function FaUserCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4zm323-128.4l-27.8-28.1c-4.6-4.7-12.1-4.7-16.8-.1l-104.8 104-45.5-45.8c-4.6-4.7-12.1-4.7-16.8-.1l-28.1 27.9c-4.7 4.6-4.7 12.1-.1 16.8l81.7 82.3c4.6 4.7 12.1 4.7 16.8.1l141.3-140.2c4.6-4.7 4.7-12.2.1-16.8z\"},\"child\":[]}]})(props);\n};\nexport function FaUserCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 96c48.6 0 88 39.4 88 88s-39.4 88-88 88-88-39.4-88-88 39.4-88 88-88zm0 344c-58.7 0-111.3-26.6-146.5-68.2 18.8-35.4 55.6-59.8 98.5-59.8 2.4 0 4.8.4 7.1 1.1 13 4.2 26.6 6.9 40.9 6.9 14.3 0 28-2.7 40.9-6.9 2.3-.7 4.7-1.1 7.1-1.1 42.9 0 79.7 24.4 98.5 59.8C359.3 421.4 306.7 448 248 448z\"},\"child\":[]}]})(props);\n};\nexport function FaUserClock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 224c-79.6 0-144 64.4-144 144s64.4 144 144 144 144-64.4 144-144-64.4-144-144-144zm64 150.3c0 5.3-4.4 9.7-9.7 9.7h-60.6c-5.3 0-9.7-4.4-9.7-9.7v-76.6c0-5.3 4.4-9.7 9.7-9.7h12.6c5.3 0 9.7 4.4 9.7 9.7V352h38.3c5.3 0 9.7 4.4 9.7 9.7v12.6zM320 368c0-27.8 6.7-54.1 18.2-77.5-8-1.5-16.2-2.5-24.6-2.5h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h347.1c-45.3-31.9-75.1-84.5-75.1-144zm-96-112c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128z\"},\"child\":[]}]})(props);\n};\nexport function FaUserCog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M610.5 373.3c2.6-14.1 2.6-28.5 0-42.6l25.8-14.9c3-1.7 4.3-5.2 3.3-8.5-6.7-21.6-18.2-41.2-33.2-57.4-2.3-2.5-6-3.1-9-1.4l-25.8 14.9c-10.9-9.3-23.4-16.5-36.9-21.3v-29.8c0-3.4-2.4-6.4-5.7-7.1-22.3-5-45-4.8-66.2 0-3.3.7-5.7 3.7-5.7 7.1v29.8c-13.5 4.8-26 12-36.9 21.3l-25.8-14.9c-2.9-1.7-6.7-1.1-9 1.4-15 16.2-26.5 35.8-33.2 57.4-1 3.3.4 6.8 3.3 8.5l25.8 14.9c-2.6 14.1-2.6 28.5 0 42.6l-25.8 14.9c-3 1.7-4.3 5.2-3.3 8.5 6.7 21.6 18.2 41.1 33.2 57.4 2.3 2.5 6 3.1 9 1.4l25.8-14.9c10.9 9.3 23.4 16.5 36.9 21.3v29.8c0 3.4 2.4 6.4 5.7 7.1 22.3 5 45 4.8 66.2 0 3.3-.7 5.7-3.7 5.7-7.1v-29.8c13.5-4.8 26-12 36.9-21.3l25.8 14.9c2.9 1.7 6.7 1.1 9-1.4 15-16.2 26.5-35.8 33.2-57.4 1-3.3-.4-6.8-3.3-8.5l-25.8-14.9zM496 400.5c-26.8 0-48.5-21.8-48.5-48.5s21.8-48.5 48.5-48.5 48.5 21.8 48.5 48.5-21.7 48.5-48.5 48.5zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm201.2 226.5c-2.3-1.2-4.6-2.6-6.8-3.9l-7.9 4.6c-6 3.4-12.8 5.3-19.6 5.3-10.9 0-21.4-4.6-28.9-12.6-18.3-19.8-32.3-43.9-40.2-69.6-5.5-17.7 1.9-36.4 17.9-45.7l7.9-4.6c-.1-2.6-.1-5.2 0-7.8l-7.9-4.6c-16-9.2-23.4-28-17.9-45.7.9-2.9 2.2-5.8 3.2-8.7-3.8-.3-7.5-1.2-11.4-1.2h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c10.1 0 19.5-3.2 27.2-8.5-1.2-3.8-2-7.7-2-11.8v-9.2z\"},\"child\":[]}]})(props);\n};\nexport function FaUserEdit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h274.9c-2.4-6.8-3.4-14-2.6-21.3l6.8-60.9 1.2-11.1 7.9-7.9 77.3-77.3c-24.5-27.7-60-45.5-99.9-45.5zm45.3 145.3l-6.8 61c-1.1 10.2 7.5 18.8 17.6 17.6l60.9-6.8 137.9-137.9-71.7-71.7-137.9 137.8zM633 268.9L595.1 231c-9.3-9.3-24.5-9.3-33.8 0l-37.8 37.8-4.1 4.1 71.8 71.7 41.8-41.8c9.3-9.4 9.3-24.5 0-33.9z\"},\"child\":[]}]})(props);\n};\nexport function FaUserFriends (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 256c61.9 0 112-50.1 112-112S253.9 32 192 32 80 82.1 80 144s50.1 112 112 112zm76.8 32h-8.3c-20.8 10-43.9 16-68.5 16s-47.6-6-68.5-16h-8.3C51.6 288 0 339.6 0 403.2V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-28.8c0-63.6-51.6-115.2-115.2-115.2zM480 256c53 0 96-43 96-96s-43-96-96-96-96 43-96 96 43 96 96 96zm48 32h-3.8c-13.9 4.8-28.6 8-44.2 8s-30.3-3.2-44.2-8H432c-20.4 0-39.2 5.9-55.7 15.4 24.4 26.3 39.7 61.2 39.7 99.8v38.4c0 2.2-.5 4.3-.6 6.4H592c26.5 0 48-21.5 48-48 0-61.9-50.1-112-112-112z\"},\"child\":[]}]})(props);\n};\nexport function FaUserGraduate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M319.4 320.6L224 416l-95.4-95.4C57.1 323.7 0 382.2 0 454.4v9.6c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-9.6c0-72.2-57.1-130.7-128.6-133.8zM13.6 79.8l6.4 1.5v58.4c-7 4.2-12 11.5-12 20.3 0 8.4 4.6 15.4 11.1 19.7L3.5 242c-1.7 6.9 2.1 14 7.6 14h41.8c5.5 0 9.3-7.1 7.6-14l-15.6-62.3C51.4 175.4 56 168.4 56 160c0-8.8-5-16.1-12-20.3V87.1l66 15.9c-8.6 17.2-14 36.4-14 57 0 70.7 57.3 128 128 128s128-57.3 128-128c0-20.6-5.3-39.8-14-57l96.3-23.2c18.2-4.4 18.2-27.1 0-31.5l-190.4-46c-13-3.1-26.7-3.1-39.7 0L13.6 48.2c-18.1 4.4-18.1 27.2 0 31.6z\"},\"child\":[]}]})(props);\n};\nexport function FaUserInjured (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M277.37 11.98C261.08 4.47 243.11 0 224 0c-53.69 0-99.5 33.13-118.51 80h81.19l90.69-68.02zM342.51 80c-7.9-19.47-20.67-36.2-36.49-49.52L239.99 80h102.52zM224 256c70.69 0 128-57.31 128-128 0-5.48-.95-10.7-1.61-16H97.61c-.67 5.3-1.61 10.52-1.61 16 0 70.69 57.31 128 128 128zM80 299.7V512h128.26l-98.45-221.52A132.835 132.835 0 0 0 80 299.7zM0 464c0 26.51 21.49 48 48 48V320.24C18.88 344.89 0 381.26 0 422.4V464zm256-48h-55.38l42.67 96H256c26.47 0 48-21.53 48-48s-21.53-48-48-48zm57.6-128h-16.71c-22.24 10.18-46.88 16-72.89 16s-50.65-5.82-72.89-16h-7.37l42.67 96H256c44.11 0 80 35.89 80 80 0 18.08-6.26 34.59-16.41 48H400c26.51 0 48-21.49 48-48v-41.6c0-74.23-60.17-134.4-134.4-134.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUserLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 256A128 128 0 1 0 96 128a128 128 0 0 0 128 128zm96 64a63.08 63.08 0 0 1 8.1-30.5c-4.8-.5-9.5-1.5-14.5-1.5h-16.7a174.08 174.08 0 0 1-145.8 0h-16.7A134.43 134.43 0 0 0 0 422.4V464a48 48 0 0 0 48 48h280.9a63.54 63.54 0 0 1-8.9-32zm288-32h-32v-80a80 80 0 0 0-160 0v80h-32a32 32 0 0 0-32 32v160a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V320a32 32 0 0 0-32-32zM496 432a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm32-144h-64v-80a32 32 0 0 1 64 0z\"},\"child\":[]}]})(props);\n};\nexport function FaUserMd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zM104 424c0 13.3 10.7 24 24 24s24-10.7 24-24-10.7-24-24-24-24 10.7-24 24zm216-135.4v49c36.5 7.4 64 39.8 64 78.4v41.7c0 7.6-5.4 14.2-12.9 15.7l-32.2 6.4c-4.3.9-8.5-1.9-9.4-6.3l-3.1-15.7c-.9-4.3 1.9-8.6 6.3-9.4l19.3-3.9V416c0-62.8-96-65.1-96 1.9v26.7l19.3 3.9c4.3.9 7.1 5.1 6.3 9.4l-3.1 15.7c-.9 4.3-5.1 7.1-9.4 6.3l-31.2-4.2c-7.9-1.1-13.8-7.8-13.8-15.9V416c0-38.6 27.5-70.9 64-78.4v-45.2c-2.2.7-4.4 1.1-6.6 1.9-18 6.3-37.3 9.8-57.4 9.8s-39.4-3.5-57.4-9.8c-7.4-2.6-14.9-4.2-22.6-5.2v81.6c23.1 6.9 40 28.1 40 53.4 0 30.9-25.1 56-56 56s-56-25.1-56-56c0-25.3 16.9-46.5 40-53.4v-80.4C48.5 301 0 355.8 0 422.4v44.8C0 491.9 20.1 512 44.8 512h358.4c24.7 0 44.8-20.1 44.8-44.8v-44.8c0-72-56.8-130.3-128-133.8z\"},\"child\":[]}]})(props);\n};\nexport function FaUserMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 208H432c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h192c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm-400 48c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUserNinja (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M325.4 289.2L224 390.6 122.6 289.2C54 295.3 0 352.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-70.2-54-127.1-122.6-133.2zM32 192c27.3 0 51.8-11.5 69.2-29.7 15.1 53.9 64 93.7 122.8 93.7 70.7 0 128-57.3 128-128S294.7 0 224 0c-50.4 0-93.6 29.4-114.5 71.8C92.1 47.8 64 32 32 32c0 33.4 17.1 62.8 43.1 80-26 17.2-43.1 46.6-43.1 80zm144-96h96c17.7 0 32 14.3 32 32H144c0-17.7 14.3-32 32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaUserNurse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M319.41,320,224,415.39,128.59,320C57.1,323.1,0,381.6,0,453.79A58.21,58.21,0,0,0,58.21,512H389.79A58.21,58.21,0,0,0,448,453.79C448,381.6,390.9,323.1,319.41,320ZM224,304A128,128,0,0,0,352,176V65.82a32,32,0,0,0-20.76-30L246.47,4.07a64,64,0,0,0-44.94,0L116.76,35.86A32,32,0,0,0,96,65.82V176A128,128,0,0,0,224,304ZM184,71.67a5,5,0,0,1,5-5h21.67V45a5,5,0,0,1,5-5h16.66a5,5,0,0,1,5,5V66.67H259a5,5,0,0,1,5,5V88.33a5,5,0,0,1-5,5H237.33V115a5,5,0,0,1-5,5H215.67a5,5,0,0,1-5-5V93.33H189a5,5,0,0,1-5-5ZM144,160H304v16a80,80,0,0,1-160,0Z\"},\"child\":[]}]})(props);\n};\nexport function FaUserPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624 208h-64v-64c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v64h-64c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h64v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-64h64c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm-400 48c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUserSecret (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M383.9 308.3l23.9-62.6c4-10.5-3.7-21.7-15-21.7h-58.5c11-18.9 17.8-40.6 17.8-64v-.3c39.2-7.8 64-19.1 64-31.7 0-13.3-27.3-25.1-70.1-33-9.2-32.8-27-65.8-40.6-82.8-9.5-11.9-25.9-15.6-39.5-8.8l-27.6 13.8c-9 4.5-19.6 4.5-28.6 0L182.1 3.4c-13.6-6.8-30-3.1-39.5 8.8-13.5 17-31.4 50-40.6 82.8-42.7 7.9-70 19.7-70 33 0 12.6 24.8 23.9 64 31.7v.3c0 23.4 6.8 45.1 17.8 64H56.3c-11.5 0-19.2 11.7-14.7 22.3l25.8 60.2C27.3 329.8 0 372.7 0 422.4v44.8C0 491.9 20.1 512 44.8 512h358.4c24.7 0 44.8-20.1 44.8-44.8v-44.8c0-48.4-25.8-90.4-64.1-114.1zM176 480l-41.6-192 49.6 32 24 40-32 120zm96 0l-32-120 24-40 49.6-32L272 480zm41.7-298.5c-3.9 11.9-7 24.6-16.5 33.4-10.1 9.3-48 22.4-64-25-2.8-8.4-15.4-8.4-18.3 0-17 50.2-56 32.4-64 25-9.5-8.8-12.7-21.5-16.5-33.4-.8-2.5-6.3-5.7-6.3-5.8v-10.8c28.3 3.6 61 5.8 96 5.8s67.7-2.1 96-5.8v10.8c-.1.1-5.6 3.2-6.4 5.8z\"},\"child\":[]}]})(props);\n};\nexport function FaUserShield (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M622.3 271.1l-115.2-45c-4.1-1.6-12.6-3.7-22.2 0l-115.2 45c-10.7 4.2-17.7 14-17.7 24.9 0 111.6 68.7 188.8 132.9 213.9 9.6 3.7 18 1.6 22.2 0C558.4 489.9 640 420.5 640 296c0-10.9-7-20.7-17.7-24.9zM496 462.4V273.3l95.5 37.3c-5.6 87.1-60.9 135.4-95.5 151.8zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm96 40c0-2.5.8-4.8 1.1-7.2-2.5-.1-4.9-.8-7.5-.8h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c6.8 0 13.3-1.5 19.2-4-54-42.9-99.2-116.7-99.2-212z\"},\"child\":[]}]})(props);\n};\nexport function FaUserSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M633.8 458.1L362.3 248.3C412.1 230.7 448 183.8 448 128 448 57.3 390.7 0 320 0c-67.1 0-121.5 51.8-126.9 117.4L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4l588.4 454.7c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.4-6.8 4.1-16.9-2.9-22.3zM96 422.4V464c0 26.5 21.5 48 48 48h350.2L207.4 290.3C144.2 301.3 96 356 96 422.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUserTag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M630.6 364.9l-90.3-90.2c-12-12-28.3-18.7-45.3-18.7h-79.3c-17.7 0-32 14.3-32 32v79.2c0 17 6.7 33.2 18.7 45.2l90.3 90.2c12.5 12.5 32.8 12.5 45.3 0l92.5-92.5c12.6-12.5 12.6-32.7.1-45.2zm-182.8-21c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24c0 13.2-10.7 24-24 24zm-223.8-88c70.7 0 128-57.3 128-128C352 57.3 294.7 0 224 0S96 57.3 96 128c0 70.6 57.3 127.9 128 127.9zm127.8 111.2V294c-12.2-3.6-24.9-6.2-38.2-6.2h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 287.9 0 348.1 0 422.3v41.6c0 26.5 21.5 48 48 48h352c15.5 0 29.1-7.5 37.9-18.9l-58-58c-18.1-18.1-28.1-42.2-28.1-67.9z\"},\"child\":[]}]})(props);\n};\nexport function FaUserTie (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm95.8 32.6L272 480l-32-136 32-56h-96l32 56-32 136-47.8-191.4C56.9 292 0 350.3 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-72.1-56.9-130.4-128.2-133.8z\"},\"child\":[]}]})(props);\n};\nexport function FaUserTimes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M589.6 240l45.6-45.6c6.3-6.3 6.3-16.5 0-22.8l-22.8-22.8c-6.3-6.3-16.5-6.3-22.8 0L544 194.4l-45.6-45.6c-6.3-6.3-16.5-6.3-22.8 0l-22.8 22.8c-6.3 6.3-6.3 16.5 0 22.8l45.6 45.6-45.6 45.6c-6.3 6.3-6.3 16.5 0 22.8l22.8 22.8c6.3 6.3 16.5 6.3 22.8 0l45.6-45.6 45.6 45.6c6.3 6.3 16.5 6.3 22.8 0l22.8-22.8c6.3-6.3 6.3-16.5 0-22.8L589.6 240zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUser (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUsersCog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M610.5 341.3c2.6-14.1 2.6-28.5 0-42.6l25.8-14.9c3-1.7 4.3-5.2 3.3-8.5-6.7-21.6-18.2-41.2-33.2-57.4-2.3-2.5-6-3.1-9-1.4l-25.8 14.9c-10.9-9.3-23.4-16.5-36.9-21.3v-29.8c0-3.4-2.4-6.4-5.7-7.1-22.3-5-45-4.8-66.2 0-3.3.7-5.7 3.7-5.7 7.1v29.8c-13.5 4.8-26 12-36.9 21.3l-25.8-14.9c-2.9-1.7-6.7-1.1-9 1.4-15 16.2-26.5 35.8-33.2 57.4-1 3.3.4 6.8 3.3 8.5l25.8 14.9c-2.6 14.1-2.6 28.5 0 42.6l-25.8 14.9c-3 1.7-4.3 5.2-3.3 8.5 6.7 21.6 18.2 41.1 33.2 57.4 2.3 2.5 6 3.1 9 1.4l25.8-14.9c10.9 9.3 23.4 16.5 36.9 21.3v29.8c0 3.4 2.4 6.4 5.7 7.1 22.3 5 45 4.8 66.2 0 3.3-.7 5.7-3.7 5.7-7.1v-29.8c13.5-4.8 26-12 36.9-21.3l25.8 14.9c2.9 1.7 6.7 1.1 9-1.4 15-16.2 26.5-35.8 33.2-57.4 1-3.3-.4-6.8-3.3-8.5l-25.8-14.9zM496 368.5c-26.8 0-48.5-21.8-48.5-48.5s21.8-48.5 48.5-48.5 48.5 21.8 48.5 48.5-21.7 48.5-48.5 48.5zM96 224c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm224 32c1.9 0 3.7-.5 5.6-.6 8.3-21.7 20.5-42.1 36.3-59.2 7.4-8 17.9-12.6 28.9-12.6 6.9 0 13.7 1.8 19.6 5.3l7.9 4.6c.8-.5 1.6-.9 2.4-1.4 7-14.6 11.2-30.8 11.2-48 0-61.9-50.1-112-112-112S208 82.1 208 144c0 61.9 50.1 112 112 112zm105.2 194.5c-2.3-1.2-4.6-2.6-6.8-3.9-8.2 4.8-15.3 9.8-27.5 9.8-10.9 0-21.4-4.6-28.9-12.6-18.3-19.8-32.3-43.9-40.2-69.6-10.7-34.5 24.9-49.7 25.8-50.3-.1-2.6-.1-5.2 0-7.8l-7.9-4.6c-3.8-2.2-7-5-9.8-8.1-3.3.2-6.5.6-9.8.6-24.6 0-47.6-6-68.5-16h-8.3C179.6 288 128 339.6 128 403.2V432c0 26.5 21.5 48 48 48h255.4c-3.7-6-6.2-12.8-6.2-20.3v-9.2zM173.1 274.6C161.5 263.1 145.6 256 128 256H64c-35.3 0-64 28.7-64 64v32c0 17.7 14.3 32 32 32h65.9c6.3-47.4 34.9-87.3 75.2-109.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUsersSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M132.65,212.32,36.21,137.78A63.4,63.4,0,0,0,32,160a63.84,63.84,0,0,0,100.65,52.32Zm40.44,62.28A63.79,63.79,0,0,0,128,256H64A64.06,64.06,0,0,0,0,320v32a32,32,0,0,0,32,32H97.91A146.62,146.62,0,0,1,173.09,274.6ZM544,224a64,64,0,1,0-64-64A64.06,64.06,0,0,0,544,224ZM500.56,355.11a114.24,114.24,0,0,0-84.47-65.28L361,247.23c41.46-16.3,71-55.92,71-103.23A111.93,111.93,0,0,0,320,32c-57.14,0-103.69,42.83-110.6,98.08L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.46A16,16,0,0,0,6.18,53.91L594.53,508.63A16,16,0,0,0,617,505.82l19.64-25.27a16,16,0,0,0-2.81-22.45ZM128,403.21V432a48,48,0,0,0,48,48H464a47.45,47.45,0,0,0,12.57-1.87L232,289.13C173.74,294.83,128,343.42,128,403.21ZM576,256H512a63.79,63.79,0,0,0-45.09,18.6A146.29,146.29,0,0,1,542,384h66a32,32,0,0,0,32-32V320A64.06,64.06,0,0,0,576,256Z\"},\"child\":[]}]})(props);\n};\nexport function FaUsers (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 224c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm448 0c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm32 32h-64c-17.6 0-33.5 7.1-45.1 18.6 40.3 22.1 68.9 62 75.1 109.4h66c17.7 0 32-14.3 32-32v-32c0-35.3-28.7-64-64-64zm-256 0c61.9 0 112-50.1 112-112S381.9 32 320 32 208 82.1 208 144s50.1 112 112 112zm76.8 32h-8.3c-20.8 10-43.9 16-68.5 16s-47.6-6-68.5-16h-8.3C179.6 288 128 339.6 128 403.2V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-28.8c0-63.6-51.6-115.2-115.2-115.2zm-223.7-13.4C161.5 263.1 145.6 256 128 256H64c-35.3 0-64 28.7-64 64v32c0 17.7 14.3 32 32 32h65.9c6.3-47.4 34.9-87.3 75.2-109.4z\"},\"child\":[]}]})(props);\n};\nexport function FaUtensilSpoon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480.1 31.9c-55-55.1-164.9-34.5-227.8 28.5-49.3 49.3-55.1 110-28.8 160.4L9 413.2c-11.6 10.5-12.1 28.5-1 39.5L59.3 504c11 11 29.1 10.5 39.5-1.1l192.4-214.4c50.4 26.3 111.1 20.5 160.4-28.8 63-62.9 83.6-172.8 28.5-227.8z\"},\"child\":[]}]})(props);\n};\nexport function FaUtensils (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 416 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M207.9 15.2c.8 4.7 16.1 94.5 16.1 128.8 0 52.3-27.8 89.6-68.9 104.6L168 486.7c.7 13.7-10.2 25.3-24 25.3H80c-13.7 0-24.7-11.5-24-25.3l12.9-238.1C27.7 233.6 0 196.2 0 144 0 109.6 15.3 19.9 16.1 15.2 19.3-5.1 61.4-5.4 64 16.3v141.2c1.3 3.4 15.1 3.2 16 0 1.4-25.3 7.9-139.2 8-141.8 3.3-20.8 44.7-20.8 47.9 0 .2 2.7 6.6 116.5 8 141.8.9 3.2 14.8 3.4 16 0V16.3c2.6-21.6 44.8-21.4 48-1.1zm119.2 285.7l-15 185.1c-1.2 14 9.9 26 23.9 26h56c13.3 0 24-10.7 24-24V24c0-13.2-10.7-24-24-24-82.5 0-221.4 178.5-64.9 300.9z\"},\"child\":[]}]})(props);\n};\nexport function FaVectorSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 128V32c0-17.67-14.33-32-32-32h-96c-17.67 0-32 14.33-32 32H160c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v96c0 17.67 14.33 32 32 32v192c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32h192c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32V160c17.67 0 32-14.33 32-32zm-96-64h32v32h-32V64zM64 64h32v32H64V64zm32 384H64v-32h32v32zm352 0h-32v-32h32v32zm-32-96h-32c-17.67 0-32 14.33-32 32v32H160v-32c0-17.67-14.33-32-32-32H96V160h32c17.67 0 32-14.33 32-32V96h192v32c0 17.67 14.33 32 32 32h32v192z\"},\"child\":[]}]})(props);\n};\nexport function FaVenusDouble (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 68.5 47.9 125.9 112 140.4V368H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v36c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-36h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-51.6c64.1-14.5 112-71.9 112-140.4zm-224 0c0-44.1 35.9-80 80-80s80 35.9 80 80-35.9 80-80 80-80-35.9-80-80zm336 140.4V368h36c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-36v36c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-36h-36c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h36v-51.6c-21.2-4.8-40.6-14.3-57.2-27.3 14-16.7 25-36 32.1-57.1 14.5 14.8 34.7 24 57.1 24 44.1 0 80-35.9 80-80s-35.9-80-80-80c-22.3 0-42.6 9.2-57.1 24-7.1-21.1-18-40.4-32.1-57.1C303.4 43.6 334.3 32 368 32c79.5 0 144 64.5 144 144 0 68.5-47.9 125.9-112 140.4z\"},\"child\":[]}]})(props);\n};\nexport function FaVenusMars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M564 0h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-48.7 48.7C422.5 72.1 396.2 64 368 64c-33.7 0-64.6 11.6-89.2 30.9 14 16.7 25 36 32.1 57.1 14.5-14.8 34.7-24 57.1-24 44.1 0 80 35.9 80 80s-35.9 80-80 80c-22.3 0-42.6-9.2-57.1-24-7.1 21.1-18 40.4-32.1 57.1 24.5 19.4 55.5 30.9 89.2 30.9 79.5 0 144-64.5 144-144 0-28.2-8.1-54.5-22.1-76.7l48.7-48.7 16.9 16.9c2.4 2.4 5.4 3.5 8.4 3.5 6.2 0 12.1-4.8 12.1-12V12c0-6.6-5.4-12-12-12zM144 64C64.5 64 0 128.5 0 208c0 68.5 47.9 125.9 112 140.4V400H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v36c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-36h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-51.6c64.1-14.6 112-71.9 112-140.4 0-79.5-64.5-144-144-144zm0 224c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaVenus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 68.5 47.9 125.9 112 140.4V368H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v36c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-36h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-51.6c64.1-14.5 112-71.9 112-140.4zm-224 0c0-44.1 35.9-80 80-80s80 35.9 80 80-35.9 80-80 80-80-35.9-80-80z\"},\"child\":[]}]})(props);\n};\nexport function FaVestPatches (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M437.252,239.877,384,160V32A32,32,0,0,0,352,0H320a23.982,23.982,0,0,0-13.312,4.031l-25,16.672a103.794,103.794,0,0,1-115.376,0l-25-16.672A23.982,23.982,0,0,0,128,0H96A32,32,0,0,0,64,32V160L10.748,239.877A64,64,0,0,0,0,275.377V480a32,32,0,0,0,32,32H192V288a31.987,31.987,0,0,1,1.643-10.119L207.135,237.4,150.188,66.561A151.579,151.579,0,0,0,224,86.234a151.565,151.565,0,0,0,73.811-19.668L224,288V512H416a32,32,0,0,0,32-32V275.377A64,64,0,0,0,437.252,239.877ZM63.5,272.484a12.01,12.01,0,0,1,17-16.968l15.5,15.5,15.5-15.5a12.01,12.01,0,0,1,17,16.968L112.984,288,128.5,303.516a12.01,12.01,0,0,1-17,16.968L96,304.984l-15.5,15.5a12.01,12.01,0,0,1-17-16.968L79.016,288ZM96,456a40,40,0,1,1,40-40A40,40,0,0,1,96,456ZM359.227,335.785,310.7,336a6.671,6.671,0,0,1-6.7-6.7l.215-48.574A24.987,24.987,0,0,1,331.43,256.1c12.789,1.162,22.129,12.619,22.056,25.419l-.037,5.057,5.051-.037c12.826-.035,24.236,9.275,25.4,22.076A24.948,24.948,0,0,1,359.227,335.785Z\"},\"child\":[]}]})(props);\n};\nexport function FaVest (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M437.252,239.877,384,160V32A32,32,0,0,0,352,0H320a24.021,24.021,0,0,0-13.312,4.031l-25,16.672a103.794,103.794,0,0,1-115.376,0l-25-16.672A24.021,24.021,0,0,0,128,0H96A32,32,0,0,0,64,32V160L10.748,239.877A64,64,0,0,0,0,275.377V480a32,32,0,0,0,32,32H192V288a31.987,31.987,0,0,1,1.643-10.119L207.135,237.4,150.188,66.564A151.518,151.518,0,0,0,224,86.234a151.55,151.55,0,0,0,73.812-19.672L224,288V512H416a32,32,0,0,0,32-32V275.377A64,64,0,0,0,437.252,239.877ZM131.312,371.312l-48,48a16,16,0,0,1-22.624-22.624l48-48a16,16,0,0,1,22.624,22.624Zm256,48a15.992,15.992,0,0,1-22.624,0l-48-48a16,16,0,0,1,22.624-22.624l48,48A15.993,15.993,0,0,1,387.312,419.312Z\"},\"child\":[]}]})(props);\n};\nexport function FaVial (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 480 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M477.7 186.1L309.5 18.3c-3.1-3.1-8.2-3.1-11.3 0l-34 33.9c-3.1 3.1-3.1 8.2 0 11.3l11.2 11.1L33 316.5c-38.8 38.7-45.1 102-9.4 143.5 20.6 24 49.5 36 78.4 35.9 26.4 0 52.8-10 72.9-30.1l246.3-245.7 11.2 11.1c3.1 3.1 8.2 3.1 11.3 0l34-33.9c3.1-3 3.1-8.1 0-11.2zM318 256H161l148-147.7 78.5 78.3L318 256z\"},\"child\":[]}]})(props);\n};\nexport function FaVials (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M72 64h24v240c0 44.1 35.9 80 80 80s80-35.9 80-80V64h24c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zm72 0h64v96h-64V64zm480 384H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM360 64h24v240c0 44.1 35.9 80 80 80s80-35.9 80-80V64h24c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zm72 0h64v96h-64V64z\"},\"child\":[]}]})(props);\n};\nexport function FaVideoSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M633.8 458.1l-55-42.5c15.4-1.4 29.2-13.7 29.2-31.1v-257c0-25.5-29.1-40.4-50.4-25.8L448 177.3v137.2l-32-24.7v-178c0-26.4-21.4-47.8-47.8-47.8H123.9L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4L42.7 82 416 370.6l178.5 138c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.5-6.9 4.2-17-2.8-22.4zM32 400.2c0 26.4 21.4 47.8 47.8 47.8h288.4c11.2 0 21.4-4 29.6-10.5L32 154.7v245.5z\"},\"child\":[]}]})(props);\n};\nexport function FaVideo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336.2 64H47.8C21.4 64 0 85.4 0 111.8v288.4C0 426.6 21.4 448 47.8 448h288.4c26.4 0 47.8-21.4 47.8-47.8V111.8c0-26.4-21.4-47.8-47.8-47.8zm189.4 37.7L416 177.3v157.4l109.6 75.5c21.2 14.6 50.4-.3 50.4-25.8V127.5c0-25.4-29.1-40.4-50.4-25.8z\"},\"child\":[]}]})(props);\n};\nexport function FaVihara (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M632.88 400.71L544 352v-64l55.16-17.69c11.79-5.9 11.79-22.72 0-28.62L480 192v-64l27.31-16.3c7.72-7.72 5.61-20.74-4.16-25.62L320 0 136.85 86.07c-9.77 4.88-11.88 17.9-4.16 25.62L160 128v64L40.84 241.69c-11.79 5.9-11.79 22.72 0 28.62L96 288v64L7.12 400.71c-5.42 3.62-7.7 9.63-7 15.29.62 5.01 3.57 9.75 8.72 12.33L64 448v48c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48h160v48c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48h160v48c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48l55.15-19.67c5.16-2.58 8.1-7.32 8.72-12.33.71-5.67-1.57-11.68-6.99-15.29zM224 128h192v64H224v-64zm-64 224v-64h320v64H160z\"},\"child\":[]}]})(props);\n};\nexport function FaVirusSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M114,227.6H92.4C76.7,227.6,64,240.3,64,256s12.7,28.4,28.4,28.4H114c50.7,0,76.1,61.3,40.2,97.1L139,396.8 c-11.5,10.7-12.2,28.7-1.6,40.2s28.7,12.2,40.2,1.6c0.5-0.5,1.1-1,1.6-1.6l15.2-15.2c35.8-35.8,97.1-10.5,97.1,40.2v21.5 c0,15.7,12.8,28.4,28.5,28.4c15.7,0,28.4-12.7,28.4-28.4V462c0-26.6,17-45.9,38.2-53.4l-244.5-189 C133.7,224.7,123.9,227.5,114,227.6z M617,505.8l19.6-25.3c5.4-7,4.2-17-2.8-22.5L470.6,332c4.2-25.4,24.9-47.5,55.4-47.5h21.5 c15.7,0,28.4-12.7,28.4-28.4s-12.7-28.4-28.4-28.4H526c-50.7,0-76.1-61.3-40.2-97.1l15.2-15.3c10.7-11.5,10-29.5-1.6-40.2 c-10.9-10.1-27.7-10.1-38.6,0l-15.2,15.2c-35.8,35.8-97.1,10.5-97.1-40.2V28.5C348.4,12.7,335.7,0,320,0 c-15.7,0-28.4,12.7-28.4,28.4V50c0,50.7-61.3,76.1-97.1,40.2L179.2,75c-11.1-11.1-29.4-10.6-40.5,0.5L45.5,3.4 c-7-5.4-17-4.2-22.5,2.8L3.4,31.5c-5.4,7-4.2,17,2.8,22.5l588.4,454.7C601.5,514.1,611.6,512.8,617,505.8z M335.4,227.5l-62.9-48.6 c4.9-1.8,10.2-2.8,15.4-2.9c26.5,0,48,21.5,48,48C336,225.2,335.5,226.3,335.4,227.5z\"},\"child\":[]}]})(props);\n};\nexport function FaVirus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M483.55,227.55H462c-50.68,0-76.07-61.27-40.23-97.11L437,115.19A28.44,28.44,0,0,0,396.8,75L381.56,90.22c-35.84,35.83-97.11,10.45-97.11-40.23V28.44a28.45,28.45,0,0,0-56.9,0V50c0,50.68-61.27,76.06-97.11,40.23L115.2,75A28.44,28.44,0,0,0,75,115.19l15.25,15.25c35.84,35.84,10.45,97.11-40.23,97.11H28.45a28.45,28.45,0,1,0,0,56.89H50c50.68,0,76.07,61.28,40.23,97.12L75,396.8A28.45,28.45,0,0,0,115.2,437l15.24-15.25c35.84-35.84,97.11-10.45,97.11,40.23v21.54a28.45,28.45,0,0,0,56.9,0V462c0-50.68,61.27-76.07,97.11-40.23L396.8,437A28.45,28.45,0,0,0,437,396.8l-15.25-15.24c-35.84-35.84-10.45-97.12,40.23-97.12h21.54a28.45,28.45,0,1,0,0-56.89ZM224,272a48,48,0,1,1,48-48A48,48,0,0,1,224,272Zm80,56a24,24,0,1,1,24-24A24,24,0,0,1,304,328Z\"},\"child\":[]}]})(props);\n};\nexport function FaViruses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M624,352H611.88c-28.51,0-42.79-34.47-22.63-54.63l8.58-8.57a16,16,0,1,0-22.63-22.63l-8.57,8.58C546.47,294.91,512,280.63,512,252.12V240a16,16,0,0,0-32,0v12.12c0,28.51-34.47,42.79-54.63,22.63l-8.57-8.58a16,16,0,0,0-22.63,22.63l8.58,8.57c20.16,20.16,5.88,54.63-22.63,54.63H368a16,16,0,0,0,0,32h12.12c28.51,0,42.79,34.47,22.63,54.63l-8.58,8.57a16,16,0,1,0,22.63,22.63l8.57-8.58c20.16-20.16,54.63-5.88,54.63,22.63V496a16,16,0,0,0,32,0V483.88c0-28.51,34.47-42.79,54.63-22.63l8.57,8.58a16,16,0,1,0,22.63-22.63l-8.58-8.57C569.09,418.47,583.37,384,611.88,384H624a16,16,0,0,0,0-32ZM480,384a32,32,0,1,1,32-32A32,32,0,0,1,480,384ZM346.51,213.33h16.16a21.33,21.33,0,0,0,0-42.66H346.51c-38,0-57.05-46-30.17-72.84l11.43-11.44A21.33,21.33,0,0,0,297.6,56.23L286.17,67.66c-26.88,26.88-72.84,7.85-72.84-30.17V21.33a21.33,21.33,0,0,0-42.66,0V37.49c0,38-46,57.05-72.84,30.17L86.4,56.23A21.33,21.33,0,0,0,56.23,86.39L67.66,97.83c26.88,26.88,7.85,72.84-30.17,72.84H21.33a21.33,21.33,0,0,0,0,42.66H37.49c38,0,57.05,46,30.17,72.84L56.23,297.6A21.33,21.33,0,1,0,86.4,327.77l11.43-11.43c26.88-26.88,72.84-7.85,72.84,30.17v16.16a21.33,21.33,0,0,0,42.66,0V346.51c0-38,46-57.05,72.84-30.17l11.43,11.43a21.33,21.33,0,0,0,30.17-30.17l-11.43-11.43C289.46,259.29,308.49,213.33,346.51,213.33ZM160,192a32,32,0,1,1,32-32A32,32,0,0,1,160,192Zm80,32a16,16,0,1,1,16-16A16,16,0,0,1,240,224Z\"},\"child\":[]}]})(props);\n};\nexport function FaVoicemail (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 128a144 144 0 0 0-119.74 224H263.74A144 144 0 1 0 144 416h352a144 144 0 0 0 0-288zM64 272a80 80 0 1 1 80 80 80 80 0 0 1-80-80zm432 80a80 80 0 1 1 80-80 80 80 0 0 1-80 80z\"},\"child\":[]}]})(props);\n};\nexport function FaVolleyballBall (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M231.39 243.48a285.56 285.56 0 0 0-22.7-105.7c-90.8 42.4-157.5 122.4-180.3 216.8a249 249 0 0 0 56.9 81.1 333.87 333.87 0 0 1 146.1-192.2zm-36.9-134.4a284.23 284.23 0 0 0-57.4-70.7c-91 49.8-144.8 152.9-125 262.2 33.4-83.1 98.4-152 182.4-191.5zm187.6 165.1c8.6-99.8-27.3-197.5-97.5-264.4-14.7-1.7-51.6-5.5-98.9 8.5A333.87 333.87 0 0 1 279.19 241a285 285 0 0 0 102.9 33.18zm-124.7 9.5a286.33 286.33 0 0 0-80.2 72.6c82 57.3 184.5 75.1 277.5 47.8a247.15 247.15 0 0 0 42.2-89.9 336.1 336.1 0 0 1-80.9 10.4c-54.6-.1-108.9-14.1-158.6-40.9zm-98.3 99.7c-15.2 26-25.7 54.4-32.1 84.2a247.07 247.07 0 0 0 289-22.1c-112.9 16.1-203.3-24.8-256.9-62.1zm180.3-360.6c55.3 70.4 82.5 161.2 74.6 253.6a286.59 286.59 0 0 0 89.7-14.2c0-2 .3-4 .3-6 0-107.8-68.7-199.1-164.6-233.4z\"},\"child\":[]}]})(props);\n};\nexport function FaVolumeDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M215.03 72.04L126.06 161H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V89.02c0-21.47-25.96-31.98-40.97-16.98zm123.2 108.08c-11.58-6.33-26.19-2.16-32.61 9.45-6.39 11.61-2.16 26.2 9.45 32.61C327.98 229.28 336 242.62 336 257c0 14.38-8.02 27.72-20.92 34.81-11.61 6.41-15.84 21-9.45 32.61 6.43 11.66 21.05 15.8 32.61 9.45 28.23-15.55 45.77-45 45.77-76.88s-17.54-61.32-45.78-76.87z\"},\"child\":[]}]})(props);\n};\nexport function FaVolumeMute (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M215.03 71.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V88.02c0-21.46-25.96-31.98-40.97-16.97zM461.64 256l45.64-45.64c6.3-6.3 6.3-16.52 0-22.82l-22.82-22.82c-6.3-6.3-16.52-6.3-22.82 0L416 210.36l-45.64-45.64c-6.3-6.3-16.52-6.3-22.82 0l-22.82 22.82c-6.3 6.3-6.3 16.52 0 22.82L370.36 256l-45.63 45.63c-6.3 6.3-6.3 16.52 0 22.82l22.82 22.82c6.3 6.3 16.52 6.3 22.82 0L416 301.64l45.64 45.64c6.3 6.3 16.52 6.3 22.82 0l22.82-22.82c6.3-6.3 6.3-16.52 0-22.82L461.64 256z\"},\"child\":[]}]})(props);\n};\nexport function FaVolumeOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 256 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M215 71l-89 89H24a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24h102.06L215 441c15 15 41 4.47 41-17V88c0-21.47-26-32-41-17z\"},\"child\":[]}]})(props);\n};\nexport function FaVolumeUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M215.03 71.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V88.02c0-21.46-25.96-31.98-40.97-16.97zm233.32-51.08c-11.17-7.33-26.18-4.24-33.51 6.95-7.34 11.17-4.22 26.18 6.95 33.51 66.27 43.49 105.82 116.6 105.82 195.58 0 78.98-39.55 152.09-105.82 195.58-11.17 7.32-14.29 22.34-6.95 33.5 7.04 10.71 21.93 14.56 33.51 6.95C528.27 439.58 576 351.33 576 256S528.27 72.43 448.35 19.97zM480 256c0-63.53-32.06-121.94-85.77-156.24-11.19-7.14-26.03-3.82-33.12 7.46s-3.78 26.21 7.41 33.36C408.27 165.97 432 209.11 432 256s-23.73 90.03-63.48 115.42c-11.19 7.14-14.5 22.07-7.41 33.36 6.51 10.36 21.12 15.14 33.12 7.46C447.94 377.94 480 319.54 480 256zm-141.77-76.87c-11.58-6.33-26.19-2.16-32.61 9.45-6.39 11.61-2.16 26.2 9.45 32.61C327.98 228.28 336 241.63 336 256c0 14.38-8.02 27.72-20.92 34.81-11.61 6.41-15.84 21-9.45 32.61 6.43 11.66 21.05 15.8 32.61 9.45 28.23-15.55 45.77-45 45.77-76.88s-17.54-61.32-45.78-76.86z\"},\"child\":[]}]})(props);\n};\nexport function FaVoteYea (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M608 320h-64v64h22.4c5.3 0 9.6 3.6 9.6 8v16c0 4.4-4.3 8-9.6 8H73.6c-5.3 0-9.6-3.6-9.6-8v-16c0-4.4 4.3-8 9.6-8H96v-64H32c-17.7 0-32 14.3-32 32v96c0 17.7 14.3 32 32 32h576c17.7 0 32-14.3 32-32v-96c0-17.7-14.3-32-32-32zm-96 64V64.3c0-17.9-14.5-32.3-32.3-32.3H160.4C142.5 32 128 46.5 128 64.3V384h384zM211.2 202l25.5-25.3c4.2-4.2 11-4.2 15.2.1l41.3 41.6 95.2-94.4c4.2-4.2 11-4.2 15.2.1l25.3 25.5c4.2 4.2 4.2 11-.1 15.2L300.5 292c-4.2 4.2-11 4.2-15.2-.1l-74.1-74.7c-4.3-4.2-4.2-11 0-15.2z\"},\"child\":[]}]})(props);\n};\nexport function FaVrCardboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M608 64H32C14.33 64 0 78.33 0 96v320c0 17.67 14.33 32 32 32h160.22c25.19 0 48.03-14.77 58.36-37.74l27.74-61.64C286.21 331.08 302.35 320 320 320s33.79 11.08 41.68 28.62l27.74 61.64C399.75 433.23 422.6 448 447.78 448H608c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zM160 304c-35.35 0-64-28.65-64-64s28.65-64 64-64 64 28.65 64 64-28.65 64-64 64zm320 0c-35.35 0-64-28.65-64-64s28.65-64 64-64 64 28.65 64 64-28.65 64-64 64z\"},\"child\":[]}]})(props);\n};\nexport function FaWalking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 320 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 96c26.5 0 48-21.5 48-48S234.5 0 208 0s-48 21.5-48 48 21.5 48 48 48zm94.5 149.1l-23.3-11.8-9.7-29.4c-14.7-44.6-55.7-75.8-102.2-75.9-36-.1-55.9 10.1-93.3 25.2-21.6 8.7-39.3 25.2-49.7 46.2L17.6 213c-7.8 15.8-1.5 35 14.2 42.9 15.6 7.9 34.6 1.5 42.5-14.3L81 228c3.5-7 9.3-12.5 16.5-15.4l26.8-10.8-15.2 60.7c-5.2 20.8.4 42.9 14.9 58.8l59.9 65.4c7.2 7.9 12.3 17.4 14.9 27.7l18.3 73.3c4.3 17.1 21.7 27.6 38.8 23.3 17.1-4.3 27.6-21.7 23.3-38.8l-22.2-89c-2.6-10.3-7.7-19.9-14.9-27.7l-45.5-49.7 17.2-68.7 5.5 16.5c5.3 16.1 16.7 29.4 31.7 37l23.3 11.8c15.6 7.9 34.6 1.5 42.5-14.3 7.7-15.7 1.4-35.1-14.3-43zM73.6 385.8c-3.2 8.1-8 15.4-14.2 21.5l-50 50.1c-12.5 12.5-12.5 32.8 0 45.3s32.7 12.5 45.2 0l59.4-59.4c6.1-6.1 10.9-13.4 14.2-21.5l13.5-33.8c-55.3-60.3-38.7-41.8-47.4-53.7l-20.7 51.5z\"},\"child\":[]}]})(props);\n};\nexport function FaWallet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M461.2 128H80c-8.84 0-16-7.16-16-16s7.16-16 16-16h384c8.84 0 16-7.16 16-16 0-26.51-21.49-48-48-48H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h397.2c28.02 0 50.8-21.53 50.8-48V176c0-26.47-22.78-48-50.8-48zM416 336c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaWarehouse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 352H136.4c-4.4 0-8 3.6-8 8l-.1 48c0 4.4 3.6 8 8 8H504c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm0 96H136.1c-4.4 0-8 3.6-8 8l-.1 48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm0-192H136.6c-4.4 0-8 3.6-8 8l-.1 48c0 4.4 3.6 8 8 8H504c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm106.5-139L338.4 3.7a48.15 48.15 0 0 0-36.9 0L29.5 117C11.7 124.5 0 141.9 0 161.3V504c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8V256c0-17.6 14.6-32 32.6-32h382.8c18 0 32.6 14.4 32.6 32v248c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8V161.3c0-19.4-11.7-36.8-29.5-44.3z\"},\"child\":[]}]})(props);\n};\nexport function FaWater (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M562.1 383.9c-21.5-2.4-42.1-10.5-57.9-22.9-14.1-11.1-34.2-11.3-48.2 0-37.9 30.4-107.2 30.4-145.7-1.5-13.5-11.2-33-9.1-46.7 1.8-38 30.1-106.9 30-145.2-1.7-13.5-11.2-33.3-8.9-47.1 2-15.5 12.2-36 20.1-57.7 22.4-7.9.8-13.6 7.8-13.6 15.7v32.2c0 9.1 7.6 16.8 16.7 16 28.8-2.5 56.1-11.4 79.4-25.9 56.5 34.6 137 34.1 192 0 56.5 34.6 137 34.1 192 0 23.3 14.2 50.9 23.3 79.1 25.8 9.1.8 16.7-6.9 16.7-16v-31.6c.1-8-5.7-15.4-13.8-16.3zm0-144c-21.5-2.4-42.1-10.5-57.9-22.9-14.1-11.1-34.2-11.3-48.2 0-37.9 30.4-107.2 30.4-145.7-1.5-13.5-11.2-33-9.1-46.7 1.8-38 30.1-106.9 30-145.2-1.7-13.5-11.2-33.3-8.9-47.1 2-15.5 12.2-36 20.1-57.7 22.4-7.9.8-13.6 7.8-13.6 15.7v32.2c0 9.1 7.6 16.8 16.7 16 28.8-2.5 56.1-11.4 79.4-25.9 56.5 34.6 137 34.1 192 0 56.5 34.6 137 34.1 192 0 23.3 14.2 50.9 23.3 79.1 25.8 9.1.8 16.7-6.9 16.7-16v-31.6c.1-8-5.7-15.4-13.8-16.3zm0-144C540.6 93.4 520 85.4 504.2 73 490.1 61.9 470 61.7 456 73c-37.9 30.4-107.2 30.4-145.7-1.5-13.5-11.2-33-9.1-46.7 1.8-38 30.1-106.9 30-145.2-1.7-13.5-11.2-33.3-8.9-47.1 2-15.5 12.2-36 20.1-57.7 22.4-7.9.8-13.6 7.8-13.6 15.7v32.2c0 9.1 7.6 16.8 16.7 16 28.8-2.5 56.1-11.4 79.4-25.9 56.5 34.6 137 34.1 192 0 56.5 34.6 137 34.1 192 0 23.3 14.2 50.9 23.3 79.1 25.8 9.1.8 16.7-6.9 16.7-16v-31.6c.1-8-5.7-15.4-13.8-16.3z\"},\"child\":[]}]})(props);\n};\nexport function FaWaveSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M476 480H324a36 36 0 0 1-36-36V96h-96v156a36 36 0 0 1-36 36H16a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h112V68a36 36 0 0 1 36-36h152a36 36 0 0 1 36 36v348h96V260a36 36 0 0 1 36-36h140a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H512v156a36 36 0 0 1-36 36z\"},\"child\":[]}]})(props);\n};\nexport function FaWeightHanging (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M510.28 445.86l-73.03-292.13c-3.8-15.19-16.44-25.72-30.87-25.72h-60.25c3.57-10.05 5.88-20.72 5.88-32 0-53.02-42.98-96-96-96s-96 42.98-96 96c0 11.28 2.3 21.95 5.88 32h-60.25c-14.43 0-27.08 10.54-30.87 25.72L1.72 445.86C-6.61 479.17 16.38 512 48.03 512h415.95c31.64 0 54.63-32.83 46.3-66.14zM256 128c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaWeight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 64h-25.98C438.44 92.28 448 125.01 448 160c0 105.87-86.13 192-192 192S64 265.87 64 160c0-34.99 9.56-67.72 25.98-96H64C28.71 64 0 92.71 0 128v320c0 35.29 28.71 64 64 64h384c35.29 0 64-28.71 64-64V128c0-35.29-28.71-64-64-64zM256 320c88.37 0 160-71.63 160-160S344.37 0 256 0 96 71.63 96 160s71.63 160 160 160zm-.3-151.94l33.58-78.36c3.5-8.17 12.94-11.92 21.03-8.41 8.12 3.48 11.88 12.89 8.41 21l-33.67 78.55C291.73 188 296 197.45 296 208c0 22.09-17.91 40-40 40s-40-17.91-40-40c0-21.98 17.76-39.77 39.7-39.94z\"},\"child\":[]}]})(props);\n};\nexport function FaWheelchair (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496.101 385.669l14.227 28.663c3.929 7.915.697 17.516-7.218 21.445l-65.465 32.886c-16.049 7.967-35.556 1.194-43.189-15.055L331.679 320H192c-15.925 0-29.426-11.71-31.679-27.475C126.433 55.308 128.38 70.044 128 64c0-36.358 30.318-65.635 67.052-63.929 33.271 1.545 60.048 28.905 60.925 62.201.868 32.933-23.152 60.423-54.608 65.039l4.67 32.69H336c8.837 0 16 7.163 16 16v32c0 8.837-7.163 16-16 16H215.182l4.572 32H352a32 32 0 0 1 28.962 18.392L438.477 396.8l36.178-18.349c7.915-3.929 17.517-.697 21.446 7.218zM311.358 352h-24.506c-7.788 54.204-54.528 96-110.852 96-61.757 0-112-50.243-112-112 0-41.505 22.694-77.809 56.324-97.156-3.712-25.965-6.844-47.86-9.488-66.333C45.956 198.464 0 261.963 0 336c0 97.047 78.953 176 176 176 71.87 0 133.806-43.308 161.11-105.192L311.358 352z\"},\"child\":[]}]})(props);\n};\nexport function FaWifi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M634.91 154.88C457.74-8.99 182.19-8.93 5.09 154.88c-6.66 6.16-6.79 16.59-.35 22.98l34.24 33.97c6.14 6.1 16.02 6.23 22.4.38 145.92-133.68 371.3-133.71 517.25 0 6.38 5.85 16.26 5.71 22.4-.38l34.24-33.97c6.43-6.39 6.3-16.82-.36-22.98zM320 352c-35.35 0-64 28.65-64 64s28.65 64 64 64 64-28.65 64-64-28.65-64-64-64zm202.67-83.59c-115.26-101.93-290.21-101.82-405.34 0-6.9 6.1-7.12 16.69-.57 23.15l34.44 33.99c6 5.92 15.66 6.32 22.05.8 83.95-72.57 209.74-72.41 293.49 0 6.39 5.52 16.05 5.13 22.05-.8l34.44-33.99c6.56-6.46 6.33-17.06-.56-23.15z\"},\"child\":[]}]})(props);\n};\nexport function FaWind (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M156.7 256H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h142.2c15.9 0 30.8 10.9 33.4 26.6 3.3 20-12.1 37.4-31.6 37.4-14.1 0-26.1-9.2-30.4-21.9-2.1-6.3-8.6-10.1-15.2-10.1H81.6c-9.8 0-17.7 8.8-15.9 18.4 8.6 44.1 47.6 77.6 94.2 77.6 57.1 0 102.7-50.1 95.2-108.6C249 291 205.4 256 156.7 256zM16 224h336c59.7 0 106.8-54.8 93.8-116.7-7.6-36.2-36.9-65.5-73.1-73.1-55.4-11.6-105.1 24.9-114.9 75.5-1.9 9.6 6.1 18.3 15.8 18.3h32.8c6.7 0 13.1-3.8 15.2-10.1C325.9 105.2 337.9 96 352 96c19.4 0 34.9 17.4 31.6 37.4-2.6 15.7-17.4 26.6-33.4 26.6H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16zm384 32H243.7c19.3 16.6 33.2 38.8 39.8 64H400c26.5 0 48 21.5 48 48s-21.5 48-48 48c-17.9 0-33.3-9.9-41.6-24.4-2.9-5-8.7-7.6-14.5-7.6h-33.8c-10.9 0-19 10.8-15.3 21.1 17.8 50.6 70.5 84.8 129.4 72.3 41.2-8.7 75.1-41.6 84.7-82.7C526 321.5 470.5 256 400 256z\"},\"child\":[]}]})(props);\n};\nexport function FaWindowClose (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-83.6 290.5c4.8 4.8 4.8 12.6 0 17.4l-40.5 40.5c-4.8 4.8-12.6 4.8-17.4 0L256 313.3l-66.5 67.1c-4.8 4.8-12.6 4.8-17.4 0l-40.5-40.5c-4.8-4.8-4.8-12.6 0-17.4l67.1-66.5-67.1-66.5c-4.8-4.8-4.8-12.6 0-17.4l40.5-40.5c4.8-4.8 12.6-4.8 17.4 0l66.5 67.1 66.5-67.1c4.8-4.8 12.6-4.8 17.4 0l40.5 40.5c4.8 4.8 4.8 12.6 0 17.4L313.3 256l67.1 66.5z\"},\"child\":[]}]})(props);\n};\nexport function FaWindowMaximize (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-16 160H64v-84c0-6.6 5.4-12 12-12h360c6.6 0 12 5.4 12 12v84z\"},\"child\":[]}]})(props);\n};\nexport function FaWindowMinimize (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 352H48c-26.5 0-48 21.5-48 48v32c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48v-32c0-26.5-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaWindowRestore (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 48v288c0 26.5-21.5 48-48 48h-48V176c0-44.1-35.9-80-80-80H128V48c0-26.5 21.5-48 48-48h288c26.5 0 48 21.5 48 48zM384 176v288c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V176c0-26.5 21.5-48 48-48h288c26.5 0 48 21.5 48 48zm-68 28c0-6.6-5.4-12-12-12H76c-6.6 0-12 5.4-12 12v52h252v-52z\"},\"child\":[]}]})(props);\n};\nexport function FaWineBottle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M507.31 72.57L439.43 4.69c-6.25-6.25-16.38-6.25-22.63 0l-22.63 22.63c-6.25 6.25-6.25 16.38 0 22.63l-76.67 76.67c-46.58-19.7-102.4-10.73-140.37 27.23L18.75 312.23c-24.99 24.99-24.99 65.52 0 90.51l90.51 90.51c24.99 24.99 65.52 24.99 90.51 0l158.39-158.39c37.96-37.96 46.93-93.79 27.23-140.37l76.67-76.67c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.24-6.24 6.24-16.37-.01-22.62zM179.22 423.29l-90.51-90.51 122.04-122.04 90.51 90.51-122.04 122.04z\"},\"child\":[]}]})(props);\n};\nexport function FaWineGlassAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216 464h-40V346.81c68.47-15.89 118.05-79.91 111.4-154.16l-15.95-178.1C270.71 6.31 263.9 0 255.74 0H32.26c-8.15 0-14.97 6.31-15.7 14.55L.6 192.66C-6.05 266.91 43.53 330.93 112 346.82V464H72c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h208c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40zM61.75 48h164.5l7.17 80H54.58l7.17-80z\"},\"child\":[]}]})(props);\n};\nexport function FaWineGlass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 288 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M216 464h-40V346.81c68.47-15.89 118.05-79.91 111.4-154.16l-15.95-178.1C270.71 6.31 263.9 0 255.74 0H32.26c-8.15 0-14.97 6.31-15.7 14.55L.6 192.66C-6.05 266.91 43.53 330.93 112 346.82V464H72c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h208c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40z\"},\"child\":[]}]})(props);\n};\nexport function FaWonSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M564 192c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-48l18.6-80.6c1.7-7.5-4-14.7-11.7-14.7h-46.1c-5.7 0-10.6 4-11.7 9.5L450.7 128H340.8l-19.7-86c-1.3-5.5-6.1-9.3-11.7-9.3h-44c-5.6 0-10.4 3.8-11.7 9.3l-20 86H125l-17.5-85.7c-1.1-5.6-6.1-9.6-11.8-9.6H53.6c-7.7 0-13.4 7.1-11.7 14.6L60 128H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h62.3l7.2 32H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h83.9l40.9 182.6c1.2 5.5 6.1 9.4 11.7 9.4h56.8c5.6 0 10.4-3.9 11.7-9.3L259.3 288h55.1l42.4 182.7c1.3 5.4 6.1 9.3 11.7 9.3h56.8c5.6 0 10.4-3.9 11.7-9.3L479.1 288H564c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-70.1l7.4-32zM183.8 342c-6.2 25.8-6.8 47.2-7.3 47.2h-1.1s-1.7-22-6.8-47.2l-11-54h38.8zm27.5-118h-66.8l-6.5-32h80.8zm62.9 0l2-8.6c1.9-8 3.5-16 4.8-23.4h11.8c1.3 7.4 2.9 15.4 4.8 23.4l2 8.6zm130.9 118c-5.1 25.2-6.8 47.2-6.8 47.2h-1.1c-.6 0-1.1-21.4-7.3-47.2l-12.4-54h39.1zm25.2-118h-67.4l-7.3-32h81.6z\"},\"child\":[]}]})(props);\n};\nexport function FaWrench (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M507.73 109.1c-2.24-9.03-13.54-12.09-20.12-5.51l-74.36 74.36-67.88-11.31-11.31-67.88 74.36-74.36c6.62-6.62 3.43-17.9-5.66-20.16-47.38-11.74-99.55.91-136.58 37.93-39.64 39.64-50.55 97.1-34.05 147.2L18.74 402.76c-24.99 24.99-24.99 65.51 0 90.5 24.99 24.99 65.51 24.99 90.5 0l213.21-213.21c50.12 16.71 107.47 5.68 147.37-34.22 37.07-37.07 49.7-89.32 37.91-136.73zM64 472c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaXRay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 384c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm160 32c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zM624 0H16C7.2 0 0 7.2 0 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16zm0 448h-48V96H64v352H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM480 248c0 4.4-3.6 8-8 8H336v32h104c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H336v32h64c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48v-16h-64v16c0 26.5-21.5 48-48 48s-48-21.5-48-48 21.5-48 48-48h64v-32H200c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h104v-32H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h136v-32H200c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h104v-24c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v24h104c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H336v32h136c4.4 0 8 3.6 8 8v16z\"},\"child\":[]}]})(props);\n};\nexport function FaYenSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M351.2 32h-65.3c-4.6 0-8.8 2.6-10.8 6.7l-55.4 113.2c-14.5 34.7-27.1 71.9-27.1 71.9h-1.3s-12.6-37.2-27.1-71.9L108.8 38.7c-2-4.1-6.2-6.7-10.8-6.7H32.8c-9.1 0-14.8 9.7-10.6 17.6L102.3 200H44c-6.6 0-12 5.4-12 12v32c0 6.6 5.4 12 12 12h88.2l19.8 37.2V320H44c-6.6 0-12 5.4-12 12v32c0 6.6 5.4 12 12 12h108v92c0 6.6 5.4 12 12 12h56c6.6 0 12-5.4 12-12v-92h108c6.6 0 12-5.4 12-12v-32c0-6.6-5.4-12-12-12H232v-26.8l19.8-37.2H340c6.6 0 12-5.4 12-12v-32c0-6.6-5.4-12-12-12h-58.3l80.1-150.4c4.3-7.9-1.5-17.6-10.6-17.6z\"},\"child\":[]}]})(props);\n};\nexport function FaYinYang (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 376c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-128c-53.02 0-96 42.98-96 96s42.98 96 96 96c-106.04 0-192-85.96-192-192S141.96 64 248 64c53.02 0 96 42.98 96 96s-42.98 96-96 96zm0-128c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegAddressBook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 160c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h320c26.5 0 48-21.5 48-48v-48h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20v-64h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20v-64h20zm-68 304H48V48h320v416zM208 256c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm-89.6 128h179.2c12.4 0 22.4-8.6 22.4-19.2v-19.2c0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6v19.2c0 10.6 10 19.2 22.4 19.2z\"},\"child\":[]}]})(props);\n};\nexport function FaRegAddressCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 400H48V80h480v352zM208 256c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm-89.6 128h179.2c12.4 0 22.4-8.6 22.4-19.2v-19.2c0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6v19.2c0 10.6 10 19.2 22.4 19.2zM360 320h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegAngry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm0-144c-33.6 0-65.2 14.8-86.8 40.6-8.5 10.2-7.1 25.3 3.1 33.8s25.3 7.2 33.8-3c24.8-29.7 75-29.7 99.8 0 8.1 9.7 23.2 11.9 33.8 3 10.2-8.5 11.5-23.6 3.1-33.8-21.6-25.8-53.2-40.6-86.8-40.6zm-48-72c10.3 0 19.9-6.7 23-17.1 3.8-12.7-3.4-26.1-16.1-29.9l-80-24c-12.8-3.9-26.1 3.4-29.9 16.1-3.8 12.7 3.4 26.1 16.1 29.9l28.2 8.5c-3.1 4.9-5.3 10.4-5.3 16.6 0 17.7 14.3 32 32 32s32-14.4 32-32.1zm199-54.9c-3.8-12.7-17.1-19.9-29.9-16.1l-80 24c-12.7 3.8-19.9 17.2-16.1 29.9 3.1 10.4 12.7 17.1 23 17.1 0 17.7 14.3 32 32 32s32-14.3 32-32c0-6.2-2.2-11.7-5.3-16.6l28.2-8.5c12.7-3.7 19.9-17.1 16.1-29.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegArrowAltCircleDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm-32-316v116h-67c-10.7 0-16 12.9-8.5 20.5l99 99c4.7 4.7 12.3 4.7 17 0l99-99c7.6-7.6 2.2-20.5-8.5-20.5h-67V140c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegArrowAltCircleLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 256c0 137 111 248 248 248s248-111 248-248S393 8 256 8 8 119 8 256zm448 0c0 110.5-89.5 200-200 200S56 366.5 56 256 145.5 56 256 56s200 89.5 200 200zm-72-20v40c0 6.6-5.4 12-12 12H256v67c0 10.7-12.9 16-20.5 8.5l-99-99c-4.7-4.7-4.7-12.3 0-17l99-99c7.6-7.6 20.5-2.2 20.5 8.5v67h116c6.6 0 12 5.4 12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegArrowAltCircleRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zm-448 0c0-110.5 89.5-200 200-200s200 89.5 200 200-89.5 200-200 200S56 366.5 56 256zm72 20v-40c0-6.6 5.4-12 12-12h116v-67c0-10.7 12.9-16 20.5-8.5l99 99c4.7 4.7 4.7 12.3 0 17l-99 99c-7.6 7.6-20.5 2.2-20.5-8.5v-67H140c-6.6 0-12-5.4-12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegArrowAltCircleUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zm0-448c110.5 0 200 89.5 200 200s-89.5 200-200 200S56 366.5 56 256 145.5 56 256 56zm20 328h-40c-6.6 0-12-5.4-12-12V256h-67c-10.7 0-16-12.9-8.5-20.5l99-99c4.7-4.7 12.3-4.7 17 0l99 99c7.6 7.6 2.2 20.5-8.5 20.5h-67v116c0 6.6-5.4 12-12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegBellSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M633.99 471.02L36 3.51C29.1-2.01 19.03-.9 13.51 6l-10 12.49C-2.02 25.39-.9 35.46 6 40.98l598 467.51c6.9 5.52 16.96 4.4 22.49-2.49l10-12.49c5.52-6.9 4.41-16.97-2.5-22.49zM163.53 368c16.71-22.03 34.48-55.8 41.4-110.58l-45.47-35.55c-3.27 90.73-36.47 120.68-54.84 140.42-6 6.45-8.66 14.16-8.61 21.71.11 16.4 12.98 32 32.1 32h279.66l-61.4-48H163.53zM320 96c61.86 0 112 50.14 112 112 0 .2-.06.38-.06.58.02 16.84 1.16 31.77 2.79 45.73l59.53 46.54c-8.31-22.13-14.34-51.49-14.34-92.85 0-77.7-54.48-139.9-127.94-155.16V32c0-17.67-14.32-32-31.98-32s-31.98 14.33-31.98 32v20.84c-26.02 5.41-49.45 16.94-69.13 32.72l38.17 29.84C275 103.18 296.65 96 320 96zm0 416c35.32 0 63.97-28.65 63.97-64H256.03c0 35.35 28.65 64 63.97 64z\"},\"child\":[]}]})(props);\n};\nexport function FaRegBell (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M439.39 362.29c-19.32-20.76-55.47-51.99-55.47-154.29 0-77.7-54.48-139.9-127.94-155.16V32c0-17.67-14.32-32-31.98-32s-31.98 14.33-31.98 32v20.84C118.56 68.1 64.08 130.3 64.08 208c0 102.3-36.15 133.53-55.47 154.29-6 6.45-8.66 14.16-8.61 21.71.11 16.4 12.98 32 32.1 32h383.8c19.12 0 32-15.6 32.1-32 .05-7.55-2.61-15.27-8.61-21.71zM67.53 368c21.22-27.97 44.42-74.33 44.53-159.42 0-.2-.06-.38-.06-.58 0-61.86 50.14-112 112-112s112 50.14 112 112c0 .2-.06.38-.06.58.11 85.1 23.31 131.46 44.53 159.42H67.53zM224 512c35.32 0 63.97-28.65 63.97-64H160.03c0 35.35 28.65 64 63.97 64z\"},\"child\":[]}]})(props);\n};\nexport function FaRegBookmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 0H48C21.49 0 0 21.49 0 48v464l192-112 192 112V48c0-26.51-21.49-48-48-48zm0 428.43l-144-84-144 84V54a6 6 0 0 1 6-6h276c3.314 0 6 2.683 6 5.996V428.43z\"},\"child\":[]}]})(props);\n};\nexport function FaRegBuilding (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 148v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12zm140 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm-128 96h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm128 0h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm-76 84v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm76 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm180 124v36H0v-36c0-6.6 5.4-12 12-12h19.5V24c0-13.3 10.7-24 24-24h337c13.3 0 24 10.7 24 24v440H436c6.6 0 12 5.4 12 12zM79.5 463H192v-67c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v67h112.5V49L80 48l-.5 415z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCalendarAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M148 288h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm108-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm96 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm-96 96v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm-96 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm192 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm96-260v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCalendarCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 64h-48V12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v52H160V12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v52H48C21.49 64 0 85.49 0 112v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm-6 400H54a6 6 0 0 1-6-6V160h352v298a6 6 0 0 1-6 6zm-52.849-200.65L198.842 404.519c-4.705 4.667-12.303 4.637-16.971-.068l-75.091-75.699c-4.667-4.705-4.637-12.303.068-16.971l22.719-22.536c4.705-4.667 12.303-4.637 16.97.069l44.104 44.461 111.072-110.181c4.705-4.667 12.303-4.637 16.971.068l22.536 22.718c4.667 4.705 4.636 12.303-.069 16.97z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCalendarMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M124 328c-6.6 0-12-5.4-12-12v-24c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v24c0 6.6-5.4 12-12 12H124zm324-216v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCalendarPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 292v24c0 6.6-5.4 12-12 12h-76v76c0 6.6-5.4 12-12 12h-24c-6.6 0-12-5.4-12-12v-76h-76c-6.6 0-12-5.4-12-12v-24c0-6.6 5.4-12 12-12h76v-76c0-6.6 5.4-12 12-12h24c6.6 0 12 5.4 12 12v76h76c6.6 0 12 5.4 12 12zm112-180v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCalendarTimes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M311.7 374.7l-17 17c-4.7 4.7-12.3 4.7-17 0L224 337.9l-53.7 53.7c-4.7 4.7-12.3 4.7-17 0l-17-17c-4.7-4.7-4.7-12.3 0-17l53.7-53.7-53.7-53.7c-4.7-4.7-4.7-12.3 0-17l17-17c4.7-4.7 12.3-4.7 17 0l53.7 53.7 53.7-53.7c4.7-4.7 12.3-4.7 17 0l17 17c4.7 4.7 4.7 12.3 0 17L257.9 304l53.7 53.7c4.8 4.7 4.8 12.3.1 17zM448 112v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCalendar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 64h-48V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H160V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zm-6 400H54c-3.3 0-6-2.7-6-6V160h352v298c0 3.3-2.7 6-6 6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCaretSquareDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M125.1 208h197.8c10.7 0 16.1 13 8.5 20.5l-98.9 98.3c-4.7 4.7-12.2 4.7-16.9 0l-98.9-98.3c-7.7-7.5-2.3-20.5 8.4-20.5zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCaretSquareLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 157.1v197.8c0 10.7-13 16.1-20.5 8.5l-98.3-98.9c-4.7-4.7-4.7-12.2 0-16.9l98.3-98.9c7.5-7.7 20.5-2.3 20.5 8.4zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCaretSquareRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 354.9V157.1c0-10.7 13-16.1 20.5-8.5l98.3 98.9c4.7 4.7 4.7 12.2 0 16.9l-98.3 98.9c-7.5 7.7-20.5 2.3-20.5-8.4zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCaretSquareUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M322.9 304H125.1c-10.7 0-16.1-13-8.5-20.5l98.9-98.3c4.7-4.7 12.2-4.7 16.9 0l98.9 98.3c7.7 7.5 2.3 20.5-8.4 20.5zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegChartBar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCheckCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 48c110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200-110.532 0-200-89.451-200-200 0-110.532 89.451-200 200-200m140.204 130.267l-22.536-22.718c-4.667-4.705-12.265-4.736-16.97-.068L215.346 303.697l-59.792-60.277c-4.667-4.705-12.265-4.736-16.97-.069l-22.719 22.536c-4.705 4.667-4.736 12.265-.068 16.971l90.781 91.516c4.667 4.705 12.265 4.736 16.97.068l172.589-171.204c4.704-4.668 4.734-12.266.067-16.971z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCheckSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zm0 400H48V80h352v352zm-35.864-241.724L191.547 361.48c-4.705 4.667-12.303 4.637-16.97-.068l-90.781-91.516c-4.667-4.705-4.637-12.303.069-16.971l22.719-22.536c4.705-4.667 12.303-4.637 16.97.069l59.792 60.277 141.352-140.216c4.705-4.667 12.303-4.637 16.97.068l22.536 22.718c4.667 4.706 4.637 12.304-.068 16.971z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200z\"},\"child\":[]}]})(props);\n};\nexport function FaRegClipboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 40c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm144 418c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V118c0-3.3 2.7-6 6-6h42v36c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12v-36h42c3.3 0 6 2.7 6 6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegClock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm61.8-104.4l-84.9-61.7c-3.1-2.3-4.9-5.9-4.9-9.7V116c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v141.7l66.8 48.6c5.4 3.9 6.5 11.4 2.6 16.8L334.6 349c-3.9 5.3-11.4 6.5-16.8 2.6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegClone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 0H144c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h320c26.51 0 48-21.49 48-48v-48h48c26.51 0 48-21.49 48-48V48c0-26.51-21.49-48-48-48zM362 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h42v224c0 26.51 21.49 48 48 48h224v42a6 6 0 0 1-6 6zm96-96H150a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h308a6 6 0 0 1 6 6v308a6 6 0 0 1-6 6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegClosedCaptioning (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zm-6 336H54c-3.3 0-6-2.7-6-6V118c0-3.3 2.7-6 6-6h404c3.3 0 6 2.7 6 6v276c0 3.3-2.7 6-6 6zm-211.1-85.7c1.7 2.4 1.5 5.6-.5 7.7-53.6 56.8-172.8 32.1-172.8-67.9 0-97.3 121.7-119.5 172.5-70.1 2.1 2 2.5 3.2 1 5.7l-17.5 30.5c-1.9 3.1-6.2 4-9.1 1.7-40.8-32-94.6-14.9-94.6 31.2 0 48 51 70.5 92.2 32.6 2.8-2.5 7.1-2.1 9.2.9l19.6 27.7zm190.4 0c1.7 2.4 1.5 5.6-.5 7.7-53.6 56.9-172.8 32.1-172.8-67.9 0-97.3 121.7-119.5 172.5-70.1 2.1 2 2.5 3.2 1 5.7L420 220.2c-1.9 3.1-6.2 4-9.1 1.7-40.8-32-94.6-14.9-94.6 31.2 0 48 51 70.5 92.2 32.6 2.8-2.5 7.1-2.1 9.2.9l19.6 27.7z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCommentAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 0H64C28.7 0 0 28.7 0 64v288c0 35.3 28.7 64 64 64h96v84c0 7.1 5.8 12 12 12 2.4 0 4.9-.7 7.1-2.4L304 416h144c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zm16 352c0 8.8-7.2 16-16 16H288l-12.8 9.6L208 428v-60H64c-8.8 0-16-7.2-16-16V64c0-8.8 7.2-16 16-16h384c8.8 0 16 7.2 16 16v288z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCommentDots (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144 208c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm112 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm112 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zM256 32C114.6 32 0 125.1 0 240c0 47.6 19.9 91.2 52.9 126.3C38 405.7 7 439.1 6.5 439.5c-6.6 7-8.4 17.2-4.6 26S14.4 480 24 480c61.5 0 110-25.7 139.1-46.3C192 442.8 223.2 448 256 448c141.4 0 256-93.1 256-208S397.4 32 256 32zm0 368c-26.7 0-53.1-4.1-78.4-12.1l-22.7-7.2-19.5 13.8c-14.3 10.1-33.9 21.4-57.5 29 7.3-12.1 14.4-25.7 19.9-40.2l10.6-28.1-20.6-21.8C69.7 314.1 48 282.2 48 240c0-88.2 93.3-160 208-160s208 71.8 208 160-93.3 160-208 160z\"},\"child\":[]}]})(props);\n};\nexport function FaRegComment (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C114.6 32 0 125.1 0 240c0 47.6 19.9 91.2 52.9 126.3C38 405.7 7 439.1 6.5 439.5c-6.6 7-8.4 17.2-4.6 26S14.4 480 24 480c61.5 0 110-25.7 139.1-46.3C192 442.8 223.2 448 256 448c141.4 0 256-93.1 256-208S397.4 32 256 32zm0 368c-26.7 0-53.1-4.1-78.4-12.1l-22.7-7.2-19.5 13.8c-14.3 10.1-33.9 21.4-57.5 29 7.3-12.1 14.4-25.7 19.9-40.2l10.6-28.1-20.6-21.8C69.7 314.1 48 282.2 48 240c0-88.2 93.3-160 208-160s208 71.8 208 160-93.3 160-208 160z\"},\"child\":[]}]})(props);\n};\nexport function FaRegComments (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M532 386.2c27.5-27.1 44-61.1 44-98.2 0-80-76.5-146.1-176.2-157.9C368.3 72.5 294.3 32 208 32 93.1 32 0 103.6 0 192c0 37 16.5 71 44 98.2-15.3 30.7-37.3 54.5-37.7 54.9-6.3 6.7-8.1 16.5-4.4 25 3.6 8.5 12 14 21.2 14 53.5 0 96.7-20.2 125.2-38.8 9.2 2.1 18.7 3.7 28.4 4.9C208.1 407.6 281.8 448 368 448c20.8 0 40.8-2.4 59.8-6.8C456.3 459.7 499.4 480 553 480c9.2 0 17.5-5.5 21.2-14 3.6-8.5 1.9-18.3-4.4-25-.4-.3-22.5-24.1-37.8-54.8zm-392.8-92.3L122.1 305c-14.1 9.1-28.5 16.3-43.1 21.4 2.7-4.7 5.4-9.7 8-14.8l15.5-31.1L77.7 256C64.2 242.6 48 220.7 48 192c0-60.7 73.3-112 160-112s160 51.3 160 112-73.3 112-160 112c-16.5 0-33-1.9-49-5.6l-19.8-4.5zM498.3 352l-24.7 24.4 15.5 31.1c2.6 5.1 5.3 10.1 8 14.8-14.6-5.1-29-12.3-43.1-21.4l-17.1-11.1-19.9 4.6c-16 3.7-32.5 5.6-49 5.6-54 0-102.2-20.1-131.3-49.7C338 339.5 416 272.9 416 192c0-3.4-.4-6.7-.7-10C479.7 196.5 528 238.8 528 288c0 28.7-16.2 50.6-29.7 64z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCompass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M347.94 129.86L203.6 195.83a31.938 31.938 0 0 0-15.77 15.77l-65.97 144.34c-7.61 16.65 9.54 33.81 26.2 26.2l144.34-65.97a31.938 31.938 0 0 0 15.77-15.77l65.97-144.34c7.61-16.66-9.54-33.81-26.2-26.2zm-77.36 148.72c-12.47 12.47-32.69 12.47-45.16 0-12.47-12.47-12.47-32.69 0-45.16 12.47-12.47 32.69-12.47 45.16 0 12.47 12.47 12.47 32.69 0 45.16zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 448c-110.28 0-200-89.72-200-200S137.72 56 248 56s200 89.72 200 200-89.72 200-200 200z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCopy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM266 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 0 1-6 6zm128-96H182a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 0 1-6 6zm6-256h-64V48h9.632c1.591 0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 0 1 1.757 4.243V112z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCopyright (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 448c-110.532 0-200-89.451-200-200 0-110.531 89.451-200 200-200 110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200zm107.351-101.064c-9.614 9.712-45.53 41.396-104.065 41.396-82.43 0-140.484-61.425-140.484-141.567 0-79.152 60.275-139.401 139.762-139.401 55.531 0 88.738 26.62 97.593 34.779a11.965 11.965 0 0 1 1.936 15.322l-18.155 28.113c-3.841 5.95-11.966 7.282-17.499 2.921-8.595-6.776-31.814-22.538-61.708-22.538-48.303 0-77.916 35.33-77.916 80.082 0 41.589 26.888 83.692 78.277 83.692 32.657 0 56.843-19.039 65.726-27.225 5.27-4.857 13.596-4.039 17.82 1.738l19.865 27.17a11.947 11.947 0 0 1-1.152 15.518z\"},\"child\":[]}]})(props);\n};\nexport function FaRegCreditCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M527.9 32H48.1C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48.1 48h479.8c26.6 0 48.1-21.5 48.1-48V80c0-26.5-21.5-48-48.1-48zM54.1 80h467.8c3.3 0 6 2.7 6 6v42H48.1V86c0-3.3 2.7-6 6-6zm467.8 352H54.1c-3.3 0-6-2.7-6-6V256h479.8v170c0 3.3-2.7 6-6 6zM192 332v40c0 6.6-5.4 12-12 12h-72c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12zm192 0v40c0 6.6-5.4 12-12 12H236c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegDizzy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-33.8-217.9c7.8-7.8 7.8-20.5 0-28.3L196.3 192l17.9-17.9c7.8-7.8 7.8-20.5 0-28.3-7.8-7.8-20.5-7.8-28.3 0L168 163.7l-17.8-17.8c-7.8-7.8-20.5-7.8-28.3 0-7.8 7.8-7.8 20.5 0 28.3l17.9 17.9-17.9 17.9c-7.8 7.8-7.8 20.5 0 28.3 7.8 7.8 20.5 7.8 28.3 0l17.8-17.8 17.8 17.8c7.9 7.7 20.5 7.7 28.4-.2zm160-92.2c-7.8-7.8-20.5-7.8-28.3 0L328 163.7l-17.8-17.8c-7.8-7.8-20.5-7.8-28.3 0-7.8 7.8-7.8 20.5 0 28.3l17.9 17.9-17.9 17.9c-7.8 7.8-7.8 20.5 0 28.3 7.8 7.8 20.5 7.8 28.3 0l17.8-17.8 17.8 17.8c7.8 7.8 20.5 7.8 28.3 0 7.8-7.8 7.8-20.5 0-28.3l-17.8-18 17.9-17.9c7.7-7.8 7.7-20.4 0-28.2zM248 272c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64z\"},\"child\":[]}]})(props);\n};\nexport function FaRegDotCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 56c110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200-110.532 0-200-89.451-200-200 0-110.532 89.451-200 200-200m0-48C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 168c-44.183 0-80 35.817-80 80s35.817 80 80 80 80-35.817 80-80-35.817-80-80-80z\"},\"child\":[]}]})(props);\n};\nexport function FaRegEdit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M402.3 344.9l32-32c5-5 13.7-1.5 13.7 5.7V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h273.5c7.1 0 10.7 8.6 5.7 13.7l-32 32c-1.5 1.5-3.5 2.3-5.7 2.3H48v352h352V350.5c0-2.1.8-4.1 2.3-5.6zm156.6-201.8L296.3 405.7l-90.4 10c-26.2 2.9-48.5-19.2-45.6-45.6l10-90.4L432.9 17.1c22.9-22.9 59.9-22.9 82.7 0l43.2 43.2c22.9 22.9 22.9 60 .1 82.8zM460.1 174L402 115.9 216.2 301.8l-7.3 65.3 65.3-7.3L460.1 174zm64.8-79.7l-43.2-43.2c-4.1-4.1-10.8-4.1-14.8 0L436 82l58.1 58.1 30.9-30.9c4-4.2 4-10.8-.1-14.9z\"},\"child\":[]}]})(props);\n};\nexport function FaRegEnvelopeOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M494.586 164.516c-4.697-3.883-111.723-89.95-135.251-108.657C337.231 38.191 299.437 0 256 0c-43.205 0-80.636 37.717-103.335 55.859-24.463 19.45-131.07 105.195-135.15 108.549A48.004 48.004 0 0 0 0 201.485V464c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V201.509a48 48 0 0 0-17.414-36.993zM464 458a6 6 0 0 1-6 6H54a6 6 0 0 1-6-6V204.347c0-1.813.816-3.526 2.226-4.665 15.87-12.814 108.793-87.554 132.364-106.293C200.755 78.88 232.398 48 256 48c23.693 0 55.857 31.369 73.41 45.389 23.573 18.741 116.503 93.493 132.366 106.316a5.99 5.99 0 0 1 2.224 4.663V458zm-31.991-187.704c4.249 5.159 3.465 12.795-1.745 16.981-28.975 23.283-59.274 47.597-70.929 56.863C336.636 362.283 299.205 400 256 400c-43.452 0-81.287-38.237-103.335-55.86-11.279-8.967-41.744-33.413-70.927-56.865-5.21-4.187-5.993-11.822-1.745-16.981l15.258-18.528c4.178-5.073 11.657-5.843 16.779-1.726 28.618 23.001 58.566 47.035 70.56 56.571C200.143 320.631 232.307 352 256 352c23.602 0 55.246-30.88 73.41-45.389 11.994-9.535 41.944-33.57 70.563-56.568 5.122-4.116 12.601-3.346 16.778 1.727l15.258 18.526z\"},\"child\":[]}]})(props);\n};\nexport function FaRegEnvelope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z\"},\"child\":[]}]})(props);\n};\nexport function FaRegEyeSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M634 471L36 3.51A16 16 0 0 0 13.51 6l-10 12.49A16 16 0 0 0 6 41l598 467.49a16 16 0 0 0 22.49-2.49l10-12.49A16 16 0 0 0 634 471zM296.79 146.47l134.79 105.38C429.36 191.91 380.48 144 320 144a112.26 112.26 0 0 0-23.21 2.47zm46.42 219.07L208.42 260.16C210.65 320.09 259.53 368 320 368a113 113 0 0 0 23.21-2.46zM320 112c98.65 0 189.09 55 237.93 144a285.53 285.53 0 0 1-44 60.2l37.74 29.5a333.7 333.7 0 0 0 52.9-75.11 32.35 32.35 0 0 0 0-29.19C550.29 135.59 442.93 64 320 64c-36.7 0-71.71 7-104.63 18.81l46.41 36.29c18.94-4.3 38.34-7.1 58.22-7.1zm0 288c-98.65 0-189.08-55-237.93-144a285.47 285.47 0 0 1 44.05-60.19l-37.74-29.5a333.6 333.6 0 0 0-52.89 75.1 32.35 32.35 0 0 0 0 29.19C89.72 376.41 197.08 448 320 448c36.7 0 71.71-7.05 104.63-18.81l-46.41-36.28C359.28 397.2 339.89 400 320 400z\"},\"child\":[]}]})(props);\n};\nexport function FaRegEye (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 144a110.94 110.94 0 0 0-31.24 5 55.4 55.4 0 0 1 7.24 27 56 56 0 0 1-56 56 55.4 55.4 0 0 1-27-7.24A111.71 111.71 0 1 0 288 144zm284.52 97.4C518.29 135.59 410.93 64 288 64S57.68 135.64 3.48 241.41a32.35 32.35 0 0 0 0 29.19C57.71 376.41 165.07 448 288 448s230.32-71.64 284.52-177.41a32.35 32.35 0 0 0 0-29.19zM288 400c-98.65 0-189.09-55-237.93-144C98.91 167 189.34 112 288 112s189.09 55 237.93 144C477.1 345 386.66 400 288 400z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFileAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 248v28c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-28c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm-12 72H108c-6.6 0-12 5.4-12 12v28c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12v-28c0-6.6-5.4-12-12-12zm108-188.1V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h204.1C264.8 0 277 5.1 286 14.1L369.9 98c9 8.9 14.1 21.2 14.1 33.9zm-128-80V128h76.1L256 51.9zM336 464V176H232c-13.3 0-24-10.7-24-24V48H48v416h288z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFileArchive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128.3 160v32h32v-32zm64-96h-32v32h32zm-64 32v32h32V96zm64 32h-32v32h32zm177.6-30.1L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM256 51.9l76.1 76.1H256zM336 464H48V48h79.7v16h32V48H208v104c0 13.3 10.7 24 24 24h104zM194.2 265.7c-1.1-5.6-6-9.7-11.8-9.7h-22.1v-32h-32v32l-19.7 97.1C102 385.6 126.8 416 160 416c33.1 0 57.9-30.2 51.5-62.6zm-33.9 124.4c-17.9 0-32.4-12.1-32.4-27s14.5-27 32.4-27 32.4 12.1 32.4 27-14.5 27-32.4 27zm32-198.1h-32v32h32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFileAudio (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.941 97.941l-83.882-83.882A48 48 0 0 0 252.118 0H48C21.49 0 0 21.49 0 48v416c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48V131.882a48 48 0 0 0-14.059-33.941zM332.118 128H256V51.882L332.118 128zM48 464V48h160v104c0 13.255 10.745 24 24 24h104v288H48zm144-76.024c0 10.691-12.926 16.045-20.485 8.485L136 360.486h-28c-6.627 0-12-5.373-12-12v-56c0-6.627 5.373-12 12-12h28l35.515-36.947c7.56-7.56 20.485-2.206 20.485 8.485v135.952zm41.201-47.13c9.051-9.297 9.06-24.133.001-33.439-22.149-22.752 12.235-56.246 34.395-33.481 27.198 27.94 27.212 72.444.001 100.401-21.793 22.386-56.947-10.315-34.397-33.481z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFileCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M149.9 349.1l-.2-.2-32.8-28.9 32.8-28.9c3.6-3.2 4-8.8.8-12.4l-.2-.2-17.4-18.6c-3.4-3.6-9-3.7-12.4-.4l-57.7 54.1c-3.7 3.5-3.7 9.4 0 12.8l57.7 54.1c1.6 1.5 3.8 2.4 6 2.4 2.4 0 4.8-1 6.4-2.8l17.4-18.6c3.3-3.5 3.1-9.1-.4-12.4zm220-251.2L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM256 51.9l76.1 76.1H256zM336 464H48V48h160v104c0 13.3 10.7 24 24 24h104zM209.6 214c-4.7-1.4-9.5 1.3-10.9 6L144 408.1c-1.4 4.7 1.3 9.6 6 10.9l24.4 7.1c4.7 1.4 9.6-1.4 10.9-6L240 231.9c1.4-4.7-1.3-9.6-6-10.9zm24.5 76.9l.2.2 32.8 28.9-32.8 28.9c-3.6 3.2-4 8.8-.8 12.4l.2.2 17.4 18.6c3.3 3.5 8.9 3.7 12.4.4l57.7-54.1c3.7-3.5 3.7-9.4 0-12.8l-57.7-54.1c-3.5-3.3-9.1-3.2-12.4.4l-17.4 18.6c-3.3 3.5-3.1 9.1.4 12.4z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFileExcel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm212-240h-28.8c-4.4 0-8.4 2.4-10.5 6.3-18 33.1-22.2 42.4-28.6 57.7-13.9-29.1-6.9-17.3-28.6-57.7-2.1-3.9-6.2-6.3-10.6-6.3H124c-9.3 0-15 10-10.4 18l46.3 78-46.3 78c-4.7 8 1.1 18 10.4 18h28.9c4.4 0 8.4-2.4 10.5-6.3 21.7-40 23-45 28.6-57.7 14.9 30.2 5.9 15.9 28.6 57.7 2.1 3.9 6.2 6.3 10.6 6.3H260c9.3 0 15-10 10.4-18L224 320c.7-1.1 30.3-50.5 46.3-78 4.7-8-1.1-18-10.3-18z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFileImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm32-48h224V288l-23.5-23.5c-4.7-4.7-12.3-4.7-17 0L176 352l-39.5-39.5c-4.7-4.7-12.3-4.7-17 0L80 352v64zm48-240c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFilePdf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm250.2-143.7c-12.2-12-47-8.7-64.4-6.5-17.2-10.5-28.7-25-36.8-46.3 3.9-16.1 10.1-40.6 5.4-56-4.2-26.2-37.8-23.6-42.6-5.9-4.4 16.1-.4 38.5 7 67.1-10 23.9-24.9 56-35.4 74.4-20 10.3-47 26.2-51 46.2-3.3 15.8 26 55.2 76.1-31.2 22.4-7.4 46.8-16.5 68.4-20.1 18.9 10.2 41 17 55.8 17 25.5 0 28-28.2 17.5-38.7zm-198.1 77.8c5.1-13.7 24.5-29.5 30.4-35-19 30.3-30.4 35.7-30.4 35zm81.6-190.6c7.4 0 6.7 32.1 1.8 40.8-4.4-13.9-4.3-40.8-1.8-40.8zm-24.4 136.6c9.7-16.9 18-37 24.7-54.7 8.3 15.1 18.9 27.2 30.1 35.5-20.8 4.3-38.9 13.1-54.8 19.2zm131.6-5s-5 6-37.3-7.8c35.1-2.6 40.9 5.4 37.3 7.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFilePowerpoint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm72-60V236c0-6.6 5.4-12 12-12h69.2c36.7 0 62.8 27 62.8 66.3 0 74.3-68.7 66.5-95.5 66.5V404c0 6.6-5.4 12-12 12H132c-6.6 0-12-5.4-12-12zm48.5-87.4h23c7.9 0 13.9-2.4 18.1-7.2 8.5-9.8 8.4-28.5.1-37.8-4.1-4.6-9.9-7-17.4-7h-23.9v52z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFileVideo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.941 97.941l-83.882-83.882A48 48 0 0 0 252.118 0H48C21.49 0 0 21.49 0 48v416c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48V131.882a48 48 0 0 0-14.059-33.941zM332.118 128H256V51.882L332.118 128zM48 464V48h160v104c0 13.255 10.745 24 24 24h104v288H48zm228.687-211.303L224 305.374V268c0-11.046-8.954-20-20-20H100c-11.046 0-20 8.954-20 20v104c0 11.046 8.954 20 20 20h104c11.046 0 20-8.954 20-20v-37.374l52.687 52.674C286.704 397.318 304 390.28 304 375.986V264.011c0-14.311-17.309-21.319-27.313-11.314z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFileWord (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm220.1-208c-5.7 0-10.6 4-11.7 9.5-20.6 97.7-20.4 95.4-21 103.5-.2-1.2-.4-2.6-.7-4.3-.8-5.1.3.2-23.6-99.5-1.3-5.4-6.1-9.2-11.7-9.2h-13.3c-5.5 0-10.3 3.8-11.7 9.1-24.4 99-24 96.2-24.8 103.7-.1-1.1-.2-2.5-.5-4.2-.7-5.2-14.1-73.3-19.1-99-1.1-5.6-6-9.7-11.8-9.7h-16.8c-7.8 0-13.5 7.3-11.7 14.8 8 32.6 26.7 109.5 33.2 136 1.3 5.4 6.1 9.1 11.7 9.1h25.2c5.5 0 10.3-3.7 11.6-9.1l17.9-71.4c1.5-6.2 2.5-12 3-17.3l2.9 17.3c.1.4 12.6 50.5 17.9 71.4 1.3 5.3 6.1 9.1 11.6 9.1h24.7c5.5 0 10.3-3.7 11.6-9.1 20.8-81.9 30.2-119 34.5-136 1.9-7.6-3.8-14.9-11.6-14.9h-15.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFile (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFlag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336.174 80c-49.132 0-93.305-32-161.913-32-31.301 0-58.303 6.482-80.721 15.168a48.04 48.04 0 0 0 2.142-20.727C93.067 19.575 74.167 1.594 51.201.104 23.242-1.71 0 20.431 0 48c0 17.764 9.657 33.262 24 41.562V496c0 8.837 7.163 16 16 16h16c8.837 0 16-7.163 16-16v-83.443C109.869 395.28 143.259 384 199.826 384c49.132 0 93.305 32 161.913 32 58.479 0 101.972-22.617 128.548-39.981C503.846 367.161 512 352.051 512 335.855V95.937c0-34.459-35.264-57.768-66.904-44.117C409.193 67.309 371.641 80 336.174 80zM464 336c-21.783 15.412-60.824 32-102.261 32-59.945 0-102.002-32-161.913-32-43.361 0-96.379 9.403-127.826 24V128c21.784-15.412 60.824-32 102.261-32 59.945 0 102.002 32 161.913 32 43.271 0 96.32-17.366 127.826-32v240z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFlushed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm96-312c-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80-35.8-80-80-80zm0 128c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-72c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-112 24c0-44.2-35.8-80-80-80s-80 35.8-80 80 35.8 80 80 80 80-35.8 80-80zm-80 48c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-72c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm160 144H184c-13.2 0-24 10.8-24 24s10.8 24 24 24h128c13.2 0 24-10.8 24-24s-10.8-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFolderOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M527.9 224H480v-48c0-26.5-21.5-48-48-48H272l-64-64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h400c16.5 0 31.9-8.5 40.7-22.6l79.9-128c20-31.9-3-73.4-40.7-73.4zM48 118c0-3.3 2.7-6 6-6h134.1l64 64H426c3.3 0 6 2.7 6 6v42H152c-16.8 0-32.4 8.8-41.1 23.2L48 351.4zm400 282H72l77.2-128H528z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFolder (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 128H272l-54.63-54.63c-6-6-14.14-9.37-22.63-9.37H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48zm0 272H48V112h140.12l54.63 54.63c6 6 14.14 9.37 22.63 9.37H464v224z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFontAwesomeLogoFull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 3992 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M454.6 0H57.4C25.9 0 0 25.9 0 57.4v397.3C0 486.1 25.9 512 57.4 512h397.3c31.4 0 57.4-25.9 57.4-57.4V57.4C512 25.9 486.1 0 454.6 0zm-58.9 324.9c0 4.8-4.1 6.9-8.9 8.9-19.2 8.1-39.7 15.7-61.5 15.7-40.5 0-68.7-44.8-163.2 2.5v51.8c0 30.3-45.7 30.2-45.7 0v-250c-9-7-15-17.9-15-30.3 0-21 17.1-38.2 38.2-38.2 21 0 38.2 17.1 38.2 38.2 0 12.2-5.8 23.2-14.9 30.2v21c37.1-12 65.5-34.4 146.1-3.4 26.6 11.4 68.7-15.7 76.5-15.7 5.5 0 10.3 4.1 10.3 8.9v160.4zm432.9-174.2h-137v70.1H825c39.8 0 40.4 62.2 0 62.2H691.6v105.6c0 45.5-70.7 46.4-70.7 0V128.3c0-22 18-39.8 39.8-39.8h167.8c39.6 0 40.5 62.2.1 62.2zm191.1 23.4c-169.3 0-169.1 252.4 0 252.4 169.9 0 169.9-252.4 0-252.4zm0 196.1c-81.6 0-82.1-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm372.4 53.4c-17.5 0-31.4-13.9-31.4-31.4v-117c0-62.4-72.6-52.5-99.1-16.4v133.4c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c43.3-51.6 162.4-60.4 162.4 39.3v141.5c.3 30.4-31.5 31.4-31.7 31.4zm179.7 2.9c-44.3 0-68.3-22.9-68.3-65.8V235.2H1488c-35.6 0-36.7-55.3 0-55.3h15.5v-37.3c0-41.3 63.8-42.1 63.8 0v37.5h24.9c35.4 0 35.7 55.3 0 55.3h-24.9v108.5c0 29.6 26.1 26.3 27.4 26.3 31.4 0 52.6 56.3-22.9 56.3zM1992 123c-19.5-50.2-95.5-50-114.5 0-107.3 275.7-99.5 252.7-99.5 262.8 0 42.8 58.3 51.2 72.1 14.4l13.5-35.9H2006l13 35.9c14.2 37.7 72.1 27.2 72.1-14.4 0-10.1 5.3 6.8-99.1-262.8zm-108.9 179.1l51.7-142.9 51.8 142.9h-103.5zm591.3-85.6l-53.7 176.3c-12.4 41.2-72 41-84 0l-42.3-135.9-42.3 135.9c-12.4 40.9-72 41.2-84.5 0l-54.2-176.3c-12.5-39.4 49.8-56.1 60.2-16.9L2213 342l45.3-139.5c10.9-32.7 59.6-34.7 71.2 0l45.3 139.5 39.3-142.4c10.3-38.3 72.6-23.8 60.3 16.9zm275.4 75.1c0-42.4-33.9-117.5-119.5-117.5-73.2 0-124.4 56.3-124.4 126 0 77.2 55.3 126.4 128.5 126.4 31.7 0 93-11.5 93-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-109 8.4-115.9-43.8h148.3c16.3 0 29.3-13.4 29.3-28.9zM2571 277.7c9.5-73.4 113.9-68.6 118.6 0H2571zm316.7 148.8c-31.4 0-81.6-10.5-96.6-31.9-12.4-17 2.5-39.8 21.8-39.8 16.3 0 36.8 22.9 77.7 22.9 27.4 0 40.4-11 40.4-25.8 0-39.8-142.9-7.4-142.9-102 0-40.4 35.3-75.7 98.6-75.7 31.4 0 74.1 9.9 87.6 29.4 10.8 14.8-1.4 36.2-20.9 36.2-15.1 0-26.7-17.3-66.2-17.3-22.9 0-37.8 10.5-37.8 23.8 0 35.9 142.4 6 142.4 103.1-.1 43.7-37.4 77.1-104.1 77.1zm266.8-252.4c-169.3 0-169.1 252.4 0 252.4 170.1 0 169.6-252.4 0-252.4zm0 196.1c-81.8 0-82-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm476.9 22V268.7c0-53.8-61.4-45.8-85.7-10.5v134c0 41.3-63.8 42.1-63.8 0V268.7c0-52.1-59.5-47.4-85.7-10.1v133.6c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c9.9-14.4 41.8-37.3 78.6-37.3 35.3 0 57.7 16.4 66.7 43.8 13.9-21.8 45.8-43.8 82.6-43.8 44.3 0 70.7 23.4 70.7 72.7v145.3c.5 17.3-13.5 31.4-31.9 31.4 3.5.1-31.3 1.1-31.3-31.3zM3992 291.6c0-42.4-32.4-117.5-117.9-117.5-73.2 0-127.5 56.3-127.5 126 0 77.2 58.3 126.4 131.6 126.4 31.7 0 91.5-11.5 91.5-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-110.5 8.4-117.5-43.8h149.8c16.3 0 29.1-13.4 29.3-28.9zm-180.5-13.9c9.7-74.4 115.9-68.3 120.1 0h-120.1z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFrownOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-48-248c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm128-32c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-80 112c-35.6 0-88.8 21.3-95.8 61.2-2 11.8 9 21.5 20.5 18.1 31.2-9.6 59.4-15.3 75.3-15.3s44.1 5.7 75.3 15.3c11.4 3.5 22.5-6.3 20.5-18.1-7-39.9-60.2-61.2-95.8-61.2z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFrown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160-64c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-80 128c-40.2 0-78 17.7-103.8 48.6-8.5 10.2-7.1 25.3 3.1 33.8 10.2 8.4 25.3 7.1 33.8-3.1 16.6-19.9 41-31.4 66.9-31.4s50.3 11.4 66.9 31.4c8.1 9.7 23.1 11.9 33.8 3.1 10.2-8.5 11.5-23.6 3.1-33.8C326 321.7 288.2 304 248 304z\"},\"child\":[]}]})(props);\n};\nexport function FaRegFutbol (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M483.8 179.4C449.8 74.6 352.6 8 248.1 8c-25.4 0-51.2 3.9-76.7 12.2C41.2 62.5-30.1 202.4 12.2 332.6 46.2 437.4 143.4 504 247.9 504c25.4 0 51.2-3.9 76.7-12.2 130.2-42.3 201.5-182.2 159.2-312.4zm-74.5 193.7l-52.2 6.4-43.7-60.9 24.4-75.2 71.1-22.1 38.9 36.4c-.2 30.7-7.4 61.1-21.7 89.2-4.7 9.3-10.7 17.8-16.8 26.2zm0-235.4l-10.4 53.1-70.7 22-64.2-46.5V92.5l47.4-26.2c39.2 13 73.4 38 97.9 71.4zM184.9 66.4L232 92.5v73.8l-64.2 46.5-70.6-22-10.1-52.5c24.3-33.4 57.9-58.6 97.8-71.9zM139 379.5L85.9 373c-14.4-20.1-37.3-59.6-37.8-115.3l39-36.4 71.1 22.2 24.3 74.3-43.5 61.7zm48.2 67l-22.4-48.1 43.6-61.7H287l44.3 61.7-22.4 48.1c-6.2 1.8-57.6 20.4-121.7 0z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGem (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 0H112c-4 0-7.8 2-10 5.4L2 152.6c-2.9 4.4-2.6 10.2.7 14.2l276 340.8c4.8 5.9 13.8 5.9 18.6 0l276-340.8c3.3-4.1 3.6-9.8.7-14.2L474.1 5.4C471.8 2 468.1 0 464 0zm-19.3 48l63.3 96h-68.4l-51.7-96h56.8zm-202.1 0h90.7l51.7 96H191l51.6-96zm-111.3 0h56.8l-51.7 96H68l63.3-96zm-43 144h51.4L208 352 88.3 192zm102.9 0h193.6L288 435.3 191.2 192zM368 352l68.2-160h51.4L368 352z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrimace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm16 16H152c-26.5 0-48 21.5-48 48v32c0 26.5 21.5 48 48 48h192c26.5 0 48-21.5 48-48v-32c0-26.5-21.5-48-48-48zm-168 96h-24c-8.8 0-16-7.2-16-16v-8h40v24zm0-40h-40v-8c0-8.8 7.2-16 16-16h24v24zm64 40h-48v-24h48v24zm0-40h-48v-24h48v24zm64 40h-48v-24h48v24zm0-40h-48v-24h48v24zm56 24c0 8.8-7.2 16-16 16h-24v-24h40v8zm0-24h-40v-24h24c8.8 0 16 7.2 16 16v8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M200.3 248c12.4-18.7 15.1-37.3 15.7-56-.5-18.7-3.3-37.3-15.7-56-8-12-25.1-11.4-32.7 0-12.4 18.7-15.1 37.3-15.7 56 .5 18.7 3.3 37.3 15.7 56 8.1 12 25.2 11.4 32.7 0zm128 0c12.4-18.7 15.1-37.3 15.7-56-.5-18.7-3.3-37.3-15.7-56-8-12-25.1-11.4-32.7 0-12.4 18.7-15.1 37.3-15.7 56 .5 18.7 3.3 37.3 15.7 56 8.1 12 25.2 11.4 32.7 0zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.3-17.7 15.3 7.9 47.2 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinBeamSweat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440 160c29.5 0 53.3-26.3 53.3-58.7 0-25-31.7-75.5-46.2-97.3-3.6-5.3-10.7-5.3-14.2 0-14.5 21.8-46.2 72.3-46.2 97.3 0 32.4 23.8 58.7 53.3 58.7zM248 400c51.9 0 115.3-32.9 123.3-80 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 8 47.1 71.4 80 123.3 80zm130.3-168.3c3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.6 6.2 4.6 9.3 3.7zm105.3-52.9c-24.6 15.7-46 12.9-46.4 12.9 6.9 20.2 10.8 41.8 10.8 64.3 0 110.3-89.7 200-200 200S48 366.3 48 256 137.7 56 248 56c39.8 0 76.8 11.8 108 31.9 1.7-9.5 6.3-24.1 17.2-45.7C336.4 20.6 293.7 8 248 8 111 8 0 119 0 256s111 248 248 248 248-111 248-248c0-27-4.4-52.9-12.4-77.2zM168 189.4c12.3 0 23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.8 19.2-21.6 31.5-21.6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinBeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 7.9 47.1 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zm-235.9-72.9c3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3zm160 0c3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinHearts (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M353.6 304.6c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 7.9 47.2 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zm-152.8-48.9c4.5 1.2 9.2-1.5 10.5-6l19.4-69.9c5.6-20.3-7.4-41.1-28.8-44.5-18.6-3-36.4 9.8-41.5 27.9l-2 7.1-7.1-1.9c-18.2-4.7-38.2 4.3-44.9 22-7.7 20.2 3.8 41.9 24.2 47.2l70.2 18.1zm188.8-65.3c-6.7-17.6-26.7-26.7-44.9-22l-7.1 1.9-2-7.1c-5-18.1-22.8-30.9-41.5-27.9-21.4 3.4-34.4 24.2-28.8 44.5l19.4 69.9c1.2 4.5 5.9 7.2 10.5 6l70.2-18.2c20.4-5.3 31.9-26.9 24.2-47.1zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinSquintTears (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M117.1 384.1c-25.8 3.7-84 13.7-100.9 30.6-21.9 21.9-21.5 57.9.9 80.3s58.3 22.8 80.3.9C114.3 479 124.3 420.8 128 395c.8-6.4-4.6-11.8-10.9-10.9zm-41.2-41.7C40.3 268 53 176.1 114.6 114.6 152.4 76.8 202.6 56 256 56c36.2 0 70.8 9.8 101.2 27.7 3.8-20.3 8-36.1 12-48.3C333.8 17.2 294.9 8 256 8 192.5 8 129.1 32.2 80.6 80.6c-74.1 74.1-91.3 183.4-52 274 12.2-4.1 27.7-8.3 47.3-12.2zm352.3-187.6c45 76.6 34.9 176.9-30.8 242.6-37.8 37.8-88 58.6-141.4 58.6-30.5 0-59.8-7-86.4-19.8-3.9 19.5-8 35-12.2 47.2 31.4 13.6 65 20.6 98.7 20.6 63.5 0 126.9-24.2 175.4-72.6 78.1-78.1 93.1-195.4 45.2-288.6-12.3 4-28.2 8.1-48.5 12zm-33.3-26.9c25.8-3.7 84-13.7 100.9-30.6 21.9-21.9 21.5-57.9-.9-80.3s-58.3-22.8-80.3-.9C397.7 33 387.7 91.2 384 117c-.8 6.4 4.6 11.8 10.9 10.9zm-187 108.3c-3-3-7.2-4.2-11.4-3.2L106 255.7c-5.7 1.4-9.5 6.7-9.1 12.6.5 5.8 5.1 10.5 10.9 11l52.3 4.8 4.8 52.3c.5 5.8 5.2 10.4 11 10.9h.9c5.5 0 10.3-3.7 11.7-9.1l22.6-90.5c1-4.2-.2-8.5-3.2-11.5zm39.7-25.1l90.5-22.6c5.7-1.4 9.5-6.7 9.1-12.6-.5-5.8-5.1-10.5-10.9-11l-52.3-4.8-4.8-52.3c-.5-5.8-5.2-10.4-11-10.9-5.6-.1-11.2 3.4-12.6 9.1L233 196.5c-1 4.1.2 8.4 3.2 11.4 5 5 11.3 3.2 11.4 3.2zm52 88.5c-29.1 29.1-59.7 52.9-83.9 65.4-9.2 4.8-10 17.5-1.7 23.4 38.9 27.7 107 6.2 143.7-30.6S416 253 388.3 214.1c-5.8-8.2-18.5-7.6-23.4 1.7-12.3 24.2-36.2 54.7-65.3 83.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinSquint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.4-17.7 15.3 7.9 47.1 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zm-234.7-40.8c3.6 4.2 9.9 5.7 15.3 2.5l80-48c3.6-2.2 5.8-6.1 5.8-10.3s-2.2-8.1-5.8-10.3l-80-48c-5.1-3-11.4-1.9-15.3 2.5-3.8 4.5-3.8 11-.1 15.5l33.6 40.3-33.6 40.3c-3.8 4.5-3.7 11.1.1 15.5zm242.9 2.5c5.4 3.2 11.7 1.7 15.3-2.5 3.8-4.5 3.8-11 .1-15.5L343.6 208l33.6-40.3c3.8-4.5 3.7-11-.1-15.5-3.8-4.4-10.2-5.4-15.3-2.5l-80 48c-3.6 2.2-5.8 6.1-5.8 10.3s2.2 8.1 5.8 10.3l80 48z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinStars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 7.9 47.2 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zm-227.9-57.5c-1 6.2 5.4 11 11 7.9l31.3-16.3 31.3 16.3c5.6 3.1 12-1.7 11-7.9l-6-34.9 25.4-24.6c4.5-4.5 1.9-12.2-4.3-13.2l-34.9-5-15.5-31.6c-2.9-5.8-11-5.8-13.9 0l-15.5 31.6-34.9 5c-6.2.9-8.9 8.6-4.3 13.2l25.4 24.6-6.1 34.9zm259.7-72.7l-34.9-5-15.5-31.6c-2.9-5.8-11-5.8-13.9 0l-15.5 31.6-34.9 5c-6.2.9-8.9 8.6-4.3 13.2l25.4 24.6-6 34.9c-1 6.2 5.4 11 11 7.9l31.3-16.3 31.3 16.3c5.6 3.1 12-1.7 11-7.9l-6-34.9 25.4-24.6c4.5-4.6 1.8-12.2-4.4-13.2z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinTears (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M117.1 256.1c-25.8 3.7-84 13.7-100.9 30.6-21.9 21.9-21.5 57.9.9 80.3s58.3 22.8 80.3.9C114.3 351 124.3 292.8 128 267c.8-6.4-4.6-11.8-10.9-10.9zm506.7 30.6c-16.9-16.9-75.1-26.9-100.9-30.6-6.3-.9-11.7 4.5-10.8 10.8 3.7 25.8 13.7 84 30.6 100.9 21.9 21.9 57.9 21.5 80.3-.9 22.3-22.3 22.7-58.3.8-80.2zm-126.6 61.7C463.8 412.3 396.9 456 320 456c-76.9 0-143.8-43.7-177.2-107.6-12.5 37.4-25.2 43.9-28.3 46.5C159.1 460.7 234.5 504 320 504s160.9-43.3 205.5-109.1c-3.2-2.7-15.9-9.2-28.3-46.5zM122.7 224.5C137.9 129.2 220.5 56 320 56c99.5 0 182.1 73.2 197.3 168.5 2.1-.2 5.2-2.4 49.5 7C554.4 106 448.7 8 320 8S85.6 106 73.2 231.4c44.5-9.4 47.1-7.2 49.5-6.9zM320 400c51.9 0 115.3-32.9 123.3-80 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 8 47.1 71.4 80 123.3 80zm130.3-168.3c3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.6 6.2 4.6 9.3 3.7zM240 189.4c12.3 0 23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.8 19.2-21.6 31.5-21.6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinTongueSquint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm64 400c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-42.8l17.7-8.8c15-7.5 31.5 1.7 34.9 16.5l2.8 12.1c2.1 9.2 15.2 9.2 17.3 0l2.8-12.1c3.4-14.8 19.8-24.1 34.9-16.5l17.7 8.8V408zm28.2 25.3c2.2-8.1 3.8-16.5 3.8-25.3v-43.5c14.2-12.4 24.4-27.5 27.3-44.5 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.3-17.7 15.3 2.9 17 13.1 32.1 27.3 44.5V408c0 8.8 1.6 17.2 3.8 25.3C91.8 399.9 48 333 48 256c0-110.3 89.7-200 200-200s200 89.7 200 200c0 77-43.8 143.9-107.8 177.3zm36.9-281.1c-3.8-4.4-10.3-5.5-15.3-2.5l-80 48c-3.6 2.2-5.8 6.1-5.8 10.3s2.2 8.1 5.8 10.3l80 48c5.4 3.2 11.7 1.7 15.3-2.5 3.8-4.5 3.8-11 .1-15.5L343.6 208l33.6-40.3c3.8-4.5 3.7-11.1-.1-15.5zm-162.9 45.5l-80-48c-5-3-11.4-2-15.3 2.5-3.8 4.5-3.8 11-.1 15.5l33.6 40.3-33.6 40.3c-3.8 4.5-3.7 11 .1 15.5 3.6 4.2 9.9 5.7 15.3 2.5l80-48c3.6-2.2 5.8-6.1 5.8-10.3s-2.2-8.1-5.8-10.3z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinTongueWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M152 180c-25.7 0-55.9 16.9-59.8 42.1-.8 5 1.7 10 6.1 12.4 4.4 2.4 9.9 1.8 13.7-1.6l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c2.5 2.2 8 4.7 13.7 1.6 4.4-2.4 6.9-7.4 6.1-12.4-3.9-25.2-34.1-42.1-59.8-42.1zm176-52c-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80-35.8-80-80-80zm0 128c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-72c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm64 400c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-42.8l17.7-8.8c15-7.5 31.5 1.7 34.9 16.5l2.8 12.1c2.1 9.2 15.2 9.2 17.3 0l2.8-12.1c3.4-14.8 19.8-24.1 34.9-16.5l17.7 8.8V408zm28.2 25.3c2.2-8.1 3.8-16.5 3.8-25.3v-43.5c14.2-12.4 24.4-27.5 27.3-44.5 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.3-17.7 15.3 2.9 17 13.1 32.1 27.3 44.5V408c0 8.8 1.6 17.2 3.8 25.3C91.8 399.9 48 333 48 256c0-110.3 89.7-200 200-200s200 89.7 200 200c0 77-43.8 143.9-107.8 177.3z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinTongue (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm64 400c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-42.8l17.7-8.8c15-7.5 31.5 1.7 34.9 16.5l2.8 12.1c2.1 9.2 15.2 9.2 17.3 0l2.8-12.1c3.4-14.8 19.8-24.1 34.9-16.5l17.7 8.8V408zm28.2 25.3c2.2-8.1 3.8-16.5 3.8-25.3v-43.5c14.2-12.4 24.4-27.5 27.3-44.5 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.3-17.7 15.3 2.9 17 13.1 32.1 27.3 44.5V408c0 8.8 1.6 17.2 3.8 25.3C91.8 399.9 48 333 48 256c0-110.3 89.7-200 200-200s200 89.7 200 200c0 77-43.8 143.9-107.8 177.3zM168 176c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrinWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M328 180c-25.69 0-55.88 16.92-59.86 42.12-1.75 11.22 11.5 18.24 19.83 10.84l9.55-8.48c14.81-13.19 46.16-13.19 60.97 0l9.55 8.48c8.48 7.43 21.56.25 19.83-10.84C383.88 196.92 353.69 180 328 180zm-160 60c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm185.55 64.64c-25.93 8.3-64.4 13.06-105.55 13.06s-79.62-4.75-105.55-13.06c-9.94-3.13-19.4 5.37-17.71 15.34C132.67 367.13 196.06 400 248 400s115.33-32.87 123.26-80.02c1.68-9.89-7.67-18.48-17.71-15.34zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 448c-110.28 0-200-89.72-200-200S137.72 56 248 56s200 89.72 200 200-89.72 200-200 200z\"},\"child\":[]}]})(props);\n};\nexport function FaRegGrin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.4-17.7 15.3 7.9 47.1 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zM168 240c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandLizard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M556.686 290.542L410.328 64.829C397.001 44.272 374.417 32 349.917 32H56C25.121 32 0 57.122 0 88v8c0 44.112 35.888 80 80 80h196.042l-18.333 48H144c-48.523 0-88 39.477-88 88 0 30.879 25.121 56 56 56h131.552c2.987 0 5.914.549 8.697 1.631L352 408.418V480h224V355.829c0-23.225-6.679-45.801-19.314-65.287zM528 432H400v-23.582c0-19.948-12.014-37.508-30.604-44.736l-99.751-38.788A71.733 71.733 0 0 0 243.552 320H112c-4.411 0-8-3.589-8-8 0-22.056 17.944-40 40-40h113.709c19.767 0 37.786-12.407 44.84-30.873l24.552-64.281c8.996-23.553-8.428-48.846-33.63-48.846H80c-17.645 0-32-14.355-32-32v-8c0-4.411 3.589-8 8-8h293.917c8.166 0 15.693 4.09 20.137 10.942l146.358 225.715A71.84 71.84 0 0 1 528 355.829V432z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandPaper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M372.57 112.641v-10.825c0-43.612-40.52-76.691-83.039-65.546-25.629-49.5-94.09-47.45-117.982.747C130.269 26.456 89.144 57.945 89.144 102v126.13c-19.953-7.427-43.308-5.068-62.083 8.871-29.355 21.796-35.794 63.333-14.55 93.153L132.48 498.569a32 32 0 0 0 26.062 13.432h222.897c14.904 0 27.835-10.289 31.182-24.813l30.184-130.958A203.637 203.637 0 0 0 448 310.564V179c0-40.62-35.523-71.992-75.43-66.359zm27.427 197.922c0 11.731-1.334 23.469-3.965 34.886L368.707 464h-201.92L51.591 302.303c-14.439-20.27 15.023-42.776 29.394-22.605l27.128 38.079c8.995 12.626 29.031 6.287 29.031-9.283V102c0-25.645 36.571-24.81 36.571.691V256c0 8.837 7.163 16 16 16h6.856c8.837 0 16-7.163 16-16V67c0-25.663 36.571-24.81 36.571.691V256c0 8.837 7.163 16 16 16h6.856c8.837 0 16-7.163 16-16V101.125c0-25.672 36.57-24.81 36.57.691V256c0 8.837 7.163 16 16 16h6.857c8.837 0 16-7.163 16-16v-76.309c0-26.242 36.57-25.64 36.57-.691v131.563z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandPeace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M362.146 191.976c-13.71-21.649-38.761-34.016-65.006-30.341V74c0-40.804-32.811-74-73.141-74-40.33 0-73.14 33.196-73.14 74L160 168l-18.679-78.85C126.578 50.843 83.85 32.11 46.209 47.208 8.735 62.238-9.571 104.963 5.008 142.85l55.757 144.927c-30.557 24.956-43.994 57.809-24.733 92.218l54.853 97.999C102.625 498.97 124.73 512 148.575 512h205.702c30.744 0 57.558-21.44 64.555-51.797l27.427-118.999a67.801 67.801 0 0 0 1.729-15.203L448 256c0-44.956-43.263-77.343-85.854-64.024zM399.987 326c0 1.488-.169 2.977-.502 4.423l-27.427 119.001c-1.978 8.582-9.29 14.576-17.782 14.576H148.575c-6.486 0-12.542-3.621-15.805-9.449l-54.854-98c-4.557-8.141-2.619-18.668 4.508-24.488l26.647-21.764a16 16 0 0 0 4.812-18.139l-64.09-166.549C37.226 92.956 84.37 74.837 96.51 106.389l59.784 155.357A16 16 0 0 0 171.227 272h11.632c8.837 0 16-7.163 16-16V74c0-34.375 50.281-34.43 50.281 0v182c0 8.837 7.163 16 16 16h6.856c8.837 0 16-7.163 16-16v-28c0-25.122 36.567-25.159 36.567 0v28c0 8.837 7.163 16 16 16h6.856c8.837 0 16-7.163 16-16 0-25.12 36.567-25.16 36.567 0v70z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandPointDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M188.8 512c45.616 0 83.2-37.765 83.2-83.2v-35.647a93.148 93.148 0 0 0 22.064-7.929c22.006 2.507 44.978-3.503 62.791-15.985C409.342 368.1 448 331.841 448 269.299V248c0-60.063-40-98.512-40-127.2v-2.679c4.952-5.747 8-13.536 8-22.12V32c0-17.673-12.894-32-28.8-32H156.8C140.894 0 128 14.327 128 32v64c0 8.584 3.048 16.373 8 22.12v2.679c0 6.964-6.193 14.862-23.668 30.183l-.148.129-.146.131c-9.937 8.856-20.841 18.116-33.253 25.851C48.537 195.798 0 207.486 0 252.8c0 56.928 35.286 92 83.2 92 8.026 0 15.489-.814 22.4-2.176V428.8c0 45.099 38.101 83.2 83.2 83.2zm0-48c-18.7 0-35.2-16.775-35.2-35.2V270.4c-17.325 0-35.2 26.4-70.4 26.4-26.4 0-35.2-20.625-35.2-44 0-8.794 32.712-20.445 56.1-34.926 14.575-9.074 27.225-19.524 39.875-30.799 18.374-16.109 36.633-33.836 39.596-59.075h176.752C364.087 170.79 400 202.509 400 248v21.299c0 40.524-22.197 57.124-61.325 50.601-8.001 14.612-33.979 24.151-53.625 12.925-18.225 19.365-46.381 17.787-61.05 4.95V428.8c0 18.975-16.225 35.2-35.2 35.2zM328 64c0-13.255 10.745-24 24-24s24 10.745 24 24-10.745 24-24 24-24-10.745-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandPointLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 220.8C0 266.416 37.765 304 83.2 304h35.647a93.148 93.148 0 0 0 7.929 22.064c-2.507 22.006 3.503 44.978 15.985 62.791C143.9 441.342 180.159 480 242.701 480H264c60.063 0 98.512-40 127.2-40h2.679c5.747 4.952 13.536 8 22.12 8h64c17.673 0 32-12.894 32-28.8V188.8c0-15.906-14.327-28.8-32-28.8h-64c-8.584 0-16.373 3.048-22.12 8H391.2c-6.964 0-14.862-6.193-30.183-23.668l-.129-.148-.131-.146c-8.856-9.937-18.116-20.841-25.851-33.253C316.202 80.537 304.514 32 259.2 32c-56.928 0-92 35.286-92 83.2 0 8.026.814 15.489 2.176 22.4H83.2C38.101 137.6 0 175.701 0 220.8zm48 0c0-18.7 16.775-35.2 35.2-35.2h158.4c0-17.325-26.4-35.2-26.4-70.4 0-26.4 20.625-35.2 44-35.2 8.794 0 20.445 32.712 34.926 56.1 9.074 14.575 19.524 27.225 30.799 39.875 16.109 18.374 33.836 36.633 59.075 39.596v176.752C341.21 396.087 309.491 432 264 432h-21.299c-40.524 0-57.124-22.197-50.601-61.325-14.612-8.001-24.151-33.979-12.925-53.625-19.365-18.225-17.787-46.381-4.95-61.05H83.2C64.225 256 48 239.775 48 220.8zM448 360c13.255 0 24 10.745 24 24s-10.745 24-24 24-24-10.745-24-24 10.745-24 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandPointRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M428.8 137.6h-86.177a115.52 115.52 0 0 0 2.176-22.4c0-47.914-35.072-83.2-92-83.2-45.314 0-57.002 48.537-75.707 78.784-7.735 12.413-16.994 23.317-25.851 33.253l-.131.146-.129.148C135.662 161.807 127.764 168 120.8 168h-2.679c-5.747-4.952-13.536-8-22.12-8H32c-17.673 0-32 12.894-32 28.8v230.4C0 435.106 14.327 448 32 448h64c8.584 0 16.373-3.048 22.12-8h2.679c28.688 0 67.137 40 127.2 40h21.299c62.542 0 98.8-38.658 99.94-91.145 12.482-17.813 18.491-40.785 15.985-62.791A93.148 93.148 0 0 0 393.152 304H428.8c45.435 0 83.2-37.584 83.2-83.2 0-45.099-38.101-83.2-83.2-83.2zm0 118.4h-91.026c12.837 14.669 14.415 42.825-4.95 61.05 11.227 19.646 1.687 45.624-12.925 53.625 6.524 39.128-10.076 61.325-50.6 61.325H248c-45.491 0-77.21-35.913-120-39.676V215.571c25.239-2.964 42.966-21.222 59.075-39.596 11.275-12.65 21.725-25.3 30.799-39.875C232.355 112.712 244.006 80 252.8 80c23.375 0 44 8.8 44 35.2 0 35.2-26.4 53.075-26.4 70.4h158.4c18.425 0 35.2 16.5 35.2 35.2 0 18.975-16.225 35.2-35.2 35.2zM88 384c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandPointUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M105.6 83.2v86.177a115.52 115.52 0 0 0-22.4-2.176c-47.914 0-83.2 35.072-83.2 92 0 45.314 48.537 57.002 78.784 75.707 12.413 7.735 23.317 16.994 33.253 25.851l.146.131.148.129C129.807 376.338 136 384.236 136 391.2v2.679c-4.952 5.747-8 13.536-8 22.12v64c0 17.673 12.894 32 28.8 32h230.4c15.906 0 28.8-14.327 28.8-32v-64c0-8.584-3.048-16.373-8-22.12V391.2c0-28.688 40-67.137 40-127.2v-21.299c0-62.542-38.658-98.8-91.145-99.94-17.813-12.482-40.785-18.491-62.791-15.985A93.148 93.148 0 0 0 272 118.847V83.2C272 37.765 234.416 0 188.8 0c-45.099 0-83.2 38.101-83.2 83.2zm118.4 0v91.026c14.669-12.837 42.825-14.415 61.05 4.95 19.646-11.227 45.624-1.687 53.625 12.925 39.128-6.524 61.325 10.076 61.325 50.6V264c0 45.491-35.913 77.21-39.676 120H183.571c-2.964-25.239-21.222-42.966-39.596-59.075-12.65-11.275-25.3-21.725-39.875-30.799C80.712 279.645 48 267.994 48 259.2c0-23.375 8.8-44 35.2-44 35.2 0 53.075 26.4 70.4 26.4V83.2c0-18.425 16.5-35.2 35.2-35.2 18.975 0 35.2 16.225 35.2 35.2zM352 424c13.255 0 24 10.745 24 24s-10.745 24-24 24-24-10.745-24-24 10.745-24 24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandPointer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M358.182 179.361c-19.493-24.768-52.679-31.945-79.872-19.098-15.127-15.687-36.182-22.487-56.595-19.629V67c0-36.944-29.736-67-66.286-67S89.143 30.056 89.143 67v161.129c-19.909-7.41-43.272-5.094-62.083 8.872-29.355 21.795-35.793 63.333-14.55 93.152l109.699 154.001C134.632 501.59 154.741 512 176 512h178.286c30.802 0 57.574-21.5 64.557-51.797l27.429-118.999A67.873 67.873 0 0 0 448 326v-84c0-46.844-46.625-79.273-89.818-62.639zM80.985 279.697l27.126 38.079c8.995 12.626 29.031 6.287 29.031-9.283V67c0-25.12 36.571-25.16 36.571 0v175c0 8.836 7.163 16 16 16h6.857c8.837 0 16-7.164 16-16v-35c0-25.12 36.571-25.16 36.571 0v35c0 8.836 7.163 16 16 16H272c8.837 0 16-7.164 16-16v-21c0-25.12 36.571-25.16 36.571 0v21c0 8.836 7.163 16 16 16h6.857c8.837 0 16-7.164 16-16 0-25.121 36.571-25.16 36.571 0v84c0 1.488-.169 2.977-.502 4.423l-27.43 119.001c-1.978 8.582-9.29 14.576-17.782 14.576H176c-5.769 0-11.263-2.878-14.697-7.697l-109.712-154c-14.406-20.223 14.994-42.818 29.394-22.606zM176.143 400v-96c0-8.837 6.268-16 14-16h6c7.732 0 14 7.163 14 16v96c0 8.837-6.268 16-14 16h-6c-7.733 0-14-7.163-14-16zm75.428 0v-96c0-8.837 6.268-16 14-16h6c7.732 0 14 7.163 14 16v96c0 8.837-6.268 16-14 16h-6c-7.732 0-14-7.163-14-16zM327 400v-96c0-8.837 6.268-16 14-16h6c7.732 0 14 7.163 14 16v96c0 8.837-6.268 16-14 16h-6c-7.732 0-14-7.163-14-16z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandRock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408.864 79.052c-22.401-33.898-66.108-42.273-98.813-23.588-29.474-31.469-79.145-31.093-108.334-.022-47.16-27.02-108.71 5.055-110.671 60.806C44.846 105.407 0 140.001 0 187.429v56.953c0 32.741 14.28 63.954 39.18 85.634l97.71 85.081c4.252 3.702 3.11 5.573 3.11 32.903 0 17.673 14.327 32 32 32h252c17.673 0 32-14.327 32-32 0-23.513-1.015-30.745 3.982-42.37l42.835-99.656c6.094-14.177 9.183-29.172 9.183-44.568V146.963c0-52.839-54.314-88.662-103.136-67.911zM464 261.406a64.505 64.505 0 0 1-5.282 25.613l-42.835 99.655c-5.23 12.171-7.883 25.04-7.883 38.25V432H188v-10.286c0-16.37-7.14-31.977-19.59-42.817l-97.71-85.08C56.274 281.255 48 263.236 48 244.381v-56.953c0-33.208 52-33.537 52 .677v41.228a16 16 0 0 0 5.493 12.067l7 6.095A16 16 0 0 0 139 235.429V118.857c0-33.097 52-33.725 52 .677v26.751c0 8.836 7.164 16 16 16h7c8.836 0 16-7.164 16-16v-41.143c0-33.134 52-33.675 52 .677v40.466c0 8.836 7.163 16 16 16h7c8.837 0 16-7.164 16-16v-27.429c0-33.03 52-33.78 52 .677v26.751c0 8.836 7.163 16 16 16h7c8.837 0 16-7.164 16-16 0-33.146 52-33.613 52 .677v114.445z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandScissors (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 480l70-.013c5.114 0 10.231-.583 15.203-1.729l118.999-27.427C490.56 443.835 512 417.02 512 386.277V180.575c0-23.845-13.03-45.951-34.005-57.69l-97.999-54.853c-34.409-19.261-67.263-5.824-92.218 24.733L142.85 37.008c-37.887-14.579-80.612 3.727-95.642 41.201-15.098 37.642 3.635 80.37 41.942 95.112L168 192l-94-9.141c-40.804 0-74 32.811-74 73.14 0 40.33 33.196 73.141 74 73.141h87.635c-3.675 26.245 8.692 51.297 30.341 65.006C178.657 436.737 211.044 480 256 480zm0-48.013c-25.16 0-25.12-36.567 0-36.567 8.837 0 16-7.163 16-16v-6.856c0-8.837-7.163-16-16-16h-28c-25.159 0-25.122-36.567 0-36.567h28c8.837 0 16-7.163 16-16v-6.856c0-8.837-7.163-16-16-16H74c-34.43 0-34.375-50.281 0-50.281h182c8.837 0 16-7.163 16-16v-11.632a16 16 0 0 0-10.254-14.933L106.389 128.51c-31.552-12.14-13.432-59.283 19.222-46.717l166.549 64.091a16.001 16.001 0 0 0 18.139-4.812l21.764-26.647c5.82-7.127 16.348-9.064 24.488-4.508l98 54.854c5.828 3.263 9.449 9.318 9.449 15.805v205.701c0 8.491-5.994 15.804-14.576 17.782l-119.001 27.427a19.743 19.743 0 0 1-4.423.502h-70z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandSpock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M501.03053,116.17605c-19.39059-31.50779-51.24406-35.72849-66.31044-35.01756-14.11325-50.81051-62.0038-54.08-70.73816-54.08a74.03091,74.03091,0,0,0-72.23816,58.916l-4.64648,22.66014-13.68357-53.207c-9.09569-35.37107-46.412-64.05074-89.66-53.07223a73.89749,73.89749,0,0,0-55.121,78.94722,73.68273,73.68273,0,0,0-64.8495,94.42181l24.35933,82.19721c-38.24017-7.54492-62.79677,16.18358-68.11512,21.84764a73.6791,73.6791,0,0,0,3.19921,104.19329l91.36509,85.9765A154.164,154.164,0,0,0,220.62279,512h107.4549A127.30079,127.30079,0,0,0,452.3392,413.86139l57.623-241.96272A73.20274,73.20274,0,0,0,501.03053,116.17605Zm-37.7597,44.60544L405.64788,402.74812a79.46616,79.46616,0,0,1-77.57019,61.25972H220.62279a106.34052,106.34052,0,0,1-73.1366-28.998l-91.369-85.98041C31.34381,325.72669,66.61133,288.131,91.39644,311.5392l51.123,48.10739c5.42577,5.10937,13.48239.71679,13.48239-5.82617a246.79914,246.79914,0,0,0-10.17771-70.1523l-36.01362-121.539c-9.7324-32.88279,39.69916-47.27145,49.38664-14.625l31.3437,105.77923c5.59374,18.90428,33.78119,10.71288,28.9648-8.00781L177.06427,80.23662c-8.50389-33.1035,41.43157-45.64646,49.86515-12.83593l47.32609,184.035c4.42773,17.24218,29.16207,16.5039,32.71089-.80468l31.791-154.9706c6.81054-33.1074,57.51748-24.10741,50.11906,11.96288L360.32764,246.78924c-3.72265,18.10936,23.66793,24.63084,28.05659,6.21679L413.185,148.85962C421.1498,115.512,471.14,127.79713,463.27083,160.78149Z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHandshake (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M519.2 127.9l-47.6-47.6A56.252 56.252 0 0 0 432 64H205.2c-14.8 0-29.1 5.9-39.6 16.3L118 127.9H0v255.7h64c17.6 0 31.8-14.2 31.9-31.7h9.1l84.6 76.4c30.9 25.1 73.8 25.7 105.6 3.8 12.5 10.8 26 15.9 41.1 15.9 18.2 0 35.3-7.4 48.8-24 22.1 8.7 48.2 2.6 64-16.8l26.2-32.3c5.6-6.9 9.1-14.8 10.9-23h57.9c.1 17.5 14.4 31.7 31.9 31.7h64V127.9H519.2zM48 351.6c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16c0 8.9-7.2 16-16 16zm390-6.9l-26.1 32.2c-2.8 3.4-7.8 4-11.3 1.2l-23.9-19.4-30 36.5c-6 7.3-15 4.8-18 2.4l-36.8-31.5-15.6 19.2c-13.9 17.1-39.2 19.7-55.3 6.6l-97.3-88H96V175.8h41.9l61.7-61.6c2-.8 3.7-1.5 5.7-2.3H262l-38.7 35.5c-29.4 26.9-31.1 72.3-4.4 101.3 14.8 16.2 61.2 41.2 101.5 4.4l8.2-7.5 108.2 87.8c3.4 2.8 3.9 7.9 1.2 11.3zm106-40.8h-69.2c-2.3-2.8-4.9-5.4-7.7-7.7l-102.7-83.4 12.5-11.4c6.5-6 7-16.1 1-22.6L367 167.1c-6-6.5-16.1-6.9-22.6-1l-55.2 50.6c-9.5 8.7-25.7 9.4-34.6 0-9.3-9.9-8.5-25.1 1.2-33.9l65.6-60.1c7.4-6.8 17-10.5 27-10.5l83.7-.2c2.1 0 4.1.8 5.5 2.3l61.7 61.6H544v128zm48 47.7c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16c0 8.9-7.2 16-16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M567.403 235.642L462.323 84.589A48 48 0 0 0 422.919 64H153.081a48 48 0 0 0-39.404 20.589L8.597 235.642A48.001 48.001 0 0 0 0 263.054V400c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V263.054c0-9.801-3-19.366-8.597-27.412zM153.081 112h269.838l77.913 112H75.168l77.913-112zM528 400H48V272h480v128zm-32-64c0 17.673-14.327 32-32 32s-32-14.327-32-32 14.327-32 32-32 32 14.327 32 32zm-96 0c0 17.673-14.327 32-32 32s-32-14.327-32-32 14.327-32 32-32 32 14.327 32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M458.4 64.3C400.6 15.7 311.3 23 256 79.3 200.7 23 111.4 15.6 53.6 64.3-21.6 127.6-10.6 230.8 43 285.5l175.4 178.7c10 10.2 23.4 15.9 37.6 15.9 14.3 0 27.6-5.6 37.6-15.8L469 285.6c53.5-54.7 64.7-157.9-10.6-221.3zm-23.6 187.5L259.4 430.5c-2.4 2.4-4.4 2.4-6.8 0L77.2 251.8c-36.5-37.2-43.9-107.6 7.3-150.7 38.9-32.7 98.9-27.8 136.5 10.5l35 35.7 35-35.7c37.8-38.5 97.8-43.2 136.5-10.6 51.1 43.1 43.5 113.9 7.3 150.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHospital (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 244v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12zm140 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12zm-76 84v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm76 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12zm180 124v36H0v-36c0-6.627 5.373-12 12-12h19.5V85.035C31.5 73.418 42.245 64 55.5 64H144V24c0-13.255 10.745-24 24-24h112c13.255 0 24 10.745 24 24v40h88.5c13.255 0 24 9.418 24 21.035V464H436c6.627 0 12 5.373 12 12zM79.5 463H192v-67c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v67h112.5V112H304v24c0 13.255-10.745 24-24 24H168c-13.255 0-24-10.745-24-24v-24H79.5v351zM266 64h-26V38a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v26h-26a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h26v26a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6V96h26a6 6 0 0 0 6-6V70a6 6 0 0 0-6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegHourglass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 48h4c6.627 0 12-5.373 12-12V12c0-6.627-5.373-12-12-12H12C5.373 0 0 5.373 0 12v24c0 6.627 5.373 12 12 12h4c0 80.564 32.188 165.807 97.18 208C47.899 298.381 16 383.9 16 464h-4c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h360c6.627 0 12-5.373 12-12v-24c0-6.627-5.373-12-12-12h-4c0-80.564-32.188-165.807-97.18-208C336.102 213.619 368 128.1 368 48zM64 48h256c0 101.62-57.307 184-128 184S64 149.621 64 48zm256 416H64c0-101.62 57.308-184 128-184s128 82.38 128 184z\"},\"child\":[]}]})(props);\n};\nexport function FaRegIdBadge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 384 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zm0 464H48V48h288v416zM144 112h96c8.8 0 16-7.2 16-16s-7.2-16-16-16h-96c-8.8 0-16 7.2-16 16s7.2 16 16 16zm48 176c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm-89.6 128h179.2c12.4 0 22.4-8.6 22.4-19.2v-19.2c0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6v19.2c0 10.6 10 19.2 22.4 19.2z\"},\"child\":[]}]})(props);\n};\nexport function FaRegIdCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 400H303.2c.9-4.5.8 3.6.8-22.4 0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6 0 26-.2 17.9.8 22.4H48V144h480v288zm-168-80h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm-168 96c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64z\"},\"child\":[]}]})(props);\n};\nexport function FaRegImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm-6 336H54a6 6 0 0 1-6-6V118a6 6 0 0 1 6-6h404a6 6 0 0 1 6 6v276a6 6 0 0 1-6 6zM128 152c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zM96 352h320v-80l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L192 304l-39.515-39.515c-4.686-4.686-12.284-4.686-16.971 0L96 304v48z\"},\"child\":[]}]})(props);\n};\nexport function FaRegImages (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 416v16c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v48H54a6 6 0 0 0-6 6v244a6 6 0 0 0 6 6h372a6 6 0 0 0 6-6v-10h48zm42-336H150a6 6 0 0 0-6 6v244a6 6 0 0 0 6 6h372a6 6 0 0 0 6-6V86a6 6 0 0 0-6-6zm6-48c26.51 0 48 21.49 48 48v256c0 26.51-21.49 48-48 48H144c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h384zM264 144c0 22.091-17.909 40-40 40s-40-17.909-40-40 17.909-40 40-40 40 17.909 40 40zm-72 96l39.515-39.515c4.686-4.686 12.284-4.686 16.971 0L288 240l103.515-103.515c4.686-4.686 12.284-4.686 16.971 0L480 208v80H192v-48z\"},\"child\":[]}]})(props);\n};\nexport function FaRegKeyboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm8 336c0 4.411-3.589 8-8 8H48c-4.411 0-8-3.589-8-8V112c0-4.411 3.589-8 8-8h480c4.411 0 8 3.589 8 8v288zM170 270v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm-336 82v-28c0-6.627-5.373-12-12-12H82c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm384 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zM122 188v-28c0-6.627-5.373-12-12-12H82c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm-98 158v-16c0-6.627-5.373-12-12-12H180c-6.627 0-12 5.373-12 12v16c0 6.627 5.373 12 12 12h216c6.627 0 12-5.373 12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegKissBeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M168 152c-23.8 0-52.7 29.3-56 71.4-.3 3.7 2 7.2 5.6 8.3 3.5 1 7.5-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 5.9-4.5 5.6-8.3-3.1-42.1-32-71.4-55.8-71.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm56-148c0-19.2-28.8-41.5-71.5-44-3.8-.4-7.4 2.4-8.2 6.2-.9 3.8 1.1 7.7 4.7 9.2l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-5.7 2.4-6 12.2 0 14.8l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-3.6 1.5-5.6 5.4-4.7 9.2.8 3.6 4.1 6.2 7.8 6.2h.5c42.8-2.5 71.5-24.8 71.5-44 0-13-13.4-27.3-35.2-36C290.6 335.3 304 321 304 308zm24-156c-23.8 0-52.7 29.3-56 71.4-.3 3.7 2 7.2 5.6 8.3 3.5 1 7.5-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 5.9-4.5 5.6-8.3-3.1-42.1-32-71.4-55.8-71.4z\"},\"child\":[]}]})(props);\n};\nexport function FaRegKissWinkHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 504 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 308.5c0-19.2-28.8-41.5-71.5-44-3.8-.4-7.4 2.4-8.2 6.2-.9 3.8 1.1 7.7 4.7 9.2l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-5.7 2.4-6 12.2 0 14.8l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-3.6 1.5-5.6 5.4-4.7 9.2.8 3.6 4.1 6.2 7.8 6.2h.5c42.8-2.5 71.5-24.8 71.5-44 0-13-13.4-27.3-35.2-36 21.7-9.1 35.1-23.4 35.1-36.4zm70.5-83.5l9.5 8.5c3.8 3.3 9.3 4 13.7 1.6 4.4-2.4 6.9-7.4 6.1-12.4-4-25.2-34.2-42.1-59.8-42.1s-55.9 16.9-59.8 42.1c-.8 5 1.7 10 6.1 12.4 5.8 3.1 11.2.7 13.7-1.6l9.5-8.5c14.8-13.2 46.2-13.2 61 0zM136 208.5c0 17.7 14.3 32 32 32s32-14.3 32-32-14.3-32-32-32-32 14.3-32 32zm365.1 194c-8-20.8-31.5-31.5-53.1-25.9l-8.4 2.2-2.3-8.4c-5.9-21.4-27-36.5-49-33-25.2 4-40.6 28.6-34 52.6l22.9 82.6c1.5 5.3 7 8.5 12.4 7.1l83-21.5c24.1-6.3 37.7-31.8 28.5-55.7zM334 436.3c-26.1 12.5-55.2 19.7-86 19.7-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200c0 22.1-3.7 43.3-10.4 63.2 9 6.4 17 14.2 22.6 23.9 6.4.1 12.6 1.4 18.6 2.9 10.9-27.9 17.1-58.2 17.1-90C496 119 385 8 248 8S0 119 0 256s111 248 248 248c35.4 0 68.9-7.5 99.4-20.9-2.5-7.3 4.3 17.2-13.4-46.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegKiss (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M168 176c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm136 132c0-19.2-28.8-41.5-71.5-44-3.8-.4-7.4 2.4-8.2 6.2-.9 3.8 1.1 7.7 4.7 9.2l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-5.7 2.4-6 12.2 0 14.8l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-3.6 1.5-5.6 5.4-4.7 9.2.8 3.6 4.1 6.2 7.8 6.2h.5c42.8-2.5 71.5-24.8 71.5-44 0-13-13.4-27.3-35.2-36C290.6 335.3 304 321 304 308zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm80-280c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegLaughBeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm141.4 389.4c-37.8 37.8-88 58.6-141.4 58.6s-103.6-20.8-141.4-58.6S48 309.4 48 256s20.8-103.6 58.6-141.4S194.6 56 248 56s103.6 20.8 141.4 58.6S448 202.6 448 256s-20.8 103.6-58.6 141.4zM328 152c-23.8 0-52.7 29.3-56 71.4-.7 8.6 10.8 11.9 14.9 4.5l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c4.1 7.4 15.6 4 14.9-4.5-3.1-42.1-32-71.4-55.8-71.4zm-201 75.9l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c4.1 7.4 15.6 4 14.9-4.5-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.6 8.5 10.9 11.9 15.1 4.5zM362.4 288H133.6c-8.2 0-14.5 7-13.5 15 7.5 59.2 58.9 105 121.1 105h13.6c62.2 0 113.6-45.8 121.1-105 1-8-5.3-15-13.5-15z\"},\"child\":[]}]})(props);\n};\nexport function FaRegLaughSquint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm141.4 389.4c-37.8 37.8-88 58.6-141.4 58.6s-103.6-20.8-141.4-58.6S48 309.4 48 256s20.8-103.6 58.6-141.4S194.6 56 248 56s103.6 20.8 141.4 58.6S448 202.6 448 256s-20.8 103.6-58.6 141.4zM343.6 196l33.6-40.3c8.6-10.3-3.8-24.8-15.4-18l-80 48c-7.8 4.7-7.8 15.9 0 20.6l80 48c11.5 6.8 24-7.6 15.4-18L343.6 196zm-209.4 58.3l80-48c7.8-4.7 7.8-15.9 0-20.6l-80-48c-11.6-6.9-24 7.7-15.4 18l33.6 40.3-33.6 40.3c-8.7 10.4 3.8 24.8 15.4 18zM362.4 288H133.6c-8.2 0-14.5 7-13.5 15 7.5 59.2 58.9 105 121.1 105h13.6c62.2 0 113.6-45.8 121.1-105 1-8-5.3-15-13.5-15z\"},\"child\":[]}]})(props);\n};\nexport function FaRegLaughWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm141.4 389.4c-37.8 37.8-88 58.6-141.4 58.6s-103.6-20.8-141.4-58.6C68.8 359.6 48 309.4 48 256s20.8-103.6 58.6-141.4C144.4 76.8 194.6 56 248 56s103.6 20.8 141.4 58.6c37.8 37.8 58.6 88 58.6 141.4s-20.8 103.6-58.6 141.4zM328 164c-25.7 0-55.9 16.9-59.9 42.1-1.7 11.2 11.5 18.2 19.8 10.8l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c8.5 7.4 21.6.3 19.8-10.8-3.8-25.2-34-42.1-59.7-42.1zm-160 60c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm194.4 64H133.6c-8.2 0-14.5 7-13.5 15 7.5 59.2 58.9 105 121.1 105h13.6c62.2 0 113.6-45.8 121.1-105 1-8-5.3-15-13.5-15z\"},\"child\":[]}]})(props);\n};\nexport function FaRegLaugh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm141.4 389.4c-37.8 37.8-88 58.6-141.4 58.6s-103.6-20.8-141.4-58.6S48 309.4 48 256s20.8-103.6 58.6-141.4S194.6 56 248 56s103.6 20.8 141.4 58.6S448 202.6 448 256s-20.8 103.6-58.6 141.4zM328 224c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm-160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm194.4 64H133.6c-8.2 0-14.5 7-13.5 15 7.5 59.2 58.9 105 121.1 105h13.6c62.2 0 113.6-45.8 121.1-105 1-8-5.3-15-13.5-15z\"},\"child\":[]}]})(props);\n};\nexport function FaRegLemon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M484.112 27.889C455.989-.233 416.108-8.057 387.059 8.865 347.604 31.848 223.504-41.111 91.196 91.197-41.277 223.672 31.923 347.472 8.866 387.058c-16.922 29.051-9.1 68.932 19.022 97.054 28.135 28.135 68.011 35.938 97.057 19.021 39.423-22.97 163.557 49.969 295.858-82.329 132.474-132.477 59.273-256.277 82.331-295.861 16.922-29.05 9.1-68.931-19.022-97.054zm-22.405 72.894c-38.8 66.609 45.6 165.635-74.845 286.08-120.44 120.443-219.475 36.048-286.076 74.843-22.679 13.207-64.035-27.241-50.493-50.488 38.8-66.609-45.6-165.635 74.845-286.08C245.573 4.702 344.616 89.086 411.219 50.292c22.73-13.24 64.005 27.288 50.488 50.491zm-169.861 8.736c1.37 10.96-6.404 20.957-17.365 22.327-54.846 6.855-135.779 87.787-142.635 142.635-1.373 10.989-11.399 18.734-22.326 17.365-10.961-1.37-18.735-11.366-17.365-22.326 9.162-73.286 104.167-168.215 177.365-177.365 10.953-1.368 20.956 6.403 22.326 17.364z\"},\"child\":[]}]})(props);\n};\nexport function FaRegLifeRing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 504c136.967 0 248-111.033 248-248S392.967 8 256 8 8 119.033 8 256s111.033 248 248 248zm-103.398-76.72l53.411-53.411c31.806 13.506 68.128 13.522 99.974 0l53.411 53.411c-63.217 38.319-143.579 38.319-206.796 0zM336 256c0 44.112-35.888 80-80 80s-80-35.888-80-80 35.888-80 80-80 80 35.888 80 80zm91.28 103.398l-53.411-53.411c13.505-31.806 13.522-68.128 0-99.974l53.411-53.411c38.319 63.217 38.319 143.579 0 206.796zM359.397 84.72l-53.411 53.411c-31.806-13.505-68.128-13.522-99.973 0L152.602 84.72c63.217-38.319 143.579-38.319 206.795 0zM84.72 152.602l53.411 53.411c-13.506 31.806-13.522 68.128 0 99.974L84.72 359.398c-38.319-63.217-38.319-143.579 0-206.796z\"},\"child\":[]}]})(props);\n};\nexport function FaRegLightbulb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 352 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M176 80c-52.94 0-96 43.06-96 96 0 8.84 7.16 16 16 16s16-7.16 16-16c0-35.3 28.72-64 64-64 8.84 0 16-7.16 16-16s-7.16-16-16-16zM96.06 459.17c0 3.15.93 6.22 2.68 8.84l24.51 36.84c2.97 4.46 7.97 7.14 13.32 7.14h78.85c5.36 0 10.36-2.68 13.32-7.14l24.51-36.84c1.74-2.62 2.67-5.7 2.68-8.84l.05-43.18H96.02l.04 43.18zM176 0C73.72 0 0 82.97 0 176c0 44.37 16.45 84.85 43.56 115.78 16.64 18.99 42.74 58.8 52.42 92.16v.06h48v-.12c-.01-4.77-.72-9.51-2.15-14.07-5.59-17.81-22.82-64.77-62.17-109.67-20.54-23.43-31.52-53.15-31.61-84.14-.2-73.64 59.67-128 127.95-128 70.58 0 128 57.42 128 128 0 30.97-11.24 60.85-31.65 84.14-39.11 44.61-56.42 91.47-62.1 109.46a47.507 47.507 0 0 0-2.22 14.3v.1h48v-.05c9.68-33.37 35.78-73.18 52.42-92.16C335.55 260.85 352 220.37 352 176 352 78.8 273.2 0 176 0z\"},\"child\":[]}]})(props);\n};\nexport function FaRegListAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zm-6 400H54a6 6 0 0 1-6-6V86a6 6 0 0 1 6-6h404a6 6 0 0 1 6 6v340a6 6 0 0 1-6 6zm-42-92v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm0-96v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm0-96v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm-252 12c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36zm0 96c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36zm0 96c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36z\"},\"child\":[]}]})(props);\n};\nexport function FaRegMap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M560.02 32c-1.96 0-3.98.37-5.96 1.16L384.01 96H384L212 35.28A64.252 64.252 0 0 0 191.76 32c-6.69 0-13.37 1.05-19.81 3.14L20.12 87.95A32.006 32.006 0 0 0 0 117.66v346.32C0 473.17 7.53 480 15.99 480c1.96 0 3.97-.37 5.96-1.16L192 416l172 60.71a63.98 63.98 0 0 0 40.05.15l151.83-52.81A31.996 31.996 0 0 0 576 394.34V48.02c0-9.19-7.53-16.02-15.98-16.02zM224 90.42l128 45.19v285.97l-128-45.19V90.42zM48 418.05V129.07l128-44.53v286.2l-.64.23L48 418.05zm480-35.13l-128 44.53V141.26l.64-.24L528 93.95v288.97z\"},\"child\":[]}]})(props);\n};\nexport function FaRegMehBlank (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-280c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegMehRollingEyes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm88-304c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zm0 112c-22.1 0-40-17.9-40-40 0-13.6 7.3-25.1 17.7-32.3-1 2.6-1.7 5.3-1.7 8.3 0 13.3 10.7 24 24 24s24-10.7 24-24c0-2.9-.7-5.7-1.7-8.3 10.4 7.2 17.7 18.7 17.7 32.3 0 22.1-17.9 40-40 40zm-104-40c0-39.8-32.2-72-72-72s-72 32.2-72 72 32.2 72 72 72 72-32.2 72-72zm-112 0c0-13.6 7.3-25.1 17.7-32.3-1 2.6-1.7 5.3-1.7 8.3 0 13.3 10.7 24 24 24s24-10.7 24-24c0-2.9-.7-5.7-1.7-8.3 10.4 7.2 17.7 18.7 17.7 32.3 0 22.1-17.9 40-40 40s-40-17.9-40-40zm192 128H184c-13.2 0-24 10.8-24 24s10.8 24 24 24h128c13.2 0 24-10.8 24-24s-10.8-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaRegMeh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160-64c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm8 144H160c-13.2 0-24 10.8-24 24s10.8 24 24 24h176c13.2 0 24-10.8 24-24s-10.8-24-24-24z\"},\"child\":[]}]})(props);\n};\nexport function FaRegMinusSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M108 284c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h232c6.6 0 12 5.4 12 12v32c0 6.6-5.4 12-12 12H108zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegMoneyBillAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 640 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 144c-53.02 0-96 50.14-96 112 0 61.85 42.98 112 96 112 53 0 96-50.13 96-112 0-61.86-42.98-112-96-112zm40 168c0 4.42-3.58 8-8 8h-64c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h16v-55.44l-.47.31a7.992 7.992 0 0 1-11.09-2.22l-8.88-13.31a7.992 7.992 0 0 1 2.22-11.09l15.33-10.22a23.99 23.99 0 0 1 13.31-4.03H328c4.42 0 8 3.58 8 8v88h16c4.42 0 8 3.58 8 8v16zM608 64H32C14.33 64 0 78.33 0 96v320c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zm-16 272c-35.35 0-64 28.65-64 64H112c0-35.35-28.65-64-64-64V176c35.35 0 64-28.65 64-64h416c0 35.35 28.65 64 64 64v160z\"},\"child\":[]}]})(props);\n};\nexport function FaRegMoon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M279.135 512c78.756 0 150.982-35.804 198.844-94.775 28.27-34.831-2.558-85.722-46.249-77.401-82.348 15.683-158.272-47.268-158.272-130.792 0-48.424 26.06-92.292 67.434-115.836 38.745-22.05 28.999-80.788-15.022-88.919A257.936 257.936 0 0 0 279.135 0c-141.36 0-256 114.575-256 256 0 141.36 114.576 256 256 256zm0-464c12.985 0 25.689 1.201 38.016 3.478-54.76 31.163-91.693 90.042-91.693 157.554 0 113.848 103.641 199.2 215.252 177.944C402.574 433.964 344.366 464 279.135 464c-114.875 0-208-93.125-208-208s93.125-208 208-208z\"},\"child\":[]}]})(props);\n};\nexport function FaRegNewspaper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M552 64H112c-20.858 0-38.643 13.377-45.248 32H24c-13.255 0-24 10.745-24 24v272c0 30.928 25.072 56 56 56h496c13.255 0 24-10.745 24-24V88c0-13.255-10.745-24-24-24zM48 392V144h16v248c0 4.411-3.589 8-8 8s-8-3.589-8-8zm480 8H111.422c.374-2.614.578-5.283.578-8V112h416v288zM172 280h136c6.627 0 12-5.373 12-12v-96c0-6.627-5.373-12-12-12H172c-6.627 0-12 5.373-12 12v96c0 6.627 5.373 12 12 12zm28-80h80v40h-80v-40zm-40 140v-24c0-6.627 5.373-12 12-12h136c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12H172c-6.627 0-12-5.373-12-12zm192 0v-24c0-6.627 5.373-12 12-12h104c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12zm0-144v-24c0-6.627 5.373-12 12-12h104c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12zm0 72v-24c0-6.627 5.373-12 12-12h104c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegObjectGroup (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M500 128c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12h-72c-6.627 0-12 5.373-12 12v12H96V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v72c0 6.627 5.373 12 12 12h12v256H12c-6.627 0-12 5.373-12 12v72c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-12h320v12c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-12V128h12zm-52-64h32v32h-32V64zM32 64h32v32H32V64zm32 384H32v-32h32v32zm416 0h-32v-32h32v32zm-40-64h-12c-6.627 0-12 5.373-12 12v12H96v-12c0-6.627-5.373-12-12-12H72V128h12c6.627 0 12-5.373 12-12v-12h320v12c0 6.627 5.373 12 12 12h12v256zm-36-192h-84v-52c0-6.628-5.373-12-12-12H108c-6.627 0-12 5.372-12 12v168c0 6.628 5.373 12 12 12h84v52c0 6.628 5.373 12 12 12h200c6.627 0 12-5.372 12-12V204c0-6.628-5.373-12-12-12zm-268-24h144v112H136V168zm240 176H232v-24h76c6.627 0 12-5.372 12-12v-76h56v112z\"},\"child\":[]}]})(props);\n};\nexport function FaRegObjectUngroup (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M564 224c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-72c-6.627 0-12 5.373-12 12v12h-88v-24h12c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12h-72c-6.627 0-12 5.373-12 12v12H96V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v72c0 6.627 5.373 12 12 12h12v160H12c-6.627 0-12 5.373-12 12v72c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-12h88v24h-12c-6.627 0-12 5.373-12 12v72c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-12h224v12c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-12V224h12zM352 64h32v32h-32V64zm0 256h32v32h-32v-32zM64 352H32v-32h32v32zm0-256H32V64h32v32zm32 216v-12c0-6.627-5.373-12-12-12H72V128h12c6.627 0 12-5.373 12-12v-12h224v12c0 6.627 5.373 12 12 12h12v160h-12c-6.627 0-12 5.373-12 12v12H96zm128 136h-32v-32h32v32zm280-64h-12c-6.627 0-12 5.373-12 12v12H256v-12c0-6.627-5.373-12-12-12h-12v-24h88v12c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-12v-88h88v12c0 6.627 5.373 12 12 12h12v160zm40 64h-32v-32h32v32zm0-256h-32v-32h32v32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegPaperPlane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440 6.5L24 246.4c-34.4 19.9-31.1 70.8 5.7 85.9L144 379.6V464c0 46.4 59.2 65.5 86.6 28.6l43.8-59.1 111.9 46.2c5.9 2.4 12.1 3.6 18.3 3.6 8.2 0 16.3-2.1 23.6-6.2 12.8-7.2 21.6-20 23.9-34.5l59.4-387.2c6.1-40.1-36.9-68.8-71.5-48.9zM192 464v-64.6l36.6 15.1L192 464zm212.6-28.7l-153.8-63.5L391 169.5c10.7-15.5-9.5-33.5-23.7-21.2L155.8 332.6 48 288 464 48l-59.4 387.3z\"},\"child\":[]}]})(props);\n};\nexport function FaRegPauseCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm96-280v160c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16zm-112 0v160c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaRegPlayCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M371.7 238l-176-107c-15.8-8.8-35.7 2.5-35.7 21v208c0 18.4 19.8 29.8 35.7 21l176-101c16.4-9.1 16.4-32.8 0-42zM504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zm-448 0c0-110.5 89.5-200 200-200s200 89.5 200 200-89.5 200-200 200S56 366.5 56 256z\"},\"child\":[]}]})(props);\n};\nexport function FaRegPlusSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 240v32c0 6.6-5.4 12-12 12h-88v88c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-88h-88c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h88v-88c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v88h88c6.6 0 12 5.4 12 12zm96-160v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegQuestionCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 448c-110.532 0-200-89.431-200-200 0-110.495 89.472-200 200-200 110.491 0 200 89.471 200 200 0 110.53-89.431 200-200 200zm107.244-255.2c0 67.052-72.421 68.084-72.421 92.863V300c0 6.627-5.373 12-12 12h-45.647c-6.627 0-12-5.373-12-12v-8.659c0-35.745 27.1-50.034 47.579-61.516 17.561-9.845 28.324-16.541 28.324-29.579 0-17.246-21.999-28.693-39.784-28.693-23.189 0-33.894 10.977-48.942 29.969-4.057 5.12-11.46 6.071-16.666 2.124l-27.824-21.098c-5.107-3.872-6.251-11.066-2.644-16.363C184.846 131.491 214.94 112 261.794 112c49.071 0 101.45 38.304 101.45 88.8zM298 368c0 23.159-18.841 42-42 42s-42-18.841-42-42 18.841-42 42-42 42 18.841 42 42z\"},\"child\":[]}]})(props);\n};\nexport function FaRegRegistered (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 448c-110.532 0-200-89.451-200-200 0-110.531 89.451-200 200-200 110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200zm110.442-81.791c-53.046-96.284-50.25-91.468-53.271-96.085 24.267-13.879 39.482-41.563 39.482-73.176 0-52.503-30.247-85.252-101.498-85.252h-78.667c-6.617 0-12 5.383-12 12V380c0 6.617 5.383 12 12 12h38.568c6.617 0 12-5.383 12-12v-83.663h31.958l47.515 89.303a11.98 11.98 0 0 0 10.593 6.36h42.81c9.14 0 14.914-9.799 10.51-17.791zM256.933 239.906h-33.875v-64.14h27.377c32.417 0 38.929 12.133 38.929 31.709-.001 20.913-11.518 32.431-32.431 32.431z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSadCry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm144 386.4V280c0-13.2-10.8-24-24-24s-24 10.8-24 24v151.4C315.5 447 282.8 456 248 456s-67.5-9-96-24.6V280c0-13.2-10.8-24-24-24s-24 10.8-24 24v114.4c-34.6-36-56-84.7-56-138.4 0-110.3 89.7-200 200-200s200 89.7 200 200c0 53.7-21.4 102.5-56 138.4zM205.8 234.5c4.4-2.4 6.9-7.4 6.1-12.4-4-25.2-34.2-42.1-59.8-42.1s-55.9 16.9-59.8 42.1c-.8 5 1.7 10 6.1 12.4 4.4 2.4 9.9 1.8 13.7-1.6l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c2.5 2.3 7.9 4.8 13.7 1.6zM344 180c-25.7 0-55.9 16.9-59.8 42.1-.8 5 1.7 10 6.1 12.4 4.5 2.4 9.9 1.8 13.7-1.6l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c2.5 2.2 8 4.7 13.7 1.6 4.4-2.4 6.9-7.4 6.1-12.4-3.9-25.2-34.1-42.1-59.8-42.1zm-96 92c-30.9 0-56 28.7-56 64s25.1 64 56 64 56-28.7 56-64-25.1-64-56-64z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSadTear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm8-152c-13.2 0-24 10.8-24 24s10.8 24 24 24c23.8 0 46.3 10.5 61.6 28.8 8.1 9.8 23.2 11.9 33.8 3.1 10.2-8.5 11.6-23.6 3.1-33.8C330 320.8 294.1 304 256 304zm-88-64c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160-64c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-165.6 98.8C151 290.1 126 325.4 126 342.9c0 22.7 18.8 41.1 42 41.1s42-18.4 42-41.1c0-17.5-25-52.8-36.4-68.1-2.8-3.7-8.4-3.7-11.2 0z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSave (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM272 80v80H144V80h128zm122 352H54a6 6 0 0 1-6-6V86a6 6 0 0 1 6-6h42v104c0 13.255 10.745 24 24 24h176c13.255 0 24-10.745 24-24V83.882l78.243 78.243a6 6 0 0 1 1.757 4.243V426a6 6 0 0 1-6 6zM224 232c-48.523 0-88 39.477-88 88s39.477 88 88 88 88-39.477 88-88-39.477-88-88-88zm0 128c-22.056 0-40-17.944-40-40s17.944-40 40-40 40 17.944 40 40-17.944 40-40 40z\"},\"child\":[]}]})(props);\n};\nexport function FaRegShareSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M561.938 158.06L417.94 14.092C387.926-15.922 336 5.097 336 48.032v57.198c-42.45 1.88-84.03 6.55-120.76 17.99-35.17 10.95-63.07 27.58-82.91 49.42C108.22 199.2 96 232.6 96 271.94c0 61.697 33.178 112.455 84.87 144.76 37.546 23.508 85.248-12.651 71.02-55.74-15.515-47.119-17.156-70.923 84.11-78.76V336c0 42.993 51.968 63.913 81.94 33.94l143.998-144c18.75-18.74 18.75-49.14 0-67.88zM384 336V232.16C255.309 234.082 166.492 255.35 206.31 376 176.79 357.55 144 324.08 144 271.94c0-109.334 129.14-118.947 240-119.85V48l144 144-144 144zm24.74 84.493a82.658 82.658 0 0 0 20.974-9.303c7.976-4.952 18.286.826 18.286 10.214V464c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h132c6.627 0 12 5.373 12 12v4.486c0 4.917-2.987 9.369-7.569 11.152-13.702 5.331-26.396 11.537-38.05 18.585a12.138 12.138 0 0 1-6.28 1.777H54a6 6 0 0 0-6 6v340a6 6 0 0 0 6 6h340a6 6 0 0 0 6-6v-25.966c0-5.37 3.579-10.059 8.74-11.541z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSmileBeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm84-143.4c-20.8 25-51.5 39.4-84 39.4s-63.2-14.3-84-39.4c-8.5-10.2-23.6-11.5-33.8-3.1-10.2 8.5-11.5 23.6-3.1 33.8 30 36 74.1 56.6 120.9 56.6s90.9-20.6 120.9-56.6c8.5-10.2 7.1-25.3-3.1-33.8-10.2-8.4-25.3-7.1-33.8 3.1zM136.5 211c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.4 1.1 7.4-.5 9.3-3.7l9.5-17zM328 152c-23.8 0-52.7 29.3-56 71.4-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSmileWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm117.8-146.4c-10.2-8.5-25.3-7.1-33.8 3.1-20.8 25-51.5 39.4-84 39.4s-63.2-14.3-84-39.4c-8.5-10.2-23.7-11.5-33.8-3.1-10.2 8.5-11.5 23.6-3.1 33.8 30 36 74.1 56.6 120.9 56.6s90.9-20.6 120.9-56.6c8.5-10.2 7.1-25.3-3.1-33.8zM168 240c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160-60c-25.7 0-55.9 16.9-59.9 42.1-1.7 11.2 11.5 18.2 19.8 10.8l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c8.5 7.4 21.6.3 19.8-10.8-3.8-25.2-34-42.1-59.7-42.1z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSmile (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm4 72.6c-20.8 25-51.5 39.4-84 39.4s-63.2-14.3-84-39.4c-8.5-10.2-23.7-11.5-33.8-3.1-10.2 8.5-11.5 23.6-3.1 33.8 30 36 74.1 56.6 120.9 56.6s90.9-20.6 120.9-56.6c8.5-10.2 7.1-25.3-3.1-33.8-10.1-8.4-25.3-7.1-33.8 3.1z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSnowflake (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.1 355.2l-39.2-23 34.1-9.3c8.4-2.3 13.4-11.1 11.1-19.6l-4.1-15.5c-2.2-8.5-10.9-13.6-19.3-11.3L343 298.2 271.2 256l71.9-42.2 79.7 21.7c8.4 2.3 17-2.8 19.3-11.3l4.1-15.5c2.2-8.5-2.7-17.3-11.1-19.6l-34.1-9.3 39.2-23c7.5-4.4 10.1-14.2 5.8-21.9l-7.9-13.9c-4.3-7.7-14-10.3-21.5-5.9l-39.2 23 9.1-34.7c2.2-8.5-2.7-17.3-11.1-19.6l-15.2-4.1c-8.4-2.3-17 2.8-19.3 11.3l-21.3 81-71.9 42.2v-84.5L306 70.4c6.1-6.2 6.1-16.4 0-22.6l-11.1-11.3c-6.1-6.2-16.1-6.2-22.2 0l-24.9 25.4V16c0-8.8-7-16-15.7-16h-15.7c-8.7 0-15.7 7.2-15.7 16v46.1l-24.9-25.4c-6.1-6.2-16.1-6.2-22.2 0L142.1 48c-6.1 6.2-6.1 16.4 0 22.6l58.3 59.3v84.5l-71.9-42.2-21.3-81c-2.2-8.5-10.9-13.6-19.3-11.3L72.7 84c-8.4 2.3-13.4 11.1-11.1 19.6l9.1 34.7-39.2-23c-7.5-4.4-17.1-1.8-21.5 5.9l-7.9 13.9c-4.3 7.7-1.8 17.4 5.8 21.9l39.2 23-34.1 9.1c-8.4 2.3-13.4 11.1-11.1 19.6L6 224.2c2.2 8.5 10.9 13.6 19.3 11.3l79.7-21.7 71.9 42.2-71.9 42.2-79.7-21.7c-8.4-2.3-17 2.8-19.3 11.3l-4.1 15.5c-2.2 8.5 2.7 17.3 11.1 19.6l34.1 9.3-39.2 23c-7.5 4.4-10.1 14.2-5.8 21.9L10 391c4.3 7.7 14 10.3 21.5 5.9l39.2-23-9.1 34.7c-2.2 8.5 2.7 17.3 11.1 19.6l15.2 4.1c8.4 2.3 17-2.8 19.3-11.3l21.3-81 71.9-42.2v84.5l-58.3 59.3c-6.1 6.2-6.1 16.4 0 22.6l11.1 11.3c6.1 6.2 16.1 6.2 22.2 0l24.9-25.4V496c0 8.8 7 16 15.7 16h15.7c8.7 0 15.7-7.2 15.7-16v-46.1l24.9 25.4c6.1 6.2 16.1 6.2 22.2 0l11.1-11.3c6.1-6.2 6.1-16.4 0-22.6l-58.3-59.3v-84.5l71.9 42.2 21.3 81c2.2 8.5 10.9 13.6 19.3 11.3L375 428c8.4-2.3 13.4-11.1 11.1-19.6l-9.1-34.7 39.2 23c7.5 4.4 17.1 1.8 21.5-5.9l7.9-13.9c4.6-7.5 2.1-17.3-5.5-21.7z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-6 400H54c-3.3 0-6-2.7-6-6V86c0-3.3 2.7-6 6-6h340c3.3 0 6 2.7 6 6v340c0 3.3-2.7 6-6 6z\"},\"child\":[]}]})(props);\n};\nexport function FaRegStarHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 385.3l-124.3 65.4 23.7-138.4-100.6-98 139-20.2 62.2-126V0c-11.4 0-22.8 5.9-28.7 17.8L194 150.2 47.9 171.4c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.1 23 46 46.4 33.7L288 439.6v-54.3z\"},\"child\":[]}]})(props);\n};\nexport function FaRegStar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 576 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M528.1 171.5L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6zM388.6 312.3l23.7 138.4L288 385.4l-124.3 65.3 23.7-138.4-100.6-98 139-20.2 62.2-126 62.2 126 139 20.2-100.6 98z\"},\"child\":[]}]})(props);\n};\nexport function FaRegStickyNote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 348.106V80c0-26.51-21.49-48-48-48H48C21.49 32 0 53.49 0 80v351.988c0 26.51 21.49 48 48 48h268.118a48 48 0 0 0 33.941-14.059l83.882-83.882A48 48 0 0 0 448 348.106zm-128 80v-76.118h76.118L320 428.106zM400 80v223.988H296c-13.255 0-24 10.745-24 24v104H48V80h352z\"},\"child\":[]}]})(props);\n};\nexport function FaRegStopCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zm-448 0c0-110.5 89.5-200 200-200s200 89.5 200 200-89.5 200-200 200S56 366.5 56 256zm296-80v160c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h160c8.8 0 16 7.2 16 16z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSun (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M494.2 221.9l-59.8-40.5 13.7-71c2.6-13.2-1.6-26.8-11.1-36.4-9.6-9.5-23.2-13.7-36.2-11.1l-70.9 13.7-40.4-59.9c-15.1-22.3-51.9-22.3-67 0l-40.4 59.9-70.8-13.7C98 60.4 84.5 64.5 75 74.1c-9.5 9.6-13.7 23.1-11.1 36.3l13.7 71-59.8 40.5C6.6 229.5 0 242 0 255.5s6.7 26 17.8 33.5l59.8 40.5-13.7 71c-2.6 13.2 1.6 26.8 11.1 36.3 9.5 9.5 22.9 13.7 36.3 11.1l70.8-13.7 40.4 59.9C230 505.3 242.6 512 256 512s26-6.7 33.5-17.8l40.4-59.9 70.9 13.7c13.4 2.7 26.8-1.6 36.3-11.1 9.5-9.5 13.6-23.1 11.1-36.3l-13.7-71 59.8-40.5c11.1-7.5 17.8-20.1 17.8-33.5-.1-13.6-6.7-26.1-17.9-33.7zm-112.9 85.6l17.6 91.2-91-17.6L256 458l-51.9-77-90.9 17.6 17.6-91.2-76.8-52 76.8-52-17.6-91.2 91 17.6L256 53l51.9 76.9 91-17.6-17.6 91.1 76.8 52-76.8 52.1zM256 152c-57.3 0-104 46.7-104 104s46.7 104 104 104 104-46.7 104-104-46.7-104-104-104zm0 160c-30.9 0-56-25.1-56-56s25.1-56 56-56 56 25.1 56 56-25.1 56-56 56z\"},\"child\":[]}]})(props);\n};\nexport function FaRegSurprise (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm0-176c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm-48-72c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm128-32c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegThumbsDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M466.27 225.31c4.674-22.647.864-44.538-8.99-62.99 2.958-23.868-4.021-48.565-17.34-66.99C438.986 39.423 404.117 0 327 0c-7 0-15 .01-22.22.01C201.195.01 168.997 40 128 40h-10.845c-5.64-4.975-13.042-8-21.155-8H32C14.327 32 0 46.327 0 64v240c0 17.673 14.327 32 32 32h64c11.842 0 22.175-6.438 27.708-16h7.052c19.146 16.953 46.013 60.653 68.76 83.4 13.667 13.667 10.153 108.6 71.76 108.6 57.58 0 95.27-31.936 95.27-104.73 0-18.41-3.93-33.73-8.85-46.54h36.48c48.602 0 85.82-41.565 85.82-85.58 0-19.15-4.96-34.99-13.73-49.84zM64 296c-13.255 0-24-10.745-24-24s10.745-24 24-24 24 10.745 24 24-10.745 24-24 24zm330.18 16.73H290.19c0 37.82 28.36 55.37 28.36 94.54 0 23.75 0 56.73-47.27 56.73-18.91-18.91-9.46-66.18-37.82-94.54C206.9 342.89 167.28 272 138.92 272H128V85.83c53.611 0 100.001-37.82 171.64-37.82h37.82c35.512 0 60.82 17.12 53.12 65.9 15.2 8.16 26.5 36.44 13.94 57.57 21.581 20.384 18.699 51.065 5.21 65.62 9.45 0 22.36 18.91 22.27 37.81-.09 18.91-16.71 37.82-37.82 37.82z\"},\"child\":[]}]})(props);\n};\nexport function FaRegThumbsUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M466.27 286.69C475.04 271.84 480 256 480 236.85c0-44.015-37.218-85.58-85.82-85.58H357.7c4.92-12.81 8.85-28.13 8.85-46.54C366.55 31.936 328.86 0 271.28 0c-61.607 0-58.093 94.933-71.76 108.6-22.747 22.747-49.615 66.447-68.76 83.4H32c-17.673 0-32 14.327-32 32v240c0 17.673 14.327 32 32 32h64c14.893 0 27.408-10.174 30.978-23.95 44.509 1.001 75.06 39.94 177.802 39.94 7.22 0 15.22.01 22.22.01 77.117 0 111.986-39.423 112.94-95.33 13.319-18.425 20.299-43.122 17.34-66.99 9.854-18.452 13.664-40.343 8.99-62.99zm-61.75 53.83c12.56 21.13 1.26 49.41-13.94 57.57 7.7 48.78-17.608 65.9-53.12 65.9h-37.82c-71.639 0-118.029-37.82-171.64-37.82V240h10.92c28.36 0 67.98-70.89 94.54-97.46 28.36-28.36 18.91-75.63 37.82-94.54 47.27 0 47.27 32.98 47.27 56.73 0 39.17-28.36 56.72-28.36 94.54h103.99c21.11 0 37.73 18.91 37.82 37.82.09 18.9-12.82 37.81-22.27 37.81 13.489 14.555 16.371 45.236-5.21 65.62zM88 432c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24z\"},\"child\":[]}]})(props);\n};\nexport function FaRegTimesCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm101.8-262.2L295.6 256l62.2 62.2c4.7 4.7 4.7 12.3 0 17l-22.6 22.6c-4.7 4.7-12.3 4.7-17 0L256 295.6l-62.2 62.2c-4.7 4.7-12.3 4.7-17 0l-22.6-22.6c-4.7-4.7-4.7-12.3 0-17l62.2-62.2-62.2-62.2c-4.7-4.7-4.7-12.3 0-17l22.6-22.6c4.7-4.7 12.3-4.7 17 0l62.2 62.2 62.2-62.2c4.7-4.7 12.3-4.7 17 0l22.6 22.6c4.7 4.7 4.7 12.3 0 17z\"},\"child\":[]}]})(props);\n};\nexport function FaRegTired (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm129.1-303.8c-3.8-4.4-10.3-5.4-15.3-2.5l-80 48c-3.6 2.2-5.8 6.1-5.8 10.3s2.2 8.1 5.8 10.3l80 48c5.4 3.2 11.8 1.6 15.3-2.5 3.8-4.5 3.9-11 .1-15.5L343.6 208l33.6-40.3c3.8-4.5 3.7-11.1-.1-15.5zM220 208c0-4.2-2.2-8.1-5.8-10.3l-80-48c-5-3-11.5-1.9-15.3 2.5-3.8 4.5-3.9 11-.1 15.5l33.6 40.3-33.6 40.3c-3.8 4.5-3.7 11 .1 15.5 3.5 4.1 9.9 5.7 15.3 2.5l80-48c3.6-2.2 5.8-6.1 5.8-10.3zm28 64c-45.4 0-100.9 38.3-107.8 93.3-1.5 11.8 6.9 21.6 15.5 17.9C178.4 373.5 212 368 248 368s69.6 5.5 92.3 15.2c8.5 3.7 17-6 15.5-17.9-6.9-55-62.4-93.3-107.8-93.3z\"},\"child\":[]}]})(props);\n};\nexport function FaRegTrashAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M268 416h24a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12h-24a12 12 0 0 0-12 12v216a12 12 0 0 0 12 12zM432 80h-82.41l-34-56.7A48 48 0 0 0 274.41 0H173.59a48 48 0 0 0-41.16 23.3L98.41 80H16A16 16 0 0 0 0 96v16a16 16 0 0 0 16 16h16v336a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128h16a16 16 0 0 0 16-16V96a16 16 0 0 0-16-16zM171.84 50.91A6 6 0 0 1 177 48h94a6 6 0 0 1 5.15 2.91L293.61 80H154.39zM368 464H80V128h288zm-212-48h24a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12h-24a12 12 0 0 0-12 12v216a12 12 0 0 0 12 12z\"},\"child\":[]}]})(props);\n};\nexport function FaRegUserCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 496 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M248 104c-53 0-96 43-96 96s43 96 96 96 96-43 96-96-43-96-96-96zm0 144c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-240C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-49.7 0-95.1-18.3-130.1-48.4 14.9-23 40.4-38.6 69.6-39.5 20.8 6.4 40.6 9.6 60.5 9.6s39.7-3.1 60.5-9.6c29.2 1 54.7 16.5 69.6 39.5-35 30.1-80.4 48.4-130.1 48.4zm162.7-84.1c-24.4-31.4-62.1-51.9-105.1-51.9-10.2 0-26 9.6-57.6 9.6-31.5 0-47.4-9.6-57.6-9.6-42.9 0-80.6 20.5-105.1 51.9C61.9 339.2 48 299.2 48 256c0-110.3 89.7-200 200-200s200 89.7 200 200c0 43.2-13.9 83.2-37.3 115.9z\"},\"child\":[]}]})(props);\n};\nexport function FaRegUser (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 448 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.6 304c-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.2 304 0 364.2 0 438.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-25.6c0-74.2-60.2-134.4-134.4-134.4zM400 464H48v-25.6c0-47.6 38.8-86.4 86.4-86.4 14.6 0 38.3 16 89.6 16 51.7 0 74.9-16 89.6-16 47.6 0 86.4 38.8 86.4 86.4V464zM224 288c79.5 0 144-64.5 144-144S303.5 0 224 0 80 64.5 80 144s64.5 144 144 144zm0-240c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96z\"},\"child\":[]}]})(props);\n};\nexport function FaRegWindowClose (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 394c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V86c0-3.3 2.7-6 6-6h404c3.3 0 6 2.7 6 6v340zM356.5 194.6L295.1 256l61.4 61.4c4.6 4.6 4.6 12.1 0 16.8l-22.3 22.3c-4.6 4.6-12.1 4.6-16.8 0L256 295.1l-61.4 61.4c-4.6 4.6-12.1 4.6-16.8 0l-22.3-22.3c-4.6-4.6-4.6-12.1 0-16.8l61.4-61.4-61.4-61.4c-4.6-4.6-4.6-12.1 0-16.8l22.3-22.3c4.6-4.6 12.1-4.6 16.8 0l61.4 61.4 61.4-61.4c4.6-4.6 12.1-4.6 16.8 0l22.3 22.3c4.7 4.6 4.7 12.1 0 16.8z\"},\"child\":[]}]})(props);\n};\nexport function FaRegWindowMaximize (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 394c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V192h416v234z\"},\"child\":[]}]})(props);\n};\nexport function FaRegWindowMinimize (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 480H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h448c17.7 0 32 14.3 32 32s-14.3 32-32 32z\"},\"child\":[]}]})(props);\n};\nexport function FaRegWindowRestore (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 0H144c-26.5 0-48 21.5-48 48v48H48c-26.5 0-48 21.5-48 48v320c0 26.5 21.5 48 48 48h320c26.5 0 48-21.5 48-48v-48h48c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zm-96 464H48V256h320v208zm96-96h-48V144c0-26.5-21.5-48-48-48H144V48h320v320z\"},\"child\":[]}]})(props);\n};\n","import React, { useRef, useState } from 'react';\nimport {\n Authenticator,\n Flex,\n Grid,\n Card,\n Image,\n ThemeProvider,\n createTheme,\n useTheme,\n View,\n Text,\n Link,\nuseAuthenticator\n} from \"@aws-amplify/ui-react\";\nimport { Header } from \"./Header\";\nimport { Footer } from \"./Footer\";\nimport { Footer as Footerweb } from \"../Footer/Footer\";\nimport { SignInHeader } from \"./SignInHeader\";\nimport { SignInFooter } from \"./SignInFooter\";\nimport splash from \"../../assets/imagenLogin.png\";\nimport splashMision from \"../../assets/Poker Crushers - Study mode.jpg\";\nimport splashMision2 from \"../../assets/Poker Crushers - Trainer mode.jpg\";\nimport splashMision3 from \"../../assets/Poker Crushers - Analytics mode.jpg\";\nimport pokerplayer from \"../../assets/pokerplayer_crusher.png\";\nimport home1 from \"../../assets/home_1.png\";\nimport home2 from \"../../assets/home_2.png\";\nimport home3 from \"../../assets/home_3.png\";\nimport article1 from \"../../assets/pokerplayer_study.png\";\nimport logo from \"../../assets/logoPSA_soloPica.png\";\nimport TextCarousel from \"./TextCarousel\";\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css'; // Import the necessary CSS styles\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { faLightbulb, faBook, faMicrochip, faGraduationCap, faBars, faTimes,faCheck } from '@fortawesome/free-solid-svg-icons';\nimport { FaBars, FaTimes } from 'react-icons/fa';\nimport './Login.css';\n\nconst components = {\n Header,\n SignIn: {\n Header: SignInHeader,\n Footer: SignInFooter\n },\n Footer\n};\n\nconst messages = [\n \"Sé el jugador que todos temen: estudia de manera más inteligente, gana más grande.\",\n \"Domina el arte del poker con pensamiento estratégico.\",\n \"Desbloquea tu potencial en el poker con hábitos de estudio efectivos.\",\n \"Analiza tus manos, mejora tu juego.\",\n \"La eficiencia en el estudio se traduce en éxito en la mesa.\",\n \"La práctica hace al maestro: estudia consistentemente, juega brillantemente.\",\n \"De principiante a profesional: tu viaje comienza con un estudio inteligente.\",\n \"La consistencia es clave: estudia a diario, gana frecuentemente.\",\n \"Estudio inteligente, juego inteligente: el camino hacia la maestrÃa en el poker.\",\n \"Convierte tus debilidades en fortalezas con un estudio minucioso.\",\n];\n\nexport function Login() {\n const { tokens } = useTheme();\n const nav4Ref = useRef(null);\n const nav3Ref = useRef(null);\n const nav1_3Ref = useRef(null);\n const [menuOpen, setMenuOpen] = useState(false);\n\n const scrollToNav4 = () => {\n nav4Ref.current.scrollIntoView({ behavior: 'smooth' });\n };\n\n const scrollToNav1_3 = () => {\n nav1_3Ref.current.scrollIntoView({ behavior: 'smooth' });\n };\n\n const scrollToNav3 = () => {\n nav3Ref.current.scrollIntoView({ behavior: 'smooth' });\n };\n\n const toggleMenu = () => {\n setMenuOpen(!menuOpen);\n };\n\n const myTheme = createTheme({\n name: 'my-theme',\n tokens: {\n colors: {\n background: {\n primary: { value: '#192831' },\n },\n font: {\n primary: { value: '#fff' },\n secondary: { value: '#fff' }\n },\n brand: {\n primary: {\n 10: '#ff0000', // Color más claro\n 80: '#b30000', // Color más oscuro\n 100: '#990000', // Color principal\n },\n },\n },\n components: {\n authenticator: {\n router: {\n boxShadow: `0 0 16px ${tokens.colors.overlay['10']}`,\n borderWidth: '0',\n },\n form: {\n padding: `${tokens.space.medium} ${tokens.space.xl} ${tokens.space.medium}`,\n },\n },\n button: {\n primary: {\n backgroundColor: { value: '#fff' }, // Color de fondo del botón primario\n color: { value: '#000' }, // Color del texto del botón primario\n _hover: {\n backgroundColor: { value: '#e0e0e0' }, // Color de fondo al pasar el cursor sobre el botón\n },\n _focus: {\n backgroundColor: { value: '#c0c0c0' }, // Color de fondo cuando el botón está enfocado\n },\n _active: {\n backgroundColor: { value: '#a0a0a0' }, // Color de fondo cuando el botón está activo\n },\n },\n },\n },\n },\n });\n\n return (\n <ThemeProvider theme={myTheme}>\n <Grid\n columnGap=\"0rem\"\n rowGap=\"0rem\"\n templateColumns={{ base: \"1fr\", medium: \"1fr 1fr 1fr\" }}\n templateRows=\"0fr 0fr 0fr\"\n height=\"100%\"\n >\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n top=\"0\" width=\"100%\"\n >\n <Flex justifyContent=\"space-between\" alignItems=\"center\" padding=\"1rem\" backgroundColor={tokens.colors.font.primary.value}>\n <div style={{ display: 'flex', justifyContent: 'center' }}>\n <Image src={logo} alt=\"Logo\" height=\"80px\" />\n <Text className=\"appTitle\" fontSize=\"2rem\" color=\"white\" fontWeight=\"bold\" fontStyle=\"italic\" paddingLeft=\"25px\" paddingTop=\"10px\"\n style={{\n textShadow: '0px 0px 5px rgba(255, 255, 255, 0.8)' // Sombra inset\n }}\n > PokerCrushers.pro</Text>\n </div>\n <div className=\"desktop-menu\" gap=\"1rem\">\n <Link href=\"#nav1\" color=\"white\">\n <FontAwesomeIcon icon=\"question\" /> Por qué Poker Crushers\n </Link>\n <Link href=\"#nav2\" color=\"white\">\n <FontAwesomeIcon icon=\"star\" /> CaracterÃsticas\n </Link>\n <Link href=\"#nav3\" color=\"white\">\n <FontAwesomeIcon icon=\"tag\" /> Precios\n </Link>\n <Link href=\"#nav4\" color=\"white\">\n <FontAwesomeIcon icon=\"right-to-bracket\" /> Ingresar\n </Link>\n </div>\n <div className=\"mobile-menu-icon\" onClick={toggleMenu}>\n {menuOpen ? <FaTimes color=\"white\" size=\"1.5rem\" /> : <FaBars color=\"white\" size=\"1.5rem\" />}\n </div>\n </Flex>\n {menuOpen && (\n <Flex className=\"mobile-menu\" direction=\"column\" gap=\"1rem\" backgroundColor={tokens.colors.font.primary.value} padding=\"1rem\">\n <Link href=\"#nav1\" color=\"white\" onClick={toggleMenu}>\n <FontAwesomeIcon icon=\"question\" /> Por qué Poker Crushers\n </Link>\n <Link href=\"#nav2\" color=\"white\" onClick={toggleMenu}>\n <FontAwesomeIcon icon=\"star\" /> CaracterÃsticas\n </Link>\n <Link href=\"#nav3\" color=\"white\" onClick={toggleMenu}>\n <FontAwesomeIcon icon=\"tag\" /> Precios\n </Link>\n <Link href=\"#nav4\" color=\"white\" onClick={toggleMenu}>\n <FontAwesomeIcon icon=\"right-to-bracket\" /> Ingresar\n </Link>\n </Flex>\n )}\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100%\"\n >\n <div id=\"nav0\" style={{ height: '100%', color: '#333', backgroundColor: '#0d1926' }} >\n <Grid templateColumns={{ base: \"1fr\", medium: \"1fr 1fr\" }} gap=\"2rem\">\n <div className=\"container-details\">\n <div className=\"details\">\n <Text fontSize=\"4rem\" color=\"white\" fontWeight=\"bold\">Conviértete en un Crusher del Poker </Text>\n <Text fontSize=\"1.5rem\">\n Estudia, entrena y domina las adaptaciones explotativas que utilizan los mejores jugadores de poker online.\n </Text>\n <Text fontSize=\"1.5rem\">\n No juegues como una máquina, juega como los pro.\n </Text>\n </div>\n <button style={{ marginBottom: '50px', borderRadius: '25px', marginTop: '50px', width: '300px', height: '50px', backgroundColor: '#00ECB3', fontWeight: 'bold' }} onClick={scrollToNav4}>Crea tu cuenta</button>\n </div>\n <div style={{ textAlign: 'center', paddingTop: '100px' }}>\n <Image\n src={pokerplayer}\n width=\"50%\"\n borderRadius=\"10px\"\n />\n </div>\n </Grid>\n </div>\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100%\"\n >\n <div id=\"nav1\" style={{ height: '500px', color: '#333', backgroundColor: '#fff', padding: '4rem 2rem', textAlign: 'left' }}>\n <Grid templateColumns={{ base: \"1fr\", medium: \"1fr 1fr\" }} gap=\"2rem\">\n <div style={{ textAlign: 'center' }}>\n <Image\n src={home1}\n width=\"50%\"\n borderRadius=\"10px\"\n />\n </div>\n <div>\n <Text fontSize=\"3rem\" style={{ color: '#333', fontWeight: 'bold' }}>\n Por qué Elegir PokerCrushers.pro\n </Text>\n <Text fontSize=\"1.25rem\" style={{ color: '#333' }}>\n Deja de seguir estrategias genéricas... PokerCrushers.pro te ayuda a estudiar y aprender las adaptaciones reales que utilizan los mejores jugadores para \"aplastar\" a sus oponentes en el poker online. Aquà no solo aprenderás teorÃa; aprenderás a ganar.\n </Text>\n <button style={{ borderRadius: '25px', marginTop: '20px', width: '200px', height: '40px', backgroundColor: '#00ECB3', fontWeight: 'bold' }} onClick={scrollToNav4}>Crea tu cuenta</button>\n <button style={{ marginLeft: '10px', borderRadius: '25px', marginTop: '20px', width: '200px', height: '40px', backgroundColor: '#fff', color: '#333', fontWeight: 'bold', border: '1px solid #333' }} onClick={scrollToNav1_3}>Más información</button>\n </div>\n </Grid>\n </div>\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100%\"\n >\n <div id=\"nav1_1\" style={{ height: '500px', color: '#333', backgroundColor: '#fff', padding: '4rem 2rem', textAlign: 'left' }}>\n <Grid templateColumns={{ base: \"1fr\", medium: \"1fr 1fr\" }} gap=\"2rem\">\n <div>\n <Text fontSize=\"3rem\" style={{ color: '#333', fontWeight: 'bold' }}>\n Organiza tu estudio Hoy\n </Text>\n <Text fontSize=\"1.25rem\" style={{ color: '#333', marginTop: '10px', textAlign: 'justify' }}>\n Únete a PokerCrushers.pro y comienza a estudiar, entrenar y ganar como un verdadero crusher. No esperes más, regÃstrate ahora y lleva tu juego al siguiente nivel.\n </Text>\n <button style={{ borderRadius: '25px', marginTop: '20px', width: '200px', height: '40px', backgroundColor: '#00ECB3', fontWeight: 'bold' }} onClick={scrollToNav4}>Crea tu cuenta</button>\n <button style={{ marginLeft: '10px', borderRadius: '25px', marginTop: '20px', width: '200px', height: '40px', backgroundColor: '#fff', color: '#333', fontWeight: 'bold', border: '1px solid #333' }} onClick={scrollToNav1_3}>Más información</button>\n </div>\n <div style={{ textAlign: 'center' }}>\n <Image\n src={home2}\n height=\"50%\"\n borderRadius=\"10px\"\n />\n </div>\n </Grid>\n </div>\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100%\"\n >\n <div id=\"nav1_2\" style={{ height: '500px', color: '#333', backgroundColor: '#fff', padding: '4rem 2rem', textAlign: 'left' }}>\n <Grid templateColumns={{ base: \"1fr\", medium: \"1fr 1fr\" }} gap=\"2rem\">\n <div style={{ textAlign: 'center' }}>\n <Image\n src={home3}\n height=\"50%\"\n borderRadius=\"10px\"\n />\n </div>\n <div>\n <Text fontSize=\"3rem\" style={{ color: '#333', fontWeight: 'bold' }}>\n ¿Estás listo para dominar el poker?\n </Text>\n <Text fontSize=\"1.25rem\" style={{ color: '#333', marginTop: '10px', textAlign: 'justify' }}>\n No te conformes con ser un jugador promedio. Con PokerCrushers.pro, aprenderás a estudiar de manera eficiente, adaptarte y superar a tus oponentes con estrategias probadas. InscrÃbete ahora y empieza a ganar.\n </Text>\n <button style={{ borderRadius: '25px', marginTop: '20px', width: '200px', height: '40px', backgroundColor: '#00ECB3', fontWeight: 'bold' }} onClick={scrollToNav4}>Crea tu cuenta</button>\n <button style={{ marginLeft: '10px', borderRadius: '25px', marginTop: '20px', width: '200px', height: '40px', backgroundColor: '#fff', color: '#333', fontWeight: 'bold', border: '1px solid #333' }} onClick={scrollToNav1_3}>Más información</button>\n </div>\n </Grid>\n </div>\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100%\"\n >\n <div id=\"nav1_3\" ref={nav1_3Ref} style={{ height: '100%', color: '#333', backgroundColor: '#32414A', padding: '4rem 2rem', textAlign: 'justify' }}>\n <Grid templateColumns={{ base: \"1fr\", medium: \"1fr 1fr\" }} gap=\"2rem\">\n <div>\n <Text fontSize=\"3rem\" style={{ marginTop: '10px', fontWeight: 'bold' }}>\n Beneficios Clave:\n </Text>\n <Text fontSize=\"1.25rem\" style={{ marginTop: '10px', color: '#00ECB3' }}>\n 1. Registro Estructurado de tus Coachings:\n </Text>\n <Text fontSize=\"1.25rem\" style={{ marginTop: '10px' }}>\n Registra y organiza todo lo que aprendes en tus sesiones de coaching. Nunca más olvides una estrategia o un detalle importante.\n </Text>\n <Text fontSize=\"1.25rem\" style={{ marginTop: '10px', color: '#00ECB3' }}>\n 2. Entrenamiento Práctico y Efectivo:\n </Text>\n <Text fontSize=\"1.25rem\" style={{ marginTop: '10px' }}>\n Repasa y entrena tus manos en nuestro replayer avanzado, adaptando las estrategias a tu propio estilo de juego y mejorando con cada sesión.\n </Text>\n <Text fontSize=\"1.25rem\" style={{ marginTop: '10px', color: '#00ECB3' }}>\n 3. Estrategias Reales de los Mejores Jugadores:\n </Text>\n <Text fontSize=\"1.25rem\" style={{ marginTop: '10px' }}>\n Aprende directamente de las manos y adaptaciones que utilizan los crushers en cada nivel de juego. Con PokerCrushers.pro, estarás un paso adelante de la competencia.\n </Text>\n <button style={{ borderRadius: '25px', marginTop: '20px', width: '200px', height: '40px', backgroundColor: '#00ECB3', fontWeight: 'bold' }} onClick={scrollToNav4}>Crea tu cuenta</button>\n\n </div>\n <div style={{ display: 'flex', flexDirection: 'column', alignItems: 'center' }}>\n <Image\n src={splashMision}\n style={{ width: '80%', borderRadius: '10px' }}\n />\n <Image\n src={splashMision2}\n style={{ width: '80%', borderRadius: '10px', marginTop: '-150px', marginLeft: '70px' }} // Ajusta marginLeft según sea necesario\n />\n <Image\n src={splashMision3}\n style={{ width: '80%', borderRadius: '10px', marginTop: '-150px', marginLeft:'150px' }}\n />\n </div>\n </Grid>\n </div>\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100%\"\n >\n <div id=\"nav2\" style={{ height: '100%', color: 'black', backgroundColor: '#f1f1f1', padding: '4rem 2rem' }}>\n <Grid templateColumns={{ base: \"1fr\", medium: \"repeat(4, 1fr)\" }} gap=\"2rem\">\n <Flex direction=\"column\" alignItems=\"center\">\n <Flex\n justifyContent=\"center\"\n alignItems=\"center\"\n width=\"100px\"\n height=\"100px\"\n borderRadius=\"50%\"\n border=\"2px solid #192831\"\n color=\"#192831\"\n >\n <FontAwesomeIcon icon={faLightbulb} size=\"3x\" />\n </Flex>\n <Text fontSize=\"1.5rem\" fontWeight=\"bold\" marginTop=\"1rem\" color=\"#192831\">Simpleza</Text>\n <Text fontSize=\"1rem\" fontWeight=\"normal\" marginTop=\"1rem\" color=\"#192831\" textAlign=\"center\">Contamos con una interfaz intuitiva y fácil de manejar, con los elementos más importantes para un estudio eficiente y efectivo.</Text>\n </Flex>\n <Flex direction=\"column\" alignItems=\"center\">\n <Flex\n justifyContent=\"center\"\n alignItems=\"center\"\n width=\"100px\"\n height=\"100px\"\n borderRadius=\"50%\"\n border=\"2px solid #192831\"\n color=\"#192831\"\n >\n <FontAwesomeIcon icon={faBook} size=\"3x\" />\n </Flex>\n <Text fontSize=\"1.5rem\" fontWeight=\"bold\" marginTop=\"1rem\" color=\"#192831\">Aprendizaje</Text>\n <Text fontSize=\"1rem\" fontWeight=\"normal\" marginTop=\"1rem\" color=\"#192831\" textAlign=\"center\">Entregamos un espacio estructurado y ordenado para registrar todos los consejos y aprendizajes que un jugador necesita incorporar en su juego.</Text>\n </Flex>\n <Flex direction=\"column\" alignItems=\"center\">\n <Flex\n justifyContent=\"center\"\n alignItems=\"center\"\n width=\"100px\"\n height=\"100px\"\n borderRadius=\"50%\"\n border=\"2px solid #192831\"\n color=\"#192831\"\n >\n <FontAwesomeIcon icon={faGraduationCap} size=\"3x\" />\n </Flex>\n <Text fontSize=\"1.5rem\" fontWeight=\"bold\" marginTop=\"1rem\" color=\"#192831\">Entrenamiento</Text>\n <Text fontSize=\"1rem\" fontWeight=\"normal\" marginTop=\"1rem\" color=\"#192831\" textAlign=\"center\">Pon a prueba tu aprendizaje repasando tus manos en nuestro trainer. Además, sube el nivel de tu poker entrenando con soluciones preparadas por coaches profesionales.</Text>\n </Flex>\n <Flex direction=\"column\" alignItems=\"center\">\n <Flex\n justifyContent=\"center\"\n alignItems=\"center\"\n width=\"100px\"\n height=\"100px\"\n borderRadius=\"50%\"\n border=\"2px solid #192831\"\n color=\"#192831\"\n >\n <FontAwesomeIcon icon={faMicrochip} size=\"3x\" />\n </Flex>\n <Text fontSize=\"1.5rem\" fontWeight=\"bold\" marginTop=\"1rem\" color=\"#192831\">TecnologÃa</Text>\n <Text fontSize=\"1rem\" fontWeight=\"normal\" marginTop=\"1rem\" color=\"#192831\" textAlign=\"center\">Nos apalacamos en la tecnologÃa para optimizar el tiempo y esfuerzo de los jugadores a la hora de analizar manos y sesiones de coaching.</Text>\n </Flex>\n </Grid>\n </div>\n</Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100%\"\n >\n <div id=\"nav3\" ref={nav3Ref} style={{ height: '100%', color: 'black', backgroundColor: 'white', padding: '4rem 2rem' }}>\n <Text fontSize=\"3.5rem\" style={{ color: '#00ECB3', fontWeight: 'bold' }}>\n ¡Ingresa, Estudia y Gana!\n </Text>\n <Text fontSize=\"1.25rem\" style={{ color: '#333', fontWeight: 'bold', marginBottom: '20px' }}>\n Accede a las herramientas, estrategias y entrenamientos que te harán destacar en la mesa. SuscrÃbete hoy y conviértete en el jugador que siempre has querido ser.\n </Text>\n <Text fontSize=\"2rem\" style={{ color: '#ff0000', fontWeight: 'bold' }}>\n ¡Aprovecha nuestra oferta de lanzamiento de 1 mes GRATUITO del PLAN PREMIUM al registrar tu cuenta en el PLAN BASICO!\n </Text>\n <Grid templateColumns={{ base: \"1fr\", medium: \"repeat(3, 1fr)\" }} gap=\"2rem\">\n {[\n { plan: \"PLAN BÃSICO\", priceRef: \"\",price: \"GRATIS\",reason:\"\", stack: [\n { description: \"MetodologÃa efectiva de aprendizaje\", value:\"USD 30\"},\n { description: \"Módulo de notas\", value:\"USD 10\"},\n { description: \"Módulo de entrenamiento de manos propias\", value:\"USD 15\"},\n\n ]},\n { plan: \"PLAN PRO\", priceRef: \"\",price: \"USD 1.5 / mes\",reason:\"Menos de 1 stack de NL2\", stack: [\n { description: \"MetodologÃa efectiva de aprendizaje\", value:\"USD 30\"},\n { description: \"Módulo de notas\", value:\"USD 10\"},\n { description: \"Módulo de entrenamiento de manos propias\", value:\"USD 15\"},\n { description: \"Modulo de Rangos preflop\", value:\"USD 30\"},\n { description: \"Soporte 8x5\", value:\"USD 10\"},\n { description: \"\", value:\"USD 30\"},\n { description: \"\", value:\"USD 30\"},\n\n\n ]},\n { plan: \"PLAN PREMIUM\", priceRef: \"\",price: \"USD 4.5/ mes\",reason:\"Menos de 1 stack de NL5\", stack: [\n { description: \"MetodologÃa efectiva de aprendizaje\", value:\"USD 30\"},\n { description: \"Módulo de notas\", value:\"USD 10\"},\n { description: \"Módulo de entrenamiento de manos propias\", value:\"USD 15\"},\n { description: \"Modulo de Rangos preflop\", value:\"USD 30\"},\n { description: \"Manos de entrenaminento de manos pre-configuradas\", value:\"USD 30\"},\n { description: \"Módulo análisis de spots y acciones\", value:\"USD 30\"},\n { description: \"Soporte 8x5\", value:\"USD 10\"},\n ]},\n ].map((item, index) => (\n <Flex key={index} direction=\"column\" alignItems=\"center\" padding=\"2rem\" border=\"1px solid #00ECB3\" borderRadius=\"10px\" backgroundColor={item.plan === 'PLAN BÃSICO' ? '#fffede' : \"#f9f9f9\"}>\n <Text fontSize=\"1.5rem\" fontWeight=\"bold\" color=\"#000\">{item.plan}</Text>\n <Text fontSize=\"1rem\" textAlign=\"center\" marginTop=\"0.5rem\" color='black' style={{ whiteSpace: 'pre-line' }}>\n {item.stack.map((stackItem,index) => (\n <p>\n <FontAwesomeIcon icon={faCheck} size=\"1x\" /> {stackItem.description}\n </p>\n ))}\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"bold\" color=\"#000\" marginTop=\"0.5rem\">{item.priceRef}</Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"bold\" color=\"#000\" marginTop=\"0.5rem\">{item.reason}</Text>\n <Text fontSize=\"1.55rem\" fontWeight=\"bold\" color={item.plan === 'PLAN BÃSICO' ? '#ff116e' : \"#039370\"} marginTop=\"0.5rem\">{item.price}</Text>\n <button onClick={scrollToNav4}>Ingresar</button>\n </Flex>\n ))}\n </Grid>\n </div>\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n paddingTop=\"5rem\"\n >\n <div id=\"nav4\" ref={nav4Ref}>\n <Grid templateColumns={{ base: \"1fr\", medium: \"1fr 1fr\" }}>\n <Flex\n backgroundColor=\"#000F18\"\n justifyContent=\"center\"\n alignItems=\"center\"\n height=\"100vh\"\n >\n <Authenticator components={components}>\n {({ signOut, user }) => (\n <main>\n <h1>Hello {user.username}</h1>\n <button onClick={signOut}>Salir</button>\n </main>\n )}\n </Authenticator>\n </Flex>\n <View height=\"100vh\" position=\"relative\" display={{ base: 'none', medium: 'block' }}>\n <div style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n height: '100vh',\n color: 'white',\n fontSize: '4rem',\n fontWeight: 'bold',\n textShadow: '2px 2px 4px rgba(0, 0, 0, 0.7)',\n padding: '20px',\n textAlign: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.5)' // Background semi-transparent to improve text readability\n }}>\n <TextCarousel messages={messages} />\n </div>\n <Image\n src={splash}\n width=\"100%\"\n height=\"100%\"\n objectFit=\"cover\"\n />\n </View>\n </Grid>\n </div>\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100%\"\n >\n <div id=\"studypoker\" style={{ height: '100%', color: 'black', backgroundColor: 'white', padding: '4rem 2rem' }}>\n <Text fontSize=\"2rem\" style={{ color: '#00ECB3', fontWeight: 'bold' }}>\n ¿Como hacer más eficiente mi MetodologÃa de Estudio para el Poker?\n </Text>\n <Text fontSize=\"1.25rem\" style={{ color: '#333', fontWeight: 'normal', marginBottom: '20px', marginTop:'20px' }}>\n En el competitivo mundo del poker, donde cada decisión puede ser la diferencia entre ganar o perder, una metodologÃa de estudio eficiente es crucial. Una que esté diseñada especÃficamente para optimizar el aprendizaje y la mejora continua en el poker, que esté basada en técnicas probadas que hayan demostrado mejorar significativamente la comprensión y retención de estrategias y conceptos del juego. Aquà exploramos los aspectos fundamentales de nuestra metodologÃa y por qué son tan efectivos para los jugadores de poker.\n </Text>\n <Grid templateColumns={{ base: \"1fr\", medium: \"repeat(3, 1fr)\" }} gap=\"2rem\">\n\n <Flex direction=\"column\" alignItems=\"center\" padding=\"2rem\">\n <div style={{ textAlign: 'center' }}>\n <Image\n src={article1}\n height=\"3\n 00px\"\n borderRadius=\"10px\"\n />\n </div>\n\n <button onClick={scrollToNav1_3}>QUIERO SABER MÃS</button>\n\n </Flex>\n <Flex direction=\"column\" alignItems=\"center\" padding=\"2rem\">\n <Text fontSize=\"1.25rem\" fontWeight=\"bold\" textDecoration=\"underline\" color=\"#000\">\n 1. Notas Activas\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n <span className=\"subtituloArticulo\">Tomar Notas a Mano: </span>\n Escribir notas a mano sobre tus sesiones de juego y análisis de manos puede ser más beneficioso para la retención de estrategias. El proceso de escribir a mano involucra una elaboración más profunda del contenido, lo que facilita la memorización y comprensión de las estrategias y patrones de juego.\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n <span className=\"subtituloArticulo\">Reformulación:</span> En lugar de transcribir lo que lees o escuchas de manera literal, reformula el contenido con tus propias palabras. Esta técnica obliga al cerebro a procesar la información de una manera más activa, ayudando a consolidar el aprendizaje de estrategias complejas y escenarios de juego especÃficos.\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"bold\" textDecoration=\"underline\" color=\"#000\">\n 2. Escritura Explicativa\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n Consiste en escribir explicaciones detalladas de las estrategias de poker como si estuvieras enseñando a alguien más (Técnica Feynman), es una herramienta poderosa. Este método no solo fortalece tu comprensión de los conceptos del juego, sino que también identifica lagunas en tu conocimiento, permitiéndote abordarlas de manera precisa.\n\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"bold\" textDecoration=\"underline\" color=\"#000\">\n 3. Pruebas Prácticas\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n <span className=\"subtituloArticulo\">Autoevaluación:</span> Realizar pruebas de práctica y autoevaluaciones regularmente es fundamental para el aprendizaje efectivo en el poker. Estas pruebas te ayudan a identificar áreas que necesitan mejora, asà como a reforzar lo que ya has aprendido, consolidando el conocimiento en tu memoria a largo plazo.\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n <span className=\"subtituloArticulo\">Resolución de Problemas:</span> Trabajar en problemas prácticos y aplicados, como analizar manos jugadas y simular diferentes escenarios de juego, permite poner en práctica lo aprendido. Este enfoque práctico asegura que el conocimiento no se quede en un nivel teórico, sino que se traduzca en habilidades aplicables en las mesas.\n </Text>\n\n\n </Flex>\n <Flex direction=\"column\" alignItems=\"center\" padding=\"2rem\">\n <Text fontSize=\"1.25rem\" fontWeight=\"bold\" textDecoration=\"underline\" color=\"#000\">\n 4. Espaciado y Repetición\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n <span className=\"subtituloArticulo\">Espaciado:</span> Distribuir el estudio a lo largo del tiempo, en lugar de realizar sesiones intensivas, ésta es una estrategia crucial. El aprendizaje espaciado aprovecha la forma en que el cerebro procesa y almacena información, mejorando la retención y evitando la sobrecarga cognitiva.\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n <span className=\"subtituloArticulo\">Repetición Espaciada:</span> Revisar las estrategias y análisis de manos en intervalos crecientes es una técnica que maximiza la retención a largo plazo. Esta metodologÃa, respaldada por investigaciones en neurociencia, asegura que la información se consolide en la memoria, reduciendo la probabilidad de olvido y mejorando la toma de decisiones en tiempo real.\n\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"bold\" textDecoration=\"underline\" color=\"#000\">\n Conclusión\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n La metodologÃa de estudio propuesta por nuestra app combina estas técnicas que han sido validadas por la investigación cientÃfica para ofrecer un enfoque integral y eficiente para los jugadores de poker.\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n Al integrar Notas Activas, Escritura Explicativa, Pruebas Prácticas, y estrategias de Espaciado y Repetición, nuestra app no solo mejora la retención y comprensión de las estrategias de poker, sino que también facilita un aprendizaje más profundo y duradero.\n </Text>\n <Text fontSize=\"1.25rem\" fontWeight=\"normal\" color=\"#000\">\n Esta combinación de técnicas asegura que los jugadores no solo adquieran conocimientos, sino que también desarrollen habilidades crÃticas y aplicables en el mundo real del poker.\n </Text>\n <button onClick={scrollToNav3}>ESTOY LISTO PARA MEJORAR MI METODOLOGÃA</button>\n </Flex>\n\n </Grid>\n\n </div>\n </Card>\n <Card\n padding=\"0px\"\n columnStart=\"1\"\n columnEnd=\"-1\"\n height=\"100px\"\n >\n <Footerweb />\n </Card>\n</Grid>\n</ThemeProvider>\n);\n}\n","import { Flex, Image, useTheme, View, Text } from \"@aws-amplify/ui-react\";\nimport logo2 from '../../assets/logoPSA_3.png';\n\nexport function Header() {\n const { tokens } = useTheme();\n\n return (\n <View as=\"header\" backgroundColor=\"#192831\">\n <Flex\n direction=\"column\"\n justifyContent=\"center\"\n alignItems=\"center\"\n backgroundColor=\"#192831\"\n padding={tokens.space.large}\n gap={tokens.space.medium}\n >\n <Image\n height=\"250px\"\n alt=\"Poker Study App Logo\"\n src={logo2}\n padding={tokens.space.medium}\n />\n <Text\n fontSize=\"3rem\" // Agrandar el tamaño de la fuente\n fontWeight={tokens.fontWeights.bold}\n color={tokens.colors.font.primary}\n style={{\n textShadow: ' 0px 0px 5px rgba(0, 0, 0, 1)' // Sombra inset\n }}\n >\n <Text\n fontStyle=\"italic\"\n fontSize=\"1.5rem\" // Agrandar el tamaño de la fuente\n fontWeight={tokens.fontWeights.bold}\n color=\"#5AF8D7\"\n style={{\n textShadow: ' 0px 0px 5px rgba(0, 0, 0, 1)' // Sombra inset\n }}\n >\n Conviértete en un crusher!\n </Text>\n </Text>\n\n </Flex>\n </View>\n );\n}\n","import { Heading, useTheme } from \"@aws-amplify/ui-react\";\n\nexport function SignInHeader() {\n const { tokens } = useTheme();\n\n return (\n <Heading level={3} padding={`${tokens.space.xl} ${tokens.space.xl} 0`}>\n Ingresa a tu cuenta\n </Heading>\n );\n}","import { Flex, Link, useAuthenticator, useTheme } from \"@aws-amplify/ui-react\";\n\nexport function SignInFooter() {\n const { toForgotPassword } = useAuthenticator();\n const { tokens } = useTheme();\n\n\n const handleClick = () => {\n console.log(\"Link clicked\");\n if (toForgotPassword ) {\n toForgotPassword ();\n } else {\n console.error(\"toResetPassword is not defined\");\n }\n };\n\n return (\n <Flex justifyContent=\"center\" padding={`0 0 ${tokens.space.medium}`}>\n <Link onClick={handleClick}>Resetea tu password</Link>\n </Flex>\n );\n}","import { Flex, Text, useTheme } from \"@aws-amplify/ui-react\";\n\nexport function Footer() {\n const { tokens } = useTheme();\n\n return (\n <Flex justifyContent=\"center\" padding={tokens.space.small}>\n <Text>© All Rights Reserved</Text>\n </Flex>\n );\n}","import React, { useState, useEffect, useRef } from 'react';\nimport './CardModal.css'; // Asegúrate de que el archivo CSS está correctamente importado\n\nfunction CardModal({ isOpen, onSelectCard, cardSet, onClose }) {\n const [selectedCards, setSelectedCards] = useState([]);\n const modalContentRef = useRef(null);\n\n useEffect(() => {\n setSelectedCards([]);\n }, [cardSet, isOpen]);\n\n useEffect(() => {\n const handleClickOutside = (event) => {\n if (modalContentRef.current && !modalContentRef.current.contains(event.target)) {\n onClose();\n }\n };\n\n if (isOpen) {\n document.addEventListener('mousedown', handleClickOutside);\n } else {\n document.removeEventListener('mousedown', handleClickOutside);\n }\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, [isOpen, onClose]);\n\n if (!isOpen) return null;\n\n const suits = ['â™ ', '♣', '♥', '♦']; // Ejemplo de palos de naipes\n const ranks = ['2', '3', '4', '5', '6', '7', '8', '9', 'T', 'J', 'Q', 'K', 'A']; // Ejemplo de rangos\n const suitColors = {\n 'â™ ': '#808080', // Gris plomo\n '♣': '#25C6A2', // Verde\n '♥': '#C62549', // Rojo\n '♦': '#5e4fff' // Azul\n };\n\n const cardLimits = {\n holeCards: 2,\n flopCards: 3,\n turnCard: 1,\n riverCard: 1\n };\n\n const handleCardSelect = (card) => {\n if (selectedCards.length < cardLimits[cardSet] && !selectedCards.includes(card)) {\n const newSelectedCards = [...selectedCards, card];\n setSelectedCards(newSelectedCards);\n if (newSelectedCards.length === cardLimits[cardSet]) {\n onSelectCard(newSelectedCards);\n }\n }\n };\n\n return (\n <div className=\"modal-overlay\">\n <div className=\"modal-content\" ref={modalContentRef}>\n {suits.map(suit => (\n <div key={suit} style={{ display: 'flex', flexDirection: 'row' }}>\n {ranks.map(rank => {\n const card = rank + suit;\n const isSelected = selectedCards.includes(card);\n return (\n <button\n className=\"button-card\"\n key={card}\n onClick={(e) => {\n //console.log('Selecting card:', card);\n e.stopPropagation(); // Detener la propagación para evitar que otros manejadores de clics se activen\n handleCardSelect(card);\n }}\n style={{\n margin: '5px',\n backgroundColor: suitColors[suit],\n border: isSelected ? '2px solid yellow' : '2px solid white'\n }}\n >\n {card}\n </button>\n );\n })}\n </div>\n ))}\n </div>\n </div>\n );\n}\n\nexport default CardModal;\n","import React, { useState, useEffect, useContext } from 'react';\nimport CardModal from '../CardModal/CardModal';\nimport './CardSelector.css'; // Importa el archivo CSS aquÃ\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport { Image } from \"@aws-amplify/ui-react\";\nimport logo from \"../../assets/logoPSA_2.png\";\n\nconst suitColors = {\n 'â™ ': '#808080', // Gris para Espadas\n '♣': '#25C6A2', // Verde para Tréboles\n '♥': '#C62549', // Rojo para Corazones\n '♦': '#5e4fff' // Azul para Diamantes\n};\n\nfunction CardSelector({ card , trainer , currentHand}) {\n const [selectedCard, setSelectedCard] = useState('');\n const [cardSet, setCardSet] = useState('');\n const [isModalOpen, setIsModalOpen] = useState(false);\n const { pokerHand, updatePokerHand } = useContext(PokerHandContext);\n\n useEffect(() => {\n // Initialize the component state with values from pokerHand\n switch (card) {\n case 'myHand_1':\n setSelectedCard(pokerHand.myHand_1);\n break;\n case 'myHand_2':\n setSelectedCard(pokerHand.myHand_2);\n break;\n case 'flopCards_1':\n setSelectedCard(pokerHand.flopCards_1);\n break;\n case 'flopCards_2':\n setSelectedCard(pokerHand.flopCards_2);\n break;\n case 'flopCards_3':\n setSelectedCard(pokerHand.flopCards_3);\n break;\n case 'turnCard':\n setSelectedCard(pokerHand.turnCard);\n break;\n case 'riverCard':\n setSelectedCard(pokerHand.riverCard);\n break;\n case 'trainerCard':\n setSelectedCard('');\n break;\n default:\n break;\n }\n\n\n }, [pokerHand, card]);\n\n const handleCardClick = () => {\n\n if(trainer === 'false') {\n switch (card) {\n case 'myHand_1':\n case 'myHand_2':\n setCardSet('holeCards');\n break;\n case 'flopCards_1':\n case 'flopCards_2':\n case 'flopCards_3':\n setCardSet('flopCards');\n break;\n case 'turnCard':\n setCardSet('turnCard');\n break;\n case 'riverCard':\n setCardSet('riverCard');\n break;\n default:\n break;\n }\n setIsModalOpen(true);\n }\n };\n\n const handleCardSelect = (selectedCards) => {\n\n setIsModalOpen(false);\n\n if (cardSet === 'holeCards') {\n updatePokerHand('myHand_1', selectedCards[0] || '');\n updatePokerHand('myHand_2', selectedCards[1] || '');\n } else if (cardSet === 'flopCards') {\n updatePokerHand('flopCards_1', selectedCards[0] || '');\n updatePokerHand('flopCards_2', selectedCards[1] || '');\n updatePokerHand('flopCards_3', selectedCards[2] || '');\n } else if (cardSet === 'turnCard') {\n updatePokerHand('turnCard', selectedCards[0] || '');\n } else if (cardSet === 'riverCard') {\n updatePokerHand('riverCard', selectedCards[0] || '');\n }\n\n if (card === 'myHand_1' || card === 'myHand_2') {\n setSelectedCard(selectedCards[0] || '');\n } else if (card.startsWith('flopCards_')) {\n const flopIndex = parseInt(card.split('_')[1], 10) - 1;\n setSelectedCard(selectedCards[flopIndex] || '');\n } else if (card === 'turnCard') {\n setSelectedCard(selectedCards[0] || '');\n } else if (card === 'riverCard') {\n setSelectedCard(selectedCards[0] || '');\n }\n };\n\n const handleRightClick = (event) => {\n event.preventDefault(); // Prevenir el menú contextual predeterminado\n setSelectedCard(''); // Limpiar la selección de la carta\n switch (card) {\n case 'myHand_1':\n updatePokerHand('myHand_1', '');\n break;\n case 'myHand_2':\n updatePokerHand('myHand_2', '');\n break;\n case 'flopCards_1':\n updatePokerHand('flopCards_1', '');\n break;\n case 'flopCards_2':\n updatePokerHand('flopCards_2', '');\n break;\n case 'flopCards_3':\n updatePokerHand('flopCards_3', '');\n break;\n case 'turnCard':\n updatePokerHand('turnCard', '');\n break;\n case 'riverCard':\n updatePokerHand('riverCard', '');\n break;\n default:\n break;\n }\n };\n\n let cardClass = '';\n let logoSize='';\n\n // Determina el color basado en el último carácter del palo de la carta\n const backgroundColor = selectedCard ? suitColors[selectedCard.slice(-1)] : '#192831';\n\n if(trainer === 'true') {\n cardClass = 'card-container-trainer';\n logoSize = '50px';\n } else {\n cardClass = 'card-container';\n logoSize = '50px';\n }\n\n /*\n if (card === 'myHand_1' || card === 'myHand_2' || card==='trainerCard') {\n if(trainer === 'true') {\n if(card==='trainerCard')\n cardClass = 'card-container-trainer';\n else\n cardClass = 'card-container-hero-trainer';\n logoSize='50px';\n } else {\n cardClass = 'card-container-hero';\n logoSize = '50px';\n }\n } else {\n if(trainer === 'true') {\n cardClass = 'card-container-trainer';\n logoSize = '50px';\n } else {\n cardClass = 'card-container';\n logoSize = '50px';\n }\n }*/\n\n const handleCloseModal = () => {\n setIsModalOpen(false);\n };\n\n return (\n <div className={cardClass} onClick={handleCardClick} onContextMenu={handleRightClick} style={{ backgroundColor }} >\n {selectedCard || <span><Image src={logo} alt=\"Logo\" width={logoSize} height={logoSize} opacity=\"0.2\" /></span>}\n {isModalOpen && <CardModal isOpen={isModalOpen} onSelectCard={handleCardSelect} cardSet={cardSet} onClose={handleCloseModal}/>}\n </div>\n );\n}\n\nexport default CardSelector;\n","import React, { useState, useEffect, useContext , useRef} from 'react';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport '@fortawesome/fontawesome-svg-core/styles.css'; // Importa los estilos CSS necesarios\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\nimport './CardMatrix.css';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\n\nlibrary.add(fas);\nconst ranks = ['A', 'K', 'Q', 'J', 'T', '9', '8', '7', '6', '5', '4', '3', '2'];\n\nfunction CardMatrix({id,myRange,rangeState, setRangeState,onValueChange, range, rangeId }) {\n\n let initialMatrix = () => Array(clickCounts.length).fill().map(() => Array(clickCounts[0].length).fill(0));\n const [clickCounts, setClickCounts] = useState(\n Array(ranks.length).fill(null).map(() => Array(ranks.length).fill(0))\n );\n const [isDragging, setIsDragging] = useState(false);\n const [dragColor, setDragColor] = useState(null); // Nuevo estado para almacenar el color durante el arrastre\n const { pokerHand, updatePokerHand } = useContext(PokerHandContext);\n\n useEffect(() => {\n\n\n if(range!=\"{}\" ) {\n\n setClickCounts(JSON.parse(range));\n }else setClickCounts(initialMatrix());\n\n if (myRange == 'true') {\n\n\n\n switch (id) {\n case 'Preflop':\n if(pokerHand.preflopHeroRange!=\"{}\" ) {\n\n setClickCounts(JSON.parse(pokerHand.preflopHeroRange));\n }else setClickCounts(initialMatrix());\n break;\n case 'Flop':\n if(pokerHand.flopHeroRange!=\"{}\") {\n\n setClickCounts(JSON.parse(pokerHand.flopHeroRange));\n }else setClickCounts(initialMatrix());\n break;\n case 'Turn':\n if(pokerHand.turnHeroRange!=\"{}\") {\n\n setClickCounts(JSON.parse(pokerHand.turnHeroRange));\n }else setClickCounts(initialMatrix());\n break;\n case 'River':\n if(pokerHand.riverHeroRange!=\"{}\") {\n\n setClickCounts(JSON.parse(pokerHand.riverHeroRange));\n }else setClickCounts(initialMatrix());\n break;\n default:\n break;\n }\n }\n else {\n\n switch (id) {\n case 'Preflop':\n if(pokerHand.preflopVillainRange!=\"{}\") {\n\n setClickCounts(JSON.parse(pokerHand.preflopVillainRange));\n }else setClickCounts(initialMatrix());\n break;\n case 'Flop':\n if(pokerHand.flopVillainRange!=\"{}\") {\n\n setClickCounts(JSON.parse(pokerHand.flopVillainRange));\n }else setClickCounts(initialMatrix());\n break;\n case 'Turn':\n if(pokerHand.turnVillainRange!=\"{}\") {\n\n setClickCounts(JSON.parse(pokerHand.turnVillainRange));\n }else setClickCounts(initialMatrix());\n break;\n case 'River':\n if(pokerHand.riverVillainRange!=\"{}\") {\n\n setClickCounts(JSON.parse(pokerHand.riverVillainRange));\n }else setClickCounts(initialMatrix());\n break;\n default:\n break;\n }\n }\n\n\n }, [pokerHand]);\n\n\n const handleMouseDown = (i, j, event) => {\n if (event.button === 0) { // Botón izquierdo\n handleClick(i, j);\n } else if (event.button === 2) { // Botón derecho\n setIsDragging(true);\n setDragColor(getNextColor(clickCounts[i][j])); // Establece el color para todo el arrastre\n }\n };\n\n const handleMouseEnter = (i, j) => {\n if (isDragging) {\n setDragColorForCell(i, j, dragColor); // Aplica el color de arrastre a la celda\n }\n };\n\n const handleMouseUp = () => {\n setIsDragging(false);\n setDragColor(null); // Restablece el color de arrastre\n\n onValueChange(JSON.stringify(clickCounts),rangeId);\n\n if(myRange=='true'){\n\n switch(id) {\n case 'Preflop':\n updatePokerHand('preflopHeroRange', JSON.stringify(clickCounts));\n break;\n case 'Flop':\n updatePokerHand('flopHeroRange', JSON.stringify(clickCounts));\n break;\n case 'Turn':\n updatePokerHand('turnHeroRange', JSON.stringify(clickCounts));\n break;\n case 'River':\n updatePokerHand('riverHeroRange', JSON.stringify(clickCounts));\n break;\n default:\n break;\n }\n }\n else{\n\n switch(id) {\n case 'Preflop':\n updatePokerHand('preflopVillainRange', JSON.stringify(clickCounts));\n break;\n case 'Flop':\n updatePokerHand('flopVillainRange', JSON.stringify(clickCounts));\n break;\n case 'Turn':\n updatePokerHand('turnVillainRange', JSON.stringify(clickCounts));\n break;\n case 'River':\n updatePokerHand('riverVillainRange', JSON.stringify(clickCounts));\n break;\n default:\n break;\n }\n }\n\n\n\n };\n\n\n const handleClick = (i, j) => {\n const color = getNextColor(clickCounts[i][j]);\n setDragColorForCell(i, j, color);\n\n };\n\n const handleClear = () => {\n\n\n setClickCounts(initialMatrix());\n\n if(myRange=='true'){\n\n switch(id) {\n case 'Preflop':\n updatePokerHand('preflopHeroRange', \"{}\");\n break;\n case 'Flop':\n updatePokerHand('flopHeroRange', \"{}\");\n break;\n case 'Turn':\n updatePokerHand('turnHeroRange', \"{}\");\n break;\n case 'River':\n updatePokerHand('riverHeroRange', \"{}\");\n break;\n default:\n break;\n }\n }\n else{\n\n switch(id) {\n case 'Preflop':\n updatePokerHand('preflopVillainRange', \"{}\");\n break;\n case 'Flop':\n updatePokerHand('flopVillainRange', \"{}\");\n break;\n case 'Turn':\n updatePokerHand('turnVillainRange', \"{}\");\n break;\n case 'River':\n updatePokerHand('riverVillainRange', \"{}\");\n break;\n default:\n break;\n }\n }\n };\n\n const handleSave = () => {\n updatePokerHand('preflopHeroRange', clickCounts);\n };\n\n const setDragColorForCell = (i, j, color) => {\n const newCounts = clickCounts.map((row, rowIndex) =>\n row.map((count, colIndex) => {\n if (i === rowIndex && j === colIndex) {\n return color;\n }\n return count;\n })\n );\n setClickCounts(newCounts);\n };\n\n const getNextColor = (currentCount) => {\n return (currentCount + 1) % 6; // Ciclar entre 5 estados\n };\n\n const getColor = (count) => {\n switch (count) {\n\n case 1: return '#16974b';\n case 2: return '#ffd60d';\n case 3: return '#ff116e';\n case 4: return '#4682B4';\n case 5: return '#818280';\n default: return 'transparent';\n }\n };\n\n return (\n\n <div className=\"card-matrix\" onMouseUp={handleMouseUp} onContextMenu={(e) => e.preventDefault()} >\n <button className=\"button-clear-matrix\" onClick={handleClear} title=\"Limpiar Matriz\">\n <FontAwesomeIcon icon=\"eraser\" />\n </button>\n <div >\n {ranks.map((rank1, i) => (\n <div key={i} className=\"row\">\n {ranks.map((rank2, j) => (\n <div key={j} className=\"cell\" style={{ backgroundColor: getColor(clickCounts[i][j]) }}\n onMouseDown={(e) => handleMouseDown(i, j, e)}\n onMouseEnter={() => handleMouseEnter(i, j)}>\n {rank1 + rank2}\n </div>\n ))}\n </div>\n ))}\n\n </div>\n </div>\n );\n}\n\nexport default CardMatrix;\n","import React, { useState, useEffect, useContext, useRef } from 'react';\nimport './PokerNotes.css';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css'; // Import the necessary CSS styles\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\nimport { listHands as listHandsQuery } from \"../../graphql/queries\";\nimport { generateClient } from \"aws-amplify/api\";\n\nlibrary.add(fas);\n\nconst playerPositions6Max = ['SB', 'BB', 'UTG', 'MP', 'CO', 'BU'];\nconst client = generateClient();\n\nfunction PokerNotes({ id, membership }) {\n const noteRef = useRef(null);\n const [savedNote, setSavedNote] = useState('');\n const { pokerHand, updatePokerHand,pokerHandList } = useContext(PokerHandContext);\n const [response, setResponse] = useState('');\n const [loading, setLoading] = useState(false);\n\n\n\n useEffect(() => {\n switch (id) {\n case 'Preflop':\n noteRef.current.innerHTML = pokerHand.preflopNotes;\n break;\n case 'Flop':\n noteRef.current.innerHTML = pokerHand.flopNotes;\n break;\n case 'Turn':\n noteRef.current.innerHTML = pokerHand.turnNotes;\n break;\n case 'River':\n noteRef.current.innerHTML = pokerHand.riverNotes;\n break;\n default:\n break;\n }\n }, [pokerHand]);\n\n useEffect(() => {\n switch (id) {\n case 'Preflop':\n updatePokerHand('preflopNotes', savedNote);\n break;\n case 'Flop':\n updatePokerHand('flopNotes', savedNote);\n break;\n case 'Turn':\n updatePokerHand('turnNotes', savedNote);\n break;\n case 'River':\n updatePokerHand('riverNotes', savedNote);\n break;\n default:\n break;\n }\n }, [savedNote]);\n\n const handleBlur = () => {\n const htmlContent = noteRef.current.innerHTML;\n setSavedNote(htmlContent);\n updatePokerHand(`${id.toLowerCase()}Notes`, htmlContent);\n };\n\n const generateHandData = (pokerHand) => {\n return {\n hand: {\n title: pokerHand.handTitle,\n description: pokerHand.description,\n hero_cards: pokerHand.myHand_1 + pokerHand.myHand_2,\n villain_position: playerPositions6Max[pokerHand.villainPosition],\n hero_position: playerPositions6Max[pokerHand.heroPosition],\n streets: {\n preflop: {\n //actions: pokerHand.preflopAction\n },\n flop: {\n cards: pokerHand.flopCards_1 + pokerHand.flopCards_2 + pokerHand.flopCards_3,\n //actions: pokerHand.flopAction\n },\n turn: {\n cards: pokerHand.turnCard,\n //actions: pokerHand.turnAction\n },\n river: {\n cards: pokerHand.riverCard,\n //actions: pokerHand.riverAction\n }\n }\n }\n };\n };\n\n function cleanHandsArray(handsArray) {\n return handsArray.map(pokerHand => ({\n hand: {\n title: pokerHand.handTitle,\n description: pokerHand.description,\n hero_cards: pokerHand.myHand_1 + pokerHand.myHand_2,\n villain_position: playerPositions6Max[pokerHand.villainPosition],\n hero_position: playerPositions6Max[pokerHand.heroPosition],\n streets: {\n preflop: {\n actions: pokerHand.preflopAction\n },\n flop: {\n cards: pokerHand.flopCards_1 + pokerHand.flopCards_2 + pokerHand.flopCards_3,\n actions: pokerHand.flopAction\n },\n turn: {\n cards: pokerHand.turnCard,\n actions: pokerHand.turnAction\n },\n river: {\n cards: pokerHand.riverCard,\n actions: pokerHand.riverAction\n }\n }\n }\n }));\n }\n\n\n const fetchOpenAIResponse = async () => {\n setLoading(true);\n const API_KEY = process.env.REACT_APP_OPENAI_API_KEY;\n const endpoint = 'https://api.openai.com/v1/chat/completions'; // Updated endpoint\n const handData = generateHandData(pokerHand);\n const handDataHistory = cleanHandsArray(pokerHandList);\n console.log(handData);\n console.log(handDataHistory);\n\n const prompt = `\n Ejemplo de Manos:\n ${JSON.stringify(handDataHistory, null, 2)}\n `;\n\n\n const data = {\n model: \"gpt-3.5-turbo\",\n messages: [\n {\n role: \"system\",\n content: prompt\n },\n {\n role: \"user\",\n content: `Tengo esta informacion de mi mano de poker :\\\\n\\\\nHand Data:\\\\n${JSON.stringify(handData, null, 2)}, basado en el historial de manos que te proporcione y esta informacion, cual es la accion mas comun de Hero en el ${id}?`\n //content: `Tengo esta informacion de mi mano de poker :\\n\\nHand Data:\\n${JSON.stringify(handData, null, 2)}`\n }\n ],\n max_tokens: 500, // Limiting the tokens\n temperature: 0.3, // Setting the temperature\n top_p: 0.2\n };\n\n try {\n const res = await fetch(endpoint, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': 'Bearer ' + API_KEY,\n },\n body: JSON.stringify(data),\n });\n\n if (!res.ok) {\n const error = await res.json();\n console.error('Error response from OpenAI:', error);\n throw new Error(`Error: ${error.message}`);\n }\n\n const result = await res.json();\n setResponse(result.choices[0].message.content);\n setSavedNote(pokerHand[`${id.toLowerCase()}Notes`] + ' - **ChatGPT: ' + result.choices[0].message.content);\n } catch (error) {\n console.error('Error fetching OpenAI response:', error);\n } finally {\n setLoading(false);\n }\n };\n\n return (\n <div style={{ position: 'relative', color: 'white', fontWeight: 'bold' }}>\n <FontAwesomeIcon icon=\"clipboard\" /> Notas {id}\n\n <div\n ref={noteRef}\n contentEditable\n onBlur={handleBlur}\n className=\"poker-notes\"\n style={{\n minHeight: '150px',\n cursor: 'text',\n overflow: 'auto',\n position: 'relative',\n fontWeight: 'normal'\n }}\n />\n\n\n </div>\n );\n}\n\nexport default PokerNotes;\n\n/*\n<div className=\"tooltip-gpt\">\n <button className=\"chatGPT-note\" onClick={fetchOpenAIResponse} disabled={loading || membership === 'BASIC'}>\n {loading ? 'Loading...' : (<FontAwesomeIcon icon=\"robot\" />)}\n </button>\n <span className=\"tooltip-text\">ChatGPT (Experimental)</span>\n </div>\n* */","import React, { useState, useEffect, useContext } from 'react';\nimport Slider from \"react-slick\";\nimport './PokerActions.css';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css';\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\nimport \"slick-carousel/slick/slick.css\";\nimport \"slick-carousel/slick/slick-theme.css\";\nimport Modal from 'react-modal'; // Asegúrate de instalar react-modal\n\nlibrary.add(fas);\n\nconst preflopFirstActions = [\"OR_2.5bb\", \"OR_3bb\", \"ALL-IN\"];\nconst postflopFirstActions = [\"CHECK\", \"BET_10%\", \"BET_25%\", \"BET_33%\", \"BET_50%\", \"BET_60%\", \"BET_75%\", \"BET_100%\", \"BET_125%\", \"ALL-IN\"];\n\nconst vsAggressiveActions = [\"FOLD\", \"CALL\", \"RAISE_x3\", \"RAISE_x5\", \"ALL-IN\"];\nconst vsPassiveActions = [\"CHECK\", \"BET_10%\", \"BET_25%\", \"BET_33%\", \"BET_50%\", \"BET_60%\", \"BET_75%\", \"BET_100%\", \"BET_125%\", \"ALL-IN\"];\n\nModal.setAppElement('#root'); // Reemplaza '#root' con el ID de tu elemento root\n\nfunction PokerActions({ id }) {\n const { pokerHand, updatePokerHand, resetPokerHand } = useContext(PokerHandContext);\n const [selectedPlayer, setSelectedPlayer] = useState('');\n const [selectedAction, setSelectedAction] = useState('');\n const [previousAction, setPreviousAction] = useState('');\n const [actions, setActions] = useState([]);\n const [selectedActions, setSelectedActions] = useState({});\n const [currentPlayerIndex, setCurrentPlayerIndex] = useState(0);\n const [firstPlayer, setFirstPlayer] = useState('');\n const sliderRef = React.useRef(null);\n const [isInitialLoad, setIsInitialLoad] = useState(true);\n const [modalIsOpen, setModalIsOpen] = useState(false); // Estado para controlar el modal\n\n useEffect(() => {\n const phase = id.toLowerCase();\n\n if (pokerHand[`${phase}Action`] === \"{}\") {\n setActions([]);\n const inferredFirstPlayer = inferFirstPlayer();\n\n setFirstPlayer(inferredFirstPlayer);\n setActions([{ player: inferredFirstPlayer, action: 'NONE', order: 1, street: id, isCorrect: true, isOptional: false }]);\n updatePokerHand(`${id.toLowerCase()}Action`, \"[{player=\"+ inferredFirstPlayer+\", action=NONE, order=1, street=\"+id+\", isCorrect=true, isOptional=false}]\");\n } else {\n if (typeof pokerHand[`${phase}Action`] === \"string\") {\n const jsonString = pokerHand[`${phase}Action`]\n .replace(/(\\w+)=/g, '\"$1\":')\n .replace(/ /g, \"_\")\n .replace(/,_/g, \",\")\n .replace(/:\"([^\"]+?)\"/g, (_, value) => {\n if (value === 'true' || value === 'false' || !isNaN(value)) {\n return `:${value}`;\n }\n return `:\"${value}\"`;\n })\n .replace(/:([^\",{}\\s]+)([,}])/g, ':\\\"$1\\\"$2');\n\n const cleanedJsonString = jsonString.replace(/:\"(\\w+ [^,{}]+)\"/g, ':\\\"$1\\\"');\n const array = JSON.parse(cleanedJsonString);\n\n try {\n setPreviousAction(array[0].action);\n } catch {\n setPreviousAction('');\n }\n\n try {\n setActions(array);\n } catch {\n console.log(\"empty object\");\n }\n }\n }\n }, [pokerHand[`${id.toLowerCase()}Action`], previousAction]);\n\n const isAggressiveAction = (action) => {\n return [\"OR_2.5bb\", \"OR_3bb\", \"OR_4bb\", \"BET_10%\", \"BET_25%\", \"BET_33%\", \"BET_50%\", \"BET_60%\", \"BET_75%\", \"BET_100%\", \"BET_125%\", \"RAISE\", \"RAISE_x3\", \"RAISE_x5\", \"ALL-IN\"].includes(action);\n };\n\n const getAvailableActions = (phase, previousAction, isFirstAction) => {\n if (isFirstAction) {\n return phase === \"preflop\" ? preflopFirstActions : postflopFirstActions;\n } else {\n return isAggressiveAction(previousAction) ? vsAggressiveActions : vsPassiveActions;\n }\n };\n\n const handleAddAction = (player, action) => {\n const newAction = {\n player: player,\n action: action,\n order: (actions.length + 1),\n street: id,\n isCorrect: true,\n isOptional: false\n };\n\n const newActions = [...actions, newAction];\n setActions(newActions);\n updatePokerHand(`${id.toLowerCase()}Action`, newActions);\n };\n\n const handleRemoveAction = (index) => {\n const newActions = actions.filter((_, i) => i !== index);\n setActions(newActions);\n updatePokerHand(`${id.toLowerCase()}Action`, newActions);\n };\n\n const handleToggleCorrect = (index) => {\n const newActions = actions.map((action, i) => {\n if (i === index && action.player === 'Hero') {\n return { ...action, isCorrect: !action.isCorrect };\n }\n return action;\n });\n setActions(newActions);\n updatePokerHand(`${id.toLowerCase()}Action`, newActions);\n };\n\n const handleSelectAction = (player, action, actionIndex) => {\n\n\n\n if (pokerHand.heroPosition === '9' || pokerHand.villainPosition === '9' || pokerHand.heroPosition === 9 || pokerHand.villainPosition === 9) {\n console.log(modalIsOpen);\n setModalIsOpen(true);\n return;\n }\n\n let updatedActions = actions.map((act, index) => {\n if (index === actionIndex) {\n return { ...act, action, player };\n }\n return act;\n });\n\n const previousAction = actionIndex > 0 ? updatedActions[actionIndex - 1].action : '';\n\n if ([\"CALL\", \"FOLD\"].includes(action)) {\n updatedActions = updatedActions.slice(0, actionIndex + 1);\n } else if (!(previousAction === 'CHECK' && action === 'CHECK') && actionIndex === actions.length - 1 && ![\"CALL\", \"FOLD\"].includes(action)) {\n const nextPlayer = inferPlayer(player);\n const newAction = { player: nextPlayer, action: 'NONE', order: updatedActions.length + 1, street: id, isCorrect: true, isOptional: false };\n updatedActions = [...updatedActions, newAction];\n }\n\n setActions(updatedActions);\n updatePokerHand(`${id.toLowerCase()}Action`, updatedActions);\n\n if (actionIndex > 1)\n sliderRef.current.slickNext();\n };\n\n const inferPlayer = (previousPlayer) => {\n return previousPlayer === \"Hero\" ? \"Villain\" : \"Hero\";\n };\n\n const inferFirstPlayer = () => {\n const positions = [\"SB\", \"BB\", \"UTG\", \"MP\", \"CO\", \"BU\"];\n const heroPositionIndex = pokerHand.heroPosition;\n const villainPositionIndex = pokerHand.villainPosition;\n\n if ((heroPositionIndex <= 1 && villainPositionIndex <= 1) || (heroPositionIndex > 1 && villainPositionIndex > 1)) {\n if (heroPositionIndex < villainPositionIndex) {\n return \"Hero\";\n } else {\n return \"Villain\";\n }\n }\n\n if ((heroPositionIndex <= 1 && villainPositionIndex > 1) || (heroPositionIndex > 1 && villainPositionIndex <= 1)) {\n const inPositionPlayer = heroPositionIndex > villainPositionIndex ? \"Hero\" : \"Villain\";\n const outOfPositionPlayer = inPositionPlayer === \"Hero\" ? \"Villain\" : \"Hero\";\n\n if (id.toLowerCase() === \"preflop\") {\n return inPositionPlayer;\n }\n\n return outOfPositionPlayer;\n }\n };\n\n const inferPostflopFirstPlayer = () => {\n const positions = [\"SB\", \"BB\", \"UTG\", \"MP\", \"CO\", \"BU\"];\n const heroPositionIndex = pokerHand.heroPosition;\n const villainPositionIndex = pokerHand.villainPosition;\n\n if (heroPositionIndex <= 1 && villainPositionIndex <= 1) {\n if (heroPositionIndex < villainPositionIndex) {\n return \"Hero\";\n } else {\n return \"Villain\";\n }\n }\n\n const inPositionPlayer = heroPositionIndex > villainPositionIndex ? \"Hero\" : \"Villain\";\n return inPositionPlayer;\n };\n\n useEffect(() => {\n if (actions.length === 0) {\n const inferredFirstPlayer = inferFirstPlayer();\n setFirstPlayer(inferredFirstPlayer);\n handleAddAction(inferredFirstPlayer, 'NONE');\n } else if (actions.length == 1 && [\"CALL\", \"FOLD\"].includes(actions[actions.length - 1].action)) {\n const nextStreet = getNextStreet(id);\n if (nextStreet) {\n const inferredFirstPlayer = nextStreet === \"preflop\" ? inferFirstPlayer() : inferPostflopFirstPlayer();\n updatePokerHand(`${nextStreet}Action`, \"[{player=\"+ inferredFirstPlayer+\", action=NONE, order=1, street=\"+nextStreet+\", isCorrect=true, isOptional=false}]\");\n }\n } else {\n const inferredFirstPlayer = inferFirstPlayer();\n setFirstPlayer(inferredFirstPlayer);\n const updatedActions = actions.map((action, index) => {\n const player = index === 0 ? inferFirstPlayer() : inferPlayer(actions[index - 1]?.player);\n return { ...action, player };\n });\n setActions(updatedActions);\n }\n }, [pokerHand.heroPosition, pokerHand.villainPosition]);\n\n useEffect(() => {\n if (pokerHand.heroPosition === 9 || pokerHand.villainPosition === 9) {\n const resetActions = () => {\n const inferredFirstPlayer = inferFirstPlayer();\n setFirstPlayer(inferredFirstPlayer);\n setActions([{ player: inferredFirstPlayer, action: 'NONE', order: 1, street: id, isCorrect: true, isOptional: false }]);\n updatePokerHand(`${id.toLowerCase()}Action`, \"[{player=\"+ inferredFirstPlayer+\", action=NONE, order=1, street=\"+id+\", isCorrect=true, isOptional=false}]\");\n };\n\n resetActions();\n }\n }, [pokerHand.heroPosition, pokerHand.villainPosition]);\n\n const getNextStreet = (currentStreet) => {\n const streets = [\"preflop\", \"flop\", \"turn\", \"river\"];\n const currentIndex = streets.indexOf(currentStreet.toLowerCase());\n return currentIndex !== -1 && currentIndex < streets.length - 1 ? streets[currentIndex + 1] : null;\n };\n\n const settings = {\n dots: false,\n infinite: false,\n speed: 500,\n slidesToShow: 3,\n slidesToScroll: 1,\n arrows: actions.length > 3,\n adaptiveHeight: false,\n centerMode: false,\n };\n\n return (\n <div className=\"poker-actions-container\">\n <Slider {...settings} ref={sliderRef}>\n {actions.map((action, index) => (\n <div key={index} className=\"ActionCard\">\n <div className=\"playerTag\">{action.player || inferPlayer(actions[index - 1]?.player)} {index !== 0 && (\n <button\n className=\"remove-action-btn\"\n onClick={() => handleRemoveAction(index)}\n >\n ×\n </button>\n )}</div>\n <ul className=\"actions-list\">\n {getAvailableActions(id.toLowerCase(), index > 0 ? actions[index - 1].action : '', index === 0).map((actionOption, actionIndex) => (\n <li\n key={`${action.order}-${actionIndex}`}\n className={action.action === actionOption ? 'selected' : ''}\n onClick={() => handleSelectAction(index === 0 ? firstPlayer : inferPlayer(actions[index - 1]?.player), actionOption, index)}\n >\n {actionOption.replace(/_/g, ' ')}\n </li>\n ))}\n </ul>\n </div>\n ))}\n </Slider>\n <Modal\n isOpen={modalIsOpen}\n onRequestClose={() => setModalIsOpen(false)}\n contentLabel=\"Select Positions Warning\"\n className=\"Modal\"\n overlayClassName=\"Overlay\"\n >\n <h2>Importante!</h2>\n <p>Primero se deben seleccionar las posiciones de los jugadores.</p>\n <button onClick={() => setModalIsOpen(false)}>Cerrar</button>\n </Modal>\n </div>\n );\n}\n\nexport default PokerActions;\n","import React, { useState } from 'react';\nimport CardSelector from '../CardSelector/CardSelector'; // Asegúrate de que la ruta es correcta\nimport CardMatrix from '../CardMatrix/CardMatrix';\nimport PokerTable from '../PokerTable/PokerTable';\nimport PokerNotes from '../PokerNotes/PokerNotes';\nimport PokerActions from '../PokerActions/PokerActions';\nimport './StreetColumn.css';\n\nfunction StreetColumn({ streetName, myRange, rivalRange, notes, membership }) {\n\n const [isHeroCollapsed, setIsHeroCollapsed] = useState(true);\n const [isVillainCollapsed, setIsVillainCollapsed] = useState(true);\n\n const toggleHeroCollapse = () => {\n setIsHeroCollapsed(!isHeroCollapsed);\n };\n\n const toggleVillainCollapse = () => {\n setIsVillainCollapsed(!isVillainCollapsed);\n };\n\n return (\n <div className={`street-column-container street-${streetName}`}>\n <h2>{streetName}</h2>\n <div className=\"board-cards section\">\n {/* Renderizar CardSelectors basado en el streetName */}\n {streetName === 'Preflop' && (\n <>\n\n <div>\n <div className=\"title\">Mi mano</div>\n <div className=\"board-cards-hero\">\n <CardSelector card=\"myHand_1\" trainer=\"false\"/>\n <CardSelector card=\"myHand_2\" trainer=\"false\"/>\n </div>\n </div>\n </>\n )}\n {streetName === 'Flop' && (\n <>\n <CardSelector card=\"flopCards_1\" trainer=\"false\"/>\n <CardSelector card=\"flopCards_2\" trainer=\"false\"/>\n <CardSelector card=\"flopCards_3\" trainer=\"false\"/>\n </>\n )}\n {streetName === 'Turn' && <CardSelector card=\"turnCard\" trainer=\"false\"/>}\n {streetName === 'River' && <CardSelector card=\"riverCard\" trainer=\"false\"/>}\n </div>\n <div className=\"streetInfo\">\n <div className=\"section\"><PokerActions id={streetName}/></div>\n <div className=\"section\"><PokerNotes id={streetName} membership={membership}/></div>\n\n </div>\n\n </div>\n );\n}\n\nexport default StreetColumn;\n\n/* CARD MATRIX\n<div className=\"collapsible-section\">\n <span className=\"title\" onClick={toggleHeroCollapse}> {isHeroCollapsed ? 'Rango de Hero +' : 'Rango de Hero -'} </span>\n {!isHeroCollapsed && (\n <div className=\"collapsible-content\">\n <div className=\"section\"><CardMatrix id={streetName} myRange=\"true\" />\n </div>\n </div>\n )}\n\n </div>\n <div className=\"collapsible-section\">\n <span className=\"title\" onClick={toggleVillainCollapse}> {isVillainCollapsed ? 'Rango de Villano +' : 'Rango de Villano -'} </span>\n {!isVillainCollapsed && (\n <div className=\"collapsible-content\">\n <div className=\"section\"><CardMatrix id={streetName} myRange=\"false\" />\n </div>\n </div>\n )}\n\n </div>\n */","import React from 'react';\nimport StreetColumn from '../StreetColumn/StreetColumn';\nimport './MainContent.css';\n\nfunction MainContent({membership}) {\n const streets = ['Preflop', 'Flop', 'Turn', 'River'];\n return (\n <div className=\"MainContent\">\n {streets.map(street => (\n\n <StreetColumn key={street} streetName={street}\n boardCards=\"Aâ™ K♦ 5♥\"\n myRange=\"22+, AJs+, AJo+\"\n rivalRange=\"30% - TT+, AQ+\"\n notes=\"Rival tiende a bluffear en flops secos\"\n membership={membership}\n />\n ))}\n </div>\n );\n}\n\nexport default MainContent;","export default function _taggedTemplateLiteral(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n return Object.freeze(Object.defineProperties(strings, {\n raw: {\n value: Object.freeze(raw)\n }\n }));\n}","export var MS = '-ms-'\nexport var MOZ = '-moz-'\nexport var WEBKIT = '-webkit-'\n\nexport var COMMENT = 'comm'\nexport var RULESET = 'rule'\nexport var DECLARATION = 'decl'\n\nexport var PAGE = '@page'\nexport var MEDIA = '@media'\nexport var IMPORT = '@import'\nexport var CHARSET = '@charset'\nexport var VIEWPORT = '@viewport'\nexport var SUPPORTS = '@supports'\nexport var DOCUMENT = '@document'\nexport var NAMESPACE = '@namespace'\nexport var KEYFRAMES = '@keyframes'\nexport var FONT_FACE = '@font-face'\nexport var COUNTER_STYLE = '@counter-style'\nexport var FONT_FEATURE_VALUES = '@font-feature-values'\nexport var LAYER = '@layer'\nexport var SCOPE = '@scope'\n","/**\n * @param {number}\n * @return {number}\n */\nexport var abs = Math.abs\n\n/**\n * @param {number}\n * @return {string}\n */\nexport var from = String.fromCharCode\n\n/**\n * @param {object}\n * @return {object}\n */\nexport var assign = Object.assign\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {number}\n */\nexport function hash (value, length) {\n\treturn charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0\n}\n\n/**\n * @param {string} value\n * @return {string}\n */\nexport function trim (value) {\n\treturn value.trim()\n}\n\n/**\n * @param {string} value\n * @param {RegExp} pattern\n * @return {string?}\n */\nexport function match (value, pattern) {\n\treturn (value = pattern.exec(value)) ? value[0] : value\n}\n\n/**\n * @param {string} value\n * @param {(string|RegExp)} pattern\n * @param {string} replacement\n * @return {string}\n */\nexport function replace (value, pattern, replacement) {\n\treturn value.replace(pattern, replacement)\n}\n\n/**\n * @param {string} value\n * @param {string} search\n * @param {number} position\n * @return {number}\n */\nexport function indexof (value, search, position) {\n\treturn value.indexOf(search, position)\n}\n\n/**\n * @param {string} value\n * @param {number} index\n * @return {number}\n */\nexport function charat (value, index) {\n\treturn value.charCodeAt(index) | 0\n}\n\n/**\n * @param {string} value\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function substr (value, begin, end) {\n\treturn value.slice(begin, end)\n}\n\n/**\n * @param {string} value\n * @return {number}\n */\nexport function strlen (value) {\n\treturn value.length\n}\n\n/**\n * @param {any[]} value\n * @return {number}\n */\nexport function sizeof (value) {\n\treturn value.length\n}\n\n/**\n * @param {any} value\n * @param {any[]} array\n * @return {any}\n */\nexport function append (value, array) {\n\treturn array.push(value), value\n}\n\n/**\n * @param {string[]} array\n * @param {function} callback\n * @return {string}\n */\nexport function combine (array, callback) {\n\treturn array.map(callback).join('')\n}\n\n/**\n * @param {string[]} array\n * @param {RegExp} pattern\n * @return {string[]}\n */\nexport function filter (array, pattern) {\n\treturn array.filter(function (value) { return !match(value, pattern) })\n}\n","import {from, trim, charat, strlen, substr, append, assign} from './Utility.js'\n\nexport var line = 1\nexport var column = 1\nexport var length = 0\nexport var position = 0\nexport var character = 0\nexport var characters = ''\n\n/**\n * @param {string} value\n * @param {object | null} root\n * @param {object | null} parent\n * @param {string} type\n * @param {string[] | string} props\n * @param {object[] | string} children\n * @param {object[]} siblings\n * @param {number} length\n */\nexport function node (value, root, parent, type, props, children, length, siblings) {\n\treturn {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: '', siblings: siblings}\n}\n\n/**\n * @param {object} root\n * @param {object} props\n * @return {object}\n */\nexport function copy (root, props) {\n\treturn assign(node('', null, null, '', null, null, 0, root.siblings), root, {length: -root.length}, props)\n}\n\n/**\n * @param {object} root\n */\nexport function lift (root) {\n\twhile (root.root)\n\t\troot = copy(root.root, {children: [root]})\n\n\tappend(root, root.siblings)\n}\n\n/**\n * @return {number}\n */\nexport function char () {\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function prev () {\n\tcharacter = position > 0 ? charat(characters, --position) : 0\n\n\tif (column--, character === 10)\n\t\tcolumn = 1, line--\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function next () {\n\tcharacter = position < length ? charat(characters, position++) : 0\n\n\tif (column++, character === 10)\n\t\tcolumn = 1, line++\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function peek () {\n\treturn charat(characters, position)\n}\n\n/**\n * @return {number}\n */\nexport function caret () {\n\treturn position\n}\n\n/**\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function slice (begin, end) {\n\treturn substr(characters, begin, end)\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function token (type) {\n\tswitch (type) {\n\t\t// \\0 \\t \\n \\r \\s whitespace token\n\t\tcase 0: case 9: case 10: case 13: case 32:\n\t\t\treturn 5\n\t\t// ! + , / > @ ~ isolate token\n\t\tcase 33: case 43: case 44: case 47: case 62: case 64: case 126:\n\t\t// ; { } breakpoint token\n\t\tcase 59: case 123: case 125:\n\t\t\treturn 4\n\t\t// : accompanied token\n\t\tcase 58:\n\t\t\treturn 3\n\t\t// \" ' ( [ opening delimit token\n\t\tcase 34: case 39: case 40: case 91:\n\t\t\treturn 2\n\t\t// ) ] closing delimit token\n\t\tcase 41: case 93:\n\t\t\treturn 1\n\t}\n\n\treturn 0\n}\n\n/**\n * @param {string} value\n * @return {any[]}\n */\nexport function alloc (value) {\n\treturn line = column = 1, length = strlen(characters = value), position = 0, []\n}\n\n/**\n * @param {any} value\n * @return {any}\n */\nexport function dealloc (value) {\n\treturn characters = '', value\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function delimit (type) {\n\treturn trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))\n}\n\n/**\n * @param {string} value\n * @return {string[]}\n */\nexport function tokenize (value) {\n\treturn dealloc(tokenizer(alloc(value)))\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function whitespace (type) {\n\twhile (character = peek())\n\t\tif (character < 33)\n\t\t\tnext()\n\t\telse\n\t\t\tbreak\n\n\treturn token(type) > 2 || token(character) > 3 ? '' : ' '\n}\n\n/**\n * @param {string[]} children\n * @return {string[]}\n */\nexport function tokenizer (children) {\n\twhile (next())\n\t\tswitch (token(character)) {\n\t\t\tcase 0: append(identifier(position - 1), children)\n\t\t\t\tbreak\n\t\t\tcase 2: append(delimit(character), children)\n\t\t\t\tbreak\n\t\t\tdefault: append(from(character), children)\n\t\t}\n\n\treturn children\n}\n\n/**\n * @param {number} index\n * @param {number} count\n * @return {string}\n */\nexport function escaping (index, count) {\n\twhile (--count && next())\n\t\t// not 0-9 A-F a-f\n\t\tif (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))\n\t\t\tbreak\n\n\treturn slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function delimiter (type) {\n\twhile (next())\n\t\tswitch (character) {\n\t\t\t// ] ) \" '\n\t\t\tcase type:\n\t\t\t\treturn position\n\t\t\t// \" '\n\t\t\tcase 34: case 39:\n\t\t\t\tif (type !== 34 && type !== 39)\n\t\t\t\t\tdelimiter(character)\n\t\t\t\tbreak\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (type === 41)\n\t\t\t\t\tdelimiter(type)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tnext()\n\t\t\t\tbreak\n\t\t}\n\n\treturn position\n}\n\n/**\n * @param {number} type\n * @param {number} index\n * @return {number}\n */\nexport function commenter (type, index) {\n\twhile (next())\n\t\t// //\n\t\tif (type + character === 47 + 10)\n\t\t\tbreak\n\t\t// /*\n\t\telse if (type + character === 42 + 42 && peek() === 47)\n\t\t\tbreak\n\n\treturn '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())\n}\n\n/**\n * @param {number} index\n * @return {string}\n */\nexport function identifier (index) {\n\twhile (!token(peek()))\n\t\tnext()\n\n\treturn slice(index, position)\n}\n","import {IMPORT, LAYER, COMMENT, RULESET, DECLARATION, KEYFRAMES} from './Enum.js'\nimport {strlen} from './Utility.js'\n\n/**\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function serialize (children, callback) {\n\tvar output = ''\n\n\tfor (var i = 0; i < children.length; i++)\n\t\toutput += callback(children[i], i, children, callback) || ''\n\n\treturn output\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function stringify (element, index, children, callback) {\n\tswitch (element.type) {\n\t\tcase LAYER: if (element.children.length) break\n\t\tcase IMPORT: case DECLARATION: return element.return = element.return || element.value\n\t\tcase COMMENT: return ''\n\t\tcase KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'\n\t\tcase RULESET: if (!strlen(element.value = element.props.join(','))) return ''\n\t}\n\n\treturn strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''\n}\n","import {MS, MOZ, WEBKIT} from './Enum.js'\nimport {hash, charat, strlen, indexof, replace, substr, match} from './Utility.js'\n\n/**\n * @param {string} value\n * @param {number} length\n * @param {object[]} children\n * @return {string}\n */\nexport function prefix (value, length, children) {\n\tswitch (hash(value, length)) {\n\t\t// color-adjust\n\t\tcase 5103:\n\t\t\treturn WEBKIT + 'print-' + value + value\n\t\t// animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\t\tcase 5737: case 4201: case 3177: case 3433: case 1641: case 4457: case 2921:\n\t\t// text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\t\tcase 5572: case 6356: case 5844: case 3191: case 6645: case 3005:\n\t\t// mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\t\tcase 6391: case 5879: case 5623: case 6135: case 4599: case 4855:\n\t\t// background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\t\tcase 4215: case 6389: case 5109: case 5365: case 5621: case 3829:\n\t\t\treturn WEBKIT + value + value\n\t\t// tab-size\n\t\tcase 4789:\n\t\t\treturn MOZ + value + value\n\t\t// appearance, user-select, transform, hyphens, text-size-adjust\n\t\tcase 5349: case 4246: case 4810: case 6968: case 2756:\n\t\t\treturn WEBKIT + value + MOZ + value + MS + value + value\n\t\t// writing-mode\n\t\tcase 5936:\n\t\t\tswitch (charat(value, length + 11)) {\n\t\t\t\t// vertical-l(r)\n\t\t\t\tcase 114:\n\t\t\t\t\treturn WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value\n\t\t\t\t// vertical-r(l)\n\t\t\t\tcase 108:\n\t\t\t\t\treturn WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value\n\t\t\t\t// horizontal(-)tb\n\t\t\t\tcase 45:\n\t\t\t\t\treturn WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value\n\t\t\t\t// default: fallthrough to below\n\t\t\t}\n\t\t// flex, flex-direction, scroll-snap-type, writing-mode\n\t\tcase 6828: case 4268: case 2903:\n\t\t\treturn WEBKIT + value + MS + value + value\n\t\t// order\n\t\tcase 6165:\n\t\t\treturn WEBKIT + value + MS + 'flex-' + value + value\n\t\t// align-items\n\t\tcase 5187:\n\t\t\treturn WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value\n\t\t// align-self\n\t\tcase 5443:\n\t\t\treturn WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/g, '') + (!match(value, /flex-|baseline/) ? MS + 'grid-row-' + replace(value, /flex-|-self/g, '') : '') + value\n\t\t// align-content\n\t\tcase 4675:\n\t\t\treturn WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/g, '') + value\n\t\t// flex-shrink\n\t\tcase 5548:\n\t\t\treturn WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value\n\t\t// flex-basis\n\t\tcase 5292:\n\t\t\treturn WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value\n\t\t// flex-grow\n\t\tcase 6060:\n\t\t\treturn WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value\n\t\t// transition\n\t\tcase 4554:\n\t\t\treturn WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value\n\t\t// cursor\n\t\tcase 6187:\n\t\t\treturn replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value\n\t\t// background, background-image\n\t\tcase 5495: case 3959:\n\t\t\treturn replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1')\n\t\t// justify-content\n\t\tcase 4968:\n\t\t\treturn replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value\n\t\t// justify-self\n\t\tcase 4200:\n\t\t\tif (!match(value, /flex-|baseline/)) return MS + 'grid-column-align' + substr(value, length) + value\n\t\t\tbreak\n\t\t// grid-template-(columns|rows)\n\t\tcase 2592: case 3360:\n\t\t\treturn MS + replace(value, 'template-', '') + value\n\t\t// grid-(row|column)-start\n\t\tcase 4384: case 3616:\n\t\t\tif (children && children.some(function (element, index) { return length = index, match(element.props, /grid-\\w+-end/) })) {\n\t\t\t\treturn ~indexof(value + (children = children[length].value), 'span', 0) ? value : (MS + replace(value, '-start', '') + value + MS + 'grid-row-span:' + (~indexof(children, 'span', 0) ? match(children, /\\d+/) : +match(children, /\\d+/) - +match(value, /\\d+/)) + ';')\n\t\t\t}\n\t\t\treturn MS + replace(value, '-start', '') + value\n\t\t// grid-(row|column)-end\n\t\tcase 4896: case 4128:\n\t\t\treturn (children && children.some(function (element) { return match(element.props, /grid-\\w+-start/) })) ? value : MS + replace(replace(value, '-end', '-span'), 'span ', '') + value\n\t\t// (margin|padding)-inline-(start|end)\n\t\tcase 4095: case 3583: case 4068: case 2532:\n\t\t\treturn replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value\n\t\t// (min|max)?(width|height|inline-size|block-size)\n\t\tcase 8116: case 7059: case 5753: case 5535:\n\t\tcase 5445: case 5701: case 4933: case 4677:\n\t\tcase 5533: case 5789: case 5021: case 4765:\n\t\t\t// stretch, max-content, min-content, fill-available\n\t\t\tif (strlen(value) - 1 - length > 6)\n\t\t\t\tswitch (charat(value, length + 1)) {\n\t\t\t\t\t// (m)ax-content, (m)in-content\n\t\t\t\t\tcase 109:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (charat(value, length + 4) !== 45)\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t// (f)ill-available, (f)it-content\n\t\t\t\t\tcase 102:\n\t\t\t\t\t\treturn replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value\n\t\t\t\t\t// (s)tretch\n\t\t\t\t\tcase 115:\n\t\t\t\t\t\treturn ~indexof(value, 'stretch', 0) ? prefix(replace(value, 'stretch', 'fill-available'), length, children) + value : value\n\t\t\t\t}\n\t\t\tbreak\n\t\t// grid-(column|row)\n\t\tcase 5152: case 5920:\n\t\t\treturn replace(value, /(.+?):(\\d+)(\\s*\\/\\s*(span)?\\s*(\\d+))?(.*)/, function (_, a, b, c, d, e, f) { return (MS + a + ':' + b + f) + (c ? (MS + a + '-span:' + (d ? e : +e - +b)) + f : '') + value })\n\t\t// position: sticky\n\t\tcase 4949:\n\t\t\t// stick(y)?\n\t\t\tif (charat(value, length + 6) === 121)\n\t\t\t\treturn replace(value, ':', ':' + WEBKIT) + value\n\t\t\tbreak\n\t\t// display: (flex|inline-flex|grid|inline-grid)\n\t\tcase 6444:\n\t\t\tswitch (charat(value, charat(value, 14) === 45 ? 18 : 11)) {\n\t\t\t\t// (inline-)?fle(x)\n\t\t\t\tcase 120:\n\t\t\t\t\treturn replace(value, /(.+:)([^;\\s!]+)(;|(\\s+)?!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value\n\t\t\t\t// (inline-)?gri(d)\n\t\t\t\tcase 100:\n\t\t\t\t\treturn replace(value, ':', ':' + MS) + value\n\t\t\t}\n\t\t\tbreak\n\t\t// scroll-margin, scroll-margin-(top|right|bottom|left)\n\t\tcase 5719: case 2647: case 2135: case 3927: case 2391:\n\t\t\treturn replace(value, 'scroll-', 'scroll-snap-') + value\n\t}\n\n\treturn value\n}\n","import {MS, MOZ, WEBKIT, RULESET, KEYFRAMES, DECLARATION} from './Enum.js'\nimport {match, charat, substr, strlen, sizeof, replace, combine, filter, assign} from './Utility.js'\nimport {copy, lift, tokenize} from './Tokenizer.js'\nimport {serialize} from './Serializer.js'\nimport {prefix} from './Prefixer.js'\n\n/**\n * @param {function[]} collection\n * @return {function}\n */\nexport function middleware (collection) {\n\tvar length = sizeof(collection)\n\n\treturn function (element, index, children, callback) {\n\t\tvar output = ''\n\n\t\tfor (var i = 0; i < length; i++)\n\t\t\toutput += collection[i](element, index, children, callback) || ''\n\n\t\treturn output\n\t}\n}\n\n/**\n * @param {function} callback\n * @return {function}\n */\nexport function rulesheet (callback) {\n\treturn function (element) {\n\t\tif (!element.root)\n\t\t\tif (element = element.return)\n\t\t\t\tcallback(element)\n\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n */\nexport function prefixer (element, index, children, callback) {\n\tif (element.length > -1)\n\t\tif (!element.return)\n\t\t\tswitch (element.type) {\n\t\t\t\tcase DECLARATION: element.return = prefix(element.value, element.length, children)\n\t\t\t\t\treturn\n\t\t\t\tcase KEYFRAMES:\n\t\t\t\t\treturn serialize([copy(element, {value: replace(element.value, '@', '@' + WEBKIT)})], callback)\n\t\t\t\tcase RULESET:\n\t\t\t\t\tif (element.length)\n\t\t\t\t\t\treturn combine(children = element.props, function (value) {\n\t\t\t\t\t\t\tswitch (match(value, callback = /(::plac\\w+|:read-\\w+)/)) {\n\t\t\t\t\t\t\t\t// :read-(only|write)\n\t\t\t\t\t\t\t\tcase ':read-only': case ':read-write':\n\t\t\t\t\t\t\t\t\tlift(copy(element, {props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]}))\n\t\t\t\t\t\t\t\t\tlift(copy(element, {props: [value]}))\n\t\t\t\t\t\t\t\t\tassign(element, {props: filter(children, callback)})\n\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t// :placeholder\n\t\t\t\t\t\t\t\tcase '::placeholder':\n\t\t\t\t\t\t\t\t\tlift(copy(element, {props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]}))\n\t\t\t\t\t\t\t\t\tlift(copy(element, {props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]}))\n\t\t\t\t\t\t\t\t\tlift(copy(element, {props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]}))\n\t\t\t\t\t\t\t\t\tlift(copy(element, {props: [value]}))\n\t\t\t\t\t\t\t\t\tassign(element, {props: filter(children, callback)})\n\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn ''\n\t\t\t\t\t\t})\n\t\t\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n */\nexport function namespace (element) {\n\tswitch (element.type) {\n\t\tcase RULESET:\n\t\t\telement.props = element.props.map(function (value) {\n\t\t\t\treturn combine(tokenize(value), function (value, index, children) {\n\t\t\t\t\tswitch (charat(value, 0)) {\n\t\t\t\t\t\t// \\f\n\t\t\t\t\t\tcase 12:\n\t\t\t\t\t\t\treturn substr(value, 1, strlen(value))\n\t\t\t\t\t\t// \\0 ( + > ~\n\t\t\t\t\t\tcase 0: case 40: case 43: case 62: case 126:\n\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t// :\n\t\t\t\t\t\tcase 58:\n\t\t\t\t\t\t\tif (children[++index] === 'global')\n\t\t\t\t\t\t\t\tchildren[index] = '', children[++index] = '\\f' + substr(children[index], index = 1, -1)\n\t\t\t\t\t\t// \\s\n\t\t\t\t\t\tcase 32:\n\t\t\t\t\t\t\treturn index === 1 ? '' : value\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tswitch (index) {\n\t\t\t\t\t\t\t\tcase 0: element = value\n\t\t\t\t\t\t\t\t\treturn sizeof(children) > 1 ? '' : value\n\t\t\t\t\t\t\t\tcase index = sizeof(children) - 1: case 2:\n\t\t\t\t\t\t\t\t\treturn index === 2 ? value + element + element : value + element\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\t}\n}\n","import {COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {abs, charat, trim, from, sizeof, strlen, substr, append, replace, indexof} from './Utility.js'\nimport {node, char, prev, next, peek, caret, alloc, dealloc, delimit, whitespace, escaping, identifier, commenter} from './Tokenizer.js'\n\n/**\n * @param {string} value\n * @return {object[]}\n */\nexport function compile (value) {\n\treturn dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string[]} rule\n * @param {string[]} rules\n * @param {string[]} rulesets\n * @param {number[]} pseudo\n * @param {number[]} points\n * @param {string[]} declarations\n * @return {object}\n */\nexport function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {\n\tvar index = 0\n\tvar offset = 0\n\tvar length = pseudo\n\tvar atrule = 0\n\tvar property = 0\n\tvar previous = 0\n\tvar variable = 1\n\tvar scanning = 1\n\tvar ampersand = 1\n\tvar character = 0\n\tvar type = ''\n\tvar props = rules\n\tvar children = rulesets\n\tvar reference = rule\n\tvar characters = type\n\n\twhile (scanning)\n\t\tswitch (previous = character, character = next()) {\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (previous != 108 && charat(characters, length - 1) == 58) {\n\t\t\t\t\tif (indexof(characters += replace(delimit(character), '&', '&\\f'), '&\\f', abs(index ? points[index - 1] : 0)) != -1)\n\t\t\t\t\t\tampersand = -1\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t// \" ' [\n\t\t\tcase 34: case 39: case 91:\n\t\t\t\tcharacters += delimit(character)\n\t\t\t\tbreak\n\t\t\t// \\t \\n \\r \\s\n\t\t\tcase 9: case 10: case 13: case 32:\n\t\t\t\tcharacters += whitespace(previous)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tcharacters += escaping(caret() - 1, 7)\n\t\t\t\tcontinue\n\t\t\t// /\n\t\t\tcase 47:\n\t\t\t\tswitch (peek()) {\n\t\t\t\t\tcase 42: case 47:\n\t\t\t\t\t\tappend(comment(commenter(next(), caret()), root, parent, declarations), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcharacters += '/'\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t// {\n\t\t\tcase 123 * variable:\n\t\t\t\tpoints[index++] = strlen(characters) * ampersand\n\t\t\t// } ; \\0\n\t\t\tcase 125 * variable: case 59: case 0:\n\t\t\t\tswitch (character) {\n\t\t\t\t\t// \\0 }\n\t\t\t\t\tcase 0: case 125: scanning = 0\n\t\t\t\t\t// ;\n\t\t\t\t\tcase 59 + offset: if (ampersand == -1) characters = replace(characters, /\\f/g, '')\n\t\t\t\t\t\tif (property > 0 && (strlen(characters) - length))\n\t\t\t\t\t\t\tappend(property > 32 ? declaration(characters + ';', rule, parent, length - 1, declarations) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2, declarations), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @ ;\n\t\t\t\t\tcase 59: characters += ';'\n\t\t\t\t\t// { rule/at-rule\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tappend(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length, rulesets), rulesets)\n\n\t\t\t\t\t\tif (character === 123)\n\t\t\t\t\t\t\tif (offset === 0)\n\t\t\t\t\t\t\t\tparse(characters, root, reference, reference, props, rulesets, length, points, children)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tswitch (atrule === 99 && charat(characters, 3) === 110 ? 100 : atrule) {\n\t\t\t\t\t\t\t\t\t// d l m s\n\t\t\t\t\t\t\t\t\tcase 100: case 108: case 109: case 115:\n\t\t\t\t\t\t\t\t\t\tparse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length, children), children), rules, children, length, points, rule ? props : children)\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\tparse(characters, reference, reference, reference, [''], children, 0, points, children)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tindex = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo\n\t\t\t\tbreak\n\t\t\t// :\n\t\t\tcase 58:\n\t\t\t\tlength = 1 + strlen(characters), property = previous\n\t\t\tdefault:\n\t\t\t\tif (variable < 1)\n\t\t\t\t\tif (character == 123)\n\t\t\t\t\t\t--variable\n\t\t\t\t\telse if (character == 125 && variable++ == 0 && prev() == 125)\n\t\t\t\t\t\tcontinue\n\n\t\t\t\tswitch (characters += from(character), character * variable) {\n\t\t\t\t\t// &\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tampersand = offset > 0 ? 1 : (characters += '\\f', -1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// ,\n\t\t\t\t\tcase 44:\n\t\t\t\t\t\tpoints[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @\n\t\t\t\t\tcase 64:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (peek() === 45)\n\t\t\t\t\t\t\tcharacters += delimit(next())\n\n\t\t\t\t\t\tatrule = peek(), offset = length = strlen(type = characters += identifier(caret())), character++\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// -\n\t\t\t\t\tcase 45:\n\t\t\t\t\t\tif (previous === 45 && strlen(characters) == 2)\n\t\t\t\t\t\t\tvariable = 0\n\t\t\t\t}\n\t\t}\n\n\treturn rulesets\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} index\n * @param {number} offset\n * @param {string[]} rules\n * @param {number[]} points\n * @param {string} type\n * @param {string[]} props\n * @param {string[]} children\n * @param {number} length\n * @param {object[]} siblings\n * @return {object}\n */\nexport function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length, siblings) {\n\tvar post = offset - 1\n\tvar rule = offset === 0 ? rules : ['']\n\tvar size = sizeof(rule)\n\n\tfor (var i = 0, j = 0, k = 0; i < index; ++i)\n\t\tfor (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)\n\t\t\tif (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\\f/g, rule[x])))\n\t\t\t\tprops[k++] = z\n\n\treturn node(value, root, parent, offset === 0 ? RULESET : type, props, children, length, siblings)\n}\n\n/**\n * @param {number} value\n * @param {object} root\n * @param {object?} parent\n * @param {object[]} siblings\n * @return {object}\n */\nexport function comment (value, root, parent, siblings) {\n\treturn node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0, siblings)\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} length\n * @param {object[]} siblings\n * @return {object}\n */\nexport function declaration (value, root, parent, length, siblings) {\n\treturn node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length, siblings)\n}\n","var unitlessKeys = {\n animationIterationCount: 1,\n aspectRatio: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport { unitlessKeys as default };\n","declare let SC_DISABLE_SPEEDY: boolean | null | undefined;\ndeclare let __VERSION__: string;\n\nexport const SC_ATTR: string =\n (typeof process !== 'undefined' &&\n typeof process.env !== 'undefined' &&\n (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR)) ||\n 'data-styled';\n\nexport const SC_ATTR_ACTIVE = 'active';\nexport const SC_ATTR_VERSION = 'data-styled-version';\nexport const SC_VERSION = __VERSION__;\nexport const SPLITTER = '/*!sc*/\\n';\n\nexport const IS_BROWSER = typeof window !== 'undefined' && 'HTMLElement' in window;\n\nexport const DISABLE_SPEEDY = Boolean(\n typeof SC_DISABLE_SPEEDY === 'boolean'\n ? SC_DISABLE_SPEEDY\n : typeof process !== 'undefined' &&\n typeof process.env !== 'undefined' &&\n typeof process.env.REACT_APP_SC_DISABLE_SPEEDY !== 'undefined' &&\n process.env.REACT_APP_SC_DISABLE_SPEEDY !== ''\n ? process.env.REACT_APP_SC_DISABLE_SPEEDY === 'false'\n ? false\n : process.env.REACT_APP_SC_DISABLE_SPEEDY\n : typeof process !== 'undefined' &&\n typeof process.env !== 'undefined' &&\n typeof process.env.SC_DISABLE_SPEEDY !== 'undefined' &&\n process.env.SC_DISABLE_SPEEDY !== ''\n ? process.env.SC_DISABLE_SPEEDY === 'false'\n ? false\n : process.env.SC_DISABLE_SPEEDY\n : process.env.NODE_ENV !== 'production'\n);\n\n// Shared empty execution context when generating static styles\nexport const STATIC_EXECUTION_CONTEXT = {};\n","import { Dict } from '../types';\n\nexport const EMPTY_ARRAY = Object.freeze([]) as Readonly<any[]>;\nexport const EMPTY_OBJECT = Object.freeze({}) as Readonly<Dict<any>>;\n","import { useRef } from 'react';\n\nconst invalidHookCallRe = /invalid hook call/i;\nconst seen = new Set();\n\nexport const checkDynamicCreation = (displayName: string, componentId?: string | undefined) => {\n if (process.env.NODE_ENV !== 'production') {\n const parsedIdString = componentId ? ` with the id of \"${componentId}\"` : '';\n const message =\n `The component ${displayName}${parsedIdString} has been created dynamically.\\n` +\n \"You may see this warning because you've called styled inside another component.\\n\" +\n 'To resolve this only create new StyledComponents outside of any render method and function component.';\n\n // If a hook is called outside of a component:\n // React 17 and earlier throw an error\n // React 18 and above use console.error\n\n const originalConsoleError = console.error;\n try {\n let didNotCallInvalidHook = true;\n console.error = (consoleErrorMessage, ...consoleErrorArgs) => {\n // The error here is expected, since we're expecting anything that uses `checkDynamicCreation` to\n // be called outside of a React component.\n if (invalidHookCallRe.test(consoleErrorMessage)) {\n didNotCallInvalidHook = false;\n // This shouldn't happen, but resets `warningSeen` if we had this error happen intermittently\n seen.delete(message);\n } else {\n originalConsoleError(consoleErrorMessage, ...consoleErrorArgs);\n }\n };\n // We purposefully call `useRef` outside of a component and expect it to throw\n // If it doesn't, then we're inside another component.\n useRef();\n\n if (didNotCallInvalidHook && !seen.has(message)) {\n console.warn(message);\n seen.add(message);\n }\n } catch (error) {\n // The error here is expected, since we're expecting anything that uses `checkDynamicCreation` to\n // be called outside of a React component.\n if (invalidHookCallRe.test((error as Error).message)) {\n // This shouldn't happen, but resets `warningSeen` if we had this error happen intermittently\n seen.delete(message);\n }\n } finally {\n console.error = originalConsoleError;\n }\n }\n};\n","import { DefaultTheme, ExecutionProps } from '../types';\nimport { EMPTY_OBJECT } from './empties';\n\nexport default function determineTheme(\n props: ExecutionProps,\n providedTheme?: DefaultTheme | undefined,\n defaultProps: { theme?: DefaultTheme | undefined } = EMPTY_OBJECT\n): DefaultTheme | undefined {\n return (props.theme !== defaultProps.theme && props.theme) || providedTheme || defaultProps.theme;\n}\n","// Thanks to ReactDOMFactories for this handy list!\n\nconst elements = [\n 'a',\n 'abbr',\n 'address',\n 'area',\n 'article',\n 'aside',\n 'audio',\n 'b',\n 'base',\n 'bdi',\n 'bdo',\n 'big',\n 'blockquote',\n 'body',\n 'br',\n 'button',\n 'canvas',\n 'caption',\n 'cite',\n 'code',\n 'col',\n 'colgroup',\n 'data',\n 'datalist',\n 'dd',\n 'del',\n 'details',\n 'dfn',\n 'dialog',\n 'div',\n 'dl',\n 'dt',\n 'em',\n 'embed',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'header',\n 'hgroup',\n 'hr',\n 'html',\n 'i',\n 'iframe',\n 'img',\n 'input',\n 'ins',\n 'kbd',\n 'keygen',\n 'label',\n 'legend',\n 'li',\n 'link',\n 'main',\n 'map',\n 'mark',\n 'menu',\n 'menuitem',\n 'meta',\n 'meter',\n 'nav',\n 'noscript',\n 'object',\n 'ol',\n 'optgroup',\n 'option',\n 'output',\n 'p',\n 'param',\n 'picture',\n 'pre',\n 'progress',\n 'q',\n 'rp',\n 'rt',\n 'ruby',\n 's',\n 'samp',\n 'script',\n 'section',\n 'select',\n 'small',\n 'source',\n 'span',\n 'strong',\n 'style',\n 'sub',\n 'summary',\n 'sup',\n 'table',\n 'tbody',\n 'td',\n 'textarea',\n 'tfoot',\n 'th',\n 'thead',\n 'time',\n 'tr',\n 'track',\n 'u',\n 'ul',\n 'use',\n 'var',\n 'video',\n 'wbr', // SVG\n 'circle',\n 'clipPath',\n 'defs',\n 'ellipse',\n 'foreignObject',\n 'g',\n 'image',\n 'line',\n 'linearGradient',\n 'marker',\n 'mask',\n 'path',\n 'pattern',\n 'polygon',\n 'polyline',\n 'radialGradient',\n 'rect',\n 'stop',\n 'svg',\n 'text',\n 'tspan',\n] as const;\n\nexport default new Set(elements);\nexport type SupportedHTMLElements = (typeof elements)[number];\n","// Source: https://www.w3.org/TR/cssom-1/#serialize-an-identifier\n// Control characters and non-letter first symbols are not supported\nconst escapeRegex = /[!\"#$%&'()*+,./:;<=>?@[\\\\\\]^`{|}~-]+/g;\n\nconst dashesAtEnds = /(^-|-$)/g;\n\n/**\n * TODO: Explore using CSS.escape when it becomes more available\n * in evergreen browsers.\n */\nexport default function escape(str: string) {\n return str // Replace all possible CSS selectors\n .replace(escapeRegex, '-') // Remove extraneous hyphens at the start and end\n .replace(dashesAtEnds, '');\n}\n","const AD_REPLACER_R = /(a)(d)/gi;\n\n/* This is the \"capacity\" of our alphabet i.e. 2x26 for all letters plus their capitalised\n * counterparts */\nconst charsLength = 52;\n\n/* start at 75 for 'a' until 'z' (25) and then start at 65 for capitalised letters */\nconst getAlphabeticChar = (code: number) => String.fromCharCode(code + (code > 25 ? 39 : 97));\n\n/* input a number, usually a hash and convert it to base-52 */\nexport default function generateAlphabeticName(code: number) {\n let name = '';\n let x;\n\n /* get a char and divide by alphabet-length */\n for (x = Math.abs(code); x > charsLength; x = (x / charsLength) | 0) {\n name = getAlphabeticChar(x % charsLength) + name;\n }\n\n return (getAlphabeticChar(x % charsLength) + name).replace(AD_REPLACER_R, '$1-$2');\n}\n","export const SEED = 5381;\n\n// When we have separate strings it's useful to run a progressive\n// version of djb2 where we pretend that we're still looping over\n// the same string\nexport const phash = (h: number, x: string) => {\n let i = x.length;\n\n while (i) {\n h = (h * 33) ^ x.charCodeAt(--i);\n }\n\n return h;\n};\n\n// This is a djb2 hashing function\nexport const hash = (x: string) => {\n return phash(SEED, x);\n};\n","import generateAlphabeticName from './generateAlphabeticName';\nimport { hash } from './hash';\n\nexport default function generateComponentId(str: string) {\n return generateAlphabeticName(hash(str) >>> 0);\n}\n","import { StyledTarget } from '../types';\n\nexport default function getComponentName(target: StyledTarget<any>) {\n return (\n (process.env.NODE_ENV !== 'production' ? typeof target === 'string' && target : false) ||\n (target as Exclude<StyledTarget<any>, string>).displayName ||\n (target as Function).name ||\n 'Component'\n );\n}\n","import { StyledTarget } from '../types';\n\nexport default function isTag(target: StyledTarget<'web'>): target is string {\n return (\n typeof target === 'string' &&\n (process.env.NODE_ENV !== 'production'\n ? target.charAt(0) === target.charAt(0).toLowerCase()\n : true)\n );\n}\n","import React from 'react';\nimport { AnyComponent } from '../types';\n\nconst hasSymbol = typeof Symbol === 'function' && Symbol.for;\n\n// copied from react-is\nconst REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nconst REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\n\n/**\n * Adapted from hoist-non-react-statics to avoid the react-is dependency.\n */\nconst REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true,\n};\n\nconst KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true,\n};\n\nconst FORWARD_REF_STATICS = {\n $$typeof: true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n};\n\nconst MEMO_STATICS = {\n $$typeof: true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true,\n};\n\nconst TYPE_STATICS = {\n [REACT_FORWARD_REF_TYPE]: FORWARD_REF_STATICS,\n [REACT_MEMO_TYPE]: MEMO_STATICS,\n};\n\ntype OmniComponent = AnyComponent;\n\n// adapted from react-is\nfunction isMemo(\n object: OmniComponent | React.MemoExoticComponent<any>\n): object is React.MemoExoticComponent<any> {\n const $$typeofType = 'type' in object && object.type.$$typeof;\n\n return $$typeofType === REACT_MEMO_TYPE;\n}\n\nfunction getStatics(component: OmniComponent) {\n // React v16.11 and below\n if (isMemo(component)) {\n return MEMO_STATICS;\n }\n\n // React v16.12 and above\n return '$$typeof' in component\n ? TYPE_STATICS[component['$$typeof'] as unknown as string]\n : REACT_STATICS;\n}\n\nconst defineProperty = Object.defineProperty;\nconst getOwnPropertyNames = Object.getOwnPropertyNames;\nconst getOwnPropertySymbols = Object.getOwnPropertySymbols;\nconst getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nconst getPrototypeOf = Object.getPrototypeOf;\nconst objectPrototype = Object.prototype;\n\ntype ExcludeList = {\n [key: string]: true;\n};\n\ntype NonReactStatics<S extends OmniComponent, C extends ExcludeList = {}> = {\n [key in Exclude<\n keyof S,\n S extends React.MemoExoticComponent<any>\n ? keyof typeof MEMO_STATICS | keyof C\n : S extends React.ForwardRefExoticComponent<any>\n ? keyof typeof FORWARD_REF_STATICS | keyof C\n : keyof typeof REACT_STATICS | keyof typeof KNOWN_STATICS | keyof C\n >]: S[key];\n};\n\nexport default function hoistNonReactStatics<\n T extends OmniComponent,\n S extends OmniComponent,\n C extends ExcludeList = {},\n>(targetComponent: T, sourceComponent: S, excludelist?: C | undefined) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n\n if (objectPrototype) {\n const inheritedComponent = getPrototypeOf(sourceComponent);\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, excludelist);\n }\n }\n\n let keys: (String | Symbol)[] = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n const targetStatics = getStatics(targetComponent);\n const sourceStatics = getStatics(sourceComponent);\n\n for (let i = 0; i < keys.length; ++i) {\n const key = keys[i] as unknown as string;\n if (\n !(key in KNOWN_STATICS) &&\n !(excludelist && excludelist[key]) &&\n !(sourceStatics && key in sourceStatics) &&\n !(targetStatics && key in targetStatics)\n ) {\n const descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor!);\n } catch (e) {\n /* ignore */\n }\n }\n }\n }\n\n return targetComponent as T & NonReactStatics<S, C>;\n}\n","export default function isFunction(test: any): test is Function {\n return typeof test === 'function';\n}\n","import { StyledComponentBrand } from '../types';\n\nexport default function isStyledComponent(target: any): target is StyledComponentBrand {\n return typeof target === 'object' && 'styledComponentId' in target;\n}\n","/**\n * Convenience function for joining strings to form className chains\n */\nexport function joinStrings(a?: string | undefined, b?: string | undefined): string {\n return a && b ? `${a} ${b}` : a || b || '';\n}\n\nexport function joinStringArray(arr: string[], sep?: string | undefined): string {\n if (arr.length === 0) {\n return '';\n }\n\n let result = arr[0];\n for (let i = 1; i < arr.length; i++) {\n result += sep ? sep + arr[i] : arr[i];\n }\n return result;\n}\n","export default function isPlainObject(x: any): x is Record<any, any> {\n return (\n x !== null &&\n typeof x === 'object' &&\n x.constructor.name === Object.name &&\n /* check for reasonable markers that the object isn't an element for react & preact/compat */\n !('props' in x && x.$$typeof)\n );\n}\n","import isPlainObject from './isPlainObject';\n\nfunction mixinRecursively(target: any, source: any, forceMerge = false) {\n /* only merge into POJOs, Arrays, but for top level objects only\n * allow to merge into anything by passing forceMerge = true */\n if (!forceMerge && !isPlainObject(target) && !Array.isArray(target)) {\n return source;\n }\n\n if (Array.isArray(source)) {\n for (let key = 0; key < source.length; key++) {\n target[key] = mixinRecursively(target[key], source[key]);\n }\n } else if (isPlainObject(source)) {\n for (const key in source) {\n target[key] = mixinRecursively(target[key], source[key]);\n }\n }\n\n return target;\n}\n\n/**\n * Arrays & POJOs merged recursively, other objects and value types are overridden\n * If target is not a POJO or an Array, it will get source properties injected via shallow merge\n * Source objects applied left to right. Mutates & returns target. Similar to lodash merge.\n */\nexport default function mixinDeep(target: any, ...sources: any[]) {\n for (const source of sources) {\n mixinRecursively(target, source, true);\n }\n\n return target;\n}\n","/**\n * If the Object prototype is frozen, the \"toString\" property is non-writable. This means that any objects which inherit this property\n * cannot have the property changed using a \"=\" assignment operator. If using strict mode, attempting that will cause an error. If not using\n * strict mode, attempting that will be silently ignored.\n *\n * If the Object prototype is frozen, inherited non-writable properties can still be shadowed using one of two mechanisms:\n *\n * 1. ES6 class methods: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes#methods\n * 2. Using the `Object.defineProperty()` static method:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty\n *\n * However, this project uses Babel to transpile ES6 classes, and transforms ES6 class methods to use the assignment operator instead:\n * https://babeljs.io/docs/babel-plugin-transform-class-properties#options\n *\n * Therefore, the most compatible way to shadow the prototype's \"toString\" property is to define a new \"toString\" property on this object.\n */\nexport function setToString(object: object, toStringFn: () => string) {\n Object.defineProperty(object, 'toString', { value: toStringFn });\n}\n","import { Dict } from '../types';\nimport errorMap from './errors';\n\nconst ERRORS: Dict<any> = process.env.NODE_ENV !== 'production' ? errorMap : {};\n\n/**\n * super basic version of sprintf\n */\nfunction format(...args: [string, ...any]) {\n let a = args[0];\n const b = [];\n\n for (let c = 1, len = args.length; c < len; c += 1) {\n b.push(args[c]);\n }\n\n b.forEach(d => {\n a = a.replace(/%[a-z]/, d);\n });\n\n return a;\n}\n\n/**\n * Create an error file out of errors.md for development and a simple web link to the full errors\n * in production mode.\n */\nexport default function throwStyledComponentsError(\n code: string | number,\n ...interpolations: any[]\n) {\n if (process.env.NODE_ENV === 'production') {\n return new Error(\n `An error occurred. See https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#${code} for more information.${\n interpolations.length > 0 ? ` Args: ${interpolations.join(', ')}` : ''\n }`\n );\n } else {\n return new Error(format(ERRORS[code], ...interpolations).trim());\n }\n}\n","import { SPLITTER } from '../constants';\nimport styledError from '../utils/error';\nimport { GroupedTag, Tag } from './types';\n\n/** Create a GroupedTag with an underlying Tag implementation */\nexport const makeGroupedTag = (tag: Tag) => {\n return new DefaultGroupedTag(tag);\n};\n\nconst BASE_SIZE = 1 << 9;\n\nconst DefaultGroupedTag = class DefaultGroupedTag implements GroupedTag {\n groupSizes: Uint32Array;\n length: number;\n tag: Tag;\n\n constructor(tag: Tag) {\n this.groupSizes = new Uint32Array(BASE_SIZE);\n this.length = BASE_SIZE;\n this.tag = tag;\n }\n\n indexOfGroup(group: number) {\n let index = 0;\n for (let i = 0; i < group; i++) {\n index += this.groupSizes[i];\n }\n\n return index;\n }\n\n insertRules(group: number, rules: string[]) {\n if (group >= this.groupSizes.length) {\n const oldBuffer = this.groupSizes;\n const oldSize = oldBuffer.length;\n\n let newSize = oldSize;\n while (group >= newSize) {\n newSize <<= 1;\n if (newSize < 0) {\n throw styledError(16, `${group}`);\n }\n }\n\n this.groupSizes = new Uint32Array(newSize);\n this.groupSizes.set(oldBuffer);\n this.length = newSize;\n\n for (let i = oldSize; i < newSize; i++) {\n this.groupSizes[i] = 0;\n }\n }\n\n let ruleIndex = this.indexOfGroup(group + 1);\n\n for (let i = 0, l = rules.length; i < l; i++) {\n if (this.tag.insertRule(ruleIndex, rules[i])) {\n this.groupSizes[group]++;\n ruleIndex++;\n }\n }\n }\n\n clearGroup(group: number) {\n if (group < this.length) {\n const length = this.groupSizes[group];\n const startIndex = this.indexOfGroup(group);\n const endIndex = startIndex + length;\n\n this.groupSizes[group] = 0;\n\n for (let i = startIndex; i < endIndex; i++) {\n this.tag.deleteRule(startIndex);\n }\n }\n }\n\n getGroup(group: number) {\n let css = '';\n if (group >= this.length || this.groupSizes[group] === 0) {\n return css;\n }\n\n const length = this.groupSizes[group];\n const startIndex = this.indexOfGroup(group);\n const endIndex = startIndex + length;\n\n for (let i = startIndex; i < endIndex; i++) {\n css += `${this.tag.getRule(i)}${SPLITTER}`;\n }\n\n return css;\n }\n};\n","import styledError from '../utils/error';\n\nconst MAX_SMI = 1 << (31 - 1);\n\nlet groupIDRegister: Map<string, number> = new Map();\nlet reverseRegister: Map<number, string> = new Map();\nlet nextFreeGroup = 1;\n\nexport const resetGroupIds = () => {\n groupIDRegister = new Map();\n reverseRegister = new Map();\n nextFreeGroup = 1;\n};\n\nexport const getGroupForId = (id: string): number => {\n if (groupIDRegister.has(id)) {\n return groupIDRegister.get(id) as any;\n }\n\n while (reverseRegister.has(nextFreeGroup)) {\n nextFreeGroup++;\n }\n\n const group = nextFreeGroup++;\n\n if (process.env.NODE_ENV !== 'production' && ((group | 0) < 0 || group > MAX_SMI)) {\n throw styledError(16, `${group}`);\n }\n\n groupIDRegister.set(id, group);\n reverseRegister.set(group, id);\n return group;\n};\n\nexport const getIdForGroup = (group: number): void | string => {\n return reverseRegister.get(group);\n};\n\nexport const setGroupForId = (id: string, group: number) => {\n // move pointer\n nextFreeGroup = group + 1;\n\n groupIDRegister.set(id, group);\n reverseRegister.set(group, id);\n};\n","import { SC_ATTR, SC_ATTR_ACTIVE, SC_ATTR_VERSION, SC_VERSION, SPLITTER } from '../constants';\nimport { getIdForGroup, setGroupForId } from './GroupIDAllocator';\nimport { Sheet } from './types';\n\nconst SELECTOR = `style[${SC_ATTR}][${SC_ATTR_VERSION}=\"${SC_VERSION}\"]`;\nconst MARKER_RE = new RegExp(`^${SC_ATTR}\\\\.g(\\\\d+)\\\\[id=\"([\\\\w\\\\d-]+)\"\\\\].*?\"([^\"]*)`);\n\nexport const outputSheet = (sheet: Sheet) => {\n const tag = sheet.getTag();\n const { length } = tag;\n\n let css = '';\n for (let group = 0; group < length; group++) {\n const id = getIdForGroup(group);\n if (id === undefined) continue;\n\n const names = sheet.names.get(id);\n const rules = tag.getGroup(group);\n if (names === undefined || rules.length === 0) continue;\n\n const selector = `${SC_ATTR}.g${group}[id=\"${id}\"]`;\n\n let content = '';\n if (names !== undefined) {\n names.forEach(name => {\n if (name.length > 0) {\n content += `${name},`;\n }\n });\n }\n\n // NOTE: It's easier to collect rules and have the marker\n // after the actual rules to simplify the rehydration\n css += `${rules}${selector}{content:\"${content}\"}${SPLITTER}`;\n }\n\n return css;\n};\n\nconst rehydrateNamesFromContent = (sheet: Sheet, id: string, content: string) => {\n const names = content.split(',');\n let name;\n\n for (let i = 0, l = names.length; i < l; i++) {\n if ((name = names[i])) {\n sheet.registerName(id, name);\n }\n }\n};\n\nconst rehydrateSheetFromTag = (sheet: Sheet, style: HTMLStyleElement) => {\n const parts = (style.textContent ?? '').split(SPLITTER);\n const rules: string[] = [];\n\n for (let i = 0, l = parts.length; i < l; i++) {\n const part = parts[i].trim();\n if (!part) continue;\n\n const marker = part.match(MARKER_RE);\n\n if (marker) {\n const group = parseInt(marker[1], 10) | 0;\n const id = marker[2];\n\n if (group !== 0) {\n // Rehydrate componentId to group index mapping\n setGroupForId(id, group);\n // Rehydrate names and rules\n // looks like: data-styled.g11[id=\"idA\"]{content:\"nameA,\"}\n rehydrateNamesFromContent(sheet, id, marker[3]);\n sheet.getTag().insertRules(group, rules);\n }\n\n rules.length = 0;\n } else {\n rules.push(part);\n }\n }\n};\n\nexport const rehydrateSheet = (sheet: Sheet) => {\n const nodes = document.querySelectorAll(SELECTOR);\n\n for (let i = 0, l = nodes.length; i < l; i++) {\n const node = nodes[i] as any as HTMLStyleElement;\n if (node && node.getAttribute(SC_ATTR) !== SC_ATTR_ACTIVE) {\n rehydrateSheetFromTag(sheet, node);\n\n if (node.parentNode) {\n node.parentNode.removeChild(node);\n }\n }\n }\n};\n","declare let __webpack_nonce__: string;\n\nexport default function getNonce() {\n return typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n}\n","import { SC_ATTR, SC_ATTR_ACTIVE, SC_ATTR_VERSION, SC_VERSION } from '../constants';\nimport styledError from '../utils/error';\nimport getNonce from '../utils/nonce';\n\n/** Find last style element if any inside target */\nconst findLastStyleTag = (target: HTMLElement): void | HTMLStyleElement => {\n const arr = Array.from(target.querySelectorAll<HTMLStyleElement>(`style[${SC_ATTR}]`));\n\n return arr[arr.length - 1];\n};\n\n/** Create a style element inside `target` or <head> after the last */\nexport const makeStyleTag = (target?: HTMLElement | undefined): HTMLStyleElement => {\n const head = document.head;\n const parent = target || head;\n const style = document.createElement('style');\n const prevStyle = findLastStyleTag(parent);\n const nextSibling = prevStyle !== undefined ? prevStyle.nextSibling : null;\n\n style.setAttribute(SC_ATTR, SC_ATTR_ACTIVE);\n style.setAttribute(SC_ATTR_VERSION, SC_VERSION);\n\n const nonce = getNonce();\n\n if (nonce) style.setAttribute('nonce', nonce);\n\n parent.insertBefore(style, nextSibling);\n\n return style;\n};\n\n/** Get the CSSStyleSheet instance for a given style element */\nexport const getSheet = (tag: HTMLStyleElement): CSSStyleSheet => {\n if (tag.sheet) {\n return tag.sheet as any as CSSStyleSheet;\n }\n\n // Avoid Firefox quirk where the style element might not have a sheet property\n const { styleSheets } = document;\n for (let i = 0, l = styleSheets.length; i < l; i++) {\n const sheet = styleSheets[i];\n if (sheet.ownerNode === tag) {\n return sheet as any as CSSStyleSheet;\n }\n }\n\n throw styledError(17);\n};\n","import { getSheet, makeStyleTag } from './dom';\nimport { SheetOptions, Tag } from './types';\n\n/** Create a CSSStyleSheet-like tag depending on the environment */\nexport const makeTag = ({ isServer, useCSSOMInjection, target }: SheetOptions) => {\n if (isServer) {\n return new VirtualTag(target);\n } else if (useCSSOMInjection) {\n return new CSSOMTag(target);\n } else {\n return new TextTag(target);\n }\n};\n\nexport const CSSOMTag = class CSSOMTag implements Tag {\n element: HTMLStyleElement;\n\n sheet: CSSStyleSheet;\n\n length: number;\n\n constructor(target?: HTMLElement | undefined) {\n this.element = makeStyleTag(target);\n\n // Avoid Edge bug where empty style elements don't create sheets\n this.element.appendChild(document.createTextNode(''));\n\n this.sheet = getSheet(this.element);\n this.length = 0;\n }\n\n insertRule(index: number, rule: string): boolean {\n try {\n this.sheet.insertRule(rule, index);\n this.length++;\n return true;\n } catch (_error) {\n return false;\n }\n }\n\n deleteRule(index: number): void {\n this.sheet.deleteRule(index);\n this.length--;\n }\n\n getRule(index: number): string {\n const rule = this.sheet.cssRules[index];\n\n // Avoid IE11 quirk where cssText is inaccessible on some invalid rules\n if (rule && rule.cssText) {\n return rule.cssText;\n } else {\n return '';\n }\n }\n};\n\n/** A Tag that emulates the CSSStyleSheet API but uses text nodes */\nexport const TextTag = class TextTag implements Tag {\n element: HTMLStyleElement;\n nodes: NodeListOf<Node>;\n length: number;\n\n constructor(target?: HTMLElement | undefined) {\n this.element = makeStyleTag(target);\n this.nodes = this.element.childNodes;\n this.length = 0;\n }\n\n insertRule(index: number, rule: string) {\n if (index <= this.length && index >= 0) {\n const node = document.createTextNode(rule);\n const refNode = this.nodes[index];\n this.element.insertBefore(node, refNode || null);\n this.length++;\n return true;\n } else {\n return false;\n }\n }\n\n deleteRule(index: number) {\n this.element.removeChild(this.nodes[index]);\n this.length--;\n }\n\n getRule(index: number) {\n if (index < this.length) {\n return this.nodes[index].textContent as string;\n } else {\n return '';\n }\n }\n};\n\n/** A completely virtual (server-side) Tag that doesn't manipulate the DOM */\nexport const VirtualTag = class VirtualTag implements Tag {\n rules: string[];\n\n length: number;\n\n constructor(_target?: HTMLElement | undefined) {\n this.rules = [];\n this.length = 0;\n }\n\n insertRule(index: number, rule: string) {\n if (index <= this.length) {\n this.rules.splice(index, 0, rule);\n this.length++;\n return true;\n } else {\n return false;\n }\n }\n\n deleteRule(index: number) {\n this.rules.splice(index, 1);\n this.length--;\n }\n\n getRule(index: number) {\n if (index < this.length) {\n return this.rules[index];\n } else {\n return '';\n }\n }\n};\n","import { DISABLE_SPEEDY, IS_BROWSER } from '../constants';\nimport { EMPTY_OBJECT } from '../utils/empties';\nimport { setToString } from '../utils/setToString';\nimport { makeGroupedTag } from './GroupedTag';\nimport { getGroupForId } from './GroupIDAllocator';\nimport { outputSheet, rehydrateSheet } from './Rehydration';\nimport { makeTag } from './Tag';\nimport { GroupedTag, Sheet, SheetOptions } from './types';\n\nlet SHOULD_REHYDRATE = IS_BROWSER;\n\ntype SheetConstructorArgs = {\n isServer?: boolean;\n useCSSOMInjection?: boolean;\n target?: HTMLElement | undefined;\n};\n\ntype GlobalStylesAllocationMap = {\n [key: string]: number;\n};\ntype NamesAllocationMap = Map<string, Set<string>>;\n\nconst defaultOptions: SheetOptions = {\n isServer: !IS_BROWSER,\n useCSSOMInjection: !DISABLE_SPEEDY,\n};\n\n/** Contains the main stylesheet logic for stringification and caching */\nexport default class StyleSheet implements Sheet {\n gs: GlobalStylesAllocationMap;\n names: NamesAllocationMap;\n options: SheetOptions;\n server: boolean;\n tag?: GroupedTag | undefined;\n\n /** Register a group ID to give it an index */\n static registerId(id: string): number {\n return getGroupForId(id);\n }\n\n constructor(\n options: SheetConstructorArgs = EMPTY_OBJECT as Object,\n globalStyles: GlobalStylesAllocationMap = {},\n names?: NamesAllocationMap | undefined\n ) {\n this.options = {\n ...defaultOptions,\n ...options,\n };\n\n this.gs = globalStyles;\n this.names = new Map(names as NamesAllocationMap);\n this.server = !!options.isServer;\n\n // We rehydrate only once and use the sheet that is created first\n if (!this.server && IS_BROWSER && SHOULD_REHYDRATE) {\n SHOULD_REHYDRATE = false;\n rehydrateSheet(this);\n }\n\n setToString(this, () => outputSheet(this));\n }\n\n reconstructWithOptions(options: SheetConstructorArgs, withNames = true) {\n return new StyleSheet(\n { ...this.options, ...options },\n this.gs,\n (withNames && this.names) || undefined\n );\n }\n\n allocateGSInstance(id: string) {\n return (this.gs[id] = (this.gs[id] || 0) + 1);\n }\n\n /** Lazily initialises a GroupedTag for when it's actually needed */\n getTag() {\n return this.tag || (this.tag = makeGroupedTag(makeTag(this.options)));\n }\n\n /** Check whether a name is known for caching */\n hasNameForId(id: string, name: string): boolean {\n return this.names.has(id) && (this.names.get(id) as any).has(name);\n }\n\n /** Mark a group's name as known for caching */\n registerName(id: string, name: string) {\n getGroupForId(id);\n\n if (!this.names.has(id)) {\n const groupNames = new Set<string>();\n groupNames.add(name);\n this.names.set(id, groupNames);\n } else {\n (this.names.get(id) as any).add(name);\n }\n }\n\n /** Insert new rules which also marks the name as known */\n insertRules(id: string, name: string, rules: string | string[]) {\n this.registerName(id, name);\n this.getTag().insertRules(getGroupForId(id), rules);\n }\n\n /** Clears all cached names for a given group ID */\n clearNames(id: string) {\n if (this.names.has(id)) {\n (this.names.get(id) as any).clear();\n }\n }\n\n /** Clears all rules for a given group ID */\n clearRules(id: string) {\n this.getTag().clearGroup(getGroupForId(id));\n this.clearNames(id);\n }\n\n /** Clears the entire tag which deletes all rules but not its names */\n clearTag() {\n // NOTE: This does not clear the names, since it's only used during SSR\n // so that we can continuously output only new rules\n this.tag = undefined;\n }\n}\n","import * as stylis from 'stylis';\nimport { Stringifier } from '../types';\nimport { EMPTY_ARRAY, EMPTY_OBJECT } from './empties';\nimport throwStyledError from './error';\nimport { SEED, phash } from './hash';\n\nconst AMP_REGEX = /&/g;\nconst COMMENT_REGEX = /^\\s*\\/\\/.*$/gm;\n\nexport type ICreateStylisInstance = {\n options?: { namespace?: string | undefined; prefix?: boolean | undefined } | undefined;\n plugins?: stylis.Middleware[] | undefined;\n};\n\n/**\n * Takes an element and recurses through it's rules added the namespace to the start of each selector.\n * Takes into account media queries by recursing through child rules if they are present.\n */\nfunction recursivelySetNamepace(compiled: stylis.Element[], namespace: String): stylis.Element[] {\n return compiled.map(rule => {\n if (rule.type === 'rule') {\n // add the namespace to the start\n rule.value = `${namespace} ${rule.value}`;\n // add the namespace after each comma for subsequent selectors.\n rule.value = rule.value.replaceAll(',', `,${namespace} `);\n rule.props = (rule.props as string[]).map(prop => {\n return `${namespace} ${prop}`;\n });\n }\n\n if (Array.isArray(rule.children) && rule.type !== '@keyframes') {\n rule.children = recursivelySetNamepace(rule.children, namespace);\n }\n return rule;\n });\n}\n\nexport default function createStylisInstance(\n {\n options = EMPTY_OBJECT as object,\n plugins = EMPTY_ARRAY as unknown as stylis.Middleware[],\n }: ICreateStylisInstance = EMPTY_OBJECT as object\n) {\n let _componentId: string;\n let _selector: string;\n let _selectorRegexp: RegExp;\n\n const selfReferenceReplacer = (match: string, offset: number, string: string) => {\n if (\n /**\n * We only want to refer to the static class directly if the selector is part of a\n * self-reference selector `& + & { color: red; }`\n */\n string.startsWith(_selector) &&\n string.endsWith(_selector) &&\n string.replaceAll(_selector, '').length > 0\n ) {\n return `.${_componentId}`;\n }\n\n return match;\n };\n\n /**\n * When writing a style like\n *\n * & + & {\n * color: red;\n * }\n *\n * The second ampersand should be a reference to the static component class. stylis\n * has no knowledge of static class so we have to intelligently replace the base selector.\n *\n * https://github.com/thysultan/stylis.js/tree/v4.0.2#abstract-syntax-structure\n */\n const selfReferenceReplacementPlugin: stylis.Middleware = element => {\n if (element.type === stylis.RULESET && element.value.includes('&')) {\n (element.props as string[])[0] = element.props[0]\n // catch any hanging references that stylis missed\n .replace(AMP_REGEX, _selector)\n .replace(_selectorRegexp, selfReferenceReplacer);\n }\n };\n\n const middlewares = plugins.slice();\n\n middlewares.push(selfReferenceReplacementPlugin);\n\n /**\n * Enables automatic vendor-prefixing for styles.\n */\n if (options.prefix) {\n middlewares.push(stylis.prefixer);\n }\n\n middlewares.push(stylis.stringify);\n\n const stringifyRules: Stringifier = (\n css: string,\n selector = '',\n /**\n * This \"prefix\" referes to a _selector_ prefix.\n */\n prefix = '',\n componentId = '&'\n ) => {\n // stylis has no concept of state to be passed to plugins\n // but since JS is single-threaded, we can rely on that to ensure\n // these properties stay in sync with the current stylis run\n _componentId = componentId;\n _selector = selector;\n _selectorRegexp = new RegExp(`\\\\${_selector}\\\\b`, 'g');\n\n const flatCSS = css.replace(COMMENT_REGEX, '');\n let compiled = stylis.compile(\n prefix || selector ? `${prefix} ${selector} { ${flatCSS} }` : flatCSS\n );\n\n if (options.namespace) {\n compiled = recursivelySetNamepace(compiled, options.namespace);\n }\n\n const stack: string[] = [];\n\n stylis.serialize(\n compiled,\n stylis.middleware(middlewares.concat(stylis.rulesheet(value => stack.push(value))))\n );\n\n return stack;\n };\n\n stringifyRules.hash = plugins.length\n ? plugins\n .reduce((acc, plugin) => {\n if (!plugin.name) {\n throwStyledError(15);\n }\n\n return phash(acc, plugin.name);\n }, SEED)\n .toString()\n : '';\n\n return stringifyRules;\n}\n","import React, { useContext, useEffect, useMemo, useState } from 'react';\nimport shallowequal from 'shallowequal';\nimport type stylis from 'stylis';\nimport StyleSheet from '../sheet';\nimport { ShouldForwardProp, Stringifier } from '../types';\nimport createStylisInstance from '../utils/stylis';\n\nexport const mainSheet: StyleSheet = new StyleSheet();\nexport const mainStylis: Stringifier = createStylisInstance();\n\nexport type IStyleSheetContext = {\n shouldForwardProp?: ShouldForwardProp<'web'> | undefined;\n styleSheet: StyleSheet;\n stylis: Stringifier;\n};\n\nexport const StyleSheetContext = React.createContext<IStyleSheetContext>({\n shouldForwardProp: undefined,\n styleSheet: mainSheet,\n stylis: mainStylis,\n});\n\nexport const StyleSheetConsumer = StyleSheetContext.Consumer;\n\nexport type IStylisContext = Stringifier | void;\nexport const StylisContext = React.createContext<IStylisContext>(undefined);\nexport const StylisConsumer = StylisContext.Consumer;\n\nexport function useStyleSheetContext() {\n return useContext(StyleSheetContext);\n}\n\nexport type IStyleSheetManager = React.PropsWithChildren<{\n /**\n * If desired, you can pass this prop to disable \"speedy\" insertion mode, which\n * uses the browser [CSSOM APIs](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet).\n * When disabled, rules are inserted as simple text into style blocks.\n */\n disableCSSOMInjection?: undefined | boolean;\n /**\n * If you are working exclusively with modern browsers, vendor prefixes can often be omitted\n * to reduce the weight of CSS on the page.\n */\n enableVendorPrefixes?: undefined | boolean;\n /**\n * Provide an optional selector to be prepended to all generated style rules.\n */\n namespace?: undefined | string;\n /**\n * Create and provide your own `StyleSheet` if necessary for advanced SSR scenarios.\n */\n sheet?: undefined | StyleSheet;\n /**\n * Starting in v6, styled-components no longer does its own prop validation\n * and recommends use of transient props \"$prop\" to pass style-only props to\n * components. If for some reason you are not able to use transient props, a\n * prop validation function can be provided via `StyleSheetManager`, such as\n * `@emotion/is-prop-valid`.\n *\n * When the return value is `true`, props will be forwarded to the DOM/underlying\n * component. If return value is `false`, the prop will be discarded after styles\n * are calculated.\n *\n * Manually composing `styled.{element}.withConfig({shouldForwardProp})` will\n * override this default.\n */\n shouldForwardProp?: undefined | IStyleSheetContext['shouldForwardProp'];\n /**\n * An array of plugins to be run by stylis (style processor) during compilation.\n * Check out [what's available on npm*](https://www.npmjs.com/search?q=keywords%3Astylis).\n *\n * \\* The plugin(s) must be compatible with stylis v4 or above.\n */\n stylisPlugins?: undefined | stylis.Middleware[];\n /**\n * Provide an alternate DOM node to host generated styles; useful for iframes.\n */\n target?: undefined | HTMLElement;\n}>;\n\nexport function StyleSheetManager(props: IStyleSheetManager): JSX.Element {\n const [plugins, setPlugins] = useState(props.stylisPlugins);\n const { styleSheet } = useStyleSheetContext();\n\n const resolvedStyleSheet = useMemo(() => {\n let sheet = styleSheet;\n\n if (props.sheet) {\n sheet = props.sheet;\n } else if (props.target) {\n sheet = sheet.reconstructWithOptions({ target: props.target }, false);\n }\n\n if (props.disableCSSOMInjection) {\n sheet = sheet.reconstructWithOptions({ useCSSOMInjection: false });\n }\n\n return sheet;\n }, [props.disableCSSOMInjection, props.sheet, props.target, styleSheet]);\n\n const stylis = useMemo(\n () =>\n createStylisInstance({\n options: { namespace: props.namespace, prefix: props.enableVendorPrefixes },\n plugins,\n }),\n [props.enableVendorPrefixes, props.namespace, plugins]\n );\n\n useEffect(() => {\n if (!shallowequal(plugins, props.stylisPlugins)) setPlugins(props.stylisPlugins);\n }, [props.stylisPlugins]);\n\n const styleSheetContextValue = useMemo(\n () => ({\n shouldForwardProp: props.shouldForwardProp,\n styleSheet: resolvedStyleSheet,\n stylis,\n }),\n [props.shouldForwardProp, resolvedStyleSheet, stylis]\n );\n\n return (\n <StyleSheetContext.Provider value={styleSheetContextValue}>\n <StylisContext.Provider value={stylis}>{props.children}</StylisContext.Provider>\n </StyleSheetContext.Provider>\n );\n}\n","import StyleSheet from '../sheet';\nimport { Keyframes as KeyframesType, Stringifier } from '../types';\nimport styledError from '../utils/error';\nimport { setToString } from '../utils/setToString';\nimport { mainStylis } from './StyleSheetManager';\n\nexport default class Keyframes implements KeyframesType {\n id: string;\n name: string;\n rules: string;\n\n constructor(name: string, rules: string) {\n this.name = name;\n this.id = `sc-keyframes-${name}`;\n this.rules = rules;\n\n setToString(this, () => {\n throw styledError(12, String(this.name));\n });\n }\n\n inject = (styleSheet: StyleSheet, stylisInstance: Stringifier = mainStylis): void => {\n const resolvedName = this.name + stylisInstance.hash;\n\n if (!styleSheet.hasNameForId(this.id, resolvedName)) {\n styleSheet.insertRules(\n this.id,\n resolvedName,\n stylisInstance(this.rules, resolvedName, '@keyframes')\n );\n }\n };\n\n getName(stylisInstance: Stringifier = mainStylis): string {\n return this.name + stylisInstance.hash;\n }\n}\n","const isUpper = (c: string) => c >= 'A' && c <= 'Z';\n\n/**\n * Hyphenates a camelcased CSS property name, for example:\n *\n * > hyphenateStyleName('backgroundColor')\n * < \"background-color\"\n * > hyphenateStyleName('MozTransition')\n * < \"-moz-transition\"\n * > hyphenateStyleName('msTransition')\n * < \"-ms-transition\"\n *\n * As Modernizr suggests (http://modernizr.com/docs/#prefixed), an `ms` prefix\n * is converted to `-ms-`.\n */\nexport default function hyphenateStyleName(string: string): string {\n let output = '';\n\n for (let i = 0; i < string.length; i++) {\n const c = string[i];\n // Check for CSS variable prefix\n if (i === 1 && c === '-' && string[0] === '-') {\n return string;\n }\n\n if (isUpper(c)) {\n output += '-' + c.toLowerCase();\n } else {\n output += c;\n }\n }\n\n return output.startsWith('ms-') ? '-' + output : output;\n}\n","import Keyframes from '../models/Keyframes';\nimport StyleSheet from '../sheet';\nimport {\n AnyComponent,\n Dict,\n ExecutionContext,\n Interpolation,\n IStyledComponent,\n RuleSet,\n Stringifier,\n StyledObject,\n} from '../types';\nimport addUnitIfNeeded from './addUnitIfNeeded';\nimport { EMPTY_ARRAY } from './empties';\nimport getComponentName from './getComponentName';\nimport hyphenate from './hyphenateStyleName';\nimport isFunction from './isFunction';\nimport isPlainObject from './isPlainObject';\nimport isStatelessFunction from './isStatelessFunction';\nimport isStyledComponent from './isStyledComponent';\n\n/**\n * It's falsish not falsy because 0 is allowed.\n */\nconst isFalsish = (chunk: any): chunk is undefined | null | false | '' =>\n chunk === undefined || chunk === null || chunk === false || chunk === '';\n\nexport const objToCssArray = (obj: Dict<any>): string[] => {\n const rules = [];\n\n for (const key in obj) {\n const val = obj[key];\n if (!obj.hasOwnProperty(key) || isFalsish(val)) continue;\n\n // @ts-expect-error Property 'isCss' does not exist on type 'any[]'\n if ((Array.isArray(val) && val.isCss) || isFunction(val)) {\n rules.push(`${hyphenate(key)}:`, val, ';');\n } else if (isPlainObject(val)) {\n rules.push(`${key} {`, ...objToCssArray(val), '}');\n } else {\n rules.push(`${hyphenate(key)}: ${addUnitIfNeeded(key, val)};`);\n }\n }\n\n return rules;\n};\n\nexport default function flatten<Props extends object>(\n chunk: Interpolation<object>,\n executionContext?: (ExecutionContext & Props) | undefined,\n styleSheet?: StyleSheet | undefined,\n stylisInstance?: Stringifier | undefined\n): RuleSet<Props> {\n if (isFalsish(chunk)) {\n return [];\n }\n\n /* Handle other components */\n if (isStyledComponent(chunk)) {\n return [`.${(chunk as unknown as IStyledComponent<'web', any>).styledComponentId}`];\n }\n\n /* Either execute or defer the function */\n if (isFunction(chunk)) {\n if (isStatelessFunction(chunk) && executionContext) {\n const result = chunk(executionContext);\n\n if (\n process.env.NODE_ENV !== 'production' &&\n typeof result === 'object' &&\n !Array.isArray(result) &&\n !(result instanceof Keyframes) &&\n !isPlainObject(result) &&\n result !== null\n ) {\n console.error(\n `${getComponentName(\n chunk as AnyComponent\n )} is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.`\n );\n }\n\n return flatten<Props>(result, executionContext, styleSheet, stylisInstance);\n } else {\n return [chunk as unknown as IStyledComponent<'web'>];\n }\n }\n\n if (chunk instanceof Keyframes) {\n if (styleSheet) {\n chunk.inject(styleSheet, stylisInstance);\n return [chunk.getName(stylisInstance)];\n } else {\n return [chunk];\n }\n }\n\n /* Handle objects */\n if (isPlainObject(chunk)) {\n return objToCssArray(chunk as StyledObject<Props>);\n }\n\n if (!Array.isArray(chunk)) {\n return [chunk.toString()];\n }\n\n return flatMap(chunk, chunklet =>\n flatten<Props>(chunklet, executionContext, styleSheet, stylisInstance)\n );\n}\n\nfunction flatMap<T, U>(array: T[], transform: (value: T, index: number, array: T[]) => U[]): U[] {\n return Array.prototype.concat.apply(EMPTY_ARRAY, array.map(transform));\n}\n","import unitless from '@emotion/unitless';\n\n// Taken from https://github.com/facebook/react/blob/b87aabdfe1b7461e7331abb3601d9e6bb27544bc/packages/react-dom/src/shared/dangerousStyleValue.js\nexport default function addUnitIfNeeded(name: string, value: any) {\n // https://github.com/amilajack/eslint-plugin-flowtype-errors/issues/133\n if (value == null || typeof value === 'boolean' || value === '') {\n return '';\n }\n\n if (typeof value === 'number' && value !== 0 && !(name in unitless) && !name.startsWith('--')) {\n return `${value}px`; // Presumes implicit 'px' suffix for unitless numbers except for CSS variables\n }\n\n return String(value).trim();\n}\n","import isFunction from './isFunction';\n\nexport default function isStatelessFunction(test: any): test is Function {\n return isFunction(test) && !(test.prototype && test.prototype.isReactComponent);\n}\n","import { RuleSet } from '../types';\nimport isFunction from './isFunction';\nimport isStyledComponent from './isStyledComponent';\n\nexport default function isStaticRules<Props extends object>(rules: RuleSet<Props>) {\n for (let i = 0; i < rules.length; i += 1) {\n const rule = rules[i];\n\n if (isFunction(rule) && !isStyledComponent(rule)) {\n // functions are allowed to be static if they're just being\n // used to get the classname of a nested styled component\n return false;\n }\n }\n\n return true;\n}\n","import { SC_VERSION } from '../constants';\nimport StyleSheet from '../sheet';\nimport { ExecutionContext, RuleSet, Stringifier } from '../types';\nimport flatten from '../utils/flatten';\nimport generateName from '../utils/generateAlphabeticName';\nimport { hash, phash } from '../utils/hash';\nimport isStaticRules from '../utils/isStaticRules';\nimport { joinStringArray, joinStrings } from '../utils/joinStrings';\n\nconst SEED = hash(SC_VERSION);\n\n/**\n * ComponentStyle is all the CSS-specific stuff, not the React-specific stuff.\n */\nexport default class ComponentStyle {\n baseHash: number;\n baseStyle: ComponentStyle | null | undefined;\n componentId: string;\n isStatic: boolean;\n rules: RuleSet<any>;\n staticRulesId: string;\n\n constructor(rules: RuleSet<any>, componentId: string, baseStyle?: ComponentStyle | undefined) {\n this.rules = rules;\n this.staticRulesId = '';\n this.isStatic =\n process.env.NODE_ENV === 'production' &&\n (baseStyle === undefined || baseStyle.isStatic) &&\n isStaticRules(rules);\n this.componentId = componentId;\n this.baseHash = phash(SEED, componentId);\n this.baseStyle = baseStyle;\n\n // NOTE: This registers the componentId, which ensures a consistent order\n // for this component's styles compared to others\n StyleSheet.registerId(componentId);\n }\n\n generateAndInjectStyles(\n executionContext: ExecutionContext,\n styleSheet: StyleSheet,\n stylis: Stringifier\n ): string {\n let names = this.baseStyle\n ? this.baseStyle.generateAndInjectStyles(executionContext, styleSheet, stylis)\n : '';\n\n // force dynamic classnames if user-supplied stylis plugins are in use\n if (this.isStatic && !stylis.hash) {\n if (this.staticRulesId && styleSheet.hasNameForId(this.componentId, this.staticRulesId)) {\n names = joinStrings(names, this.staticRulesId);\n } else {\n const cssStatic = joinStringArray(\n flatten(this.rules, executionContext, styleSheet, stylis) as string[]\n );\n const name = generateName(phash(this.baseHash, cssStatic) >>> 0);\n\n if (!styleSheet.hasNameForId(this.componentId, name)) {\n const cssStaticFormatted = stylis(cssStatic, `.${name}`, undefined, this.componentId);\n styleSheet.insertRules(this.componentId, name, cssStaticFormatted);\n }\n\n names = joinStrings(names, name);\n this.staticRulesId = name;\n }\n } else {\n let dynamicHash = phash(this.baseHash, stylis.hash);\n let css = '';\n\n for (let i = 0; i < this.rules.length; i++) {\n const partRule = this.rules[i];\n\n if (typeof partRule === 'string') {\n css += partRule;\n\n if (process.env.NODE_ENV !== 'production') dynamicHash = phash(dynamicHash, partRule);\n } else if (partRule) {\n const partString = joinStringArray(\n flatten(partRule, executionContext, styleSheet, stylis) as string[]\n );\n // The same value can switch positions in the array, so we include \"i\" in the hash.\n dynamicHash = phash(dynamicHash, partString + i);\n css += partString;\n }\n }\n\n if (css) {\n const name = generateName(dynamicHash >>> 0);\n\n if (!styleSheet.hasNameForId(this.componentId, name)) {\n styleSheet.insertRules(\n this.componentId,\n name,\n stylis(css, `.${name}`, undefined, this.componentId)\n );\n }\n\n names = joinStrings(names, name);\n }\n }\n\n return names;\n }\n}\n","import React, { useContext, useMemo } from 'react';\nimport styledError from '../utils/error';\nimport isFunction from '../utils/isFunction';\n\n/**\n * Override DefaultTheme to get accurate typings for your project.\n *\n * ```\n * // create styled-components.d.ts in your project source\n * // if it isn't being picked up, check tsconfig compilerOptions.types\n * import type { CSSProp } from \"styled-components\";\n * import Theme from './theme';\n *\n * type ThemeType = typeof Theme;\n *\n * declare module \"styled-components\" {\n * export interface DefaultTheme extends ThemeType {}\n * }\n *\n * declare module \"react\" {\n * interface DOMAttributes<T> {\n * css?: CSSProp;\n * }\n * }\n * ```\n */\nexport interface DefaultTheme {\n [key: string]: any;\n}\n\ntype ThemeFn = (outerTheme?: DefaultTheme | undefined) => DefaultTheme;\ntype ThemeArgument = DefaultTheme | ThemeFn;\n\ntype Props = {\n children?: React.ReactNode;\n theme: ThemeArgument;\n};\n\nexport const ThemeContext = React.createContext<DefaultTheme | undefined>(undefined);\n\nexport const ThemeConsumer = ThemeContext.Consumer;\n\nfunction mergeTheme(theme: ThemeArgument, outerTheme?: DefaultTheme | undefined): DefaultTheme {\n if (!theme) {\n throw styledError(14);\n }\n\n if (isFunction(theme)) {\n const themeFn = theme as ThemeFn;\n const mergedTheme = themeFn(outerTheme);\n\n if (\n process.env.NODE_ENV !== 'production' &&\n (mergedTheme === null || Array.isArray(mergedTheme) || typeof mergedTheme !== 'object')\n ) {\n throw styledError(7);\n }\n\n return mergedTheme;\n }\n\n if (Array.isArray(theme) || typeof theme !== 'object') {\n throw styledError(8);\n }\n\n return outerTheme ? { ...outerTheme, ...theme } : theme;\n}\n\n/**\n * Returns the current theme (as provided by the closest ancestor `ThemeProvider`.)\n *\n * If no `ThemeProvider` is found, the function will error. If you need access to the theme in an\n * uncertain composition scenario, `React.useContext(ThemeContext)` will not emit an error if there\n * is no `ThemeProvider` ancestor.\n */\nexport function useTheme(): DefaultTheme {\n const theme = useContext(ThemeContext);\n\n if (!theme) {\n throw styledError(18);\n }\n\n return theme;\n}\n\n/**\n * Provide a theme to an entire react component tree via context\n */\nexport default function ThemeProvider(props: Props): JSX.Element | null {\n const outerTheme = React.useContext(ThemeContext);\n const themeContext = useMemo(\n () => mergeTheme(props.theme, outerTheme),\n [props.theme, outerTheme]\n );\n\n if (!props.children) {\n return null;\n }\n\n return <ThemeContext.Provider value={themeContext}>{props.children}</ThemeContext.Provider>;\n}\n","import isPropValid from '@emotion/is-prop-valid';\nimport React, { createElement, Ref, useDebugValue } from 'react';\nimport { SC_VERSION } from '../constants';\nimport type {\n AnyComponent,\n Attrs,\n BaseObject,\n Dict,\n ExecutionContext,\n ExecutionProps,\n IStyledComponent,\n IStyledComponentFactory,\n IStyledStatics,\n OmitNever,\n RuleSet,\n StyledOptions,\n WebTarget,\n} from '../types';\nimport { checkDynamicCreation } from '../utils/checkDynamicCreation';\nimport createWarnTooManyClasses from '../utils/createWarnTooManyClasses';\nimport determineTheme from '../utils/determineTheme';\nimport domElements from '../utils/domElements';\nimport { EMPTY_ARRAY, EMPTY_OBJECT } from '../utils/empties';\nimport escape from '../utils/escape';\nimport generateComponentId from '../utils/generateComponentId';\nimport generateDisplayName from '../utils/generateDisplayName';\nimport hoist from '../utils/hoist';\nimport isFunction from '../utils/isFunction';\nimport isStyledComponent from '../utils/isStyledComponent';\nimport isTag from '../utils/isTag';\nimport { joinStrings } from '../utils/joinStrings';\nimport merge from '../utils/mixinDeep';\nimport { setToString } from '../utils/setToString';\nimport ComponentStyle from './ComponentStyle';\nimport { useStyleSheetContext } from './StyleSheetManager';\nimport { DefaultTheme, ThemeContext } from './ThemeProvider';\n\nconst identifiers: { [key: string]: number } = {};\n\n/* We depend on components having unique IDs */\nfunction generateId(\n displayName?: string | undefined,\n parentComponentId?: string | undefined\n): string {\n const name = typeof displayName !== 'string' ? 'sc' : escape(displayName);\n // Ensure that no displayName can lead to duplicate componentIds\n identifiers[name] = (identifiers[name] || 0) + 1;\n\n const componentId = `${name}-${generateComponentId(\n // SC_VERSION gives us isolation between multiple runtimes on the page at once\n // this is improved further with use of the babel plugin \"namespace\" feature\n SC_VERSION + name + identifiers[name]\n )}`;\n\n return parentComponentId ? `${parentComponentId}-${componentId}` : componentId;\n}\n\nfunction useInjectedStyle<T extends ExecutionContext>(\n componentStyle: ComponentStyle,\n resolvedAttrs: T\n) {\n const ssc = useStyleSheetContext();\n\n const className = componentStyle.generateAndInjectStyles(\n resolvedAttrs,\n ssc.styleSheet,\n ssc.stylis\n );\n\n if (process.env.NODE_ENV !== 'production') useDebugValue(className);\n\n return className;\n}\n\nfunction resolveContext<Props extends object>(\n attrs: Attrs<React.HTMLAttributes<Element> & Props>[],\n props: React.HTMLAttributes<Element> & ExecutionProps & Props,\n theme: DefaultTheme\n) {\n const context: React.HTMLAttributes<Element> &\n ExecutionContext &\n Props & { [key: string]: any; class?: string; ref?: React.Ref<any> } = {\n ...props,\n // unset, add `props.className` back at the end so props always \"wins\"\n className: undefined,\n theme,\n };\n let attrDef;\n\n for (let i = 0; i < attrs.length; i += 1) {\n attrDef = attrs[i];\n const resolvedAttrDef = isFunction(attrDef) ? attrDef(context) : attrDef;\n\n for (const key in resolvedAttrDef) {\n context[key as keyof typeof context] =\n key === 'className'\n ? joinStrings(context[key] as string | undefined, resolvedAttrDef[key] as string)\n : key === 'style'\n ? { ...context[key], ...resolvedAttrDef[key] }\n : resolvedAttrDef[key as keyof typeof resolvedAttrDef];\n }\n }\n\n if (props.className) {\n context.className = joinStrings(context.className, props.className);\n }\n\n return context;\n}\n\nlet seenUnknownProps = new Set();\n\nfunction useStyledComponentImpl<Props extends object>(\n forwardedComponent: IStyledComponent<'web', Props>,\n props: ExecutionProps & Props,\n forwardedRef: Ref<Element>\n) {\n const {\n attrs: componentAttrs,\n componentStyle,\n defaultProps,\n foldedComponentIds,\n styledComponentId,\n target,\n } = forwardedComponent;\n\n const contextTheme = React.useContext(ThemeContext);\n const ssc = useStyleSheetContext();\n const shouldForwardProp = forwardedComponent.shouldForwardProp || ssc.shouldForwardProp;\n\n if (process.env.NODE_ENV !== 'production') useDebugValue(styledComponentId);\n\n // NOTE: the non-hooks version only subscribes to this when !componentStyle.isStatic,\n // but that'd be against the rules-of-hooks. We could be naughty and do it anyway as it\n // should be an immutable value, but behave for now.\n const theme = determineTheme(props, contextTheme, defaultProps) || EMPTY_OBJECT;\n\n const context = resolveContext<Props>(componentAttrs, props, theme);\n const elementToBeCreated: WebTarget = context.as || target;\n const propsForElement: Dict<any> = {};\n\n for (const key in context) {\n if (context[key] === undefined) {\n // Omit undefined values from props passed to wrapped element.\n // This enables using .attrs() to remove props, for example.\n } else if (key[0] === '$' || key === 'as' || (key === 'theme' && context.theme === theme)) {\n // Omit transient props and execution props.\n } else if (key === 'forwardedAs') {\n propsForElement.as = context.forwardedAs;\n } else if (!shouldForwardProp || shouldForwardProp(key, elementToBeCreated)) {\n propsForElement[key] = context[key];\n\n if (\n !shouldForwardProp &&\n process.env.NODE_ENV === 'development' &&\n !isPropValid(key) &&\n !seenUnknownProps.has(key) &&\n // Only warn on DOM Element.\n domElements.has(elementToBeCreated as any)\n ) {\n seenUnknownProps.add(key);\n console.warn(\n `styled-components: it looks like an unknown prop \"${key}\" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via \\`<StyleSheetManager shouldForwardProp={...}>\\` (connect an API like \\`@emotion/is-prop-valid\\`) or consider using transient props (\\`$\\` prefix for automatic filtering.)`\n );\n }\n }\n }\n\n const generatedClassName = useInjectedStyle(componentStyle, context);\n\n if (process.env.NODE_ENV !== 'production' && forwardedComponent.warnTooManyClasses) {\n forwardedComponent.warnTooManyClasses(generatedClassName);\n }\n\n let classString = joinStrings(foldedComponentIds, styledComponentId);\n if (generatedClassName) {\n classString += ' ' + generatedClassName;\n }\n if (context.className) {\n classString += ' ' + context.className;\n }\n\n propsForElement[\n // handle custom elements which React doesn't properly alias\n isTag(elementToBeCreated) &&\n !domElements.has(elementToBeCreated as Extract<typeof domElements, string>)\n ? 'class'\n : 'className'\n ] = classString;\n\n propsForElement.ref = forwardedRef;\n\n return createElement(elementToBeCreated, propsForElement);\n}\n\nfunction createStyledComponent<\n Target extends WebTarget,\n OuterProps extends object,\n Statics extends object = BaseObject,\n>(\n target: Target,\n options: StyledOptions<'web', OuterProps>,\n rules: RuleSet<OuterProps>\n): ReturnType<IStyledComponentFactory<'web', Target, OuterProps, Statics>> {\n const isTargetStyledComp = isStyledComponent(target);\n const styledComponentTarget = target as IStyledComponent<'web', OuterProps>;\n const isCompositeComponent = !isTag(target);\n\n const {\n attrs = EMPTY_ARRAY,\n componentId = generateId(options.displayName, options.parentComponentId),\n displayName = generateDisplayName(target),\n } = options;\n\n const styledComponentId =\n options.displayName && options.componentId\n ? `${escape(options.displayName)}-${options.componentId}`\n : options.componentId || componentId;\n\n // fold the underlying StyledComponent attrs up (implicit extend)\n const finalAttrs =\n isTargetStyledComp && styledComponentTarget.attrs\n ? styledComponentTarget.attrs.concat(attrs as unknown as Attrs<OuterProps>[]).filter(Boolean)\n : (attrs as Attrs<OuterProps>[]);\n\n let { shouldForwardProp } = options;\n\n if (isTargetStyledComp && styledComponentTarget.shouldForwardProp) {\n const shouldForwardPropFn = styledComponentTarget.shouldForwardProp;\n\n if (options.shouldForwardProp) {\n const passedShouldForwardPropFn = options.shouldForwardProp;\n\n // compose nested shouldForwardProp calls\n shouldForwardProp = (prop, elementToBeCreated) =>\n shouldForwardPropFn(prop, elementToBeCreated) &&\n passedShouldForwardPropFn(prop, elementToBeCreated);\n } else {\n shouldForwardProp = shouldForwardPropFn;\n }\n }\n\n const componentStyle = new ComponentStyle(\n rules,\n styledComponentId,\n isTargetStyledComp ? (styledComponentTarget.componentStyle as ComponentStyle) : undefined\n );\n\n function forwardRefRender(props: ExecutionProps & OuterProps, ref: Ref<Element>) {\n return useStyledComponentImpl<OuterProps>(WrappedStyledComponent, props, ref);\n }\n\n forwardRefRender.displayName = displayName;\n\n /**\n * forwardRef creates a new interim component, which we'll take advantage of\n * instead of extending ParentComponent to create _another_ interim class\n */\n let WrappedStyledComponent = React.forwardRef(forwardRefRender) as unknown as IStyledComponent<\n 'web',\n any\n > &\n Statics;\n WrappedStyledComponent.attrs = finalAttrs;\n WrappedStyledComponent.componentStyle = componentStyle;\n WrappedStyledComponent.displayName = displayName;\n WrappedStyledComponent.shouldForwardProp = shouldForwardProp;\n\n // this static is used to preserve the cascade of static classes for component selector\n // purposes; this is especially important with usage of the css prop\n WrappedStyledComponent.foldedComponentIds = isTargetStyledComp\n ? joinStrings(styledComponentTarget.foldedComponentIds, styledComponentTarget.styledComponentId)\n : '';\n\n WrappedStyledComponent.styledComponentId = styledComponentId;\n\n // fold the underlying StyledComponent target up since we folded the styles\n WrappedStyledComponent.target = isTargetStyledComp ? styledComponentTarget.target : target;\n\n Object.defineProperty(WrappedStyledComponent, 'defaultProps', {\n get() {\n return this._foldedDefaultProps;\n },\n\n set(obj) {\n this._foldedDefaultProps = isTargetStyledComp\n ? merge({}, styledComponentTarget.defaultProps, obj)\n : obj;\n },\n });\n\n if (process.env.NODE_ENV !== 'production') {\n checkDynamicCreation(displayName, styledComponentId);\n\n WrappedStyledComponent.warnTooManyClasses = createWarnTooManyClasses(\n displayName,\n styledComponentId\n );\n }\n\n setToString(WrappedStyledComponent, () => `.${WrappedStyledComponent.styledComponentId}`);\n\n if (isCompositeComponent) {\n const compositeComponentTarget = target as AnyComponent;\n\n hoist<typeof WrappedStyledComponent, typeof compositeComponentTarget>(\n WrappedStyledComponent,\n compositeComponentTarget,\n {\n // all SC-specific things should not be hoisted\n attrs: true,\n componentStyle: true,\n displayName: true,\n foldedComponentIds: true,\n shouldForwardProp: true,\n styledComponentId: true,\n target: true,\n } as { [key in keyof OmitNever<IStyledStatics<'web', OuterProps>>]: true }\n );\n }\n\n return WrappedStyledComponent;\n}\n\nexport default createStyledComponent;\n","import { StyledTarget } from '../types';\nimport getComponentName from './getComponentName';\nimport isTag from './isTag';\n\nexport default function generateDisplayName(target: StyledTarget<any>) {\n return isTag(target) ? `styled.${target}` : `Styled(${getComponentName(target)})`;\n}\n","import { Interpolation } from '../types';\n\nexport default function interleave<Props extends object>(\n strings: readonly string[],\n interpolations: Interpolation<Props>[]\n): Interpolation<Props>[] {\n const result: Interpolation<Props>[] = [strings[0]];\n\n for (let i = 0, len = interpolations.length; i < len; i += 1) {\n result.push(interpolations[i], strings[i + 1]);\n }\n\n return result;\n}\n","import {\n BaseObject,\n Interpolation,\n NoInfer,\n RuleSet,\n StyledObject,\n StyleFunction,\n Styles,\n} from '../types';\nimport { EMPTY_ARRAY } from '../utils/empties';\nimport flatten from '../utils/flatten';\nimport interleave from '../utils/interleave';\nimport isFunction from '../utils/isFunction';\nimport isPlainObject from '../utils/isPlainObject';\n\n/**\n * Used when flattening object styles to determine if we should\n * expand an array of styles.\n */\nconst addTag = <T extends RuleSet<any>>(arg: T): T & { isCss: true } =>\n Object.assign(arg, { isCss: true } as const);\n\nfunction css(styles: Styles<object>, ...interpolations: Interpolation<object>[]): RuleSet<object>;\nfunction css<Props extends object>(\n styles: Styles<NoInfer<Props>>,\n ...interpolations: Interpolation<NoInfer<Props>>[]\n): RuleSet<NoInfer<Props>>;\nfunction css<Props extends object = BaseObject>(\n styles: Styles<NoInfer<Props>>,\n ...interpolations: Interpolation<NoInfer<Props>>[]\n): RuleSet<NoInfer<Props>> {\n if (isFunction(styles) || isPlainObject(styles)) {\n const styleFunctionOrObject = styles as StyleFunction<Props> | StyledObject<Props>;\n\n return addTag(\n flatten<Props>(\n interleave<Props>(EMPTY_ARRAY, [\n styleFunctionOrObject,\n ...interpolations,\n ]) as Interpolation<object>\n )\n );\n }\n\n const styleStringArray = styles as TemplateStringsArray;\n\n if (\n interpolations.length === 0 &&\n styleStringArray.length === 1 &&\n typeof styleStringArray[0] === 'string'\n ) {\n return flatten<Props>(styleStringArray);\n }\n\n return addTag(\n flatten<Props>(interleave<Props>(styleStringArray, interpolations) as Interpolation<object>)\n );\n}\n\nexport default css;\n","import {\n Attrs,\n BaseObject,\n ExecutionProps,\n Interpolation,\n IStyledComponent,\n IStyledComponentFactory,\n KnownTarget,\n NoInfer,\n Runtime,\n StyledOptions,\n StyledTarget,\n Styles,\n Substitute,\n} from '../types';\nimport { EMPTY_OBJECT } from '../utils/empties';\nimport styledError from '../utils/error';\nimport css from './css';\n\ntype AttrsResult<T extends Attrs<any>> = T extends (...args: any) => infer P\n ? P extends object\n ? P\n : never\n : T extends object\n ? T\n : never;\n\n/**\n * Based on Attrs being a simple object or function that returns\n * a prop object, inspect the attrs result and attempt to extract\n * any \"as\" prop usage to modify the runtime target.\n */\ntype AttrsTarget<\n R extends Runtime,\n T extends Attrs<any>,\n FallbackTarget extends StyledTarget<R>,\n Result extends ExecutionProps = AttrsResult<T>,\n> = Result extends { as: infer RuntimeTarget }\n ? RuntimeTarget extends KnownTarget\n ? RuntimeTarget\n : FallbackTarget\n : FallbackTarget;\n\nexport interface Styled<\n R extends Runtime,\n Target extends StyledTarget<R>,\n OuterProps extends object,\n OuterStatics extends object = BaseObject,\n> {\n <Props extends object = BaseObject, Statics extends object = BaseObject>(\n initialStyles: Styles<Substitute<OuterProps, NoInfer<Props>>>,\n ...interpolations: Interpolation<Substitute<OuterProps, NoInfer<Props>>>[]\n ): IStyledComponent<R, Substitute<OuterProps, Props>> &\n OuterStatics &\n Statics &\n (R extends 'web'\n ? Target extends string\n ? {}\n : Omit<Target, keyof React.Component<any>>\n : {});\n\n attrs: <\n Props extends object = BaseObject,\n PrivateMergedProps extends object = Substitute<OuterProps, Props>,\n PrivateAttrsArg extends Attrs<PrivateMergedProps> = Attrs<PrivateMergedProps>,\n PrivateResolvedTarget extends StyledTarget<R> = AttrsTarget<R, PrivateAttrsArg, Target>,\n >(\n attrs: PrivateAttrsArg\n ) => Styled<\n R,\n PrivateResolvedTarget,\n PrivateResolvedTarget extends KnownTarget\n ? Substitute<\n Substitute<OuterProps, React.ComponentPropsWithRef<PrivateResolvedTarget>>,\n Props\n >\n : PrivateMergedProps,\n OuterStatics\n >;\n\n withConfig: (config: StyledOptions<R, OuterProps>) => Styled<R, Target, OuterProps, OuterStatics>;\n}\n\nexport default function constructWithOptions<\n R extends Runtime,\n Target extends StyledTarget<R>,\n OuterProps extends object = Target extends KnownTarget\n ? React.ComponentPropsWithRef<Target>\n : BaseObject,\n OuterStatics extends object = BaseObject,\n>(\n componentConstructor: IStyledComponentFactory<R, StyledTarget<R>, object, any>,\n tag: StyledTarget<R>,\n options: StyledOptions<R, OuterProps> = EMPTY_OBJECT\n): Styled<R, Target, OuterProps, OuterStatics> {\n /**\n * We trust that the tag is a valid component as long as it isn't\n * falsish. Typically the tag here is a string or function (i.e.\n * class or pure function component), however a component may also be\n * an object if it uses another utility, e.g. React.memo. React will\n * output an appropriate warning however if the `tag` isn't valid.\n */\n if (!tag) {\n throw styledError(1, tag);\n }\n\n /* This is callable directly as a template function */\n const templateFunction = <Props extends object = BaseObject, Statics extends object = BaseObject>(\n initialStyles: Styles<Substitute<OuterProps, Props>>,\n ...interpolations: Interpolation<Substitute<OuterProps, Props>>[]\n ) =>\n componentConstructor<Substitute<OuterProps, Props>, Statics>(\n tag,\n options as StyledOptions<R, Substitute<OuterProps, Props>>,\n css<Substitute<OuterProps, Props>>(initialStyles, ...interpolations)\n );\n\n /**\n * Attrs allows for accomplishing two goals:\n *\n * 1. Backfilling props at runtime more expressively than defaultProps\n * 2. Amending the prop interface of a wrapped styled component\n */\n templateFunction.attrs = <\n Props extends object = BaseObject,\n PrivateMergedProps extends object = Substitute<OuterProps, Props>,\n PrivateAttrsArg extends Attrs<PrivateMergedProps> = Attrs<PrivateMergedProps>,\n PrivateResolvedTarget extends StyledTarget<R> = AttrsTarget<R, PrivateAttrsArg, Target>,\n >(\n attrs: PrivateAttrsArg\n ) =>\n constructWithOptions<\n R,\n PrivateResolvedTarget,\n PrivateResolvedTarget extends KnownTarget\n ? Substitute<\n Substitute<OuterProps, React.ComponentPropsWithRef<PrivateResolvedTarget>>,\n Props\n >\n : PrivateMergedProps,\n OuterStatics\n >(componentConstructor, tag, {\n ...options,\n attrs: Array.prototype.concat(options.attrs, attrs).filter(Boolean),\n });\n\n /**\n * If config methods are called, wrap up a new template function\n * and merge options.\n */\n templateFunction.withConfig = (config: StyledOptions<R, OuterProps>) =>\n constructWithOptions<R, Target, OuterProps, OuterStatics>(componentConstructor, tag, {\n ...options,\n ...config,\n });\n\n return templateFunction;\n}\n","import { ComponentPropsWithRef } from 'react';\nimport createStyledComponent from '../models/StyledComponent';\nimport { BaseObject, KnownTarget, WebTarget } from '../types';\nimport domElements, { SupportedHTMLElements } from '../utils/domElements';\nimport constructWithOptions, { Styled as StyledInstance } from './constructWithOptions';\n\nconst baseStyled = <Target extends WebTarget, InjectedProps extends object = BaseObject>(\n tag: Target\n) =>\n constructWithOptions<\n 'web',\n Target,\n Target extends KnownTarget ? ComponentPropsWithRef<Target> & InjectedProps : InjectedProps\n >(createStyledComponent, tag);\n\nconst styled = baseStyled as typeof baseStyled & {\n [E in SupportedHTMLElements]: StyledInstance<'web', E, JSX.IntrinsicElements[E]>;\n};\n\n// Shorthands for all valid HTML Elements\ndomElements.forEach(domElement => {\n // @ts-expect-error some react typing bs\n styled[domElement] = baseStyled<typeof domElement>(domElement);\n});\n\nexport default styled;\nexport { StyledInstance };\n\n/**\n * This is the type of the `styled` HOC.\n */\nexport type Styled = typeof styled;\n\n/**\n * Use this higher-order type for scenarios where you are wrapping `styled`\n * and providing extra props as a third-party library.\n */\nexport type LibraryStyled<LibraryProps extends object = BaseObject> = <Target extends WebTarget>(\n tag: Target\n) => typeof baseStyled<Target, LibraryProps>;\n","import StyleSheet from '../sheet';\nimport { ExecutionContext, RuleSet, Stringifier } from '../types';\nimport flatten from '../utils/flatten';\nimport isStaticRules from '../utils/isStaticRules';\nimport { joinStringArray } from '../utils/joinStrings';\n\nexport default class GlobalStyle<Props extends object> {\n componentId: string;\n isStatic: boolean;\n rules: RuleSet<Props>;\n\n constructor(rules: RuleSet<Props>, componentId: string) {\n this.rules = rules;\n this.componentId = componentId;\n this.isStatic = isStaticRules(rules);\n\n // pre-register the first instance to ensure global styles\n // load before component ones\n StyleSheet.registerId(this.componentId + 1);\n }\n\n createStyles(\n instance: number,\n executionContext: ExecutionContext & Props,\n styleSheet: StyleSheet,\n stylis: Stringifier\n ): void {\n const flatCSS = joinStringArray(\n flatten(this.rules as RuleSet<object>, executionContext, styleSheet, stylis) as string[]\n );\n const css = stylis(flatCSS, '');\n const id = this.componentId + instance;\n\n // NOTE: We use the id as a name as well, since these rules never change\n styleSheet.insertRules(id, id, css);\n }\n\n removeStyles(instance: number, styleSheet: StyleSheet): void {\n styleSheet.clearRules(this.componentId + instance);\n }\n\n renderStyles(\n instance: number,\n executionContext: ExecutionContext & Props,\n styleSheet: StyleSheet,\n stylis: Stringifier\n ): void {\n if (instance > 2) StyleSheet.registerId(this.componentId + instance);\n\n // NOTE: Remove old styles, then inject the new ones\n this.removeStyles(instance, styleSheet);\n this.createStyles(instance, executionContext, styleSheet, stylis);\n }\n}\n","import Keyframes from '../models/Keyframes';\nimport { Interpolation, Styles } from '../types';\nimport generateComponentId from '../utils/generateComponentId';\nimport { joinStringArray } from '../utils/joinStrings';\nimport css from './css';\n\nexport default function keyframes<Props extends object = {}>(\n strings: Styles<Props>,\n ...interpolations: Array<Interpolation<Props>>\n): Keyframes {\n /* Warning if you've used keyframes on React Native */\n if (\n process.env.NODE_ENV !== 'production' &&\n typeof navigator !== 'undefined' &&\n navigator.product === 'ReactNative'\n ) {\n console.warn(\n '`keyframes` cannot be used on ReactNative, only on the web. To do animation in ReactNative please use Animated.'\n );\n }\n\n const rules = joinStringArray(css<Props>(strings, ...interpolations) as string[]);\n const name = generateComponentId(rules);\n return new Keyframes(name, rules);\n}\n","import React from 'react';\nimport type * as streamInternal from 'stream';\nimport { Readable } from 'stream';\nimport { IS_BROWSER, SC_ATTR, SC_ATTR_VERSION, SC_VERSION } from '../constants';\nimport StyleSheet from '../sheet';\nimport styledError from '../utils/error';\nimport { joinStringArray } from '../utils/joinStrings';\nimport getNonce from '../utils/nonce';\nimport { StyleSheetManager } from './StyleSheetManager';\n\ndeclare const __SERVER__: boolean;\n\nconst CLOSING_TAG_R = /^\\s*<\\/[a-z]/i;\n\nexport default class ServerStyleSheet {\n instance: StyleSheet;\n sealed: boolean;\n\n constructor() {\n this.instance = new StyleSheet({ isServer: true });\n this.sealed = false;\n }\n\n _emitSheetCSS = (): string => {\n const css = this.instance.toString();\n const nonce = getNonce();\n const attrs = [\n nonce && `nonce=\"${nonce}\"`,\n `${SC_ATTR}=\"true\"`,\n `${SC_ATTR_VERSION}=\"${SC_VERSION}\"`,\n ];\n const htmlAttr = joinStringArray(attrs.filter(Boolean) as string[], ' ');\n\n return `<style ${htmlAttr}>${css}</style>`;\n };\n\n collectStyles(children: any): JSX.Element {\n if (this.sealed) {\n throw styledError(2);\n }\n\n return <StyleSheetManager sheet={this.instance}>{children}</StyleSheetManager>;\n }\n\n getStyleTags = (): string => {\n if (this.sealed) {\n throw styledError(2);\n }\n\n return this._emitSheetCSS();\n };\n\n getStyleElement = () => {\n if (this.sealed) {\n throw styledError(2);\n }\n\n const props = {\n [SC_ATTR]: '',\n [SC_ATTR_VERSION]: SC_VERSION,\n dangerouslySetInnerHTML: {\n __html: this.instance.toString(),\n },\n };\n\n const nonce = getNonce();\n if (nonce) {\n (props as any).nonce = nonce;\n }\n\n // v4 returned an array for this fn, so we'll do the same for v5 for backward compat\n return [<style {...props} key=\"sc-0-0\" />];\n };\n\n // @ts-expect-error alternate return types are not possible due to code transformation\n interleaveWithNodeStream(input: Readable): streamInternal.Transform {\n if (!__SERVER__ || IS_BROWSER) {\n throw styledError(3);\n } else if (this.sealed) {\n throw styledError(2);\n }\n\n if (__SERVER__) {\n this.seal();\n\n const { Transform } = require('stream');\n\n const readableStream: Readable = input;\n const { instance: sheet, _emitSheetCSS } = this;\n\n const transformer: streamInternal.Transform = new Transform({\n transform: function appendStyleChunks(\n chunk: string,\n /* encoding */\n _: string,\n callback: Function\n ) {\n // Get the chunk and retrieve the sheet's CSS as an HTML chunk,\n // then reset its rules so we get only new ones for the next chunk\n const renderedHtml = chunk.toString();\n const html = _emitSheetCSS();\n\n sheet.clearTag();\n\n // prepend style html to chunk, unless the start of the chunk is a\n // closing tag in which case append right after that\n if (CLOSING_TAG_R.test(renderedHtml)) {\n const endOfClosingTag = renderedHtml.indexOf('>') + 1;\n const before = renderedHtml.slice(0, endOfClosingTag);\n const after = renderedHtml.slice(endOfClosingTag);\n\n this.push(before + html + after);\n } else {\n this.push(html + renderedHtml);\n }\n\n callback();\n },\n });\n\n readableStream.on('error', err => {\n // forward the error to the transform stream\n transformer.emit('error', err);\n });\n\n return readableStream.pipe(transformer);\n }\n }\n\n seal = (): void => {\n this.sealed = true;\n };\n}\n","/* Import singletons */\nimport { SC_ATTR, SC_VERSION } from './constants';\nimport createGlobalStyle from './constructors/createGlobalStyle';\nimport css from './constructors/css';\nimport keyframes from './constructors/keyframes';\n/* Import Higher Order Components */\nimport withTheme from './hoc/withTheme';\n/* Import hooks */\nimport ServerStyleSheet from './models/ServerStyleSheet';\nimport {\n IStyleSheetContext,\n IStyleSheetManager,\n IStylisContext,\n StyleSheetConsumer,\n StyleSheetContext,\n StyleSheetManager,\n} from './models/StyleSheetManager';\n/* Import components */\nimport ThemeProvider, { ThemeConsumer, ThemeContext, useTheme } from './models/ThemeProvider';\nimport isStyledComponent from './utils/isStyledComponent';\n\n/* Warning if you've imported this file on React Native */\nif (\n process.env.NODE_ENV !== 'production' &&\n typeof navigator !== 'undefined' &&\n navigator.product === 'ReactNative'\n) {\n console.warn(\n `It looks like you've imported 'styled-components' on React Native.\\nPerhaps you're looking to import 'styled-components/native'?\\nRead more about this at https://www.styled-components.com/docs/basics#react-native`\n );\n}\n\nconst windowGlobalKey = `__sc-${SC_ATTR}__`;\n\n/* Warning if there are several instances of styled-components */\nif (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n typeof window !== 'undefined'\n) {\n // @ts-expect-error dynamic key not in window object\n window[windowGlobalKey] ||= 0;\n\n // @ts-expect-error dynamic key not in window object\n if (window[windowGlobalKey] === 1) {\n console.warn(\n `It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\\n\\nSee https://s-c.sh/2BAXzed for more info.`\n );\n }\n\n // @ts-expect-error dynamic key not in window object\n window[windowGlobalKey] += 1;\n}\n\n/* Export everything */\nexport * from './secretInternals';\nexport { Attrs, DefaultTheme, ShouldForwardProp } from './types';\nexport {\n IStyleSheetContext,\n IStyleSheetManager,\n IStylisContext,\n ServerStyleSheet,\n StyleSheetConsumer,\n StyleSheetContext,\n StyleSheetManager,\n ThemeConsumer,\n ThemeContext,\n ThemeProvider,\n createGlobalStyle,\n css,\n isStyledComponent,\n keyframes,\n useTheme,\n SC_VERSION as version,\n withTheme,\n};\n","export const DEFAULT_COLOR = '#4fa94d'\n\nexport const DEFAULT_WAI_ARIA_ATTRIBUTE = {\n 'aria-busy': true,\n role: 'progressbar',\n}\n\nexport type Style = {\n [key: string]: string\n}\n\nexport interface PrimaryProps {\n height?: string | number\n width?: string | number\n ariaLabel?: string\n wrapperStyle?: Style\n wrapperClass?: string\n visible?: boolean\n}\n\nexport interface BaseProps extends PrimaryProps {\n color?: string\n}\n","import styled from 'styled-components'\n\n// eslint-disable-next-line tree-shaking/no-side-effects-in-initialization\nexport const SvgWrapper = styled.div<{ $visible: boolean }>`\n display: ${props => (props.$visible ? 'flex' : 'none')};\n`\n","import React, { FunctionComponent } from 'react'\nimport styled, { keyframes } from 'styled-components'\nimport { DEFAULT_COLOR } from '../type'\nimport { SVG_NAMESPACE } from '../shared/constants'\n\ntype Props = {\n color?: string\n width?: string\n}\n\nconst len = 242.776657104492\nconst time = 1.6\n\nconst anim = keyframes`\n12.5% {\n stroke-dasharray: ${len * 0.14}px, ${len}px;\n stroke-dashoffset: -${len * 0.11}px;\n}\n43.75% {\n stroke-dasharray: ${len * 0.35}px, ${len}px;\n stroke-dashoffset: -${len * 0.35}px;\n}\n100% {\n stroke-dasharray: ${len * 0.01}px, ${len}px;\n stroke-dashoffset: -${len * 0.99}px;\n}\n`\n\nconst Path = styled.path`\n stroke-dasharray: ${len * 0.01}px, ${len};\n stroke-dashoffset: 0;\n animation: ${anim} ${time}s linear infinite;\n`\n\nexport const InfinitySpin: FunctionComponent<Props> = ({\n color = DEFAULT_COLOR,\n width = '200',\n}): React.ReactElement => {\n return (\n <svg\n xmlns={SVG_NAMESPACE}\n width={`${width}`}\n height={`${Number(width) * 0.5}`}\n viewBox={`0 0 ${width} ${Number(200 * 0.5)}`}\n data-testid=\"infinity-spin\"\n >\n <Path\n data-testid=\"infinity-spin-path-1\"\n stroke={color}\n fill=\"none\"\n strokeWidth=\"4\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeMiterlimit=\"10\"\n d=\"M93.9,46.4c9.3,9.5,13.8,17.9,23.5,17.9s17.5-7.8,17.5-17.5s-7.8-17.6-17.5-17.5c-9.7,0.1-13.3,7.2-22.1,17.1 c-8.9,8.8-15.7,17.9-25.4,17.9s-17.5-7.8-17.5-17.5s7.8-17.5,17.5-17.5S86.2,38.6,93.9,46.4z\"\n />\n <path\n data-testid=\"infinity-spin-path-2\"\n opacity=\"0.07\"\n fill=\"none\"\n stroke={color}\n strokeWidth=\"4\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeMiterlimit=\"10\"\n d=\"M93.9,46.4c9.3,9.5,13.8,17.9,23.5,17.9s17.5-7.8,17.5-17.5s-7.8-17.6-17.5-17.5c-9.7,0.1-13.3,7.2-22.1,17.1 c-8.9,8.8-15.7,17.9-25.4,17.9s-17.5-7.8-17.5-17.5s7.8-17.5,17.5-17.5S86.2,38.6,93.9,46.4z\"\n />\n </svg>\n )\n}\n","import React, { FunctionComponent, ReactElement } from 'react'\nimport { BaseProps, DEFAULT_COLOR, DEFAULT_WAI_ARIA_ATTRIBUTE } from '../type'\nimport { SvgWrapper } from '../shared/svg-wrapper'\n\ninterface OvalProps extends BaseProps {\n strokeWidth?: string | number\n strokeWidthSecondary?: string | number\n secondaryColor?: string\n}\n\n/**\n * The radius of the circle\n * The Loader size is set with the width and height of the SVG\n * @type {number}\n */\nconst RADIUS = 20\n\n/**\n * Compute Path depending on circle radius\n * The structure with radius 20 is \"M20 0c0-9.94-8.06-20-20-20\"\n * @param radius of the circle radius default 20\n * @returns {string}\n */\nconst getPath = (radius: number): string => {\n return ['M' + radius + ' 0c0-9.94-8.06', radius, radius, radius].join('-')\n}\n/**\n * Compute the size of the view box depending on the radius and Stroke-Width\n * @param strokeWidth Stroke-Width of the full circle\n * @param secondaryStrokeWidth Stroke-Width of the 1/4 circle\n * @param radius radius of the circle\n * @returns {string}\n */\nconst getViewBoxSize = (\n strokeWidth: number,\n secondaryStrokeWidth: number,\n radius: number\n): string => {\n const maxStrokeWidth = Math.max(strokeWidth, secondaryStrokeWidth)\n const startingPoint = -radius - maxStrokeWidth / 2 + 1\n const endpoint = radius * 2 + maxStrokeWidth\n return [startingPoint, startingPoint, endpoint, endpoint].join(' ')\n}\n\nexport const Oval: FunctionComponent<OvalProps> = ({\n height = 80,\n width = 80,\n color = DEFAULT_COLOR,\n secondaryColor = DEFAULT_COLOR,\n ariaLabel = 'oval-loading',\n wrapperStyle,\n wrapperClass,\n visible = true,\n strokeWidth = 2,\n strokeWidthSecondary,\n}): ReactElement => (\n <SvgWrapper\n style={wrapperStyle}\n $visible={visible}\n className={wrapperClass}\n data-testid=\"oval-loading\"\n aria-label={ariaLabel}\n {...DEFAULT_WAI_ARIA_ATTRIBUTE}\n >\n <svg\n width={width}\n height={height}\n viewBox={getViewBoxSize(\n Number(strokeWidth),\n Number(strokeWidthSecondary || strokeWidth),\n RADIUS\n )}\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke={color}\n data-testid=\"oval-svg\"\n >\n <g fill=\"none\" fillRule=\"evenodd\">\n <g\n transform=\"translate(1 1)\"\n strokeWidth={Number(strokeWidthSecondary || strokeWidth)}\n data-testid=\"oval-secondary-group\"\n >\n <circle\n strokeOpacity=\".5\"\n cx=\"0\"\n cy=\"0\"\n r={RADIUS}\n stroke={secondaryColor}\n strokeWidth={strokeWidth}\n />\n <path d={getPath(RADIUS)}>\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 0 0\"\n to=\"360 0 0\"\n dur=\"1s\"\n repeatCount=\"indefinite\"\n />\n </path>\n </g>\n </g>\n </svg>\n </SvgWrapper>\n)\n","import React, { useCallback, FunctionComponent } from 'react'\nimport styled, { keyframes } from 'styled-components'\nimport { DEFAULT_COLOR, DEFAULT_WAI_ARIA_ATTRIBUTE } from '../type'\nimport { SVG_NAMESPACE } from '../shared/constants'\n\ntype Props = {\n width?: string\n visible?: boolean\n strokeWidth?: string\n strokeColor?: string\n animationDuration?: string\n ariaLabel?: string\n}\n\nconst POINTS = [0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330]\n\nconst spin = keyframes`\nto {\n transform: rotate(360deg);\n }\n`\nconst Svg = styled.svg`\n animation: ${spin} 0.75s steps(12, end) infinite;\n animation-duration: 0.75s;\n`\n\nconst Polyline = styled.polyline`\n stroke-width: ${props => props.width}px;\n stroke-linecap: round;\n\n &:nth-child(12n + 0) {\n stroke-opacity: 0.08;\n }\n\n &:nth-child(12n + 1) {\n stroke-opacity: 0.17;\n }\n\n &:nth-child(12n + 2) {\n stroke-opacity: 0.25;\n }\n\n &:nth-child(12n + 3) {\n stroke-opacity: 0.33;\n }\n\n &:nth-child(12n + 4) {\n stroke-opacity: 0.42;\n }\n\n &:nth-child(12n + 5) {\n stroke-opacity: 0.5;\n }\n\n &:nth-child(12n + 6) {\n stroke-opacity: 0.58;\n }\n\n &:nth-child(12n + 7) {\n stroke-opacity: 0.66;\n }\n\n &:nth-child(12n + 8) {\n stroke-opacity: 0.75;\n }\n\n &:nth-child(12n + 9) {\n stroke-opacity: 0.83;\n }\n\n &:nth-child(12n + 11) {\n stroke-opacity: 0.92;\n }\n`\n\nexport const RotatingLines: FunctionComponent<Props> = ({\n strokeColor = DEFAULT_COLOR,\n strokeWidth = '5',\n animationDuration = '0.75',\n width = '96',\n visible = true,\n ariaLabel = 'rotating-lines-loading',\n}): React.ReactElement | null => {\n const lines = useCallback(\n () =>\n POINTS.map(point => (\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n <Polyline\n key={point}\n points=\"24,12 24,4\"\n width={strokeWidth}\n transform={`rotate(${point}, 24, 24)`}\n />\n )),\n [strokeWidth]\n )\n return !visible ? null : (\n <Svg\n xmlns={SVG_NAMESPACE}\n viewBox=\"0 0 48 48\"\n width={width}\n stroke={strokeColor}\n speed={animationDuration}\n data-testid=\"rotating-lines-svg\"\n aria-label={ariaLabel}\n {...DEFAULT_WAI_ARIA_ATTRIBUTE}\n >\n {lines()}\n </Svg>\n )\n}\n","import React, { FunctionComponent } from 'react'\nimport styled, { keyframes } from 'styled-components'\nimport { BaseProps, DEFAULT_COLOR, DEFAULT_WAI_ARIA_ATTRIBUTE } from '../type'\nimport { SvgWrapper } from '../shared/svg-wrapper'\nimport { SVG_NAMESPACE } from '../shared/constants'\n\ntype TriangleProps = BaseProps\n\nconst VIEW_BOX_VALUES = '-3 -4 39 39'\nconst POLYGON_POINTS = '16,0 32,32 0,32'\n\n/** Styles */\nconst dash = keyframes`\nto {\n stroke-dashoffset: 136;\n }\n`\nconst Polygon = styled.polygon`\n stroke-dasharray: 17;\n animation: ${dash} 2.5s cubic-bezier(0.35, 0.04, 0.63, 0.95) infinite;\n`\nconst SVG = styled.svg`\n transform-origin: 50% 65%;\n`\n/** Styles Ends */\n\nexport const Triangle: FunctionComponent<TriangleProps> = ({\n height = 80,\n width = 80,\n color = DEFAULT_COLOR,\n ariaLabel = 'triangle-loading',\n wrapperStyle,\n wrapperClass,\n visible = true,\n}: TriangleProps): React.ReactElement => {\n return (\n <SvgWrapper\n style={wrapperStyle}\n $visible={visible}\n className={`${wrapperClass}`}\n data-testid=\"triangle-loading\"\n aria-label={ariaLabel}\n {...DEFAULT_WAI_ARIA_ATTRIBUTE}\n >\n <SVG\n id=\"triangle\"\n width={width}\n height={height}\n xmlns={SVG_NAMESPACE}\n viewBox={VIEW_BOX_VALUES}\n data-testid=\"triangle-svg\"\n >\n <Polygon\n fill=\"transparent\"\n stroke={color}\n strokeWidth=\"1\"\n points={POLYGON_POINTS}\n />\n </SVG>\n </SvgWrapper>\n )\n}\n","import React, { useState, useEffect, useContext, useRef } from 'react';\nimport { Flex, Image, useTheme, View, Text } from \"@aws-amplify/ui-react\";\nimport './Topbar.css'; // Asegúrate de crear este archivo CSS\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport logo2 from '../../assets/logoPSA_soloPica.png';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css'; // Importa los estilos necesarios de FontAwesome\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\nimport { useAuthenticator } from '@aws-amplify/ui-react';\nimport { Oval } from 'react-loader-spinner';\n\nlibrary.add(fas);\n\nconst suitColors = {\n 'â™ ': '#808080', // Gris para Espadas\n '♣': '#25C6A2', // Verde para Tréboles\n '♥': '#C62549', // Rojo para Corazones\n '♦': '#5e4fff' // Azul para Diamantes\n};\n\nfunction TopBar({ mode }) {\n const { signOut, user } = useAuthenticator();\n const { pokerHand, createPokerHandDB, updatePokerHandDB, updatePokerHand, pokerHandList, fetchPokerHands, setPokerHand, resetPokerHand } = useContext(PokerHandContext);\n const [searchTerm, setSearchTerm] = useState('');\n const [filteredHands, setFilteredHands] = useState([]);\n const [modalMessage, setModalMessage] = useState('');\n const [isError, setIsError] = useState(false);\n const [dropdownVisible, setDropdownVisible] = useState(false);\n const [showLoader, setShowLoader] = useState(false);\n const [confirmResetVisible, setConfirmResetVisible] = useState(false); // Estado para el modal de confirmación\n\n const dropdownRef = useRef(null);\n\n const playerPositions6Max = ['SB', 'BB','UTG', 'MP', 'CO', 'BU'];\n const playerPositions9Max = ['SB', 'BB','UTG', 'MP', 'MP2', 'MP3', 'HJ' , 'CO', 'BU'];\n\n useEffect(() => {\n updatePokerHand('playerId', user.username);\n }, []);\n\n useEffect(() => {\n if(mode==='Estudio')\n fetchPokerHands(user.username);\n }, [mode]);\n\n useEffect(() => {\n //console.log(searchTerm);\n //console.log(pokerHandList);\n\n if (searchTerm!='') {\n\n setFilteredHands(pokerHandList.filter(hand =>\n (\n hand.handTitle.toLowerCase().includes(searchTerm.toLowerCase())\n ||\n (hand.description ? hand.description.toLowerCase().includes(searchTerm.toLowerCase()): false)\n )\n ));\n setDropdownVisible(true);\n } else {\n setFilteredHands([]);\n setDropdownVisible(false);\n }\n }, [searchTerm]);\n\n const handleSelectHand = (hand) => {\n\n resetPokerHand();\n\n setSearchTerm('');\n setPokerHand(hand);\n setDropdownVisible(false);\n };\n\n const handleClickSearchBox = () => {\n setFilteredHands(pokerHandList);\n setDropdownVisible(true);\n };\n\n const handleClickOutside = (event) => {\n\n\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setDropdownVisible(false);\n }\n };\n\n useEffect(() => {\n document.addEventListener('mousedown', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, []);\n\n const handleCreateHand = async () => {\n updatePokerHand('playerId', user.username);\n const response = await createPokerHandDB();\n if (!response.success) {\n setModalMessage(response.error);\n setIsError(true);\n } else {\n setModalMessage('Mano guardada con éxito!');\n setIsError(false);\n }\n setTimeout(() => {\n setModalMessage('');\n fetchPokerHands(user.username);\n }, 3000);\n };\n\n const handleUpdateHand = async () => {\n updatePokerHand('playerId', user.username);\n const response = await updatePokerHandDB();\n if (!response.success) {\n setModalMessage(response.error);\n setIsError(true);\n } else {\n setModalMessage('Mano guardada con éxito!');\n setIsError(false);\n }\n setTimeout(() => {\n setModalMessage('');\n fetchPokerHands(user.username);\n }, 3000);\n };\n\n const getSuitColor = (card) => {\n if (!card) return '#000'; // Color por defecto si la carta es nula o indefinida\n const suit = card.slice(-1);\n return suitColors[suit] || '#000';\n };\n\n const handleResetHand = () => {\n setConfirmResetVisible(true); // Mostrar el modal de confirmación\n };\n\n const handleConfirmReset = async (saveHand) => {\n if (saveHand) {\n await handleUpdateHand(); // Guardar la mano antes de recargar\n }\n resetPokerHand();\n setConfirmResetVisible(false);\n };\n\n const getPositionText = (index, tableType) => {\n if (tableType === '6') {\n return playerPositions6Max[index] || '';\n } else if (tableType === '9') {\n return playerPositions9Max[index] || '';\n }\n return '';\n };\n\n return (\n <div className=\"top-bar\" >\n {showLoader && (\n <div className=\"overlay\">\n <Oval\n height={100}\n width={100}\n color=\"#4fa94d\"\n wrapperStyle={{}}\n wrapperClass=\"\"\n visible={true}\n ariaLabel='oval-loading'\n secondaryColor=\"#4fa94d\"\n strokeWidth={2}\n strokeWidthSecondary={2}\n />\n </div>\n )}\n\n <Image\n height=\"50px\"\n alt=\"Poker Study App Logo\"\n src={logo2}\n />\n <Text\n width=\"220px\"\n fontSize=\"1rem\" // Agrandar el tamaño de la fuente\n fontWeight=\"bold\"\n color=\"white\"\n fontStyle=\"italic\"\n style={{\n textShadow: '0px 0px 15px rgba(255, 255, 255, 1)', marginTop:'12px',paddingLeft:'25px' // Sombra inset\n }}\n >\n PokerCrushers.pro\n </Text>\n\n {mode === \"Estudio\" && (\n <>\n {pokerHand?.id && (\n <button className=\"nav-button\" onClick={handleResetHand}>\n <FontAwesomeIcon icon=\"sync\" /> Nueva Mano\n </button>\n )}\n\n <input\n type=\"text\"\n className=\"search-box\"\n placeholder=\"Click aquà para listar tus manos o escribe para filtrar...\"\n value={searchTerm}\n onChange={(e) => setSearchTerm(e.target.value)}\n onFocus={() => setDropdownVisible(true)}\n onClick={handleClickSearchBox}\n />\n {dropdownVisible && filteredHands.length > 0 && (\n <ul className=\"dropdown-menu\" ref={dropdownRef}>\n {filteredHands.map((hand) => (\n <li key={hand.id} onClick={() => handleSelectHand(hand)}>\n <div className=\"hand-title\">{hand.handTitle}\n <div className=\"player-positions\">\n {getPositionText(hand.heroPosition, hand.tableType)} vs {getPositionText(hand.villainPosition, hand.tableType)}\n </div>\n <div className=\"player-positions\">\n {hand.tableType} max\n </div>\n {hand.share==='true' ?\n <div className=\"player-positions\">\n <FontAwesomeIcon icon=\"share-nodes\" beat />\n </div> : ''\n }\n <div className=\"desciptionTopbarhand\">{hand.description}</div>\n </div>\n <div className=\"hand-details\">\n <div className=\"hand-cards\">\n <strong>Player's Hand:</strong>\n <div className=\"card\" style={{ color: getSuitColor(hand.myHand_1) }}>{hand.myHand_1}</div>\n <div className=\"card\" style={{ color: getSuitColor(hand.myHand_2) }}>{hand.myHand_2}</div>\n\n </div>\n <div className=\"flop-turn-river\">\n <div className=\"hand-cards\">\n <strong>Flop:</strong>\n <div className=\"card\" style={{ color: getSuitColor(hand.flopCards_1) }}>{hand.flopCards_1}</div>\n <div className=\"card\" style={{ color: getSuitColor(hand.flopCards_2) }}>{hand.flopCards_2}</div>\n <div className=\"card\" style={{ color: getSuitColor(hand.flopCards_3) }}>{hand.flopCards_3}</div>\n </div>\n <div className=\"hand-cards\">\n <strong>Turn:</strong>\n <div className=\"card\" style={{ color: getSuitColor(hand.turnCard) }}>{hand.turnCard}</div>\n </div>\n <div className=\"hand-cards\">\n <strong>River:</strong>\n <div className=\"card\" style={{ color: getSuitColor(hand.riverCard) }}>{hand.riverCard}</div>\n </div>\n </div>\n </div>\n </li>\n ))}\n </ul>\n )}\n {pokerHand?.id && pokerHand.playerId === user.username && (\n <button className=\"nav-button save-button\" onClick={handleUpdateHand}>\n <FontAwesomeIcon icon=\"floppy-disk\" /> Guardar Mano\n </button>\n )}\n {!pokerHand?.id && (\n <button className=\"nav-button save-button\" onClick={handleCreateHand}>\n <FontAwesomeIcon icon=\"floppy-disk\" /> Guardar Mano\n </button>\n )}\n {modalMessage && <div className={`modal ${isError ? 'error' : 'success'}`}>{modalMessage}</div>}\n </>\n )}\n\n {confirmResetVisible && (\n <>\n <div className=\"modal-overlay\"></div> {/* Superposición detrás del modal */}\n <div className=\"modal-confirm\">\n <p>¿Desea guardar la mano antes de crear una nueva?</p>\n <button onClick={() => handleConfirmReset(true)}>SÃ</button>\n <button onClick={() => handleConfirmReset(false)}>No</button>\n </div>\n </>\n )}\n </div>\n );\n\n}\n\nexport default TopBar;\n","import React, { useState, useEffect, useContext } from 'react';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport { useAuthenticator,Text } from '@aws-amplify/ui-react';\nimport CardSelector from '../CardSelector/CardSelector';\nimport './PokerTrainer.css';\nimport { createTrainings } from \"../../graphql/mutations\";\nimport {listHands as listHandsQuery, listTrainings} from \"../../graphql/queries\";\nimport { generateClient } from \"aws-amplify/api\";\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css';\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\n\nconst preflopFirstActions = [\"OR_2.5bb\", \"OR_3bb\", \"ALL-IN\"];\nconst postflopFirstActions = [\"CHECK\", \"BET_10%\", \"BET_25%\", \"BET_33%\", \"BET_50%\", \"BET_60%\", \"BET_75%\", \"BET_100%\", \"BET_125%\"];\n\nconst vsAggressiveActions = [\"FOLD\", \"CALL\", \"RAISE_x3\", \"RAISE_x5\", \"ALL-IN\"];\nconst vsPassiveActions = [\"CHECK\", \"BET_10%\", \"BET_25%\", \"BET_33%\", \"BET_50%\", \"BET_60%\", \"BET_75%\", \"BET_100%\", \"BET_125%\"];\n\nconst client = generateClient();\n\nfunction PokerTrainer({ sequence, stake, membership }) {\n const { signOut, user } = useAuthenticator();\n const { pokerHand, setPokerHand, pokerHandList, fetchPokerHandsTrainer, resetPokerHand, resetPokerHandList } = useContext(PokerHandContext);\n const [filteredHands, setFilteredHands] = useState([]);\n const [maxPlayers, setMaxPlayers] = useState(6);\n const [mySeat, setMySeat] = useState(9);\n const [rivalSeat, setRivalSeat] = useState(9);\n const [currentPositions, setCurrentPositions] = useState([]);\n const [currentHand, setCurrentHand] = useState(null);\n const [currentHandIndex, setCurrentHandIndex] = useState(0);\n const [actions, setActions] = useState([]);\n const [streetName, setStreetName] = useState('preflop');\n const [responses, setResponses] = useState({});\n const playerPositions6Max = ['SB', 'BB', 'UTG', 'MP', 'CO', 'BU'];\n const playerPositions9Max = ['UTG', 'MP', 'CO', 'BU', 'SB', 'BB', 'MP2', 'MP3', 'HJ'];\n const [finishHand, setFinishHand] = useState('false');\n const [actionIndex, setActionIndex] = useState(0);\n const [showModal, setShowModal] = useState(false);\n const [currentPlayer, setCurrentPlayer] = useState('');\n const [score, setScore] = useState(0);\n const [totalActions, setTotalActions] = useState(0);\n const [chips, setChips] = useState([]);\n const [chipsVil, setChipsVil] = useState([]);\n const [trainedHands, setTrainedHands] = useState([]);\n const [streakHands, setStreakHands] = useState([]);\n const [pot, setPot] = useState(1.5);\n const [bet, setBet] = useState(0);\n const [correctAnswer, setCorrectAnswer] = useState('');\n const [villainAction, setVillainAction] = useState('');\n\n useEffect(() => {\n resetPokerHand();\n\n\n }, []);\n\n useEffect(() => {\n let timer;\n if ((currentPlayer !== 'Hero' && currentPlayer !== '') && finishHand === 'false' ) {\n\n\n timer = setTimeout(() => {\n const okButton = document.querySelector('.villainAction + button');\n if (okButton) {\n okButton.click();\n }\n //handleActionClick(currentAction)\n }, 2000); // 3 segundos, puedes ajustar este valor según tus necesidades\n }\n return () => clearTimeout(timer); // Limpia el timeout al desmontar el componente o cambiar las dependencias\n }, [currentPlayer, finishHand]);\n\n useEffect(() => {\n\n if(finishHand==='true'){\n\n try {\n\n const createTraining = async (handId, playerId, score) => {\n const newTraining = await client.graphql({\n query: createTrainings,\n variables: {\n input: {\n \"handId\": handId,\n \"playerId\": playerId,\n \"score\": score,\n }\n }\n });\n };\n\n //console.log('Save training',currentHand.id + ' ' + user.username+ ' ' + scorePercentage);\n createTraining(currentHand.id ,user.username, scorePercentage);\n\n\n\n } catch (error) {\n console.error('Error saving Training:', error);\n }\n\n try {\n\n const fetchTrainingStats = async (playerId=null) => {\n try {\n const filter = { };\n\n if (playerId) {\n filter.playerId = { eq: playerId };\n }\n\n\n const result = await client.graphql({\n query: listTrainings,\n variables: { filter }\n });\n\n setTrainedHands ( result.data.listTrainings.items);\n\n } catch (error) {\n console.log(error);\n }\n };\n\n fetchTrainingStats(user.username);\n\n const getScoreStreak = (hands) => {\n\n const sortedHands = hands.sort((a, b) => new Date(a.createdAt) - new Date(b.createdAt));\n\n let streak = [];\n for (let i = sortedHands.length - 1; i >= 0; i--) {\n if (sortedHands[i].score === 100) {\n\n streak.unshift(sortedHands[i]);\n } else {\n break;\n }\n }\n return streak;\n };\n\n setStreakHands (getScoreStreak(trainedHands));\n\n\n } catch (error) {\n console.error('Error saving Training:', error);\n }\n\n\n\n }\n\n }, [finishHand]);\n\n useEffect(() => {\n const filtered = pokerHandList.sort(() => Math.random() - 0.5);\n setFilteredHands(filtered);\n setStreetName('preflop');\n resetPokerHand();\n setActionIndex(0);\n setFinishHand('false');\n setScore(0);\n setTotalActions(0);\n setChips([]);\n setChipsVil([]);\n setResponses({});\n setPot(1.5);\n setCorrectAnswer('');\n\n if (filtered.length > 0) {\n setActions([]);\n setCurrentHand(filtered[0]);\n setCurrentHandIndex(0);\n setMySeat('');\n setRivalSeat('');\n\n\n\n } else {\n if (sequence !== '' || stake !== '') {\n setShowModal(true);\n setTimeout(() => {\n setShowModal(false);\n }, 3000);\n }\n }\n }, [pokerHandList]);\n\n useEffect(() => {\n if (currentHand) {\n setMySeat(currentHand.heroPosition);\n setRivalSeat(currentHand.villainPosition);\n setMaxPlayers(currentHand.tableType);\n setPokerHand(currentHand);\n setActionIndex(0);\n\n try {\n\n const fetchTrainingStats = async (playerId=null) => {\n try {\n const filter = { };\n\n if (playerId) {\n filter.playerId = { eq: playerId };\n }\n\n\n const result = await client.graphql({\n query: listTrainings,\n variables: { filter }\n });\n\n setTrainedHands ( result.data.listTrainings.items);\n\n } catch (error) {\n console.log(error);\n }\n };\n\n fetchTrainingStats(user.username);\n\n const getScoreStreak = (hands) => {\n\n const sortedHands = hands.sort((a, b) => new Date(a.createdAt) - new Date(b.createdAt));\n\n let streak = [];\n for (let i = sortedHands.length - 1; i >= 0; i--) {\n if (sortedHands[i].score === 100) {\n\n streak.unshift(sortedHands[i]);\n } else {\n break;\n }\n }\n return streak;\n };\n\n setStreakHands (getScoreStreak(trainedHands));\n\n\n } catch (error) {\n console.error('Error saving Training:', error);\n }\n\n if (currentHand[`${streetName}Action`] == \"{}\")\n setActions([]);\n else {\n if (typeof currentHand[`${streetName}Action`] == \"string\") {\n const jsonString = currentHand[`${streetName}Action`]\n .replace(/(\\w+)=/g, '\"$1\":')\n .replace(/ /g, \"_\")\n .replace(/,_/g, \",\")\n .replace(/:\"([^\"]+?)\"/g, (_, value) => {\n if (value === 'true' || value === 'false' || !isNaN(value)) {\n return `:${value}`;\n }\n return `:\"${value}\"`;\n })\n .replace(/:([^\",{}\\s]+)([,}])/g, ':\\\"$1\\\"$2');\n\n const cleanedJsonString = jsonString\n .replace(/:\"(\\w+ [^,{}]+)\"/g, ':\\\"$1\\\"');\n\n const array = JSON.parse(jsonString);\n\n try {\n setActions(array);\n setCurrentPlayer(array[0].player)\n } catch {\n console.log(\"empty object\");\n }\n } else\n setActions(currentHand[`${streetName}Action`]);\n }\n }\n }, [currentHand, streetName]);\n\n useEffect(() => {\n if (currentHand) {\n setMySeat(currentHand.heroPosition);\n setRivalSeat(currentHand.villainPosition);\n setMaxPlayers(currentHand.tableType);\n setPokerHand(currentHand);\n }\n\n\n }, [pokerHand, streetName]);\n\n useEffect(() => {\n if (currentHand) {\n setMySeat(currentHand.heroPosition);\n setRivalSeat(currentHand.villainPosition);\n setMaxPlayers(currentHand.tableType);\n setPokerHand(currentHand);\n }\n\n if (maxPlayers.toString() == '9')\n setCurrentPositions(playerPositions9Max);\n else\n setCurrentPositions(playerPositions6Max);\n\n }, [mySeat, rivalSeat, maxPlayers, setCurrentPositions, streetName]);\n\n const getSeatStyle = (index) => {\n let style = {};\n\n if (index == mySeat) {\n style.backgroundColor = '#4CAF50';\n } else if (index == rivalSeat) {\n style.backgroundColor = '#FF5722';\n }\n\n if (index == mySeat && currentPlayer == 'Hero') {\n style = { ...style, animation: 'glow 1s infinite' };\n } else if (index == rivalSeat && currentPlayer == 'Villain') {\n style = { ...style, animation: 'glow 1s infinite' };\n }\n\n if (index != mySeat && index != rivalSeat) {\n style.opacity = 1;\n }\n\n return style;\n };\n\n const handleNextHand = () => {\n setMySeat('');\n setRivalSeat('');\n if (currentHandIndex < filteredHands.length - 1) {\n const nextIndex = currentHandIndex + 1;\n setCurrentHand(filteredHands[nextIndex]);\n setCurrentHandIndex(nextIndex);\n setStreetName('preflop');\n setResponses({});\n setFinishHand('false');\n setScore(0);\n setTotalActions(0);\n setChips([]);\n setChipsVil([]);\n setPot(1.5);\n setCorrectAnswer('');\n }\n };\n\n const handlePreviousHand = () => {\n setMySeat('');\n setRivalSeat('');\n if (currentHandIndex > 0) {\n const prevIndex = currentHandIndex - 1;\n setCurrentHand(filteredHands[prevIndex]);\n setCurrentHandIndex(prevIndex);\n setStreetName('preflop');\n setResponses({});\n setFinishHand('false');\n setScore(0);\n setTotalActions(0);\n setChips([]);\n setChipsVil([]);\n setPot(1.5);\n setCorrectAnswer('');\n }\n };\n\n const resetHand = () => {\n setMySeat(currentHand.heroPosition);\n setRivalSeat(currentHand.villainPosition);\n setStreetName('preflop');\n setResponses({});\n setFinishHand('false');\n setScore(0);\n setTotalActions(0);\n setChips([]);\n setChipsVil([]);\n setActionIndex(0);\n setCurrentPlayer('Hero');\n setPot(1.5);\n setCorrectAnswer('');\n };\n\n const calculatePot = (action) => {\n let newPot = pot;\n const potWithoutBB = pot; // Excluding the initial 1.5bb pot\n\n if (action.action.includes('OR')) {\n const amount = parseFloat(action.action.split('_')[1].replace('bb', ''));\n //console.log('OR', newPot+' - '+ amount);\n setBet(amount);\n newPot += amount;\n } else if (action.action.includes('BET')) {\n const percentage = parseFloat(action.action.split('_')[1].replace('%', '')) / 100;\n console.log('BET', newPot+' - '+ potWithoutBB * percentage);\n setBet(potWithoutBB * percentage);\n newPot += potWithoutBB * percentage;\n } else if (action.action.includes('RAISE')) {\n const multiplier = parseFloat(action.action.split('_')[1].replace('x', ''));\n const previousBet = actions[actionIndex - 1];\n if (previousBet && previousBet.action.includes('BET') ) {\n const percentage = parseFloat(previousBet.action.split('_')[1].replace('%', '')) / 100;\n console.log('RAISE BET', newPot+' - '+ bet * multiplier);\n setBet(bet * multiplier);\n newPot += bet * multiplier;\n }else if(previousBet && previousBet.action.includes('OR')){\n const amount = parseFloat(previousBet.action.split('_')[1].replace('bb', ''));\n console.log('RAISE OR', newPot+' - '+ amount * multiplier);\n setBet(amount * multiplier);\n newPot += (amount * multiplier);\n }\n\n } else if (action.action === 'CALL') {\n\n\n const previousBet = actions[actionIndex - 1];\n const previousBet2 = actions[actionIndex - 2];\n\n console.log('call',previousBet);\n if (previousBet && (previousBet.action.includes('BET') || previousBet.action.includes('OR') || previousBet.action.includes('RAISE'))) {\n if (previousBet.action.includes('OR')) {\n const amount = parseFloat(previousBet.action.split('_')[1].replace('bb', ''));\n newPot += amount;\n }\n else if (previousBet.action.includes('BET')) {\n const percentage = parseFloat(previousBet.action.split('_')[1].replace('%', '')) / 100;\n newPot += potWithoutBB * percentage;\n } else if (previousBet.action.includes('RAISE')) {\n const multiplier = parseFloat(previousBet.action.split('_')[1].replace('x', ''));\n const betAction = actions.find(act => act.action.includes('BET'));\n if (betAction) {\n const percentage = parseFloat(betAction.action.split('_')[1].replace('%', '')) / 100;\n newPot += potWithoutBB * percentage * multiplier;\n }else{\n newPot += (parseFloat(previousBet2.action.split('_')[1].replace('bb', ''))*multiplier)\n }\n\n\n\n }\n }\n }\n\n setPot(parseFloat(newPot.toFixed(1)));\n };\n\n const getCurrentButtons = (actions, currentIndex) => {\n if (!actions || actions.length === 0 || currentIndex >= actions.length) {\n return [];\n }\n\n const currentPlayer = actions[currentIndex].player;\n let currentButtons = [];\n\n for (let i = currentIndex; i < actions.length; i++) {\n if (actions[i].player === currentPlayer) {\n currentButtons.push(actions[i]);\n } else {\n break;\n }\n }\n\n let referenceActions = [];\n\n if (streetName === 'preflop') {\n if (currentIndex != 1)\n referenceActions = preflopFirstActions;\n else\n referenceActions = vsAggressiveActions;\n } else if (vsAggressiveActions.includes(currentAction.action)) {\n referenceActions = vsAggressiveActions;\n } else if (vsPassiveActions.includes(currentAction.action)) {\n referenceActions = vsPassiveActions;\n }\n\n if (currentPlayer === 'Hero') {\n for (let i = 0; i < referenceActions.length; i++) {\n if (referenceActions[i] !== currentButtons[0].action) {\n let newButton = {\n player: 'Hero',\n action: referenceActions[i],\n order: (i + 2),\n street: streetName,\n isCorrect: false,\n isOptional: false\n };\n currentButtons.push(newButton);\n }\n }\n }\n\n let newCurrentButtons = [];\n const previousAction = actions[currentIndex - 1];\n if (previousAction && previousAction.player === 'Villain' && previousAction.action === 'ALL-IN') {\n newCurrentButtons = currentButtons.filter(button => button.action === 'CALL' || button.action === 'FOLD');\n } else {\n newCurrentButtons = currentButtons;\n }\n\n // Find the correct button\n const correctButton = newCurrentButtons.find(button => button.isCorrect);\n\n // Filter out the correct button\n let otherButtons = newCurrentButtons.filter(button => !button.isCorrect);\n\n // Shuffle the other buttons randomly\n otherButtons = otherButtons.sort(() => Math.random() - 0.5);\n\n // Limit the total buttons to 4, including the correct button\n let limitedButtons = [];\n if (correctButton) {\n limitedButtons = [correctButton, ...otherButtons.slice(0, 3)];\n\n } else {\n limitedButtons = otherButtons.slice(0, 4);\n }\n\n return limitedButtons;\n };\n\n\n const handleActionClick = (action) => {\n\n calculatePot(action);\n\n if (currentPlayer === 'Hero') {\n setResponses(prevResponses => ({\n ...prevResponses,\n [streetName]: [...(prevResponses[streetName] || []), action]\n }));\n\n setTotalActions(prevTotalActions => prevTotalActions + 1);\n\n if (action.isCorrect === 'true') {\n setScore(prevScore => prevScore + 1);\n } else {\n setFinishHand('true');\n setCorrectAnswer(actions[actionIndex].action);\n }\n }\n else{\n setVillainAction(actions[actionIndex].action);\n }\n\n\n if (action.action.includes('FOLD') || action.action.includes('NONE')) {\n setFinishHand('true');\n console.log('debug1');\n }\n\n const previousAction = actions[actionIndex - 1];\n if (previousAction && previousAction.player === 'Villain' && previousAction.action === 'ALL-IN') {\n setFinishHand('true');\n }\n\n if (['BET', 'RAISE', 'ALL-IN', 'OR', 'CALL'].some(keyword => action.action.includes(keyword))) {\n\n if(currentPlayer=== 'Hero') {\n setChips(prevChips => [...prevChips, action.action]);\n if (action.action.includes('RAISE'))\n setChips(prevChips => [...prevChips, action.action]);\n }\n else {\n setChipsVil(prevChips => [...prevChips, action.action]);\n if (action.action.includes('RAISE'))\n setChipsVil(prevChips => [...prevChips, action.action]);\n }\n }\n\n const nextActionIndex = actions.findIndex((act, idx) => act.player !== currentPlayer && idx > actionIndex);\n\n if (nextActionIndex !== -1) {\n setActionIndex(nextActionIndex);\n setCurrentPlayer(actions[nextActionIndex].player);\n\n\n\n if (actions[nextActionIndex].action.search('FOLD') > -1 && currentPlayer!=='Villain') {\n setFinishHand('true');\n\n }\n } else {\n\n\n if (streetName === 'preflop') {\n setStreetName('flop');\n } else if (streetName === 'flop') {\n setStreetName('turn');\n } else if (streetName === 'turn') {\n setStreetName('river');\n } else if (streetName === 'river') {\n setFinishHand('true');\n }\n setActionIndex(0);\n setCurrentPlayer('');\n }\n };\n\n const currentAction = actions[actionIndex] || null;\n\n const currentButtons = getCurrentButtons(actions, actionIndex);\n\n const isCorrectResponse = (response, street) => {\n return response.isCorrect === 'true' && response.street.toLowerCase() === street;\n };\n\n const getScoreColor = (percentage) => {\n const hue = (percentage * 1.2).toString(10);\n return `hsl(${hue}, 100%, 50%)`;\n };\n\n const scorePercentage = Math.round((score / totalActions) * 100) || 0;\n const scoreColor = getScoreColor(scorePercentage);\n\n\n return (\n <div className=\"poker-trainer-container-wrapper\">\n <div className=\"poker-trainer-container\">\n <div className=\"trainer-controls-1\">\n <button onClick={handlePreviousHand} disabled={currentHandIndex === 0}><FontAwesomeIcon icon=\"backward\" size=\"1x\" /></button>\n <text style={{color:'#f9f9f9'}}>{currentHandIndex+1} / {filteredHands.length}</text>\n <button onClick={handleNextHand} disabled={currentHandIndex === filteredHands.length - 1}><FontAwesomeIcon icon=\"forward\" size=\"1x\" /></button>\n <div className=\"statsHud\">\n <div className=\"tooltip\"><FontAwesomeIcon icon=\"gamepad\" size=\"1x\" /><text> {trainedHands.length}</text><span className=\"tooltip-text\">Jugadas</span></div>\n <div className=\"tooltip\"><FontAwesomeIcon icon=\"trophy\" size=\"1x\" /><text> {trainedHands.filter(hand => hand.score >= 75).length}</text><span className=\"tooltip-text\">Correctas</span></div>\n <div className=\"tooltip\"><FontAwesomeIcon icon=\"fire-flame-curved\" size=\"1x\" /><text> {streakHands.length}</text><span className=\"tooltip-text\">Racha</span></div>\n </div>\n </div>\n {showModal && (\n <div className=\"modal\">\n <p>No se encontraron manos para entrenar en la secuencia {sequence} para el nivel {stake}.</p>\n </div>\n )}\n <div className=\"trainer-poker-table\">\n <div className=\"trainer-poker-table-inner\">\n {currentPositions.map((position, index) => (\n <div\n key={index}\n className={`trainer-player-seat trainer-player-seat-${index}`}\n style={getSeatStyle(index)}\n >\n\n\n {(index == mySeat && currentHand) ? (\n <>\n <div className=\"trainer-seat-text\">{position}</div>\n <div className={`chips-container-${index}`}>\n {chips.map((chip, index) => (\n <div key={index} className=\"chip\">\n </div>\n ))}\n\n </div>\n <div className=\"trainer-board-cards-hero\">\n\n <CardSelector card=\"myHand_1\" trainer=\"true\" />\n <CardSelector card=\"myHand_2\" trainer=\"true\" />\n </div>\n </>\n ) : (index == rivalSeat && currentHand) ? (\n <>\n <div className=\"trainer-seat-text\">{(currentPlayer!=='Hero' && currentPlayer) ? currentAction.action.replace('_',' ') : villainAction.replace('_',' ')}</div>\n <div className={`chips-container-${index}`}>\n {chipsVil.map((chip, index) => (\n <div key={index} className=\"chip\">\n </div>\n ))}\n\n </div>\n\n <div className=\"trainer-board-cards-hero\">\n <CardSelector card=\"trainerCard\" trainer=\"true\" />\n <CardSelector card=\"trainerCard\" trainer=\"true\" />\n </div>\n </>\n ) : (\n <>\n <div className=\"trainer-seat-text\">{position}</div>\n <div className=\"trainer-board-cards-hidden\">\n FOLDED\n </div>\n </>\n )}\n {position === 'BU' && (\n <button className=\"dealer-button\">D</button>\n )}\n </div>\n ))}\n <div className=\"trainer-table-center\">\n\n <div className=\"board-cards section \">\n {(streetName === 'flop' || streetName === 'turn' || streetName === 'river') && (\n <>\n <CardSelector card=\"flopCards_1\" trainer=\"true\" />\n <CardSelector card=\"flopCards_2\" trainer=\"true\" />\n <CardSelector card=\"flopCards_3\" trainer=\"true\" />\n </>\n )}\n {(streetName === 'turn' || streetName === 'river') && <CardSelector card=\"turnCard\" trainer=\"true\" />}\n {streetName === 'river' && <CardSelector card=\"riverCard\" trainer=\"true\" />}\n </div>\n\n <div className=\"trainer-legend\">\n <div className=\"trainer-legend-item\">\n <span className=\"trainer-legend-color\" style={{ backgroundColor: '#4CAF50' }}></span>\n <span>Hero</span>\n </div>\n <div className=\"trainer-legend-item\">\n <span className=\"trainer-legend-color\" style={{ backgroundColor: '#FF5722' }}></span>\n <span>Villain</span>\n </div>\n Pot: {pot} bb\n </div>\n </div>\n </div>\n </div>\n <div className=\"trainer-controls-2\">\n {(currentAction && finishHand === 'false' && currentPlayer === 'Hero') && (\n <p className=\"heroAction\">Qué haces?</p>\n )}\n {(finishHand === 'false' && currentAction) ? (\n currentButtons.map((action, index) => (\n currentPlayer === 'Hero' ? (\n <button key={index} onClick={() => handleActionClick(action)}>\n {action.action.replace(/_/g, ' ')}\n </button>\n ) : (\n <React.Fragment key={index}>\n <p className=\"villainAction\">Villano hizo {action.action.replace(/_/g, ' ')}</p>\n <button onClick={() => handleActionClick(action)}>\n Ok\n </button>\n </React.Fragment>\n )\n ))\n ) : (\n <button onClick={resetHand}>Volver a jugar <FontAwesomeIcon icon=\"rotate-left\" size=\"1x\" /></button>\n )}\n </div>\n </div>\n <div className=\"trainer-responses\">\n <div className=\"trainer-responses-container\">\n <h3>Spot: {currentHand ? currentHand.handTitle : ''}</h3>\n <h5 style={{color:'white'}}>{currentHand ? currentHand.description : ''}</h5>\n\n <h4>Acciones:</h4>\n {Object.keys(responses).map(street => (\n <div key={street}>\n\n {responses[street].map((response, index) => (\n\n <p\n key={index}\n style={{ marginRight:'5px',color:'#f9f9f9', backgroundColor: isCorrectResponse(response, street) ? '#4caf50' : 'red', border:'1px solid #f9f9f9', width:'auto', padding:'3px',borderRadius:'5px' }}\n >\n {street}: {response.action.replace(/_/g, ' ')} {isCorrectResponse(response, street) ? <FontAwesomeIcon icon=\"check\" size=\"1x\" /> : <FontAwesomeIcon icon=\"xmark\" size=\"1x\" />}\n\n </p>\n\n ))}\n\n\n </div>\n ))}\n {finishHand === 'true' && (\n <>\n <div className=\"score\" style={{ color: scoreColor, fontSize:'20px',fontWeight:'bold' }}>\n Score: {scorePercentage}%\n\n </div>\n <Text style={{paddingTop:'5px',color:'white'}}>({score}/{totalActions} acciones correctas)</Text>\n <h5 style={{color:'yellow'}}>La accion correcta era {correctAnswer.replace('_',' ')}</h5>\n <Text style={{paddingTop:'20px',color:'white'}}>Notas: </Text>\n <p>Preflop</p>\n <div className=\"handNotes-trainer\" dangerouslySetInnerHTML={{__html: currentHand.preflopNotes}}></div>\n <p>Flop</p>\n <div className=\"handNotes-trainer\" dangerouslySetInnerHTML={{__html: currentHand.flopNotes}}></div>\n <p>Turn</p>\n <div className=\"handNotes-trainer\" dangerouslySetInnerHTML={{__html: currentHand.turnNotes}}></div>\n <p>River</p>\n <div className=\"handNotes-trainer\" dangerouslySetInnerHTML={{__html: currentHand.riverNotes}}></div>\n\n </>\n )}\n </div>\n </div>\n </div>\n );\n}\n\nexport default PokerTrainer;\n\n/*<React.Fragment key={index}>\n <p className=\"villainAction\">Villano hizo {action.action.replace(/_/g, ' ')}</p>\n <button onClick={() => handleActionClick(action)}>\n Ok\n </button>\n</React.Fragment>*/","import React, { useState, useEffect, useContext } from 'react';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport PokerHandMatrix from '../CardMatrix/PokerHandMatrix'\nimport { useAuthenticator } from '@aws-amplify/ui-react';\nimport './PokerStats.css';\nimport { generateClient } from \"aws-amplify/api\";\nimport { listHands as listHandsQuery } from \"../../graphql/queries\";\nimport PokerHand from 'poker-hand-evaluator';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css';\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\n\nconst client = generateClient();\nconst playerPositions6Max = ['SB', 'BB', 'UTG', 'MP', 'CO', 'BU'];\nconst posibleActions = [\"FOLD\", \"CALL\", \"RAISE_x3\", \"RAISE_x5\", \"ALL-IN\", \"CHECK\", \"BET_10%\", \"BET_25%\", \"BET_33%\", \"BET_50%\", \"BET_60%\", \"BET_75%\", \"BET_100%\", \"BET_125%\"];\nconst pokerSequences = [\n 'Juego IP as PFR',\n 'Juego OOP as PFR',\n '3bets IP',\n '3bets OOP',\n 'Call 3bets IP',\n 'Call 3bets OOP',\n 'SB vs BB',\n 'BB vs SB',\n 'BB defend OOP',\n 'Squeeze pots',\n '4bets IP',\n '4bets OOP',\n 'Call 4bets IP',\n 'Call 4bets OOP',\n 'Cold call IP'\n];\nconst boardTypes = ['No 3straight','3straight bajo','3straight medio','3straight alto','Monocolor','Pareado','HLL','HHL'];\nconst handStrengths = ['STRAIGHT_FLUSH','FOUR_OF_A_KIND','FULL_HOUSE','FLUSH','STRAIGHT','THREE_OF_A_KIND','TWO_PAIRS','ONE_PAIR','HIGH_CARD'];\nconst handSources = [\n { value: 'user', label: 'Mis Manos' },\n { value: 'crusher-nl50', label: 'Crushers - NL50' },\n { value: 'crusher-nl100', label: 'Crushers - NL100' },\n { value: 'crusher-nl200', label: 'Crushers - NL200' },\n { value: 'todos', label: 'Todos los crushers' },\n];\n\nconst suitColors = {\n 'â™ ': '#808080', // Gris para Espadas\n '♣': '#25C6A2', // Verde para Tréboles\n '♥': '#C62549', // Rojo para Corazones\n '♦': '#5e4fff' // Azul para Diamantes\n};\n\n\n\nfunction PokerStats({ sequence, stake, membership }) {\n const { signOut, user } = useAuthenticator();\n const { pokerHand, setPokerHand, pokerHandList, fetchPokerHandsTrainer, resetPokerHand, resetPokerHandList } = useContext(PokerHandContext);\n const [handsData, setHandsData] = useState([]);\n const [handsDataGrouped, setHandsDataGrouped] = useState([]);\n const [loading, setLoading] = useState(false);\n const [selectedActionsFlop, setSelectedActionsFlop] = useState([]);\n const [selectedActionsTurn, setSelectedActionsTurn] = useState([]);\n const [selectedActionsRiver, setSelectedActionsRiver] = useState([]);\n const [response, setResponse] = useState('');\n const [loadingGpt, setLoadingGpt] = useState(false);\n\n const [filters, setFilters] = useState({\n spot: [''],\n boardType: [''],\n flopAction: [''],\n turnAction: [''],\n riverAction: [''],\n handValueFlop: [''],\n handValueTurn: [''],\n handValueRiver: [''],\n });\n\n useEffect(() => {\n fetchAllHands('user','');\n }, []);\n\n const getSuitColor = (card) => {\n if (!card) return '#000'; // Color por defecto si la carta es nula o indefinida\n const suit = card.slice(-1);\n return suitColors[suit] || '#000';\n };\n\n const handleFilterChange = (e) => {\n\n\n\n if(e.target.name==='source')\n fetchAllHands(e.target.value,e.target.value);\n\n const options = e.target.options;\n const selectedValues = [];\n for (const option of options) {\n if (option.selected) {\n selectedValues.push(option.value);\n }\n }\n\n setFilters({\n ...filters,\n //[e.target.name]: e.target.value,\n [e.target.name]: selectedValues,\n });\n };\n\n const filterDataGrouped = (data) => {\n return data.filter(hand => {\n const { spot, boardType, flopAction, turnAction, riverAction } = filters;\n\n\n\n const spotMatch = spot.includes('') || spot.includes(hand.handTitle);\n const boardTypeMatch = boardType.includes('') || boardType.includes(hand.boardClassification);\n\n\n const flopActionMatch = flopAction.includes('') || hand.actions.flop\n .filter(action => action.player === 'Hero')\n .some(action => flopAction.includes(action.action));\n\n const turnActionMatch = turnAction.includes('') || hand.actions.turn\n .filter(action => action.player === 'Hero')\n .some(action => turnAction.includes(action.action));\n\n const riverActionMatch = riverAction.includes('') || hand.actions.river\n .filter(action => action.player === 'Hero')\n .some(action => riverAction.includes(action.action));\n\n return spotMatch && boardTypeMatch && flopActionMatch && turnActionMatch && riverActionMatch;\n });\n };\n\n\n const filterData = (data) => {\n\n return data.filter(hand => {\n\n\n const isHandValueFlopValid = (filters.handValueFlop.includes('') ||\n (hand.strength.flop !== null && filters.handValueFlop.includes(hand.strength.flop.rank)));\n\n const isHandValueTurnValid = (filters.handValueTurn.includes('') ||\n (hand.strength.turn !== null && filters.handValueTurn.includes(hand.strength.turn.rank)));\n\n const isHandValueRiverValid = (filters.handValueRiver.includes('') ||\n (hand.strength.river !== null && filters.handValueRiver.includes(hand.strength.river.rank)));\n\n\n const { spot, boardType, flopAction, turnAction, riverAction } = filters;\n\n const spotMatch = spot.includes('') || spot.includes(hand.handTitle);\n const boardTypeMatch = boardType.includes('') || boardType.includes(hand.boardClassification);\n\n const flopActionMatch = flopAction.includes('') || hand.actions.flop\n .filter(action => action.player === 'Hero')\n .some(action => flopAction.includes(action.action));\n\n const turnActionMatch = turnAction.includes('') || hand.actions.turn\n .filter(action => action.player === 'Hero')\n .some(action => turnAction.includes(action.action));\n\n const riverActionMatch = riverAction.includes('') || hand.actions.river\n .filter(action => action.player === 'Hero')\n .some(action => riverAction.includes(action.action));\n\n return spotMatch && boardTypeMatch && flopActionMatch && turnActionMatch && riverActionMatch && isHandValueFlopValid && isHandValueTurnValid && isHandValueRiverValid;\n });\n };\n\n\n\n\n const fetchAllHands = async (source = null, searchString='') => {\n setLoading(true);\n const filter = {};\n\n if (source == 'user') {\n filter.playerId = { eq: user.username };\n\n }else if(source == 'todos'){\n filter.description = { contains: '' };\n }\n else\n {\n filter.description = { contains: searchString };\n\n }\n\n\n try {\n const result = await client.graphql({\n query: listHandsQuery,\n variables: { filter }\n });\n\n\n const parseActions = (actionString) => {\n const actionList = actionString.slice(1, -1).split('},').map(action => action.endsWith('}') ? action : action + '}');\n return actionList.map(action => {\n const actionObj = {};\n action.replace(/[{}]/g, '').split(', ').forEach(part => {\n const [key, value] = part.split('=');\n actionObj[key.replace(/ /g, \"\")] = value;\n });\n return actionObj;\n });\n };\n\n const calculateHandStrength = (street, myHand, board) => {\n let combinedCards;\n\n for (let i = 0; i < myHand.length; i++) {\n\n if(myHand[i]=='' || myHand[i]==null)\n continue;\n\n myHand[i] = myHand[i].replace('â™ ','S');\n myHand[i] = myHand[i].replace('♣','C');\n myHand[i] = myHand[i].replace('♥','H');\n myHand[i] = myHand[i].replace('♦','D');\n }\n\n for (let i = 0; i < board.length; i++) {\n\n if(board[i]=='' || board[i]==null)\n continue;\n\n board[i] = board[i].replace('â™ ','S');\n board[i] = board[i].replace('♣','C');\n board[i] = board[i].replace('♥','H');\n board[i] = board[i].replace('♦','D');\n }\n\n switch (street) {\n case 'flop':\n combinedCards = [...myHand, ...board.slice(0, 3)];\n\n break;\n case 'turn':\n combinedCards = [...myHand, ...board.slice(0, 4)];\n break;\n case 'river':\n combinedCards = [...myHand, ...board];\n break;\n default:\n break;\n }\n\n\n // Función para obtener todas las combinaciones de n elementos de un array\n const getAllCombinations = (array, n) => {\n const results = [];\n\n const combine = (prefix, array) => {\n if (prefix.length === n) {\n results.push(prefix);\n return;\n }\n\n for (let i = 0; i < array.length; i++) {\n combine([...prefix, array[i]], array.slice(i + 1));\n }\n };\n\n combine([], array);\n return results;\n };\n\n // Función para evaluar todas las combinaciones y retornar la mejor mano\n const getBestHand = (combinations) => {\n\n let bestHand = null;\n let handEval = null;\n\n combinations.forEach((combination) => {\n\n //console.log(combination.join(' '));\n\n if(combination[3]=='' || combination[4]=='' )\n return;\n\n try {\n handEval = new PokerHand(combination.join(' '));\n }catch{\n return;\n }\n\n if (!bestHand || handEval.score < bestHand.score) {\n bestHand = handEval;\n }\n });\n\n return bestHand;\n };\n\n const allCombinations = getAllCombinations(combinedCards, 5);\n //console.log(street, allCombinations);\n\n const bestHand = getBestHand(allCombinations);\n\n return bestHand;\n };\n\n\n\n const classifyBoard = (flopCards) => {\n const cardValues = flopCards.map(card => \"23456789TJQKA\".indexOf(card[0]));\n const cardSuits = flopCards.map(card => card[1]);\n const isMonocolor = cardSuits.every(suit => suit === cardSuits[0]);\n const sortedValues = cardValues.slice().sort((a, b) => a - b);\n const isConsecutive = sortedValues[2] - sortedValues[0] === 2 && new Set(sortedValues).size === 3;\n const hasPair = new Set(sortedValues).size < 3;\n\n if (hasPair) {\n return 'Pareado';\n } else if (isMonocolor) {\n return 'Monocolor';\n } else if (isConsecutive) {\n if (sortedValues[2] < 8) {\n return '3straight bajo';\n } else if (sortedValues[0] > 4 && sortedValues[2] < 12) {\n return '3straight medio';\n } else {\n return '3straight alto';\n }\n } else if (sortedValues.every(value => value < 11)) {\n return 'No 3straight';\n } else if (sortedValues.filter(value => value > 10).length === 1) {\n return 'HLL';\n } else if (sortedValues.filter(value => value > 10).length === 2) {\n return 'HHL';\n } else {\n return 'Otro';\n }\n };\n\n const reestructurarData = (data) => {\n if (!data || !data.listHands || !Array.isArray(data.listHands.items)) {\n console.error(\"Data o sus propiedades necesarias no están definidas.\");\n return [];\n }\n\n return data.listHands.items.map(hand => {\n const {\n handTitle,\n description,\n myHand_1,\n myHand_2,\n flopCards_1,\n flopCards_2,\n flopCards_3,\n turnCard,\n riverCard,\n flopAction,\n turnAction,\n riverAction\n } = hand;\n\n const flopCards = [flopCards_1, flopCards_2, flopCards_3];\n const boardClassification = classifyBoard(flopCards);\n\n return {\n handTitle,\n description,\n myHand: [myHand_1, myHand_2],\n board: [flopCards_1, flopCards_2, flopCards_3, turnCard, riverCard],\n boardClassification,\n actions: {\n flop: parseActions(flopAction),\n turn: parseActions(turnAction),\n river: parseActions(riverAction)\n },\n strength: {\n flop: calculateHandStrength('flop',[myHand_1, myHand_2],[flopCards_1, flopCards_2, flopCards_3, turnCard, riverCard]),\n turn: calculateHandStrength('turn',[myHand_1, myHand_2],[flopCards_1, flopCards_2, flopCards_3, turnCard, riverCard]),\n river: calculateHandStrength('river',[myHand_1, myHand_2],[flopCards_1, flopCards_2, flopCards_3, turnCard, riverCard])\n }\n };\n });\n };\n\n const groupDataByHandTitleAndBoardType = (data) => {\n const groupedData = {};\n data.forEach(hand => {\n const key = `${hand.handTitle} + ${hand.boardClassification}`;\n if (!groupedData[key]) {\n groupedData[key] = {\n handTitle: hand.handTitle,\n boardClassification: hand.boardClassification,\n actions: { flop: [], turn: [], river: [] },\n strength: { flop: [], turn: [], river: [] }\n };\n }\n groupedData[key].actions.flop.push(...hand.actions.flop);\n groupedData[key].actions.turn.push(...hand.actions.turn);\n groupedData[key].actions.river.push(...hand.actions.river);\n // groupedData[key].strength.flop.push(...hand.strength.flop);\n // groupedData[key].strength.turn.push(...hand.strength.turn);\n // groupedData[key].strength.river.push(...hand.strength.river);\n });\n\n // Convertir el objeto a un array y ordenar por handTitle\n return Object.values(groupedData).sort((a, b) => a.handTitle.localeCompare(b.handTitle));\n };\n\n try {\n const nuevaData = reestructurarData(result.data);\n setHandsData(nuevaData);\n//console.log(nuevaData);\n const groupedData = groupDataByHandTitleAndBoardType(nuevaData);\n setHandsDataGrouped(groupedData);\n\n } catch (error) {\n console.error('Error fetching hands response:', error.message);\n }\n\n } catch (error) {\n console.error('Error fetching hands response:', error);\n } finally {\n setLoading(false);\n }\n };\n\n const processActions = (actions, sort) => {\n\n const actionCounts = { 'FOLD': 0,'CHECK': 0, 'CALL': 0, 'RAISE_x3': 0, 'RAISE_x5': 0, 'BET_10%': 0, 'BET_25%': 0, 'BET_33%': 0, 'BET_50%': 0, 'BET_60%': 0, 'BET_75%': 0, 'BET_100%': 0, 'BET_125%': 0, 'ALL_IN': 0 };\n let totalActions = 0;\n\n //console.log(actions);\n\n actions.forEach(action => {\n if (action.player === \"Hero\") {\n const actionType = action.action;//.replace(/[-_]/g, '');\n if (actionCounts[actionType] !== undefined) {\n actionCounts[actionType]++;\n totalActions++;\n }\n }\n });\n\n const actionPercentages = {};\n Object.keys(actionCounts).forEach(key => {\n if (actionCounts[key] > 0) {\n actionPercentages[key] = (actionCounts[key] / totalActions) * 100;\n }\n });\n\n\n const sortedActionPercentages = Object.entries(actionPercentages)\n .sort(([, a], [, b]) => b - a)\n .reduce((acc, [key, value]) => {\n acc[key] = value;\n return acc;\n }, {});\n\n return sortedActionPercentages;\n };\n\n const getColorForPercentage = (percentage, maxPercentage) => {\n const intensity = (percentage / maxPercentage) * 255;\n const r = 255 - intensity;\n const g = intensity;\n const b = 0;\n const alpha = 0.8;\n\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n };\n\n\n const renderActionDivs = (actionPercentages) => {\n const maxPercentage = Math.max(...Object.values(actionPercentages));\n\n return Object.keys(actionPercentages).map((action, index) => (\n <div key={index} className=\"action-div\" style={{ backgroundColor: getColorForPercentage(actionPercentages[action], maxPercentage) }}>\n <div className=\"action-div-action\">{action.replace(/_/g, \" \")}</div>\n <div className=\"action-div-freq\">{actionPercentages[action].toFixed(0)}%</div>\n </div>\n ));\n };\n\n const renderActionDivsIndividual = (actionPercentages) => {\n return actionPercentages\n .filter(action => action.action !== \"NONE\")\n .map(action => {\n let actionClass = '';\n\n switch (action.action.toLowerCase()) {\n case 'all-in':\n actionClass = 'all-in';\n break;\n case 'raise_x3':\n case 'raise_x5':\n actionClass = 'raise';\n break;\n case 'bet_10%':\n case 'bet_25%':\n case 'bet_33%':\n case 'bet_50%':\n case 'bet_75%':\n case 'bet_100%':\n actionClass = 'bet50';\n break;\n case 'bet_125%':\n actionClass = 'bet125';\n break;\n case 'fold':\n actionClass = 'fold';\n break;\n case 'call':\n actionClass = 'call';\n break;\n case 'check':\n actionClass = 'check';\n break;\n default:\n break;\n }\n\n return (\n <div key={action.order} className={action.player==='Hero' ? `action-div ${actionClass}`:'action-div-vill'}>\n <div className=\"action-div-action\">{action.action.replace('NONE', \"\").replace('BET_125%', \"Over Bet\").replace(/_/g, \" \")}</div>\n <div className=\"action-div-freq\">{action.player}</div>\n </div>\n );\n });\n };\n\n function cleanHandsArray(handsArray) {\n\n\n return handsArray.map(pokerHand => ({\n hand: {\n title: pokerHand.handTitle,\n description: pokerHand.description,\n hero_cards: pokerHand.myHand_1 + pokerHand.myHand_2,\n villain_position: playerPositions6Max[pokerHand.villainPosition],\n hero_position: playerPositions6Max[pokerHand.heroPosition],\n streets: {\n preflop: {\n actions: pokerHand.preflopAction\n },\n flop: {\n cards: pokerHand.flopCards_1 + pokerHand.flopCards_2 + pokerHand.flopCards_3,\n actions: pokerHand.flopAction\n },\n turn: {\n cards: pokerHand.turnCard,\n actions: pokerHand.turnAction\n },\n river: {\n cards: pokerHand.riverCard,\n actions: pokerHand.riverAction\n }\n }\n }\n }));\n }\n\n\n const fetchOpenAIResponse = async () => {\n setLoadingGpt(true);\n const API_KEY = process.env.REACT_APP_OPENAI_API_KEY;\n const endpoint = 'https://api.openai.com/v1/chat/completions'; // Updated endpoint\n const handDataHistory = filterData(handsData);\n console.log(handDataHistory);\n\n const prompt = `\n Ejemplo de Manos:\n ${JSON.stringify(handDataHistory, null, 2)}\n `;\n\n\n const data = {\n model: \"gpt-3.5-turbo\",\n messages: [\n {\n role: \"system\",\n content: prompt\n },\n {\n role: \"user\",\n content: `basado en el historial de manos que te proporcione, puedes darme insights sobre tendencias de Hero en las lineas de accion indicando la accion mas frecuente de Hero en cada calle y sus tamaños de apuesta en cada calle. Considera las manos en su conjunto, no me des respuestas de manos individuales.`\n //content: `Tengo esta informacion de mi mano de poker :\\n\\nHand Data:\\n${JSON.stringify(handData, null, 2)}`\n }\n ],\n max_tokens: 500, // Limiting the tokens\n temperature: 0.3, // Setting the temperature\n top_p: 0.2\n };\n\n try {\n const res = await fetch(endpoint, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': 'Bearer ' + API_KEY,\n },\n body: JSON.stringify(data),\n });\n\n if (!res.ok) {\n const error = await res.json();\n console.error('Error response from OpenAI:', error);\n throw new Error(`Error: ${error.message}`);\n }\n\n const result = await res.json();\n setResponse(result.choices[0].message.content);\n //setSavedNote(pokerHand[`${id.toLowerCase()}Notes`] + ' - **ChatGPT: ' + result.choices[0].message.content);\n } catch (error) {\n console.error('Error fetching OpenAI response:', error);\n } finally {\n setLoadingGpt(false);\n }\n };\n\n return (\n\n <div className=\"poker-stats-wrapper\">\n <div className=\"filters-wrapper\">\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"dice-d6\" size=\"1x\" /> Fuente</span>\n <select className=\"input\" name=\"source\" value={filters.source} onChange={handleFilterChange}>\n\n {handSources.map((source, index) => (\n <option key={index} value={source.value}>{source.label}</option>\n ))}\n </select>\n\n <div className=\"tooltip\">\n\n <FontAwesomeIcon icon=\"circle-question\" size=\"1x\" />\n\n <span className=\"tooltip-text\">Deja la tecla Control presionada para seleccionar mas de una opción.</span>\n </div>\n\n </div>\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"bullseye\" size=\"1x\" /> Spot</span>\n <select className=\"input\" multiple={true} name=\"spot\" value={filters.spot} onChange={handleFilterChange}>\n <option value=\"\">Todos</option>\n {pokerSequences.map((sequence, index) => (\n <option key={index} value={sequence}>{sequence}</option>\n ))}\n </select>\n </div>\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"clipboard-list\" size=\"1x\" /> Tipo Board</span>\n <select className=\"input\" multiple={true} name=\"boardType\" value={filters.boardType} onChange={handleFilterChange}>\n <option value=\"\">Todos</option>\n {boardTypes.map((boards, index) => (\n <option key={index} value={boards}>{boards}</option>\n ))}\n </select>\n </div>\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"crosshairs\" size=\"1x\" /> Acción FLOP</span>\n <select className=\"input\" multiple={true} name=\"flopAction\" value={filters.flopAction} onChange={handleFilterChange}>\n <option value=\"\">Todos</option>\n {posibleActions.map((actions, index) => (\n <option key={index} value={actions}>{actions.replace('_',' ')}</option>\n ))}\n </select>\n </div>\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"crosshairs\" size=\"1x\" /> Acción TURN</span>\n <select className=\"input\" multiple={true} name=\"turnAction\" value={filters.turnAction} onChange={handleFilterChange}>\n <option value=\"\">Todos</option>\n {posibleActions.map((actions, index) => (\n <option key={index} value={actions}>{actions.replace('_',' ')}</option>\n ))}\n </select>\n </div>\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"crosshairs\" size=\"1x\" /> Acción RIVER</span>\n <select className=\"input\" multiple={true} name=\"riverAction\" value={filters.riverAction} onChange={handleFilterChange}>\n <option value=\"\">Todos</option>\n {posibleActions.map((actions, index) => (\n <option key={index} value={actions}>{actions.replace('_',' ')}</option>\n ))}\n </select>\n </div>\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"magnifying-glass-dollar\" size=\"1x\" /> Valor al FLOP</span>\n <select className=\"input\" multiple={true} name=\"handValueFlop\" value={filters.handValueFlop} onChange={handleFilterChange}>\n <option value=\"\">Todos</option>\n {handStrengths.map((strengths, index) => (\n <option key={index} value={strengths}>{strengths.replace('_',' ')}</option>\n ))}\n </select>\n </div>\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"magnifying-glass-dollar\" size=\"1x\" /> Valor al TURN</span>\n <select className=\"input\" multiple={true} name=\"handValueTurn\" value={filters.handValueTurn} onChange={handleFilterChange}>\n <option value=\"\">Todos</option>\n {handStrengths.map((strengths, index) => (\n <option key={index} value={strengths}>{strengths.replace('_',' ')}</option>\n ))}\n </select>\n </div>\n <div className=\"selector-wrapper\">\n <span><FontAwesomeIcon icon=\"magnifying-glass-dollar\" size=\"1x\" /> Valor al RIVER</span>\n <select className=\"input\" multiple={true} name=\"handValueRiver\" value={filters.handValueRiver} onChange={handleFilterChange}>\n <option value=\"\">Todos</option>\n {handStrengths.map((strengths, index) => (\n <option key={index} value={strengths}>{strengths.replace('_',' ')}</option>\n ))}\n </select>\n </div>\n\n </div>\n\n {loading ? (\n <p>Loading...</p>\n ) : (\n <div className=\"poker-stats-table-wrapper-1\">\n\n <table className=\"poker-stats-table\">\n <thead style={{backgroundColor:'#000F18'}}>\n <tr >\n <th style={{fontWeight: 'bold',textAlign:'left'}}>Spot</th>\n <th style={{fontWeight: 'bold',textAlign:'left',leftPadding:'10px'}}>Tipo de board</th>\n <th>Flop Actions</th>\n <th>Turn Actions</th>\n <th>River Actions</th>\n </tr>\n </thead>\n <tbody>\n {filterDataGrouped(handsDataGrouped).map((hand, index) => (\n <tr key={index}>\n <td style={{fontWeight: 'bold',textAlign:'left'}}>{hand.handTitle}</td>\n <td style={{color: '#00ECB3',textAlign:'left',leftPadding:'10px'}}>{hand.boardClassification}</td>\n <td >\n <div className=\"action-container\">\n {renderActionDivs(processActions(hand.actions.flop))}\n </div>\n </td>\n <td>\n <div className=\"action-container\">\n {renderActionDivs(processActions(hand.actions.turn))}\n </div>\n </td>\n <td >\n <div className=\"action-container\">\n {renderActionDivs(processActions(hand.actions.river))}\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )}\n\n {loading ? (\n <p>Loading...</p>\n ) : (\n <div className=\"poker-stats-table-wrapper-2\">\n <table className=\"poker-stats-table\">\n <thead style={{backgroundColor:'#000F18'}}>\n <tr >\n\n <th>Hand</th>\n <th>Flop</th>\n <th>Turn</th>\n <th>River</th>\n <th>Flop Actions</th>\n <th>Turn Actions</th>\n <th>River Actions</th>\n <th>Flop Strength</th>\n <th>Turn Strength</th>\n <th>River Strength</th>\n </tr>\n </thead>\n <tbody>\n {filterData(handsData).map((hand, index) => (\n <tr key={index}>\n\n <td style={{color: '#00ECB3',textAlign:'left',leftPadding:'10px',width:'80px'}}>\n <div className=\"card\" style={{ color: getSuitColor(hand.myHand[0]) }}>{hand.myHand[0]}</div>\n <div className=\"card\" style={{ color: getSuitColor(hand.myHand[1]) }}>{hand.myHand[1]}</div>\n </td>\n <td style={{color: '#00ECB3',textAlign:'left',leftPadding:'10px',width:'120px'}}>\n {(hand.board[0]!='') ? (\n <>\n <div className=\"card\" style={{ color: getSuitColor(hand.board[0]) }}>{hand.board[0]}</div>\n <div className=\"card\" style={{ color: getSuitColor(hand.board[1]) }}>{hand.board[1]}</div>\n <div className=\"card\" style={{ color: getSuitColor(hand.board[2]) }}>{hand.board[2]}</div>\n </>\n ):''}\n </td>\n <td style={{color: '#00ECB3',textAlign:'left',leftPadding:'10px'}}>\n {(hand.board[3]!='') ? (\n <>\n <div className=\"card\" style={{ color: getSuitColor(hand.board[3]) }}>{hand.board[3]}</div>\n </>\n ):''}\n </td>\n <td style={{color: '#00ECB3',textAlign:'left',leftPadding:'10px'}}>\n {(hand.board[4]!='') ? (\n <>\n <div className=\"card\" style={{ color: getSuitColor(hand.board[4]) }}>{hand.board[4]}</div>\n </>\n ):''}\n </td>\n <td >\n <div className=\"action-container\">\n {renderActionDivsIndividual(hand.actions.flop)}\n </div>\n </td>\n <td>\n <div className=\"action-container\">\n {renderActionDivsIndividual(hand.actions.turn)}\n </div>\n </td>\n <td >\n <div className=\"action-container\">\n {renderActionDivsIndividual(hand.actions.river)}\n </div>\n </td>\n <td >\n <div className=\"action-container\">\n {(hand.board[0]!='' && hand.strength.flop!==null) ? hand.strength.flop.rank.replace('_',' '):''}\n </div>\n </td>\n <td>\n <div className=\"action-container\">\n {(hand.board[3]!='' && hand.strength.turn!==null) ? hand.strength.turn.rank.replace('_',' '):''}\n </div>\n </td>\n <td >\n <div className=\"action-container\">\n {(hand.board[4]!='' && hand.strength.river!==null) ? hand.strength.river.rank.replace('_',' '):''}\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )}\n\n </div>\n\n );\n}\n\nexport default PokerStats;\n\n/*\n <div className=\"insights-gpt\">{response}</div>\n<div className=\"tooltip-gpt\">\n <button className=\"chatGPT-note\" onClick={fetchOpenAIResponse} disabled={loading || membership === 'BASIC'}>\n {loadingGpt ? 'Loading...' : (<FontAwesomeIcon icon=\"robot\" />)}\n </button>\n <span className=\"tooltip-text\">ChatGPT (Experimental)</span>\n </div>\n */","import React, { useState, useEffect, useContext } from 'react';\nimport './PokerRanges.css';\nimport { useAuthenticator } from '@aws-amplify/ui-react';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css';\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\nimport CardMatrix from '../CardMatrix/CardMatrix';\nimport {createRanges, updateRanges, deleteRanges, createTrainings} from \"../../graphql/mutations\";\nimport { generateClient } from \"aws-amplify/api\";\nimport {listRanges} from \"../../graphql/queries\";\nlibrary.add(fas);\n\nconst client = generateClient();\n\nfunction PokerRanges() {\n const { pokerHand } = useContext(PokerHandContext);\n const { user, signOut } = useAuthenticator();\n\n const [ranges, setRanges] = useState([]);\n const [rangeFromChild, setRangeFromChild] = useState('');\n const [rangeIdFromChild, setRangeIdFromChild] = useState('');\n\n const handleValueChange = (newValue,rangeId) => {\n setRangeFromChild(newValue); // Aquà recibimos el valor desde el hijo\n setRangeIdFromChild(rangeId);\n };\n\n const addRange = () => {\n const newRange = {\n id: Date.now(),\n title: `Nuevo Rango`,\n range: '{}',\n selectedColorCode: null, // Nuevo campo para almacenar el color seleccionado\n colors: [\n { code: 1 , color: '#16974b', description: 'Raise' },\n { code: 2 , color: '#ffd60d', description: 'Call' },\n { code: 3 , color: '#ff116e', description: 'Fold' },\n { code: 4 , color: '#4682B4', description: 'OR' },\n { code: 5 , color: '#818280', description: 'Limp' }\n ]\n };\n setRanges(prevRanges => [...prevRanges, newRange]);\n\n try {\n\n const createRange = async (rangeId, playerId, title, range,colors) => {\n const newTraining = await client.graphql({\n query: createRanges,\n variables: {\n input: {\n \"rangeId\": rangeId,\n \"palyerId\": playerId,\n \"title\": title,\n \"range\": range,\n \"colors\": JSON.stringify(colors),\n\n }\n }\n });\n };\n\n //console.log('Save training',currentHand.id + ' ' + user.username+ ' ' + scorePercentage);\n createRange(newRange.id ,user.username, newRange.title,newRange.range,newRange.colors);\n\n\n\n } catch (error) {\n console.error('Error creating range:', error);\n }\n\n\n };\n\n const removeRange = (id) => {\n\n setRanges(prevRanges => prevRanges.filter(range => range.id !== id));\n try {\n\n const removeRange = async (rangeId, playerId) => {\n const newTraining = await client.graphql({\n query: deleteRanges,\n variables: {\n input: {\n \"id\":rangeId,\n\n }\n }\n });\n };\n\n //console.log('Save training',currentHand.id + ' ' + user.username+ ' ' + scorePercentage);\n removeRange(id ,user.username);\n\n\n\n } catch (error) {\n console.error('Error creating range:', error);\n }\n };\n\n const updateRange = (id, newRange) => {\n setRanges(prevRanges =>\n prevRanges.map(range =>\n range.id === id ? { ...range, range: newRange } : range\n )\n );\n };\n\n const updateRangeTitle = (id, newTitle) => {\n setRanges(prevRanges =>\n prevRanges.map(range =>\n range.id === id ? { ...range, title: newTitle } : range\n )\n );\n };\n\n const updateColorDescription = (rangeId, colorIndex, newDescription) => {\n setRanges(prevRanges =>\n prevRanges.map(range =>\n range.id === rangeId\n ? {\n ...range,\n colors: range.colors.map((color, index) =>\n index === colorIndex\n ? { ...color, description: newDescription }\n : color\n )\n }\n : range\n )\n );\n };\n\n const selectColor = (rangeId, colorCode) => {\n setRanges(prevRanges =>\n prevRanges.map(range =>\n range.id === rangeId ? { ...range, selectedColorCode: colorCode } : range\n )\n );\n };\n\n const saveRange = (id) => {\n const rangeToSave = ranges.find(range => range.id === id);\n console.log('Guardando rango:', rangeToSave);\n // Aquà puedes agregar la lógica para guardar el rango, por ejemplo, enviándolo a una API o actualizando el estado global\n\n try {\n const updateRange = async (id, playerId) => {\n const newMembers = await client.graphql({\n query: updateRanges,\n variables: {\n input: {\n \"id\":id,\n \"rangeId\": rangeToSave.rangeId,\n \"palyerId\": rangeToSave.playerId,\n \"title\": rangeToSave.title,\n \"range\": rangeToSave.range,\n \"colors\": JSON.stringify(rangeToSave.colors),\n\n }\n }\n });\n };\n\n updateRange(id, user.username);\n } catch {\n console.log('Error updating');\n }\n };\n\n const grid = [];\n for (let i = 0; i < ranges.length; i += 3) {\n grid.push(ranges.slice(i, i + 3));\n }\n\n useEffect(() => {\n // Aquà podrÃas cargar datos desde una API si es necesario\n\n updateRange(rangeIdFromChild,rangeFromChild);\n\n\n }, [rangeFromChild]);\n\n useEffect(() => {\n // Aquà podrÃas cargar datos desde una API si es necesario\n\n\n const fetchRanges = async (playerId=null) => {\n try {\n const filter = { };\n\n if (playerId) {\n filter.palyerId = { eq: playerId };\n }\n\n\n const result = await client.graphql({\n query: listRanges,\n variables: { filter }\n });\n\n // Accede al array de items que viene en la respuesta\n const fetchedRanges = result.data.listRanges.items;\n\n //console.log(result);\n\n const transformedRanges = fetchedRanges.map(range => ({\n ...range,\n colors: JSON.parse(range.colors) // Si 'colors' viene como string JSON desde el backend\n }));\n\n setRanges(transformedRanges);\n\n\n } catch (error) {\n console.log(error);\n }\n };\n\n fetchRanges(user.username);\n\n }, []);\n\n return (\n <div className=\"ranges-grid-container\">\n <div className=\"ranges-grid-instructions\">\n <button onClick={addRange}><FontAwesomeIcon icon=\"plus\" size=\"1x\" /> Agregar Rango</button>\n <div>\n Instrucciones:\n <p>Puedes editar el titulo de cada rango y la glosa de cada etiqueta para acomodarlas a tus necesidades haciendo click sobre el texto.</p>\n <p>Para dibujar los rangos puedes hacer click en una celda y esta cambiará de color. Varios clicks hacen que la celda cambie a los distintos colores de cada etiqueta.</p>\n <p>Para dibujar los rangos más rápido haz click derecho sobre una celda y mantén apretado el botón, luego arrastra el mouse para cambiar el color de las celdas.</p>\n </div>\n </div>\n <div className=\"ranges-grid\">\n {grid.map((row, rowIndex) => (\n <div key={rowIndex} className=\"ranges-row\">\n {row.map((rangeItem, colIndex) => (\n <div key={colIndex} className=\"ranges-cell\">\n <div className=\"range-buttons\">\n <input\n type=\"text\"\n className=\"range-title-input\"\n value={rangeItem.title}\n onChange={(e) => updateRangeTitle(rangeItem.id, e.target.value)}\n />\n <button\n className=\"save-button\"\n onClick={() => saveRange(rangeItem.id)}\n >\n <FontAwesomeIcon icon=\"floppy-disk\" size=\"1x\" />\n </button>\n <button\n className=\"remove-button\"\n onClick={() => removeRange(rangeItem.id)}\n >\n <FontAwesomeIcon icon=\"square-xmark\" size=\"1x\" />\n </button>\n </div>\n <CardMatrix rangeId={rangeItem.id} range={rangeItem.range} onValueChange={handleValueChange}/>\n <div className=\"color-tags\">\n {rangeItem.colors.map((colorItem, index) => (\n <div key={index} className=\"color-tag-container\">\n <span\n className={`color-tag ${rangeItem.selectedColorCode === colorItem.code ? 'selected' : ''}`}\n style={{ backgroundColor: colorItem.color }}\n ></span>\n <input\n type=\"text\"\n className=\"color-description-input\"\n value={colorItem.description}\n onChange={(e) =>\n updateColorDescription(rangeItem.id, index, e.target.value)\n }\n />\n\n </div>\n ))}\n </div>\n\n </div>\n ))}\n </div>\n ))}\n </div>\n </div>\n );\n}\n\nexport default PokerRanges;\n","import React, { useState, useEffect, useContext } from 'react';\nimport './PokerDeals.css';\nimport { useAuthenticator } from '@aws-amplify/ui-react';\nimport { PokerHandContext } from '../PokerHandContext/PokerHandContext';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport '@fortawesome/fontawesome-svg-core/styles.css';\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { fas } from '@fortawesome/free-solid-svg-icons';\n\n// Importar las imágenes desde assets\nimport LogoRedstar from '../../assets/Redstar.jpg';\nimport LogoChampion from '../../assets/Champion.jpg';\nimport LogoGG from '../../assets/ggpoker.jpg';\nimport LogoCoinpoker from '../../assets/Coinpoker.jpg';\nimport LogoACR from '../../assets/Acr.jpg';\nimport LogoBodog from '../../assets/Bodog.jpg';\n\nlibrary.add(fas);\n\nfunction PokerDeals() {\n const { pokerHand } = useContext(PokerHandContext);\n const { user } = useAuthenticator();\n\n // Arreglo con la información de los Poker Deals, incluyendo imágenes\n const [deals, setDeals] = useState([\n { title: 'Redstar', description: '- 35% flat Rakeback \\n' +\n '- Welcome bonus clear at 10% \\n' +\n '- Unlimited reload bonuses ', rb: '$100', imageUrl: LogoRedstar, link:'https://c.rsppartners.com/clickthrgh?btag=a_11867b_28l_1' },\n { title: 'Champion Poker', description: '- Top iPoker deal \\n' +\n '- 30% Rakeback \\n' +\n '- Agent deal crypto deposit ( 0% admin fee) \\n' +\n '- Rake chase (value from 10% - 16.67% value)', rb: '$200', imageUrl: LogoChampion, link:'https://online.championpoker.com/promoRedirect?key=ej0xMzUzMDc4OSZsPTEzNTI0MzE2JnA9NDYyNQ%3D%3D' },\n { title: 'GG Poker', description: '- $600 Bonus - 60% Rakeback', rb: '$300', imageUrl: LogoGG , link:'https://click.ggpartners.com/?serial=4779&creative_id=3275&anid=' },\n { title: 'Coin Poker', description: '- 30% Rakeback - USA welcome - 100% crypto', rb: '$400', imageUrl: LogoCoinpoker, link:'https://record.coinpokeraffiliates.com/_vaFTMGO1HKlhg6WO2I1rgWNd7ZgqdRLk/21/' },\n { title: 'ACR Poker', description: '- $1000 Bonus - USA Welcome - Big multi tables tournaments - Crypto Deposits', rb: '$500', imageUrl: LogoACR, link:'https://record.secure.acraffiliates.com/_XNQv-UmOIkKnMd4BJjTdCGNd7ZgqdRLk/58/' },\n { title: 'Bodog', description: '- $1000 Bonus', rb: '$600', imageUrl: LogoBodog, link:'https://record.revenuenetwork.com/_PnEi1Lre7bY3aXuVKnmDUmNd7ZgqdRLk/104/' },\n // Agrega más deals según sea necesario\n ]);\n\n useEffect(() => {\n // Lógica adicional si es necesario\n }, [pokerHand.id]);\n\n return (\n <div className=\"deals-grid-container\">\n {deals.length === 0 ? (\n <p>No deals available.</p>\n ) : (\n <div className=\"deals-grid\">\n {deals.map((deal, index) => (\n <div key={index} className=\"deal-item\">\n <img src={deal.imageUrl} alt={deal.title} className=\"deal-image\" />\n <h3>{deal.title}</h3>\n <p>{deal.description}</p>\n <p> </p>\n <button onClick={() => window.open(deal.link, '_blank', 'noopener,noreferrer')}>\n Get Deal\n </button>\n </div>\n ))}\n </div>\n )}\n </div>\n );\n}\n\nexport default PokerDeals;\n","import { millisecondsInHour, millisecondsInMinute } from \"./constants.mjs\";\n\n/**\n * The {@link parseISO} function options.\n */\n\n/**\n * @name parseISO\n * @category Common Helpers\n * @summary Parse ISO string\n *\n * @description\n * Parse the given string in ISO 8601 format and return an instance of Date.\n *\n * Function accepts complete ISO 8601 formats as well as partial implementations.\n * ISO 8601: http://en.wikipedia.org/wiki/ISO_8601\n *\n * If the argument isn't a string, the function cannot parse the string or\n * the values are invalid, it returns Invalid Date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param argument - The value to convert\n * @param options - An object with options\n *\n * @returns The parsed date in the local time zone\n *\n * @example\n * // Convert string '2014-02-11T11:30:30' to date:\n * const result = parseISO('2014-02-11T11:30:30')\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert string '+02014101' to date,\n * // if the additional number of digits in the extended year format is 1:\n * const result = parseISO('+02014101', { additionalDigits: 1 })\n * //=> Fri Apr 11 2014 00:00:00\n */\nexport function parseISO(argument, options) {\n const additionalDigits = options?.additionalDigits ?? 2;\n const dateStrings = splitDateString(argument);\n\n let date;\n if (dateStrings.date) {\n const parseYearResult = parseYear(dateStrings.date, additionalDigits);\n date = parseDate(parseYearResult.restDateString, parseYearResult.year);\n }\n\n if (!date || isNaN(date.getTime())) {\n return new Date(NaN);\n }\n\n const timestamp = date.getTime();\n let time = 0;\n let offset;\n\n if (dateStrings.time) {\n time = parseTime(dateStrings.time);\n if (isNaN(time)) {\n return new Date(NaN);\n }\n }\n\n if (dateStrings.timezone) {\n offset = parseTimezone(dateStrings.timezone);\n if (isNaN(offset)) {\n return new Date(NaN);\n }\n } else {\n const dirtyDate = new Date(timestamp + time);\n // JS parsed string assuming it's in UTC timezone\n // but we need it to be parsed in our timezone\n // so we use utc values to build date in our timezone.\n // Year values from 0 to 99 map to the years 1900 to 1999\n // so set year explicitly with setFullYear.\n const result = new Date(0);\n result.setFullYear(\n dirtyDate.getUTCFullYear(),\n dirtyDate.getUTCMonth(),\n dirtyDate.getUTCDate(),\n );\n result.setHours(\n dirtyDate.getUTCHours(),\n dirtyDate.getUTCMinutes(),\n dirtyDate.getUTCSeconds(),\n dirtyDate.getUTCMilliseconds(),\n );\n return result;\n }\n\n return new Date(timestamp + time + offset);\n}\n\nconst patterns = {\n dateTimeDelimiter: /[T ]/,\n timeZoneDelimiter: /[Z ]/i,\n timezone: /([Z+-].*)$/,\n};\n\nconst dateRegex =\n /^-?(?:(\\d{3})|(\\d{2})(?:-?(\\d{2}))?|W(\\d{2})(?:-?(\\d{1}))?|)$/;\nconst timeRegex =\n /^(\\d{2}(?:[.,]\\d*)?)(?::?(\\d{2}(?:[.,]\\d*)?))?(?::?(\\d{2}(?:[.,]\\d*)?))?$/;\nconst timezoneRegex = /^([+-])(\\d{2})(?::?(\\d{2}))?$/;\n\nfunction splitDateString(dateString) {\n const dateStrings = {};\n const array = dateString.split(patterns.dateTimeDelimiter);\n let timeString;\n\n // The regex match should only return at maximum two array elements.\n // [date], [time], or [date, time].\n if (array.length > 2) {\n return dateStrings;\n }\n\n if (/:/.test(array[0])) {\n timeString = array[0];\n } else {\n dateStrings.date = array[0];\n timeString = array[1];\n if (patterns.timeZoneDelimiter.test(dateStrings.date)) {\n dateStrings.date = dateString.split(patterns.timeZoneDelimiter)[0];\n timeString = dateString.substr(\n dateStrings.date.length,\n dateString.length,\n );\n }\n }\n\n if (timeString) {\n const token = patterns.timezone.exec(timeString);\n if (token) {\n dateStrings.time = timeString.replace(token[1], \"\");\n dateStrings.timezone = token[1];\n } else {\n dateStrings.time = timeString;\n }\n }\n\n return dateStrings;\n}\n\nfunction parseYear(dateString, additionalDigits) {\n const regex = new RegExp(\n \"^(?:(\\\\d{4}|[+-]\\\\d{\" +\n (4 + additionalDigits) +\n \"})|(\\\\d{2}|[+-]\\\\d{\" +\n (2 + additionalDigits) +\n \"})$)\",\n );\n\n const captures = dateString.match(regex);\n // Invalid ISO-formatted year\n if (!captures) return { year: NaN, restDateString: \"\" };\n\n const year = captures[1] ? parseInt(captures[1]) : null;\n const century = captures[2] ? parseInt(captures[2]) : null;\n\n // either year or century is null, not both\n return {\n year: century === null ? year : century * 100,\n restDateString: dateString.slice((captures[1] || captures[2]).length),\n };\n}\n\nfunction parseDate(dateString, year) {\n // Invalid ISO-formatted year\n if (year === null) return new Date(NaN);\n\n const captures = dateString.match(dateRegex);\n // Invalid ISO-formatted string\n if (!captures) return new Date(NaN);\n\n const isWeekDate = !!captures[4];\n const dayOfYear = parseDateUnit(captures[1]);\n const month = parseDateUnit(captures[2]) - 1;\n const day = parseDateUnit(captures[3]);\n const week = parseDateUnit(captures[4]);\n const dayOfWeek = parseDateUnit(captures[5]) - 1;\n\n if (isWeekDate) {\n if (!validateWeekDate(year, week, dayOfWeek)) {\n return new Date(NaN);\n }\n return dayOfISOWeekYear(year, week, dayOfWeek);\n } else {\n const date = new Date(0);\n if (\n !validateDate(year, month, day) ||\n !validateDayOfYearDate(year, dayOfYear)\n ) {\n return new Date(NaN);\n }\n date.setUTCFullYear(year, month, Math.max(dayOfYear, day));\n return date;\n }\n}\n\nfunction parseDateUnit(value) {\n return value ? parseInt(value) : 1;\n}\n\nfunction parseTime(timeString) {\n const captures = timeString.match(timeRegex);\n if (!captures) return NaN; // Invalid ISO-formatted time\n\n const hours = parseTimeUnit(captures[1]);\n const minutes = parseTimeUnit(captures[2]);\n const seconds = parseTimeUnit(captures[3]);\n\n if (!validateTime(hours, minutes, seconds)) {\n return NaN;\n }\n\n return (\n hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * 1000\n );\n}\n\nfunction parseTimeUnit(value) {\n return (value && parseFloat(value.replace(\",\", \".\"))) || 0;\n}\n\nfunction parseTimezone(timezoneString) {\n if (timezoneString === \"Z\") return 0;\n\n const captures = timezoneString.match(timezoneRegex);\n if (!captures) return 0;\n\n const sign = captures[1] === \"+\" ? -1 : 1;\n const hours = parseInt(captures[2]);\n const minutes = (captures[3] && parseInt(captures[3])) || 0;\n\n if (!validateTimezone(hours, minutes)) {\n return NaN;\n }\n\n return sign * (hours * millisecondsInHour + minutes * millisecondsInMinute);\n}\n\nfunction dayOfISOWeekYear(isoWeekYear, week, day) {\n const date = new Date(0);\n date.setUTCFullYear(isoWeekYear, 0, 4);\n const fourthOfJanuaryDay = date.getUTCDay() || 7;\n const diff = (week - 1) * 7 + day + 1 - fourthOfJanuaryDay;\n date.setUTCDate(date.getUTCDate() + diff);\n return date;\n}\n\n// Validation functions\n\n// February is null to handle the leap year (using ||)\nconst daysInMonths = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n\nfunction isLeapYearIndex(year) {\n return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0);\n}\n\nfunction validateDate(year, month, date) {\n return (\n month >= 0 &&\n month <= 11 &&\n date >= 1 &&\n date <= (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28))\n );\n}\n\nfunction validateDayOfYearDate(year, dayOfYear) {\n return dayOfYear >= 1 && dayOfYear <= (isLeapYearIndex(year) ? 366 : 365);\n}\n\nfunction validateWeekDate(_year, week, day) {\n return week >= 1 && week <= 53 && day >= 0 && day <= 6;\n}\n\nfunction validateTime(hours, minutes, seconds) {\n if (hours === 24) {\n return minutes === 0 && seconds === 0;\n }\n\n return (\n seconds >= 0 &&\n seconds < 60 &&\n minutes >= 0 &&\n minutes < 60 &&\n hours >= 0 &&\n hours < 25\n );\n}\n\nfunction validateTimezone(_hours, minutes) {\n return minutes >= 0 && minutes <= 59;\n}\n\n// Fallback for modularized imports:\nexport default parseISO;\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name isBefore\n * @category Common Helpers\n * @summary Is the first date before the second one?\n *\n * @description\n * Is the first date before the second one?\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The date that should be before the other one to return true\n * @param dateToCompare - The date to compare with\n *\n * @returns The first date is before the second date\n *\n * @example\n * // Is 10 July 1989 before 11 February 1987?\n * const result = isBefore(new Date(1989, 6, 10), new Date(1987, 1, 11))\n * //=> false\n */\nexport function isBefore(date, dateToCompare) {\n const _date = toDate(date);\n const _dateToCompare = toDate(dateToCompare);\n return +_date < +_dateToCompare;\n}\n\n// Fallback for modularized imports:\nexport default isBefore;\n","import { AnyObject, Primitive } from './types';\n\n/**\n * Checks if the value is of a specified type.\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction isOfType<T extends Primitive | Function>(type: string) {\n // eslint-disable-next-line valid-typeof\n return (value: unknown): value is T => typeof value === type;\n}\n\n/**\n * Checks if the value is a JavaScript function.\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport const isFunction = isOfType<Function>('function');\n\n/**\n * Check if the value is null.\n */\nexport const isNull = (value: unknown): value is null => {\n return value === null;\n};\n\n/**\n * Checks if the input is a regular expression.\n */\nexport const isRegex = (value: unknown): value is RegExp => {\n return Object.prototype.toString.call(value).slice(8, -1) === 'RegExp';\n};\n\n/**\n * Checks if the value is an object.\n */\nexport const isObject = (value: unknown): value is AnyObject => {\n return !isUndefined(value) && !isNull(value) && (isFunction(value) || typeof value === 'object');\n};\n\n/**\n * Checks if the value is undefined.\n */\nexport const isUndefined = isOfType<undefined>('undefined');\n","import { isObject, isRegex } from './helpers';\n\n/**\n * Check if arrays are equal.\n */\nfunction equalArray(left: unknown[], right: unknown[]) {\n const { length } = left;\n\n if (length !== right.length) {\n return false;\n }\n\n for (let index = length; index-- !== 0; ) {\n if (!equal(left[index], right[index])) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Check if array buffers are equal.\n */\nfunction equalArrayBuffer(left: ArrayBufferView, right: ArrayBufferView) {\n if (left.byteLength !== right.byteLength) {\n return false;\n }\n\n const view1 = new DataView(left.buffer);\n const view2 = new DataView(right.buffer);\n\n let index = left.byteLength;\n\n while (index--) {\n if (view1.getUint8(index) !== view2.getUint8(index)) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Check if maps are equal.\n */\nfunction equalMap(left: Map<unknown, unknown>, right: Map<unknown, unknown>) {\n if (left.size !== right.size) {\n return false;\n }\n\n for (const index of left.entries()) {\n if (!right.has(index[0])) {\n return false;\n }\n }\n\n for (const index of left.entries()) {\n if (!equal(index[1], right.get(index[0]))) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Check if sets are equal.\n */\nfunction equalSet(left: Set<unknown>, right: Set<unknown>) {\n if (left.size !== right.size) {\n return false;\n }\n\n for (const index of left.entries()) {\n if (!right.has(index[0])) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Checks if two values are equal.\n */\nexport default function equal(left: unknown, right: unknown) {\n if (left === right) {\n return true;\n }\n\n if (left && isObject(left) && right && isObject(right)) {\n if (left.constructor !== right.constructor) {\n return false;\n }\n\n if (Array.isArray(left) && Array.isArray(right)) {\n return equalArray(left, right);\n }\n\n if (left instanceof Map && right instanceof Map) {\n return equalMap(left, right);\n }\n\n if (left instanceof Set && right instanceof Set) {\n return equalSet(left, right);\n }\n\n if (ArrayBuffer.isView(left) && ArrayBuffer.isView(right)) {\n return equalArrayBuffer(left, right);\n }\n\n if (isRegex(left) && isRegex(right)) {\n return left.source === right.source && left.flags === right.flags;\n }\n\n if (left.valueOf !== Object.prototype.valueOf) {\n return left.valueOf() === right.valueOf();\n }\n\n if (left.toString !== Object.prototype.toString) {\n return left.toString() === right.toString();\n }\n\n const leftKeys = Object.keys(left);\n const rightKeys = Object.keys(right);\n\n if (leftKeys.length !== rightKeys.length) {\n return false;\n }\n\n for (let index = leftKeys.length; index-- !== 0; ) {\n if (!Object.prototype.hasOwnProperty.call(right, leftKeys[index])) {\n return false;\n }\n }\n\n for (let index = leftKeys.length; index-- !== 0; ) {\n const key = leftKeys[index];\n\n if (key === '_owner' && left.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (!equal(left[key], right[key])) {\n return false;\n }\n }\n\n return true;\n }\n\n if (Number.isNaN(left) && Number.isNaN(right)) {\n return true;\n }\n\n return left === right;\n}\n","/* eslint-disable @typescript-eslint/ban-types */\nimport type { ObjectTypes, Primitive, PrimitiveTypes } from './types';\n\nexport const objectTypes = [\n 'Array',\n 'ArrayBuffer',\n 'AsyncFunction',\n 'AsyncGenerator',\n 'AsyncGeneratorFunction',\n 'Date',\n 'Error',\n 'Function',\n 'Generator',\n 'GeneratorFunction',\n 'HTMLElement',\n 'Map',\n 'Object',\n 'Promise',\n 'RegExp',\n 'Set',\n 'WeakMap',\n 'WeakSet',\n] as const;\n\nexport const primitiveTypes = [\n 'bigint',\n 'boolean',\n 'null',\n 'number',\n 'string',\n 'symbol',\n 'undefined',\n] as const;\n\nexport function getObjectType(value: unknown): ObjectTypes | undefined {\n const objectTypeName = Object.prototype.toString.call(value).slice(8, -1);\n\n if (/HTML\\w+Element/.test(objectTypeName)) {\n return 'HTMLElement';\n }\n\n if (isObjectType(objectTypeName)) {\n return objectTypeName;\n }\n\n return undefined;\n}\n\nexport function isObjectOfType<T>(type: string) {\n return (value: unknown): value is T => getObjectType(value) === type;\n}\n\nexport function isObjectType(name: unknown): name is ObjectTypes {\n return objectTypes.includes(name as ObjectTypes);\n}\n\nexport function isOfType<T extends Primitive | Function>(type: string) {\n // eslint-disable-next-line valid-typeof\n return (value: unknown): value is T => typeof value === type;\n}\n\nexport function isPrimitiveType(name: unknown): name is PrimitiveTypes {\n return primitiveTypes.includes(name as PrimitiveTypes);\n}\n","/* eslint-disable @typescript-eslint/ban-types */\nimport { getObjectType, isObjectOfType, isOfType, isPrimitiveType } from './helpers';\nimport type { Class, PlainObject, Primitive, TypeName } from './types';\n\nconst DOM_PROPERTIES_TO_CHECK: Array<keyof HTMLElement> = [\n 'innerHTML',\n 'ownerDocument',\n 'style',\n 'attributes',\n 'nodeValue',\n];\n\nfunction is(value: unknown): TypeName {\n if (value === null) {\n return 'null';\n }\n\n switch (typeof value) {\n case 'bigint':\n return 'bigint';\n case 'boolean':\n return 'boolean';\n case 'number':\n return 'number';\n case 'string':\n return 'string';\n case 'symbol':\n return 'symbol';\n case 'undefined':\n return 'undefined';\n default:\n }\n\n if (is.array(value)) {\n return 'Array';\n }\n\n if (is.plainFunction(value)) {\n return 'Function';\n }\n\n const tagType = getObjectType(value);\n\n if (tagType) {\n return tagType;\n }\n /* c8 ignore next 3 */\n\n return 'Object';\n}\n\nis.array = Array.isArray;\n\nis.arrayOf = (target: unknown[], predicate: (v: unknown) => boolean): boolean => {\n if (!is.array(target) && !is.function(predicate)) {\n return false;\n }\n\n return target.every(d => predicate(d));\n};\n\nis.asyncGeneratorFunction = (value: unknown): value is (...arguments_: any[]) => Promise<unknown> =>\n getObjectType(value) === 'AsyncGeneratorFunction';\n\nis.asyncFunction = isObjectOfType<Function>('AsyncFunction');\n\nis.bigint = isOfType<bigint>('bigint');\n\nis.boolean = (value: unknown): value is boolean => {\n return value === true || value === false;\n};\n\nis.date = isObjectOfType<Date>('Date');\n\nis.defined = (value: unknown): boolean => !is.undefined(value);\n\nis.domElement = (value: unknown): value is HTMLElement => {\n return (\n is.object(value) &&\n !is.plainObject(value) &&\n (value as HTMLElement).nodeType === 1 &&\n is.string((value as HTMLElement).nodeName) &&\n DOM_PROPERTIES_TO_CHECK.every(property => property in (value as HTMLElement))\n );\n};\n\nis.empty = (value: unknown): boolean => {\n return (\n (is.string(value) && value.length === 0) ||\n (is.array(value) && value.length === 0) ||\n (is.object(value) && !is.map(value) && !is.set(value) && Object.keys(value).length === 0) ||\n (is.set(value) && value.size === 0) ||\n (is.map(value) && value.size === 0)\n );\n};\n\nis.error = isObjectOfType<Error>('Error');\n\nis.function = isOfType<Function>('function');\n\nis.generator = (value: unknown): value is Generator => {\n return (\n is.iterable(value) &&\n is.function((value as IterableIterator<unknown>).next) &&\n is.function((value as IterableIterator<unknown>).throw)\n );\n};\n\nis.generatorFunction = isObjectOfType<GeneratorFunction>('GeneratorFunction');\n\nis.instanceOf = <T>(instance: unknown, class_: Class<T>): instance is T => {\n if (!instance || !(class_ as Class<T>)) {\n return false;\n }\n\n return Object.getPrototypeOf(instance) === class_.prototype;\n};\n\nis.iterable = (value: unknown): value is IterableIterator<unknown> => {\n return (\n !is.nullOrUndefined(value) && is.function((value as IterableIterator<unknown>)[Symbol.iterator])\n );\n};\n\nis.map = isObjectOfType<Map<unknown, unknown>>('Map');\n\nis.nan = (value: unknown): boolean => {\n return Number.isNaN(value as number);\n};\n\nis.null = (value: unknown): value is null => {\n return value === null;\n};\n\nis.nullOrUndefined = (value: unknown): value is null | undefined => {\n return is.null(value) || is.undefined(value);\n};\n\nis.number = (value: unknown): value is number => {\n return isOfType<number>('number')(value) && !is.nan(value);\n};\n\nis.numericString = (value: unknown): value is string => {\n return is.string(value) && (value as string).length > 0 && !Number.isNaN(Number(value));\n};\n\nis.object = (value: unknown): value is object => {\n return !is.nullOrUndefined(value) && (is.function(value) || typeof value === 'object');\n};\n\nis.oneOf = (target: unknown[], value: any): boolean => {\n if (!is.array(target)) {\n return false;\n }\n\n // eslint-disable-next-line unicorn/prefer-includes\n return target.indexOf(value) > -1;\n};\n\nis.plainFunction = isObjectOfType<Function>('Function');\n\nis.plainObject = (value: unknown): value is PlainObject => {\n if (getObjectType(value) !== 'Object') {\n return false;\n }\n\n const prototype = Object.getPrototypeOf(value);\n\n return prototype === null || prototype === Object.getPrototypeOf({});\n};\n\nis.primitive = (value: unknown): value is Primitive =>\n is.null(value) || isPrimitiveType(typeof value);\n\nis.promise = isObjectOfType<Promise<unknown>>('Promise');\n\nis.propertyOf = (\n target: PlainObject,\n key: string,\n predicate?: (v: unknown) => boolean,\n): boolean => {\n if (!is.object(target) || !key) {\n return false;\n }\n\n const value = target[key];\n\n if (is.function(predicate)) {\n return predicate(value);\n }\n\n return is.defined(value);\n};\n\nis.regexp = isObjectOfType<RegExp>('RegExp');\n\nis.set = isObjectOfType<Set<PlainObject>>('Set');\n\nis.string = isOfType<string>('string');\n\nis.symbol = isOfType<symbol>('symbol');\n\nis.undefined = isOfType<undefined>('undefined');\n\nis.weakMap = isObjectOfType<WeakMap<PlainObject, unknown>>('WeakMap');\n\nis.weakSet = isObjectOfType<WeakSet<PlainObject>>('WeakSet');\n\nexport default is;\n","import equal from '@gilbarbara/deep-equal';\nimport is from 'is-lite';\n\nimport { CompareValuesOptions, Data, Key, Options, ValidTypes, Value } from './types';\n\nexport function canHaveLength(...arguments_: any): boolean {\n return arguments_.every((d: unknown) => is.string(d) || is.array(d) || is.plainObject(d));\n}\n\nexport function checkEquality(left: Data, right: Data, value: Value) {\n if (!isSameType(left, right)) {\n return false;\n }\n\n if ([left, right].every(is.array)) {\n return !left.some(hasValue(value)) && right.some(hasValue(value));\n }\n\n /* istanbul ignore else */\n if ([left, right].every(is.plainObject)) {\n return (\n !Object.entries(left).some(hasEntry(value)) && Object.entries(right).some(hasEntry(value))\n );\n }\n\n return right === value;\n}\n\nexport function compareNumbers<K = Key>(\n previousData: Data,\n data: Data,\n options: Options<K>,\n): boolean {\n const { actual, key, previous, type } = options;\n const left = nested(previousData, key);\n const right = nested(data, key);\n\n let changed =\n [left, right].every(is.number) && (type === 'increased' ? left < right : left > right);\n\n if (!is.undefined(actual)) {\n changed = changed && right === actual;\n }\n\n if (!is.undefined(previous)) {\n changed = changed && left === previous;\n }\n\n return changed;\n}\n\nexport function compareValues<K = Key>(\n previousData: Data,\n data: Data,\n options: CompareValuesOptions<K>,\n) {\n const { key, type, value } = options;\n\n const left = nested(previousData, key);\n const right = nested(data, key);\n const primary = type === 'added' ? left : right;\n const secondary = type === 'added' ? right : left;\n\n if (!is.nullOrUndefined(value)) {\n if (is.defined(primary)) {\n // check if nested data matches\n if (is.array(primary) || is.plainObject(primary)) {\n return checkEquality(primary, secondary, value);\n }\n } else {\n return equal(secondary, value);\n }\n\n return false;\n }\n\n if ([left, right].every(is.array)) {\n return !secondary.every(isEqualPredicate(primary));\n }\n\n if ([left, right].every(is.plainObject)) {\n return hasExtraKeys(Object.keys(primary), Object.keys(secondary));\n }\n\n return (\n ![left, right].every(d => is.primitive(d) && is.defined(d)) &&\n (type === 'added'\n ? !is.defined(left) && is.defined(right)\n : is.defined(left) && !is.defined(right))\n );\n}\n\nexport function getIterables<K = Key>(previousData: Data, data: Data, { key }: Options<K> = {}) {\n let left = nested(previousData, key);\n let right = nested(data, key);\n\n if (!isSameType(left, right)) {\n throw new TypeError('Inputs have different types');\n }\n\n if (!canHaveLength(left, right)) {\n throw new TypeError(\"Inputs don't have length\");\n }\n\n if ([left, right].every(is.plainObject)) {\n left = Object.keys(left);\n right = Object.keys(right);\n }\n\n return [left, right];\n}\n\nexport function hasEntry(input: Value) {\n return ([key, value]: [string, Value]) => {\n if (is.array(input)) {\n return (\n equal(input, value) ||\n input.some(d => equal(d, value) || (is.array(value) && isEqualPredicate(value)(d)))\n );\n }\n\n /* istanbul ignore else */\n if (is.plainObject(input) && input[key]) {\n return !!input[key] && equal(input[key], value);\n }\n\n return equal(input, value);\n };\n}\n\nexport function hasExtraKeys(left: string[], right: string[]): boolean {\n return right.some(d => !left.includes(d));\n}\n\nexport function hasValue(input: Value) {\n return (value: Value) => {\n if (is.array(input)) {\n return input.some(d => equal(d, value) || (is.array(value) && isEqualPredicate(value)(d)));\n }\n\n return equal(input, value);\n };\n}\n\nexport function includesOrEqualsTo<T>(previousValue: T | T[], value: T): boolean {\n return is.array(previousValue)\n ? previousValue.some(d => equal(d, value))\n : equal(previousValue, value);\n}\n\nexport function isEqualPredicate(data: unknown[]) {\n return (value: unknown) => data.some(d => equal(d, value));\n}\n\nexport function isSameType(...arguments_: ValidTypes[]): boolean {\n return (\n arguments_.every(is.array) ||\n arguments_.every(is.number) ||\n arguments_.every(is.plainObject) ||\n arguments_.every(is.string)\n );\n}\n\nexport function nested<T extends Data, K = Key>(data: T, property?: K) {\n /* istanbul ignore else */\n if (is.plainObject(data) || is.array(data)) {\n /* istanbul ignore else */\n if (is.string(property)) {\n const props: Array<any> = property.split('.');\n\n return props.reduce((acc, d) => acc && acc[d], data);\n }\n\n /* istanbul ignore else */\n if (is.number(property)) {\n return data[property];\n }\n\n return data;\n }\n\n return data;\n}\n","import equal from '@gilbarbara/deep-equal';\nimport is from 'is-lite';\n\nimport { compareNumbers, compareValues, getIterables, includesOrEqualsTo, nested } from './helpers';\nimport { Data, KeyType, TreeChanges, Value } from './types';\n\nexport default function treeChanges<P extends Data, D extends Data, K = KeyType<P, D>>(\n previousData: P,\n data: D,\n): TreeChanges<K> {\n if ([previousData, data].some(is.nullOrUndefined)) {\n throw new Error('Missing required parameters');\n }\n\n if (![previousData, data].every(d => is.plainObject(d) || is.array(d))) {\n throw new Error('Expected plain objects or array');\n }\n\n const added = (key?: K, value?: Value): boolean => {\n try {\n return compareValues<K>(previousData, data, { key, type: 'added', value });\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const changed = (key?: K | string, actual?: Value, previous?: Value): boolean => {\n try {\n const left = nested(previousData, key);\n const right = nested(data, key);\n const hasActual = is.defined(actual);\n const hasPrevious = is.defined(previous);\n\n if (hasActual || hasPrevious) {\n const leftComparator = hasPrevious\n ? includesOrEqualsTo(previous, left)\n : !includesOrEqualsTo(actual, left);\n const rightComparator = includesOrEqualsTo(actual, right);\n\n return leftComparator && rightComparator;\n }\n\n if ([left, right].every(is.array) || [left, right].every(is.plainObject)) {\n return !equal(left, right);\n }\n\n return left !== right;\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const changedFrom = (key: K | string, previous: Value, actual?: Value): boolean => {\n if (!is.defined(key)) {\n return false;\n }\n\n try {\n const left = nested(previousData, key);\n const right = nested(data, key);\n const hasActual = is.defined(actual);\n\n return (\n includesOrEqualsTo(previous, left) &&\n (hasActual ? includesOrEqualsTo(actual, right) : !hasActual)\n );\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const decreased = (key: K, actual?: Value, previous?: Value): boolean => {\n if (!is.defined(key)) {\n return false;\n }\n\n try {\n return compareNumbers<K>(previousData, data, { key, actual, previous, type: 'decreased' });\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const emptied = (key?: K): boolean => {\n try {\n const [left, right] = getIterables(previousData, data, { key });\n\n return !!left.length && !right.length;\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const filled = (key?: K): boolean => {\n try {\n const [left, right] = getIterables(previousData, data, { key });\n\n return !left.length && !!right.length;\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const increased = (key: K, actual?: Value, previous?: Value): boolean => {\n if (!is.defined(key)) {\n return false;\n }\n\n try {\n return compareNumbers<K>(previousData, data, { key, actual, previous, type: 'increased' });\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const removed = (key?: K, value?: Value): boolean => {\n try {\n return compareValues<K>(previousData, data, { key, type: 'removed', value });\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n return { added, changed, changedFrom, decreased, emptied, filled, increased, removed };\n}\n\nexport type { Data, KeyType, TreeChanges, Value } from './types';\n","export default typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n","import isBrowser from './isBrowser';\n\nconst timeoutDuration = (function(){\n const longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (let i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}());\n\nexport function microtaskDebounce(fn) {\n let called = false\n return () => {\n if (called) {\n return\n }\n called = true\n window.Promise.resolve().then(() => {\n called = false\n fn()\n })\n }\n}\n\nexport function taskDebounce(fn) {\n let scheduled = false;\n return () => {\n if (!scheduled) {\n scheduled = true;\n setTimeout(() => {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nconst supportsMicroTasks = isBrowser && window.Promise\n\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nexport default (supportsMicroTasks\n ? microtaskDebounce\n : taskDebounce);\n","/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nexport default function isFunction(functionToCheck) {\n const getType = {};\n return (\n functionToCheck &&\n getType.toString.call(functionToCheck) === '[object Function]'\n );\n}\n","/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nexport default function getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n const window = element.ownerDocument.defaultView;\n const css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n","/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nexport default function getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n","import getStyleComputedProperty from './getStyleComputedProperty';\nimport getParentNode from './getParentNode';\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nexport default function getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body\n case '#document':\n return element.body\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n const { overflow, overflowX, overflowY } = getStyleComputedProperty(element);\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n","/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nexport default function getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n","import isBrowser from './isBrowser';\n\nconst isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nconst isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nexport default function isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n","import getStyleComputedProperty from './getStyleComputedProperty';\nimport isIE from './isIE';\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nexport default function getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n const noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n let offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n const nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (\n ['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 &&\n getStyleComputedProperty(offsetParent, 'position') === 'static'\n ) {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n","/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nexport default function getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n","import isOffsetContainer from './isOffsetContainer';\nimport getRoot from './getRoot';\nimport getOffsetParent from './getOffsetParent';\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nexport default function findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n const order =\n element1.compareDocumentPosition(element2) &\n Node.DOCUMENT_POSITION_FOLLOWING;\n const start = order ? element1 : element2;\n const end = order ? element2 : element1;\n\n // Get common ancestor container\n const range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n const { commonAncestorContainer } = range;\n\n // Both nodes are inside #document\n if (\n (element1 !== commonAncestorContainer &&\n element2 !== commonAncestorContainer) ||\n start.contains(end)\n ) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n const element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n","import getOffsetParent from './getOffsetParent';\n\nexport default function isOffsetContainer(element) {\n const { nodeName } = element;\n if (nodeName === 'BODY') {\n return false;\n }\n return (\n nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element\n );\n}\n","/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nexport default function getScroll(element, side = 'top') {\n const upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n const nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n const html = element.ownerDocument.documentElement;\n const scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n","/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nexport default function getBordersSize(styles, axis) {\n const sideA = axis === 'x' ? 'Left' : 'Top';\n const sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return (\n parseFloat(styles[`border${sideA}Width`]) +\n parseFloat(styles[`border${sideB}Width`])\n );\n}\n","import isIE from './isIE';\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(\n body[`offset${axis}`],\n body[`scroll${axis}`],\n html[`client${axis}`],\n html[`offset${axis}`],\n html[`scroll${axis}`],\n isIE(10)\n ? (parseInt(html[`offset${axis}`]) + \n parseInt(computedStyle[`margin${axis === 'Height' ? 'Top' : 'Left'}`]) + \n parseInt(computedStyle[`margin${axis === 'Height' ? 'Bottom' : 'Right'}`]))\n : 0 \n );\n}\n\nexport default function getWindowSizes(document) {\n const body = document.body;\n const html = document.documentElement;\n const computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle),\n };\n}\n","/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nexport default function getClientRect(offsets) {\n return {\n ...offsets,\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height,\n };\n}\n","import getStyleComputedProperty from './getStyleComputedProperty';\nimport getBordersSize from './getBordersSize';\nimport getWindowSizes from './getWindowSizes';\nimport getScroll from './getScroll';\nimport getClientRect from './getClientRect';\nimport isIE from './isIE';\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nexport default function getBoundingClientRect(element) {\n let rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n const scrollTop = getScroll(element, 'top');\n const scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n }\n else {\n rect = element.getBoundingClientRect();\n }\n }\n catch(e){}\n\n const result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top,\n };\n\n // subtract scrollbar size from sizes\n const sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n const width =\n sizes.width || element.clientWidth || result.width;\n const height =\n sizes.height || element.clientHeight || result.height;\n\n let horizScrollbar = element.offsetWidth - width;\n let vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n const styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n","import getStyleComputedProperty from './getStyleComputedProperty';\nimport includeScroll from './includeScroll';\nimport getScrollParent from './getScrollParent';\nimport getBoundingClientRect from './getBoundingClientRect';\nimport runIsIE from './isIE';\nimport getClientRect from './getClientRect';\n\nexport default function getOffsetRectRelativeToArbitraryNode(children, parent, fixedPosition = false) {\n const isIE10 = runIsIE(10);\n const isHTML = parent.nodeName === 'HTML';\n const childrenRect = getBoundingClientRect(children);\n const parentRect = getBoundingClientRect(parent);\n const scrollParent = getScrollParent(children);\n\n const styles = getStyleComputedProperty(parent);\n const borderTopWidth = parseFloat(styles.borderTopWidth);\n const borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if(fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n let offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height,\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n const marginTop = parseFloat(styles.marginTop);\n const marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (\n isIE10 && !fixedPosition\n ? parent.contains(scrollParent)\n : parent === scrollParent && scrollParent.nodeName !== 'BODY'\n ) {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n","import getScroll from './getScroll';\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nexport default function includeScroll(rect, element, subtract = false) {\n const scrollTop = getScroll(element, 'top');\n const scrollLeft = getScroll(element, 'left');\n const modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n","import getStyleComputedProperty from './getStyleComputedProperty';\nimport getParentNode from './getParentNode';\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nexport default function isFixed(element) {\n const nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n const parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n","import getStyleComputedProperty from './getStyleComputedProperty';\nimport isIE from './isIE';\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nexport default function getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n let el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n\n}\n","import getScrollParent from './getScrollParent';\nimport getParentNode from './getParentNode';\nimport getReferenceNode from './getReferenceNode';\nimport findCommonOffsetParent from './findCommonOffsetParent';\nimport getOffsetRectRelativeToArbitraryNode from './getOffsetRectRelativeToArbitraryNode';\nimport getViewportOffsetRectRelativeToArtbitraryNode from './getViewportOffsetRectRelativeToArtbitraryNode';\nimport getWindowSizes from './getWindowSizes';\nimport isFixed from './isFixed';\nimport getFixedPositionOffsetParent from './getFixedPositionOffsetParent';\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nexport default function getBoundaries(\n popper,\n reference,\n padding,\n boundariesElement,\n fixedPosition = false\n) {\n // NOTE: 1 DOM access here\n\n let boundaries = { top: 0, left: 0 };\n const offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport' ) {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n }\n\n else {\n // Handle other cases based on DOM element used as boundaries\n let boundariesNode;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n const offsets = getOffsetRectRelativeToArbitraryNode(\n boundariesNode,\n offsetParent,\n fixedPosition\n );\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n const { height, width } = getWindowSizes(popper.ownerDocument);\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n const isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0; \n boundaries.top += isPaddingNumber ? padding : padding.top || 0; \n boundaries.right -= isPaddingNumber ? padding : padding.right || 0; \n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0; \n\n return boundaries;\n}\n","import getOffsetRectRelativeToArbitraryNode from './getOffsetRectRelativeToArbitraryNode';\nimport getScroll from './getScroll';\nimport getClientRect from './getClientRect';\n\nexport default function getViewportOffsetRectRelativeToArtbitraryNode(element, excludeScroll = false) {\n const html = element.ownerDocument.documentElement;\n const relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n const width = Math.max(html.clientWidth, window.innerWidth || 0);\n const height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n const scrollTop = !excludeScroll ? getScroll(html) : 0;\n const scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n const offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width,\n height,\n };\n\n return getClientRect(offset);\n}\n","import getBoundaries from '../utils/getBoundaries';\n\nfunction getArea({ width, height }) {\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function computeAutoPlacement(\n placement,\n refRect,\n popper,\n reference,\n boundariesElement,\n padding = 0\n) {\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n const boundaries = getBoundaries(\n popper,\n reference,\n padding,\n boundariesElement\n );\n\n const rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top,\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height,\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom,\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height,\n },\n };\n\n const sortedAreas = Object.keys(rects)\n .map(key => ({\n key,\n ...rects[key],\n area: getArea(rects[key]),\n }))\n .sort((a, b) => b.area - a.area);\n\n const filteredAreas = sortedAreas.filter(\n ({ width, height }) =>\n width >= popper.clientWidth && height >= popper.clientHeight\n );\n\n const computedPlacement = filteredAreas.length > 0\n ? filteredAreas[0].key\n : sortedAreas[0].key;\n\n const variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? `-${variation}` : '');\n}\n","import findCommonOffsetParent from './findCommonOffsetParent';\nimport getOffsetRectRelativeToArbitraryNode from './getOffsetRectRelativeToArbitraryNode';\nimport getFixedPositionOffsetParent from './getFixedPositionOffsetParent';\nimport getReferenceNode from './getReferenceNode';\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nexport default function getReferenceOffsets(state, popper, reference, fixedPosition = null) {\n const commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n","/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nexport default function getOuterSizes(element) {\n const window = element.ownerDocument.defaultView;\n const styles = window.getComputedStyle(element);\n const x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n const y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n const result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x,\n };\n return result;\n}\n","/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nexport default function getOppositePlacement(placement) {\n const hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, matched => hash[matched]);\n}\n","import getOuterSizes from './getOuterSizes';\nimport getOppositePlacement from './getOppositePlacement';\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nexport default function getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n const popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n const popperOffsets = {\n width: popperRect.width,\n height: popperRect.height,\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n const isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n const mainSide = isHoriz ? 'top' : 'left';\n const secondarySide = isHoriz ? 'left' : 'top';\n const measurement = isHoriz ? 'height' : 'width';\n const secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] =\n referenceOffsets[mainSide] +\n referenceOffsets[measurement] / 2 -\n popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] =\n referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] =\n referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n","/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nexport default function find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n","import isFunction from './isFunction';\nimport findIndex from './findIndex';\nimport getClientRect from '../utils/getClientRect';\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nexport default function runModifiers(modifiers, data, ends) {\n const modifiersToRun = ends === undefined\n ? modifiers\n : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(modifier => {\n if (modifier['function']) { // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n const fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n","import find from './find';\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nexport default function findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(cur => cur[prop] === value);\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n const match = find(arr, obj => obj[prop] === value);\n return arr.indexOf(match);\n}\n","import computeAutoPlacement from '../utils/computeAutoPlacement';\nimport getReferenceOffsets from '../utils/getReferenceOffsets';\nimport getPopperOffsets from '../utils/getPopperOffsets';\nimport runModifiers from '../utils/runModifiers';\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.<br />\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nexport default function update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n let data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {},\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(\n this.state,\n this.popper,\n this.reference,\n this.options.positionFixed\n );\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(\n this.options.placement,\n data.offsets.reference,\n this.popper,\n this.reference,\n this.options.modifiers.flip.boundariesElement,\n this.options.modifiers.flip.padding\n );\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(\n this.popper,\n data.offsets.reference,\n data.placement\n );\n\n data.offsets.popper.position = this.options.positionFixed\n ? 'fixed'\n : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n","/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nexport default function isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(\n ({ name, enabled }) => enabled && name === modifierName\n );\n}\n","/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nexport default function getSupportedPropertyName(property) {\n const prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n const upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (let i = 0; i < prefixes.length; i++) {\n const prefix = prefixes[i];\n const toCheck = prefix ? `${prefix}${upperProp}` : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n","import isModifierEnabled from '../utils/isModifierEnabled';\nimport getSupportedPropertyName from '../utils/getSupportedPropertyName';\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nexport default function destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n","/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nexport default function getWindow(element) {\n const ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n","import getScrollParent from './getScrollParent';\nimport getWindow from './getWindow';\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n const isBody = scrollParent.nodeName === 'BODY';\n const target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(\n getScrollParent(target.parentNode),\n event,\n callback,\n scrollParents\n );\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nexport default function setupEventListeners(\n reference,\n options,\n state,\n updateBound\n) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n const scrollElement = getScrollParent(reference);\n attachToScrollParents(\n scrollElement,\n 'scroll',\n state.updateBound,\n state.scrollParents\n );\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n","import setupEventListeners from '../utils/setupEventListeners';\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nexport default function enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(\n this.reference,\n this.options,\n this.state,\n this.scheduleUpdate\n );\n }\n}\n","import removeEventListeners from '../utils/removeEventListeners';\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nexport default function disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n","import getWindow from './getWindow';\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nexport default function removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(target => {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n","/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nexport default function isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n","import isNumeric from './isNumeric';\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nexport default function setStyles(element, styles) {\n Object.keys(styles).forEach(prop => {\n let unit = '';\n // add unit if the value is numeric and is one of the following\n if (\n ['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !==\n -1 &&\n isNumeric(styles[prop])\n ) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n","import getSupportedPropertyName from '../utils/getSupportedPropertyName';\nimport find from '../utils/find';\nimport getOffsetParent from '../utils/getOffsetParent';\nimport getBoundingClientRect from '../utils/getBoundingClientRect';\nimport getRoundedOffsets from '../utils/getRoundedOffsets';\nimport isBrowser from '../utils/isBrowser';\n\nconst isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function computeStyle(data, options) {\n const { x, y } = options;\n const { popper } = data.offsets;\n\n // Remove this legacy support in Popper.js v2\n const legacyGpuAccelerationOption = find(\n data.instance.modifiers,\n modifier => modifier.name === 'applyStyle'\n ).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn(\n 'WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!'\n );\n }\n const gpuAcceleration =\n legacyGpuAccelerationOption !== undefined\n ? legacyGpuAccelerationOption\n : options.gpuAcceleration;\n\n const offsetParent = getOffsetParent(data.instance.popper);\n const offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n const styles = {\n position: popper.position,\n };\n\n const offsets = getRoundedOffsets(\n data,\n window.devicePixelRatio < 2 || !isFirefox\n );\n\n const sideA = x === 'bottom' ? 'top' : 'bottom';\n const sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n const prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n let left, top;\n if (sideA === 'bottom') {\n // when offsetParent is <html> the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = `translate3d(${left}px, ${top}px, 0)`;\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n const invertTop = sideA === 'bottom' ? -1 : 1;\n const invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = `${sideA}, ${sideB}`;\n }\n\n // Attributes\n const attributes = {\n 'x-placement': data.placement,\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = { ...attributes, ...data.attributes };\n data.styles = { ...styles, ...data.styles };\n data.arrowStyles = { ...data.offsets.arrow, ...data.arrowStyles };\n\n return data;\n}\n","import find from './find';\n\n/**\n * Helper used to know if the given modifier depends from another one.<br />\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nexport default function isModifierRequired(\n modifiers,\n requestingName,\n requestedName\n) {\n const requesting = find(modifiers, ({ name }) => name === requestingName);\n\n const isRequired =\n !!requesting &&\n modifiers.some(modifier => {\n return (\n modifier.name === requestedName &&\n modifier.enabled &&\n modifier.order < requesting.order\n );\n });\n\n if (!isRequired) {\n const requesting = `\\`${requestingName}\\``;\n const requested = `\\`${requestedName}\\``;\n console.warn(\n `${requested} modifier is required by ${requesting} modifier in order to work, be sure to include it before ${requesting}!`\n );\n }\n return isRequired;\n}\n","/**\n * List of accepted placements to use as values of the `placement` option.<br />\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.<br />\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nexport default [\n 'auto-start',\n 'auto',\n 'auto-end',\n 'top-start',\n 'top',\n 'top-end',\n 'right-start',\n 'right',\n 'right-end',\n 'bottom-end',\n 'bottom',\n 'bottom-start',\n 'left-end',\n 'left',\n 'left-start',\n];\n","import placements from '../methods/placements';\n\n// Get rid of `auto` `auto-start` and `auto-end`\nconst validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nexport default function clockwise(placement, counter = false) {\n const index = validPlacements.indexOf(placement);\n const arr = validPlacements\n .slice(index + 1)\n .concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n","import getOppositePlacement from '../utils/getOppositePlacement';\nimport getOppositeVariation from '../utils/getOppositeVariation';\nimport getPopperOffsets from '../utils/getPopperOffsets';\nimport runModifiers from '../utils/runModifiers';\nimport getBoundaries from '../utils/getBoundaries';\nimport isModifierEnabled from '../utils/isModifierEnabled';\nimport clockwise from '../utils/clockwise';\n\nconst BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise',\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n const boundaries = getBoundaries(\n data.instance.popper,\n data.instance.reference,\n options.padding,\n options.boundariesElement,\n data.positionFixed\n );\n\n let placement = data.placement.split('-')[0];\n let placementOpposite = getOppositePlacement(placement);\n let variation = data.placement.split('-')[1] || '';\n\n let flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach((step, index) => {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n const popperOffsets = data.offsets.popper;\n const refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n const floor = Math.floor;\n const overlapsRef =\n (placement === 'left' &&\n floor(popperOffsets.right) > floor(refOffsets.left)) ||\n (placement === 'right' &&\n floor(popperOffsets.left) < floor(refOffsets.right)) ||\n (placement === 'top' &&\n floor(popperOffsets.bottom) > floor(refOffsets.top)) ||\n (placement === 'bottom' &&\n floor(popperOffsets.top) < floor(refOffsets.bottom));\n\n const overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n const overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n const overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n const overflowsBottom =\n floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n const overflowsBoundaries =\n (placement === 'left' && overflowsLeft) ||\n (placement === 'right' && overflowsRight) ||\n (placement === 'top' && overflowsTop) ||\n (placement === 'bottom' && overflowsBottom);\n\n // flip the variation if required\n const isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n const flippedVariationByRef =\n !!options.flipVariations &&\n ((isVertical && variation === 'start' && overflowsLeft) ||\n (isVertical && variation === 'end' && overflowsRight) ||\n (!isVertical && variation === 'start' && overflowsTop) ||\n (!isVertical && variation === 'end' && overflowsBottom));\n\n // flips variation if popper content overflows boundaries\n const flippedVariationByContent =\n !!options.flipVariationsByContent &&\n ((isVertical && variation === 'start' && overflowsRight) ||\n (isVertical && variation === 'end' && overflowsLeft) ||\n (!isVertical && variation === 'start' && overflowsBottom) ||\n (!isVertical && variation === 'end' && overflowsTop));\n\n const flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = {\n ...data.offsets.popper,\n ...getPopperOffsets(\n data.instance.popper,\n data.offsets.reference,\n data.placement\n ),\n };\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n","import isNumeric from '../utils/isNumeric';\nimport getClientRect from '../utils/getClientRect';\nimport find from '../utils/find';\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nexport function toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n const split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n const value = +split[1];\n const unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n let element;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n const rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n let size;\n if (unit === 'vh') {\n size = Math.max(\n document.documentElement.clientHeight,\n window.innerHeight || 0\n );\n } else {\n size = Math.max(\n document.documentElement.clientWidth,\n window.innerWidth || 0\n );\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nexport function parseOffset(\n offset,\n popperOffsets,\n referenceOffsets,\n basePlacement\n) {\n const offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n const useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n const fragments = offset.split(/(\\+|\\-)/).map(frag => frag.trim());\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n const divider = fragments.indexOf(\n find(fragments, frag => frag.search(/,|\\s/) !== -1)\n );\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn(\n 'Offsets separated by white space(s) are deprecated, use a comma (,) instead.'\n );\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n const splitRegex = /\\s*,\\s*|\\s+/;\n let ops = divider !== -1\n ? [\n fragments\n .slice(0, divider)\n .concat([fragments[divider].split(splitRegex)[0]]),\n [fragments[divider].split(splitRegex)[1]].concat(\n fragments.slice(divider + 1)\n ),\n ]\n : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map((op, index) => {\n // Most of the units rely on the orientation of the popper\n const measurement = (index === 1 ? !useHeight : useHeight)\n ? 'height'\n : 'width';\n let mergeWithPrevious = false;\n return (\n op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce((a, b) => {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(str => toValue(str, measurement, popperOffsets, referenceOffsets))\n );\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach((op, index) => {\n op.forEach((frag, index2) => {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nexport default function offset(data, { offset }) {\n const { placement, offsets: { popper, reference } } = data;\n const basePlacement = placement.split('-')[0];\n\n let offsets;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n","import applyStyle, { applyStyleOnLoad } from './applyStyle';\nimport computeStyle from './computeStyle';\nimport arrow from './arrow';\nimport flip from './flip';\nimport keepTogether from './keepTogether';\nimport offset from './offset';\nimport preventOverflow from './preventOverflow';\nimport shift from './shift';\nimport hide from './hide';\nimport inner from './inner';\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.<br />\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.<br />\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nexport default {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.<br />\n * It will read the variation of the `placement` property.<br />\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift,\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.<br />\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.<br />\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.<br />\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0,\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.<br />\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".<br />\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent',\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether,\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]',\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false,\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner,\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide,\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right',\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined,\n },\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n","/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function shift(data) {\n const placement = data.placement;\n const basePlacement = placement.split('-')[0];\n const shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n const { reference, popper } = data.offsets;\n const isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n const side = isVertical ? 'left' : 'top';\n const measurement = isVertical ? 'width' : 'height';\n\n const shiftOffsets = {\n start: { [side]: reference[side] },\n end: {\n [side]: reference[side] + reference[measurement] - popper[measurement],\n },\n };\n\n data.offsets.popper = { ...popper, ...shiftOffsets[shiftvariation] };\n }\n\n return data;\n}\n","import getOffsetParent from '../utils/getOffsetParent';\nimport getBoundaries from '../utils/getBoundaries';\nimport getSupportedPropertyName from '../utils/getSupportedPropertyName';\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function preventOverflow(data, options) {\n let boundariesElement =\n options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n const transformProp = getSupportedPropertyName('transform');\n const popperStyles = data.instance.popper.style; // assignment to help minification\n const { top, left, [transformProp]: transform } = popperStyles;\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n const boundaries = getBoundaries(\n data.instance.popper,\n data.instance.reference,\n options.padding,\n boundariesElement,\n data.positionFixed\n );\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n const order = options.priority;\n let popper = data.offsets.popper;\n\n const check = {\n primary(placement) {\n let value = popper[placement];\n if (\n popper[placement] < boundaries[placement] &&\n !options.escapeWithReference\n ) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return { [placement]: value };\n },\n secondary(placement) {\n const mainSide = placement === 'right' ? 'left' : 'top';\n let value = popper[mainSide];\n if (\n popper[placement] > boundaries[placement] &&\n !options.escapeWithReference\n ) {\n value = Math.min(\n popper[mainSide],\n boundaries[placement] -\n (placement === 'right' ? popper.width : popper.height)\n );\n }\n return { [mainSide]: value };\n },\n };\n\n order.forEach(placement => {\n const side =\n ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = { ...popper, ...check[side](placement) };\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n","/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function keepTogether(data) {\n const { popper, reference } = data.offsets;\n const placement = data.placement.split('-')[0];\n const floor = Math.floor;\n const isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n const side = isVertical ? 'right' : 'bottom';\n const opSide = isVertical ? 'left' : 'top';\n const measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] =\n floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n","import getClientRect from '../utils/getClientRect';\nimport getOuterSizes from '../utils/getOuterSizes';\nimport isModifierRequired from '../utils/isModifierRequired';\nimport getStyleComputedProperty from '../utils/getStyleComputedProperty';\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function arrow(data, options) {\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n let arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn(\n 'WARNING: `arrow.element` must be child of its popper element!'\n );\n return data;\n }\n }\n\n const placement = data.placement.split('-')[0];\n const { popper, reference } = data.offsets;\n const isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n const len = isVertical ? 'height' : 'width';\n const sideCapitalized = isVertical ? 'Top' : 'Left';\n const side = sideCapitalized.toLowerCase();\n const altSide = isVertical ? 'left' : 'top';\n const opSide = isVertical ? 'bottom' : 'right';\n const arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -=\n popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] +=\n reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n const center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n const css = getStyleComputedProperty(data.instance.popper);\n const popperMarginSide = parseFloat(css[`margin${sideCapitalized}`]);\n const popperBorderSide = parseFloat(css[`border${sideCapitalized}Width`]);\n let sideValue =\n center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = {\n [side]: Math.round(sideValue),\n [altSide]: '', // make sure to unset any eventual altSide value from the DOM node\n };\n\n return data;\n}\n","/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nexport default function getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n","import getClientRect from '../utils/getClientRect';\nimport getOppositePlacement from '../utils/getOppositePlacement';\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function inner(data) {\n const placement = data.placement;\n const basePlacement = placement.split('-')[0];\n const { popper, reference } = data.offsets;\n const isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n const subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] =\n reference[basePlacement] -\n (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n","import isModifierRequired from '../utils/isModifierRequired';\nimport find from '../utils/find';\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nexport default function hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n const refRect = data.offsets.reference;\n const bound = find(\n data.instance.modifiers,\n modifier => modifier.name === 'preventOverflow'\n ).boundaries;\n\n if (\n refRect.bottom < bound.top ||\n refRect.left > bound.right ||\n refRect.top > bound.bottom ||\n refRect.right < bound.left\n ) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n","/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nexport default function getRoundedOffsets(data, shouldRound) {\n const { popper, reference } = data.offsets;\n const { round, floor } = Math;\n const noRound = v => v;\n \n const referenceWidth = round(reference.width);\n const popperWidth = round(popper.width);\n \n const isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n const isVariation = data.placement.indexOf('-') !== -1;\n const sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n const bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n const horizontalToInteger = !shouldRound\n ? noRound\n : isVertical || isVariation || sameWidthParity\n ? round\n : floor;\n const verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(\n bothOddWidth && !isVariation && shouldRound\n ? popper.left - 1\n : popper.left\n ),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right),\n };\n}\n","import setStyles from '../utils/setStyles';\nimport setAttributes from '../utils/setAttributes';\nimport getReferenceOffsets from '../utils/getReferenceOffsets';\nimport computeAutoPlacement from '../utils/computeAutoPlacement';\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nexport default function applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nexport function applyStyleOnLoad(\n reference,\n popper,\n options,\n modifierOptions,\n state\n) {\n // compute reference element offsets\n const referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n const placement = computeAutoPlacement(\n options.placement,\n referenceOffsets,\n popper,\n reference,\n options.modifiers.flip.boundariesElement,\n options.modifiers.flip.padding\n );\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n","/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nexport default function setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function(prop) {\n const value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n","import modifiers from '../modifiers/index';\n\n/**\n * Default options provided to Popper.js constructor.<br />\n * These can be overridden using the `options` argument of Popper.js.<br />\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nexport default {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: () => {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.<br />\n * By default, it is set to no-op.<br />\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: () => {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers,\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n","// Utils\nimport debounce from './utils/debounce';\nimport isFunction from './utils/isFunction';\n\n// Methods\nimport update from './methods/update';\nimport destroy from './methods/destroy';\nimport enableEventListeners from './methods/enableEventListeners';\nimport disableEventListeners from './methods/disableEventListeners';\nimport Defaults from './methods/defaults';\nimport placements from './methods/placements';\n\nexport default class Popper {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n constructor(reference, popper, options = {}) {\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = { ...Popper.Defaults, ...options };\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: [],\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys({\n ...Popper.Defaults.modifiers,\n ...options.modifiers,\n }).forEach(name => {\n this.options.modifiers[name] = {\n // If it's a built-in modifier, use it as base\n ...(Popper.Defaults.modifiers[name] || {}),\n // If there are custom options, override and merge with default ones\n ...(options.modifiers ? options.modifiers[name] : {}),\n };\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers)\n .map(name => ({\n name,\n ...this.options.modifiers[name],\n }))\n // sort the modifiers by order\n .sort((a, b) => a.order - b.order);\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(modifierOptions => {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(\n this.reference,\n this.popper,\n this.options,\n modifierOptions,\n this.state\n );\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n const eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n update() {\n return update.call(this);\n }\n destroy() {\n return destroy.call(this);\n }\n enableEventListeners() {\n return enableEventListeners.call(this);\n }\n disableEventListeners() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n scheduleUpdate = () => requestAnimationFrame(this.update);\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n static Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\n\n static placements = placements;\n\n static Defaults = Defaults;\n}\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.<br />\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n","import { Class, PlainObject, Primitive } from './types';\n\nconst DOM_PROPERTIES_TO_CHECK: Array<keyof HTMLElement> = [\n 'innerHTML',\n 'ownerDocument',\n 'style',\n 'attributes',\n 'nodeValue',\n];\n\nconst objectTypes = [\n 'Array',\n 'ArrayBuffer',\n 'AsyncFunction',\n 'AsyncGenerator',\n 'AsyncGeneratorFunction',\n 'Date',\n 'Error',\n 'Function',\n 'Generator',\n 'GeneratorFunction',\n 'HTMLElement',\n 'Map',\n 'Object',\n 'Promise',\n 'RegExp',\n 'Set',\n 'WeakMap',\n 'WeakSet',\n] as const;\n\nconst primitiveTypes = [\n 'bigint',\n 'boolean',\n 'null',\n 'number',\n 'string',\n 'symbol',\n 'undefined',\n] as const;\n\nexport type ObjectTypes = typeof objectTypes[number];\n\nexport type PrimitiveTypes = typeof primitiveTypes[number];\n\nexport type TypeName = ObjectTypes | PrimitiveTypes;\n\nexport function getObjectType(value: unknown): ObjectTypes | undefined {\n const objectTypeName = Object.prototype.toString.call(value).slice(8, -1);\n\n if (/HTML\\w+Element/.test(objectTypeName)) {\n return 'HTMLElement';\n }\n\n if (isObjectType(objectTypeName)) {\n return objectTypeName;\n }\n\n return undefined;\n}\n\nfunction isObjectOfType<T>(type: string) {\n return (value: unknown): value is T => getObjectType(value) === type;\n}\n\nfunction isObjectType(name: unknown): name is ObjectTypes {\n return objectTypes.includes(name as ObjectTypes);\n}\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction isOfType<T extends Primitive | Function>(type: string) {\n return (value: unknown): value is T => typeof value === type;\n}\n\nfunction isPrimitiveType(name: unknown): name is PrimitiveTypes {\n return primitiveTypes.includes(name as PrimitiveTypes);\n}\n\nfunction is(value: unknown): TypeName {\n if (value === null) {\n return 'null';\n }\n\n switch (typeof value) {\n case 'bigint':\n return 'bigint';\n case 'boolean':\n return 'boolean';\n case 'number':\n return 'number';\n case 'string':\n return 'string';\n case 'symbol':\n return 'symbol';\n case 'undefined':\n return 'undefined';\n default:\n }\n\n if (is.array(value)) {\n return 'Array';\n }\n\n if (is.plainFunction(value)) {\n return 'Function';\n }\n\n const tagType = getObjectType(value);\n\n /* istanbul ignore else */\n if (tagType) {\n return tagType;\n }\n\n /* istanbul ignore next */\n return 'Object';\n}\n\nis.array = Array.isArray;\n\nis.arrayOf = (target: unknown[], predicate: (v: unknown) => boolean): boolean => {\n if (!is.array(target) && !is.function(predicate)) {\n return false;\n }\n\n return target.every(d => predicate(d));\n};\n\nis.asyncGeneratorFunction = (value: unknown): value is (...arguments_: any[]) => Promise<unknown> =>\n getObjectType(value) === 'AsyncGeneratorFunction';\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nis.asyncFunction = isObjectOfType<Function>('AsyncFunction');\n\nis.bigint = isOfType<bigint>('bigint');\n\nis.boolean = (value: unknown): value is boolean => {\n return value === true || value === false;\n};\n\nis.date = isObjectOfType<Date>('Date');\n\nis.defined = (value: unknown): boolean => !is.undefined(value);\n\nis.domElement = (value: unknown): value is HTMLElement => {\n return (\n is.object(value) &&\n !is.plainObject(value) &&\n (value as HTMLElement).nodeType === 1 &&\n is.string((value as HTMLElement).nodeName) &&\n DOM_PROPERTIES_TO_CHECK.every(property => property in (value as HTMLElement))\n );\n};\n\nis.empty = (value: unknown): boolean => {\n return (\n (is.string(value) && value.length === 0) ||\n (is.array(value) && value.length === 0) ||\n (is.object(value) && !is.map(value) && !is.set(value) && Object.keys(value).length === 0) ||\n (is.set(value) && value.size === 0) ||\n (is.map(value) && value.size === 0)\n );\n};\n\nis.error = isObjectOfType<Error>('Error');\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nis.function = isOfType<Function>('function');\n\nis.generator = (value: unknown): value is Generator => {\n return (\n is.iterable(value) &&\n is.function((value as IterableIterator<unknown>).next) &&\n is.function((value as IterableIterator<unknown>).throw)\n );\n};\n\nis.generatorFunction = isObjectOfType<GeneratorFunction>('GeneratorFunction');\n\nis.instanceOf = <T>(instance: unknown, class_: Class<T>): instance is T => {\n if (!instance || !(class_ as Class<T>)) {\n return false;\n }\n\n return Object.getPrototypeOf(instance) === class_.prototype;\n};\n\nis.iterable = (value: unknown): value is IterableIterator<unknown> => {\n return (\n !is.nullOrUndefined(value) && is.function((value as IterableIterator<unknown>)[Symbol.iterator])\n );\n};\n\nis.map = isObjectOfType<Map<unknown, unknown>>('Map');\n\nis.nan = (value: unknown): boolean => {\n return Number.isNaN(value as number);\n};\n\nis.null = (value: unknown): value is null => {\n return value === null;\n};\n\nis.nullOrUndefined = (value: unknown): value is null | undefined => {\n return is.null(value) || is.undefined(value);\n};\n\nis.number = (value: unknown): value is number => {\n return isOfType<number>('number')(value) && !is.nan(value);\n};\n\nis.numericString = (value: unknown): value is string => {\n return is.string(value) && (value as string).length > 0 && !Number.isNaN(Number(value));\n};\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nis.object = (value: unknown): value is object => {\n return !is.nullOrUndefined(value) && (is.function(value) || typeof value === 'object');\n};\n\nis.oneOf = (target: unknown[], value: any): boolean => {\n if (!is.array(target)) {\n return false;\n }\n\n // eslint-disable-next-line unicorn/prefer-includes\n return target.indexOf(value) > -1;\n};\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nis.plainFunction = isObjectOfType<Function>('Function');\n\nis.plainObject = (value: unknown): value is PlainObject => {\n if (getObjectType(value) !== 'Object') {\n return false;\n }\n\n const prototype = Object.getPrototypeOf(value);\n\n return prototype === null || prototype === Object.getPrototypeOf({});\n};\n\nis.primitive = (value: unknown): value is Primitive =>\n is.null(value) || isPrimitiveType(typeof value);\n\nis.promise = isObjectOfType<Promise<unknown>>('Promise');\n\nis.propertyOf = (\n target: PlainObject,\n key: string,\n predicate?: (v: unknown) => boolean,\n): boolean => {\n if (!is.object(target) || !key) {\n return false;\n }\n\n const value = target[key];\n\n if (is.function(predicate)) {\n return predicate(value);\n }\n\n return is.defined(value);\n};\n\nis.regexp = isObjectOfType<RegExp>('RegExp');\n\nis.set = isObjectOfType<Set<PlainObject>>('Set');\n\nis.string = isOfType<string>('string');\n\nis.symbol = isOfType<symbol>('symbol');\n\nis.undefined = isOfType<undefined>('undefined');\n\nis.weakMap = isObjectOfType<WeakMap<PlainObject, unknown>>('WeakMap');\n\nis.weakSet = isObjectOfType<WeakSet<PlainObject>>('WeakSet');\n\nexport * from './types';\n\nexport default is;\n","import { AnyObject, Primitive } from './types';\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction isOfType<T extends Primitive | Function>(type: string) {\n return (value: unknown): value is T => typeof value === type;\n}\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport const isFunction = isOfType<Function>('function');\n\nexport const isNull = (value: unknown): value is null => {\n return value === null;\n};\n\nexport const isRegex = (value: unknown): value is RegExp => {\n return Object.prototype.toString.call(value).slice(8, -1) === 'RegExp';\n};\n\nexport const isObject = (value: unknown): value is AnyObject => {\n return !isUndefined(value) && !isNull(value) && (isFunction(value) || typeof value === 'object');\n};\n\nexport const isUndefined = isOfType<undefined>('undefined');\n","import { isObject, isRegex } from './helpers';\n\nfunction equalArray(left: unknown[], right: unknown[]) {\n const { length } = left;\n\n if (length !== right.length) {\n return false;\n }\n\n for (let index = length; index-- !== 0; ) {\n if (!equal(left[index], right[index])) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction equalArrayBuffer(left: ArrayBufferView, right: ArrayBufferView) {\n if (left.byteLength !== right.byteLength) {\n return false;\n }\n\n const view1 = new DataView(left.buffer);\n const view2 = new DataView(right.buffer);\n\n let index = left.byteLength;\n\n while (index--) {\n if (view1.getUint8(index) !== view2.getUint8(index)) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction equalMap(left: Map<unknown, unknown>, right: Map<unknown, unknown>) {\n if (left.size !== right.size) {\n return false;\n }\n\n for (const index of left.entries()) {\n if (!right.has(index[0])) {\n return false;\n }\n }\n\n for (const index of left.entries()) {\n if (!equal(index[1], right.get(index[0]))) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction equalSet(left: Set<unknown>, right: Set<unknown>) {\n if (left.size !== right.size) {\n return false;\n }\n\n for (const index of left.entries()) {\n if (!right.has(index[0])) {\n return false;\n }\n }\n\n return true;\n}\n\nexport default function equal(left: unknown, right: unknown) {\n if (left === right) {\n return true;\n }\n\n if (left && isObject(left) && right && isObject(right)) {\n if (left.constructor !== right.constructor) {\n return false;\n }\n\n if (Array.isArray(left) && Array.isArray(right)) {\n return equalArray(left, right);\n }\n\n if (left instanceof Map && right instanceof Map) {\n return equalMap(left, right);\n }\n\n if (left instanceof Set && right instanceof Set) {\n return equalSet(left, right);\n }\n\n if (ArrayBuffer.isView(left) && ArrayBuffer.isView(right)) {\n return equalArrayBuffer(left, right);\n }\n\n if (isRegex(left) && isRegex(right)) {\n return left.source === right.source && left.flags === right.flags;\n }\n\n if (left.valueOf !== Object.prototype.valueOf) {\n return left.valueOf() === right.valueOf();\n }\n\n if (left.toString !== Object.prototype.toString) {\n return left.toString() === right.toString();\n }\n\n const leftKeys = Object.keys(left);\n const rightKeys = Object.keys(right);\n\n if (leftKeys.length !== rightKeys.length) {\n return false;\n }\n\n for (let index = leftKeys.length; index-- !== 0; ) {\n if (!Object.prototype.hasOwnProperty.call(right, leftKeys[index])) {\n return false;\n }\n }\n\n for (let index = leftKeys.length; index-- !== 0; ) {\n const key = leftKeys[index];\n\n if (key === '_owner' && left.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (!equal(left[key], right[key])) {\n return false;\n }\n }\n\n return true;\n }\n\n if (Number.isNaN(left) && Number.isNaN(right)) {\n return true;\n }\n\n return left === right;\n}\n","import equal from '@gilbarbara/deep-equal';\nimport is from 'is-lite';\n\nimport { CompareValuesOptions, Data, Key, Options, ValidTypes, Value } from './types';\n\nexport function canHaveLength(...arguments_: any): boolean {\n return arguments_.every((d: unknown) => is.string(d) || is.array(d) || is.plainObject(d));\n}\n\nexport function checkEquality(left: Data, right: Data, value: Value) {\n if (!isSameType(left, right)) {\n return false;\n }\n\n if ([left, right].every(is.array)) {\n return !left.some(hasValue(value)) && right.some(hasValue(value));\n }\n\n /* istanbul ignore else */\n if ([left, right].every(is.plainObject)) {\n return (\n !Object.entries(left).some(hasEntry(value)) && Object.entries(right).some(hasEntry(value))\n );\n }\n\n return right === value;\n}\n\nexport function compareNumbers<K = Key>(\n previousData: Data,\n data: Data,\n options: Options<K>,\n): boolean {\n const { actual, key, previous, type } = options;\n const left = nested(previousData, key);\n const right = nested(data, key);\n\n let changed =\n [left, right].every(is.number) && (type === 'increased' ? left < right : left > right);\n\n if (!is.undefined(actual)) {\n changed = changed && right === actual;\n }\n\n if (!is.undefined(previous)) {\n changed = changed && left === previous;\n }\n\n return changed;\n}\n\nexport function compareValues<K = Key>(\n previousData: Data,\n data: Data,\n options: CompareValuesOptions<K>,\n) {\n const { key, type, value } = options;\n\n const left = nested(previousData, key);\n const right = nested(data, key);\n const primary = type === 'added' ? left : right;\n const secondary = type === 'added' ? right : left;\n\n // console.log({ primary, secondary });\n\n if (!is.nullOrUndefined(value)) {\n if (is.defined(primary)) {\n // check if nested data matches\n if (is.array(primary) || is.plainObject(primary)) {\n return checkEquality(primary, secondary, value);\n }\n } else {\n return equal(secondary, value);\n }\n\n return false;\n }\n\n if ([left, right].every(is.array)) {\n return !secondary.every(isEqualPredicate(primary));\n }\n\n if ([left, right].every(is.plainObject)) {\n return hasExtraKeys(Object.keys(primary), Object.keys(secondary));\n }\n\n return (\n ![left, right].every(d => is.primitive(d) && is.defined(d)) &&\n (type === 'added'\n ? !is.defined(left) && is.defined(right)\n : is.defined(left) && !is.defined(right))\n );\n}\n\nexport function getIterables<K = Key>(previousData: Data, data: Data, { key }: Options<K> = {}) {\n let left = nested(previousData, key);\n let right = nested(data, key);\n\n if (!isSameType(left, right)) {\n throw new TypeError('Inputs have different types');\n }\n\n if (!canHaveLength(left, right)) {\n throw new TypeError(\"Inputs don't have length\");\n }\n\n if ([left, right].every(is.plainObject)) {\n left = Object.keys(left);\n right = Object.keys(right);\n }\n\n return [left, right];\n}\n\nexport function hasEntry(input: Value) {\n return ([key, value]: [string, Value]) => {\n if (is.array(input)) {\n return (\n equal(input, value) ||\n input.some(d => equal(d, value) || (is.array(value) && isEqualPredicate(value)(d)))\n );\n }\n\n /* istanbul ignore else */\n if (is.plainObject(input) && input[key]) {\n return !!input[key] && equal(input[key], value);\n }\n\n return equal(input, value);\n };\n}\n\nexport function hasExtraKeys(left: string[], right: string[]): boolean {\n return right.some(d => !left.includes(d));\n}\n\nexport function hasValue(input: Value) {\n return (value: Value) => {\n if (is.array(input)) {\n return input.some(d => equal(d, value) || (is.array(value) && isEqualPredicate(value)(d)));\n }\n\n return equal(input, value);\n };\n}\n\nexport function includesOrEqualsTo<T>(previousValue: T | T[], value: T): boolean {\n return is.array(previousValue)\n ? previousValue.some(d => equal(d, value))\n : equal(previousValue, value);\n}\n\nexport function isEqualPredicate(data: unknown[]) {\n return (value: unknown) => data.some(d => equal(d, value));\n}\n\nexport function isSameType(...arguments_: ValidTypes[]): boolean {\n return (\n arguments_.every(is.array) ||\n arguments_.every(is.number) ||\n arguments_.every(is.plainObject) ||\n arguments_.every(is.string)\n );\n}\n\nexport function nested<T extends Data, K = Key>(data: T, property?: K) {\n /* istanbul ignore else */\n if (is.plainObject(data) || is.array(data)) {\n /* istanbul ignore else */\n if (is.string(property)) {\n const props: Array<any> = property.split('.');\n\n return props.reduce((acc, d) => acc && acc[d], data);\n }\n\n /* istanbul ignore else */\n if (is.number(property)) {\n return data[property];\n }\n\n return data;\n }\n\n return data;\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Popper from 'popper.js';\nimport deepmerge from 'deepmerge';\nimport is from 'is-lite';\nimport treeChanges from 'tree-changes';\nimport ReactDOM from 'react-dom';\n\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n}\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\n\nvar DEFAULTS = {flip:{padding:20},preventOverflow:{padding:10}};\n\nvar VALIDATOR_ARG_ERROR_MESSAGE='The typeValidator argument must be a function '+'with the signature function(props, propName, componentName).';var MESSAGE_ARG_ERROR_MESSAGE='The error message is optional, but must be a string if provided.';function propIsRequired(condition,props,propName,componentName){if(typeof condition==='boolean'){return condition;}if(typeof condition==='function'){return condition(props,propName,componentName);}if(Boolean(condition)===true){return Boolean(condition);}return false;}function propExists(props,propName){return Object.hasOwnProperty.call(props,propName);}function missingPropError(props,propName,componentName,message){if(message){return new Error(message);}return new Error(\"Required \".concat(props[propName],\" `\").concat(propName,\"` was not specified in `\").concat(componentName,\"`.\"));}function guardAgainstInvalidArgTypes(typeValidator,message){if(typeof typeValidator!=='function'){throw new TypeError(VALIDATOR_ARG_ERROR_MESSAGE);}if(Boolean(message)&&typeof message!=='string'){throw new TypeError(MESSAGE_ARG_ERROR_MESSAGE);}}function isRequiredIf(typeValidator,condition,message){guardAgainstInvalidArgTypes(typeValidator,message);return function(props,propName,componentName){for(var _len=arguments.length,rest=new Array(_len>3?_len-3:0),_key=3;_key<_len;_key++){rest[_key-3]=arguments[_key];}if(propIsRequired(condition,props,propName,componentName)){if(propExists(props,propName)){return typeValidator.apply(void 0,[props,propName,componentName].concat(rest));}return missingPropError(props,propName,componentName,message);}// Is not required, so just run typeValidator.\nreturn typeValidator.apply(void 0,[props,propName,componentName].concat(rest));};}\n\nvar STATUS = {INIT:'init',IDLE:'idle',OPENING:'opening',OPEN:'open',CLOSING:'closing',ERROR:'error'};\n\nvar isReact16=ReactDOM.createPortal!==undefined;function canUseDOM(){return !!(typeof window!=='undefined'&&window.document&&window.document.createElement);}function isMobile(){return 'ontouchstart'in window&&/Mobi/.test(navigator.userAgent);}/**\n * Log method calls if debug is enabled\n *\n * @private\n * @param {Object} arg\n * @param {string} arg.title - The title the logger was called from\n * @param {Object|Array} [arg.data] - The data to be logged\n * @param {boolean} [arg.warn] - If true, the message will be a warning\n * @param {boolean} [arg.debug] - Nothing will be logged unless debug is true\n */function log(_ref){var title=_ref.title,data=_ref.data,_ref$warn=_ref.warn,warn=_ref$warn===void 0?false:_ref$warn,_ref$debug=_ref.debug,debug=_ref$debug===void 0?false:_ref$debug;/* eslint-disable no-console */var logFn=warn?console.warn||console.error:console.log;if(debug&&title&&data){console.groupCollapsed(\"%creact-floater: \".concat(title),'color: #9b00ff; font-weight: bold; font-size: 12px;');if(Array.isArray(data)){data.forEach(function(d){if(is.plainObject(d)&&d.key){logFn.apply(console,[d.key,d.value]);}else {logFn.apply(console,[d]);}});}else {logFn.apply(console,[data]);}console.groupEnd();}/* eslint-enable */}function on(element,event,cb){var capture=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;element.addEventListener(event,cb,capture);}function off(element,event,cb){var capture=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;element.removeEventListener(event,cb,capture);}function once(element,event,cb){var capture=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;var _nextCB;// eslint-disable-next-line prefer-const\n_nextCB=function nextCB(e){cb(e);off(element,event,_nextCB);};on(element,event,_nextCB,capture);}function noop(){}\n\nvar ReactFloaterPortal=/*#__PURE__*/function(_React$Component){_inherits(ReactFloaterPortal,_React$Component);var _super=_createSuper(ReactFloaterPortal);function ReactFloaterPortal(){_classCallCheck(this,ReactFloaterPortal);return _super.apply(this,arguments);}_createClass(ReactFloaterPortal,[{key:\"componentDidMount\",value:function componentDidMount(){if(!canUseDOM())return;if(!this.node){this.appendNode();}if(!isReact16){this.renderPortal();}}},{key:\"componentDidUpdate\",value:function componentDidUpdate(){if(!canUseDOM())return;if(!isReact16){this.renderPortal();}}},{key:\"componentWillUnmount\",value:function componentWillUnmount(){if(!canUseDOM()||!this.node)return;if(!isReact16){ReactDOM.unmountComponentAtNode(this.node);}if(this.node&&this.node.parentNode===document.body){document.body.removeChild(this.node);this.node=undefined;}}},{key:\"appendNode\",value:function appendNode(){var _this$props=this.props,id=_this$props.id,zIndex=_this$props.zIndex;if(!this.node){this.node=document.createElement('div');/* istanbul ignore else */if(id){this.node.id=id;}if(zIndex){this.node.style.zIndex=zIndex;}document.body.appendChild(this.node);}}},{key:\"renderPortal\",value:function renderPortal(){if(!canUseDOM())return null;var _this$props2=this.props,children=_this$props2.children,setRef=_this$props2.setRef;if(!this.node){this.appendNode();}/* istanbul ignore else */if(isReact16){return/*#__PURE__*/ReactDOM.createPortal(children,this.node);}var portal=ReactDOM.unstable_renderSubtreeIntoContainer(this,children.length>1?/*#__PURE__*/React.createElement(\"div\",null,children):children[0],this.node);setRef(portal);return null;}},{key:\"renderReact16\",value:function renderReact16(){var _this$props3=this.props,hasChildren=_this$props3.hasChildren,placement=_this$props3.placement,target=_this$props3.target;if(!hasChildren){if(target||placement==='center'){return this.renderPortal();}return null;}return this.renderPortal();}},{key:\"render\",value:function render(){if(!isReact16){return null;}return this.renderReact16();}}]);return ReactFloaterPortal;}(React.Component);_defineProperty(ReactFloaterPortal,\"propTypes\",{children:PropTypes.oneOfType([PropTypes.element,PropTypes.array]),hasChildren:PropTypes.bool,id:PropTypes.oneOfType([PropTypes.string,PropTypes.number]),placement:PropTypes.string,setRef:PropTypes.func.isRequired,target:PropTypes.oneOfType([PropTypes.object,PropTypes.string]),zIndex:PropTypes.number});\n\nvar FloaterArrow=/*#__PURE__*/function(_React$Component){_inherits(FloaterArrow,_React$Component);var _super=_createSuper(FloaterArrow);function FloaterArrow(){_classCallCheck(this,FloaterArrow);return _super.apply(this,arguments);}_createClass(FloaterArrow,[{key:\"parentStyle\",get:function get(){var _this$props=this.props,placement=_this$props.placement,styles=_this$props.styles;var length=styles.arrow.length;var arrow={pointerEvents:'none',position:'absolute',width:'100%'};/* istanbul ignore else */if(placement.startsWith('top')){arrow.bottom=0;arrow.left=0;arrow.right=0;arrow.height=length;}else if(placement.startsWith('bottom')){arrow.left=0;arrow.right=0;arrow.top=0;arrow.height=length;}else if(placement.startsWith('left')){arrow.right=0;arrow.top=0;arrow.bottom=0;}else if(placement.startsWith('right')){arrow.left=0;arrow.top=0;}return arrow;}},{key:\"render\",value:function render(){var _this$props2=this.props,placement=_this$props2.placement,setArrowRef=_this$props2.setArrowRef,styles=_this$props2.styles;var _styles$arrow=styles.arrow,color=_styles$arrow.color,display=_styles$arrow.display,length=_styles$arrow.length,margin=_styles$arrow.margin,position=_styles$arrow.position,spread=_styles$arrow.spread;var arrowStyles={display:display,position:position};var points;var x=spread;var y=length;/* istanbul ignore else */if(placement.startsWith('top')){points=\"0,0 \".concat(x/2,\",\").concat(y,\" \").concat(x,\",0\");arrowStyles.bottom=0;arrowStyles.marginLeft=margin;arrowStyles.marginRight=margin;}else if(placement.startsWith('bottom')){points=\"\".concat(x,\",\").concat(y,\" \").concat(x/2,\",0 0,\").concat(y);arrowStyles.top=0;arrowStyles.marginLeft=margin;arrowStyles.marginRight=margin;}else if(placement.startsWith('left')){y=spread;x=length;points=\"0,0 \".concat(x,\",\").concat(y/2,\" 0,\").concat(y);arrowStyles.right=0;arrowStyles.marginTop=margin;arrowStyles.marginBottom=margin;}else if(placement.startsWith('right')){y=spread;x=length;points=\"\".concat(x,\",\").concat(y,\" \").concat(x,\",0 0,\").concat(y/2);arrowStyles.left=0;arrowStyles.marginTop=margin;arrowStyles.marginBottom=margin;}return/*#__PURE__*/React.createElement(\"div\",{className:\"__floater__arrow\",style:this.parentStyle},/*#__PURE__*/React.createElement(\"span\",{ref:setArrowRef,style:arrowStyles},/*#__PURE__*/React.createElement(\"svg\",{width:x,height:y,version:\"1.1\",xmlns:\"http://www.w3.org/2000/svg\"},/*#__PURE__*/React.createElement(\"polygon\",{points:points,fill:color}))));}}]);return FloaterArrow;}(React.Component);_defineProperty(FloaterArrow,\"propTypes\",{placement:PropTypes.string.isRequired,setArrowRef:PropTypes.func.isRequired,styles:PropTypes.object.isRequired});\n\nvar _excluded$1=[\"color\",\"height\",\"width\"];function FloaterCloseBtn(_ref){var handleClick=_ref.handleClick,styles=_ref.styles;var color=styles.color,height=styles.height,width=styles.width,style=_objectWithoutProperties(styles,_excluded$1);return/*#__PURE__*/React.createElement(\"button\",{\"aria-label\":\"close\",onClick:handleClick,style:style,type:\"button\"},/*#__PURE__*/React.createElement(\"svg\",{width:\"\".concat(width,\"px\"),height:\"\".concat(height,\"px\"),viewBox:\"0 0 18 18\",version:\"1.1\",xmlns:\"http://www.w3.org/2000/svg\",preserveAspectRatio:\"xMidYMid\"},/*#__PURE__*/React.createElement(\"g\",null,/*#__PURE__*/React.createElement(\"path\",{d:\"M8.13911129,9.00268191 L0.171521827,17.0258467 C-0.0498027049,17.248715 -0.0498027049,17.6098394 0.171521827,17.8327545 C0.28204354,17.9443526 0.427188206,17.9998706 0.572051765,17.9998706 C0.71714958,17.9998706 0.862013139,17.9443526 0.972581703,17.8327545 L9.0000937,9.74924618 L17.0276057,17.8327545 C17.1384085,17.9443526 17.2832721,17.9998706 17.4281356,17.9998706 C17.5729992,17.9998706 17.718097,17.9443526 17.8286656,17.8327545 C18.0499901,17.6098862 18.0499901,17.2487618 17.8286656,17.0258467 L9.86135722,9.00268191 L17.8340066,0.973848225 C18.0553311,0.750979934 18.0553311,0.389855532 17.8340066,0.16694039 C17.6126821,-0.0556467968 17.254037,-0.0556467968 17.0329467,0.16694039 L9.00042166,8.25611765 L0.967006424,0.167268345 C0.745681892,-0.0553188426 0.387317931,-0.0553188426 0.165993399,0.167268345 C-0.0553311331,0.390136635 -0.0553311331,0.751261038 0.165993399,0.974176179 L8.13920499,9.00268191 L8.13911129,9.00268191 Z\",fill:color}))));}FloaterCloseBtn.propTypes={handleClick:PropTypes.func.isRequired,styles:PropTypes.object.isRequired};\n\nfunction FloaterContainer(_ref){var content=_ref.content,footer=_ref.footer,handleClick=_ref.handleClick,open=_ref.open,positionWrapper=_ref.positionWrapper,showCloseButton=_ref.showCloseButton,title=_ref.title,styles=_ref.styles;var output={content:/*#__PURE__*/React.isValidElement(content)?content:/*#__PURE__*/React.createElement(\"div\",{className:\"__floater__content\",style:styles.content},content)};if(title){output.title=/*#__PURE__*/React.isValidElement(title)?title:/*#__PURE__*/React.createElement(\"div\",{className:\"__floater__title\",style:styles.title},title);}if(footer){output.footer=/*#__PURE__*/React.isValidElement(footer)?footer:/*#__PURE__*/React.createElement(\"div\",{className:\"__floater__footer\",style:styles.footer},footer);}if((showCloseButton||positionWrapper)&&!is[\"boolean\"](open)){output.close=/*#__PURE__*/React.createElement(FloaterCloseBtn,{styles:styles.close,handleClick:handleClick});}return/*#__PURE__*/React.createElement(\"div\",{className:\"__floater__container\",style:styles.container},output.close,output.title,output.content,output.footer);}FloaterContainer.propTypes={content:PropTypes.node.isRequired,footer:PropTypes.node,handleClick:PropTypes.func.isRequired,open:PropTypes.bool,positionWrapper:PropTypes.bool.isRequired,showCloseButton:PropTypes.bool.isRequired,styles:PropTypes.object.isRequired,title:PropTypes.node};\n\nvar Floater=/*#__PURE__*/function(_React$Component){_inherits(Floater,_React$Component);var _super=_createSuper(Floater);function Floater(){_classCallCheck(this,Floater);return _super.apply(this,arguments);}_createClass(Floater,[{key:\"style\",get:function get(){var _this$props=this.props,disableAnimation=_this$props.disableAnimation,component=_this$props.component,placement=_this$props.placement,hideArrow=_this$props.hideArrow,status=_this$props.status,styles=_this$props.styles;var length=styles.arrow.length,floater=styles.floater,floaterCentered=styles.floaterCentered,floaterClosing=styles.floaterClosing,floaterOpening=styles.floaterOpening,floaterWithAnimation=styles.floaterWithAnimation,floaterWithComponent=styles.floaterWithComponent;var element={};if(!hideArrow){if(placement.startsWith('top')){element.padding=\"0 0 \".concat(length,\"px\");}else if(placement.startsWith('bottom')){element.padding=\"\".concat(length,\"px 0 0\");}else if(placement.startsWith('left')){element.padding=\"0 \".concat(length,\"px 0 0\");}else if(placement.startsWith('right')){element.padding=\"0 0 0 \".concat(length,\"px\");}}if([STATUS.OPENING,STATUS.OPEN].indexOf(status)!==-1){element=_objectSpread2(_objectSpread2({},element),floaterOpening);}if(status===STATUS.CLOSING){element=_objectSpread2(_objectSpread2({},element),floaterClosing);}if(status===STATUS.OPEN&&!disableAnimation){element=_objectSpread2(_objectSpread2({},element),floaterWithAnimation);}if(placement==='center'){element=_objectSpread2(_objectSpread2({},element),floaterCentered);}if(component){element=_objectSpread2(_objectSpread2({},element),floaterWithComponent);}return _objectSpread2(_objectSpread2({},floater),element);}},{key:\"render\",value:function render(){var _this$props2=this.props,component=_this$props2.component,closeFn=_this$props2.handleClick,hideArrow=_this$props2.hideArrow,setFloaterRef=_this$props2.setFloaterRef,status=_this$props2.status;var output={};var classes=['__floater'];if(component){if(/*#__PURE__*/React.isValidElement(component)){output.content=/*#__PURE__*/React.cloneElement(component,{closeFn:closeFn});}else {output.content=component({closeFn:closeFn});}}else {output.content=/*#__PURE__*/React.createElement(FloaterContainer,this.props);}if(status===STATUS.OPEN){classes.push('__floater__open');}if(!hideArrow){output.arrow=/*#__PURE__*/React.createElement(FloaterArrow,this.props);}return/*#__PURE__*/React.createElement(\"div\",{ref:setFloaterRef,className:classes.join(' '),style:this.style},/*#__PURE__*/React.createElement(\"div\",{className:\"__floater__body\"},output.content,output.arrow));}}]);return Floater;}(React.Component);_defineProperty(Floater,\"propTypes\",{component:PropTypes.oneOfType([PropTypes.func,PropTypes.element]),content:PropTypes.node,disableAnimation:PropTypes.bool.isRequired,footer:PropTypes.node,handleClick:PropTypes.func.isRequired,hideArrow:PropTypes.bool.isRequired,open:PropTypes.bool,placement:PropTypes.string.isRequired,positionWrapper:PropTypes.bool.isRequired,setArrowRef:PropTypes.func.isRequired,setFloaterRef:PropTypes.func.isRequired,showCloseButton:PropTypes.bool,status:PropTypes.string.isRequired,styles:PropTypes.object.isRequired,title:PropTypes.node});\n\nvar ReactFloaterWrapper=/*#__PURE__*/function(_React$Component){_inherits(ReactFloaterWrapper,_React$Component);var _super=_createSuper(ReactFloaterWrapper);function ReactFloaterWrapper(){_classCallCheck(this,ReactFloaterWrapper);return _super.apply(this,arguments);}_createClass(ReactFloaterWrapper,[{key:\"render\",value:function render(){var _this$props=this.props,children=_this$props.children,handleClick=_this$props.handleClick,handleMouseEnter=_this$props.handleMouseEnter,handleMouseLeave=_this$props.handleMouseLeave,setChildRef=_this$props.setChildRef,setWrapperRef=_this$props.setWrapperRef,style=_this$props.style,styles=_this$props.styles;var element;/* istanbul ignore else */if(children){if(React.Children.count(children)===1){if(!/*#__PURE__*/React.isValidElement(children)){element=/*#__PURE__*/React.createElement(\"span\",null,children);}else {var refProp=is[\"function\"](children.type)?'innerRef':'ref';element=/*#__PURE__*/React.cloneElement(React.Children.only(children),_defineProperty({},refProp,setChildRef));}}else {element=children;}}if(!element){return null;}return/*#__PURE__*/React.createElement(\"span\",{ref:setWrapperRef,style:_objectSpread2(_objectSpread2({},styles),style),onClick:handleClick,onMouseEnter:handleMouseEnter,onMouseLeave:handleMouseLeave},element);}}]);return ReactFloaterWrapper;}(React.Component);_defineProperty(ReactFloaterWrapper,\"propTypes\",{children:PropTypes.node,handleClick:PropTypes.func.isRequired,handleMouseEnter:PropTypes.func.isRequired,handleMouseLeave:PropTypes.func.isRequired,setChildRef:PropTypes.func.isRequired,setWrapperRef:PropTypes.func.isRequired,style:PropTypes.object,styles:PropTypes.object.isRequired});\n\nvar defaultOptions={zIndex:100};function getStyles(styles){var options=deepmerge(defaultOptions,styles.options||{});return {wrapper:{cursor:'help',display:'inline-flex',flexDirection:'column',zIndex:options.zIndex},wrapperPosition:{left:-1000,position:'absolute',top:-1000,visibility:'hidden'},floater:{display:'inline-block',filter:'drop-shadow(0 0 3px rgba(0, 0, 0, 0.3))',maxWidth:300,opacity:0,position:'relative',transition:'opacity 0.3s',visibility:'hidden',zIndex:options.zIndex},floaterOpening:{opacity:1,visibility:'visible'},floaterWithAnimation:{opacity:1,transition:'opacity 0.3s, transform 0.2s',visibility:'visible'},floaterWithComponent:{maxWidth:'100%'},floaterClosing:{opacity:0,visibility:'visible'},floaterCentered:{left:'50%',position:'fixed',top:'50%',transform:'translate(-50%, -50%)'},container:{backgroundColor:'#fff',color:'#666',minHeight:60,minWidth:200,padding:20,position:'relative',zIndex:10},title:{borderBottom:'1px solid #555',color:'#555',fontSize:18,marginBottom:5,paddingBottom:6,paddingRight:18},content:{fontSize:15},close:{backgroundColor:'transparent',border:0,borderRadius:0,color:'#555',fontSize:0,height:15,outline:'none',padding:10,position:'absolute',right:0,top:0,width:15,WebkitAppearance:'none'},footer:{borderTop:'1px solid #ccc',fontSize:13,marginTop:10,paddingTop:5},arrow:{color:'#fff',display:'inline-flex',length:16,margin:8,position:'absolute',spread:32},options:options};}\n\nvar _excluded=[\"arrow\",\"flip\",\"offset\"];var POSITIONING_PROPS=['position','top','right','bottom','left'];var ReactFloater=/*#__PURE__*/function(_React$Component){_inherits(ReactFloater,_React$Component);var _super=_createSuper(ReactFloater);function ReactFloater(props){var _this;_classCallCheck(this,ReactFloater);_this=_super.call(this,props);/* istanbul ignore else */_defineProperty(_assertThisInitialized(_this),\"setArrowRef\",function(ref){_this.arrowRef=ref;});_defineProperty(_assertThisInitialized(_this),\"setChildRef\",function(ref){_this.childRef=ref;});_defineProperty(_assertThisInitialized(_this),\"setFloaterRef\",function(ref){_this.floaterRef=ref;});_defineProperty(_assertThisInitialized(_this),\"setWrapperRef\",function(ref){_this.wrapperRef=ref;});_defineProperty(_assertThisInitialized(_this),\"handleTransitionEnd\",function(){var status=_this.state.status;var callback=_this.props.callback;/* istanbul ignore else */if(_this.wrapperPopper){_this.wrapperPopper.instance.update();}_this.setState({status:status===STATUS.OPENING?STATUS.OPEN:STATUS.IDLE},function(){var newStatus=_this.state.status;callback(newStatus===STATUS.OPEN?'open':'close',_this.props);});});_defineProperty(_assertThisInitialized(_this),\"handleClick\",function(){var _this$props=_this.props,event=_this$props.event,open=_this$props.open;if(is[\"boolean\"](open))return;var _this$state=_this.state,positionWrapper=_this$state.positionWrapper,status=_this$state.status;/* istanbul ignore else */if(_this.event==='click'||_this.event==='hover'&&positionWrapper){log({title:'click',data:[{event:event,status:status===STATUS.OPEN?'closing':'opening'}],debug:_this.debug});_this.toggle();}});_defineProperty(_assertThisInitialized(_this),\"handleMouseEnter\",function(){var _this$props2=_this.props,event=_this$props2.event,open=_this$props2.open;if(is[\"boolean\"](open)||isMobile())return;var status=_this.state.status;/* istanbul ignore else */if(_this.event==='hover'&&status===STATUS.IDLE){log({title:'mouseEnter',data:[{key:'originalEvent',value:event}],debug:_this.debug});clearTimeout(_this.eventDelayTimeout);_this.toggle();}});_defineProperty(_assertThisInitialized(_this),\"handleMouseLeave\",function(){var _this$props3=_this.props,event=_this$props3.event,eventDelay=_this$props3.eventDelay,open=_this$props3.open;if(is[\"boolean\"](open)||isMobile())return;var _this$state2=_this.state,status=_this$state2.status,positionWrapper=_this$state2.positionWrapper;/* istanbul ignore else */if(_this.event==='hover'){log({title:'mouseLeave',data:[{key:'originalEvent',value:event}],debug:_this.debug});if(!eventDelay){_this.toggle(STATUS.IDLE);}else if([STATUS.OPENING,STATUS.OPEN].indexOf(status)!==-1&&!positionWrapper&&!_this.eventDelayTimeout){_this.eventDelayTimeout=setTimeout(function(){delete _this.eventDelayTimeout;_this.toggle();},eventDelay*1000);}}});_this.state={currentPlacement:props.placement,needsUpdate:false,positionWrapper:props.wrapperOptions.position&&!!props.target,status:STATUS.INIT,statusWrapper:STATUS.INIT};_this._isMounted=false;_this.hasMounted=false;if(canUseDOM()){window.addEventListener('load',function(){if(_this.popper){_this.popper.instance.update();}if(_this.wrapperPopper){_this.wrapperPopper.instance.update();}});}return _this;}_createClass(ReactFloater,[{key:\"componentDidMount\",value:function componentDidMount(){if(!canUseDOM())return;var positionWrapper=this.state.positionWrapper;var _this$props5=this.props,children=_this$props5.children,open=_this$props5.open,target=_this$props5.target;this._isMounted=true;log({title:'init',data:{hasChildren:!!children,hasTarget:!!target,isControlled:is[\"boolean\"](open),positionWrapper:positionWrapper,target:this.target,floater:this.floaterRef},debug:this.debug});if(!this.hasMounted){this.initPopper();this.hasMounted=true;}if(!children&&target&&!is[\"boolean\"](open));}},{key:\"componentDidUpdate\",value:function componentDidUpdate(prevProps,prevState){if(!canUseDOM())return;var _this$props6=this.props,autoOpen=_this$props6.autoOpen,open=_this$props6.open,target=_this$props6.target,wrapperOptions=_this$props6.wrapperOptions;var _treeChanges=treeChanges(prevState,this.state),changedFrom=_treeChanges.changedFrom,changed=_treeChanges.changed;if(prevProps.open!==open){var forceStatus;// always follow `open` in controlled mode\nif(is[\"boolean\"](open)){forceStatus=open?STATUS.OPENING:STATUS.CLOSING;}this.toggle(forceStatus);}if(prevProps.wrapperOptions.position!==wrapperOptions.position||prevProps.target!==target){this.changeWrapperPosition(this.props);}if(changed('status',STATUS.IDLE)&&open){this.toggle(STATUS.OPEN);}else if(changedFrom('status',STATUS.INIT,STATUS.IDLE)&&autoOpen){this.toggle(STATUS.OPEN);}if(this.popper&&changed('status',STATUS.OPENING)){this.popper.instance.update();}if(this.floaterRef&&(changed('status',STATUS.OPENING)||changed('status',STATUS.CLOSING))){once(this.floaterRef,'transitionend',this.handleTransitionEnd);}if(changed('needsUpdate',true)){this.rebuildPopper();}}},{key:\"componentWillUnmount\",value:function componentWillUnmount(){if(!canUseDOM())return;this._isMounted=false;if(this.popper){this.popper.instance.destroy();}if(this.wrapperPopper){this.wrapperPopper.instance.destroy();}}},{key:\"initPopper\",value:function initPopper(){var _this2=this;var target=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.target;var positionWrapper=this.state.positionWrapper;var _this$props7=this.props,disableFlip=_this$props7.disableFlip,getPopper=_this$props7.getPopper,hideArrow=_this$props7.hideArrow,offset=_this$props7.offset,placement=_this$props7.placement,wrapperOptions=_this$props7.wrapperOptions;var flipBehavior=placement==='top'||placement==='bottom'?'flip':['right','bottom-end','top-end','left','top-start','bottom-start'];/* istanbul ignore else */if(placement==='center'){this.setState({status:STATUS.IDLE});}else if(target&&this.floaterRef){var _this$options=this.options,arrow=_this$options.arrow,flip=_this$options.flip,offsetOptions=_this$options.offset,rest=_objectWithoutProperties(_this$options,_excluded);new Popper(target,this.floaterRef,{placement:placement,modifiers:_objectSpread2({arrow:_objectSpread2({enabled:!hideArrow,element:this.arrowRef},arrow),flip:_objectSpread2({enabled:!disableFlip,behavior:flipBehavior},flip),offset:_objectSpread2({offset:\"0, \".concat(offset,\"px\")},offsetOptions)},rest),onCreate:function onCreate(data){var _this2$floaterRef;_this2.popper=data;if(!((_this2$floaterRef=_this2.floaterRef)!==null&&_this2$floaterRef!==void 0&&_this2$floaterRef.isConnected)){_this2.setState({needsUpdate:true});return;}getPopper(data,'floater');if(_this2._isMounted){_this2.setState({currentPlacement:data.placement,status:STATUS.IDLE});}if(placement!==data.placement){setTimeout(function(){data.instance.update();},1);}},onUpdate:function onUpdate(data){_this2.popper=data;var currentPlacement=_this2.state.currentPlacement;if(_this2._isMounted&&data.placement!==currentPlacement){_this2.setState({currentPlacement:data.placement});}}});}if(positionWrapper){var wrapperOffset=!is.undefined(wrapperOptions.offset)?wrapperOptions.offset:0;new Popper(this.target,this.wrapperRef,{placement:wrapperOptions.placement||placement,modifiers:{arrow:{enabled:false},offset:{offset:\"0, \".concat(wrapperOffset,\"px\")},flip:{enabled:false}},onCreate:function onCreate(data){_this2.wrapperPopper=data;if(_this2._isMounted){_this2.setState({statusWrapper:STATUS.IDLE});}getPopper(data,'wrapper');if(placement!==data.placement){setTimeout(function(){data.instance.update();},1);}}});}}},{key:\"rebuildPopper\",value:function rebuildPopper(){var _this3=this;this.floaterRefInterval=setInterval(function(){var _this3$floaterRef;if((_this3$floaterRef=_this3.floaterRef)!==null&&_this3$floaterRef!==void 0&&_this3$floaterRef.isConnected){clearInterval(_this3.floaterRefInterval);_this3.setState({needsUpdate:false});_this3.initPopper();}},50);}},{key:\"changeWrapperPosition\",value:function changeWrapperPosition(_ref){var target=_ref.target,wrapperOptions=_ref.wrapperOptions;this.setState({positionWrapper:wrapperOptions.position&&!!target});}},{key:\"toggle\",value:function toggle(forceStatus){var status=this.state.status;var nextStatus=status===STATUS.OPEN?STATUS.CLOSING:STATUS.OPENING;if(!is.undefined(forceStatus)){nextStatus=forceStatus;}this.setState({status:nextStatus});}},{key:\"debug\",get:function get(){var debug=this.props.debug;return debug||canUseDOM()&&'ReactFloaterDebug'in window&&!!window.ReactFloaterDebug;}},{key:\"event\",get:function get(){var _this$props8=this.props,disableHoverToClick=_this$props8.disableHoverToClick,event=_this$props8.event;if(event==='hover'&&isMobile()&&!disableHoverToClick){return 'click';}return event;}},{key:\"options\",get:function get(){var options=this.props.options;return deepmerge(DEFAULTS,options||{});}},{key:\"styles\",get:function get(){var _this4=this;var _this$state3=this.state,status=_this$state3.status,positionWrapper=_this$state3.positionWrapper,statusWrapper=_this$state3.statusWrapper;var styles=this.props.styles;var nextStyles=deepmerge(getStyles(styles),styles);if(positionWrapper){var wrapperStyles;if(!([STATUS.IDLE].indexOf(status)!==-1)||!([STATUS.IDLE].indexOf(statusWrapper)!==-1)){wrapperStyles=nextStyles.wrapperPosition;}else {wrapperStyles=this.wrapperPopper.styles;}nextStyles.wrapper=_objectSpread2(_objectSpread2({},nextStyles.wrapper),wrapperStyles);}/* istanbul ignore else */if(this.target){var targetStyles=window.getComputedStyle(this.target);/* istanbul ignore else */if(this.wrapperStyles){nextStyles.wrapper=_objectSpread2(_objectSpread2({},nextStyles.wrapper),this.wrapperStyles);}else if(!(['relative','static'].indexOf(targetStyles.position)!==-1)){this.wrapperStyles={};if(!positionWrapper){POSITIONING_PROPS.forEach(function(d){_this4.wrapperStyles[d]=targetStyles[d];});nextStyles.wrapper=_objectSpread2(_objectSpread2({},nextStyles.wrapper),this.wrapperStyles);this.target.style.position='relative';this.target.style.top='auto';this.target.style.right='auto';this.target.style.bottom='auto';this.target.style.left='auto';}}}return nextStyles;}},{key:\"target\",get:function get(){if(!canUseDOM())return null;var target=this.props.target;if(target){if(is.domElement(target)){return target;}return document.querySelector(target);}return this.childRef||this.wrapperRef;}},{key:\"render\",value:function render(){var _this$state4=this.state,currentPlacement=_this$state4.currentPlacement,positionWrapper=_this$state4.positionWrapper,status=_this$state4.status;var _this$props9=this.props,children=_this$props9.children,component=_this$props9.component,content=_this$props9.content,disableAnimation=_this$props9.disableAnimation,footer=_this$props9.footer,hideArrow=_this$props9.hideArrow,id=_this$props9.id,open=_this$props9.open,showCloseButton=_this$props9.showCloseButton,style=_this$props9.style,target=_this$props9.target,title=_this$props9.title;var wrapper=/*#__PURE__*/React.createElement(ReactFloaterWrapper,{handleClick:this.handleClick,handleMouseEnter:this.handleMouseEnter,handleMouseLeave:this.handleMouseLeave,setChildRef:this.setChildRef,setWrapperRef:this.setWrapperRef,style:style,styles:this.styles.wrapper},children);var output={};if(positionWrapper){output.wrapperInPortal=wrapper;}else {output.wrapperAsChildren=wrapper;}return/*#__PURE__*/React.createElement(\"span\",null,/*#__PURE__*/React.createElement(ReactFloaterPortal,{hasChildren:!!children,id:id,placement:currentPlacement,setRef:this.setFloaterRef,target:target,zIndex:this.styles.options.zIndex},/*#__PURE__*/React.createElement(Floater,{component:component,content:content,disableAnimation:disableAnimation,footer:footer,handleClick:this.handleClick,hideArrow:hideArrow||currentPlacement==='center',open:open,placement:currentPlacement,positionWrapper:positionWrapper,setArrowRef:this.setArrowRef,setFloaterRef:this.setFloaterRef,showCloseButton:showCloseButton,status:status,styles:this.styles,title:title}),output.wrapperInPortal),output.wrapperAsChildren);}}]);return ReactFloater;}(React.Component);_defineProperty(ReactFloater,\"propTypes\",{autoOpen:PropTypes.bool,callback:PropTypes.func,children:PropTypes.node,component:isRequiredIf(PropTypes.oneOfType([PropTypes.func,PropTypes.element]),function(props){return !props.content;}),content:isRequiredIf(PropTypes.node,function(props){return !props.component;}),debug:PropTypes.bool,disableAnimation:PropTypes.bool,disableFlip:PropTypes.bool,disableHoverToClick:PropTypes.bool,event:PropTypes.oneOf(['hover','click']),eventDelay:PropTypes.number,footer:PropTypes.node,getPopper:PropTypes.func,hideArrow:PropTypes.bool,id:PropTypes.oneOfType([PropTypes.string,PropTypes.number]),offset:PropTypes.number,open:PropTypes.bool,options:PropTypes.object,placement:PropTypes.oneOf(['top','top-start','top-end','bottom','bottom-start','bottom-end','left','left-start','left-end','right','right-start','right-end','auto','center']),showCloseButton:PropTypes.bool,style:PropTypes.object,styles:PropTypes.object,target:PropTypes.oneOfType([PropTypes.object,PropTypes.string]),title:PropTypes.node,wrapperOptions:PropTypes.shape({offset:PropTypes.number,placement:PropTypes.oneOf(['top','top-start','top-end','bottom','bottom-start','bottom-end','left','left-start','left-end','right','right-start','right-end','auto']),position:PropTypes.bool})});_defineProperty(ReactFloater,\"defaultProps\",{autoOpen:false,callback:noop,debug:false,disableAnimation:false,disableFlip:false,disableHoverToClick:false,event:'click',eventDelay:0.4,getPopper:noop,hideArrow:false,offset:15,placement:'bottom',showCloseButton:false,styles:{},target:null,wrapperOptions:{position:false}});\n\nexport { ReactFloater as default };\n","import equal from '@gilbarbara/deep-equal';\nimport is from 'is-lite';\n\nimport { compareNumbers, compareValues, getIterables, includesOrEqualsTo, nested } from './helpers';\nimport { Data, KeyType, TreeChanges, Value } from './types';\n\nexport default function treeChanges<P extends Data, D extends Data, K = KeyType<P, D>>(\n previousData: P,\n data: D,\n): TreeChanges<K> {\n if ([previousData, data].some(is.nullOrUndefined)) {\n throw new Error('Missing required parameters');\n }\n\n if (![previousData, data].every(d => is.plainObject(d) || is.array(d))) {\n throw new Error('Expected plain objects or array');\n }\n\n const added = (key?: K, value?: Value): boolean => {\n try {\n return compareValues<K>(previousData, data, { key, type: 'added', value });\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const changed = (key?: K | string, actual?: Value, previous?: Value): boolean => {\n try {\n const left = nested(previousData, key);\n const right = nested(data, key);\n const hasActual = is.defined(actual);\n const hasPrevious = is.defined(previous);\n\n if (hasActual || hasPrevious) {\n const leftComparator = hasPrevious\n ? includesOrEqualsTo(previous, left)\n : !includesOrEqualsTo(actual, left);\n const rightComparator = includesOrEqualsTo(actual, right);\n\n return leftComparator && rightComparator;\n }\n\n if ([left, right].every(is.array) || [left, right].every(is.plainObject)) {\n return !equal(left, right);\n }\n\n return left !== right;\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const changedFrom = (key: K | string, previous: Value, actual?: Value): boolean => {\n if (!is.defined(key)) {\n return false;\n }\n\n try {\n const left = nested(previousData, key);\n const right = nested(data, key);\n const hasActual = is.defined(actual);\n\n return (\n includesOrEqualsTo(previous, left) &&\n (hasActual ? includesOrEqualsTo(actual, right) : !hasActual)\n );\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n /**\n * @deprecated\n * Use \"changed\" instead\n */\n const changedTo = (key: K | string, actual: Value): boolean => {\n if (!is.defined(key)) {\n return false;\n }\n\n /* istanbul ignore next */\n if (process.env.NODE_ENV === 'development') {\n // eslint-disable-next-line no-console\n console.warn('`changedTo` is deprecated! Replace it with `change`');\n }\n\n return changed(key, actual);\n };\n\n const decreased = (key: K, actual?: Value, previous?: Value): boolean => {\n if (!is.defined(key)) {\n return false;\n }\n\n try {\n return compareNumbers<K>(previousData, data, { key, actual, previous, type: 'decreased' });\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const emptied = (key?: K): boolean => {\n try {\n const [left, right] = getIterables(previousData, data, { key });\n\n return !!left.length && !right.length;\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const filled = (key?: K): boolean => {\n try {\n const [left, right] = getIterables(previousData, data, { key });\n\n return !left.length && !!right.length;\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const increased = (key: K, actual?: Value, previous?: Value): boolean => {\n if (!is.defined(key)) {\n return false;\n }\n\n try {\n return compareNumbers<K>(previousData, data, { key, actual, previous, type: 'increased' });\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n const removed = (key?: K, value?: Value): boolean => {\n try {\n return compareValues<K>(previousData, data, { key, type: 'removed', value });\n } catch {\n /* istanbul ignore next */\n return false;\n }\n };\n\n return { added, changed, changedFrom, changedTo, decreased, emptied, filled, increased, removed };\n}\n\nexport * from './types';\n","export const ACTIONS = {\n INIT: 'init',\n START: 'start',\n STOP: 'stop',\n RESET: 'reset',\n PREV: 'prev',\n NEXT: 'next',\n GO: 'go',\n CLOSE: 'close',\n SKIP: 'skip',\n UPDATE: 'update',\n} as const;\n\nexport const EVENTS = {\n TOUR_START: 'tour:start',\n STEP_BEFORE: 'step:before',\n BEACON: 'beacon',\n TOOLTIP: 'tooltip',\n STEP_AFTER: 'step:after',\n TOUR_END: 'tour:end',\n TOUR_STATUS: 'tour:status',\n TARGET_NOT_FOUND: 'error:target_not_found',\n ERROR: 'error',\n} as const;\n\nexport const LIFECYCLE = {\n INIT: 'init',\n READY: 'ready',\n BEACON: 'beacon',\n TOOLTIP: 'tooltip',\n COMPLETE: 'complete',\n ERROR: 'error',\n} as const;\n\nexport const ORIGIN = {\n BUTTON_CLOSE: 'button_close',\n BUTTON_PRIMARY: 'button_primary',\n KEYBOARD: 'keyboard',\n OVERLAY: 'overlay',\n} as const;\n\nexport const STATUS = {\n IDLE: 'idle',\n READY: 'ready',\n WAITING: 'waiting',\n RUNNING: 'running',\n PAUSED: 'paused',\n SKIPPED: 'skipped',\n FINISHED: 'finished',\n ERROR: 'error',\n} as const;\n","import scroll from 'scroll';\nimport scrollParent from 'scrollparent';\n\nexport function canUseDOM() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}\n\n/**\n * Find the bounding client rect\n */\nexport function getClientRect(element: HTMLElement | null) {\n if (!element) {\n return null;\n }\n\n return element.getBoundingClientRect();\n}\n\n/**\n * Helper function to get the browser-normalized \"document height\"\n */\nexport function getDocumentHeight(median = true): number {\n const { body, documentElement } = document;\n\n if (!body || !documentElement) {\n return 0;\n }\n\n if (median) {\n const heights = [\n body.scrollHeight,\n body.offsetHeight,\n documentElement.clientHeight,\n documentElement.scrollHeight,\n documentElement.offsetHeight,\n ].sort((a, b) => a - b);\n const middle = Math.floor(heights.length / 2);\n\n if (heights.length % 2 === 0) {\n return (heights[middle - 1] + heights[middle]) / 2;\n }\n\n return heights[middle];\n }\n\n return Math.max(\n body.scrollHeight,\n body.offsetHeight,\n documentElement.clientHeight,\n documentElement.scrollHeight,\n documentElement.offsetHeight,\n );\n}\n\n/**\n * Find and return the target DOM element based on a step's 'target'.\n */\nexport function getElement(element: string | HTMLElement): HTMLElement | null {\n if (typeof element === 'string') {\n return document.querySelector(element);\n }\n\n return element;\n}\n\n/**\n * Get computed style property\n */\nexport function getStyleComputedProperty(el: HTMLElement): CSSStyleDeclaration | null {\n if (!el || el.nodeType !== 1) {\n return null;\n }\n\n return getComputedStyle(el);\n}\n\n/**\n * Get scroll parent with fix\n */\nexport function getScrollParent(\n element: HTMLElement | null,\n skipFix: boolean,\n forListener?: boolean,\n) {\n if (!element) {\n return scrollDocument();\n }\n\n const parent = scrollParent(element) as HTMLElement;\n\n if (parent) {\n if (parent.isSameNode(scrollDocument())) {\n if (forListener) {\n return document;\n }\n\n return scrollDocument();\n }\n\n const hasScrolling = parent.scrollHeight > parent.offsetHeight;\n\n if (!hasScrolling && !skipFix) {\n parent.style.overflow = 'initial';\n\n return scrollDocument();\n }\n }\n\n return parent;\n}\n\n/**\n * Check if the element has custom scroll parent\n */\nexport function hasCustomScrollParent(element: HTMLElement | null, skipFix: boolean): boolean {\n if (!element) {\n return false;\n }\n\n const parent = getScrollParent(element, skipFix);\n\n return parent ? !parent.isSameNode(scrollDocument()) : false;\n}\n\n/**\n * Check if the element has custom offset parent\n */\nexport function hasCustomOffsetParent(element: HTMLElement): boolean {\n return element.offsetParent !== document.body;\n}\n\n/**\n * Check if an element has fixed/sticky position\n */\nexport function hasPosition(el: HTMLElement | Node | null, type: string = 'fixed'): boolean {\n if (!el || !(el instanceof HTMLElement)) {\n return false;\n }\n\n const { nodeName } = el;\n const styles = getStyleComputedProperty(el);\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n\n if (styles && styles.position === type) {\n return true;\n }\n\n if (!el.parentNode) {\n return false;\n }\n\n return hasPosition(el.parentNode, type);\n}\n\n/**\n * Check if the element is visible\n */\nexport function isElementVisible(element: HTMLElement): element is HTMLElement {\n if (!element) {\n return false;\n }\n\n let parentElement: HTMLElement | null = element;\n\n while (parentElement) {\n if (parentElement === document.body) {\n break;\n }\n\n if (parentElement instanceof HTMLElement) {\n const { display, visibility } = getComputedStyle(parentElement);\n\n if (display === 'none' || visibility === 'hidden') {\n return false;\n }\n }\n\n parentElement = parentElement.parentElement ?? null;\n }\n\n return true;\n}\n\n/**\n * Find and return the target DOM element based on a step's 'target'.\n */\nexport function getElementPosition(\n element: HTMLElement | null,\n offset: number,\n skipFix: boolean,\n): number {\n const elementRect = getClientRect(element);\n const parent = getScrollParent(element, skipFix);\n const hasScrollParent = hasCustomScrollParent(element, skipFix);\n let parentTop = 0;\n let top = elementRect?.top ?? 0;\n\n if (parent instanceof HTMLElement) {\n parentTop = parent.scrollTop;\n\n if (!hasScrollParent && !hasPosition(element)) {\n top += parentTop;\n }\n\n if (!parent.isSameNode(scrollDocument())) {\n top += scrollDocument().scrollTop;\n }\n }\n\n return Math.floor(top - offset);\n}\n\n/**\n * Get the scrollTop position\n */\nexport function getScrollTo(element: HTMLElement | null, offset: number, skipFix: boolean): number {\n if (!element) {\n return 0;\n }\n\n const { offsetTop = 0, scrollTop = 0 } = scrollParent(element) ?? {};\n let top = element.getBoundingClientRect().top + scrollTop;\n\n if (!!offsetTop && (hasCustomScrollParent(element, skipFix) || hasCustomOffsetParent(element))) {\n top -= offsetTop;\n }\n\n const output = Math.floor(top - offset);\n\n return output < 0 ? 0 : output;\n}\n\nexport function scrollDocument(): Element | HTMLElement {\n return document.scrollingElement ?? document.documentElement;\n}\n\n/**\n * Scroll to position\n */\nexport function scrollTo(\n value: number,\n options: { duration?: number; element: Element | HTMLElement },\n): Promise<void> {\n const { duration, element } = options;\n\n return new Promise((resolve, reject) => {\n const { scrollTop } = element;\n\n const limit = value > scrollTop ? value - scrollTop : scrollTop - value;\n\n scroll.top(element as HTMLElement, value, { duration: limit < 100 ? 50 : duration }, error => {\n if (error && error.message !== 'Element already at target scroll position') {\n return reject(error);\n }\n\n return resolve();\n });\n });\n}\n","import { isValidElement, ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\nimport is from 'is-lite';\n\nimport { LIFECYCLE } from '~/literals';\n\nimport { AnyObject, Lifecycle, NarrowPlainObject, Step } from '~/types';\n\nimport { hasPosition } from './dom';\n\ninterface LogOptions {\n /** The data to be logged */\n data: any;\n /** display the log */\n debug?: boolean;\n /** The title the logger was called from */\n title: string;\n /** If true, the message will be a warning */\n warn?: boolean;\n}\n\ninterface ShouldScrollOptions {\n isFirstStep: boolean;\n lifecycle: Lifecycle;\n previousLifecycle: Lifecycle;\n scrollToFirstStep: boolean;\n step: Step;\n target: HTMLElement | null;\n}\n\nexport const isReact16 = createPortal !== undefined;\n\n/**\n * Get the current browser\n */\nexport function getBrowser(userAgent: string = navigator.userAgent): string {\n let browser = userAgent;\n\n if (typeof window === 'undefined') {\n browser = 'node';\n }\n // @ts-expect-error IE support\n else if (document.documentMode) {\n browser = 'ie';\n } else if (/Edge/.test(userAgent)) {\n browser = 'edge';\n }\n // @ts-expect-error Opera 8.0+\n else if (Boolean(window.opera) || userAgent.includes(' OPR/')) {\n browser = 'opera';\n }\n // @ts-expect-error Firefox 1.0+\n else if (typeof window.InstallTrigger !== 'undefined') {\n browser = 'firefox';\n }\n // @ts-expect-error Chrome 1+\n else if (window.chrome) {\n browser = 'chrome';\n }\n // Safari (and Chrome iOS, Firefox iOS)\n else if (/(Version\\/([\\d._]+).*Safari|CriOS|FxiOS| Mobile\\/)/.test(userAgent)) {\n browser = 'safari';\n }\n\n return browser;\n}\n\n/**\n * Get Object type\n */\nexport function getObjectType(value: unknown): string {\n return Object.prototype.toString.call(value).slice(8, -1).toLowerCase();\n}\n\n/**\n * Get text from React components\n */\nexport function getText(root: ReactNode): string {\n const content: Array<string | number> = [];\n\n const recurse = (child: ReactNode) => {\n if (typeof child === 'string' || typeof child === 'number') {\n content.push(child);\n } else if (Array.isArray(child)) {\n child.forEach(c => recurse(c));\n } else if (isValidElement(child)) {\n const { children } = child.props;\n\n if (Array.isArray(children)) {\n children.forEach(c => recurse(c));\n } else {\n recurse(children);\n }\n }\n };\n\n recurse(root);\n\n return content.join(' ').trim();\n}\n\nexport function hasValidKeys(object: Record<string, unknown>, keys?: Array<string>): boolean {\n if (!is.plainObject(object) || !is.array(keys)) {\n return false;\n }\n\n return Object.keys(object).every(d => keys.includes(d));\n}\n\n/**\n * Convert hex to RGB\n */\nexport function hexToRGB(hex: string): Array<number> {\n const shorthandRegex = /^#?([\\da-f])([\\da-f])([\\da-f])$/i;\n const properHex = hex.replace(shorthandRegex, (_m, r, g, b) => r + r + g + g + b + b);\n\n const result = /^#?([\\da-f]{2})([\\da-f]{2})([\\da-f]{2})$/i.exec(properHex);\n\n return result ? [parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)] : [];\n}\n\n/**\n * Decide if the step shouldn't skip the beacon\n * @param {Object} step\n *\n * @returns {boolean}\n */\nexport function hideBeacon(step: Step): boolean {\n return step.disableBeacon || step.placement === 'center';\n}\n\n/**\n * Detect legacy browsers\n *\n * @returns {boolean}\n */\nexport function isLegacy(): boolean {\n return !['chrome', 'safari', 'firefox', 'opera'].includes(getBrowser());\n}\n\n/**\n * Log method calls if debug is enabled\n */\nexport function log({ data, debug = false, title, warn = false }: LogOptions) {\n /* eslint-disable no-console */\n const logFn = warn ? console.warn || console.error : console.log;\n\n if (debug) {\n if (title && data) {\n console.groupCollapsed(\n `%creact-joyride: ${title}`,\n 'color: #ff0044; font-weight: bold; font-size: 12px;',\n );\n\n if (Array.isArray(data)) {\n data.forEach(d => {\n if (is.plainObject(d) && d.key) {\n logFn.apply(console, [d.key, d.value]);\n } else {\n logFn.apply(console, [d]);\n }\n });\n } else {\n logFn.apply(console, [data]);\n }\n\n console.groupEnd();\n } else {\n console.error('Missing title or data props');\n }\n }\n /* eslint-enable */\n}\n\n/**\n * A function that does nothing.\n */\nexport function noop() {\n return undefined;\n}\n\n/**\n * Type-safe Object.keys()\n */\nexport function objectKeys<T extends AnyObject>(input: T) {\n return Object.keys(input) as Array<keyof T>;\n}\n\n/**\n * Remove properties from an object\n */\nexport function omit<T extends Record<string, any>, K extends keyof T>(\n input: NarrowPlainObject<T>,\n ...filter: K[]\n) {\n if (!is.plainObject(input)) {\n throw new TypeError('Expected an object');\n }\n\n const output: any = {};\n\n for (const key in input) {\n /* istanbul ignore else */\n if ({}.hasOwnProperty.call(input, key)) {\n if (!filter.includes(key as unknown as K)) {\n output[key] = input[key];\n }\n }\n }\n\n return output as Omit<T, K>;\n}\n\n/**\n * Select properties from an object\n */\nexport function pick<T extends Record<string, any>, K extends keyof T>(\n input: NarrowPlainObject<T>,\n ...filter: K[]\n) {\n if (!is.plainObject(input)) {\n throw new TypeError('Expected an object');\n }\n\n if (!filter.length) {\n return input;\n }\n\n const output: any = {};\n\n for (const key in input) {\n /* istanbul ignore else */\n if ({}.hasOwnProperty.call(input, key)) {\n if (filter.includes(key as unknown as K)) {\n output[key] = input[key];\n }\n }\n }\n\n return output as Pick<T, K>;\n}\n\nexport function shouldScroll(options: ShouldScrollOptions): boolean {\n const { isFirstStep, lifecycle, previousLifecycle, scrollToFirstStep, step, target } = options;\n\n return (\n !step.disableScrolling &&\n (!isFirstStep || scrollToFirstStep || lifecycle === LIFECYCLE.TOOLTIP) &&\n step.placement !== 'center' &&\n (!step.isFixed || !hasPosition(target)) && // fixed steps don't need to scroll\n previousLifecycle !== lifecycle &&\n ([LIFECYCLE.BEACON, LIFECYCLE.TOOLTIP] as Array<Lifecycle>).includes(lifecycle)\n );\n}\n\n/**\n * Block execution\n */\nexport function sleep(seconds = 1) {\n return new Promise(resolve => {\n setTimeout(resolve, seconds * 1000);\n });\n}\n","import { noop } from '~/modules/helpers';\n\nexport const defaultFloaterProps = {\n options: {\n preventOverflow: {\n boundariesElement: 'scrollParent',\n },\n },\n wrapperOptions: {\n offset: -18,\n position: true,\n },\n};\n\nexport const defaultLocale = {\n back: 'Back',\n close: 'Close',\n last: 'Last',\n next: 'Next',\n open: 'Open the dialog',\n skip: 'Skip',\n};\n\nexport const defaultStep = {\n event: 'click',\n placement: 'bottom',\n offset: 10,\n disableBeacon: false,\n disableCloseOnEsc: false,\n disableOverlay: false,\n disableOverlayClose: false,\n disableScrollParentFix: false,\n disableScrolling: false,\n hideBackButton: false,\n hideCloseButton: false,\n hideFooter: false,\n isFixed: false,\n locale: defaultLocale,\n showProgress: false,\n showSkipButton: false,\n spotlightClicks: false,\n spotlightPadding: 10,\n};\n\nexport const defaultProps = {\n continuous: false,\n debug: false,\n disableCloseOnEsc: false,\n disableOverlay: false,\n disableOverlayClose: false,\n disableScrolling: false,\n disableScrollParentFix: false,\n getHelpers: noop(),\n hideBackButton: false,\n run: true,\n scrollOffset: 20,\n scrollDuration: 300,\n scrollToFirstStep: false,\n showSkipButton: false,\n showProgress: false,\n spotlightClicks: false,\n spotlightPadding: 10,\n steps: [],\n};\n","import deepmerge from 'deepmerge';\n\nimport { hexToRGB } from './modules/helpers';\nimport { Props, StepMerged, StylesOptions, StylesWithFloaterStyles } from './types';\n\nconst defaultOptions = {\n arrowColor: '#fff',\n backgroundColor: '#fff',\n beaconSize: 36,\n overlayColor: 'rgba(0, 0, 0, 0.5)',\n primaryColor: '#f04',\n spotlightShadow: '0 0 15px rgba(0, 0, 0, 0.5)',\n textColor: '#333',\n width: 380,\n zIndex: 100,\n} satisfies StylesOptions;\n\nconst buttonBase = {\n backgroundColor: 'transparent',\n border: 0,\n borderRadius: 0,\n color: '#555',\n cursor: 'pointer',\n fontSize: 16,\n lineHeight: 1,\n padding: 8,\n WebkitAppearance: 'none',\n};\n\nconst spotlight = {\n borderRadius: 4,\n position: 'absolute',\n};\n\nexport default function getStyles(props: Props, step: StepMerged) {\n const { floaterProps, styles } = props;\n const mergedFloaterProps = deepmerge(step.floaterProps ?? {}, floaterProps ?? {});\n const mergedStyles = deepmerge(styles ?? {}, step.styles ?? {});\n const options = deepmerge(defaultOptions, mergedStyles.options || {}) satisfies StylesOptions;\n const hideBeacon = step.placement === 'center' || step.disableBeacon;\n let { width } = options;\n\n if (window.innerWidth > 480) {\n width = 380;\n }\n\n if ('width' in options) {\n width =\n typeof options.width === 'number' && window.innerWidth < options.width\n ? window.innerWidth - 30\n : options.width;\n }\n\n const overlay = {\n bottom: 0,\n left: 0,\n overflow: 'hidden',\n position: 'absolute',\n right: 0,\n top: 0,\n zIndex: options.zIndex,\n };\n\n const defaultStyles = {\n beacon: {\n ...buttonBase,\n display: hideBeacon ? 'none' : 'inline-block',\n height: options.beaconSize,\n position: 'relative',\n width: options.beaconSize,\n zIndex: options.zIndex,\n },\n beaconInner: {\n animation: 'joyride-beacon-inner 1.2s infinite ease-in-out',\n backgroundColor: options.primaryColor,\n borderRadius: '50%',\n display: 'block',\n height: '50%',\n left: '50%',\n opacity: 0.7,\n position: 'absolute',\n top: '50%',\n transform: 'translate(-50%, -50%)',\n width: '50%',\n },\n beaconOuter: {\n animation: 'joyride-beacon-outer 1.2s infinite ease-in-out',\n backgroundColor: `rgba(${hexToRGB(options.primaryColor).join(',')}, 0.2)`,\n border: `2px solid ${options.primaryColor}`,\n borderRadius: '50%',\n boxSizing: 'border-box',\n display: 'block',\n height: '100%',\n left: 0,\n opacity: 0.9,\n position: 'absolute',\n top: 0,\n transformOrigin: 'center',\n width: '100%',\n },\n tooltip: {\n backgroundColor: options.backgroundColor,\n borderRadius: 5,\n boxSizing: 'border-box',\n color: options.textColor,\n fontSize: 16,\n maxWidth: '100%',\n padding: 15,\n position: 'relative',\n width,\n },\n tooltipContainer: {\n lineHeight: 1.4,\n textAlign: 'center',\n },\n tooltipTitle: {\n fontSize: 18,\n margin: 0,\n },\n tooltipContent: {\n padding: '20px 10px',\n },\n tooltipFooter: {\n alignItems: 'center',\n display: 'flex',\n justifyContent: 'flex-end',\n marginTop: 15,\n },\n tooltipFooterSpacer: {\n flex: 1,\n },\n buttonNext: {\n ...buttonBase,\n backgroundColor: options.primaryColor,\n borderRadius: 4,\n color: '#fff',\n },\n buttonBack: {\n ...buttonBase,\n color: options.primaryColor,\n marginLeft: 'auto',\n marginRight: 5,\n },\n buttonClose: {\n ...buttonBase,\n color: options.textColor,\n height: 14,\n padding: 15,\n position: 'absolute',\n right: 0,\n top: 0,\n width: 14,\n },\n buttonSkip: {\n ...buttonBase,\n color: options.textColor,\n fontSize: 14,\n },\n overlay: {\n ...overlay,\n backgroundColor: options.overlayColor,\n mixBlendMode: 'hard-light',\n },\n overlayLegacy: {\n ...overlay,\n },\n overlayLegacyCenter: {\n ...overlay,\n backgroundColor: options.overlayColor,\n },\n spotlight: {\n ...spotlight,\n backgroundColor: 'gray',\n },\n spotlightLegacy: {\n ...spotlight,\n boxShadow: `0 0 0 9999px ${options.overlayColor}, ${options.spotlightShadow}`,\n },\n floaterStyles: {\n arrow: {\n color: mergedFloaterProps?.styles?.arrow?.color ?? options.arrowColor,\n },\n options: {\n zIndex: options.zIndex + 100,\n },\n },\n options,\n };\n\n return deepmerge(defaultStyles, mergedStyles) as StylesWithFloaterStyles;\n}\n","import { Props as FloaterProps } from 'react-floater';\nimport deepmerge from 'deepmerge';\nimport is from 'is-lite';\nimport { SetRequired } from 'type-fest';\n\nimport { defaultFloaterProps, defaultLocale, defaultStep } from '~/defaults';\nimport getStyles from '~/styles';\nimport { Props, Step, StepMerged } from '~/types';\n\nimport { getElement, hasCustomScrollParent } from './dom';\nimport { log, omit, pick } from './helpers';\n\nfunction getTourProps(props: Props) {\n return pick(\n props,\n 'beaconComponent',\n 'disableCloseOnEsc',\n 'disableOverlay',\n 'disableOverlayClose',\n 'disableScrolling',\n 'disableScrollParentFix',\n 'floaterProps',\n 'hideBackButton',\n 'hideCloseButton',\n 'locale',\n 'showProgress',\n 'showSkipButton',\n 'spotlightClicks',\n 'spotlightPadding',\n 'styles',\n 'tooltipComponent',\n );\n}\n\nexport function getMergedStep(props: Props, currentStep?: Step): StepMerged {\n const step = currentStep ?? {};\n const mergedStep = deepmerge.all([defaultStep, getTourProps(props), step], {\n isMergeableObject: is.plainObject,\n }) as StepMerged;\n\n const mergedStyles = getStyles(props, mergedStep);\n const scrollParent = hasCustomScrollParent(\n getElement(mergedStep.target),\n mergedStep.disableScrollParentFix,\n );\n const floaterProps = deepmerge.all([\n defaultFloaterProps,\n props.floaterProps ?? {},\n mergedStep.floaterProps ?? {},\n ]) as SetRequired<FloaterProps, 'options' | 'wrapperOptions'>;\n\n // Set react-floater props\n floaterProps.offset = mergedStep.offset;\n floaterProps.styles = deepmerge(floaterProps.styles ?? {}, mergedStyles.floaterStyles);\n\n floaterProps.offset += props.spotlightPadding ?? mergedStep.spotlightPadding ?? 0;\n\n if (mergedStep.placementBeacon && floaterProps.wrapperOptions) {\n floaterProps.wrapperOptions.placement = mergedStep.placementBeacon;\n }\n\n if (scrollParent && floaterProps.options.preventOverflow) {\n floaterProps.options.preventOverflow.boundariesElement = 'window';\n }\n\n return {\n ...mergedStep,\n locale: deepmerge.all([defaultLocale, props.locale ?? {}, mergedStep.locale || {}]),\n floaterProps,\n styles: omit(mergedStyles, 'floaterStyles'),\n };\n}\n\n/**\n * Validate if a step is valid\n */\nexport function validateStep(step: Step, debug: boolean = false): boolean {\n if (!is.plainObject(step)) {\n log({\n title: 'validateStep',\n data: 'step must be an object',\n warn: true,\n debug,\n });\n\n return false;\n }\n\n if (!step.target) {\n log({\n title: 'validateStep',\n data: 'target is missing from the step',\n warn: true,\n debug,\n });\n\n return false;\n }\n\n return true;\n}\n\n/**\n * Validate if steps are valid\n */\nexport function validateSteps(steps: Array<Step>, debug: boolean = false): boolean {\n if (!is.array(steps)) {\n log({\n title: 'validateSteps',\n data: 'steps must be an array',\n warn: true,\n debug,\n });\n\n return false;\n }\n\n return steps.every(d => validateStep(d, debug));\n}\n","import { Props as FloaterProps } from 'react-floater';\nimport is from 'is-lite';\n\nimport { ACTIONS, LIFECYCLE, STATUS } from '~/literals';\n\nimport { Origin, State, Status, Step, StoreHelpers, StoreOptions } from '~/types';\n\nimport { hasValidKeys, objectKeys, omit } from './helpers';\n\ntype StateWithContinuous = State & { continuous: boolean };\ntype Listener = (state: State) => void;\ntype PopperData = Parameters<NonNullable<FloaterProps['getPopper']>>[0];\n\nconst defaultState: State = {\n action: 'init',\n controlled: false,\n index: 0,\n lifecycle: LIFECYCLE.INIT,\n origin: null,\n size: 0,\n status: STATUS.IDLE,\n};\nconst validKeys = objectKeys(omit(defaultState, 'controlled', 'size'));\n\nclass Store {\n private beaconPopper: PopperData | null;\n private tooltipPopper: PopperData | null;\n private data: Map<string, any> = new Map();\n private listener: Listener | null;\n private store: Map<string, any> = new Map();\n\n constructor(options?: StoreOptions) {\n const { continuous = false, stepIndex, steps = [] } = options ?? {};\n\n this.setState(\n {\n action: ACTIONS.INIT,\n controlled: is.number(stepIndex),\n continuous,\n index: is.number(stepIndex) ? stepIndex : 0,\n lifecycle: LIFECYCLE.INIT,\n origin: null,\n status: steps.length ? STATUS.READY : STATUS.IDLE,\n },\n true,\n );\n\n this.beaconPopper = null;\n this.tooltipPopper = null;\n this.listener = null;\n this.setSteps(steps);\n }\n\n public getState(): State {\n if (!this.store.size) {\n return { ...defaultState };\n }\n\n return {\n action: this.store.get('action') || '',\n controlled: this.store.get('controlled') || false,\n index: parseInt(this.store.get('index'), 10),\n lifecycle: this.store.get('lifecycle') || '',\n origin: this.store.get('origin') || null,\n size: this.store.get('size') || 0,\n status: (this.store.get('status') as Status) || '',\n };\n }\n\n private getNextState(state: Partial<State>, force: boolean = false): State {\n const { action, controlled, index, size, status } = this.getState();\n const newIndex = is.number(state.index) ? state.index : index;\n const nextIndex = controlled && !force ? index : Math.min(Math.max(newIndex, 0), size);\n\n return {\n action: state.action ?? action,\n controlled,\n index: nextIndex,\n lifecycle: state.lifecycle ?? LIFECYCLE.INIT,\n origin: state.origin ?? null,\n size: state.size ?? size,\n status: nextIndex === size ? STATUS.FINISHED : state.status ?? status,\n };\n }\n\n private getSteps(): Array<Step> {\n const steps = this.data.get('steps');\n\n return Array.isArray(steps) ? steps : [];\n }\n\n private hasUpdatedState(oldState: State): boolean {\n const before = JSON.stringify(oldState);\n const after = JSON.stringify(this.getState());\n\n return before !== after;\n }\n\n private setState(nextState: Partial<StateWithContinuous>, initial: boolean = false) {\n const state = this.getState();\n\n const {\n action,\n index,\n lifecycle,\n origin = null,\n size,\n status,\n } = {\n ...state,\n ...nextState,\n };\n\n this.store.set('action', action);\n this.store.set('index', index);\n this.store.set('lifecycle', lifecycle);\n this.store.set('origin', origin);\n this.store.set('size', size);\n this.store.set('status', status);\n\n if (initial) {\n this.store.set('controlled', nextState.controlled);\n this.store.set('continuous', nextState.continuous);\n }\n\n if (this.listener && this.hasUpdatedState(state)) {\n this.listener(this.getState());\n }\n }\n\n public addListener = (listener: Listener) => {\n this.listener = listener;\n };\n\n public setSteps = (steps: Array<Step>) => {\n const { size, status } = this.getState();\n const state = {\n size: steps.length,\n status,\n };\n\n this.data.set('steps', steps);\n\n if (status === STATUS.WAITING && !size && steps.length) {\n state.status = STATUS.RUNNING;\n }\n\n this.setState(state);\n };\n\n public getHelpers(): StoreHelpers {\n return {\n close: this.close,\n go: this.go,\n info: this.info,\n next: this.next,\n open: this.open,\n prev: this.prev,\n reset: this.reset,\n skip: this.skip,\n };\n }\n\n public getPopper = (name: 'beacon' | 'tooltip'): PopperData | null => {\n if (name === 'beacon') {\n return this.beaconPopper;\n }\n\n return this.tooltipPopper;\n };\n\n public setPopper = (name: 'beacon' | 'tooltip', popper: PopperData) => {\n if (name === 'beacon') {\n this.beaconPopper = popper;\n } else {\n this.tooltipPopper = popper;\n }\n };\n\n public cleanupPoppers = () => {\n this.beaconPopper = null;\n this.tooltipPopper = null;\n };\n\n public close = (origin: Origin | null = null) => {\n const { index, status } = this.getState();\n\n if (status !== STATUS.RUNNING) {\n return;\n }\n\n this.setState({\n ...this.getNextState({ action: ACTIONS.CLOSE, index: index + 1, origin }),\n });\n };\n\n public go = (nextIndex: number) => {\n const { controlled, status } = this.getState();\n\n if (controlled || status !== STATUS.RUNNING) {\n return;\n }\n\n const step = this.getSteps()[nextIndex];\n\n this.setState({\n ...this.getNextState({ action: ACTIONS.GO, index: nextIndex }),\n status: step ? status : STATUS.FINISHED,\n });\n };\n\n public info = (): State => this.getState();\n\n public next = () => {\n const { index, status } = this.getState();\n\n if (status !== STATUS.RUNNING) {\n return;\n }\n\n this.setState(this.getNextState({ action: ACTIONS.NEXT, index: index + 1 }));\n };\n\n public open = () => {\n const { status } = this.getState();\n\n if (status !== STATUS.RUNNING) {\n return;\n }\n\n this.setState({\n ...this.getNextState({ action: ACTIONS.UPDATE, lifecycle: LIFECYCLE.TOOLTIP }),\n });\n };\n\n public prev = () => {\n const { index, status } = this.getState();\n\n if (status !== STATUS.RUNNING) {\n return;\n }\n\n this.setState({\n ...this.getNextState({ action: ACTIONS.PREV, index: index - 1 }),\n });\n };\n\n public reset = (restart = false) => {\n const { controlled } = this.getState();\n\n if (controlled) {\n return;\n }\n\n this.setState({\n ...this.getNextState({ action: ACTIONS.RESET, index: 0 }),\n status: restart ? STATUS.RUNNING : STATUS.READY,\n });\n };\n\n public skip = () => {\n const { status } = this.getState();\n\n if (status !== STATUS.RUNNING) {\n return;\n }\n\n this.setState({\n action: ACTIONS.SKIP,\n lifecycle: LIFECYCLE.INIT,\n status: STATUS.SKIPPED,\n });\n };\n\n public start = (nextIndex?: number) => {\n const { index, size } = this.getState();\n\n this.setState({\n ...this.getNextState(\n {\n action: ACTIONS.START,\n index: is.number(nextIndex) ? nextIndex : index,\n },\n true,\n ),\n status: size ? STATUS.RUNNING : STATUS.WAITING,\n });\n };\n\n public stop = (advance = false) => {\n const { index, status } = this.getState();\n\n if (([STATUS.FINISHED, STATUS.SKIPPED] as Array<Status>).includes(status)) {\n return;\n }\n\n this.setState({\n ...this.getNextState({ action: ACTIONS.STOP, index: index + (advance ? 1 : 0) }),\n status: STATUS.PAUSED,\n });\n };\n\n public update = (state: Partial<State>) => {\n if (!hasValidKeys(state, validKeys)) {\n throw new Error(`State is not valid. Valid keys: ${validKeys.join(', ')}`);\n }\n\n this.setState({\n ...this.getNextState(\n {\n ...this.getState(),\n ...state,\n action: state.action ?? ACTIONS.UPDATE,\n origin: state.origin ?? null,\n },\n true,\n ),\n });\n };\n}\n\nexport type StoreInstance = ReturnType<typeof createStore>;\n\nexport default function createStore(options?: StoreOptions) {\n return new Store(options);\n}\n","import * as React from 'react';\n\ninterface Props {\n styles: React.CSSProperties;\n}\n\nfunction JoyrideSpotlight({ styles }: Props) {\n return (\n <div\n key=\"JoyrideSpotlight\"\n className=\"react-joyride__spotlight\"\n data-test-id=\"spotlight\"\n style={styles}\n />\n );\n}\n\nexport default JoyrideSpotlight;\n","import * as React from 'react';\nimport treeChanges from 'tree-changes';\n\nimport {\n getClientRect,\n getDocumentHeight,\n getElement,\n getElementPosition,\n getScrollParent,\n hasCustomScrollParent,\n hasPosition,\n} from '~/modules/dom';\nimport { getBrowser, isLegacy, log } from '~/modules/helpers';\n\nimport { LIFECYCLE } from '~/literals';\n\nimport { Lifecycle, OverlayProps } from '~/types';\n\nimport Spotlight from './Spotlight';\n\ninterface State {\n isScrolling: boolean;\n mouseOverSpotlight: boolean;\n showSpotlight: boolean;\n}\n\ninterface SpotlightStyles extends React.CSSProperties {\n height: number;\n left: number;\n top: number;\n width: number;\n}\n\nexport default class JoyrideOverlay extends React.Component<OverlayProps, State> {\n isActive = false;\n resizeTimeout?: number;\n scrollTimeout?: number;\n scrollParent?: Document | Element;\n state = {\n isScrolling: false,\n mouseOverSpotlight: false,\n showSpotlight: true,\n };\n\n componentDidMount() {\n const { debug, disableScrolling, disableScrollParentFix = false, target } = this.props;\n const element = getElement(target);\n\n this.scrollParent = getScrollParent(element ?? document.body, disableScrollParentFix, true);\n this.isActive = true;\n\n if (process.env.NODE_ENV !== 'production') {\n if (!disableScrolling && hasCustomScrollParent(element, true)) {\n log({\n title: 'step has a custom scroll parent and can cause trouble with scrolling',\n data: [{ key: 'parent', value: this.scrollParent }],\n debug,\n });\n }\n }\n\n window.addEventListener('resize', this.handleResize);\n }\n\n componentDidUpdate(previousProps: OverlayProps) {\n const { lifecycle, spotlightClicks } = this.props;\n const { changed } = treeChanges(previousProps, this.props);\n\n if (changed('lifecycle', LIFECYCLE.TOOLTIP)) {\n this.scrollParent?.addEventListener('scroll', this.handleScroll, { passive: true });\n\n setTimeout(() => {\n const { isScrolling } = this.state;\n\n if (!isScrolling) {\n this.updateState({ showSpotlight: true });\n }\n }, 100);\n }\n\n if (changed('spotlightClicks') || changed('disableOverlay') || changed('lifecycle')) {\n if (spotlightClicks && lifecycle === LIFECYCLE.TOOLTIP) {\n window.addEventListener('mousemove', this.handleMouseMove, false);\n } else if (lifecycle !== LIFECYCLE.TOOLTIP) {\n window.removeEventListener('mousemove', this.handleMouseMove);\n }\n }\n }\n\n componentWillUnmount() {\n this.isActive = false;\n\n window.removeEventListener('mousemove', this.handleMouseMove);\n window.removeEventListener('resize', this.handleResize);\n\n clearTimeout(this.resizeTimeout);\n clearTimeout(this.scrollTimeout);\n this.scrollParent?.removeEventListener('scroll', this.handleScroll);\n }\n\n hideSpotlight = () => {\n const { continuous, disableOverlay, lifecycle } = this.props;\n const hiddenLifecycles = [LIFECYCLE.BEACON, LIFECYCLE.COMPLETE, LIFECYCLE.ERROR] as Lifecycle[];\n\n return (\n disableOverlay ||\n (continuous ? hiddenLifecycles.includes(lifecycle) : lifecycle !== LIFECYCLE.TOOLTIP)\n );\n };\n\n get overlayStyles() {\n const { mouseOverSpotlight } = this.state;\n const { disableOverlayClose, placement, styles } = this.props;\n\n let baseStyles = styles.overlay;\n\n if (isLegacy()) {\n baseStyles = placement === 'center' ? styles.overlayLegacyCenter : styles.overlayLegacy;\n }\n\n return {\n cursor: disableOverlayClose ? 'default' : 'pointer',\n height: getDocumentHeight(),\n pointerEvents: mouseOverSpotlight ? 'none' : 'auto',\n ...baseStyles,\n } as React.CSSProperties;\n }\n\n get spotlightStyles(): SpotlightStyles {\n const { showSpotlight } = this.state;\n const {\n disableScrollParentFix = false,\n spotlightClicks,\n spotlightPadding = 0,\n styles,\n target,\n } = this.props;\n const element = getElement(target);\n const elementRect = getClientRect(element);\n const isFixedTarget = hasPosition(element);\n const top = getElementPosition(element, spotlightPadding, disableScrollParentFix);\n\n return {\n ...(isLegacy() ? styles.spotlightLegacy : styles.spotlight),\n height: Math.round((elementRect?.height ?? 0) + spotlightPadding * 2),\n left: Math.round((elementRect?.left ?? 0) - spotlightPadding),\n opacity: showSpotlight ? 1 : 0,\n pointerEvents: spotlightClicks ? 'none' : 'auto',\n position: isFixedTarget ? 'fixed' : 'absolute',\n top,\n transition: 'opacity 0.2s',\n width: Math.round((elementRect?.width ?? 0) + spotlightPadding * 2),\n } satisfies React.CSSProperties;\n }\n\n handleMouseMove = (event: MouseEvent) => {\n const { mouseOverSpotlight } = this.state;\n const { height, left, position, top, width } = this.spotlightStyles;\n\n const offsetY = position === 'fixed' ? event.clientY : event.pageY;\n const offsetX = position === 'fixed' ? event.clientX : event.pageX;\n const inSpotlightHeight = offsetY >= top && offsetY <= top + height;\n const inSpotlightWidth = offsetX >= left && offsetX <= left + width;\n const inSpotlight = inSpotlightWidth && inSpotlightHeight;\n\n if (inSpotlight !== mouseOverSpotlight) {\n this.updateState({ mouseOverSpotlight: inSpotlight });\n }\n };\n\n handleScroll = () => {\n const { target } = this.props;\n const element = getElement(target);\n\n if (this.scrollParent !== document) {\n const { isScrolling } = this.state;\n\n if (!isScrolling) {\n this.updateState({ isScrolling: true, showSpotlight: false });\n }\n\n clearTimeout(this.scrollTimeout);\n\n this.scrollTimeout = window.setTimeout(() => {\n this.updateState({ isScrolling: false, showSpotlight: true });\n }, 50);\n } else if (hasPosition(element, 'sticky')) {\n this.updateState({});\n }\n };\n\n handleResize = () => {\n clearTimeout(this.resizeTimeout);\n\n this.resizeTimeout = window.setTimeout(() => {\n if (!this.isActive) {\n return;\n }\n\n this.forceUpdate();\n }, 100);\n };\n\n updateState(state: Partial<State>) {\n if (!this.isActive) {\n return;\n }\n\n this.setState(previousState => ({ ...previousState, ...state }));\n }\n\n render() {\n const { showSpotlight } = this.state;\n const { onClickOverlay, placement } = this.props;\n const { hideSpotlight, overlayStyles, spotlightStyles } = this;\n\n if (hideSpotlight()) {\n return null;\n }\n\n let spotlight = placement !== 'center' && showSpotlight && (\n <Spotlight styles={spotlightStyles} />\n );\n\n // Hack for Safari bug with mix-blend-mode with z-index\n if (getBrowser() === 'safari') {\n const { mixBlendMode, zIndex, ...safariOverlay } = overlayStyles;\n\n spotlight = <div style={{ ...safariOverlay }}>{spotlight}</div>;\n delete overlayStyles.backgroundColor;\n }\n\n return (\n <div\n className=\"react-joyride__overlay\"\n data-test-id=\"overlay\"\n onClick={onClickOverlay}\n role=\"presentation\"\n style={overlayStyles}\n >\n {spotlight}\n </div>\n );\n }\n}\n","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\n\nimport { canUseDOM } from '~/modules/dom';\nimport { isReact16 } from '~/modules/helpers';\n\ninterface Props {\n children: React.ReactElement;\n id: string;\n}\n\nexport default class JoyridePortal extends React.Component<Props> {\n node: HTMLElement | null = null;\n\n componentDidMount() {\n const { id } = this.props;\n\n if (!canUseDOM()) {\n return;\n }\n\n this.node = document.createElement('div');\n this.node.id = id;\n\n document.body.appendChild(this.node);\n\n if (!isReact16) {\n this.renderReact15();\n }\n }\n\n componentDidUpdate() {\n if (!canUseDOM()) {\n return;\n }\n\n if (!isReact16) {\n this.renderReact15();\n }\n }\n\n componentWillUnmount() {\n if (!canUseDOM() || !this.node) {\n return;\n }\n\n if (!isReact16) {\n // eslint-disable-next-line react/no-deprecated\n ReactDOM.unmountComponentAtNode(this.node);\n }\n\n if (this.node.parentNode === document.body) {\n document.body.removeChild(this.node);\n this.node = null;\n }\n }\n\n renderReact15() {\n if (!canUseDOM()) {\n return;\n }\n\n const { children } = this.props;\n\n if (this.node) {\n ReactDOM.unstable_renderSubtreeIntoContainer(this, children, this.node);\n }\n }\n\n renderReact16() {\n if (!canUseDOM() || !isReact16) {\n return null;\n }\n\n const { children } = this.props;\n\n if (!this.node) {\n return null;\n }\n\n return ReactDOM.createPortal(children, this.node);\n }\n\n render() {\n if (!isReact16) {\n return null;\n }\n\n return this.renderReact16();\n }\n}\n","interface ScopeOptions {\n code?: string;\n selector: string | null;\n}\n\nexport default class Scope {\n element: HTMLElement;\n options: ScopeOptions;\n\n constructor(element: HTMLElement, options: ScopeOptions) {\n if (!(element instanceof HTMLElement)) {\n throw new TypeError('Invalid parameter: element must be an HTMLElement');\n }\n\n this.element = element;\n this.options = options;\n\n window.addEventListener('keydown', this.handleKeyDown, false);\n\n this.setFocus();\n }\n\n canBeTabbed = (element: HTMLElement): boolean => {\n const { tabIndex } = element;\n\n if (tabIndex === null || tabIndex < 0) {\n return false;\n }\n\n return this.canHaveFocus(element);\n };\n\n canHaveFocus = (element: HTMLElement): boolean => {\n const validTabNodes = /input|select|textarea|button|object/;\n const nodeName = element.nodeName.toLowerCase();\n\n const isValid =\n (validTabNodes.test(nodeName) && !element.getAttribute('disabled')) ||\n (nodeName === 'a' && !!element.getAttribute('href'));\n\n return isValid && this.isVisible(element);\n };\n\n findValidTabElements = (): Array<HTMLElement> =>\n [].slice.call(this.element.querySelectorAll('*'), 0).filter(this.canBeTabbed);\n\n handleKeyDown = (event: KeyboardEvent) => {\n const { code = 'Tab' } = this.options;\n\n if (event.code === code) {\n this.interceptTab(event);\n }\n };\n\n interceptTab = (event: KeyboardEvent) => {\n event.preventDefault();\n const elements = this.findValidTabElements();\n const { shiftKey } = event;\n\n if (!elements.length) {\n return;\n }\n\n let x = document.activeElement ? elements.indexOf(document.activeElement as HTMLElement) : 0;\n\n if (x === -1 || (!shiftKey && x + 1 === elements.length)) {\n x = 0;\n } else if (shiftKey && x === 0) {\n x = elements.length - 1;\n } else {\n x += shiftKey ? -1 : 1;\n }\n\n elements[x].focus();\n };\n\n // eslint-disable-next-line class-methods-use-this\n isHidden = (element: HTMLElement) => {\n const noSize = element.offsetWidth <= 0 && element.offsetHeight <= 0;\n const style = window.getComputedStyle(element);\n\n if (noSize && !element.innerHTML) {\n return true;\n }\n\n return (\n (noSize && style.getPropertyValue('overflow') !== 'visible') ||\n style.getPropertyValue('display') === 'none'\n );\n };\n\n isVisible = (element: HTMLElement): boolean => {\n let parentElement: HTMLElement | null = element;\n\n while (parentElement) {\n if (parentElement instanceof HTMLElement) {\n if (parentElement === document.body) {\n break;\n }\n\n if (this.isHidden(parentElement)) {\n return false;\n }\n\n parentElement = parentElement.parentNode as HTMLElement;\n }\n }\n\n return true;\n };\n\n removeScope = () => {\n window.removeEventListener('keydown', this.handleKeyDown);\n };\n\n checkFocus = (target: HTMLElement) => {\n if (document.activeElement !== target) {\n target.focus();\n window.requestAnimationFrame(() => this.checkFocus(target));\n }\n };\n\n setFocus = () => {\n const { selector } = this.options;\n\n if (!selector) {\n return;\n }\n\n const target = this.element.querySelector(selector);\n\n if (target) {\n window.requestAnimationFrame(() => this.checkFocus(target as HTMLElement));\n }\n };\n}\n","import * as React from 'react';\nimport innerText from 'react-innertext';\nimport is from 'is-lite';\n\nimport { BeaconProps } from '~/types';\n\nexport default class JoyrideBeacon extends React.Component<BeaconProps> {\n private beacon: HTMLElement | null = null;\n\n constructor(props: BeaconProps) {\n super(props);\n\n if (props.beaconComponent) {\n return;\n }\n\n const head = document.head || document.getElementsByTagName('head')[0];\n const style = document.createElement('style');\n\n style.id = 'joyride-beacon-animation';\n\n if (props.nonce) {\n style.setAttribute('nonce', props.nonce);\n }\n\n const css = `\n @keyframes joyride-beacon-inner {\n 20% {\n opacity: 0.9;\n }\n \n 90% {\n opacity: 0.7;\n }\n }\n \n @keyframes joyride-beacon-outer {\n 0% {\n transform: scale(1);\n }\n \n 45% {\n opacity: 0.7;\n transform: scale(0.75);\n }\n \n 100% {\n opacity: 0.9;\n transform: scale(1);\n }\n }\n `;\n\n style.appendChild(document.createTextNode(css));\n\n head.appendChild(style);\n }\n\n componentDidMount() {\n const { shouldFocus } = this.props;\n\n if (process.env.NODE_ENV !== 'production') {\n if (!is.domElement(this.beacon)) {\n console.warn('beacon is not a valid DOM element'); // eslint-disable-line no-console\n }\n }\n\n setTimeout(() => {\n if (is.domElement(this.beacon) && shouldFocus) {\n this.beacon.focus();\n }\n }, 0);\n }\n\n componentWillUnmount() {\n const style = document.getElementById('joyride-beacon-animation');\n\n if (style?.parentNode) {\n style.parentNode.removeChild(style);\n }\n }\n\n setBeaconRef = (c: HTMLElement | null) => {\n this.beacon = c;\n };\n\n render() {\n const {\n beaconComponent,\n continuous,\n index,\n isLastStep,\n locale,\n onClickOrHover,\n size,\n step,\n styles,\n } = this.props;\n const title = is.string(locale.open) ? locale.open : innerText(locale.open);\n const sharedProps = {\n 'aria-label': title,\n onClick: onClickOrHover,\n onMouseEnter: onClickOrHover,\n ref: this.setBeaconRef,\n title,\n };\n let component;\n\n if (beaconComponent) {\n const BeaconComponent = beaconComponent;\n\n component = (\n <BeaconComponent\n continuous={continuous}\n index={index}\n isLastStep={isLastStep}\n size={size}\n step={step}\n {...sharedProps}\n />\n );\n } else {\n component = (\n <button\n key=\"JoyrideBeacon\"\n className=\"react-joyride__beacon\"\n data-test-id=\"button-beacon\"\n style={styles.beacon}\n type=\"button\"\n {...sharedProps}\n >\n <span style={styles.beaconInner} />\n <span style={styles.beaconOuter} />\n </button>\n );\n }\n\n return component;\n }\n}\n","import React, { CSSProperties } from 'react';\n\ninterface Props {\n styles: CSSProperties;\n}\n\nfunction JoyrideTooltipCloseButton({ styles, ...props }: Props) {\n const { color, height, width, ...style } = styles;\n\n return (\n <button style={style} type=\"button\" {...props}>\n <svg\n height={typeof height === 'number' ? `${height}px` : height}\n preserveAspectRatio=\"xMidYMid\"\n version=\"1.1\"\n viewBox=\"0 0 18 18\"\n width={typeof width === 'number' ? `${width}px` : width}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g>\n <path\n d=\"M8.13911129,9.00268191 L0.171521827,17.0258467 C-0.0498027049,17.248715 -0.0498027049,17.6098394 0.171521827,17.8327545 C0.28204354,17.9443526 0.427188206,17.9998706 0.572051765,17.9998706 C0.71714958,17.9998706 0.862013139,17.9443526 0.972581703,17.8327545 L9.0000937,9.74924618 L17.0276057,17.8327545 C17.1384085,17.9443526 17.2832721,17.9998706 17.4281356,17.9998706 C17.5729992,17.9998706 17.718097,17.9443526 17.8286656,17.8327545 C18.0499901,17.6098862 18.0499901,17.2487618 17.8286656,17.0258467 L9.86135722,9.00268191 L17.8340066,0.973848225 C18.0553311,0.750979934 18.0553311,0.389855532 17.8340066,0.16694039 C17.6126821,-0.0556467968 17.254037,-0.0556467968 17.0329467,0.16694039 L9.00042166,8.25611765 L0.967006424,0.167268345 C0.745681892,-0.0553188426 0.387317931,-0.0553188426 0.165993399,0.167268345 C-0.0553311331,0.390136635 -0.0553311331,0.751261038 0.165993399,0.974176179 L8.13920499,9.00268191 L8.13911129,9.00268191 Z\"\n fill={color}\n />\n </g>\n </svg>\n </button>\n );\n}\n\nexport default JoyrideTooltipCloseButton;\n","import * as React from 'react';\n\nimport { getText } from '~/modules/helpers';\n\nimport { TooltipRenderProps } from '~/types';\n\nimport CloseButton from './CloseButton';\n\nfunction JoyrideTooltipContainer(props: TooltipRenderProps) {\n const {\n backProps,\n closeProps,\n continuous,\n index,\n isLastStep,\n primaryProps,\n size,\n skipProps,\n step,\n tooltipProps,\n } = props;\n const {\n content,\n hideBackButton,\n hideCloseButton,\n hideFooter,\n locale,\n showProgress,\n showSkipButton,\n styles,\n title,\n } = step;\n const { back, close, last, next, skip } = locale;\n const output: Record<string, React.ReactNode> = {\n primary: close,\n };\n\n if (continuous) {\n output.primary = isLastStep ? last : next;\n\n if (showProgress) {\n output.primary = (\n <span>\n {output.primary} ({index + 1}/{size})\n </span>\n );\n }\n }\n\n if (output.primary) {\n output.primary = (\n <button\n data-test-id=\"button-primary\"\n style={styles.buttonNext}\n type=\"button\"\n {...primaryProps}\n >\n {output.primary}\n </button>\n );\n }\n\n if (showSkipButton && !isLastStep) {\n output.skip = (\n <button\n aria-live=\"off\"\n data-test-id=\"button-skip\"\n style={styles.buttonSkip}\n type=\"button\"\n {...skipProps}\n >\n {skip}\n </button>\n );\n }\n\n if (!hideBackButton && index > 0) {\n output.back = (\n <button data-test-id=\"button-back\" style={styles.buttonBack} type=\"button\" {...backProps}>\n {back}\n </button>\n );\n }\n\n output.close = !hideCloseButton && (\n <CloseButton data-test-id=\"button-close\" styles={styles.buttonClose} {...closeProps} />\n );\n\n return (\n <div\n key=\"JoyrideTooltip\"\n aria-label={getText(title) || getText(content)}\n className=\"react-joyride__tooltip\"\n style={styles.tooltip}\n {...tooltipProps}\n >\n <div style={styles.tooltipContainer}>\n {title && (\n <h1 aria-label={getText(title)} style={styles.tooltipTitle}>\n {title}\n </h1>\n )}\n <div style={styles.tooltipContent}>{content}</div>\n </div>\n {!hideFooter && (\n <div style={styles.tooltipFooter}>\n <div style={styles.tooltipFooterSpacer}>{output.skip}</div>\n {output.back}\n {output.primary}\n </div>\n )}\n {output.close}\n </div>\n );\n}\n\nexport default JoyrideTooltipContainer;\n","import * as React from 'react';\n\nimport { getText } from '~/modules/helpers';\n\nimport { TooltipProps } from '~/types';\n\nimport Container from './Container';\n\nexport default class JoyrideTooltip extends React.Component<TooltipProps> {\n handleClickBack = (event: React.MouseEvent<HTMLElement>) => {\n event.preventDefault();\n const { helpers } = this.props;\n\n helpers.prev();\n };\n\n handleClickClose = (event: React.MouseEvent<HTMLElement>) => {\n event.preventDefault();\n const { helpers } = this.props;\n\n helpers.close('button_close');\n };\n\n handleClickPrimary = (event: React.MouseEvent<HTMLElement>) => {\n event.preventDefault();\n const { continuous, helpers } = this.props;\n\n if (!continuous) {\n helpers.close('button_primary');\n\n return;\n }\n\n helpers.next();\n };\n\n handleClickSkip = (event: React.MouseEvent<HTMLElement>) => {\n event.preventDefault();\n const { helpers } = this.props;\n\n helpers.skip();\n };\n\n getElementsProps = () => {\n const { continuous, isLastStep, setTooltipRef, step } = this.props;\n\n const back = getText(step.locale.back);\n const close = getText(step.locale.close);\n const last = getText(step.locale.last);\n const next = getText(step.locale.next);\n const skip = getText(step.locale.skip);\n\n let primaryText = continuous ? next : close;\n\n if (isLastStep) {\n primaryText = last;\n }\n\n return {\n backProps: {\n 'aria-label': back,\n 'data-action': 'back',\n onClick: this.handleClickBack,\n role: 'button',\n title: back,\n },\n closeProps: {\n 'aria-label': close,\n 'data-action': 'close',\n onClick: this.handleClickClose,\n role: 'button',\n title: close,\n },\n primaryProps: {\n 'aria-label': primaryText,\n 'data-action': 'primary',\n onClick: this.handleClickPrimary,\n role: 'button',\n title: primaryText,\n },\n skipProps: {\n 'aria-label': skip,\n 'data-action': 'skip',\n onClick: this.handleClickSkip,\n role: 'button',\n title: skip,\n },\n tooltipProps: {\n 'aria-modal': true,\n ref: setTooltipRef,\n role: 'alertdialog',\n },\n };\n };\n\n render() {\n const { continuous, index, isLastStep, setTooltipRef, size, step } = this.props;\n const { beaconComponent, tooltipComponent, ...cleanStep } = step;\n let component;\n\n if (tooltipComponent) {\n const renderProps = {\n ...this.getElementsProps(),\n continuous,\n index,\n isLastStep,\n size,\n step: cleanStep,\n setTooltipRef,\n };\n\n const TooltipComponent = tooltipComponent;\n\n component = <TooltipComponent {...renderProps} />;\n } else {\n component = (\n <Container\n {...this.getElementsProps()}\n continuous={continuous}\n index={index}\n isLastStep={isLastStep}\n size={size}\n step={step}\n />\n );\n }\n\n return component;\n }\n}\n","import * as React from 'react';\nimport Floater, { Props as FloaterProps, RenderProps } from 'react-floater';\nimport is from 'is-lite';\nimport treeChanges from 'tree-changes';\n\nimport { getElement, isElementVisible } from '~/modules/dom';\nimport { hideBeacon, log } from '~/modules/helpers';\nimport Scope from '~/modules/scope';\nimport { validateStep } from '~/modules/step';\n\nimport { ACTIONS, EVENTS, LIFECYCLE, STATUS } from '~/literals';\n\nimport { StepProps } from '~/types';\n\nimport Beacon from './Beacon';\nimport Tooltip from './Tooltip/index';\n\nexport default class JoyrideStep extends React.Component<StepProps> {\n scope: Scope | null = null;\n tooltip: HTMLElement | null = null;\n\n componentDidMount() {\n const { debug, index } = this.props;\n\n log({\n title: `step:${index}`,\n data: [{ key: 'props', value: this.props }],\n debug,\n });\n }\n\n componentDidUpdate(previousProps: StepProps) {\n const {\n action,\n callback,\n continuous,\n controlled,\n debug,\n helpers,\n index,\n lifecycle,\n status,\n step,\n store,\n } = this.props;\n const { changed, changedFrom } = treeChanges(previousProps, this.props);\n const state = helpers.info();\n\n const skipBeacon =\n continuous && action !== ACTIONS.CLOSE && (index > 0 || action === ACTIONS.PREV);\n const hasStoreChanged =\n changed('action') || changed('index') || changed('lifecycle') || changed('status');\n const isInitial = changedFrom('lifecycle', [LIFECYCLE.TOOLTIP, LIFECYCLE.INIT], LIFECYCLE.INIT);\n const isAfterAction = changed('action', [\n ACTIONS.NEXT,\n ACTIONS.PREV,\n ACTIONS.SKIP,\n ACTIONS.CLOSE,\n ]);\n const isControlled = controlled && index === previousProps.index;\n\n if (isAfterAction && (isInitial || isControlled)) {\n callback({\n ...state,\n index: previousProps.index,\n lifecycle: LIFECYCLE.COMPLETE,\n step: previousProps.step,\n type: EVENTS.STEP_AFTER,\n });\n }\n\n if (\n step.placement === 'center' &&\n status === STATUS.RUNNING &&\n changed('index') &&\n action !== ACTIONS.START &&\n lifecycle === LIFECYCLE.INIT\n ) {\n store.update({ lifecycle: LIFECYCLE.READY });\n }\n\n if (hasStoreChanged) {\n const element = getElement(step.target);\n const elementExists = !!element;\n const hasRenderedTarget = elementExists && isElementVisible(element);\n\n if (hasRenderedTarget) {\n if (\n changedFrom('status', STATUS.READY, STATUS.RUNNING) ||\n changedFrom('lifecycle', LIFECYCLE.INIT, LIFECYCLE.READY)\n ) {\n callback({\n ...state,\n step,\n type: EVENTS.STEP_BEFORE,\n });\n }\n } else {\n // eslint-disable-next-line no-console\n console.warn(elementExists ? 'Target not visible' : 'Target not mounted', step);\n callback({\n ...state,\n type: EVENTS.TARGET_NOT_FOUND,\n step,\n });\n\n if (!controlled) {\n store.update({ index: index + (action === ACTIONS.PREV ? -1 : 1) });\n }\n }\n }\n\n if (changedFrom('lifecycle', LIFECYCLE.INIT, LIFECYCLE.READY)) {\n store.update({\n lifecycle: hideBeacon(step) || skipBeacon ? LIFECYCLE.TOOLTIP : LIFECYCLE.BEACON,\n });\n }\n\n if (changed('index')) {\n log({\n title: `step:${lifecycle}`,\n data: [{ key: 'props', value: this.props }],\n debug,\n });\n }\n\n if (changed('lifecycle', LIFECYCLE.BEACON)) {\n callback({\n ...state,\n step,\n type: EVENTS.BEACON,\n });\n }\n\n if (changed('lifecycle', LIFECYCLE.TOOLTIP)) {\n callback({\n ...state,\n step,\n type: EVENTS.TOOLTIP,\n });\n\n if (this.tooltip) {\n this.scope = new Scope(this.tooltip, { selector: '[data-action=primary]' });\n this.scope.setFocus();\n }\n }\n\n if (changedFrom('lifecycle', [LIFECYCLE.TOOLTIP, LIFECYCLE.INIT], LIFECYCLE.INIT)) {\n this.scope?.removeScope();\n store.cleanupPoppers();\n }\n }\n\n componentWillUnmount() {\n this.scope?.removeScope();\n }\n\n /**\n * Beacon click/hover event listener\n */\n handleClickHoverBeacon = (event: React.MouseEvent<HTMLElement>) => {\n const { step, store } = this.props;\n\n if (event.type === 'mouseenter' && step.event !== 'hover') {\n return;\n }\n\n store.update({ lifecycle: LIFECYCLE.TOOLTIP });\n };\n\n setTooltipRef = (element: HTMLElement) => {\n this.tooltip = element;\n };\n\n setPopper: FloaterProps['getPopper'] = (popper, type) => {\n const { action, lifecycle, step, store } = this.props;\n\n if (type === 'wrapper') {\n store.setPopper('beacon', popper);\n } else {\n store.setPopper('tooltip', popper);\n }\n\n if (store.getPopper('beacon') && store.getPopper('tooltip') && lifecycle === LIFECYCLE.INIT) {\n store.update({\n action,\n lifecycle: LIFECYCLE.READY,\n });\n }\n\n if (step.floaterProps?.getPopper) {\n step.floaterProps.getPopper(popper, type);\n }\n };\n\n get open() {\n const { lifecycle, step } = this.props;\n\n return hideBeacon(step) || lifecycle === LIFECYCLE.TOOLTIP;\n }\n\n renderTooltip = (renderProps: RenderProps) => {\n const { continuous, helpers, index, size, step } = this.props;\n\n return (\n <Tooltip\n continuous={continuous}\n helpers={helpers}\n index={index}\n isLastStep={index + 1 === size}\n setTooltipRef={this.setTooltipRef}\n size={size}\n step={step}\n {...renderProps}\n />\n );\n };\n\n render() {\n const { continuous, debug, index, nonce, shouldScroll, size, step } = this.props;\n const target = getElement(step.target);\n\n if (!validateStep(step) || !is.domElement(target)) {\n return null;\n }\n\n return (\n <div key={`JoyrideStep-${index}`} className=\"react-joyride__step\">\n <Floater\n {...step.floaterProps}\n component={this.renderTooltip}\n debug={debug}\n getPopper={this.setPopper}\n id={`react-joyride-step-${index}`}\n open={this.open}\n placement={step.placement}\n target={step.target}\n >\n <Beacon\n beaconComponent={step.beaconComponent}\n continuous={continuous}\n index={index}\n isLastStep={index + 1 === size}\n locale={step.locale}\n nonce={nonce}\n onClickOrHover={this.handleClickHoverBeacon}\n shouldFocus={shouldScroll}\n size={size}\n step={step}\n styles={step.styles}\n />\n </Floater>\n </div>\n );\n }\n}\n","import * as React from 'react';\nimport { ReactNode } from 'react';\nimport isEqual from '@gilbarbara/deep-equal';\nimport is from 'is-lite';\nimport treeChanges from 'tree-changes';\n\nimport {\n canUseDOM,\n getElement,\n getScrollParent,\n getScrollTo,\n hasCustomScrollParent,\n scrollTo,\n} from '~/modules/dom';\nimport { log, shouldScroll } from '~/modules/helpers';\nimport { getMergedStep, validateSteps } from '~/modules/step';\nimport createStore from '~/modules/store';\n\nimport { ACTIONS, EVENTS, LIFECYCLE, STATUS } from '~/literals';\n\nimport Overlay from '~/components/Overlay';\nimport Portal from '~/components/Portal';\n\nimport { defaultProps } from '~/defaults';\nimport { Actions, CallBackProps, Props, State, Status, StoreHelpers } from '~/types';\n\nimport Step from './Step';\n\nclass Joyride extends React.Component<Props, State> {\n private readonly helpers: StoreHelpers;\n private readonly store: ReturnType<typeof createStore>;\n\n static defaultProps = defaultProps;\n\n constructor(props: Props) {\n super(props);\n\n const { debug, getHelpers, run, stepIndex } = props;\n\n this.store = createStore({\n ...props,\n controlled: run && is.number(stepIndex),\n });\n this.helpers = this.store.getHelpers();\n\n const { addListener } = this.store;\n\n log({\n title: 'init',\n data: [\n { key: 'props', value: this.props },\n { key: 'state', value: this.state },\n ],\n debug,\n });\n\n // Sync the store to this component's state.\n addListener(this.syncState);\n\n if (getHelpers) {\n getHelpers(this.helpers);\n }\n\n this.state = this.store.getState();\n }\n\n componentDidMount() {\n if (!canUseDOM()) {\n return;\n }\n\n const { debug, disableCloseOnEsc, run, steps } = this.props;\n const { start } = this.store;\n\n if (validateSteps(steps, debug) && run) {\n start();\n }\n\n if (!disableCloseOnEsc) {\n document.body.addEventListener('keydown', this.handleKeyboard, { passive: true });\n }\n }\n\n componentDidUpdate(previousProps: Props, previousState: State) {\n if (!canUseDOM()) {\n return;\n }\n\n const { action, controlled, index, lifecycle, status } = this.state;\n const { debug, run, stepIndex, steps } = this.props;\n const { stepIndex: previousStepIndex, steps: previousSteps } = previousProps;\n const { reset, setSteps, start, stop, update } = this.store;\n const { changed: changedProps } = treeChanges(previousProps, this.props);\n const { changed, changedFrom } = treeChanges(previousState, this.state);\n const step = getMergedStep(this.props, steps[index]);\n\n const stepsChanged = !isEqual(previousSteps, steps);\n const stepIndexChanged = is.number(stepIndex) && changedProps('stepIndex');\n const target = getElement(step.target);\n\n if (stepsChanged) {\n if (validateSteps(steps, debug)) {\n setSteps(steps);\n } else {\n // eslint-disable-next-line no-console\n console.warn('Steps are not valid', steps);\n }\n }\n\n if (changedProps('run')) {\n if (run) {\n start(stepIndex);\n } else {\n stop();\n }\n }\n\n if (stepIndexChanged) {\n let nextAction: Actions =\n is.number(previousStepIndex) && previousStepIndex < stepIndex ? ACTIONS.NEXT : ACTIONS.PREV;\n\n if (action === ACTIONS.STOP) {\n nextAction = ACTIONS.START;\n }\n\n if (!([STATUS.FINISHED, STATUS.SKIPPED] as Array<Status>).includes(status)) {\n update({\n action: action === ACTIONS.CLOSE ? ACTIONS.CLOSE : nextAction,\n index: stepIndex,\n lifecycle: LIFECYCLE.INIT,\n });\n }\n }\n\n // Update the index if the first step is not found\n if (!controlled && status === STATUS.RUNNING && index === 0 && !target) {\n this.store.update({ index: index + 1 });\n this.callback({\n ...this.state,\n type: EVENTS.TARGET_NOT_FOUND,\n step,\n });\n }\n\n const callbackData = {\n ...this.state,\n index,\n step,\n };\n const isAfterAction = changed('action', [\n ACTIONS.NEXT,\n ACTIONS.PREV,\n ACTIONS.SKIP,\n ACTIONS.CLOSE,\n ]);\n\n if (isAfterAction && changed('status', STATUS.PAUSED)) {\n const previousStep = getMergedStep(this.props, steps[previousState.index]);\n\n this.callback({\n ...callbackData,\n index: previousState.index,\n lifecycle: LIFECYCLE.COMPLETE,\n step: previousStep,\n type: EVENTS.STEP_AFTER,\n });\n }\n\n if (changed('status', [STATUS.FINISHED, STATUS.SKIPPED])) {\n const previousStep = getMergedStep(this.props, steps[previousState.index]);\n\n if (!controlled) {\n this.callback({\n ...callbackData,\n index: previousState.index,\n lifecycle: LIFECYCLE.COMPLETE,\n step: previousStep,\n type: EVENTS.STEP_AFTER,\n });\n }\n\n this.callback({\n ...callbackData,\n type: EVENTS.TOUR_END,\n // Return the last step when the tour is finished\n step: previousStep,\n index: previousState.index,\n });\n reset();\n } else if (changedFrom('status', [STATUS.IDLE, STATUS.READY], STATUS.RUNNING)) {\n this.callback({\n ...callbackData,\n type: EVENTS.TOUR_START,\n });\n } else if (changed('status') || changed('action', ACTIONS.RESET)) {\n this.callback({\n ...callbackData,\n type: EVENTS.TOUR_STATUS,\n });\n }\n\n this.scrollToStep(previousState);\n\n if (step.placement === 'center' && status === STATUS.RUNNING && lifecycle === LIFECYCLE.INIT) {\n this.store.update({ lifecycle: LIFECYCLE.READY });\n }\n }\n\n componentWillUnmount() {\n const { disableCloseOnEsc } = this.props;\n\n if (!disableCloseOnEsc) {\n document.body.removeEventListener('keydown', this.handleKeyboard);\n }\n }\n\n /**\n * Trigger the callback.\n */\n callback = (data: CallBackProps) => {\n const { callback } = this.props;\n\n if (is.function(callback)) {\n callback(data);\n }\n };\n\n /**\n * Keydown event listener\n */\n handleKeyboard = (event: KeyboardEvent) => {\n const { index, lifecycle } = this.state;\n const { steps } = this.props;\n const step = steps[index];\n\n if (lifecycle === LIFECYCLE.TOOLTIP) {\n if (event.code === 'Escape' && step && !step.disableCloseOnEsc) {\n this.store.close('keyboard');\n }\n }\n };\n\n handleClickOverlay = () => {\n const { index } = this.state;\n const { steps } = this.props;\n\n const step = getMergedStep(this.props, steps[index]);\n\n if (!step.disableOverlayClose) {\n this.helpers.close('overlay');\n }\n };\n\n /**\n * Sync the store with the component's state\n */\n syncState = (state: State) => {\n this.setState(state);\n };\n\n scrollToStep(previousState: State) {\n const { index, lifecycle, status } = this.state;\n const {\n debug,\n disableScrollParentFix = false,\n scrollDuration,\n scrollOffset = 20,\n scrollToFirstStep = false,\n steps,\n } = this.props;\n const step = getMergedStep(this.props, steps[index]);\n\n const target = getElement(step.target);\n const shouldScrollToStep = shouldScroll({\n isFirstStep: index === 0,\n lifecycle,\n previousLifecycle: previousState.lifecycle,\n scrollToFirstStep,\n step,\n target,\n });\n\n if (status === STATUS.RUNNING && shouldScrollToStep) {\n const hasCustomScroll = hasCustomScrollParent(target, disableScrollParentFix);\n const scrollParent = getScrollParent(target, disableScrollParentFix);\n let scrollY = Math.floor(getScrollTo(target, scrollOffset, disableScrollParentFix)) || 0;\n\n log({\n title: 'scrollToStep',\n data: [\n { key: 'index', value: index },\n { key: 'lifecycle', value: lifecycle },\n { key: 'status', value: status },\n ],\n debug,\n });\n\n const beaconPopper = this.store.getPopper('beacon');\n const tooltipPopper = this.store.getPopper('tooltip');\n\n if (lifecycle === LIFECYCLE.BEACON && beaconPopper) {\n const { offsets, placement } = beaconPopper;\n\n if (!['bottom'].includes(placement) && !hasCustomScroll) {\n scrollY = Math.floor(offsets.popper.top - scrollOffset);\n }\n } else if (lifecycle === LIFECYCLE.TOOLTIP && tooltipPopper) {\n const { flipped, offsets, placement } = tooltipPopper;\n\n if (['top', 'right', 'left'].includes(placement) && !flipped && !hasCustomScroll) {\n scrollY = Math.floor(offsets.popper.top - scrollOffset);\n } else {\n scrollY -= step.spotlightPadding;\n }\n }\n\n scrollY = scrollY >= 0 ? scrollY : 0;\n\n if (status === STATUS.RUNNING) {\n scrollTo(scrollY, { element: scrollParent as Element, duration: scrollDuration }).then(\n () => {\n setTimeout(() => {\n this.store.getPopper('tooltip')?.instance.update();\n }, 10);\n },\n );\n }\n }\n }\n\n render() {\n if (!canUseDOM()) {\n return null;\n }\n\n const { index, lifecycle, status } = this.state;\n const {\n continuous = false,\n debug = false,\n nonce,\n scrollToFirstStep = false,\n steps,\n } = this.props;\n const isRunning = status === STATUS.RUNNING;\n const content: Record<string, ReactNode> = {};\n\n if (isRunning && steps[index]) {\n const step = getMergedStep(this.props, steps[index]);\n\n content.step = (\n <Step\n {...this.state}\n callback={this.callback}\n continuous={continuous}\n debug={debug}\n helpers={this.helpers}\n nonce={nonce}\n shouldScroll={!step.disableScrolling && (index !== 0 || scrollToFirstStep)}\n step={step}\n store={this.store}\n />\n );\n\n content.overlay = (\n <Portal id=\"react-joyride-portal\">\n <Overlay\n {...step}\n continuous={continuous}\n debug={debug}\n lifecycle={lifecycle}\n onClickOverlay={this.handleClickOverlay}\n />\n </Portal>\n );\n }\n\n return (\n <div className=\"react-joyride\">\n {content.step}\n {content.overlay}\n </div>\n );\n }\n}\n\nexport default Joyride;\n","import React, { useState, useEffect } from 'react';\nimport Joyride, { ACTIONS, EVENTS, STATUS } from 'react-joyride';\n\nconst Tutorial = ({skipTutorial}) => {\n const [run, setRun] = useState(false);\n const [steps, setSteps] = useState([]);\n\n useEffect(() => {\n // Simula una carga asÃncrona de componentes\n setTimeout(() => {\n setSteps([\n {\n content: (\n <div>\n Asegurate de estar en el modo ESTUDIO.\n <br />\n\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: false,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.mode-switch',\n title: '¿COMO REGISTRO MIS MANOS?',\n\n }, // INICIO\n {\n content: (\n <div>\n <u><b>Haz click en cualquier posición</b></u> para definir los asientos de los jugardores.\n <br /><br />\n <b>Tips:</b> Para cambiar las posiciones primero haz click sobre una de las ya seleccionadas.\n <br /><br />\n <b>Importante:</b> Al cambiar las posiciones, las acciones en cada calle se borrarán.\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.poker-table-container',\n title: 'Selección de posisciones',\n },// SELECCION POSICIONES\n {\n content: (\n <div>\n <u><b>Define el Stake</b></u> al que corresponde la mano que quieres registrar.\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.Stake',\n title: 'Selección de Stake o Nivel',\n }, //SELECCION STAKE\n {\n content: (\n <div>\n <u><b>Define el Spot</b></u> al que corresponde la mano que quieres registrar.\n <br /><br />\n <b>Importante:</b> Este campo es obligatorio!\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.Spot',\n title: 'Selección de Spot o secuencia',\n },//SELECCION SPOT\n {\n content: (\n <div>\n Aquà puedes <u><b>agregar información adicional</b></u> que quieras registrar sobre la mano.\n <br /><br />\n <b>Por ejemplo:</b>\n <br /><br />\n Tipo de jugador, stats, sala o nick del jugador que estoy analizando.\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.Description',\n title: 'Información adicional de la mano',\n },//DESCRIPCION\n {\n content: (\n <div>\n <u><b>Selecciona la mano</b></u> de Hero, define las acciones de ambos jugadores y deja las notas de tu coach o las tuyas registradas.\n <br /><br />\n <b>Tips:</b>\n <br /><br />\n Haz click derecho sobre una carta para limpiarla.\n <br /><br />\n Pide una sugerencia de Notas a nuestro Asistente virtual. (Experimental)\n <br /><br />\n La matriz de rango puede cambiar de color haciendo varios clicks en la misma celda.\n <br /><br />\n Para pintar una zona de la matriz, simplemente deja apretado el botón derecho del ratón.\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.street-Preflop',\n title: 'Agregar información de la calle Preflop',\n },//CONFIGURACION PREFLOP\n\n {\n content: (\n <div>\n <u><b>Repite el proceso</b></u> para la calle del flop.\n\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.street-Flop',\n title: 'Agregar información de la calle Flop',\n },//SELECCION ACCIONES FLOP\n {\n content: (\n <div>\n <u><b>Repite el proceso</b></u> para la calle del turn.\n\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.street-Turn',\n title: 'Agregar información de la calle Turn',\n },//SELECCION ACCIONES TURN\n {\n content: (\n <div>\n <u><b>Repite el proceso</b></u> para la calle del river.\n\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.street-River',\n title: 'Agregar información de la calle River',\n },//SELECCION ACCIONES RIVER\n {\n content: (\n <div>\n <u><b></b></u> de Hero y villano.\n\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.save-button',\n title: 'Guardar la inforamción',\n },//GUARDAR MIS MANOS\n {\n content: (\n <div>\n <u><b>Haz click en el cuadro de busqueda</b></u> para obtener el listado de tus manos guardadas.\n <br /><br />\n Tip:\n <br /><br />\n Ingresa un spot o alguna palabra clave que exista en la descripción de las manos guardadas.\n </div>\n ),\n disableBeacon: true,\n disableOverlayClose: true,\n hideCloseButton: true,\n hideFooter: false,\n placement: 'right',\n spotlightClicks: true,\n styles: {\n options: {\n zIndex: 10000,\n },\n },\n target: '.search-box',\n title: 'Buscar mis manos guardadas',\n },//BUSCAR MIS MANOS\n\n ]);\n setRun(true); // Inicia el recorrido después de que los pasos estén listos\n }, 300); // Ajusta el tiempo según tu necesidad\n }, []);\n\n const handleJoyrideCallback = (data) => {\n const { status, action } = data;\n if ([STATUS.FINISHED, STATUS.SKIPPED].includes(status)) {\n setRun(false);\n } else if (action === ACTIONS.CLOSE) {\n setRun(false);\n }\n };\n\n if (skipTutorial==='false'){\n //console.log('Tutorial:',skipTutorial);\n return (\n <div>\n <Joyride\n steps={steps}\n continuous\n scrollToFirstStep\n showProgress\n showSkipButton\n run={run}\n callback={handleJoyrideCallback}\n />\n </div>\n );\n }\n};\n\nexport default Tutorial;\n","// Modificado en App.js\nimport React, { useEffect, useState } from 'react';\nimport Sidebar from './components/Sidebar/Sidebar';\nimport { Login } from './components/Login/Login';\nimport MainContent from './components/MainContent/MainContent';\nimport Topbar from './components/Topbar/Topbar'; // Asegúrate de importar correctamente\nimport PokerTrainer from './components/PokerTrainer/PokerTrainer';\nimport PokerStats from './components/PokerStats/PokerStats';\nimport PokerRanges from './components/PokerRanges/PokerRanges';\nimport PokerDeals from './components/PokerDeals/PokerDeals';\nimport './App.css';\nimport \"@aws-amplify/ui-react/styles.css\";\nimport { useAuthenticator, Image } from '@aws-amplify/ui-react';\nimport { generateClient } from \"aws-amplify/api\";\nimport { listMembers, getMembers, listHands as listHandsQuery } from \"./graphql/queries\";\nimport { createMembers, updateMembers } from \"./graphql/mutations\";\nimport {addMonths, format, isBefore, parseISO} from \"date-fns\";\nimport Tutorial from './components/About/Tutorial';\nimport logo2 from './assets/logoPSA_soloPica.png';\n\nconst client = generateClient();\n\nfunction App() {\n const { signOut, user } = useAuthenticator();\n const [mode, setMode] = useState('Estudio'); // State for mode\n const [sequence, setSequence] = useState('');\n const [handTitle, setHandTitle] = useState(''); // State for handTitle\n const [hasMembership, setHasMembership] = useState(false); // State for membership status\n const [endDateMembership, setEndDateMembership] = useState('');\n const [loading, setLoading] = useState(true); // State for loading\n const [membership, setMembership] = useState('');\n const [stake, setStake] = useState('');\n const [skipTutorial, setSkipTutorial] = useState('false');\n\n useEffect(() => {\n const fetchMembership = async (playerId) => {\n try {\n const result = await client.graphql({\n query: getMembers,\n variables: { id: playerId }\n });\n\n const userMembership = result.data.getMembers;\n if (userMembership) {\n\n setHasMembership(true);\n setEndDateMembership(userMembership.endDate);\n setMembership(userMembership.memberPlan);\n setSkipTutorial(userMembership.skipTutorial);\n } else {\n const createBasicMembership = async (playerId) => {\n\n const endDate = format(addMonths(new Date(), 1), \"yyyy-MM-dd\") + \"Z\";\n\n const newMembers = await client.graphql({\n query: createMembers,\n variables: {\n input: {\n \"id\": playerId,\n \"playerId\": playerId,\n \"memberPlan\": \"PREMIUM\",\n \"endDate\": endDate,\n \"skipTutorial\":\"false\"\n }\n }\n });\n };\n\n createBasicMembership(user.username);\n setMembership('BASIC');\n }\n\n\n\n } catch (error) {\n console.error('Error fetching membership:', error);\n setLoading(false);\n }\n };\n\n if (user) {\n fetchMembership(user.username);\n //console.log('App:', skipTutorial);\n } else {\n setLoading(false);\n }\n }, [user]);\n\n useEffect(() => {\n if (membership !== '') {\n setLoading(false);\n\n const endDateParsed = parseISO(endDateMembership);\n\n // Obtener la fecha actual\n const today = new Date();\n\n // Comparar las fechas\n if (isBefore(endDateParsed, today)) {\n try {\n const updateMembership = async (playerId) => {\n const newMembers = await client.graphql({\n query: updateMembers,\n variables: {\n input: {\n \"id\": playerId,\n \"playerId\": playerId,\n \"memberPlan\": \"BASIC\",\n \"endDate\": \"9999-01-01z\"\n }\n }\n });\n };\n\n updateMembership(user.username);\n } catch {\n console.log('Error updating');\n }\n } //else {\n // console.log(\"endDate es mayor o igual que hoy\");\n //}\n }\n }, [membership]);\n\n if (loading) {\n return (\n <div className=\"loading-container\">\n <Image\n height=\"50px\"\n alt=\"Poker Study App Logo\"\n src={logo2}\n />\n <div className=\"spinner\"></div>\n <p className=\"loading-text\">Loading...</p>\n </div>\n );\n }\n\n if (!user) {\n return <Login />;\n }\n\n if (membership !== '') {\n\n return (\n <div className=\"App\">\n <Topbar mode={mode} />\n <div className=\"content\">\n\n {(() => {\n switch (mode) {\n case 'Estudio':\n return <MainContent membership={membership} />;\n case 'Trainer':\n return <PokerTrainer sequence={sequence} stake={stake} membership={membership} />;\n case 'Estadisticas':\n return <PokerStats />;\n case 'Rangos':\n return <PokerRanges />;\n case 'Deals':\n return <PokerDeals />;\n\n default:\n return null;\n }\n })()}\n <Sidebar\n mode={mode}\n setMode={setMode}\n sequence={sequence}\n setSequence={setSequence}\n membership={membership}\n stake={stake}\n setStake={setStake}\n skipTutorialMember={skipTutorial}\n />\n </div>\n <Tutorial skipTutorial={skipTutorial}/>\n </div>\n );\n }\n}\n\nexport default App;\n","/* eslint-disable */\n// WARNING: DO NOT EDIT. This file is automatically generated by AWS Amplify. It will be overwritten.\n\nconst awsmobile = {\n \"aws_project_region\": \"us-east-1\",\n \"aws_appsync_graphqlEndpoint\": \"https://d6p2ytz6hjau7pc2pvxdbw67u4.appsync-api.us-east-1.amazonaws.com/graphql\",\n \"aws_appsync_region\": \"us-east-1\",\n \"aws_appsync_authenticationType\": \"AMAZON_COGNITO_USER_POOLS\",\n \"aws_cognito_identity_pool_id\": \"us-east-1:146604eb-8cf4-4cac-8fab-a81e06ae900a\",\n \"aws_cognito_region\": \"us-east-1\",\n \"aws_user_pools_id\": \"us-east-1_JgmAxQtPH\",\n \"aws_user_pools_web_client_id\": \"5d828on25aqa0oc1u40r4ksfv9\",\n \"oauth\": {},\n \"aws_cognito_username_attributes\": [\n \"EMAIL\"\n ],\n \"aws_cognito_social_providers\": [],\n \"aws_cognito_signup_attributes\": [\n \"EMAIL\"\n ],\n \"aws_cognito_mfa_configuration\": \"OFF\",\n \"aws_cognito_mfa_types\": [\n \"SMS\"\n ],\n \"aws_cognito_password_protection_settings\": {\n \"passwordPolicyMinLength\": 8,\n \"passwordPolicyCharacters\": []\n },\n \"aws_cognito_verification_mechanisms\": [\n \"EMAIL\"\n ]\n};\n\n\nexport default awsmobile;\n","import { PokerHandProvider } from './components/PokerHandContext/PokerHandContext';\nimport { Authenticator } from \"@aws-amplify/ui-react\";\nimport './index.css';\nimport { StrictMode } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport App from \"./App\";\nimport { Amplify } from 'aws-amplify';\nimport awsExports from './aws-exports';\n\nAmplify.configure(awsExports);\n\n// Asegúrate de que el elemento root exista en tu archivo index.html\nconst rootElement = document.getElementById('root');\nif (!rootElement) throw new Error('Failed to find the root element');\n\n\nReactDOM.render(\n <StrictMode>\n\n <Authenticator.Provider>\n <PokerHandProvider>\n <App />\n </PokerHandProvider>\n </Authenticator.Provider>\n\n </StrictMode>,\n rootElement\n);\n"],"names":["lowerCase","str","toLowerCase","DEFAULT_SPLIT_REGEXP","DEFAULT_STRIP_REGEXP","noCase","input","options","_a","splitRegexp","_b","stripRegexp","_c","transform","_d","delimiter","result","replace","start","end","length","charAt","slice","split","map","join","re","value","RegExp","reduce","pascalCaseTransform","index","firstChar","lowerChars","substr","toUpperCase","pascalCaseTransformMerge","pascalCase","__assign","camelCaseTransform","camelCaseTransformMerge","camelCase","upperCaseFirst","capitalCaseTransform","capitalCase","upperCase","constantCase","dotCase","headerCase","paramCase","pathCase","sentenceCaseTransform","sentenceCase","snakeCase","isMergeableObject","isNonNullObject","stringValue","Object","prototype","toString","call","$$typeof","REACT_ELEMENT_TYPE","isReactElement","isSpecial","Symbol","for","cloneUnlessOtherwiseSpecified","clone","deepmerge","val","Array","isArray","defaultArrayMerge","target","source","concat","element","getKeys","keys","getOwnPropertySymbols","filter","symbol","propertyIsEnumerable","getEnumerableOwnPropertySymbols","propertyIsOnObject","object","property","_","mergeObject","destination","forEach","key","hasOwnProperty","propertyIsUnsafe","customMerge","getMergeFunction","arrayMerge","sourceIsArray","all","array","Error","prev","next","deepmerge_1","module","exports","dijkstra","single_source_shortest_paths","graph","s","d","predecessors","costs","closest","u","v","cost_of_s_to_u","adjacent_nodes","cost_of_s_to_u_plus_cost_of_e","cost_of_s_to_v","open","PriorityQueue","make","push","empty","pop","cost","msg","extract_shortest_path_from_predecessor_list","nodes","reverse","find_path","opts","T","t","queue","sorter","default_sorter","a","b","item","this","sort","shift","size","point","charCodeAt","second","Uint8Array","buffer","QueryHandler","require","each","MediaQuery","query","isUnconditional","handlers","mql","window","matchMedia","self","listener","currentTarget","assess","addListener","constuctor","addHandler","handler","qh","matches","on","removeHandler","h","i","equals","destroy","splice","clear","removeListener","action","Util","isFunction","MediaQueryDispatch","queries","browserIsIncapable","constructor","register","q","shouldDegrade","match","unregister","deferSetup","setup","initialised","off","unmatch","apply","collection","fn","canUseDOM","document","createElement","ExecutionEnvironment","canUseWorkers","Worker","canUseEventListeners","addEventListener","attachEvent","canUseViewport","screen","define","camel2hyphen","obj2mq","obj","mq","features","feature","test","isDimension","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","global","freeSelf","root","Function","objectToString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","type","toNumber","isObjectLike","isSymbol","other","valueOf","isBinary","func","wait","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","setTimeout","remainingWait","debounced","isInvoking","arguments","leadingEdge","cancel","clearTimeout","flush","DataView","getNative","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","entries","entry","set","get","has","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","ListCache","Map","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","MapCache","Promise","Set","setCacheAdd","setCacheHas","SetCache","values","__data__","add","stackClear","stackDelete","stackGet","stackHas","stackSet","Stack","data","WeakMap","predicate","resIndex","baseTimes","isArguments","isBuffer","isIndex","isTypedArray","inherited","isArr","isArg","isBuff","isType","skipIndexes","String","iteratee","offset","accumulator","initAccum","reAsciiWord","string","baseAssignValue","eq","objValue","defineProperty","objectCreate","create","baseCreate","proto","baseFor","createBaseFor","castPath","toKey","path","arrayPush","keysFunc","symbolsFunc","getRawTag","symToStringTag","toStringTag","baseGetTag","baseIsEqualDeep","baseIsEqual","bitmask","customizer","stack","equalArrays","equalByTag","equalObjects","getTag","argsTag","arrayTag","objectTag","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","matchData","noCustomizer","srcValue","COMPARE_PARTIAL_FLAG","isMasked","toSource","reIsHostCtor","funcProto","objectProto","funcToString","reIsNative","isLength","typedArrayTags","baseMatches","baseMatchesProperty","identity","isPrototype","nativeKeys","nativeKeysIn","isProto","baseIsMatch","getMatchData","matchesStrictComparable","hasIn","isKey","isStrictComparable","assignMergeValue","baseMergeDeep","keysIn","safeGet","baseMerge","srcIndex","newValue","cloneBuffer","cloneTypedArray","copyArray","initCloneObject","isArrayLikeObject","isPlainObject","toPlainObject","mergeFunc","stacked","isCommon","isTyped","baseGet","baseSet","paths","overRest","setToString","assignValue","lastIndex","nested","constant","baseSetToString","n","arrayMap","symbolProto","symbolToString","baseToString","cache","stringToPath","arrayBuffer","byteLength","freeExports","nodeType","freeModule","Buffer","allocUnsafe","isDeep","copy","cloneArrayBuffer","typedArray","byteOffset","props","isNew","coreJsData","baseRest","isIterateeCall","assigner","sources","guard","fromRight","iterable","arrayReduce","deburr","words","reApos","callback","deburrLetter","basePropertyOf","e","arraySome","cacheHas","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","symbolValueOf","tag","name","message","convert","getAllKeys","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","baseGetAllKeys","getSymbols","getSymbolsIn","isKeyable","baseIsNative","getValue","getPrototype","overArg","getPrototypeOf","nativeObjectToString","isOwn","unmasked","arrayFilter","stubArray","nativeGetSymbols","mapTag","promiseTag","setTag","weakMapTag","dataViewTag","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","ArrayBuffer","resolve","Ctor","ctorString","hasFunc","reHasUnicodeWord","nativeCreate","reIsUint","isArrayLike","reIsDeepProp","reIsPlainProp","maskSrcKey","uid","exec","IE_PROTO","assocIndexOf","getMapData","memoize","freeProcess","process","nodeUtil","types","binding","arg","otherArgs","shortOut","nativeNow","count","lastCalled","stamp","remaining","pairs","LARGE_ARRAY_SIZE","memoizeCapped","rePropName","reEscapeChar","number","quote","subString","rsAstralRange","rsDingbatRange","rsLowerRange","rsUpperRange","rsBreakRange","rsMathOpRange","rsBreak","rsDigits","rsDingbat","rsLower","rsMisc","rsRegional","rsSurrPair","rsUpper","rsMiscLower","rsMiscUpper","rsOptContrLower","rsOptContrUpper","reOptMod","rsModifier","rsOptVar","rsSeq","rsEmoji","reUnicodeWord","reLatin","reComboMark","defaultValue","baseHasIn","hasPath","baseIsArguments","stubFalse","objectCtorString","baseIsTypedArray","baseUnary","nodeIsTypedArray","kebabCase","createCompounder","word","arrayLikeKeys","baseKeys","baseKeysIn","resolver","memoized","Cache","merge","createAssigner","baseIteratee","basePickBy","getAllKeysIn","prop","baseProperty","basePropertyDeep","copyObject","asciiWords","hasUnicodeWord","unicodeWords","pattern","flushes","products","ranks","suits","unique5","sanitize","evalHand","evalRank","PokerHand","hand","score","rank","describe","getScore","getRank","update","compareWith","cardInt","card","order","prime","cards","m","mid","low","high","findIt","isValidCard","trim","handAsArray","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","propName","componentName","location","propFullName","secret","err","getShim","isRequired","ReactPropTypes","bigint","bool","any","arrayOf","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","canPromise","QRCode","CanvasRenderer","SvgRenderer","renderCanvas","renderFunc","canvas","text","cb","argsNum","isLastArgCb","getContext","reject","toCanvas","bind","render","toDataURL","renderToDataURL","then","getSymbolSize","getRowColCoords","version","posCount","floor","intervals","ceil","positions","getPositions","coords","pos","posLength","j","Mode","ALPHA_NUM_CHARS","AlphanumericData","mode","ALPHANUMERIC","getBitsLength","getLength","write","bitBuffer","indexOf","put","BitBuffer","bufIndex","num","putBit","getLengthInBits","bit","BitMatrix","reservedBit","row","col","reserved","xor","isReserved","encodeUtf8","ByteData","BYTE","l","ECLevel","EC_BLOCKS_TABLE","EC_CODEWORDS_TABLE","getBlocksCount","errorCorrectionLevel","L","M","Q","H","getTotalCodewordsCount","isValid","level","from","fromString","Utils","G15_BCH","getBCHDigit","getEncodedBits","mask","EXP_TABLE","LOG_TABLE","x","log","exp","mul","y","KanjiData","KANJI","toSJIS","Patterns","PATTERN000","PATTERN001","PATTERN010","PATTERN011","PATTERN100","PATTERN101","PATTERN110","PATTERN111","PenaltyScores","getMaskAt","maskPattern","isNaN","getPenaltyN1","points","sameCountCol","sameCountRow","lastCol","lastRow","getPenaltyN2","last","getPenaltyN3","bitsCol","bitsRow","getPenaltyN4","darkCount","modulesCount","abs","applyMask","getBestMask","setupFormatFunc","numPatterns","bestPattern","lowerPenalty","Infinity","p","penalty","VersionCheck","Regex","NUMERIC","id","ccBits","MIXED","getCharCountIndicator","getBestModeForData","dataStr","testNumeric","testAlphanumeric","testKanji","NumericData","group","remainingNum","GF","p1","p2","coeff","mod","divident","divisor","generateECPolynomial","degree","poly","AlignmentPattern","FinderPattern","MaskPattern","ECCode","ReedSolomonEncoder","Version","FormatInfo","Segments","setupFormatInfo","matrix","bits","createData","segments","dataTotalCodewordsBits","getSymbolTotalCodewords","remainingByte","totalCodewords","ecTotalCodewords","dataTotalCodewords","ecTotalBlocks","blocksInGroup2","blocksInGroup1","totalCodewordsInGroup1","dataCodewordsInGroup1","dataCodewordsInGroup2","ecCount","rs","dcData","ecData","maxDataSize","dataSize","encode","r","createCodewords","createSymbol","fromArray","estimatedVersion","rawSegments","rawSplit","getBestVersionForData","bestVersion","dataBits","moduleCount","modules","c","setupFinderPattern","setupTimingPattern","setupAlignmentPattern","setupVersionInfo","inc","bitIndex","byteIndex","dark","setupData","toSJISFunc","setToSJISFunction","Polynomial","genPoly","initialize","paddedData","remainder","buff","numeric","kanji","byte","BYTE_KANJI","TEST_KANJI","TEST_NUMERIC","TEST_ALPHANUMERIC","getStringByteLength","unescape","encodeURIComponent","getSegments","regex","getSegmentsFromString","numSegs","alphaNumSegs","byteSegs","kanjiSegs","isKanjiModeEnabled","s1","s2","getSegmentBitsLength","buildSingleSegment","modesHint","bestMode","acc","seg","segs","buildNodes","table","prevNodeIds","nodeGroup","currentNodeIds","lastCount","prevNodeId","buildGraph","optimizedSegs","curr","prevSeg","mergeSegments","toSJISFunction","CODEWORDS_COUNT","digit","f","G18_BCH","getReservedBitsCount","getTotalBitsFromDataArray","totalBits","reservedBits","getCapacity","usableBits","ecl","currentVersion","getBestVersionForMixedData","getBestVersionForDataLength","qrData","canvasEl","getCanvasElement","getOptions","getImageWidth","ctx","image","createImageData","qrToImageData","clearRect","width","height","style","clearCanvas","putImageData","rendererOpts","quality","getColorAttrib","color","attrib","alpha","hex","toFixed","svgCmd","cmd","qrcodesize","margin","bg","light","moveBy","newRow","lineLength","qrToPath","viewBox","svgTag","hex2rgba","hexCode","hexValue","g","scale","getScale","qrSize","imgData","qr","symbolSize","scaledMargin","palette","posDst","pxColor","aa","ca","da","ea","fa","ha","ia","ja","ka","la","ma","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","z","ra","sa","ta","pa","qa","oa","removeAttribute","setAttribute","setAttributeNS","xlinkHref","ua","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","va","wa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","iterator","Ka","La","A","assign","Ma","Na","Oa","prepareStackTrace","Reflect","construct","k","displayName","includes","Pa","Qa","_context","_payload","_init","Ra","Sa","Ta","nodeName","Va","_valueTracker","getOwnPropertyDescriptor","configurable","enumerable","setValue","stopTracking","Ua","Wa","checked","Xa","activeElement","body","Ya","defaultChecked","_wrapperState","initialChecked","Za","initialValue","controlled","ab","bb","db","ownerDocument","eb","fb","selected","defaultSelected","disabled","gb","dangerouslySetInnerHTML","children","hb","ib","jb","textContent","kb","lb","mb","nb","namespaceURI","innerHTML","firstChild","removeChild","appendChild","MSApp","execUnsafeLocalFunction","ob","lastChild","nodeValue","pb","animationIterationCount","aspectRatio","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","qb","rb","sb","setProperty","substring","tb","menuitem","area","base","br","embed","hr","img","keygen","link","meta","param","track","wbr","ub","vb","is","wb","xb","srcElement","correspondingUseElement","parentNode","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","removeEventListener","Nb","onError","Ob","Pb","Qb","Rb","Sb","Tb","Vb","alternate","return","flags","Wb","memoizedState","dehydrated","Xb","Zb","child","sibling","current","Yb","$b","ac","unstable_scheduleCallback","bc","unstable_cancelCallback","cc","unstable_shouldYield","dc","unstable_requestPaint","B","unstable_now","ec","unstable_getCurrentPriorityLevel","fc","unstable_ImmediatePriority","gc","unstable_UserBlockingPriority","hc","unstable_NormalPriority","ic","unstable_LowPriority","jc","unstable_IdlePriority","kc","lc","oc","clz32","pc","qc","LN2","rc","sc","tc","uc","pendingLanes","suspendedLanes","pingedLanes","entangledLanes","entanglements","vc","xc","yc","zc","Ac","eventTimes","Cc","C","Dc","Ec","Fc","Gc","Hc","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Pc","Qc","Rc","Sc","delete","pointerId","Tc","nativeEvent","blockedOn","domEventName","eventSystemFlags","targetContainers","Vc","Wc","priority","isDehydrated","containerInfo","Xc","Yc","dispatchEvent","Zc","$c","ad","bd","cd","ReactCurrentBatchConfig","dd","ed","transition","fd","gd","hd","Uc","stopPropagation","jd","kd","ld","md","nd","od","keyCode","charCode","pd","qd","rd","_reactName","_targetInst","isDefaultPrevented","defaultPrevented","returnValue","isPropagationStopped","preventDefault","cancelBubble","persist","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","isTrusted","td","ud","view","detail","vd","Ad","screenX","screenY","clientX","clientY","pageX","pageY","ctrlKey","shiftKey","altKey","metaKey","getModifierState","zd","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","animationName","elapsedTime","pseudoElement","Id","clipboardData","Jd","Ld","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","Od","Alt","Control","Meta","Shift","Pd","Qd","fromCharCode","code","repeat","locale","which","Rd","Td","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Vd","touches","targetTouches","changedTouches","Xd","Yd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","Zd","$d","ae","be","documentMode","ce","de","ee","fe","ge","he","ie","le","date","datetime","email","month","password","range","search","tel","url","week","me","ne","oe","event","listeners","pe","qe","se","te","ue","ve","we","xe","ye","ze","oninput","Ae","detachEvent","Be","Ce","De","Ee","Fe","He","Ie","Je","Ke","nextSibling","Le","contains","compareDocumentPosition","Me","HTMLIFrameElement","contentWindow","href","Ne","contentEditable","Oe","focusedElem","selectionRange","documentElement","selectionStart","selectionEnd","defaultView","getSelection","extend","rangeCount","anchorNode","anchorOffset","focusNode","focusOffset","createRange","setStart","removeAllRanges","addRange","setEnd","left","scrollLeft","top","scrollTop","focus","Pe","Qe","Re","Se","Te","Ue","Ve","We","animationend","animationiteration","animationstart","transitionend","Xe","Ye","Ze","animation","$e","af","bf","cf","df","ef","ff","gf","hf","lf","mf","nf","Ub","instance","D","of","pf","qf","rf","random","sf","capture","passive","J","w","F","tf","uf","parentWindow","vf","wf","na","xa","$a","ba","je","char","ke","unshift","xf","yf","zf","Af","Bf","Cf","Df","Ef","__html","Ff","Gf","Hf","Jf","queueMicrotask","catch","If","Kf","Lf","Mf","previousSibling","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","E","G","Vf","Wf","Xf","Yf","contextTypes","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Zf","childContextTypes","$f","ag","getChildContext","cg","__reactInternalMemoizedMergedChildContext","dg","eg","fg","gg","hg","jg","kg","lg","mg","ng","og","pg","qg","rg","sg","tg","ug","vg","wg","xg","yg","I","zg","Ag","Bg","deletions","Cg","pendingProps","overflow","treeContext","retryLane","Dg","Eg","Fg","Gg","memoizedProps","Hg","Ig","Jg","Kg","Lg","ref","_owner","_stringRef","refs","Mg","Ng","Og","Pg","Qg","Rg","implementation","Sg","Tg","done","Ug","Vg","Wg","Xg","Yg","Zg","$g","ah","_currentValue","bh","childLanes","ch","dependencies","firstContext","lanes","dh","eh","context","memoizedValue","fh","gh","hh","interleaved","ih","jh","kh","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","lh","mh","eventTime","lane","payload","nh","K","oh","ph","rh","sh","th","uh","vh","wh","xh","yh","tagName","zh","Ah","Bh","Ch","revealOrder","Dh","Eh","_workInProgressVersionPrimary","Fh","ReactCurrentDispatcher","Gh","Hh","N","O","Ih","Jh","Kh","Lh","P","Mh","Nh","Oh","Ph","Qh","Rh","Sh","Th","baseQueue","Uh","Vh","Wh","lastRenderedReducer","hasEagerState","eagerState","lastRenderedState","dispatch","Xh","Yh","Zh","$h","ai","getSnapshot","bi","ci","di","lastEffect","stores","ei","fi","gi","hi","ii","deps","ji","ki","li","mi","ni","oi","pi","qi","ri","si","ti","ui","vi","wi","xi","yi","zi","Ai","R","Bi","readContext","useCallback","useContext","useEffect","useImperativeHandle","useInsertionEffect","useLayoutEffect","useMemo","useReducer","useRef","useState","useDebugValue","useDeferredValue","useTransition","useMutableSource","useSyncExternalStore","useId","unstable_isNewReconciler","identifierPrefix","Ci","defaultProps","Di","Ei","isMounted","_reactInternals","enqueueSetState","enqueueReplaceState","enqueueForceUpdate","Fi","shouldComponentUpdate","isPureReactComponent","Gi","contextType","state","updater","Hi","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","Ii","getDerivedStateFromProps","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","Ji","digest","Ki","Li","console","error","Mi","Ni","Oi","Pi","Qi","getDerivedStateFromError","componentDidCatch","Ri","componentStack","Si","pingCache","Ti","Ui","Vi","Wi","ReactCurrentOwner","Xi","Yi","Zi","$i","aj","compare","bj","cj","dj","baseLanes","cachePool","transitions","ej","fj","gj","hj","ij","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","jj","kj","pendingContext","lj","zj","Aj","Bj","Cj","mj","nj","oj","fallback","pj","qj","sj","dataset","dgst","tj","uj","_reactRetry","rj","subtreeFlags","vj","wj","isBackwards","rendering","renderingStartTime","tail","tailMode","xj","Dj","S","Ej","Fj","wasMultiple","multiple","suppressHydrationWarning","onClick","onclick","createElementNS","autoFocus","createTextNode","Gj","Hj","Ij","Jj","U","Kj","WeakSet","V","Lj","W","Mj","Nj","Pj","Qj","Rj","Sj","Tj","Uj","Vj","insertBefore","_reactRootContainer","Wj","X","Xj","Yj","Zj","onCommitFiberUnmount","componentWillUnmount","ak","bk","ck","dk","ek","isHidden","fk","gk","display","hk","ik","jk","kk","__reactInternalSnapshotBeforeUpdate","src","Vk","lk","mk","nk","ok","Y","Z","pk","qk","rk","sk","tk","uk","vk","wk","xk","yk","zk","Ak","Bk","Ck","Dk","callbackNode","expirationTimes","expiredLanes","wc","callbackPriority","ig","Ek","Fk","Gk","Hk","Ik","Jk","Kk","Lk","Mk","Nk","Ok","finishedWork","finishedLanes","Pk","timeoutHandle","Qk","Rk","Sk","Tk","Uk","mutableReadLanes","Bc","Oj","onCommitFiberRoot","mc","onRecoverableError","Wk","onPostCommitFiberRoot","Xk","Yk","$k","isReactComponent","pendingChildren","al","mutableSourceEagerHydrationData","bl","pendingSuspenseBoundaries","dl","el","fl","gl","hl","il","yj","Zk","kl","reportError","ll","_internalRoot","ml","nl","ol","pl","rl","ql","unmount","unstable_scheduleHydration","querySelectorAll","JSON","stringify","form","sl","usingClientEntryPoint","Events","tl","findFiberByHostInstance","bundleType","rendererPackageName","ul","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setErrorHandler","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","reconcilerVersion","__REACT_DEVTOOLS_GLOBAL_HOOK__","vl","isDisabled","supportsFiber","inject","createPortal","cl","createRoot","unstable_strictMode","findDOMNode","flushSync","hydrate","hydrateRoot","hydratedSources","_getVersion","_source","unmountComponentAtNode","unstable_batchedUpdates","unstable_renderSubtreeIntoContainer","checkDCE","reduceJsxToString","previous","innerText","jsx","hasProps","default","setState","nextProps","prevState","nextState","prevProps","__reactInternalSnapshotFlag","__reactInternalSnapshot","polyfill","Component","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","newApiName","maybeSnapshot","snapshot","__suppressDeprecationWarning","bodyOpenClassName","portalClassName","_extends","_createClass","defineProperties","descriptor","writable","Constructor","protoProps","staticProps","_react","_react2","_interopRequireDefault","_reactDom2","_propTypes2","_ModalPortal2","ariaAppHider","__esModule","newObj","_interopRequireWildcard","_safeHTMLElement","_safeHTMLElement2","_reactLifecyclesCompat","_possibleConstructorReturn","ReferenceError","isReact16","createHTMLElement","getCreatePortal","getParentElement","parentSelector","Modal","_Component","_ref","_temp","_this","_classCallCheck","_len","_key","__proto__","removePortal","parent","warn","portalRef","portal","renderPortal","defaultStyles","subClass","superClass","setPrototypeOf","_inherits","className","prevParent","nextParent","_props","isOpen","closesAt","closeTimeoutMS","beforeClose","closeWithTimeout","setElement","propTypes","content","overlay","htmlOpenClassName","afterOpen","overlayClassName","appElement","SafeHTMLCollection","SafeNodeList","onAfterOpen","onRequestClose","ariaHideApp","shouldFocusAfterRender","shouldCloseOnOverlayClick","shouldReturnFocusAfterClose","preventScroll","aria","role","contentLabel","shouldCloseOnEsc","overlayRef","contentRef","overlayElement","contentElement","contentEl","position","right","bottom","backgroundColor","border","background","WebkitOverflowScrolling","borderRadius","outline","padding","_typeof","focusManager","_scopeTab2","classList","_portalOpenInstances2","CLASS_NAMES","ariaHiddenInstances","ModalPortal","setOverlayRef","setContentRef","afterClose","_this$props","parentDocument","remove","getElementsByTagName","show","returnFocus","teardownScopedFocus","popWithoutFocus","onAfterClose","deregister","beforeOpen","closeTimer","setupScopedFocus","markForFocusLater","openAnimationFrame","requestAnimationFrame","overlayEl","close","closeWithoutTimeout","focusContent","contentHasFocus","handleKeyDown","isTabKey","isEscKey","requestClose","handleOverlayOnClick","shouldClose","ownerHandlesClose","handleContentOnMouseUp","handleOverlayOnMouseDown","handleContentOnClick","handleContentOnMouseDown","shouldBeClosed","buildClassName","additional","classNames","attributesFromObject","prefix","items","moveFromContentToOverlay","cancelAnimationFrame","hide","_props2","contentStyles","overlayStyles","overlayProps","onMouseDown","contentProps","tabIndex","onKeyDown","onMouseUp","modal","testId","resetState","globalElement","assertNodeList","useElement","validateElement","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","documentNotReadyOrSSRTesting","_warning","_warning2","nodeList","selector","HTMLCollection","NodeList","_arr","before","after","_i","instances","_arr2","_i2","check","_portalOpenInstances","subscribe","eventType","openInstances","cloneNode","parentElement","htmlElement","cls","htmlClassList","removeClass","_cls","docBodyClassList","at","classString","classListRef","poll","incrementReference","decrementReference","focusLaterElements","handleBlur","handleFocus","toFocus","modalElement","_tabbable","_tabbable2","needToFocus","portalOpenInstances","PortalOpenInstances","openInstance","emit","subscribers","subscriber","_exenv","EE","SafeHTMLElement","HTMLElement","tabbable","head","getActiveElement","checkSafari","navigator","userAgent","shadowRoot","findTabbableDescendants","descendants","finished","DISPLAY_NONE","DISPLAY_CONTENTS","tabbableNode","hidesContents","zeroSize","offsetWidth","offsetHeight","getComputedStyle","displayValue","getPropertyValue","scrollWidth","scrollHeight","isNotOverflowing","exception","focusable","isTabIndexNotNaN","rootNode","getRootNode","host","visible","getAttribute","isTabIndexNaN","_Modal","_Modal2","o","PrevArrow","NextArrow","_classnames","_innerSliderUtils","ownKeys","_objectSpread","_defineProperty","getOwnPropertyDescriptors","_toPropertyKey","_defineProperties","toPrimitive","Number","_toPrimitive","_setPrototypeOf","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","Super","_getPrototypeOf","NewTarget","_assertThisInitialized","Boolean","_React$PureComponent","_super","clickHandler","prevClasses","prevHandler","infinite","currentSlide","slideCount","slidesToShow","prevArrowProps","customProps","prevArrow","cloneElement","PureComponent","_React$PureComponent2","_super2","nextClasses","nextHandler","canGoNext","nextArrowProps","nextArrow","accessibility","adaptiveHeight","afterChange","appendDots","dots","arrows","autoplay","autoplaySpeed","beforeChange","centerMode","centerPadding","cssEase","customPaging","dotsClass","draggable","easing","edgeFriction","fade","focusOnSelect","initialSlide","lazyLoad","onEdge","onInit","onLazyLoadError","onReInit","pauseOnDotsHover","pauseOnFocus","pauseOnHover","responsive","rows","rtl","slide","slidesPerRow","slidesToScroll","speed","swipe","swipeEvent","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","waitForAnimate","asNavFor","Dots","spec","onMouseEnter","onMouseOver","onMouseLeave","dotCount","mouseEvents","_rightBound","rightBound","clamp","_leftBound","leftBound","dotOptions","_slider","animating","autoplaying","currentDirection","currentLeft","direction","dragging","edgeDragged","initialized","lazyLoadedList","listHeight","listWidth","scrolling","slideHeight","slideWidth","swipeLeft","swiped","swiping","touchObject","startX","startY","curX","curY","trackStyle","trackWidth","targetSlide","InnerSlider","_initialState","_lodash","_track","_dots","_arrows","_resizeObserverPolyfill","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","_React$Component","list","elem","querySelector","getHeight","slidesToLoad","getOnDemandLazySlides","onLazyLoad","listRef","trackRef","updateState","adaptHeight","autoPlay","lazyLoadTimer","setInterval","progressiveLazyLoad","ro","onWindowResized","callbackTimers","observe","onfocus","onSlideFocus","onblur","onSlideBlur","animationEndCallback","clearInterval","timer","autoplayTimer","disconnect","checkImagesLoad","setTrackStyle","didPropsChange","Children","changeSlide","pause","debouncedResize","resizeWindow","updatedState","initializedState","slideIndex","targetLeft","getTrackLeft","getTrackCSS","_trackWidth","_trackLeft","childrenWidths","preClones","getPreClones","postClones","getPostClones","_trackStyle","currentWidth","childrenCount","trackLeft","images","imagesCount","loadedCount","prevClickHandler","onload","onerror","_index","dontAnimate","_slideHandler","slideHandler","asNavForIndex","innerSlider","firstBatch","clickable","dir","keyHandler","ontouchmove","verticalSwiping","disableBodyScroll","swipeStart","swipeMove","swipeEnd","triggerSlideHandler","enableBodyScroll","nextIndex","playType","play","pauseType","trackProps","extractObject","onTrackOver","onTrackLeave","selectHandler","dotProps","onDotsLeave","onDotsOver","arrowProps","verticalHeightStyle","centerPaddingStyle","listStyle","listProps","onMouseMove","onTouchStart","onTouchMove","onTouchEnd","touchEnd","onTouchCancel","innerSliderProps","unslick","listRefHandler","Track","trackRefHandler","ssrState","ssrInit","_i3","_Object$keys","_innerSlider","_json2mq","_defaultProps","enquire","Slider","slickPrev","slickNext","slickGoTo","breakpoint","_responsiveMediaHandlers","_this2","breakpoints","breakpt","bQuery","minWidth","maxWidth","media","settings","newProps","_this3","resp","toArray","newChildren","newSlide","innerSliderRefHandler","filterSettings","getSlideClasses","slickActive","slickCenter","slickCloned","centerOffset","getKey","fallbackKey","renderSlides","slides","preCloneSlides","postCloneSlides","startIndex","lazyStartIndex","endIndex","lazyEndIndex","childOnClickOptions","childStyle","getSlideStyle","slideClass","slideClasses","preCloneNo","handleRef","checkSpecKeys","checkNavigable","validSettings","settingName","slidesOnRight","slidesOnLeft","siblingDirection","safePreventDefault","lazySlidesOnRight","lazySlidesOnLeft","getWidth","getTrackAnimateCSS","getTotalSlides","getSwipeDirection","getSlideCount","getRequiredLazySlides","getNavigableIndexes","lowerBound","upperBound","onDemandSlides","requiredSlides","xDist","yDist","swipeAngle","atan2","round","PI","canGo","newObject","listNode","trackNode","centerPaddingAdj","finalSlide","animationLeft","finalLeft","animationSlide","indexOffset","previousInt","slideOffset","previousTargetSlide","curLeft","swipeLength","sqrt","pow","verticalSwipeLength","positionOffset","swipeDirection","touchSwipeLength","onSwipe","minSwipe","activeSlide","counter","indexes","navigables","prevNavigable","swipedSlide","slickList","every","offsetTop","offsetLeft","currentIndex","keysArray","trackHeight","trackChildren","WebkitTransition","WebkitTransform","msTransform","marginTop","marginLeft","slidesToOffset","targetSlideIndex","trackElem","childNodes","_ref2","__self","__source","Fragment","jsxs","forceUpdate","escape","_status","_result","only","Profiler","StrictMode","Suspense","act","createContext","_currentValue2","_threadCount","Provider","Consumer","_defaultValue","_globalName","createFactory","createRef","forwardRef","isValidElement","lazy","memo","startTransition","unstable_act","MapShim","getIndex","arr","some","class_1","__entries__","isBrowser","global$1","requestAnimationFrame$1","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","delay","leadingCall","trailingCall","resolvePending","proxy","timeoutCallback","throttle","addObserver","observer","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","gatherActive","hasActive","broadcastActive","attributes","childList","characterData","subtree","getInstance","instance_","defineConfigurable","getWindowOf","emptyRect","createRectInit","toFloat","parseFloat","getBordersSize","styles","getHTMLElementContentRect","clientWidth","clientHeight","paddings","positions_1","getPaddings","horizPad","vertPad","boxSizing","isDocumentElement","vertScrollbar","horizScrollbar","isSVGGraphicsElement","SVGGraphicsElement","SVGElement","getBBox","getContentRect","bbox","getSVGContentRect","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","rect","broadcastRect","ResizeObserverEntry","rectInit","contentRect","Constr","DOMRectReadOnly","createReadOnlyRect","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","callback_","controller_","callbackCtx_","Element","observations","unobserve","clearActive","observation","ResizeObserver","method","sortIndex","performance","setImmediate","startTime","expirationTime","priorityLevel","scheduling","isInputPending","MessageChannel","port2","port1","onmessage","postMessage","unstable_Profiling","unstable_continueExecution","unstable_forceFrameRate","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_runWithPriority","unstable_wrapCallback","E_NOSCROLL","E_CANCELLED","ms","to","noop","ease","inOutSine","duration","cancelled","animate","timestamp","eased","cos","isScrolling","scrollParent","scrollingElement","objA","objB","compareContext","ret","keysA","keysB","bHasOwnProperty","idx","valueA","valueB","deepExtend","objects","collision","copyIsArray","nextPath","ChangeCase","cloneDeep","cpObj","matchFn","inputObj","testObj","DEFAULT_OPTIONS","caseFunction","default_options","forIn","isString","isEmpty","accumulator_init","upperFirst","caseToChange","pull","removeList","removeSet","matchObj","cloneObj","unique","flattenProperties","properties","to_ret","defaults","opening_character","closing_character","separator","createRegex","usesReference","regexOrOptions","hasReference","inst","useSyncExternalStoreWithSelector","hasValue","warning","hasOwn","classes","appendClass","parseValue","newClass","extendStatics","__extends","__","__awaiter","_arguments","generator","fulfilled","step","rejected","__generator","label","sent","trys","ops","verb","op","__values","__read","ar","__spreadArray","pack","__await","__asyncGenerator","asyncIterator","resume","fulfill","settle","__asyncValues","SuppressedError","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","getter","leafPrototypes","getProto","ns","def","getOwnPropertyNames","definition","globalThis","nmd","nc","USER_AGENT_HEADER","LogType","LOG_LEVELS","VERBOSE","DEBUG","INFO","WARN","ERROR","NONE","ConsoleLogger","_pluggables","_padding","_ts","dt","getMinutes","getSeconds","getMilliseconds","configure","config","_config","_log","loggerLevelName","LOG_LEVEL","BIND_ALL_LOG_LEVELS","info","debug","plugin","logEvent","pushLogs","_len2","_key2","_len3","_key3","_len4","_key4","_len5","_key5","_len6","_key6","verbose","_len7","_key7","addPluggable","pluggable","getCategoryName","listPluggables","AmplifyError","recoverySuggestion","underlyingError","super","AMPLIFY_SYMBOL","logger","HubClass","protectedChannels","_remove","channel","holder","ampSymbol","capsule","patternInfo","_toListeners","listen","listenerName","Hub","HubInternal","operate","init","lift","hasLift","liftedSource","UnsubscriptionError","createImpl","ctorFunc","createErrorClass","errors","arrRemove","Subscription","initialTeardown","closed","_parentage","_finalizers","unsubscribe","_parentage_1","_parentage_1_1","initialFinalizer","_finalizers_1","_finalizers_1_1","finalizer","execFinalizer","teardown","_hasParent","_addParent","_removeParent","EMPTY","isSubscription","onUnhandledError","onStoppedNotification","useDeprecatedSynchronousErrorHandling","useDeprecatedNextContext","timeoutProvider","timeout","delegate","handle","reportUnhandledError","COMPLETE_NOTIFICATION","createNotification","kind","Subscriber","isStopped","EMPTY_OBSERVER","complete","SafeSubscriber","handleStoppedNotification","nextNotification","_next","errorNotification","_error","_complete","_bind","ConsumerObserver","partialObserver","handleUnhandledError","observerOrNext","context_1","errorThrown","notification","createOperatorSubscriber","onNext","onComplete","onFinalize","OperatorSubscriber","shouldUnsubscribe","closed_1","project","resolveOwnerFields","model","ownerFields","attr","isAuthAttribute","rule","rules","allow","ownerField","groupsField","attribute","_attribute$properties","_attribute$properties2","capitalize","connectionType","HAS_ONE","HAS_MANY","BELONGS_TO","skGraphQlFieldTypeMap","ID","AWSDate","AWSTime","AWSDateTime","AWSTimestamp","AWSEmail","AWSPhone","AWSURL","AWSIPAddress","AWSJSON","Int","Float","resolvedSkName","flattenItems","res","initializeModel","client","modelName","modelIntrospection","authMode","authToken","introModel","models","introModelFields","fields","modelFields","_field$type","field","_ref3","fieldName","record","initializedRelationalFields","_modelField$associati","modelField","relatedModelName","relatedModel","relatedModelPKFieldName","primaryKeyInfo","primaryKeyFieldName","relatedModelSKFieldNames","sortKeyFieldNames","relationType","association","connectionFields","associatedWith","targetNames","sortKeyValues","curVal","contextSpec","parentPk","parentSK","relatedModelField","relatedTargetNames","_relatedModelField$as","hasManyFilter","and","limit","nextToken","graphQLOperationsInfo","CREATE","operationPrefix","usePlural","READ","UPDATE","DELETE","LIST","INDEX_QUERY","ONCREATE","ONUPDATE","ONDELETE","OBSERVE_QUERY","SELECTION_SET_WILDCARD","getDefaultSelectionSetForNonModelWithIR","nonModelDefinition","mappedFields","_ref4","enum","FIELD_IR","nonModel","nonModels","pair","fromEntries","getDefaultSelectionSetForModelWithIR","modelDefinition","_ref5","customSelectionSetToIR","selectionSet","dotNotationToObject","modelOrNonModelName","_modelIntrospection$m","_modelOrNonModelField","_modelOrNonModelField2","rest","modelOrNonModelDefinition","modelOrNonModelFields","relatedModelDefinition","relatedNonModel","relatedNonModelDefinition","isModelOrNonModelOrFieldType","_modelOrNonModelField3","nestedRelatedModelDefinition","_nonModelDefinition$f","nonModelField","isOwnerField","resultObj","deepMergeSelectionSetObjects","selectionSetIRToString","_ref7","generateSelectionSet","selSetIr","explicitFields","_ref6","defaultSelectionSetForModel","generateGraphQLDocument","modelOperation","listArgs","indexMeta","_graphQLArguments","_graphQLOperationType","_graphQLArguments2","_graphQLSelectionSet","_graphQLArguments3","_graphQLOperationType2","_graphQLSelectionSet2","_graphQLArguments4","_graphQLOperationType3","_graphQLSelectionSet3","_graphQLArguments5","_graphQLOperationType4","_graphQLSelectionSet4","pluralName","isCustomPrimaryKey","namePascalCase","pluralNamePascalCase","graphQLFieldName","indexQueryArgs","graphQLOperationType","graphQLSelectionSet","graphQLArguments","queryField","skQueryArgs","skField","normalizedType","_attributes$find","compositeSkArgName","keyName","find","_attr$properties","selectionSetFields","getPkArgs","listPkArgs","generateSkArgs","fieldType","sortDirection","toLocaleUpperCase","_ref8","buildGraphQLVariables","operation","skName","variables","normalizeMutationInput","_ref9","isReadOnly","indexQuerySkName","mutationInput","normalized","_ref10","_fields$inputFieldNam","inputFieldName","inputValue","_fields$inputFieldNam2","relatedModelPkInfo","associationHasOne","targetName","associatedFieldName","authModeParams","getInternals","internals","getCustomHeaders","requestHeaders","headers","handleListGraphQlError","handleSingularGraphQlError","argIsContextSpec","_arg$token","token","customOpFactory","operationType","argsDefined","operationName","auth","outerArgsString","outerArguments","innerArgsString","innerArguments","operationSelectionSet","returnTypeModelName","hasStringField","toLocaleLowerCase","operationVariables","observable","graphql","pipe","_opSubscription","async","extensions","flattenedResult","_op","baseType","finalType","isArrayNullable","argDef","operationTypeMap","mutations","subscriptions","generateCustomOperationsProperty","operationsType","operations","amplify","generateEnumsProperty","graphqlConfig","enums","enumData","listFactory","_list","_data$key","_data$key4","_data$key2","_data$key3","indexQueryFactory","_indexQuery","modelInitializer","requestArgs","response","processGraphQlResponse","getFactory","_get","subscriptionFactory","pipeFromArray","fns","Observable","_subscribe","operator","isObserver","isRoot","errorContext","_trySubscribe","sink","promiseCtor","getPromiseCtor","Symbol_observable","toPromise","findIndexByFields","needle","haystack","keyFields","searchObject","observeQueryFactory","messageQueue","receiveMessages","onCreateSub","onCreate","onUpdateSub","onUpdate","onDeleteSub","onDelete","ingestMessages","messages","pkFields","isSynced","resolvePKFields","firstPage","page","_nextToken","attributeIsSecondaryIndex","_attr$properties2","_attr$properties3","getSecondaryIndexesFromSchemaModel","_model$attributes","addSchemaToClient","apiGraphqlConfig","apiGraphQLConfig","SUBSCRIPTION_OPS","secondaryIdxs","generateModelsProperty","generateCustomQueriesProperty","generateCustomMutationsProperty","generateCustomSubscriptionsProperty","GraphQLAuthError","__amplify","__authMode","__authToken","__headers","isApiGraphQLConfig","Framework","Category","AnalyticsAction","ApiAction","AuthAction","DataStoreAction","GeoAction","InAppMessagingAction","InteractionsAction","PredictionsAction","PubSubAction","PushNotificationAction","StorageAction","SYMBOL_TO_STRING_TAG","getLocation","lineRegexp","line","column","printLocation","printSourceLocation","sourceLocation","firstLineColumnOffset","locationOffset","whitespace","lineIndex","lineOffset","lineNum","columnOffset","columnNum","locationStr","lines","locationLine","subLineIndex","subLineColumnNum","subLines","printPrefixedLines","subLine","existingLines","padLen","len","enumerableOnly","symbols","sym","_wrapNativeSuper","Class","_cache","Wrapper","_construct","Parent","sham","Proxy","GraphQLError","_Error","originalError","_nodeLocations","_nodeLocations2","_nodeLocations3","undefinedIfEmpty","nodeLocations","_this$nodes","loc","locations","originalExtensions","captureStackTrace","output","_i4","_error$nodes2","_i6","_error$locations2","printError","syntaxError","description","Kind","freeze","NAME","DOCUMENT","OPERATION_DEFINITION","VARIABLE_DEFINITION","SELECTION_SET","FIELD","ARGUMENT","FRAGMENT_SPREAD","INLINE_FRAGMENT","FRAGMENT_DEFINITION","VARIABLE","INT","FLOAT","STRING","BOOLEAN","NULL","ENUM","OBJECT","OBJECT_FIELD","DIRECTIVE","NAMED_TYPE","LIST_TYPE","NON_NULL_TYPE","SCHEMA_DEFINITION","OPERATION_TYPE_DEFINITION","SCALAR_TYPE_DEFINITION","OBJECT_TYPE_DEFINITION","FIELD_DEFINITION","INPUT_VALUE_DEFINITION","INTERFACE_TYPE_DEFINITION","UNION_TYPE_DEFINITION","ENUM_TYPE_DEFINITION","ENUM_VALUE_DEFINITION","INPUT_OBJECT_TYPE_DEFINITION","DIRECTIVE_DEFINITION","SCHEMA_EXTENSION","SCALAR_TYPE_EXTENSION","OBJECT_TYPE_EXTENSION","INTERFACE_TYPE_EXTENSION","UNION_TYPE_EXTENSION","ENUM_TYPE_EXTENSION","INPUT_OBJECT_TYPE_EXTENSION","defineInspect","classObject","toJSON","condition","invariant","inspect","nodejsCustomInspectSymbol","Location","startToken","endToken","Token","isNode","maybeNode","TokenKind","SOF","EOF","BANG","DOLLAR","AMP","PAREN_L","PAREN_R","SPREAD","COLON","EQUALS","AT","BRACKET_L","BRACKET_R","BRACE_L","PIPE","BRACE_R","BLOCK_STRING","COMMENT","MAX_ARRAY_LENGTH","MAX_RECURSIVE_DEPTH","formatValue","seenValues","previouslySeenValues","customInspectFn","getCustomFn","customValue","formatArray","getObjectTag","formatObject","formatObjectValue","devAssert","Source","DirectiveLocation","QUERY","MUTATION","SUBSCRIPTION","SCHEMA","SCALAR","ARGUMENT_DEFINITION","INTERFACE","UNION","ENUM_VALUE","INPUT_OBJECT","INPUT_FIELD_DEFINITION","dedentBlockStringValue","rawString","commonIndent","_commonIndent","isFirstLine","isEmptyLine","indent","getBlockStringIndentation","startLine","isBlank","endLine","Lexer","startOfFileToken","lastToken","lineStart","_proto","advance","lookahead","_token$next","readToken","printCharCode","lexer","bodyLength","_line","_col","readComment","readBlockString","readString","readNumber","readName","unexpectedCharacterMessage","firstCode","isFloat","readDigits","isNameStart","chunkStart","uniCharCode","invalidSequence","rawValue","char2hex","parse","Parser","parseDocument","sourceObj","isSource","_lexer","_options","parseName","expectToken","definitions","many","parseDefinition","peek","parseOperationDefinition","parseFragmentDefinition","parseTypeSystemDefinition","parseTypeSystemExtension","peekDescription","unexpected","variableDefinitions","directives","parseSelectionSet","parseOperationType","parseVariableDefinitions","parseDirectives","operationToken","optionalMany","parseVariableDefinition","variable","parseVariable","parseTypeReference","expectOptionalToken","parseValueLiteral","selections","parseSelection","parseFragment","parseField","alias","nameOrAlias","parseArguments","isConst","parseConstArgument","parseArgument","hasTypeCondition","expectOptionalKeyword","parseFragmentName","typeCondition","parseNamedType","_this$_options","expectKeyword","experimentalFragmentVariables","parseList","parseObject","parseStringLiteral","block","parseObjectField","parseDirective","keywordToken","parseSchemaDefinition","parseScalarTypeDefinition","parseObjectTypeDefinition","parseInterfaceTypeDefinition","parseUnionTypeDefinition","parseEnumTypeDefinition","parseInputObjectTypeDefinition","parseDirectiveDefinition","parseDescription","operationTypes","parseOperationTypeDefinition","interfaces","parseImplementsInterfaces","parseFieldsDefinition","_this$_options2","allowLegacySDLImplementsInterfaces","delimitedMany","_this$_options3","allowLegacySDLEmptyFields","parseFieldDefinition","parseArgumentDefs","parseInputValueDef","parseUnionMemberTypes","parseEnumValuesDefinition","parseEnumValueDefinition","parseInputFieldsDefinition","parseSchemaExtension","parseScalarTypeExtension","parseObjectTypeExtension","parseInterfaceTypeExtension","parseUnionTypeExtension","parseEnumTypeExtension","parseInputObjectTypeExtension","repeatable","parseDirectiveLocations","parseDirectiveLocation","_this$_options4","noLocation","getTokenKindDesc","getTokenDesc","atToken","openKind","parseFn","closeKind","delimiterKind","isPunctuatorTokenKind","QueryDocumentKeys","Name","Document","OperationDefinition","VariableDefinition","Variable","SelectionSet","Field","Argument","FragmentSpread","InlineFragment","FragmentDefinition","IntValue","FloatValue","StringValue","BooleanValue","NullValue","EnumValue","ListValue","ObjectValue","ObjectField","Directive","NamedType","ListType","NonNullType","SchemaDefinition","OperationTypeDefinition","ScalarTypeDefinition","ObjectTypeDefinition","FieldDefinition","InputValueDefinition","InterfaceTypeDefinition","UnionTypeDefinition","EnumTypeDefinition","EnumValueDefinition","InputObjectTypeDefinition","DirectiveDefinition","SchemaExtension","ScalarTypeExtension","ObjectTypeExtension","InterfaceTypeExtension","UnionTypeExtension","EnumTypeExtension","InputObjectTypeExtension","BREAK","getVisitFn","visitor","isLeaving","kindVisitor","kindSpecificVisitor","leave","enter","specificVisitor","specificKindVisitor","print","ast","visitorKeys","inArray","edits","ancestors","newRoot","isEdited","_Object$keys2","editOffset","editKey","editValue","_visitorKeys$node$kin","visitFn","visit","printDocASTReducer","varDefs","wrap","argsLine","indentation","preferMultipleLines","isSingleLine","hasLeadingSpace","hasTrailingQuote","hasTrailingSlash","printAsMultipleLines","printBlockString","_ref11","_ref12","_ref13","_ref14","_ref15","_ref16","_ref17","_ref18","_ref19","addDescription","_ref20","_ref21","_ref22","_ref23","_ref24","hasMultilineItems","_ref25","_ref26","_ref27","_ref28","_ref29","_ref30","_ref31","_ref32","_ref33","_ref34","_ref35","_ref36","_ref37","_ref38","maybeArray","_maybeArray$filter$jo","maybeString","isMultiline","isPromise","isInteropObservable","isAsyncIterable","createInvalidObservableTypeError","isIterable","Symbol_iterator","readableStreamLikeToAsyncGenerator","readableStream","reader","getReader","read","releaseLock","isReadableStreamLike","innerFrom","obs","promise","fromAsyncIterable","iterable_1","iterable_1_1","asyncIterable","asyncIterable_1","asyncIterable_1_1","catchError","handledResult","innerSub","syncUnsub","AmplifyUrl","URL","globalExists","windowExists","documentExists","processExists","keyPrefixMatch","startsWith","detectionMap","platform","Expo","detectionMethod","expo","ReactNative","product","NextJs","Nuxt","__NUXT__","$nuxt","Angular","angularVersionSetInDocument","angularContentSetInWindow","React","elementKeyPrefixedWithReact","VueJs","Svelte","WebUnknown","NextJsSSR","NuxtSSR","__NUXT_PATHS__","ReactSSR","VueJsSSR","AngularSSR","_process$env$npm_life","npm_lifecycle_script","SvelteSSR","frameworkCache","frameworkChangeObservers","resetTriggered","detectFramework","_detectionMap$find","detectionEntry","ServerSideUnknown","detect","_frameworkChangeObser","fcn","resetTimeout","observeFrameworkChanges","framework","customUserAgentState","setCustomUserAgent","_customUserAgentState","category","apis","api","_acc$api","refCount","additionalDetails","cleanUpCallbackCalled","cleanUpCallback","apiRefCount","BASE_USER_AGENT","isReactNative","getAmplifyUserAgentObject","customState","getCustomUserAgent","_customUserAgentState2","getAmplifyUserAgent","customUserAgentDetails","userAgentString","agentKey","agentValue","ApiError","_response","replicateApiErrorResponse","params","RestApiError","CanceledError","isCancelError","RestApiValidationErrorCode","InvalidApiName","parseMetadata","_headers$xAmznReque","statusCode","isMetadataBearer","$metadata","httpStatusCode","requestId","extendedRequestId","cfId","parseJsonError","_response$headers$xA","_body$message","parseJsonBody","cleanValue","sanitizeErrorCode","__type","Message","json","parseRestApiServiceError","parsedAwsError","stubErrorResponse","_response$body","bodyText","buildRestApiError","bodyTextPromise","bodyProxy","receiver","restApiError","CLOCK_SKEW_ERROR_CODES","getRetryDecider","errorParser","parsedError","errorCode","isConnectionError","isThrottlingError","isClockSkewError","isServerSideError","THROTTLING_ERROR_CODES","TIMEOUT_ERROR_CODES","MAX_DELAY_MS","jitteredBackoff","maxDelayMs","attempt","DEFAULT_MAX_DELAY_MS","jitteredBackoff$1","delayFunction","DEFAULT_RETRY_ATTEMPTS","retryMiddlewareFactory","maxAttempts","retryDecider","computeDelay","abortSignal","request","_context$attemptsCoun","attemptsCount","handleTerminalErrorOrResponse","addOrIncrementMetadataAttempts","aborted","_context$attemptsCoun2","_context$attemptsCoun3","cancellableSleep","timeoutMs","timeoutId","sleepPromiseResolveFn","sleepPromise","cancelSleep","nextHandlerOutput","attempts","_nextHandlerOutput$$m","getSignedHeaders","AMZ_DATE_HEADER","TOKEN_HEADER","KEY_TYPE_IDENTIFIER","SHA256_ALGORITHM_IDENTIFIER","getSigningValues","credentials","signingDate","signingRegion","signingService","uriEscapePath","accessKeyId","secretAccessKey","sessionToken","longDate","shortDate","toISOString","getFormattedDates","getCredentialScope","region","service","credentialScope","BLOCK_SIZE","KEY","Uint32Array","INIT","MAX_HASHABLE_LENGTH","RawSha256","Int32Array","temp","bufferLength","bytesHashed","hashBuffer","bitsHashed","bufferView","undecoratedLength","setUint8","setUint32","out","state0","state1","state2","state3","state4","state5","state6","state7","t1_1","t2_1","t1","t2","fromUtf8","TextEncoder","convertToBuffer","isView","BYTES_PER_ELEMENT","Sha256","hash","reset","toHash","digestSync","outer","inner","bufferHash","bufferFromSecret","SHORT_TO_HEX","HEX_TO_SHORT","encodedByte","getHashedData","sha256","getHashedDataAsHex","bytes","toHex","getCanonicalHeaders","_value$trim$replace","escapeUri","uri","hexEncode","getCanonicalUri","pathname","getHashedPayload","isSourceData","isArrayBuffer","getSignature","canonicalRequest","searchParams","keyA","valA","keyB","valB","getCanonicalRequest","stringToSign","getStringToSign","hashedRequest","signature","getSigningKey","dateKey","regionKey","serviceKey","signRequest","signingValues","requestToSign","credentialEntry","signedHeadersEntry","signatureEntry","getSkewCorrectedDate","systemClockOffset","getUpdatedSystemClockOffset","clockTimeInMilliseconds","currentSystemClockOffset","isClockSkewed","clockOffsetInMilliseconds","getTime","getDateHeader","_headers$date","userAgentMiddlewareFactory","userAgentHeader","userAgentValue","headerName","composeTransferHandler","coreHandler","middleware","composedHandler","composeHandlerRequest","resolvedMiddleware","withMemoization","payloadAccessor","cached","shouldSendBody","fetchTransferHandler","_resp$headers","_resp$body","withCrossDomainCredentials","fetch","signal","responseHeaders","status","blob","authenticatedHandler","_currentSystemClockOf","signRequestOptions","signedRequest","dateString","unauthenticatedHandler","DEFAULT_REST_IAM_SIGNING_SERVICE","DEFAULT_IAM_SIGNING_REGION","APIG_HOSTNAME_PATTERN","transferHandler","signingServiceInfo","withCredentials","resolvedBody","FormData","resolvedHeaders","resolveHeaders","normalizedHeaders","baseOptions","isIamAuthApplicable","iamAuthApplicable","resolveCredentials","_signingServiceInfo$s","_signingServiceInfo$r","signingInfoFromUrl","parseSigningInfo","restApiOptions","_restApiOptions$ampli","_restApiOptions$ampli2","_APIG_HOSTNAME_PATTER","getConfig","API","REST","apiName","hostname","authorization","Auth","fetchAuthSession","cancelTokenMap","post","abortController","AbortController","responsePromise","isInternalPost","targetHandler","publicApisAbortController","publicApisAbortSignal","internalPostAbortSignal","abortReason","job","_abortReason","reason","canceledError","abortMessage","abort","createCancellableOperation","responseWithCleanUp","finally","updateRequestToBeCancellable","deepFreeze","propNames","ADD_OAUTH_LISTENER","authTypeMapping","API_KEY","AWS_IAM","AMAZON_COGNITO_USER_POOLS","OPENID_CONNECT","AWS_LAMBDA","LAMBDA","getRedirectUrl","redirectStr","_redirectStr$split","getOAuthConfig","domain","scope","redirectSignIn","redirectSignOut","responseType","scopes","parseSocialProviders","aws_cognito_social_providers","provider","updatedProvider","parseAmplifyOutputs","amplifyOutputs","resourcesConfig","storage","Storage","amplifyOutputsStorageProperties","bucket_name","aws_region","S3","bucket","parseStorage","amplifyOutputsAuthProperties","user_pool_id","user_pool_client_id","identity_pool_id","password_policy","mfa_configuration","mfa_methods","unauthenticated_identities_enabled","oauth","username_attributes","standard_required_attributes","authConfig","Cognito","userPoolId","userPoolClientId","_password_policy$min_","identityPoolId","passwordFormat","requireLowercase","require_lowercase","requireNumbers","require_numbers","requireUppercase","require_uppercase","requireSpecialCharacters","require_symbols","minLength","min_length","mfa","getMfaStatus","smsEnabled","totpEnabled","allowGuestAccess","loginWith","redirect_sign_in_uri","redirect_sign_out_uri","response_type","providers","getOAuthProviders","identity_providers","phone","username","userAttributes","required","parseAuth","analytics","Analytics","amplifyOutputsAnalyticsProperties","amazon_pinpoint","Pinpoint","appId","app_id","parseAnalytics","geo","Geo","geofence_collections","maps","search_indices","LocationService","searchIndices","geofenceCollections","parseGeo","amplifyOutputsDataProperties","default_authorization_type","api_key","model_introspection","authType","GraphQL","endpoint","defaultAuthMode","authModeNames","apiKey","parseData","notifications","Notifications","amplifyOutputsNotificationsProperties","channels","amazon_pinpoint_app_id","hasInAppMessaging","hasPushNotification","notificationsConfig","InAppMessaging","PushNotification","parseNotifications","providerNames","GOOGLE","LOGIN_WITH_AMAZON","FACEBOOK","SIGN_IN_WITH_APPLE","mfaConfiguration","parseAmplifyConfig","amplifyConfig","_aws_cognito_mfa_type","_aws_cognito_mfa_type2","_aws_cognito_password","_aws_cognito_password2","_aws_cognito_password3","_aws_cognito_password4","_aws_cognito_password5","_aws_cognito_password6","_aws_cognito_password7","_aws_cognito_password8","_aws_cognito_username","_aws_cognito_username2","aws_appsync_apiKey","aws_appsync_authenticationType","aws_appsync_graphqlEndpoint","aws_appsync_region","aws_bots_config","aws_cognito_identity_pool_id","aws_cognito_sign_up_verification_method","aws_cognito_mfa_configuration","aws_cognito_mfa_types","aws_cognito_password_protection_settings","aws_cognito_verification_mechanisms","aws_cognito_signup_attributes","aws_cognito_username_attributes","aws_mandatory_sign_in","aws_mobile_analytics_app_id","aws_mobile_analytics_app_region","aws_user_files_s3_bucket","aws_user_files_s3_bucket_region","aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing","aws_user_pools_id","aws_user_pools_web_client_id","predictions","aws_cloud_logic_custom","Push","AWSPinpoint","Interactions","LexV1","bot","mfaConfig","passwordFormatConfig","passwordPolicyMinLength","passwordPolicyCharacters","loginWithEmailEnabled","loginWithPhoneEnabled","signUpVerificationMethod","hasOAuthConfig","hasSocialProviderConfig","dangerouslyConnectToHttpEndpointForTesting","amazon_location_service","_predictions$convert$","_predictions$convert","VoiceId","voiceId","speechGenerator","Predictions","parseAWSExports","isAmplifyOutputs","isTokenExpired","expiresAt","clockDrift","AuthClass","authResourcesConfig","authOptions","_credentialsAndIdenti","_credentialsAndIdenti2","credentialsAndIdentityId","userSub","tokens","getTokens","_tokens$accessToken","_this$authOptions","_this$authOptions2","accessToken","sub","credentialsProvider","getCredentialsAndIdentityId","authenticated","forceRefresh","identityId","clearCredentials","_this$authOptions3","clearCredentialsAndIdentityId","_await$this$authOptio","_this$authOptions4","tokenProvider","Amplify","oAuthListener","libraryOptions","resolvedResourceConfig","notifyOAuthListener","_this$resourcesConfig","_this$resourcesConfig2","_this$resourcesConfig3","_this$resourcesConfig4","fetchAuthSession$1","randomUUID","crypto","getRandomValues","rnds8","rng","byteToHex","unsafeStringify","buf","native","rnds","amplifyUuid","v4","isNonRetryableError","getCrypto","base64Encoder","urlSafe","inputStr","fromCodePoint","bytesToString","encodedStr","getBtoa","btoa","jitteredExponentialRetry","functionToRetry","onTerminate","delayFn","lastError","terminated","wakeUp","retryIn","_resolve","retry","NonRetryableError","nonRetryable","CONTROL_MSG","ConnectionState","NON_RETRYABLE_CODES","MESSAGE_TYPES","SUBSCRIPTION_STATUS","SOCKET_STATUS","AWS_APPSYNC_REALTIME_HEADERS","accept","DEFAULT_KEEP_ALIVE_TIMEOUT","executeSchedule","parentSubscription","scheduler","work","scheduleSubscription","schedule","observeOn","subscribeOn","scheduleAsyncIterable","scheduled","scheduleObservable","scheduleArray","schedulePromise","scheduleIterable","scheduleReadableStreamLike","Reachability","networkMonitor","globalObj","isWebWorker","selfContext","WorkerGlobalScope","online","onLine","notifyOnline","notifyOffline","_observers","_observer","_observerOverride","ReachabilityMonitor","CONNECTION_CHANGE","KEEP_ALIVE_MISSED","keepAliveState","KEEP_ALIVE","CONNECTION_ESTABLISHED","connectionState","CONNECTION_FAILED","intendedConnectionState","CLOSING_CONNECTION","OPENING_CONNECTION","CLOSED","ONLINE","networkState","OFFLINE","ConnectionStateMonitor","_networkMonitoringSubscription","_linkedConnectionState","_initialNetworkStateSubscription","_this$_initialNetwork","_linkedConnectionStateObservable","connectionStateObserver","_linkedConnectionStateObserver","enableNetworkMonitoring","_this$_initialNetwork2","disableNetworkMonitoring","_this$_networkMonitor","connectionStateObservable","connectionStatesTranslator","toInclude","statusUpdates","_this$_linkedConnecti","newSocketStatus","ConnectedPendingNetwork","ConnectedPendingDisconnect","ConnectionDisruptedPendingNetwork","ConnectionDisrupted","ConnectedPendingKeepAlive","Connecting","Disconnected","Connected","ReconnectEvent","ReconnectionMonitor","reconnectObservers","reconnectObserver","START_RECONNECT","reconnectSetTimeoutId","reconnectIntervalId","_triggerReconnect","HALT_RECONNECT","_reconnectObserver$co","_reconnectObserver$ne","dispatchApiEvent","standardDomainPattern","AWSAppSyncRealTimeProvider","socketStatus","keepAliveTimeout","subscriptionObserverMap","promiseArray","connectionStateMonitor","reconnectionMonitor","connectionStateMonitorSubscription","getNewWebSocket","protocol","WebSocket","getProviderName","isCustomDomain","appSyncGraphqlEndpoint","authenticationType","additionalHeaders","libraryConfigHeaders","subscriptionStartActive","subscriptionId","startSubscription","_startSubscriptionWithAWSAppSyncRealTime","REALTIME_SUBSCRIPTION_INIT_ERROR","reconnectSubscription","reconnectSubscriptionObserver","_waitForSubscriptionToBeConnected","subscriptionState","CONNECTED","_sendUnsubscriptionMessage","_removeSubscriptionObserver","_this$subscriptionObs","additionalCustomHeaders","requestOptions","queryString","Authorization","PENDING","startAckTimeoutId","dataString","headerObj","_awsRealTimeHeaderBasedAuth","canonicalUri","subscriptionMessage","GQL_START","stringToAWSRealTime","_initializeWebSocketConnection","_logStartSubscriptionError","subscriptionFailedCallback","subscriptionReadyCallback","_timeoutStartSubscriptionAck","awsRealTimeSocket","send","_err$message","subscriptionObserver","observedSubscriptionState","readyState","OPEN","READY","unsubscribeMessage","GQL_STOP","_closeSocketIfRequired","bufferedAmount","keepAliveTimeoutId","keepAliveAlertTimeoutId","tempSocket","onclose","_handleIncomingSubscriptionMessage","GQL_DATA","GQL_START_ACK","SUBSCRIPTION_ACK","GQL_CONNECTION_KEEP_ALIVE","_errorDisconnect","TIMEOUT_DISCONNECT","GQL_ERROR","FAILED","rej","CONNECTING","payloadString","authHeader","headerString","headerQs","payloadQs","discoverableEndpoint","awsRealTimeUrl","_initializeRetryableHandshake","_initializeHandshake","newSocket","onopen","ackOk","connectionTimeoutMs","GQL_CONNECTION_ACK","CONNECTION_CLOSED","GQL_CONNECTION_ERROR","errorType","gqlInit","GQL_CONNECTION_INIT","checkAckOk","targetAckOk","headerHandler","_awsRealTimeApiKeyHeader","iam","_awsRealTimeIAMHeader","oidc","_awsAuthTokenHeader","userPool","lambda","_customAuthHeader","none","resolvedApiKey","_session$tokens","session","endpointInfo","creds","GraphQLApiError","APIValidationErrorCode","validationErrorMap","NoAuthSession","NoRegion","NoCustomEndpoint","resolveConfig","_config$API","_config$API$GraphQL","_config$API2","customEndpoint","customEndpointRegion","assertion","assertValidationError","resolveLibraryOptions","_amplify$libraryOptio","_amplify$libraryOptio2","repackageUnauthorizedError","_error$originalError","_error$message","_error$message2","isUnauthorizedError","NO_API_KEY","NO_VALID_CREDENTIALS","NO_CREDENTIALS","NO_VALID_AUTH_TOKEN","NO_FEDERATED_JWT","NO_SIGNED_IN_USER","NO_CURRENT_USER","NO_AUTH_TOKEN_HEADER","NO_AUTH_TOKEN","NO_ENDPOINT","createGraphQLResultWithError","InternalGraphQLAPIClass","appSyncRealTime","_api","cancelREST","isCancelErrorREST","getModuleName","_headerBasedAuth","_await$amplify$Auth$f","getGraphqlOperationType","paramQuery","operationDef","isAmplifyInstance","_graphql","amplifyInstance","_graphqlSubscribe","explicitAuthMode","initialAuthMode","customHeaders","responseBody","isGraphQLResponseWithErrors","GraphQLAPI","GraphQl","generateModelsPropertyOnAmplifyConfigure","clientRef","coreEvent","_coreEvent$payload$da","emptyProperty","generateClient","_params$amplify$getCo","generateClient$1","updateMembers","listHands","listTrainings","PokerHandContext","initialPokerHandState","playerId","tableType","handTags","heroPosition","handTitle","myHand_1","myHand_2","preflopNotes","preflopAction","preflopHeroRange","preflopVillainRange","flopNotes","flopAction","flopHeroRange","flopVillainRange","turnNotes","turnAction","turnHeroRange","turnVillainRange","riverNotes","riverAction","riverHeroRange","riverVillainRange","flopCards_1","flopCards_2","flopCards_3","turnCard","riverCard","villainPosition","stake","share","PokerHandProvider","pokerHand","setPokerHand","pokerHandList","setPokerHandList","pokerHandHistory","setPokerHandHistory","updatePokerHand","_jsx","createPokerHandDB","success","newHandId","updatePokerHandDB","fetchPokerHands","listHandsQuery","fetchPokerHandsTrainer","resetPokerHandList","resetPokerHand","isMap","isSet","isEmptyArray","isEmptyObject","classNameModifier","modifier","classNameModifierByFlag","flag","isActorWithState","actorRef","defaultCompare","defaultGetSnapshot","initialStateCacheRef","actor","machine","initialState","getActorState","_state$context$actorR","getActorContext","_getActorState","getSendEventAliases","sendToMachine","initializeMachine","resendCode","signOut","submitForm","updateForm","updateBlur","toFederatedSignIn","toForgotPassword","toSignIn","toSignUp","skipVerification","getServiceFacade","sendEventAliases","serviceContext","_getActorContext","_state$context$config","_state$context","_actorContext$user","_state$context2","actorContext","challengeName","codeDeliveryDetails","remoteError","validationError","validationErrors","totpSecretCode","unverifiedUserAttributes","socialProviders","user","hasValidationErrors","actorState","isPending","hasTag","route","getRoute","authStatus","getServiceContextFacade","AuthenticatorContext","React__default","USE_AUTHENTICATOR_ERROR","authFieldsWithDefaults","countryDialCodes","defaultFormFieldOptions","birthdate","placeholder","autocomplete","confirmation_code","confirm_password","family_name","given_name","middle_name","nickname","phone_number","dialCode","dialCodeList","preferred_username","profile","website","ALLOWED_SPECIAL_CHARACTERS","isAuthFieldWithDefaults","getErrors","_lang","_dict","setDefaultLanguage","language","setLanguage","lang","defVal","getByLanguage","langDict","putVocabulariesForLanguage","vocabularies","putVocabularies","createAssertionFunction","errorMap","AssertionError","additionalContext","I18nErrorCode","assert","NotConfigured","_i18n","I18n","createInstance","I18n$1","checkConfig","DefaultTexts","ADD_PROFILE","ADD_WEBSITE","BACK_SIGN_IN","BIRTHDATE","CHANGE_PASSWORD","CHANGING_PASSWORD","CODE","CODE_ARRIVAL","CODE_EMAILED","CODE_SENT","CODE_TEXTED","CONFIRM_PASSWORD","CONFIRM_PASSWORD_PLACEHOLDER","CONFIRM_RESET_PASSWORD_HEADING","CONFIRM_SIGNUP_HEADING","CONFIRM_SMS","CONFIRM_MFA_DEFAULT","CONFIRM_TOTP","CONFIRM","CONFIRMATION_CODE","CONFIRMING","CREATE_ACCOUNT","CREATING_ACCOUNT","EMAIL_ADDRESS","ENTER_BIRTHDATE","ENTER_CODE","ENTER_CONFIRMATION_CODE","ENTER_EMAIL","ENTER_FAMILY_NAME","ENTER_GIVEN_NAME","ENTER_MIDDLE_NAME","ENTER_NAME","ENTER_NICK_NAME","ENTER_PASSWORD","ENTER_PHONE_NUMBER","ENTER_PREFERRED_USERNAME","ENTER_USERNAME","FAMILY_NAME","GIVEN_NAME","FORGOT_PASSWORD","FORGOT_YOUR_PASSWORD","HIDE_PASSWORD","LOADING","LOGIN_NAME","MIDDLE_NAME","NICKNAME","NEW_PASSWORD","OR","PASSWORD","PHONE_NUMBER","PREFERRED_USERNAME","PROFILE","RESEND_CODE","RESET_PASSWORD_HEADING","RESET_PASSWORD","SEND_CODE","SENDING","SETUP_TOTP","SHOW_PASSWORD","SIGN_IN_BUTTON","SIGN_IN_TAB","SIGN_IN_WITH_AMAZON","SIGN_IN_WITH_FACEBOOK","SIGN_IN_WITH_GOOGLE","SIGN_IN","SIGN_UP_BUTTON","SIGNING_IN_BUTTON","SKIP","SUBMIT","SUBMITTING","UPPERCASE_COPY","VERIFY_CONTACT","VERIFY_HEADING","VERIFY","WE_EMAILED","WE_SENT_CODE","WE_TEXTED","WEBSITE","translate","phrase","getPrimaryAlias","loginMechanisms","primaryAlias","getDefaultFormField","getAliasDefaultFormField","getConfirmationCodeFormFields","defaultFormFieldsGetters","signIn","signUp","signUpAttributes","fieldNames","formField","fieldAttrs","confirmSignUp","confirmSignIn","forceNewPassword","missingAttributes","forgotPassword","confirmResetPassword","confirmVerifyUser","setupTotp","getCustomFormFields","customFormFields","formFields","customOptions","isAuthFieldsWithDefaults","mergedOptions","getFormFields","defaultFormFields","getDefaultFormFields","formFieldGetter","newFormFields","applyTranslation","getSortedFormFields","removeOrderKeys","MAX_VALUE","formFieldEntry","sortFormFields","COMPONENT_ROUTE_KEYS","defaultComparator","areSelectorDepsEqual","currentDeps","nextDeps","currentDep","nextDep","areEmptyArrays","areEmptyObjects","getComparator","currentFacade","nextFacade","getQRFields","QR","getMachineFields","componentRoute","isComponentRouteKey","convertContactMethodsToFields","flatMap","useAuthenticator","xstateSelector","comparator","facade","handleStoreChange","boundGetSnapshot","useSelector","serviceSnapshot","QRFields","routeSelector","ACCOUNT_SETTINGS_INPUT_BASE","DeleteUser","UpdatePassword","AUTHENTICATOR_INPUT_BASE","SignUp","ConfirmSignUp","ResendSignUpCode","SignIn","ConfirmSignIn","FetchUserAttributes","SignOut","ResetPassword","ConfirmResetPassword","SignInWithRedirect","IN_APP_MESSAGING_INPUT_BASE","NotifyMessageInteraction","LOCATION_SEARCH_INPUT_BASE","SearchByText","SearchForSuggestions","SearchByPlaceId","MAP_VIEW_INPUT_BASE","STORAGE_MANAGER_INPUT_BASE","UploadData","setUserAgent","packageName","packageData","ActionTypes","SpecialTargets","__rest","EMPTY_ACTIVITY_MAP","DEFAULT_GUARD_TYPE","Start","stop","Stop","raise","Raise","Send","Cancel","nullEvent","NullEvent","Assign","After","DoneState","Log","Init","invoke","Invoke","errorPlatform","ErrorExecution","ErrorPlatform","ErrorCustom","Update","choose","Choose","pure","Pure","IS_PRODUCTION","matchesState","parentStateId","childStateId","parentStateValue","toStateValue","childStateValue","getEventType","toStatePath","stateId","stateValue","pathToStateValue","statePath","marker","mapValues","collectionKeys","mapFilterValues","e_1","e_1_1","e_2","props_1","props_1_1","e_2_1","toStatePaths","flatten","subStateValue","subPath","toArrayStrict","mapContext","mapper","_event","e_5","subMapper","e_5_1","isPromiseLike","updateHistoryStates","hist","states","subHist","updateContext","assignActions","updatedContext","assignAction","e_7","assignment","partialUpdate","propAssignment","e_7_1","toGuard","guardMap","symbolObservable","isMachine","uniqueId","currentId","toEventObject","toSCXMLEvent","scxmlEvent","$$type","eventObject","toTransitionConfigArray","configLike","transitionLike","evaluateGuard","guards","guardMeta","cond","condFn","toInvokeSource","toObserver","errorHandler","completionHandler","createInvokeId","stateNodeId","isRaisableAction","Internal","isLeafNode","getAllChildren","getChildren","sn","getAllStateNodes","stateNodes","getConfiguration","prevStateNodes","e_3","e_4","prevAdjList","getAdjList","configuration","configuration_1","configuration_1_1","adjList","configuration_2","configuration_2_1","_e","_f","initialStateNodes","e_3_1","configuration_3","configuration_3_1","e_4_1","getValueFromAdj","baseNode","childStateNodes","childStateNode","csn","configuration_4","configuration_4_1","member","isInFinalState","getTagsFromConfiguration","tags","initEvent","getActionFunction","actionType","actionFunctionMap","toActionObject","actionObject","toActionObjects","subAction","toActivityDefinition","raise$1","send$1","sendParent","sendUpdate","resolveLog","expr","sendId","cancel$1","activity","activityDef","assign$1","delayRef","idSuffix","doneInvoke","DoneInvoke","forwardTo","originalTarget_1","resolvedTarget","conds","pluckAssigns","actionBlocks","actionBlocks_1","actionBlocks_1_1","actions","resolveActions","currentState","currentContext","predictableExec","preserveActionOrder","preservedContexts","deferredToBlockEnd","handleAction","blockType","raisedAction","delaysMap","resolvedDelay","resolvedEvent","configDelay","resolveRaise","delays","sendAction","resolveSend","configuredDelay","log$1","resolved","choose$1","matchedActions","resolvedActionsFromChoose","resolvedContextFromChoose","pure$1","resolvedActionsFromPure","resolvedContext","stop$1","actorRefOrString","resolvedActorRef","resolveStop","resolvedActionObject","exec_1","contextIndex_1","wrapped","_ctx","resolvedActions","stateValuesEqual","aKeys","bKeys","isStateConfig","State","activities","events","_sessionid","historyValue","history","toStrings","ownEvents","nextEvents","inert","valueKeys","jsonValues","can","transitionData","getTransitionData","defaultOptions","deferEvents","Scheduler","processingEvent","flushEvents","task","nextCallback","serviceStack","provide","consume","createNullActor","createDeferredActor","entity","tempActor","deferred","initialState_1","withContext","sessionIdIndex","registry","getGlobal","registerService","devTools","__xstate__","getDevTools","spawnBehavior","behavior","mailbox","flushing","actorRefLike","toActorRef","event_1","actorCtx","handleError","InterpreterStatus","DEFAULT_SPAWN_OPTIONS","sync","autoForward","Interpreter","delayedEventsMap","contextListeners","stopListeners","doneListeners","eventListeners","sendListeners","NotStarted","_outgoingQueue","batch","Stopped","Running","forward","_nextState","_state","sendTo","immediate","isParent","error$1","origin","sessionId","predictableActionArguments","_exec","actionOrExec","sendAction_1","defer","invokeSource","serviceCreator","services","resolvedData","spawn","spawnActivity","stopChild","resolvedOptions","clock","resolvedId","execute","actionsConfig","_g","_h","_j","_k","contextListener","finalChildStateNode","doneData","_doneEvent","_l","_m","_stop","_stopChildren","onTransition","nextListenerOrObserver","completeListener","completeOnce","onDone","onStop","onEvent","onSend","onChange","resolvedState","resolveState","attachDev","e_6","e_8","e_9","e_10","e_6_1","e_8_1","_o","e_9_1","_p","_q","e_10_1","exitActions","onExit","newState","changed","e_11","batchChanged","batchedActions","_loop_1","bindActionToState","events_1","events_1_1","e_11_1","sender","nextEvent","e_12","e_12_1","childId","spawnPromise","spawnCallback","isActor","spawnActor","isObservable","spawnObservable","spawnMachine","childService","doneEvent","canceled","errorData","errorEvent","currentError","originalStackTrace","stackTrace","reportUnhandledExceptionOnInvocation","strict","unsubscribed","emitted","callbackStop","receivers","newListener","subscription","dispose","spawnEffect","__REDUX_DEVTOOLS_EXTENSION__","devToolsOptions","connect","autoPause","stateSanitizer","jump","skip","interpret","resolveSpawnOptions","nameOrOptions","isLazyEntity","useConstant","useInterpret","getMachine","observerOrListener","interpreterOptions","machineConfig","withConfig","useIsomorphicLayoutEffect","useIdleInterpreter","rehydratedState","base64Decoder","getAtob","atob","AuthConfigurationErrorCode","AuthTokenConfigException","AuthUserPoolAndIdentityPoolException","AuthUserPoolException","InvalidIdentityPoolIdException","OAuthNotConfigureException","assertTokenProviderConfig","cognitoConfig","assertionValid","assertOAuthConfig","_cognitoConfig$loginW","_cognitoConfig$loginW2","_cognitoConfig$loginW3","_cognitoConfig$loginW4","validOAuthConfig","assertIdentityPoolIdConfig","validConfig","decodeJWT","tokenParts","base64","jsonStr","decodeURIComponent","AuthError","USER_UNAUTHENTICATED_EXCEPTION","USER_ALREADY_AUTHENTICATED_EXCEPTION","DEVICE_METADATA_NOT_FOUND_EXCEPTION","AUTO_SIGN_IN_EXCEPTION","invalidRedirectException","invalidOriginException","assertAuthTokens","oAuthTokenRefreshException","tokenRefreshException","assertAuthTokensWithRefreshToken","isAuthenticated","refreshToken","isAuthenticatedWithImplicitOauthFlow","isAuthenticatedWithRefreshToken","assertDeviceMetadata","deviceMetadata","deviceKey","deviceGroupKey","randomPassword","OAuthStorageKeys","inflightOAuth","oauthSignIn","oauthPKCE","oauthState","idToken","getCurrentUser","_amplify$getConfig$Au","_tokens$idToken$paylo","_tokens$idToken","authUser","userId","signInDetails","getSignInDetailsFromTokens","getCurrentUser$1","defaultAuthHubHandler","onSignIn","onSignOut","listenToAuthHub","simpleSrc","toInvokeDefinition","invokeConfig","invokeDef","NULL_EVENT","WILDCARD","EMPTY_OBJECT","isStateId","StateNode","_stateInfo","__xstatenode","__cache","relativeValue","initialStateValue","candidates","delayedTransitions","idMap","parallel","schema","initial","stateConfig","dfs","_transient","always","onEntry","exit","invokeId","getDelayedTransitions","formatTransitions","getCandidates","eventName","transient","sameEventType","afterConfig","mutateEntryExit","configTransition","resolvedTransition","delayedTransition","formatTransition","getStateNodes","getStateNode","subStateKeys","subStateNodes","subStateKey","handles","stateFromConfig","transitionLeafNode","transitionCompoundNode","_transition","transitionParallelNode","transitionMap","stateTransitions","enabledTransitions","st","willTransition","exitSet","selectedTransition","nextStateNodes","candidate","stateIn","in","isInState","getStateNodeById","guardPassed","allNextStateNodes","getRelativeStateNodes","internal","targetNode","getPotentiallyReenteringNodes","possibleAncestor","getActions","resolvedConfig","isDone","prevConfig","entrySet","prevConfig_1","prevConfig_1_1","entryStates","exitStates","doneEvents","grandparent","entryActions","invokeActions","stopActions","resolvedStateValue","getResolvedPath","stateTransition","resolveTransition","resolveRaisedTransition","originalEvent","currentActions","resolvedConfiguration","start$1","truthy","falsy","items_1","items_1_1","partition","raisedEvents","nonRaisedActions","invokeDefinition","invokeSrc","createInvocableActor","didUpdateContext","hasAlwaysTransitions","maybeNextState","raisedEvent","stateKey","resolvedStateId","STATE_IDENTIFIER","getStateNodeByPath","arrayStatePath","currentStateNode","subStateNode","stateIdentifier","getInitialState","historyConfig","relativeStateId","resolveHistory","initialPath","getFromRelativePath","relativePath","childStatePath","relativeStateValue","historyTarget","relativeChildPath","accessorProp","subHistoryValue","props_2","props_2_1","subStatePath","childStateIds","stateIds","resolveTarget","_target","isInternalTarget","transitionConfig","normalizedTarget","normalizeTarget","onConfig","wildcardConfigs","strictTransitionConfigs_1","transitionConfigArray","hasNonLastUnguardedTarget","eventText","validateArrayifiedTransitions","eventlessConfig","doneConfig","settleTransitions","formattedTransitions","delayedTransitions_1","delayedTransitions_1_1","warned","createMachine","sendUpdate$1","forwardTo$1","sanitizePhoneNumber","phoneNumber","selectUserAttributes","getSignUpInput","formValues","loginMechanism","pickBy","country_code","getUserAttributes","autoSignIn","clearActorDoneData","actorDoneData","clearChallengeName","clearMissingAttributes","clearError","clearFormValues","clearTouched","touched","clearUser","clearValidationError","setTotpSecretCode","_data$nextStep$totpSe","_data$nextStep","sharedSecret","nextStep","totpSetupDetails","setSignInStep","setShouldVerifyUserAttributeStep","setConfirmAttributeCompleteStep","setChallengeName","signInStep","setUsernameForgotPassword","setUsernameSignUp","setUsernameSignIn","setNextSignInStep","setNextSignUpStep","signUpStep","setNextResetPasswordStep","resetPasswordStep","setMissingAttributes","_data$nextStep2","setFieldErrors","setRemoteError","setUser","resolveCodeDeliveryDetails","details","Destination","DeliveryMedium","deliveryMedium","AttributeName","attributName","setCodeDeliveryDetails","_data$nextStep3","handleInput","handleSubmit","ignored","setUnverifiedUserAttributes","clearSelectedUserAttribute","selectedUserAttribute","setSelectedUserAttribute","_context$formValues","unverifiedAttr","ACTIONS","setConfirmSignUpSignUpStep","SIGN_IN_STEP_MFA_CONFIRMATION","GUARDS","hasCompletedAttributeConfirmation","hasCompletedResetPassword","hasCompletedSignIn","hasCompletedSignUp","isConfirmSignUpStep","isConfirmUserAttributeStep","isResetPasswordStep","isShouldConfirmUserAttributeStep","isUserAlreadyConfirmed","shouldAutoSignIn","shouldConfirmResetPassword","shouldConfirmSignIn","shouldConfirmSignInWithNewPassword","shouldConfirmSignUp","shouldConfirmSignUpFromSignIn","shouldResetPassword","shouldResetPasswordFromSignIn","shouldSetupTotp","shouldVerifyAttribute","phone_number_verified","email_verified","runValidators","formData","touchData","passwordSettings","validators","validator","mergedError","AmplifyErrorCode","converter","defaultAttributes","expires","toUTCString","stringifiedAttributes","cookie","cookies","jar","parts","found","withAttributes","withConverter","CookieStorage","sameSite","secure","setItem","JsCookie","getData","getItem","removeItem","promises","PlatformNotSupportedError","PlatformNotSupported","KeyValueStorage","InMemoryStorage","_this$storage$get","defaultStorage","localStorage","composeServiceApi","sessionStorage","serializer","deserializer","defaultConfig","endpointResolver","assertServiceError","Unknown","defaultPartition","outputs","dnsSuffix","regionRegex","regions","partitionsInfo","partitions","getDnsSuffix","SERVICE_NAME","cognitoUserPoolTransferHandler","disableCacheMiddlewareFactory","_Amplify$getConfig$Au","customURL","userPoolEndpoint","defaultURL","buildUserPoolSerializer","getSharedHeaders","buildHttpRpcRequest","buildUserPoolDeserializer","handleEmptyResponseDeserializer","initiateAuth","revokeToken","confirmForgotPassword","respondToAuthChallenge","resendConfirmationCode","verifySoftwareToken","associateSoftwareToken","getUser","confirmDevice","getUserAttributeVerificationCode","globalSignOut","verifyUserAttribute","getRegion","getRegionFromIdentityPoolId","getUserContextData","amazonCognitoAdvancedSecurityData","AmazonCognitoAdvancedSecurityData","advancedSecurityData","EncodedData","refreshAuthTokensFunction","_tokens$deviceMetadat","_authConfig$Cognito","_AuthenticationResult","refreshTokenString","AuthParameters","REFRESH_TOKEN","DEVICE_KEY","UserContextData","AuthenticationResult","ClientId","AuthFlow","AccessToken","IdToken","iat","refreshAuthTokens","asyncFunction","inflightPromise","deDupeAsyncFunction","AuthTokenStorageKeys","oidcProvider","randomPasswordKey","TokenProviderErrorCode","InvalidAuthTokens","DefaultTokenStore","getKeyValueStorage","keyValueStorage","setKeyValueStorage","setAuthConfig","loadTokens","_await$this$getKeyVal","_await$this$getKeyVal2","_await$this$getDevice","authKeys","getAuthKeys","accessTokenString","itString","clockDriftString","getDeviceMetadata","getLastAuthUser","storeTokens","clearTokens","lastAuthUser","getLastAuthUserKey","clearDeviceMetadata","_this$authConfig","createKeysForAuthStorage","_this$authConfig2","identifier","_await$this$getKeyVal3","getAuthStorageKeys","authKey","V5_HOSTED_UI_KEY","DefaultOAuthStore","clearOAuthInflightData","clearOAuthData","loadOAuthState","storeOAuthState","loadPKCE","storePKCE","pkce","authConfigParam","loadOAuthInFlight","storeOAuthInFlight","inflight","loadOAuthSignIn","_await$this$keyValueS","_await$this$keyValueS2","isLegacyHostedUISignIn","isOAuthSignIn","preferPrivateSession","storeOAuthSignIn","oAuthStore","inflightPromises","resolveAndClearInflightPromises","_inflightPromises$pop","TokenOrchestrator","waitForInflightOAuth","_reject","setTokenRefresher","tokenRefresher","setAuthTokenStore","tokenStore","getTokenStore","getTokenRefresher","_tokens","_tokens$clockDrift","_tokens$accessToken$p","_tokens$clockDrift2","_tokens2","_tokens3","_tokens4","_err","idTokenExpired","accessTokenExpired","refreshTokens","newTokens","setTokens","handleErrors","cognitoUserPoolsTokenProvider","authTokenStore","tokenOrchestrator","IdentityIdStorageKeys","cognitoIdentityTransferHandler","deserializeCredentials","AccessKeyId","SecretKey","SessionToken","Expiration","getCredentialsForIdentity","getCredentialsForIdentitySerializer","IdentityId","Credentials","getId","getIdSerializer","formLoginsMap","issuer","iss","generateIdentityId","logins","idResult","IdentityPoolId","Logins","CREDENTIALS_TTL","cognitoCredentialsProvider","identityIdStore","_nextCredentialsRefresh","_identityIdStore","_credentialsAndIdentityId","clearIdentityId","getCredentialsOptions","tokenHasChanged","hasTokenChanged","loadIdentityId","generatedIdentityId","storeIdentityId","cognitoIdentityIdProvider","assertIdTokenInAuthTokens","credsForOIDCTokens","getGuestCredentials","isPastTTL","isAuthenticatedCreds","clientResult","expiration","identityIdRes","authTokens","_authTokens$idToken","associatedIdToken","_this$_credentialsAnd","_authKeys","_primaryIdentityId","storedIdentityId","DefaultAmplify","resourceConfig","ssr","getDeviceName","userAgentData","platformVersion","architecture","fullVersionList","getHighEntropyValues","versionList","brand","AssociateSoftwareTokenException","ChangePasswordException","ConfirmDeviceException","ConfirmForgotPasswordException","ConfirmSignUpException","DeleteUserAttributesException","DeleteUserException","ForgetDeviceException","ForgotPasswordException","GetUserException","GetIdException","GetCredentialsForIdentityException","GetUserAttributeVerificationException","GlobalSignOutException","InitiateAuthException","ResendConfirmationException","RespondToAuthChallengeException","SetUserMFAPreferenceException","SignUpException","UpdateUserAttributesException","VerifySoftwareTokenException","VerifyUserAttributeException","UpdateDeviceStatusException","ListDevicesException","AuthValidationErrorCode","EmptyChallengeResponse","EmptyConfirmResetPasswordUsername","EmptyConfirmSignUpCode","EmptyConfirmSignUpUsername","EmptyConfirmResetPasswordConfirmationCode","EmptyConfirmResetPasswordNewPassword","EmptyResendSignUpCodeUsername","EmptyResetPasswordUsername","EmptySignInPassword","EmptySignInUsername","EmptySignUpPassword","EmptySignUpUsername","CustomAuthSignInPassword","IncorrectMFAMethod","EmptyVerifyTOTPSetupCode","EmptyUpdatePassword","EmptyConfirmUserAttributeCode","AuthErrorStrings","AuthErrorCodes","getAuthUserAgentValue","defaultState","signInSession","signInStore","reducer","getState","createStore","signInReducer","setActiveSignInState","cleanActiveSignInState","textEncoder","BigInteger","nbi","dbits","inBrowser","appName","am","xl","DB","DM","DV","FV","F1","F2","BI_RM","BI_RC","rr","vv","int2char","intAt","nbv","fromInt","nbits","Montgomery","mp","invDigit","mpl","mph","um","mt2","dlShiftTo","divRemTo","compareTo","ZERO","subTo","revert","copyTo","u0","drShiftTo","mulTo","multiplyTo","sqrTo","squareTo","lShiftTo","bs","cbs","bm","ds","rShiftTo","pm","pt","ts","nsh","ys","y0","yt","d1","d2","ONE","addTo","negate","km","bitLength","subtract","multiply","divide","modPow","k1","g2","is1","r2","getBytesFromHex","encoded","getHexFromBytes","getHashFromData","hashedData","hashHexFromUint8","getHashFromHex","hexStr","HEX_MSB_REGEX","getPaddedHex","bigInt","isNegative","invertedNibbles","invertedNibble","WordArray","sigBytes","Words","nBytes","wordArray","hexChars","bite","hexStringify","getRandomBytes","AuthenticationHelper","userPoolName","encoder","getRandomPassword","getSaltToHashDevices","saltToHashDevices","getVerifierDevices","verifierDevices","generateHashDevice","combinedString","hashedString","hexRandom","getPasswordAuthenticationKey","serverBValue","salt","calculateU","usernamePassword","usernamePasswordHash","outerErr","outerResult","innerErr","innerResult","calculateS","spacer","hkdfKey","getHkdfKey","ikm","awsCryptoHash","resultFromAWSCryptoPrk","awsCryptoHashHmac","getAuthenticationHelper","generateRandomBigInteger","calculateA","MONTH_NAMES","WEEK_NAMES","getNowString","weekDay","getUTCDay","getUTCMonth","day","getUTCDate","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","year","getUTCFullYear","getSignatureString","challengeParameters","dateNow","hkdf","bufUPIDaToB","bufUNaToB","bufSBaToB","urlB64ToUint8Array","SECRET_BLOCK","bufDNaToB","bufConcat","resultFromAWSCrypto","base64String","rawData","outputArray","USER_ATTRIBUTES","handleCustomChallenge","challengeResponse","clientMetadata","challengeResponses","USERNAME","ANSWER","jsonReq","ChallengeName","ChallengeResponses","Session","ClientMetadata","handleDeviceSRPAuth","handleUserPasswordAuthFlow","_response$ChallengePa","_response$ChallengePa2","_response$ChallengePa3","authParameters","activeUsername","ChallengeParameters","USER_ID_FOR_SRP","setActiveSignInUsername","handleCustomAuthFlowWithoutSRP","_response$ChallengePa4","_response$ChallengePa5","clientId","authenticationHelper","jsonReqResponseChallenge","SRP_A","respondedChallengeParameters","_challengeParameters$3","SRP_B","SALT","PASSWORD_CLAIM_SECRET_BLOCK","TIMESTAMP","PASSWORD_CLAIM_SIGNATURE","handleDevicePasswordVerifier","handlePasswordVerifierChallenge","getSignInResult","isSignedIn","additionalInfo","challengeParams","mfaType","MFAS_CAN_SETUP","mfaTypes","getMFATypes","parseMFATypes","isMFATypeEnabled","SignInException","SecretCode","secretCode","getTOTPSetupDetails","parseAttributes","requiredAttributes","allowedMFATypes","MFAS_CAN_CHOOSE","CODE_DELIVERY_DELIVERY_MEDIUM","CODE_DELIVERY_DESTINATION","getSetupUri","accountName","totpUri","getSignInResultFromError","errorName","PasswordResetRequiredException","UserNotConfirmedException","att","createAttributes","newAttributes","handleChallengeName","deviceName","friendlyDeviceName","SMS_MFA_CODE","handleSMSMFAChallenge","mapMfaType","handleSelectMFATypeChallenge","UserCode","FriendlyDeviceName","handleMFASetupChallenge","handleCompleteNewPasswordChallenge","retryOnResourceNotFoundException","SOFTWARE_TOKEN_MFA_CODE","handleSoftwareTokenMFAChallenge","getMFAType","assertUserNotAuthenticated","getNewDeviceMetatada","newDeviceMetadata","DeviceKey","DeviceGroupKey","errGenHash","deviceSecretVerifierConfig","Salt","PasswordVerifier","DeviceName","DeviceSecretVerifierConfig","getActiveSignInUsername","_state$username","cacheCognitoTokens","accessTokenIssuedAtInMillis","currentTime","RefreshToken","NewDeviceMetadata","dispatchSignedInHubEvent","signInWithCustomSRPAuth","loginId","authFlowType","metadata","handledChallengeName","handledChallengeParameters","_challengeParameters$2","CHALLENGE_NAME","handleCustomSRPAuthFlow","signInWithSRP","_input$options","clientMetaData","_challengeParameters$","handleUserSRPAuthFlow","retiredChallengeName","retriedChallengeParameters","signInWithUserPassword","retriedChallengeName","retiredChallengeParameters","signInWithCustomAuth","toAttributeType","Value","initialAutoSignIn","setAutoSignIn","resetAutoSignIn","MAX_AUTOSIGNIN_POLLING_MS","debounce","fun","debouncedAutoSignInWithLink","signInInput","autoSignInPollingIntervalId","setAutoSignInStarted","signInOutput","debouncedAutoSignWithCodeOrUserConfirmed","usernameUsedForAutoSignIn","autoSignInStarted","setUsernameUsedForAutoSignIn","isAutoSignInStarted","isSignUpComplete","UserConfirmed","autoSignInWithCode","autoSignInUserConfirmed","resetPassword","Username","CodeDeliveryDetails","isPasswordReset","parseUserAttributes","isInvalidUserAtributes","defaultServices","getAmplifyConfig","_result$Auth","_result$Auth$Cognito","_result$Auth2","_loginWith$oauth","_loginWith$oauth$prov","cliConfig","_value","keyValueArray","handleSignIn","handleSignUp","_authConfig$signUpVer","validationData","signInServiceOptions","clientOutput","signUp$1","Password","UserAttributes","ValidationData","UserSub","stopHubListener","timeOutId","handleCodeAutoSignIn","autoSignInWhenUserIsConfirmedWithLink","handleConfirmSignIn","handleConfirmSignUp","confirmationCode","confirmSignUp$1","ConfirmationCode","ForceAliasCreation","forceAliasCreation","signUpOut","isAutoSignInUserUsingConfirmSignUp","stopListener","handleForgotPasswordSubmit","newPassword","handleForgotPassword","validateCustomSignUp","validateFormPassword","_passwordSettings$min","touched_password","password_complexity","policyMinLength","hasSpecialChars","validateConfirmPassword","touched_confirm_password","validatePreferredUsername","fetchUserAttributes","toAuthUserAttribute","fetchUserAttributes$1","resendSignUpCode","authErrorMessages","oauthSignInError","OAUTH_ERROR","noConfig","DEFAULT_MSG","missingAuthConfig","emptyUsername","EMPTY_USERNAME","invalidUsername","INVALID_USERNAME","emptyPassword","EMPTY_PASSWORD","emptyCode","EMPTY_CODE","signUpError","SIGN_UP_ERROR","noMFA","NO_MFA","invalidMFA","INVALID_MFA","emptyChallengeResponse","EMPTY_CHALLENGE","noUserSession","NO_USER_SESSION","deviceConfig","DEVICE_CONFIG","networkError","NETWORK_ERROR","autoSignInError","AUTOSIGNIN_ERROR","createOAuthError","OAuthSignInError","AuthErrorTypes","validateState","savedState","validatedState","completeOAuthFlow","currentUrl","redirectUri","urlParams","errorMessage","handleCodeFlow","handleImplicitFlow","oAuthTokenEndpoint","codeVerifier","oAuthTokenBody","grant_type","client_id","redirect_uri","code_verifier","access_token","refresh_token","id_token","error_message","token_type","expires_in","TokenType","ExpiresIn","completeFlow","_url$hash","error_description","pairings","accum","isCustomState","getCustomState","clearHistory","replaceState","redirects","_redirects$find","_redirects$find2","redirectUrlFromTheSameOrigin","isSameOriginAndPathName","isTheSameDomain","redirectUrlFromDifferentOrigin","isHttps","isHttp","redirect","handleFailure","attemptCompleteOAuthFlow","cognitoHostedUIIdentityProviderMap","Google","Facebook","Amazon","Apple","openAuthSession","_window","CODE_VERIFIER_CHARSET","generateCodeVerifier","randomBytes","codeChallenge","toCodeChallenge","base64Encoded","generateCodeChallenge","generateState","STATE_CHARSET","generateRandomString","signInWithRedirect","_input$provider","custom","oauthConfig","_await$openAuthSessio","randomState","padStart","identity_provider","code_challenge","code_challenge_method","oAuthUrl","store","handleCancelOAuthFlow","persisted","listenForOAuthFlowCancellation","getFederatedSignInState","handleSignInResponse","handleFetchUserAttributesResponse","handleResetPasswordResponse","handleAutoSignInResponse","handleOAuthSignOut","completeOAuthSignOut","signoutUri","oAuthLogoutEndpoint","logout_uri","oAuthSignOutRedirect","globalSignOut$1","isSessionRevocable","clientSignOut","_await$handleOAuthSig","_token$payload","origin_jti","signOutActor","sendUserAttributeVerificationCode","userAttributeKey","SendUserAttributeVerificationCode","verifyUserAttributesActor","edit","CHANGE","submit","confirmVerifyUserAttribute","ConfirmUserAttribute","Code","confirmUserAttribute","validateFields","defaultStep","_context$actorDoneDat","_context$actorDoneDat2","_context$config","_context$config2","_context$config3","_context$config4","_context$config5","stopActor","machineId","LEGACY_WAIT_CONFIG","SIGN_OUT","NEXT_WAIT_CONFIG","createAuthenticatorMachine","useNextWaitConfig","overrideConfigServices","hasSetup","idle","initConfig","goToInitialState","signInActor","runActor","SIGN_UP","signUpActor","forgotPasswordActor","TOKEN_REFRESH","refreshUser","SIGN_IN_WITH_REDIRECT","BLUR","FEDERATED_SIGN_IN","RESEND","forwardToActor","setActorDoneData","applyAmplifyConfig","_cliConfig$loginMecha","_cliConfig$signUpAttr","_cliConfig$socialProv","_cliConfig$passwordFo","_convertFormFields","_formFields","component","inputName","convertFormFields","spawnSignInActor","federatedSignIn","forceChangePassword","validation","valid","invalid","validate","handleResendSignUpCode","handleForceChangePassword","phoneNumberWithCountryCode","spawnSignUpActor","submission","validateSignUp","spawnForgotPasswordActor","handleResetPassword","handleConfirmResetPassword","spawnVerifyUserAttributesActor","spawnSignOutActor","_event$data","customServices","setHasSetup","hasActor","isInitialStateSignUp","isInitialStateResetPassword","shouldSetup","hasUser","handleGetCurrentUser","createHubHandler","AuthenticatorProvider","setAuthStatus","parentProviderVal","activeService","VERSION","useDeprecationWarning","shouldWarn","_shouldWarn","useDeprecationWarning$1","CustomComponentsContext","useCustomComponents","providerNameMap","amazon","apple","facebook","google","authenticatorTextUtil","getBackToSignInText","getChangePasswordText","getChangingText","getConfirmText","getConfirmingText","getCopyText","getHidePasswordText","getLoadingText","getOrText","getResendCodeText","getSendCodeText","getSendingText","getShowPasswordText","getSubmitText","getSubmittingText","getSignInTabText","getSignUpTabText","getForgotPasswordText","shortVersion","getSigningInText","getSignInText","getCreatingAccountText","getCreateAccountText","getDeliveryMessageText","isEmailMessage","isTextMessage","arrivalMessage","instructionMessage","getDeliveryMethodText","getChallengeText","getResetYourPasswordText","getSetupTotpText","getSetupTotpInstructionsText","getCopiedText","getSignInWithFederationText","getSkipText","getVerifyText","getVerifyContactText","getAccountRecoveryInfoText","getInvalidEmailText","getRequiredFieldText","ComponentClassName","primitiveWithForwardRef","primitive","FieldsetContext","isFieldsetDisabled","useFieldset","CSS_VARIABLE_PREFIX","SHADOW_PROPERTIES","referenceValue","cssNameTransform","isDesignToken","isShadowTokenObject","setupTokens","setupToken","nextTokens","ComponentPropsToStylePropsMap","alignContent","alignItems","alignSelf","autoColumns","autoFlow","autoRows","backgroundImage","basis","borderColor","borderWidth","borderStyle","boxShadow","columnEnd","columnGap","columnSpan","columnStart","fontFamily","fontSize","fontStyle","gap","grow","justifyContent","letterSpacing","marginBlock","marginBlockEnd","marginBlockStart","marginBottom","marginInline","marginInlineEnd","marginInlineStart","marginRight","maxHeight","minHeight","objectFit","objectPosition","paddingBlock","paddingBlockEnd","paddingBlockStart","paddingBottom","paddingInline","paddingInlineEnd","paddingInlineStart","paddingLeft","paddingRight","paddingTop","resize","rowEnd","rowGap","rowSpan","rowStart","shrink","templateAreas","templateColumns","templateRows","textAlign","textDecoration","textTransform","transformOrigin","whiteSpace","borderWidths","small","medium","large","colors","red","orange","yellow","green","teal","blue","purple","pink","neutral","primary","secondary","font","tertiary","inverse","interactive","hover","active","quaternary","pressed","shadow","black","white","transparent","fontSizes","xxxs","xxs","xs","xxl","xxxl","xxxxl","fontWeights","hairline","thin","normal","semibold","bold","extrabold","opacities","radii","space","zero","relative","full","short","long","defaultTheme","components","accordion","trigger","_hover","_focus","offsetX","offsetY","blurRadius","spreadRadius","icon","transitionDuration","transitionTimingFunction","alert","heading","authenticator","container","widthMax","router","footer","inactive","orContainer","orLine","menu","flexDirection","option","cursor","transitionProperty","_active","_empty","_loading","spaceShared","badge","paddingVertical","paddingHorizontal","breadcrumbs","flexWrap","_disabled","outlined","destructive","loaderWrapper","elevated","checkbox","outlineColor","outlineStyle","outlineWidth","outlineOffset","_checked","_indeterminate","checkboxfield","pagination","svg","fill","toolTip","countrycodeselect","divider","dropzone","accepted","fieldcontrol","quiet","borderInlineStart","borderInlineEnd","borderBlockStart","borderBlockEndColor","fieldgroup","fieldmessages","fieldset","legend","highlightmatch","highlighted","inappmessaging","banner","dialog","header","visited","liveness","cameraModule","loader","strokeEmpty","strokeFilled","strokeLinecap","animationDuration","linear","dismiss","plain","filled","ellipsis","itemContainer","itemShared","passwordfield","phonenumberfield","startColor","endColor","radio","radiogroup","rating","searchfield","select","wrapper","iconWrapper","pointerEvents","expanded","selectfield","sliderfield","thumb","stepperfield","storagemanager","file","filelist","previewer","switchfield","_focused","borderCollapse","verticalAlign","foot","striped","caption","captionSide","wordBreak","tabs","panel","textareafield","textfield","togglebutton","_pressed","togglebuttongroup","fonts","static","lineHeights","outlineOffsets","outlineWidths","shadows","transforms","slideX","defaultBreakpoint","ComponentText","Alert","dismissButtonLabel","Autocomplete","emptyText","loadingText","Collection","searchButtonLabel","searchNoResultsFound","Fields","clearButtonLabel","dismissLabel","PaginationItem","currentPageLabel","nextLabel","pageLabel","previousLabel","PhoneNumberField","countryCodeLabel","SearchField","PasswordField","passwordIsHidden","passwordIsShown","showPassword","StepperField","increaseButtonLabel","decreaseButtonLabel","stylePropsToThemeKeys","isEmptyString","isNullOrEmptyString","objectKeys","getCSSVariableIfValueIsThemeKey","propKey","tokenProps","getValueAtCurrentBreakpoint","breakpointCompatValues","breakpointsAscending","breakpointsDesc","lowerBreakpoints","getClosestValueByBreakpoint","useIsomorphicEffect","useBreakpoint","mediaQueries","sortedBreakpoints","nextBreakpoint","getMediaQueries","setBreakpoint","updateBreakpoint","unsubscribeList","queryList","handleMediaChange","original","cssValue","createColorPalette","createTheme","theme","mergedTheme","primaryColor","secondaryColor","cssText","overrides","override","customProperties","mediaQuery","colorMode","ThemeContext","useTheme","getThemeFromContext","getGridSpan","spanValue","convertGridSpan","isSpanPrimitiveValue","convertStylePropsToStyleObj","nonStyleProps","reactStyleProp","getStyleValue","propStyles","useStyles","rowFromSpanValue","columnFromSpanValue","useTransformStyleProps","View","ViewPrimitive","as","ariaLabel","Flex","FlexPrimitive","CIRCUMFERENCE","Loader","LoaderPrimitive","filledColor","emptyColor","variation","isDeterminate","isPercentageTextHidden","percentage","percent","componentClasses","linearLoader","x1","x2","y1","y2","stroke","circularLoader","cx","cy","supportedVariations","Button","ButtonPrimitive","colorTheme","isFullWidth","isLoading","colorThemeModifier","shouldBeDisabled","headingLevels","Heading","HeadingPrimitive","isTruncated","Text","TextPrimitive","getFormDataFromEvent","useFormHandlers","handleChange","IconsContext","useIcons","IconCheckCircle","xmlns","IconError","IconInfo","IconWarning","AlertIcon","_icons$info","_icons$error","_icons$warning","_icons$success","ariaHidden","icons","IconClose","AlertPrimitive","_icons$close","buttonRef","hasIcon","isDismissible","onDismiss","dismissed","setDismissed","dismissAlert","RemoteErrorMessage","VisuallyHidden","VisuallyHiddenPrimitive","IconVisibilityOff","IconVisibility","ShowPasswordButton","ShowPasswordButtonPrimitive","_icons$visibility","_icons$visibilityOff","passwordIsHiddenLabel","passwordIsShownLabel","showPasswordButtonLabel","hasError","showPasswordButtonClass","visibility","visibilityOff","FieldDescription","descriptiveText","labelHidden","FieldErrorMessage","FieldGroup","FieldGroupPrimitive","innerEndComponent","innerStartComponent","orientation","outerEndComponent","outerStartComponent","Input","InputPrimitive","autoComplete","readOnly","Label","LabelPrimitive","visuallyHidden","splitPrimitiveProps","splitProps","styleProps","isStyleKey","useReactId","useStableId","stableId","setStableId","reactId","TextField","TextFieldPrimitive","inputStyles","_rest","fieldId","descriptionId","ariaDescribedBy","htmlFor","PasswordFieldPrimitive","hideShowPassword","showPasswordButtonRef","setType","showPasswordOnClick","IconExpandMore","Select","SelectPrimitive","iconColor","isMultiple","selectSize","shouldSetDefaultPlaceholderValue","isExpanded","expand","SelectField","SelectFieldPrimitive","selectFieldChildren","DialCodeSelect","DialCodeSelectPrimitive","dialList","dialCodeOptions","PhoneNumberFieldPrimitive","defaultDialCode","dialCodeLabel","dialCodeName","dialCodeRef","onDialCodeChange","onInput","ValidationErrors","dataAttr","dataAttrProp","FormField","errorId","autoCapitalize","FormFields","hasTabs","RouteContainer","Header","Footer","onSubmit","DefaultHeader","ForceNewPassword","onBlur","ConfirmSignInFooter","SetupTotp","setIsLoading","qrCode","setQrCode","copyTextLabel","setCopyTextLabel","totpIssuer","totpUsername","generateQRCode","totpCode","getTotpCodeURL","encodeURI","qrCodeImageSource","alt","copyText","clipboard","writeText","TabsContext","activeTab","setActiveTab","TabsItem","TabsItemPrimitive","isTypedFunction","TabList","TabListPrimitive","indicatorPosition","spacing","internalRef","isValidTab","nextTab","_internalRef$current$","_internalRef$current","elems","click","prevTab","_internalRef$current$2","_internalRef$current2","prevIndex","TabPanel","TabPanelPrimitive","isLazy","TabsContainer","TabsContainerPrimitive","controlledValue","onValueChange","isControlled","localValue","setLocalValue","Tabs","TabsPrimitive","Item","List","Panel","Container","FederatedIdentityProviders","UnverifiedContactMethodType","Divider","DividerPrimitive","defaultViewBox","minX","minY","Icon","IconPrimitive","pathData","_children","AppleIcon","preserveAspectRatio","GoogleIcon","FacebookIcon","AmazonIcon","fillRule","clipRule","FederatedSignInButton","iconComponent","FederatedSignIn","DefaultFooter","SignInSignUpTabs","hideSignUp","TwoButtonSubmitFooter","cancelButtonSendType","cancelButtonText","submitButtonText","defaultSubmitText","submitText","ConfirmVerifyUser","RadioGroupContext","Radio","RadioPrimitive","labelPosition","radioLabelPosition","currentValue","isGroupDisabled","groupLabelPosition","Fieldset","FieldsetPrimitive","legendHidden","fieldsetClasses","legendClasses","RadioGroupField","RadioGroupFieldPrimitive","radioGroupTestId","getTestId","radioGroupContextValue","VerifyUser","footerSubmitText","verificationRadioGroup","verificationType","censorContactMethod","censorPhoneNumber","splitEmail","censoredName","censorAllButFirstAndLast","censorEmail","headerText","ForgotPassword","isSignInOrSignUpRoute","RenderNothing","getRouteComponent","Router","RouterChildren","defaultComponents","AuthenticatorInternal","customComponents","hasInitialized","useAuthenticatorInitMachine","Authenticator","useSetUserAgent","_objectSpread2","_slicedToArray","_arrayWithHoles","_s","_n","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_toConsumableArray","_arrayLikeToArray","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","minLen","arr2","_WINDOW","_DOCUMENT","_MUTATION_OBSERVER","_PERFORMANCE","mark","measure","_familyProxy","_familyProxy2","_familyProxy3","_familyProxy4","_familyProxy5","_ref$userAgent","WINDOW","MUTATION_OBSERVER","PERFORMANCE","IS_DOM","IS_IE","NAMESPACE_IDENTIFIER","UNITS_IN_GRID","DEFAULT_CSS_PREFIX","DEFAULT_REPLACEMENT_CLASS","DATA_FA_I2SVG","DATA_FA_PSEUDO_ELEMENT","DATA_FA_PSEUDO_ELEMENT_PENDING","DATA_PREFIX","DATA_ICON","HTML_CLASS_I2SVG_BASE_CLASS","MUTATION_APPROACH_ASYNC","TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS","PRODUCTION","FAMILY_CLASSIC","FAMILY_SHARP","FAMILIES","familyProxy","PREFIX_TO_STYLE","STYLE_TO_PREFIX","solid","regular","duotone","brands","kit","PREFIX_TO_LONG_STYLE","fab","fad","fak","fal","far","fas","fat","fass","fasr","fasl","fast","LONG_STYLE_TO_PREFIX","ICON_SELECTION_SYNTAX_PATTERN","LAYERS_TEXT_CLASSNAME","FONT_FAMILY_PATTERN","FONT_WEIGHT_TO_PREFIX","oneToTen","oneToTwenty","ATTRIBUTES_WATCHED_FOR_MUTATION","DUOTONE_CLASSES","GROUP","SWAP_OPACITY","PRIMARY","SECONDARY","prefixes","RESERVED_CLASSES","FontAwesomeConfig","coerce","getAttrConfig","_default","styleDefault","familyDefault","cssPrefix","replacementClass","autoReplaceSvg","autoAddCss","autoA11y","searchPseudoElements","observeMutations","mutateApproach","keepOriginalSource","measurePerformance","showMissingIcons","familyPrefix","_onChangeCb","meaninglessTransform","rotate","flipX","flipY","idPool","nextUniqueId","classArray","htmlEscape","joinStyles","styleName","transformIsMeaningful","baseStyles","css","dcp","drc","fp","dPatt","customPropPatt","rPatt","_cssInserted","ensureCss","headChildren","beforeChild","insertCss","InjectCSS","mixout","dom","hooks","beforeDOMElementCreation","beforeI2svg","shims","namespace","functions","toHtml","abstractNodes","_abstractNodes$attrib","_abstractNodes$childr","joinAttributes","iconFromMapping","mapping","iconName","doScroll","subject","thisContext","bindInternal4","unicode","decoded","extra","ucs2decode","normalizeIcons","defineIcons","_params$skipHooks","skipHooks","addPack","_LONG_STYLE","_PREFIXES","_PREFIXES_FOR_FAMILY","LONG_STYLE","_defaultUsablePrefix","_byUnicode","_byLigature","_byOldName","_byOldUnicode","_byAlias","PREFIXES","getIconName","build","lookup","aliases","hasRegular","autoFetchSvg","shimLookups","maybeNameMaybeUnicode","names","unicodes","getCanonicalPrefix","family","byUnicode","byAlias","byOldName","getDefaultUsablePrefix","emptyCanonicalIcon","styleOrPrefix","_params$family","defined","PREFIXES_FOR_FAMILY","getCanonicalIcon","_famProps","_params$skipLookups","skipLookups","famProps","givenPrefix","canonical","aliasIconName","Library","additions","_pullDefinitions","longPrefix","_normalized$key","_plugins","_hooks","defaultProviderKeys","chainHooks","hook","hookFn","callHooks","callProvided","findIconDefinition","iconLookup","library","i2svg","watch","autoReplaceSvgRoot","autoReplace","_icon","canonicalIcon","_prefix","noAuto","_params$autoReplaceSv","domVariants","abstractCreator","abstract","html","makeInlineSvgAbstract","_params$icons","main","title","maskId","titleId","_params$watchable","watchable","isUploadedIcon","attrClass","uploadedIconWidthStyle","asSymbol","asIcon","makeLayersTextAbstract","_params$watchable2","_ref2$width","_ref2$height","_ref2$startCentered","startCentered","transformForCss","styleString","class","styles$1","asFoundIcon","vectorData","missingIconResolutionMixin","findIcon","maybeNotifyMissing","noop$1","preamble","perf","begin","noop$2","isWatched","convertSVG","abstractObj","_params$ceFn","ceFn","mutators","mutation","_abstract","comment","createComment","outerHTML","nodeAsComment","replaceChild","nest","_abstract2","forSvg","splitClasses","toSvg","toNode","newInnerHTML","performOperationSync","perform","callbackFunction","frame","mutator","disableObservation","enableObservation","mo","_options$treeCallback","treeCallback","_options$nodeCallback","nodeCallback","_options$pseudoElemen","pseudoElementsCallback","_options$observeMutat","observeMutationsRoot","defaultPrefix","mutationRecord","addedNodes","hasPrefixAndIcon","_getCanonicalIcon","hasBeenReplaced","classParser","existingPrefix","existingIconName","ligature","byLigature","Node","TEXT_NODE","parseMeta","parser","styleParser","_classParser","extraClasses","extraAttributes","attributesParser","pluginMeta","extraStyles","styles$2","generateMutation","nodeMeta","knownPrefixes","onTree","hclAdd","suffix","hclRemove","prefixesDomQuery","resolvedMutations","onNode","resolveIcons","maybeIconDefinition","iconDefinition","_params$transform","_params$symbol","_params$mask","_params$maskId","_params$title","_params$titleId","_params$classes","_params$attributes","_params$styles","ReplaceElements","mutationObserverCallbacks","provides","providers$$1","_params$node","_params$callback","generateSvgReplacementMutation","generateAbstractIcon","nextChild","containerWidth","iconWidth","Layers","layer","assembler","LayersCounter","makeLayersCounterAbstract","LayersText","generateLayersText","computedFontSize","boundingClientRect","getBoundingClientRect","CLEAN_CONTENT_PATTERN","SECONDARY_UNICODE_RANGE","replaceForPosition","pendingAttribute","alreadyProcessedPseudoElement","_content","_hexValueFromContent","cleaned","codePoint","first","codePointAt","isPrependTen","isDoubled","isSecondary","hexValueFromContent","isV4","iconIdentifier","iconName4","oldUnicode","newUnicode","byOldUnicode","processable","PseudoElements","pseudoElements2svg","_unwatched","parseTransformString","transformString","PowerTransforms","parseNodeAttributes","generateAbstractTransformGrouping","innerTranslate","innerScale","innerRotate","ALL_SPACE","fillBlack","force","Masks","maskData","generateAbstractMask","explicitMaskId","mainWidth","mainPath","maskWidth","maskPath","trans","transformForSvg","maskRect","maskInnerGroupChildrenMixin","maskInnerGroup","maskOuterGroup","clipId","maskTag","maskUnits","maskContentUnits","defs","MissingIconIndicator","reduceMotion","missingIconAbstract","gChildren","FILL","ANIMATION_BASE","attributeType","repeatCount","dur","OPACITY_ANIMATE","dot","plugins","unwatch","bootstrap","symbolData","nextPlugins","mixoutsTo","registerPlugins","library$1","parse$1","camelize","chr","_excluded","normalizeIconArgs","objectWithKey","fixedWidth","flip","listItem","pulse","rotation","spin","spinPulse","spinReverse","beat","beatFade","bounce","shake","swapOpacity","FontAwesomeIcon","allProps","iconArgs","maskArgs","_classes","flash","renderedIcon","_console","extraProps","convertCurry","mixins","attrs","_extraProps$style","existingStyle","faCircleChevronRight","faChevronCircleRight","faTrashCan","faTrashAlt","faUserXmark","faUserTimes","faMessage","faCommentAlt","faDownLeftAndUpRightToCenter","faCompressAlt","faFileLines","faFileAlt","faFileText","faCalendarDays","faCalendarAlt","faVolleyball","faVolleyballBall","faSortDown","faSortDesc","faCircleMinus","faMinusCircle","faRightFromBracket","faSignOutAlt","faIcons","faHeartMusicCameraBolt","faMicrophoneLinesSlash","faMicrophoneAltSlash","faMagnifyingGlassLocation","faSearchLocation","faForwardStep","faStepForward","faFaceSmileBeam","faSmileBeam","faFootball","faFootballBall","faAnglesDown","faAngleDoubleDown","faBeerMugEmpty","faBeer","faArrowUpLong","faLongArrowUp","faFireFlameSimple","faBurn","faPerson","faMale","faFaceGrinStars","faGrinStars","faSpaghettiMonsterFlying","faPastafarianism","faSpoon","faUtensilSpoon","faEnvelopesBulk","faMailBulk","faCircleH","faHospitalSymbol","faAddressBook","faContactBook","faPencil","faPencilAlt","faPaste","faFileClipboard","faTruckRampBox","faTruckLoading","faScrollTorah","faTorah","faBroomBall","faQuidditch","faQuidditchBroomBall","faBoxArchive","faArchive","faArrowDown91","faSortNumericDesc","faSortNumericDownAlt","faFaceGrinTongueSquint","faGrinTongueSquint","faEarthAfrica","faGlobeAfrica","faTabletScreenButton","faTabletAlt","faFaceFlushed","faFlushed","faGavel","faLegal","faBellConcierge","faConciergeBell","faPenRuler","faPencilRuler","faPeopleArrows","faPeopleArrowsLeftRight","faSquareCaretRight","faCaretSquareRight","faScissors","faCut","faTachographDigital","faDigitalTachograph","faReply","faMailReply","faSquareMinus","faMinusSquare","faSquareCaretDown","faCaretSquareDown","faBars","faNavicon","faHourglassEnd","faHourglass3","faHeartCrack","faHeartBroken","faSquareUpRight","faExternalLinkSquareAlt","faFaceKissBeam","faKissBeam","faLightbulb","faCircleExclamation","faExclamationCircle","faArrowRightFromBracket","faSignOut","faCircleChevronDown","faChevronCircleDown","faUnlockKeyhole","faUnlockAlt","faHeadphonesSimple","faHeadphonesAlt","faCircleDollarToSlot","faDonate","faVolumeLow","faVolumeDown","faWheatAwn","faWheatAlt","faSquareCheck","faCheckSquare","faHeading","faHeader","faList","faListSquares","faSquarePhoneFlip","faPhoneSquareAlt","faCircleDot","faDotCircle","faFaceDizzy","faDizzy","faFutbol","faFutbolBall","faSoccerBall","faPaintbrush","faPaintBrush","faHotTubPerson","faHotTub","faMapLocation","faMapMarked","faPenToSquare","faEdit","faShareNodes","faShareAlt","faHourglassHalf","faHourglass2","faBagShopping","faShoppingBag","faArrowDownZA","faSortAlphaDesc","faSortAlphaDownAlt","faHand","faHandPaper","faFaceKiss","faKiss","faFaceGrinTongue","faGrinTongue","faFaceGrinWink","faGrinWink","faEarDeaf","faDeaf","faDeafness","faHardOfHearing","faSquareRss","faRssSquare","faHryvniaSign","faHryvnia","faFaceGrinWide","faGrinAlt","faStaffSnake","faRodAsclepius","faRodSnake","faStaffAesculapius","faTruckMedical","faAmbulance","faTemperatureHalf","faTemperature2","faThermometer2","faThermometerHalf","faPooStorm","faPooBolt","faFaceFrownOpen","faFrownOpen","faFolder","faFolderBlank","faFileWaveform","faFileMedicalAlt","faGauge","faDashboard","faGaugeMed","faTachometerAltAverage","faWandMagicSparkles","faMagicWandSparkles","faPenClip","faPenAlt","faVanShuttle","faShuttleVan","faSquareCaretLeft","faCaretSquareLeft","faChartArea","faAreaChart","faBan","faCancel","faSprayCanSparkles","faAirFreshener","faArrowPointer","faMousePointer","faMaximize","faExpandArrowsAlt","faShapes","faTriangleCircleSquare","faShuffle","faRandom","faPersonRunning","faRunning","faComputerMouse","faMouse","faArrowRightToBracket","faSignIn","faShopSlash","faStoreAltSlash","faHourglassStart","faHourglass1","faRightToBracket","faSignInAlt","faHeartPulse","faHeartbeat","faPeopleCarryBox","faPeopleCarry","faMicrochip","faWeightScale","faWeight","faUserGroup","faUserFriends","faArrowUpAZ","faSortAlphaUp","faFaceLaughSquint","faLaughSquint","faCircleArrowUp","faArrowCircleUp","faPersonWalking","faWalking","faBedPulse","faProcedures","faShuttleSpace","faSpaceShuttle","faFaceLaugh","faLaugh","faMicrophoneLines","faMicrophoneAlt","faMarsStrokeUp","faMarsStrokeV","faChampagneGlasses","faGlassCheers","faFileArrowUp","faFileUpload","faWifi","faWifi3","faWifiStrong","faBath","faBathtub","faUserPen","faUserEdit","faBorderTopLeft","faBorderStyle","faMapLocationDot","faMapMarkedAlt","faSquarePollVertical","faPoll","faCarBattery","faBatteryCar","faMarsStrokeRight","faMarsStrokeH","faHandBackFist","faHandRock","faSquareCaretUp","faCaretSquareUp","faChartBar","faBarChart","faHandsBubbles","faHandsWash","faEyeLowVision","faLowVision","faSquarePlus","faPlusSquare","faMartiniGlass","faGlassMartiniAlt","faRotateLeft","faRotateBack","faRotateBackward","faUndoAlt","faTableColumns","faColumns","faDolly","faDollyBox","faMinimize","faCompressArrowsAlt","faAnglesRight","faAngleDoubleRight","faCirclePlay","faPlayCircle","faEuroSign","faEur","faEuro","faCircleCheck","faCheckCircle","faCircleStop","faStopCircle","faCompassDrafting","faDraftingCompass","faFaceLaughBeam","faLaughBeam","faCircleChevronUp","faChevronCircleUp","faSterlingSign","faGbp","faPoundSign","faArrowDownLong","faLongArrowDown","faReplyAll","faMailReplyAll","faPersonSkating","faSkating","faFilterCircleDollar","faFunnelDollar","faCircleArrowDown","faArrowCircleDown","faFileImport","faArrowRightToFile","faSquareArrowUpRight","faExternalLinkSquare","faTemperatureEmpty","faTemperature0","faThermometer0","faThermometerEmpty","faAddressCard","faContactCard","faVcard","faScaleUnbalancedFlip","faBalanceScaleRight","faDiamondTurnRight","faDirections","faHouseLaptop","faLaptopHouse","faFaceTired","faTired","faFontAwesome","faFontAwesomeFlag","faFontAwesomeLogoFull","faCloudArrowUp","faCloudUpload","faCloudUploadAlt","faSeedling","faSprout","faLeftRight","faArrowsAltH","faCircleArrowLeft","faArrowCircleLeft","faArrowDownWideShort","faSortAmountAsc","faSortAmountDown","faCloudBolt","faThunderstorm","faTextSlash","faRemoveFormat","faFaceSmileWink","faSmileWink","faArrowsLeftRight","faArrowsH","faCloudArrowDown","faCloudDownload","faCloudDownloadAlt","faChalkboard","faBlackboard","faUserLargeSlash","faUserAltSlash","faHandshakeSimpleSlash","faHandshakeAltSlash","faArrowsRotate","faRefresh","faSync","faShieldHalved","faShieldAlt","faBookAtlas","faAtlas","faHouseChimneyCrack","faHouseDamage","faFileZipper","faFileArchive","faMartiniGlassEmpty","faGlassMartini","faPersonSkiing","faSkiing","faTemperatureArrowDown","faTemperatureDown","faFeatherPointed","faFeatherAlt","faRectangleAd","faAd","faCircleArrowRight","faArrowCircleRight","faSort","faUnsorted","faListOl","faList12","faListNumeric","faMoneyCheckDollar","faMoneyCheckAlt","faFaceKissWinkHeart","faKissWinkHeart","faUpDownLeftRight","faArrowsAlt","faStarHalfStroke","faStarHalfAlt","faWhiskeyGlass","faGlassWhiskey","faArrowUpRightFromSquare","faExternalLink","faWonSign","faKrw","faWon","faTaxi","faCab","faChartPie","faPieChart","faFaceGrinBeam","faGrinBeam","faLocationPin","faMapMarker","faHelmetSafety","faHardHat","faHatHard","faCircleRight","faArrowAltCircleRight","faFaceRollingEyes","faMehRollingEyes","faChartLine","faLineChart","faSignsPost","faMapSigns","faScrewdriverWrench","faTools","faHouseUser","faHomeUser","faMartiniGlassCitrus","faCocktail","faFaceSurprise","faSurprise","faCirclePause","faPauseCircle","faAppleWhole","faAppleAlt","faTemperatureQuarter","faTemperature1","faThermometer1","faThermometerQuarter","faSquarePollHorizontal","faPollH","faBackwardFast","faFastBackward","faBasketball","faBasketballBall","faCircleUp","faArrowAltCircleUp","faMobileScreenButton","faMobileAlt","faVolumeHigh","faVolumeUp","faBurger","faHamburger","faRupeeSign","faRupee","faCircleQuestion","faQuestionCircle","faPhoneFlip","faPhoneAlt","faForwardFast","faFastForward","faFaceMehBlank","faMehBlank","faSquareParking","faParking","faBarsProgress","faTasksAlt","faCartFlatbed","faDollyFlatbed","faBanSmoking","faSmokingBan","faBasketShopping","faShoppingBasket","faBusSimple","faBusAlt","faFaceSadCry","faSadCry","faSignal","faSignal5","faSignalPerfect","faHouseChimney","faHomeLg","faFaceFrown","faFrown","faShop","faStoreAlt","faFloppyDisk","faSave","faScaleUnbalanced","faBalanceScaleLeft","faSortUp","faSortAsc","faCommentDots","faCommenting","faFaceGrinSquint","faGrinSquint","faHandHoldingDollar","faHandHoldingUsd","faHandsPraying","faPrayingHands","faArrowRotateRight","faArrowRightRotate","faArrowRotateForward","faRedo","faLocationCrosshairs","faLocation","faFaceGrinTears","faGrinTears","faCalendarXmark","faCalendarTimes","faUserGear","faUserCog","faArrowUp19","faSortNumericUp","faPersonDigging","faDigging","faGaugeSimple","faGaugeSimpleMed","faTachometerAverage","faQuoteRight","faQuoteRightAlt","faShirt","faTShirt","faTshirt","faTengeSign","faTenge","faUpRightFromSquare","faExternalLinkAlt","faTableCells","faTh","faBookBible","faBible","faSuitcaseMedical","faMedkit","faPersonDress","faFemale","faBusinessTime","faBriefcaseClock","faTableCellsLarge","faThLarge","faBookTanakh","faTanakh","faPhoneVolume","faVolumeControlPhone","faCakeCandles","faBirthdayCake","faCake","faAnglesUp","faAngleDoubleUp","faArrowUp91","faSortNumericUpAlt","faHourglass","faHourglassEmpty","faUserDoctor","faUserMd","faCircleInfo","faInfoCircle","faCamera","faCameraAlt","faArrowDown19","faSortNumericAsc","faSortNumericDown","faHandHoldingDroplet","faHandHoldingWater","faPrescriptionBottleMedical","faPrescriptionBottleAlt","faArrowDownAZ","faSortAlphaAsc","faSortAlphaDown","faArrowRotateLeft","faArrowLeftRotate","faArrowRotateBack","faArrowRotateBackward","faUndo","faHardDrive","faHdd","faFaceGrinSquintTears","faGrinSquintTears","faRectangleList","faListAlt","faPersonSkiingNordic","faSkiingNordic","faCircleLeft","faArrowAltCircleLeft","faTrainSubway","faSubway","faIndianRupeeSign","faIndianRupee","faInr","faCropSimple","faCropAlt","faMoneyBill1","faMoneyBillAlt","faLeftLong","faLongArrowAltLeft","faMinus","faSubtract","faArrowLeftLong","faLongArrowLeft","faHandsAslInterpreting","faAmericanSignLanguageInterpreting","faAslInterpreting","faHandsAmericanSignLanguageInterpreting","faGear","faCog","faDropletSlash","faTintSlash","faCartShopping","faShoppingCart","faArrowTurnUp","faLevelUp","faSquareRootVariable","faSquareRootAlt","faClock","faClockFour","faBackwardStep","faStepBackward","faHouseChimneyMedical","faClinicMedical","faTemperatureThreeQuarters","faTemperature3","faThermometer3","faThermometerThreeQuarters","faMobileScreen","faMobileAndroidAlt","faBatteryHalf","faBattery3","faSliders","faSlidersH","faEllipsisVertical","faEllipsisV","faRightLong","faLongArrowAltRight","faTty","faTeletype","faPersonHiking","faHiking","faCableCar","faTram","faFaceGrin","faGrin","faDeleteLeft","faBackspace","faEyeDropper","faEyeDropperEmpty","faEyedropper","faMobile","faMobileAndroid","faMobilePhone","faFaceMeh","faMeh","faBookSkull","faBookDead","faIdCard","faDriversLicense","faOutdent","faDedent","faHouse","faHome","faHomeAlt","faHomeLgAlt","faArrowRightArrowLeft","faExchange","faRotateRight","faRedoAlt","faRotateForward","faUtensils","faCutlery","faArrowUpWideShort","faSortAmountUp","faTowerBroadcast","faBroadcastTower","faUpLong","faLongArrowAltUp","faFileArrowDown","faFileDownload","faBolt","faZap","faYenSign","faCny","faJpy","faRmb","faYen","faRubleSign","faRouble","faRub","faRuble","faFaceLaughWink","faLaughWink","faCircleDown","faArrowAltCircleDown","faArrowDownShortWide","faSortAmountDesc","faSortAmountDownAlt","faArrowRightLong","faLongArrowRight","faEllipsis","faEllipsisH","faKitMedical","faFirstAid","faCreditCard","faCreditCardAlt","faCar","faAutomobile","faBookOpenReader","faBookReader","faTemperatureArrowUp","faTemperatureUp","faSquareH","faHSquare","faTemperatureFull","faTemperature4","faThermometer4","faThermometerFull","faHandshakeAngle","faHandsHelping","faLocationDot","faMapMarkerAlt","faPersonSwimming","faSwimmer","faDroplet","faTint","faEarthAmericas","faEarth","faEarthAmerica","faGlobeAmericas","faBatteryEmpty","faBattery0","faGaugeHigh","faTachometerAlt","faTachometerAltFast","faHospital","faHospitalAlt","faHospitalWide","faBarsStaggered","faReorder","faStream","faPersonWalkingWithCane","faBlind","faCheckToSlot","faVoteYea","faBoxesStacked","faBoxes","faBoxesAlt","faLink","faChain","faEarListen","faAssistiveListeningSystems","faMagnifyingGlass","faSearch","faTableTennisPaddleBall","faPingPongPaddleBall","faTableTennis","faPersonDotsFromLine","faDiagnoses","faTrashCanArrowUp","faTrashRestoreAlt","faFilePen","faFileEdit","faSquarePen","faPenSquare","faPencilSquare","faBatteryFull","faBattery","faBattery5","faListUl","faListDots","faDownLong","faLongArrowAltDown","faLandmarkDome","faLandmarkAlt","faTv","faTelevision","faTvAlt","faListCheck","faTasks","faCircleUser","faUserCircle","faCarBurst","faCarCrash","faPersonSnowboarding","faSnowboarding","faTruckFast","faShippingFast","faCircleHalfStroke","faAdjust","faCircleRadiation","faRadiationAlt","faBaseball","faBaseballBall","faDiagramProject","faProjectDiagram","faVolumeXmark","faVolumeMute","faVolumeTimes","faGrip","faGripHorizontal","faShareFromSquare","faShareSquare","faChildCombatant","faChildRifle","faSquarePhone","faPhoneSquare","faPlus","faAdd","faXmark","faClose","faMultiply","faRemove","faTimes","faArrowsUpDownLeftRight","faArrows","faChalkboardUser","faChalkboardTeacher","faQuoteLeft","faQuoteLeftAlt","faTrashArrowUp","faTrashRestore","faShekelSign","faIls","faShekel","faSheqel","faSheqelSign","faPhotoFilm","faPhotoVideo","faSignHanging","faSign","faTablet","faTabletAndroid","faCarRear","faCarAlt","faBatteryQuarter","faBattery2","faBabyCarriage","faCarriageBaby","faPercent","faPercentage","faFaceSmile","faSmile","faThumbtack","faThumbTack","faPersonPraying","faPray","faRotate","faSyncAlt","faGears","faCogs","faFaceGrinHearts","faGrinHearts","faTransgender","faTransgenderAlt","faArrowTurnDown","faLevelDown","faTicketSimple","faTicketAlt","faAnglesLeft","faAngleDoubleLeft","faClockRotateLeft","faHistory","faFaceGrinBeamSweat","faGrinBeamSweat","faFileExport","faArrowRightFromFile","faShield","faShieldBlank","faArrowUpShortWide","faSortAmountUpAlt","faGolfBallTee","faGolfBall","faCircleChevronLeft","faChevronCircleLeft","faWandMagic","faMagic","faWineGlassEmpty","faWineGlassAlt","faPersonBiking","faBiking","faEarthOceania","faGlobeOceania","faSquareXmark","faTimesSquare","faXmarkSquare","faUpRightAndDownLeftFromCenter","faExpandAlt","faUpDown","faArrowsAltV","faBahai","faHaykal","faCirclePlus","faPlusCircle","faFaceGrinTongueWink","faGrinTongueWink","faLinkSlash","faArrowUpZA","faFireFlameCurved","faBookQuran","faFaceAngry","faRss","faScaleBalanced","faGaugeSimpleHigh","faDesktop","faTableList","faCommentSms","faBook","faCheck","faBatteryThreeQuarters","faHandFist","faImagePortrait","faEarthEurope","faCartFlatbedSuitcase","faRectangleXmark","faBookJournalWhills","faTriangleExclamation","faShare","faRightLeft","faMoneyBill1Wave","faHands","faWaterLadder","faArrowsUpDown","faFaceGrimace","faWheelchairMove","faTurnDown","faSquareEnvelope","faBandage","faCircleXmark","faEarthAsia","faIdCardClip","faMagnifyingGlassPlus","faHandDots","faMugSaucer","faMagnifyingGlassMinus","faUserLarge","faNoteSticky","faFaceSadTear","faTurkishLiraSign","faDollarSign","faMagnifyingGlassDollar","faUsersGear","faBuildingColumns","faMasksTheater","faHandshakeSimple","faJetFighter","faSquareShareNodes","faVideo","faGraduationCap","faTurnUp","fa0","fa1","fa2","fa3","fa4","fa5","fa6","fa7","fa8","fa9","faFillDrip","faArrowsToCircle","faAt","faTextHeight","faStethoscope","faInfo","faExplosion","faWaveSquare","faRing","faBuildingUn","faDiceThree","faAnchorCircleCheck","faBuildingCircleArrowRight","faArrowsUpToLine","faDoorOpen","faAtom","faSoap","faBridgeCircleCheck","faPumpMedical","faFingerprint","faHandPointRight","faFlagCheckered","faSchoolCircleExclamation","faCrop","faUsersRectangle","faPeopleRoof","faPeopleLine","faDiagramPredecessor","faLaptop","faFileCsv","faMenorah","faTruckPlane","faRecordVinyl","faBong","faArrowDownUpAcrossLine","faJarWheat","faFileCircleExclamation","faPager","faStrikethrough","faK","faLandmarkFlag","faBackward","faCaretRight","faComments","faCodePullRequest","faClipboardList","faUserCheck","faVialVirus","faSheetPlastic","faBlog","faUserNinja","faPersonArrowUpFromLine","faToggleOff","faPersonDrowning","faSprayCan","faTruckMonster","faW","faRainbow","faCircleNotch","faPaw","faCloud","faTrowelBricks","faHospitalUser","faTentArrowLeftRight","faBinoculars","faMicrophoneSlash","faBoxTissue","faMotorcycle","faMarsAndVenusBurst","faSunPlantWilt","faToiletsPortable","faHockeyPuck","faTable","faMagnifyingGlassArrowRight","faUsersSlash","faClover","faStarAndCrescent","faHouseFire","faHelicopter","faCompass","faFileCircleQuestion","faLaptopCode","faSwatchbook","faPrescriptionBottle","faPeopleGroup","faFilm","faRulerHorizontal","faPeopleRobbery","faCaretLeft","faSchoolCircleXmark","faCloudShowersHeavy","faSitemap","faMemory","faRoadSpikes","faFireBurner","faFlag","faHanukiah","faFeather","faCommentSlash","faCloudSunRain","faCompress","faAnkh","faHandsHoldingChild","faAsterisk","faPesetaSign","faGhost","faCartPlus","faGamepad","faEgg","faHouseMedicalCircleXmark","faCampground","faFolderPlus","faLock","faGasPump","faHouseFloodWater","faTree","faBridgeLock","faSackDollar","faCarSide","faHeartCircleMinus","faMicroscope","faSink","faMitten","faPersonRays","faUsers","faEyeSlash","faFlaskVial","faOm","faWorm","faHouseCircleXmark","faPlug","faChevronUp","faHandSpock","faStopwatch","faBridgeCircleXmark","faChessBishop","faRoadCircleCheck","faDiceFive","faLandMineOn","faICursor","faStamp","faStairs","faI","faPills","faTooth","faV","faBangladeshiTakaSign","faBicycle","faHeadSideCoughSlash","faWheatAwnCircleExclamation","faSnowman","faMortarPestle","faRoadBarrier","faSchool","faIgloo","faJoint","faAngleRight","faHorse","faQ","faG","faNotesMedical","faDongSign","faCapsules","faHandPointUp","faMoneyBill","faBookmark","faAlignJustify","faUmbrellaBeach","faHelmetUn","faBullseye","faBacon","faHandPointDown","faArrowUpFromBracket","faRadiation","faChartSimple","faMarsStroke","faVial","faE","faBridgeCircleExclamation","faUser","faSchoolCircleCheck","faDumpster","faBuildingUser","faHighlighter","faKey","faBullhorn","faGlobe","faSynagogue","faPersonHalfDress","faRoadBridge","faLocationArrow","faC","faTabletButton","faBuildingLock","faPizzaSlice","faMoneyBillWave","faHouseFlag","faPersonCircleMinus","faCameraRotate","faStar","faRepeat","faCross","faBox","faVenusMars","faChargingStation","faMobileRetro","faGripLinesVertical","faSpider","faHandsBound","faFileInvoiceDollar","faPlaneCircleExclamation","faXRay","faSpellCheck","faSlash","faServer","faVirusCovidSlash","faShopLock","faBlenderPhone","faBuildingWheat","faPersonBreastfeeding","faVenus","faPassport","faTemperatureHigh","faCrown","faWeightHanging","faXmarksLines","faFilePrescription","faChessKnight","faWheelchair","faToggleOn","faL","faFire","faFolderOpen","faHeartCirclePlus","faCodeFork","faCity","faPepperHot","faUnlock","faColonSign","faHeadset","faStoreSlash","faRoadCircleXmark","faUserMinus","faClipboard","faHouseCircleExclamation","faUnderline","faSignature","faStroopwafel","faBold","faAnchorLock","faBuildingNgo","faManatSign","faNotEqual","faJedi","faMugHot","faGift","faDiceTwo","faChessQueen","faGlasses","faChessBoard","faBuildingCircleCheck","faPersonChalkboard","faCloudShowersWater","faLessThanEqual","faTrain","faCrow","faSailboat","faWindowRestore","faToriiGate","faFrog","faBucket","faImage","faMicrophone","faCow","faCaretUp","faScrewdriver","faFolderClosed","faHouseTsunami","faSquareNfi","faArrowUpFromGroundWater","faLemon","faHeadSideMask","faHandshake","faGem","faSmoking","faMonument","faSnowplow","faCannabis","faTablets","faEthernet","faChair","faPlateWheat","faIcicles","faPersonShelter","faNeuter","faIdBadge","faMarker","faHelicopterSymbol","faUniversalAccess","faLariSign","faVolcano","faPersonWalkingDashedLineArrowRight","faViruses","faSquarePersonConfined","faUserTie","faTentArrowDownToLine","faCertificate","faSuitcase","faCameraRetro","faBoxOpen","faScroll","faSpa","faLocationPinLock","faPause","faHillAvalanche","faBomb","faRegistered","faSubscript","faBurst","faMoneyBills","faSmog","faCrutch","faPalette","faArrowsTurnRight","faVest","faFerry","faArrowsDownToPeople","faBoxesPacking","faGroupArrowsRotate","faBowlFood","faCandyCane","faFileWord","faFilePowerpoint","faHouseLock","faChildren","faEnvelopeOpen","faMattressPillow","faGuaraniSign","faFireExtinguisher","faCruzeiroSign","faGreaterThanEqual","faVirus","faEnvelopeCircleCheck","faLayerGroup","faArrowsToDot","faArchway","faHeartCircleCheck","faSquare","faCouch","faCediSign","faItalic","faTableCellsColumnLock","faChurch","faCommentsDollar","faDemocrat","faZ","faRoadLock","faA","faP","faSnowflake","faNewspaper","faFilterCircleXmark","faLocust","faPersonDressBurst","faVectorSquare","faBreadSlice","faLanguage","faFilter","faQuestion","faFileSignature","faHouseChimneyUser","faHandHoldingHeart","faPuzzlePiece","faMoneyCheck","faCode","faBuildingCircleExclamation","faMagnifyingGlassChart","faCubesStacked","faVirusCovid","faAustralSign","faF","faLeaf","faRoad","faPersonCirclePlus","faBoltLightning","faSackXmark","faFileExcel","faFileContract","faFishFins","faBuildingFlag","faObjectUngroup","faPoop","faKaaba","faToiletPaper","faEject","faPlaneCircleCheck","faObjectGroup","faMaskVentilator","faArrowRight","faCashRegister","faPersonCircleQuestion","faH","faTarp","faArrowsToEye","faPlugCircleBolt","faHeart","faMarsAndVenus","faDumpsterFire","faHouseCrack","faBottleWater","faToiletPaperSlash","faKitchenSet","faR","faCube","faBitcoinSign","faShieldDog","faSolarPanel","faLockOpen","faElevator","faMoneyBillTransfer","faMoneyBillTrendUp","faHouseFloodWaterCircleArrowRight","faCircle","faRecycle","faUserAstronaut","faPlaneSlash","faTrademark","faSatelliteDish","faUsersRays","faWallet","faClipboardCheck","faFileAudio","faWrench","faBugs","faFileImage","faPlaneDeparture","faHandshakeSlash","faBookBookmark","faCodeBranch","faHatCowboy","faBridge","faTruckFront","faCat","faAnchorCircleExclamation","faTruckField","faRoute","faClipboardQuestion","faPanorama","faCommentMedical","faTeethOpen","faFileCircleMinus","faTags","faWineGlass","faHouseSignal","faFaucetDrip","faTerminal","faMobileButton","faHouseMedicalFlag","faTape","faEye","faAudioDescription","faPersonMilitaryToPerson","faFileShield","faUserSlash","faPen","faTowerObservation","faFileCode","faBus","faHeartCircleXmark","faWindowMaximize","faPrescription","faVihara","faPlantWilt","faDiamond","faBacterium","faHandPointer","faDrumSteelpan","faHandScissors","faBiohazard","faMarsDouble","faChildDress","faUsersBetweenLines","faLungsVirus","faPhone","faChildReaching","faHeadSideVirus","faDoorClosed","faShieldVirus","faDiceSix","faMosquitoNet","faBridgeWater","faPersonBooth","faTextWidth","faHatWizard","faPenFancy","faTrash","faBookMedical","faPoo","faCubes","faDivide","faHeadphones","faHandsHolding","faHandsClapping","faRepublican","faArrowLeft","faPersonCircleXmark","faRuler","faAlignLeft","faDiceD6","faRestroom","faJ","faUsersViewfinder","faFileVideo","faFilePdf","faO","faUserSecret","faOtter","faCommentDollar","faHatCowboySide","faClipboardUser","faChild","faLiraSign","faSatellite","faPlaneLock","faTag","faComment","faEnvelope","faPaperclip","faArrowRightToCity","faRibbon","faLungs","faLitecoinSign","faBorderNone","faCircleNodes","faParachuteBox","faIndent","faTruckFieldUn","faMountain","faCloudMeatball","faSquareVirus","faMeteor","faCarOn","faSleigh","faWater","faCalendarCheck","faBraille","faLandmark","faTruck","faCrosshairs","faPersonCane","faTent","faVestPatches","faCheckDouble","faMoneyBillWheat","faCookie","faDumbbell","faTarpDroplet","faHouseMedicalCircleCheck","faCalendarPlus","faPlaneArrival","faChartGantt","faDna","faVirusSlash","faChess","faPlugCircleCheck","faStreetView","faFrancSign","faVolumeOff","faMosque","faMosquito","faStarOfDavid","faPersonMilitaryRifle","faVials","faPlugCirclePlus","faPlaceOfWorship","faGripVertical","faU","faPallet","faFaucet","faBaseballBatBall","faS","faTimeline","faKeyboard","faCaretDown","faPlaneUp","faPiggyBank","faMountainCity","faCoins","faKhanda","faFolderTree","faNetworkWired","faMapPin","faHamsa","faCentSign","faFlask","faPersonPregnant","faWandSparkles","faTicket","faPowerOff","faFlagUsa","faLaptopFile","faDiagramNext","faPersonRifle","faHouseMedicalCircleExclamation","faClosedCaptioning","faVenusDouble","faImages","faCalculator","faPeoplePulling","faN","faCloudRain","faBuildingCircleXmark","faShip","faArrowsDownToLine","faDownload","faFileCircleCheck","faForward","faAlignCenter","faHeartCircleExclamation","faCalendarWeek","faLaptopMedical","faB","faFileMedical","faDiceOne","faKiwiBird","faMillSign","faBowlRice","faSkull","faTruckPickup","faStop","faCodeMerge","faUpload","faHurricane","faMound","faToiletPortable","faCompactDisc","faCaravan","faShieldCat","faGlassWater","faOilWell","faVault","faMars","faToilet","faPlaneCircleXmark","faSun","faGuitar","faHorseHead","faBoreHole","faIndustry","faArrowsTurnToDots","faFlorinSign","faLessThan","faAngleDown","faCarTunnel","faHeadSideCough","faGripLines","faThumbsDown","faUserLock","faAnchorCircleXmark","faChessPawn","faPersonThroughWindow","faToolbox","faHandsHoldingCircle","faBug","faHandHoldingHand","faMountainSun","faArrowsLeftRightToLine","faDiceD20","faTruckDroplet","faFileCircleXmark","faMedal","faBed","faPodcast","faBell","faSuperscript","faPlugCircleXmark","faStarOfLife","faPhoneSlash","faPaintRoller","faFile","faGreaterThan","faArrowDown","faEraser","faPersonBurst","faDove","faSocks","faInbox","faSection","faEnvelopeOpenText","faWineBottle","faChessRook","faDharmachakra","faHotdog","faDrum","faIceCream","faHeartCircleBolt","faFax","faParagraph","faStarHalf","faTreeCity","faPlay","faFont","faTableCellsRowLock","faRupiahSign","faNairaSign","faCartArrowDown","faWalkieTalkie","faReceipt","faSuitcaseRolling","faPersonCircleExclamation","faChevronDown","faSkullCrossbones","faCodeCompare","faSchoolLock","faTowerCell","faRankingStar","faChessKing","faPersonHarassing","faBrazilianRealSign","faArrowUp","faShrimp","faJugDetergent","faUserShield","faWind","faY","faFish","faUserGraduate","faClapperboard","faJetFighterUp","faCopy","faHandSparkles","faGun","faExpand","faComputer","faPesoSign","faBuildingShield","faBaby","faUsersLine","faTractor","faArrowDownUpLock","faLinesLeaning","faRulerCombined","faCopyright","faEquals","faBlender","faTeeth","faMap","faRocket","faFolderMinus","faStore","faArrowTrendUp","faPlugCircleMinus","faBezierCurve","faBellSlash","faSchoolFlag","faFill","faAngleUp","faDrumstickBite","faHollyBerry","faChevronLeft","faBacteria","faHandLizard","faNotdef","faDisease","faBriefcaseMedical","faGenderless","faChevronRight","faRetweet","faPumpSoap","faVideoSlash","faRadio","faTrafficLight","faThermometer","faVrCardboard","faHandMiddleFinger","faTruckMoving","faGlassWaterDroplet","faDisplay","faTrophy","faHammer","faHandPeace","faSpinner","faRobot","faPeace","faWarehouse","faArrowUpRightDots","faSplotch","faDiceFour","faSimCard","faMercury","faPersonFallingBurst","faAward","faBuilding","faQrcode","faHouseMedical","faHouseChimneyWindow","faPenNib","faTentArrowTurnLeft","faTents","faDog","faCarrot","faMoon","faCheese","faYinYang","faMusic","faCodeCommit","faTemperatureLow","faBroom","faShieldHeart","faGopuram","faHashtag","faOilCan","faT","faHippo","faChartColumn","faInfinity","faVialCircleCheck","faPersonArrowDownToLine","faVoicemail","faFan","faPersonWalkingLuggage","faCloudMoonRain","faCalendar","faTrailer","faSdCard","faDragon","faShoePrints","faHandHolding","faPlugCircleExclamation","faChainBroken","faChainSlash","faUnlink","faClone","faPersonWalkingArrowLoopLeft","faSortAlphaUpAlt","faFireAlt","faTornado","faFileCirclePlus","faQuran","faAnchor","faBorderAll","faAngry","faCookieBite","faArrowTrendDown","faFeed","faDrawPolygon","faBalanceScale","faTachometer","faTachometerFast","faShower","faDesktopAlt","faM","faThList","faSms","faUserPlus","faBattery4","faHouseCircleCheck","faAngleLeft","faDiagramSuccessor","faTruckArrowRight","faArrowsSplitUpAndLeft","faFistRaised","faCloudMoon","faBriefcase","faPersonFalling","faPortrait","faUserTag","faRug","faGlobeEurope","faLuggageCart","faRectangleTimes","faTimesRectangle","faWindowClose","faBahtSign","faBookOpen","faJournalWhills","faHandcuffs","faExclamationTriangle","faWarning","faDatabase","faMailForward","faBottleDroplet","faMaskFace","faHillRockslide","faExchangeAlt","faPaperPlane","faRoadCircleExclamation","faDungeon","faAlignRight","faMoneyBillWaveAlt","faLifeRing","faSignLanguage","faSigning","faCalendarDay","faLadderWater","faSwimmingPool","faArrowsV","faGrimace","faWheelchairAlt","faLevelDownAlt","faPersonWalkingArrowRight","faEnvelopeSquare","faDice","faBowlingBall","faBrain","faBandAid","faCalendarMinus","faTimesCircle","faXmarkCircle","faGifts","faHotel","faGlobeAsia","faIdCardAlt","faSearchPlus","faThumbsUp","faUserClock","faAllergies","faFileInvoice","faWindowMinimize","faCoffee","faBrush","faMask","faSearchMinus","faRulerVertical","faUserAlt","faTrainTram","faUserNurse","faSyringe","faCloudSun","faStopwatch20","faSquareFull","faMagnet","faJar","faStickyNote","faBugSlash","faArrowUpFromWaterPump","faBone","faUserInjured","faSadTear","faPlane","faTentArrowsDown","faExclamation","faArrowsSpin","faPrint","faTry","faTurkishLira","faDollar","faUsd","faX","faSearchDollar","faUsersCog","faPersonMilitaryPointing","faBank","faInstitution","faMuseum","faUniversity","faUmbrella","faTrowel","faD","faStapler","faTheaterMasks","faKipSign","faHandPointLeft","faHandshakeAlt","faFighterJet","faShareAltSquare","faBarcode","faPlusMinus","faVideoCamera","faMortarBoard","faHandHoldingMedical","faPersonCircleCheck","faLevelUpAlt","formatDistanceLocale","lessThanXSeconds","one","xSeconds","halfAMinute","lessThanXMinutes","xMinutes","aboutXHours","xHours","xDays","aboutXWeeks","xWeeks","aboutXMonths","xMonths","aboutXYears","xYears","overXYears","almostXYears","buildFormatLongFn","defaultWidth","formats","formatLong","dateTime","formatRelativeLocale","lastWeek","yesterday","today","tomorrow","nextWeek","buildLocalizeFn","valuesArray","formattingValues","defaultFormattingWidth","argumentCallback","localize","ordinalNumber","dirtyNumber","rem100","era","narrow","abbreviated","wide","quarter","dayPeriod","midnight","noon","morning","afternoon","evening","night","buildMatchFn","matchPattern","matchPatterns","defaultMatchWidth","matchResult","matchedString","parsePatterns","defaultParseWidth","findIndex","findKey","valueCallback","parsePattern","parseResult","enUS","formatDistance","tokenValue","addSuffix","comparison","formatRelative","_date","_baseDate","weekStartsOn","firstWeekContainsDate","getDefaultOptions","millisecondsInWeek","millisecondsInDay","millisecondsInMinute","millisecondsInHour","toDate","argument","argStr","NaN","startOfDay","setHours","getTimezoneOffsetInMilliseconds","utcDate","UTC","getFullYear","getMonth","getDate","getHours","setUTCFullYear","differenceInCalendarDays","dateLeft","dateRight","startOfDayLeft","startOfDayRight","timestampLeft","timestampRight","constructFrom","startOfYear","cleanDate","setFullYear","getDayOfYear","startOfWeek","_options$weekStartsOn","_options$locale","_defaultOptions$local","getDay","diff","setDate","startOfISOWeek","getISOWeekYear","fourthOfJanuaryOfNextYear","startOfNextYear","fourthOfJanuaryOfThisYear","startOfThisYear","startOfISOWeekYear","fourthOfJanuary","getISOWeek","getWeekYear","_options$firstWeekCon","firstWeekOfNextYear","firstWeekOfThisYear","startOfWeekYear","firstWeek","getWeek","addLeadingZeros","targetLength","lightFormatters","signedYear","dayPeriodEnumValue","numberOfDigits","milliseconds","trunc","dayPeriodEnum","formatters","unit","signedWeekYear","weekYear","isoWeek","dayOfYear","dayOfWeek","localDayOfWeek","isoDayOfWeek","_localize","timezoneOffset","getTimezoneOffset","formatTimezoneWithOptionalMinutes","formatTimezone","formatTimezoneShort","sign","absOffset","dateLongFormatter","timeLongFormatter","longFormatters","dateTimeLongFormatter","datePattern","timePattern","dateTimeFormat","dayOfYearTokenRE","weekYearTokenRE","throwTokens","isDate","formattingTokensRegExp","longFormattingTokensRegExp","escapedStringRegExp","doubleQuoteRegExp","unescapedLatinCharacterRegExp","format","formatStr","_options$locale2","_options$locale3","_defaultOptions$local2","defaultLocale","originalDate","RangeError","firstCharacter","longFormatter","isToken","cleanEscapedString","preprocessor","formatterOptions","part","useAdditionalWeekYearTokens","isProtectedWeekYearToken","useAdditionalDayOfYearTokens","isProtectedDayOfYearToken","_message","warnOrThrowProtectedError","formatter","matched","addMonths","amount","dayOfMonth","endOfDesiredMonth","setMonth","SCRIPT_LOADING_STATE","DISPATCH_ACTION","PAYPAL_HOSTED_FIELDS_TYPES","SCRIPT_ID","SDK_SETTINGS","LOAD_SCRIPT_ERROR","braintreeVersion","DEFAULT_PAYPAL_NAMESPACE","SCRIPT_PROVIDER_REDUCER_ERROR","getPayPalWindowNamespace$1","generateErrorMessage","reactComponentName","sdkComponentKey","sdkRequestedComponents","sdkDataNamespace","requiredOptionCapitalized","requestedComponents","expectedComponents","getScriptID","paypalScriptOptions","total","hashStr","scriptReducer","LOADING_STATUS","loadingStatus","loadingStatusErrorMessage","RESET_OPTIONS","reactPayPalScriptID","scriptNode","destroySDKScript","SET_BRAINTREE_INSTANCE","braintreePayPalCheckoutInstance","ScriptContext","validateReducer","scriptContext","usePayPalScriptReducer","isInitial","INITIAL","isResolved","RESOLVED","isRejected","REJECTED","PayPalButtons","forceReRender","buttonProps","isDisabledStyle","buttonsContainerRef","initActions","setInitActions","isEligible","setIsEligible","setErrorState","closeButtonsComponent","buttonMessageContent","paypalWindowNamespace","dataNamespace","Buttons","fundingSource","disable","enable","objectToQueryString","createScriptElement","newScript","loadScript","PromisePonyfill","validateArguments","sdkBaseUrl","environment","optionsWithStringIndex","replacer","indexOfMatch","camelCaseToKebabCase","queryParams","processOptions","existingWindowNamespace","getPayPalWindowNamespace","currentScript","nextScript","currentScriptClone","uidAuto","isExactMatch","findScript","loadCustomScript","newWindowNamespace","onSuccess","firstElementChild","insertScriptElement","defaultError","PayPalMarks","markProps","markContainerRef","Marks","renderPayPalMark","PayPalMessages","messageProps","messagesContainerRef","Messages","PayPalScriptProvider","deferLoading","isSubscribed","ignore","cardFieldsForm","registerField","unregisterField","maxPlayers","setMaxPlayers","mySeat","setMySeat","rivalSeat","setRivalSeat","currentPositions","setCurrentPositions","playerPositions6Max","playerPositions9Max","getSeatStyle","_jsxs","handleSeatClick","newMaxPlayers","pokerSequences","handSources","UpsellModal","onClose","onUpgrade","isUpgraded","membership","activaMembresia","_Fragment","createOrder","purchase_units","onApprove","_actions$order","_actions$order2","_skipTutorialMember$t","setMode","sequence","setSequence","setStake","skipTutorialMember","setHandTitle","handStake","setHandStake","setDescription","isShareable","setIsShareable","showUpsellModal","setShowUpsellModal","setIsUpgraded","handSource","setHandSource","skipTutorial","setSkipTutorial","filterActive","setFilterActive","_pokerHand$share$toLo","_pokerHand$share","_pokerHand$share$toLo2","_pokerHand$share2","changeMode","newMode","closeModal","updateMembership","selectedSource","PokerTable","loadAllHands","loadHands","openPokerCrushers","endDate","reload","$f631663db3294ace$var$DirectionContext","$7Gjcd$createContext","$f631663db3294ace$export$c760c09fdd558351","$7Gjcd$createElement","$f631663db3294ace$export$b39126d51d94e6f3","localDir","globalDir","$7Gjcd$useContext","$f631663db3294ace$export$2881499e37b75b9a","DirectionProvider","namespaceModule","_sanitizedNamespaceMo","sanitizedNamespaceModule","sanitizeNamespaceImport","RadixDirection","ThemeProvider","nonce","Grid","GridPrimitive","Card","CardPrimitive","Image","ImagePrimitive","Link","LinkPrimitive","isExternal","rel","isContactForm","setFormData","privacyPolicyContent","isModalOpen","setIsModalOpen","modalContent","setModalContent","openModal","DefaultContext","IconContext","Tree2Element","tree","GenIcon","IconBase","conf","svgProps","computedSize","FaBars","FaTimes","logo2","textShadow","handleClick","Login","nav4Ref","nav3Ref","nav1_3Ref","menuOpen","setMenuOpen","scrollToNav4","scrollIntoView","scrollToNav1_3","toggleMenu","myTheme","logo","pokerplayer","home1","home2","home3","splashMision","splashMision2","splashMision3","plan","priceRef","price","stackItem","TextCarousel","splash","article1","scrollToNav3","Footerweb","onSelectCard","cardSet","selectedCards","setSelectedCards","modalContentRef","handleClickOutside","suitColors","cardLimits","holeCards","flopCards","suit","isSelected","newSelectedCards","handleCardSelect","trainer","currentHand","selectedCard","setSelectedCard","setCardSet","cardClass","logoSize","handleCardClick","onContextMenu","CardModal","flopIndex","handleCloseModal","myRange","rangeState","setRangeState","rangeId","initialMatrix","clickCounts","setClickCounts","isDragging","setIsDragging","dragColor","setDragColor","getNextColor","setDragColorForCell","newCounts","rowIndex","colIndex","currentCount","getColor","handleMouseUp","handleClear","rank1","rank2","handleMouseDown","handleMouseEnter","noteRef","savedNote","setSavedNote","setResponse","loading","setLoading","htmlContent","preflopFirstActions","postflopFirstActions","vsAggressiveActions","vsPassiveActions","selectedPlayer","setSelectedPlayer","selectedAction","setSelectedAction","previousAction","setPreviousAction","setActions","selectedActions","setSelectedActions","currentPlayerIndex","setCurrentPlayerIndex","firstPlayer","setFirstPlayer","sliderRef","isInitialLoad","setIsInitialLoad","modalIsOpen","setModalIsOpen","phase","inferredFirstPlayer","inferFirstPlayer","player","street","isCorrect","isOptional","cleanedJsonString","getAvailableActions","isFirstAction","inferPlayer","previousPlayer","heroPositionIndex","villainPositionIndex","inPositionPlayer","outOfPositionPlayer","handleAddAction","newAction","newActions","nextStreet","getNextStreet","inferPostflopFirstPlayer","updatedActions","_actions","resetActions","currentStreet","streets","_actions2","handleRemoveAction","actionOption","actionIndex","_actions3","handleSelectAction","streetName","rivalRange","notes","isHeroCollapsed","setIsHeroCollapsed","isVillainCollapsed","setIsVillainCollapsed","CardSelector","PokerActions","PokerNotes","StreetColumn","boardCards","_taggedTemplateLiteral","strings","raw","MS","MOZ","WEBKIT","RULESET","DECLARATION","IMPORT","KEYFRAMES","LAYER","replacement","indexof","charat","strlen","sizeof","append","character","characters","siblings","caret","alloc","dealloc","delimit","escaping","commenter","serialize","prefixer","combine","compile","rulesets","pseudo","declarations","atrule","scanning","ampersand","reference","declaration","ruleset","unitlessKeys","msGridRow","msGridRowSpan","msGridColumn","msGridColumnSpan","WebkitLineClamp","REACT_APP_SC_ATTR","SC_ATTR","SC_DISABLE_SPEEDY","REACT_APP_SC_DISABLE_SPEEDY","$","getDefaultProps","caller","callee","arity","groupSizes","indexOfGroup","insertRules","insertRule","clearGroup","deleteRule","getGroup","getRule","registerName","__webpack_nonce__","sheet","styleSheets","ownerNode","cssRules","isServer","useCSSOMInjection","gs","server","registerId","reconstructWithOptions","allocateGSInstance","hasNameForId","clearNames","clearRules","clearTag","replaceAll","endsWith","shouldForwardProp","styleSheet","stylis","Ge","stylisPlugins","disableCSSOMInjection","enableVendorPrefixes","getName","isCss","styledComponentId","staticRulesId","isStatic","componentId","baseHash","baseStyle","generateAndInjectStyles","ot","parentComponentId","componentStyle","foldedComponentIds","forwardedAs","_foldedDefaultProps","it","ct","lt","ut","createStyles","removeStyles","renderStyles","ft","_emitSheetCSS","getStyleTags","sealed","getStyleElement","seal","collectStyles","interleaveWithNodeStream","$84fda1e7e33cfd28$export$37394b0fa44b998c","$84fda1e7e33cfd28$export$6bfda33bcd6c2d18","$4c3f0b77e8caf06d$export$21d9f1931ef75b56","$fJU0O$styledcomponents","div","_templateObject","$visible","$ad60b992c945fdb5$var$len","$ad60b992c945fdb5$var$anim","$fJU0O$keyframes","_templateObject2","$a5fa864d4dd36deb$var$getViewBoxSize","_templateObject3","secondaryStrokeWidth","radius","maxStrokeWidth","startingPoint","$a5fa864d4dd36deb$export$67ad50c48ca3ede4","wrapperStyle","wrapperClass","strokeWidthSecondary","$fJU0O$jsx","$fJU0O$jsxs","$5819da83a926266a$var$spin","_templateObject4","$afa12dd3e98f740f$var$dash","_templateObject5","polyline","_templateObject6","_templateObject7","polygon","_templateObject8","_templateObject9","searchTerm","setSearchTerm","filteredHands","setFilteredHands","modalMessage","setModalMessage","isError","setIsError","dropdownVisible","setDropdownVisible","showLoader","setShowLoader","confirmResetVisible","setConfirmResetVisible","dropdownRef","handleUpdateHand","getSuitColor","handleConfirmReset","saveHand","getPositionText","Oval","handleResetHand","onFocus","handleClickSearchBox","handleSelectHand","setCurrentHand","currentHandIndex","setCurrentHandIndex","setStreetName","responses","setResponses","finishHand","setFinishHand","setActionIndex","showModal","setShowModal","currentPlayer","setCurrentPlayer","setScore","totalActions","setTotalActions","chips","setChips","chipsVil","setChipsVil","trainedHands","setTrainedHands","streakHands","setStreakHands","pot","setPot","bet","setBet","correctAnswer","setCorrectAnswer","villainAction","setVillainAction","okButton","createTraining","handId","scorePercentage","fetchTrainingStats","getScoreStreak","hands","sortedHands","createdAt","streak","filtered","jsonString","handleActionClick","newPot","potWithoutBB","multiplier","previousBet","previousBet2","betAction","calculatePot","prevResponses","prevTotalActions","prevScore","keyword","prevChips","nextActionIndex","currentAction","currentButtons","getCurrentButtons","referenceActions","newButton","newCurrentButtons","correctButton","otherButtons","limitedButtons","isCorrectResponse","scoreColor","hue","getScoreColor","handlePreviousHand","handleNextHand","chip","resetHand","posibleActions","boardTypes","handStrengths","handsData","setHandsData","handsDataGrouped","setHandsDataGrouped","selectedActionsFlop","setSelectedActionsFlop","selectedActionsTurn","setSelectedActionsTurn","selectedActionsRiver","setSelectedActionsRiver","loadingGpt","setLoadingGpt","filters","setFilters","spot","boardType","handValueFlop","handValueTurn","handValueRiver","fetchAllHands","handleFilterChange","selectedValues","filterData","isHandValueFlopValid","strength","flop","isHandValueTurnValid","turn","isHandValueRiverValid","river","spotMatch","boardTypeMatch","boardClassification","flopActionMatch","turnActionMatch","riverActionMatch","searchString","parseActions","actionString","actionObj","calculateHandStrength","myHand","board","combinedCards","allCombinations","getAllCombinations","results","combinations","bestHand","handEval","combination","getBestHand","classifyBoard","cardValues","cardSuits","isMonocolor","sortedValues","isConsecutive","reestructurarData","groupDataByHandTitleAndBoardType","groupedData","localeCompare","nuevaData","processActions","actionCounts","actionPercentages","sortedActionPercentages","getColorForPercentage","maxPercentage","intensity","renderActionDivs","renderActionDivsIndividual","actionClass","boards","strengths","leftPadding","ranges","setRanges","rangeFromChild","setRangeFromChild","rangeIdFromChild","setRangeIdFromChild","handleValueChange","grid","updateRange","newRange","prevRanges","palyerId","transformedRanges","listRanges","fetchRanges","selectedColorCode","rangeItem","updateRangeTitle","newTitle","rangeToSave","saveRange","removeRange","CardMatrix","colorItem","updateColorDescription","colorIndex","newDescription","deals","setDeals","imageUrl","LogoRedstar","LogoCoinpoker","LogoACR","LogoBodog","deal","parseISO","_options$additionalDi","additionalDigits","dateStrings","patterns","dateTimeDelimiter","timeString","timeZoneDelimiter","timezone","splitDateString","parseYearResult","captures","restDateString","century","parseYear","dateRegex","isWeekDate","parseDateUnit","_year","validateWeekDate","isoWeekYear","fourthOfJanuaryDay","setUTCDate","dayOfISOWeekYear","daysInMonths","isLeapYearIndex","validateDate","validateDayOfYearDate","parseDate","timeRegex","parseTimeUnit","validateTime","parseTime","dirtyDate","getUTCMilliseconds","timezoneString","timezoneRegex","_hours","validateTimezone","parseTimezone","isBefore","dateToCompare","isOfType","isRegex","isUndefined","isNull","equal","equalArray","equalMap","equalSet","view1","view2","getUint8","equalArrayBuffer","leftKeys","rightKeys","objectTypes","primitiveTypes","getObjectType","objectTypeName","isObjectOfType","DOM_PROPERTIES_TO_CHECK","plainFunction","tagType","function","asyncGeneratorFunction","boolean","domElement","plainObject","throw","generatorFunction","class_","nullOrUndefined","nan","null","numericString","propertyOf","regexp","weakMap","weakSet","src_default","compareNumbers","previousData","actual","compareValues","isEqualPredicate","hasExtraKeys","isSameType","hasEntry","checkEquality","getIterables","arguments_","canHaveLength","includesOrEqualsTo","previousValue","treeChanges","is2","added","hasActual","hasPrevious","leftComparator","rightComparator","equal2","changedFrom","decreased","emptied","increased","removed","timeoutDuration","longerTimeoutBrowsers","called","functionToCheck","getStyleComputedProperty","getParentNode","getScrollParent","_getStyleComputedProp","overflowX","overflowY","getReferenceNode","referenceNode","isIE11","MSInputMethodContext","isIE10","isIE","getOffsetParent","noOffsetParent","offsetParent","nextElementSibling","getRoot","findCommonOffsetParent","element1","element2","DOCUMENT_POSITION_FOLLOWING","commonAncestorContainer","isOffsetContainer","element1root","getScroll","upperSide","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","getClientRect","offsets","sizes","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","borderTopWidth","borderLeftWidth","includeScroll","isFixed","getFixedPositionOffsetParent","getBoundaries","popper","boundariesElement","boundaries","excludeScroll","relativeOffset","innerWidth","innerHeight","getViewportOffsetRectRelativeToArtbitraryNode","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","computeAutoPlacement","placement","refRect","rects","sortedAreas","filteredAreas","computedPlacement","getReferenceOffsets","getOuterSizes","getOppositePlacement","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","runModifiers","modifiers","ends","modifiersToRun","cur","enabled","isDestroyed","positionFixed","originalPlacement","isCreated","isModifierEnabled","modifierName","getSupportedPropertyName","upperProp","toCheck","willChange","disableEventListeners","removeOnDestroy","getWindow","attachToScrollParents","scrollParents","isBody","setupEventListeners","updateBound","scrollElement","eventsEnabled","enableEventListeners","isNumeric","isFinite","setStyles","isFirefox","isModifierRequired","requestingName","requestedName","requesting","_requesting","requested","placements","validPlacements","clockwise","BEHAVIORS","parseOffset","basePlacement","useHeight","fragments","frag","splitRegex","mergeWithPrevious","toValue","index2","shiftvariation","_data$offsets","isVertical","side","shiftOffsets","transformProp","popperStyles","escapeWithReference","opSide","arrowElement","sideCapitalized","altSide","arrowElementSize","center","popperMarginSide","popperBorderSide","sideValue","arrow","_data$offsets$arrow","flipped","placementOpposite","flipOrder","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","subtractLength","bound","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","arrowStyles","modifierOptions","Defaults","Popper","jquery","onLoad","PopperUtils","hint","prim","DEFAULTS","preventOverflow","VALIDATOR_ARG_ERROR_MESSAGE","MESSAGE_ARG_ERROR_MESSAGE","isRequiredIf","typeValidator","guardAgainstInvalidArgTypes","propIsRequired","propExists","missingPropError","STATUS","IDLE","OPENING","CLOSING","ReactDOM","isMobile","_ref$warn","_ref$debug","logFn","groupCollapsed","groupEnd","ReactFloaterPortal","appendNode","_this$props2","setRef","_this$props3","hasChildren","renderReact16","FloaterArrow","setArrowRef","_styles$arrow","spread","parentStyle","_excluded$1","FloaterCloseBtn","FloaterContainer","positionWrapper","showCloseButton","Floater","disableAnimation","hideArrow","floater","floaterCentered","floaterClosing","floaterOpening","floaterWithAnimation","floaterWithComponent","closeFn","setFloaterRef","ReactFloaterWrapper","handleMouseLeave","setChildRef","setWrapperRef","refProp","POSITIONING_PROPS","ReactFloater","arrowRef","childRef","floaterRef","wrapperRef","wrapperPopper","newStatus","_this$state","toggle","eventDelayTimeout","eventDelay","_this$state2","currentPlacement","needsUpdate","wrapperOptions","statusWrapper","_isMounted","hasMounted","_this$props5","hasTarget","initPopper","forceStatus","_this$props6","autoOpen","_treeChanges","changedTo","changeWrapperPosition","_nextCB","once","handleTransitionEnd","rebuildPopper","_this$props7","disableFlip","getPopper","flipBehavior","_this$options","offsetOptions","_this2$floaterRef","isConnected","wrapperOffset","floaterRefInterval","_this3$floaterRef","nextStatus","ReactFloaterDebug","_this$props8","disableHoverToClick","wrapperStyles","_this4","_this$state3","nextStyles","wrapperPosition","borderBottom","WebkitAppearance","borderTop","getStyles","targetStyles","_this$state4","_this$props9","wrapperInPortal","wrapperAsChildren","EVENTS","LIFECYCLE","BEACON","TOOLTIP","COMPLETE","WAITING","RUNNING","PAUSED","SKIPPED","FINISHED","getDocumentHeight","median","heights","middle","getElement","skipFix","forListener","scrollDocument","isSameNode","hasCustomScrollParent","hasPosition","getScrollTo","hasCustomOffsetParent","getBrowser","browser","opera","InstallTrigger","chrome","getText","recurse","hexToRGB","properHex","hideBeacon","disableBeacon","isLegacy","omit","defaultFloaterProps","back","disableCloseOnEsc","disableOverlay","disableOverlayClose","disableScrollParentFix","disableScrolling","hideBackButton","hideCloseButton","hideFooter","showProgress","showSkipButton","spotlightClicks","spotlightPadding","continuous","getHelpers","run","scrollOffset","scrollDuration","scrollToFirstStep","steps","arrowColor","beaconSize","overlayColor","spotlightShadow","textColor","buttonBase","spotlight","getTourProps","pick","getMergedStep","currentStep","mergedStep","deepmerge2","mergedStyles","floaterProps","mergedFloaterProps","hideBeacon2","beacon","beaconInner","beaconOuter","tooltip","tooltipContainer","tooltipTitle","tooltipContent","tooltipFooter","tooltipFooterSpacer","buttonNext","buttonBack","buttonClose","buttonSkip","mixBlendMode","overlayLegacy","overlayLegacyCenter","spotlightLegacy","floaterStyles","scrollParent2","placementBeacon","validateStep","validateSteps","lifecycle","validKeys","Store","__publicField","beaconPopper","tooltipPopper","getNextState","getSteps","restart","is3","hasValidKeys","stepIndex","setSteps","newIndex","hasUpdatedState","oldState","go","Spotlight_default","JoyrideOverlay","React2","mouseOverSpotlight","showSpotlight","hiddenLifecycles","spotlightStyles","inSpotlight","scrollTimeout","resizeTimeout","handleResize","previousProps","handleScroll","handleMouseMove","elementRect","isFixedTarget","hasScrollParent","parentTop","getElementPosition","previousState","onClickOverlay","hideSpotlight","spotlight2","safariOverlay","JoyridePortal","React3","renderReact15","Scope","canHaveFocus","isVisible","canBeTabbed","interceptTab","elements","findValidTabElements","noSize","checkFocus","setFocus","JoyrideBeacon","React4","beaconComponent","shouldFocus","is4","getElementById","isLastStep","onClickOrHover","sharedProps","setBeaconRef","BeaconComponent","CloseButton_default","React5","Container_default","backProps","closeProps","primaryProps","skipProps","tooltipProps","React6","JoyrideTooltip","React7","helpers","setTooltipRef","primaryText","handleClickBack","handleClickClose","handleClickPrimary","handleClickSkip","tooltipComponent","cleanStep","renderProps","getElementsProps","TooltipComponent","JoyrideStep","React8","setPopper","treeChanges2","skipBeacon","hasStoreChanged","isAfterAction","elementExists","hasRenderedTarget","isElementVisible","removeScope","cleanupPoppers","shouldScroll","shouldScroll2","is5","renderTooltip","handleClickHoverBeacon","Joyride","React9","is6","syncState","handleKeyboard","previousStepIndex","previousSteps","changedProps","treeChanges3","stepsChanged","isEqual","stepIndexChanged","nextAction","callbackData","previousStep","scrollToStep","shouldScrollToStep","isFirstStep","previousLifecycle","hasCustomScroll","scrollY","scroll","scrollTo","handleClickOverlay","components_default","setRun","handleJoyrideCallback","hasMembership","setHasMembership","endDateMembership","setEndDateMembership","setMembership","userMembership","getMembers","memberPlan","createBasicMembership","fetchMembership","Topbar","MainContent","PokerTrainer","PokerStats","PokerRanges","PokerDeals","Sidebar","Tutorial","awsExports","rootElement","App"],"sourceRoot":""}